aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/fileio.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/fileio.h')
-rw-r--r--src/nvim/fileio.h94
1 files changed, 94 insertions, 0 deletions
diff --git a/src/nvim/fileio.h b/src/nvim/fileio.h
new file mode 100644
index 0000000000..960ba26fa3
--- /dev/null
+++ b/src/nvim/fileio.h
@@ -0,0 +1,94 @@
+#ifndef NEOVIM_FILEIO_H
+#define NEOVIM_FILEIO_H
+
+#include "buffer_defs.h"
+#include "os/os.h"
+
+/*
+ * Struct to save values in before executing autocommands for a buffer that is
+ * not the current buffer. Without FEAT_AUTOCMD only "curbuf" is remembered.
+ */
+typedef struct {
+ buf_T *save_curbuf; /* saved curbuf */
+ int use_aucmd_win; /* using aucmd_win */
+ win_T *save_curwin; /* saved curwin */
+ win_T *new_curwin; /* new curwin */
+ buf_T *new_curbuf; /* new curbuf */
+ char_u *globaldir; /* saved value of globaldir */
+} aco_save_T;
+
+/* fileio.c */
+void filemess(buf_T *buf, char_u *name, char_u *s, int attr);
+int readfile(char_u *fname, char_u *sfname, linenr_T from,
+ linenr_T lines_to_skip, linenr_T lines_to_read, exarg_T *eap,
+ int flags);
+void prep_exarg(exarg_T *eap, buf_T *buf);
+void set_file_options(int set_options, exarg_T *eap);
+void set_forced_fenc(exarg_T *eap);
+int prepare_crypt_read(FILE *fp);
+char_u *prepare_crypt_write(buf_T *buf, int *lenp);
+int buf_write(buf_T *buf, char_u *fname, char_u *sfname, linenr_T start,
+ linenr_T end, exarg_T *eap, int append, int forceit,
+ int reset_changed,
+ int filtering);
+void msg_add_fname(buf_T *buf, char_u *fname);
+void msg_add_lines(int insert_space, long lnum, off_t nchars);
+void shorten_fnames(int force);
+char_u *modname(char_u *fname, char_u *ext, int prepend_dot);
+int vim_fgets(char_u *buf, int size, FILE *fp);
+int tag_fgets(char_u *buf, int size, FILE *fp);
+int vim_rename(char_u *from, char_u *to);
+int check_timestamps(int focus);
+int buf_check_timestamp(buf_T *buf, int focus);
+void buf_reload(buf_T *buf, int orig_mode);
+void buf_store_file_info(buf_T *buf, FileInfo *file_info);
+void write_lnum_adjust(linenr_T offset);
+void vim_deltempdir(void);
+char_u *vim_tempname(int extra_char);
+void forward_slash(char_u *fname);
+void aubuflocal_remove(buf_T *buf);
+int au_has_group(char_u *name);
+void do_augroup(char_u *arg, int del_group);
+void free_all_autocmds(void);
+int check_ei(void);
+char_u *au_event_disable(char *what);
+void au_event_restore(char_u *old_ei);
+void do_autocmd(char_u *arg, int forceit);
+int do_doautocmd(char_u *arg, int do_msg);
+void ex_doautoall(exarg_T *eap);
+int check_nomodeline(char_u **argp);
+void aucmd_prepbuf(aco_save_T *aco, buf_T *buf);
+void aucmd_restbuf(aco_save_T *aco);
+int apply_autocmds(event_T event, char_u *fname, char_u *fname_io,
+ int force,
+ buf_T *buf);
+int apply_autocmds_retval(event_T event, char_u *fname, char_u *fname_io,
+ int force, buf_T *buf,
+ int *retval);
+int has_cursorhold(void);
+int trigger_cursorhold(void);
+int has_cursormoved(void);
+int has_cursormovedI(void);
+int has_textchanged(void);
+int has_textchangedI(void);
+int has_insertcharpre(void);
+void block_autocmds(void);
+void unblock_autocmds(void);
+char_u *getnextac(int c, void *cookie, int indent);
+int has_autocmd(event_T event, char_u *sfname, buf_T *buf);
+char_u *get_augroup_name(expand_T *xp, int idx);
+char_u *set_context_in_autocmd(expand_T *xp, char_u *arg, int doautocmd);
+char_u *get_event_name(expand_T *xp, int idx);
+int autocmd_supported(char_u *name);
+int au_exists(char_u *arg);
+int match_file_pat(char_u *pattern, regprog_T *prog, char_u *fname,
+ char_u *sfname, char_u *tail,
+ int allow_dirs);
+int match_file_list(char_u *list, char_u *sfname, char_u *ffname);
+char_u *file_pat_to_reg_pat(char_u *pat, char_u *pat_end,
+ char *allow_dirs,
+ int no_bslash);
+long read_eintr(int fd, void *buf, size_t bufsize);
+long write_eintr(int fd, void *buf, size_t bufsize);
+
+#endif /* NEOVIM_FILEIO_H */