annotate src/feature.h @ 14536:4caa51067cb8 v8.1.0281

patch 8.1.0281: parsing command modifiers is not separated commit https://github.com/vim/vim/commit/effed9315c6c5a35fc2824b90da4af753c7a02dc Author: Bram Moolenaar <Bram@vim.org> Date: Tue Aug 14 13:38:17 2018 +0200 patch 8.1.0281: parsing command modifiers is not separated Problem: Parsing command modifiers is not separated. Solution: Move command modifier parsing to a separate function.
author Christian Brabandt <cb@256bit.org>
date Tue, 14 Aug 2018 13:45:04 +0200
parents 0a69e6e708f9
children 1f3fe26f8e3f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10042
4aead6a9b7a9 commit https://github.com/vim/vim/commit/edf3f97ae2af024708ebb4ac614227327033ca47
Christian Brabandt <cb@256bit.org>
parents: 9669
diff changeset
1 /* vi:set ts=8 sts=4 sw=4 noet:
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3 * VIM - Vi IMproved by Bram Moolenaar
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
4 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5 * Do ":help uganda" in Vim to read copying and usage conditions.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
6 * Do ":help credits" in Vim to see a list of people who contributed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
8 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 * feature.h: Defines for optional code and preferences
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11 * Edit this file to include/exclude parts of Vim, before compiling.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12 * The only other file that may be edited is Makefile, it contains machine
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 * specific options.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15 * To include specific options, change the "#if*" and "#endif" into comments,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 * or uncomment the "#define".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 * To exclude specific options, change the "#define" into a comment.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21 * When adding a new feature:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22 * - Add a #define below.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
23 * - Add a message in the table above ex_version().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 * - Add a string to f_has().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25 * - Add a feature to ":help feature-list" in doc/eval.txt.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26 * - Add feature to ":help +feature-list" in doc/various.txt.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 * - Add comment for the documentation of commands that use the feature.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 * Basic choices:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32 * ==============
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 * +tiny almost no features enabled, not even multiple windows
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
35 * +small few features enabled, as basic as possible
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
36 * +normal A default selection of features enabled
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37 * +big many features enabled, as rich as possible.
1620
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
38 * +huge all possible features enabled.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
40 * When +small is used, +tiny is also included. +normal implies +small, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
41 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
43 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
44 * Uncomment one of these to override the default. For unix use a configure
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45 * argument, see Makefile.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
46 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
47 #if !defined(FEAT_TINY) && !defined(FEAT_SMALL) && !defined(FEAT_NORMAL) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
48 && !defined(FEAT_BIG) && !defined(FEAT_HUGE)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
49 /* #define FEAT_TINY */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
50 /* #define FEAT_SMALL */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
51 /* #define FEAT_NORMAL */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
52 /* #define FEAT_BIG */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
53 /* #define FEAT_HUGE */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
54 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
55
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
56 /*
7693
6157052a0e58 commit https://github.com/vim/vim/commit/23c4f7183cca0ff8d2c5c2ef9a5c62f6307e07ea
Christian Brabandt <cb@256bit.org>
parents: 7408
diff changeset
57 * For Unix, Mac and Win32 use +huge by default. These days CPUs are fast and
6157052a0e58 commit https://github.com/vim/vim/commit/23c4f7183cca0ff8d2c5c2ef9a5c62f6307e07ea
Christian Brabandt <cb@256bit.org>
parents: 7408
diff changeset
58 * Memory is cheap.
9536
b2aada04d84e commit https://github.com/vim/vim/commit/a06ecab7a5159e744448ace731036f0dc5f87dd4
Christian Brabandt <cb@256bit.org>
parents: 9389
diff changeset
59 * Use +big for older systems: Other MS-Windows and VMS.
7693
6157052a0e58 commit https://github.com/vim/vim/commit/23c4f7183cca0ff8d2c5c2ef9a5c62f6307e07ea
Christian Brabandt <cb@256bit.org>
parents: 7408
diff changeset
60 * Otherwise use +normal
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62 #if !defined(FEAT_TINY) && !defined(FEAT_SMALL) && !defined(FEAT_NORMAL) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63 && !defined(FEAT_BIG) && !defined(FEAT_HUGE)
12716
351cf7c67bbe patch 8.0.1236: Mac features are confusing
Christian Brabandt <cb@256bit.org>
parents: 12477
diff changeset
64 # if defined(UNIX) || defined(WIN3264) || defined(MACOS_X)
7693
6157052a0e58 commit https://github.com/vim/vim/commit/23c4f7183cca0ff8d2c5c2ef9a5c62f6307e07ea
Christian Brabandt <cb@256bit.org>
parents: 7408
diff changeset
65 # define FEAT_HUGE
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66 # else
12716
351cf7c67bbe patch 8.0.1236: Mac features are confusing
Christian Brabandt <cb@256bit.org>
parents: 12477
diff changeset
67 # if defined(MSWIN) || defined(VMS) || defined(AMIGA)
7693
6157052a0e58 commit https://github.com/vim/vim/commit/23c4f7183cca0ff8d2c5c2ef9a5c62f6307e07ea
Christian Brabandt <cb@256bit.org>
parents: 7408
diff changeset
68 # define FEAT_BIG
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
69 # else
8212
05b88224cea1 commit https://github.com/vim/vim/commit/48e330aff911be1c798c88a973af6437a8141fce
Christian Brabandt <cb@256bit.org>
parents: 8163
diff changeset
70 # define FEAT_NORMAL
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
71 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
72 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
74
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
75 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76 * Each feature implies including the "smaller" ones.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
77 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
78 #ifdef FEAT_HUGE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79 # define FEAT_BIG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
81 #ifdef FEAT_BIG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
82 # define FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
83 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
84 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
85 # define FEAT_SMALL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
86 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
87 #ifdef FEAT_SMALL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
88 # define FEAT_TINY
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
89 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
90
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
91 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
92 * Optional code (see ":help +feature-list")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
93 * =============
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
94 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
95
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
96 /*
12477
68d7bc045dbe patch 8.0.1118: FEAT_WINDOWS adds a lot of #ifdefs
Christian Brabandt <cb@256bit.org>
parents: 12212
diff changeset
97 * These features used to be optional but are now always enabled.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
98 * +windows Multiple windows. Without this there is no help
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
99 * window and no status lines.
8643
24b43dd167eb commit https://github.com/vim/vim/commit/44a2f923c00f1384c9ecde12fb5b4711bc20702e
Christian Brabandt <cb@256bit.org>
parents: 8577
diff changeset
100 * +vertsplit Vertically split windows.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
101 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
102
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
103 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
104 * +cmdhist Command line history.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
105 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
106 #ifdef FEAT_SMALL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
107 # define FEAT_CMDHIST
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
108 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
109
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
110 /*
2251
646d34788036 Fix a few compiler warnings. Fix crash with encrypted undo file.
Bram Moolenaar <bram@vim.org>
parents: 2250
diff changeset
111 * Message history is fixed at 200 message, 20 for the tiny version.
625
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 592
diff changeset
112 */
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 592
diff changeset
113 #ifdef FEAT_SMALL
2233
43cad213cb7f A bit of cleanup and simplification for undofile.
Bram Moolenaar <bram@vim.org>
parents: 2214
diff changeset
114 # define MAX_MSG_HIST_LEN 200
625
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 592
diff changeset
115 #else
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 592
diff changeset
116 # define MAX_MSG_HIST_LEN 20
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 592
diff changeset
117 #endif
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 592
diff changeset
118
81fe2ccc1207 updated for version 7.0179
vimboss
parents: 592
diff changeset
119 /*
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
120 * +jumplist Jumplist, CTRL-O and CTRL-I commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
121 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
122 #ifdef FEAT_SMALL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
123 # define FEAT_JUMPLIST
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
124 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
125
12477
68d7bc045dbe patch 8.0.1118: FEAT_WINDOWS adds a lot of #ifdefs
Christian Brabandt <cb@256bit.org>
parents: 12212
diff changeset
126 /* the cmdline-window requires FEAT_CMDHIST */
68d7bc045dbe patch 8.0.1118: FEAT_WINDOWS adds a lot of #ifdefs
Christian Brabandt <cb@256bit.org>
parents: 12212
diff changeset
127 #if defined(FEAT_CMDHIST)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
128 # define FEAT_CMDWIN
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
129 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
130
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
131 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
132 * +folding Fold lines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
133 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
134 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
135 # define FEAT_FOLDING
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
136 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
137
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
138 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
139 * +digraphs Digraphs.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
140 * In insert mode and on the command line you will be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
141 * able to use digraphs. The CTRL-K command will work.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
142 * Define OLD_DIGRAPHS to get digraphs compatible with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
143 * Vim 5.x. The new ones are from RFC 1345.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
144 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
145 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
146 # define FEAT_DIGRAPHS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
147 /* #define OLD_DIGRAPHS */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
148 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
149
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
150 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
151 * +langmap 'langmap' option. Only useful when you put your
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
152 * keyboard in a special language mode, e.g. for typing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
153 * greek.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
154 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
155 #ifdef FEAT_BIG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
156 # define FEAT_LANGMAP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
157 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
158
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
159 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
160 * +keymap 'keymap' option. Allows you to map typed keys in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
161 * Insert mode for a special language.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
162 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
163 #ifdef FEAT_BIG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
164 # define FEAT_KEYMAP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
165 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
166
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
167 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
168 * +localmap Mappings and abbreviations local to a buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
169 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
170 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
171 # define FEAT_LOCALMAP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
172 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
173
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
174 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
175 * +insert_expand CTRL-N/CTRL-P/CTRL-X in insert mode. Takes about
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
176 * 4Kbyte of code.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
177 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
178 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
179 # define FEAT_INS_EXPAND
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
180 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
181
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
182 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
183 * +cmdline_compl completion of mappings/abbreviations in cmdline mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
184 * Takes a few Kbyte of code.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
185 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
186 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
187 # define FEAT_CMDL_COMPL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
188 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
189
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
190 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
191 # define VIM_BACKTICK /* internal backtick expansion */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
192 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
193
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
194 /*
5710
0559091e6f09 updated for version 7.4.200
Bram Moolenaar <bram@vim.org>
parents: 5684
diff changeset
195 * +visual Visual mode - now always included.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
196 * +visualextra Extra features for Visual mode (mostly block operators).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
197 */
5710
0559091e6f09 updated for version 7.4.200
Bram Moolenaar <bram@vim.org>
parents: 5684
diff changeset
198 #ifdef FEAT_NORMAL
0559091e6f09 updated for version 7.4.200
Bram Moolenaar <bram@vim.org>
parents: 5684
diff changeset
199 # define FEAT_VISUALEXTRA
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
200 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
201
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
202 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
203 * +virtualedit 'virtualedit' option and its implementation
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
204 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
205 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
206 # define FEAT_VIRTUALEDIT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
207 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
208
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
209 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
210 * +cmdline_info 'showcmd' and 'ruler' options.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
211 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
212 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
213 # define FEAT_CMDL_INFO
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
214 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
215
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
216 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
217 * +linebreak 'showbreak', 'breakat' and 'linebreak' options.
13
24d5189d3956 updated for version 7.0005
vimboss
parents: 12
diff changeset
218 * Also 'numberwidth'.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
219 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
220 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
221 # define FEAT_LINEBREAK
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
222 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
223
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
224 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
225 * +extra_search 'hlsearch' and 'incsearch' options.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
226 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
227 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
228 # define FEAT_SEARCH_EXTRA
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
229 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
230
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
231 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
232 * +quickfix Quickfix commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
233 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
234 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
235 # define FEAT_QUICKFIX
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
236 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
237
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
238 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
239 * +file_in_path "gf" and "<cfile>" commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
240 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
241 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
242 # define FEAT_SEARCHPATH
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
243 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
244
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
245 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
246 * +find_in_path "[I" ":isearch" "^W^I", ":checkpath", etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
247 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
248 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
249 # ifdef FEAT_SEARCHPATH /* FEAT_SEARCHPATH is required */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
250 # define FEAT_FIND_ID
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
251 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
252 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
253
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
254 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
255 * +path_extra up/downwards searching in 'path' and 'tags'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
256 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
257 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
258 # define FEAT_PATH_EXTRA
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
259 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
260
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
261 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
262 * +rightleft Right-to-left editing/typing support.
2247
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
263 *
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
264 * Disabled for EBCDIC as it requires multibyte.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
265 */
2247
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
266 #if defined(FEAT_BIG) && !defined(EBCDIC)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
267 # define FEAT_RIGHTLEFT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
268 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
269
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
270 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
271 * +farsi Farsi (Persian language) Keymap support.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
272 * Requires FEAT_RIGHTLEFT.
2247
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
273 *
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
274 * Disabled for EBCDIC as it requires multibyte.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
275 */
2247
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
276 #if defined(FEAT_BIG) && !defined(EBCDIC)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
277 # define FEAT_FKMAP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
278 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
279 #ifdef FEAT_FKMAP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
280 # ifndef FEAT_RIGHTLEFT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
281 # define FEAT_RIGHTLEFT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
282 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
283 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
284
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
285 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
286 * +arabic Arabic keymap and shaping support.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
287 * Requires FEAT_RIGHTLEFT and FEAT_MBYTE.
2247
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
288 *
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
289 * Disabled for EBCDIC as it requires multibyte.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
290 */
8140
563c923b1584 commit https://github.com/vim/vim/commit/cf7164a088664961e7d70dd100c5874dc5ceb293
Christian Brabandt <cb@256bit.org>
parents: 8047
diff changeset
291 #if defined(FEAT_BIG) && VIM_SIZEOF_INT >= 4 && !defined(EBCDIC)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
292 # define FEAT_ARABIC
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
293 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
294 #ifdef FEAT_ARABIC
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
295 # ifndef FEAT_RIGHTLEFT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
296 # define FEAT_RIGHTLEFT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
297 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
298 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
299
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
300 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
301 * +emacs_tags When FEAT_EMACS_TAGS defined: Include support for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
302 * emacs style TAGS file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
303 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
304 #ifdef FEAT_BIG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
305 # define FEAT_EMACS_TAGS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
306 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
307
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
308 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
309 * +tag_binary Can use a binary search for the tags file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
310 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
311 * Disabled for EBCDIC:
2247
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
312 * On z/OS Unix we have the problem that /bin/sort sorts ASCII instead of
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
313 * EBCDIC. With this binary search doesn't work, as VIM expects a tag file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
314 * sorted by character values. I'm not sure how to fix this. Should we really
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
315 * do a EBCDIC to ASCII conversion for this??
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
316 */
10134
95e9be4bc490 commit https://github.com/vim/vim/commit/7947312871e7d01cdba058199904c212ec32f1c0
Christian Brabandt <cb@256bit.org>
parents: 10042
diff changeset
317 #if !defined(EBCDIC)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
318 # define FEAT_TAG_BINS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
319 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
320
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
321 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
322 * +tag_old_static Old style static tags: "file:tag file ..". Slows
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
323 * down tag searching a bit.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
324 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
325 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
326 # define FEAT_TAG_OLDSTATIC
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
327 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
328
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
329 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
330 * +tag_any_white Allow any white space to separate the fields in a tags
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
331 * file. When not defined, only a TAB is allowed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
332 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
333 /* #define FEAT_TAG_ANYWHITE */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
334
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
335 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
336 * +cscope Unix only: Cscope support.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
337 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
338 #if defined(UNIX) && defined(FEAT_BIG) && !defined(FEAT_CSCOPE) && !defined(MACOS_X)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
339 # define FEAT_CSCOPE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
340 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
341
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
342 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
343 * +eval Built-in script language and expression evaluation,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
344 * ":let", ":if", etc.
1620
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
345 * +float Floating point variables.
9389
32e34e574716 commit https://github.com/vim/vim/commit/22fcfad29276bd5f317faf516637dcd491b96a12
Christian Brabandt <cb@256bit.org>
parents: 9027
diff changeset
346 * +num64 64-bit Number.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
347 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
348 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
349 # define FEAT_EVAL
12716
351cf7c67bbe patch 8.0.1236: Mac features are confusing
Christian Brabandt <cb@256bit.org>
parents: 12477
diff changeset
350 # if defined(HAVE_FLOAT_FUNCS) || defined(WIN3264) || defined(MACOS_X)
1620
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
351 # define FEAT_FLOAT
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
352 # endif
9389
32e34e574716 commit https://github.com/vim/vim/commit/22fcfad29276bd5f317faf516637dcd491b96a12
Christian Brabandt <cb@256bit.org>
parents: 9027
diff changeset
353 # if defined(HAVE_STDINT_H) || defined(WIN3264) || (VIM_SIZEOF_LONG >= 8)
32e34e574716 commit https://github.com/vim/vim/commit/22fcfad29276bd5f317faf516637dcd491b96a12
Christian Brabandt <cb@256bit.org>
parents: 9027
diff changeset
354 # define FEAT_NUM64
32e34e574716 commit https://github.com/vim/vim/commit/22fcfad29276bd5f317faf516637dcd491b96a12
Christian Brabandt <cb@256bit.org>
parents: 9027
diff changeset
355 # endif
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
356 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
357
14536
4caa51067cb8 patch 8.1.0281: parsing command modifiers is not separated
Christian Brabandt <cb@256bit.org>
parents: 14424
diff changeset
358 #ifdef FEAT_EVAL
4caa51067cb8 patch 8.1.0281: parsing command modifiers is not separated
Christian Brabandt <cb@256bit.org>
parents: 14424
diff changeset
359 # define HAVE_SANDBOX
4caa51067cb8 patch 8.1.0281: parsing command modifiers is not separated
Christian Brabandt <cb@256bit.org>
parents: 14424
diff changeset
360 #endif
4caa51067cb8 patch 8.1.0281: parsing command modifiers is not separated
Christian Brabandt <cb@256bit.org>
parents: 14424
diff changeset
361
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
362 /*
170
8c60f65311fa updated for version 7.0052
vimboss
parents: 64
diff changeset
363 * +profile Profiling for functions and scripts.
8c60f65311fa updated for version 7.0052
vimboss
parents: 64
diff changeset
364 */
177
84c21eb4fc40 updated for version 7.0054
vimboss
parents: 172
diff changeset
365 #if defined(FEAT_HUGE) \
532
7052f11a3dc9 updated for version 7.0150
vimboss
parents: 500
diff changeset
366 && defined(FEAT_EVAL) \
177
84c21eb4fc40 updated for version 7.0054
vimboss
parents: 172
diff changeset
367 && ((defined(HAVE_GETTIMEOFDAY) && defined(HAVE_SYS_TIME_H)) \
84c21eb4fc40 updated for version 7.0054
vimboss
parents: 172
diff changeset
368 || defined(WIN3264))
170
8c60f65311fa updated for version 7.0052
vimboss
parents: 64
diff changeset
369 # define FEAT_PROFILE
8c60f65311fa updated for version 7.0052
vimboss
parents: 64
diff changeset
370 #endif
8c60f65311fa updated for version 7.0052
vimboss
parents: 64
diff changeset
371
8c60f65311fa updated for version 7.0052
vimboss
parents: 64
diff changeset
372 /*
793
8c0b00d50acf updated for version 7.0231
vimboss
parents: 740
diff changeset
373 * +reltime reltime() function
8c0b00d50acf updated for version 7.0231
vimboss
parents: 740
diff changeset
374 */
8c0b00d50acf updated for version 7.0231
vimboss
parents: 740
diff changeset
375 #if defined(FEAT_NORMAL) \
8c0b00d50acf updated for version 7.0231
vimboss
parents: 740
diff changeset
376 && defined(FEAT_EVAL) \
8c0b00d50acf updated for version 7.0231
vimboss
parents: 740
diff changeset
377 && ((defined(HAVE_GETTIMEOFDAY) && defined(HAVE_SYS_TIME_H)) \
8c0b00d50acf updated for version 7.0231
vimboss
parents: 740
diff changeset
378 || defined(WIN3264))
8c0b00d50acf updated for version 7.0231
vimboss
parents: 740
diff changeset
379 # define FEAT_RELTIME
8c0b00d50acf updated for version 7.0231
vimboss
parents: 740
diff changeset
380 #endif
8c0b00d50acf updated for version 7.0231
vimboss
parents: 740
diff changeset
381
8c0b00d50acf updated for version 7.0231
vimboss
parents: 740
diff changeset
382 /*
8577
63dc856bd13d commit https://github.com/vim/vim/commit/975b5271eed4fa0500c24a8f37be0b1797cb9db7
Christian Brabandt <cb@256bit.org>
parents: 8493
diff changeset
383 * +timers timer_start()
63dc856bd13d commit https://github.com/vim/vim/commit/975b5271eed4fa0500c24a8f37be0b1797cb9db7
Christian Brabandt <cb@256bit.org>
parents: 8493
diff changeset
384 */
63dc856bd13d commit https://github.com/vim/vim/commit/975b5271eed4fa0500c24a8f37be0b1797cb9db7
Christian Brabandt <cb@256bit.org>
parents: 8493
diff changeset
385 #if defined(FEAT_RELTIME) && (defined(UNIX) || defined(WIN32))
63dc856bd13d commit https://github.com/vim/vim/commit/975b5271eed4fa0500c24a8f37be0b1797cb9db7
Christian Brabandt <cb@256bit.org>
parents: 8493
diff changeset
386 # define FEAT_TIMERS
63dc856bd13d commit https://github.com/vim/vim/commit/975b5271eed4fa0500c24a8f37be0b1797cb9db7
Christian Brabandt <cb@256bit.org>
parents: 8493
diff changeset
387 #endif
63dc856bd13d commit https://github.com/vim/vim/commit/975b5271eed4fa0500c24a8f37be0b1797cb9db7
Christian Brabandt <cb@256bit.org>
parents: 8493
diff changeset
388
63dc856bd13d commit https://github.com/vim/vim/commit/975b5271eed4fa0500c24a8f37be0b1797cb9db7
Christian Brabandt <cb@256bit.org>
parents: 8493
diff changeset
389 /*
532
7052f11a3dc9 updated for version 7.0150
vimboss
parents: 500
diff changeset
390 * +textobjects Text objects: "vaw", "das", etc.
7052f11a3dc9 updated for version 7.0150
vimboss
parents: 500
diff changeset
391 */
7052f11a3dc9 updated for version 7.0150
vimboss
parents: 500
diff changeset
392 #if defined(FEAT_NORMAL) && defined(FEAT_EVAL)
7052f11a3dc9 updated for version 7.0150
vimboss
parents: 500
diff changeset
393 # define FEAT_TEXTOBJ
7052f11a3dc9 updated for version 7.0150
vimboss
parents: 500
diff changeset
394 #endif
7052f11a3dc9 updated for version 7.0150
vimboss
parents: 500
diff changeset
395
7052f11a3dc9 updated for version 7.0150
vimboss
parents: 500
diff changeset
396 /*
12
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
397 * Insert mode completion with 'completefunc'.
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
398 */
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
399 #if defined(FEAT_INS_EXPAND) && defined(FEAT_EVAL)
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
400 # define FEAT_COMPL_FUNC
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
401 #endif
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
402
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
403 /*
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
404 * +user_commands Allow the user to define his own commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
405 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
406 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
407 # define FEAT_USR_CMDS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
408 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
409
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
410 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
411 * +printer ":hardcopy" command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
412 * +postscript Printing uses PostScript file output.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
413 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
414 #if defined(FEAT_NORMAL) && (defined(MSWIN) || defined(FEAT_EVAL)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
415 && !defined(AMIGA)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
416 # define FEAT_PRINTER
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
417 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
418 #if defined(FEAT_PRINTER) && ((defined(MSWIN) && defined(MSWINPS)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
419 || (!defined(MSWIN) && defined(FEAT_EVAL)))
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
420 # define FEAT_POSTSCRIPT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
421 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
422
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
423 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
424 * +modify_fname modifiers for file name. E.g., "%:p:h".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
425 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
426 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
427 # define FEAT_MODIFY_FNAME
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
428 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
429
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
430 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
431 * +diff Displaying diffs in a nice way.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
432 * Requires +windows and +autocmd.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
433 */
13380
69517d67421f patch 8.0.1564: too many #ifdefs
Christian Brabandt <cb@256bit.org>
parents: 13369
diff changeset
434 #if defined(FEAT_NORMAL)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
435 # define FEAT_DIFF
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
436 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
437
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
438 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
439 * +title 'title' and 'icon' options
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
440 * +statusline 'statusline', 'rulerformat' and special format of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
441 * 'titlestring' and 'iconstring' options.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
442 * +byte_offset '%o' in 'statusline' and builtin functions line2byte()
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
443 * and byte2line().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
444 * Note: Required for Macintosh.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
445 */
8212
05b88224cea1 commit https://github.com/vim/vim/commit/48e330aff911be1c798c88a973af6437a8141fce
Christian Brabandt <cb@256bit.org>
parents: 8163
diff changeset
446 #if defined(FEAT_NORMAL)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
447 # define FEAT_TITLE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
448 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
449
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
450 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
451 # define FEAT_STL_OPT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
452 # ifndef FEAT_CMDL_INFO
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
453 # define FEAT_CMDL_INFO /* 'ruler' is required for 'statusline' */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
454 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
455 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
456
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
457 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
458 # define FEAT_BYTEOFF
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
459 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
460
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
461 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
462 * +wildignore 'wildignore' and 'backupskip' options
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
463 * Needed for Unix to make "crontab -e" work.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
464 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
465 #if defined(FEAT_NORMAL) || defined(UNIX)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
466 # define FEAT_WILDIGN
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
467 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
468
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
469 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
470 * +wildmenu 'wildmenu' option
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
471 */
12477
68d7bc045dbe patch 8.0.1118: FEAT_WINDOWS adds a lot of #ifdefs
Christian Brabandt <cb@256bit.org>
parents: 12212
diff changeset
472 #if defined(FEAT_NORMAL)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
473 # define FEAT_WILDMENU
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
474 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
475
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
476 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
477 * +viminfo reading/writing the viminfo file. Takes about 8Kbyte
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
478 * of code.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
479 * VIMINFO_FILE Location of user .viminfo file (should start with $).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
480 * VIMINFO_FILE2 Location of alternate user .viminfo file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
481 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
482 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
483 # define FEAT_VIMINFO
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
484 /* #define VIMINFO_FILE "$HOME/foo/.viminfo" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
485 /* #define VIMINFO_FILE2 "~/bar/.viminfo" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
486 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
487
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
488 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
489 * +syntax syntax highlighting. When using this, it's a good
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
490 * idea to have +autocmd and +eval too.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
491 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
492 #if defined(FEAT_NORMAL) || defined(PROTO)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
493 # define FEAT_SYN_HL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
494 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
495
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
496 /*
2250
1bac28a53fae Add the conceal patch from Vince Negri.
Bram Moolenaar <bram@vim.org>
parents: 2247
diff changeset
497 * +conceal 'conceal' option. Needs syntax highlighting
1bac28a53fae Add the conceal patch from Vince Negri.
Bram Moolenaar <bram@vim.org>
parents: 2247
diff changeset
498 * as this is how the concealed text is defined.
1bac28a53fae Add the conceal patch from Vince Negri.
Bram Moolenaar <bram@vim.org>
parents: 2247
diff changeset
499 */
1bac28a53fae Add the conceal patch from Vince Negri.
Bram Moolenaar <bram@vim.org>
parents: 2247
diff changeset
500 #if defined(FEAT_BIG) && defined(FEAT_SYN_HL)
1bac28a53fae Add the conceal patch from Vince Negri.
Bram Moolenaar <bram@vim.org>
parents: 2247
diff changeset
501 # define FEAT_CONCEAL
1bac28a53fae Add the conceal patch from Vince Negri.
Bram Moolenaar <bram@vim.org>
parents: 2247
diff changeset
502 #endif
1bac28a53fae Add the conceal patch from Vince Negri.
Bram Moolenaar <bram@vim.org>
parents: 2247
diff changeset
503
1bac28a53fae Add the conceal patch from Vince Negri.
Bram Moolenaar <bram@vim.org>
parents: 2247
diff changeset
504 /*
740
614e9af68eaa updated for version 7.0222
vimboss
parents: 714
diff changeset
505 * +spell spell checking
2247
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
506 *
2250
1bac28a53fae Add the conceal patch from Vince Negri.
Bram Moolenaar <bram@vim.org>
parents: 2247
diff changeset
507 * Disabled for EBCDIC: * Doesn't work (SIGSEGV).
740
614e9af68eaa updated for version 7.0222
vimboss
parents: 714
diff changeset
508 */
2247
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
509 #if (defined(FEAT_NORMAL) || defined(PROTO)) && !defined(EBCDIC)
740
614e9af68eaa updated for version 7.0222
vimboss
parents: 714
diff changeset
510 # define FEAT_SPELL
614e9af68eaa updated for version 7.0222
vimboss
parents: 714
diff changeset
511 #endif
614e9af68eaa updated for version 7.0222
vimboss
parents: 714
diff changeset
512
614e9af68eaa updated for version 7.0222
vimboss
parents: 714
diff changeset
513 /*
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
514 * +builtin_terms Choose one out of the following four:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
515 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
516 * NO_BUILTIN_TCAPS Do not include any builtin termcap entries (used only
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
517 * with HAVE_TGETENT defined).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
518 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
519 * (nothing) Machine specific termcap entries will be included.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
520 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
521 * SOME_BUILTIN_TCAPS Include most useful builtin termcap entries (used only
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
522 * with NO_BUILTIN_TCAPS not defined).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
523 * This is the default.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
524 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
525 * ALL_BUILTIN_TCAPS Include all builtin termcap entries
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
526 * (used only with NO_BUILTIN_TCAPS not defined).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
527 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
528 #ifdef HAVE_TGETENT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
529 /* #define NO_BUILTIN_TCAPS */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
530 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
531
8163
d8a8e86f39ad commit https://github.com/vim/vim/commit/e89ff0472bc33779583d48e8d38a5e794d05613a
Christian Brabandt <cb@256bit.org>
parents: 8140
diff changeset
532 #if !defined(NO_BUILTIN_TCAPS)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
533 # ifdef FEAT_BIG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
534 # define ALL_BUILTIN_TCAPS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
535 # else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
536 # define SOME_BUILTIN_TCAPS /* default */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
537 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
538 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
539
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
540 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
541 * +lispindent lisp indenting (From Eric Fischer).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
542 * +cindent C code indenting (From Eric Fischer).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
543 * +smartindent smart C code indenting when the 'si' option is set.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
544 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
545 * These two need to be defined when making prototypes.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
546 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
547 #if defined(FEAT_NORMAL) || defined(PROTO)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
548 # define FEAT_LISP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
549 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
550
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
551 #if defined(FEAT_NORMAL) || defined(PROTO)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
552 # define FEAT_CINDENT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
553 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
554
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
555 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
556 # define FEAT_SMARTINDENT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
557 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
558
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
559 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
560 * +comments 'comments' option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
561 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
562 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
563 # define FEAT_COMMENTS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
564 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
565
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
566 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
567 * +cryptv Encryption (by Mohsin Ahmed <mosh@sasi.com>).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
568 */
2180
f60a0c9cbe6c Add the blowfish encryption patch from Mohsin Ahmed. Needs more work.
Bram Moolenaar <bram@vim.org>
parents: 1972
diff changeset
569 #if defined(FEAT_NORMAL) && !defined(FEAT_CRYPT) || defined(PROTO)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
570 # define FEAT_CRYPT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
571 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
572
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
573 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
574 * +mksession ":mksession" command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
575 * Requires +windows and +vertsplit.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
576 */
12477
68d7bc045dbe patch 8.0.1118: FEAT_WINDOWS adds a lot of #ifdefs
Christian Brabandt <cb@256bit.org>
parents: 12212
diff changeset
577 #if defined(FEAT_NORMAL)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
578 # define FEAT_SESSION
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
579 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
580
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
581 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
582 * +multi_lang Multi language support. ":menutrans", ":language", etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
583 * +gettext Message translations (requires +multi_lang)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
584 * (only when "lang" archive unpacked)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
585 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
586 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
587 # define FEAT_MULTI_LANG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
588 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
589 #if defined(HAVE_GETTEXT) && defined(FEAT_MULTI_LANG) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
590 && (defined(HAVE_LOCALE_H) || defined(X_LOCALE))
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
591 # define FEAT_GETTEXT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
592 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
593
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
594 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
595 * +multi_byte Generic multi-byte character handling. Doesn't work
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
596 * with 16 bit ints. Required for GTK+ 2.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
597 *
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
598 * Disabled for EBCDIC:
2247
c40cd9aad546 Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
Bram Moolenaar <bram@vim.org>
parents: 2233
diff changeset
599 * Multibyte support doesn't work on z/OS Unix currently.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
600 */
4440
dfbe53a54c79 updated for version 7.3.968
Bram Moolenaar <bram@vim.org>
parents: 4352
diff changeset
601 #if (defined(FEAT_NORMAL) || defined(FEAT_GUI_GTK) || defined(FEAT_ARABIC)) \
8140
563c923b1584 commit https://github.com/vim/vim/commit/cf7164a088664961e7d70dd100c5874dc5ceb293
Christian Brabandt <cb@256bit.org>
parents: 8047
diff changeset
602 && !defined(FEAT_MBYTE) && VIM_SIZEOF_INT >= 4 && !defined(EBCDIC)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
603 # define FEAT_MBYTE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
604 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
605
714
0f9f4761ad9c updated for version 7.0216
vimboss
parents: 692
diff changeset
606 /* Define this if you want to use 16 bit Unicode only, reduces memory used for
0f9f4761ad9c updated for version 7.0216
vimboss
parents: 692
diff changeset
607 * the screen structures. */
0f9f4761ad9c updated for version 7.0216
vimboss
parents: 692
diff changeset
608 /* #define UNICODE16 */
0f9f4761ad9c updated for version 7.0216
vimboss
parents: 692
diff changeset
609
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
610 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
611 * +multi_byte_ime Win32 IME input method. Requires +multi_byte.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
612 * Only for far-east Windows, so IME can be used to input
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
613 * chars. Not tested much!
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
614 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
615 #if defined(FEAT_GUI_W32) && !defined(FEAT_MBYTE_IME)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
616 /* #define FEAT_MBYTE_IME */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
617 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
618
12948
851393938fa3 patch 8.0.1350: cannot build with +eval and -multi_byte
Christian Brabandt <cb@256bit.org>
parents: 12871
diff changeset
619 /* Input methods are only useful with +multi_byte. */
851393938fa3 patch 8.0.1350: cannot build with +eval and -multi_byte
Christian Brabandt <cb@256bit.org>
parents: 12871
diff changeset
620 #if (defined(FEAT_MBYTE_IME) || defined(FEAT_XIM)) && !defined(FEAT_MBYTE)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
621 # define FEAT_MBYTE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
622 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
623
5684
136f05449f29 updated for version 7.4.188
Bram Moolenaar <bram@vim.org>
parents: 4440
diff changeset
624 #if defined(FEAT_MBYTE) && VIM_SIZEOF_INT < 4 && !defined(PROTO)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
625 Error: Can only handle multi-byte feature with 32 bit int or larger
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
626 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
627
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
628 /* Use iconv() when it's available. */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
629 #if defined(FEAT_MBYTE) && ((defined(HAVE_ICONV_H) && defined(HAVE_ICONV)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
630 || defined(DYNAMIC_ICONV))
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
631 # define USE_ICONV
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
632 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
633
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
634 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
635 * +xim X Input Method. For entering special languages like
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
636 * chinese and Japanese.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
637 * +hangul_input Internal Hangul input method. Must be included
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
638 * through configure: "--enable-hangulin"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
639 * Both are for Unix and VMS only.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
640 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
641 #ifndef FEAT_XIM
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
642 /* #define FEAT_XIM */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
643 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
644
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
645 #if defined(FEAT_XIM) && defined(FEAT_GUI_GTK)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
646 # define USE_XIM 1 /* needed for GTK include files */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
647 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
648
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
649 #ifdef FEAT_HANGULIN
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
650 # define HANGUL_DEFAULT_KEYBOARD 2 /* 2 or 3 bulsik keyboard */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
651 # define ESC_CHG_TO_ENG_MODE /* if defined, when ESC pressed,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
652 * turn to english mode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
653 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
654 # if defined(FEAT_XIM) && !defined(LINT)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
655 Error: You should select only ONE of XIM and HANGUL INPUT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
656 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
657 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
658 #if defined(FEAT_HANGULIN) || defined(FEAT_XIM)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
659 /* # define X_LOCALE */ /* for OS with incomplete locale
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
660 support, like old linux versions. */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
661 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
662
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
663 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
664 * +xfontset X fontset support. For outputting wide characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
665 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
666 #ifndef FEAT_XFONTSET
2277
f42e0b5ff9e9 Change remaining HAVE_GTK2 to FEAT_GUI_GTK.
Bram Moolenaar <bram@vim.org>
parents: 2251
diff changeset
667 # if defined(FEAT_MBYTE) && defined(HAVE_X11) && !defined(FEAT_GUI_GTK)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
668 # define FEAT_XFONTSET
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
669 # else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
670 /* # define FEAT_XFONTSET */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
671 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
672 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
673
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
674 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
675 * +libcall libcall() function
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
676 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
677 /* Using dlopen() also requires dlsym() to be available. */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
678 #if defined(HAVE_DLOPEN) && defined(HAVE_DLSYM)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
679 # define USE_DLOPEN
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
680 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
681 #if defined(FEAT_EVAL) && (defined(WIN3264) || ((defined(UNIX) || defined(VMS)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
682 && (defined(USE_DLOPEN) || defined(HAVE_SHL_LOAD))))
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
683 # define FEAT_LIBCALL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
684 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
685
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
686 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
687 * +menu ":menu" command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
688 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
689 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
690 # define FEAT_MENU
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
691 # ifdef FEAT_GUI_W32
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
692 # define FEAT_TEAROFF
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
693 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
694 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
695
13369
244ff1b6d2ad patch 8.0.1558: no right-click menu in a terminal
Christian Brabandt <cb@256bit.org>
parents: 13314
diff changeset
696 /*
244ff1b6d2ad patch 8.0.1558: no right-click menu in a terminal
Christian Brabandt <cb@256bit.org>
parents: 13314
diff changeset
697 * popup menu in a terminal
244ff1b6d2ad patch 8.0.1558: no right-click menu in a terminal
Christian Brabandt <cb@256bit.org>
parents: 13314
diff changeset
698 */
244ff1b6d2ad patch 8.0.1558: no right-click menu in a terminal
Christian Brabandt <cb@256bit.org>
parents: 13314
diff changeset
699 #if defined(FEAT_MENU) && !defined(ALWAYS_USE_GUI) && defined(FEAT_INS_EXPAND)
244ff1b6d2ad patch 8.0.1558: no right-click menu in a terminal
Christian Brabandt <cb@256bit.org>
parents: 13314
diff changeset
700 # define FEAT_TERM_POPUP_MENU
244ff1b6d2ad patch 8.0.1558: no right-click menu in a terminal
Christian Brabandt <cb@256bit.org>
parents: 13314
diff changeset
701 #endif
244ff1b6d2ad patch 8.0.1558: no right-click menu in a terminal
Christian Brabandt <cb@256bit.org>
parents: 13314
diff changeset
702
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
703 /* There are two ways to use XPM. */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
704 #if (defined(HAVE_XM_XPMP_H) && defined(FEAT_GUI_MOTIF)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
705 || defined(HAVE_X11_XPM_H)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
706 # define HAVE_XPM 1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
707 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
708
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
709 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
710 * +toolbar Include code for a toolbar (for the Win32 GUI, GTK
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
711 * always has it). But only if menus are enabled.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
712 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
713 #if defined(FEAT_NORMAL) && defined(FEAT_MENU) \
574
25a70b1cd2da updated for version 7.0163
vimboss
parents: 532
diff changeset
714 && (defined(FEAT_GUI_GTK) \
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
715 || defined(FEAT_GUI_MSWIN) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
716 || ((defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
717 && defined(HAVE_XPM)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
718 || defined(FEAT_GUI_PHOTON))
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
719 # define FEAT_TOOLBAR
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
720 #endif
11
4424b47a0797 updated for version 7.0003
vimboss
parents: 7
diff changeset
721
4424b47a0797 updated for version 7.0003
vimboss
parents: 7
diff changeset
722
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
723 #if defined(FEAT_TOOLBAR) && !defined(FEAT_MENU)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
724 # define FEAT_MENU
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
725 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
726
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
727 /*
685
d7e33248b9c8 updated for version 7.0206
vimboss
parents: 625
diff changeset
728 * GUI tabline
d7e33248b9c8 updated for version 7.0206
vimboss
parents: 625
diff changeset
729 */
12477
68d7bc045dbe patch 8.0.1118: FEAT_WINDOWS adds a lot of #ifdefs
Christian Brabandt <cb@256bit.org>
parents: 12212
diff changeset
730 #if defined(FEAT_NORMAL) \
844
d3bbb5dd3913 updated for version 7.0f02
vimboss
parents: 838
diff changeset
731 && (defined(FEAT_GUI_GTK) \
838
8e5830943bff updated for version 7.0e04
vimboss
parents: 820
diff changeset
732 || (defined(FEAT_GUI_MOTIF) && defined(HAVE_XM_NOTEBOOK_H)) \
1106
6c4da3e24371 updated for version 7.0-232
vimboss
parents: 1030
diff changeset
733 || defined(FEAT_GUI_MAC) \
8140
563c923b1584 commit https://github.com/vim/vim/commit/cf7164a088664961e7d70dd100c5874dc5ceb293
Christian Brabandt <cb@256bit.org>
parents: 8047
diff changeset
734 || (defined(FEAT_GUI_MSWIN) \
2250
1bac28a53fae Add the conceal patch from Vince Negri.
Bram Moolenaar <bram@vim.org>
parents: 2247
diff changeset
735 && (!defined(_MSC_VER) || _MSC_VER > 1020)))
685
d7e33248b9c8 updated for version 7.0206
vimboss
parents: 625
diff changeset
736 # define FEAT_GUI_TABLINE
d7e33248b9c8 updated for version 7.0206
vimboss
parents: 625
diff changeset
737 #endif
d7e33248b9c8 updated for version 7.0206
vimboss
parents: 625
diff changeset
738
d7e33248b9c8 updated for version 7.0206
vimboss
parents: 625
diff changeset
739 /*
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
740 * +browse ":browse" command.
1733
5a7384b9ca66 updated for version 7.2-031
vimboss
parents: 1698
diff changeset
741 * or just the ":browse" command modifier
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
742 */
1733
5a7384b9ca66 updated for version 7.2-031
vimboss
parents: 1698
diff changeset
743 #if defined(FEAT_NORMAL)
5a7384b9ca66 updated for version 7.2-031
vimboss
parents: 1698
diff changeset
744 # define FEAT_BROWSE_CMD
5a7384b9ca66 updated for version 7.2-031
vimboss
parents: 1698
diff changeset
745 # if defined(FEAT_GUI_MSWIN) || defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_PHOTON) || defined(FEAT_GUI_MAC)
5a7384b9ca66 updated for version 7.2-031
vimboss
parents: 1698
diff changeset
746 # define FEAT_BROWSE
5a7384b9ca66 updated for version 7.2-031
vimboss
parents: 1698
diff changeset
747 # endif
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
748 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
749
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
750 /*
4039
a8f5876e4981 updated for version 7.3.774
Bram Moolenaar <bram@vim.org>
parents: 3887
diff changeset
751 * On some systems, when we compile with the GUI, we always use it. On Mac
a8f5876e4981 updated for version 7.3.774
Bram Moolenaar <bram@vim.org>
parents: 3887
diff changeset
752 * there is no terminal version, and on Windows we can't figure out how to
a8f5876e4981 updated for version 7.3.774
Bram Moolenaar <bram@vim.org>
parents: 3887
diff changeset
753 * fork one off with :gui.
a8f5876e4981 updated for version 7.3.774
Bram Moolenaar <bram@vim.org>
parents: 3887
diff changeset
754 */
12716
351cf7c67bbe patch 8.0.1236: Mac features are confusing
Christian Brabandt <cb@256bit.org>
parents: 12477
diff changeset
755 #if defined(FEAT_GUI_MSWIN) || (defined(FEAT_GUI_MAC) && !defined(MACOS_X_DARWIN))
4039
a8f5876e4981 updated for version 7.3.774
Bram Moolenaar <bram@vim.org>
parents: 3887
diff changeset
756 # define ALWAYS_USE_GUI
a8f5876e4981 updated for version 7.3.774
Bram Moolenaar <bram@vim.org>
parents: 3887
diff changeset
757 #endif
a8f5876e4981 updated for version 7.3.774
Bram Moolenaar <bram@vim.org>
parents: 3887
diff changeset
758
a8f5876e4981 updated for version 7.3.774
Bram Moolenaar <bram@vim.org>
parents: 3887
diff changeset
759 /*
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
760 * +dialog_gui Use GUI dialog.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
761 * +dialog_con May use Console dialog.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
762 * When none of these defined there is no dialog support.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
763 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
764 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
765 # if ((defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_MOTIF)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
766 && defined(HAVE_X11_XPM_H)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
767 || defined(FEAT_GUI_GTK) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
768 || defined(FEAT_GUI_PHOTON) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
769 || defined(FEAT_GUI_MSWIN) \
574
25a70b1cd2da updated for version 7.0163
vimboss
parents: 532
diff changeset
770 || defined(FEAT_GUI_MAC)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
771 # define FEAT_CON_DIALOG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
772 # define FEAT_GUI_DIALOG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
773 # else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
774 # define FEAT_CON_DIALOG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
775 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
776 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
777 #if !defined(FEAT_GUI_DIALOG) && (defined(FEAT_GUI_MOTIF) \
2419
f579b934f51d Fix build warnings and problems for tiny/small Win32 build. (Mike Williams)
Bram Moolenaar <bram@vim.org>
parents: 2378
diff changeset
778 || defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_GTK) \
f579b934f51d Fix build warnings and problems for tiny/small Win32 build. (Mike Williams)
Bram Moolenaar <bram@vim.org>
parents: 2378
diff changeset
779 || defined(FEAT_GUI_W32))
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
780 /* need a dialog to show error messages when starting from the desktop */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
781 # define FEAT_GUI_DIALOG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
782 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
783 #if defined(FEAT_GUI_DIALOG) && \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
784 (defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA) \
574
25a70b1cd2da updated for version 7.0163
vimboss
parents: 532
diff changeset
785 || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_MSWIN) \
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
786 || defined(FEAT_GUI_PHOTON) || defined(FEAT_GUI_MAC))
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
787 # define FEAT_GUI_TEXTDIALOG
4039
a8f5876e4981 updated for version 7.3.774
Bram Moolenaar <bram@vim.org>
parents: 3887
diff changeset
788 # ifndef ALWAYS_USE_GUI
a8f5876e4981 updated for version 7.3.774
Bram Moolenaar <bram@vim.org>
parents: 3887
diff changeset
789 # define FEAT_CON_DIALOG
a8f5876e4981 updated for version 7.3.774
Bram Moolenaar <bram@vim.org>
parents: 3887
diff changeset
790 # endif
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
791 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
792
8997
90fd01ade690 commit https://github.com/vim/vim/commit/8e9eb3a6a1e589949f1c878c839528d917fdfc4a
Christian Brabandt <cb@256bit.org>
parents: 8643
diff changeset
793 /*
9027
773d627cac0b commit https://github.com/vim/vim/commit/61be73bb0f965a895bfb064ea3e55476ac175162
Christian Brabandt <cb@256bit.org>
parents: 8997
diff changeset
794 * +termguicolors 'termguicolors' option.
8997
90fd01ade690 commit https://github.com/vim/vim/commit/8e9eb3a6a1e589949f1c878c839528d917fdfc4a
Christian Brabandt <cb@256bit.org>
parents: 8643
diff changeset
795 */
90fd01ade690 commit https://github.com/vim/vim/commit/8e9eb3a6a1e589949f1c878c839528d917fdfc4a
Christian Brabandt <cb@256bit.org>
parents: 8643
diff changeset
796 #if (defined(FEAT_BIG) && defined(FEAT_SYN_HL)) && !defined(ALWAYS_USE_GUI)
9027
773d627cac0b commit https://github.com/vim/vim/commit/61be73bb0f965a895bfb064ea3e55476ac175162
Christian Brabandt <cb@256bit.org>
parents: 8997
diff changeset
797 # define FEAT_TERMGUICOLORS
8997
90fd01ade690 commit https://github.com/vim/vim/commit/8e9eb3a6a1e589949f1c878c839528d917fdfc4a
Christian Brabandt <cb@256bit.org>
parents: 8643
diff changeset
798 #endif
90fd01ade690 commit https://github.com/vim/vim/commit/8e9eb3a6a1e589949f1c878c839528d917fdfc4a
Christian Brabandt <cb@256bit.org>
parents: 8643
diff changeset
799
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
800 /* Mac specific thing: Codewarrior interface. */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
801 #ifdef FEAT_GUI_MAC
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
802 # define FEAT_CW_EDITOR
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
803 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
804
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
805 /*
14175
2ad722003b36 patch 8.1.0105: all tab stops are the same
Christian Brabandt <cb@256bit.org>
parents: 13553
diff changeset
806 * +vartabs 'vartabstop' and 'varsofttabstop' options.
2ad722003b36 patch 8.1.0105: all tab stops are the same
Christian Brabandt <cb@256bit.org>
parents: 13553
diff changeset
807 */
2ad722003b36 patch 8.1.0105: all tab stops are the same
Christian Brabandt <cb@256bit.org>
parents: 13553
diff changeset
808 #ifdef FEAT_BIG
2ad722003b36 patch 8.1.0105: all tab stops are the same
Christian Brabandt <cb@256bit.org>
parents: 13553
diff changeset
809 # define FEAT_VARTABS
2ad722003b36 patch 8.1.0105: all tab stops are the same
Christian Brabandt <cb@256bit.org>
parents: 13553
diff changeset
810 #endif
2ad722003b36 patch 8.1.0105: all tab stops are the same
Christian Brabandt <cb@256bit.org>
parents: 13553
diff changeset
811
2ad722003b36 patch 8.1.0105: all tab stops are the same
Christian Brabandt <cb@256bit.org>
parents: 13553
diff changeset
812 /*
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
813 * Preferences:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
814 * ============
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
815 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
816
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
817 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
818 * +writebackup 'writebackup' is default on:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
819 * Use a backup file while overwriting a file. But it's
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
820 * deleted again when 'backup' is not set. Changing this
1698
f4f8014d516e updated for version 7.2c-000
vimboss
parents: 1620
diff changeset
821 * is strongly discouraged: You can lose all your
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
822 * changes when the computer crashes while writing the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
823 * file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
824 * VMS note: It does work on VMS as well, but because of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
825 * version handling it does not have any purpose.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
826 * Overwrite will write to the new version.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
827 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
828 #ifndef VMS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
829 # define FEAT_WRITEBACKUP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
830 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
831
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
832 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
833 * +xterm_save The t_ti and t_te entries for the builtin xterm will
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
834 * be set to save the screen when starting Vim and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
835 * restoring it when exiting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
836 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
837 /* #define FEAT_XTERM_SAVE */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
838
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
839 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
840 * DEBUG Output a lot of debugging garbage.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
841 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
842 /* #define DEBUG */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
843
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
844 /*
1972
82f866f19e91 updated for version 7.2-269
vimboss
parents: 1733
diff changeset
845 * STARTUPTIME Time the startup process. Writes a file with
82f866f19e91 updated for version 7.2-269
vimboss
parents: 1733
diff changeset
846 * timestamps.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
847 */
1972
82f866f19e91 updated for version 7.2-269
vimboss
parents: 1733
diff changeset
848 #if defined(FEAT_NORMAL) \
82f866f19e91 updated for version 7.2-269
vimboss
parents: 1733
diff changeset
849 && ((defined(HAVE_GETTIMEOFDAY) && defined(HAVE_SYS_TIME_H)) \
82f866f19e91 updated for version 7.2-269
vimboss
parents: 1733
diff changeset
850 || defined(WIN3264))
82f866f19e91 updated for version 7.2-269
vimboss
parents: 1733
diff changeset
851 # define STARTUPTIME 1
82f866f19e91 updated for version 7.2-269
vimboss
parents: 1733
diff changeset
852 #endif
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
853
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
854 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
855 * MEM_PROFILE Debugging of memory allocation and freeing.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
856 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
857 /* #define MEM_PROFILE */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
858
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
859 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
860 * VIMRC_FILE Name of the .vimrc file in current dir.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
861 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
862 /* #define VIMRC_FILE ".vimrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
863
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
864 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
865 * EXRC_FILE Name of the .exrc file in current dir.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
866 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
867 /* #define EXRC_FILE ".exrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
868
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
869 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
870 * GVIMRC_FILE Name of the .gvimrc file in current dir.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
871 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
872 /* #define GVIMRC_FILE ".gvimrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
873
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
874 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
875 * SESSION_FILE Name of the default ":mksession" file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
876 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
877 #define SESSION_FILE "Session.vim"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
878
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
879 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
880 * USR_VIMRC_FILE Name of the user .vimrc file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
881 * USR_VIMRC_FILE2 Name of alternate user .vimrc file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
882 * USR_VIMRC_FILE3 Name of alternate user .vimrc file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
883 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
884 /* #define USR_VIMRC_FILE "~/foo/.vimrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
885 /* #define USR_VIMRC_FILE2 "~/bar/.vimrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
886 /* #define USR_VIMRC_FILE3 "$VIM/.vimrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
887
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
888 /*
9669
284b4eb307fc commit https://github.com/vim/vim/commit/8c08b5b569e2a9e9f63dea514591ecfa2d3bb392
Christian Brabandt <cb@256bit.org>
parents: 9536
diff changeset
889 * VIM_DEFAULTS_FILE Name of the defaults.vim script file
284b4eb307fc commit https://github.com/vim/vim/commit/8c08b5b569e2a9e9f63dea514591ecfa2d3bb392
Christian Brabandt <cb@256bit.org>
parents: 9536
diff changeset
890 */
284b4eb307fc commit https://github.com/vim/vim/commit/8c08b5b569e2a9e9f63dea514591ecfa2d3bb392
Christian Brabandt <cb@256bit.org>
parents: 9536
diff changeset
891 /* #define VIM_DEFAULTS_FILE "$VIMRUNTIME/defaults.vim" */
284b4eb307fc commit https://github.com/vim/vim/commit/8c08b5b569e2a9e9f63dea514591ecfa2d3bb392
Christian Brabandt <cb@256bit.org>
parents: 9536
diff changeset
892
284b4eb307fc commit https://github.com/vim/vim/commit/8c08b5b569e2a9e9f63dea514591ecfa2d3bb392
Christian Brabandt <cb@256bit.org>
parents: 9536
diff changeset
893 /*
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
894 * EVIM_FILE Name of the evim.vim script file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
895 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
896 /* #define EVIM_FILE "$VIMRUNTIME/evim.vim" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
897
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
898 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
899 * USR_EXRC_FILE Name of the user .exrc file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
900 * USR_EXRC_FILE2 Name of the alternate user .exrc file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
901 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
902 /* #define USR_EXRC_FILE "~/foo/.exrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
903 /* #define USR_EXRC_FILE2 "~/bar/.exrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
904
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
905 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
906 * USR_GVIMRC_FILE Name of the user .gvimrc file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
907 * USR_GVIMRC_FILE2 Name of the alternate user .gvimrc file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
908 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
909 /* #define USR_GVIMRC_FILE "~/foo/.gvimrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
910 /* #define USR_GVIMRC_FILE2 "~/bar/.gvimrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
911 /* #define USR_GVIMRC_FILE3 "$VIM/.gvimrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
912
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
913 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
914 * SYS_VIMRC_FILE Name of the system-wide .vimrc file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
915 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
916 /* #define SYS_VIMRC_FILE "/etc/vimrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
917
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
918 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
919 * SYS_GVIMRC_FILE Name of the system-wide .gvimrc file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
920 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
921 /* #define SYS_GVIMRC_FILE "/etc/gvimrc" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
922
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
923 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
924 * DFLT_HELPFILE Name of the help file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
925 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
926 /* # define DFLT_HELPFILE "$VIMRUNTIME/doc/help.txt.gz" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
927
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
928 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
929 * File names for:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
930 * FILETYPE_FILE switch on file type detection
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
931 * FTPLUGIN_FILE switch on loading filetype plugin files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
932 * INDENT_FILE switch on loading indent files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
933 * FTOFF_FILE switch off file type detection
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
934 * FTPLUGOF_FILE switch off loading settings files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
935 * INDOFF_FILE switch off loading indent files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
936 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
937 /* # define FILETYPE_FILE "filetype.vim" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
938 /* # define FTPLUGIN_FILE "ftplugin.vim" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
939 /* # define INDENT_FILE "indent.vim" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
940 /* # define FTOFF_FILE "ftoff.vim" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
941 /* # define FTPLUGOF_FILE "ftplugof.vim" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
942 /* # define INDOFF_FILE "indoff.vim" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
943
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
944 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
945 * SYS_MENU_FILE Name of the default menu.vim file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
946 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
947 /* # define SYS_MENU_FILE "$VIMRUNTIME/menu.vim" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
948
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
949 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
950 * SYS_OPTWIN_FILE Name of the default optwin.vim file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
951 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
952 #ifndef SYS_OPTWIN_FILE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
953 # define SYS_OPTWIN_FILE "$VIMRUNTIME/optwin.vim"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
954 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
955
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
956 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
957 * SYNTAX_FNAME Name of a syntax file, where %s is the syntax name.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
958 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
959 /* #define SYNTAX_FNAME "/foo/%s.vim" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
960
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
961 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
962 * RUNTIME_DIRNAME Generic name for the directory of the runtime files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
963 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
964 #ifndef RUNTIME_DIRNAME
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
965 # define RUNTIME_DIRNAME "runtime"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
966 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
967
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
968 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
969 * RUNTIME_GLOBAL Directory name for global Vim runtime directory.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
970 * Don't define this if the preprocessor can't handle
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
971 * string concatenation.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
972 * Also set by "--with-global-runtime" configure argument.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
973 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
974 /* #define RUNTIME_GLOBAL "/etc/vim" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
975
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
976 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
977 * MODIFIED_BY Name of who modified Vim. Required when distributing
4352
04736b4030ec updated for version 7.3.925
Bram Moolenaar <bram@vim.org>
parents: 4301
diff changeset
978 * a modified version of Vim.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
979 * Also from the "--with-modified-by" configure argument.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
980 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
981 /* #define MODIFIED_BY "John Doe" */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
982
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
983 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
984 * Machine dependent:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
985 * ==================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
986 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
987
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
988 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
989 * +fork Unix only: fork() support (detected by configure)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
990 * +system Use system() instead of fork/exec for starting a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
991 * shell. Doesn't work for the GUI!
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
992 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
993 /* #define USE_SYSTEM */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
994
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
995 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
996 * +X11 Unix only. Include code for xterm title saving and X
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
997 * clipboard. Only works if HAVE_X11 is also defined.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
998 */
11
4424b47a0797 updated for version 7.0003
vimboss
parents: 7
diff changeset
999 #if (defined(FEAT_NORMAL) || defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA))
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1000 # define WANT_X11
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1001 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1002
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1003 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1004 * XSMP - X11 Session Management Protocol
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1005 * It may be preferred to disable this if the GUI supports it (e.g.,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1006 * GNOME/KDE) and implement save-yourself etc. through that, but it may also
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1007 * be cleaner to have all SM-aware vims do the same thing (libSM does not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1008 * depend upon X11).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1009 * If your GUI wants to support SM itself, change this ifdef.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1010 * I'm assuming that any X11 implementation will cope with this for now.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1011 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1012 #if defined(HAVE_X11) && defined(WANT_X11) && defined(HAVE_X11_SM_SMLIB_H)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1013 # define USE_XSMP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1014 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1015 #if defined(USE_XSMP_INTERACT) && !defined(USE_XSMP)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1016 # undef USE_XSMP_INTERACT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1017 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1018
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1019 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1020 * +mouse_xterm Unix only: Include code for xterm mouse handling.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1021 * +mouse_dec idem, for Dec mouse handling.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1022 * +mouse_jsbterm idem, for Jsbterm mouse handling.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1023 * +mouse_netterm idem, for Netterm mouse handling.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1024 * (none) MS-DOS mouse support.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1025 * +mouse_gpm Unix only: Include code for Linux console mouse
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1026 * handling.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1027 * +mouse_pterm PTerm mouse support for QNX
3887
c656847932d3 updated for version 7.3.700
Bram Moolenaar <bram@vim.org>
parents: 3746
diff changeset
1028 * +mouse_sgr Unix only: Include code for for SGR-styled mouse.
1620
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
1029 * +mouse_sysmouse Unix only: Include code for FreeBSD and DragonFly
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
1030 * console mouse handling.
3887
c656847932d3 updated for version 7.3.700
Bram Moolenaar <bram@vim.org>
parents: 3746
diff changeset
1031 * +mouse_urxvt Unix only: Include code for for urxvt mosue handling.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1032 * +mouse Any mouse support (any of the above enabled).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1033 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1034 /* OS/2 and Amiga console have no mouse support */
7408
1886f2863437 commit https://github.com/vim/vim/commit/e7fedb6ebe72d9a475aa65109b77d5ed4667067a
Christian Brabandt <cb@256bit.org>
parents: 7208
diff changeset
1035 #if !defined(AMIGA)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1036 # ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1037 # define FEAT_MOUSE_XTERM
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1038 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1039 # ifdef FEAT_BIG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1040 # define FEAT_MOUSE_NET
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1041 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1042 # ifdef FEAT_BIG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1043 # define FEAT_MOUSE_DEC
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1044 # endif
3145
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1045 # ifdef FEAT_BIG
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1046 # define FEAT_MOUSE_URXVT
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1047 # endif
3746
44038a9777aa updated for version 7.3.632
Bram Moolenaar <bram@vim.org>
parents: 3482
diff changeset
1048 # ifdef FEAT_BIG
44038a9777aa updated for version 7.3.632
Bram Moolenaar <bram@vim.org>
parents: 3482
diff changeset
1049 # define FEAT_MOUSE_SGR
44038a9777aa updated for version 7.3.632
Bram Moolenaar <bram@vim.org>
parents: 3482
diff changeset
1050 # endif
8212
05b88224cea1 commit https://github.com/vim/vim/commit/48e330aff911be1c798c88a973af6437a8141fce
Christian Brabandt <cb@256bit.org>
parents: 8163
diff changeset
1051 # if defined(FEAT_NORMAL) && defined(WIN3264)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1052 # define DOS_MOUSE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1053 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1054 # if defined(FEAT_NORMAL) && defined(__QNX__)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1055 # define FEAT_MOUSE_PTERM
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1056 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1057 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1058
4301
b53fa3b43193 updated for version 7.3.900
Bram Moolenaar <bram@vim.org>
parents: 4168
diff changeset
1059 /*
b53fa3b43193 updated for version 7.3.900
Bram Moolenaar <bram@vim.org>
parents: 4168
diff changeset
1060 * Note: Only one of the following may be defined:
b53fa3b43193 updated for version 7.3.900
Bram Moolenaar <bram@vim.org>
parents: 4168
diff changeset
1061 * FEAT_MOUSE_GPM
b53fa3b43193 updated for version 7.3.900
Bram Moolenaar <bram@vim.org>
parents: 4168
diff changeset
1062 * FEAT_SYSMOUSE
b53fa3b43193 updated for version 7.3.900
Bram Moolenaar <bram@vim.org>
parents: 4168
diff changeset
1063 * FEAT_MOUSE_JSB
b53fa3b43193 updated for version 7.3.900
Bram Moolenaar <bram@vim.org>
parents: 4168
diff changeset
1064 * FEAT_MOUSE_PTERM
b53fa3b43193 updated for version 7.3.900
Bram Moolenaar <bram@vim.org>
parents: 4168
diff changeset
1065 */
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1066 #if defined(FEAT_NORMAL) && defined(HAVE_GPM)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1067 # define FEAT_MOUSE_GPM
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1068 #endif
1620
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
1069
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
1070 #if defined(FEAT_NORMAL) && defined(HAVE_SYSMOUSE)
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
1071 # define FEAT_SYSMOUSE
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
1072 #endif
3145
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1073
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1074 /* urxvt is a small variation of mouse_xterm, and shares its code */
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1075 #if defined(FEAT_MOUSE_URXVT) && !defined(FEAT_MOUSE_XTERM)
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1076 # define FEAT_MOUSE_XTERM
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1077 #endif
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1078
3746
44038a9777aa updated for version 7.3.632
Bram Moolenaar <bram@vim.org>
parents: 3482
diff changeset
1079 /* sgr is a small variation of mouse_xterm, and shares its code */
44038a9777aa updated for version 7.3.632
Bram Moolenaar <bram@vim.org>
parents: 3482
diff changeset
1080 #if defined(FEAT_MOUSE_SGR) && !defined(FEAT_MOUSE_XTERM)
44038a9777aa updated for version 7.3.632
Bram Moolenaar <bram@vim.org>
parents: 3482
diff changeset
1081 # define FEAT_MOUSE_XTERM
44038a9777aa updated for version 7.3.632
Bram Moolenaar <bram@vim.org>
parents: 3482
diff changeset
1082 #endif
44038a9777aa updated for version 7.3.632
Bram Moolenaar <bram@vim.org>
parents: 3482
diff changeset
1083
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1084 /* Define FEAT_MOUSE when any of the above is defined or FEAT_GUI. */
1620
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
1085 #if !defined(FEAT_MOUSE_TTY) \
73fe8baea242 updated for version 7.2a
vimboss
parents: 1335
diff changeset
1086 && (defined(FEAT_MOUSE_XTERM) \
3145
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1087 || defined(FEAT_MOUSE_NET) \
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1088 || defined(FEAT_MOUSE_DEC) \
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1089 || defined(DOS_MOUSE) \
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1090 || defined(FEAT_MOUSE_GPM) \
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1091 || defined(FEAT_MOUSE_JSB) \
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1092 || defined(FEAT_MOUSE_PTERM) \
98a05814f1b4 updated for version 7.3.343
Bram Moolenaar <bram@vim.org>
parents: 2834
diff changeset
1093 || defined(FEAT_SYSMOUSE) \
3746
44038a9777aa updated for version 7.3.632
Bram Moolenaar <bram@vim.org>
parents: 3482
diff changeset
1094 || defined(FEAT_MOUSE_URXVT) \
44038a9777aa updated for version 7.3.632
Bram Moolenaar <bram@vim.org>
parents: 3482
diff changeset
1095 || defined(FEAT_MOUSE_SGR))
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1096 # define FEAT_MOUSE_TTY /* include non-GUI mouse support */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1097 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1098 #if !defined(FEAT_MOUSE) && (defined(FEAT_MOUSE_TTY) || defined(FEAT_GUI))
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1099 # define FEAT_MOUSE /* include generic mouse support */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1100 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1101
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1102 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1103 * +clipboard Clipboard support. Always used for the GUI.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1104 * +xterm_clipboard Unix only: Include code for handling the clipboard
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1105 * in an xterm like in the GUI.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1106 */
4168
ff193256398a updated for version 7.3.836
Bram Moolenaar <bram@vim.org>
parents: 4133
diff changeset
1107
ff193256398a updated for version 7.3.836
Bram Moolenaar <bram@vim.org>
parents: 4133
diff changeset
1108 #ifdef FEAT_CYGWIN_WIN32_CLIPBOARD
ff193256398a updated for version 7.3.836
Bram Moolenaar <bram@vim.org>
parents: 4133
diff changeset
1109 # define FEAT_CLIPBOARD
ff193256398a updated for version 7.3.836
Bram Moolenaar <bram@vim.org>
parents: 4133
diff changeset
1110 #endif
ff193256398a updated for version 7.3.836
Bram Moolenaar <bram@vim.org>
parents: 4133
diff changeset
1111
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1112 #ifdef FEAT_GUI
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1113 # ifndef FEAT_CLIPBOARD
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1114 # define FEAT_CLIPBOARD
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1115 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1116 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1117
5735
50dbef5e774a updated for version 7.4.212
Bram Moolenaar <bram@vim.org>
parents: 5710
diff changeset
1118 #if defined(FEAT_NORMAL) \
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1119 && (defined(UNIX) || defined(VMS)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1120 && defined(WANT_X11) && defined(HAVE_X11)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1121 # define FEAT_XCLIPBOARD
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1122 # ifndef FEAT_CLIPBOARD
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1123 # define FEAT_CLIPBOARD
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1124 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1125 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1126
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1127 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1128 * +dnd Drag'n'drop support. Always used for the GTK+ GUI.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1129 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1130 #if defined(FEAT_CLIPBOARD) && defined(FEAT_GUI_GTK)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1131 # define FEAT_DND
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1132 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1133
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1134 #if defined(FEAT_GUI_MSWIN) && defined(FEAT_SMALL)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1135 # define MSWIN_FIND_REPLACE /* include code for find/replace dialog */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1136 # define MSWIN_FR_BUFSIZE 256
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1137 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1138
29
ac33b7c03fac updated for version 7.0018
vimboss
parents: 16
diff changeset
1139 #if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_MOTIF) \
574
25a70b1cd2da updated for version 7.0163
vimboss
parents: 532
diff changeset
1140 || defined(MSWIN_FIND_REPLACE)
29
ac33b7c03fac updated for version 7.0018
vimboss
parents: 16
diff changeset
1141 # define FIND_REPLACE_DIALOG 1
ac33b7c03fac updated for version 7.0018
vimboss
parents: 16
diff changeset
1142 #endif
ac33b7c03fac updated for version 7.0018
vimboss
parents: 16
diff changeset
1143
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1144 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1145 * +clientserver Remote control via the remote_send() function
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1146 * and the --remote argument
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1147 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1148 #if (defined(WIN32) || defined(FEAT_XCLIPBOARD)) && defined(FEAT_EVAL)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1149 # define FEAT_CLIENTSERVER
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1150 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1151
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1152 /*
12837
963cdeb42c41 patch 8.0.1295: cannot automatically get a server name in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12716
diff changeset
1153 * +autoservername Automatically generate a servername for clientserver
963cdeb42c41 patch 8.0.1295: cannot automatically get a server name in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12716
diff changeset
1154 * when --servername is not passed on the command line.
963cdeb42c41 patch 8.0.1295: cannot automatically get a server name in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12716
diff changeset
1155 */
963cdeb42c41 patch 8.0.1295: cannot automatically get a server name in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12716
diff changeset
1156 #if defined(FEAT_CLIENTSERVER) && !defined(FEAT_AUTOSERVERNAME)
12841
174e0c952b46 patch 8.0.1297: +autoservername does not show enabled on MS-Windows
Christian Brabandt <cb@256bit.org>
parents: 12837
diff changeset
1157 # ifdef WIN3264
174e0c952b46 patch 8.0.1297: +autoservername does not show enabled on MS-Windows
Christian Brabandt <cb@256bit.org>
parents: 12837
diff changeset
1158 /* Always enabled on MS-Windows. */
174e0c952b46 patch 8.0.1297: +autoservername does not show enabled on MS-Windows
Christian Brabandt <cb@256bit.org>
parents: 12837
diff changeset
1159 # define FEAT_AUTOSERVERNAME
174e0c952b46 patch 8.0.1297: +autoservername does not show enabled on MS-Windows
Christian Brabandt <cb@256bit.org>
parents: 12837
diff changeset
1160 # else
174e0c952b46 patch 8.0.1297: +autoservername does not show enabled on MS-Windows
Christian Brabandt <cb@256bit.org>
parents: 12837
diff changeset
1161 /* Enable here if you don't use configure. */
12837
963cdeb42c41 patch 8.0.1295: cannot automatically get a server name in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12716
diff changeset
1162 /* # define FEAT_AUTOSERVERNAME */
12841
174e0c952b46 patch 8.0.1297: +autoservername does not show enabled on MS-Windows
Christian Brabandt <cb@256bit.org>
parents: 12837
diff changeset
1163 # endif
12837
963cdeb42c41 patch 8.0.1295: cannot automatically get a server name in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12716
diff changeset
1164 #endif
963cdeb42c41 patch 8.0.1295: cannot automatically get a server name in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12716
diff changeset
1165
963cdeb42c41 patch 8.0.1295: cannot automatically get a server name in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12716
diff changeset
1166 /*
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1167 * +termresponse send t_RV to obtain terminal response. Used for xterm
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1168 * to check if mouse dragging can be used and if term
1204
a3c21128b246 updated for version 7.1b
vimboss
parents: 1146
diff changeset
1169 * codes can be obtained.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1170 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1171 #if (defined(FEAT_NORMAL) || defined(FEAT_MOUSE)) && defined(HAVE_TGETENT)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1172 # define FEAT_TERMRESPONSE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1173 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1174
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1175 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1176 * cursor shape Adjust the shape of the cursor to the mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1177 * mouse shape Adjust the shape of the mouse pointer to the mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1178 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1179 #ifdef FEAT_NORMAL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1180 /* MS-DOS console and Win32 console can change cursor shape */
8212
05b88224cea1 commit https://github.com/vim/vim/commit/48e330aff911be1c798c88a973af6437a8141fce
Christian Brabandt <cb@256bit.org>
parents: 8163
diff changeset
1181 # if defined(WIN3264) && !defined(FEAT_GUI_W32)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1182 # define MCH_CURSOR_SHAPE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1183 # endif
8163
d8a8e86f39ad commit https://github.com/vim/vim/commit/e89ff0472bc33779583d48e8d38a5e794d05613a
Christian Brabandt <cb@256bit.org>
parents: 8140
diff changeset
1184 # if defined(FEAT_GUI_W32) || defined(FEAT_GUI_MOTIF) \
574
25a70b1cd2da updated for version 7.0163
vimboss
parents: 532
diff changeset
1185 || defined(FEAT_GUI_ATHENA) || defined(FEAT_GUI_GTK) \
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1186 || defined(FEAT_GUI_PHOTON)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1187 # define FEAT_MOUSESHAPE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1188 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1189 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1190
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1191 /* GUI and some consoles can change the shape of the cursor. The code is also
2378
85b7dc8da5eb Add the 'concealcursor' option to decide when the cursor line is to be
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
1192 * needed for the 'mouseshape' and 'concealcursor' options. */
85b7dc8da5eb Add the 'concealcursor' option to decide when the cursor line is to be
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
1193 #if defined(FEAT_GUI) \
85b7dc8da5eb Add the 'concealcursor' option to decide when the cursor line is to be
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
1194 || defined(MCH_CURSOR_SHAPE) \
85b7dc8da5eb Add the 'concealcursor' option to decide when the cursor line is to be
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
1195 || defined(FEAT_MOUSESHAPE) \
85b7dc8da5eb Add the 'concealcursor' option to decide when the cursor line is to be
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
1196 || defined(FEAT_CONCEAL) \
500
4772a5e3f9fa updated for version 7.0138
vimboss
parents: 377
diff changeset
1197 || (defined(UNIX) && defined(FEAT_NORMAL))
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1198 # define CURSOR_SHAPE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1199 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1200
16
3ba373b54370 updated for version 7.0008
vimboss
parents: 14
diff changeset
1201 #if defined(FEAT_MZSCHEME) && (defined(FEAT_GUI_W32) || defined(FEAT_GUI_GTK) \
3ba373b54370 updated for version 7.0008
vimboss
parents: 14
diff changeset
1202 || defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA) \
574
25a70b1cd2da updated for version 7.0163
vimboss
parents: 532
diff changeset
1203 || defined(FEAT_GUI_MAC))
16
3ba373b54370 updated for version 7.0008
vimboss
parents: 14
diff changeset
1204 # define MZSCHEME_GUI_THREADS
3ba373b54370 updated for version 7.0008
vimboss
parents: 14
diff changeset
1205 #endif
3ba373b54370 updated for version 7.0008
vimboss
parents: 14
diff changeset
1206
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1207 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1208 * +ARP Amiga only. Use arp.library, DOS 2.0 is not required.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1209 */
1030
d4bc24e6a281 updated for version 7.0-156
vimboss
parents: 844
diff changeset
1210 #if !defined(NO_ARP) && !defined(__amigaos4__)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1211 # define FEAT_ARP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1212 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1213
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1214 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1215 * +GUI_Athena To compile Vim with or without the GUI (gvim) you have
303
6a21eb563c34 updated for version 7.0080
vimboss
parents: 188
diff changeset
1216 * +GUI_Motif to edit the Makefile.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1217 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1218
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1219 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1220 * +ole Win32 OLE automation: Use Makefile.ovc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1221 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1222
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1223 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1224 * These features can only be included by using a configure argument. See the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1225 * Makefile for a line to uncomment.
2330
ea4bf6df1a8a Whitespace cleanup.
Bram Moolenaar <bram@vim.org>
parents: 2320
diff changeset
1226 * +lua Lua interface: "--enable-luainterp"
14
946da5994c01 updated for version 7.0006
vimboss
parents: 13
diff changeset
1227 * +mzscheme MzScheme interface: "--enable-mzscheme"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1228 * +perl Perl interface: "--enable-perlinterp"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1229 * +python Python interface: "--enable-pythoninterp"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1230 * +tcl TCL interface: "--enable-tclinterp"
1204
a3c21128b246 updated for version 7.1b
vimboss
parents: 1146
diff changeset
1231 * +sun_workshop Sun Workshop integration
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1232 * +netbeans_intg Netbeans integration
7743
6069f43cea4e commit https://github.com/vim/vim/commit/e0874f8cbcddfcf9965a85ba35199964efb1d01a
Christian Brabandt <cb@256bit.org>
parents: 7693
diff changeset
1233 * +channel Inter process communication
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1234 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1235
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1236 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1237 * These features are automatically detected:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1238 * +terminfo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1239 * +tgetent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1240 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1241
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1242 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1243 * The Sun Workshop features currently only work with Motif.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1244 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1245 #if !defined(FEAT_GUI_MOTIF) && defined(FEAT_SUN_WORKSHOP)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1246 # undef FEAT_SUN_WORKSHOP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1247 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1248
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1249 /*
13553
04019fc3de93 patch 8.0.1650: too many #ifdefs
Christian Brabandt <cb@256bit.org>
parents: 13422
diff changeset
1250 * The Netbeans feature requires +eval.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1251 */
13553
04019fc3de93 patch 8.0.1650: too many #ifdefs
Christian Brabandt <cb@256bit.org>
parents: 13422
diff changeset
1252 #if !defined(FEAT_EVAL) && defined(FEAT_NETBEANS_INTG)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1253 # undef FEAT_NETBEANS_INTG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1254 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1255
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1256 /*
7957
b74549818500 commit https://github.com/vim/vim/commit/835dc636a5350f610b62f110227d2363b5b2880a
Christian Brabandt <cb@256bit.org>
parents: 7850
diff changeset
1257 * The +channel feature requires +eval.
7743
6069f43cea4e commit https://github.com/vim/vim/commit/e0874f8cbcddfcf9965a85ba35199964efb1d01a
Christian Brabandt <cb@256bit.org>
parents: 7693
diff changeset
1258 */
8493
caed4b2d305f commit https://github.com/vim/vim/commit/509ce2a558e7e0c03242e32e844255af52f1c821
Christian Brabandt <cb@256bit.org>
parents: 8281
diff changeset
1259 #if !defined(FEAT_EVAL) && defined(FEAT_JOB_CHANNEL)
caed4b2d305f commit https://github.com/vim/vim/commit/509ce2a558e7e0c03242e32e844255af52f1c821
Christian Brabandt <cb@256bit.org>
parents: 8281
diff changeset
1260 # undef FEAT_JOB_CHANNEL
7957
b74549818500 commit https://github.com/vim/vim/commit/835dc636a5350f610b62f110227d2363b5b2880a
Christian Brabandt <cb@256bit.org>
parents: 7850
diff changeset
1261 #endif
b74549818500 commit https://github.com/vim/vim/commit/835dc636a5350f610b62f110227d2363b5b2880a
Christian Brabandt <cb@256bit.org>
parents: 7850
diff changeset
1262
b74549818500 commit https://github.com/vim/vim/commit/835dc636a5350f610b62f110227d2363b5b2880a
Christian Brabandt <cb@256bit.org>
parents: 7850
diff changeset
1263 /*
11621
b8299e742f41 patch 8.0.0693: no terminal emulator support
Christian Brabandt <cb@256bit.org>
parents: 10134
diff changeset
1264 * +terminal ":terminal" command. Runs a terminal in a window.
12212
3ed8bcc9a013 patch 8.0.0986: terminal feature always requires multi-byte feature
Christian Brabandt <cb@256bit.org>
parents: 12076
diff changeset
1265 * requires +channel and +multibyte
11621
b8299e742f41 patch 8.0.0693: no terminal emulator support
Christian Brabandt <cb@256bit.org>
parents: 10134
diff changeset
1266 */
12212
3ed8bcc9a013 patch 8.0.0986: terminal feature always requires multi-byte feature
Christian Brabandt <cb@256bit.org>
parents: 12076
diff changeset
1267 #if defined(FEAT_TERMINAL) && \
3ed8bcc9a013 patch 8.0.0986: terminal feature always requires multi-byte feature
Christian Brabandt <cb@256bit.org>
parents: 12076
diff changeset
1268 !(defined(FEAT_JOB_CHANNEL) && defined(FEAT_MBYTE))
11621
b8299e742f41 patch 8.0.0693: no terminal emulator support
Christian Brabandt <cb@256bit.org>
parents: 10134
diff changeset
1269 # undef FEAT_TERMINAL
b8299e742f41 patch 8.0.0693: no terminal emulator support
Christian Brabandt <cb@256bit.org>
parents: 10134
diff changeset
1270 #endif
12076
ca4931a20f8c patch 8.0.0918: cannot get terminal window cursor shape or attributes
Christian Brabandt <cb@256bit.org>
parents: 11621
diff changeset
1271 #if defined(FEAT_TERMINAL) && !defined(CURSOR_SHAPE)
ca4931a20f8c patch 8.0.0918: cannot get terminal window cursor shape or attributes
Christian Brabandt <cb@256bit.org>
parents: 11621
diff changeset
1272 # define CURSOR_SHAPE
ca4931a20f8c patch 8.0.0918: cannot get terminal window cursor shape or attributes
Christian Brabandt <cb@256bit.org>
parents: 11621
diff changeset
1273 #endif
11621
b8299e742f41 patch 8.0.0693: no terminal emulator support
Christian Brabandt <cb@256bit.org>
parents: 10134
diff changeset
1274
b8299e742f41 patch 8.0.0693: no terminal emulator support
Christian Brabandt <cb@256bit.org>
parents: 10134
diff changeset
1275 /*
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1276 * +signs Allow signs to be displayed to the left of text lines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1277 * Adds the ":sign" command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1278 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1279 #if defined(FEAT_BIG) || defined(FEAT_SUN_WORKSHOP) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1280 || defined(FEAT_NETBEANS_INTG)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1281 # define FEAT_SIGNS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1282 # if ((defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1283 && defined(HAVE_X11_XPM_H)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1284 || defined(FEAT_GUI_GTK) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1285 || (defined(WIN32) && defined(FEAT_GUI))
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1286 # define FEAT_SIGN_ICONS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1287 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1288 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1289
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1290 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1291 * +balloon_eval Allow balloon expression evaluation. Used with a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1292 * debugger and for tooltips.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1293 * Only for GUIs where it was implemented.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1294 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1295 #if (defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1296 || defined(FEAT_GUI_GTK) || defined(FEAT_GUI_W32)) \
844
d3bbb5dd3913 updated for version 7.0f02
vimboss
parents: 838
diff changeset
1297 && ( ((defined(FEAT_TOOLBAR) || defined(FEAT_GUI_TABLINE)) \
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1298 && !defined(FEAT_GUI_GTK) && !defined(FEAT_GUI_W32)) \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1299 || defined(FEAT_SUN_WORKSHOP) \
188
041a413d626d updated for version 7.0057
vimboss
parents: 177
diff changeset
1300 || defined(FEAT_NETBEANS_INTG) || defined(FEAT_EVAL))
12871
1a450ce6980c patch 8.0.1312: balloon_show() only works in terminal when compiled with GUI
Christian Brabandt <cb@256bit.org>
parents: 12865
diff changeset
1301 # define FEAT_BEVAL_GUI
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1302 # if !defined(FEAT_XFONTSET) && !defined(FEAT_GUI_GTK) \
574
25a70b1cd2da updated for version 7.0163
vimboss
parents: 532
diff changeset
1303 && !defined(FEAT_GUI_W32)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1304 # define FEAT_XFONTSET
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1305 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1306 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1307
12871
1a450ce6980c patch 8.0.1312: balloon_show() only works in terminal when compiled with GUI
Christian Brabandt <cb@256bit.org>
parents: 12865
diff changeset
1308 #if defined(FEAT_BEVAL_GUI) && (defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA))
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1309 # define FEAT_BEVAL_TIP /* balloon eval used for toolbar tooltip */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1310 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1311
12865
ebb4f6c93598 patch 8.0.1309: cannot use 'balloonexpr' in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12841
diff changeset
1312 /*
ebb4f6c93598 patch 8.0.1309: cannot use 'balloonexpr' in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12841
diff changeset
1313 * +balloon_eval_term Allow balloon expression evaluation in the terminal.
ebb4f6c93598 patch 8.0.1309: cannot use 'balloonexpr' in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12841
diff changeset
1314 */
13422
6dbf1e9ebd1f patch 8.0.1585: enabling beval_term feature in Win32 GUI
Christian Brabandt <cb@256bit.org>
parents: 13416
diff changeset
1315 #if defined(FEAT_HUGE) && defined(FEAT_TIMERS) && \
6dbf1e9ebd1f patch 8.0.1585: enabling beval_term feature in Win32 GUI
Christian Brabandt <cb@256bit.org>
parents: 13416
diff changeset
1316 (defined(UNIX) || (defined(WIN32) && !defined(FEAT_GUI_W32)))
12871
1a450ce6980c patch 8.0.1312: balloon_show() only works in terminal when compiled with GUI
Christian Brabandt <cb@256bit.org>
parents: 12865
diff changeset
1317 # define FEAT_BEVAL_TERM
1a450ce6980c patch 8.0.1312: balloon_show() only works in terminal when compiled with GUI
Christian Brabandt <cb@256bit.org>
parents: 12865
diff changeset
1318 #endif
1a450ce6980c patch 8.0.1312: balloon_show() only works in terminal when compiled with GUI
Christian Brabandt <cb@256bit.org>
parents: 12865
diff changeset
1319
1a450ce6980c patch 8.0.1312: balloon_show() only works in terminal when compiled with GUI
Christian Brabandt <cb@256bit.org>
parents: 12865
diff changeset
1320 #if defined(FEAT_BEVAL_GUI) || defined(FEAT_BEVAL_TERM)
1a450ce6980c patch 8.0.1312: balloon_show() only works in terminal when compiled with GUI
Christian Brabandt <cb@256bit.org>
parents: 12865
diff changeset
1321 # define FEAT_BEVAL
12865
ebb4f6c93598 patch 8.0.1309: cannot use 'balloonexpr' in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12841
diff changeset
1322 #endif
ebb4f6c93598 patch 8.0.1309: cannot use 'balloonexpr' in a terminal
Christian Brabandt <cb@256bit.org>
parents: 12841
diff changeset
1323
692
a28f83d37113 updated for version 7.0208
vimboss
parents: 685
diff changeset
1324 /* both Motif and Athena are X11 and share some code */
a28f83d37113 updated for version 7.0208
vimboss
parents: 685
diff changeset
1325 #if defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_ATHENA)
a28f83d37113 updated for version 7.0208
vimboss
parents: 685
diff changeset
1326 # define FEAT_GUI_X11
a28f83d37113 updated for version 7.0208
vimboss
parents: 685
diff changeset
1327 #endif
a28f83d37113 updated for version 7.0208
vimboss
parents: 685
diff changeset
1328
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1329 #if defined(FEAT_SUN_WORKSHOP) || defined(FEAT_NETBEANS_INTG)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1330 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1331 * The following features are (currently) only used by Sun Visual WorkShop 6
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1332 * and NetBeans. These features could be used with other integrations with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1333 * debuggers so I've used separate feature defines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1334 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1335 # if !defined(FEAT_MENU)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1336 # define FEAT_MENU
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1337 # endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1338 #endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1339
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1340 #if defined(FEAT_SUN_WORKSHOP)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1341 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1342 * Use an alternative method of X input for a secondary
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1343 * command input.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1344 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1345 # define ALT_X_INPUT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1346
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1347 /*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1348 * +footer Motif only: Add a message area at the bottom of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1349 * main window area.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1350 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1351 # define FEAT_FOOTER
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1352
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1353 #endif
820
57c7403f6599 updated for version 7.0c11
vimboss
parents: 819
diff changeset
1354
57c7403f6599 updated for version 7.0c11
vimboss
parents: 819
diff changeset
1355 /*
57c7403f6599 updated for version 7.0c11
vimboss
parents: 819
diff changeset
1356 * +autochdir 'autochdir' option.
57c7403f6599 updated for version 7.0c11
vimboss
parents: 819
diff changeset
1357 */
57c7403f6599 updated for version 7.0c11
vimboss
parents: 819
diff changeset
1358 #if defined(FEAT_SUN_WORKSHOP) || defined(FEAT_NETBEANS_INTG) \
57c7403f6599 updated for version 7.0c11
vimboss
parents: 819
diff changeset
1359 || defined(FEAT_BIG)
57c7403f6599 updated for version 7.0c11
vimboss
parents: 819
diff changeset
1360 # define FEAT_AUTOCHDIR
57c7403f6599 updated for version 7.0c11
vimboss
parents: 819
diff changeset
1361 #endif
2214
f8222d1f9a73 Included patch for persistent undo. Lots of changes and added test.
Bram Moolenaar <bram@vim.org>
parents: 2209
diff changeset
1362
f8222d1f9a73 Included patch for persistent undo. Lots of changes and added test.
Bram Moolenaar <bram@vim.org>
parents: 2209
diff changeset
1363 /*
f8222d1f9a73 Included patch for persistent undo. Lots of changes and added test.
Bram Moolenaar <bram@vim.org>
parents: 2209
diff changeset
1364 * +persistent_undo 'undofile', 'undodir' options, :wundo and :rundo, and
f8222d1f9a73 Included patch for persistent undo. Lots of changes and added test.
Bram Moolenaar <bram@vim.org>
parents: 2209
diff changeset
1365 * implementation.
f8222d1f9a73 Included patch for persistent undo. Lots of changes and added test.
Bram Moolenaar <bram@vim.org>
parents: 2209
diff changeset
1366 */
f8222d1f9a73 Included patch for persistent undo. Lots of changes and added test.
Bram Moolenaar <bram@vim.org>
parents: 2209
diff changeset
1367 #ifdef FEAT_NORMAL
f8222d1f9a73 Included patch for persistent undo. Lots of changes and added test.
Bram Moolenaar <bram@vim.org>
parents: 2209
diff changeset
1368 # define FEAT_PERSISTENT_UNDO
f8222d1f9a73 Included patch for persistent undo. Lots of changes and added test.
Bram Moolenaar <bram@vim.org>
parents: 2209
diff changeset
1369 #endif
3482
fe7bf24804e1 updated for version 7.3.505
Bram Moolenaar <bram@vim.org>
parents: 3145
diff changeset
1370
fe7bf24804e1 updated for version 7.3.505
Bram Moolenaar <bram@vim.org>
parents: 3145
diff changeset
1371 /*
fe7bf24804e1 updated for version 7.3.505
Bram Moolenaar <bram@vim.org>
parents: 3145
diff changeset
1372 * +filterpipe
fe7bf24804e1 updated for version 7.3.505
Bram Moolenaar <bram@vim.org>
parents: 3145
diff changeset
1373 */
fe7bf24804e1 updated for version 7.3.505
Bram Moolenaar <bram@vim.org>
parents: 3145
diff changeset
1374 #if (defined(UNIX) && !defined(USE_SYSTEM)) \
fe7bf24804e1 updated for version 7.3.505
Bram Moolenaar <bram@vim.org>
parents: 3145
diff changeset
1375 || (defined(WIN3264) && defined(FEAT_GUI_W32))
fe7bf24804e1 updated for version 7.3.505
Bram Moolenaar <bram@vim.org>
parents: 3145
diff changeset
1376 # define FEAT_FILTERPIPE
fe7bf24804e1 updated for version 7.3.505
Bram Moolenaar <bram@vim.org>
parents: 3145
diff changeset
1377 #endif
13314
65c3e8259124 patch 8.0.1531: cannot use 24 bit colors in MS-Windows console
Christian Brabandt <cb@256bit.org>
parents: 12948
diff changeset
1378
65c3e8259124 patch 8.0.1531: cannot use 24 bit colors in MS-Windows console
Christian Brabandt <cb@256bit.org>
parents: 12948
diff changeset
1379 /*
65c3e8259124 patch 8.0.1531: cannot use 24 bit colors in MS-Windows console
Christian Brabandt <cb@256bit.org>
parents: 12948
diff changeset
1380 * +vtp: Win32 virtual console.
65c3e8259124 patch 8.0.1531: cannot use 24 bit colors in MS-Windows console
Christian Brabandt <cb@256bit.org>
parents: 12948
diff changeset
1381 */
65c3e8259124 patch 8.0.1531: cannot use 24 bit colors in MS-Windows console
Christian Brabandt <cb@256bit.org>
parents: 12948
diff changeset
1382 #if !defined(FEAT_GUI) && defined(WIN3264)
65c3e8259124 patch 8.0.1531: cannot use 24 bit colors in MS-Windows console
Christian Brabandt <cb@256bit.org>
parents: 12948
diff changeset
1383 # define FEAT_VTP
65c3e8259124 patch 8.0.1531: cannot use 24 bit colors in MS-Windows console
Christian Brabandt <cb@256bit.org>
parents: 12948
diff changeset
1384 #endif