blob: b93a252f47fa4406ac077bc00eaf21756fba704d [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001/* option.c */
Naruhiko Nishinobe5bd4d2025-05-14 21:20:28 +02002char *did_set_showtabpanel(optset_T *args);
Bram Moolenaar07268702018-03-01 21:57:32 +01003void set_init_1(int clean_arg);
Bram Moolenaar5ffefbb2021-06-13 20:27:36 +02004void set_fencs_unicode(void);
Bram Moolenaaref269542016-01-19 13:22:12 +01005void set_string_default(char *name, char_u *val);
6void set_number_default(char *name, long val);
Bram Moolenaar46451042019-08-24 15:50:46 +02007void set_local_options_default(win_T *wp, int do_buffer);
Bram Moolenaaref269542016-01-19 13:22:12 +01008void free_all_options(void);
9void set_init_2(void);
10void set_init_3(void);
11void set_helplang_default(char_u *lang);
Bram Moolenaaref269542016-01-19 13:22:12 +010012void set_title_defaults(void);
Bram Moolenaar6b915c02020-01-18 15:53:19 +010013void ex_set(exarg_T *eap);
Yegappan Lakshmanan777175b2021-11-18 22:08:57 +000014int do_set(char_u *arg_start, int opt_flags);
Bram Moolenaardac13472019-09-16 21:06:21 +020015void did_set_option(int opt_idx, int opt_flags, int new_value, int value_checked);
Bram Moolenaardbe948d2017-07-23 22:50:51 +020016int string_to_key(char_u *arg, int multi_byte);
Bram Moolenaardac13472019-09-16 21:06:21 +020017void did_set_title(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010018void set_options_bin(int oldval, int newval, int opt_flags);
Bram Moolenaaref269542016-01-19 13:22:12 +010019void check_options(void);
Bram Moolenaar35bc7d62018-10-02 14:45:10 +020020int get_term_opt_idx(char_u **p);
21int set_term_option_alloced(char_u **p);
Bram Moolenaaref269542016-01-19 13:22:12 +010022int was_set_insecurely(char_u *opt, int opt_flags);
Bram Moolenaardac13472019-09-16 21:06:21 +020023void redraw_titles(void);
Bram Moolenaare677df82019-09-02 22:31:11 +020024int valid_name(char_u *val, char *allowed);
Bram Moolenaardac13472019-09-16 21:06:21 +020025void set_option_sctx_idx(int opt_idx, int opt_flags, sctx_T script_ctx);
Bram Moolenaar5600a702022-01-22 15:09:36 +000026sctx_T *get_option_sctx(char *name);
Bram Moolenaar35bc7d62018-10-02 14:45:10 +020027void set_term_option_sctx_idx(char *name, int opt_idx);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000028char *did_set_arabic(optset_T *args);
29char *did_set_autochdir(optset_T *args);
Yegappan Lakshmananaf936912023-02-20 12:16:39 +000030char *did_set_ballooneval(optset_T *args);
31char *did_set_balloonevalterm(optset_T *args);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000032char *did_set_binary(optset_T *args);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000033char *did_set_buflisted(optset_T *args);
34char *did_set_cmdheight(optset_T *args);
35char *did_set_compatible(optset_T *args);
36char *did_set_conceallevel(optset_T *args);
Yegappan Lakshmananaf936912023-02-20 12:16:39 +000037char *did_set_diff(optset_T *args);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000038char *did_set_eof_eol_fixeol_bomb(optset_T *args);
39char *did_set_equalalways(optset_T *args);
40char *did_set_foldcolumn(optset_T *args);
Yegappan Lakshmananaf936912023-02-20 12:16:39 +000041char *did_set_foldlevel(optset_T *args);
42char *did_set_foldminlines(optset_T *args);
43char *did_set_foldnestmax(optset_T *args);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000044char *did_set_hlsearch(optset_T *args);
45char *did_set_ignorecase(optset_T *args);
46char *did_set_imdisable(optset_T *args);
Yegappan Lakshmananaf936912023-02-20 12:16:39 +000047char *did_set_iminsert(optset_T *args);
Yegappan Lakshmananaf936912023-02-20 12:16:39 +000048char *did_set_imsearch(optset_T *args);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000049char *did_set_imstyle(optset_T *args);
50char *did_set_insertmode(optset_T *args);
51char *did_set_langnoremap(optset_T *args);
52char *did_set_langremap(optset_T *args);
53char *did_set_laststatus(optset_T *args);
54char *did_set_linespace(optset_T *args);
55char *did_set_lisp(optset_T *args);
56char *did_set_maxcombine(optset_T *args);
57char *did_set_modifiable(optset_T *args);
58char *did_set_modified(optset_T *args);
59char *did_set_mousehide(optset_T *args);
60char *did_set_number_relativenumber(optset_T *args);
Yegappan Lakshmananaf936912023-02-20 12:16:39 +000061char *did_set_numberwidth(optset_T *args);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000062char *did_set_paste(optset_T *args);
63char *did_set_previewwindow(optset_T *args);
64char *did_set_pyxversion(optset_T *args);
65char *did_set_readonly(optset_T *args);
66char *did_set_scrollbind(optset_T *args);
67char *did_set_shellslash(optset_T *args);
68char *did_set_shiftwidth_tabstop(optset_T *args);
69char *did_set_showtabline(optset_T *args);
70char *did_set_smoothscroll(optset_T *args);
71char *did_set_spell(optset_T *args);
72char *did_set_swapfile(optset_T *args);
73char *did_set_termguicolors(optset_T *args);
Milly6d5f4a02024-10-22 23:17:45 +020074char *did_set_termwinscroll(optset_T *args);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000075char *did_set_terse(optset_T *args);
76char *did_set_textauto(optset_T *args);
77char *did_set_textmode(optset_T *args);
Yegappan Lakshmananaf936912023-02-20 12:16:39 +000078char *did_set_textwidth(optset_T *args);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000079char *did_set_title_icon(optset_T *args);
80char *did_set_titlelen(optset_T *args);
81char *did_set_undofile(optset_T *args);
Yegappan Lakshmananaf936912023-02-20 12:16:39 +000082char *did_set_undolevels(optset_T *args);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000083char *did_set_updatecount(optset_T *args);
84char *did_set_weirdinvert(optset_T *args);
Yee Cheng Chin8f4fb002023-10-17 10:06:56 +020085char *did_set_wildchar(optset_T *args);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000086char *did_set_window(optset_T *args);
87char *did_set_winheight_helpheight(optset_T *args);
88char *did_set_winminheight(optset_T *args);
89char *did_set_winminwidth(optset_T *args);
90char *did_set_winwidth(optset_T *args);
Foxe Chenb90c2392025-06-27 21:10:35 +020091char *did_set_wlsteal(optset_T *args);
92char *did_set_wltimeoutlen(optset_T *args);
Yegappan Lakshmanan5284b232023-03-04 19:57:32 +000093char *did_set_wrap(optset_T *args);
64-bitman88d41ab2025-04-06 17:20:39 +020094char *did_set_xhistory(optset_T *args);
Bram Moolenaardac13472019-09-16 21:06:21 +020095void check_redraw(long_u flags);
96int findoption(char_u *arg);
Yegappan Lakshmanan64095532021-12-06 11:03:55 +000097getoption_T get_option_value(char_u *name, long *numval, char_u **stringval, int *flagsp, int scope);
Bram Moolenaaref269542016-01-19 13:22:12 +010098int get_option_value_strict(char_u *name, long *numval, char_u **stringval, int opt_type, void *from);
Bram Moolenaar010ee962019-09-25 20:37:36 +020099char_u *option_iter_next(void **option, int opt_type);
Bram Moolenaardac13472019-09-16 21:06:21 +0200100long_u get_option_flags(int opt_idx);
101void set_option_flag(int opt_idx, long_u flag);
Bram Moolenaardac13472019-09-16 21:06:21 +0200102int is_global_option(int opt_idx);
103int is_global_local_option(int opt_idx);
104int is_window_local_option(int opt_idx);
105int is_hidden_option(int opt_idx);
106int is_crypt_key_option(int opt_idx);
Bram Moolenaarf9e3e092019-01-13 23:38:42 +0100107char *set_option_value(char_u *name, long number, char_u *string, int opt_flags);
Bram Moolenaar31e5c602022-04-15 13:53:33 +0100108void set_option_value_give_err(char_u *name, long number, char_u *string, int opt_flags);
Bram Moolenaaref269542016-01-19 13:22:12 +0100109char_u *get_term_code(char_u *tname);
110char_u *get_highlight_default(void);
111char_u *get_encoding_default(void);
Bram Moolenaar4791fcd2022-02-23 12:06:00 +0000112int is_option_allocated(char *name);
Bram Moolenaaref269542016-01-19 13:22:12 +0100113int makeset(FILE *fd, int opt_flags, int local_only);
114int makefoldset(FILE *fd);
115void clear_termoptions(void);
116void free_termoptions(void);
117void free_one_termoption(char_u *var);
118void set_term_defaults(void);
Bram Moolenaardac13472019-09-16 21:06:21 +0200119int istermoption_idx(int opt_idx);
Bram Moolenaaref269542016-01-19 13:22:12 +0100120void unset_global_local_option(char_u *name, void *from);
Yegappan Lakshmanan64095532021-12-06 11:03:55 +0000121char_u *get_option_varp_scope(int opt_idx, int scope);
Bram Moolenaardac13472019-09-16 21:06:21 +0200122char_u *get_option_var(int opt_idx);
123char_u *get_option_fullname(int opt_idx);
Yegappan Lakshmananaf936912023-02-20 12:16:39 +0000124opt_did_set_cb_T get_option_did_set_cb(int opt_idx);
Bram Moolenaaref269542016-01-19 13:22:12 +0100125char_u *get_equalprg(void);
Yegappan Lakshmanana13f3a42024-11-02 18:40:10 +0100126char_u *get_findfunc(void);
Bram Moolenaaref269542016-01-19 13:22:12 +0100127void win_copy_options(win_T *wp_from, win_T *wp_to);
Bram Moolenaar010ee962019-09-25 20:37:36 +0200128void after_copy_winopt(win_T *wp);
Bram Moolenaaref269542016-01-19 13:22:12 +0100129void copy_winopt(winopt_T *from, winopt_T *to);
Bram Moolenaaref269542016-01-19 13:22:12 +0100130void clear_winopt(winopt_T *wop);
131void buf_copy_options(buf_T *buf, int flags);
132void reset_modifiable(void);
133void set_iminsert_global(void);
134void set_imsearch_global(void);
135void set_context_in_set_cmd(expand_T *xp, char_u *arg, int opt_flags);
Bram Moolenaard21e5bd2022-06-27 22:52:43 +0100136int ExpandSettings(expand_T *xp, regmatch_T *regmatch, char_u *fuzzystr, int *numMatches, char_u ***matches, int can_fuzzy);
zeertzjqb0d45ec2023-01-25 15:04:22 +0000137int ExpandOldSetting(int *numMatches, char_u ***matches);
Yee Cheng Chin900894b2023-09-29 20:42:32 +0200138int ExpandStringSetting(expand_T *xp, regmatch_T *regmatch, int *numMatches, char_u ***matches);
139int ExpandSettingSubtract(expand_T *xp, regmatch_T *regmatch, int *numMatches, char_u ***matches);
Bram Moolenaaref269542016-01-19 13:22:12 +0100140int shortmess(int x);
141void vimrc_found(char_u *fname, char_u *envname);
142void change_compatible(int on);
143int option_was_set(char_u *name);
Bram Moolenaarfe8ef982018-09-13 20:31:54 +0200144int reset_option_was_set(char_u *name);
Bram Moolenaaref269542016-01-19 13:22:12 +0100145int can_bs(int what);
Bram Moolenaar375e3392019-01-31 18:26:10 +0100146long get_scrolloff_value(void);
147long get_sidescrolloff_value(void);
zeertzjqaa925ee2024-06-09 18:24:05 +0200148unsigned int get_bkc_flags(buf_T *buf);
Christian Brabandtc53b4672022-01-15 10:01:05 +0000149char_u *get_flp_value(buf_T *buf);
Gary Johnson53ba05b2021-07-26 22:19:10 +0200150unsigned int get_ve_flags(void);
Bram Moolenaaree857022019-11-09 23:26:40 +0100151char_u *get_showbreak_value(win_T *win);
Bram Moolenaarb5ae48e2016-08-12 22:23:25 +0200152dict_T *get_winbuf_options(int bufopt);
Bram Moolenaardac13472019-09-16 21:06:21 +0200153int fill_culopt_flags(char_u *val, win_T *wp);
Bram Moolenaarf4e20992020-12-21 19:59:08 +0100154int magic_isset(void);
Yegappan Lakshmanan777175b2021-11-18 22:08:57 +0000155int option_set_callback_func(char_u *optval, callback_T *optcb);
Bram Moolenaar071d4272004-06-13 20:20:40 +0000156/* vim: set ft=c : */