blob: 54cccf83eb74dd17153ff38df18cea2479ba9517 [file] [log] [blame]
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001/* vi:set ts=8 sts=4 sw=4 noet:
2 *
3 * VIM - Vi IMproved by Bram Moolenaar
4 *
5 * Do ":help uganda" in Vim to read copying and usage conditions.
6 * Do ":help credits" in Vim to see a list of people who contributed.
7 */
8
9/*
10 * optiondefs.h: option definitions
11 */
12
13// The options that are local to a window or buffer have "indir" set to one of
14// these values. Special values:
15// PV_NONE: global option.
16// PV_WIN is added: window-local option
17// PV_BUF is added: buffer-local option
18// PV_BOTH is added: global option which also has a local value.
19#define PV_BOTH 0x1000
20#define PV_WIN 0x2000
21#define PV_BUF 0x4000
22#define PV_MASK 0x0fff
23#define OPT_WIN(x) (idopt_T)(PV_WIN + (int)(x))
24#define OPT_BUF(x) (idopt_T)(PV_BUF + (int)(x))
25#define OPT_BOTH(x) (idopt_T)(PV_BOTH + (int)(x))
26
27// Definition of the PV_ values for buffer-local options.
28// The BV_ values are defined in option.h.
29#define PV_AI OPT_BUF(BV_AI)
30#define PV_AR OPT_BOTH(OPT_BUF(BV_AR))
31#define PV_BKC OPT_BOTH(OPT_BUF(BV_BKC))
32#define PV_BH OPT_BUF(BV_BH)
33#define PV_BT OPT_BUF(BV_BT)
34#ifdef FEAT_QUICKFIX
35# define PV_EFM OPT_BOTH(OPT_BUF(BV_EFM))
36# define PV_GP OPT_BOTH(OPT_BUF(BV_GP))
37# define PV_MP OPT_BOTH(OPT_BUF(BV_MP))
38#endif
39#define PV_BIN OPT_BUF(BV_BIN)
40#define PV_BL OPT_BUF(BV_BL)
41#define PV_BOMB OPT_BUF(BV_BOMB)
42#define PV_CI OPT_BUF(BV_CI)
43#ifdef FEAT_CINDENT
44# define PV_CIN OPT_BUF(BV_CIN)
45# define PV_CINK OPT_BUF(BV_CINK)
46# define PV_CINO OPT_BUF(BV_CINO)
Tom Praschan3506cf32022-04-07 12:39:08 +010047# define PV_CINSD OPT_BUF(BV_CINSD)
Bram Moolenaar0eddca42019-09-12 22:26:43 +020048#endif
49#if defined(FEAT_SMARTINDENT) || defined(FEAT_CINDENT)
50# define PV_CINW OPT_BUF(BV_CINW)
51#endif
52#define PV_CM OPT_BOTH(OPT_BUF(BV_CM))
53#ifdef FEAT_FOLDING
54# define PV_CMS OPT_BUF(BV_CMS)
55#endif
Bram Moolenaar8c96af92019-09-28 19:05:57 +020056#define PV_COM OPT_BUF(BV_COM)
Bram Moolenaar0eddca42019-09-12 22:26:43 +020057#define PV_CPT OPT_BUF(BV_CPT)
58#define PV_DICT OPT_BOTH(OPT_BUF(BV_DICT))
59#define PV_TSR OPT_BOTH(OPT_BUF(BV_TSR))
60#define PV_CSL OPT_BUF(BV_CSL)
61#ifdef FEAT_COMPL_FUNC
62# define PV_CFU OPT_BUF(BV_CFU)
63#endif
64#ifdef FEAT_FIND_ID
65# define PV_DEF OPT_BOTH(OPT_BUF(BV_DEF))
66# define PV_INC OPT_BOTH(OPT_BUF(BV_INC))
67#endif
68#define PV_EOL OPT_BUF(BV_EOL)
69#define PV_FIXEOL OPT_BUF(BV_FIXEOL)
70#define PV_EP OPT_BOTH(OPT_BUF(BV_EP))
71#define PV_ET OPT_BUF(BV_ET)
72#define PV_FENC OPT_BUF(BV_FENC)
73#if defined(FEAT_BEVAL) && defined(FEAT_EVAL)
74# define PV_BEXPR OPT_BOTH(OPT_BUF(BV_BEXPR))
75#endif
76#define PV_FP OPT_BOTH(OPT_BUF(BV_FP))
77#ifdef FEAT_EVAL
78# define PV_FEX OPT_BUF(BV_FEX)
79#endif
80#define PV_FF OPT_BUF(BV_FF)
81#define PV_FLP OPT_BUF(BV_FLP)
82#define PV_FO OPT_BUF(BV_FO)
83#define PV_FT OPT_BUF(BV_FT)
84#define PV_IMI OPT_BUF(BV_IMI)
85#define PV_IMS OPT_BUF(BV_IMS)
86#if defined(FEAT_CINDENT) && defined(FEAT_EVAL)
87# define PV_INDE OPT_BUF(BV_INDE)
88# define PV_INDK OPT_BUF(BV_INDK)
89#endif
90#if defined(FEAT_FIND_ID) && defined(FEAT_EVAL)
91# define PV_INEX OPT_BUF(BV_INEX)
92#endif
93#define PV_INF OPT_BUF(BV_INF)
94#define PV_ISK OPT_BUF(BV_ISK)
95#ifdef FEAT_CRYPT
96# define PV_KEY OPT_BUF(BV_KEY)
97#endif
98#ifdef FEAT_KEYMAP
99# define PV_KMAP OPT_BUF(BV_KMAP)
100#endif
101#define PV_KP OPT_BOTH(OPT_BUF(BV_KP))
102#ifdef FEAT_LISP
103# define PV_LISP OPT_BUF(BV_LISP)
104# define PV_LW OPT_BOTH(OPT_BUF(BV_LW))
105#endif
106#define PV_MENC OPT_BOTH(OPT_BUF(BV_MENC))
107#define PV_MA OPT_BUF(BV_MA)
108#define PV_ML OPT_BUF(BV_ML)
109#define PV_MOD OPT_BUF(BV_MOD)
110#define PV_MPS OPT_BUF(BV_MPS)
111#define PV_NF OPT_BUF(BV_NF)
112#ifdef FEAT_COMPL_FUNC
113# define PV_OFU OPT_BUF(BV_OFU)
114#endif
115#define PV_PATH OPT_BOTH(OPT_BUF(BV_PATH))
116#define PV_PI OPT_BUF(BV_PI)
117#ifdef FEAT_TEXTOBJ
118# define PV_QE OPT_BUF(BV_QE)
119#endif
120#define PV_RO OPT_BUF(BV_RO)
121#ifdef FEAT_SMARTINDENT
122# define PV_SI OPT_BUF(BV_SI)
123#endif
124#define PV_SN OPT_BUF(BV_SN)
125#ifdef FEAT_SYN_HL
126# define PV_SMC OPT_BUF(BV_SMC)
127# define PV_SYN OPT_BUF(BV_SYN)
128#endif
129#ifdef FEAT_SPELL
130# define PV_SPC OPT_BUF(BV_SPC)
131# define PV_SPF OPT_BUF(BV_SPF)
132# define PV_SPL OPT_BUF(BV_SPL)
Bram Moolenaar362b44b2020-06-10 21:47:00 +0200133# define PV_SPO OPT_BUF(BV_SPO)
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200134#endif
135#define PV_STS OPT_BUF(BV_STS)
136#ifdef FEAT_SEARCHPATH
137# define PV_SUA OPT_BUF(BV_SUA)
138#endif
139#define PV_SW OPT_BUF(BV_SW)
140#define PV_SWF OPT_BUF(BV_SWF)
141#ifdef FEAT_EVAL
142# define PV_TFU OPT_BUF(BV_TFU)
143#endif
Yegappan Lakshmanan160e9942021-10-16 15:41:29 +0100144#ifdef FEAT_COMPL_FUNC
Bram Moolenaarf4d8b762021-10-17 14:13:09 +0100145# define PV_TSRFU OPT_BOTH(OPT_BUF(BV_TSRFU))
Yegappan Lakshmanan160e9942021-10-16 15:41:29 +0100146#endif
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200147#define PV_TAGS OPT_BOTH(OPT_BUF(BV_TAGS))
148#define PV_TC OPT_BOTH(OPT_BUF(BV_TC))
149#define PV_TS OPT_BUF(BV_TS)
150#define PV_TW OPT_BUF(BV_TW)
151#define PV_TX OPT_BUF(BV_TX)
152#ifdef FEAT_PERSISTENT_UNDO
153# define PV_UDF OPT_BUF(BV_UDF)
154#endif
155#define PV_WM OPT_BUF(BV_WM)
156#ifdef FEAT_VARTABS
157# define PV_VSTS OPT_BUF(BV_VSTS)
158# define PV_VTS OPT_BUF(BV_VTS)
159#endif
160
161// Definition of the PV_ values for window-local options.
162// The WV_ values are defined in option.h.
163#define PV_LIST OPT_WIN(WV_LIST)
164#ifdef FEAT_ARABIC
165# define PV_ARAB OPT_WIN(WV_ARAB)
166#endif
167#ifdef FEAT_LINEBREAK
168# define PV_BRI OPT_WIN(WV_BRI)
169# define PV_BRIOPT OPT_WIN(WV_BRIOPT)
170#endif
171# define PV_WCR OPT_WIN(WV_WCR)
172#ifdef FEAT_DIFF
173# define PV_DIFF OPT_WIN(WV_DIFF)
174#endif
175#ifdef FEAT_FOLDING
176# define PV_FDC OPT_WIN(WV_FDC)
177# define PV_FEN OPT_WIN(WV_FEN)
178# define PV_FDI OPT_WIN(WV_FDI)
179# define PV_FDL OPT_WIN(WV_FDL)
180# define PV_FDM OPT_WIN(WV_FDM)
181# define PV_FML OPT_WIN(WV_FML)
182# define PV_FDN OPT_WIN(WV_FDN)
183# ifdef FEAT_EVAL
184# define PV_FDE OPT_WIN(WV_FDE)
185# define PV_FDT OPT_WIN(WV_FDT)
186# endif
187# define PV_FMR OPT_WIN(WV_FMR)
188#endif
189#ifdef FEAT_LINEBREAK
190# define PV_LBR OPT_WIN(WV_LBR)
191#endif
Bram Moolenaareed9d462021-02-15 20:38:25 +0100192#define PV_LCS OPT_BOTH(OPT_WIN(WV_LCS))
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200193#define PV_NU OPT_WIN(WV_NU)
194#define PV_RNU OPT_WIN(WV_RNU)
zeertzjqe1833bf2022-01-15 10:52:16 +0000195#define PV_VE OPT_BOTH(OPT_WIN(WV_VE))
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200196#ifdef FEAT_LINEBREAK
197# define PV_NUW OPT_WIN(WV_NUW)
198#endif
199#if defined(FEAT_QUICKFIX)
200# define PV_PVW OPT_WIN(WV_PVW)
201#endif
202#ifdef FEAT_RIGHTLEFT
203# define PV_RL OPT_WIN(WV_RL)
204# define PV_RLC OPT_WIN(WV_RLC)
205#endif
206#define PV_SCBIND OPT_WIN(WV_SCBIND)
207#define PV_SCROLL OPT_WIN(WV_SCROLL)
208#define PV_SISO OPT_BOTH(OPT_WIN(WV_SISO))
209#define PV_SO OPT_BOTH(OPT_WIN(WV_SO))
210#ifdef FEAT_SPELL
211# define PV_SPELL OPT_WIN(WV_SPELL)
212#endif
213#ifdef FEAT_SYN_HL
214# define PV_CUC OPT_WIN(WV_CUC)
215# define PV_CUL OPT_WIN(WV_CUL)
216# define PV_CULOPT OPT_WIN(WV_CULOPT)
217# define PV_CC OPT_WIN(WV_CC)
218#endif
Bram Moolenaaree857022019-11-09 23:26:40 +0100219#ifdef FEAT_LINEBREAK
220# define PV_SBR OPT_BOTH(OPT_WIN(WV_SBR))
221#endif
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200222#ifdef FEAT_STL_OPT
223# define PV_STL OPT_BOTH(OPT_WIN(WV_STL))
224#endif
225#define PV_UL OPT_BOTH(OPT_BUF(BV_UL))
226# define PV_WFH OPT_WIN(WV_WFH)
227# define PV_WFW OPT_WIN(WV_WFW)
228#define PV_WRAP OPT_WIN(WV_WRAP)
229#define PV_CRBIND OPT_WIN(WV_CRBIND)
230#ifdef FEAT_CONCEAL
231# define PV_COCU OPT_WIN(WV_COCU)
232# define PV_COLE OPT_WIN(WV_COLE)
233#endif
234#ifdef FEAT_TERMINAL
235# define PV_TWK OPT_WIN(WV_TWK)
236# define PV_TWS OPT_WIN(WV_TWS)
237# define PV_TWSL OPT_BUF(BV_TWSL)
238#endif
239#ifdef FEAT_SIGNS
240# define PV_SCL OPT_WIN(WV_SCL)
241#endif
242
243// WV_ and BV_ values get typecasted to this for the "indir" field
244typedef enum
245{
246 PV_NONE = 0,
247 PV_MAXVAL = 0xffff // to avoid warnings for value out of range
248} idopt_T;
249
250// Options local to a window have a value local to a buffer and global to all
251// buffers. Indicate this by setting "var" to VAR_WIN.
252#define VAR_WIN ((char_u *)-1)
253
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200254// Saved values for when 'bin' is set.
255static int p_et_nobin;
256static int p_ml_nobin;
257static long p_tw_nobin;
258static long p_wm_nobin;
259
260// Saved values for when 'paste' is set
261static int p_ai_nopaste;
262static int p_et_nopaste;
263static long p_sts_nopaste;
264static long p_tw_nopaste;
265static long p_wm_nopaste;
266#ifdef FEAT_VARTABS
267static char_u *p_vsts_nopaste;
268#endif
269
270struct vimoption
271{
272 char *fullname; // full option name
273 char *shortname; // permissible abbreviation
274 long_u flags; // see below
275 char_u *var; // global option: pointer to variable;
276 // window-local option: VAR_WIN;
277 // buffer-local option: global value
278 idopt_T indir; // global option: PV_NONE;
279 // local option: indirect option index
280 char_u *def_val[2]; // default values for variable (vi and vim)
281#ifdef FEAT_EVAL
282 sctx_T script_ctx; // script context where the option was last set
283# define SCTX_INIT , {0, 0, 0, 1}
284#else
285# define SCTX_INIT
286#endif
287};
288
289#define VI_DEFAULT 0 // def_val[VI_DEFAULT] is Vi default value
290#define VIM_DEFAULT 1 // def_val[VIM_DEFAULT] is Vim default value
291
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200292#define ISK_LATIN1 (char_u *)"@,48-57,_,192-255"
293
294// 'isprint' for latin1 is also used for MS-Windows cp1252, where 0x80 is used
295// for the currency sign.
296#if defined(MSWIN)
297# define ISP_LATIN1 (char_u *)"@,~-255"
298#else
299# define ISP_LATIN1 (char_u *)"@,161-255"
300#endif
301
Bram Moolenaare413ea02021-11-24 16:20:13 +0000302# define HIGHLIGHT_INIT "8:SpecialKey,~:EndOfBuffer,@:NonText,d:Directory,e:ErrorMsg,i:IncSearch,l:Search,m:MoreMsg,M:ModeMsg,n:LineNr,a:LineNrAbove,b:LineNrBelow,N:CursorLineNr,G:CursorLineSign,O:CursorLineFold,r:Question,s:StatusLine,S:StatusLineNC,c:VertSplit,t:Title,v:Visual,V:VisualNOS,w:WarningMsg,W:WildMenu,f:Folded,F:FoldColumn,A:DiffAdd,C:DiffChange,D:DiffDelete,T:DiffText,>:SignColumn,-:Conceal,B:SpellBad,P:SpellCap,R:SpellRare,L:SpellLocal,+:Pmenu,=:PmenuSel,x:PmenuSbar,X:PmenuThumb,*:TabLine,#:TabLineSel,_:TabLineFill,!:CursorColumn,.:CursorLine,o:ColorColumn,q:QuickFixLine,z:StatusLineTerm,Z:StatusLineTermNC"
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200303
304// Default python version for pyx* commands
305#if defined(FEAT_PYTHON) && defined(FEAT_PYTHON3)
306# define DEFAULT_PYTHON_VER 0
307#elif defined(FEAT_PYTHON3)
308# define DEFAULT_PYTHON_VER 3
309#elif defined(FEAT_PYTHON)
310# define DEFAULT_PYTHON_VER 2
311#else
312# define DEFAULT_PYTHON_VER 0
313#endif
314
315// used for 'cinkeys' and 'indentkeys'
316#define INDENTKEYS_DEFAULT (char_u *)"0{,0},0),0],:,0#,!^F,o,O,e"
317
318// options[] is initialized here.
319// The order of the options MUST be alphabetic for ":set all" and findoption().
320// All option names MUST start with a lowercase letter (for findoption()).
321// Exception: "t_" options are at the end.
322// The options with a NULL variable are 'hidden': a set command for them is
323// ignored and they are not printed.
324static struct vimoption options[] =
325{
326 {"aleph", "al", P_NUM|P_VI_DEF|P_CURSWANT,
327#ifdef FEAT_RIGHTLEFT
328 (char_u *)&p_aleph, PV_NONE,
329#else
330 (char_u *)NULL, PV_NONE,
331#endif
332 {
333#if defined(MSWIN) && !defined(FEAT_GUI_MSWIN)
334 (char_u *)128L,
335#else
336 (char_u *)224L,
337#endif
338 (char_u *)0L} SCTX_INIT},
339 {"antialias", "anti", P_BOOL|P_VI_DEF|P_VIM|P_RCLR,
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200340 (char_u *)NULL, PV_NONE,
341 {(char_u *)FALSE, (char_u *)FALSE}
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200342 SCTX_INIT},
343 {"arabic", "arab", P_BOOL|P_VI_DEF|P_VIM|P_CURSWANT,
344#ifdef FEAT_ARABIC
345 (char_u *)VAR_WIN, PV_ARAB,
346#else
347 (char_u *)NULL, PV_NONE,
348#endif
349 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
350 {"arabicshape", "arshape", P_BOOL|P_VI_DEF|P_VIM|P_RCLR,
351#ifdef FEAT_ARABIC
352 (char_u *)&p_arshape, PV_NONE,
353#else
354 (char_u *)NULL, PV_NONE,
355#endif
356 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
357 {"allowrevins", "ari", P_BOOL|P_VI_DEF|P_VIM,
358#ifdef FEAT_RIGHTLEFT
359 (char_u *)&p_ari, PV_NONE,
360#else
361 (char_u *)NULL, PV_NONE,
362#endif
363 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
364 {"altkeymap", "akm", P_BOOL|P_VI_DEF,
365 (char_u *)NULL, PV_NONE,
366 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
367 {"ambiwidth", "ambw", P_STRING|P_VI_DEF|P_RCLR,
368 (char_u *)&p_ambw, PV_NONE,
369 {(char_u *)"single", (char_u *)0L}
370 SCTX_INIT},
371 {"autochdir", "acd", P_BOOL|P_VI_DEF,
372#ifdef FEAT_AUTOCHDIR
373 (char_u *)&p_acd, PV_NONE,
374 {(char_u *)FALSE, (char_u *)0L}
375#else
376 (char_u *)NULL, PV_NONE,
377 {(char_u *)0L, (char_u *)0L}
378#endif
379 SCTX_INIT},
Bram Moolenaar8b9abfd2021-03-29 20:49:05 +0200380 {"autoshelldir", "asd", P_BOOL|P_VI_DEF,
381#ifdef FEAT_AUTOSHELLDIR
382 (char_u *)&p_asd, PV_NONE,
383 {(char_u *)FALSE, (char_u *)0L}
384#else
385 (char_u *)NULL, PV_NONE,
386 {(char_u *)0L, (char_u *)0L}
387#endif
388 SCTX_INIT},
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200389 {"autoindent", "ai", P_BOOL|P_VI_DEF,
390 (char_u *)&p_ai, PV_AI,
391 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
392 {"autoprint", "ap", P_BOOL|P_VI_DEF,
393 (char_u *)NULL, PV_NONE,
394 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
395 {"autoread", "ar", P_BOOL|P_VI_DEF,
396 (char_u *)&p_ar, PV_AR,
397 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
398 {"autowrite", "aw", P_BOOL|P_VI_DEF,
399 (char_u *)&p_aw, PV_NONE,
400 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
401 {"autowriteall","awa", P_BOOL|P_VI_DEF,
402 (char_u *)&p_awa, PV_NONE,
403 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
404 {"background", "bg", P_STRING|P_VI_DEF|P_RCLR,
405 (char_u *)&p_bg, PV_NONE,
406 {
407#if (defined(MSWIN)) && !defined(FEAT_GUI)
408 (char_u *)"dark",
409#else
410 (char_u *)"light",
411#endif
412 (char_u *)0L} SCTX_INIT},
413 {"backspace", "bs", P_STRING|P_VI_DEF|P_VIM|P_ONECOMMA|P_NODUP,
414 (char_u *)&p_bs, PV_NONE,
415 {(char_u *)"", (char_u *)0L} SCTX_INIT},
416 {"backup", "bk", P_BOOL|P_VI_DEF|P_VIM,
417 (char_u *)&p_bk, PV_NONE,
418 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
419 {"backupcopy", "bkc", P_STRING|P_VIM|P_ONECOMMA|P_NODUP,
420 (char_u *)&p_bkc, PV_BKC,
421#ifdef UNIX
422 {(char_u *)"yes", (char_u *)"auto"}
423#else
424 {(char_u *)"auto", (char_u *)"auto"}
425#endif
426 SCTX_INIT},
427 {"backupdir", "bdir", P_STRING|P_EXPAND|P_VI_DEF|P_ONECOMMA
428 |P_NODUP|P_SECURE,
429 (char_u *)&p_bdir, PV_NONE,
430 {(char_u *)DFLT_BDIR, (char_u *)0L} SCTX_INIT},
431 {"backupext", "bex", P_STRING|P_VI_DEF|P_NFNAME,
432 (char_u *)&p_bex, PV_NONE,
433 {
434#ifdef VMS
435 (char_u *)"_",
436#else
437 (char_u *)"~",
438#endif
439 (char_u *)0L} SCTX_INIT},
440 {"backupskip", "bsk", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
441#ifdef FEAT_WILDIGN
442 (char_u *)&p_bsk, PV_NONE,
443 {(char_u *)"", (char_u *)0L}
444#else
445 (char_u *)NULL, PV_NONE,
446 {(char_u *)0L, (char_u *)0L}
447#endif
448 SCTX_INIT},
449 {"balloondelay","bdlay",P_NUM|P_VI_DEF,
450#ifdef FEAT_BEVAL
451 (char_u *)&p_bdlay, PV_NONE,
452 {(char_u *)600L, (char_u *)0L}
453#else
454 (char_u *)NULL, PV_NONE,
455 {(char_u *)0L, (char_u *)0L}
456#endif
457 SCTX_INIT},
458 {"ballooneval", "beval",P_BOOL|P_VI_DEF|P_NO_MKRC,
459#ifdef FEAT_BEVAL_GUI
460 (char_u *)&p_beval, PV_NONE,
461 {(char_u *)FALSE, (char_u *)0L}
462#else
463 (char_u *)NULL, PV_NONE,
464 {(char_u *)0L, (char_u *)0L}
465#endif
466 SCTX_INIT},
467 {"balloonevalterm", "bevalterm",P_BOOL|P_VI_DEF|P_NO_MKRC,
468#ifdef FEAT_BEVAL_TERM
469 (char_u *)&p_bevalterm, PV_NONE,
470 {(char_u *)FALSE, (char_u *)0L}
471#else
472 (char_u *)NULL, PV_NONE,
473 {(char_u *)0L, (char_u *)0L}
474#endif
475 SCTX_INIT},
476 {"balloonexpr", "bexpr", P_STRING|P_ALLOCED|P_VI_DEF|P_VIM|P_MLE,
477#if defined(FEAT_BEVAL) && defined(FEAT_EVAL)
478 (char_u *)&p_bexpr, PV_BEXPR,
479 {(char_u *)"", (char_u *)0L}
480#else
481 (char_u *)NULL, PV_NONE,
482 {(char_u *)0L, (char_u *)0L}
483#endif
484 SCTX_INIT},
485 {"beautify", "bf", P_BOOL|P_VI_DEF,
486 (char_u *)NULL, PV_NONE,
487 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
488 {"belloff", "bo", P_STRING|P_VI_DEF|P_COMMA|P_NODUP,
489 (char_u *)&p_bo, PV_NONE,
490 {(char_u *)"", (char_u *)0L} SCTX_INIT},
491 {"binary", "bin", P_BOOL|P_VI_DEF|P_RSTAT,
492 (char_u *)&p_bin, PV_BIN,
493 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
494 {"bioskey", "biosk",P_BOOL|P_VI_DEF,
495 (char_u *)NULL, PV_NONE,
496 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
497 {"bomb", NULL, P_BOOL|P_NO_MKRC|P_VI_DEF|P_RSTAT,
498 (char_u *)&p_bomb, PV_BOMB,
499 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
500 {"breakat", "brk", P_STRING|P_VI_DEF|P_RALL|P_FLAGLIST,
501#ifdef FEAT_LINEBREAK
502 (char_u *)&p_breakat, PV_NONE,
503 {(char_u *)" \t!@*-+;:,./?", (char_u *)0L}
504#else
505 (char_u *)NULL, PV_NONE,
506 {(char_u *)0L, (char_u *)0L}
507#endif
508 SCTX_INIT},
509 {"breakindent", "bri", P_BOOL|P_VI_DEF|P_VIM|P_RWIN,
510#ifdef FEAT_LINEBREAK
511 (char_u *)VAR_WIN, PV_BRI,
512 {(char_u *)FALSE, (char_u *)0L}
513#else
514 (char_u *)NULL, PV_NONE,
515 {(char_u *)0L, (char_u *)0L}
516#endif
517 SCTX_INIT},
518 {"breakindentopt", "briopt", P_STRING|P_ALLOCED|P_VI_DEF|P_RBUF
519 |P_ONECOMMA|P_NODUP,
520#ifdef FEAT_LINEBREAK
521 (char_u *)VAR_WIN, PV_BRIOPT,
522 {(char_u *)"", (char_u *)NULL}
523#else
524 (char_u *)NULL, PV_NONE,
525 {(char_u *)"", (char_u *)NULL}
526#endif
527 SCTX_INIT},
528 {"browsedir", "bsdir",P_STRING|P_VI_DEF,
529#ifdef FEAT_BROWSE
530 (char_u *)&p_bsdir, PV_NONE,
531 {(char_u *)"last", (char_u *)0L}
532#else
533 (char_u *)NULL, PV_NONE,
534 {(char_u *)0L, (char_u *)0L}
535#endif
536 SCTX_INIT},
537 {"bufhidden", "bh", P_STRING|P_ALLOCED|P_VI_DEF|P_NOGLOB,
538 (char_u *)&p_bh, PV_BH,
539 {(char_u *)"", (char_u *)0L}
540 SCTX_INIT},
541 {"buflisted", "bl", P_BOOL|P_VI_DEF|P_NOGLOB,
542 (char_u *)&p_bl, PV_BL,
543 {(char_u *)1L, (char_u *)0L}
544 SCTX_INIT},
545 {"buftype", "bt", P_STRING|P_ALLOCED|P_VI_DEF|P_NOGLOB,
546 (char_u *)&p_bt, PV_BT,
547 {(char_u *)"", (char_u *)0L}
548 SCTX_INIT},
549 {"casemap", "cmp", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
550 (char_u *)&p_cmp, PV_NONE,
551 {(char_u *)"internal,keepascii", (char_u *)0L}
552 SCTX_INIT},
Bakudankun29f3a452021-12-11 12:28:08 +0000553 {"cdhome", "cdh", P_BOOL|P_VI_DEF|P_VIM|P_SECURE,
554 (char_u *)&p_cdh, PV_NONE,
555 {(char_u *)FALSE, (char_u *)0L}
556 SCTX_INIT},
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200557 {"cdpath", "cd", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE|P_COMMA|P_NODUP,
558#ifdef FEAT_SEARCHPATH
559 (char_u *)&p_cdpath, PV_NONE,
560 {(char_u *)",,", (char_u *)0L}
561#else
562 (char_u *)NULL, PV_NONE,
563 {(char_u *)0L, (char_u *)0L}
564#endif
565 SCTX_INIT},
566 {"cedit", NULL, P_STRING,
567#ifdef FEAT_CMDWIN
568 (char_u *)&p_cedit, PV_NONE,
569 {(char_u *)"", (char_u *)CTRL_F_STR}
570#else
571 (char_u *)NULL, PV_NONE,
572 {(char_u *)0L, (char_u *)0L}
573#endif
574 SCTX_INIT},
575 {"charconvert", "ccv", P_STRING|P_VI_DEF|P_SECURE,
576#if defined(FEAT_EVAL)
577 (char_u *)&p_ccv, PV_NONE,
578 {(char_u *)"", (char_u *)0L}
579#else
580 (char_u *)NULL, PV_NONE,
581 {(char_u *)0L, (char_u *)0L}
582#endif
583 SCTX_INIT},
584 {"cindent", "cin", P_BOOL|P_VI_DEF|P_VIM,
585#ifdef FEAT_CINDENT
586 (char_u *)&p_cin, PV_CIN,
587#else
588 (char_u *)NULL, PV_NONE,
589#endif
590 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
591 {"cinkeys", "cink", P_STRING|P_ALLOCED|P_VI_DEF|P_ONECOMMA|P_NODUP,
592#ifdef FEAT_CINDENT
593 (char_u *)&p_cink, PV_CINK,
594 {INDENTKEYS_DEFAULT, (char_u *)0L}
595#else
596 (char_u *)NULL, PV_NONE,
597 {(char_u *)0L, (char_u *)0L}
598#endif
599 SCTX_INIT},
600 {"cinoptions", "cino", P_STRING|P_ALLOCED|P_VI_DEF|P_ONECOMMA|P_NODUP,
601#ifdef FEAT_CINDENT
602 (char_u *)&p_cino, PV_CINO,
603#else
604 (char_u *)NULL, PV_NONE,
605#endif
606 {(char_u *)"", (char_u *)0L} SCTX_INIT},
Tom Praschan3506cf32022-04-07 12:39:08 +0100607 {"cinscopedecls", "cinsd", P_STRING|P_ALLOCED|P_VI_DEF|P_ONECOMMA|P_NODUP,
608#ifdef FEAT_CINDENT
609 (char_u *)&p_cinsd, PV_CINSD,
610 {(char_u *)"public,protected,private", (char_u *)0L}
611#else
612 (char_u *)NULL, PV_NONE,
613 {(char_u *)0L, (char_u *)0L}
614#endif
615 SCTX_INIT},
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200616 {"cinwords", "cinw", P_STRING|P_ALLOCED|P_VI_DEF|P_ONECOMMA|P_NODUP,
617#if defined(FEAT_SMARTINDENT) || defined(FEAT_CINDENT)
618 (char_u *)&p_cinw, PV_CINW,
619 {(char_u *)"if,else,while,do,for,switch",
620 (char_u *)0L}
621#else
622 (char_u *)NULL, PV_NONE,
623 {(char_u *)0L, (char_u *)0L}
624#endif
625 SCTX_INIT},
626 {"clipboard", "cb", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
627#ifdef FEAT_CLIPBOARD
628 (char_u *)&p_cb, PV_NONE,
629# ifdef FEAT_XCLIPBOARD
630 {(char_u *)"autoselect,exclude:cons\\|linux",
631 (char_u *)0L}
632# else
633 {(char_u *)"", (char_u *)0L}
634# endif
635#else
636 (char_u *)NULL, PV_NONE,
637 {(char_u *)"", (char_u *)0L}
638#endif
639 SCTX_INIT},
640 {"cmdheight", "ch", P_NUM|P_VI_DEF|P_RALL,
641 (char_u *)&p_ch, PV_NONE,
642 {(char_u *)1L, (char_u *)0L} SCTX_INIT},
643 {"cmdwinheight", "cwh", P_NUM|P_VI_DEF,
644#ifdef FEAT_CMDWIN
645 (char_u *)&p_cwh, PV_NONE,
646#else
647 (char_u *)NULL, PV_NONE,
648#endif
649 {(char_u *)7L, (char_u *)0L} SCTX_INIT},
650 {"colorcolumn", "cc", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP|P_RWIN,
651#ifdef FEAT_SYN_HL
652 (char_u *)VAR_WIN, PV_CC,
653#else
654 (char_u *)NULL, PV_NONE,
655#endif
656 {(char_u *)"", (char_u *)0L} SCTX_INIT},
657 {"columns", "co", P_NUM|P_NODEFAULT|P_NO_MKRC|P_VI_DEF|P_RCLR,
658 (char_u *)&Columns, PV_NONE,
659 {(char_u *)80L, (char_u *)0L} SCTX_INIT},
660 {"comments", "com", P_STRING|P_ALLOCED|P_VI_DEF|P_ONECOMMA
661 |P_NODUP|P_CURSWANT,
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200662 (char_u *)&p_com, PV_COM,
663 {(char_u *)"s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:-",
664 (char_u *)0L}
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200665 SCTX_INIT},
666 {"commentstring", "cms", P_STRING|P_ALLOCED|P_VI_DEF|P_CURSWANT,
667#ifdef FEAT_FOLDING
668 (char_u *)&p_cms, PV_CMS,
669 {(char_u *)"/*%s*/", (char_u *)0L}
670#else
671 (char_u *)NULL, PV_NONE,
672 {(char_u *)0L, (char_u *)0L}
673#endif
674 SCTX_INIT},
675 // P_PRI_MKRC isn't needed here, optval_default()
676 // always returns TRUE for 'compatible'
677 {"compatible", "cp", P_BOOL|P_RALL,
678 (char_u *)&p_cp, PV_NONE,
679 {(char_u *)TRUE, (char_u *)FALSE} SCTX_INIT},
680 {"complete", "cpt", P_STRING|P_ALLOCED|P_VI_DEF|P_ONECOMMA|P_NODUP,
681 (char_u *)&p_cpt, PV_CPT,
682 {(char_u *)".,w,b,u,t,i", (char_u *)0L}
683 SCTX_INIT},
684 {"concealcursor","cocu", P_STRING|P_ALLOCED|P_RWIN|P_VI_DEF,
685#ifdef FEAT_CONCEAL
686 (char_u *)VAR_WIN, PV_COCU,
687 {(char_u *)"", (char_u *)NULL}
688#else
689 (char_u *)NULL, PV_NONE,
690 {(char_u *)NULL, (char_u *)0L}
691#endif
692 SCTX_INIT},
693 {"conceallevel","cole", P_NUM|P_RWIN|P_VI_DEF,
694#ifdef FEAT_CONCEAL
695 (char_u *)VAR_WIN, PV_COLE,
696#else
697 (char_u *)NULL, PV_NONE,
698#endif
699 {(char_u *)0L, (char_u *)0L}
700 SCTX_INIT},
Yegappan Lakshmanan64095532021-12-06 11:03:55 +0000701 {"completefunc", "cfu", P_STRING|P_ALLOCED|P_VI_DEF|P_SECURE|P_FUNC,
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200702#ifdef FEAT_COMPL_FUNC
703 (char_u *)&p_cfu, PV_CFU,
704 {(char_u *)"", (char_u *)0L}
705#else
706 (char_u *)NULL, PV_NONE,
707 {(char_u *)0L, (char_u *)0L}
708#endif
709 SCTX_INIT},
710 {"completeopt", "cot", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
711 (char_u *)&p_cot, PV_NONE,
712 {(char_u *)"menu,preview", (char_u *)0L}
713 SCTX_INIT},
714 {"completepopup", "cpp", P_STRING|P_VI_DEF|P_COMMA|P_NODUP,
Bram Moolenaar05ad5ff2019-11-30 22:48:27 +0100715#if defined(FEAT_PROP_POPUP) && defined(FEAT_QUICKFIX)
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200716 (char_u *)&p_cpp, PV_NONE,
717 {(char_u *)"", (char_u *)0L}
718#else
719 (char_u *)NULL, PV_NONE,
720 {(char_u *)NULL, (char_u *)0L}
721#endif
722 SCTX_INIT},
723 {"completeslash", "csl", P_STRING|P_VI_DEF|P_VIM,
724#if defined(BACKSLASH_IN_FILENAME)
725 (char_u *)&p_csl, PV_CSL,
726 {(char_u *)"", (char_u *)0L}
727#else
728 (char_u *)NULL, PV_NONE,
729 {(char_u *)0L, (char_u *)0L}
730#endif
731 SCTX_INIT},
732 {"confirm", "cf", P_BOOL|P_VI_DEF,
733#if defined(FEAT_GUI_DIALOG) || defined(FEAT_CON_DIALOG)
734 (char_u *)&p_confirm, PV_NONE,
735#else
736 (char_u *)NULL, PV_NONE,
737#endif
738 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
739 {"conskey", "consk",P_BOOL|P_VI_DEF,
740 (char_u *)NULL, PV_NONE,
741 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
742 {"copyindent", "ci", P_BOOL|P_VI_DEF|P_VIM,
743 (char_u *)&p_ci, PV_CI,
744 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
745 {"cpoptions", "cpo", P_STRING|P_VIM|P_RALL|P_FLAGLIST,
746 (char_u *)&p_cpo, PV_NONE,
747 {(char_u *)CPO_VI, (char_u *)CPO_VIM}
748 SCTX_INIT},
749 {"cryptmethod", "cm", P_STRING|P_ALLOCED|P_VI_DEF,
750#ifdef FEAT_CRYPT
751 (char_u *)&p_cm, PV_CM,
752 {(char_u *)"blowfish2", (char_u *)0L}
753#else
754 (char_u *)NULL, PV_NONE,
755 {(char_u *)0L, (char_u *)0L}
756#endif
757 SCTX_INIT},
758 {"cscopepathcomp", "cspc", P_NUM|P_VI_DEF|P_VIM,
759#ifdef FEAT_CSCOPE
760 (char_u *)&p_cspc, PV_NONE,
761#else
762 (char_u *)NULL, PV_NONE,
763#endif
764 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
765 {"cscopeprg", "csprg", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
766#ifdef FEAT_CSCOPE
767 (char_u *)&p_csprg, PV_NONE,
768 {(char_u *)"cscope", (char_u *)0L}
769#else
770 (char_u *)NULL, PV_NONE,
771 {(char_u *)0L, (char_u *)0L}
772#endif
773 SCTX_INIT},
774 {"cscopequickfix", "csqf", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
775#if defined(FEAT_CSCOPE) && defined(FEAT_QUICKFIX)
776 (char_u *)&p_csqf, PV_NONE,
777 {(char_u *)"", (char_u *)0L}
778#else
779 (char_u *)NULL, PV_NONE,
780 {(char_u *)0L, (char_u *)0L}
781#endif
782 SCTX_INIT},
783 {"cscoperelative", "csre", P_BOOL|P_VI_DEF|P_VIM,
784#ifdef FEAT_CSCOPE
785 (char_u *)&p_csre, PV_NONE,
786#else
787 (char_u *)NULL, PV_NONE,
788#endif
789 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
790 {"cscopetag", "cst", P_BOOL|P_VI_DEF|P_VIM,
791#ifdef FEAT_CSCOPE
792 (char_u *)&p_cst, PV_NONE,
793#else
794 (char_u *)NULL, PV_NONE,
795#endif
796 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
797 {"cscopetagorder", "csto", P_NUM|P_VI_DEF|P_VIM,
798#ifdef FEAT_CSCOPE
799 (char_u *)&p_csto, PV_NONE,
800#else
801 (char_u *)NULL, PV_NONE,
802#endif
803 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
804 {"cscopeverbose", "csverb", P_BOOL|P_VI_DEF|P_VIM,
805#ifdef FEAT_CSCOPE
806 (char_u *)&p_csverbose, PV_NONE,
807#else
808 (char_u *)NULL, PV_NONE,
809#endif
810 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
811 {"cursorbind", "crb", P_BOOL|P_VI_DEF,
812 (char_u *)VAR_WIN, PV_CRBIND,
813 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
814 {"cursorcolumn", "cuc", P_BOOL|P_VI_DEF|P_RWINONLY,
815#ifdef FEAT_SYN_HL
816 (char_u *)VAR_WIN, PV_CUC,
817#else
818 (char_u *)NULL, PV_NONE,
819#endif
820 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
821 {"cursorline", "cul", P_BOOL|P_VI_DEF|P_RWINONLY,
822#ifdef FEAT_SYN_HL
823 (char_u *)VAR_WIN, PV_CUL,
824#else
825 (char_u *)NULL, PV_NONE,
826#endif
827 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
Bram Moolenaar017ba072019-09-14 21:01:23 +0200828 {"cursorlineopt", "culopt", P_STRING|P_VI_DEF|P_RWIN|P_ONECOMMA|P_NODUP,
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200829#ifdef FEAT_SYN_HL
830 (char_u *)VAR_WIN, PV_CULOPT,
831#else
832 (char_u *)NULL, PV_NONE,
833#endif
834 {(char_u *)"both", (char_u *)0L} SCTX_INIT},
835 {"debug", NULL, P_STRING|P_VI_DEF,
836 (char_u *)&p_debug, PV_NONE,
837 {(char_u *)"", (char_u *)0L} SCTX_INIT},
838 {"define", "def", P_STRING|P_ALLOCED|P_VI_DEF|P_CURSWANT,
839#ifdef FEAT_FIND_ID
840 (char_u *)&p_def, PV_DEF,
841 {(char_u *)"^\\s*#\\s*define", (char_u *)0L}
842#else
843 (char_u *)NULL, PV_NONE,
844 {(char_u *)NULL, (char_u *)0L}
845#endif
846 SCTX_INIT},
847 {"delcombine", "deco", P_BOOL|P_VI_DEF|P_VIM,
848 (char_u *)&p_deco, PV_NONE,
849 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
850 {"dictionary", "dict", P_STRING|P_EXPAND|P_VI_DEF|P_ONECOMMA|P_NODUP|P_NDNAME,
851 (char_u *)&p_dict, PV_DICT,
852 {(char_u *)"", (char_u *)0L} SCTX_INIT},
853 {"diff", NULL, P_BOOL|P_VI_DEF|P_RWIN|P_NOGLOB,
854#ifdef FEAT_DIFF
855 (char_u *)VAR_WIN, PV_DIFF,
856#else
857 (char_u *)NULL, PV_NONE,
858#endif
859 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
860 {"diffexpr", "dex", P_STRING|P_VI_DEF|P_SECURE|P_CURSWANT,
861#if defined(FEAT_DIFF) && defined(FEAT_EVAL)
862 (char_u *)&p_dex, PV_NONE,
863 {(char_u *)"", (char_u *)0L}
864#else
865 (char_u *)NULL, PV_NONE,
866 {(char_u *)0L, (char_u *)0L}
867#endif
868 SCTX_INIT},
869 {"diffopt", "dip", P_STRING|P_ALLOCED|P_VI_DEF|P_RWIN|P_ONECOMMA
870 |P_NODUP,
871#ifdef FEAT_DIFF
872 (char_u *)&p_dip, PV_NONE,
Bram Moolenaarc8234772019-11-10 21:00:27 +0100873 {(char_u *)"internal,filler,closeoff",
874 (char_u *)NULL}
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200875#else
876 (char_u *)NULL, PV_NONE,
877 {(char_u *)"", (char_u *)NULL}
878#endif
879 SCTX_INIT},
880 {"digraph", "dg", P_BOOL|P_VI_DEF|P_VIM,
881#ifdef FEAT_DIGRAPHS
882 (char_u *)&p_dg, PV_NONE,
883#else
884 (char_u *)NULL, PV_NONE,
885#endif
886 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
887 {"directory", "dir", P_STRING|P_EXPAND|P_VI_DEF|P_ONECOMMA
888 |P_NODUP|P_SECURE,
889 (char_u *)&p_dir, PV_NONE,
890 {(char_u *)DFLT_DIR, (char_u *)0L} SCTX_INIT},
891 {"display", "dy", P_STRING|P_VI_DEF|P_ONECOMMA|P_RALL|P_NODUP,
892 (char_u *)&p_dy, PV_NONE,
893 {(char_u *)"", (char_u *)0L} SCTX_INIT},
894 {"eadirection", "ead", P_STRING|P_VI_DEF,
895 (char_u *)&p_ead, PV_NONE,
896 {(char_u *)"both", (char_u *)0L}
897 SCTX_INIT},
898 {"edcompatible","ed", P_BOOL|P_VI_DEF,
899 (char_u *)&p_ed, PV_NONE,
900 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
901 {"emoji", "emo", P_BOOL|P_VI_DEF|P_RCLR,
902 (char_u *)&p_emoji, PV_NONE,
903 {(char_u *)TRUE, (char_u *)0L}
904 SCTX_INIT},
905 {"encoding", "enc", P_STRING|P_VI_DEF|P_RCLR|P_NO_ML,
906 (char_u *)&p_enc, PV_NONE,
907 {(char_u *)ENC_DFLT, (char_u *)0L}
908 SCTX_INIT},
909 {"endofline", "eol", P_BOOL|P_NO_MKRC|P_VI_DEF|P_RSTAT,
910 (char_u *)&p_eol, PV_EOL,
911 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
912 {"equalalways", "ea", P_BOOL|P_VI_DEF|P_RALL,
913 (char_u *)&p_ea, PV_NONE,
914 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
915 {"equalprg", "ep", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
916 (char_u *)&p_ep, PV_EP,
917 {(char_u *)"", (char_u *)0L} SCTX_INIT},
918 {"errorbells", "eb", P_BOOL|P_VI_DEF,
919 (char_u *)&p_eb, PV_NONE,
920 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
921 {"errorfile", "ef", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
922#ifdef FEAT_QUICKFIX
923 (char_u *)&p_ef, PV_NONE,
924 {(char_u *)DFLT_ERRORFILE, (char_u *)0L}
925#else
926 (char_u *)NULL, PV_NONE,
927 {(char_u *)NULL, (char_u *)0L}
928#endif
929 SCTX_INIT},
930 {"errorformat", "efm", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
931#ifdef FEAT_QUICKFIX
932 (char_u *)&p_efm, PV_EFM,
933 {(char_u *)DFLT_EFM, (char_u *)0L}
934#else
935 (char_u *)NULL, PV_NONE,
936 {(char_u *)NULL, (char_u *)0L}
937#endif
938 SCTX_INIT},
939 {"esckeys", "ek", P_BOOL|P_VIM,
940 (char_u *)&p_ek, PV_NONE,
941 {(char_u *)FALSE, (char_u *)TRUE} SCTX_INIT},
942 {"eventignore", "ei", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
943 (char_u *)&p_ei, PV_NONE,
944 {(char_u *)"", (char_u *)0L} SCTX_INIT},
945 {"expandtab", "et", P_BOOL|P_VI_DEF|P_VIM,
946 (char_u *)&p_et, PV_ET,
947 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
948 {"exrc", "ex", P_BOOL|P_VI_DEF|P_SECURE,
949 (char_u *)&p_exrc, PV_NONE,
950 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
951 {"fileencoding","fenc", P_STRING|P_ALLOCED|P_VI_DEF|P_RSTAT|P_RBUF
952 |P_NO_MKRC,
953 (char_u *)&p_fenc, PV_FENC,
954 {(char_u *)"", (char_u *)0L}
955 SCTX_INIT},
956 {"fileencodings","fencs", P_STRING|P_VI_DEF|P_ONECOMMA,
957 (char_u *)&p_fencs, PV_NONE,
958 {(char_u *)"ucs-bom", (char_u *)0L}
959 SCTX_INIT},
960 {"fileformat", "ff", P_STRING|P_ALLOCED|P_VI_DEF|P_RSTAT|P_NO_MKRC
961 |P_CURSWANT,
962 (char_u *)&p_ff, PV_FF,
963 {(char_u *)DFLT_FF, (char_u *)0L} SCTX_INIT},
964 {"fileformats", "ffs", P_STRING|P_VIM|P_ONECOMMA|P_NODUP,
965 (char_u *)&p_ffs, PV_NONE,
966 {(char_u *)DFLT_FFS_VI, (char_u *)DFLT_FFS_VIM}
967 SCTX_INIT},
968 {"fileignorecase", "fic", P_BOOL|P_VI_DEF,
969 (char_u *)&p_fic, PV_NONE,
970 {
971#ifdef CASE_INSENSITIVE_FILENAME
972 (char_u *)TRUE,
973#else
974 (char_u *)FALSE,
975#endif
976 (char_u *)0L} SCTX_INIT},
Bram Moolenaard5e8c922021-02-02 21:10:01 +0100977 {"filetype", "ft", P_STRING|P_EXPAND|P_ALLOCED|P_VI_DEF|P_NOGLOB|P_NFNAME,
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200978 (char_u *)&p_ft, PV_FT,
979 {(char_u *)"", (char_u *)0L}
980 SCTX_INIT},
981 {"fillchars", "fcs", P_STRING|P_VI_DEF|P_RALL|P_ONECOMMA|P_NODUP,
982 (char_u *)&p_fcs, PV_NONE,
Bram Moolenaara98f8a22021-02-13 18:24:23 +0100983 {(char_u *)"vert:|,fold:-,eob:~", (char_u *)0L}
Bram Moolenaar0eddca42019-09-12 22:26:43 +0200984 SCTX_INIT},
985 {"fixendofline", "fixeol", P_BOOL|P_VI_DEF|P_RSTAT,
986 (char_u *)&p_fixeol, PV_FIXEOL,
987 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
988 {"fkmap", "fk", P_BOOL|P_VI_DEF,
989 (char_u *)NULL, PV_NONE,
990 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
991 {"flash", "fl", P_BOOL|P_VI_DEF,
992 (char_u *)NULL, PV_NONE,
993 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
994 {"foldclose", "fcl", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP|P_RWIN,
995#ifdef FEAT_FOLDING
996 (char_u *)&p_fcl, PV_NONE,
997 {(char_u *)"", (char_u *)0L}
998#else
999 (char_u *)NULL, PV_NONE,
1000 {(char_u *)NULL, (char_u *)0L}
1001#endif
1002 SCTX_INIT},
1003 {"foldcolumn", "fdc", P_NUM|P_VI_DEF|P_RWIN,
1004#ifdef FEAT_FOLDING
1005 (char_u *)VAR_WIN, PV_FDC,
1006 {(char_u *)FALSE, (char_u *)0L}
1007#else
1008 (char_u *)NULL, PV_NONE,
1009 {(char_u *)NULL, (char_u *)0L}
1010#endif
1011 SCTX_INIT},
1012 {"foldenable", "fen", P_BOOL|P_VI_DEF|P_RWIN,
1013#ifdef FEAT_FOLDING
1014 (char_u *)VAR_WIN, PV_FEN,
1015 {(char_u *)TRUE, (char_u *)0L}
1016#else
1017 (char_u *)NULL, PV_NONE,
1018 {(char_u *)NULL, (char_u *)0L}
1019#endif
1020 SCTX_INIT},
1021 {"foldexpr", "fde", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN|P_MLE,
1022#if defined(FEAT_FOLDING) && defined(FEAT_EVAL)
1023 (char_u *)VAR_WIN, PV_FDE,
1024 {(char_u *)"0", (char_u *)NULL}
1025#else
1026 (char_u *)NULL, PV_NONE,
1027 {(char_u *)NULL, (char_u *)0L}
1028#endif
1029 SCTX_INIT},
1030 {"foldignore", "fdi", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN,
1031#ifdef FEAT_FOLDING
1032 (char_u *)VAR_WIN, PV_FDI,
1033 {(char_u *)"#", (char_u *)NULL}
1034#else
1035 (char_u *)NULL, PV_NONE,
1036 {(char_u *)NULL, (char_u *)0L}
1037#endif
1038 SCTX_INIT},
1039 {"foldlevel", "fdl", P_NUM|P_VI_DEF|P_RWIN,
1040#ifdef FEAT_FOLDING
1041 (char_u *)VAR_WIN, PV_FDL,
1042 {(char_u *)0L, (char_u *)0L}
1043#else
1044 (char_u *)NULL, PV_NONE,
1045 {(char_u *)NULL, (char_u *)0L}
1046#endif
1047 SCTX_INIT},
1048 {"foldlevelstart","fdls", P_NUM|P_VI_DEF|P_CURSWANT,
1049#ifdef FEAT_FOLDING
1050 (char_u *)&p_fdls, PV_NONE,
1051 {(char_u *)-1L, (char_u *)0L}
1052#else
1053 (char_u *)NULL, PV_NONE,
1054 {(char_u *)NULL, (char_u *)0L}
1055#endif
1056 SCTX_INIT},
1057 {"foldmarker", "fmr", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|
1058 P_RWIN|P_ONECOMMA|P_NODUP,
1059#ifdef FEAT_FOLDING
1060 (char_u *)VAR_WIN, PV_FMR,
1061 {(char_u *)"{{{,}}}", (char_u *)NULL}
1062#else
1063 (char_u *)NULL, PV_NONE,
1064 {(char_u *)NULL, (char_u *)0L}
1065#endif
1066 SCTX_INIT},
1067 {"foldmethod", "fdm", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN,
1068#ifdef FEAT_FOLDING
1069 (char_u *)VAR_WIN, PV_FDM,
1070 {(char_u *)"manual", (char_u *)NULL}
1071#else
1072 (char_u *)NULL, PV_NONE,
1073 {(char_u *)NULL, (char_u *)0L}
1074#endif
1075 SCTX_INIT},
1076 {"foldminlines","fml", P_NUM|P_VI_DEF|P_RWIN,
1077#ifdef FEAT_FOLDING
1078 (char_u *)VAR_WIN, PV_FML,
1079 {(char_u *)1L, (char_u *)0L}
1080#else
1081 (char_u *)NULL, PV_NONE,
1082 {(char_u *)NULL, (char_u *)0L}
1083#endif
1084 SCTX_INIT},
1085 {"foldnestmax", "fdn", P_NUM|P_VI_DEF|P_RWIN,
1086#ifdef FEAT_FOLDING
1087 (char_u *)VAR_WIN, PV_FDN,
1088 {(char_u *)20L, (char_u *)0L}
1089#else
1090 (char_u *)NULL, PV_NONE,
1091 {(char_u *)NULL, (char_u *)0L}
1092#endif
1093 SCTX_INIT},
1094 {"foldopen", "fdo", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP|P_CURSWANT,
1095#ifdef FEAT_FOLDING
1096 (char_u *)&p_fdo, PV_NONE,
1097 {(char_u *)"block,hor,mark,percent,quickfix,search,tag,undo",
1098 (char_u *)0L}
1099#else
1100 (char_u *)NULL, PV_NONE,
1101 {(char_u *)NULL, (char_u *)0L}
1102#endif
1103 SCTX_INIT},
1104 {"foldtext", "fdt", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN|P_MLE,
1105#if defined(FEAT_FOLDING) && defined(FEAT_EVAL)
1106 (char_u *)VAR_WIN, PV_FDT,
1107 {(char_u *)"foldtext()", (char_u *)NULL}
1108#else
1109 (char_u *)NULL, PV_NONE,
1110 {(char_u *)NULL, (char_u *)0L}
1111#endif
1112 SCTX_INIT},
1113 {"formatexpr", "fex", P_STRING|P_ALLOCED|P_VI_DEF|P_VIM|P_MLE,
1114#ifdef FEAT_EVAL
1115 (char_u *)&p_fex, PV_FEX,
1116 {(char_u *)"", (char_u *)0L}
1117#else
1118 (char_u *)NULL, PV_NONE,
1119 {(char_u *)0L, (char_u *)0L}
1120#endif
1121 SCTX_INIT},
1122 {"formatoptions","fo", P_STRING|P_ALLOCED|P_VIM|P_FLAGLIST,
1123 (char_u *)&p_fo, PV_FO,
1124 {(char_u *)DFLT_FO_VI, (char_u *)DFLT_FO_VIM}
1125 SCTX_INIT},
1126 {"formatlistpat","flp", P_STRING|P_ALLOCED|P_VI_DEF,
1127 (char_u *)&p_flp, PV_FLP,
1128 {(char_u *)"^\\s*\\d\\+[\\]:.)}\\t ]\\s*",
1129 (char_u *)0L} SCTX_INIT},
1130 {"formatprg", "fp", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
1131 (char_u *)&p_fp, PV_FP,
1132 {(char_u *)"", (char_u *)0L} SCTX_INIT},
1133 {"fsync", "fs", P_BOOL|P_SECURE|P_VI_DEF,
1134#ifdef HAVE_FSYNC
1135 (char_u *)&p_fs, PV_NONE,
1136 {(char_u *)TRUE, (char_u *)0L}
1137#else
1138 (char_u *)NULL, PV_NONE,
1139 {(char_u *)FALSE, (char_u *)0L}
1140#endif
1141 SCTX_INIT},
1142 {"gdefault", "gd", P_BOOL|P_VI_DEF|P_VIM,
1143 (char_u *)&p_gd, PV_NONE,
1144 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1145 {"graphic", "gr", P_BOOL|P_VI_DEF,
1146 (char_u *)NULL, PV_NONE,
1147 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1148 {"grepformat", "gfm", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
1149#ifdef FEAT_QUICKFIX
1150 (char_u *)&p_gefm, PV_NONE,
1151 {(char_u *)DFLT_GREPFORMAT, (char_u *)0L}
1152#else
1153 (char_u *)NULL, PV_NONE,
1154 {(char_u *)NULL, (char_u *)0L}
1155#endif
1156 SCTX_INIT},
1157 {"grepprg", "gp", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
1158#ifdef FEAT_QUICKFIX
1159 (char_u *)&p_gp, PV_GP,
1160 {
ichizok02560422022-04-05 14:18:44 +01001161# if defined(MSWIN)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001162 // may be changed to "grep -n" in os_win32.c
1163 (char_u *)"findstr /n",
ichizok02560422022-04-05 14:18:44 +01001164# elif defined(UNIX)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001165 // Add an extra file name so that grep will always
1166 // insert a file name in the match line.
1167 (char_u *)"grep -n $* /dev/null",
ichizok02560422022-04-05 14:18:44 +01001168# elif defined(VMS)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001169 (char_u *)"SEARCH/NUMBERS ",
ichizok02560422022-04-05 14:18:44 +01001170# else
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001171 (char_u *)"grep -n ",
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001172# endif
1173 (char_u *)0L}
1174#else
1175 (char_u *)NULL, PV_NONE,
1176 {(char_u *)NULL, (char_u *)0L}
1177#endif
1178 SCTX_INIT},
1179 {"guicursor", "gcr", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
1180#ifdef CURSOR_SHAPE
1181 (char_u *)&p_guicursor, PV_NONE,
1182 {
1183# ifdef FEAT_GUI
1184 (char_u *)"n-v-c:block-Cursor/lCursor,ve:ver35-Cursor,o:hor50-Cursor,i-ci:ver25-Cursor/lCursor,r-cr:hor20-Cursor/lCursor,sm:block-Cursor-blinkwait175-blinkoff150-blinkon175",
1185# else // Win32 console
1186 (char_u *)"n-v-c:block,o:hor50,i-ci:hor15,r-cr:hor30,sm:block",
1187# endif
1188 (char_u *)0L}
1189#else
1190 (char_u *)NULL, PV_NONE,
1191 {(char_u *)NULL, (char_u *)0L}
1192#endif
1193 SCTX_INIT},
1194 {"guifont", "gfn", P_STRING|P_VI_DEF|P_RCLR|P_ONECOMMA|P_NODUP,
1195#ifdef FEAT_GUI
1196 (char_u *)&p_guifont, PV_NONE,
1197 {(char_u *)"", (char_u *)0L}
1198#else
1199 (char_u *)NULL, PV_NONE,
1200 {(char_u *)NULL, (char_u *)0L}
1201#endif
1202 SCTX_INIT},
1203 {"guifontset", "gfs", P_STRING|P_VI_DEF|P_RCLR|P_ONECOMMA,
1204#if defined(FEAT_GUI) && defined(FEAT_XFONTSET)
1205 (char_u *)&p_guifontset, PV_NONE,
1206 {(char_u *)"", (char_u *)0L}
1207#else
1208 (char_u *)NULL, PV_NONE,
1209 {(char_u *)NULL, (char_u *)0L}
1210#endif
1211 SCTX_INIT},
1212 {"guifontwide", "gfw", P_STRING|P_VI_DEF|P_RCLR|P_ONECOMMA|P_NODUP,
1213#if defined(FEAT_GUI)
1214 (char_u *)&p_guifontwide, PV_NONE,
1215 {(char_u *)"", (char_u *)0L}
1216#else
1217 (char_u *)NULL, PV_NONE,
1218 {(char_u *)NULL, (char_u *)0L}
1219#endif
1220 SCTX_INIT},
Dusan Popovic4eeedc02021-10-16 20:52:05 +01001221
1222
1223 {"guiligatures", "gli", P_STRING|P_VI_DEF|P_RCLR|P_ONECOMMA|P_NODUP,
1224#if defined(FEAT_GUI_GTK)
1225 (char_u *)&p_guiligatures, PV_NONE,
1226 {(char_u *)"", (char_u *)0L}
1227#else
1228 (char_u *)NULL, PV_NONE,
1229 {(char_u *)NULL, (char_u *)0L}
1230#endif
1231 SCTX_INIT},
1232
1233
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001234 {"guiheadroom", "ghr", P_NUM|P_VI_DEF,
1235#if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_X11)
1236 (char_u *)&p_ghr, PV_NONE,
1237#else
1238 (char_u *)NULL, PV_NONE,
1239#endif
1240 {(char_u *)50L, (char_u *)0L} SCTX_INIT},
1241 {"guioptions", "go", P_STRING|P_VI_DEF|P_RALL|P_FLAGLIST,
1242#if defined(FEAT_GUI)
1243 (char_u *)&p_go, PV_NONE,
Bram Moolenaar097148e2020-08-11 21:58:20 +02001244# if defined(UNIX)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001245 {(char_u *)"aegimrLtT", (char_u *)0L}
1246# else
1247 {(char_u *)"egmrLtT", (char_u *)0L}
1248# endif
1249#else
1250 (char_u *)NULL, PV_NONE,
1251 {(char_u *)NULL, (char_u *)0L}
1252#endif
1253 SCTX_INIT},
1254 {"guipty", NULL, P_BOOL|P_VI_DEF,
1255#if defined(FEAT_GUI)
1256 (char_u *)&p_guipty, PV_NONE,
1257#else
1258 (char_u *)NULL, PV_NONE,
1259#endif
1260 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
1261 {"guitablabel", "gtl", P_STRING|P_VI_DEF|P_RWIN|P_MLE,
1262#if defined(FEAT_GUI_TABLINE)
1263 (char_u *)&p_gtl, PV_NONE,
1264 {(char_u *)"", (char_u *)0L}
1265#else
1266 (char_u *)NULL, PV_NONE,
1267 {(char_u *)NULL, (char_u *)0L}
1268#endif
1269 SCTX_INIT},
1270 {"guitabtooltip", "gtt", P_STRING|P_VI_DEF|P_RWIN,
1271#if defined(FEAT_GUI_TABLINE)
1272 (char_u *)&p_gtt, PV_NONE,
1273 {(char_u *)"", (char_u *)0L}
1274#else
1275 (char_u *)NULL, PV_NONE,
1276 {(char_u *)NULL, (char_u *)0L}
1277#endif
1278 SCTX_INIT},
1279 {"hardtabs", "ht", P_NUM|P_VI_DEF,
1280 (char_u *)NULL, PV_NONE,
1281 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
1282 {"helpfile", "hf", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
1283 (char_u *)&p_hf, PV_NONE,
1284 {(char_u *)DFLT_HELPFILE, (char_u *)0L}
1285 SCTX_INIT},
1286 {"helpheight", "hh", P_NUM|P_VI_DEF,
1287 (char_u *)&p_hh, PV_NONE,
1288 {(char_u *)20L, (char_u *)0L} SCTX_INIT},
1289 {"helplang", "hlg", P_STRING|P_VI_DEF|P_ONECOMMA,
1290#ifdef FEAT_MULTI_LANG
1291 (char_u *)&p_hlg, PV_NONE,
1292 {(char_u *)"", (char_u *)0L}
1293#else
1294 (char_u *)NULL, PV_NONE,
1295 {(char_u *)0L, (char_u *)0L}
1296#endif
1297 SCTX_INIT},
1298 {"hidden", "hid", P_BOOL|P_VI_DEF,
1299 (char_u *)&p_hid, PV_NONE,
1300 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1301 {"highlight", "hl", P_STRING|P_VI_DEF|P_RCLR|P_ONECOMMA|P_NODUP,
1302 (char_u *)&p_hl, PV_NONE,
1303 {(char_u *)HIGHLIGHT_INIT, (char_u *)0L}
1304 SCTX_INIT},
1305 {"history", "hi", P_NUM|P_VIM,
1306 (char_u *)&p_hi, PV_NONE,
1307 {(char_u *)0L, (char_u *)50L} SCTX_INIT},
1308 {"hkmap", "hk", P_BOOL|P_VI_DEF|P_VIM,
1309#ifdef FEAT_RIGHTLEFT
1310 (char_u *)&p_hkmap, PV_NONE,
1311#else
1312 (char_u *)NULL, PV_NONE,
1313#endif
1314 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1315 {"hkmapp", "hkp", P_BOOL|P_VI_DEF|P_VIM,
1316#ifdef FEAT_RIGHTLEFT
1317 (char_u *)&p_hkmapp, PV_NONE,
1318#else
1319 (char_u *)NULL, PV_NONE,
1320#endif
1321 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1322 {"hlsearch", "hls", P_BOOL|P_VI_DEF|P_VIM|P_RALL,
1323 (char_u *)&p_hls, PV_NONE,
1324 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1325 {"icon", NULL, P_BOOL|P_VI_DEF,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001326 (char_u *)&p_icon, PV_NONE,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001327 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1328 {"iconstring", NULL, P_STRING|P_VI_DEF|P_MLE,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001329 (char_u *)&p_iconstring, PV_NONE,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001330 {(char_u *)"", (char_u *)0L} SCTX_INIT},
1331 {"ignorecase", "ic", P_BOOL|P_VI_DEF,
1332 (char_u *)&p_ic, PV_NONE,
1333 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
Yegappan Lakshmanan64095532021-12-06 11:03:55 +00001334 {"imactivatefunc","imaf",P_STRING|P_VI_DEF|P_SECURE|P_FUNC,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001335#if defined(FEAT_EVAL)
1336 (char_u *)&p_imaf, PV_NONE,
1337 {(char_u *)"", (char_u *)NULL}
1338# else
1339 (char_u *)NULL, PV_NONE,
1340 {(char_u *)NULL, (char_u *)0L}
1341# endif
1342 SCTX_INIT},
1343 {"imactivatekey","imak",P_STRING|P_VI_DEF,
1344#if defined(FEAT_XIM) && defined(FEAT_GUI_GTK)
1345 (char_u *)&p_imak, PV_NONE,
1346#else
1347 (char_u *)NULL, PV_NONE,
1348#endif
1349 {(char_u *)"", (char_u *)0L} SCTX_INIT},
1350 {"imcmdline", "imc", P_BOOL|P_VI_DEF,
1351 (char_u *)&p_imcmdline, PV_NONE,
1352 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1353 {"imdisable", "imd", P_BOOL|P_VI_DEF,
1354 (char_u *)&p_imdisable, PV_NONE,
1355#ifdef __sgi
1356 {(char_u *)TRUE, (char_u *)0L}
1357#else
1358 {(char_u *)FALSE, (char_u *)0L}
1359#endif
1360 SCTX_INIT},
1361 {"iminsert", "imi", P_NUM|P_VI_DEF,
1362 (char_u *)&p_iminsert, PV_IMI,
1363 {(char_u *)B_IMODE_NONE, (char_u *)0L}
1364 SCTX_INIT},
1365 {"imsearch", "ims", P_NUM|P_VI_DEF,
1366 (char_u *)&p_imsearch, PV_IMS,
1367 {(char_u *)B_IMODE_USE_INSERT, (char_u *)0L}
1368 SCTX_INIT},
Yegappan Lakshmanan64095532021-12-06 11:03:55 +00001369 {"imstatusfunc","imsf",P_STRING|P_VI_DEF|P_SECURE|P_FUNC,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001370#if defined(FEAT_EVAL)
1371 (char_u *)&p_imsf, PV_NONE,
1372 {(char_u *)"", (char_u *)NULL}
1373#else
1374 (char_u *)NULL, PV_NONE,
1375 {(char_u *)NULL, (char_u *)0L}
1376#endif
1377 SCTX_INIT},
1378 {"imstyle", "imst", P_NUM|P_VI_DEF|P_SECURE,
1379#if defined(FEAT_XIM) && defined(FEAT_GUI_GTK)
1380 (char_u *)&p_imst, PV_NONE,
1381 {(char_u *)IM_OVER_THE_SPOT, (char_u *)0L}
1382#else
1383 (char_u *)NULL, PV_NONE,
1384 {(char_u *)0L, (char_u *)0L}
1385#endif
1386 SCTX_INIT},
1387 {"include", "inc", P_STRING|P_ALLOCED|P_VI_DEF,
1388#ifdef FEAT_FIND_ID
1389 (char_u *)&p_inc, PV_INC,
1390 {(char_u *)"^\\s*#\\s*include", (char_u *)0L}
1391#else
1392 (char_u *)NULL, PV_NONE,
1393 {(char_u *)0L, (char_u *)0L}
1394#endif
1395 SCTX_INIT},
1396 {"includeexpr", "inex", P_STRING|P_ALLOCED|P_VI_DEF|P_MLE,
1397#if defined(FEAT_FIND_ID) && defined(FEAT_EVAL)
1398 (char_u *)&p_inex, PV_INEX,
1399 {(char_u *)"", (char_u *)0L}
1400#else
1401 (char_u *)NULL, PV_NONE,
1402 {(char_u *)0L, (char_u *)0L}
1403#endif
1404 SCTX_INIT},
1405 {"incsearch", "is", P_BOOL|P_VI_DEF|P_VIM,
1406 (char_u *)&p_is, PV_NONE,
1407 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1408 {"indentexpr", "inde", P_STRING|P_ALLOCED|P_VI_DEF|P_VIM|P_MLE,
1409#if defined(FEAT_CINDENT) && defined(FEAT_EVAL)
1410 (char_u *)&p_inde, PV_INDE,
1411 {(char_u *)"", (char_u *)0L}
1412#else
1413 (char_u *)NULL, PV_NONE,
1414 {(char_u *)0L, (char_u *)0L}
1415#endif
1416 SCTX_INIT},
1417 {"indentkeys", "indk", P_STRING|P_ALLOCED|P_VI_DEF|P_ONECOMMA|P_NODUP,
1418#if defined(FEAT_CINDENT) && defined(FEAT_EVAL)
1419 (char_u *)&p_indk, PV_INDK,
1420 {INDENTKEYS_DEFAULT, (char_u *)0L}
1421#else
1422 (char_u *)NULL, PV_NONE,
1423 {(char_u *)0L, (char_u *)0L}
1424#endif
1425 SCTX_INIT},
1426 {"infercase", "inf", P_BOOL|P_VI_DEF,
1427 (char_u *)&p_inf, PV_INF,
1428 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1429 {"insertmode", "im", P_BOOL|P_VI_DEF|P_VIM,
1430 (char_u *)&p_im, PV_NONE,
1431 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1432 {"isfname", "isf", P_STRING|P_VI_DEF|P_COMMA|P_NODUP,
1433 (char_u *)&p_isf, PV_NONE,
1434 {
1435#ifdef BACKSLASH_IN_FILENAME
1436 // Excluded are: & and ^ are special in cmd.exe
1437 // ( and ) are used in text separating fnames
1438 (char_u *)"@,48-57,/,\\,.,-,_,+,,,#,$,%,{,},[,],:,@-@,!,~,=",
1439#else
ichizok02560422022-04-05 14:18:44 +01001440# if defined(AMIGA)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001441 (char_u *)"@,48-57,/,.,-,_,+,,,$,:",
ichizok02560422022-04-05 14:18:44 +01001442# elif defined(VMS)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001443 (char_u *)"@,48-57,/,.,-,_,+,,,#,$,%,<,>,[,],:,;,~",
ichizok02560422022-04-05 14:18:44 +01001444# else // UNIX et al.
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001445 (char_u *)"@,48-57,/,.,-,_,+,,,#,$,%,~,=",
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001446# endif
1447#endif
1448 (char_u *)0L} SCTX_INIT},
1449 {"isident", "isi", P_STRING|P_VI_DEF|P_COMMA|P_NODUP,
1450 (char_u *)&p_isi, PV_NONE,
1451 {
1452#if defined(MSWIN)
1453 (char_u *)"@,48-57,_,128-167,224-235",
1454#else
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001455 (char_u *)"@,48-57,_,192-255",
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001456#endif
1457 (char_u *)0L} SCTX_INIT},
1458 {"iskeyword", "isk", P_STRING|P_ALLOCED|P_VIM|P_COMMA|P_NODUP,
1459 (char_u *)&p_isk, PV_ISK,
1460 {
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001461 (char_u *)"@,48-57,_",
Bram Moolenaar424bcae2022-01-31 14:59:41 +00001462#if defined(MSWIN)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001463 (char_u *)"@,48-57,_,128-167,224-235"
Bram Moolenaar424bcae2022-01-31 14:59:41 +00001464#else
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001465 ISK_LATIN1
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001466#endif
1467 } SCTX_INIT},
1468 {"isprint", "isp", P_STRING|P_VI_DEF|P_RALL|P_COMMA|P_NODUP,
1469 (char_u *)&p_isp, PV_NONE,
1470 {
1471#if defined(MSWIN) || defined(VMS)
1472 (char_u *)"@,~-255",
1473#else
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001474 ISP_LATIN1,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001475#endif
1476 (char_u *)0L} SCTX_INIT},
1477 {"joinspaces", "js", P_BOOL|P_VI_DEF|P_VIM,
1478 (char_u *)&p_js, PV_NONE,
1479 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
1480 {"key", NULL, P_STRING|P_ALLOCED|P_VI_DEF|P_NO_MKRC,
1481#ifdef FEAT_CRYPT
1482 (char_u *)&p_key, PV_KEY,
1483 {(char_u *)"", (char_u *)0L}
1484#else
1485 (char_u *)NULL, PV_NONE,
1486 {(char_u *)0L, (char_u *)0L}
1487#endif
1488 SCTX_INIT},
1489 {"keymap", "kmp", P_STRING|P_ALLOCED|P_VI_DEF|P_RBUF|P_RSTAT|P_NFNAME|P_PRI_MKRC,
1490#ifdef FEAT_KEYMAP
1491 (char_u *)&p_keymap, PV_KMAP,
1492 {(char_u *)"", (char_u *)0L}
1493#else
1494 (char_u *)NULL, PV_NONE,
1495 {(char_u *)"", (char_u *)0L}
1496#endif
1497 SCTX_INIT},
1498 {"keymodel", "km", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
1499 (char_u *)&p_km, PV_NONE,
1500 {(char_u *)"", (char_u *)0L} SCTX_INIT},
1501 {"keywordprg", "kp", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
1502 (char_u *)&p_kp, PV_KP,
1503 {
ichizok02560422022-04-05 14:18:44 +01001504#if defined(MSWIN)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001505 (char_u *)":help",
ichizok02560422022-04-05 14:18:44 +01001506#elif defined(VMS)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001507 (char_u *)"help",
ichizok02560422022-04-05 14:18:44 +01001508#elif defined(USEMAN_S)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001509 (char_u *)"man -s",
ichizok02560422022-04-05 14:18:44 +01001510#else
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001511 (char_u *)"man",
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001512#endif
1513 (char_u *)0L} SCTX_INIT},
1514 {"langmap", "lmap", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP|P_SECURE,
1515#ifdef FEAT_LANGMAP
1516 (char_u *)&p_langmap, PV_NONE,
1517 {(char_u *)"", (char_u *)0L}
1518#else
1519 (char_u *)NULL, PV_NONE,
1520 {(char_u *)NULL, (char_u *)0L}
1521#endif
1522 SCTX_INIT},
1523 {"langmenu", "lm", P_STRING|P_VI_DEF|P_NFNAME,
1524#if defined(FEAT_MENU) && defined(FEAT_MULTI_LANG)
1525 (char_u *)&p_lm, PV_NONE,
1526#else
1527 (char_u *)NULL, PV_NONE,
1528#endif
1529 {(char_u *)"", (char_u *)0L} SCTX_INIT},
1530 {"langnoremap", "lnr", P_BOOL|P_VI_DEF,
1531#ifdef FEAT_LANGMAP
1532 (char_u *)&p_lnr, PV_NONE,
1533#else
1534 (char_u *)NULL, PV_NONE,
1535#endif
1536 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1537 {"langremap", "lrm", P_BOOL|P_VI_DEF,
1538#ifdef FEAT_LANGMAP
1539 (char_u *)&p_lrm, PV_NONE,
1540#else
1541 (char_u *)NULL, PV_NONE,
1542#endif
1543 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
1544 {"laststatus", "ls", P_NUM|P_VI_DEF|P_RALL,
1545 (char_u *)&p_ls, PV_NONE,
1546 {(char_u *)1L, (char_u *)0L} SCTX_INIT},
1547 {"lazyredraw", "lz", P_BOOL|P_VI_DEF,
1548 (char_u *)&p_lz, PV_NONE,
1549 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1550 {"linebreak", "lbr", P_BOOL|P_VI_DEF|P_RWIN,
1551#ifdef FEAT_LINEBREAK
1552 (char_u *)VAR_WIN, PV_LBR,
1553#else
1554 (char_u *)NULL, PV_NONE,
1555#endif
1556 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1557 {"lines", NULL, P_NUM|P_NODEFAULT|P_NO_MKRC|P_VI_DEF|P_RCLR,
1558 (char_u *)&Rows, PV_NONE,
1559 {
1560#if defined(MSWIN)
1561 (char_u *)25L,
1562#else
1563 (char_u *)24L,
1564#endif
1565 (char_u *)0L} SCTX_INIT},
1566 {"linespace", "lsp", P_NUM|P_VI_DEF|P_RCLR,
1567#ifdef FEAT_GUI
1568 (char_u *)&p_linespace, PV_NONE,
1569#else
1570 (char_u *)NULL, PV_NONE,
1571#endif
1572#ifdef FEAT_GUI_MSWIN
1573 {(char_u *)1L, (char_u *)0L}
1574#else
1575 {(char_u *)0L, (char_u *)0L}
1576#endif
1577 SCTX_INIT},
1578 {"lisp", NULL, P_BOOL|P_VI_DEF,
1579#ifdef FEAT_LISP
1580 (char_u *)&p_lisp, PV_LISP,
1581#else
1582 (char_u *)NULL, PV_NONE,
1583#endif
1584 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1585 {"lispwords", "lw", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
1586#ifdef FEAT_LISP
1587 (char_u *)&p_lispwords, PV_LW,
1588 {(char_u *)LISPWORD_VALUE, (char_u *)0L}
1589#else
1590 (char_u *)NULL, PV_NONE,
1591 {(char_u *)"", (char_u *)0L}
1592#endif
1593 SCTX_INIT},
1594 {"list", NULL, P_BOOL|P_VI_DEF|P_RWIN,
1595 (char_u *)VAR_WIN, PV_LIST,
1596 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1597 {"listchars", "lcs", P_STRING|P_VI_DEF|P_RALL|P_ONECOMMA|P_NODUP,
Bram Moolenaareed9d462021-02-15 20:38:25 +01001598 (char_u *)&p_lcs, PV_LCS,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001599 {(char_u *)"eol:$", (char_u *)0L} SCTX_INIT},
1600 {"loadplugins", "lpl", P_BOOL|P_VI_DEF,
1601 (char_u *)&p_lpl, PV_NONE,
1602 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
1603 {"luadll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
1604#if defined(DYNAMIC_LUA)
1605 (char_u *)&p_luadll, PV_NONE,
1606 {(char_u *)DYNAMIC_LUA_DLL, (char_u *)0L}
1607#else
1608 (char_u *)NULL, PV_NONE,
1609 {(char_u *)"", (char_u *)0L}
1610#endif
1611 SCTX_INIT},
1612 {"macatsui", NULL, P_BOOL|P_VI_DEF|P_RCLR,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001613 (char_u *)NULL, PV_NONE,
1614 {(char_u *)"", (char_u *)0L}
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001615 SCTX_INIT},
1616 {"magic", NULL, P_BOOL|P_VI_DEF,
1617 (char_u *)&p_magic, PV_NONE,
1618 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
1619 {"makeef", "mef", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
1620#ifdef FEAT_QUICKFIX
1621 (char_u *)&p_mef, PV_NONE,
1622 {(char_u *)"", (char_u *)0L}
1623#else
1624 (char_u *)NULL, PV_NONE,
1625 {(char_u *)NULL, (char_u *)0L}
1626#endif
1627 SCTX_INIT},
1628 {"makeencoding","menc", P_STRING|P_VI_DEF,
1629 (char_u *)&p_menc, PV_MENC,
1630 {(char_u *)"", (char_u *)0L}
1631 SCTX_INIT},
1632 {"makeprg", "mp", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
1633#ifdef FEAT_QUICKFIX
1634 (char_u *)&p_mp, PV_MP,
1635# ifdef VMS
1636 {(char_u *)"MMS", (char_u *)0L}
1637# else
1638 {(char_u *)"make", (char_u *)0L}
1639# endif
1640#else
1641 (char_u *)NULL, PV_NONE,
1642 {(char_u *)NULL, (char_u *)0L}
1643#endif
1644 SCTX_INIT},
1645 {"matchpairs", "mps", P_STRING|P_ALLOCED|P_VI_DEF|P_ONECOMMA|P_NODUP,
1646 (char_u *)&p_mps, PV_MPS,
1647 {(char_u *)"(:),{:},[:]", (char_u *)0L}
1648 SCTX_INIT},
1649 {"matchtime", "mat", P_NUM|P_VI_DEF,
1650 (char_u *)&p_mat, PV_NONE,
1651 {(char_u *)5L, (char_u *)0L} SCTX_INIT},
1652 {"maxcombine", "mco", P_NUM|P_VI_DEF|P_CURSWANT,
1653 (char_u *)&p_mco, PV_NONE,
1654 {(char_u *)2, (char_u *)0L} SCTX_INIT},
1655 {"maxfuncdepth", "mfd", P_NUM|P_VI_DEF,
1656#ifdef FEAT_EVAL
1657 (char_u *)&p_mfd, PV_NONE,
1658#else
1659 (char_u *)NULL, PV_NONE,
1660#endif
1661 {(char_u *)100L, (char_u *)0L} SCTX_INIT},
1662 {"maxmapdepth", "mmd", P_NUM|P_VI_DEF,
1663 (char_u *)&p_mmd, PV_NONE,
1664 {(char_u *)1000L, (char_u *)0L} SCTX_INIT},
1665 {"maxmem", "mm", P_NUM|P_VI_DEF,
1666 (char_u *)&p_mm, PV_NONE,
1667 {(char_u *)DFLT_MAXMEM, (char_u *)0L}
1668 SCTX_INIT},
1669 {"maxmempattern","mmp", P_NUM|P_VI_DEF,
1670 (char_u *)&p_mmp, PV_NONE,
1671 {(char_u *)1000L, (char_u *)0L} SCTX_INIT},
1672 {"maxmemtot", "mmt", P_NUM|P_VI_DEF,
1673 (char_u *)&p_mmt, PV_NONE,
1674 {(char_u *)DFLT_MAXMEMTOT, (char_u *)0L}
1675 SCTX_INIT},
1676 {"menuitems", "mis", P_NUM|P_VI_DEF,
1677#ifdef FEAT_MENU
1678 (char_u *)&p_mis, PV_NONE,
1679#else
1680 (char_u *)NULL, PV_NONE,
1681#endif
1682 {(char_u *)25L, (char_u *)0L} SCTX_INIT},
1683 {"mesg", NULL, P_BOOL|P_VI_DEF,
1684 (char_u *)NULL, PV_NONE,
1685 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1686 {"mkspellmem", "msm", P_STRING|P_VI_DEF|P_EXPAND|P_SECURE,
1687#ifdef FEAT_SPELL
1688 (char_u *)&p_msm, PV_NONE,
1689 {(char_u *)"460000,2000,500", (char_u *)0L}
1690#else
1691 (char_u *)NULL, PV_NONE,
1692 {(char_u *)0L, (char_u *)0L}
1693#endif
1694 SCTX_INIT},
1695 {"modeline", "ml", P_BOOL|P_VIM,
1696 (char_u *)&p_ml, PV_ML,
1697 {(char_u *)FALSE, (char_u *)TRUE} SCTX_INIT},
1698 {"modelineexpr", "mle", P_BOOL|P_VI_DEF|P_SECURE,
1699 (char_u *)&p_mle, PV_NONE,
1700 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1701 {"modelines", "mls", P_NUM|P_VI_DEF,
1702 (char_u *)&p_mls, PV_NONE,
1703 {(char_u *)5L, (char_u *)0L} SCTX_INIT},
1704 {"modifiable", "ma", P_BOOL|P_VI_DEF|P_NOGLOB,
1705 (char_u *)&p_ma, PV_MA,
1706 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
1707 {"modified", "mod", P_BOOL|P_NO_MKRC|P_VI_DEF|P_RSTAT,
1708 (char_u *)&p_mod, PV_MOD,
1709 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1710 {"more", NULL, P_BOOL|P_VIM,
1711 (char_u *)&p_more, PV_NONE,
1712 {(char_u *)FALSE, (char_u *)TRUE} SCTX_INIT},
1713 {"mouse", NULL, P_STRING|P_VI_DEF|P_FLAGLIST,
1714 (char_u *)&p_mouse, PV_NONE,
1715 {
1716#if defined(MSWIN)
1717 (char_u *)"a",
1718#else
1719 (char_u *)"",
1720#endif
1721 (char_u *)0L} SCTX_INIT},
1722 {"mousefocus", "mousef", P_BOOL|P_VI_DEF,
1723#ifdef FEAT_GUI
1724 (char_u *)&p_mousef, PV_NONE,
1725#else
1726 (char_u *)NULL, PV_NONE,
1727#endif
1728 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1729 {"mousehide", "mh", P_BOOL|P_VI_DEF,
1730#ifdef FEAT_GUI
1731 (char_u *)&p_mh, PV_NONE,
1732#else
1733 (char_u *)NULL, PV_NONE,
1734#endif
1735 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
1736 {"mousemodel", "mousem", P_STRING|P_VI_DEF,
1737 (char_u *)&p_mousem, PV_NONE,
1738 {
1739#if defined(MSWIN)
1740 (char_u *)"popup",
1741#else
1742# if defined(MACOS_X)
1743 (char_u *)"popup_setpos",
1744# else
1745 (char_u *)"extend",
1746# endif
1747#endif
1748 (char_u *)0L} SCTX_INIT},
Ernie Raelc4cb5442022-04-03 15:47:28 +01001749 {"mousemoveevent", "mousemev", P_BOOL|P_VI_DEF,
1750#ifdef FEAT_GUI
1751 (char_u *)&p_mousemev, PV_NONE,
1752#else
1753 (char_u *)NULL, PV_NONE,
1754#endif
1755 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001756 {"mouseshape", "mouses", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
1757#ifdef FEAT_MOUSESHAPE
1758 (char_u *)&p_mouseshape, PV_NONE,
1759 {(char_u *)"i-r:beam,s:updown,sd:udsizing,vs:leftright,vd:lrsizing,m:no,ml:up-arrow,v:rightup-arrow", (char_u *)0L}
1760#else
1761 (char_u *)NULL, PV_NONE,
1762 {(char_u *)NULL, (char_u *)0L}
1763#endif
1764 SCTX_INIT},
1765 {"mousetime", "mouset", P_NUM|P_VI_DEF,
1766 (char_u *)&p_mouset, PV_NONE,
1767 {(char_u *)500L, (char_u *)0L} SCTX_INIT},
1768 {"mzschemedll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
1769#if defined(DYNAMIC_MZSCHEME)
1770 (char_u *)&p_mzschemedll, PV_NONE,
1771 {(char_u *)DYNAMIC_MZSCH_DLL, (char_u *)0L}
1772#else
1773 (char_u *)NULL, PV_NONE,
1774 {(char_u *)"", (char_u *)0L}
1775#endif
1776 SCTX_INIT},
1777 {"mzschemegcdll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
1778#if defined(DYNAMIC_MZSCHEME)
1779 (char_u *)&p_mzschemegcdll, PV_NONE,
1780 {(char_u *)DYNAMIC_MZGC_DLL, (char_u *)0L}
1781#else
1782 (char_u *)NULL, PV_NONE,
1783 {(char_u *)"", (char_u *)0L}
1784#endif
1785 SCTX_INIT},
1786 {"mzquantum", "mzq", P_NUM,
1787#ifdef FEAT_MZSCHEME
1788 (char_u *)&p_mzq, PV_NONE,
1789#else
1790 (char_u *)NULL, PV_NONE,
1791#endif
1792 {(char_u *)100L, (char_u *)100L} SCTX_INIT},
1793 {"novice", NULL, P_BOOL|P_VI_DEF,
1794 (char_u *)NULL, PV_NONE,
1795 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1796 {"nrformats", "nf", P_STRING|P_ALLOCED|P_VI_DEF|P_ONECOMMA|P_NODUP,
1797 (char_u *)&p_nf, PV_NF,
1798 {(char_u *)"bin,octal,hex", (char_u *)0L}
1799 SCTX_INIT},
1800 {"number", "nu", P_BOOL|P_VI_DEF|P_RWIN,
1801 (char_u *)VAR_WIN, PV_NU,
1802 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1803 {"numberwidth", "nuw", P_NUM|P_RWIN|P_VIM,
1804#ifdef FEAT_LINEBREAK
1805 (char_u *)VAR_WIN, PV_NUW,
1806#else
1807 (char_u *)NULL, PV_NONE,
1808#endif
1809 {(char_u *)8L, (char_u *)4L} SCTX_INIT},
Yegappan Lakshmanan64095532021-12-06 11:03:55 +00001810 {"omnifunc", "ofu", P_STRING|P_ALLOCED|P_VI_DEF|P_SECURE|P_FUNC,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001811#ifdef FEAT_COMPL_FUNC
1812 (char_u *)&p_ofu, PV_OFU,
1813 {(char_u *)"", (char_u *)0L}
1814#else
1815 (char_u *)NULL, PV_NONE,
1816 {(char_u *)0L, (char_u *)0L}
1817#endif
1818 SCTX_INIT},
1819 {"open", NULL, P_BOOL|P_VI_DEF,
1820 (char_u *)NULL, PV_NONE,
1821 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1822 {"opendevice", "odev", P_BOOL|P_VI_DEF,
1823#if defined(MSWIN)
1824 (char_u *)&p_odev, PV_NONE,
1825#else
1826 (char_u *)NULL, PV_NONE,
1827#endif
1828 {(char_u *)FALSE, (char_u *)FALSE}
1829 SCTX_INIT},
Yegappan Lakshmanan64095532021-12-06 11:03:55 +00001830 {"operatorfunc", "opfunc", P_STRING|P_VI_DEF|P_SECURE|P_FUNC,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001831 (char_u *)&p_opfunc, PV_NONE,
1832 {(char_u *)"", (char_u *)0L} SCTX_INIT},
1833 {"optimize", "opt", P_BOOL|P_VI_DEF,
1834 (char_u *)NULL, PV_NONE,
1835 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1836 {"osfiletype", "oft", P_STRING|P_ALLOCED|P_VI_DEF,
1837 (char_u *)NULL, PV_NONE,
1838 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
1839 {"packpath", "pp", P_STRING|P_VI_DEF|P_EXPAND|P_ONECOMMA|P_NODUP
1840 |P_SECURE,
1841 (char_u *)&p_pp, PV_NONE,
1842 {(char_u *)DFLT_RUNTIMEPATH, (char_u *)0L}
1843 SCTX_INIT},
1844 {"paragraphs", "para", P_STRING|P_VI_DEF,
1845 (char_u *)&p_para, PV_NONE,
1846 {(char_u *)"IPLPPPQPP TPHPLIPpLpItpplpipbp",
1847 (char_u *)0L} SCTX_INIT},
1848 {"paste", NULL, P_BOOL|P_VI_DEF|P_PRI_MKRC,
1849 (char_u *)&p_paste, PV_NONE,
1850 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1851 {"pastetoggle", "pt", P_STRING|P_VI_DEF,
1852 (char_u *)&p_pt, PV_NONE,
1853 {(char_u *)"", (char_u *)0L} SCTX_INIT},
1854 {"patchexpr", "pex", P_STRING|P_VI_DEF|P_SECURE,
1855#if defined(FEAT_DIFF) && defined(FEAT_EVAL)
1856 (char_u *)&p_pex, PV_NONE,
1857 {(char_u *)"", (char_u *)0L}
1858#else
1859 (char_u *)NULL, PV_NONE,
1860 {(char_u *)0L, (char_u *)0L}
1861#endif
1862 SCTX_INIT},
1863 {"patchmode", "pm", P_STRING|P_VI_DEF|P_NFNAME,
1864 (char_u *)&p_pm, PV_NONE,
1865 {(char_u *)"", (char_u *)0L} SCTX_INIT},
1866 {"path", "pa", P_STRING|P_EXPAND|P_VI_DEF|P_COMMA|P_NODUP,
1867 (char_u *)&p_path, PV_PATH,
1868 {
1869#if defined(AMIGA) || defined(MSWIN)
1870 (char_u *)".,,",
1871#else
1872 (char_u *)".,/usr/include,,",
1873#endif
1874 (char_u *)0L} SCTX_INIT},
1875 {"perldll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
1876#if defined(DYNAMIC_PERL)
1877 (char_u *)&p_perldll, PV_NONE,
1878 {(char_u *)DYNAMIC_PERL_DLL, (char_u *)0L}
1879#else
1880 (char_u *)NULL, PV_NONE,
1881 {(char_u *)0L, (char_u *)0L}
1882#endif
1883 SCTX_INIT},
1884 {"preserveindent", "pi", P_BOOL|P_VI_DEF|P_VIM,
1885 (char_u *)&p_pi, PV_PI,
1886 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1887 {"previewheight", "pvh", P_NUM|P_VI_DEF,
1888#if defined(FEAT_QUICKFIX)
1889 (char_u *)&p_pvh, PV_NONE,
1890#else
1891 (char_u *)NULL, PV_NONE,
1892#endif
1893 {(char_u *)12L, (char_u *)0L} SCTX_INIT},
1894 {"previewpopup", "pvp", P_STRING|P_VI_DEF|P_COMMA|P_NODUP,
Bram Moolenaar05ad5ff2019-11-30 22:48:27 +01001895#ifdef FEAT_PROP_POPUP
Bram Moolenaar0eddca42019-09-12 22:26:43 +02001896 (char_u *)&p_pvp, PV_NONE,
1897 {(char_u *)"", (char_u *)0L}
1898#else
1899 (char_u *)NULL, PV_NONE,
1900 {(char_u *)NULL, (char_u *)0L}
1901#endif
1902 SCTX_INIT},
1903 {"previewwindow", "pvw", P_BOOL|P_VI_DEF|P_RSTAT|P_NOGLOB,
1904#if defined(FEAT_QUICKFIX)
1905 (char_u *)VAR_WIN, PV_PVW,
1906#else
1907 (char_u *)NULL, PV_NONE,
1908#endif
1909 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
1910 {"printdevice", "pdev", P_STRING|P_VI_DEF|P_SECURE,
1911#ifdef FEAT_PRINTER
1912 (char_u *)&p_pdev, PV_NONE,
1913 {(char_u *)"", (char_u *)0L}
1914#else
1915 (char_u *)NULL, PV_NONE,
1916 {(char_u *)NULL, (char_u *)0L}
1917#endif
1918 SCTX_INIT},
1919 {"printencoding", "penc", P_STRING|P_VI_DEF,
1920#ifdef FEAT_POSTSCRIPT
1921 (char_u *)&p_penc, PV_NONE,
1922 {(char_u *)"", (char_u *)0L}
1923#else
1924 (char_u *)NULL, PV_NONE,
1925 {(char_u *)NULL, (char_u *)0L}
1926#endif
1927 SCTX_INIT},
1928 {"printexpr", "pexpr", P_STRING|P_VI_DEF|P_SECURE,
1929#ifdef FEAT_POSTSCRIPT
1930 (char_u *)&p_pexpr, PV_NONE,
1931 {(char_u *)"", (char_u *)0L}
1932#else
1933 (char_u *)NULL, PV_NONE,
1934 {(char_u *)NULL, (char_u *)0L}
1935#endif
1936 SCTX_INIT},
1937 {"printfont", "pfn", P_STRING|P_VI_DEF,
1938#ifdef FEAT_PRINTER
1939 (char_u *)&p_pfn, PV_NONE,
1940 {
1941# ifdef MSWIN
1942 (char_u *)"Courier_New:h10",
1943# else
1944 (char_u *)"courier",
1945# endif
1946 (char_u *)0L}
1947#else
1948 (char_u *)NULL, PV_NONE,
1949 {(char_u *)NULL, (char_u *)0L}
1950#endif
1951 SCTX_INIT},
1952 {"printheader", "pheader", P_STRING|P_VI_DEF|P_GETTEXT,
1953#ifdef FEAT_PRINTER
1954 (char_u *)&p_header, PV_NONE,
1955 // untranslated to avoid problems when 'encoding'
1956 // is changed
1957 {(char_u *)"%<%f%h%m%=Page %N", (char_u *)0L}
1958#else
1959 (char_u *)NULL, PV_NONE,
1960 {(char_u *)NULL, (char_u *)0L}
1961#endif
1962 SCTX_INIT},
1963 {"printmbcharset", "pmbcs", P_STRING|P_VI_DEF,
1964#if defined(FEAT_POSTSCRIPT)
1965 (char_u *)&p_pmcs, PV_NONE,
1966 {(char_u *)"", (char_u *)0L}
1967#else
1968 (char_u *)NULL, PV_NONE,
1969 {(char_u *)NULL, (char_u *)0L}
1970#endif
1971 SCTX_INIT},
1972 {"printmbfont", "pmbfn", P_STRING|P_VI_DEF,
1973#if defined(FEAT_POSTSCRIPT)
1974 (char_u *)&p_pmfn, PV_NONE,
1975 {(char_u *)"", (char_u *)0L}
1976#else
1977 (char_u *)NULL, PV_NONE,
1978 {(char_u *)NULL, (char_u *)0L}
1979#endif
1980 SCTX_INIT},
1981 {"printoptions", "popt", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
1982#ifdef FEAT_PRINTER
1983 (char_u *)&p_popt, PV_NONE,
1984 {(char_u *)"", (char_u *)0L}
1985#else
1986 (char_u *)NULL, PV_NONE,
1987 {(char_u *)NULL, (char_u *)0L}
1988#endif
1989 SCTX_INIT},
1990 {"prompt", NULL, P_BOOL|P_VI_DEF,
1991 (char_u *)&p_prompt, PV_NONE,
1992 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
1993 {"pumheight", "ph", P_NUM|P_VI_DEF,
1994 (char_u *)&p_ph, PV_NONE,
1995 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
1996 {"pumwidth", "pw", P_NUM|P_VI_DEF,
1997 (char_u *)&p_pw, PV_NONE,
1998 {(char_u *)15L, (char_u *)15L} SCTX_INIT},
1999 {"pythonthreedll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
2000#if defined(DYNAMIC_PYTHON3)
2001 (char_u *)&p_py3dll, PV_NONE,
2002 {(char_u *)DYNAMIC_PYTHON3_DLL, (char_u *)0L}
2003#else
2004 (char_u *)NULL, PV_NONE,
2005 {(char_u *)NULL, (char_u *)0L}
2006#endif
2007 SCTX_INIT},
2008 {"pythonthreehome", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
2009#if defined(FEAT_PYTHON3)
2010 (char_u *)&p_py3home, PV_NONE,
2011 {(char_u *)"", (char_u *)0L}
2012#else
2013 (char_u *)NULL, PV_NONE,
2014 {(char_u *)NULL, (char_u *)0L}
2015#endif
2016 SCTX_INIT},
2017 {"pythondll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
2018#if defined(DYNAMIC_PYTHON)
2019 (char_u *)&p_pydll, PV_NONE,
2020 {(char_u *)DYNAMIC_PYTHON_DLL, (char_u *)0L}
2021#else
2022 (char_u *)NULL, PV_NONE,
2023 {(char_u *)NULL, (char_u *)0L}
2024#endif
2025 SCTX_INIT},
2026 {"pythonhome", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
2027#if defined(FEAT_PYTHON)
2028 (char_u *)&p_pyhome, PV_NONE,
2029 {(char_u *)"", (char_u *)0L}
2030#else
2031 (char_u *)NULL, PV_NONE,
2032 {(char_u *)NULL, (char_u *)0L}
2033#endif
2034 SCTX_INIT},
2035 {"pyxversion", "pyx", P_NUM|P_VI_DEF|P_SECURE,
2036#if defined(FEAT_PYTHON) || defined(FEAT_PYTHON3)
2037 (char_u *)&p_pyx, PV_NONE,
2038#else
2039 (char_u *)NULL, PV_NONE,
2040#endif
2041 {(char_u *)DEFAULT_PYTHON_VER, (char_u *)0L}
2042 SCTX_INIT},
Yegappan Lakshmanan64095532021-12-06 11:03:55 +00002043 {"quickfixtextfunc", "qftf", P_STRING|P_ALLOCED|P_VI_DEF|P_VIM|P_SECURE|P_FUNC,
Bram Moolenaar858ba062020-05-31 23:11:59 +02002044#if defined(FEAT_QUICKFIX) && defined(FEAT_EVAL)
2045 (char_u *)&p_qftf, PV_NONE,
2046 {(char_u *)"", (char_u *)0L}
2047#else
2048 (char_u *)NULL, PV_NONE,
2049 {(char_u *)NULL, (char_u *)NULL}
2050#endif
2051 SCTX_INIT},
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002052 {"quoteescape", "qe", P_STRING|P_ALLOCED|P_VI_DEF,
2053#ifdef FEAT_TEXTOBJ
2054 (char_u *)&p_qe, PV_QE,
2055 {(char_u *)"\\", (char_u *)0L}
2056#else
2057 (char_u *)NULL, PV_NONE,
2058 {(char_u *)NULL, (char_u *)0L}
2059#endif
2060 SCTX_INIT},
2061 {"readonly", "ro", P_BOOL|P_VI_DEF|P_RSTAT|P_NOGLOB,
2062 (char_u *)&p_ro, PV_RO,
2063 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2064 {"redraw", NULL, P_BOOL|P_VI_DEF,
2065 (char_u *)NULL, PV_NONE,
2066 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2067 {"redrawtime", "rdt", P_NUM|P_VI_DEF,
2068#ifdef FEAT_RELTIME
2069 (char_u *)&p_rdt, PV_NONE,
2070#else
2071 (char_u *)NULL, PV_NONE,
2072#endif
2073 {(char_u *)2000L, (char_u *)0L} SCTX_INIT},
2074 {"regexpengine", "re", P_NUM|P_VI_DEF,
2075 (char_u *)&p_re, PV_NONE,
2076 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2077 {"relativenumber", "rnu", P_BOOL|P_VI_DEF|P_RWIN,
2078 (char_u *)VAR_WIN, PV_RNU,
2079 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2080 {"remap", NULL, P_BOOL|P_VI_DEF,
2081 (char_u *)&p_remap, PV_NONE,
2082 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
2083 {"renderoptions", "rop", P_STRING|P_ONECOMMA|P_RCLR|P_VI_DEF,
2084#ifdef FEAT_RENDER_OPTIONS
2085 (char_u *)&p_rop, PV_NONE,
2086 {(char_u *)"", (char_u *)0L}
2087#else
2088 (char_u *)NULL, PV_NONE,
2089 {(char_u *)NULL, (char_u *)0L}
2090#endif
2091 SCTX_INIT},
2092 {"report", NULL, P_NUM|P_VI_DEF,
2093 (char_u *)&p_report, PV_NONE,
2094 {(char_u *)2L, (char_u *)0L} SCTX_INIT},
2095 {"restorescreen", "rs", P_BOOL|P_VI_DEF,
2096#ifdef MSWIN
2097 (char_u *)&p_rs, PV_NONE,
2098#else
2099 (char_u *)NULL, PV_NONE,
2100#endif
2101 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
2102 {"revins", "ri", P_BOOL|P_VI_DEF|P_VIM,
2103#ifdef FEAT_RIGHTLEFT
2104 (char_u *)&p_ri, PV_NONE,
2105#else
2106 (char_u *)NULL, PV_NONE,
2107#endif
2108 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2109 {"rightleft", "rl", P_BOOL|P_VI_DEF|P_RWIN,
2110#ifdef FEAT_RIGHTLEFT
2111 (char_u *)VAR_WIN, PV_RL,
2112#else
2113 (char_u *)NULL, PV_NONE,
2114#endif
2115 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2116 {"rightleftcmd", "rlc", P_STRING|P_ALLOCED|P_VI_DEF|P_RWIN,
2117#ifdef FEAT_RIGHTLEFT
2118 (char_u *)VAR_WIN, PV_RLC,
2119 {(char_u *)"search", (char_u *)NULL}
2120#else
2121 (char_u *)NULL, PV_NONE,
2122 {(char_u *)NULL, (char_u *)0L}
2123#endif
2124 SCTX_INIT},
2125 {"rubydll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
2126#if defined(DYNAMIC_RUBY)
2127 (char_u *)&p_rubydll, PV_NONE,
2128 {(char_u *)DYNAMIC_RUBY_DLL, (char_u *)0L}
2129#else
2130 (char_u *)NULL, PV_NONE,
2131 {(char_u *)NULL, (char_u *)0L}
2132#endif
2133 SCTX_INIT},
2134 {"ruler", "ru", P_BOOL|P_VI_DEF|P_VIM|P_RSTAT,
2135#ifdef FEAT_CMDL_INFO
2136 (char_u *)&p_ru, PV_NONE,
2137#else
2138 (char_u *)NULL, PV_NONE,
2139#endif
2140 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2141 {"rulerformat", "ruf", P_STRING|P_VI_DEF|P_ALLOCED|P_RSTAT|P_MLE,
2142#ifdef FEAT_STL_OPT
2143 (char_u *)&p_ruf, PV_NONE,
2144#else
2145 (char_u *)NULL, PV_NONE,
2146#endif
2147 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2148 {"runtimepath", "rtp", P_STRING|P_VI_DEF|P_EXPAND|P_ONECOMMA|P_NODUP
2149 |P_SECURE,
2150 (char_u *)&p_rtp, PV_NONE,
2151 {(char_u *)DFLT_RUNTIMEPATH, (char_u *)0L}
2152 SCTX_INIT},
2153 {"scroll", "scr", P_NUM|P_NO_MKRC|P_VI_DEF,
2154 (char_u *)VAR_WIN, PV_SCROLL,
2155 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2156 {"scrollbind", "scb", P_BOOL|P_VI_DEF,
2157 (char_u *)VAR_WIN, PV_SCBIND,
2158 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
Bram Moolenaarae20f342019-11-05 21:09:23 +01002159 {"scrollfocus", "scf", P_BOOL|P_VI_DEF,
2160#if defined(MSWIN) && defined(FEAT_GUI)
2161 (char_u *)&p_scf, PV_NONE,
2162#else
2163 (char_u *)NULL, PV_NONE,
2164#endif
2165 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002166 {"scrolljump", "sj", P_NUM|P_VI_DEF|P_VIM,
2167 (char_u *)&p_sj, PV_NONE,
2168 {(char_u *)1L, (char_u *)0L} SCTX_INIT},
2169 {"scrolloff", "so", P_NUM|P_VI_DEF|P_VIM|P_RALL,
2170 (char_u *)&p_so, PV_SO,
2171 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2172 {"scrollopt", "sbo", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
2173 (char_u *)&p_sbo, PV_NONE,
2174 {(char_u *)"ver,jump", (char_u *)0L}
2175 SCTX_INIT},
2176 {"sections", "sect", P_STRING|P_VI_DEF,
2177 (char_u *)&p_sections, PV_NONE,
2178 {(char_u *)"SHNHH HUnhsh", (char_u *)0L}
2179 SCTX_INIT},
2180 {"secure", NULL, P_BOOL|P_VI_DEF|P_SECURE,
2181 (char_u *)&p_secure, PV_NONE,
2182 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2183 {"selection", "sel", P_STRING|P_VI_DEF,
2184 (char_u *)&p_sel, PV_NONE,
2185 {(char_u *)"inclusive", (char_u *)0L}
2186 SCTX_INIT},
2187 {"selectmode", "slm", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
2188 (char_u *)&p_slm, PV_NONE,
2189 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2190 {"sessionoptions", "ssop", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
2191#ifdef FEAT_SESSION
2192 (char_u *)&p_ssop, PV_NONE,
2193 {(char_u *)"blank,buffers,curdir,folds,help,options,tabpages,winsize,terminal",
2194 (char_u *)0L}
2195#else
2196 (char_u *)NULL, PV_NONE,
2197 {(char_u *)0L, (char_u *)0L}
2198#endif
2199 SCTX_INIT},
2200 {"shell", "sh", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
2201 (char_u *)&p_sh, PV_NONE,
2202 {
2203#ifdef VMS
2204 (char_u *)"-",
2205#else
2206# if defined(MSWIN)
2207 (char_u *)"", // set in set_init_1()
2208# else
2209 (char_u *)"sh",
2210# endif
2211#endif // VMS
2212 (char_u *)0L} SCTX_INIT},
2213 {"shellcmdflag","shcf", P_STRING|P_VI_DEF|P_SECURE,
2214 (char_u *)&p_shcf, PV_NONE,
2215 {
2216#if defined(MSWIN)
2217 (char_u *)"/c",
2218#else
2219 (char_u *)"-c",
2220#endif
2221 (char_u *)0L} SCTX_INIT},
2222 {"shellpipe", "sp", P_STRING|P_VI_DEF|P_SECURE,
2223#ifdef FEAT_QUICKFIX
2224 (char_u *)&p_sp, PV_NONE,
2225 {
2226#if defined(UNIX)
2227 (char_u *)"| tee",
2228#else
2229 (char_u *)">",
2230#endif
2231 (char_u *)0L}
2232#else
2233 (char_u *)NULL, PV_NONE,
2234 {(char_u *)0L, (char_u *)0L}
2235#endif
2236 SCTX_INIT},
2237 {"shellquote", "shq", P_STRING|P_VI_DEF|P_SECURE,
2238 (char_u *)&p_shq, PV_NONE,
2239 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2240 {"shellredir", "srr", P_STRING|P_VI_DEF|P_SECURE,
2241 (char_u *)&p_srr, PV_NONE,
2242 {(char_u *)">", (char_u *)0L} SCTX_INIT},
2243 {"shellslash", "ssl", P_BOOL|P_VI_DEF,
2244#ifdef BACKSLASH_IN_FILENAME
2245 (char_u *)&p_ssl, PV_NONE,
2246#else
2247 (char_u *)NULL, PV_NONE,
2248#endif
2249 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2250 {"shelltemp", "stmp", P_BOOL,
2251 (char_u *)&p_stmp, PV_NONE,
2252 {(char_u *)FALSE, (char_u *)TRUE} SCTX_INIT},
2253 {"shelltype", "st", P_NUM|P_VI_DEF,
2254#ifdef AMIGA
2255 (char_u *)&p_st, PV_NONE,
2256#else
2257 (char_u *)NULL, PV_NONE,
2258#endif
2259 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2260 {"shellxquote", "sxq", P_STRING|P_VI_DEF|P_SECURE,
2261 (char_u *)&p_sxq, PV_NONE,
2262 {
2263#if defined(UNIX) && defined(USE_SYSTEM)
2264 (char_u *)"\"",
2265#else
2266 (char_u *)"",
2267#endif
2268 (char_u *)0L} SCTX_INIT},
2269 {"shellxescape", "sxe", P_STRING|P_VI_DEF|P_SECURE,
2270 (char_u *)&p_sxe, PV_NONE,
2271 {
2272#if defined(MSWIN)
2273 (char_u *)"\"&|<>()@^",
2274#else
2275 (char_u *)"",
2276#endif
2277 (char_u *)0L} SCTX_INIT},
2278 {"shiftround", "sr", P_BOOL|P_VI_DEF|P_VIM,
2279 (char_u *)&p_sr, PV_NONE,
2280 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2281 {"shiftwidth", "sw", P_NUM|P_VI_DEF,
2282 (char_u *)&p_sw, PV_SW,
2283 {(char_u *)8L, (char_u *)0L} SCTX_INIT},
2284 {"shortmess", "shm", P_STRING|P_VIM|P_FLAGLIST,
2285 (char_u *)&p_shm, PV_NONE,
2286 {(char_u *)"S", (char_u *)"filnxtToOS"}
2287 SCTX_INIT},
2288 {"shortname", "sn", P_BOOL|P_VI_DEF,
2289 (char_u *)&p_sn, PV_SN,
2290 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2291 {"showbreak", "sbr", P_STRING|P_VI_DEF|P_RALL,
2292#ifdef FEAT_LINEBREAK
Bram Moolenaaree857022019-11-09 23:26:40 +01002293 (char_u *)&p_sbr, PV_SBR,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002294#else
2295 (char_u *)NULL, PV_NONE,
2296#endif
2297 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2298 {"showcmd", "sc", P_BOOL|P_VIM,
2299#ifdef FEAT_CMDL_INFO
2300 (char_u *)&p_sc, PV_NONE,
2301#else
2302 (char_u *)NULL, PV_NONE,
2303#endif
2304 {(char_u *)FALSE,
2305#ifdef UNIX
2306 (char_u *)FALSE
2307#else
2308 (char_u *)TRUE
2309#endif
2310 } SCTX_INIT},
2311 {"showfulltag", "sft", P_BOOL|P_VI_DEF,
2312 (char_u *)&p_sft, PV_NONE,
2313 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2314 {"showmatch", "sm", P_BOOL|P_VI_DEF,
2315 (char_u *)&p_sm, PV_NONE,
2316 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2317 {"showmode", "smd", P_BOOL|P_VIM,
2318 (char_u *)&p_smd, PV_NONE,
2319 {(char_u *)FALSE, (char_u *)TRUE} SCTX_INIT},
2320 {"showtabline", "stal", P_NUM|P_VI_DEF|P_RALL,
2321 (char_u *)&p_stal, PV_NONE,
2322 {(char_u *)1L, (char_u *)0L} SCTX_INIT},
2323 {"sidescroll", "ss", P_NUM|P_VI_DEF,
2324 (char_u *)&p_ss, PV_NONE,
2325 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2326 {"sidescrolloff", "siso", P_NUM|P_VI_DEF|P_VIM|P_RBUF,
2327 (char_u *)&p_siso, PV_SISO,
2328 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2329 {"signcolumn", "scl", P_STRING|P_ALLOCED|P_VI_DEF|P_RCLR,
2330#ifdef FEAT_SIGNS
2331 (char_u *)VAR_WIN, PV_SCL,
2332 {(char_u *)"auto", (char_u *)0L}
2333#else
2334 (char_u *)NULL, PV_NONE,
2335 {(char_u *)NULL, (char_u *)0L}
2336#endif
2337 SCTX_INIT},
2338 {"slowopen", "slow", P_BOOL|P_VI_DEF,
2339 (char_u *)NULL, PV_NONE,
2340 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2341 {"smartcase", "scs", P_BOOL|P_VI_DEF|P_VIM,
2342 (char_u *)&p_scs, PV_NONE,
2343 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2344 {"smartindent", "si", P_BOOL|P_VI_DEF|P_VIM,
2345#ifdef FEAT_SMARTINDENT
2346 (char_u *)&p_si, PV_SI,
2347#else
2348 (char_u *)NULL, PV_NONE,
2349#endif
2350 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2351 {"smarttab", "sta", P_BOOL|P_VI_DEF|P_VIM,
2352 (char_u *)&p_sta, PV_NONE,
2353 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2354 {"softtabstop", "sts", P_NUM|P_VI_DEF|P_VIM,
2355 (char_u *)&p_sts, PV_STS,
2356 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2357 {"sourceany", NULL, P_BOOL|P_VI_DEF,
2358 (char_u *)NULL, PV_NONE,
2359 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2360 {"spell", NULL, P_BOOL|P_VI_DEF|P_RWIN,
2361#ifdef FEAT_SPELL
2362 (char_u *)VAR_WIN, PV_SPELL,
2363#else
2364 (char_u *)NULL, PV_NONE,
2365#endif
2366 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2367 {"spellcapcheck", "spc", P_STRING|P_ALLOCED|P_VI_DEF|P_RBUF,
2368#ifdef FEAT_SPELL
2369 (char_u *)&p_spc, PV_SPC,
2370 {(char_u *)"[.?!]\\_[\\])'\" ]\\+", (char_u *)0L}
2371#else
2372 (char_u *)NULL, PV_NONE,
2373 {(char_u *)0L, (char_u *)0L}
2374#endif
2375 SCTX_INIT},
2376 {"spellfile", "spf", P_STRING|P_EXPAND|P_ALLOCED|P_VI_DEF|P_SECURE
2377 |P_ONECOMMA,
2378#ifdef FEAT_SPELL
2379 (char_u *)&p_spf, PV_SPF,
2380 {(char_u *)"", (char_u *)0L}
2381#else
2382 (char_u *)NULL, PV_NONE,
2383 {(char_u *)0L, (char_u *)0L}
2384#endif
2385 SCTX_INIT},
2386 {"spelllang", "spl", P_STRING|P_ALLOCED|P_VI_DEF|P_ONECOMMA
2387 |P_RBUF|P_EXPAND,
2388#ifdef FEAT_SPELL
2389 (char_u *)&p_spl, PV_SPL,
2390 {(char_u *)"en", (char_u *)0L}
2391#else
2392 (char_u *)NULL, PV_NONE,
2393 {(char_u *)0L, (char_u *)0L}
2394#endif
2395 SCTX_INIT},
Bram Moolenaar362b44b2020-06-10 21:47:00 +02002396 {"spelloptions", "spo", P_STRING|P_ALLOCED|P_VI_DEF
2397 |P_ONECOMMA|P_NODUP|P_RBUF,
2398#ifdef FEAT_SPELL
2399 (char_u *)&p_spo, PV_SPO,
2400 {(char_u *)"", (char_u *)0L}
2401#else
2402 (char_u *)NULL, PV_NONE,
2403 {(char_u *)0L, (char_u *)0L}
2404#endif
2405 SCTX_INIT},
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002406 {"spellsuggest", "sps", P_STRING|P_VI_DEF|P_EXPAND|P_SECURE|P_ONECOMMA,
2407#ifdef FEAT_SPELL
2408 (char_u *)&p_sps, PV_NONE,
2409 {(char_u *)"best", (char_u *)0L}
2410#else
2411 (char_u *)NULL, PV_NONE,
2412 {(char_u *)0L, (char_u *)0L}
2413#endif
2414 SCTX_INIT},
2415 {"splitbelow", "sb", P_BOOL|P_VI_DEF,
2416 (char_u *)&p_sb, PV_NONE,
2417 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2418 {"splitright", "spr", P_BOOL|P_VI_DEF,
2419 (char_u *)&p_spr, PV_NONE,
2420 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2421 {"startofline", "sol", P_BOOL|P_VI_DEF|P_VIM,
2422 (char_u *)&p_sol, PV_NONE,
2423 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
2424 {"statusline" ,"stl", P_STRING|P_VI_DEF|P_ALLOCED|P_RSTAT|P_MLE,
2425#ifdef FEAT_STL_OPT
2426 (char_u *)&p_stl, PV_STL,
2427#else
2428 (char_u *)NULL, PV_NONE,
2429#endif
2430 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2431 {"suffixes", "su", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
2432 (char_u *)&p_su, PV_NONE,
2433 {(char_u *)".bak,~,.o,.h,.info,.swp,.obj",
2434 (char_u *)0L} SCTX_INIT},
2435 {"suffixesadd", "sua", P_STRING|P_VI_DEF|P_ALLOCED|P_ONECOMMA|P_NODUP,
2436#ifdef FEAT_SEARCHPATH
2437 (char_u *)&p_sua, PV_SUA,
2438 {(char_u *)"", (char_u *)0L}
2439#else
2440 (char_u *)NULL, PV_NONE,
2441 {(char_u *)0L, (char_u *)0L}
2442#endif
2443 SCTX_INIT},
2444 {"swapfile", "swf", P_BOOL|P_VI_DEF|P_RSTAT,
2445 (char_u *)&p_swf, PV_SWF,
2446 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
2447 {"swapsync", "sws", P_STRING|P_VI_DEF,
2448 (char_u *)&p_sws, PV_NONE,
2449 {(char_u *)"fsync", (char_u *)0L} SCTX_INIT},
2450 {"switchbuf", "swb", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
2451 (char_u *)&p_swb, PV_NONE,
2452 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2453 {"synmaxcol", "smc", P_NUM|P_VI_DEF|P_RBUF,
2454#ifdef FEAT_SYN_HL
2455 (char_u *)&p_smc, PV_SMC,
2456 {(char_u *)3000L, (char_u *)0L}
2457#else
2458 (char_u *)NULL, PV_NONE,
2459 {(char_u *)0L, (char_u *)0L}
2460#endif
2461 SCTX_INIT},
2462 {"syntax", "syn", P_STRING|P_ALLOCED|P_VI_DEF|P_NOGLOB|P_NFNAME,
2463#ifdef FEAT_SYN_HL
2464 (char_u *)&p_syn, PV_SYN,
2465 {(char_u *)"", (char_u *)0L}
2466#else
2467 (char_u *)NULL, PV_NONE,
2468 {(char_u *)0L, (char_u *)0L}
2469#endif
2470 SCTX_INIT},
2471 {"tabline", "tal", P_STRING|P_VI_DEF|P_RALL|P_MLE,
2472#ifdef FEAT_STL_OPT
2473 (char_u *)&p_tal, PV_NONE,
2474#else
2475 (char_u *)NULL, PV_NONE,
2476#endif
2477 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2478 {"tabpagemax", "tpm", P_NUM|P_VI_DEF,
2479 (char_u *)&p_tpm, PV_NONE,
2480 {(char_u *)10L, (char_u *)0L} SCTX_INIT},
2481 {"tabstop", "ts", P_NUM|P_VI_DEF|P_RBUF,
2482 (char_u *)&p_ts, PV_TS,
2483 {(char_u *)8L, (char_u *)0L} SCTX_INIT},
2484 {"tagbsearch", "tbs", P_BOOL|P_VI_DEF,
2485 (char_u *)&p_tbs, PV_NONE,
2486#ifdef VMS // binary searching doesn't appear to work on VMS
2487 {(char_u *)0L, (char_u *)0L}
2488#else
2489 {(char_u *)TRUE, (char_u *)0L}
2490#endif
2491 SCTX_INIT},
2492 {"tagcase", "tc", P_STRING|P_VIM,
2493 (char_u *)&p_tc, PV_TC,
2494 {(char_u *)"followic", (char_u *)"followic"} SCTX_INIT},
Yegappan Lakshmanan64095532021-12-06 11:03:55 +00002495 {"tagfunc", "tfu", P_STRING|P_ALLOCED|P_VI_DEF|P_SECURE|P_FUNC,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002496#ifdef FEAT_EVAL
2497 (char_u *)&p_tfu, PV_TFU,
2498 {(char_u *)"", (char_u *)0L}
2499#else
2500 (char_u *)NULL, PV_NONE,
2501 {(char_u *)0L, (char_u *)0L}
2502#endif
2503 SCTX_INIT},
2504 {"taglength", "tl", P_NUM|P_VI_DEF,
2505 (char_u *)&p_tl, PV_NONE,
2506 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2507 {"tagrelative", "tr", P_BOOL|P_VIM,
2508 (char_u *)&p_tr, PV_NONE,
2509 {(char_u *)FALSE, (char_u *)TRUE} SCTX_INIT},
2510 {"tags", "tag", P_STRING|P_EXPAND|P_VI_DEF|P_ONECOMMA|P_NODUP,
2511 (char_u *)&p_tags, PV_TAGS,
2512 {
2513#if defined(FEAT_EMACS_TAGS) && !defined(CASE_INSENSITIVE_FILENAME)
2514 (char_u *)"./tags,./TAGS,tags,TAGS",
2515#else
2516 (char_u *)"./tags,tags",
2517#endif
2518 (char_u *)0L} SCTX_INIT},
2519 {"tagstack", "tgst", P_BOOL|P_VI_DEF,
2520 (char_u *)&p_tgst, PV_NONE,
2521 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
2522 {"tcldll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
2523#if defined(DYNAMIC_TCL)
2524 (char_u *)&p_tcldll, PV_NONE,
2525 {(char_u *)DYNAMIC_TCL_DLL, (char_u *)0L}
2526#else
2527 (char_u *)NULL, PV_NONE,
2528 {(char_u *)0L, (char_u *)0L}
2529#endif
2530 SCTX_INIT},
2531 {"term", NULL, P_STRING|P_EXPAND|P_NODEFAULT|P_NO_MKRC|P_VI_DEF|P_RALL,
2532 (char_u *)&T_NAME, PV_NONE,
2533 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2534 {"termbidi", "tbidi", P_BOOL|P_VI_DEF,
2535#ifdef FEAT_ARABIC
2536 (char_u *)&p_tbidi, PV_NONE,
2537#else
2538 (char_u *)NULL, PV_NONE,
2539#endif
2540 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2541 {"termencoding", "tenc", P_STRING|P_VI_DEF|P_RCLR,
2542 (char_u *)&p_tenc, PV_NONE,
2543 {(char_u *)"", (char_u *)0L}
2544 SCTX_INIT},
2545 {"termguicolors", "tgc", P_BOOL|P_VI_DEF|P_VIM|P_RCLR,
2546#ifdef FEAT_TERMGUICOLORS
2547 (char_u *)&p_tgc, PV_NONE,
2548 {(char_u *)FALSE, (char_u *)FALSE}
2549#else
2550 (char_u*)NULL, PV_NONE,
2551 {(char_u *)FALSE, (char_u *)FALSE}
2552#endif
2553 SCTX_INIT},
2554 {"termwinkey", "twk", P_STRING|P_ALLOCED|P_RWIN|P_VI_DEF,
2555#ifdef FEAT_TERMINAL
2556 (char_u *)VAR_WIN, PV_TWK,
2557 {(char_u *)"", (char_u *)NULL}
2558#else
2559 (char_u *)NULL, PV_NONE,
2560 {(char_u *)NULL, (char_u *)0L}
2561#endif
2562 SCTX_INIT},
2563 {"termwinscroll", "twsl", P_NUM|P_VI_DEF|P_VIM|P_RBUF,
2564#ifdef FEAT_TERMINAL
2565 (char_u *)&p_twsl, PV_TWSL,
2566 {(char_u *)10000L, (char_u *)10000L}
2567#else
2568 (char_u *)NULL, PV_NONE,
2569 {(char_u *)NULL, (char_u *)0L}
2570#endif
2571 SCTX_INIT},
2572 {"termwinsize", "tws", P_STRING|P_ALLOCED|P_RWIN|P_VI_DEF,
2573#ifdef FEAT_TERMINAL
2574 (char_u *)VAR_WIN, PV_TWS,
2575 {(char_u *)"", (char_u *)NULL}
2576#else
2577 (char_u *)NULL, PV_NONE,
2578 {(char_u *)NULL, (char_u *)0L}
2579#endif
2580 SCTX_INIT},
2581 {"termwintype", "twt", P_STRING|P_ALLOCED|P_VI_DEF,
2582#if defined(MSWIN) && defined(FEAT_TERMINAL)
2583 (char_u *)&p_twt, PV_NONE,
2584 {(char_u *)"", (char_u *)NULL}
2585#else
2586 (char_u *)NULL, PV_NONE,
2587 {(char_u *)NULL, (char_u *)0L}
2588#endif
2589 SCTX_INIT},
2590 {"terse", NULL, P_BOOL|P_VI_DEF,
2591 (char_u *)&p_terse, PV_NONE,
2592 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2593 {"textauto", "ta", P_BOOL|P_VIM,
2594 (char_u *)&p_ta, PV_NONE,
2595 {(char_u *)DFLT_TEXTAUTO, (char_u *)TRUE}
2596 SCTX_INIT},
2597 {"textmode", "tx", P_BOOL|P_VI_DEF|P_NO_MKRC,
2598 (char_u *)&p_tx, PV_TX,
2599 {
2600#ifdef USE_CRNL
2601 (char_u *)TRUE,
2602#else
2603 (char_u *)FALSE,
2604#endif
2605 (char_u *)0L} SCTX_INIT},
2606 {"textwidth", "tw", P_NUM|P_VI_DEF|P_VIM|P_RBUF,
2607 (char_u *)&p_tw, PV_TW,
2608 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2609 {"thesaurus", "tsr", P_STRING|P_EXPAND|P_VI_DEF|P_ONECOMMA|P_NODUP|P_NDNAME,
2610 (char_u *)&p_tsr, PV_TSR,
2611 {(char_u *)"", (char_u *)0L} SCTX_INIT},
Yegappan Lakshmanan64095532021-12-06 11:03:55 +00002612 {"thesaurusfunc", "tsrfu", P_STRING|P_ALLOCED|P_VI_DEF|P_SECURE|P_FUNC,
Yegappan Lakshmanan160e9942021-10-16 15:41:29 +01002613#ifdef FEAT_COMPL_FUNC
Bram Moolenaarf4d8b762021-10-17 14:13:09 +01002614 (char_u *)&p_tsrfu, PV_TSRFU,
Yegappan Lakshmanan160e9942021-10-16 15:41:29 +01002615 {(char_u *)"", (char_u *)0L}
2616#else
2617 (char_u *)NULL, PV_NONE,
2618 {(char_u *)0L, (char_u *)0L}
2619#endif
2620 SCTX_INIT},
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002621 {"tildeop", "top", P_BOOL|P_VI_DEF|P_VIM,
2622 (char_u *)&p_to, PV_NONE,
2623 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2624 {"timeout", "to", P_BOOL|P_VI_DEF,
2625 (char_u *)&p_timeout, PV_NONE,
2626 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
2627 {"timeoutlen", "tm", P_NUM|P_VI_DEF,
2628 (char_u *)&p_tm, PV_NONE,
2629 {(char_u *)1000L, (char_u *)0L} SCTX_INIT},
2630 {"title", NULL, P_BOOL|P_VI_DEF,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002631 (char_u *)&p_title, PV_NONE,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002632 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2633 {"titlelen", NULL, P_NUM|P_VI_DEF,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002634 (char_u *)&p_titlelen, PV_NONE,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002635 {(char_u *)85L, (char_u *)0L} SCTX_INIT},
2636 {"titleold", NULL, P_STRING|P_VI_DEF|P_GETTEXT|P_SECURE|P_NO_MKRC,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002637 (char_u *)&p_titleold, PV_NONE,
2638 {(char_u *)N_("Thanks for flying Vim"),
2639 (char_u *)0L}
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002640 SCTX_INIT},
2641 {"titlestring", NULL, P_STRING|P_VI_DEF|P_MLE,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002642 (char_u *)&p_titlestring, PV_NONE,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002643 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2644 {"toolbar", "tb", P_STRING|P_ONECOMMA|P_VI_DEF|P_NODUP,
2645#if defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_MSWIN)
2646 (char_u *)&p_toolbar, PV_NONE,
2647 {(char_u *)"icons,tooltips", (char_u *)0L}
2648#else
2649 (char_u *)NULL, PV_NONE,
2650 {(char_u *)0L, (char_u *)0L}
2651#endif
2652 SCTX_INIT},
2653 {"toolbariconsize", "tbis", P_STRING|P_VI_DEF,
2654#if defined(FEAT_TOOLBAR) && defined(FEAT_GUI_GTK)
2655 (char_u *)&p_tbis, PV_NONE,
2656 {(char_u *)"small", (char_u *)0L}
2657#else
2658 (char_u *)NULL, PV_NONE,
2659 {(char_u *)0L, (char_u *)0L}
2660#endif
2661 SCTX_INIT},
2662 {"ttimeout", NULL, P_BOOL|P_VI_DEF|P_VIM,
2663 (char_u *)&p_ttimeout, PV_NONE,
2664 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2665 {"ttimeoutlen", "ttm", P_NUM|P_VI_DEF,
2666 (char_u *)&p_ttm, PV_NONE,
2667 {(char_u *)-1L, (char_u *)0L} SCTX_INIT},
2668 {"ttybuiltin", "tbi", P_BOOL|P_VI_DEF,
2669 (char_u *)&p_tbi, PV_NONE,
2670 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
2671 {"ttyfast", "tf", P_BOOL|P_NO_MKRC|P_VI_DEF,
2672 (char_u *)&p_tf, PV_NONE,
2673 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2674 {"ttymouse", "ttym", P_STRING|P_NODEFAULT|P_NO_MKRC|P_VI_DEF,
Bram Moolenaara1cb1d12019-10-17 23:00:07 +02002675#if defined(UNIX) || defined(VMS)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002676 (char_u *)&p_ttym, PV_NONE,
2677#else
2678 (char_u *)NULL, PV_NONE,
2679#endif
2680 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2681 {"ttyscroll", "tsl", P_NUM|P_VI_DEF,
2682 (char_u *)&p_ttyscroll, PV_NONE,
2683 {(char_u *)999L, (char_u *)0L} SCTX_INIT},
2684 {"ttytype", "tty", P_STRING|P_EXPAND|P_NODEFAULT|P_NO_MKRC|P_VI_DEF|P_RALL,
2685 (char_u *)&T_NAME, PV_NONE,
2686 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2687 {"undodir", "udir", P_STRING|P_EXPAND|P_ONECOMMA|P_NODUP|P_SECURE
2688 |P_VI_DEF,
2689#ifdef FEAT_PERSISTENT_UNDO
2690 (char_u *)&p_udir, PV_NONE,
2691 {(char_u *)".", (char_u *)0L}
2692#else
2693 (char_u *)NULL, PV_NONE,
2694 {(char_u *)0L, (char_u *)0L}
2695#endif
2696 SCTX_INIT},
2697 {"undofile", "udf", P_BOOL|P_VI_DEF|P_VIM,
2698#ifdef FEAT_PERSISTENT_UNDO
2699 (char_u *)&p_udf, PV_UDF,
2700#else
2701 (char_u *)NULL, PV_NONE,
2702#endif
2703 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2704 {"undolevels", "ul", P_NUM|P_VI_DEF,
2705 (char_u *)&p_ul, PV_UL,
2706 {
2707#if defined(UNIX) || defined(MSWIN) || defined(VMS)
2708 (char_u *)1000L,
2709#else
2710 (char_u *)100L,
2711#endif
2712 (char_u *)0L} SCTX_INIT},
2713 {"undoreload", "ur", P_NUM|P_VI_DEF,
2714 (char_u *)&p_ur, PV_NONE,
2715 { (char_u *)10000L, (char_u *)0L} SCTX_INIT},
2716 {"updatecount", "uc", P_NUM|P_VI_DEF,
2717 (char_u *)&p_uc, PV_NONE,
2718 {(char_u *)200L, (char_u *)0L} SCTX_INIT},
2719 {"updatetime", "ut", P_NUM|P_VI_DEF,
2720 (char_u *)&p_ut, PV_NONE,
2721 {(char_u *)4000L, (char_u *)0L} SCTX_INIT},
2722 {"varsofttabstop", "vsts", P_STRING|P_VI_DEF|P_VIM|P_COMMA,
2723#ifdef FEAT_VARTABS
2724 (char_u *)&p_vsts, PV_VSTS,
2725 {(char_u *)"", (char_u *)0L}
2726#else
2727 (char_u *)NULL, PV_NONE,
2728 {(char_u *)"", (char_u *)NULL}
2729#endif
2730 SCTX_INIT},
2731 {"vartabstop", "vts", P_STRING|P_VI_DEF|P_VIM|P_RBUF|P_COMMA,
2732#ifdef FEAT_VARTABS
2733 (char_u *)&p_vts, PV_VTS,
2734 {(char_u *)"", (char_u *)0L}
2735#else
2736 (char_u *)NULL, PV_NONE,
2737 {(char_u *)"", (char_u *)NULL}
2738#endif
2739 SCTX_INIT},
2740 {"verbose", "vbs", P_NUM|P_VI_DEF,
2741 (char_u *)&p_verbose, PV_NONE,
2742 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2743 {"verbosefile", "vfile", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
2744 (char_u *)&p_vfile, PV_NONE,
2745 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2746 {"viewdir", "vdir", P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
2747#ifdef FEAT_SESSION
2748 (char_u *)&p_vdir, PV_NONE,
2749 {(char_u *)DFLT_VDIR, (char_u *)0L}
2750#else
2751 (char_u *)NULL, PV_NONE,
2752 {(char_u *)0L, (char_u *)0L}
2753#endif
2754 SCTX_INIT},
2755 {"viewoptions", "vop", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
2756#ifdef FEAT_SESSION
2757 (char_u *)&p_vop, PV_NONE,
2758 {(char_u *)"folds,options,cursor,curdir",
2759 (char_u *)0L}
2760#else
2761 (char_u *)NULL, PV_NONE,
2762 {(char_u *)0L, (char_u *)0L}
2763#endif
2764 SCTX_INIT},
2765 {"viminfo", "vi", P_STRING|P_ONECOMMA|P_NODUP|P_SECURE,
2766#ifdef FEAT_VIMINFO
2767 (char_u *)&p_viminfo, PV_NONE,
2768#if defined(MSWIN)
2769 {(char_u *)"", (char_u *)"'100,<50,s10,h,rA:,rB:"}
ichizok02560422022-04-05 14:18:44 +01002770#elif defined(AMIGA)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002771 {(char_u *)"",
2772 (char_u *)"'100,<50,s10,h,rdf0:,rdf1:,rdf2:"}
ichizok02560422022-04-05 14:18:44 +01002773#else
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002774 {(char_u *)"", (char_u *)"'100,<50,s10,h"}
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002775#endif
2776#else
2777 (char_u *)NULL, PV_NONE,
2778 {(char_u *)0L, (char_u *)0L}
2779#endif
2780 SCTX_INIT},
2781 {"viminfofile", "vif", P_STRING|P_EXPAND|P_ONECOMMA|P_NODUP
2782 |P_SECURE|P_VI_DEF,
2783#ifdef FEAT_VIMINFO
2784 (char_u *)&p_viminfofile, PV_NONE,
2785 {(char_u *)"", (char_u *)0L}
2786#else
2787 (char_u *)NULL, PV_NONE,
2788 {(char_u *)0L, (char_u *)0L}
2789#endif
2790 SCTX_INIT},
2791 {"virtualedit", "ve", P_STRING|P_ONECOMMA|P_NODUP|P_VI_DEF
2792 |P_VIM|P_CURSWANT,
Gary Johnson53ba05b2021-07-26 22:19:10 +02002793 (char_u *)&p_ve, PV_VE,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002794 {(char_u *)"", (char_u *)""}
2795 SCTX_INIT},
2796 {"visualbell", "vb", P_BOOL|P_VI_DEF,
2797 (char_u *)&p_vb, PV_NONE,
2798 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2799 {"w300", NULL, P_NUM|P_VI_DEF,
2800 (char_u *)NULL, PV_NONE,
2801 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2802 {"w1200", NULL, P_NUM|P_VI_DEF,
2803 (char_u *)NULL, PV_NONE,
2804 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2805 {"w9600", NULL, P_NUM|P_VI_DEF,
2806 (char_u *)NULL, PV_NONE,
2807 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2808 {"warn", NULL, P_BOOL|P_VI_DEF,
2809 (char_u *)&p_warn, PV_NONE,
2810 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
2811 {"weirdinvert", "wiv", P_BOOL|P_VI_DEF|P_RCLR,
2812 (char_u *)&p_wiv, PV_NONE,
2813 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2814 {"whichwrap", "ww", P_STRING|P_VIM|P_ONECOMMA|P_FLAGLIST,
2815 (char_u *)&p_ww, PV_NONE,
2816 {(char_u *)"", (char_u *)"b,s"} SCTX_INIT},
2817 {"wildchar", "wc", P_NUM|P_VIM,
2818 (char_u *)&p_wc, PV_NONE,
2819 {(char_u *)(long)Ctrl_E, (char_u *)(long)TAB}
2820 SCTX_INIT},
2821 {"wildcharm", "wcm", P_NUM|P_VI_DEF,
2822 (char_u *)&p_wcm, PV_NONE,
2823 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2824 {"wildignore", "wig", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
2825#ifdef FEAT_WILDIGN
2826 (char_u *)&p_wig, PV_NONE,
2827#else
2828 (char_u *)NULL, PV_NONE,
2829#endif
2830 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2831 {"wildignorecase", "wic", P_BOOL|P_VI_DEF,
2832 (char_u *)&p_wic, PV_NONE,
2833 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2834 {"wildmenu", "wmnu", P_BOOL|P_VI_DEF,
2835#ifdef FEAT_WILDMENU
2836 (char_u *)&p_wmnu, PV_NONE,
2837#else
2838 (char_u *)NULL, PV_NONE,
2839#endif
2840 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2841 {"wildmode", "wim", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
2842 (char_u *)&p_wim, PV_NONE,
2843 {(char_u *)"full", (char_u *)0L} SCTX_INIT},
Bram Moolenaar2e61e2d2020-05-22 14:10:36 +02002844 {"wildoptions", "wop", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP,
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002845 (char_u *)&p_wop, PV_NONE,
2846 {(char_u *)"", (char_u *)0L}
2847 SCTX_INIT},
2848 {"winaltkeys", "wak", P_STRING|P_VI_DEF,
2849#ifdef FEAT_WAK
2850 (char_u *)&p_wak, PV_NONE,
2851 {(char_u *)"menu", (char_u *)0L}
2852#else
2853 (char_u *)NULL, PV_NONE,
2854 {(char_u *)NULL, (char_u *)0L}
2855#endif
2856 SCTX_INIT},
2857 {"wincolor", "wcr", P_STRING|P_ALLOCED|P_VI_DEF|P_RWIN,
2858 (char_u *)VAR_WIN, PV_WCR,
2859 {(char_u *)"", (char_u *)NULL}
2860 SCTX_INIT},
2861 {"window", "wi", P_NUM|P_VI_DEF,
2862 (char_u *)&p_window, PV_NONE,
2863 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2864 {"winheight", "wh", P_NUM|P_VI_DEF,
2865 (char_u *)&p_wh, PV_NONE,
2866 {(char_u *)1L, (char_u *)0L} SCTX_INIT},
2867 {"winfixheight", "wfh", P_BOOL|P_VI_DEF|P_RSTAT,
2868 (char_u *)VAR_WIN, PV_WFH,
2869 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2870 {"winfixwidth", "wfw", P_BOOL|P_VI_DEF|P_RSTAT,
2871 (char_u *)VAR_WIN, PV_WFW,
2872 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2873 {"winminheight", "wmh", P_NUM|P_VI_DEF,
2874 (char_u *)&p_wmh, PV_NONE,
2875 {(char_u *)1L, (char_u *)0L} SCTX_INIT},
2876 {"winminwidth", "wmw", P_NUM|P_VI_DEF,
2877 (char_u *)&p_wmw, PV_NONE,
2878 {(char_u *)1L, (char_u *)0L} SCTX_INIT},
2879 {"winptydll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE,
2880#if defined(MSWIN) && defined(FEAT_TERMINAL)
2881 (char_u *)&p_winptydll, PV_NONE, {
2882# ifdef _WIN64
2883 (char_u *)"winpty64.dll",
2884# else
2885 (char_u *)"winpty32.dll",
2886# endif
2887 (char_u *)0L}
2888#else
2889 (char_u *)NULL, PV_NONE,
2890 {(char_u *)0L, (char_u *)0L}
2891#endif
2892 SCTX_INIT},
2893 {"winwidth", "wiw", P_NUM|P_VI_DEF,
2894 (char_u *)&p_wiw, PV_NONE,
2895 {(char_u *)20L, (char_u *)0L} SCTX_INIT},
2896 {"wrap", NULL, P_BOOL|P_VI_DEF|P_RWIN,
2897 (char_u *)VAR_WIN, PV_WRAP,
2898 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
2899 {"wrapmargin", "wm", P_NUM|P_VI_DEF,
2900 (char_u *)&p_wm, PV_WM,
2901 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
2902 {"wrapscan", "ws", P_BOOL|P_VI_DEF,
2903 (char_u *)&p_ws, PV_NONE,
2904 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
2905 {"write", NULL, P_BOOL|P_VI_DEF,
2906 (char_u *)&p_write, PV_NONE,
2907 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
2908 {"writeany", "wa", P_BOOL|P_VI_DEF,
2909 (char_u *)&p_wa, PV_NONE,
2910 {(char_u *)FALSE, (char_u *)0L} SCTX_INIT},
2911 {"writebackup", "wb", P_BOOL|P_VI_DEF|P_VIM,
2912 (char_u *)&p_wb, PV_NONE,
2913 {
2914#ifdef FEAT_WRITEBACKUP
2915 (char_u *)TRUE,
2916#else
2917 (char_u *)FALSE,
2918#endif
2919 (char_u *)0L} SCTX_INIT},
2920 {"writedelay", "wd", P_NUM|P_VI_DEF,
2921 (char_u *)&p_wd, PV_NONE,
2922 {(char_u *)0L, (char_u *)0L} SCTX_INIT},
Bram Moolenaar6f79e612021-12-21 09:12:23 +00002923 {"xtermcodes", NULL, P_BOOL|P_VI_DEF,
2924 (char_u *)&p_xtermcodes, PV_NONE,
2925 {(char_u *)TRUE, (char_u *)0L} SCTX_INIT},
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002926
2927// terminal output codes
2928#define p_term(sss, vvv) {sss, NULL, P_STRING|P_VI_DEF|P_RALL|P_SECURE, \
2929 (char_u *)&vvv, PV_NONE, \
2930 {(char_u *)"", (char_u *)0L} SCTX_INIT},
2931
2932 p_term("t_AB", T_CAB)
2933 p_term("t_AF", T_CAF)
Bram Moolenaare023e882020-05-31 16:42:30 +02002934 p_term("t_AU", T_CAU)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002935 p_term("t_AL", T_CAL)
2936 p_term("t_al", T_AL)
2937 p_term("t_bc", T_BC)
2938 p_term("t_BE", T_BE)
2939 p_term("t_BD", T_BD)
2940 p_term("t_cd", T_CD)
2941 p_term("t_ce", T_CE)
2942 p_term("t_cl", T_CL)
2943 p_term("t_cm", T_CM)
2944 p_term("t_Ce", T_UCE)
2945 p_term("t_Co", T_CCO)
2946 p_term("t_CS", T_CCS)
2947 p_term("t_Cs", T_UCS)
2948 p_term("t_cs", T_CS)
2949 p_term("t_CV", T_CSV)
2950 p_term("t_da", T_DA)
2951 p_term("t_db", T_DB)
2952 p_term("t_DL", T_CDL)
2953 p_term("t_dl", T_DL)
2954 p_term("t_EC", T_CEC)
2955 p_term("t_EI", T_CEI)
2956 p_term("t_fs", T_FS)
Bram Moolenaar681fc3f2021-01-14 17:35:21 +01002957 p_term("t_fd", T_FD)
2958 p_term("t_fe", T_FE)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002959 p_term("t_GP", T_CGP)
2960 p_term("t_IE", T_CIE)
2961 p_term("t_IS", T_CIS)
2962 p_term("t_ke", T_KE)
2963 p_term("t_ks", T_KS)
2964 p_term("t_le", T_LE)
2965 p_term("t_mb", T_MB)
2966 p_term("t_md", T_MD)
2967 p_term("t_me", T_ME)
2968 p_term("t_mr", T_MR)
2969 p_term("t_ms", T_MS)
2970 p_term("t_nd", T_ND)
2971 p_term("t_op", T_OP)
2972 p_term("t_RF", T_RFG)
2973 p_term("t_RB", T_RBG)
2974 p_term("t_RC", T_CRC)
2975 p_term("t_RI", T_CRI)
2976 p_term("t_Ri", T_SRI)
2977 p_term("t_RS", T_CRS)
2978 p_term("t_RT", T_CRT)
2979 p_term("t_RV", T_CRV)
2980 p_term("t_Sb", T_CSB)
2981 p_term("t_SC", T_CSC)
2982 p_term("t_se", T_SE)
2983 p_term("t_Sf", T_CSF)
2984 p_term("t_SH", T_CSH)
2985 p_term("t_SI", T_CSI)
2986 p_term("t_Si", T_SSI)
2987 p_term("t_so", T_SO)
2988 p_term("t_SR", T_CSR)
2989 p_term("t_sr", T_SR)
2990 p_term("t_ST", T_CST)
2991 p_term("t_Te", T_STE)
2992 p_term("t_te", T_TE)
Bram Moolenaar171a9212019-10-12 21:08:59 +02002993 p_term("t_TE", T_CTE)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002994 p_term("t_ti", T_TI)
Bram Moolenaar171a9212019-10-12 21:08:59 +02002995 p_term("t_TI", T_CTI)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02002996 p_term("t_Ts", T_STS)
2997 p_term("t_ts", T_TS)
2998 p_term("t_u7", T_U7)
2999 p_term("t_ue", T_UE)
3000 p_term("t_us", T_US)
3001 p_term("t_ut", T_UT)
3002 p_term("t_vb", T_VB)
3003 p_term("t_ve", T_VE)
3004 p_term("t_vi", T_VI)
3005 p_term("t_VS", T_CVS)
3006 p_term("t_vs", T_VS)
3007 p_term("t_WP", T_CWP)
3008 p_term("t_WS", T_CWS)
3009 p_term("t_xn", T_XN)
3010 p_term("t_xs", T_XS)
3011 p_term("t_ZH", T_CZH)
3012 p_term("t_ZR", T_CZR)
3013 p_term("t_8f", T_8F)
3014 p_term("t_8b", T_8B)
Bram Moolenaare023e882020-05-31 16:42:30 +02003015 p_term("t_8u", T_8U)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02003016
3017// terminal key codes are not in here
3018
3019 // end marker
3020 {NULL, NULL, 0, NULL, PV_NONE, {NULL, NULL} SCTX_INIT}
3021};
3022
K.Takataeeec2542021-06-02 13:28:16 +02003023#define OPTION_COUNT ARRAY_LENGTH(options)
Bram Moolenaar0eddca42019-09-12 22:26:43 +02003024
Bram Moolenaardac13472019-09-16 21:06:21 +02003025// The following is needed to make the gen_opt_test.vim script work.
3026// {"