blob: 9044bae83f9d3a339aaf7e4c448b60317fb0791e [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001/* buffer.c */
Bram Moolenaar00b0d6d2019-08-21 22:25:30 +02002int get_highest_fnum(void);
Bram Moolenaar5b8cfed2019-06-30 22:16:10 +02003void buffer_ensure_loaded(buf_T *buf);
Luuk van Baal7b224fd2022-11-07 12:16:51 +00004int open_buffer(int read_stdin, exarg_T *eap, int flags_arg);
Bram Moolenaarb25f9a92016-07-10 18:21:50 +02005void set_bufref(bufref_T *bufref, buf_T *buf);
6int bufref_valid(bufref_T *bufref);
Bram Moolenaaref269542016-01-19 13:22:12 +01007int buf_valid(buf_T *buf);
Bram Moolenaar797e63b2021-01-15 16:22:52 +01008int close_buffer(win_T *win, buf_T *buf, int action, int abort_if_last, int ignore_abort);
Bram Moolenaaref269542016-01-19 13:22:12 +01009void buf_clear_file(buf_T *buf);
10void buf_freeall(buf_T *buf, int flags);
Bram Moolenaar4882d982020-10-25 17:55:09 +010011void free_wininfo(wininfo_T *wip);
Bram Moolenaaref269542016-01-19 13:22:12 +010012void goto_buffer(exarg_T *eap, int start, int dir, int count);
Bram Moolenaar7c0a2f32016-07-10 22:11:16 +020013void handle_swap_exists(bufref_T *old_curbuf);
Bram Moolenaaref269542016-01-19 13:22:12 +010014int do_buffer(int action, int start, int dir, int count, int forceit);
Bram Moolenaard21e5bd2022-06-27 22:52:43 +010015char *do_bufdel(int command, char_u *arg, int addr_count, int start_bnr, int end_bnr, int forceit);
Bram Moolenaaref269542016-01-19 13:22:12 +010016void set_curbuf(buf_T *buf, int action);
Bram Moolenaaref269542016-01-19 13:22:12 +010017void do_autochdir(void);
Bram Moolenaarf5be7cd2017-08-17 16:55:13 +020018void no_write_message(void);
Bram Moolenaar7a760922018-02-19 23:10:02 +010019void no_write_message_nobang(buf_T *buf);
Bram Moolenaar46a53df2018-04-24 21:58:51 +020020int curbuf_reusable(void);
Bram Moolenaarc447d8d2018-12-18 21:56:28 +010021buf_T *buflist_new(char_u *ffname_arg, char_u *sfname_arg, linenr_T lnum, int flags);
Bram Moolenaaref269542016-01-19 13:22:12 +010022void free_buf_options(buf_T *buf, int free_p_ff);
23int buflist_getfile(int n, linenr_T lnum, int options, int forceit);
Bram Moolenaaref269542016-01-19 13:22:12 +010024buf_T *buflist_findname_exp(char_u *fname);
25buf_T *buflist_findname(char_u *ffname);
26int buflist_findpat(char_u *pattern, char_u *pattern_end, int unlisted, int diffmode, int curtab_only);
27int ExpandBufnames(char_u *pat, int *num_file, char_u ***file, int options);
28buf_T *buflist_findnr(int nr);
29char_u *buflist_nr2name(int n, int fullname, int helptail);
Bram Moolenaardefa0672019-07-21 19:25:37 +020030void buflist_setfpos(buf_T *buf, win_T *win, linenr_T lnum, colnr_T col, int copy_options);
Bram Moolenaaref269542016-01-19 13:22:12 +010031void get_winopts(buf_T *buf);
32pos_T *buflist_findfpos(buf_T *buf);
33linenr_T buflist_findlnum(buf_T *buf);
34void buflist_list(exarg_T *eap);
35int buflist_name_nr(int fnum, char_u **fname, linenr_T *lnum);
Bram Moolenaarc447d8d2018-12-18 21:56:28 +010036int setfname(buf_T *buf, char_u *ffname_arg, char_u *sfname_arg, int message);
Bram Moolenaaref269542016-01-19 13:22:12 +010037void buf_set_name(int fnum, char_u *name);
38void buf_name_changed(buf_T *buf);
39buf_T *setaltfname(char_u *ffname, char_u *sfname, linenr_T lnum);
40char_u *getaltfname(int errmsg);
41int buflist_add(char_u *fname, int flags);
42void buflist_slash_adjust(void);
43void buflist_altfpos(win_T *win);
44int otherfile(char_u *ffname);
45void buf_setino(buf_T *buf);
46void fileinfo(int fullname, int shorthelp, int dont_truncate);
John Marriotta21240b2025-01-08 20:10:59 +010047int col_print(char_u *buf, size_t buflen, int col, int vcol);
Bram Moolenaaref269542016-01-19 13:22:12 +010048void maketitle(void);
49void resettitle(void);
50void free_titles(void);
Luuk van Baal7b224fd2022-11-07 12:16:51 +000051int build_stl_str_hl(win_T *wp, char_u *out, size_t outlen, char_u *fmt, char_u *opt_name, int opt_scope, int fillchar, int maxwidth, stl_hlrec_T **hltab, stl_hlrec_T **tabtab);
John Marriotta21240b2025-01-08 20:10:59 +010052int get_rel_pos(win_T *wp, char_u *buf, int buflen);
Bram Moolenaaref269542016-01-19 13:22:12 +010053char_u *fix_fname(char_u *fname);
54void fname_expand(buf_T *buf, char_u **ffname, char_u **sfname);
Bram Moolenaaref269542016-01-19 13:22:12 +010055void ex_buffer_all(exarg_T *eap);
56void do_modelines(int flags);
Bram Moolenaar91335e52018-08-01 17:53:12 +020057int bt_normal(buf_T *buf);
Bram Moolenaarf0a521f2017-07-25 23:31:12 +020058int bt_quickfix(buf_T *buf);
59int bt_terminal(buf_T *buf);
Bram Moolenaard28cc3f2017-07-27 22:03:50 +020060int bt_help(buf_T *buf);
Bram Moolenaarf2732452018-06-03 14:47:35 +020061int bt_prompt(buf_T *buf);
Bram Moolenaar4d784b22019-05-25 19:51:39 +020062int bt_popup(buf_T *buf);
Bram Moolenaar26910de2019-06-15 19:37:15 +020063int bt_nofilename(buf_T *buf);
Bram Moolenaarf0a521f2017-07-25 23:31:12 +020064int bt_nofile(buf_T *buf);
65int bt_dontwrite(buf_T *buf);
66int bt_dontwrite_msg(buf_T *buf);
67int buf_hide(buf_T *buf);
Bram Moolenaaref269542016-01-19 13:22:12 +010068char_u *buf_spname(buf_T *buf);
Bram Moolenaar00806bc2020-11-05 19:36:38 +010069char_u *buf_get_fname(buf_T *buf);
Bram Moolenaaref269542016-01-19 13:22:12 +010070void set_buflisted(int on);
71int buf_contents_changed(buf_T *buf);
72void wipe_buffer(buf_T *buf, int aucmd);
Bram Moolenaar071d4272004-06-13 20:20:40 +000073/* vim: set ft=c : */