annotate src/feature.h @ 13380:69517d67421f v8.0.1564

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