annotate src/feature.h @ 14175:2ad722003b36 v8.1.0105

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