annotate src/feature.h @ 3838:949bd4cef950

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