Compare commits

...

213 Commits

Author SHA1 Message Date
Bram Moolenaar
d9ea9069f5 patch 7.4.1237
Problem:    Can't translate message without adding a line break.
Solution:   Join the two parts of the message.
2016-02-02 12:38:02 +01:00
Bram Moolenaar
885f24fbca patch 7.4.1236
Problem:    When "syntax manual" was used switching between buffers removes
            the highlighting.
Solution:   Set the syntax option without changing the value. (Anton
            Lindqvist)
2016-02-01 22:54:46 +01:00
Bram Moolenaar
11e0afa00a patch 7.4.1235
Problem:    Missing change to eval.c.
Solution:   Include that change.
2016-02-01 22:41:00 +01:00
Bram Moolenaar
5e9b2fa9bb Updated runtime files and translations. 2016-02-01 22:37:05 +01:00
Bram Moolenaar
488a130ea2 patch 7.4.1234
Problem:    Demo server only runs with Python 2.
Solution:   Make it run with Python 3 as well. (Ken Takata)
2016-02-01 22:01:10 +01:00
Bram Moolenaar
14ad611ca4 patch 7.4.1233
Problem:    Channel command may cause a crash.
Solution:   Check for NULL argument. (Damien)
2016-02-01 21:47:13 +01:00
Bram Moolenaar
1357caf31f patch 7.4.1232
Problem:    Compiler warnings when the Sniff feature is enabled.
Solution:   Add UNUSED.
2016-02-01 21:40:14 +01:00
Bram Moolenaar
19d2f15898 patch 7.4.1231
Problem:    JSON messages are not parsed properly.
Solution:   Queue received messages.
2016-02-01 21:38:19 +01:00
Bram Moolenaar
ca568aeec6 patch 7.4.1230
Problem:    Win32: opening a channel may hang.  Not checking for messages
            while waiting for characters.
Solution:   Add a zero timeout.  Call parse_queued_messages(). (Yasuhiro
            Matsumoto)
2016-02-01 21:32:58 +01:00
Bram Moolenaar
fb1f62691e patch 7.4.1229
Problem:    "eval" and "expr" channel commands don't work yet.
Solution:   Implement them.  Update the error numbers.  Also add "redraw".
2016-01-31 20:24:32 +01:00
Bram Moolenaar
155500077c patch 7.4.1228
Problem:    copy() and deepcopy() fail with special variables. (Nikolai
            Pavlov)
Solution:   Make it work.  Add a test.  Closes #614.
2016-01-31 18:45:24 +01:00
Bram Moolenaar
448a22549b patch 7.4.1227
Problem:    Compiler warnings.
Solution:   Add UNUSED.  Add type cast. (Yegappan Lakshmanan)
2016-01-31 18:08:34 +01:00
Bram Moolenaar
3803bad99d patch 7.4.1226
Problem:    GRESOURCE_HDR is unused.
Solution:   Remove it. (Kazunobu Kuriyama)
2016-01-31 17:56:07 +01:00
Bram Moolenaar
d14e00ea67 patch 7.4.1225
Problem:    Still a few old style function declarations.
Solution:   Make them new style. (Hirohito Higashi)
2016-01-31 17:30:51 +01:00
Bram Moolenaar
bbb3339dbf patch 7.4.1224
Problem:    Build problems with GTK on BSD. (Mike Williams)
Solution:   Don't use "$<". Skip building gui_gtk_gresources.h when it doesn't
            work. (Kazunobu Kuriyama)
2016-01-31 16:37:33 +01:00
Bram Moolenaar
a542c680a8 patch 7.4.1223
Problem:    Crash when setting v:errors to a number.
Solution:   Free the typval without assuming its type. (Yasuhiro Matsumoto)
2016-01-31 16:28:04 +01:00
Bram Moolenaar
e2c3810c2a patch 7.4.1222
Problem:    ":normal" command and others missing in tiny build.
Solution:   Graduate FEAT_EX_EXTRA.
2016-01-31 14:55:40 +01:00
Bram Moolenaar
3c124e3ac8 patch 7.4.1221
Problem:    Including netbeans and channel support in small and tiny builds.
            Build fails with some interfaces.
Solution:   Only include these features in small build and above.  Let
            configure fail if trying to enable an interface that won't build.
2016-01-31 14:36:58 +01:00
Bram Moolenaar
fa399af7ec patch 7.4.1220
Problem:    Warnings for unused variables in tiny build. (Tony Mechelynck)
Solution:   Move declarations inside #ifdef. (Hirohito Higashi)
2016-01-31 14:13:21 +01:00
Bram Moolenaar
937204a917 patch 7.4.1219
Problem:    Build fails with +channel but without +float.
Solution:   Add #ifdef.
2016-01-30 23:37:38 +01:00
Bram Moolenaar
779a7759ad patch 7.4.1218
Problem:    Missing change in configure.  More changes for function style.
Solution:   Avoid the typos.
2016-01-30 23:26:34 +01:00
Bram Moolenaar
20fb9f3464 patch 7.4.1217
Problem:    Execution of command on channel doesn't work yet.
Solution:   Implement the "ex" and "normal" commands.
2016-01-30 23:20:33 +01:00
Bram Moolenaar
ba4ef2757c patch 7.4.1216
Problem:    Still using HAVE_STDARG_H.
Solution:   Assume it's always defined.
2016-01-30 21:48:49 +01:00
Bram Moolenaar
b638a7be95 patch 7.4.1215
Problem:    Using old style function declarations.
Solution:   Change to new style function declarations. (script by Hirohito
            Higashi)
2016-01-30 21:29:58 +01:00
Bram Moolenaar
764b23c8fd patch 7.4.1214
Problem:    Using old style function declarations.
Solution:   Change to new style function declarations. (script by Hirohito
            Higashi)
2016-01-30 21:10:09 +01:00
Bram Moolenaar
055409764c patch 7.4.1213
Problem:    Using old style function declarations.
Solution:   Change to new style function declarations. (script by Hirohito
            Higashi)
2016-01-30 20:31:25 +01:00
Bram Moolenaar
c1ab67674a patch 7.4.1212
Problem:    Can't build with Motif.
Solution:   Fix function declaration.(Dominique Pelle)
2016-01-30 19:45:49 +01:00
Bram Moolenaar
9b57814db1 patch 7.4.1211
Problem:    Using old style function declarations.
Solution:   Change to new style function declarations. (script by Hirohito
            Higashi)
2016-01-30 19:39:49 +01:00
Bram Moolenaar
52ea13da0f patch 7.4.1210
Problem:    Using old style function declarations.
Solution:   Change to new style function declarations. (script by Hirohito
            Higashi)
2016-01-30 18:51:09 +01:00
Bram Moolenaar
02fdaeaa69 patch 7.4.1209
Problem:    Can't build with Athena.
Solution:   Fix function declarations.
2016-01-30 18:13:55 +01:00
Bram Moolenaar
68c2f638e6 patch 7.4.1208
Problem:    Using old style function declarations.
Solution:   Change to new style function declarations. (script by Hirohito
            Higashi)
2016-01-30 17:24:07 +01:00
Bram Moolenaar
66f948e928 patch 7.4.1207
Problem:    Using old style function declarations.
Solution:   Change to new style function declarations. (script by Hirohito
            Higashi)
2016-01-30 16:39:25 +01:00
Bram Moolenaar
78c0b7d43e patch 7.4.1206
Problem:    Using old style function declarations.
Solution:   Change to new style function declarations. (script by Hirohito
            Higashi)
2016-01-30 15:52:46 +01:00
Bram Moolenaar
7454a06e26 patch 7.4.1205
Problem:    Using old style function declarations.
Solution:   Change to new style function declarations. (script by Hirohito
            Higashi)
2016-01-30 15:14:10 +01:00
Bram Moolenaar
305598b712 patch 7.4.1204
Problem:    Latin1 characters cause encoding conversion.
Solution:   Remove the characters.
2016-01-30 13:53:36 +01:00
Bram Moolenaar
4349c57543 patch 7.4.1203
Problem:    Still more files still using __ARGS.
Solution:   Remove __ARGS in really the last files.
2016-01-30 13:28:28 +01:00
Bram Moolenaar
3e96c3d241 patch 7.4.1202
Problem:    Still one more file still using __ARGS.
Solution:   Remove __ARGS in the last file. (script by Hirohito Higashi)
            (closes #612)
2016-01-29 23:46:21 +01:00
Bram Moolenaar
569850724e patch 7.4.1201
Problem:    One more file still using __ARGS.
Solution:   Remove __ARGS in the last file. (script by Hirohito Higashi)
2016-01-29 23:23:06 +01:00
Bram Moolenaar
d99df423c5 patch 7.4.1200
Problem:    Still using __ARGS.
Solution:   Remove __ARGS in several files. (script by Hirohito Higashi)
2016-01-29 23:20:40 +01:00
Bram Moolenaar
baaa7e9ec7 patch 7.4.1199
Problem:    Still using __ARGS.
Solution:   Remove __ARGS in several files. (script by Hirohito Higashi)
2016-01-29 22:47:03 +01:00
Bram Moolenaar
92b8b2d307 patch 7.4.1198
Problem:    Still using __ARGS.
Solution:   Remove __ARGS in several files. (script by Hirohito Higashi)
            Also remove use of HAVE_STDARG_H.
2016-01-29 22:36:45 +01:00
Bram Moolenaar
d25c16e2f2 patch 7.4.1197
Problem:    Still using __ARGS.
Solution:   Remove __ARGS in several files. (script by Hirohito Higashi)
2016-01-29 22:13:30 +01:00
Bram Moolenaar
f28dbcea37 patch 7.4.1196
Problem:    Still using __ARGS.
Solution:   Remove __ARGS in several files. (script by Hirohito Higashi)
2016-01-29 22:03:47 +01:00
Bram Moolenaar
f12d983dea patch 7.4.1195
Problem:    The channel feature does not work in the MS-Windows console.
Solution:   Add win32 console support. (Yasuhiro Matsumoto)
2016-01-29 21:11:25 +01:00
Bram Moolenaar
83162468b3 patch 7.4.1194
Problem:    Compiler warning for not using return value of fwrite().
Solution:   Return OK/FAIL. (Charles Campbell)
2016-01-28 23:10:07 +01:00
Bram Moolenaar
b8b6511fc1 patch 7.4.1193
Problem:    Can't build the channel feature on MS-Windows.
Solution:   Add #ifdef HAVE_POLL.
2016-01-28 23:01:49 +01:00
Bram Moolenaar
fa06a517b5 patch 7.4.1192
Problem:    Can't build with FEAT_EVAL but without FEAT_MBYTE. (John
            Marriott)
Solution:   Add #ifdef for FEAT_MBYTE.
2016-01-28 22:46:58 +01:00
Bram Moolenaar
298b440930 Update runtime files. 2016-01-28 22:38:53 +01:00
Bram Moolenaar
3b5f929b18 patch 7.4.1191
Problem:    The channel feature isn't working yet.
Solution:   Add the connect(), disconnect(), sendexpr() and sendraw()
            functions.  Add initial documentation.  Add a demo server.
2016-01-28 22:37:01 +01:00
Bram Moolenaar
ba59ddbd36 patch 7.4.1190
Problem:    On OSX the default flag for dlopen() is different.
Solution:   Add RTLD_LOCAL in the configure check. (sv99, closes #604)
2016-01-28 15:34:25 +01:00
Bram Moolenaar
923e43b837 patch 7.4.1189
Problem:    Using another language on MS-Windows does not work. (Yongwei Wu)
Solution:   Undo the change to try loading libintl-8.dll first.
2016-01-28 15:07:38 +01:00
Bram Moolenaar
009d84a34f patch 7.4.1188
Problem:    Using older JSON standard.
Solution:   Update the link.  Adjust the text a bit.
2016-01-28 14:12:00 +01:00
Bram Moolenaar
85be35f33e patch 7.4.1187
Problem:    MS-Windows channel code only supports one channel.  Doesn't build
            without netbeans support.
Solution:   Get the channel index from the socket in the message. Closes #600.
2016-01-27 21:08:18 +01:00
Bram Moolenaar
4a1314cb9c patch 7.4.1186
Problem:    Error messages for security context are hard to translate.
Solution:   Use one string with %s. (Ken Takata)
2016-01-27 20:47:18 +01:00
Bram Moolenaar
0d6f835683 patch 7.4.1185
Problem:    Can't build with TCL on some systems.
Solution:   Rename the channel_ functions.
2016-01-27 11:07:47 +01:00
Bram Moolenaar
54e09e7198 patch 7.4.1184
Problem:    MS-Windows build is still broken.
Solution:   Change nbsock to ch_fd.
2016-01-26 23:49:31 +01:00
Bram Moolenaar
fb4194e4e0 patch 7.4.1183
Problem:    MS-Windows build is broken.
Solution:   Remove init in wrong place.
2016-01-26 23:39:55 +01:00
Bram Moolenaar
d04a020a8a patch 7.4.1182
Problem:    Still socket code intertwined with netbeans.
Solution:   Move code from netbeans.c to channel.c
2016-01-26 23:30:18 +01:00
Bram Moolenaar
6650a69454 patch 7.4.1181
Problem:    free_tv() can't handle special variables. (Damien)
Solution:   Add the variable type.
2016-01-26 19:59:10 +01:00
Bram Moolenaar
ac80999985 add missing test file 2016-01-25 22:44:54 +01:00
Bram Moolenaar
7465c6375f patch 7.4.1180
Problem:    Crash with invalid argument to glob2regpat().
Solution:   Check for NULL. (Justin M. Keyes, closes #596)  Add a test.
2016-01-25 22:20:27 +01:00
Bram Moolenaar
f4f79b84a5 patch 7.4.1179
Problem:    test_writefile and test_viml do not delete the tempfile.
Solution:   Delete the tempfile. (Charles Cooper)  Add DeleteTheScript().
2016-01-25 20:38:30 +01:00
Bram Moolenaar
767d8c1a1a patch 7.4.1178
Problem:    empty() doesn't work for the new special variables.
Solution:   Make empty() work. (Damien)
2016-01-25 20:22:54 +01:00
Bram Moolenaar
5aec481097 patch 7.4.1177
Problem:    The +channel feature is not in :version output. (Tony Mechelynck)
Solution:   Add the feature string.
2016-01-25 20:15:45 +01:00
Bram Moolenaar
1d63539cc7 patch 7.4.1176
Problem:    Missing change to proto file.
Solution:   Update the proto file. (Charles Cooper)
2016-01-25 16:05:56 +01:00
Bram Moolenaar
f75612fd99 patch 7.4.1175
Problem:    Can't build with Mingw and Cygwin.
Solution:   Remove extra "endif". (Christian J. Robinson)
2016-01-25 14:17:04 +01:00
Bram Moolenaar
3e53c700a2 patch 7.4.1174
Problem:    Netbeans contains dead code insde #ifdef.
Solution:   Remove the dead code.
2016-01-24 22:17:03 +01:00
Bram Moolenaar
65591001e4 patch 7.4.1173
Problem:    No test for new behavior of v:true et al.
Solution:   Add a test.
2016-01-24 21:51:57 +01:00
Bram Moolenaar
16435480f0 patch 7.4.1172
Problem:    Configure is overly positive.
Solution:   Insert "test".
2016-01-24 21:31:54 +01:00
Bram Moolenaar
2e2301437c patch 7.4.1171
Problem:    Makefile dependencies are outdated.
Solution:   Run "make depend". Add GTK resource dependencies.
2016-01-24 20:54:37 +01:00
Bram Moolenaar
0e7f88e73e patch 7.4.1170
Problem:    Missing changes in src/Makefile, Filelist.
Solution:   Add the missing changes.
2016-01-24 20:41:51 +01:00
Bram Moolenaar
e0874f8cbc patch 7.4.1169
Problem:    The socket I/O is intertwined with the netbeans code.
Solution:   Start refactoring the netbeans communication to split off the
            socket I/O.  Add the +channel feature.
2016-01-24 20:36:41 +01:00
Bram Moolenaar
705ada1aff Update a few runtime files. 2016-01-24 17:56:50 +01:00
Bram Moolenaar
f48aa160fd patch 7.4.1168
Problem:    This doesn't give the right result: eval(string(v:true)). (Nikolay
            Pavlov)
Solution:   Make the string "v:true" instead of "true".
2016-01-24 17:54:24 +01:00
Bram Moolenaar
0436922965 patch 7.4.1167
Problem:    No tests for "is" and "isnot" with the new variables.
Solution:   Add tests.
2016-01-24 17:21:29 +01:00
Bram Moolenaar
fcaaae6b3f patch 7.4.1166
Problem:    Can't encode a Funcref into JSON.  jsonencode() doesn't handle the
            same list or dict twice properly.  (Nikolay Pavlov)
Solution:   Give an error.  Reset copyID when the list or dict is finished.
2016-01-24 16:49:11 +01:00
Bram Moolenaar
938ee834d3 patch 7.4.1165
Problem:    When defining DYNAMIC_ICONV_DLL in the makefile, the build fails.
Solution:   Add #ifdef's. (Taro Muraoka)  Try the newer version first.
2016-01-24 15:36:03 +01:00
Bram Moolenaar
6039c7f053 patch 7.4.1164
Problem:    No tests for comparing special variables.  Error in jsondecode()
            not reported.  test_json does not work Japanse system.
Solution:   Set scriptencoding. (Ken Takata) Add a few more tests. Add error.
2016-01-24 15:05:32 +01:00
Bram Moolenaar
17a13437c9 patch 7.4.1163
Problem:    Expressions "0 + v:true" and "'' . v:true" cause an error.
Solution:   Return something sensible when using a special variable as a
            number or as a string. (suggested by Damien)
2016-01-24 14:22:10 +01:00
Bram Moolenaar
9e3be26872 patch 7.4.1162
Problem:    Missing error number in MzScheme. (Dominique Pelle)
Solution:   Add a proper error number.
2016-01-24 13:58:40 +01:00
Bram Moolenaar
2faa29f896 patch 7.4.1161
Problem:    ":argadd" without argument is supposed to add the current buffer
            name to the arglist.
Solution:   Make it work as documented. (Coot, closes #577)
2016-01-23 23:02:34 +01:00
Bram Moolenaar
bd4593ffb1 patch 7.4.1160
Problem:    No error for jsondecode('"').
Solution:   Give an error message for missing double quote.
2016-01-23 22:51:07 +01:00
Bram Moolenaar
e240c2da79 patch 7.4.1159
Problem:    Automatically generated function prototypes use __ARGS.
Solution:   Remove __ARGS from osdef.sh.
2016-01-23 22:46:10 +01:00
Bram Moolenaar
48e697e4b6 patch 7.4.1158
Problem:    Still using __ARGS().
Solution:   Remove __ARGS() from eval.c
2016-01-23 22:17:30 +01:00
Bram Moolenaar
f95534c3d4 patch 7.4.1157
Problem:    type() does not work for v:true, v:none, etc.
Solution:   Add new type numbers.
2016-01-23 21:59:52 +01:00
Bram Moolenaar
2dedb45260 patch 7.4.1156
Problem:    Coverity warns for NULL pointer and ignoring return value.
Solution:   Check for NULL pointer. When dict_add() returns FAIL free the item.
2016-01-23 21:38:51 +01:00
Bram Moolenaar
64922b9014 patch 7.4.1155
Problem:    Build with normal features fails.
Solution:   Always deinfe dict_lookup().
2016-01-23 19:54:30 +01:00
Bram Moolenaar
520e1e41f3 patch 7.4.1154
Problem:    No support for JSON.
Solution:   Add jsonencode() and jsondecode().  Also add v:false, v:true,
            v:null and v:none.
2016-01-23 19:46:28 +01:00
Bram Moolenaar
6920c72d4d patch 7.4.1153
Problem:    Autocommands triggered by quickfix cannot always get the current
            title value.
Solution:   Call qf_fill_buffer() later. (Christian Brabandt)
2016-01-22 22:44:10 +01:00
Bram Moolenaar
09e786e7a7 patch 7.4.1152
Problem:    Langmap test fails with normal build.
Solution:   Check for +langmap feature.
2016-01-21 23:53:06 +01:00
Bram Moolenaar
13d5aeef56 Update runtime files 2016-01-21 23:36:05 +01:00
Bram Moolenaar
5f8a14b9de patch 7.4.1151
Problem:    Missing change to eval.c
Solution:   Also change feedkeys().
2016-01-21 23:34:58 +01:00
Bram Moolenaar
25281634cd patch 7.4.1150
Problem:    'langmap' applies to the first character typed in Select mode.
            (David Watson)
Solution:   Check for SELECTMODE. (Christian Brabandt, closes #572)
            Add the 'x' flag to feedkeys().
2016-01-21 23:32:32 +01:00
Bram Moolenaar
d6357e8f93 patch 7.4.1149
Problem:    Using the local value of 'errorformat' causes more problems than
            it solves.
Solution:   Revert 7.4.1013.
2016-01-21 21:48:09 +01:00
Bram Moolenaar
e5f2be6159 patch 7.4.1148
Problem:    Default for MingW and Cygwin is still "normal".
Solution:   Use "huge" as default. (Ken Takata)
2016-01-21 20:24:34 +01:00
Bram Moolenaar
88e8f9f144 patch 7.4.1147
Problem:    Conflict for "chartab". (Kazunobu Kuriyama)
Solution:   Rename the global one to something less obvious.  Move it into
            src/chartab.c.
2016-01-20 22:48:02 +01:00
Bram Moolenaar
a7c3795a2e patch 7.4.1146
Problem:    Can't build with Python 3 interface using MingW.
Solution:   Update the Makefile. (Yasuhiro Matsumoto, Ken Takata)
2016-01-20 22:23:15 +01:00
Bram Moolenaar
23c4f7183c patch 7.4.1145
Problem:    Default features are conservative.
Solution:   Make the default feature set for most of todays systems "huge".
2016-01-20 22:11:59 +01:00
Bram Moolenaar
17576a1e33 patch 7.4.1144
Problem:    Can't build on several systems.
Solution:   Include float.h. (Christian Robinson, closes #570 #571)
2016-01-20 20:05:44 +01:00
Bram Moolenaar
f7edf40448 patch 7.4.1143
Problem:    Can't sort on floating point numbers.
Solution:   Add the "f" flag to ":sort".  (Alex Jakushev)  Also add the "f"
            flag to sort().
2016-01-19 23:36:15 +01:00
Bram Moolenaar
b8060fe862 patch 7.4.1142
Problem:    Cannot define keyword characters for a syntax file.
Solution:   Add the ":syn iskeyword" command. (Christian Brabandt)
2016-01-19 22:29:28 +01:00
Bram Moolenaar
6773a348da patch 7.4.1141
Problem:    Using searchpair() with a skip expression that uses syntax
            highlighting sometimes doesn't work. (David Fishburn)
Solution:   Reset next_match_idx. (Christian Brabandt)
2016-01-19 20:52:44 +01:00
Bram Moolenaar
e266d6d664 patch 7.4.1140
Problem:    Recognizing <sid> does not work when the language is Turkish.
            (Christian Brabandt)
Solution:   Use MB_STNICMP() instead of STNICMP().
2016-01-19 20:51:32 +01:00
Bram Moolenaar
fce7b3d24f patch 7.4.1139
Problem:    MS-Windows: getftype() returns "file for symlink to directory.
Solution:   Make it return "dir". (Ken Takata)
2016-01-19 19:00:32 +01:00
Bram Moolenaar
3a466a8718 patch 7.4.1138
Problem:    When running gvim in the foreground some icons are missing.
            (Taylor Venable)
Solution:   Move the call to gui_gtk_register_resource(). (Kazunobu Kuriyama)
2016-01-19 17:47:25 +01:00
Bram Moolenaar
62ef797496 patch 7.4.1137
Problem:    Illegal memory access when using :copen and :cclose.
Solution:   Avoid that curbuf is invalid. (suggestion by Justin M. Keyes)
            Add a test.
2016-01-19 14:51:54 +01:00
Bram Moolenaar
da5dcd9366 patch 7.4.1136
Problem:    Wrong argument to assert_exception() causes a crash. (reported by
            Coverity)
Solution:   Check for NULL pointer.  Add a test.
2016-01-19 14:31:20 +01:00
Bram Moolenaar
301417041b patch 7.4.1135
Problem:    One more arglist test fails on MS-Windows.
Solution:   Don't edit "Y" after editing "y".
2016-01-19 14:14:08 +01:00
Bram Moolenaar
82e4184d48 patch 7.4.1134
Problem:    The arglist test fails on MS-Windows.
Solution:   Only check for failure of argedit on Unix.
2016-01-19 13:50:57 +01:00
Bram Moolenaar
ef26954a35 patch 7.4.1133
Problem:    Generated function prototypes still have __ARGS().
Solution:   Generate function prototypes without __ARGS().
2016-01-19 13:22:12 +01:00
Bram Moolenaar
99dbe291f5 patch 7.4.1132
Problem:    Old style tests for the argument list.
Solution:   Add more new style tests. (Yegappan Lakshmanan)
2016-01-19 13:07:23 +01:00
Bram Moolenaar
b20e334859 patch 7.4.1131
Problem:    New lines in the viminfo file are dropped.
Solution:   Copy lines starting with "|".  Fix that when using :rviminfo in a
            function global variables were restored as function-local
            variables.
2016-01-18 23:29:01 +01:00
Bram Moolenaar
61ff4dd6a4 patch 7.4.1130
Problem:    Memory leak in :vimgrep.
Solution:   Call FreeWild(). (Yegappan Lakshmanan)
2016-01-18 20:30:17 +01:00
Bram Moolenaar
77324fc9d3 patch 7.4.1129
Problem:    Python None value can't be converted to a Vim value.
Solution:   Just use zero. (Damien)
2016-01-17 22:37:03 +01:00
Bram Moolenaar
85084ef1e9 Update help files. 2016-01-17 22:26:33 +01:00
Bram Moolenaar
203258c3ad patch 7.4.1128
Problem:    MS-Windows: delete() does not recognize junctions.
Solution:   Add mch_isrealdir() for MS-Windows. Update mch_is_symbolic_link().
            (Ken Takata)
2016-01-17 22:15:16 +01:00
Bram Moolenaar
021b593e7e patch 7.4.1127
Problem:    Both old and new style tests for Perl.
Solution:   Merge the old tests with the new style tests.
2016-01-17 22:05:48 +01:00
Bram Moolenaar
c970330676 patch 7.4.1126
Problem:    Can only get the directory of the current window.
Solution:   Add window and tab arguments to getcwd() and haslocaldir().
            (Thinca, Hirohito Higashi)
2016-01-17 21:49:33 +01:00
Bram Moolenaar
e9b892ebcd patch 7.4.1125
Problem:    There is no perleval().
Solution:   Add perleval(). (Damien)
2016-01-17 21:15:58 +01:00
Bram Moolenaar
25b2b94ea7 patch 7.4.1124
Problem:    MS-Windows: dead key behavior is not ideal.
Solution:   Handle dead keys differently when not in Insert or Select mode.
            (John Wellesz, closes #399)
2016-01-17 20:53:12 +01:00
Bram Moolenaar
a24f0a550f patch 7.4.1123
Problem:    Using ":argadd" when there are no arguments results in the second
            argument to be the current one. (Yegappan Lakshmanan)
Solution:   Correct the w_arg_idx value.
2016-01-17 19:39:00 +01:00
Bram Moolenaar
42c9cfa7f4 patch 7.4.1122
Problem:    Test 92 and 93 fail when using gvim on a system with a non utf-8
            locale.
Solution:   Avoid using .gvimrc by adding -U NONE. (Yukihiro Nakadaira)
2016-01-17 18:49:57 +01:00
Bram Moolenaar
08b270a8a4 patch 7.4.1121
Problem:    test_expand leaves files behind.
Solution:   Edit another file before deleting, otherwise the swap file
            remains.
2016-01-17 18:34:19 +01:00
Bram Moolenaar
336bd622c3 patch 7.4.1120
Problem:    delete(x, 'rf') fails if a directory is empty. (Lcd)
Solution:   Ignore not finding matches in an empty directory.
2016-01-17 18:23:58 +01:00
Bram Moolenaar
72defda84e patch 7.4.1119
Problem:    argidx() has a wrong value after ":%argdelete". (Yegappan
            Lakshmanan)
Solution:   Correct the value of w_arg_idx.  Add a test.
2016-01-17 18:04:33 +01:00
Bram Moolenaar
a99b90437a patch 7.4.1118
Problem:    Tests hang in 24 line terminal.
Solution:   Set the 'more' option off.
2016-01-17 17:10:59 +01:00
Bram Moolenaar
d82103ed85 patch 7.4.1117
Problem:    No longer get "." and ".." in directory list.
Solution:   Do not skip "." and ".." unless EW_DODOT is set.
2016-01-17 17:04:05 +01:00
Bram Moolenaar
b0967d587f patch 7.4.1116
Problem:    delete(x, 'rf') does not delete files starting with a dot.
Solution:   Also delete files starting with a dot.
2016-01-17 16:49:43 +01:00
Bram Moolenaar
d0232917ce patch 7.4.1115
Problem:    MS-Windows: make clean in testdir doesn't clean everything.
Solution:   Add command to delete X* directories. (Ken Takata)
2016-01-17 16:15:32 +01:00
Bram Moolenaar
43a34f9f74 patch 7.4.1114
Problem:    delete() does not work well with symbolic links.
Solution:   Recognize symbolik links.
2016-01-17 15:56:34 +01:00
Bram Moolenaar
4119cf80e1 patch 7.4.1113
Problem:    Using {ns} in variable name does not work. (lilydjwg)
Solution:   Fix recognizing colon.  Add a test.
2016-01-17 14:59:01 +01:00
Bram Moolenaar
2db5c3b3ce patch 7.4.1112
Problem:    When using ":next" with an illegal file name no error is reported.
Solution:   Give an error message.
2016-01-16 22:49:34 +01:00
Bram Moolenaar
f60b796fa9 patch 7.4.1111
Problem:    test_expand fails on MS-Windows.
Solution:   Always use forward slashes.  Remove references to test27.
2016-01-16 22:47:23 +01:00
Bram Moolenaar
8c600052fa patch 7.4.1110
Problem:    Test 108 fails when language is French.
Solution:   Force English messages. (Dominique Pelle)
2016-01-16 22:08:11 +01:00
Bram Moolenaar
4cf7679383 patch 7.4.1109
Problem:    MS-Windows doesn't have rmdir().
Solution:   Add mch_rmdir().
2016-01-16 22:02:57 +01:00
Bram Moolenaar
58adb14739 patch 7.4.1108
Problem:    Expanding "~" halfway a file name.
Solution:   Handle the file name as one name. (Marco Hinz)  Add a test.
            Closes #564.
2016-01-16 21:50:51 +01:00
Bram Moolenaar
da440d21a6 patch 7.4.1107
Problem:    Vim can create a directory but not delete it.
Solution:   Add an argument to delete() to make it possible to delete a
            directory, also recursively.
2016-01-16 21:27:23 +01:00
Bram Moolenaar
286eacd3f6 patch 7.4.1106
Problem:    The nsis script can't be used from the appveyor build.
Solution:   Add "ifndef" to allow for variables to be set from the command
            line. Remove duplicate SetCompressor command. Support using other
            gettext binaries. (Ken Takata)  Update build instructions to use
            libintl-8.dll.
2016-01-16 18:05:50 +01:00
Bram Moolenaar
9bbf63dbf8 patch 7.4.1105
Problem:    When using slices there is a mixup of variable name and namespace.
Solution:   Recognize variables that can't be a namespace. (Hirohito Higashi)
2016-01-16 16:49:28 +01:00
Bram Moolenaar
4e640bd930 patch 7.4.1104
Problem:    Various problems building with MzScheme/Racket.
Solution:   Make it work with new versions of Racket. (Yukihiro Nakadaira, Ken
            Takata)
2016-01-16 16:20:38 +01:00
Bram Moolenaar
d125001297 patch 7.4.1103
Problem:    Removed file still in distribution.
Solution:   Remove Make_cyg.mak from the list of files.
2016-01-16 15:45:15 +01:00
Bram Moolenaar
f1f60f859c patch 7.4.1102
Problem:    Debugger has no stack backtrace support.
Solution:   Add "backtrace", "frame", "up" and "down" commands. (Alberto
            Fanjul, closes #433)
2016-01-16 15:40:53 +01:00
Bram Moolenaar
e39b3d9fb4 patch 7.4.1101
Problem:    With 'rightleft' and concealing the cursor may move to the wrong
            position.
Solution:   Compute the column differently when 'rightleft' is set. (Hirohito
            Higashi)
2016-01-15 22:52:22 +01:00
Bram Moolenaar
abfa9efb98 patch 7.4.1100
Problem:    Cygwin makefiles are unused.
Solution:   Remove them.
2016-01-15 22:34:45 +01:00
Bram Moolenaar
36d7cd8965 patch 7.4.1099
Problem:    It's not easy to know if Vim supports blowfish. (Smu Johnson)
Solution:   Add has('crypt-blowfish') and has('crypt-blowfish2').
2016-01-15 22:08:23 +01:00
Bram Moolenaar
b7604cc19f patch 7.4.1098
Problem:    Still using old style C function declarations.
Solution:   Always define __ARGS() to include types.  Turn a few functions
            into ANSI style to find out if this causes problems for anyone.
2016-01-15 21:23:22 +01:00
Bram Moolenaar
345efa013d Update runtime files 2016-01-15 20:57:49 +01:00
Bram Moolenaar
065ee9aebf patch 7.4.1097
Problem:    Looking up the alloc ID for tests fails.
Solution:   Fix the line computation.  Use assert_fails() for unlet test.
2016-01-15 20:53:38 +01:00
Bram Moolenaar
a260b87d9d patch 7.4.1096
Problem:    Need several lines to verify a command produces an error.
Solution:   Add assert_fails(). (suggested by Nikolay Pavlov)
            Make the quickfix alloc test actually work.
2016-01-15 20:48:22 +01:00
Bram Moolenaar
3d6d5cc3a4 patch 7.4.1095
Problem:    Can't build GvimExt with SDK 7.1.
Solution:   Support using setenv.bat instead of vcvars32.bat. (Ken Takata)
2016-01-15 18:03:32 +01:00
Bram Moolenaar
5a46a58eb6 Add missing test file. 2016-01-15 15:56:58 +01:00
Bram Moolenaar
ccb80989f2 patch 7.4.1094
Problem:    Test for :hardcopy fails on MS-Windows.
Solution:   Check for the +postscript feature.
2016-01-15 15:56:35 +01:00
Bram Moolenaar
24c4d539ee patch 7.4.1093
Problem:    Typo in test goes unnoticed.
Solution:   Fix the typo. Give error for wrong arguments to cursor().
            (partly by Hirohito Higashi) Add a test for cursor().
2016-01-15 15:37:20 +01:00
Bram Moolenaar
a803c7f940 patch 7.4.1092
Problem:    It is not simple to test for an exception and give a proper error
            message.
Solution:   Add assert_exception().
2016-01-15 15:31:39 +01:00
Bram Moolenaar
b01f357791 patch 7.4.1091
Problem:    When making a change while need_wait_return is set there is a two
            second delay.
Solution:   Do not assume the ATTENTION prompt was given when need_wait_return
            was set already.
2016-01-15 15:17:04 +01:00
Bram Moolenaar
b5690794cf patch 7.4.1090
Problem:    No tests for :hardcopy and related options.
Solution:   Add test_hardcopy.
2016-01-14 22:10:41 +01:00
Bram Moolenaar
ef2b5036b3 patch 7.4.1089
Problem:    Repeating CTRL-A doesn't work.
Solution:   Call prep_redo_cmd(). (Hirohito Higashi)
2016-01-12 22:20:58 +01:00
Bram Moolenaar
7ae4fbca55 patch 7.4.1088
Problem:    Coverity warns for uninitialized variables.  Only one is an actual
            problem.
Solution:   Move the conditions.  Don't use endpos if handling an error.
2016-01-12 21:00:40 +01:00
Bram Moolenaar
d79e55016c patch 7.4.1087
Problem:    CTRL-A and CTRL-X do not work properly with blockwise visual
            selection if there is a mix of Tab and spaces.
Solution:   Add OP_NR_ADD and OP_NR_SUB. (Hirohito Higashi)
2016-01-10 22:13:02 +01:00
Bram Moolenaar
507edf63df patch 7.4.1086
Problem:    Crash with an extremely long buffer name.
Solution:   Limit the return value of vim_snprintf(). (Dominique Pelle)
2016-01-10 20:54:17 +01:00
Bram Moolenaar
a52dfaed10 patch 7.4.1085
Problem:    The CTRL-A and CTRL-X commands do not update the '[ and '] marks.
Solution:   (Yukihiro Nakadaira)
2016-01-10 20:21:57 +01:00
Bram Moolenaar
e1edc1caba patch 7.4.1084
Problem:    Using "." to repeat CTRL-A in Visual mode increments the wrong
            numbers.
Solution:   Append right size to the redo buffer. (Ozaki Kiichi)
2016-01-10 20:08:03 +01:00
Bram Moolenaar
4514d2769b patch 7.4.1083
Problem:    Building GvimExt with VS2015 may fail.
Solution:   Adjust the makefile. (Mike Williams)
2016-01-10 19:21:36 +01:00
Bram Moolenaar
858b96f382 patch 7.4.1082
Problem:    The Tcl interface is always skipping memory free on exit.
Solution:   Only skip for dynamically loaded Tcl.
2016-01-10 16:12:24 +01:00
Bram Moolenaar
254b105b75 patch 7.4.1081
Problem:    No test for what previously caused a crash.
Solution:   Add test for unletting errmsg.
2016-01-10 16:10:17 +01:00
Bram Moolenaar
f32c5cd6e0 patch 7.4.1080
Problem:    VS2015 has a function HandleToLong() that is shadowed by the macro
            that Vim defines.
Solution:   Do not define HandleToLong() for MSVC version 1400 and later.
            (Mike Williams)
2016-01-10 16:07:44 +01:00
Bram Moolenaar
b86a343280 patch 7.4.1079
Problem:    New include file missing from distribution.  Missing changes to
            quickfix code.
Solution:   Add alloc.h to the list of distributed files. Use the enum in
            quickfix code.
2016-01-10 16:00:53 +01:00
Bram Moolenaar
acb4f221c7 Updated runtime files. 2016-01-10 15:59:26 +01:00
Bram Moolenaar
d08a8d4a31 patch 7.4.1078
Problem:    MSVC: "make clean" doesn't cleanup in the tee directory.
Solution:   Add the commands to cleanup tee. (Erich Ritz)
2016-01-10 15:20:29 +01:00
Bram Moolenaar
30a89473ee patch 7.4.1077
Problem:    The build instructions for MS-Windows are incomplete.
Solution:   Add explanations for how to build with various interfaces. (Ken
            Takata)
2016-01-10 14:35:58 +01:00
Bram Moolenaar
6a3c8aff04 patch 7.4.1076
Problem:    CTRL-A does not work well in right-left mode.
Solution:   Remove reversing the line, add a test. (Hirohito Higashi)
2016-01-10 14:13:40 +01:00
Bram Moolenaar
05fe017c1a patch 7.4.1075
Problem:    Crash when using an invalid command.
Solution:   Fix generating the error message. (Dominique Pelle)
2016-01-10 13:54:48 +01:00
Bram Moolenaar
5fa4d448fb patch 7.4.1074
Problem:    Warning from VX2015 compiler.
Solution:   Add a type cast. (Mike Williams)
2016-01-10 13:25:55 +01:00
Bram Moolenaar
28fb79db6b patch 7.4.1073
Problem:    Alloc_id depends on numbers, may use the same one twice.  It's not
            clear from the number what it's for.
Solution:   Use an enum.  Add a function to lookup the enum value from the
            name.
2016-01-09 22:28:33 +01:00
Bram Moolenaar
44132a10ae add missing test file 2016-01-09 21:09:10 +01:00
Bram Moolenaar
450919587d patch 7.4.1072
Problem:    Increment test is old style.
Solution:   Make the increment test a new style test. (Hirohito Higashi)
2016-01-09 21:08:35 +01:00
Bram Moolenaar
cfc0a350a9 patch 7.4.1071
Problem:    New style tests are executed in arbitrary order.
Solution:   Sort the test function names. (Hirohito Higashi)
            Fix the quickfix test that depended on the order.
2016-01-09 20:23:00 +01:00
Bram Moolenaar
8a5115cf18 patch 7.4.1070
Problem:    The Tcl interface can't be loaded dynamically on Unix.
Solution:   Make it possible to load it dynamically. (Ken Takata)
2016-01-09 19:41:11 +01:00
Bram Moolenaar
5f24542e5e patch 7.4.1069
Problem:    Compiler warning for unused argument.
Solution:   Add UNUSED.
2016-01-09 18:52:40 +01:00
Bram Moolenaar
71bcfdf301 patch 7.4.1068
Problem:    Wrong way to check for unletting internal variables.
Solution:   Use a better way. (Olaf Dabrunz)
2016-01-09 18:20:46 +01:00
Bram Moolenaar
449538c3d2 patch 7.4.1067
Problem:    Can't build with MingW and Python on MS-Windows.
Solution:   Move the build flags to CFLAGS.
2016-01-09 17:49:15 +01:00
Bram Moolenaar
64496ffc9c patch 7.4.1066
Problem:    Build fails on MS-Windows.
Solution:   Adjust the #ifdefs for "dll" options.
2016-01-09 15:08:03 +01:00
Bram Moolenaar
25e4fcde76 patch 7.4.1065
Problem:    Cannot use the "dll" options on MS-Windows.
Solution:   Support the options on all platforms.  Use the built-in name as
            the default, so that it's clear what Vim is looking for.
2016-01-09 14:57:47 +01:00
Bram Moolenaar
7b877b3605 patch 7.4.1064
Problem:    When a spell file has single letter compounding creating
            suggestions takes an awful long time.
Solution:   Add th eNOCOMPOUNDSUGS flag.
2016-01-09 13:51:34 +01:00
Bram Moolenaar
4d1c0a4441 Update to newer English spell files,
but without the COMPOUND rules that make suggestions very slow.
2016-01-09 13:23:54 +01:00
Bram Moolenaar
eca99bd45f patch 7.4.1063
Problem:    TCL_VER_LONG and DYNAMIC_TCL_VER are not set when building with
            Cygwin and MingW.
Solution:   Add TCL_VER_LONG and DYNAMIC_TCL_VER to the makefile.
2016-01-07 22:50:05 +01:00
Bram Moolenaar
0bee2fe25a patch 7.4.1062
Problem:    Building with Ruby on MS-Windows requires a lot of arguments.
Solution:   Make it simpler. (Ken Takata)
2016-01-07 22:45:09 +01:00
Bram Moolenaar
285bf84b4b patch 7.4.1061
Problem:    Compiler warning for ignoring return value of fwrite().
Solution:   Do use the return value. (idea: Charles Campbell)
2016-01-07 22:34:01 +01:00
Bram Moolenaar
6602af7fe0 patch 7.4.1060
Problem:    Instructions for writing tests are outdated.
Solution:   Mention Make_all.mak.  Add steps for new style tests.
2016-01-07 22:01:01 +01:00
Bram Moolenaar
fd39d08fb6 patch 7.4.1059
Problem:    Code will never be executed.
Solution:   Remove the code.
2016-01-07 21:28:24 +01:00
Bram Moolenaar
75bdf6aa30 patch 7.4.1058
Problem:    It is not possible to test code that is only reached when memory
            allocation fails.
Solution:   Add the alloc_fail() function.  Try it out with :vimgrep.
2016-01-07 21:25:08 +01:00
Bram Moolenaar
2b7db933b0 patch 7.4.1057
Problem:    Typos in the :options window.
Solution:   Fix the typos. (Dominique Pelle)
2016-01-07 16:52:10 +01:00
Bram Moolenaar
ca1fe98517 patch 7.4.1056
Problem:    Don't know why finding spell suggestions is slow.
Solution:   Add some code to gather profiling information.
2016-01-07 16:22:06 +01:00
Bram Moolenaar
a61018d7e0 Revert English spell file update 2016-01-07 16:19:13 +01:00
Bram Moolenaar
e7893a4088 patch 7.4.1055
Problem:    Running "make newtests" in src/testdir has no output.
Solution:   List the messages file when a test fails. (Christian Brabandt)
            Update the list of tests.
2016-01-06 21:23:56 +01:00
Bram Moolenaar
2795e21eaa patch 7.4.1054
Problem:    Illegal memory access.
Solution:   Check for missing pattern. (Dominique Pelle)
2016-01-05 22:04:49 +01:00
Bram Moolenaar
da59dd5da6 patch 7.4.1053
Problem:    Insufficient testing for quickfix commands.
Solution:   Add a new style quickfix test. (Yegappan Lakshmanan)
2016-01-05 21:59:58 +01:00
Bram Moolenaar
04bff88df6 patch 7.4.1052
Problem:    Illegal memory access with weird syntax command. (Dominique Pelle)
Solution:   Check for column past end of line.
2016-01-05 20:46:16 +01:00
Bram Moolenaar
af8af8bfac patch 7.4.1051
Problem:    Segfault when unletting "count".
Solution:   Check for readonly and locked first. (Dominique Pelle)
            Add a test.
2016-01-04 22:05:24 +01:00
Bram Moolenaar
c71982b239 patch 7.4.1050
Problem:    Warning for unused var with tiny features. (Tony Mechelynck)
Solution:   Add #ifdef.  Use vim_snprintf().  Reduce number of statemements.
2016-01-04 21:43:08 +01:00
Bram Moolenaar
485dace817 patch 7.4.1049
Problem:    Wordcount test still still fails on MS-Windows.
Solution:   Set 'fileformats' to "unix".
2016-01-04 12:45:29 +01:00
Bram Moolenaar
c7803a1c42 patch 7.4.1048
Problem:    Wordcount test still fail on MS-Windows.
Solution:   Set 'fileformat' to "unix".
2016-01-04 12:26:23 +01:00
Bram Moolenaar
7f68203168 patch 7.4.1047
Problem:    Tests fail on MS-Windows.
Solution:   Set 'selection' to inclusive.
2016-01-04 12:13:05 +01:00
Bram Moolenaar
2d6c800272 patch 7.4.1046
Problem:    No test coverage for menus.
Solution:   Load the standard menus and check there is no error.
2016-01-03 23:31:24 +01:00
Bram Moolenaar
47707f6f34 patch 7.4.1045
Problem:    Having shadow and coverage on the same build results in the source
            files not being available in the coverage view.
Solution:   Move using shadow to the normal build.
2016-01-03 23:06:34 +01:00
Bram Moolenaar
718272a7e1 patch 7.4.1044
Problem:    Can't build without the +eval feature.
Solution:   Add #ifdef.
2016-01-03 22:56:45 +01:00
Bram Moolenaar
d7a08a23bf patch 7.4.1043
Problem:    Another small thing.
Solution:   Now really update the Mac install text.
2016-01-03 22:51:16 +01:00
Bram Moolenaar
ed767a2073 patch 7.4.1042
Problem:    g-CTRL-G shows the word count, but there is no way to get the word
            count in a script.
Solution:   Add the wordcount() function. (Christian Brabandt)
2016-01-03 22:49:16 +01:00
Bram Moolenaar
022b896592 patch 7.4.1041
Problem:    Various small things.
Solution:   Add file to list of distributed files.  Adjust README.  Fix typo.
2016-01-03 22:16:20 +01:00
Bram Moolenaar
fa7353428f Updated runtime files. 2016-01-03 22:14:44 +01:00
Bram Moolenaar
24db72958f patch 7.4.1040
Problem:    The tee command is not available on MS-Windows.
Solution:   Adjust tee.c for MSVC and add a makefile. (Yasuhiro Matsumoto)
2016-01-03 16:56:10 +01:00
Bram Moolenaar
d798af8c77 patch 7.4.1039
Problem:    Test 31 fails with small build.
Solution:   Bail out for small build. (Hirohito Higashi)
2016-01-03 14:32:41 +01:00
Bram Moolenaar
d2e03f02c4 patch 7.4.1038
Problem:    Still get a warning for a deprecated function with gdk-pixbuf
            2.31.
Solution:   Change minimum minor version from 32 to 31.
2016-01-02 22:46:36 +01:00
372 changed files with 27925 additions and 24963 deletions

View File

@@ -5,10 +5,10 @@ compiler:
- gcc
env:
- COVERAGE=yes CFLAGS=--coverage LDFLAGS=--coverage FEATURES=huge SHADOWOPT="-C src/shadow" SRCDIR=./src/shadow
- COVERAGE=yes CFLAGS=--coverage LDFLAGS=--coverage FEATURES=huge SHADOWOPT= SRCDIR=./src
"CONFOPT='--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp'"
CHECK_AUTOCONF=yes
- COVERAGE=no FEATURES=normal CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
- COVERAGE=no FEATURES=normal CONFOPT= SHADOWOPT="-C src/shadow" SRCDIR=./src/shadow CHECK_AUTOCONF=no
- COVERAGE=no FEATURES=small CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no
- COVERAGE=no FEATURES=tiny CONFOPT= SHADOWOPT= SRCDIR=./src CHECK_AUTOCONF=no

View File

@@ -7,11 +7,13 @@ SRC_ALL = \
.travis.yml \
appveyor.yml \
src/README.txt \
src/alloc.h \
src/arabic.c \
src/arabic.h \
src/ascii.h \
src/blowfish.c \
src/buffer.c \
src/channel.c \
src/charset.c \
src/crypt.c \
src/crypt_zip.c \
@@ -38,6 +40,7 @@ SRC_ALL = \
src/gui_beval.h \
src/hardcopy.c \
src/hashtab.c \
src/json.c \
src/keymap.h \
src/macros.h \
src/main.c \
@@ -112,6 +115,7 @@ SRC_ALL = \
src/proto.h \
src/proto/blowfish.pro \
src/proto/buffer.pro \
src/proto/channel.pro \
src/proto/charset.pro \
src/proto/crypt.pro \
src/proto/crypt_zip.pro \
@@ -131,6 +135,7 @@ SRC_ALL = \
src/proto/gui_beval.pro \
src/proto/hardcopy.pro \
src/proto/hashtab.pro \
src/proto/json.pro \
src/proto/main.pro \
src/proto/mark.pro \
src/proto/mbyte.pro \
@@ -350,7 +355,6 @@ SRC_DOS = \
src/xpm_w32.h \
src/xxd/Make_bc3.mak \
src/xxd/Make_bc5.mak \
src/xxd/Make_cyg.mak \
src/xxd/Make_djg.mak \
src/xxd/Make_ming.mak \
src/xxd/Make_mvc.mak \
@@ -703,6 +707,7 @@ EXTRA = \
runtime/vimlogo.xpm \
src/swis.s \
src/tee/Makefile \
src/tee/Make_mvc.mak \
src/tee/tee.c \
csdpmi4b.zip \

View File

@@ -131,6 +131,9 @@ MINOR = 4
#
# MS-Windows:
# - Run make on Unix to update the ".mo" files.
# - Get libintl-8.dll and libiconv-2.dll. E.g. from
# https://mlocati.github.io/gettext-iconv-windows/ .
# Put them in the top directory, "make dosrt" uses them.
# - > make dossrc
# > make dosrt
# Unpack dist/vim##rt.zip and dist/vim##src.zip on an MS-Windows PC.
@@ -493,7 +496,8 @@ dosrt_files: dist prepare no_title.vim
cp $$i dist/vim/$(VIMRTDIR)/lang/$$n/LC_MESSAGES/vim.mo; \
fi \
done
cp libintl.dll dist/vim/$(VIMRTDIR)/
cp libintl-8.dll dist/vim/$(VIMRTDIR)/
cp libiconv-2.dll dist/vim/$(VIMRTDIR)/
# Used before uploading. Don't delete the AAPDIR/sign files!

View File

@@ -6,13 +6,19 @@
# because uninstall deletes most files in $0.
# Location of gvim_ole.exe, vimw32.exe, GvimExt/*, etc.
!define VIMSRC "..\src"
!ifndef VIMSRC
!define VIMSRC "..\src"
!endif
# Location of runtime files
!define VIMRT ".."
!ifndef VIMRT
!define VIMRT ".."
!endif
# Location of extra tools: diff.exe
!define VIMTOOLS ..\..
!ifndef VIMTOOLS
!define VIMTOOLS ..\..
!endif
# Comment the next line if you don't have UPX.
# Get it at http://upx.sourceforge.net
@@ -32,9 +38,10 @@
Name "Vim ${VER_MAJOR}.${VER_MINOR}"
OutFile gvim${VER_MAJOR}${VER_MINOR}.exe
CRCCheck force
SetCompressor lzma
SetCompressor /SOLID lzma
SetDatablockOptimize on
RequestExecutionLevel highest
XPStyle on
ComponentText "This will install Vim ${VER_MAJOR}.${VER_MINOR} on your computer."
DirText "Choose a directory to install Vim (should contain 'vim')"
@@ -55,9 +62,6 @@ LicenseData ${VIMRT}\doc\uganda.nsis.txt
!packhdr temp.dat "upx --best --compress-icons=1 temp.dat"
!endif
SetCompressor /SOLID lzma
XPStyle on
# This adds '\vim' to the user choice automagically. The actual value is
# obtained below with ReadINIStr.
InstallDir "$PROGRAMFILES\Vim"
@@ -355,7 +359,9 @@ SectionEnd
File ${VIMRT}\keymap\README.txt
File ${VIMRT}\keymap\*.vim
SetOutPath $0
File ${VIMRT}\libintl.dll
File ${VIMRT}\libintl-8.dll
File ${VIMRT}\libiconv-2.dll
File /nonfatal ${VIMRT}\libwinpthread-1.dll
SectionEnd
!endif

File diff suppressed because it is too large Load Diff

View File

@@ -1,8 +1,8 @@
" Vim OMNI completion script for SQL
" Language: SQL
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
" Version: 15.0
" Last Change: 2013 May 13
" Version: 16.0
" Last Change: 2015 Dec 29
" Homepage: http://www.vim.org/scripts/script.php?script_id=1572
" Usage: For detailed help
" ":help sql.txt"
@@ -16,6 +16,12 @@
" look backwards to a FROM clause and find the first table
" and complete it.
"
" Version 16.0 (Dec 2015)
" - NF: If reseting the cache and table, procedure or view completion
" had been used via dbext, have dbext delete or recreate the
" dictionary so that new objects are picked up for the
" next completion.
"
" Version 15.0 (May 2013)
" - NF: Changed the SQL precached syntax items, omni_sql_precache_syntax_groups,
" to use regular expressions to pick up extended syntax group names.
@@ -103,7 +109,7 @@ endif
if exists('g:loaded_sql_completion')
finish
endif
let g:loaded_sql_completion = 150
let g:loaded_sql_completion = 160
let s:keepcpo= &cpo
set cpo&vim
@@ -459,6 +465,29 @@ function! sqlcomplete#Complete(findstart, base)
let s:tbl_cols = []
let s:syn_list = []
let s:syn_value = []
if s:sql_file_table != ""
if g:loaded_dbext >= 2300
call DB_DictionaryDelete("table")
else
DBCompleteTables!
endif
endif
if s:sql_file_procedure != ""
if g:loaded_dbext >= 2300
call DB_DictionaryDelete("procedure")
else
DBCompleteProcedures!
endif
endif
if s:sql_file_view != ""
if g:loaded_dbext >= 2300
call DB_DictionaryDelete("view")
else
DBCompleteViews!
endif
endif
let s:sql_file_table = ""
let s:sql_file_procedure = ""
let s:sql_file_view = ""

View File

@@ -17,6 +17,7 @@ DOCS = \
arabic.txt \
autocmd.txt \
change.txt \
channel.txt \
cmdline.txt \
debug.txt \
debugger.txt \
@@ -151,6 +152,7 @@ HTMLS = \
arabic.html \
autocmd.html \
change.html \
channel.html \
cmdline.html \
debug.html \
debugger.html \

View File

@@ -1,4 +1,4 @@
*change.txt* For Vim version 7.4. Last change: 2015 Oct 17
*change.txt* For Vim version 7.4. Last change: 2016 Jan 31
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -438,8 +438,8 @@ This depends on the 'nrformats' option:
index.
For decimals a leading negative sign is considered for incrementing/
decrementing, for octal and hex values, it won't be considered.
To ignore the sign Visually select the number before using CTRL-A or CTRL-X.
decrementing, for binary, octal and hex values, it won't be considered. To
ignore the sign Visually select the number before using CTRL-A or CTRL-X.
For numbers with leading zeros (including all octal and hexadecimal numbers),
Vim preserves the number of characters in the number when possible. CTRL-A on
@@ -977,8 +977,6 @@ This replaces each 'E' character with a euro sign. Read more in |<Char->|.
`:retab!` may also change a sequence of spaces by
<Tab> characters, which can mess up a printf().
{not in Vi}
Not available when |+ex_extra| feature was disabled at
compile time.
*retab-example*
Example for using autocommands and ":retab" to edit a file which is stored
@@ -1007,7 +1005,7 @@ inside of strings can change! Also see 'softtabstop' option. >
:reg[isters] {arg} Display the contents of the numbered and named
registers that are mentioned in {arg}. For example: >
:dis 1a
:reg 1a
< to display registers '1' and 'a'. Spaces are allowed
in {arg}. {not in Vi}
@@ -1354,22 +1352,16 @@ The next three commands always work on whole lines.
Center lines in [range] between [width] columns
(default 'textwidth' or 80 when 'textwidth' is 0).
{not in Vi}
Not available when |+ex_extra| feature was disabled at
compile time.
:[range]ri[ght] [width] *:ri* *:right*
Right-align lines in [range] at [width] columns
(default 'textwidth' or 80 when 'textwidth' is 0).
{not in Vi}
Not available when |+ex_extra| feature was disabled at
compile time.
*:le* *:left*
:[range]le[ft] [indent]
Left-align lines in [range]. Sets the indent in the
lines to [indent] (default 0). {not in Vi}
Not available when |+ex_extra| feature was disabled at
compile time.
*gq*
gq{motion} Format the lines that {motion} moves over.
@@ -1745,7 +1737,7 @@ Vim has a sorting function and a sorting command. The sorting function can be
found here: |sort()|, |uniq()|.
*:sor* *:sort*
:[range]sor[t][!] [i][u][r][n][x][o][b] [/{pattern}/]
:[range]sor[t][!] [b][f][i][n][o][r][u][x] [/{pattern}/]
Sort lines in [range]. When no range is given all
lines are sorted.
@@ -1753,10 +1745,18 @@ found here: |sort()|, |uniq()|.
With [i] case is ignored.
Options [n][f][x][o][b] are mutually exclusive.
With [n] sorting is done on the first decimal number
in the line (after or inside a {pattern} match).
One leading '-' is included in the number.
With [f] sorting is done on the Float in the line.
The value of Float is determined similar to passing
the text (after or inside a {pattern} match) to
str2float() function. This option is available only
if Vim was compiled with Floating point support.
With [x] sorting is done on the first hexadecimal
number in the line (after or inside a {pattern}
match). A leading "0x" or "0X" is ignored.
@@ -1768,10 +1768,10 @@ found here: |sort()|, |uniq()|.
With [b] sorting is done on the first binary number in
the line (after or inside a {pattern} match).
With [u] only keep the first of a sequence of
identical lines (ignoring case when [i] is used).
Without this flag, a sequence of identical lines
will be kept in their original order.
With [u] (u stands for unique) only keep the first of
a sequence of identical lines (ignoring case when [i]
is used). Without this flag, a sequence of identical
lines will be kept in their original order.
Note that leading and trailing white space may cause
lines to be different.

267
runtime/doc/channel.txt Normal file
View File

@@ -0,0 +1,267 @@
*channel.txt* For Vim version 7.4. Last change: 2016 Jan 31
VIM REFERENCE MANUAL by Bram Moolenaar
Inter-process communication *channel*
DRAFT DRAFT DRAFT DRAFT DRAFT DRAFT DRAFT DRAFT DRAFT DRAFT
Vim uses channels to communicate with other processes.
A channel uses a socket. *socket-interface*
Vim current supports up to 10 simultanious channels.
The Netbeans interface also uses a channel. |netbeans|
1. Demo |channel-demo|
2. Opening a channel |channel-open|
3. Using a JSON channel |channel-use|
4. Vim commands |channel-commands|
5. Using a raw channel |channel-use|
6. Job control |job-control|
{Vi does not have any of these features}
{only available when compiled with the |+channel| feature}
==============================================================================
1. Demo *channel-demo*
This requires Python. The demo program can be found in
$VIMRUNTIME/tools/demoserver.py
Run it in one terminal. We will call this T1.
Run Vim in another terminal. Connect to the demo server with: >
let handle = connect('localhost:8765', 'json')
In T1 you should see:
=== socket opened === ~
You can now send a message to the server: >
echo sendexpr(handle, 'hello!')
The message is received in T1 and a response is sent back to Vim.
You can see the raw messages in T1. What Vim sends is:
[1,"hello!"] ~
And the response is:
[1,"got it"] ~
The number will increase every time you send a message.
The server can send a command to Vim. Type this on T1 (literally, including
the quotes):
["ex","echo 'hi there'"] ~
And you should see the message in Vim. You can move the cursor a word forward:
["normal","w"] ~
To handle asynchronous communication a callback needs to be used: >
func MyHandler(handle, msg)
echo "from the handler: " . a:msg
endfunc
call sendexpr(handle, 'hello!', "MyHandler")
Instead of giving a callback with every send call, it can also be specified
when opening the channel: >
call disconnect(handle)
let handle = connect('localhost:8765', 'json', "MyHandler")
call sendexpr(handle, 'hello!', 0)
==============================================================================
2. Opening a channel *channel-open*
To open a channel:
let handle = connect({address}, {mode}, {callback})
{address} has the form "hostname:port". E.g., "localhost:8765".
{mode} can be: *channel-mode*
"json" - Use JSON, see below; most convenient way
"raw" - Use raw messages
*channel-callback*
{callback} is a function that is called when a message is received that is not
handled otherwise. It gets two arguments: the channel handle and the received
message. Example: >
func Handle(handle, msg)
echo 'Received: ' . a:msg
endfunc
let handle = connect("localhost:8765", 'json', "Handle")
When {mode} is "json" the "msg" argument is the body of the received message,
converted to Vim types.
When {mode} is "raw" the "msg" argument is the whole message as a string.
When {mode} is "json" the {callback} is optional. When omitted it is only
possible to receive a message after sending one.
The handler can be added or changed later: >
call sethandler(handle, {callback})
When {callback} is empty (zero or an empty string) the handler is removed.
Once done with the channel, disconnect it like this: >
call disconnect(handle)
Currently up to 10 channels can be in use at the same time. *E897*
When the channel can't be opened you will get an error message.
*E898* *E899* *E900* *E901* *E902*
If there is an error reading or writing a channel it will be closed.
*E896* *E630* *E631*
==============================================================================
3. Using a JSON channel *channel-use*
If {mode} is "json" then a message can be sent synchronously like this: >
let response = sendexpr(handle, {expr})
This awaits a response from the other side.
To send a message, without handling a response: >
call sendexpr(handle, {expr}, 0)
To send a message and letting the response handled by a specific function,
asynchronously: >
call sendexpr(handle, {expr}, {callback})
The {expr} is converted to JSON and wrapped in an array. An example of the
message that the receiver will get when {expr} is the string "hello":
[12,"hello"] ~
The format of the JSON sent is:
[{number},{expr}]
In which {number} is different every time. It must be used in the response
(if any):
[{number},{response}]
This way Vim knows which sent message matches with which received message and
can call the right handler. Also when the messages arrive out of order.
The sender must always send valid JSON to Vim. Vim can check for the end of
the message by parsing the JSON. It will only accept the message if the end
was received.
When the process wants to send a message to Vim without first receiving a
message, it must use the number zero:
[0,{response}]
Then channel handler will then get {response} converted to Vim types. If the
channel does not have a handler the message is dropped.
On read error or disconnect() the string "DETACH" is sent, if still possible.
The channel will then be inactive.
==============================================================================
4. Vim commands *channel-commands*
PARTLY IMPLEMENTED: only "ex" and "normal" work
With a "json" channel the process can send commands to Vim that will be
handled by Vim internally, it does not require a handler for the channel.
Possible commands are: *E903* *E904* *E905*
["redraw" {forced}]
["ex", {Ex command}]
["normal", {Normal mode command}]
["eval", {expression}, {number}]
["expr", {expression}]
With all of these: Be careful what these commands do! You can easily
interfere with what the user is doing. To avoid trouble use |mode()| to check
that the editor is in the expected state. E.g., to send keys that must be
inserted as text, not executed as a command:
["ex","if mode() == 'i' | call feedkeys('ClassName') | endif"] ~
Errors in these commands are normally not reported to avoid them messing up
the display. If you do want to see them, set the 'verbose' option to 3 or
higher.
Command "redraw" ~
The other commands do not update the screen, so that you can send a sequence
of commands without the cursor moving around. You must end with the "redraw"
command to show any changed text and show the cursor where it belongs.
The argument is normally an empty string:
["redraw", ""] ~
To first clear the screen pass "force":
["redraw", "force"] ~
Command "ex" ~
The "ex" command is executed as any Ex command. There is no response for
completion or error. You could use functions in an |autoload| script:
["ex","call myscript#MyFunc(arg)"]
You can also use "call |feedkeys()|" to insert any key sequence.
Command "normal" ~
The "normal" command is executed like with |:normal!|, commands are not
mapped. Example to open the folds under the cursor:
["normal" "zO"]
Command "eval" ~
The "eval" command an be used to get the result of an expression. For
example, to get the number of lines in the current buffer:
["eval","line('$')"] ~
it will send back the result of the expression:
[{number}, {result}]
Here {number} is the same as what was in the request. Use a negative number
to avoid confusion with message that Vim sends.
{result} is the result of the evaluation and is JSON encoded. If the
evaluation fails it is the string "ERROR".
Command "expr" ~
The "expr" command is similar to "eval", but does not send back any response.
Example:
["expr","setline('$', ['one', 'two', 'three'])"] ~
==============================================================================
5. Using a raw channel *channel-raw*
If {mode} is "raw" then a message can be send like this: >
let response = sendraw(handle, {string})
The {string} is sent as-is. The response will be what can be read from the
channel right away. Since Vim doesn't know how to recognize the end of the
message you need to take care of it yourself.
To send a message, without expecting a response: >
call sendraw(handle, {string}, 0)
The process can send back a response, the channel handler will be called with
it.
To send a message and letting the response handled by a specific function,
asynchronously: >
call sendraw(handle, {string}, {callback})
This {string} can also be JSON, use |jsonencode()| to create it and
|jsondecode()| to handle a received JSON message.
==============================================================================
6. Job control *job-control*
NOT IMPLEMENTED YET
To start another process: >
call startjob({command})
This does not wait for {command} to exit.
TODO:
let handle = startjob({command}, 's') # uses stdin/stdout
let handle = startjob({command}, '', {address}) # uses socket
let handle = startjob({command}, 'd', {address}) # start if connect fails
vim:tw=78:ts=8:ft=help:norl:

View File

@@ -1,4 +1,4 @@
*develop.txt* For Vim version 7.4. Last change: 2014 Mar 27
*develop.txt* For Vim version 7.4. Last change: 2016 Jan 31
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -166,12 +166,27 @@ This list is not complete. Look in the source code for more examples.
MAKING CHANGES *style-changes*
The basic steps to make changes to the code:
1. Adjust the documentation. Doing this first gives you an impression of how
1. Get the code from github. That makes it easier to keep your changed
version in sync with the main code base (it may be a while before your
changes will be included). You do need to spend some time learning git,
it's not the most user friendly tool.
2. Adjust the documentation. Doing this first gives you an impression of how
your changes affect the user.
2. Make the source code changes.
3. Check ../doc/todo.txt if the change affects any listed item.
4. Make a patch with "diff -c" against the unmodified code and docs.
5. Make a note about what changed and include it with the patch.
3. Make the source code changes.
4. Check ../doc/todo.txt if the change affects any listed item.
5. Make a patch with "git diff". You can also create a pull request on
github, but it's the diff that matters.
6. Make a note about what changed, preferably mentioning the problem and the
solution. Send an email to the vim-dev maillist with an explanation and
include the diff. Or create a pull request on github.
C COMPILER *style-compiler*
The minimal C compiler version supported is C89, also known as ANSI C.
Later standards don't add much and C89 is the widest supported.
One restriction that this implies: no // comments, only /* comments */.
USE OF COMMON FUNCTIONS *style-functions*
@@ -197,7 +212,7 @@ NAMES *style-names*
Function names can not be more than 31 characters long (because of VMS).
Don't use "delete" as a variable name, C++ doesn't like it.
Don't use "delete" or "this" as a variable name, C++ doesn't like it.
Because of the requirement that Vim runs on as many systems as possible, we
need to avoid using names that are already defined by the system. This is a
@@ -288,8 +303,27 @@ OK: do
a = 1;
while (cond);
Wrong: if (cond) {
cmd;
cmd;
} else {
cmd;
cmd;
}
Functions start with:
OK: if (cond)
{
cmd;
cmd;
}
else
{
cmd;
cmd;
}
Use ANSI (new style) function declarations with the return type on a separate
indented line.
Wrong: int function_name(int arg1, int arg2)
@@ -299,16 +333,14 @@ OK: /*
* Return value explanation.
*/
int
function_name(arg1, arg2)
int arg1; /* short comment about arg1 */
int arg2; /* short comment about arg2 */
function_name(
int arg1, /* short comment about arg1 */
int arg2) /* short comment about arg2 */
{
int local; /* comment about local */
local = arg1 * arg2;
NOTE: Don't use ANSI style function declarations. A few people still have to
use a compiler that doesn't support it.
SPACES AND PUNCTUATION *style-spaces*

View File

@@ -14,9 +14,7 @@
#define LINELEN 200
int
main(argc, argv)
int argc;
char **argv;
main(int argc, char **argv)
{
char line[LINELEN];
char *p1, *p2;

View File

@@ -1,4 +1,4 @@
*editing.txt* For Vim version 7.4. Last change: 2015 Aug 25
*editing.txt* For Vim version 7.4. Last change: 2016 Feb 01
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -78,7 +78,9 @@ g CTRL-G Prints the current position of the cursor in five
than one position on the screen (<Tab> or special
character), both the "real" column and the screen
column are shown, separated with a dash.
See also 'ruler' option. {not in Vi}
Also see the 'ruler' option and the |wordcount()|
function.
{not in Vi}
*v_g_CTRL-G*
{Visual}g CTRL-G Similar to "g CTRL-G", but Word, Character, Line, and
@@ -637,6 +639,7 @@ list of the current window.
:0argadd x x a b c
:1argadd x a x b c
:$argadd x a b c x
And after the last one:
:+2argadd y a b c x y
There is no check for duplicates, it is possible to
add a file to the argument list twice.
@@ -1105,7 +1108,7 @@ The names can be in upper- or lowercase.
the last file in the argument list has not been
edited. See |:confirm| and 'confirm'. {not in Vi}
:q[uit]! Quit without writing, also when currentl buffer has
:q[uit]! Quit without writing, also when the current buffer has
changes. If this is the last window and there is a
modified hidden buffer, the current buffer is
abandoned and the first changed hidden buffer becomes
@@ -1456,6 +1459,18 @@ using zip, "[blowfish]" when using blowfish, etc.
When writing an undo file, the same key and method will be used for the text
in the undo file. |persistent-undo|.
To test for blowfish support you can use these conditions: >
has('crypt-blowfish')
has('crypt-blowfish2')
This works since Vim 7.4.1099 while blowfish support was added earlier.
Thus the condition failing doesn't mean blowfish is not supported. You can
test for blowfish with: >
v:version >= 703
And for blowfish2 with: >
v:version > 704 || (v:version == 704 && has('patch401'))
If you are sure Vim includes patch 7.4.237 a simpler check is: >
has('patch-7.4.401')
<
*E817* *E818* *E819* *E820*
When encryption does not work properly, you would be able to write your text
to a file and never be able to read it back. Therefore a test is performed to

View File

@@ -1,4 +1,4 @@
*eval.txt* For Vim version 7.4. Last change: 2015 Dec 29
*eval.txt* For Vim version 7.4. Last change: 2016 Feb 01
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -68,14 +68,16 @@ the Number. Examples:
Number 0 --> String "0" ~
Number -1 --> String "-1" ~
*octal*
Conversion from a String to a Number is done by converting the first digits
to a number. Hexadecimal "0xf9" and Octal "017" numbers are recognized. If
the String doesn't start with digits, the result is zero. Examples:
Conversion from a String to a Number is done by converting the first digits to
a number. Hexadecimal "0xf9", Octal "017", and Binary "0b10" numbers are
recognized. If the String doesn't start with digits, the result is zero.
Examples:
String "456" --> Number 456 ~
String "6bar" --> Number 6 ~
String "foo" --> Number 0 ~
String "0xf1" --> Number 241 ~
String "0100" --> Number 64 ~
String "0b101" --> Number 5 ~
String "-8" --> Number -8 ~
String "+8" --> Number 0 ~
@@ -101,6 +103,9 @@ When mixing Number and Float the Number is converted to Float. Otherwise
there is no automatic conversion of Float. You can use str2float() for String
to Float, printf() for Float to String and float2nr() for Float to Number.
*E891* *E892* *E893* *E894*
When expecting a Float a Number can also be used, but nothing else.
*E706* *sticky-type-checking*
You will get an error if you try to change the type of a variable. You need
to |:unlet| it first to avoid this error. String and Number are considered
@@ -871,7 +876,7 @@ cursor: >
:let c = getline(".")[col(".") - 1]
If the length of the String is less than the index, the result is an empty
String. A negative index always results in an empty string (reason: backwards
String. A negative index always results in an empty string (reason: backward
compatibility). Use [-1:] to get the last byte.
If expr8 is a |List| then it results the item at index expr1. See |list-index|
@@ -917,6 +922,11 @@ just above, except that indexes out of range cause an error. Examples: >
Using expr8[expr1] or expr8[expr1a : expr1b] on a |Funcref| results in an
error.
Watch out for confusion between a namespace and a variable followed by a colon
for a sublist: >
mylist[n:] " uses variable n
mylist[s:] " uses namespace s:, error!
expr8.name entry in a |Dictionary| *expr-entry*
@@ -1399,6 +1409,13 @@ v:exception The value of the exception most recently caught and not
:endtry
< Output: "caught oops".
*v:false* *false-variable*
v:false A Number with value zero. Used to put "false" in JSON. See
|jsonencode()|.
When used as a string this evaluates to "false". >
echo v:false
< false ~
*v:fcs_reason* *fcs_reason-variable*
v:fcs_reason The reason why the |FileChangedShell| event was triggered.
Can be used in an autocommand to decide what to do and/or what
@@ -1475,7 +1492,7 @@ v:foldstart Used for 'foldtext': first line of closed fold.
v:hlsearch Variable that indicates whether search highlighting is on.
Setting it makes sense only if 'hlsearch' is enabled which
requires |+extra_search|. Setting this variable to zero acts
the like |:nohlsearch| command, setting it to one acts like >
like the |:nohlsearch| command, setting it to one acts like >
let &hlsearch = &hlsearch
< Note that the value is restored when returning from a
function. |function-search-undo|.
@@ -1532,6 +1549,22 @@ v:mouse_col Column number for a mouse click obtained with |getchar()|.
This is the screen column number, like with |virtcol()|. The
value is zero when there was no mouse button click.
*v:none* *none-variable*
v:none An empty String. Used to put an empty item in JSON. See
|jsonencode()|.
When used as a number this evaluates to zero.
When used as a string this evaluates to "none". >
echo v:none
< none ~
*v:null* *null-variable*
v:null An empty String. Used to put "null" in JSON. See
|jsonencode()|.
When used as a number this evaluates to zero.
When used as a string this evaluates to "null". >
echo v:null
< null ~
*v:oldfiles* *oldfiles-variable*
v:oldfiles List of file names that is loaded from the |viminfo| file on
startup. These are the files that Vim remembers marks for.
@@ -1697,6 +1730,12 @@ v:throwpoint The point where the exception most recently caught and not
:endtry
< Output: "Exception from test.vim, line 2"
*v:true* *true-variable*
v:true A Number with value one. Used to put "true" in JSON. See
|jsonencode()|.
When used as a string this evaluates to "true". >
echo v:true
< true ~
*v:val* *val-variable*
v:val Value of the current item of a |List| or |Dictionary|. Only
valid while evaluating the expression used with |map()| and
@@ -1737,6 +1776,8 @@ USAGE RESULT DESCRIPTION ~
abs( {expr}) Float or Number absolute value of {expr}
acos( {expr}) Float arc cosine of {expr}
add( {list}, {item}) List append {item} to |List| {list}
alloc_fail( {id}, {countdown}, {repeat})
none make memory allocation fail
and( {expr}, {expr}) Number bitwise AND
append( {lnum}, {string}) Number append {string} below line {lnum}
append( {lnum}, {list}) Number append lines {list} below line {lnum}
@@ -1746,9 +1787,11 @@ arglistid( [{winnr} [, {tabnr}]])
Number argument list id
argv( {nr}) String {nr} entry of the argument list
argv( ) List the argument list
assert_equal( {exp}, {act} [, {msg}]) none assert that {exp} equals {act}
assert_false( {actual} [, {msg}]) none assert that {actual} is false
assert_true( {actual} [, {msg}]) none assert that {actual} is true
assert_equal( {exp}, {act} [, {msg}]) none assert {exp} equals {act}
assert_exception({error} [, {msg}]) none assert {error} is in v:exception
assert_fails( {cmd} [, {error}]) none assert {cmd} fails
assert_false( {actual} [, {msg}]) none assert {actual} is false
assert_true( {actual} [, {msg}]) none assert {actual} is true
asin( {expr}) Float arc sine of {expr}
atan( {expr}) Float arc tangent of {expr}
atan2( {expr}, {expr}) Float arc tangent of {expr1} / {expr2}
@@ -1777,6 +1820,8 @@ complete_add( {expr}) Number add completion match
complete_check() Number check for key typed during completion
confirm( {msg} [, {choices} [, {default} [, {type}]]])
Number number of choice picked by user
connect( {address}, {mode} [, {callback}])
Number open a channel
copy( {expr}) any make a shallow copy of {expr}
cos( {expr}) Float cosine of {expr}
cosh( {expr}) Float hyperbolic cosine of {expr}
@@ -1788,7 +1833,7 @@ cursor( {lnum}, {col} [, {off}])
Number move cursor to {lnum}, {col}, {off}
cursor( {list}) Number move cursor to position in {list}
deepcopy( {expr} [, {noref}]) any make a full copy of {expr}
delete( {fname}) Number delete file {fname}
delete( {fname} [, {flags}]) Number delete the file or directory {fname}
did_filetype() Number TRUE if FileType autocommand event used
diff_filler( {lnum}) Number diff filler lines about {lnum}
diff_hlID( {lnum}, {col}) Number diff highlighting at {lnum}/{col}
@@ -1840,7 +1885,7 @@ getcmdpos() Number return cursor position in command-line
getcmdtype() String return current command-line type
getcmdwintype() String return current command-line window type
getcurpos() List position of the cursor
getcwd() String the current working directory
getcwd( [{winnr} [, {tabnr}]]) String get the current working directory
getfontname( [{name}]) String name of font being used
getfperm( {fname}) String file permissions of file {fname}
getfsize( {fname}) Number size in bytes of file {fname}
@@ -1871,7 +1916,8 @@ globpath( {path}, {expr} [, {nosuf} [, {list} [, {alllinks}]]])
String do glob({expr}) for all dirs in {path}
has( {feature}) Number TRUE if feature {feature} supported
has_key( {dict}, {key}) Number TRUE if {dict} has entry {key}
haslocaldir() Number TRUE if current window executed |:lcd|
haslocaldir( [{winnr} [, {tabnr}]])
Number TRUE if the window executed |:lcd|
hasmapto( {what} [, {mode} [, {abbr}]])
Number TRUE if mapping to {what} exists
histadd( {history},{item}) String add an item to a history
@@ -1898,6 +1944,8 @@ isdirectory( {directory}) Number TRUE if {directory} is a directory
islocked( {expr}) Number TRUE if {expr} is locked
items( {dict}) List key-value pairs in {dict}
join( {list} [, {sep}]) String join {list} items into one String
jsondecode( {string}) any decode JSON
jsonencode( {expr}) String encode JSON
keys( {dict}) List keys in {dict}
len( {expr}) Number the length of {expr}
libcall( {lib}, {func}, {arg}) String call {func} in library {lib} with {arg}
@@ -1939,6 +1987,7 @@ nextnonblank( {lnum}) Number line nr of non-blank line >= {lnum}
nr2char( {expr}[, {utf8}]) String single char with ASCII/UTF8 value {expr}
or( {expr}, {expr}) Number bitwise OR
pathshorten( {expr}) String shorten directory names in a path
perleval( {expr}) any evaluate |Perl| expression
pow( {x}, {y}) Float {x} to the power of {y}
prevnonblank( {lnum}) Number line nr of non-blank line <= {lnum}
printf( {fmt}, {expr1}...) String format text
@@ -1980,6 +2029,10 @@ searchpairpos( {start}, {middle}, {end} [, {flags} [, {skip} [...]]])
List search for other end of start/end pair
searchpos( {pattern} [, {flags} [, {stopline} [, {timeout}]]])
List search for {pattern}
sendexpr( {handle}, {expr} [, {callback}])
any send {expr} over JSON channel {handle}
sendraw( {handle}, {string} [, {callback}])
any send {string} over raw channel {handle}
server2client( {clientid}, {string})
Number send reply string
serverlist() String get a list of available servers
@@ -2073,6 +2126,7 @@ winrestcmd() String returns command to restore window sizes
winrestview( {dict}) none restore view of current window
winsaveview() Dict save view of current window
winwidth( {nr}) Number width of window {nr}
wordcount() Dict get byte/char/word statistics
writefile( {list}, {fname} [, {flags}])
Number write list of lines to file {fname}
xor( {expr}, {expr}) Number bitwise XOR
@@ -2115,6 +2169,13 @@ add({list}, {expr}) *add()*
Use |insert()| to add an item at another position.
alloc_fail({id}, {countdown}, {repeat}) *alloc_fail()*
This is for testing: If the memory allocation with {id} is
called, then decrement {countdown}, and when it reaches zero
let memory allocation fail {repeat} times. When {repeat} is
smaller than one it fails one time.
and({expr}, {expr}) *and()*
Bitwise AND on the two arguments. The arguments are converted
to a number. A List, Dict or Float argument causes an error.
@@ -2167,7 +2228,7 @@ argv([{nr}]) The result is the {nr}th file in the argument list of the
returned.
*assert_equal()*
assert_equal({expected}, {actual}, [, {msg}])
assert_equal({expected}, {actual} [, {msg}])
When {expected} and {actual} are not equal an error message is
added to |v:errors|.
There is no automatic conversion, the String "4" is different
@@ -2181,18 +2242,36 @@ assert_equal({expected}, {actual}, [, {msg}])
< Will result in a string to be added to |v:errors|:
test.vim line 12: Expected 'foo' but got 'bar' ~
assert_false({actual}, [, {msg}]) *assert_false()*
assert_exception({error} [, {msg}]) *assert_exception()*
When v:exception does not contain the string {error} an error
message is added to |v:errors|.
This can be used to assert that a command throws an exception.
Using the error number, followed by a colon, avoids problems
with translations: >
try
commandthatfails
call assert_false(1, 'command should have failed')
catch
call assert_exception('E492:')
endtry
assert_fails({cmd} [, {error}]) *assert_fails()*
Run {cmd} and add an error message to |v:errors| if it does
NOT produce an error.
When {error} is given it must match |v:errmsg|.
assert_false({actual} [, {msg}]) *assert_false()*
When {actual} is not false an error message is added to
|v:errors|, like with |assert_equal()|..
|v:errors|, like with |assert_equal()|.
A value is false when it is zero. When "{actual}" is not a
number the assert fails.
When {msg} is omitted an error in the form "Expected False but
got {actual}" is produced.
assert_true({actual}, [, {msg}]) *assert_true()*
assert_true({actual} [, {msg}]) *assert_true()*
When {actual} is not true an error message is added to
|v:errors|, like with |assert_equal()|..
A value is true when it is a non-zeron number. When {actual}
|v:errors|, like with |assert_equal()|.
A value is true when it is a non-zero number. When {actual}
is not a number the assert fails.
When {msg} is omitted an error in the form "Expected True but
got {actual}" is produced.
@@ -2587,6 +2666,20 @@ confirm({msg} [, {choices} [, {default} [, {type}]]])
don't fit, a vertical layout is used anyway. For some systems
the horizontal layout is always used.
connect({address}, {mode} [, {callback}]) *connect()*
Open a channel to {address}. See |channel|.
Returns the channel handle on success. Returns a negative
number for failure.
{address} has the form "hostname:port", e.g.,
"localhost:8765".
{mode} is either "json" or "raw". See |channel-mode| for the
meaning.
{callback} is a function that handles received messages on the
channel. See |channel-callback|.
*copy()*
copy({expr}) Make a copy of {expr}. For Numbers and Strings this isn't
different from using {expr} directly.
@@ -2716,10 +2809,20 @@ deepcopy({expr}[, {noref}]) *deepcopy()* *E698*
{noref} set to 1 will fail.
Also see |copy()|.
delete({fname}) *delete()*
Deletes the file by the name {fname}. The result is a Number,
which is 0 if the file was deleted successfully, and non-zero
when the deletion failed.
delete({fname} [, {flags}]) *delete()*
Without {flags} or with {flags} empty: Deletes the file by the
name {fname}. This also works when {fname} is a symbolic link.
When {flags} is "d": Deletes the directory by the name
{fname}. This fails when directory {fname} is not empty.
When {flags} is "rf": Deletes the directory by the name
{fname} and everything in it, recursively. BE CAREFUL!
A symbolic link itself is deleted, not what it points to.
The result is a Number, which is 0 if the delete operation was
successful and -1 when the deletion failed or partly failed.
Use |remove()| to delete an item from a |List|.
To delete a line from the buffer use |:delete|. Use |:exe|
when the line number is in a variable.
@@ -2759,6 +2862,7 @@ empty({expr}) *empty()*
Return the Number 1 if {expr} is empty, zero otherwise.
A |List| or |Dictionary| is empty when it does not have any
items. A Number is empty when its value is zero.
|v:false|, |v:none| and |v:null| are empty, |v:true| is not.
For a long |List| this is much faster than comparing the
length with zero.
@@ -3050,6 +3154,11 @@ feedkeys({string} [, {mode}]) *feedkeys()*
if coming from a mapping. This matters for undo,
opening folds, etc.
'i' Insert the string instead of appending (see above).
'x' Execute commands until typeahead is empty. This is
similar to using ":normal!". You can call feedkeys()
several times without 'x' and then one time with 'x'
(possibly with an empty {string}) to execute all the
typeahead.
Return value is always 0.
filereadable({file}) *filereadable()*
@@ -3465,7 +3574,7 @@ getcmdwintype() *getcmdwintype()*
*getcurpos()*
getcurpos() Get the position of the cursor. This is like getpos('.'), but
includes an extra item in the list:
[bufnum, lnum, col, off, curswant]
[bufnum, lnum, col, off, curswant] ~
The "curswant" number is the preferred column when moving the
cursor vertically.
This can be used to save and restore the cursor position: >
@@ -3474,8 +3583,16 @@ getcurpos() Get the position of the cursor. This is like getpos('.'), but
call setpos('.', save_cursor)
<
*getcwd()*
getcwd() The result is a String, which is the name of the current
getcwd([{winnr} [, {tabnr}]])
The result is a String, which is the name of the current
working directory.
Without arguments, for the current window.
With {winnr} return the local current directory of this window
in the current tab page.
With {winnr} and {tabnr} return the local current directory of
the window in the specified tab page.
Return an empty string if the arguments are invalid.
getfsize({fname}) *getfsize()*
The result is a Number, which is the size in bytes of the
@@ -3539,7 +3656,8 @@ getftype({fname}) *getftype()*
getftype("/home")
< Note that a type such as "link" will only be returned on
systems that support it. On some systems only "dir" and
"file" are returned.
"file" are returned. On MS-Windows a symbolic link to a
directory returns "dir" instead of "link".
*getline()*
getline({lnum} [, {end}])
@@ -3763,7 +3881,9 @@ glob2regpat({expr}) *glob2regpat()*
if filename =~ glob2regpat('Make*.mak')
< This is equivalent to: >
if filename =~ '^Make.*\.mak$'
<
< When {expr} is an empty string the result is "^$", match an
empty string.
*globpath()*
globpath({path}, {expr} [, {nosuf} [, {list} [, {allinks}]]])
Perform glob() on all directories in {path} and concatenate
@@ -3811,9 +3931,15 @@ has_key({dict}, {key}) *has_key()*
The result is a Number, which is 1 if |Dictionary| {dict} has
an entry with key {key}. Zero otherwise.
haslocaldir() *haslocaldir()*
The result is a Number, which is 1 when the current
window has set a local path via |:lcd|, and 0 otherwise.
haslocaldir([{winnr} [, {tabnr}]]) *haslocaldir()*
The result is a Number, which is 1 when the window has set a
local path via |:lcd|, and 0 otherwise.
Without arguments use the current window.
With {winnr} use this window in the current tab page.
With {winnr} and {tabnr} use the window in the specified tab
page.
Return 0 if the arguments are invalid.
hasmapto({what} [, {mode} [, {abbr}]]) *hasmapto()*
The result is a Number, which is 1 if there is a mapping that
@@ -4143,6 +4269,48 @@ join({list} [, {sep}]) *join()*
converted into a string like with |string()|.
The opposite function is |split()|.
jsondecode({string}) *jsondecode()*
This parses a JSON formatted string and returns the equivalent
in Vim values. See |jsonencode()| for the relation between
JSON and Vim values.
The decoding is permissive:
- A trailing comma in an array and object is ignored.
- An empty item in an array, two commas with nothing or white
space in between, results in v:none.
- When an object member name is not a string it is converted
to a string. E.g. the number 123 is used as the string
"123".
- More floating point numbers are recognized, e.g. "1." for
"1.0".
The result must be a valid Vim type:
- An empty object member name is not allowed.
- Duplicate object member names are not allowed.
jsonencode({expr}) *jsonencode()*
Encode {expr} as JSON and return this as a string.
The encoding is specified in:
https://tools.ietf.org/html/rfc7159.html
Vim values are converted as follows:
Number decimal number
Float floating point number
String in double quotes (possibly null)
Funcref not possible, error
List as an array (possibly null); when
used recursively: []
Dict as an object (possibly null); when
used recursively: {}
v:false "false"
v:true "true"
v:none nothing
v:null "null"
Note that using v:none is permitted, although the JSON
standard does not allow empty items. This can be useful for
omitting items in an array:
[0,,,,,5] ~
This is much more efficient than:
[0,null,null,null,null,5] ~
But a strict JSON parser will not accept it.
keys({dict}) *keys()*
Return a |List| with all the keys of {dict}. The |List| is in
arbitrary order.
@@ -4500,8 +4668,8 @@ matchadd({group}, {pattern}[, {priority}[, {id} [, {dict}]]])
respectively. If the {id} argument is not specified or -1,
|matchadd()| automatically chooses a free ID.
The optional {dict} argmument allows for further custom
values. Currently this is used to specify a match specifc
The optional {dict} argument allows for further custom
values. Currently this is used to specify a match specific
conceal character that will be shown for |hl-Conceal|
highlighted matches. The dict can have the following members:
@@ -4731,6 +4899,17 @@ pathshorten({expr}) *pathshorten()*
< ~/.v/a/myfile.vim ~
It doesn't matter if the path exists or not.
perleval({expr}) *perleval()*
Evaluate Perl expression {expr} in scalar context and return
its result converted to Vim data structures. If value can't be
converted, it is returned as a string Perl representation.
Note: If you want an array or hash, {expr} must return a
reference to it.
Example: >
:echo perleval('[1 .. 4]')
< [1, 2, 3, 4]
{only available when compiled with the |+perl| feature}
pow({x}, {y}) *pow()*
Return the power of {x} to the exponent {y} as a |Float|.
{x} and {y} must evaluate to a |Float| or a |Number|.
@@ -5245,7 +5424,7 @@ search({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *search()*
'ignorecase', 'smartcase' and 'magic' are used.
When the 'z' flag is not given seaching always starts in
When the 'z' flag is not given, searching always starts in
column zero and then matches before the cursor are skipped.
When the 'c' flag is present in 'cpo' the next search starts
after the match. Without the 'c' flag the next search starts
@@ -5436,6 +5615,23 @@ searchpos({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *searchpos()*
< In this example "submatch" is 2 when a lowercase letter is
found |/\l|, 3 when an uppercase letter is found |/\u|.
sendexpr({handle}, {expr} [, {callback}]) *sendexpr()*
Send {expr} over JSON channel {handle}. See |channel-use|.
When {callback} is given returns immediately. Without
{callback} waits for a JSON response and returns the decoded
expression. When there is an error or timeout returns an
empty string.
When {callback} is zero no response is expected.
Otherwise {callback} must be a Funcref or the name of a
function. It is called when the response is received. See
|channel-callback|.
sendraw({handle}, {string} [, {callback}]) *sendraw()*
Send {string} over raw channel {handle}. See |channel-raw|.
Works like |sendexpr()|, but does not decode the response.
server2client( {clientid}, {string}) *server2client()*
Send a reply string to {clientid}. The most recent {clientid}
that sent a string can be retrieved with expand("<client>").
@@ -5738,18 +5934,8 @@ shellescape({string} [, {special}]) *shellescape()*
shiftwidth() *shiftwidth()*
Returns the effective value of 'shiftwidth'. This is the
'shiftwidth' value unless it is zero, in which case it is the
'tabstop' value. To be backwards compatible in indent
plugins, use this: >
if exists('*shiftwidth')
func s:sw()
return shiftwidth()
endfunc
else
func s:sw()
return &sw
endfunc
endif
< And then use s:sw() instead of &sw.
'tabstop' value. This function was introduced with patch
7.3.694 in 2012, everybody should have it by now.
simplify({filename}) *simplify()*
@@ -5814,6 +6000,9 @@ sort({list} [, {func} [, {dict}]]) *sort()* *E702*
sorted numerical. This is like 'n' but a string containing
digits will be used as the number they represent.
When {func} is given and it is 'f' then all items will be
sorted numerical. All values must be a Number or a Float.
When {func} is a |Funcref| or a function name, this function
is called to compare items. The function is invoked with two
items as argument and must return zero if they are equal, 1 or
@@ -5955,12 +6144,14 @@ str2float( {expr}) *str2float()*
str2nr( {expr} [, {base}]) *str2nr()*
Convert string {expr} to a number.
{base} is the conversion base, it can be 8, 10 or 16.
{base} is the conversion base, it can be 2, 8, 10 or 16.
When {base} is omitted base 10 is used. This also means that
a leading zero doesn't cause octal conversion to be used, as
with the default String to Number conversion.
When {base} is 16 a leading "0x" or "0X" is ignored. With a
different base the result will be zero.
different base the result will be zero. Similarly, when
{base} is 8 a leading "0" is ignored, and when {base} is 2 a
leading "0b" or "0B" is ignored.
Text after the number is silently ignored.
@@ -6488,6 +6679,8 @@ type({expr}) The result is a Number, depending on the type of {expr}:
List: 3
Dictionary: 4
Float: 5
Boolean: 6 (v:false and v:true)
None 7 (v:null and v:none)
To avoid the magic numbers it should be used this way: >
:if type(myvar) == type(0)
:if type(myvar) == type("")
@@ -6495,6 +6688,8 @@ type({expr}) The result is a Number, depending on the type of {expr}:
:if type(myvar) == type([])
:if type(myvar) == type({})
:if type(myvar) == type(0.0)
:if type(myvar) == type(v:false)
:if type(myvar) == type(v:none
undofile({name}) *undofile()*
Return the name of the undo file that would be used for a file
@@ -6740,6 +6935,28 @@ winwidth({nr}) *winwidth()*
: exe "normal 50\<C-W>|"
:endif
<
wordcount() *wordcount()*
The result is a dictionary of byte/chars/word statistics for
the current buffer. This is the same info as provided by
|g_CTRL-G|
The return value includes:
bytes Number of bytes in the buffer
chars Number of chars in the buffer
words Number of words in the buffer
cursor_bytes Number of bytes before cursor position
(not in Visual mode)
cursor_chars Number of chars before cursor position
(not in Visual mode)
cursor_words Number of words before cursor position
(not in Visual mode)
visual_bytes Number of bytes visually selected
(only in Visual mode)
visual_chars Number of chars visually selected
(only in Visual mode)
visual_words Number of chars visually selected
(only in Visual mode)
*writefile()*
writefile({list}, {fname} [, {flags}])
Write |List| {list} to file {fname}. Each list item is
@@ -6838,7 +7055,7 @@ ebcdic Compiled on a machine with ebcdic character set.
emacs_tags Compiled with support for Emacs tags.
eval Compiled with expression evaluation support. Always
true, of course!
ex_extra Compiled with extra Ex commands |+ex_extra|.
ex_extra |+ex_extra|, always true now
extra_search Compiled with support for |'incsearch'| and
|'hlsearch'|
farsi Compiled with Farsi support |farsi|.
@@ -7583,7 +7800,7 @@ This does NOT work: >
From Vim version 4.5 until 5.0, every Ex command in
between the ":if" and ":endif" is ignored. These two
commands were just to allow for future expansions in a
backwards compatible way. Nesting was allowed. Note
backward compatible way. Nesting was allowed. Note
that any ":else" or ":elseif" was ignored, the "else"
part was not executed either.

View File

@@ -1,4 +1,4 @@
*help.txt* For Vim version 7.4. Last change: 2015 Jun 21
*help.txt* For Vim version 7.4. Last change: 2016 Jan 10
VIM - main help file
k
@@ -10,14 +10,14 @@ Close this window: Use ":q<Enter>".
Jump to a subject: Position the cursor on a tag (e.g. |bars|) and hit CTRL-].
With the mouse: ":set mouse=a" to enable the mouse (in xterm or GUI).
Double-click the left mouse button on a tag, e.g. |bars|.
Jump back: Type CTRL-T or CTRL-O (repeat to go further back).
Jump back: Type CTRL-T or CTRL-O. Repeat to go further back.
Get specific help: It is possible to go directly to whatever you want help
on, by giving an argument to the |:help| command.
It is possible to further specify the context:
*help-context*
Prepend something to specify the context: *help-context*
WHAT PREPEND EXAMPLE ~
Normal mode command (nothing) :help x
Normal mode command :help x
Visual mode command v_ :help v_u
Insert mode command i_ :help i_<Esc>
Command-line command : :help :quit
@@ -25,6 +25,8 @@ Get specific help: It is possible to go directly to whatever you want help
Vim command argument - :help -r
Option ' :help 'textwidth'
Regular expression / :help /[
See |help-summary| for more contexts and an explanation.
Search for help: Type ":help word", then hit CTRL-D to see matching
help entries for "word".
Or use ":helpgrep word". |:helpgrep|

View File

@@ -1,4 +1,4 @@
*if_mzsch.txt* For Vim version 7.4. Last change: 2012 Dec 17
*if_mzsch.txt* For Vim version 7.4. Last change: 2016 Jan 24
VIM REFERENCE MANUAL by Sergey Khorev
@@ -13,6 +13,7 @@ The MzScheme Interface to Vim *mzscheme* *MzScheme*
5. mzeval() Vim function |mzscheme-mzeval|
6. Using Function references |mzscheme-funcref|
7. Dynamic loading |mzscheme-dynamic|
8. MzScheme setup |mzscheme-setup|
{Vi does not have any of these commands}
@@ -264,7 +265,7 @@ directly from Scheme. For instance: >
<
==============================================================================
7. Dynamic loading *mzscheme-dynamic* *E815*
7. Dynamic loading *mzscheme-dynamic* *E815*
On MS-Windows the MzScheme libraries can be loaded dynamically. The |:version|
output then includes |+mzscheme/dyn|.
@@ -272,6 +273,9 @@ output then includes |+mzscheme/dyn|.
This means that Vim will search for the MzScheme DLL files only when needed.
When you don't use the MzScheme interface you don't need them, thus you can
use Vim without these DLL files.
NOTE: Newer version of MzScheme (Racket) require earlier (trampolined)
initialisation via scheme_main_setup. So Vim always loads the MzScheme DLL at
startup if possible.
To use the MzScheme interface the MzScheme DLLs must be in your search path.
In a console window type "path" to see what directories are used.
@@ -282,5 +286,24 @@ For MzScheme version 209 they will be "libmzsch209_000.dll" and
command, look for -DDYNAMIC_MZSCH_DLL="something" and
-DDYNAMIC_MZGC_DLL="something" in the "Compilation" info.
For example, if MzScheme (Racket) is installed at C:\Racket63, you may need
to set the environment variable as the following: >
PATH=%PATH%;C:\Racket63\lib
PLTCOLLECTS=C:\Racket63\collects
PLTCONFIGDIR=C:\Racket63\etc
<
==============================================================================
8. MzScheme setup *mzscheme-setup* *E895*
Vim requires "racket/base" module for if_mzsch core (fallback to "scheme/base"
if it doesn't exist), "r5rs" module for test and "raco ctool" command for
building Vim. If MzScheme did not have them, you can install them with
MzScheme's raco command:
>
raco pkg install scheme-lib # scheme/base module
raco pkg install r5rs-lib # r5rs module
raco pkg install cext-lib # raco ctool command
<
======================================================================
vim:tw=78:ts=8:sts=4:ft=help:norl:

View File

@@ -1,4 +1,4 @@
*if_tcl.txt* For Vim version 7.4. Last change: 2012 Aug 02
*if_tcl.txt* For Vim version 7.4. Last change: 2016 Jan 01
VIM REFERENCE MANUAL by Ingo Wilken
@@ -515,19 +515,29 @@ startup file (usually "~/.vimrc" on Unix):
==============================================================================
9. Dynamic loading *tcl-dynamic*
On MS-Windows the Tcl library can be loaded dynamically. The |:version|
output then includes |+tcl/dyn|.
On MS-Windows and Unix the Tcl library can be loaded dynamically. The
|:version| output then includes |+tcl/dyn|.
This means that Vim will search for the Tcl DLL file only when needed. When
you don't use the Tcl interface you don't need it, thus you can use Vim
without this DLL file.
This means that Vim will search for the Tcl DLL or shared library file only
when needed. When you don't use the Tcl interface you don't need it, thus you
can use Vim without this file.
MS-Windows ~
To use the Tcl interface the Tcl DLL must be in your search path. In a
console window type "path" to see what directories are used.
The name of the DLL must match the Tcl version Vim was compiled with.
Currently the name is "tcl83.dll". That is for Tcl 8.3. To know for sure
Currently the name is "tcl86.dll". That is for Tcl 8.6. To know for sure
edit "gvim.exe" and search for "tcl\d*.dll\c".
Unix ~
The 'tcldll' option can be used to specify the Tcl shared library file instead
of DYNAMIC_TCL_DLL file what was specified at compile time. The version of
the shared library must match the Tcl version Vim was compiled with.
==============================================================================
vim:tw=78:ts=8:ft=help:norl:

View File

@@ -1,4 +1,4 @@
*index.txt* For Vim version 7.4. Last change: 2015 Sep 08
*index.txt* For Vim version 7.4. Last change: 2016 Jan 19
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1055,7 +1055,7 @@ tag command action in Command-line editing mode ~
|c_<Insert>| <Insert> toggle insert/overstrike mode
|c_<LeftMouse>| <LeftMouse> cursor at mouse click
You found it, Arthur! *holy-grail*
You found it, Arthur! *holy-grail* *:smile*
==============================================================================
5. EX commands *ex-cmd-index* *:index*
@@ -1176,7 +1176,7 @@ tag command action ~
|:cpfile| :cpf[ile] go to last error in previous file
|:cquit| :cq[uit] quit Vim with an error code
|:crewind| :cr[ewind] go to the specified error, default first one
|:cscope| :cs[cope] execute cscope command
|:cscope| :cs[cope] execute cscope command
|:cstag| :cst[ag] use cscope to jump to a tag
|:cunmap| :cu[nmap] like ":unmap" but for Command-line mode
|:cunabbrev| :cuna[bbrev] like ":unabbrev" but for Command-line mode
@@ -1297,7 +1297,7 @@ tag command action ~
|:lcd| :lc[d] change directory locally
|:lchdir| :lch[dir] change directory locally
|:lclose| :lcl[ose] close location window
|:lcscope| :lcs[cope] like ":cscope" but uses location list
|:lcscope| :lcs[cope] like ":cscope" but uses location list
|:ldo| :ld[o] execute command in valid location list entries
|:lfdo| :lfd[o] execute command in each file in location list
|:left| :le[ft] left align lines
@@ -1351,7 +1351,7 @@ tag command action ~
|:marks| :marks list all marks
|:match| :mat[ch] define a match to highlight
|:menu| :me[nu] enter a new menu item
|:menutranslate| :menut[ranslate] add a menu translation item
|:menutranslate| :menut[ranslate] add a menu translation item
|:messages| :mes[sages] view previously displayed messages
|:mkexrc| :mk[exrc] write current mappings and settings to a file
|:mksession| :mks[ession] write session info to a file
@@ -1495,6 +1495,7 @@ tag command action ~
|:smap| :smap like ":map" but for Select mode
|:smapclear| :smapc[lear] remove all mappings for Select mode
|:smenu| :sme[nu] add menu for Select mode
|:smile| :smi[le] make the user happy
|:snext| :sn[ext] split window and go to next file in the
argument list
|:sniff| :sni[ff] send request to sniff
@@ -1517,7 +1518,7 @@ tag command action ~
|:stop| :st[op] suspend the editor or escape to a shell
|:stag| :sta[g] split window and jump to a tag
|:startinsert| :star[tinsert] start Insert mode
|:startgreplace| :startg[replace] start Virtual Replace mode
|:startgreplace| :startg[replace] start Virtual Replace mode
|:startreplace| :startr[eplace] start Replace mode
|:stopinsert| :stopi[nsert] stop Insert mode
|:stjump| :stj[ump] do ":tjump" and split window
@@ -1538,14 +1539,14 @@ tag command action ~
|:tabdo| :tabdo execute command in each tab page
|:tabedit| :tabe[dit] edit a file in a new tab page
|:tabfind| :tabf[ind] find file in 'path', edit it in a new tab page
|:tabfirst| :tabfir[st] got to first tab page
|:tablast| :tabl[ast] got to last tab page
|:tabfirst| :tabfir[st] go to first tab page
|:tablast| :tabl[ast] go to last tab page
|:tabmove| :tabm[ove] move tab page to other position
|:tabnew| :tabnew edit a file in a new tab page
|:tabnext| :tabn[ext] go to next tab page
|:tabonly| :tabo[nly] close all tab pages except the current one
|:tabprevious| :tabp[revious] go to previous tab page
|:tabrewind| :tabr[ewind] got to first tab page
|:tabrewind| :tabr[ewind] go to first tab page
|:tabs| :tabs list the tab pages and what they contain
|:tab| :tab create new tab when opening new window
|:tag| :ta[g] jump to tag

View File

@@ -1,4 +1,4 @@
*insert.txt* For Vim version 7.4. Last change: 2015 Sep 15
*insert.txt* For Vim version 7.4. Last change: 2016 Jan 31
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1872,8 +1872,6 @@ NOTE: These commands cannot be used with |:global| or |:vglobal|.
or script is finished.
This command does not work from |:normal|.
{not in Vi}
{not available when compiled without the |+ex_extra|
feature}
*:stopi* *:stopinsert*
:stopi[nsert] Stop Insert mode as soon as possible. Works like
@@ -1891,15 +1889,11 @@ NOTE: These commands cannot be used with |:global| or |:vglobal|.
script that the replacement will only start after
the function or script is finished.
{not in Vi}
{not available when compiled without the |+ex_extra|
feature}
*:startgreplace*
:startg[replace][!] Just like |:startreplace|, but use Virtual Replace
mode, like with |gR|.
{not in Vi}
{not available when compiled without the |+ex_extra|
feature}
==============================================================================
10. Inserting a file *inserting-file*

View File

@@ -1,4 +1,4 @@
*map.txt* For Vim version 7.4. Last change: 2014 Dec 08
*map.txt* For Vim version 7.4. Last change: 2016 Jan 10
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -483,7 +483,7 @@ internal code is written to the script file.
1.6 SPECIAL CHARACTERS *:map-special-chars*
*map_backslash*
*map_backslash* *map-backslash*
Note that only CTRL-V is mentioned here as a special character for mappings
and abbreviations. When 'cpoptions' does not contain 'B', a backslash can
also be used like CTRL-V. The <> notation can be fully used then |<>|. But
@@ -494,21 +494,21 @@ To map a backslash, or use a backslash literally in the {rhs}, the special
sequence "<Bslash>" can be used. This avoids the need to double backslashes
when using nested mappings.
*map_CTRL-C*
*map_CTRL-C* *map-CTRL-C*
Using CTRL-C in the {lhs} is possible, but it will only work when Vim is
waiting for a key, not when Vim is busy with something. When Vim is busy
CTRL-C interrupts/breaks the command.
When using the GUI version on MS-Windows CTRL-C can be mapped to allow a Copy
command to the clipboard. Use CTRL-Break to interrupt Vim.
*map_space_in_lhs*
*map_space_in_lhs* *map-space_in_lhs*
To include a space in {lhs} precede it with a CTRL-V (type two CTRL-Vs for
each space).
*map_space_in_rhs*
*map_space_in_rhs* *map-space_in_rhs*
If you want a {rhs} that starts with a space, use "<Space>". To be fully Vi
compatible (but unreadable) don't use the |<>| notation, precede {rhs} with a
single CTRL-V (you have to type CTRL-V two times).
*map_empty_rhs*
*map_empty_rhs* *map-empty-rhs*
You can create an empty {rhs} by typing nothing after a single CTRL-V (you
have to type CTRL-V two times). Unfortunately, you cannot do this in a vimrc
file.
@@ -583,7 +583,7 @@ Upper and lowercase differences are ignored.
It is not possible to put a comment after these commands, because the '"'
character is considered to be part of the {lhs} or {rhs}.
*map_bar*
*map_bar* *map-bar*
Since the '|' character is used to separate a map command from the next
command, you will have to do something special to include a '|' in {rhs}.
There are three methods:
@@ -601,7 +601,7 @@ When 'b' is present in 'cpoptions', "\|" will be recognized as a mapping
ending in a '\' and then another command. This is Vi compatible, but
illogical when compared to other commands.
*map_return*
*map_return* *map-return*
When you have a mapping that contains an Ex command, you need to put a line
terminator after it to have it executed. The use of <CR> is recommended for
this (see |<>|). Example: >

View File

@@ -1,4 +1,4 @@
*mlang.txt* For Vim version 7.4. Last change: 2012 Jan 15
*mlang.txt* For Vim version 7.4. Last change: 2016 Jan 16
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -97,13 +97,15 @@ If you used the self-installing .exe file, message translations should work
already. Otherwise get the libintl.dll file if you don't have it yet:
http://sourceforge.net/projects/gettext
Or:
https://mlocati.github.io/gettext-iconv-windows/
This also contains tools xgettext, msgformat and others.
libintl.dll should be placed in same directory with (g)vim.exe, or some
place where PATH environment value describe. Message files (vim.mo)
have to be placed in "$VIMRUNTIME/lang/xx/LC_MESSAGES", where "xx" is the
abbreviation of the language (mostly two letters).
place where PATH environment value describe. Vim also finds libintl-8.dll.
Message files (vim.mo) have to be placed in "$VIMRUNTIME/lang/xx/LC_MESSAGES",
where "xx" is the abbreviation of the language (mostly two letters).
If you write your own translations you need to generate the .po file and
convert it to a .mo file. You need to get the source distribution and read

View File

@@ -1,10 +1,10 @@
*netbeans.txt* For Vim version 7.4. Last change: 2015 Mar 14
*netbeans.txt* For Vim version 7.4. Last change: 2016 Jan 31
VIM REFERENCE MANUAL by Gordon Prieur et al.
*socket-interface* *netbeans* *netbeans-support*
*netbeans* *netbeans-support*
Vim NetBeans Protocol: a socket interface for Vim integration into an IDE.
@@ -823,7 +823,7 @@ REJECT Not used.
6.7 Protocol errors *nb-protocol_errors*
These errors occur when a message violates the protocol:
*E627* *E628* *E629* *E630* *E631* *E632* *E633* *E634* *E635* *E636*
*E627* *E628* *E629* *E632* *E633* *E634* *E635* *E636*
*E637* *E638* *E639* *E640* *E641* *E642* *E643* *E644* *E645* *E646*
*E647* *E648* *E649* *E650* *E651* *E652* *E653* *E654*

View File

@@ -1,4 +1,4 @@
*options.txt* For Vim version 7.4. Last change: 2015 Nov 23
*options.txt* For Vim version 7.4. Last change: 2016 Feb 01
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2295,7 +2295,7 @@ A jump table for the options with a short description can be found at |Q_op|.
the encrypted bytes will be different.
*blowfish2*
blowfish2 Blowfish method. Medium strong encryption. Requires
Vim 7.4.399 or later, files can NOT be read by Vim 7.3
Vim 7.4.401 or later, files can NOT be read by Vim 7.3
and older. This adds a "seed" to the file, every time
you write the file the encrypted bytes will be
different. The whole undo file is encrypted, not just
@@ -4489,6 +4489,8 @@ A jump table for the options with a short description can be found at |Q_op|.
'*', '"' and '|' (so that CTRL-] on a command finds the help for that
command).
When the 'lisp' option is on the '-' character is always included.
This option also influences syntax highlighting, unless the syntax
uses |:syn-iskeyword|.
NOTE: This option is set to the Vi default value when 'compatible' is
set and to the Vim default value when 'compatible' is reset.
@@ -4603,7 +4605,7 @@ A jump table for the options with a short description can be found at |Q_op|.
feature}
This option allows switching your keyboard into a special language
mode. When you are typing text in Insert mode the characters are
inserted directly. When in command mode the 'langmap' option takes
inserted directly. When in Normal mode the 'langmap' option takes
care of translating these special characters to the original meaning
of the key. This means you don't have to change the keyboard mode to
be able to execute Normal mode commands.
@@ -4848,13 +4850,13 @@ A jump table for the options with a short description can be found at |Q_op|.
reset this option. |-u| |--noplugin|
*'luadll'*
'luadll' string (default empty)
'luadll' string (default depends on the build)
global
{not in Vi} {only for Unix}
{not in Vi}
{only available when compiled with the |+lua/dyn|
feature}
Specifies the path of the Lua shared library instead of DYNAMIC_LUA_DLL
what was specified at compile time.
Specifies the name of the Lua shared library. The default is
DYNAMIC_LUA_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
@@ -5019,8 +5021,11 @@ A jump table for the options with a short description can be found at |Q_op|.
{not in Vi}
Maximum amount of memory in Kbyte to use for all buffers together.
The maximum usable value is about 2000000 (2 Gbyte). Use this to work
without a limit. On 64 bit machines higher values might work. But
hey, do you really need more than 2 Gbyte for text editing?
without a limit.
On 64 bit machines higher values might work. But hey, do you really
need more than 2 Gbyte for text editing? Keep in mind that text is
stored in the swap file, one can edit files > 2 Gbyte anyay. We do
need the memory to store undo info.
Also see 'maxmem'.
*'menuitems'* *'mis'*
@@ -5294,7 +5299,7 @@ A jump table for the options with a short description can be found at |Q_op|.
Negative or zero value means no thread scheduling.
*'nrformats'* *'nf'*
'nrformats' 'nf' string (default "octal,hex")
'nrformats' 'nf' string (default "bin,octal,hex")
local to buffer
{not in Vi}
This defines what bases Vim will consider for numbers when using the
@@ -5308,6 +5313,9 @@ A jump table for the options with a short description can be found at |Q_op|.
hex If included, numbers starting with "0x" or "0X" will be
considered to be hexadecimal. Example: Using CTRL-X on
"0x100" results in "0x0ff".
bin If included, numbers starting with "0b" or "0B" will be
considered to be binary. Example: Using CTRL-X on
"0b1000" subtracts one, resulting in "0b0111".
Numbers which simply begin with a digit in the range 1-9 are always
considered decimal. This also happens for numbers that are not
recognized as octal or hex.
@@ -5562,13 +5570,13 @@ A jump table for the options with a short description can be found at |Q_op|.
this doesn't work when $INCL contains a comma or white space.
*'perldll'*
'perldll' string (default empty)
'perldll' string (default depends on the build)
global
{not in Vi} {only for Unix}
{not in Vi}
{only available when compiled with the |+perl/dyn|
feature}
Specifies the path of the Perl shared library instead of
DYNAMIC_PERL_DLL what was specified at compile time.
Specifies the name of the Perl shared library. The default is
DYNAMIC_PERL_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
@@ -5699,24 +5707,24 @@ A jump table for the options with a short description can be found at |Q_op|.
|ins-completion-menu|.
*'pythondll'*
'pythondll' string (default empty)
'pythondll' string (default depends on the build)
global
{not in Vi} {only for Unix}
{not in Vi}
{only available when compiled with the |+python/dyn|
feature}
Specifies the path of the Python 2.x shared library instead of
DYNAMIC_PYTHON_DLL what was specified at compile time.
Specifies the name of the Python 2.x shared library. The default is
DYNAMIC_PYTHON_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
*'pythonthreedll'*
'pythonthreedll' string (default empty)
'pythonthreedll' string (default depends on the build)
global
{not in Vi} {only for Unix}
{not in Vi}
{only available when compiled with the |+python3/dyn|
feature}
Specifies the path of the Python 3 shared library instead of
DYNAMIC_PYTHON3_DLL what was specified at compile time.
Specifies the name of the Python 3 shared library. The default is
DYNAMIC_PYTHON3_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
@@ -5940,13 +5948,13 @@ A jump table for the options with a short description can be found at |Q_op|.
The 'rightleft' option must be set for 'rightleftcmd' to take effect.
*'rubydll'*
'rubydll' string (default empty)
'rubydll' string (default: depends on the build)
global
{not in Vi} {only for Unix}
{not in Vi}
{only available when compiled with the |+ruby/dyn|
feature}
Specifies the path of the Ruby shared library instead of
DYNAMIC_RUBY_DLL what was specified at compile time.
Specifies the name of the Ruby shared library. The default is
DYNAMIC_RUBY_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
@@ -6838,7 +6846,8 @@ A jump table for the options with a short description can be found at |Q_op|.
the two-letter, lower case region name. You can use more than one
region by listing them: "en_us,en_ca" supports both US and Canadian
English, but not words specific for Australia, New Zealand or Great
Britain.
Britain. (Note: currently en_au and en_nz dictionaries are older than
en_ca, en_gb and en_us).
If the name "cjk" is included East Asian characters are excluded from
spell checking. This is useful when editing text that also has Asian
words.
@@ -6974,7 +6983,7 @@ A jump table for the options with a short description can be found at |Q_op|.
The option consists of printf style '%' items interspersed with
normal text. Each status line item is of the form:
%-0{minwid}.{maxwid}{item}
All fields except the {item} is optional. A single percent sign can
All fields except the {item} are optional. A single percent sign can
be given as "%%". Up to 80 items can be specified. *E541*
When the option starts with "%!" then it is used as an expression,
@@ -7430,6 +7439,17 @@ A jump table for the options with a short description can be found at |Q_op|.
Resetting this option is useful when using a ":tag" command in a
mapping which should not change the tagstack.
*'tcldll'*
'tcldll' string (default depends on the build)
global
{not in Vi}
{only available when compiled with the |+tcl/dyn|
feature}
Specifies the name of the Tcl shared library. The default is
DYNAMIC_TCL_DLL, which was specified at compile time.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
*'term'* *E529* *E530* *E531*
'term' string (default is $TERM, if that fails:
in the GUI: "builtin_gui"

View File

@@ -1,4 +1,4 @@
*pattern.txt* For Vim version 7.4. Last change: 2015 Dec 26
*pattern.txt* For Vim version 7.4. Last change: 2016 Jan 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1102,7 +1102,10 @@ x A single character, with no special meaning, matches itself
plausible pattern for a UNIX filename: "[-./[:alnum:]_~]\+" That is,
a list of at least one character, each of which is either '-', '.',
'/', alphabetic, numeric, '_' or '~'.
These items only work for 8-bit characters.
These items only work for 8-bit characters, except [:lower:] and
[:upper:] also work for multi-byte characters when using the new
regexp engine. In the future these items may work for multi-byte
characters.
*/[[=* *[==]*
- An equivalence class. This means that characters are matched that
have almost the same meaning, e.g., when ignoring accents. This

View File

@@ -1,4 +1,4 @@
*quickfix.txt* For Vim version 7.4. Last change: 2015 Dec 31
*quickfix.txt* For Vim version 7.4. Last change: 2016 Jan 21
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -217,9 +217,9 @@ command with 'l'.
:cex[pr][!] {expr} Create a quickfix list using the result of {expr} and
jump to the first error.
If {expr} is a String, then each new-line terminated
line in the String is processed using the value
of 'errorformat' (buffer-local value if it was set)
and the result is added to the quickfix list.
line in the String is processed using the global value
of 'errorformat' and the result is added to the
quickfix list.
If {expr} is a List, then each String item in the list
is processed and added to the quickfix list. Non
String items in the List are ignored.

View File

@@ -909,6 +909,7 @@ Short explanation of each option: *option-list*
'tagrelative' 'tr' file names in tag file are relative
'tags' 'tag' list of file names used by the tag command
'tagstack' 'tgst' push tags onto the tag stack
'tcldll' name of the Tcl dynamic library
'term' name of the terminal
'termbidi' 'tbidi' terminal takes care of bi-directionality
'termencoding' 'tenc' character encoding used by the terminal

View File

@@ -1,4 +1,4 @@
*repeat.txt* For Vim version 7.4. Last change: 2015 Apr 13
*repeat.txt* For Vim version 7.4. Last change: 2016 Jan 16
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -483,16 +483,44 @@ Additionally, these commands can be used:
finish Finish the current script or user function and come
back to debug mode for the command after the one that
sourced or called it.
*>bt*
*>backtrace*
*>where*
backtrace Show the call stacktrace for current debugging session.
bt
where
*>frame*
frame N Goes to N bactrace level. + and - signs make movement
relative. E.g., ":frame +3" goes three frames up.
*>up*
up Goes one level up from call stacktrace.
*>down*
down Goes one level down from call stacktrace.
About the additional commands in debug mode:
- There is no command-line completion for them, you get the completion for the
normal Ex commands only.
- You can shorten them, up to a single character: "c", "n", "s" and "f".
- You can shorten them, up to a single character, unless more then one command
starts with the same letter. "f" stands for "finish", use "fr" for "frame".
- Hitting <CR> will repeat the previous one. When doing another command, this
is reset (because it's not clear what you want to repeat).
- When you want to use the Ex command with the same name, prepend a colon:
":cont", ":next", ":finish" (or shorter).
The backtrace shows the hierarchy of function calls, e.g.:
>bt ~
3 function One[3] ~
2 Two[3] ~
->1 Three[3] ~
0 Four ~
line 1: let four = 4 ~
The "->" points to the current frame. Use "up", "down" and "frame N" to
select another frame.
In the current frame you can evaluate the local function variables. There is
no way to see the command at the current line yet.
DEFINING BREAKPOINTS
*:breaka* *:breakadd*

View File

@@ -1,4 +1,4 @@
*spell.txt* For Vim version 7.4. Last change: 2014 Sep 19
*spell.txt* For Vim version 7.4. Last change: 2016 Jan 08
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1386,6 +1386,14 @@ the item name. Case is always ignored.
The Hunspell feature to use three arguments and flags is not supported.
*spell-NOCOMPOUNDSUGS*
This item indicates that using compounding to make suggestions is not a good
idea. Use this when compounding is used with very short or one-character
words. E.g. to make numbers out of digits. Without this flag creating
suggestions would spend most time trying all kind of weird compound words.
NOCOMPOUNDSUGS ~
*spell-SYLLABLE*
The SYLLABLE item defines characters or character sequences that are used to
count the number of syllables in a word. Example:

View File

@@ -1,4 +1,4 @@
*syntax.txt* For Vim version 7.4. Last change: 2015 Dec 19
*syntax.txt* For Vim version 7.4. Last change: 2016 Jan 28
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -3438,6 +3438,32 @@ SPELL CHECKING *:syn-spell*
To activate spell checking the 'spell' option must be set.
SYNTAX ISKEYWORD SETTING *:syn-iskeyword*
:sy[ntax] iskeyword [clear | {option}]
This defines the keyword characters. It's like the 'iskeyword' option
for but only applies to syntax highlighting.
clear: Syntax specific iskeyword setting is disabled and the
buffer-local 'iskeyword' setting is used.
{option} Set the syntax 'iskeyword' option to a new value.
Example: >
:syntax iskeyword @,48-57,192-255,$,_
<
This would set the syntax specific iskeyword option to include all
alphabetic characters, plus the numeric characters, all accented
characters and also includes the "_" and the "$".
If no argument is given, the current value will be output.
Setting this option influences what |/\k| matches in syntax patterns
and also determines where |:syn-keyword| will be checked for a new
match.
It is recommended when writing syntax files, to use this command
to the correct value for the specific syntax language and not change
the 'iskeyword' option.
DEFINING KEYWORDS *:syn-keyword*
@@ -3469,6 +3495,7 @@ DEFINING KEYWORDS *:syn-keyword*
isn't, the keyword will never be recognized.
Multi-byte characters can also be used. These do not have to be in
'iskeyword'.
See |:syn-iskeyword| for defining syntax specific iskeyword settings.
A keyword always has higher priority than a match or region, the
keyword is used if more than one item matches. Keywords do not nest

View File

@@ -1034,6 +1034,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
'tbis' options.txt /*'tbis'*
'tbs' options.txt /*'tbs'*
'tc' options.txt /*'tc'*
'tcldll' options.txt /*'tcldll'*
'tenc' options.txt /*'tenc'*
'term' options.txt /*'term'*
'termbidi' options.txt /*'termbidi'*
@@ -1178,6 +1179,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
+browse various.txt /*+browse*
+builtin_terms various.txt /*+builtin_terms*
+byte_offset various.txt /*+byte_offset*
+channel various.txt /*+channel*
+cindent various.txt /*+cindent*
+clientserver various.txt /*+clientserver*
+clipboard various.txt /*+clipboard*
@@ -2849,6 +2851,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
:smapclear map.txt /*:smapclear*
:sme gui.txt /*:sme*
:smenu gui.txt /*:smenu*
:smile index.txt /*:smile*
:sn windows.txt /*:sn*
:snext windows.txt /*:snext*
:sni if_sniff.txt /*:sni*
@@ -2946,6 +2949,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
:syn-files syntax.txt /*:syn-files*
:syn-fold syntax.txt /*:syn-fold*
:syn-include syntax.txt /*:syn-include*
:syn-iskeyword syntax.txt /*:syn-iskeyword*
:syn-keepend syntax.txt /*:syn-keepend*
:syn-keyword syntax.txt /*:syn-keyword*
:syn-lc syntax.txt /*:syn-lc*
@@ -3365,12 +3369,18 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
== change.txt /*==*
> change.txt /*>*
>> change.txt /*>>*
>backtrace repeat.txt /*>backtrace*
>bt repeat.txt /*>bt*
>cont repeat.txt /*>cont*
>down repeat.txt /*>down*
>finish repeat.txt /*>finish*
>frame repeat.txt /*>frame*
>interrupt repeat.txt /*>interrupt*
>next repeat.txt /*>next*
>quit repeat.txt /*>quit*
>step repeat.txt /*>step*
>up repeat.txt /*>up*
>where repeat.txt /*>where*
? pattern.txt /*?*
?<CR> pattern.txt /*?<CR>*
@ repeat.txt /*@*
@@ -4125,8 +4135,8 @@ E627 netbeans.txt /*E627*
E628 netbeans.txt /*E628*
E629 netbeans.txt /*E629*
E63 pattern.txt /*E63*
E630 netbeans.txt /*E630*
E631 netbeans.txt /*E631*
E630 channel.txt /*E630*
E631 channel.txt /*E631*
E632 netbeans.txt /*E632*
E633 netbeans.txt /*E633*
E634 netbeans.txt /*E634*
@@ -4409,7 +4419,22 @@ E888 pattern.txt /*E888*
E889 map.txt /*E889*
E89 message.txt /*E89*
E890 syntax.txt /*E890*
E891 eval.txt /*E891*
E892 eval.txt /*E892*
E893 eval.txt /*E893*
E894 eval.txt /*E894*
E895 if_mzsch.txt /*E895*
E896 channel.txt /*E896*
E897 channel.txt /*E897*
E898 channel.txt /*E898*
E899 channel.txt /*E899*
E90 message.txt /*E90*
E900 channel.txt /*E900*
E901 channel.txt /*E901*
E902 channel.txt /*E902*
E903 channel.txt /*E903*
E904 channel.txt /*E904*
E905 channel.txt /*E905*
E91 options.txt /*E91*
E92 message.txt /*E92*
E93 windows.txt /*E93*
@@ -4871,6 +4896,7 @@ added-win32-GUI version5.txt /*added-win32-GUI*
aff-dic-format spell.txt /*aff-dic-format*
after-directory options.txt /*after-directory*
aleph options.txt /*aleph*
alloc_fail() eval.txt /*alloc_fail()*
alt intro.txt /*alt*
alt-input debugger.txt /*alt-input*
alternate-file editing.txt /*alternate-file*
@@ -4900,6 +4926,8 @@ asm.vim syntax.txt /*asm.vim*
asm68k syntax.txt /*asm68k*
asmh8300.vim syntax.txt /*asmh8300.vim*
assert_equal() eval.txt /*assert_equal()*
assert_exception() eval.txt /*assert_exception()*
assert_fails() eval.txt /*assert_fails()*
assert_false() eval.txt /*assert_false()*
assert_true() eval.txt /*assert_true()*
at motion.txt /*at*
@@ -5153,6 +5181,15 @@ changelog.vim syntax.txt /*changelog.vim*
changenr() eval.txt /*changenr()*
changetick eval.txt /*changetick*
changing change.txt /*changing*
channel channel.txt /*channel*
channel-callback channel.txt /*channel-callback*
channel-commands channel.txt /*channel-commands*
channel-demo channel.txt /*channel-demo*
channel-mode channel.txt /*channel-mode*
channel-open channel.txt /*channel-open*
channel-raw channel.txt /*channel-raw*
channel-use channel.txt /*channel-use*
channel.txt channel.txt /*channel.txt*
char-variable eval.txt /*char-variable*
char2nr() eval.txt /*char2nr()*
characterwise motion.txt /*characterwise*
@@ -5284,6 +5321,7 @@ complex-repeat repeat.txt /*complex-repeat*
compress pi_gzip.txt /*compress*
conceal syntax.txt /*conceal*
confirm() eval.txt /*confirm()*
connect() eval.txt /*connect()*
connection-refused message.txt /*connection-refused*
console-menus gui.txt /*console-menus*
control intro.txt /*control*
@@ -5714,6 +5752,7 @@ extend() eval.txt /*extend()*
extension-removal cmdline.txt /*extension-removal*
extensions-improvements todo.txt /*extensions-improvements*
f motion.txt /*f*
false-variable eval.txt /*false-variable*
faq intro.txt /*faq*
farsi farsi.txt /*farsi*
farsi-fonts farsi.txt /*farsi-fonts*
@@ -6768,8 +6807,11 @@ java-indenting indent.txt /*java-indenting*
java.vim syntax.txt /*java.vim*
javascript-cinoptions indent.txt /*javascript-cinoptions*
javascript-indenting indent.txt /*javascript-indenting*
job-control channel.txt /*job-control*
join() eval.txt /*join()*
jsbterm-mouse options.txt /*jsbterm-mouse*
jsondecode() eval.txt /*jsondecode()*
jsonencode() eval.txt /*jsonencode()*
jtags tagsrch.txt /*jtags*
jump-motions motion.txt /*jump-motions*
jumplist motion.txt /*jumplist*
@@ -6920,9 +6962,13 @@ man.vim filetype.txt /*man.vim*
manual-copyright usr_01.txt /*manual-copyright*
map() eval.txt /*map()*
map-<SID> map.txt /*map-<SID>*
map-CTRL-C map.txt /*map-CTRL-C*
map-ambiguous map.txt /*map-ambiguous*
map-backslash map.txt /*map-backslash*
map-backtick tips.txt /*map-backtick*
map-bar map.txt /*map-bar*
map-comments map.txt /*map-comments*
map-empty-rhs map.txt /*map-empty-rhs*
map-error map.txt /*map-error*
map-examples map.txt /*map-examples*
map-keys-fails map.txt /*map-keys-fails*
@@ -6931,7 +6977,10 @@ map-modes map.txt /*map-modes*
map-multibyte map.txt /*map-multibyte*
map-overview map.txt /*map-overview*
map-precedence map.txt /*map-precedence*
map-return map.txt /*map-return*
map-self-destroy tips.txt /*map-self-destroy*
map-space_in_lhs map.txt /*map-space_in_lhs*
map-space_in_rhs map.txt /*map-space_in_rhs*
map-typing map.txt /*map-typing*
map-which-keys map.txt /*map-which-keys*
map.txt map.txt /*map.txt*
@@ -7074,6 +7123,7 @@ mzscheme-examples if_mzsch.txt /*mzscheme-examples*
mzscheme-funcref if_mzsch.txt /*mzscheme-funcref*
mzscheme-mzeval if_mzsch.txt /*mzscheme-mzeval*
mzscheme-sandbox if_mzsch.txt /*mzscheme-sandbox*
mzscheme-setup if_mzsch.txt /*mzscheme-setup*
mzscheme-threads if_mzsch.txt /*mzscheme-threads*
mzscheme-vim if_mzsch.txt /*mzscheme-vim*
mzscheme-vimext if_mzsch.txt /*mzscheme-vimext*
@@ -7411,6 +7461,7 @@ no-eval-feature eval.txt /*no-eval-feature*
no_buffers_menu gui.txt /*no_buffers_menu*
non-greedy pattern.txt /*non-greedy*
non-zero-arg eval.txt /*non-zero-arg*
none-variable eval.txt /*none-variable*
normal-index index.txt /*normal-index*
not-compatible usr_01.txt /*not-compatible*
not-edited editing.txt /*not-edited*
@@ -7418,6 +7469,7 @@ notation intro.txt /*notation*
notepad gui_w32.txt /*notepad*
nr2char() eval.txt /*nr2char()*
nroff.vim syntax.txt /*nroff.vim*
null-variable eval.txt /*null-variable*
number_relativenumber options.txt /*number_relativenumber*
numbered-function eval.txt /*numbered-function*
o insert.txt /*o*
@@ -7459,7 +7511,6 @@ optwin options.txt /*optwin*
or() eval.txt /*or()*
oracle ft_sql.txt /*oracle*
os2 os_os2.txt /*os2*
os2ansi os_os2.txt /*os2ansi*
os390 os_390.txt /*os390*
os_390.txt os_390.txt /*os_390.txt*
os_amiga.txt os_amiga.txt /*os_amiga.txt*
@@ -7520,6 +7571,7 @@ perl-overview if_perl.txt /*perl-overview*
perl-patterns pattern.txt /*perl-patterns*
perl-using if_perl.txt /*perl-using*
perl.vim syntax.txt /*perl.vim*
perleval() eval.txt /*perleval()*
persistent-undo undo.txt /*persistent-undo*
pexpr-option print.txt /*pexpr-option*
pfn-option print.txt /*pfn-option*
@@ -7865,6 +7917,8 @@ sed.vim syntax.txt /*sed.vim*
self eval.txt /*self*
send-money sponsor.txt /*send-money*
send-to-menu gui_w32.txt /*send-to-menu*
sendexpr() eval.txt /*sendexpr()*
sendraw() eval.txt /*sendraw()*
sendto gui_w32.txt /*sendto*
sentence motion.txt /*sentence*
server-functions usr_41.txt /*server-functions*
@@ -7925,7 +7979,7 @@ sniff if_sniff.txt /*sniff*
sniff-commands if_sniff.txt /*sniff-commands*
sniff-compiling if_sniff.txt /*sniff-compiling*
sniff-intro if_sniff.txt /*sniff-intro*
socket-interface netbeans.txt /*socket-interface*
socket-interface channel.txt /*socket-interface*
sort() eval.txt /*sort()*
sorting change.txt /*sorting*
soundfold() eval.txt /*soundfold()*
@@ -7984,6 +8038,7 @@ spell-NAME spell.txt /*spell-NAME*
spell-NEEDAFFIX spell.txt /*spell-NEEDAFFIX*
spell-NEEDCOMPOUND spell.txt /*spell-NEEDCOMPOUND*
spell-NOBREAK spell.txt /*spell-NOBREAK*
spell-NOCOMPOUNDSUGS spell.txt /*spell-NOCOMPOUNDSUGS*
spell-NOSPLITSUGS spell.txt /*spell-NOSPLITSUGS*
spell-NOSUGFILE spell.txt /*spell-NOSUGFILE*
spell-NOSUGGEST spell.txt /*spell-NOSUGGEST*
@@ -8114,6 +8169,7 @@ strstr() eval.txt /*strstr()*
strtrans() eval.txt /*strtrans()*
strwidth() eval.txt /*strwidth()*
style-changes develop.txt /*style-changes*
style-compiler develop.txt /*style-compiler*
style-examples develop.txt /*style-examples*
style-functions develop.txt /*style-functions*
style-names develop.txt /*style-names*
@@ -8483,6 +8539,7 @@ toolbar-icon gui.txt /*toolbar-icon*
toupper() eval.txt /*toupper()*
tr() eval.txt /*tr()*
trojan-horse starting.txt /*trojan-horse*
true-variable eval.txt /*true-variable*
trunc() eval.txt /*trunc()*
try-conditionals eval.txt /*try-conditionals*
try-echoerr eval.txt /*try-echoerr*
@@ -8592,6 +8649,7 @@ v:dying eval.txt /*v:dying*
v:errmsg eval.txt /*v:errmsg*
v:errors eval.txt /*v:errors*
v:exception eval.txt /*v:exception*
v:false eval.txt /*v:false*
v:fcs_choice eval.txt /*v:fcs_choice*
v:fcs_reason eval.txt /*v:fcs_reason*
v:fname_diff eval.txt /*v:fname_diff*
@@ -8611,6 +8669,8 @@ v:lnum eval.txt /*v:lnum*
v:mouse_col eval.txt /*v:mouse_col*
v:mouse_lnum eval.txt /*v:mouse_lnum*
v:mouse_win eval.txt /*v:mouse_win*
v:none eval.txt /*v:none*
v:null eval.txt /*v:null*
v:oldfiles eval.txt /*v:oldfiles*
v:operator eval.txt /*v:operator*
v:option_new eval.txt /*v:option_new*
@@ -8632,6 +8692,7 @@ v:swapname eval.txt /*v:swapname*
v:termresponse eval.txt /*v:termresponse*
v:this_session eval.txt /*v:this_session*
v:throwpoint eval.txt /*v:throwpoint*
v:true eval.txt /*v:true*
v:val eval.txt /*v:val*
v:var eval.txt /*v:var*
v:version eval.txt /*v:version*
@@ -8954,6 +9015,7 @@ winwidth() eval.txt /*winwidth()*
word motion.txt /*word*
word-count editing.txt /*word-count*
word-motions motion.txt /*word-motions*
wordcount() eval.txt /*wordcount()*
workbench starting.txt /*workbench*
workshop workshop.txt /*workshop*
workshop-commands workshop.txt /*workshop-commands*

View File

@@ -1,4 +1,4 @@
*todo.txt* For Vim version 7.4. Last change: 2015 Dec 29
*todo.txt* For Vim version 7.4. Last change: 2016 Feb 01
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -76,39 +76,70 @@ Regexp problems:
matches the empty string. (Dominique Pelle, 2015 Oct 2, Nov 24)
- Search for \\~ causes error E874.
Poor mans runtime file updater:
- Generate a content file of all included runtime files:
$VIMRUNTIME/CONTENTS
With lines:
runtime/syntax/ada.vim hexchecksum hexchecksum-with-CR-LF
runtime/syntax/old.vim DELETED
- Use a command to trigger a script:
:RuntimeUpdate
Gets the new contents file from
https://raw.githubusercontent.com/vim/vim/master/runtime/CONTENTS
Goes over each line, compares the checksum and gets the file if it differs.
- Include a minimal required Vim version?
- For an installation, use "sudo" after getting all the files, only copy them.
need a temp directory tree.
- For Windows generate a .bat file with "runas" (see StackOverflow).
- Include a wget.exe or curl.exe in the distribution?
- Also update vim.exe and gvim.exe this way?
- "\%1l^#.*" does not match on a line starting with "#". The zero-width match
clears the start-of-line flag.
Patch by Christian, 2016 Jan 29.
English spell file has an encoding error in the affix file.
(Dominique Pelle, 2015 Oct 15)
Perhaps use the files from here:
https://github.com/marcoagpinto/aoo-mozilla-en-dict
Hint for new URL: Christian Brabandt, 2015 Oct 15.
But that file looks old.
+channel:
- implement wait for receiving end of Json.
- implement only reading up to end of Json.
- cleanup on exit? in mch_getout() and getout().
- Add more contents to channel.txt
- implement debug log
- implement job control
- Add a test with a server that can send canned responses.
- make sure errors lead to a useful error msg. ["ex","foobar"]
- use a timeout for connect() Patch from Yasuhiro Matsumoto, Feb 1
- set timeout for channel.
- implement check for ID in response.
- json: implement UTF-16 surrogate pair.
This difference is unexpected:
echo v:true == 1
1
echo [v:true] == [1]
0
It's because tv_equal() works different.
Allow for an empty dictionary key.
Patch to put undo options together in undo window.
(Gary Johnson, 2016 Jan 28)
Patch for clearing history. (Yegappan Lakshmanan, 2016 Jan 31, second message
has tests)
Need to try out instructions in INSSTALLpc.txt about how to install all
interfaces and how to build Vim with them.
Appveyor build with self-installing executable, includes getting most
interfaces: https://github.com/k-takata/vim/tree/chrisbra-appveyor-build
result: https://ci.appveyor.com/project/k-takata/vim/history
Still using freed memory after using setloclist(). (lcd, 2014 Jul 23)
More info Jul 24. Not clear why.
Duplication of completion suggestions for ":!hom". Issue 539.
Patch by Christian, 2016 Jan 29
>
Problem that a previous silent ":throw" causes a following try/catch not to
work. (ZyX, 2013 Sep 28) With examples: (Malcolm Rowe, 2015 Dec 24)
Problem using ":try" inside ":execute". (ZyX, 2013 Sep 15)
jsonencode(): should convert to utf-8. (Nikolai Pavlov, 2016 Jan 23)
What if there is an invalid character?
Should jsonencode()/jsondecode() restrict recursiveness?
Or avoid recursiveness.
Use vim.vim syntax highlighting for help file examples, but without ":" in
'iskeyword' for syntax.
Patch to make "%:h:h" return "." instead of the full path.
(Coot, 2016 Jan 24, #592)
Remove SPACE_IN_FILENAME ? What could possibly go wrong?
Installation of .desktop files does not work everywhere.
It's now fixed, but the target directory probably isn't right.
Add configure check?
@@ -116,137 +147,100 @@ Should use /usr/local/share/applications or /usr/share/applications.
Or use $XDG_DATA_DIRS.
Also need to run update-desktop-database (Kuriyama Kazunobu, 2015 Nov 4)
Patch to test shadow. James McCoy, 2015 Dec 7, #520
Patch to support strawberry Perl. (Ken Takata, 2015 Dec 21)
Change the travis config to also run autoconf on the huge build.
(James McCoy, 2015 Dec 4)
Move the README files that are for including in archives to a subdirectory.
"readmedir/" ?
Access to uninitialized memory in match_backref() regexp_nda.c:4882
(Dominique Pelle, 2015 Nov 6)
Patch to fix test_listchars for MingW. (Christian Brabandt, 2015 Nov 29)
Patch to not set the python home if $PYTHONHOME is set. (Kazuki Sakamoto,
2015 Nov 24)
Patch to add tests for what 7.3.192 fixed. (Elias Diem, 2015 Dec 22)
Patch to use local value of 'errorformat' in :cexpr. (Christian Brabandt,
2015 Oct 16) Only do this for :lexpr ?
":cd C:\Windows\System32\drivers\etc*" does not work, even though the
directory exists. (Sergio Gallelli, 2013 Dec 29)
Patch to make fnamemodify() work better with Cygwin. (Wily Wampa == Jacob
Niehus, 2015 Nov 28, issue 505)
Patch to avoid redrawing tabline when the popup menu is visible.
(Christian Brabandt, 2016 Jan 28)
Patch to fix mc_FullName() on root directory. (Milly, 2015 Nov 24, Issue 501)
Win32: patch to use 64 bit stat() if possible. (Ken Takata, 2014 May 12)
More tests May 14. Update May 29. Update Aug 10.
Now part of large file patches. (Ken Takata, 2016 Jan 19, second one)
Updated patches with ordering: Jan 20.
And another update: Jan 24, then Jan 29, 30, Feb 1.
Patch to make matchparen restore curswant properly. (Christian Brabandt, 2015
Nov 26)
7 Add a watchpoint in the debug mode: An expression that breaks execution
when evaluating to non-zero. Add the "watchadd expr" command, stop when
the value of the expression changes. ":watchdel" deletes an item,
":watchlist" lists the items. (Charles Campbell)
Patch by Christian Brabandt, 2016 Jan 27.
Test 17 does not clean up the directory it creates. (Michael Soyka, 2015 Nov
28)
Patch to add binary support for nrformat. (Jason Schulz, 2015 Dec 28)
Patch to make assert_false() error message look better. (Watiko, 2015 Dec 14)
Patch to be able to use hex numbers with :digraph. (Lcd, 2015 Sep 6)
Update Sep 7. Update by Christian Brabandt, 2015 Sep 8, 2016 Feb 1.
Using ":windo" to set options in all windows has the side effect that it
changes the window layout and the current window. Make a variant that saves
and restores. Use in the matchparen plugin.
Perhaps we can use "window <restore> {cmd}"?
Perhaps we can use ":windo <restore> {cmd}"?
Patch to add <restore> to :windo, :bufdo, etc. (Christian Brabandt, 2015 Jan
6, 2nd message)
Alternative: ":keeppos" command modifier: ":keeppos windo {cmd}".
Patch to estimate available memory on MS-Windows. (Mike Williams, 2015 Dec 18)
Last version that day.
Patch to fix display of listchars on the cursorline. (Nayuri Aohime, 2013)
Update suggested by Yasuhiro Matsumoto, 2014 Nov 25:
https://gist.github.com/presuku/d3d6b230b9b6dcfc0477
Illegal memory access, requires ASAN to see. (Dominique Pelle, 2015 Jul 28)
Patch for testing 'backspace'. Also changes behavior of ":set bs=0", do we
want that? (Hirohito Higashi, 2015 Dec 17)
New patch Dec 26.
Patch to adjust an Ex range only if it's about line numbers. (Christian
Brabandt, 2015 Dec 13)
Gvim: when both Tab and CTRL-I are mapped, use CTRL-I not for Tab.
Unexpected delay when using CTRL-O u. It's not timeoutlen.
(Gary Johnson, 2015 Aug 28)
Patch for tee on Windows. (Yasuhiro Matsumoto, 2015 Nov 30)
Update Dec 1.
Patch to support 64 bit ints for Number. (Ken Takata, 2016 Jan 21)
Patch to use 256 color setup for all terminals that have 256 colors or more.
#504. (rdebath, 2015 Dec 1)
Instead of separately uploading patches to the ftp site, can we get them from
github? This URL works:
Instead of separately uploading patches to the ftp site, we can get them from
github with a URL like this:
https://github.com/vim/vim/compare/v7.4.920%5E...v7.4.920.diff
>
Can src/GvimExt/Make_cyg.mak be removed?
Same for src/xxd/Make_cyg.mak
Diff for version.c contains more context, can't skip a patch.
":q!" should reset modified flag for current buffer, if another buffer is
modified no need to abandon it again.
Patch from Yasuhiro Matsumoto, 2014 Nov 21.
Update from Hirohito Higashi, 2014 Nov 21.
With test, Nov 23. Update 2015 Dec 15.
Updated Fortran files. (Ajit Thakkar, 2015 Nov 30, second one)
When t_Co is changed from termresponse, the OptionSet autocmmand event isn't
triggered. Use the code from the end of set_num_option() in
set_color_count().
Python: ":py raw_input('prompt')" doesn't work. (Manu Hack)
Patch to add wordcount(). (Christian Brabandt, 2015 Nov 27)
Comparing nested structures with "==" uses a different comperator than when
comparing individual items.
Also, "'' == 0" evaluates to true, which isn't nice.
Add "===" to have a strict comparison (type and value match).
Add "==*" (?) to have a value match, but no automatic conversion, and v:true
equals 1 and 1.0, v:false equals 0 and 0.0.?
Plugin to use Vim in MANPAGER. Konfekt, PR #491
Using uninitialized memory. (Dominique Pelle, 2015 Nov 4)
Patch to recognize string slice for variable followed by colon.
(Hirohito Higashi, 2015 Nov 24)
Patch to add debug backtrace. (Alberto Fanjul, 2015 Sep 27)
Update Dec 2.
MS-Windows: When editing a file with a leading space, writing it uses the
wrong name. (Aram, 2014 Nov 7) Vim 7.4.
Can't recognize the $ProgramFiles(x86) environment variable. Recognize it
specifically? First try with the parens, then without.
Patch to fix "." after CTRL-A in Visual block mode. (Ozaki Kiichi, 2015 Oct
24)
Half-finished patch to fix the Problem using cgn to change a search hit when
replacement includes hit. Reported by John Beckett, fix by Christian Brabandt,
2015 Dec 14, Update Dec 15.
Patch to fix pointer cast warning in VS2015. (Mike Williams, 2015 Dec 13)
Patch to make building GVimExt with VS2015. (Mike Williams, 2015 Dec 13)
2016 Jan 11.
Value returned by virtcol() changes depending on how lines wrap. This is
inconsistent with the documentation.
Patch to add perleval(). (Damien, 2015 Dec 8)
Can we cache the syntax attributes, so that updates for 'relativenumber' and
'cursorline'/'cursorcolumn' are a lot faster?
Patch to add window and tab arguments to getcwd(). (Thinca, 2015 Nov 15)
Patch to check PYTHONHOME first. #500
Patch to build with Python using MSYS2. (Yasuhiro Matsumoto, 2015 Nov 26)
Updated Nov 29.
Build with Python on Mac does not always use the right library.
(Kazunobu Kuriyama, 2015 Mar 28)
Patch to support Python 'None' value in pyeval(). (Damien, 2015 Nov 21)
Need a Vim equivalent of None and a way to test for it.
Need a Vim equivalent of Python's None and a way to test for it.
Use v:none. var == v:none
Patch to add arguments to argc() and argv(). (Yegappan Lakshmanan, 2016 Jan
24) Also need a way to get the global arg list? Update later on Jan 24
To support Thai (and other languages) word boundaries, include the ICU
library: http://userguide.icu-project.org/boundaryanalysis
@@ -257,19 +251,19 @@ is Vi compatible, the completion fails. (Hirohito Higashi, 2015 Feb 19)
Test 44 fails when [[=A=]] is changed to [[=À=]]. Caused by getcmdline() not
handling the 0x80 as a second byte correctly? (Dominique Pelle, 2015 Jun 10)
Patch to use two highlight groups for relative numbers. (Shaun Brady, 2016 Jan
30)
Weird encryption problems on Windows. (Ben Fritz, 2015 Feb 13)
Goes away when disabling the swap file. (might1, Feb 16)
MS-Windows: Crash opening very long file name starting with "\\".
(Christian Brock, 2012 Jun 29)
Patch to add ":syn iskeyword". (Christian Brabandt, 2015 Nov 10)
Patch to use PLATFORM to determine target architecture. (Taro Muraoka, 2015
Nov 29)
If libiconv.dll is not found search for libiconv2.dll. (Yasuhiro Matsumoto,
2015 Oct 7)
Using an external diff is inefficient. Not all systems have a good diff
program available (esp. MS-Windows). Would be nice to have in internal diff
implementation. Can then also use this for displaying changes within a line.
Olaf Dabrunz is working on this.
The OptionSet autocommand event is not always triggered. (Rick Howe, 2015 Sep
24): :diffthis, :diffoff.
@@ -283,9 +277,6 @@ effects for when set by the user, on init and when reset to default.
The argument for "-S" is not taken literally, the ":so" command expands
wildcards. Add a ":nowild" command modifier? (ZyX, 2015 March 4)
Patch to support sorting on floating point number. (Alex Jakushev, 2010 Oct
30)
Proposal to make options.txt easier to read. (Arnaud Decara, 2015 Aug 5)
Update Aug 14.
@@ -300,15 +291,16 @@ Patch to add GUI colors to the terminal, when it supports it. (ZyX, 2013 Jan
Patch for problem with restoring screen on Windows. (Nobuhiro Takasaki, 2015
Sep 10)
Patch to be able to use hex numbers with :digraph. (Lcd, 2015 Sep 6)
Update Sep 7. Update by Christian Brabandt, 2015 Sep 8.
Patch to improve I/O for Perl. (Damien, 2015 Jan 9, update Jan 22 2nd one)
Patch to set antialiasing style on Windows. (Ondrej Balaz, 2013 Mar 14)
Needs a different check for CLEARTYPE_QUALITY.
Problem mentioned by Christian Brabandt, 2016 Jan 4.
Example in editing.txt uses $HOME with the expectating that it ends in a
slash. For me it does, but perhaps not for everybody. Add a function that
inserts a slash when needed? pathconcat(dir, path) (Thilo Six, 2015 Aug 12)
Patch to load TCL dynamically. (Ken Takata, 2015 Nov 11)
ml_updatechunk() is slow when retrying for another encoding. (John Little,
2014 Sep 11)
@@ -324,17 +316,24 @@ Patch for matchit plugin related to multibyte chars. (Ken Takata, 2015 Jul 22)
Patch for multi-byte characters in langmap and applying a mapping on them.
(Christian Brabandt, 2015 Jun 12, update July 25)
Is this the right solution?
Is this the right solution? Need to cleanup langmap behavior:
- in vgetorpeek() apply langmap to the typeahead buffer and put the result in
a copy-buffer, only when langmap is appropriate for the current mode. Then
check for mapping and let gotchars() work on the copy-buffer.
- Remove LANGMAP_ADJUST() in other parts of the code. Make sure the mode is
covered by the above change.
So that replaying the register doesn't use keymap/langmap and still does the
same thing. Remarks on issue 543 (Roland Puntaier).
Patch to add grepfile(). (Scott Prager, 2015 May 26)
Work in progress.
Would be useful to have a treemap() or deepmap() function. Like map() but
when an item is a list or dict would recurse into it.
Patch for global-local options consistency. (Arnaud Decara, 2015 Jul 22)
Is this right?
Patch to have CTRL-A and CTRL-X update the '[ and '] marks.
(Yukihiro Nakadaira, 2015 Aug 23)
Patch to make getregtype() return the right size for non-linux systems.
(Yasuhiro Matsumoto, 2014 Jul 8)
Breaks test_eval. Inefficient, can we only compute y_width when needed?
@@ -381,9 +380,6 @@ When two SIGWINCH arrive very quickly, the second one may be lost.
Make comments in the test Makefile silent. (Kartik Agaram, 2014 Sep 24)
Patch to improve behavior of dead keys on MS-Windows. (John Wellesz, 2015 Aug
25) https://github.com/vim/vim/pull/399.diff
Result of systemlist() does not show whether text ended in line break.
(Bjorn Linse, 2014 Nov 27)
@@ -400,13 +396,11 @@ Adding "~" to 'cdpath' doesn't work for completion? (Davido, 2013 Aug 19)
Should be easy to highlight all matches with 'incsearch'. Idea by Itchyny,
2015 Feb 6.
Plugins need to make a lot of effort, lots of mappings, to know what happened
before pressing the key that triggers a plugin action. How about keeping the
last N pressed keys, so that they do not need to be mapped?
Wrong scrolling when using incsearch. Patch by Christian Brabandt, 2014 Dec 4.
Is this a good solution?
Patch to add /pattern/ to :oldfiles. Pull #575.
Patch to allow setting w:quickfix_title via setqflist() and setloclist()
functions. (Christian Brabandt, 2013 May 8, update May 21)
Patch to add getlocstack() / setlocstack(). (Christian Brabandt, 2013 May 14)
@@ -428,7 +422,7 @@ Patch for ordered dict. (Ozaki Kiichi, 2015 May 7)
Patch to make closed folds line up. (Charles Campbell, 2014 Sep 12)
Remark from Roland Eggner: does it cause crashes? (2014 Dec 12)
Updated patch by Roland Eggner, Dec 16
Updated patch from Charles, Dec 29.
Updated patch from Charles, 2016 Jan 4.
Patch to open folds for 'incsearch'. (Christian Brabandt, 2015 Jan 6)
@@ -441,7 +435,7 @@ Patch: On MS-Windows shellescape() may have to triple double quotes.
(Ingo Karkat, 2015 Jan 16)
Patch for variable tabstops. On github (Christian Brabandt, 2014 May 15)
Update 2015 Jul 25 (email).
Update 2016 Jan 31 (email).
Redo only remembers the last change. Could use "{count}g." to redo an older
change. How does the user know which change? At least have a way to list
@@ -488,9 +482,8 @@ compatible with Vim spell files. The old files can no longer be downloaded.
Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki
Saito, 2013 Apr 24) Has a problem (email 2015 Jan 7).
Update 2015 Jan 10.
Win32: patch to use 64 bit stat() if possible. (Ken Takata, 2014 May 12)
More tests May 14. Update May 29. Update Aug 10.
Also see issue #609.
We could add the enable/disable sequences to t_ti/t_te or t_ks/t_ke.
Idea: For a window in the middle (has window above and below it), use
right-mouse-drag on the status line to move a window up/down without changing
@@ -517,11 +510,13 @@ Problem with upwards search on Windows (works OK on Linux). (Brett Stahlman,
2014 Jun 8)
Include a plugin manager with Vim? Neobundle seems to be the best currently.
Also Vundle: https://github.com/gmarik/vundle
Long message about this from ZyX, 2014 Mar 23. And following replies.
Also see http://vim-wiki.mawercer.de/wiki/topic/vim%20plugin%20managment.html
User view:
- Support multiple sources, basically any http:// URL. Be able to look into
the files before deciding to install.
- Support multiple sources, basically any http:// URL. Or a central place that
will work for everybody (github? redirects from vim.org?).
Be able to look into the files before deciding to install.
- Be able to try out a plugin and remove it again with (almost) no traces.
- Each plugin needs a "manifest" file that has the version, dependencies
(including Vim version and features), conflicts, list of files, etc.
@@ -576,10 +571,6 @@ Yasuhiro Matsumoto, 2013 May 31.
Or should we add a more general mechanism, like a lambda() function?
Patch by Yasuhiro Matsumoto, 2014 Sep 16.
Patch to fix display of listchars on the cursorline. (Nayuri Aohime, 2013)
Update suggested by Yasuhiro Matsumoto, 2014 Nov 25:
https://gist.github.com/presuku/d3d6b230b9b6dcfc0477
VMS: Select() doesn't work properly, typing ESC may hang Vim. Use sys$qiow
instead. (Samuel Ferencik, 2013 Sep 28)
@@ -716,6 +707,18 @@ optional. (2013 Jul 12)
Dialog is too big on Linux too. (David Fishburn, 2013 Sep 2)
Improve the installer for MS-Windows. There are a few alternatives:
- Installer from Cream (Steve Hall).
- Modern UI 2.0 for the Nsis installer. (Guopeng Wen)
https://github.com/gpwen/vim-installer-mui2
- make it possible to do a silent install, see
http://nsis.sourceforge.net/Docs/Chapter4.html#4.12
Version from Guopeng Wen does this.
- MSI installer: https://github.com/petrkle/vim-msi/
- The one on Issue 279.
Problem: they all work slightly different (e.g. don't install vimrun.exe).
How to test that it works well for all Vim users?
Patch to check whether a buffer is quickfix or a location list.
(Yasuhiro Matsumoto, 2014 Dec 9)
@@ -729,9 +732,6 @@ Patch by Christian Brabandt, 2013 Apr 20, unfinished.
Bug: findfile("any", "file:///tmp;") does not work.
Patch to set antialiasing style on Windows. (Ondrej Balaz, 2013 Mar 14)
Needs a different check for CLEARTYPE_QUALITY.
In the ATTENTION message about an existing swap file, mention the name of the
process that is running. It might actually be some other program, e.g. after
a reboot.
@@ -809,14 +809,6 @@ MS-Windows resizing problems:
causes the window to move unnecessarily. (William E. Skeith III, 2012 Jan
12) Patch: 2012 Jan 13 Needs more work (2012 Feb 2)
Patch to use Modern UI 2.0 for the Nsis installer. (Guopeng Wen, 2010 Jul 30)
Latest version: 2011 May 18
8 Windows install with NSIS: make it possible to do a silent install, see
http://nsis.sourceforge.net/Docs/Chapter4.html#4.12
Version from Guopeng Wen that does this (2010 Dec 27)
Alternative: MSI installer: https://github.com/petrkle/vim-msi/
Or the one on Issue 279
'iminsert' global value set when using ":setlocal iminsert"? (Wu, 2012 Jun 23)
Patch to append regexp to tag commands to make it possible to select one out
@@ -936,9 +928,9 @@ Sep 17) Asked for feedback from others.
Win32: Cannot cd into a directory that starts with a space. (Andy Wokula, 2012
Jan 19)
Need to escape $HOME on Windows? (ZyX, 2011 Jul 21, discussion 2013 Jul 4)
Can't simply use a backslash, \$HOME has a different meaning already.
Would be possible to use $$HOME where $HOME is to be used.
Need to escape $HOME on Windows for fnameescape()? (ZyX, 2011 Jul 21,
discussion 2013 Jul 4) Can't simply use a backslash, \$HOME has a different
meaning already. Would be possible to use $$HOME where $HOME is to be used.
"2" in 'formatoptions' not working in comments. (Christian Corneliussen, 2011
Oct 26)
@@ -1191,6 +1183,12 @@ Gui menu edit/paste in block mode insert only inserts in one line (Bjorn
Winckler, 2011 May 11)
Requires a map mode for Insert mode started from blockwise Visual mode.
Use json format for new items in .viminfo:
|["info","any info"]
|["text","text text text"
|"continuation line"]
|["hist",242342342,{"arg":"value"}]
Writing nested List and Dict in viminfo gives error message and can't be read
back. (Yukihiro Nakadaira, 2010 Nov 13)
@@ -2208,10 +2206,17 @@ Add an option for a minimal text length before inserting a line break for
(Kartik Agaram)
At next release:
- Build a huge version by default.
- Improve plugin handling: Automatic updates, handle dependencies?
E.g. Vundle: https://github.com/gmarik/vundle
Better plugin support (not plugin manager, see elsewhere for that):
- Avoid use of feedkeys, add eval functions where needed:
- manipulating the Visual selection?
- Add createmark(): add a mark like mM, but return a unique ID. Need some way
to clean them up again... Use a name + the script ID.
Add createmark( , 'c') to track inserts/deletes before the column.
- Plugins need to make a lot of effort, lots of mappings, to know what
happened before pressing the key that triggers a plugin action. How about
keeping the last N pressed keys, so that they do not need to be mapped?
- equivalent of netbeans_beval_cb(). With an autocommand?
- Add something to enable debugging when a remote message is received.
More patches:
@@ -2811,8 +2816,7 @@ Macintosh:
8 On MS-Windows ":make" doesn't show output while it is working. Use the
tee.exe from http://unxutils.sourceforge.net/ ? About 16 Kbyte in the
UnxUtils.zip archive.
Alternate one: http://www.pramodx.20m.com/tee_for_win32.htm, but Walter
Briscoe says it's not as good.
Is it better than what we have in src/tee?
8 When doing Insert mode completion a mapping cannot recursively call
edit(), because the completion information is global. Put everything in
an allocated structure?
@@ -3561,10 +3565,7 @@ Syntax highlighting:
one is contained in. Like "keepend" but specified on the contained item,
instead of the containing item.
8 cpp.vim: In C++ it's allowed to use {} inside ().
8 Some syntax files set 'iskeyword'. When switching to another filetype
this isn't reset. Add a special keyword definition for the syntax rules?
When this is done, use vim.vim syntax highlighting for help file examples,
but without ":" in 'iskeyword' for syntax.
8 Some syntax files set 'iskeyword', they should use "syn iskeyword".
Also need a separate 'iskeyword' for the command line, e.g., in a help
window ":e /asdf/asdf/" CTRL-W works different.
8 Add specific syntax item to match with parens/braces that don't have a
@@ -4697,7 +4698,6 @@ Visual mode:
6 ":left" and ":right" should work in Visual block mode.
7 CTRL-I and CTRL-O should work in Visual mode, but only jump to marks in the
current buffer.
7 CTRL-A and CTRL-X should increase/decrease all numbers in the Visual area.
6 In non-Block mode, "I" should insert the same text in front of each line,
before the first non-blank, "gI" in column 1.
6 In non-Block mode, "A" should append the same text after each line.
@@ -5293,13 +5293,8 @@ Registers:
Debug mode:
7 Add something to enable debugging when a remote message is received.
8 Add breakpoints for setting an option
8 Add breakpoints for assigning to a variable.
7 Add a watchpoint in the debug mode: An expression that breaks execution
when evaluating to non-zero. Add the "watchadd expr" command, stop when
the value of the expression changes. ":watchdel" deletes an item,
":watchlist" lists the items. (Charles Campbell)
7 Store the history from debug mode in viminfo.
7 Make the debug mode history available with histget() et al.

View File

@@ -1,4 +1,4 @@
*usr_02.txt* For Vim version 7.4. Last change: 2015 Apr 12
*usr_02.txt* For Vim version 7.4. Last change: 2016 Jan 16
VIM USER MANUAL - by Bram Moolenaar
@@ -408,7 +408,15 @@ original version of the file.
Everything you always wanted to know can be found in the Vim help files.
Don't be afraid to ask!
To get generic help use this command: >
If you know what you are looking for, it is usually easier to search for it
using the help system, instead of using Google. Because the subjects follow
a certain style guide.
Also the help has the advantage of belonging to your particular Vim version.
You won't see help for commands added later. These would not work for you.
To get generic help use this command: >
:help
@@ -482,7 +490,7 @@ example, use the following command: >
:help 'number'
The table with all mode prefixes can be found here: |help-context|.
The table with all mode prefixes can be found below: |help-summary|.
Special keys are enclosed in angle brackets. To find help on the up-arrow key
in Insert mode, for instance, use this command: >
@@ -499,64 +507,191 @@ You can use the error ID at the start to find help about it: >
Summary: *help-summary* >
:help
< Gives you very general help. Scroll down to see a list of all
helpfiles, including those added locally (i.e. not distributed
with Vim). >
:help user-toc.txt
< Table of contents of the User Manual. >
:help :subject
< Ex-command "subject", for instance the following: >
:help :help
< Help on getting help. >
:help abc
< normal-mode command "abc". >
:help CTRL-B
< Control key <C-B> in Normal mode. >
:help i_abc
:help i_CTRL-B
< The same in Insert mode. >
:help v_abc
:help v_CTRL-B
< The same in Visual mode. >
:help c_abc
:help c_CTRL-B
< The same in Command-line mode. >
:help 'subject'
< Option 'subject'. >
:help subject()
< Function "subject". >
:help -subject
< Command-line argument "-subject". >
:help +subject
< Compile-time feature "+subject". >
:help /*
< Regular expression item "*" >
:help EventName
< Autocommand event "EventName". >
:help digraphs.txt
< The top of the helpfile "digraph.txt".
Similarly for any other helpfile. >
:help pattern<Tab>
< Find a help tag starting with "pattern". Repeat <Tab> for
others. >
:help pattern<Ctrl-D>
< See all possible help tag matches "pattern" at once. >
:helpgrep pattern
< Search the whole text of all help files for pattern "pattern".
Jumps to the first match. Jump to other matches with: >
:cn
< next match >
:cprev
:cN
< previous match >
:cfirst
:clast
< first or last match >
:copen
:cclose
< open/close the quickfix window; press <Enter> to jump
to the item under the cursor
1) Use Ctrl-D after typing a topic and let Vim show all available topics.
Or press Tab to complete: >
:help some<Tab>
< More information on how to use the help: >
:help helphelp
2) Follow the links in bars to related help. You can go from the detailed
help to the user documentation, which describes certain commands more from
a user perspective and less detailed. E.g. after: >
:help pattern.txt
< You can see the user guide topics |03.9| and |usr_27.txt| in the
introduction.
3) Options are enclosed in single apostrophes. To go to the help topic for the
list option: >
:help 'list'
< If you only know you are looking for a certain option, you can also do: >
:help options.txt
< to open the help page which describes all option handling and then search
using regular expressions, e.g. textwidth.
Certain options have their own namespace, e.g.: >
:help cpo-<letter>
< for the corresponding flag of the 'cpoptions' settings, substitute <letter>
by a specific flag, e.g.: >
:help cpo-;
< And for the guioption flags: >
:help go-<letter>
4) Normal mode commands do not have a prefix. To go to the help page for the
"gt" command: >
:help gt
5) Insert mode commands start with i_. Help for deleting a word: >
:help i_CTRL-W
6) Visual mode commands start with v_. Help for jumping to the other side of
the Visual area: >
:help v_o
7) Command line editing and arguments start with c_. Help for using the
command argument %: >
:help c_%
8) Ex-commands always start with ":", so to go to the :s command help: >
:help :s
9) Commands specifically for debugging start with ">". To go to to the help
for the "cont" debug command: >
:help >cont
10) Key combinations. They usually start with a single letter indicating
the mode for which they can be used. E.g.: >
:help i_CTRL-X
< takes you to the family of Ctrl-X commands for insert mode which can be
used to auto complete different things. Note, that certain keys will
always be written the same, e.g. Control will always be CTRL.
For normal mode commands there is no prefix and the topic is available at
:h CTRL-<Letter>. E.g. >
:help CTRL-W
< In contrast >
:help c_CTRL-R
< will describe what the Ctrl-R does when entering commands in the Command
line and >
:help v_Ctrl-A
< talks about incrementing numbers in visual mode and >
:help g_CTRL-A
< talks about the g<C-A> command (e.g. you have to press "g" then <Ctrl-A>).
Here the "g" stand for the normal command "g" which always expects a second
key before doing something similar to the commands starting with "z"
11) Regexp items always start with /. So to get help for the "\+" quantifier
in Vim regexes: >
:help /\+
< If you need to know everything about regular expressions, start reading
at: >
:help pattern.txt
12) Registers always start with "quote". To find out about the special ":"
register: >
:help quote:
13) Vim Script (VimL) is available at >
:help eval.txt
< Certain aspects of the language are available at :h expr-X where "X" is a
single letter. E.g. >
:help expr-!
< will take you to the topic describing the "!" (Not) operator for
VimScript.
Also important is >
:help function-list
< to find a short description of all functions available. Help topics for
VimL functions always include the "()", so: >
:help append()
< talks about the append VimL function rather than how to append text in the
current buffer.
14) Mappings are talked about in the help page :h |map.txt|. Use >
:help mapmode-i
< to find out about the |:imap| command. Also use :map-topic
to find out about certain subtopics particular for mappings. e.g: >
:help :map-local
< for buffer-local mappings or >
:help map-bar
< for how the '|' is handled in mappings.
15) Command definitions are talked about :h command-topic, so use >
:help command-bar
< to find out about the '!' argument for custom commands.
16) Window management commands always start with CTRL-W, so you find the
corresponding help at :h CTRL-W_letter. E.g. >
:help CTRL-W_p
< for moving the previous accessed window. You can also access >
:help windows.txt
< and read your way through if you are looking for window handling
commands.
17) Use |:helpgrep| to search in all help pages (and also of any installed
plugins). See |:helpgrep| for how to use it.
To search for a topic: >
:helpgrep topic
< This takes you to the first match. To go to the next one: >
:cnext
< All matches are available in the quickfix window which can be opened
with: >
:copen
< Move around to the match you like and press Enter to jump to that help.
18) The user manual. This describes help topics for beginners in a rather
friendly way. Start at |usr_toc.txt| to find the table of content (as you
might have guessed): >
:help usr_toc.txt
< Skim over the contents to find interesting topics. The "Digraphs" and
"Entering special characters" items are in chapter 24, so to go to that
particular help page: >
:help usr_24.txt
< Also if you want to access a certain chapter in the help, the chapter
number can be accessed directly like this: >
:help 10.1
< goes to chapter 10.1 in |usr_10.txt| and talks about recording macros.
19) Highlighting groups. Always start with hl-groupname. E.g. >
:help hl-WarningMsg
< talks about the WarningMsg highlighting group.
20) Syntax highlighting is namespaced to :syn-topic e.g. >
:help :syn-conceal
< talks about the conceal argument for the :syn command.
21) Quickfix commands usually start with :c while location list commands
usually start with :l
22) Autocommand events can be found by their name: >
:help BufWinLeave
< To see all possible events: >
:help autocommands-events
23) Command-line switches always start with "-". So for the help of the -f
command switch of Vim use: >
:help -f
24) Optional features always start with "+". To find out about the
conceal feature use: >
:help +conceal
25) Documentation for included filetype specific functionality is usually
available in the form ft-<filetype>-<functionality>. So >
:help ft-c-syntax
< talks about the C syntax file and the option it provides. Sometimes,
additional sections for omni completion >
:help ft-php-omni
< or filetype plugins >
:help ft-tex-plugin
< are available.
26) Error and Warning codes can be looked up directly in the help. So >
:help E297
< takes you exactly to the description of the swap error message and >
:help W10
< talks about the warning "Changing a readonly file".
Sometimes however, those error codes are not described, but rather are
listed at the Vim command that usually causes this. So: >
:help E128
< takes you to the |:function| command
==============================================================================

View File

@@ -1,4 +1,4 @@
*usr_03.txt* For Vim version 7.4. Last change: 2015 Dec 12
*usr_03.txt* For Vim version 7.4. Last change: 2016 Jan 05
VIM USER MANUAL - by Bram Moolenaar
@@ -413,8 +413,8 @@ in "the" use: >
/the\>
The "\>" item is a special marker that only matches at the end of a word.
Similarly "\<" only matches at the begin of a word. Thus to search for the
word "the" only: >
Similarly "\<" only matches at the beginning of a word. Thus to search for
the word "the" only: >
/\<the\>

View File

@@ -1,4 +1,4 @@
*usr_41.txt* For Vim version 7.4. Last change: 2015 Nov 30
*usr_41.txt* For Vim version 7.4. Last change: 2016 Jan 28
VIM USER MANUAL - by Bram Moolenaar
@@ -893,6 +893,14 @@ Testing: *test-functions*
assert_false() assert that an expression is false
assert_true() assert that an expression is true
Inter-process communication:
connect() open a channel
disconnect() close a channel
sendexpr() send a JSON message over a channel
sendraw() send a raw message over a channel
jsonencode() encode an expression to a JSON string
jsondecode() decode a JSON string to Vim types
Various: *various-functions*
mode() get current editing mode
visualmode() last visual mode used
@@ -921,8 +929,10 @@ Various: *various-functions*
luaeval() evaluate Lua expression
mzeval() evaluate |MzScheme| expression
perleval() evaluate Perl expression (|+perl|)
py3eval() evaluate Python expression (|+python3|)
pyeval() evaluate Python expression (|+python|)
wordcount() get byte/word/char count of buffer
==============================================================================
*41.7* Defining a function

View File

@@ -1,4 +1,4 @@
*various.txt* For Vim version 7.4. Last change: 2015 Nov 15
*various.txt* For Vim version 7.4. Last change: 2016 Jan 31
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -208,8 +208,6 @@ g8 Print the hex values of the bytes used in the
Example: >
:exe "normal \<c-w>\<c-w>"
< {not in Vi, of course}
{not available when the |+ex_extra| feature was
disabled at compile time}
:{range}norm[al][!] {commands} *:normal-range*
Execute Normal mode commands {commands} for each line
@@ -218,8 +216,6 @@ g8 Print the hex values of the bytes used in the
for each line. Otherwise it's the same as the
":normal" command without a range.
{not in Vi}
{not available when |+ex_extra| feature was disabled
at compile time}
*:sh* *:shell* *E371*
:sh[ell] This command starts a shell. When the shell exits
@@ -319,6 +315,7 @@ N *+builtin_terms* some terminals builtin |builtin-terms|
B *++builtin_terms* maximal terminals builtin |builtin-terms|
N *+byte_offset* support for 'o' flag in 'statusline' option, "go"
and ":goto" commands.
m *+channel* inter process communication |channel|
N *+cindent* |'cindent'|, C indenting
N *+clientserver* Unix and Win32: Remote invocation |clientserver|
*+clipboard* |clipboard| support
@@ -341,8 +338,7 @@ m *+directx* Win32 GUI only: DirectX and |'renderoptions'|
*+dnd* Support for DnD into the "~ register |quote_~|.
B *+emacs_tags* |emacs-tags| files
N *+eval* expression evaluation |eval.txt|
N *+ex_extra* Vim's extra Ex commands: |:center|, |:left|,
|:normal|, |:retab| and |:right|
N *+ex_extra* always on now, used to be for Vim's extra Ex commands
N *+extra_search* |'hlsearch'| and |'incsearch'| options.
B *+farsi* |farsi| language
N *+file_in_path* |gf|, |CTRL-W_f| and |<cfile>|
@@ -647,6 +643,7 @@ K Run a program to lookup the keyword under the
g CTRL-A Only when Vim was compiled with MEM_PROFILING defined
(which is very rare): print memory usage statistics.
Only useful for debugging Vim.
For incrementing in Visual mode see |v_g_CTRL-A|.
==============================================================================
2. Using Vim like less or more *less*

View File

@@ -1,4 +1,4 @@
*version5.txt* For Vim version 7.4. Last change: 2012 Aug 08
*version5.txt* For Vim version 7.4. Last change: 2016 Jan 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -848,7 +848,7 @@ putting a backslash before it. |+cmd|
After recovery, BufReadPost autocommands are applied. |:recover|
Added color support for "os2ansi", OS/2 console. (Slootman) |os2ansi|
Added color support for "os2ansi", OS/2 console. (Slootman)
Allow "%:p:h" when % is empty. |:_%|

View File

@@ -159,7 +159,7 @@ Note: "+" と "\-c" は合わせて 10 個まで指定できます。
.TP
\-b
バイナリモード。
バイナリファイルを編集ためのオプションがいくつか設定されます。
バイナリファイルを編集するためのオプションがいくつか設定されます。
.TP
\-C
互換モード。'compatible' オプションがオンになります。

View File

@@ -61,6 +61,16 @@
行末には ascii (または ebcdic) で表した場合の文字が表示されます。
このモードでは \-r、\-p、\-i は機能しません。
.TP
.IR \-e
リトルエンディアンの 16 進ダンプに切り替える。
このオプションは、バイトのグループをリトルエンディアンのバイト順のワードとして
扱います。標準のグルーピングは 4 バイトですが、
.RI "" \-g
を使うことで変更可能です。
このオプションは 16 進ダンプのみに適用され、ASCII (あるいは EBCDIC) 表示は
変更されません。
このモードでは \-r、\-p、\-i は機能しません。
.TP
.IR "\-c cols " | " \-cols cols"
一行
.RI < cols >
@@ -80,7 +90,8 @@
.I \-g 0
を指定してください。
.RI < Bytes >
の標準設定は \fI2\fPす。2 進ダンプの場合は \fI1\fP です。
の標準設定は \fI2\fP、リトルエンディアンモードの場合は \fI4\fP
2 進ダンプの場合は \fI1\fP です。
ポストスクリプト形式やインクルード形式で出力するときは、このオプションは使わ
れません。
.TP
@@ -95,6 +106,11 @@ C インクルードファイル形式で出力します。入力ファイルの
.RI < len >
オクテットだけ出力する。
.TP
.I \-o offset
表示されるファイル位置に
.RI < offset >
を加算する。
.TP
.IR \-p " | " \-ps " | " \-postscript " | " \-plain
ポストスクリプト形式の 16 進ダンプを出力する。別名 プレーン 16 進ダンプ。
.TP

View File

@@ -0,0 +1,16 @@
" Vim filetype plugin file
" Language: hg (Mercurial) commit file
" Maintainer: Ken Takata <kentkt at csc dot jp>
" Last Change: 2016 Jan 6
" Filenames: hg-editor-*.txt
" License: VIM License
" URL: https://github.com/k-takata/hg-vim
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
setlocal nomodeline
let b:undo_ftplugin = 'setl modeline<'

View File

@@ -1,11 +1,11 @@
" Vim indent file
" Language: Fortran 2008 (and older: Fortran 2003, 95, 90, and 77)
" Version: 0.42
" Last Change: 2015 Nov. 30
" Version: 0.44
" Last Change: 2016 Jan. 26
" Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www2.unb.ca/~ajit/>
" Usage: For instructions, do :help fortran-indent from Vim
" Credits:
" Useful suggestions were made by: Albert Oliver Serra.
" Useful suggestions were made by: Albert Oliver Serra and Takuya Fujiwara.
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
@@ -92,10 +92,10 @@ function FortranGetIndent(lnum)
"Indent do loops only if they are all guaranteed to be of do/end do type
if exists("b:fortran_do_enddo") || exists("g:fortran_do_enddo")
if prevstat =~? '^\s*\(\d\+\s\)\=\s*\(\a\w*\s*:\)\=\s*do\>'
let ind = ind + &sw
let ind = ind + shiftwidth()
endif
if getline(v:lnum) =~? '^\s*\(\d\+\s\)\=\s*end\s*do\>'
let ind = ind - &sw
let ind = ind - shiftwidth()
endif
endif
@@ -105,14 +105,14 @@ function FortranGetIndent(lnum)
\ ||prevstat=~? '^\s*\(type\|interface\|associate\|enum\)\>'
\ ||prevstat=~?'^\s*\(\d\+\s\)\=\s*\(\a\w*\s*:\)\=\s*\(forall\|where\|block\)\>'
\ ||prevstat=~? '^\s*\(\d\+\s\)\=\s*\(\a\w*\s*:\)\=\s*if\>'
let ind = ind + &sw
let ind = ind + shiftwidth()
" Remove unwanted indent after logical and arithmetic ifs
if prevstat =~? '\<if\>' && prevstat !~? '\<then\>'
let ind = ind - &sw
let ind = ind - shiftwidth()
endif
" Remove unwanted indent after type( statements
if prevstat =~? '^\s*type\s*('
let ind = ind - &sw
let ind = ind - shiftwidth()
endif
endif
@@ -125,12 +125,12 @@ function FortranGetIndent(lnum)
\ ||prevstat =~? '^\s*'.prefix.'subroutine\>'
\ ||prevstat =~? '^\s*'.prefix.type.'function\>'
\ ||prevstat =~? '^\s*'.type.prefix.'function\>'
let ind = ind + &sw
let ind = ind + shiftwidth()
endif
if getline(v:lnum) =~? '^\s*contains\>'
\ ||getline(v:lnum)=~? '^\s*end\s*'
\ .'\(function\|subroutine\|module\|program\)\>'
let ind = ind - &sw
let ind = ind - shiftwidth()
endif
endif
@@ -141,23 +141,23 @@ function FortranGetIndent(lnum)
\. '\(else\|else\s*if\|else\s*where\|case\|'
\. 'end\s*\(if\|where\|select\|interface\|'
\. 'type\|forall\|associate\|enum\|block\)\)\>'
let ind = ind - &sw
let ind = ind - shiftwidth()
" Fix indent for case statement immediately after select
if prevstat =~? '\<select\s\+\(case\|type\)\>'
let ind = ind + &sw
let ind = ind + shiftwidth()
endif
endif
"First continuation line
if prevstat =~ '&\s*$' && prev2stat !~ '&\s*$'
let ind = ind + &sw
let ind = ind + shiftwidth()
endif
if prevstat =~ '&\s*$' && prevstat =~ '\<else\s*if\>'
let ind = ind - &sw
let ind = ind - shiftwidth()
endif
"Line after last continuation line
if prevstat !~ '&\s*$' && prev2stat =~ '&\s*$' && prevstat !~? '\<then\>'
let ind = ind - &sw
let ind = ind - shiftwidth()
endif
return ind

View File

@@ -2,7 +2,7 @@
" Language: Lua script
" Maintainer: Marcus Aurelius Farias <marcus.cf 'at' bol.com.br>
" First Author: Max Ischenko <mfi 'at' ukr.net>
" Last Change: 2014 Nov 12
" Last Change: 2016 Jan 10
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
@@ -52,9 +52,9 @@ function! GetLuaIndent()
endif
endif
" Subtract a 'shiftwidth' on end, else (and elseif), until and '}'
" Subtract a 'shiftwidth' on end, else, elseif, until and '}'
" This is the part that requires 'indentkeys'.
let midx = match(getline(v:lnum), '^\s*\%(end\>\|else\>\|until\>\|}\)')
let midx = match(getline(v:lnum), '^\s*\%(end\>\|else\>\|elseif\>\|until\>\|}\)')
if midx != -1 && synIDattr(synID(v:lnum, midx + 1, 1), "name") != "luaComment"
let ind = ind - &shiftwidth
endif

View File

@@ -1,7 +1,7 @@
" Vim indent file
" Language: Vim script
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2014 Dec 12
" Last Change: 2016 Jan 24
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
@@ -58,19 +58,19 @@ function GetVimIndentIntern()
if exists("g:vim_indent_cont")
let ind = ind + g:vim_indent_cont
else
let ind = ind + &sw * 3
let ind = ind + shiftwidth() * 3
endif
elseif prev_text =~ '^\s*aug\%[roup]' && prev_text !~ '^\s*aug\%[roup]\s*!\=\s\+END'
let ind = ind + &sw
let ind = ind + shiftwidth()
else
" A line starting with :au does not increment/decrement indent.
if prev_text !~ '^\s*au\%[tocmd]'
let i = match(prev_text, '\(^\||\)\s*\(if\|wh\%[ile]\|for\|try\|cat\%[ch]\|fina\%[lly]\|fu\%[nction]\|el\%[seif]\)\>')
if i >= 0
let ind += &sw
let ind += shiftwidth()
if strpart(prev_text, i, 1) == '|' && has('syntax_items')
\ && synIDattr(synID(lnum, i, 1), "name") =~ '\(Comment\|String\)$'
let ind -= &sw
let ind -= shiftwidth()
endif
endif
endif
@@ -82,7 +82,7 @@ function GetVimIndentIntern()
let i = match(prev_text, '[^\\]|\s*\(ene\@!\)')
if i > 0 && prev_text !~ '^\s*au\%[tocmd]'
if !has('syntax_items') || synIDattr(synID(lnum, i + 2, 1), "name") !~ '\(Comment\|String\)$'
let ind = ind - &sw
let ind = ind - shiftwidth()
endif
endif
@@ -90,7 +90,7 @@ function GetVimIndentIntern()
" Subtract a 'shiftwidth' on a :endif, :endwhile, :catch, :finally, :endtry,
" :endfun, :else and :augroup END.
if cur_text =~ '^\s*\(ene\@!\|cat\|fina\|el\|aug\%[roup]\s*!\=\s\+[eE][nN][dD]\)'
let ind = ind - &sw
let ind = ind - shiftwidth()
endif
return ind

View File

@@ -1,7 +1,7 @@
" Vim indent file
" Language: Zimbu
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2012 Sep 08
" Last Change: 2016 Jan 25
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
@@ -74,9 +74,9 @@ func GetZimbuIndent(lnum)
\ . " synIDattr(synID(line('.'), col('.'), 1), 'name')"
\ . " =~ '\\(Comment\\|String\\|Char\\)$'")
if pp > 0
return indent(prevLnum) + &sw
return indent(prevLnum) + shiftwidth()
endif
return indent(prevLnum) + &sw * 2
return indent(prevLnum) + shiftwidth() * 2
endif
if plnumstart == p
return indent(prevLnum)
@@ -102,13 +102,13 @@ func GetZimbuIndent(lnum)
endif
if prevline =~ '^\s*\(IF\|\|ELSEIF\|ELSE\|GENERATE_IF\|\|GENERATE_ELSEIF\|GENERATE_ELSE\|WHILE\|REPEAT\|TRY\|CATCH\|FINALLY\|FOR\|DO\|SWITCH\|CASE\|DEFAULT\|FUNC\|VIRTUAL\|ABSTRACT\|DEFINE\|REPLACE\|FINAL\|PROC\|MAIN\|NEW\|ENUM\|CLASS\|INTERFACE\|BITS\|MODULE\|SHARED\)\>'
let plindent += &sw
let plindent += shiftwidth()
endif
if thisline =~ '^\s*\(}\|ELSEIF\>\|ELSE\>\|CATCH\|FINALLY\|GENERATE_ELSEIF\>\|GENERATE_ELSE\>\|UNTIL\>\)'
let plindent -= &sw
let plindent -= shiftwidth()
endif
if thisline =~ '^\s*\(CASE\>\|DEFAULT\>\)' && prevline !~ '^\s*SWITCH\>'
let plindent -= &sw
let plindent -= shiftwidth()
endif
" line up continued comment that started after some code

View File

@@ -1,10 +1,12 @@
" vi:set ts=8 sts=8 sw=8 tw=0:
"
" Menu Translations: Japanese (EUC-JP)
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
" Last Change: 12-May-2013.
" Last Translator: MURAOKA Taro <koron.kaoriya@gmail.com>
" Last Change: 28-Jan-2016.
"
" Copyright (C) 2001-2016 MURAOKA Taro <koron.kaoriya@gmail.com>,
" vim-jp (http://vim-jp.org/)
"
" Copyright (C) 2001-13 MURAOKA Taro <koron.kaoriya@gmail.com>
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
" Quit when menu translations have already been done.
@@ -20,7 +22,7 @@ scriptencoding euc-jp
" Help menu
menutrans &Help <09>إ<EFBFBD><EFBFBD><EFBFBD>(&H)
menutrans &Overview<Tab><F1> <09><>ά(&O)<Tab><F1>
menutrans &User\ Manual <09><EFBFBD><EFBFBD><EFBFBD>ޥ˥<EFBFBD><EFBFBD>(&U)
menutrans &User\ Manual <09><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޥ˥<EFBFBD><EFBFBD>(&U)
menutrans &How-to\ links &How-to<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
menutrans &Credits <09><><EFBFBD><EFBFBD>å<EFBFBD>(&C)
menutrans Co&pying <09><><EFBFBD><EFBFBD><EEB8A2><EFBFBD><EFBFBD>(&P)
@@ -138,7 +140,7 @@ menutrans &Tools
menutrans &Jump\ to\ this\ tag<Tab>g^] <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&J)<Tab>g^]
menutrans Jump\ &back<Tab>^T <09><><EFBFBD><EFBFBD>(&B)<Tab>^T
menutrans Build\ &Tags\ File <09><><EFBFBD><EFBFBD><EFBFBD>ե<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans &Make<Tab>:make <09><EFBFBD><EFBFBD>(&M)<Tab>:make
menutrans &Make<Tab>:make <09>ӥ<EFBFBD><EFBFBD><EFBFBD>(&M)<Tab>:make
menutrans &List\ Errors<Tab>:cl <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&L)<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! <09><><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&I)<Tab>:cl!
menutrans &Next\ Error<Tab>:cn <09><><EFBFBD>Υ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&N)<Tab>:cn

View File

@@ -1,10 +1,12 @@
" vi:set ts=8 sts=8 sw=8 tw=0:
"
" Menu Translations: Japanese (UTF-8)
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
" Last Change: 12-May-2013.
" Last Translator: MURAOKA Taro <koron.kaoriya@gmail.com>
" Last Change: 28-Jan-2016.
"
" Copyright (C) 2001-2016 MURAOKA Taro <koron.kaoriya@gmail.com>,
" vim-jp (http://vim-jp.org/)
"
" Copyright (C) 2001-13 MURAOKA Taro <koron.kaoriya@gmail.com>
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
" Quit when menu translations have already been done.
@@ -20,7 +22,7 @@ scriptencoding utf-8
" Help menu
menutrans &Help ヘルプ(&H)
menutrans &Overview<Tab><F1> 概略(&O)<Tab><F1>
menutrans &User\ Manual ユーザマニュアル(&U)
menutrans &User\ Manual ユーザマニュアル(&U)
menutrans &How-to\ links &How-toリンク
menutrans &Credits クレジット(&C)
menutrans Co&pying 著作権情報(&P)
@@ -138,7 +140,7 @@ menutrans &Tools ツール(&T)
menutrans &Jump\ to\ this\ tag<Tab>g^] タグジャンプ(&J)<Tab>g^]
menutrans Jump\ &back<Tab>^T 戻る(&B)<Tab>^T
menutrans Build\ &Tags\ File タグファイル作成(&T)
menutrans &Make<Tab>:make メイク(&M)<Tab>:make
menutrans &Make<Tab>:make ビルド(&M)<Tab>:make
menutrans &List\ Errors<Tab>:cl エラーリスト(&L)<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! メッセージリスト(&I)<Tab>:cl!
menutrans &Next\ Error<Tab>:cn 次のエラーへ(&N)<Tab>:cn

View File

@@ -1,10 +1,12 @@
" vi:set ts=8 sts=8 sw=8 tw=0:
"
" Menu Translations: Japanese (CP932)
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
" Last Change: 12-May-2013.
" Last Translator: MURAOKA Taro <koron.kaoriya@gmail.com>
" Last Change: 28-Jan-2016.
"
" Copyright (C) 2001-2016 MURAOKA Taro <koron.kaoriya@gmail.com>,
" vim-jp (http://vim-jp.org/)
"
" Copyright (C) 2001-13 MURAOKA Taro <koron.kaoriya@gmail.com>
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
" Quit when menu translations have already been done.
@@ -20,7 +22,7 @@ scriptencoding cp932
" Help menu
menutrans &Help <09>w<EFBFBD><EFBFBD><EFBFBD>v(&H)
menutrans &Overview<Tab><F1> <09>T<EFBFBD><EFBFBD>(&O)<Tab><F1>
menutrans &User\ Manual <09><><EFBFBD>[<5B>U<EFBFBD>}<7D>j<EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><EFBFBD>(&U)
menutrans &User\ Manual <09><><EFBFBD>[<5B>U<EFBFBD>[<5B>}<7D>j<EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><EFBFBD>(&U)
menutrans &How-to\ links &How-to<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>N
menutrans &Credits <09>N<EFBFBD><EFBFBD><EFBFBD>W<EFBFBD>b<EFBFBD>g(&C)
menutrans Co&pying <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(&P)
@@ -138,7 +140,7 @@ menutrans &Tools
menutrans &Jump\ to\ this\ tag<Tab>g^] <09>^<5E>O<EFBFBD>W<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>v(&J)<Tab>g^]
menutrans Jump\ &back<Tab>^T <09>߂<EFBFBD>(&B)<Tab>^T
menutrans Build\ &Tags\ File <09>^<5E>O<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><EFBFBD><EFBFBD>(&T)
menutrans &Make<Tab>:make <09><EFBFBD><EFBFBD>C<EFBFBD>N(&M)<Tab>:make
menutrans &Make<Tab>:make <09>r<EFBFBD><EFBFBD><EFBFBD>h(&M)<Tab>:make
menutrans &List\ Errors<Tab>:cl <09>G<EFBFBD><EFBFBD><EFBFBD>[<5B><><EFBFBD>X<EFBFBD>g(&L)<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! <09><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>g(&I)<Tab>:cl!
menutrans &Next\ Error<Tab>:cn <09><><EFBFBD>̃G<EFBFBD><EFBFBD><EFBFBD>[<5B><>(&N)<Tab>:cn

View File

@@ -794,7 +794,7 @@ call append("$", "infercase\tadjust case of a keyword completion match")
call append("$", "\t(local to buffer)")
call <SID>BinOptionL("inf")
if has("digraphs")
call append("$", "digraph\tenable entering digraps with c1 <BS> c2")
call append("$", "digraph\tenable entering digraphs with c1 <BS> c2")
call <SID>BinOptionG("dg", &dg)
endif
call append("$", "tildeop\tthe \"~\" command behaves like an operator")
@@ -1199,7 +1199,7 @@ if has("arabic")
call <SID>BinOptionG("tbidi", &tbidi)
endif
if has("keymap")
call append("$", "keymap\tname of a keyboard mappping")
call append("$", "keymap\tname of a keyboard mapping")
call <SID>OptionL("kmp")
endif
if has("langmap")
@@ -1331,6 +1331,10 @@ if exists("&rubydll")
call append("$", "rubydll\tname of the Ruby dynamic library")
call <SID>OptionG("rubydll", &rubydll)
endif
if exists("&tcldll")
call append("$", "tcldll\tname of the Tcl dynamic library")
call <SID>OptionG("tcldll", &tcldll)
endif
set cpo&vim

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,5 +1,5 @@
*** en_AU.orig.aff 2010-05-15 13:03:47.000000000 +0200
--- en_AU.aff 2015-12-30 19:08:16.916527503 +0100
--- en_AU.aff 2016-01-09 13:15:38.426627871 +0100
***************
*** 7,9 ****
SET ISO8859-1
@@ -148,7 +148,8 @@
!
REP 24
***************
*** 34,53 ****
*** 33,53 ****
REP ght t
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
@@ -169,7 +170,25 @@
PFX E Y 1
! PFX E 0 dis .
PFX F Y 5
--- 172,191 ----
--- 171,208 ----
REP ght t
+
+ # This is disabled, because if Vim does not support NOCOMPOUNDSUGS giving
+ # suggestions is extremely slow.
+ ## ordinal numbers
+ #COMPOUNDMIN 1
+ ## only in compounds: 1th, 2th, 3th
+ #ONLYINCOMPOUND ,
+ ## compound rules:
+ ## 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
+ ## 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
+ #COMPOUNDRULE 2
+ #COMPOUNDRULE (*:)
+ #COMPOUNDRULE (*{}
+ #NOCOMPOUNDSUGS
+
+ # WORDCHARS 0123456789
+
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
@@ -587,7 +606,7 @@
SFX T y iest [^aeiou]y
! SFX T 0 er [aeiou]y
SFX T 0 est [aeiou]y
--- 195,589 ----
--- 212,606 ----
PFX F 0 col l
! PFX F 0 con [^abehilmopru].
PFX K Y 1
@@ -1671,7 +1690,7 @@
! SFX 3 0 ist's [aeioubp]y
! SFX 3 o ist's o
! SFX 3 0 ist's [^eoy]
--- 596,1305 ----
--- 613,1322 ----
SFX R Y 72
! SFX R 0 r e
! SFX R 0 rs e
@@ -2383,20 +2402,30 @@
! # a few more for consistency
! COMMON five six seven eight nine ten hundred thousand
*** en_AU.orig.dic 2010-05-15 13:03:48.000000000 +0200
--- en_AU.dic 2015-12-30 19:07:42.620898655 +0100
--- en_AU.dic 2016-01-08 23:03:18.342461841 +0100
***************
*** 1,2 ****
! 45654
AA
--- 1,2 ----
--- 1,12 ----
! 45653
! 0th
! 1st
! 2nd
! 3rd
! 4th
! 5th
! 6th
! 7th
! 8th
! 9th
AA
***************
*** 912,914 ****
Alaska/M
! al/AY
albacore/MS
--- 912,914 ----
--- 922,924 ----
Alaska/M
! really
albacore/MS
@@ -2405,10 +2434,10 @@
bozo/SM
- b/pb
bpi
--- 4885,4886 ----
--- 4895,4896 ----
***************
*** 4921,4922 ****
--- 4920,4922 ----
--- 4930,4932 ----
Brahms
+ Bram/M
braid/DGS
@@ -2417,22 +2446,22 @@
cad/ZSM
- c/aE
CAE
--- 5753,5754 ----
--- 5763,5764 ----
***************
*** 8535,8537 ****
coniferous
- conj
conjectural
--- 8534,8535 ----
--- 8544,8545 ----
***************
*** 8544,8545 ****
--- 8542,8544 ----
--- 8552,8554 ----
conjunctiva/MS
+ conj.
conjunctive/S
***************
*** 10288,10289 ****
--- 10287,10291 ----
--- 10297,10301 ----
dB/M
+ dBi
+ dBm
@@ -2443,10 +2472,10 @@
DNA
- d/o
DOB
--- 11783,11784 ----
--- 11793,11794 ----
***************
*** 12468,12469 ****
--- 12469,12471 ----
--- 12479,12481 ----
Dutch/5m
+ Farsi
Dutchwomen/M
@@ -2455,19 +2484,19 @@
dystrophy/M
- e
ea
--- 12518,12519 ----
--- 12528,12529 ----
***************
*** 12792,12794 ****
e.g.
- e.g..
egad
--- 12793,12794 ----
--- 12803,12804 ----
***************
*** 13779,13781 ****
estuary/MS
! et
ETA
--- 13779,13782 ----
--- 13789,13792 ----
estuary/MS
! et cetera
! et al.
@@ -2477,7 +2506,7 @@
fjord/SM
! f/K
flab/2zZM
--- 15297,15299 ----
--- 15307,15309 ----
fjord/SM
! pref
flab/2zZM
@@ -2486,19 +2515,19 @@
FYI
- g/7
gabardine/SM
--- 16481,16482 ----
--- 16491,16492 ----
***************
*** 18599,18601 ****
HDTV
- h/E
headache/SM
--- 18599,18600 ----
--- 18609,18610 ----
***************
*** 19214,19216 ****
Hobbes
! hobbit
hobble/RGSD
--- 19213,19215 ----
--- 19223,19225 ----
Hobbes
! hobbit/MS
hobble/RGSD
@@ -2507,34 +2536,34 @@
jive/DSMG
- j/k
jnr.
--- 21790,21791 ----
--- 21800,21801 ----
***************
*** 22125,22127 ****
kcal
- k/E
Keane
--- 22123,22124 ----
--- 22133,22134 ----
***************
*** 22606,22608 ****
Kyushu/M
- l/3
label/AGaSD
--- 22603,22604 ----
--- 22613,22614 ----
***************
*** 22885,22887 ****
lass/SM
- last-ditch
lasted/e
--- 22881,22882 ----
--- 22891,22892 ----
***************
*** 22890,22892 ****
last/kJYDSG
- last-minute
lasts/e
--- 22885,22886 ----
--- 22895,22896 ----
***************
*** 26417,26418 ****
--- 26411,26413 ----
--- 26421,26423 ----
Moolawatana
+ Moolenaar/M
Moomba
@@ -2545,7 +2574,7 @@
nationhood/M
! nation/M
nationwide
--- 27183,27187 ----
--- 27193,27197 ----
nationals/4
! national/sQq3SZ
nationhood/M
@@ -2553,7 +2582,7 @@
nationwide
***************
*** 27194,27195 ****
--- 27189,27192 ----
--- 27199,27202 ----
nativity/MS
+ natively
+ nativeness
@@ -2563,28 +2592,28 @@
nuzzle/SDG
- n/xvuNVn
Nyah
--- 28362,28363 ----
--- 28372,28373 ----
***************
*** 29464,29466 ****
oz
- o/z
Ozark/MS
--- 29460,29461 ----
--- 29470,29471 ----
***************
*** 31035,31037 ****
Pk
- p/KF
pl.
--- 31030,31031 ----
--- 31040,31041 ----
***************
*** 31288,31289 ****
--- 31282,31284 ----
--- 31292,31294 ----
pneumonia/MS
+ pneumonic
PO
***************
*** 31460,31461 ****
--- 31455,31457 ----
--- 31465,31467 ----
pompom/MS
+ pompon/M
pomposity/MS
@@ -2593,25 +2622,25 @@
pyx/S
- q
Qatar
--- 32861,32862 ----
--- 32871,32872 ----
***************
*** 33378,33380 ****
razzmatazz
- r/d
Rd/M
--- 33373,33374 ----
--- 33383,33384 ----
***************
*** 34979,34981 ****
RSPCA
- rte
rub-a-dub
--- 34973,34974 ----
--- 34983,34984 ----
***************
*** 36012,36014 ****
sec.
! s/eca
secant/MS
--- 36005,36007 ----
--- 36015,36017 ----
sec.
! outs
secant/MS
@@ -2620,7 +2649,7 @@
Szechwan/M
! t/7k
Ta
--- 40235,40237 ----
--- 40245,40247 ----
Szechwan/M
! tingly
Ta
@@ -2629,10 +2658,10 @@
Tyson/M
- u
ubiquitousness
--- 42609,42610 ----
--- 42619,42620 ----
***************
*** 42990,42991 ****
--- 42982,42984 ----
--- 42992,42994 ----
unscrupulous
+ searchable
unsearchable
@@ -2641,13 +2670,13 @@
Uzi/M
- v
vacancy/MS
--- 43245,43246 ----
--- 43255,43256 ----
***************
*** 43749,43751 ****
Vilnius/M
! vim/M
vinaigrette/MS
--- 43741,43744 ----
--- 43751,43754 ----
Vilnius/M
! Vim/M
! vim/?
@@ -2657,16 +2686,16 @@
yippee
- y/K
YMCA
--- 45487,45488 ----
--- 45497,45498 ----
***************
*** 45586,45588 ****
zap/SGRD
- z/d
Zealanders
--- 45578,45579 ----
--- 45588,45589 ----
***************
*** 45655 ****
--- 45646,45660 ----
--- 45656,45670 ----
zymurgy/S
+ nd
+ PayPal

View File

@@ -1,14 +1,25 @@
*** en_CA.orig.aff 2015-12-30 18:18:20.076952127 +0100
--- en_CA.aff 2015-12-30 18:32:50.395546116 +0100
--- en_CA.aff 2016-01-09 13:15:51.306488848 +0100
***************
*** 2,7 ****
*** 2,18 ****
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
! ICONV 1
! ICONV '
NOSUGGEST !
# ordinal numbers
--- 2,146 ----
! # ordinal numbers
! COMPOUNDMIN 1
! # only in compounds: 1th, 2th, 3th
! ONLYINCOMPOUND c
! # compound rules:
! # 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
! # 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
! COMPOUNDRULE 2
! COMPOUNDRULE n*1t
! COMPOUNDRULE n*mp
! WORDCHARS 0123456789
--- 2,161 ----
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
!
! # ICONV 1
@@ -16,158 +27,204 @@
!
NOSUGGEST !
+ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
+ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
+ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
+
+ MIDWORD '
+
+ RARE ?
+ BAD %
+
+ MAP 9
+ MAP aàáâãäå
+ MAP eèéêë
+ MAP iìíîï
+ MAP oòóôõö
+ MAP uùúûü
+ MAP nñ
+ MAP cç
+ MAP yÿý
+ MAP sß
+
+ # This comes from Aspell en_phonet.dat, version 1.1, 2000-01-07
+
+ SAL AH(AEIOUY)-^ *H
+ SAL AR(AEIOUY)-^ *R
+ SAL A(HR)^ *
+ SAL A^ *
+ SAL AH(AEIOUY)- H
+ SAL AR(AEIOUY)- R
+ SAL A(HR) _
+ SAL À^ *
+ SAL Å^ *
+ SAL BB- _
+ SAL B B
+ SAL CQ- _
+ SAL CIA X
+ SAL CH X
+ SAL C(EIY)- S
+ SAL CK K
+ SAL COUGH^ KF
+ SAL CC< C
+ SAL C K
+ SAL DG(EIY) K
+ SAL DD- _
+ SAL D T
+ SAL É< E
+ SAL EH(AEIOUY)-^ *H
+ SAL ER(AEIOUY)-^ *R
+ SAL E(HR)^ *
+ SAL ENOUGH^$ *NF
+ SAL E^ *
+ SAL EH(AEIOUY)- H
+ SAL ER(AEIOUY)- R
+ SAL E(HR) _
+ SAL FF- _
+ SAL F F
+ SAL GN^ N
+ SAL GN$ N
+ SAL GNS$ NS
+ SAL GNED$ N
+ SAL GH(AEIOUY)- K
+ SAL GH _
+ SAL GG9 K
+ SAL G K
+ SAL H H
+ SAL IH(AEIOUY)-^ *H
+ SAL IR(AEIOUY)-^ *R
+ SAL I(HR)^ *
+ SAL I^ *
+ SAL ING6 N
+ SAL IH(AEIOUY)- H
+ SAL IR(AEIOUY)- R
+ SAL I(HR) _
+ SAL J K
+ SAL KN^ N
+ SAL KK- _
+ SAL K K
+ SAL LAUGH^ LF
+ SAL LL- _
+ SAL L L
+ SAL MB$ M
+ SAL MM M
+ SAL M M
+ SAL NN- _
+ SAL N N
+ SAL OH(AEIOUY)-^ *H
+ SAL OR(AEIOUY)-^ *R
+ SAL O(HR)^ *
+ SAL O^ *
+ SAL OH(AEIOUY)- H
+ SAL OR(AEIOUY)- R
+ SAL O(HR) _
+ SAL PH F
+ SAL PN^ N
+ SAL PP- _
+ SAL P P
+ SAL Q K
+ SAL RH^ R
+ SAL ROUGH^ RF
+ SAL RR- _
+ SAL R R
+ SAL SCH(EOU)- SK
+ SAL SC(IEY)- S
+ SAL SH X
+ SAL SI(AO)- X
+ SAL SS- _
+ SAL S S
+ SAL TI(AO)- X
+ SAL TH @
+ SAL TCH-- _
+ SAL TOUGH^ TF
+ SAL TT- _
+ SAL T T
+ SAL UH(AEIOUY)-^ *H
+ SAL UR(AEIOUY)-^ *R
+ SAL U(HR)^ *
+ SAL U^ *
+ SAL UH(AEIOUY)- H
+ SAL UR(AEIOUY)- R
+ SAL U(HR) _
+ SAL V^ W
+ SAL V F
+ SAL WR^ R
+ SAL WH^ W
+ SAL W(AEIOU)- W
+ SAL X^ S
+ SAL X KS
+ SAL Y(AEIOU)- Y
+ SAL ZZ- _
+ SAL Z S
+
+ # When soundfolding "th" is turned into "@". When this is mistyped as "ht" it
+ # soundfolds to "ht". This difference is too big, thus use REP items to lower
+ # the score.
+ REPSAL 2
+ REPSAL ht @
+ REPSAL @ ht
+
# ordinal numbers
***************
*** 16,18 ****
COMPOUNDRULE n*mp
! WORDCHARS 0123456789
--- 155,157 ----
COMPOUNDRULE n*mp
! FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
! LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
! UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
!
! MIDWORD '
!
! RARE ?
! BAD %
!
! MAP 9
! MAP aàáâãäå
! MAP eèéêë
! MAP iìíîï
! MAP oòóôõö
! MAP uùúûü
! MAP nñ
! MAP cç
! MAP yÿý
! MAP sß
!
! # This comes from Aspell en_phonet.dat, version 1.1, 2000-01-07
!
! SAL AH(AEIOUY)-^ *H
! SAL AR(AEIOUY)-^ *R
! SAL A(HR)^ *
! SAL A^ *
! SAL AH(AEIOUY)- H
! SAL AR(AEIOUY)- R
! SAL A(HR) _
! SAL À^ *
! SAL Å^ *
! SAL BB- _
! SAL B B
! SAL CQ- _
! SAL CIA X
! SAL CH X
! SAL C(EIY)- S
! SAL CK K
! SAL COUGH^ KF
! SAL CC< C
! SAL C K
! SAL DG(EIY) K
! SAL DD- _
! SAL D T
! SAL É< E
! SAL EH(AEIOUY)-^ *H
! SAL ER(AEIOUY)-^ *R
! SAL E(HR)^ *
! SAL ENOUGH^$ *NF
! SAL E^ *
! SAL EH(AEIOUY)- H
! SAL ER(AEIOUY)- R
! SAL E(HR) _
! SAL FF- _
! SAL F F
! SAL GN^ N
! SAL GN$ N
! SAL GNS$ NS
! SAL GNED$ N
! SAL GH(AEIOUY)- K
! SAL GH _
! SAL GG9 K
! SAL G K
! SAL H H
! SAL IH(AEIOUY)-^ *H
! SAL IR(AEIOUY)-^ *R
! SAL I(HR)^ *
! SAL I^ *
! SAL ING6 N
! SAL IH(AEIOUY)- H
! SAL IR(AEIOUY)- R
! SAL I(HR) _
! SAL J K
! SAL KN^ N
! SAL KK- _
! SAL K K
! SAL LAUGH^ LF
! SAL LL- _
! SAL L L
! SAL MB$ M
! SAL MM M
! SAL M M
! SAL NN- _
! SAL N N
! SAL OH(AEIOUY)-^ *H
! SAL OR(AEIOUY)-^ *R
! SAL O(HR)^ *
! SAL O^ *
! SAL OH(AEIOUY)- H
! SAL OR(AEIOUY)- R
! SAL O(HR) _
! SAL PH F
! SAL PN^ N
! SAL PP- _
! SAL P P
! SAL Q K
! SAL RH^ R
! SAL ROUGH^ RF
! SAL RR- _
! SAL R R
! SAL SCH(EOU)- SK
! SAL SC(IEY)- S
! SAL SH X
! SAL SI(AO)- X
! SAL SS- _
! SAL S S
! SAL TI(AO)- X
! SAL TH @
! SAL TCH-- _
! SAL TOUGH^ TF
! SAL TT- _
! SAL T T
! SAL UH(AEIOUY)-^ *H
! SAL UR(AEIOUY)-^ *R
! SAL U(HR)^ *
! SAL U^ *
! SAL UH(AEIOUY)- H
! SAL UR(AEIOUY)- R
! SAL U(HR) _
! SAL V^ W
! SAL V F
! SAL WR^ R
! SAL WH^ W
! SAL W(AEIOU)- W
! SAL X^ S
! SAL X KS
! SAL Y(AEIOU)- Y
! SAL ZZ- _
! SAL Z S
!
! # When soundfolding "th" is turned into "@". When this is mistyped as "ht" it
! # soundfolds to "ht". This difference is too big, thus use REP items to lower
! # the score.
! REPSAL 2
! REPSAL ht @
! REPSAL @ ht
!
! # This is disabled, because if Vim does not support NOCOMPOUNDSUGS giving
! # suggestions is extremely slow.
! ## ordinal numbers
! #COMPOUNDMIN 1
! ## only in compounds: 1th, 2th, 3th
! #ONLYINCOMPOUND c
! ## compound rules:
! ## 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
! ## 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
! #COMPOUNDRULE 2
! #COMPOUNDRULE n*1t
! #COMPOUNDRULE n*mp
! #NOCOMPOUNDSUGS
!
! # WORDCHARS 0123456789
*** en_CA.orig.dic 2015-12-30 18:20:47.803358258 +0100
--- en_CA.dic 2015-12-30 18:59:26.490267196 +0100
--- en_CA.dic 2016-01-08 23:03:52.562085247 +0100
***************
*** 1,25 ****
48929
! 0/nm
! 0th/pt
! 1/n1
! 1st/p
! 1th/tc
! 2/nm
! 2nd/p
! 2th/tc
! 3/nm
! 3rd/p
! 3th/tc
! 4/nm
! 4th/pt
! 5/nm
! 5th/pt
! 6/nm
! 6th/pt
! 7/nm
! 7th/pt
! 8/nm
! 8th/pt
! 9/nm
! 9th/pt
A/SM
--- 1,12 ----
48929
! 0th
! 1st
! 2nd
! 3rd
! 4th
! 5th
! 6th
! 7th
! 8th
! 9th
A/SM
***************
*** 48930 ****
--- 48930,48940 ----
--- 48917,48927 ----
zymurgy/M
+ a a/%
+ a an/%

View File

@@ -1,5 +1,5 @@
*** en_GB.orig.aff 2015-12-30 18:49:37.568638905 +0100
--- en_GB.aff 2015-12-30 18:59:04.186508433 +0100
--- en_GB.aff 2016-01-09 13:15:56.490432894 +0100
***************
*** 20,21 ****
--- 20,158 ----
@@ -142,29 +142,65 @@
+ REPSAL @ ht
+
REP 27
***************
*** 49,50 ****
--- 186,203 ----
+ # This is disabled, because if Vim does not support NOCOMPOUNDSUGS giving
+ # suggestions is extremely slow.
+ ## ordinal numbers
+ #COMPOUNDMIN 1
+ ## only in compounds: 1th, 2th, 3th
+ #ONLYINCOMPOUND ,
+ ## compound rules:
+ ## 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
+ ## 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
+ #COMPOUNDRULE 2
+ #COMPOUNDRULE (*:)
+ #COMPOUNDRULE (*{}
+ #NOCOMPOUNDSUGS
+
+ # WORDCHARS 0123456789
+
PFX A Y 2
*** en_GB.orig.dic 2015-12-30 18:49:42.360587040 +0100
--- en_GB.dic 2015-12-30 19:03:23.035708178 +0100
--- en_GB.dic 2016-01-08 23:03:35.510272903 +0100
***************
*** 1,2 ****
--- 1,12 ----
56453
+ 0th
+ 1st
+ 2nd
+ 3rd
+ 4th
+ 5th
+ 6th
+ 7th
+ 8th
+ 9th
'gainst
***************
*** 3615,3617 ****
autosuggestion
- autosuggestion
autotest/S
--- 3615,3616 ----
--- 3625,3626 ----
***************
*** 9325,9327 ****
Church
- church
Church-of-England
--- 9324,9325 ----
--- 9334,9335 ----
***************
*** 22885,22887 ****
hand-painted
- hand-pick/D
hand-pick/GSD
--- 22883,22884 ----
--- 22893,22894 ----
***************
*** 56454 ****
--- 56451,56461 ----
--- 56461,56471 ----
émigré/S
+ a a/%
+ a an/%

View File

@@ -1,5 +1,5 @@
*** en_NZ.orig.aff 2010-05-15 13:03:47.000000000 +0200
--- en_NZ.aff 2015-12-30 19:08:13.884560313 +0100
--- en_NZ.aff 2016-01-09 13:16:01.734376292 +0100
***************
*** 7,9 ****
SET ISO8859-1
@@ -148,7 +148,8 @@
!
REP 66
***************
*** 76,95 ****
*** 75,95 ****
REP ura aru
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
@@ -169,7 +170,25 @@
PFX E Y 1
! PFX E 0 dis .
PFX F Y 5
--- 214,233 ----
--- 213,250 ----
REP ura aru
+
+ # This is disabled, because if Vim does not support NOCOMPOUNDSUGS giving
+ # suggestions is extremely slow.
+ ## ordinal numbers
+ #COMPOUNDMIN 1
+ ## only in compounds: 1th, 2th, 3th
+ #ONLYINCOMPOUND ,
+ ## compound rules:
+ ## 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
+ ## 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
+ #COMPOUNDRULE 2
+ #COMPOUNDRULE (*:)
+ #COMPOUNDRULE (*{}
+ #NOCOMPOUNDSUGS
+
+ # WORDCHARS 0123456789
+
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
@@ -587,7 +606,7 @@
SFX T y iest [^aeiou]y
! SFX T 0 er [aeiou]y
SFX T 0 est [aeiou]y
--- 237,631 ----
--- 254,648 ----
PFX F 0 col l
! PFX F 0 con [^abehilmopru].
PFX K Y 1
@@ -1672,7 +1691,7 @@
! SFX 3 o ist's o
! SFX 3 0 ist's [^eoy]
\ No newline at end of file
--- 638,1323 ----
--- 655,1340 ----
SFX R Y 72
! SFX R 0 r e
! SFX R 0 rs e
@@ -2360,29 +2379,44 @@
! SFX 3 o ist's o
! SFX 3 0 ist's [^eoy]
*** en_NZ.orig.dic 2010-05-15 13:03:48.000000000 +0200
--- en_NZ.dic 2015-12-30 19:08:04.928657238 +0100
--- en_NZ.dic 2016-01-08 23:04:05.825939282 +0100
***************
*** 1,2 ****
--- 1,12 ----
47141
+ 0th
+ 1st
+ 2nd
+ 3rd
+ 4th
+ 5th
+ 6th
+ 7th
+ 8th
+ 9th
3GPP
***************
*** 4,6 ****
2ZB
- A
a/o
--- 4,5 ----
--- 14,15 ----
***************
*** 927,929 ****
Al-Zawahiri
- al/FAC
Al/M
--- 926,927 ----
--- 936,937 ----
***************
*** 2941,2944 ****
B.Sc.
- bless
- bible
baa/GSD
--- 2939,2940 ----
--- 2949,2950 ----
***************
*** 4974,4975 ****
--- 4970,4972 ----
--- 4980,4982 ----
Brampton/M
+ Bram/M
bran/SDGM
@@ -2391,7 +2425,7 @@
C.Lit.
! cation/SM
Ca/y
--- 5704,5706 ----
--- 5714,5716 ----
C.Lit.
! cation/MWS
Ca/y
@@ -2400,10 +2434,10 @@
Cathy
- cation/MW
catkin/SM
--- 6447,6448 ----
--- 6457,6458 ----
***************
*** 8589,8590 ****
--- 8585,8587 ----
--- 8595,8597 ----
coniferous
+ conj.
conjectural
@@ -2412,16 +2446,16 @@
red's
- dally
dab/TSGD
--- 10150,10151 ----
--- 10160,10161 ----
***************
*** 10360,10361 ****
--- 10356,10358 ----
--- 10366,10368 ----
dBm
+ dBd
DBMS
***************
*** 12535,12536 ****
--- 12532,12534 ----
--- 12542,12544 ----
Dutchwomen/M
+ Farsi
duteous/Y
@@ -2430,13 +2464,13 @@
duvet/SM
- duxes
DVD/MS
--- 12540,12541 ----
--- 12550,12551 ----
***************
*** 13901,13903 ****
estuary/MS
! et
ETA
--- 13898,13901 ----
--- 13908,13911 ----
estuary/MS
! et cetera
! et al.
@@ -2447,13 +2481,13 @@
- fable
- fist/MS
fa/M
--- 14529,14530 ----
--- 14539,14540 ----
***************
*** 15323,15325 ****
fissure/DSMG
! fist/6GD
fistfight/MS
--- 15319,15321 ----
--- 15329,15331 ----
fissure/DSMG
! fist/6GDMS
fistfight/MS
@@ -2462,44 +2496,44 @@
g's
- gable
gist/MS
--- 16602,16603 ----
--- 16612,16613 ----
***************
*** 16797,16799 ****
Garvey
- Gary/M
gas-permeable
--- 16792,16793 ----
--- 16802,16803 ----
***************
*** 18177,18179 ****
gyroscope/SWM
- dish
ha
--- 18171,18172 ----
--- 18181,18182 ----
***************
*** 22321,22323 ****
K-factor
- disk/MS
kabob's
--- 22314,22315 ----
--- 22324,22325 ----
***************
*** 23129,23132 ****
lassoer/M
- last-ditch
- last-minute
last/YSDGkJ
--- 23121,23122 ----
--- 23131,23132 ----
***************
*** 26396,26398 ****
Missy
! mist/CDRGS
mistakable/U
--- 26386,26388 ----
--- 26396,26398 ----
Missy
! mist/CDRGSM
mistakable/U
***************
*** 26745,26746 ****
--- 26735,26737 ----
--- 26745,26747 ----
Moog
+ Moolenaar/M
moon/MGpDS
@@ -2508,7 +2542,7 @@
mozzarella/SM
- MP3
mpg
--- 27009,27010 ----
--- 27019,27020 ----
***************
*** 27365,27372 ****
N'Djamena
@@ -2519,7 +2553,7 @@
- national
- nationally
Na/M
--- 27355,27359 ----
--- 27365,27369 ----
N'Djamena
! native/SP
natively
@@ -2530,7 +2564,7 @@
Nathaniel/M
! nation/M
national/sQ3Sq
--- 27494,27496 ----
--- 27504,27506 ----
Nathaniel/M
! nation/MS
national/sQ3Sq
@@ -2539,7 +2573,7 @@
nationwide
- native/SP
nativity/SM
--- 27508,27509 ----
--- 27518,27519 ----
***************
*** 29852,29857 ****
P.O.
@@ -2548,16 +2582,16 @@
- imply
- comply
pa/oM
--- 29838,29839 ----
--- 29848,29849 ----
***************
*** 31702,31703 ****
--- 31684,31686 ----
--- 31694,31696 ----
pneumonia/MS
+ pneumonic
PO
***************
*** 31885,31886 ****
--- 31868,31870 ----
--- 31878,31880 ----
pompom/SM
+ pompon/M
pomposity/SM
@@ -2566,30 +2600,30 @@
qwertys
- r/d
Ra
--- 33545,33546 ----
--- 33555,33556 ----
***************
*** 35456,35458 ****
rt
- rte
Ru/M
--- 35439,35440 ----
--- 35449,35450 ----
***************
*** 35619,35622 ****
singly
- sable
- sally/DSG
SA
--- 35601,35602 ----
--- 35611,35612 ----
***************
*** 40763,40766 ****
T's
- mist/MS
- overt
Ta
--- 40743,40744 ----
--- 40753,40754 ----
***************
*** 43574,43575 ****
--- 43552,43554 ----
--- 43562,43564 ----
unsearchable
+ searchable
unseeing/Y
@@ -2598,7 +2632,7 @@
Vilnius/M
! vim/M
vinaigrette/MS
--- 44313,44316 ----
--- 44323,44326 ----
Vilnius/M
! Vim/M
! vim/?
@@ -2608,79 +2642,79 @@
y'all
- prey/M
yacht/M5SmGD
--- 45886,45887 ----
--- 45896,45897 ----
***************
*** 46152,46154 ****
zymurgy/S
- <20>
font/SM
--- 46131,46132 ----
--- 46141,46142 ----
***************
*** 46198,46200 ****
rata/M
- kaka/M
waka/M
--- 46176,46177 ----
--- 46186,46187 ----
***************
*** 46216,46218 ****
jandal/MS
- Swanndri/M
hoon/MS
--- 46193,46194 ----
--- 46203,46204 ----
***************
*** 46242,46244 ****
Invercargill/M
- Te
Alexandra/M
--- 46218,46219 ----
--- 46228,46229 ----
***************
*** 46261,46263 ****
Kawerau/M
- Kerikeri/M
Lyttelton/M
--- 46236,46237 ----
--- 46246,46247 ----
***************
*** 46491,46493 ****
Waianakarua
- Hakatere
Swin
--- 46465,46466 ----
--- 46475,46476 ----
***************
*** 46690,46692 ****
Omarama/M
- Wairarapa/M
Kilda/M
--- 46663,46664 ----
--- 46673,46674 ----
***************
*** 46711,46713 ****
Wellsford/M
- Akaroa/M
Avonhead/M
--- 46683,46684 ----
--- 46693,46694 ----
***************
*** 46838,46840 ****
Ballantyne's
- DB
Monteith's
--- 46809,46810 ----
--- 46819,46820 ----
***************
*** 46920,46922 ****
Egmont/M
- Waitaki/M
katipo/M
--- 46890,46891 ----
--- 46900,46901 ----
***************
*** 46956,46958 ****
Sunnyside/M
- Wairau/M
Waikoropupu
--- 46925,46926 ----
--- 46935,46936 ----
***************
*** 47141,47142 ****
Burkina
! Faso/M
\ No newline at end of file
--- 47109,47124 ----
--- 47119,47134 ----
Burkina
! Faso/M
! nd

View File

@@ -1,12 +1,28 @@
*** en_US.orig.aff 2015-12-30 18:55:30.352821552 +0100
--- en_US.aff 2015-12-30 19:01:19.849041178 +0100
--- en_US.aff 2016-01-09 13:16:31.514054846 +0100
***************
*** 2,5 ****
*** 1,18 ****
SET UTF8
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
! ICONV 1
! ICONV '
NOSUGGEST !
--- 2,144 ----
! # ordinal numbers
! COMPOUNDMIN 1
! # only in compounds: 1th, 2th, 3th
! ONLYINCOMPOUND c
! # compound rules:
! # 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
! # 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
! COMPOUNDRULE 2
! COMPOUNDRULE n*1t
! COMPOUNDRULE n*mp
! WORDCHARS 0123456789
--- 1,164 ----
+ # Affix file for US English MySpell dictionary
SET UTF8
TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ'
!
! FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
@@ -150,20 +166,70 @@
! # ICONV '
!
NOSUGGEST !
***************
*** 16,18 ****
COMPOUNDRULE n*mp
! WORDCHARS 0123456789
--- 155,157 ----
COMPOUNDRULE n*mp
! # This is disabled, because if Vim does not support NOCOMPOUNDSUGS giving
! # suggestions is extremely slow.
! # This is disabled, because without NOCOMPOUNDSUGS support giving suggestions
! # is extremely slow.
! ## ordinal numbers
! #COMPOUNDMIN 1
! ## only in compounds: 1th, 2th, 3th
! #ONLYINCOMPOUND c
! ## compound rules:
! ## 1. [0-9]*1[0-9]th (10th, 11th, 12th, 56714th, etc.)
! ## 2. [0-9]*[02-9](1st|2nd|3rd|[4-9]th) (21st, 22nd, 123rd, 1234th, etc.)
! #COMPOUNDRULE 2
! #COMPOUNDRULE n*1t
! #COMPOUNDRULE n*mp
! #NOCOMPOUNDSUGS
!
! # WORDCHARS 0123456789
*** en_US.orig.dic 2015-12-30 18:55:58.928512408 +0100
--- en_US.dic 2015-12-30 18:58:56.026596695 +0100
--- en_US.dic 2016-01-08 23:04:15.241835664 +0100
***************
*** 1,25 ****
48756
! 0/nm
! 0th/pt
! 1/n1
! 1st/p
! 1th/tc
! 2/nm
! 2nd/p
! 2th/tc
! 3/nm
! 3rd/p
! 3th/tc
! 4/nm
! 4th/pt
! 5/nm
! 5th/pt
! 6/nm
! 6th/pt
! 7/nm
! 7th/pt
! 8/nm
! 8th/pt
! 9/nm
! 9th/pt
A/SM
--- 1,12 ----
48756
! 0th
! 1st
! 2nd
! 3rd
! 4th
! 5th
! 6th
! 7th
! 8th
! 9th
A/SM
***************
*** 48757 ****
--- 48757,48767 ----
--- 48744,48754 ----
zymurgy/M
+ a a/%
+ a an/%

View File

@@ -50,10 +50,12 @@ $SPELLDIR/en.ascii.spl : $FILES
# Fetching the files from OpenOffice.org.
# THIS URL NO LONGER WORKS.
#
# Files for en_US, en_CA and en_GB obtaind from
# Files for en_US, en_CA and en_GB can be obtained from:
# github.com/marcoagpinto/aoo-mozilla-en-dict
# Unfortunately, giving suggestions becomes terribly slow with these.
# TODO: find out why suggestions are slow and fix that.
#
# NOTE: en_AU and en_NZ use older libraries.
# For now we use the older libraries.
#
OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries
:attr {fetch = $OODIR/%file%} en_US.zip en_CA.zip en_NZ.zip

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: APT config file
" Maintainer: Yann Amar <quidame@poivron.org>
" Last Change: 2013 Apr 12
" Last Change: 2015 Dec 22
" For version 5.x: Clear all syntax items
" For version 6.x and 7.x: Quit when a syntax file was already loaded
@@ -38,22 +38,22 @@ setlocal iskeyword+=/,-,.,_,+
" Incomplete keywords will be treated differently than completely bad strings:
syn keyword aptconfGroupIncomplete
\ a[cquire] a[ptitude] d[ebtags] d[ebug] d[ir] d[pkg] d[select]
\ o[rderlist] p[ackagemanager] p[kgcachegen] q[uiet] r[pm]
\ u[nattended-upgrade]
\ a[cquire] a[dequate] a[ptitude] a[ptlistbugs] d[ebtags] d[ebug]
\ d[ir] d[pkg] d[select] o[rderlist] p[ackagemanager] p[kgcachegen]
\ q[uiet] r[pm] s[ynaptic] u[nattended-upgrade] w[hatmaps]
" Only the following keywords can be used at toplevel (to begin an option):
syn keyword aptconfGroup
\ acquire apt aptitude debtags debug dir dpkg dselect
\ orderlist packagemanager pkgcachegen quiet rpm
\ unattended-upgrade
\ acquire adequate apt aptitude aptlistbugs debtags debug
\ dir dpkg dselect orderlist packagemanager pkgcachegen
\ quiet rpm synaptic unattended-upgrade whatmaps
" Possible options for each group:
" Acquire: {{{
syn keyword aptconfAcquire contained
\ cdrom Check-Valid-Until CompressionTypes ForceHash ftp gpgv
\ GzipIndexes http https Languages Max-ValidTime Min-ValidTime PDiffs
\ Queue-Mode Retries Source-Symlinks
\ cdrom Check-Valid-Until CompressionTypes ForceHash ForceIPv4
\ ForceIPv6 ftp gpgv GzipIndexes http https Languages Max-ValidTime
\ Min-ValidTime PDiffs Queue-Mode Retries Source-Symlinks
syn keyword aptconfAcquireCDROM contained
\ AutoDetect CdromOnly Mount UMount
@@ -62,14 +62,15 @@ syn keyword aptconfAcquireCompressionTypes contained
\ bz2 lzma gz Order
syn keyword aptconfAcquireFTP contained
\ Passive Proxy ProxyLogin Timeout
\ ForceExtended Passive Proxy ProxyLogin Timeout
syn keyword aptconfAcquireHTTP contained
\ AllowRedirect Dl-Limit Max-Age No-Cache No-Store Pipeline-Depth
\ Proxy Timeout User-Agent
\ Proxy ProxyAutoDetect Proxy-Auto-Detect Timeout User-Agent
syn keyword aptconfAcquireHTTPS contained
\ CaInfo CaPath CrlFile IssuerCert SslCert SslForceVersion SslKey
\ AllowRedirect CaInfo CaPath CrlFile Dl-Limit IssuerCert Max-Age
\ No-Cache No-Store Proxy SslCert SslForceVersion SslKey Timeout
\ Verify-Host Verify-Peer
syn keyword aptconfAcquireMaxValidTime contained
@@ -83,14 +84,21 @@ syn cluster aptconfAcquire_ contains=aptconfAcquire,
\ aptconfAcquireHTTP,aptconfAcquireHTTPS,aptconfAcquireMaxValidTime,
\ aptconfAcquirePDiffs
" }}}
" Adequate: {{{
syn keyword aptconfAdequate contained
\ Enabled
syn cluster aptconfAdequate_ contains=aptconfAdequate
" }}}
" Apt: {{{
syn keyword aptconfApt contained
\ Architecture Architectures Archive Authentication AutoRemove
\ Build-Essential Cache Cache-Grow Cache-Limit Cache-Start CDROM
\ Changelogs Clean-Installed Compressor Default-Release
\ Force-LoopBreak Get Ignore-Hold Immediate-Configure
\ Build-Essential Build-Profiles Cache Cache-Grow Cache-Limit
\ Cache-Start CDROM Changelogs Clean-Installed Compressor
\ Default-Release Force-LoopBreak Get Ignore-Hold Immediate-Configure
\ Install-Recommends Install-Suggests Keep-Fds List-Cleanup
\ NeverAutoRemove Never-MarkAuto-Sections Periodic Status-Fd Update
\ Move-Autobit-Sections NeverAutoRemove Never-MarkAuto-Sections
\ Periodic Status-Fd Update VersionedKernelPackages
syn keyword aptconfAptAuthentication contained
\ TrustCDROM
@@ -124,11 +132,12 @@ syn keyword aptconfAptGet contained
syn keyword aptconfAptPeriodic contained
\ AutocleanInterval BackupArchiveInterval BackupLevel
\ Download-Upgradeable-Packages MaxAge MaxSize MinAge
\ Unattended-Upgrade Update-Package-Lists Verbose
\ Download-Upgradeable-Packages Download-Upgradeable-Packages-Debdelta
\ Enable MaxAge MaxSize MinAge Unattended-Upgrade Update-Package-Lists
\ Verbose
syn keyword aptconfAptUpdate contained
\ Pre-Invoke Post-Invoke Post-Invoke-Success
\ List-Refresh Pre-Invoke Post-Invoke Post-Invoke-Success
syn cluster aptconfApt_ contains=aptconfApt,
\ aptconfAptAuthentication,aptconfAptAutoRemove,aptconfAptCache,
@@ -240,6 +249,12 @@ syn cluster aptconfAptitude_ contains=aptconfAptitude,
\ aptconfAptitudeUIKeyBindings,aptconfAptitudeUIStyles,
\ aptconfAptitudeUIStylesElements
" }}}
" AptListbugs: {{{
syn keyword aptconfAptListbugs contained
\ IgnoreRegexp Severities
syn cluster aptconfAptListbugs_ contains=aptconfAptListbugs
" }}}
" DebTags: {{{
syn keyword aptconfDebTags contained
\ Vocabulary
@@ -251,7 +266,8 @@ syn keyword aptconfDebug contained
\ Acquire aptcdrom BuildDeps Hashes IdentCdrom Nolocking
\ pkgAcquire pkgAutoRemove pkgCacheGen pkgDepCache pkgDPkgPM
\ pkgDPkgProgressReporting pkgInitialize pkgOrderList
\ pkgPackageManager pkgPolicy pkgProblemResolver sourceList
\ pkgPackageManager pkgPolicy pkgProblemResolver RunScripts
\ sourceList
syn keyword aptconfDebugAcquire contained
\ cdrom Ftp gpgv Http Https netrc
@@ -295,7 +311,7 @@ syn keyword aptconfDirMedia contained
\ MountPath
syn keyword aptconfDirState contained
\ cdroms extended_states Lists mirrors status
\ cdroms extended_states Lists mirrors preferences status
syn cluster aptconfDir_ contains=aptconfDir,
\ aptconfDirAptitude,aptconfDirBin,aptconfDirCache,aptconfDirEtc,
@@ -303,15 +319,16 @@ syn cluster aptconfDir_ contains=aptconfDir,
" }}}
" DPkg: {{{
syn keyword aptconfDPkg contained
\ Build-Options Chroot-Directory ConfigurePending FlushSTDIN MaxArgs
\ MaxBytes NoTriggers options Pre-Install-Pkgs Pre-Invoke Post-Invoke
\ Build-Options Chroot-Directory ConfigurePending FlushSTDIN
\ MaxArgBytes MaxArgs MaxBytes NoTriggers options
\ Pre-Install-Pkgs Pre-Invoke Post-Invoke
\ Run-Directory StopOnError Tools TriggersPending
syn keyword aptconfDPkgTools contained
\ Options Version
\ adequate InfoFD Options Version
syn cluster aptconfDPkg_ contains=aptconfDPkg,
\ aptconfDPkgOrderList,aptconfDPkgOrderListScore,aptconfDPkgTools
\ aptconfDPkgTools
" }}}
" DSelect: {{{
syn keyword aptconfDSelect contained
@@ -353,23 +370,59 @@ syn keyword aptconfRpm contained
syn cluster aptconfRpm_ contains=aptconfRpm
" }}}
" Unattened Upgrade: {{{
" Synaptic: {{{
syn keyword aptconfSynaptic contained
\ AskQuitOnProceed AskRelated AutoCleanCache CleanCache DefaultDistro
\ delAction delHistory Download-Only ftpProxy ftpProxyPort httpProxy
\ httpProxyPort Install-Recommends LastSearchType Maximized noProxy
\ OneClickOnStatusActions ShowAllPkgInfoInMain showWelcomeDialog
\ ToolbarState undoStackSize update upgradeType useProxy UseStatusColors
\ UseTerminal useUserFont useUserTerminalFont ViewMode
\ availVerColumnPos availVerColumnVisible componentColumnPos
\ componentColumnVisible descrColumnPos descrColumnVisible
\ downloadSizeColumnPos downloadSizeColumnVisible hpanedPos
\ instVerColumnPos instVerColumnVisible instSizeColumnPos
\ instSizeColumnVisible nameColumnPos nameColumnVisible
\ sectionColumnPos sectionColumnVisible statusColumnPos
\ statusColumnVisible supportedColumnPos supportedColumnVisible
\ vpanedPos windowWidth windowHeight windowX windowY closeZvt
\ color-available color-available-locked color-broken color-downgrade
\ color-install color-installed-locked color-installed-outdated
\ color-installed-updated color-new color-purge color-reinstall
\ color-remove color-upgrade
syn keyword aptconfSynapticUpdate contained
\ last type
syn cluster aptconfSynaptic_ contains=aptconfSynaptic,
\ aptconfSynapticUpdate
" }}}
" Unattended Upgrade: {{{
syn keyword aptconfUnattendedUpgrade contained
\ AutoFixInterruptedDpkg Automatic-Reboot InstallOnShutdown Mail
\ MailOnlyOnError MinimalSteps Origins-Pattern Package-Blacklist
\ AutoFixInterruptedDpkg Automatic-Reboot Automatic-Reboot-Time
\ Automatic-Reboot-WithUsers InstallOnShutdown Mail MailOnlyOnError
\ MinimalSteps Origins-Pattern Package-Blacklist
\ Remove-Unused-Dependencies
syn cluster aptconfUnattendedUpgrade_ contains=aptconfUnattendedUpgrade
" }}}
" Whatmaps: {{{
syn keyword aptconfWhatmaps contained
\ Enable-Restart Security-Update-Origins
syn cluster aptconfWhatmaps_ contains=aptconfWhatmaps
" }}}
syn case match
" Now put all the keywords (and 'valid' options) in a single cluster:
syn cluster aptconfOptions contains=aptconfRegexpOpt,
\ @aptconfAcquire_,@aptconfApt_,@aptconfAptitude_,@aptconfDebTags_,
\ @aptconfDebug_,@aptconfDir_,@aptconfDPkg_,@aptconfDSelect_,
\ @aptconfOrderList_,@aptconfPackageManager_,@aptconfPkgCacheGen_,
\ @aptconfQuiet_,@aptconfRpm_,@aptconfUnattendedUpgrade_
\ @aptconfAcquire_,@aptconfAdequate_,@aptconfApt_,@aptconfAptitude_,
\ @aptconfAptListbugs_,@aptconfDebTags_,@aptconfDebug_,@aptconfDir_,
\ @aptconfDPkg_,@aptconfDSelect_,@aptconfOrderList_,
\ @aptconfPackageManager_,@aptconfPkgCacheGen_,@aptconfQuiet_,
\ @aptconfRpm_,@aptconfSynaptic_,@aptconfUnattendedUpgrade_,
\ @aptconfWhatmaps_
" Syntax:
syn match aptconfSemiColon ';'
@@ -382,8 +435,11 @@ syn region aptconfInclude matchgroup=aptconfOperator start='::' end='::\|\s'me=
" Basic Syntax Errors: XXX avoid to generate false positives !!!
"
" * Invalid comment format (seems to not cause errors, but...):
syn match aptconfAsError display '^#.*'
" * Undocumented inline comment. Since it is currently largely used, and does
" not seem to cause trouble ('apt-config dump' never complains when # is used
" the same way than //) it has been moved to aptconfComment group. But it
" still needs to be defined here (i.e. before #clear and #include directives)
syn match aptconfComment '#.*' contains=@aptconfCommentSpecial
"
" * When a semicolon is missing after a double-quoted string:
" There are some cases (for example in the Dir group of options, but not only)
@@ -445,6 +501,8 @@ hi def link aptconfAcquireHTTPS aptconfOption
hi def link aptconfAcquireMaxValidTime aptconfOption
hi def link aptconfAcquirePDiffs aptconfOption
hi def link aptconfAdequate aptconfOption
hi def link aptconfApt aptconfOption
hi def link aptconfAptAuthentication aptconfOption
hi def link aptconfAptAutoRemove aptconfOption
@@ -471,6 +529,8 @@ hi def link aptconfAptitudeUIKeyBindings aptconfOption
hi def link aptconfAptitudeUIStyles aptconfOption
hi def link aptconfAptitudeUIStylesElements aptconfOption
hi def link aptconfAptListbugs aptconfOption
hi def link aptconfDebTags aptconfOption
hi def link aptconfDebug aptconfOption
@@ -504,8 +564,13 @@ hi def link aptconfQuiet aptconfOption
hi def link aptconfRpm aptconfOption
hi def link aptconfSynaptic aptconfOption
hi def link aptconfSynapticUpdate aptconfOption
hi def link aptconfUnattendedUpgrade aptconfOption
hi def link aptconfWhatmaps aptconfOption
let b:current_syntax = "aptconf"
let &cpo = s:cpo_save

View File

@@ -1,8 +1,8 @@
" Vim syntax file
" Language: DCL (Digital Command Language - vms)
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Oct 23, 2014
" Version: 7
" Last Change: Jan 20, 2016
" Version: 8
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_DCL
" For version 5.x: Clear all syntax items
@@ -13,10 +13,10 @@ elseif exists("b:current_syntax")
finish
endif
if version < 600
set iskeyword=$,@,48-57,_
else
if !has("patch-7.4.1141")
setlocal iskeyword=$,@,48-57,_
else
syn iskeyword $,@,48-57,_
endif
syn case ignore

View File

@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Lisp
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Oct 06, 2014
" Version: 23
" Last Change: Jan 20, 2016
" Version: 24
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_LISP
"
" Thanks to F Xavier Noria for a list of 978 Common Lisp symbols taken from HyperSpec
@@ -16,8 +16,10 @@ endif
if exists("g:lisp_isk")
exe "setl isk=".g:lisp_isk
else
elseif !has("patch-7.4.1141")
setl isk=38,42,43,45,47-58,60-62,64-90,97-122,_
else
syn iskeyword 38,42,43,45,47-58,60-62,64-90,97-122,_
endif
if exists("g:lispsyntax_ignorecase") || exists("g:lispsyntax_clisp")

View File

@@ -1,6 +1,6 @@
" Vim syntax support file
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2008 Jan 26
" Last Change: 2016 Feb 01
" This file is used for ":syntax manual".
" It installs the Syntax autocommands, but no the FileType autocommands.
@@ -16,10 +16,11 @@ endif
let syntax_manual = 1
" Remove the connection between FileType and Syntax autocommands.
if exists('#syntaxset')
au! syntaxset FileType
endif
" Overrule the connection between FileType and Syntax autocommands. This sets
" the syntax when the file type is detected, without changing the value.
augroup syntaxset
au! FileType * exe "set syntax=" . &syntax
augroup END
" If the GUI is already running, may still need to install the FileType menu.
" Don't do it when the 'M' flag is included in 'guioptions'.

View File

@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Maple V (based on release 4)
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Oct 23, 2014
" Version: 11
" Last Change: Jan 20, 2016
" Version: 12
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_MAPLE
"
" Package Function Selection: {{{1
@@ -30,10 +30,10 @@ elseif exists("b:current_syntax")
endif
" Iskeyword Effects: {{{1
if version < 600
set iskeyword=$,48-57,_,a-z,@-Z
if !has("patch-7.4.1141")
setl isk=$,48-57,_,a-z,@-Z
else
setlocal iskeyword=$,48-57,_,a-z,@-Z
syn iskeyword $,48-57,_,a-z,@-Z
endif
" Package Selection: {{{1

View File

@@ -3,6 +3,7 @@
" Maintainer: Yakov Lerner <iler.ml@gmail.com>
" Latest Revision: 2008-06-29
" Changes: 2008-06-29 support for RFC3339 tuimestamps James Vega
" 2016 Jan 19: messagesDate changed by Bram
if exists("b:current_syntax")
finish
@@ -13,7 +14,7 @@ set cpo&vim
syn match messagesBegin display '^' nextgroup=messagesDate,messagesDateRFC3339
syn match messagesDate contained display '\a\a\a [ 0-9]\d *'
syn match messagesDate contained display '[[:lower:][:upper:]][[:lower:][:upper:]][[:lower:][:upper:]] [ 0-9]\d *'
\ nextgroup=messagesHour
syn match messagesHour contained display '\d\d:\d\d:\d\d\s*'

View File

@@ -2,7 +2,7 @@
" Language: reStructuredText documentation format
" Maintainer: Marshall Ward <marshall.ward@gmail.com>
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2015-09-07
" Latest Revision: 2016-01-05
if exists("b:current_syntax")
finish
@@ -13,8 +13,6 @@ set cpo&vim
syn case ignore
syn match rstSections "^\%(\([=`:.'"~^_*+#-]\)\1\+\n\)\=.\+\n\([=`:.'"~^_*+#-]\)\2\+$"
syn match rstTransition /^[=`:.'"~^_*+#-]\{4,}\s*$/
syn cluster rstCruft contains=rstEmphasis,rstStrongEmphasis,
@@ -123,6 +121,8 @@ call s:DefineInlineMarkup('InlineLiteral', '``', "", '``')
call s:DefineInlineMarkup('SubstitutionReference', '|', '|', '|_\{0,2}')
call s:DefineInlineMarkup('InlineInternalTargets', '_`', '`', '`')
syn match rstSections "^\%(\([=`:.'"~^_*+#-]\)\1\+\n\)\=.\+\n\([=`:.'"~^_*+#-]\)\2\+$"
" TODO: Cant remember why these two cant be defined like the ones above.
execute 'syn match rstFootnoteReference contains=@NoSpell' .
\ ' +\[\%(\d\+\|#\%(' . s:ReferenceName . '\)\=\|\*\)\]_+'

View File

@@ -2,8 +2,8 @@
" Language: shell (sh) Korn shell (ksh) bash (sh)
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int>
" Last Change: Nov 09, 2015
" Version: 142
" Last Change: Dec 11, 2015
" Version: 143
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH
" For options and settings, please use: :help ft-sh-syntax
" This file includes many ideas from Eric Brunet (eric.brunet@ens.fr)
@@ -119,7 +119,7 @@ syn cluster shCaseList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSu
syn cluster shCommandSubList contains=shAlias,shArithmetic,shComment,shCmdParenRegion,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shEcho,shEscape,shExDoubleQuote,shExpr,shExSingleQuote,shNumber,shOperator,shOption,shPosnParm,shSingleQuote,shSpecial,shStatement,shSubSh,shTest,shVariable
syn cluster shCurlyList contains=shNumber,shComma,shDeref,shDerefSimple,shDerefSpecial
syn cluster shDblQuoteList contains=shCommandSub,shDeref,shDerefSimple,shEscape,shPosnParm,shCtrlSeq,shSpecial
syn cluster shDerefList contains=shDeref,shDerefSimple,shDerefVar,shDerefSpecial,shDerefWordError,shDerefPPS
syn cluster shDerefList contains=shDeref,shDerefSimple,shDerefVar,shDerefSpecial,shDerefWordError,shDerefPSR,shDerefPPS
syn cluster shDerefVarList contains=shDerefOp,shDerefVarArray,shDerefOpError
syn cluster shEchoList contains=shArithmetic,shCommandSub,shDeref,shDerefSimple,shEscape,shExpr,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shCtrlSeq,shEchoQuote
syn cluster shExprList1 contains=shCharClass,shNumber,shOperator,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shDblBrace,shDeref,shDerefSimple,shCtrlSeq
@@ -493,6 +493,11 @@ if exists("b:is_bash")
syn match shDerefPPS contained '/\{1,2}' nextgroup=shDerefPPSleft
syn region shDerefPPSleft contained start='.' skip=@\%(\\\\\)*\\/@ matchgroup=shDerefOp end='/' end='\ze}' nextgroup=shDerefPPSright contains=@shCommandSubList
syn region shDerefPPSright contained start='.' skip=@\%(\\\\\)\+@ end='\ze}' contains=@shCommandSubList
" bash : ${parameter/#substring/replacement}
syn match shDerefPSR contained '/#' nextgroup=shDerefPSRleft
syn region shDerefPSRleft contained start='.' skip=@\%(\\\\\)*\\/@ matchgroup=shDerefOp end='/' end='\ze}' nextgroup=shDerefPSRright
syn region shDerefPSRright contained start='.' skip=@\%(\\\\\)\+@ end='\ze}'
endif
" Arithmetic Parenthesized Expressions: {{{1
@@ -563,6 +568,7 @@ hi def link shColon shComment
hi def link shDerefOp shOperator
hi def link shDerefPOL shDerefOp
hi def link shDerefPPS shDerefOp
hi def link shDerefPSR shDerefOp
hi def link shDeref shShellVariables
hi def link shDerefDelim shOperator
hi def link shDerefSimple shDeref

View File

@@ -2,9 +2,10 @@
" Language: OpenSSH client configuration file (ssh_config)
" Author: David Necas (Yeti)
" Maintainer: Dominik Fischer <d dot f dot fischer at web dot de>
" Contributor: Leonard Ehrenfried <leonard.ehrenfried@web.de>
" Last Change: 2015 Dec 3
" SSH Version: 7.0
" Contributor: Leonard Ehrenfried <leonard.ehrenfried@web.de>
" Contributor: Karsten Hopp <karsten@redhat.com>
" Last Change: 2016 Jan 15
" SSH Version: 7.1
"
" Setup
@@ -69,8 +70,8 @@ syn keyword sshconfigSysLogFacility DAEMON USER AUTH AUTHPRIV LOCAL0 LOCAL1
syn keyword sshconfigSysLogFacility LOCAL2 LOCAL3 LOCAL4 LOCAL5 LOCAL6 LOCAL7
syn keyword sshconfigAddressFamily inet inet6
syn match sshconfigIPQoS "af1[1234]"
syn match sshconfigIPQoS "af2[23]"
syn match sshconfigIPQoS "af1[123]"
syn match sshconfigIPQoS "af2[123]"
syn match sshconfigIPQoS "af3[123]"
syn match sshconfigIPQoS "af4[123]"
syn match sshconfigIPQoS "cs[0-7]"
@@ -106,6 +107,10 @@ syn keyword sshconfigMatch canonical exec host originalhost user localuser all
syn keyword sshconfigKeyword AddressFamily
syn keyword sshconfigKeyword BatchMode
syn keyword sshconfigKeyword BindAddress
syn keyword sshconfigKeyword CanonicalDomains
syn keyword sshconfigKeyword CanonicalizeFallbackLocal
syn keyword sshconfigKeyword CanonicalizeHostname
syn keyword sshconfigKeyword CanonicalizeMaxDots
syn keyword sshconfigKeyword ChallengeResponseAuthentication
syn keyword sshconfigKeyword CheckHostIP
syn keyword sshconfigKeyword Cipher
@@ -145,6 +150,8 @@ syn keyword sshconfigKeyword HostbasedKeyTypes
syn keyword sshconfigKeyword IPQoS
syn keyword sshconfigKeyword IdentitiesOnly
syn keyword sshconfigKeyword IdentityFile
syn keyword sshconfigKeyword IgnoreUnknown
syn keyword sshconfigKeyword IPQoS
syn keyword sshconfigKeyword KbdInteractiveAuthentication
syn keyword sshconfigKeyword KbdInteractiveDevices
syn keyword sshconfigKeyword KexAlgorithms
@@ -182,6 +189,7 @@ syn keyword sshconfigKeyword UseBlacklistedKeys
syn keyword sshconfigKeyword UsePrivilegedPort
syn keyword sshconfigKeyword User
syn keyword sshconfigKeyword UserKnownHostsFile
syn keyword sshconfigKeyword UseRoaming
syn keyword sshconfigKeyword VerifyHostKeyDNS
syn keyword sshconfigKeyword VisualHostKey
syn keyword sshconfigKeyword XAuthLocation

View File

@@ -4,9 +4,10 @@
" Maintainer: Dominik Fischer <d dot f dot fischer at web dot de>
" Contributor: Thilo Six
" Contributor: Leonard Ehrenfried <leonard.ehrenfried@web.de>
" Contributor: Karsten Hopp <karsten@redhat.com>
" Originally: 2009-07-09
" Last Change: 2015 Dec 3
" SSH Version: 7.0
" Last Change: 2016 Jan 12
" SSH Version: 7.1
"
" Setup
@@ -65,8 +66,8 @@ syn keyword sshdconfigSysLogFacility LOCAL2 LOCAL3 LOCAL4 LOCAL5 LOCAL6 LOCAL7
syn keyword sshdconfigCompression delayed
syn match sshdconfigIPQoS "af1[1234]"
syn match sshdconfigIPQoS "af2[23]"
syn match sshdconfigIPQoS "af1[123]"
syn match sshdconfigIPQoS "af2[123]"
syn match sshdconfigIPQoS "af3[123]"
syn match sshdconfigIPQoS "af4[123]"
syn match sshdconfigIPQoS "cs[0-7]"
@@ -109,6 +110,7 @@ syn keyword sshdconfigKeyword AllowGroups
syn keyword sshdconfigKeyword AllowStreamLocalForwarding
syn keyword sshdconfigKeyword AllowTcpForwarding
syn keyword sshdconfigKeyword AllowUsers
syn keyword sshdconfigKeyword AuthenticationMethods
syn keyword sshdconfigKeyword AuthorizedKeysFile
syn keyword sshdconfigKeyword AuthorizedKeysCommand
syn keyword sshdconfigKeyword AuthorizedKeysCommandUser
@@ -132,6 +134,7 @@ syn keyword sshdconfigKeyword GSSAPIStrictAcceptorCheck
syn keyword sshdconfigKeyword GatewayPorts
syn keyword sshdconfigKeyword HostCertificate
syn keyword sshdconfigKeyword HostKey
syn keyword sshdconfigKeyword HostKeyAgent
syn keyword sshdconfigKeyword HostKeyAlgorithms
syn keyword sshdconfigKeyword HostbasedAcceptedKeyTypes
syn keyword sshdconfigKeyword HostbasedAuthentication

View File

@@ -1,8 +1,8 @@
" Vim syntax file
" Language: TeX
" Maintainer: Charles E. Campbell <NdrchipO@ScampbellPfamily.AbizM>
" Last Change: Oct 20, 2015
" Version: 90
" Last Change: Jan 20, 2016
" Version: 91
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_TEX
"
" Notes: {{{1
@@ -129,8 +129,10 @@ endif
" g:tex_isk
if exists("g:tex_isk")
exe "setlocal isk=".g:tex_isk
elseif !has("patch-7.4.1141")
setl isk=48-57,a-z,A-Z,192-255
else
setlocal isk=48-57,a-z,A-Z,192-255
syn iskeyword 48-57,a-z,A-Z,192-255
endif
if b:tex_stylish
setlocal isk+=@-@

View File

@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Vim 7.4 script
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: November 30, 2015
" Version: 7.4-38
" Last Change: January 20, 2016
" Version: 7.4-40
" Automatically generated keyword lists: {{{1
" Quit when a syntax file was already loaded {{{2
@@ -18,34 +18,35 @@ syn keyword vimTodo contained COMBAK FIXME TODO XXX
syn cluster vimCommentGroup contains=vimTodo,@Spell
" regular vim commands {{{2
syn keyword vimCommand contained a arga[dd] argl[ocal] ba[ll] bn[ext] breakd[el] bufdo cabc[lear] cb[uffer] cf[ile] changes cl[ist] cn[ext] col[der] conf[irm] cq[uit] cw[indow] delc[ommand] deletl delp diffpu[t] dir doau ea e[dit] endfo[r] ene[w] files fini[sh] foldd[oopen] g h helpt[ags] iabc[lear] intro k l lan lc[d] lefta[bove] lg[etfile] lla[st] lnew[er] lNf[ile] lockv[ar] ls lvimgrepa[dd] mat[ch] mk[exrc] mo n n[ext] nore on[ly] pe popu[p] pro pta[g] ptn[ext] pw[d] py[thon] r red[o] retu[rn] rub[y] rv[iminfo] sba[ll] sbN[ext] scripte[ncoding] setf[iletype] sh[ell] sl sme sno[magic] so[urce] spellr[epall] sre[wind] startg[replace] stopi[nsert] sus[pend] sync tab tabfir[st] tabn[ext] tabs tclf[ile] tl[ast] tn[ext] tr[ewind] u undol[ist] up[date] vert[ical] vi[sual] w windo wp[revious] wundo xmapc[lear] xprop
syn keyword vimCommand contained ab argd ar[gs] bd[elete] bN[ext] breakl[ist] b[uffer] cad[dbuffer] cc cfir[st] chd[ir] clo[se] cN[ext] colo[rscheme] con[tinue] cr[ewind] d delel deletp dep diffs[plit] di[splay] dp earlier el[se] endfun ex filet fir[st] foldo[pen] go[to] ha[rdcopy] hi if is[earch] keepa la lan[guage] lch[dir] lex[pr] lgr[ep] lli[st] lne[xt] lo lol[der] lt[ag] lw[indow] menut mks[ession] mod[e] nbc[lose] nmapc[lear] nos[wapfile] o[pen] ped[it] pp[op] profd[el] ptf[irst] ptN[ext] py python3 re redr[aw] rew[ind] rubyd[o] sal[l] sbf[irst] sbp[revious] scr[iptnames] setg[lobal] sig sla[st] smenu snoreme spe spellu[ndo] st star[tinsert] sts[elect] sv[iew] syncbind tabc[lose] tabl[ast] tabN[ext] ta[g] te[aroff] tm tN[ext] try un unh[ide] v vi viu[sage] wa[ll] winp[os] wq wv[iminfo] xme xunme
syn keyword vimCommand contained abc[lear] argd[elete] argu[ment] bel[owright] bo[tright] br[ewind] buffers cadde[xpr] ccl[ose] cgetb[uffer] che[ckpath] cmapc[lear] cnf com cope[n] cs de delep delf di difft[his] dj[ump] dr[op] ec elsei[f] endf[unction] exi[t] filetype fix[del] for gr[ep] h[elp] hid[e] ij[ump] isp[lit] keepalt lad la[st] lcl[ose] lf[ile] lgrepa[dd] lmak[e] lN[ext] loadk lop[en] lua ma menut[ranslate] mksp[ell] m[ove] nb[key] noa nu[mber] opt[ions] pe[rl] pr prof[ile] ptj[ump] ptp[revious] py3 q r[ead] redraws[tatus] ri[ght] rubyf[ile] san[dbox] sbl[ast] sbr[ewind] scs setl[ocal] sign sl[eep] sn[ext] snoremenu spelld[ump] spellw[rong] sta[g] startr[eplace] sun[hide] sw[apname] syntime tabd[o] tabm[ove] tabo[nly] tags tf[irst] tm[enu] to[pleft] ts[elect] una[bbreviate] unl ve vie[w] vmapc[lear] wh[ile] win[size] wqa[ll] x xmenu xunmenu
syn keyword vimCommand contained abo[veleft] argdo as[cii] bf[irst] bp[revious] bro[wse] bun[load] caddf[ile] cd cgete[xpr] checkt[ime] cn cNf comc[lear] co[py] cscope debug d[elete] delf[unction] diffg[et] diffu[pdate] dl ds[earch] echoe[rr] em[enu] en[dif] exu[sage] fin fo[ld] fu grepa[dd] helpc[lose] his[tory] il[ist] iuna[bbrev] keepj[umps] laddb[uffer] lat lcs lfir[st] lh[elpgrep] lmapc[lear] lnf loadkeymap lpf[ile] luado mak[e] mes mkv mz nbs[tart] noautocmd o ownsyntax perld[o] pre[serve] promptf[ind] ptl[ast] ptr[ewind] py3do qa[ll] rec[over] reg[isters] rightb[elow] rundo sa[rgument] sbm[odified] sb[uffer] scscope sf[ind] sil[ent] sm[agic] sN[ext] so spe[llgood] sp[lit] star stj[ump] sunme sy t tabe[dit] tabN tabp[revious] tc[l] th[row] tn tp[revious] tu u[ndo] unlo[ckvar] verb[ose] vim[grep] vne[w] win wn[ext] w[rite] xa[ll] xnoreme xwininfo
syn keyword vimCommand contained al[l] arge[dit] au bl[ast] brea[k] bu bw[ipeout] cal[l] ce[nter] cg[etfile] cl cN cnf[ile] comp[iler] cpf[ile] cstag debugg[reedy] deletel dell diffo[ff] dig dli[st] dsp[lit] echom[sg] en endt[ry] f fina[lly] foldc[lose] fun gui helpf[ind] i imapc[lear] j[oin] kee[pmarks] lad[dexpr] later lcscope lgetb[uffer] l[ist] lN lNf lo[adview] lp[revious] luafile ma[rk] messages mkvie[w] mzf[ile] ne noh[lsearch] ol[dfiles] p po[p] prev[ious] promptr[epl] ptn pts[elect] pydo q[uit] red res[ize] ru ru[ntime] sav[eas] sbn[ext] scr se[t] sfir[st] sim[alt] sm[ap] sni[ff] sor[t] spelli[nfo] spr[evious] start st[op] sunmenu syn ta tabf[ind] tabnew tabr[ewind] tcld[o] tj[ump] tN tr tu[nmenu] undoj[oin] uns[ilent] ve[rsion] vimgrepa[dd] vs[plit] winc[md] wN[ext] ws[verb] x[it] xnoremenu y[ank]
syn keyword vimCommand contained ar argg[lobal] bad[d] bm[odified] breaka[dd] buf c cat[ch] cex[pr] c[hange] cla[st] cnew[er] cNf[ile] con cp[revious] cuna[bbrev] del deletep delm[arks] diffp[atch] dig[raphs] do e echon endf endw[hile] f[ile] fin[d] folddoc[losed] fu[nction] gvim helpg[rep] ia in ju[mps] keepp[atterns] laddf[ile] lb[uffer] le[ft] lgete[xpr] ll lne lnf[ile] loc[kmarks] lr[ewind] lv[imgrep] marks mk mkv[imrc] mz[scheme] new nor omapc[lear] pc[lose] popu p[rint] ps[earch] ptN pu[t] pyf[ile] quita[ll] redi[r] ret[ab]
syn keyword vimCommand contained a argd argu[ment] bf[irst] brea[k] buf cabc[lear] cc cfdo changes clo[se] cN[ext] colo[rscheme] con[tinue] cr[ewind] d delel deletp dep diffpu[t] dir doau ea e[dit] endfo[r] ene[w] files fini[sh] foldd[oopen] g h helpt[ags] iabc[lear] intro k l lan lc[d] le[ft] lfir[st] lh[elpgrep] lmapc[lear] lnf loadkeymap lpf[ile] luado mak[e] mes mkv mz nbs[tart] noautocmd o ownsyntax perld[o] pre[serve] promptf[ind] ptl[ast] ptr[ewind] py3do qa[ll] rec[over] reg[isters] rightb[elow] ru[ntime] sba[ll] sbp[revious] sci scr[iptnames] setl[ocal] sgi sh[ell] sIe sil[ent] sir sm[ap] sno[magic] sp spellu[ndo] sre[wind] srp star[tinsert] sun[hide] sy ta tabfir[st] tabN[ext] tags th[row] tN tr[ewind] un unl verb[ose] vimgrepa[dd] w winp[os] wqa[ll] xa[ll] xnoremenu
syn keyword vimCommand contained ab argd[elete] as[cii] bl[ast] breaka[dd] bufdo cad[dbuffer] ccl[ose] cf[ile] chd[ir] cmapc[lear] cnf com cope[n] cs de delep delf di diffs[plit] di[splay] dp earlier el[se] endfun ex filet fir[st] foldo[pen] go[to] ha[rdcopy] hi if is[earch] keepa la lan[guage] lch[dir] lefta[bove] lgetb[uffer] l[ist] lN lNf lo[adview] lp[revious] luafile ma[rk] messages mkvie[w] mzf[ile] ne noh[lsearch] ol[dfiles] p po[p] prev[ious] promptr[epl] ptn pts[elect] pydo q[uit] red res[ize] ru rv[iminfo] sbf[irst] sbr[ewind] scI scs sf[ind] sgI si sig sim[alt] sIr sme snoreme spe spellw[rong] srg st startr[eplace] sunme syn tab tabl[ast] tabo[nly] tc[l] tj[ump] tn[ext] try una[bbreviate] unlo[ckvar] ve[rsion] vi[sual] wa[ll] win[size] w[rite] x[it] xprop
syn keyword vimCommand contained abc[lear] argdo au bm[odified] breakd[el] b[uffer] cadde[xpr] cd cfir[st] che[ckpath] cn cNf comc[lear] co[py] cscope debug d[elete] delf[unction] dif difft[his] dj[ump] dr[op] ec elsei[f] endf[unction] exi[t] filetype fix[del] for gr[ep] h[elp] hid[e] ij[ump] isp[lit] keepalt lad la[st] lcl[ose] lex[pr] lgete[xpr] ll lne lnf[ile] loc[kmarks] lr[ewind] lv[imgrep] marks mk mkv[imrc] mz[scheme] new nor omapc[lear] pc[lose] popu p[rint] ps[earch] ptN pu[t] pyf[ile] quita[ll] redi[r] ret[ab] rub[y] sal[l] sbl[ast] sb[uffer] scl scscope sfir[st] sgl sI sIg sin sl smenu snoremenu spelld[ump] sp[lit] sri sta[g] stj[ump] sunmenu sync tabc[lose] tabm[ove] tabp[revious] tcld[o] tl[ast] tN[ext] ts[elect] u[ndo] uns[ilent] vert[ical] viu[sage] wh[ile] wn[ext] ws[verb] xmapc[lear] xunme
syn keyword vimCommand contained abo[veleft] arge[dit] bad[d] bn[ext] breakl[ist] buffers caddf[ile] cdo cgetb[uffer] checkt[ime] cN cnf[ile] comp[iler] cpf[ile] cstag debugg[reedy] deletel dell diffg[et] dif[fupdate] dl ds[earch] echoe[rr] em[enu] en[dif] exu[sage] fin fo[ld] fu grepa[dd] helpc[lose] his[tory] il[ist] iuna[bbrev] keepj[umps] laddb[uffer] lat lcs lf lg[etfile] lla[st] lnew[er] lNf[ile] lockv[ar] ls lvimgrepa[dd] mat[ch] mk[exrc] mo n n[ext] nore on[ly] pe popu[p] pro pta[g] ptn[ext] pw[d] py[thon] r red[o] retu[rn] rubyd[o] san[dbox] sbm[odified] sc scp se[t] sg sgn sic sign sIn sla[st] sn[ext] so spe[llgood] spr[evious] srI star st[op] sus[pend] syncbind tabd[o] tabN tabr[ewind] tclf[ile] tm to[pleft] tu undoj[oin] up[date] vi vmapc[lear] win wN[ext] wundo xme xunmenu
syn keyword vimCommand contained al[l] argg[lobal] ba[ll] bN[ext] br[ewind] bun[load] cal[l] ce[nter] cgete[xpr] cl cnew[er] cNf[ile] con cp[revious] cuna[bbrev] del deletep delm[arks] diffo[ff] dig dli[st] dsp[lit] echom[sg] en endt[ry] f fina[lly] foldc[lose] fun gui helpf[ind] i imapc[lear] j[oin] kee[pmarks] lad[dexpr] later lcscope lfdo lgr[ep] lli[st] lne[xt] lo lol[der] lt[ag] lw[indow] menut mks[ession] mod[e] nbc[lose] nmapc[lear] nos[wapfile] o[pen] ped[it] pp[op] profd[el] ptf[irst] ptN[ext] py python3 re redr[aw] rew[ind] rubyf[ile] sa[rgument] sbn[ext] sce scr setf[iletype] sgc sgp sIc sil sip sl[eep] sN[ext] sor[t] spelli[nfo] sr srl start stopi[nsert] sv[iew] syntime tabe[dit] tabnew tabs te[aroff] tm[enu] tp[revious] tu[nmenu] undol[ist] v vie[w] vne[w] winc[md] wp[revious] wv[iminfo] xmenu xwininfo
syn keyword vimCommand contained ar argl[ocal] bd[elete] bo[tright] bro[wse] bw[ipeout] cat[ch] cex[pr] cg[etfile] cla[st] cn[ext] col[der] conf[irm] cq[uit] cw[indow] delc[ommand] deletl delp diffp[atch] dig[raphs] do e echon endf endw[hile] f[ile] fin[d] folddoc[losed] fu[nction] gvim helpg[rep] ia in ju[mps] keepp[atterns] laddf[ile] lb[uffer] ld[o] lf[ile] lgrepa[dd] lmak[e] lN[ext] loadk lop[en] lua ma menut[ranslate] mksp[ell] m[ove] nb[key] noa nu[mber] opt[ions] pe[rl] pr prof[ile] ptj[ump] ptp[revious] py3 q r[ead] redraws[tatus] ri[ght] rundo sav[eas] sbN[ext] scg scripte[ncoding] setg[lobal] sge sgr sie sIl sIp sm[agic] sni[ff] so[urce] spellr[epall] src srn startg[replace] sts[elect] sw[apname] t tabf[ind] tabn[ext] ta[g] tf[irst] tn tr u unh[ide] ve vim[grep] vs[plit] windo wq x xnoreme y[ank]
syn keyword vimCommand contained arga[dd] ar[gs] bel[owright] bp[revious] bu c cb[uffer] cf c[hange] cl[ist]
syn match vimCommand contained "\<z[-+^.=]\=\>"
syn keyword vimStdPlugin contained DiffOrig Man N[ext] P[rint] S TOhtml XMLent XMLns
" vimOptions are caught only when contained in a vimSet {{{2
syn keyword vimOption contained acd ambw arshape background ballooneval bg bl brk buftype cf cinkeys cmdwinheight com concealcursor cp cscopeprg csprg cul def diff display edcompatible endofline errorformat fcl fdm fex fileformats fkmap foldenable foldminlines formatprg gdefault gp guifontset helpfile hidden hl ignorecase imcmdline imsf indentexpr is isp keywordprg laststatus lisp loadplugins ma matchtime mco ml modeline mousefocus mousetime nrformats ofu para pdev pheader previewheight printmbcharset pvw readonly restorescreen rnu ruf sc scrollopt selectmode shellpipe shellxquote showcmd sidescroll smartindent sol spellsuggest sr stal sua swf syntax tagcase tbi termbidi tgst titleold top ttimeoutlen ttyscroll ul ur verbosefile visualbell wcm wi wildmenu winfixwidth wm wrapscan
syn keyword vimOption contained ai anti autochdir backspace balloonexpr bh bo browsedir casemap cfu cino cmp comments conceallevel cpo cscopequickfix csqf cursorbind define diffexpr dy ef eol esckeys fcs fdn ff fileignorecase flp foldexpr foldnestmax fp gfm grepformat guifontwide helpheight highlight hlg im imd imstatusfunc indentkeys isf isprint km lazyredraw lispwords lpl macatsui maxcombine mef mls modelines mousehide mp nu omnifunc paragraphs penc pi previewwindow printmbfont pythondll redrawtime revins ro ruler scb scs sessionoptions shellquote shiftround showfulltag sidescrolloff smarttab sp spf srr startofline suffixes switchbuf ta taglength tbidi termencoding thesaurus titlestring tpm ttm ttytype undodir ut vfile vop wd wic wildmode winheight wmh write
syn keyword vimOption contained akm antialias autoindent backup bdir bin bomb bs cb ch cinoptions cms commentstring confirm cpoptions cscoperelative csre cursorcolumn delcombine diffopt ea efm ep et fdc fdo ffs filetype fml foldignore foldopen fs gfn grepprg guiheadroom helplang history hls imactivatefunc imdisable inc indk isfname joinspaces kmp lbr list ls magic maxfuncdepth menuitems mm modifiable mousem mps number opendevice paste perldll pm printdevice printoptions pythonthreedll regexpengine ri rop rulerformat scr sect sft shellredir shiftwidth showmatch siso smc spc spl ss statusline suffixesadd sws tabline tagrelative tbis terse tildeop tl tr tty tw undofile vb vi wa weirdinvert wig wildoptions winminheight wmnu writeany
syn keyword vimOption contained al ar autoread backupcopy bdlay binary breakat bsdir cc charconvert cinw co compatible consk cpt cscopetag cst cursorline dex digraph ead ei equalalways eventignore fde fdt fic fillchars fmr foldlevel foldtext fsync gfs gtl guioptions hf hk hlsearch imactivatekey imi include inex isi js kp lcs listchars lsp makeef maxmapdepth mfd mmd modified mousemodel msm numberwidth operatorfunc pastetoggle pex pmbcs printencoding prompt qe relativenumber rightleft rs runtimepath scroll sections sh shellslash shm showmode sj smd spell splitbelow ssl stl sw sxe tabpagemax tags tbs textauto timeout tm ts ttybuiltin tx undolevels vbs viewdir wak wfh wildchar wim winminwidth wmw writebackup
syn keyword vimOption contained aleph arab autowrite backupdir belloff biosk breakindent bsk ccv ci cinwords cocu complete conskey crb cscopetagorder csto cwh dg dip eadirection ek equalprg ex fdi fen fileencoding fixendofline fo foldlevelstart formatexpr ft gfw gtt guipty hh hkmap ic imaf iminsert includeexpr inf isident key langmap linebreak lm luadll makeprg maxmem mh mmp more mouses mzq nuw opfunc patchexpr pexpr pmbfn printexpr pt quoteescape remap rightleftcmd rtp sb scrollbind secure shcf shelltemp shortmess showtabline slm sn spellcapcheck splitright ssop stmp swapfile sxq tabstop tagstack tc textmode timeoutlen to tsl ttyfast uc undoreload vdir viewoptions warn wfw wildcharm winaltkeys winwidth wop writedelay
syn keyword vimOption contained allowrevins arabic autowriteall backupext beval bioskey breakindentopt bt cd cin clipboard cole completefunc copyindent cryptmethod cscopeverbose csverb debug dict dir eb enc errorbells expandtab fdl fenc fileencodings fixeol foldclose foldmarker formatlistpat gcr ghr guicursor guitablabel hi hkmapp icon imak ims incsearch infercase isk keymap langmenu lines lmap lw mat maxmempattern mis mmt mouse mouseshape mzquantum odev osfiletype patchmode pfn popt printfont pumheight rdt renderoptions rl ru sbo scrolljump sel shell shelltype shortname shq sm so spellfile spr st sts swapsync syn tag tal tenc textwidth title toolbar tsr ttym udf updatecount ve viminfo wb wh wildignore window wiv wrap ws
syn keyword vimOption contained altkeymap arabicshape aw backupskip bex bk bri bufhidden cdpath cindent cm colorcolumn completeopt cot cscopepathcomp cspc cuc deco dictionary directory ed encoding errorfile exrc fdls fencs fileformat fk foldcolumn foldmethod formatoptions gd go guifont guitabtooltip hid hkp iconstring imc imsearch inde insertmode iskeyword keymodel langnoremap linespace lnr lz matchpairs maxmemtot mkspellmem mod mousef mouset nf oft pa path ph preserveindent printheader pvh re report rlc rubydll sbr scrolloff selection shellcmdflag shellxescape showbreak si smartcase softtabstop spelllang sps sta su swb synmaxcol tagbsearch tb term tf titlelen toolbariconsize ttimeout ttymouse udir updatetime verbose virtualedit wc whichwrap wildignorecase winfixheight wiw wrapmargin ww
syn keyword vimOption contained ambiwidth ari awa balloondelay bexpr bkc briopt buflisted cedit cink cmdheight columns
syn keyword vimOption contained acd ambw arshape background ballooneval bg bl brk buftype cf cinkeys cmdwinheight com conceallevel cpo cscopequickfix csqf cursorbind define diffexpr dy ef eol esckeys fcs fdn ff fileignorecase flp foldexpr foldnestmax fp gfm grepformat guifontwide helpheight highlight hlg im imd imstatusfunc indentkeys isf isprint km lazyredraw lispwords lpl macatsui maxcombine mef mls modelines mousehide mp nu omnifunc paragraphs penc pi previewwindow printmbfont pythondll redrawtime revins ro ruler scb scs sessionoptions shellquote shiftround showfulltag sidescrolloff smarttab sp spf srr startofline suffixes switchbuf ta taglength tbidi termbidi tgst titleold top ttimeoutlen ttyscroll ul ur verbosefile visualbell wcm wi wildmenu winfixwidth wm wrapscan
syn keyword vimOption contained ai anti autochdir backspace balloonexpr bh bo browsedir casemap cfu cino cmp comments confirm cpoptions cscoperelative csre cursorcolumn delcombine diffopt ea efm ep et fdc fdo ffs filetype fml foldignore foldopen fs gfn grepprg guiheadroom helplang history hls imactivatefunc imdisable inc indk isfname joinspaces kmp lbr list ls magic maxfuncdepth menuitems mm modifiable mousem mps number opendevice paste perldll pm printdevice printoptions pythonthreedll regexpengine ri rop rulerformat scr sect sft shellredir shiftwidth showmatch siso smc spc spl ss statusline suffixesadd sws tabline tagrelative tbis termencoding thesaurus titlestring tpm ttm ttytype undodir ut vfile vop wd wic wildmode winheight wmh write
syn keyword vimOption contained akm antialias autoindent backup bdir bin bomb bs cb ch cinoptions cms commentstring consk cpt cscopetag cst cursorline dex digraph ead ei equalalways eventignore fde fdt fic fillchars fmr foldlevel foldtext fsync gfs gtl guioptions hf hk hlsearch imactivatekey imi include inex isi js kp lcs listchars lsp makeef maxmapdepth mfd mmd modified mousemodel msm numberwidth operatorfunc pastetoggle pex pmbcs printencoding prompt qe relativenumber rightleft rs runtimepath scroll sections sh shellslash shm showmode sj smd spell splitbelow ssl stl sw sxe tabpagemax tags tbs terse tildeop tl tr tty tw undofile vb vi wa weirdinvert wig wildoptions winminheight wmnu writeany
syn keyword vimOption contained al ar autoread backupcopy bdlay binary breakat bsdir cc charconvert cinw co compatible conskey crb cscopetagorder csto cwh dg dip eadirection ek equalprg ex fdi fen fileencoding fixendofline fo foldlevelstart formatexpr ft gfw gtt guipty hh hkmap ic imaf iminsert includeexpr inf isident key langmap linebreak lm luadll makeprg maxmem mh mmp more mouses mzq nuw opfunc patchexpr pexpr pmbfn printexpr pt quoteescape remap rightleftcmd rtp sb scrollbind secure shcf shelltemp shortmess showtabline slm sn spellcapcheck splitright ssop stmp swapfile sxq tabstop tagstack tc textauto timeout tm ts ttybuiltin tx undolevels vbs viewdir wak wfh wildchar wim winminwidth wmw writebackup
syn keyword vimOption contained aleph arab autowrite backupdir belloff biosk breakindent bsk ccv ci cinwords cocu complete copyindent cryptmethod cscopeverbose csverb debug dict dir eb enc errorbells expandtab fdl fenc fileencodings fixeol foldclose foldmarker formatlistpat gcr ghr guicursor guitablabel hi hkmapp icon imak ims incsearch infercase isk keymap langmenu lines lmap lw mat maxmempattern mis mmt mouse mouseshape mzquantum odev osfiletype patchmode pfn popt printfont pumheight rdt renderoptions rl ru sbo scrolljump sel shell shelltype shortname shq sm so spellfile spr st sts swapsync syn tag tal tcldll textmode timeoutlen to tsl ttyfast uc undoreload vdir viewoptions warn wfw wildcharm winaltkeys winwidth wop writedelay
syn keyword vimOption contained allowrevins arabic autowriteall backupext beval bioskey breakindentopt bt cd cin clipboard cole completefunc cot cscopepathcomp cspc cuc deco dictionary directory ed encoding errorfile exrc fdls fencs fileformat fk foldcolumn foldmethod formatoptions gd go guifont guitabtooltip hid hkp iconstring imc imsearch inde insertmode iskeyword keymodel langnoremap linespace lnr lz matchpairs maxmemtot mkspellmem mod mousef mouset nf oft pa path ph preserveindent printheader pvh re report rlc rubydll sbr scrolloff selection shellcmdflag shellxescape showbreak si smartcase softtabstop spelllang sps sta su swb synmaxcol tagbsearch tb tenc textwidth title toolbar tsr ttym udf updatecount ve viminfo wb wh wildignore window wiv wrap ws
syn keyword vimOption contained altkeymap arabicshape aw backupskip bex bk bri bufhidden cdpath cindent cm colorcolumn completeopt cp cscopeprg csprg cul def diff display edcompatible endofline errorformat fcl fdm fex fileformats fkmap foldenable foldminlines formatprg gdefault gp guifontset helpfile hidden hl ignorecase imcmdline imsf indentexpr is isp keywordprg laststatus lisp loadplugins ma matchtime mco ml modeline mousefocus mousetime nrformats ofu para pdev pheader previewheight printmbcharset pvw readonly restorescreen rnu ruf sc scrollopt selectmode shellpipe shellxquote showcmd sidescroll smartindent sol spellsuggest sr stal sua swf syntax tagcase tbi term tf titlelen toolbariconsize ttimeout ttymouse udir updatetime verbose virtualedit wc whichwrap wildignorecase winfixheight wiw wrapmargin ww
syn keyword vimOption contained ambiwidth ari awa balloondelay bexpr bkc briopt buflisted cedit cink cmdheight columns concealcursor
" vimOptions: These are the turn-off setting variants {{{2
syn keyword vimOption contained noacd noallowrevins noantialias noarabic noarshape noautoread noaw noballooneval nobinary nobk nobuflisted nocin noconfirm nocopyindent nocscoperelative nocsre nocuc nocursorcolumn nodelcombine nodigraph noed noendofline noerrorbells noex nofen nofixendofline nofkmap nogdefault nohidden nohkmapp nohlsearch noicon noim noimcmdline noimdisable noinf noinsertmode nojoinspaces nolazyredraw nolinebreak nolist nolpl noma nomagic noml nomodeline nomodified nomousef nomousehide nonumber noopendevice nopi nopreviewwindow nopvw norelativenumber norestorescreen nori norl noro noru nosb noscb noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs noterse notextmode notgst notimeout noto notr nottybuiltin notx noundofile novisualbell nowarn noweirdinvert nowfw nowildignorecase nowinfixheight nowiv nowrap nowrite nowritebackup
syn keyword vimOption contained noai noaltkeymap noar noarabicshape noautochdir noautowrite noawa nobeval nobiosk nobl nocf nocindent noconsk nocp nocscopetag nocst nocul nocursorline nodg noea noedcompatible noeol noesckeys noexpandtab nofic nofixeol nofoldenable noguipty nohk nohkp noic noignorecase noimc noimd noincsearch noinfercase nois nojs nolbr nolisp noloadplugins nolz nomacatsui nomh nomod nomodifiable nomore nomousefocus nonu noodev nopaste nopreserveindent noprompt noreadonly noremap norevins norightleft nornu nors noruler nosc noscrollbind nosecure noshellslash noshiftround noshowcmd noshowmatch nosi nosmartcase nosmarttab nosn nospell nosplitright nosr nosta nostmp noswf notagbsearch notagstack notbidi notermbidi notextauto notf notildeop notitle notop nottimeout nottyfast noudf novb nowa nowb nowfh nowic nowildmenu nowinfixwidth nowmnu nowrapscan nowriteany nows
syn keyword vimOption contained noakm noanti noarab noari noautoindent noautowriteall nobackup nobin nobioskey nobomb noci nocompatible noconskey nocrb nocscopeverbose nocsverb nocursorbind nodeco nodiff noeb noek noequalalways noet noexrc nofileignorecase nofk nogd nohid nohkmap nohls
syn keyword vimOption contained noacd noallowrevins noantialias noarabic noarshape noautoread noaw noballooneval nobinary nobk nobreakindent nocf nocindent noconsk nocp nocscopetag nocst nocul nocursorline nodg noea noedcompatible noeol noesckeys noexpandtab nofic nofixeol nofoldenable nogd nohid nohkmap nohls noicon noimc noimdisable noinfercase nojoinspaces nolangnoremap nolbr nolisp nolnr nolpl noma nomagic noml nomodeline nomodified nomousef nomousehide nonumber noopendevice nopi nopreviewwindow nopvw norelativenumber norestorescreen nori norl noro noru nosb noscb noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs noterse notextmode notgst notimeout noto notr nottybuiltin notx noundofile novisualbell nowarn noweirdinvert nowfw nowildignorecase nowinfixheight nowiv nowrap nowrite nowritebackup
syn keyword vimOption contained noai noaltkeymap noar noarabicshape noautochdir noautowrite noawa nobeval nobiosk nobl nobri noci nocompatible noconskey nocrb nocscopeverbose nocsverb nocursorbind nodeco nodiff noeb noek noequalalways noet noexrc nofileignorecase nofk nofs nogdefault nohidden nohkmapp nohlsearch noignorecase noimcmdline noincsearch noinsertmode nojs nolazyredraw nolinebreak nolist noloadplugins nolz nomacatsui nomh nomod nomodifiable nomore nomousefocus nonu noodev nopaste nopreserveindent noprompt noreadonly noremap norevins norightleft nornu nors noruler nosc noscrollbind nosecure noshellslash noshiftround noshowcmd noshowmatch nosi nosmartcase nosmarttab nosn nospell nosplitright nosr nosta nostmp noswf notagbsearch notagstack notbidi notermbidi notextauto notf notildeop notitle notop nottimeout nottyfast noudf novb nowa nowb nowfh nowic nowildmenu nowinfixwidth nowmnu nowrapscan nowriteany nows
syn keyword vimOption contained noakm noanti noarab noari noautoindent noautowriteall nobackup nobin nobioskey nobomb nobuflisted nocin noconfirm nocopyindent nocscoperelative nocsre nocuc nocursorcolumn nodelcombine nodigraph noed noendofline noerrorbells noex nofen nofixendofline nofkmap nofsync noguipty nohk nohkp noic noim noimd noinf nois
" vimOptions: These are the invertible variants {{{2
syn keyword vimOption contained invacd invallowrevins invantialias invarabic invarshape invautoread invaw invballooneval invbinary invbk invbuflisted invcin invconfirm invcopyindent invcscoperelative invcsre invcuc invcursorcolumn invdelcombine invdigraph inved invendofline inverrorbells invex invfen invfixendofline invfkmap invgdefault invhidden invhkmapp invhlsearch invicon invim invimcmdline invimdisable invinf invinsertmode invjoinspaces invlazyredraw invlinebreak invlist invlpl invma invmagic invml invmodeline invmodified invmousef invmousehide invnumber invopendevice invpi invpreviewwindow invpvw invrelativenumber invrestorescreen invri invrl invro invru invsb invscb invscs invsft invshelltemp invshortname invshowfulltag invshowmode invsm invsmartindent invsmd invsol invsplitbelow invspr invssl invstartofline invswapfile invta invtagrelative invtbi invtbs invterse invtextmode invtgst invtimeout invto invtr invttybuiltin invtx invundofile invvisualbell invwarn invweirdinvert invwfw invwildignorecase invwinfixheight invwiv invwrap invwrite invwritebackup
syn keyword vimOption contained invai invaltkeymap invar invarabicshape invautochdir invautowrite invawa invbeval invbiosk invbl invcf invcindent invconsk invcp invcscopetag invcst invcul invcursorline invdg invea invedcompatible inveol invesckeys invexpandtab invfic invfixeol invfoldenable invguipty invhk invhkp invic invignorecase invimc invimd invincsearch invinfercase invis invjs invlbr invlisp invloadplugins invlz invmacatsui invmh invmod invmodifiable invmore invmousefocus invnu invodev invpaste invpreserveindent invprompt invreadonly invremap invrevins invrightleft invrnu invrs invruler invsc invscrollbind invsecure invshellslash invshiftround invshowcmd invshowmatch invsi invsmartcase invsmarttab invsn invspell invsplitright invsr invsta invstmp invswf invtagbsearch invtagstack invtbidi invtermbidi invtextauto invtf invtildeop invtitle invtop invttimeout invttyfast invudf invvb invwa invwb invwfh invwic invwildmenu invwinfixwidth invwmnu invwrapscan invwriteany invws
syn keyword vimOption contained invakm invanti invarab invari invautoindent invautowriteall invbackup invbin invbioskey invbomb invci invcompatible invconskey invcrb invcscopeverbose invcsverb invcursorbind invdeco invdiff inveb invek invequalalways invet invexrc invfileignorecase invfk invgd invhid invhkmap invhls
syn keyword vimOption contained invacd invallowrevins invantialias invarabic invarshape invautoread invaw invballooneval invbinary invbk invbreakindent invcf invcindent invconsk invcp invcscopetag invcst invcul invcursorline invdg invea invedcompatible inveol invesckeys invexpandtab invfic invfixeol invfoldenable invgd invhid invhkmap invhls invicon invimc invimdisable invinfercase invjoinspaces invlangnoremap invlbr invlisp invlnr invlpl invma invmagic invml invmodeline invmodified invmousef invmousehide invnumber invopendevice invpi invpreviewwindow invpvw invrelativenumber invrestorescreen invri invrl invro invru invsb invscb invscs invsft invshelltemp invshortname invshowfulltag invshowmode invsm invsmartindent invsmd invsol invsplitbelow invspr invssl invstartofline invswapfile invta invtagrelative invtbi invtbs invterse invtextmode invtgst invtimeout invto invtr invttybuiltin invtx invundofile invvisualbell invwarn invweirdinvert invwfw invwildignorecase invwinfixheight invwiv invwrap invwrite invwritebackup
syn keyword vimOption contained invai invaltkeymap invar invarabicshape invautochdir invautowrite invawa invbeval invbiosk invbl invbri invci invcompatible invconskey invcrb invcscopeverbose invcsverb invcursorbind invdeco invdiff inveb invek invequalalways invet invexrc invfileignorecase invfk invfs invgdefault invhidden invhkmapp invhlsearch invignorecase invimcmdline invincsearch invinsertmode invjs invlazyredraw invlinebreak invlist invloadplugins invlz invmacatsui invmh invmod invmodifiable invmore invmousefocus invnu invodev invpaste invpreserveindent invprompt invreadonly invremap invrevins invrightleft invrnu invrs invruler invsc invscrollbind invsecure invshellslash invshiftround invshowcmd invshowmatch invsi invsmartcase invsmarttab invsn invspell invsplitright invsr invsta invstmp invswf invtagbsearch invtagstack invtbidi invtermbidi invtextauto invtf invtildeop invtitle invtop invttimeout invttyfast invudf invvb invwa invwb invwfh invwic invwildmenu invwinfixwidth invwmnu invwrapscan invwriteany invws
syn keyword vimOption contained invakm invanti invarab invari invautoindent invautowriteall invbackup invbin invbioskey invbomb invbuflisted invcin invconfirm invcopyindent invcscoperelative invcsre invcuc invcursorcolumn invdelcombine invdigraph inved invendofline inverrorbells invex invfen invfixendofline invfkmap invfsync invguipty invhk invhkp invic invim invimd invinf invis
" termcap codes (which can also be set) {{{2
syn keyword vimOption contained t_AB t_al t_bc t_ce t_cl t_Co t_Cs t_CV t_db t_DL t_EI t_F1 t_F2 t_F3 t_F4 t_F5 t_F6 t_F7 t_F8 t_F9 t_fs t_IE t_IS t_k1 t_K1 t_k2 t_k3 t_K3 t_k4 t_K4 t_k5 t_K5 t_k6 t_K6 t_k7 t_K7 t_k8 t_K8 t_k9 t_K9 t_KA t_kb t_kB t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_RB t_RI t_RV t_Sb t_se t_Sf t_SI t_so t_sr t_SR t_te t_ti t_ts t_u7 t_ue t_us t_ut t_vb t_ve t_vi t_vs t_WP t_WS t_xn t_xs t_ZH t_ZR
@@ -75,9 +76,9 @@ syn match vimHLGroup contained "Conceal"
syn case match
" Function Names {{{2
syn keyword vimFuncName contained abs and argidx asin browse buflisted bufnr byteidx ceil cindent complete confirm cosh cursor did_filetype empty eventhandler exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdline getcmdwintype getfontname getftime getloclist getpos getregtype getwinposx glob has hasmapto histget hlID indent inputdialog inputsave invert items len line localtime luaeval mapcheck matchaddpos matchend max mode nr2char pow pumvisible range reltimestr remote_peek remove resolve screenattr screenrow searchpair server2client setcharsearch setloclist setqflist settabwinvar shellescape sin soundfold split str2float strchars strftime string strpart strtrans submatch synconcealed synIDattr synstack systemlist tabpagenr tagfiles tan tempname toupper trunc undofile uniq virtcol wildmenumode wincol winline winrestcmd winsaveview writefile
syn keyword vimFuncName contained acos append arglistid atan browsedir bufloaded bufwinnr byteidxcomp changenr clearmatches complete_add copy count deepcopy diff_filler escape executable exp extend filewritable findfile fmod foldclosed foldtext function getbufline getcharmod getcmdpos getcurpos getfperm getftype getmatches getqflist gettabvar getwinposy glob2regpat has_key histadd histnr hostname index inputlist inputsecret isdirectory join libcall line2byte log map match matcharg matchlist min mzeval or prevnonblank py3eval readfile remote_expr remote_read rename reverse screenchar search searchpairpos serverlist setcmdpos setmatches setreg setwinvar shiftwidth sinh spellbadword sqrt str2nr strdisplaywidth stridx strlen strridx strwidth substitute synID synIDtrans system tabpagebuflist tabpagewinnr taglist tanh tolower tr type undotree values visualmode winbufnr winheight winnr winrestview winwidth xor
syn keyword vimFuncName contained add argc argv atan2 bufexists bufname byte2line call char2nr col complete_check cos cscope_connection delete diff_hlID eval exepath expand feedkeys filter float2nr fnameescape foldclosedend foldtextresult garbagecollect getbufvar getcharsearch getcmdtype getcwd getfsize getline getpid getreg gettabwinvar getwinvar globpath haslocaldir histdel hlexists iconv input inputrestore insert islocked keys libcallnr lispindent log10 maparg matchadd matchdelete matchstr mkdir nextnonblank pathshorten printf pyeval reltime remote_foreground remote_send repeat round screencol searchdecl searchpos setbufvar setline setpos settabvar sha256 simplify sort spellsuggest
syn keyword vimFuncName contained abs alloc_fail argc argv assert_exception assert_true browse buflisted bufnr byteidx ceil cindent complete confirm cosh cursor did_filetype empty eventhandler exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdline getcmdwintype getfontname getftime getloclist getpos getregtype getwinposx glob has hasmapto histget hlID indent inputdialog inputsave invert items len line localtime luaeval mapcheck matchaddpos matchend max mode nr2char perleval printf pyeval reltime remote_foreground remote_send repeat round screencol searchdecl searchpos setbufvar setline setpos settabvar sha256 simplify sort spellsuggest str2float strdisplaywidth string strridx submatch synID synIDtrans system tabpagebuflist tabpagewinnr taglist tanh tolower tr type undotree values visualmode winbufnr winheight winnr winrestview winwidth writefile
syn keyword vimFuncName contained acos and argidx asin assert_fails atan browsedir bufloaded bufwinnr byteidxcomp changenr clearmatches complete_add copy count deepcopy diff_filler escape executable exp extend filewritable findfile fmod foldclosed foldtext function getbufline getcharmod getcmdpos getcurpos getfperm getftype getmatches getqflist gettabvar getwinposy glob2regpat has_key histadd histnr hostname index inputlist inputsecret isdirectory join libcall line2byte log map match matcharg matchlist min mzeval or pow pumvisible range reltimestr remote_peek remove resolve screenattr screenrow searchpair server2client setcharsearch setloclist setqflist settabwinvar shellescape sin soundfold split str2nr strftime strlen strtrans substitute synIDattr synstack systemlist tabpagenr tagfiles tan tempname toupper trunc undofile uniq virtcol wildmenumode wincol winline winrestcmd winsaveview wordcount xor
syn keyword vimFuncName contained add append arglistid assert_equal assert_false atan2 bufexists bufname byte2line call char2nr col complete_check cos cscope_connection delete diff_hlID eval exepath expand feedkeys filter float2nr fnameescape foldclosedend foldtextresult garbagecollect getbufvar getcharsearch getcmdtype getcwd getfsize getline getpid getreg gettabwinvar getwinvar globpath haslocaldir histdel hlexists iconv input inputrestore insert islocked keys libcallnr lispindent log10 maparg matchadd matchdelete matchstr mkdir nextnonblank pathshorten prevnonblank py3eval readfile remote_expr remote_read rename reverse screenchar search searchpairpos serverlist setcmdpos setmatches setreg setwinvar shiftwidth sinh spellbadword sqrt strchars stridx strpart strwidth synconcealed
"--- syntax here and above generated by mkvimvim ---
" Special Vim Highlighting (not automatic) {{{1
@@ -468,6 +469,11 @@ syn match vimGroupAdd contained "add=" nextgroup=vimGroupList
syn match vimGroupRem contained "remove=" nextgroup=vimGroupList
syn cluster vimFuncBodyList add=vimSynType,vimGroupAdd,vimGroupRem
" Syntax: iskeyword {{{2
syn keyword vimSynType contained iskeyword skipwhite nextgroup=vimIskList
syn match vimIskList contained '\S\+' contains=vimIskSep
syn match vimIskSep contained ','
" Syntax: include {{{2
syn keyword vimSynType contained include skipwhite nextgroup=vimGroupList
syn cluster vimFuncBodyList add=vimSynType
@@ -855,6 +861,7 @@ hi def link vimHiTerm Type
hi def link vimHLGroup vimGroup
hi def link vimHLMod PreProc
hi def link vimInsert vimString
hi def link vimIskSep Delimiter
hi def link vimKeyCode vimSpecFile
hi def link vimKeyword Statement
hi def link vimLet vimCommand

View File

@@ -2,7 +2,7 @@
" Language: Zsh shell script
" Maintainer: Christian Brabandt <cb@256bit.org>
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2015-05-29
" Latest Revision: 2015-12-25
" License: Vim (see :h license)
" Repository: https://github.com/chrisbra/vim-zsh
@@ -125,20 +125,29 @@ syn keyword zshCommands alias autoload bg bindkey break bye cap cd
\ zsocket zstyle ztcp
" Options, generated by: echo ${(j:\n:)options[(I)*]} | sort
" Create a list of option names from zsh source dir:
" #!/bin/zsh
" topdir=/path/to/zsh-xxx
" grep '^pindex([A-Za-z_]*)$' $topdir/Src/Doc/Zsh/optionsyo |
" while read opt
" do
" echo ${${(L)opt#pindex\(}%\)}
" done
syn case ignore
syn keyword zshOptions aliases allexport all_export alwayslastprompt
\ always_lastprompt alwaystoend always_to_end
\ appendhistory append_history autocd autocontinue
\ always_last_prompt always_lastprompt alwaystoend always_to_end appendcreate
\ append_create appendhistory append_history autocd auto_cd autocontinue
\ auto_continue autolist auto_list
\ automenu auto_menu autonamedirs auto_name_dirs
\ autoparamkeys auto_param_keys autoparamslash
\ auto_param_slash autopushd auto_pushd autoremoveslash
\ auto_remove_slash autoresume auto_resume badpattern
\ auto_remove_slash autoresume auto_resume badpattern bad_pattern
\ banghist bang_hist bareglobqual bare_glob_qual
\ bashautolist bash_auto_list bashrematch bash_rematch
\ beep bgnice braceccl brace_ccl braceexpand brace_expand
\ beep bgnice bg_nice braceccl brace_ccl braceexpand brace_expand
\ bsdecho bsd_echo caseglob case_glob casematch case_match
\ cbases cdablevars cd_able_vars chasedots chase_dots
\ cbases c_bases cdablevars cdable_vars cd_able_vars chasedots chase_dots
\ chaselinks chase_links checkjobs check_jobs
\ clobber combiningchars combining_chars completealiases
\ complete_aliases completeinword complete_in_word
@@ -146,17 +155,17 @@ syn keyword zshOptions aliases allexport all_export alwayslastprompt
\ correctall correct_all cprecedences c_precedences
\ cshjunkiehistory csh_junkie_history cshjunkieloops
\ csh_junkie_loops cshjunkiequotes csh_junkie_quotes
\ cshnullcmd csh_null_cmd cshnullglob csh_null_glob
\ csh_nullcmd csh_null_cmd cshnullcmd csh_null_cmd cshnullglob csh_null_glob
\ debugbeforecmd debug_before_cmd dotglob dot_glob dvorak
\ emacs equals errexit err_exit errreturn err_return evallineno
\ eval_lineno exec extendedglob extended_glob extendedhistory
\ extended_history flowcontrol flow_control forcefloat
\ force_float functionargzero function_arg_zero glob globalexport
\ force_float functionargzero function_argzero function_arg_zero glob globalexport
\ global_export globalrcs global_rcs globassign glob_assign
\ globcomplete glob_complete globdots glob_dots glob_subst
\ globsubst hashall hash_all hashcmds hash_cmds hashdirs
\ hash_dirs hashexecutablesonly hash_executables_only hashlistall
\ hash_list_all histallowclobber hist_allow_clobber histappend
\ globsubst globstarshort glob_star_short hashall hash_all hashcmds
\ hash_cmds hashdirs hash_dirs hashexecutablesonly hash_executables_only
\ hashlistall hash_list_all histallowclobber hist_allow_clobber histappend
\ hist_append histbeep hist_beep hist_expand hist_expire_dups_first
\ histexpand histexpiredupsfirst histfcntllock hist_fcntl_lock
\ histfindnodups hist_find_no_dups histignorealldups
@@ -184,7 +193,7 @@ syn keyword zshOptions aliases allexport all_export alwayslastprompt
\ numeric_glob_sort octalzeroes octal_zeroes onecmd one_cmd
\ overstrike over_strike pathdirs path_dirs pathscript
\ path_script physical pipefail pipe_fail posixaliases
\ posix_aliases posixargzero posix_arg_zero posixbuiltins
\ posix_aliases posixargzero posix_arg_zero posix_argzero posixbuiltins
\ posix_builtins posixcd posix_cd posixidentifiers posix_identifiers
\ posixjobs posix_jobs posixstrings posix_strings posixtraps
\ posix_traps printeightbit print_eight_bit printexitvalue
@@ -192,8 +201,8 @@ syn keyword zshOptions aliases allexport all_export alwayslastprompt
\ prompt_cr promptpercent prompt_percent promptsp prompt_sp
\ promptsubst prompt_subst promptvars prompt_vars pushdignoredups
\ pushd_ignore_dups pushdminus pushd_minus pushdsilent pushd_silent
\ pushdtohome pushd_to_home rcexpandparam rc_expandparam rcquotes
\ rc_quotes rcs recexact rec_exact rematchpcre re_match_pcre
\ pushdtohome pushd_to_home rcexpandparam rc_expandparam rc_expand_param rcquotes
\ rc_quotes rcs recexact rec_exact rematchpcre re_match_pcre rematch_pcre
\ restricted rmstarsilent rm_star_silent rmstarwait rm_star_wait
\ sharehistory share_history shfileexpansion sh_file_expansion
\ shglob sh_glob shinstdin shin_stdin shnullcmd sh_nullcmd
@@ -201,22 +210,22 @@ syn keyword zshOptions aliases allexport all_export alwayslastprompt
\ sh_word_split singlecommand single_command singlelinezle single_line_zle
\ sourcetrace source_trace stdin sunkeyboardhack sun_keyboard_hack
\ trackall track_all transientrprompt transient_rprompt
\ trapsasync trapasync typesetsilent type_set_silent unset verbose vi
\ trapsasync traps_async typesetsilent type_set_silent typeset_silent unset verbose vi
\ warncreateglobal warn_create_global xtrace zle
syn keyword zshOptions noaliases no_aliases noallexport no_allexport noall_export no_all_export noalwayslastprompt no_alwayslastprompt
\ noalways_lastprompt no_always_lastprompt noalwaystoend no_alwaystoend noalways_to_end no_always_to_end
\ noappendhistory no_appendhistory noappend_history no_append_history noautocd no_autocd noautocontinue no_autocontinue
\ noauto_continue no_auto_continue noautolist no_autolist noauto_list no_auto_list
\ noautomenu no_automenu noauto_menu no_auto_menu noautonamedirs no_autonamedirs noauto_name_dirs no_auto_name_dirs
\ noautoparamkeys no_autoparamkeys noauto_param_keys no_auto_param_keys noautoparamslash no_autoparamslash
\ noalways_lastprompt no_always_lastprompt no_always_last_prompt noalwaystoend no_alwaystoend noalways_to_end no_always_to_end
\ noappendcreate no_appendcreate no_append_create noappendhistory no_appendhistory noappend_history no_append_history noautocd
\ no_autocd no_auto_cd noautocontinue no_autocontinue noauto_continue no_auto_continue noautolist no_autolist noauto_list
\ no_auto_list noautomenu no_automenu noauto_menu no_auto_menu noautonamedirs no_autonamedirs noauto_name_dirs
\ no_auto_name_dirs noautoparamkeys no_autoparamkeys noauto_param_keys no_auto_param_keys noautoparamslash no_autoparamslash
\ noauto_param_slash no_auto_param_slash noautopushd no_autopushd noauto_pushd no_auto_pushd noautoremoveslash no_autoremoveslash
\ noauto_remove_slash no_auto_remove_slash noautoresume no_autoresume noauto_resume no_auto_resume nobadpattern no_badpattern
\ noauto_remove_slash no_auto_remove_slash noautoresume no_autoresume noauto_resume no_auto_resume nobadpattern no_badpattern no_bad_pattern
\ nobanghist no_banghist nobang_hist no_bang_hist nobareglobqual no_bareglobqual nobare_glob_qual no_bare_glob_qual
\ nobashautolist no_bashautolist nobash_auto_list no_bash_auto_list nobashrematch no_bashrematch nobash_rematch no_bash_rematch
\ nobeep no_beep nobgnice no_bgnice nobraceccl no_braceccl nobrace_ccl no_brace_ccl nobraceexpand no_braceexpand nobrace_expand no_brace_expand
\ nobeep no_beep nobgnice no_bgnice no_bg_nice nobraceccl no_braceccl nobrace_ccl no_brace_ccl nobraceexpand no_braceexpand nobrace_expand no_brace_expand
\ nobsdecho no_bsdecho nobsd_echo no_bsd_echo nocaseglob no_caseglob nocase_glob no_case_glob nocasematch no_casematch nocase_match no_case_match
\ nocbases no_cbases nocdablevars no_cdablevars nocd_able_vars no_cd_able_vars nochasedots no_chasedots nochase_dots no_chase_dots
\ nocbases no_cbases no_c_bases nocdablevars no_cdablevars no_cdable_vars nocd_able_vars no_cd_able_vars nochasedots no_chasedots nochase_dots no_chase_dots
\ nochaselinks no_chaselinks nochase_links no_chase_links nocheckjobs no_checkjobs nocheck_jobs no_check_jobs
\ noclobber no_clobber nocombiningchars no_combiningchars nocombining_chars no_combining_chars nocompletealiases no_completealiases
\ nocomplete_aliases no_complete_aliases nocompleteinword no_completeinword nocomplete_in_word no_complete_in_word
@@ -224,14 +233,15 @@ syn keyword zshOptions noaliases no_aliases noallexport no_allexport no
\ nocorrectall no_correctall nocorrect_all no_correct_all nocprecedences no_cprecedences noc_precedences no_c_precedences
\ nocshjunkiehistory no_cshjunkiehistory nocsh_junkie_history no_csh_junkie_history nocshjunkieloops no_cshjunkieloops
\ nocsh_junkie_loops no_csh_junkie_loops nocshjunkiequotes no_cshjunkiequotes nocsh_junkie_quotes no_csh_junkie_quotes
\ nocshnullcmd no_cshnullcmd nocsh_null_cmd no_csh_null_cmd nocshnullglob no_cshnullglob nocsh_null_glob no_csh_null_glob
\ nocshnullcmd no_cshnullcmd no_csh_nullcmd nocsh_null_cmd no_csh_null_cmd nocshnullglob no_cshnullglob nocsh_null_glob no_csh_null_glob
\ nodebugbeforecmd no_debugbeforecmd nodebug_before_cmd no_debug_before_cmd nodotglob no_dotglob nodot_glob no_dot_glob nodvorak no_dvorak
\ noemacs no_emacs noequals no_equals noerrexit no_errexit noerr_exit no_err_exit noerrreturn no_errreturn noerr_return no_err_return noevallineno no_evallineno
\ noeval_lineno no_eval_lineno noexec no_exec noextendedglob no_extendedglob noextended_glob no_extended_glob noextendedhistory no_extendedhistory
\ noextended_history no_extended_history noflowcontrol no_flowcontrol noflow_control no_flow_control noforcefloat no_forcefloat
\ noforce_float no_force_float nofunctionargzero no_functionargzero nofunction_arg_zero no_function_arg_zero noglob no_glob noglobalexport no_globalexport
\ noforce_float no_force_float nofunctionargzero no_functionargzero nofunction_arg_zero no_function_argzero no_function_arg_zero noglob no_glob noglobalexport no_globalexport
\ noglobal_export no_global_export noglobalrcs no_globalrcs noglobal_rcs no_global_rcs noglobassign no_globassign noglob_assign no_glob_assign
\ noglobcomplete no_globcomplete noglob_complete no_glob_complete noglobdots no_globdots noglob_dots no_glob_dots noglob_subst no_glob_subst
\ noglobcomplete no_globcomplete noglob_complete no_glob_complete noglobdots no_globdots noglob_dots no_glob_dots
\ noglobstarshort no_glob_star_short noglob_subst no_glob_subst
\ noglobsubst no_globsubst nohashall no_hashall nohash_all no_hash_all nohashcmds no_hashcmds nohash_cmds no_hash_cmds nohashdirs no_hashdirs
\ nohash_dirs no_hash_dirs nohashexecutablesonly no_hashexecutablesonly nohash_executables_only no_hash_executables_only nohashlistall no_hashlistall
\ nohash_list_all no_hash_list_all nohistallowclobber no_histallowclobber nohist_allow_clobber no_hist_allow_clobber nohistappend no_histappend
@@ -262,7 +272,7 @@ syn keyword zshOptions noaliases no_aliases noallexport no_allexport no
\ nonumeric_glob_sort no_numeric_glob_sort nooctalzeroes no_octalzeroes nooctal_zeroes no_octal_zeroes noonecmd no_onecmd noone_cmd no_one_cmd
\ nooverstrike no_overstrike noover_strike no_over_strike nopathdirs no_pathdirs nopath_dirs no_path_dirs nopathscript no_pathscript
\ nopath_script no_path_script nophysical no_physical nopipefail no_pipefail nopipe_fail no_pipe_fail noposixaliases no_posixaliases
\ noposix_aliases no_posix_aliases noposixargzero no_posixargzero noposix_arg_zero no_posix_arg_zero noposixbuiltins no_posixbuiltins
\ noposix_aliases no_posix_aliases noposixargzero no_posixargzero no_posix_argzero noposix_arg_zero no_posix_arg_zero noposixbuiltins no_posixbuiltins
\ noposix_builtins no_posix_builtins noposixcd no_posixcd noposix_cd no_posix_cd noposixidentifiers no_posixidentifiers noposix_identifiers no_posix_identifiers
\ noposixjobs no_posixjobs noposix_jobs no_posix_jobs noposixstrings no_posixstrings noposix_strings no_posix_strings noposixtraps no_posixtraps
\ noposix_traps no_posix_traps noprinteightbit no_printeightbit noprint_eight_bit no_print_eight_bit noprintexitvalue no_printexitvalue
@@ -270,8 +280,8 @@ syn keyword zshOptions noaliases no_aliases noallexport no_allexport no
\ noprompt_cr no_prompt_cr nopromptpercent no_promptpercent noprompt_percent no_prompt_percent nopromptsp no_promptsp noprompt_sp no_prompt_sp
\ nopromptsubst no_promptsubst noprompt_subst no_prompt_subst nopromptvars no_promptvars noprompt_vars no_prompt_vars nopushdignoredups no_pushdignoredups
\ nopushd_ignore_dups no_pushd_ignore_dups nopushdminus no_pushdminus nopushd_minus no_pushd_minus nopushdsilent no_pushdsilent nopushd_silent no_pushd_silent
\ nopushdtohome no_pushdtohome nopushd_to_home no_pushd_to_home norcexpandparam no_rcexpandparam norc_expandparam no_rc_expandparam norcquotes no_rcquotes
\ norc_quotes no_rc_quotes norcs no_rcs norecexact no_recexact norec_exact no_rec_exact norematchpcre no_rematchpcre nore_match_pcre no_re_match_pcre
\ nopushdtohome no_pushdtohome nopushd_to_home no_pushd_to_home norcexpandparam no_rcexpandparam norc_expandparam no_rc_expandparam no_rc_expand_param norcquotes no_rcquotes
\ norc_quotes no_rc_quotes norcs no_rcs norecexact no_recexact norec_exact no_rec_exact norematchpcre no_rematchpcre nore_match_pcre no_re_match_pcre no_rematch_pcre
\ norestricted no_restricted normstarsilent no_rmstarsilent norm_star_silent no_rm_star_silent normstarwait no_rmstarwait norm_star_wait no_rm_star_wait
\ nosharehistory no_sharehistory noshare_history no_share_history noshfileexpansion no_shfileexpansion nosh_file_expansion no_sh_file_expansion
\ noshglob no_shglob nosh_glob no_sh_glob noshinstdin no_shinstdin noshin_stdin no_shin_stdin noshnullcmd no_shnullcmd nosh_nullcmd no_sh_nullcmd
@@ -279,11 +289,11 @@ syn keyword zshOptions noaliases no_aliases noallexport no_allexport no
\ nosh_word_split no_sh_word_split nosinglecommand no_singlecommand nosingle_command no_single_command nosinglelinezle no_singlelinezle nosingle_line_zle no_single_line_zle
\ nosourcetrace no_sourcetrace nosource_trace no_source_trace nostdin no_stdin nosunkeyboardhack no_sunkeyboardhack nosun_keyboard_hack no_sun_keyboard_hack
\ notrackall no_trackall notrack_all no_track_all notransientrprompt no_transientrprompt notransient_rprompt no_transient_rprompt
\ notrapsasync no_trapsasync notrapasync no_trapasync notypesetsilent no_typesetsilent notype_set_silent no_type_set_silent nounset no_unset noverbose no_verbose novi no_vi
\ nowarncreateglobal no_warncreateglobal nowarn_create_global no_warn_create_global noxtrace no_xtrace nozle no_zle
\ notrapsasync no_trapsasync notrapasync no_trapasync no_traps_async notypesetsilent no_typesetsilent notype_set_silent no_type_set_silent no_typeset_silent \nounset no_unset
\ noverbose no_verbose novi no_vi nowarncreateglobal no_warncreateglobal nowarn_create_global no_warn_create_global noxtrace no_xtrace nozle no_zle
syn case match
syn keyword zshTypes float integer local typeset declare
syn keyword zshTypes float integer local typeset declare private
" XXX: this may be too much
" syn match zshSwitches '\s\zs--\=[a-zA-Z0-9-]\+'
@@ -303,7 +313,7 @@ syn region zshMathSubst matchgroup=zshSubstDelim transparent
\ start='\$((' skip='\\)'
\ matchgroup=zshSubstDelim end='))'
\ contains=zshParentheses,@zshSubst,zshNumber,
\ @zshDerefs,zshString
\ @zshDerefs,zshString keepend
syn region zshBrackets contained transparent start='{' skip='\\}'
\ end='}'
syn region zshSubst matchgroup=zshSubstDelim start='\${' skip='\\}'

View File

@@ -7,6 +7,7 @@
#include <stdio.h>
int
main()
{
while (1)
@@ -18,4 +19,5 @@ main()
fflush(stdout);
usleep(250000); /* off time */
}
return 0;
}

View File

@@ -85,7 +85,8 @@ const char USAGE[] =
int ShowUsage( char *szError )
{ int i;
{
int i;
fprintf( stderr, USAGE );
@@ -101,7 +102,8 @@ int ShowUsage( char *szError )
return 0;
}
char *echogets(char *s, int echo) {
char *echogets(char *s, int echo)
{
char * const retval=fgets(s, LINELENGTH, stdin);
if (echo!=0 && retval!=NULL) {
fputs(retval, stderr);

View File

@@ -0,0 +1,97 @@
#!/usr/bin/python
# Server that will accept connections from a Vim channel.
# Run this server and then in Vim you can open the channel:
# :let handle = connect('localhost:8765', 'json')
#
# Then Vim can send requests to the server:
# :let response = sendexpr(handle, 'hello!')
#
# And you can control Vim by typing a JSON message here, e.g.:
# ["ex","echo 'hi there'"]
#
# See ":help channel-demo" in Vim.
from __future__ import print_function
import json
import socket
import sys
import threading
try:
# Python 3
import socketserver
except ImportError:
# Python 2
import SocketServer as socketserver
thesocket = None
class ThreadedTCPRequestHandler(socketserver.BaseRequestHandler):
def handle(self):
print("=== socket opened ===")
global thesocket
thesocket = self.request
while True:
try:
data = self.request.recv(4096).decode('utf-8')
except socket.error:
print("=== socket error ===")
break
except IOError:
print("=== socket closed ===")
break
if data == '':
print("=== socket closed ===")
break
print("received: {}".format(data))
try:
decoded = json.loads(data)
except ValueError:
print("json decoding failed")
decoded = [-1, '']
# Send a response if the sequence number is positive.
# Negative numbers are used for "eval" responses.
if decoded[0] >= 0:
if decoded[1] == 'hello!':
response = "got it"
else:
response = "what?"
encoded = json.dumps([decoded[0], response])
print("sending {}".format(encoded))
self.request.sendall(encoded.encode('utf-8'))
thesocket = None
class ThreadedTCPServer(socketserver.ThreadingMixIn, socketserver.TCPServer):
pass
if __name__ == "__main__":
HOST, PORT = "localhost", 8765
server = ThreadedTCPServer((HOST, PORT), ThreadedTCPRequestHandler)
ip, port = server.server_address
# Start a thread with the server -- that thread will then start one
# more thread for each request
server_thread = threading.Thread(target=server.serve_forever)
# Exit the server thread when the main thread terminates
server_thread.daemon = True
server_thread.start()
print("Server loop running in thread: ", server_thread.name)
print("Listening on port {}".format(PORT))
while True:
typed = sys.stdin.readline()
if "quit" in typed:
print("Goodbye!")
break
if thesocket is None:
print("No socket yet")
else:
print("sending {}".format(typed))
thesocket.sendall(typed.encode('utf-8'))
server.shutdown()
server.server_close()

View File

@@ -29,10 +29,8 @@
#include <X11/Intrinsic.h>
#include <X11/Xatom.h>
#define __ARGS(x) x
/* Client API */
char * sendToVim __ARGS((Display *dpy, char *name, char *cmd, int asKeys, int *code));
char * sendToVim(Display *dpy, char *name, char *cmd, int asKeys, int *code);
#ifdef MAIN
/* A sample program */
@@ -70,15 +68,15 @@ main(int argc, char **argv)
* Forward declarations for procedures defined later in this file:
*/
static int x_error_check __ARGS((Display *dpy, XErrorEvent *error_event));
static int AppendPropCarefully __ARGS((Display *display,
Window window, Atom property, char *value, int length));
static Window LookupName __ARGS((Display *dpy, char *name,
int delete, char **loose));
static int SendInit __ARGS((Display *dpy));
static char *SendEventProc __ARGS((Display *dpy, XEvent *eventPtr,
int expect, int *code));
static int IsSerialName __ARGS((char *name));
static int x_error_check(Display *dpy, XErrorEvent *error_event);
static int AppendPropCarefully(Display *display,
Window window, Atom property, char *value, int length);
static Window LookupName(Display *dpy, char *name,
int delete, char **loose);
static int SendInit(Display *dpy);
static char *SendEventProc(Display *dpy, XEvent *eventPtr,
int expect, int *code);
static int IsSerialName(char *name);
/* Private variables */
static Atom registryProperty = None;
@@ -96,12 +94,12 @@ static int got_x_error = FALSE;
*/
char *
sendToVim(dpy, name, cmd, asKeys, code)
Display *dpy; /* Where to send. */
char *name; /* Where to send. */
char *cmd; /* What to send. */
int asKeys; /* Interpret as keystrokes or expr ? */
int *code; /* Return code. 0 => OK */
sendToVim(
Display *dpy, /* Where to send. */
char *name, /* Where to send. */
char *cmd, /* What to send. */
int asKeys, /* Interpret as keystrokes or expr ? */
int *code) /* Return code. 0 => OK */
{
Window w;
Atom *plist;
@@ -247,8 +245,7 @@ sendToVim(dpy, name, cmd, asKeys, code)
*/
static int
SendInit(dpy)
Display *dpy;
SendInit(Display *dpy)
{
XErrorHandler old_handler;
@@ -291,11 +288,11 @@ SendInit(dpy)
*/
static Window
LookupName(dpy, name, delete, loose)
Display *dpy; /* Display whose registry to check. */
char *name; /* Name of an interpreter. */
int delete; /* If non-zero, delete info about name. */
char **loose; /* Do another search matching -999 if not found
LookupName(
Display *dpy, /* Display whose registry to check. */
char *name, /* Name of an interpreter. */
int delete, /* If non-zero, delete info about name. */
char **loose) /* Do another search matching -999 if not found
Return result here if a match is found */
{
unsigned char *regProp, *entry;
@@ -398,11 +395,11 @@ LookupName(dpy, name, delete, loose)
}
static char *
SendEventProc(dpy, eventPtr, expected, code)
Display *dpy;
XEvent *eventPtr; /* Information about event. */
int expected; /* The one were waiting for */
int *code; /* Return code. 0 => OK */
SendEventProc(
Display *dpy,
XEvent *eventPtr, /* Information about event. */
int expected, /* The one were waiting for */
int *code) /* Return code. 0 => OK */
{
unsigned char *propInfo;
unsigned char *p;
@@ -537,13 +534,13 @@ SendEventProc(dpy, eventPtr, expected, code)
*/
static int
AppendPropCarefully(dpy, window, property, value, length)
Display *dpy; /* Display on which to operate. */
Window window; /* Window whose property is to
AppendPropCarefully(
Display *dpy, /* Display on which to operate. */
Window window, /* Window whose property is to
* be modified. */
Atom property; /* Name of property. */
char *value; /* Characters to append to property. */
int length; /* How much to append */
Atom property, /* Name of property. */
char *value, /* Characters to append to property. */
int length) /* How much to append */
{
XErrorHandler old_handler;
@@ -562,9 +559,7 @@ AppendPropCarefully(dpy, window, property, value, length)
*/
/* ARGSUSED */
static int
x_error_check(dpy, error_event)
Display *dpy;
XErrorEvent *error_event;
x_error_check(Display *dpy, XErrorEvent *error_event)
{
got_x_error = TRUE;
return 0;
@@ -575,8 +570,7 @@ x_error_check(dpy, error_event)
* Actually just checks if the name ends in a digit.
*/
static int
IsSerialName(str)
char *str;
IsSerialName(char *str)
{
int len = strlen(str);

View File

@@ -1,77 +0,0 @@
# Project: gvimext
# Generates gvimext.dll with gcc.
# To be used with Cygwin.
#
# Originally, the DLL base address was fixed: -Wl,--image-base=0x1C000000
# Now it is allocated dymanically by the linker by evaluating all DLLs
# already loaded in memory. The binary image contains as well information
# for automatic pseudo-rebasing, if needed by the system. ALV 2004-02-29
# If cross-compiling set this to yes, else set it to no
CROSS = no
#CROSS = yes
# For the old MinGW 2.95 (the one you get e.g. with debian woody)
# set the following variable to yes and check if the executables are
# really named that way.
# If you have a newer MinGW or you are using cygwin set it to no and
# check also the executables
MINGWOLD = no
# Link against the shared versions of libgcc/libstdc++ by default. Set
# STATIC_STDCPLUS to "yes" to link against static versions instead.
STATIC_STDCPLUS=no
#STATIC_STDCPLUS=yes
# Note: -static-libstdc++ is not available until gcc 4.5.x.
LDFLAGS += -shared
ifeq (yes, $(STATIC_STDCPLUS))
LDFLAGS += -static-libgcc -static-libstdc++
endif
ifeq ($(CROSS),yes)
DEL = rm
ifeq ($(MINGWOLD),yes)
CXXFLAGS := -O2 -fvtable-thunks
else
CXXFLAGS := -O2
endif
else
CXXFLAGS := -O2
ifneq (sh.exe, $(SHELL))
DEL = rm
else
DEL = del
endif
endif
CXX := $(CROSS_COMPILE)g++
WINDRES := $(CROSS_COMPILE)windres
WINDRES_CXX = $(CXX)
WINDRES_FLAGS = --preprocessor="$(WINDRES_CXX) -E -xc" -DRC_INVOKED
LIBS := -luuid
RES := gvimext.res
DEFFILE = gvimext_ming.def
OBJ := gvimext.o
DLL := gvimext.dll
.PHONY: all all-before all-after clean clean-custom
all: all-before $(DLL) all-after
$(DLL): $(OBJ) $(RES) $(DEFFILE)
$(CXX) $(LDFLAGS) $(CXXFLAGS) -s -o $@ \
-Wl,--enable-auto-image-base \
-Wl,--enable-auto-import \
-Wl,--whole-archive \
$^ \
-Wl,--no-whole-archive \
$(LIBS)
gvimext.o: gvimext.cpp
$(CXX) $(CXXFLAGS) -DFEAT_GETTEXT -c $? -o $@
$(RES): gvimext_ming.rc
$(WINDRES) $(WINDRES_FLAGS) --input-format=rc --output-format=coff -DMING $? -o $@
clean: clean-custom
-$(DEL) $(OBJ) $(RES) $(DLL)

View File

@@ -1,6 +1,6 @@
# Project: gvimext
# Generates gvimext.dll with gcc.
# To be used with MingW.
# To be used with MingW and Cygwin.
#
# Originally, the DLL base address was fixed: -Wl,--image-base=0x1C000000
# Now it is allocated dymanically by the linker by evaluating all DLLs

View File

@@ -12,6 +12,25 @@ APPVER=5.0
NODEBUG = 1
!endif
!ifdef PROCESSOR_ARCHITECTURE
# On Windows NT
! ifndef CPU
CPU = i386
! if !defined(PLATFORM) && defined(TARGET_CPU)
PLATFORM = $(TARGET_CPU)
! endif
! ifdef PLATFORM
! if ("$(PLATFORM)" == "x64") || ("$(PLATFORM)" == "X64")
CPU = AMD64
! elseif ("$(PLATFORM)" != "x86") && ("$(PLATFORM)" != "X86")
! error *** ERROR Unknown target platform "$(PLATFORM)". Make aborted.
! endif
! endif
! endif
!else
CPU = i386
!endif
!ifdef SDK_INCLUDE_DIR
!include $(SDK_INCLUDE_DIR)\Win32.mak
!else
@@ -30,15 +49,15 @@ gvimext.dll: gvimext.obj \
gvimext.obj: gvimext.h
.cpp.obj:
$(cc) $(cflags) -DFEAT_GETTEXT $(cvarsmt) $*.cpp
$(cc) $(cflags) -DFEAT_GETTEXT $(cvarsmt) $*.cpp
gvimext.res: gvimext.rc
$(rc) $(rcflags) $(rcvars) gvimext.rc
$(rc) $(rcflags) $(rcvars) gvimext.rc
clean:
- if exist gvimext.dll del gvimext.dll
- if exist gvimext.lib del gvimext.lib
- if exist gvimext.exp del gvimext.exp
- if exist gvimext.obj del gvimext.obj
- if exist gvimext.res del gvimext.res
- if exist gvimext.dll.manifest del gvimext.dll.manifest
- if exist gvimext.dll del gvimext.dll
- if exist gvimext.lib del gvimext.lib
- if exist gvimext.exp del gvimext.exp
- if exist gvimext.obj del gvimext.obj
- if exist gvimext.res del gvimext.res
- if exist gvimext.dll.manifest del gvimext.dll.manifest

View File

@@ -3,9 +3,13 @@ INSTALLmac.txt - Installation of Vim on Macintosh
This file contains instructions for compiling Vim. If you already have an
executable version of Vim, you don't need this.
An alternate way of building that Benji Fisher uses can be found here:
First, make sure you've installed Xcode or CommandLineToots. If not, open a
terminal and do
$ make --version
A window pops up instructing you to install the developer tools.
http://macvim.swdev.org/OSX/#Developers
----------------------------------------------------------------------------
Summary
@@ -30,11 +34,12 @@ MacOS Classic is no longer supported. If you really want it use Vim 6.4.
You can compile vim with the standard Unix routine:
cd .../src
make
make test
sudo make install
This will create a working Vim.app application bundle in the src
"make" will create a working Vim.app application bundle in the src
directory. You can move this bundle (the Vim.app directory) anywhere
you want. Or use this command to move it to /Applications:
make install
you want. Or use "make install" to move it to /Applications.
You need at least Xcode 1.5 to compile Vim 7.0.

View File

@@ -13,7 +13,7 @@ be fine for most people.
With the exception of two sections (Windows 3.1 and MS-DOS), this document
assumes that you are building Vim for Win32 or later.
(Windows 95/98/Me/NT/2000/XP/2003/Vista/7)
(Windows 95/98/Me/NT/2000/XP/2003/Vista/7/8/10)
Contents:
@@ -23,11 +23,16 @@ Contents:
4. Borland
5. Cross compiling for Win32 from a Linux machine
6. Building with Python support
7. Building with MzScheme support
8. Windows 3.1
9. MS-DOS
7. Building with Python3 support
8. Building with MzScheme/Racket support
9. Building with Lua support
10. Building with Perl support
11. Building with Ruby support
12. Building with Tcl support
13. Windows 3.1
14. MS-DOS
10. Installing after building from sources
15. Installing after building from sources
The currently preferred method is using the free Visual C++ Toolkit 2008
@@ -42,8 +47,9 @@ you need the executable to run on Windows 98 or ME, use the 2003 one
Visual Studio
-------------
Building with Visual Studio (VS 98, VS .NET, VS .NET 2003, VS 2005, and VS 2008)
is straightforward. (These instructions should also work for VS 4 and VS 5.)
Building with Visual Studio (VS 98, VS .NET, VS .NET 2003, VS 2005, VS 2008,
VS2010, VS2012, VS2013 and VS2015) is straightforward. (These instructions
should also work for VS 4 and VS 5.)
Using VS C++ 2008 Express is recommended, the binaries build with that run on
nearly all platforms. Binaries from later versions may not run on Windows 95
@@ -195,7 +201,7 @@ Vim with Make_mvc.mak.
Targeting Windows XP with new MSVC *new-msvc-windows-xp*
----------------------------------
Beginning with Visual C++ 2010, Microsoft changed the behavior of LINK.EXE
Beginning with Visual C++ 2012, Microsoft changed the behavior of LINK.EXE
so that it targets Windows 6.0 (Vista) by default. In order to override
this, the target Windows version number needs to be passed to LINK like
follows:
@@ -345,6 +351,17 @@ Now you have created the Windows binary from your Linux box! Have fun...
For building with MSVC 2008 the "Windows Installer" from www.python.org
works fine.
When building, you need to set the following variables at least:
PYTHON: Where Python is installed. E.g. C:\Python27
DYNAMIC_PYTHON: Whether dynamic linking is used. Usually, set to yes.
PYTHON_VER: Python version. E.g. 27 for Python 2.7.X.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
PYTHON=C:\Python27 DYNAMIC_PYTHON=yes PYTHON_VER=27
(rest written by Ron Aaron: <ronaharon@yahoo.com>)
Building with the mingw32 compiler, and the ActiveState ActivePython:
@@ -380,8 +397,28 @@ And if you use msys2 to build python support (as one line):
You will end up with a Python-enabled, Win32 version. Enjoy!
7. Building with MzScheme support
=================================
7. Building with Python3 support
================================
For building with MSVC 2008 the "Windows Installer" from www.python.org
works fine. Python 3.4 is recommended.
When building, you need to set the following variables at least:
PYTHON3: Where Python3 is installed. E.g. C:\Python34
DYNAMIC_PYTHON3: Whether dynamic linking is used. Usually, set to yes.
PYTHON3_VER: Python3 version. E.g. 34 for Python 3.4.X.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
PYTHON3=C:\Python34 DYNAMIC_PYTHON3=yes PYTHON3_VER=34
8. Building with MzScheme/Racket support
========================================
1) Building with MzScheme support
(written by Sergey Khorev <sergey.khorev@gmail.com>)
@@ -416,8 +453,238 @@ After a successful build, these dlls can be freely removed, leaving them in
%WINDOWS%\System32 only.
8. Windows 3.1x
===============
2) Building with Racket support
MzScheme and PLT Scheme names have been rebranded as Racket. Vim with Racket
(https://racket-lang.org/) support can be built with either MSVC or MinGW (or
Cygwin).
You need to set the following variables:
MZSCHEME: Where Racket is installed.
E.g. C:\Program Files (x86)\Racket
DYNAMIC_MZSCHEME: Whether dynamic linking is used. Usually, set to yes.
MZSCHEME_VER: Racket DLL version. E.g. 3m_9z0ds0 for Racket 6.3.
MZSCHEME_COLLECTS: (Optional) Path of the collects directory used at
runtime. Default: $(MZSCHEME)\collects
User can override this with the PLTCOLLECTS environment
variable.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
MZSCHEME="C:\Program Files (x86)\Racket" DYNAMIC_MZSCHEME=yes
MZSCHEME_VER=3m_9z0ds0
Or when using MinGW (as one line):
mingw32-make -f Make_ming.mak
MZSCHEME='C:/Program\ Files\ (x86)/Racket' DYNAMIC_MZSCHEME=yes
MZSCHEME_VER=3m_9z0ds0
Spaces should be escaped with '\'.
9. Building with Lua support
============================
Vim with Lua support can be built with either MSVC or MinGW (or maybe Cygwin).
You can use binaries from LuaBinaries: http://luabinaries.sourceforge.net/
This also applies to when you get a Vim executable and don't build yourself,
do the part up to "Build".
1) Download and install LuaBinaries
Go to the Download page of LuaBinaries:
http://luabinaries.sourceforge.net/download.html
Download lua-X.Y.Z_Win32_dllw4_lib.zip for x86 or
lua-X.Y.Z_Win64_dllw4_lib.zip for x64. You can use them both for MSVC and
MinGW.
Unpack it to a working directory. E.g. C:\projects\lua53.
Lua's header files will be installed under the include directory.
Copy luaXY.dll to your Windows system directory. The system directory depends
on your Windows bitness and Vim bitness:
32-bit Vim on 32-bit Windows: C:\Windows\System32
32-bit Vim on 64-bit Windows: C:\Windows\SysWOW64
64-bit Vim on 64-bit Windows: C:\Windows\System32
Or another option is copying luaXY.dll to the directory where gvim.exe
(or vim.exe) is.
2) Build
You need to set LUA, DYNAMIC_LUA and LUA_VER.
LUA: Where Lua's header files are installed. E.g. C:\projects\lua53.
DYNAMIC_LUA: Whether dynamic linking is used. Set to yes.
LUA_VER: Lua version. E.g. 53 for Lua 5.3.X.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
LUA=C:\projects\lua53 DYNAMIC_LUA=yes LUA_VER=53
Or when using MinGW (as one line):
mingw32-make -f Make_mingw.mak
LUA=C:\projects\lua53 DYNAMIC_LUA=yes LUA_VER=53
Or when using Cygwin (as one line) (untested):
make -f Make_cyg.mak
LUA=/cygdrive/c/projects/lua53 DYNAMIC_LUA=yes LUA_VER=53
10. Building with Perl support
==============================
Vim with Perl support can be built with either MSVC or MinGW (or Cygwin).
You can use binaries from ActiveState (ActivePerl) or Strawberry Perl.
http://www.activestate.com/activeperl
http://strawberryperl.com/
When building, you need to set the following variables:
PERL: Where perl is installed. E.g. C:\Perl, C:\Strawberry\perl
DYNAMIC_PERL: Whether dynamic linking is used. Usually, set to yes.
PERL_VER: Perl version. E.g. 522 for Perl 5.22.X.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
PERL=C:\Perl DYNAMIC_PERL=yes PERL_VER=522
Or when using MinGW (as one line):
mingw32-make -f Make_mingw.mak
PERL=C:\Perl DYNAMIC_PERL=yes PERL_VER=522
11. Building with Ruby support
==============================
Vim with Ruby support can be built with either MSVC or MinGW (or Cygwin).
Ruby doesn't provide the official Windows binaries. The most widely used
Windows binaries might be RubyInstaller.
http://rubyinstaller.org/
If you use MinGW you can easily build with RubyInstaller, but if you use MSVC
you need some tricks described below.
(Another binary distribution is ActiveScriptRuby:
http://www.artonx.org/data/asr/)
When building, you need to set the following variables at least:
RUBY: Where ruby is installed. E.g. C:\Ruby22
DYNAMIC_RUBY: Whether dynamic linking is used. Usually, set to yes.
RUBY_VER: Ruby version. E.g. 22 for Ruby 2.2.X.
RUBY_VER_LONG: Ruby API version in a long format.
E.g. 2.2.0 for Ruby 2.2.X.
Ruby version vs. Ruby API version:
Ruby ver. | Ruby API ver.
=========================
1.8.X | 1.8
1.9.[1-3] | 1.9.1
2.0.0 | 2.0.0
2.X.Y | 2.X.0
(Ruby 1.9.0 is excluded from the table because it is an unstable version.)
A) Using MSVC
If you want to link with ruby, normally you must use the same compiler as
which was used to build the ruby binary. RubyInstaller is built with MinGW,
so normally you cannot use MSVC for building Vim if you want to link with
RubyInstaller. If you use a different complier, there are mainly two problems:
config.h and Ruby's DLL name. Here are the steps for working around them:
1) Download and Install RubyInstaller.
You can install RubyInstaller with the default options and directory.
E.g.:
C:\Ruby22 (32-bit) or C:\Ruby22-x64 (64-bit)
Ruby 2.2.X is used in this example.
2) Download Ruby 2.2.X's source code and generate config.h:
cd C:\projects
git clone https://github.com/ruby/ruby.git -b ruby_2_2
cd ruby
win32\configure.bat
nmake .config.h.time
Note that ruby_2_2 is the branch name for Ruby 2.2.X's source code.
There is no need to build whole Ruby, just config.h is needed.
If you use 32-bit MSVC10, the config.h is generated in the
.ext\include\i386-mswin32_100 directory.
3) Install the generated config.h.
xcopy /s .ext\include C:\Ruby22\include\ruby-2.2.0
Note that 2.2.0 is Ruby API version of Ruby 2.2.X.
4) Build Vim. Note that you need to adjust some variables (as one line):
nmake -f Make_mvc.mak
RUBY=C:\Ruby22 DYNAMIC_RUBY=yes RUBY_VER=22 RUBY_VER_LONG=2.2.0
RUBY_MSVCRT_NAME=msvcrt
WINVER=0x500
WINVER must be set to >=0x500, when building with Ruby 2.1 or later.
When using this trick, you also need to set RUBY_MSVCRT_NAME to msvcrt
which is used for the Ruby's DLL name.
B) Using MinGW
Using MinGW is easier than using MSVC when linking with RubyInstaller.
After you install RubyInstaller, just type this (as one line):
mingw32-make -f Make_ming.mak
RUBY=C:/Ruby22 DYNAMIC_RUBY=yes RUBY_VER=22 RUBY_VER_LONG=2.2.0
WINVER=0x500
WINVER must be set to >=0x500, when building with Ruby 2.1 or later.
12. Building with Tcl support
=============================
Vim with Tcl support can be built with either MSVC or MinGW (or Cygwin).
You can use binaries from ActiveState (ActiveTcl).
http://www.activestate.com/activetcl
When building, you need to set the following variables:
TCL: Where tcl is installed. E.g. C:\Tcl86
DYNAMIC_TCL: Whether dynamic linking is used. Usually, set to yes.
TCL_VER: Tcl version in a short format. E.g. 86 for Tcl 8.6.X.
TCL_VER_LONG: Tcl version in a long format. E.g. 8.6 for Tcl 8.6.X.
E.g. When using MSVC (as one line):
nmake -f Make_mvc.mak
TCL=C:\Tcl86 DYNAMIC_TCL=yes TCL_VER=86 TCL_VER_LONG=8.6
Or when using MinGW (as one line):
mingw32-make -f Make_mingw.mak
TCL=C:\Tcl86 DYNAMIC_TCL=yes TCL_VER=86 TCL_VER_LONG=8.6
13. Windows 3.1x
================
make -f Make_w16.mak 16 bit, Borland C++ 5.0
@@ -436,8 +703,8 @@ In MSVC 4.2 support for Win32s was dropped! Use this command:
nmake -f Make_mvc.mak GUI=yes
9. MS-DOS
=========
14. MS-DOS
==========
Summary:
ren Make_bc3.mak Makefile; make 16 bit, Borland C++ and Turbo C++
@@ -479,48 +746,48 @@ If you get all kinds of strange error messages when compiling, try changing
the file format from "unix" to "dos".
10. Installing after building from sources
15. Installing after building from sources
==========================================
[provided by Michael Soyka]
After you've built the Vim binaries as described above, you're ready to
install Vim on your system. However, if you've obtained the Vim sources
using Mercurial or by downloading them as a unix tar file, you must first
create a "vim73" directory. If you instead downloaded the sources as
using Git, Mercurial or by downloading them as a unix tar file, you must
first create a "vim74" directory. If you instead downloaded the sources as
zip files, you can skip this setup as the zip archives already have the
correct directory structure.
A. Create a Vim "runtime" subdirectory named "vim73"
A. Create a Vim "runtime" subdirectory named "vim74"
-----------------------------------------------------
If you obtained your Vim sources as zip files, you can skip this step.
Otherwise, continue reading.
Go to the directory that contains the Vim "src" and "runtime"
directories and create a new subdirectory named "vim73".
directories and create a new subdirectory named "vim74".
Copy the "runtime" files into "vim73":
copy runtime\* vim73
Copy the "runtime" files into "vim74":
copy runtime\* vim74
B. Copy the new binaries into the "vim73" directory
B. Copy the new binaries into the "vim74" directory
----------------------------------------------------
Regardless of how you installed the Vim sources, you need to copy the
new binaries you created above into "vim73":
new binaries you created above into "vim74":
copy src\*.exe vim73
copy src\GvimExt\gvimext.dll vim73
copy src\xxd\xxd.exe vim73
copy src\*.exe vim74
copy src\GvimExt\gvimext.dll vim74
copy src\xxd\xxd.exe vim74
C. Move the "vim73" directory into the Vim installation subdirectory
C. Move the "vim74" directory into the Vim installation subdirectory
---------------------------------------------------------------------
Move the "vim73" subdirectory into the subdirectory where you want Vim
Move the "vim74" subdirectory into the subdirectory where you want Vim
to be installed. Typically, this subdirectory will be named "vim".
If you already have a "vim73" subdirectory in "vim", delete it first
If you already have a "vim74" subdirectory in "vim", delete it first
by running its uninstal.exe program.
D. Install Vim
---------------
"cd" to your Vim installation subdirectory "vim\vim73" and run the
"cd" to your Vim installation subdirectory "vim\vim74" and run the
"install.exe" program. It will ask you a number of questions about
how you would like to have your Vim setup. Among these are:
- You can tell it to write a "_vimrc" file with your preferences in the

View File

@@ -72,6 +72,7 @@ EXE_dependencies = \
getchar.obj \
hardcopy.obj \
hashtab.obj \
json.obj \
main.obj \
mark.obj \
memfile.obj \

View File

@@ -86,9 +86,12 @@
# (BIG for WIN32, SMALL for DOS16)
# WINVER 0x0400 or 0x0500: minimum Win32 version to support (0x0400)
# CSCOPE no or yes: include support for Cscope interface (yes)
# NETBEANS no or yes: include support for Netbeans interface (yes if GUI
# NETBEANS no or yes: include support for Netbeans interface; also
# requires CHANNEL (yes if GUI
# is yes)
# NBDEBUG no or yes: include support for debugging Netbeans interface (no)
# CHANNEL no or yes: include support for inter process communication (yes
# if GUI is yes)
# XPM define to path to XPM dir to get support for loading XPM images.
### BOR: root of the BC installation
@@ -137,6 +140,11 @@ CSCOPE = yes
NETBEANS = yes
!endif
### CHANNEL: yes to enable inter process communication, no to disable it
!if ("$(CHANNEL)"=="") && ("$(GUI)"=="yes")
CHANNEL = yes
!endif
### LUA: uncomment this line if you want lua support in vim
# LUA=c:\lua
@@ -466,6 +474,7 @@ LINK2 = -aa
RESFILE = vim.res
!else
!undef NETBEANS
!undef CHANNEL
!undef XPM
!undef VIMDLL
!if ("$(DEBUG)"=="yes")
@@ -488,12 +497,21 @@ RESFILE = vim.res
!endif
!if ("$(NETBEANS)"=="yes")
!if ("$(CHANNEL)"!="yes")
# cannot use Netbeans without CHANNEL
NETBEANS = no
!else
DEFINES = $(DEFINES) -DFEAT_NETBEANS_INTG
!if ("$(NBDEBUG)"=="yes")
DEFINES = $(DEFINES) -DNBDEBUG
NBDEBUG_DEP = nbdebug.h nbdebug.c
!endif
!endif
!endif
!if ("$(CHANNEL)"=="yes")
DEFINES = $(DEFINES) -DFEAT_CHANNEL
!endif
!ifdef XPM
!if ("$(GUI)"=="yes")
@@ -598,6 +616,7 @@ vimobj = \
$(OBJDIR)\getchar.obj \
$(OBJDIR)\hardcopy.obj \
$(OBJDIR)\hashtab.obj \
$(OBJDIR)\json.obj \
$(OBJDIR)\main.obj \
$(OBJDIR)\mark.obj \
$(OBJDIR)\memfile.obj \
@@ -672,6 +691,11 @@ vimobj = $(vimobj) \
$(OBJDIR)\netbeans.obj
!endif
!if ("$(CHANNEL)"=="yes")
vimobj = $(vimobj) \
$(OBJDIR)\channel.obj
!endif
!ifdef XPM
vimobj = $(vimobj) \
$(OBJDIR)\xpm_w32.obj
@@ -747,6 +771,9 @@ MSG = $(MSG) CSCOPE
!if ("$(NETBEANS)"=="yes")
MSG = $(MSG) NETBEANS
!endif
!if ("$(CHANNEL)"=="yes")
MSG = $(MSG) CHANNEL
!endif
!ifdef XPM
MSG = $(MSG) XPM
!endif
@@ -1028,6 +1055,9 @@ $(OBJDIR)\xpm_w32.obj: xpm_w32.c xpm.lib
$(OBJDIR)\netbeans.obj: netbeans.c $(NBDEBUG_DEP)
$(CC) $(CCARG) $(CC1) $(CC2)$@ netbeans.c
$(OBJDIR)\channel.obj: channel.c
$(CC) $(CCARG) $(CC1) $(CC2)$@ channel.c
$(OBJDIR)\vim.res: vim.rc version.h tools.bmp tearoff.bmp \
vim.ico vim_error.ico vim_alert.ico vim_info.ico vim_quest.ico
$(BRC) -fo$(OBJDIR)\vim.res -i $(BOR)\include -w32 -r vim.rc @&&|

View File

@@ -39,7 +39,7 @@ GUI=yes
DIRECTX=no
# FEATURES=[TINY | SMALL | NORMAL | BIG | HUGE]
# Set to TINY to make minimal version (few features).
FEATURES=BIG
FEATURES=HUGE
# Set to one of i386, i486, i586, i686 as the minimum target processor.
# For amd64/x64 architecture set ARCH=x86-64 .
ARCH=i386
@@ -64,8 +64,10 @@ WINVER = 0x0500
endif
# Set to yes to enable Cscope support.
CSCOPE=yes
# Set to yes to enable Netbeans support.
# Set to yes to enable Netbeans support (requires CHANNEL).
NETBEANS=$(GUI)
# Set to yes to enable inter process communication.
CHANNEL=$(GUI)
# Link against the shared version of libstdc++ by default. Set
@@ -171,26 +173,37 @@ ifndef MZSCHEME_VER
MZSCHEME_VER=205_000
endif
ifndef MZSCHEME_PRECISE_GC
MZSCHEME_PRECISE_GC=no
endif
# for version 4.x we need to generate byte-code for Scheme base
ifndef MZSCHEME_GENERATE_BASE
MZSCHEME_GENERATE_BASE=no
endif
ifndef MZSCHEME_USE_RACKET
ifneq ($(wildcard $(MZSCHEME)/lib/msvc/libmzsch$(MZSCHEME_VER).lib),)
MZSCHEME_MAIN_LIB=mzsch
else
MZSCHEME_MAIN_LIB=racket
endif
ifndef MZSCHEME_PRECISE_GC
MZSCHEME_PRECISE_GC=no
ifneq ($(wildcard $(MZSCHEME)\lib\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll),)
ifeq ($(wildcard $(MZSCHEME)\lib\libmzgc$(MZSCHEME_VER).dll),)
MZSCHEME_PRECISE_GC=yes
endif
else
ifneq ($(wildcard $(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib),)
ifeq ($(wildcard $(MZSCHEME)\lib\msvc\libmzgc$(MZSCHEME_VER).lib),)
MZSCHEME_PRECISE_GC=yes
endif
endif
endif
endif
ifeq (no,$(DYNAMIC_MZSCHEME))
ifeq (yes,$(MZSCHEME_PRECISE_GC))
MZSCHEME_LIB=-l$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER)
else
MZSCHEME_LIB = -l$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER) -lmzgc$(MZSCHEME_VER)
MZSCHEME_LIB=-l$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER) -lmzgc$(MZSCHEME_VER)
endif
# the modern MinGW can dynamically link to dlls directly.
# point MZSCHEME_DLLS to where you put libmzschXXXXXXX.dll and libgcXXXXXXX.dll
@@ -247,22 +260,32 @@ endif
ifndef PYTHON3_VER
PYTHON3_VER=31
endif
ifeq (no,$(DYNAMIC_PYTHON3))
PYTHON3LIB=-L$(PYTHON3)/libs -lPYTHON$(PYTHON3_VER)
ifndef DYNAMIC_PYTHON3_DLL
DYNAMIC_PYTHON3_DLL=python$(PYTHON3_VER).dll
endif
ifdef PYTHON3_HOME
PYTHON3_HOME_DEF=-DPYTHON3_HOME=\"$(PYTHON3_HOME)\"
endif
ifeq (no,$(DYNAMIC_PYTHON3))
PYTHON3LIB=-L$(PYTHON3)/libs -lpython$(PYTHON3_VER)
endif
ifndef PYTHON3INC
ifeq ($(CROSS),no)
PYTHON3INC=-I $(PYTHON3)/include
else
PYTHON3INC=-I $(PYTHON3)/win32inc
endif
endif
endif
# TCL interface:
# TCL=[Path to TCL directory] (Set inside Make_cyg.mak or Make_ming.mak)
# DYNAMIC_TCL=yes (to load the TCL DLL dynamically)
# TCL_VER=[TCL version, eg 83, 84] (default is 83)
# TCL_VER_LONG=[Tcl version, eg 8.3] (default is 8.3)
# You must set TCL_VER_LONG when you set TCL_VER.
ifdef TCL
ifndef DYNAMIC_TCL
DYNAMIC_TCL=yes
@@ -270,6 +293,9 @@ endif
ifndef TCL_VER
TCL_VER = 83
endif
ifndef TCL_VER_LONG
TCL_VER_LONG = 8.3
endif
TCLINC += -I$(TCL)/include
endif
@@ -319,10 +345,14 @@ ifndef RUBY_INSTALL_NAME
ifeq ($(RUBY_VER), 16)
RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_API_VER)
else
ifndef RUBY_MSVCRT_NAME
# Base name of msvcrXX.dll which is used by ruby's dll.
RUBY_MSVCRT_NAME = msvcrt
endif
ifeq ($(ARCH),x86-64)
RUBY_INSTALL_NAME = x64-msvcrt-ruby$(RUBY_API_VER)
RUBY_INSTALL_NAME = x64-$(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
else
RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER)
RUBY_INSTALL_NAME = $(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
endif
endif
endif
@@ -420,10 +450,21 @@ endif
endif
ifdef MZSCHEME
CFLAGS += -I$(MZSCHEME)/include -DFEAT_MZSCHEME -DMZSCHEME_COLLECTS=\"$(MZSCHEME)/collects\"
ifndef MZSCHEME_COLLECTS
MZSCHEME_COLLECTS=$(MZSCHEME)/collects
ifeq (yes, $(UNDER_CYGWIN))
MZSCHEME_COLLECTS:=$(shell cygpath -m $(MZSCHEME_COLLECTS) | sed -e 's/ /\\ /g')
endif
endif
CFLAGS += -I$(MZSCHEME)/include -DFEAT_MZSCHEME -DMZSCHEME_COLLECTS=\"$(MZSCHEME_COLLECTS)\"
ifeq (yes, $(DYNAMIC_MZSCHEME))
ifeq (yes, $(MZSCHEME_PRECISE_GC))
# Precise GC does not use separate dll
CFLAGS += -DDYNAMIC_MZSCHEME -DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" -DDYNAMIC_MZGC_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\"
else
CFLAGS += -DDYNAMIC_MZSCHEME -DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" -DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\"
endif
endif
ifeq (yes, "$(MZSCHEME_DEBUG)")
CFLAGS += -DMZSCHEME_FORCE_GC
endif
@@ -444,21 +485,21 @@ endif
ifdef PYTHON
CFLAGS += -DFEAT_PYTHON
ifeq (yes, $(DYNAMIC_PYTHON))
CFLAGS += -DDYNAMIC_PYTHON
CFLAGS += -DDYNAMIC_PYTHON -DDYNAMIC_PYTHON_DLL=\"$(DYNAMIC_PYTHON_DLL)\"
endif
endif
ifdef PYTHON3
CFLAGS += -DFEAT_PYTHON3
ifeq (yes, $(DYNAMIC_PYTHON3))
CFLAGS += -DDYNAMIC_PYTHON3
CFLAGS += -DDYNAMIC_PYTHON3 -DDYNAMIC_PYTHON3_DLL=\"$(DYNAMIC_PYTHON3_DLL)\"
endif
endif
ifdef TCL
CFLAGS += -DFEAT_TCL $(TCLINC)
ifeq (yes, $(DYNAMIC_TCL))
CFLAGS += -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"tcl$(TCL_VER).dll\"
CFLAGS += -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"tcl$(TCL_VER).dll\" -DDYNAMIC_TCL_VER=\"$(TCL_VER_LONG)\"
endif
endif
@@ -487,6 +528,10 @@ endif
endif
endif
ifeq ($(CHANNEL),yes)
DEFINES += -DFEAT_CHANNEL
endif
# DirectWrite (DirectX)
ifeq ($(DIRECTX),yes)
# Only allow DirectWrite for a GUI build.
@@ -562,6 +607,7 @@ OBJ = \
$(OUTDIR)/getchar.o \
$(OUTDIR)/hardcopy.o \
$(OUTDIR)/hashtab.o \
$(OUTDIR)/json.o \
$(OUTDIR)/main.o \
$(OUTDIR)/mark.o \
$(OUTDIR)/memfile.o \
@@ -627,13 +673,27 @@ endif
ifeq ($(CSCOPE),yes)
OBJ += $(OUTDIR)/if_cscope.o
endif
ifeq ($(NETBEANS),yes)
ifneq ($(CHANNEL),yes)
# Cannot use Netbeans without CHANNEL
NETBEANS=no
else
# Only allow NETBEANS for a GUI build.
ifeq (yes, $(GUI))
OBJ += $(OUTDIR)/netbeans.o
LIB += -lwsock32
endif
endif
endif
ifeq ($(CHANNEL),yes)
OBJ += $(OUTDIR)/channel.o
ifneq ($(NETBEANS),yes)
LIB += -lwsock32
endif
endif
ifeq ($(DIRECTX),yes)
# Only allow DIRECTX for a GUI build.
ifeq (yes, $(GUI))
@@ -780,10 +840,10 @@ INCL = vim.h feature.h os_win32.h os_dos.h ascii.h keymap.h term.h macros.h \
gui.h
$(OUTDIR)/if_python.o : if_python.c if_py_both.h $(INCL)
$(CC) -c $(CFLAGS) $(PYTHONINC) $(PYTHON_HOME_DEF) -DDYNAMIC_PYTHON_DLL=\"$(DYNAMIC_PYTHON_DLL)\" $< -o $@
$(CC) -c $(CFLAGS) $(PYTHONINC) $(PYTHON_HOME_DEF) $< -o $@
$(OUTDIR)/if_python3.o : if_python3.c if_py_both.h $(INCL)
$(CC) -c $(CFLAGS) $(PYTHON3INC) -DDYNAMIC_PYTHON3_DLL=\"PYTHON$(PYTHON3_VER).dll\" $< -o $@
$(CC) -c $(CFLAGS) $(PYTHON3INC) $(PYTHON3_HOME_DEF) $< -o $@
$(OUTDIR)/%.o : %.c $(INCL)
$(CC) -c $(CFLAGS) $< -o $@
@@ -826,6 +886,9 @@ if_perl.c: if_perl.xs typemap
$(OUTDIR)/netbeans.o: netbeans.c $(INCL) $(NBDEBUG_INCL) $(NBDEBUG_SRC)
$(CC) -c $(CFLAGS) netbeans.c -o $(OUTDIR)/netbeans.o
$(OUTDIR)/channel.o: channel.c $(INCL)
$(CC) -c $(CFLAGS) channel.c -o $(OUTDIR)/channel.o
$(OUTDIR)/regexp.o: regexp.c regexp_nfa.c $(INCL)
$(CC) -c $(CFLAGS) regexp.c -o $(OUTDIR)/regexp.o

View File

@@ -45,6 +45,7 @@ SRC = \
getchar.c \
hardcopy.c \
hashtab.c \
json.c \
main.c \
mark.c \
memfile.c \
@@ -93,6 +94,7 @@ OBJ = o/blowfish.o \
o/getchar.o \
o/hardcopy.o \
o/hashtab.o \
o/json.o \
o/main.o \
o/mark.o \
o/memfile.o \
@@ -179,6 +181,8 @@ o/hardcopy.o: hardcopy.c $(SYMS)
o/hashtab.o: hashtab.c $(SYMS)
o/json.o: json.c $(SYMS)
o/main.o: main.c $(SYMS)
o/mark.o: mark.c $(SYMS)

View File

@@ -229,6 +229,7 @@ LINK32_OBJS= \
"$(INTDIR)/getchar.obj" \
"$(INTDIR)/hardcopy.obj" \
"$(INTDIR)/hashtab.obj" \
"$(INTDIR)/json.obj" \
"$(INTDIR)/main.obj" \
"$(INTDIR)/mark.obj" \
"$(INTDIR)/mbyte.obj" \
@@ -555,6 +556,10 @@ SOURCE=.\if_ole.idl
# End Source File
# Begin Source File
SOURCE=.\json.c
# End Source File
# Begin Source File
SOURCE=.\main.c
# End Source File
# Begin Source File

View File

@@ -55,6 +55,7 @@ SRC = blowfish.c \
getchar.c \
hardcopy.c \
hashtab.c \
json.c \
main.c \
mark.c \
memfile.c \
@@ -105,6 +106,7 @@ OBJ = obj/blowfish.o \
obj/getchar.o \
obj/hardcopy.o \
obj/hashtab.o \
obj/json.o \
obj/main.o \
obj/mark.o \
obj/memfile.o \
@@ -153,6 +155,7 @@ PRO = proto/blowfish.pro \
proto/getchar.pro \
proto/hardcopy.pro \
proto/hashtab.pro \
proto/json.pro \
proto/main.pro \
proto/mark.pro \
proto/memfile.pro \
@@ -284,6 +287,9 @@ obj/hardcopy.o: hardcopy.c
obj/hashtab.o: hashtab.c
$(CCSYM) $@ hashtab.c
obj/json.o: json.c
$(CCSYM) $@ json.c
# Don't use $(SYMS) here, because main.c defines EXTERN
obj/main.o: main.c option.h globals.h
$(CCNOSYM) $@ main.c

View File

@@ -43,6 +43,7 @@ SRC = blowfish.c \
getchar.c \
hardcopy.c \
hashtab.c \
json.c \
main.c \
mark.c \
mbyte.c \

View File

@@ -20,7 +20,7 @@
#
# !!!! After changing features do "nmake clean" first !!!!
#
# Feature Set: FEATURES=[TINY, SMALL, NORMAL, BIG, HUGE] (default is BIG)
# Feature Set: FEATURES=[TINY, SMALL, NORMAL, BIG, HUGE] (default is HUGE)
#
# GUI interface: GUI=yes (default is no)
#
@@ -96,6 +96,13 @@
# PostScript printing: POSTSCRIPT=yes (default is no)
#
# Netbeans Support: NETBEANS=[yes or no] (default is yes if GUI is yes)
# Requires CHANNEL.
#
# Netbeans Debugging Support: NBDEBUG=[yes or no] (should be no, yes
# doesn't work)
#
# Inter process communication: CHANNEL=[yes or no] (default is yes if GUI
# is yes)
#
# XPM Image Support: XPM=[path to XPM directory]
# Default is "xpm", using the files included in the distribution.
@@ -114,9 +121,6 @@
# yes: Write a normal mapfile.
# lines: Write a mapfile with line numbers (only for VC6 and later)
#
# Netbeans Debugging Support: NBDEBUG=[yes or no] (should be no, yes
# doesn't work)
#
# Static Code Analysis: ANALYZE=yes (works with VS2012 only)
#
# You can combine any of these interfaces
@@ -216,6 +220,9 @@ CPU = i386
! endif
! else # !CPU
CPU = i386
! if !defined(PLATFORM) && defined(TARGET_CPU)
PLATFORM = $(TARGET_CPU)
! endif
! ifdef PLATFORM
! if ("$(PLATFORM)" == "x64") || ("$(PLATFORM)" == "X64")
CPU = AMD64
@@ -287,9 +294,13 @@ CSCOPE_DEFS = -DFEAT_CSCOPE
NETBEANS = $(GUI)
!endif
# Only allow NETBEANS and XPM for a GUI build.
!ifndef CHANNEL
CHANNEL = $(GUI)
!endif
# Only allow NETBEANS and XPM for a GUI build and CHANNEL.
!if "$(GUI)" == "yes"
!if "$(NETBEANS)" == "yes"
!if "$(NETBEANS)" == "yes" && "$(CHANNEL)" == "yes"
# NETBEANS - Include support for Netbeans integration
NETBEANS_PRO = proto/netbeans.pro
NETBEANS_OBJ = $(OBJDIR)/netbeans.obj
@@ -330,6 +341,14 @@ XPM_INC = -I $(XPM)\include -I $(XPM)\..\include
!endif
!endif
!if "$(CHANNEL)" == "yes"
CHANNEL_PRO = proto/channel.pro
CHANNEL_OBJ = $(OBJDIR)/channel.obj
CHANNEL_DEFS = -DFEAT_CHANNEL
NETBEANS_LIB = WSock32.lib
!endif
# Set which version of the CRT to use
!if defined(USE_MSVCRT)
# CVARS = $(cvarsdll)
@@ -362,7 +381,7 @@ WINVER = 0x0400
#VIMRUNTIMEDIR = somewhere
CFLAGS = -c /W3 /nologo $(CVARS) -I. -Iproto -DHAVE_PATHDEF -DWIN32 \
$(SNIFF_DEFS) $(CSCOPE_DEFS) $(NETBEANS_DEFS) \
$(SNIFF_DEFS) $(CSCOPE_DEFS) $(NETBEANS_DEFS) $(CHANNEL_DEFS) \
$(NBDEBUG_DEFS) $(XPM_DEFS) \
$(DEFINES) -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER) \
/Fo$(OUTDIR)/
@@ -394,8 +413,24 @@ OUTDIR=$(OBJDIR)
!if $(MSVCVER) < 1900
MSVC_MAJOR = ($(MSVCVER) / 100 - 6)
MSVCRT_VER = ($(MSVCVER) / 10 - 60)
!else
MSVC_MAJOR = ($(MSVCVER) / 100 - 5)
MSVCRT_VER = ($(MSVCVER) / 10 - 50)
!endif
# Calculate MSVCRT_VER
!if [(set /a MSVCRT_VER="$(MSVCRT_VER)" > nul) && set MSVCRT_VER > msvcrtver.~] == 0
!include msvcrtver.~
!if [del msvcrtver.~]
!endif
!endif
# Base name of the msvcrXX.dll
!if $(MSVCRT_VER) <= 60
MSVCRT_NAME = msvcrt
!else
MSVCRT_NAME = msvcr$(MSVCRT_VER)
!endif
!if $(MSVC_MAJOR) == 6
@@ -517,6 +552,7 @@ OBJ = \
$(OUTDIR)\getchar.obj \
$(OUTDIR)\hardcopy.obj \
$(OUTDIR)\hashtab.obj \
$(OUTDIR)\json.obj \
$(OUTDIR)\main.obj \
$(OUTDIR)\mark.obj \
$(OUTDIR)\mbyte.obj \
@@ -736,43 +772,52 @@ PYTHON3_LIB = $(PYTHON3)\libs\python$(PYTHON3_VER).lib
!ifndef MZSCHEME_VER
MZSCHEME_VER = 205_000
!endif
CFLAGS = $(CFLAGS) -DFEAT_MZSCHEME -I $(MZSCHEME)\include
!if EXIST("$(MZSCHEME)\collects\scheme\base.ss") \
|| EXIST("$(MZSCHEME)\collects\scheme\base.rkt") \
|| EXIST("$(MZSCHEME)\collects\racket\base.rkt")
# for MzScheme >= 4 we need to include byte code for basic Scheme stuff
MZSCHEME_EXTRA_DEP = mzscheme_base.c
CFLAGS = $(CFLAGS) -DINCLUDE_MZSCHEME_BASE
!ifndef MZSCHEME_COLLECTS
MZSCHEME_COLLECTS=$(MZSCHEME)\collects
!endif
CFLAGS = $(CFLAGS) -DFEAT_MZSCHEME -I "$(MZSCHEME)\include"
!if EXIST("$(MZSCHEME)\lib\msvc\libmzsch$(MZSCHEME_VER).lib")
MZSCHEME_MAIN_LIB=mzsch
!else
MZSCHEME_MAIN_LIB=racket
!endif
!if EXIST("$(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib") \
&& !EXIST("$(MZSCHEME)\lib\msvc\libmzgc$(MZSCHEME_VER).lib")
!if (EXIST("$(MZSCHEME)\lib\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll") \
&& !EXIST("$(MZSCHEME)\lib\libmzgc$(MZSCHEME_VER).dll")) \
|| (EXIST("$(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib") \
&& !EXIST("$(MZSCHEME)\lib\msvc\libmzgc$(MZSCHEME_VER).lib"))
!message Building with Precise GC
MZSCHEME_PRECISE_GC = yes
CFLAGS = $(CFLAGS) -DMZ_PRECISE_GC
!endif
!if "$(DYNAMIC_MZSCHEME)" == "yes"
!if "$(MZSCHEME_PRECISE_GC)" == "yes"
!error MzScheme with Precise GC cannot be loaded dynamically
!endif
!message MzScheme DLLs will be loaded dynamically
CFLAGS = $(CFLAGS) -DDYNAMIC_MZSCHEME \
-DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" \
-DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\"
CFLAGS = $(CFLAGS) -DDYNAMIC_MZSCHEME
!if "$(MZSCHEME_PRECISE_GC)" == "yes"
# Precise GC does not use separate dll
CFLAGS = $(CFLAGS) \
-DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" \
-DDYNAMIC_MZGC_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\"
!else
CFLAGS = $(CFLAGS) \
-DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" \
-DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\"
!endif
!else
!if "$(MZSCHEME_DEBUG)" == "yes"
CFLAGS = $(CFLAGS) -DMZSCHEME_FORCE_GC
!endif
!if "$(MZSCHEME_PRECISE_GC)" == "yes"
# Precise GC does not use separate dll
MZSCHEME_LIB = $(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib
!if EXIST("$(MZSCHEME)\lib\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).def")
# create .lib from .def
MZSCHEME_LIB = lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib
MZSCHEME_EXTRA_DEP = lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib
!else
MZSCHEME_LIB = $(MZSCHEME)\lib\msvc\libmzgc$(MZSCHEME_VER).lib \
$(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib
MZSCHEME_LIB = "$(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib"
!endif
!else
MZSCHEME_LIB = "$(MZSCHEME)\lib\msvc\libmzgc$(MZSCHEME_VER).lib" \
"$(MZSCHEME)\lib\msvc\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib"
!endif
!endif
MZSCHEME_OBJ = $(OUTDIR)\if_mzsch.obj
@@ -858,19 +903,39 @@ RUBY_API_VER = $(RUBY_VER_LONG:.=)
!endif
!if $(RUBY_VER) >= 18
!ifndef RUBY_PLATFORM
!if "$(CPU)" == "i386"
RUBY_PLATFORM = i386-mswin32
!endif
!else # CPU
RUBY_PLATFORM = x64-mswin64
!endif # CPU
!if $(MSVCRT_VER) >= 70
RUBY_PLATFORM = $(RUBY_PLATFORM)_$(MSVCRT_VER)
!endif # MSVCRT_VER
!endif # RUBY_PLATFORM
!ifndef RUBY_INSTALL_NAME
RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER)
!endif
!else
!ifndef RUBY_MSVCRT_NAME
# Base name of msvcrXX.dll which is used by ruby's dll.
RUBY_MSVCRT_NAME = $(MSVCRT_NAME)
!endif # RUBY_MSVCRT_NAME
!if "$(CPU)" == "i386"
RUBY_INSTALL_NAME = $(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
!else # CPU
RUBY_INSTALL_NAME = x64-$(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
!endif # CPU
!endif # RUBY_INSTALL_NAME
!else # $(RUBY_VER) >= 18
!ifndef RUBY_PLATFORM
RUBY_PLATFORM = i586-mswin32
!endif
!ifndef RUBY_INSTALL_NAME
RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_API_VER)
!endif
!endif # $(RUBY_VER) >= 18
!message Ruby requested (version $(RUBY_VER)) - root dir is "$(RUBY)"
@@ -902,7 +967,7 @@ CFLAGS = $(CFLAGS) -DMSWINPS
# FEATURES: TINY, SMALL, NORMAL, BIG or HUGE
#
!if "$(FEATURES)"==""
FEATURES = BIG
FEATURES = HUGE
!endif
CFLAGS = $(CFLAGS) -DFEAT_$(FEATURES)
@@ -946,17 +1011,22 @@ LINKARGS1 = $(LINKARGS1) /LTCG:STATUS
!endif
!endif
all: $(VIM).exe vimrun.exe install.exe uninstal.exe xxd/xxd.exe \
GvimExt/gvimext.dll
all: $(VIM).exe \
vimrun.exe \
install.exe \
uninstal.exe \
xxd/xxd.exe \
tee/tee.exe \
GvimExt/gvimext.dll
$(VIM).exe: $(OUTDIR) $(OBJ) $(GUI_OBJ) $(OLE_OBJ) $(OLE_IDL) $(MZSCHEME_OBJ) \
$(LUA_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(PYTHON3_OBJ) $(RUBY_OBJ) $(TCL_OBJ) \
$(SNIFF_OBJ) $(CSCOPE_OBJ) $(NETBEANS_OBJ) $(XPM_OBJ) \
$(SNIFF_OBJ) $(CSCOPE_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) $(XPM_OBJ) \
version.c version.h
$(CC) $(CFLAGS) version.c
$(link) $(LINKARGS1) -out:$(VIM).exe $(OBJ) $(GUI_OBJ) $(OLE_OBJ) \
$(LUA_OBJ) $(MZSCHEME_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(PYTHON3_OBJ) $(RUBY_OBJ) \
$(TCL_OBJ) $(SNIFF_OBJ) $(CSCOPE_OBJ) $(NETBEANS_OBJ) \
$(TCL_OBJ) $(SNIFF_OBJ) $(CSCOPE_OBJ) $(NETBEANS_OBJ) $(CHANNEL_OBJ) \
$(XPM_OBJ) $(OUTDIR)\version.obj $(LINKARGS2)
if exist $(VIM).exe.manifest mt.exe -nologo -manifest $(VIM).exe.manifest -updateresource:$(VIM).exe;1
@@ -982,6 +1052,11 @@ xxd/xxd.exe: xxd/xxd.c
$(MAKE) /NOLOGO -f Make_mvc.mak
cd ..
tee/tee.exe: tee/tee.c
cd tee
$(MAKE) /NOLOGO -f Make_mvc.mak
cd ..
GvimExt/gvimext.dll: GvimExt/gvimext.cpp GvimExt/gvimext.rc GvimExt/gvimext.h
cd GvimExt
$(MAKE) /NOLOGO -f Makefile $(MAKEFLAGS_GVIMEXT)
@@ -1010,10 +1085,12 @@ clean:
- if exist dimm_i.c del dimm_i.c
- if exist dimm.tlb del dimm.tlb
- if exist dosinst.exe del dosinst.exe
- if exist mzscheme_base.c del mzscheme_base.c
cd xxd
$(MAKE) /NOLOGO -f Make_mvc.mak clean
cd ..
cd tee
$(MAKE) /NOLOGO -f Make_mvc.mak clean
cd ..
cd GvimExt
$(MAKE) /NOLOGO -f Makefile clean
cd ..
@@ -1120,13 +1197,10 @@ $(OUTDIR)/if_perlsfio.obj: $(OUTDIR) if_perlsfio.c $(INCL)
$(OUTDIR)/if_mzsch.obj: $(OUTDIR) if_mzsch.c if_mzsch.h $(INCL) $(MZSCHEME_EXTRA_DEP)
$(CC) $(CFLAGS) if_mzsch.c \
-DMZSCHEME_COLLECTS=\"$(MZSCHEME:\=\\)\\collects\"
mzscheme_base.c:
!IF "$(MZSCHEME_MAIN_LIB)" == "racket"
$(MZSCHEME)\raco ctool --c-mods mzscheme_base.c ++lib scheme/base
!ELSE
$(MZSCHEME)\mzc --c-mods mzscheme_base.c ++lib scheme/base
!ENDIF
-DMZSCHEME_COLLECTS="\"$(MZSCHEME_COLLECTS:\=\\)\""
lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).lib:
lib /DEF:"$(MZSCHEME)\lib\lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).def"
$(OUTDIR)/if_python.obj: $(OUTDIR) if_python.c if_py_both.h $(INCL)
$(CC) $(CFLAGS) $(PYTHON_INC) if_python.c
@@ -1145,6 +1219,8 @@ $(OUTDIR)/if_sniff.obj: $(OUTDIR) if_sniff.c $(INCL)
$(OUTDIR)/if_tcl.obj: $(OUTDIR) if_tcl.c $(INCL)
$(CC) $(CFLAGS) $(TCL_INC) if_tcl.c
$(OUTDIR)/json.obj: $(OUTDIR) json.c $(INCL)
$(OUTDIR)/main.obj: $(OUTDIR) main.c $(INCL)
$(OUTDIR)/mark.obj: $(OUTDIR) mark.c $(INCL)
@@ -1167,6 +1243,8 @@ $(OUTDIR)/mbyte.obj: $(OUTDIR) mbyte.c $(INCL)
$(OUTDIR)/netbeans.obj: $(OUTDIR) netbeans.c $(NBDEBUG_SRC) $(INCL)
$(OUTDIR)/channel.obj: $(OUTDIR) channel.c $(INCL)
$(OUTDIR)/normal.obj: $(OUTDIR) normal.c $(INCL)
$(OUTDIR)/option.obj: $(OUTDIR) option.c $(INCL)
@@ -1272,6 +1350,7 @@ proto.h: \
proto/getchar.pro \
proto/hardcopy.pro \
proto/hashtab.pro \
proto/json.pro \
proto/main.pro \
proto/mark.pro \
proto/memfile.pro \
@@ -1301,7 +1380,8 @@ proto.h: \
proto/ui.pro \
proto/undo.pro \
proto/window.pro \
$(NETBEANS_PRO)
$(NETBEANS_PRO) \
$(CHANNEL_PRO)
.SUFFIXES: .cod .i

View File

@@ -108,6 +108,7 @@ SRC = \
getchar.c \
hardcopy.c \
hashtab.c \
json.c \
main.c \
mark.c \
memfile.c \
@@ -157,6 +158,7 @@ OBJ = \
getchar.o \
hardcopy.o \
hashtab.o \
json.o \
main.o \
mark.o \
memfile.o \
@@ -206,6 +208,7 @@ PRO = \
proto/getchar.pro \
proto/hardcopy.pro \
proto/hashtab.pro \
proto/json.pro \
proto/main.pro \
proto/mark.pro \
proto/memfile.pro \
@@ -328,6 +331,8 @@ hardcopy.o: hardcopy.c
proto/hardcopy.pro: hardcopy.c
hashtab.o: hashtab.c
proto/hashtab.pro: hashtab.c
json.o: json.c
proto/json.pro: json.c
main.o: main.c
proto/main.pro: main.c
mark.o: mark.c

View File

@@ -2,7 +2,7 @@
# Makefile for Vim on OpenVMS
#
# Maintainer: Zoltan Arpadffy <arpadffy@polarhome.com>
# Last change: 2014 Aug 10
# Last change: 2016 Jan 22
#
# This has script been tested on VMS 6.2 to 8.2 on DEC Alpha, VAX and IA64
# with MMS and MMK
@@ -311,7 +311,7 @@ ALL_LIBS = $(LIBS) $(GUI_LIB_DIR) $(GUI_LIB) \
SRC = blowfish.c buffer.c charset.c crypt.c, crypt_zip.c diff.c digraph.c edit.c eval.c ex_cmds.c ex_cmds2.c \
ex_docmd.c ex_eval.c ex_getln.c if_xcmdsrv.c fileio.c fold.c getchar.c \
hardcopy.c hashtab.c main.c mark.c menu.c mbyte.c memfile.c memline.c message.c misc1.c \
hardcopy.c hashtab.c json.c main.c mark.c menu.c mbyte.c memfile.c memline.c message.c misc1.c \
misc2.c move.c normal.c ops.c option.c popupmnu.c quickfix.c regexp.c search.c sha256.c\
spell.c syntax.c tag.c term.c termlib.c ui.c undo.c version.c screen.c \
window.c os_unix.c os_vms.c pathdef.c \
@@ -320,7 +320,7 @@ SRC = blowfish.c buffer.c charset.c crypt.c, crypt_zip.c diff.c digraph.c edit.c
OBJ = blowfish.obj buffer.obj charset.obj crypt.obj, crypt_zip.obj diff.obj digraph.obj edit.obj eval.obj \
ex_cmds.obj ex_cmds2.obj ex_docmd.obj ex_eval.obj ex_getln.obj \
if_xcmdsrv.obj fileio.obj fold.obj getchar.obj hardcopy.obj hashtab.obj main.obj mark.obj \
if_xcmdsrv.obj fileio.obj fold.obj getchar.obj hardcopy.obj hashtab.obj json.obj main.obj mark.obj \
menu.obj memfile.obj memline.obj message.obj misc1.obj misc2.obj \
move.obj mbyte.obj normal.obj ops.obj option.obj popupmnu.obj quickfix.obj \
regexp.obj search.obj sha256.obj spell.obj syntax.obj tag.obj term.obj termlib.obj \
@@ -572,6 +572,10 @@ if_mzsch.obj : if_mzsch.c vim.h [.auto]config.h feature.h os_unix.h \
ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h [.proto]gui_beval.pro ex_cmds.h proto.h \
globals.h farsi.h arabic.h if_mzsch.h
json.obj : json.c vim.h [.auto]config.h feature.h os_unix.h \
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h gui_beval.h \
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h farsi.h \
arabic.h version.h
main.obj : main.c vim.h [.auto]config.h feature.h os_unix.h \
ascii.h keymap.h term.h macros.h structs.h regexp.h gui.h gui_beval.h \
[.proto]gui_beval.pro option.h ex_cmds.h proto.h globals.h farsi.h \

View File

@@ -445,7 +445,9 @@ CClink = $(CC)
# TCL
# Uncomment this when you want to include the Tcl interface.
# First one is for static linking, second one for dynamic loading.
#CONF_OPT_TCL = --enable-tclinterp
#CONF_OPT_TCL = --enable-tclinterp=dynamic
#CONF_OPT_TCL = --enable-tclinterp --with-tclsh=tclsh8.4
# CSCOPE
@@ -460,6 +462,10 @@ CClink = $(CC)
# Uncomment this when you do not want the netbeans interface.
#CONF_OPT_NETBEANS = --disable-netbeans
# CHANNEL - inter process communication. Same conditions as NetBeans.
# Uncomment this when you do not want inter process communication.
#CONF_OPT_CHANNEL = --disable-channel
# SNIFF - Include support for SNiFF+.
#CONF_OPT_SNIFF = --enable-sniff
@@ -504,7 +510,7 @@ CClink = $(CC)
# FEATURES - For creating Vim with more or less features
# Uncomment one of these lines when you want to include few to many features.
# The default is "normal".
# The default is "huge" for most systems.
#CONF_OPT_FEAT = --with-features=tiny
#CONF_OPT_FEAT = --with-features=small
#CONF_OPT_FEAT = --with-features=normal
@@ -1359,10 +1365,10 @@ CPP_DEPEND = $(CC) -I$(srcdir) -M$(CPP_MM) \
NO_ATTR=
#
# Use this for cproto 3 patchlevel 6 or below (use "cproto -V" to check):
# PROTO_FLAGS = -f4 -m__ARGS -d -E"$(CPP)" $(NO_ATTR)
# PROTO_FLAGS = -f4 -d -E"$(CPP)" $(NO_ATTR)
#
# Use this for cproto 3 patchlevel 7 or above (use "cproto -V" to check):
PROTO_FLAGS = -m -M__ARGS -d -E"$(CPP)" $(NO_ATTR)
PROTO_FLAGS = -d -E"$(CPP)" $(NO_ATTR)
################################################
@@ -1375,7 +1381,7 @@ SHELL = /bin/sh
.SUFFIXES: .c .o .pro
PRE_DEFS = -Iproto $(DEFS) $(GUI_DEFS) $(GUI_IPATH) $(CPPFLAGS) $(EXTRA_IPATHS)
POST_DEFS = $(X_CFLAGS) $(MZSCHEME_CFLAGS) $(TCL_CFLAGS) $(EXTRA_DEFS)
POST_DEFS = $(X_CFLAGS) $(MZSCHEME_CFLAGS) $(EXTRA_DEFS)
ALL_CFLAGS = $(PRE_DEFS) $(CFLAGS) $(PROFILE_CFLAGS) $(SANITIZER_CFLAGS) $(LEAK_CFLAGS) $(POST_DEFS)
@@ -1383,7 +1389,7 @@ ALL_CFLAGS = $(PRE_DEFS) $(CFLAGS) $(PROFILE_CFLAGS) $(SANITIZER_CFLAGS) $(LEAK_
# with "-E".
OSDEF_CFLAGS = $(PRE_DEFS) $(POST_DEFS)
LINT_CFLAGS = -DLINT -I. $(PRE_DEFS) $(POST_DEFS) $(RUBY_CFLAGS) $(LUA_CFLAGS) $(PERL_CFLAGS) $(PYTHON_CFLAGS) $(PYTHON3_CFLAGS) -Dinline= -D__extension__= -Dalloca=alloca
LINT_CFLAGS = -DLINT -I. $(PRE_DEFS) $(POST_DEFS) $(RUBY_CFLAGS) $(LUA_CFLAGS) $(PERL_CFLAGS) $(PYTHON_CFLAGS) $(PYTHON3_CFLAGS) $(TCL_CFLAGS) -Dinline= -D__extension__= -Dalloca=alloca
LINT_EXTRA = -DUSE_SNIFF -DHANGUL_INPUT -D"__attribute__(x)="
@@ -1485,6 +1491,7 @@ BASIC_SRC = \
hashtab.c \
if_cscope.c \
if_xcmdsrv.c \
json.c \
main.c \
mark.c \
memfile.c \
@@ -1533,7 +1540,8 @@ TAGS_SRC = *.c *.cpp if_perl.xs
EXTRA_SRC = hangulin.c if_lua.c if_mzsch.c auto/if_perl.c if_perlsfio.c \
if_python.c if_python3.c if_tcl.c if_ruby.c if_sniff.c \
gui_beval.c workshop.c wsdebug.c integration.c netbeans.c \
gui_beval.c workshop.c wsdebug.c integration.c \
netbeans.c channel.c \
$(GRESOURCE_SRC)
# Unittest files
@@ -1549,8 +1557,10 @@ ALL_SRC = $(BASIC_SRC) $(ALL_GUI_SRC) $(UNITTEST_SRC) $(EXTRA_SRC)
# Which files to check with lint. Select one of these three lines. ALL_SRC
# checks more, but may not work well for checking a GUI that wasn't configured.
# The perl sources also don't work well with lint.
LINT_SRC = $(BASIC_SRC) $(GUI_SRC) $(HANGULIN_SRC) $(PYTHON_SRC) $(PYTHON3_SRC) $(TCL_SRC) \
$(SNIFF_SRC) $(WORKSHOP_SRC) $(WSDEBUG_SRC) $(NETBEANS_SRC)
LINT_SRC = $(BASIC_SRC) $(GUI_SRC) $(HANGULIN_SRC) \
$(PYTHON_SRC) $(PYTHON3_SRC) $(TCL_SRC) \
$(SNIFF_SRC) $(WORKSHOP_SRC) $(WSDEBUG_SRC) \
$(NETBEANS_SRC) $(CHANNEL_SRC)
#LINT_SRC = $(SRC)
#LINT_SRC = $(ALL_SRC)
#LINT_SRC = $(BASIC_SRC)
@@ -1578,6 +1588,7 @@ OBJ_COMMON = \
$(HANGULIN_OBJ) \
objects/if_cscope.o \
objects/if_xcmdsrv.o \
objects/json.o \
objects/mark.o \
objects/memline.o \
objects/menu.o \
@@ -1617,6 +1628,7 @@ OBJ_COMMON = \
$(OS_EXTRA_OBJ) \
$(WORKSHOP_OBJ) \
$(NETBEANS_OBJ) \
$(CHANNEL_OBJ) \
$(WSDEBUG_OBJ)
OBJ = $(OBJ_COMMON) \
@@ -1648,12 +1660,16 @@ PRO_AUTO = \
hashtab.pro \
hangulin.pro \
if_cscope.pro \
if_xcmdsrv.pro \
if_lua.pro \
if_mzsch.pro \
if_python.pro \
if_python3.pro \
if_ruby.pro \
if_xcmdsrv.pro \
json.pro \
main.pro \
mark.pro \
mbyte.pro \
memfile.pro \
memline.pro \
menu.pro \
@@ -1661,12 +1677,13 @@ PRO_AUTO = \
misc1.pro \
misc2.pro \
move.pro \
mbyte.pro \
normal.pro \
ops.pro \
option.pro \
os_mac_conv.pro \
os_unix.pro \
popupmnu.pro \
pty.pro \
quickfix.pro \
regexp.pro \
screen.pro \
@@ -1684,6 +1701,7 @@ PRO_AUTO = \
gui_beval.pro \
workshop.pro \
netbeans.pro \
channel.pro \
$(ALL_GUI_PRO) \
$(TCL_PRO)
@@ -1726,7 +1744,8 @@ config auto/config.mk: auto/configure config.mk.in config.h.in
$(CONF_OPT_CSCOPE) $(CONF_OPT_MULTIBYTE) $(CONF_OPT_INPUT) \
$(CONF_OPT_OUTPUT) $(CONF_OPT_GPM) $(CONF_OPT_WORKSHOP) \
$(CONF_OPT_SNIFF) $(CONF_OPT_FEAT) $(CONF_TERM_LIB) \
$(CONF_OPT_COMPBY) $(CONF_OPT_ACL) $(CONF_OPT_NETBEANS) \
$(CONF_OPT_COMPBY) $(CONF_OPT_ACL) $(CONF_OPT_NETBEANS) \
$(CONF_OPT_CHANNEL) \
$(CONF_ARGS) $(CONF_OPT_MZSCHEME) $(CONF_OPT_PLTHOME) \
$(CONF_OPT_LUA) $(CONF_OPT_LUA_PREFIX) \
$(CONF_OPT_SYSMOUSE); \
@@ -1929,10 +1948,8 @@ unittest unittests: $(UNITTEST_TARGETS)
./$$t || exit 1; echo $$t passed; \
done
# Run individual test, assuming that Vim was already compiled.
# Run individual OLD style test, assuming that Vim was already compiled.
test1 \
test_argument_0count \
test_argument_count \
test_autocmd_option \
test_autoformat_join \
test_breakindent \
@@ -1944,7 +1961,7 @@ test1 \
test_erasebackword \
test_eval \
test_fixeol \
test_increment \
test_getcwd \
test_insertcount \
test_listchars \
test_listlbr \
@@ -1954,7 +1971,6 @@ test1 \
test_match_conceal \
test_nested_function \
test_options \
test_perl \
test_qf_title \
test_ruby \
test_search_mbyte \
@@ -1962,6 +1978,7 @@ test1 \
test_tagcase \
test_textobjects \
test_utf8 \
test_wordcount \
test_writefile \
test2 test3 test4 test5 test6 test7 test8 test9 \
test10 test11 test12 test13 test14 test15 test16 test17 test18 test19 \
@@ -1973,15 +1990,33 @@ test1 \
test70 test71 test72 test73 test74 test75 test76 test77 test78 test79 \
test80 test81 test82 test83 test84 test85 test86 test87 test88 test89 \
test90 test91 test92 test93 test94 test95 test96 test97 test98 test99 \
test100 test101 test102 test103 test104 test105 test106 test107:
test100 test101 test102 test103 test104 test105 test106 test107 test108:
cd testdir; rm -f $@.out; $(MAKE) -f Makefile $@.out VIMPROG=../$(VIMTARGET) $(GUI_TESTARG) SCRIPTSOURCE=../$(SCRIPTSOURCE)
test_assert \
# Run individual NEW style test, assuming that Vim was already compiled.
test_arglist \
test_assert \
test_backspace_opt \
test_cdo \
test_cursor_func \
test_delete \
test_expand \
test_glob2regpat \
test_hardcopy \
test_increment \
test_json \
test_langmap \
test_lispwords \
test_menu \
test_perl \
test_quickfix \
test_searchpos \
test_set \
test_sort \
test_syntax \
test_undolevels \
test_unlet \
test_viminfo \
test_viml \
test_alot:
cd testdir; rm -f $@.res test.log messages; $(MAKE) -f Makefile $@.res VIMPROG=../$(VIMTARGET) $(GUI_TESTARG) SCRIPTSOURCE=../$(SCRIPTSOURCE)
@@ -1991,7 +2026,7 @@ test_assert \
cat testdir/messages
newtests:
cd testdir; rm -f $@.res test.log messages; $(MAKE) -f Makefile newtests VIMPROG=../$(VIMTARGET) $(GUI_TESTARG) SCRIPTSOURCE=../$(SCRIPTSOURCE)
cd testdir; rm -f $@.res test.log messages; $(MAKE) -f Makefile newtestssilent VIMPROG=../$(VIMTARGET) $(GUI_TESTARG) SCRIPTSOURCE=../$(SCRIPTSOURCE)
@if test -f testdir/test.log; then \
cat testdir/test.log; \
fi
@@ -2595,10 +2630,27 @@ auto/pathdef.c: Makefile auto/config.mk
-@echo '";' >> $@
-@sh $(srcdir)/pathdef.sh
auto/gui_gtk_gresources.c: gui_gtk_res.xml
$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=../pixmaps --generate --c-name=gui_gtk --manual-register $<
auto/gui_gtk_gresources.h: gui_gtk_res.xml
$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=../pixmaps --generate --c-name=gui_gtk --manual-register $<
GUI_GTK_RES_INPUTS = \
../pixmaps/stock_vim_build_tags.png \
../pixmaps/stock_vim_find_help.png \
../pixmaps/stock_vim_save_all.png \
../pixmaps/stock_vim_session_load.png \
../pixmaps/stock_vim_session_new.png \
../pixmaps/stock_vim_session_save.png \
../pixmaps/stock_vim_shell.png \
../pixmaps/stock_vim_window_maximize.png \
../pixmaps/stock_vim_window_maximize_width.png \
../pixmaps/stock_vim_window_minimize.png \
../pixmaps/stock_vim_window_minimize_width.png \
../pixmaps/stock_vim_window_split.png \
../pixmaps/stock_vim_window_split_vertical.png
auto/gui_gtk_gresources.c: gui_gtk_res.xml $(GUI_GTK_RES_INPUTS)
$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=../pixmaps --generate --c-name=gui_gtk --manual-register gui_gtk_res.xml
auto/gui_gtk_gresources.h: gui_gtk_res.xml $(GUI_GTK_RES_INPUTS)
if test -z "$(GLIB_COMPILE_RESOURCES)"; then touch $@; else \
$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=../pixmaps --generate --c-name=gui_gtk --manual-register gui_gtk_res.xml; \
fi
# All the object files are put in the "objects" directory. Since not all make
# commands understand putting object files in another directory, it must be
@@ -2751,11 +2803,14 @@ objects/if_sniff.o: if_sniff.c
$(CCC) -o $@ if_sniff.c
objects/if_tcl.o: if_tcl.c
$(CCC) -o $@ if_tcl.c
$(CCC) $(TCL_CFLAGS) -o $@ if_tcl.c
objects/integration.o: integration.c
$(CCC) -o $@ integration.c
objects/json.o: json.c
$(CCC) -o $@ json.c
objects/main.o: main.c
$(CCC) -o $@ main.c
@@ -2796,7 +2851,7 @@ objects/ops.o: ops.c
$(CCC) -o $@ ops.c
objects/option.o: option.c
$(CCC) -o $@ option.c
$(CCC) $(LUA_CFLAGS) $(PERL_CFLAGS) $(PYTHON_CFLAGS) $(PYTHON3_CFLAGS) $(RUBY_CFLAGS) $(TCL_CFLAGS) -o $@ option.c
objects/os_beos.o: os_beos.c
$(CCC) -o $@ os_beos.c
@@ -2873,6 +2928,9 @@ objects/wsdebug.o: wsdebug.c
objects/netbeans.o: netbeans.c
$(CCC) -o $@ netbeans.c
objects/channel.o: channel.c
$(CCC) -o $@ channel.c
Makefile:
@echo The name of the makefile MUST be "Makefile" (with capital M)!!!!
@@ -2964,225 +3022,219 @@ $(APPDIR)/Contents:
### Dependencies:
objects/blowfish.o: blowfish.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/buffer.o: buffer.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h version.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h version.h
objects/charset.o: charset.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/crypt.o: crypt.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/crypt_zip.o: crypt_zip.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/diff.o: diff.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/digraph.o: digraph.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/edit.o: edit.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/eval.o: eval.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h version.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h version.h
objects/ex_cmds.o: ex_cmds.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h version.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h version.h
objects/ex_cmds2.o: ex_cmds2.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h version.h
objects/ex_docmd.o: ex_docmd.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/ex_eval.o: ex_eval.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/ex_getln.o: ex_getln.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/fileio.o: fileio.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/fold.o: fold.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/getchar.o: getchar.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/hardcopy.o: hardcopy.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h version.h
objects/hashtab.o: hashtab.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/if_cscope.o: if_cscope.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h if_cscope.h
objects/if_xcmdsrv.o: if_xcmdsrv.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h version.h
objects/json.o: json.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/main.o: main.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h farsi.c arabic.c
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h farsi.c arabic.c
objects/mark.o: mark.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/memfile.o: memfile.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/memline.o: memline.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/menu.o: menu.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/message.o: message.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/misc1.o: misc1.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h version.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h version.h
objects/misc2.o: misc2.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/move.o: move.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/mbyte.o: mbyte.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/normal.o: normal.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/ops.o: ops.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h ascii.h \
keymap.h term.h macros.h option.h structs.h regexp.h gui.h gui_beval.h \
proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h arabic.h
proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h farsi.h arabic.h
objects/option.o: option.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/os_unix.o: os_unix.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h if_mzsch.h os_unixx.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h os_unixx.h
objects/pathdef.o: auto/pathdef.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/popupmnu.o: popupmnu.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/quickfix.o: quickfix.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/regexp.o: regexp.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h regexp_nfa.c
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h regexp_nfa.c
objects/screen.o: screen.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/search.o: search.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/sha256.o: sha256.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/spell.o: spell.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/syntax.o: syntax.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/tag.o: tag.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h ascii.h \
keymap.h term.h macros.h option.h structs.h regexp.h gui.h gui_beval.h \
proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h arabic.h
proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h farsi.h arabic.h
objects/term.o: term.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/ui.o: ui.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h ascii.h \
keymap.h term.h macros.h option.h structs.h regexp.h gui.h gui_beval.h \
proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h arabic.h
proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h farsi.h arabic.h
objects/undo.o: undo.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/version.o: version.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h version.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h version.h
objects/window.o: window.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/gui.o: gui.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h ascii.h \
keymap.h term.h macros.h option.h structs.h regexp.h gui.h gui_beval.h \
proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h arabic.h
proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h farsi.h arabic.h
objects/gui_gtk.o: gui_gtk.c gui_gtk_f.h vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
globals.h farsi.h arabic.h ../pixmaps/stock_icons.h
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/gui_gtk_f.o: gui_gtk_f.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h gui_gtk_f.h
objects/gui_gtk_gresources.o: auto/gui_gtk_gresources.c gui_gtk_res.xml \
../pixmaps/stock_vim_build_tags.png ../pixmaps/stock_vim_find_help.png \
../pixmaps/stock_vim_save_all.png ../pixmaps/stock_vim_session_load.png \
../pixmaps/stock_vim_session_new.png ../pixmaps/stock_vim_session_save.png \
../pixmaps/stock_vim_shell.png ../pixmaps/stock_vim_window_maximize.png \
../pixmaps/stock_vim_window_maximize_width.png \
../pixmaps/stock_vim_window_minimize.png \
../pixmaps/stock_vim_window_minimize_width.png \
../pixmaps/stock_vim_window_split.png \
../pixmaps/stock_vim_window_split_vertical.png
objects/gui_motif.o: gui_motif.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h gui_xmebw.h ../pixmaps/alert.xpm \
../pixmaps/error.xpm ../pixmaps/generic.xpm ../pixmaps/info.xpm \
../pixmaps/quest.xpm gui_x11_pm.h ../pixmaps/tb_new.xpm \
@@ -3203,15 +3255,15 @@ objects/gui_motif.o: gui_motif.c vim.h auto/config.h feature.h os_unix.h \
../pixmaps/tb_minwidth.xpm
objects/gui_xmdlg.o: gui_xmdlg.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/gui_xmebw.o: gui_xmebw.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h gui_xmebwp.h gui_xmebw.h
objects/gui_athena.o: gui_athena.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h gui_at_sb.h gui_x11_pm.h \
../pixmaps/tb_new.xpm ../pixmaps/tb_open.xpm ../pixmaps/tb_close.xpm \
../pixmaps/tb_save.xpm ../pixmaps/tb_print.xpm ../pixmaps/tb_cut.xpm \
@@ -3230,83 +3282,88 @@ objects/gui_athena.o: gui_athena.c vim.h auto/config.h feature.h os_unix.h \
../pixmaps/tb_minwidth.xpm
objects/gui_gtk_x11.o: gui_gtk_x11.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
globals.h farsi.h arabic.h gui_gtk_f.h ../runtime/vim32x32.xpm \
../runtime/vim16x16.xpm ../runtime/vim48x48.xpm $(GRESOURCE_HDR)
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h auto/gui_gtk_gresources.h gui_gtk_f.h \
../runtime/vim32x32.xpm ../runtime/vim16x16.xpm ../runtime/vim48x48.xpm
objects/gui_x11.o: gui_x11.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h ../runtime/vim32x32.xpm ../runtime/vim16x16.xpm \
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h ../runtime/vim32x32.xpm ../runtime/vim16x16.xpm \
../runtime/vim48x48.xpm
objects/gui_at_sb.o: gui_at_sb.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h gui_at_sb.h
objects/gui_at_fs.o: gui_at_fs.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h gui_at_sb.h
objects/pty.o: pty.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h ascii.h \
keymap.h term.h macros.h option.h structs.h regexp.h gui.h gui_beval.h \
proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h arabic.h
proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h farsi.h arabic.h
objects/memfile_test.o: memfile_test.c main.c vim.h auto/config.h feature.h \
os_unix.h auto/osdef.h ascii.h keymap.h term.h macros.h option.h \
structs.h regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h \
proto.h globals.h farsi.h arabic.h farsi.c arabic.c memfile.c
structs.h regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h \
ex_cmds.h proto.h globals.h farsi.h arabic.h farsi.c arabic.c memfile.c
objects/hangulin.o: hangulin.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/if_lua.o: if_lua.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/if_mzsch.o: if_mzsch.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
globals.h farsi.h arabic.h if_mzsch.h mzscheme_base.c
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h if_mzsch.h
objects/if_perl.o: auto/if_perl.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/if_perlsfio.o: if_perlsfio.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/if_python.o: if_python.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h if_py_both.h
objects/if_python3.o: if_python3.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h if_py_both.h
objects/if_tcl.o: if_tcl.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/if_ruby.o: if_ruby.c auto/config.h vim.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
arabic.h version.h
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h version.h
objects/if_sniff.o: if_sniff.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h os_unixx.h
objects/gui_beval.o: gui_beval.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h
objects/workshop.o: workshop.c auto/config.h integration.h vim.h feature.h \
os_unix.h auto/osdef.h ascii.h keymap.h term.h macros.h option.h \
structs.h regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h \
proto.h globals.h farsi.h arabic.h version.h workshop.h
structs.h regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h \
ex_cmds.h proto.h globals.h farsi.h arabic.h version.h workshop.h
objects/wsdebug.o: wsdebug.c
objects/integration.o: integration.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h integration.h
objects/netbeans.o: netbeans.c vim.h auto/config.h feature.h os_unix.h \
auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
regexp.h gui.h gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h \
globals.h farsi.h arabic.h version.h
objects/channel.o: channel.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro alloc.h ex_cmds.h proto.h globals.h \
farsi.h arabic.h
objects/gui_gtk_gresources.o: auto/gui_gtk_gresources.c

21
src/alloc.h Normal file
View File

@@ -0,0 +1,21 @@
/* vi:set ts=8 sts=4 sw=4:
*
* VIM - Vi IMproved by Bram Moolenaar
*
* Do ":help uganda" in Vim to read copying and usage conditions.
* Do ":help credits" in Vim to see a list of people who contributed.
*/
/*
* alloc.h: enumeration of alloc IDs.
* Each entry must be on exactly one line, GetAllocId() depends on that.
*/
typedef enum {
aid_none = 0,
aid_qf_dirname_start,
aid_qf_dirname_now,
aid_qf_namebuf,
aid_qf_errmsg,
aid_qf_pattern,
aid_last,
} alloc_id_T;

View File

@@ -18,33 +18,32 @@
*
*/
static int A_is_a __ARGS((int cur_c));
static int A_is_s __ARGS((int cur_c));
static int A_is_f __ARGS((int cur_c));
static int chg_c_a2s __ARGS((int cur_c));
static int chg_c_a2i __ARGS((int cur_c));
static int chg_c_a2m __ARGS((int cur_c));
static int chg_c_a2f __ARGS((int cur_c));
static int chg_c_i2m __ARGS((int cur_c));
static int chg_c_f2m __ARGS((int cur_c));
static int chg_c_laa2i __ARGS((int hid_c));
static int chg_c_laa2f __ARGS((int hid_c));
static int half_shape __ARGS((int c));
static int A_firstc_laa __ARGS((int c1, int c));
static int A_is_harakat __ARGS((int c));
static int A_is_iso __ARGS((int c));
static int A_is_formb __ARGS((int c));
static int A_is_ok __ARGS((int c));
static int A_is_valid __ARGS((int c));
static int A_is_special __ARGS((int c));
static int A_is_a(int cur_c);
static int A_is_s(int cur_c);
static int A_is_f(int cur_c);
static int chg_c_a2s(int cur_c);
static int chg_c_a2i(int cur_c);
static int chg_c_a2m(int cur_c);
static int chg_c_a2f(int cur_c);
static int chg_c_i2m(int cur_c);
static int chg_c_f2m(int cur_c);
static int chg_c_laa2i(int hid_c);
static int chg_c_laa2f(int hid_c);
static int half_shape(int c);
static int A_firstc_laa(int c1, int c);
static int A_is_harakat(int c);
static int A_is_iso(int c);
static int A_is_formb(int c);
static int A_is_ok(int c);
static int A_is_valid(int c);
static int A_is_special(int c);
/*
* Returns True if c is an ISO-8859-6 shaped ARABIC letter (user entered)
*/
static int
A_is_a(cur_c)
int cur_c;
A_is_a(int cur_c)
{
switch (cur_c)
{
@@ -96,8 +95,7 @@ A_is_a(cur_c)
* Returns True if c is an Isolated Form-B ARABIC letter
*/
static int
A_is_s(cur_c)
int cur_c;
A_is_s(int cur_c)
{
switch (cur_c)
{
@@ -148,8 +146,7 @@ A_is_s(cur_c)
* Returns True if c is a Final shape of an ARABIC letter
*/
static int
A_is_f(cur_c)
int cur_c;
A_is_f(int cur_c)
{
switch (cur_c)
{
@@ -202,8 +199,7 @@ A_is_f(cur_c)
* Change shape - from ISO-8859-6/Isolated to Form-B Isolated
*/
static int
chg_c_a2s(cur_c)
int cur_c;
chg_c_a2s(int cur_c)
{
int tempc;
@@ -332,8 +328,7 @@ chg_c_a2s(cur_c)
* Change shape - from ISO-8859-6/Isolated to Initial
*/
static int
chg_c_a2i(cur_c)
int cur_c;
chg_c_a2i(int cur_c)
{
int tempc;
@@ -462,8 +457,7 @@ chg_c_a2i(cur_c)
* Change shape - from ISO-8859-6/Isolated to Medial
*/
static int
chg_c_a2m(cur_c)
int cur_c;
chg_c_a2m(int cur_c)
{
int tempc;
@@ -592,8 +586,7 @@ chg_c_a2m(cur_c)
* Change shape - from ISO-8859-6/Isolated to final
*/
static int
chg_c_a2f(cur_c)
int cur_c;
chg_c_a2f(int cur_c)
{
int tempc;
@@ -732,8 +725,7 @@ chg_c_a2f(cur_c)
* Change shape - from Initial to Medial
*/
static int
chg_c_i2m(cur_c)
int cur_c;
chg_c_i2m(int cur_c)
{
int tempc;
@@ -820,8 +812,7 @@ chg_c_i2m(cur_c)
* Change shape - from Final to Medial
*/
static int
chg_c_f2m(cur_c)
int cur_c;
chg_c_f2m(int cur_c)
{
int tempc;
@@ -930,8 +921,7 @@ chg_c_f2m(cur_c)
* Change shape - from Combination (2 char) to an Isolated
*/
static int
chg_c_laa2i(hid_c)
int hid_c;
chg_c_laa2i(int hid_c)
{
int tempc;
@@ -961,8 +951,7 @@ chg_c_laa2i(hid_c)
* Change shape - from Combination-Isolated to Final
*/
static int
chg_c_laa2f(hid_c)
int hid_c;
chg_c_laa2f(int hid_c)
{
int tempc;
@@ -991,8 +980,7 @@ chg_c_laa2f(hid_c)
* Do "half-shaping" on character "c". Return zero if no shaping.
*/
static int
half_shape(c)
int c;
half_shape(int c)
{
if (A_is_a(c))
return chg_c_a2i(c);
@@ -1011,13 +999,13 @@ half_shape(c)
* in: "next_c" is the next character (not shaped).
*/
int
arabic_shape(c, ccp, c1p, prev_c, prev_c1, next_c)
int c;
int *ccp;
int *c1p;
int prev_c;
int prev_c1;
int next_c;
arabic_shape(
int c,
int *ccp,
int *c1p,
int prev_c,
int prev_c1,
int next_c)
{
int curr_c;
int shape_c;
@@ -1082,9 +1070,9 @@ arabic_shape(c, ccp, c1p, prev_c, prev_c1, next_c)
* A_firstc_laa returns first character of LAA combination if it exists
*/
static int
A_firstc_laa(c, c1)
int c; /* base character */
int c1; /* first composing character */
A_firstc_laa(
int c, /* base character */
int c1) /* first composing character */
{
if (c1 != NUL && c == a_LAM && !A_is_harakat(c1))
return c1;
@@ -1097,8 +1085,7 @@ A_firstc_laa(c, c1)
* (harakat/tanween)
*/
static int
A_is_harakat(c)
int c;
A_is_harakat(int c)
{
return (c >= a_FATHATAN && c <= a_SUKUN);
}
@@ -1109,8 +1096,7 @@ A_is_harakat(c)
* (alphabet/number/punctuation)
*/
static int
A_is_iso(c)
int c;
A_is_iso(int c)
{
return ((c >= a_HAMZA && c <= a_GHAIN)
|| (c >= a_TATWEEL && c <= a_HAMZA_BELOW)
@@ -1123,8 +1109,7 @@ A_is_iso(c)
* (alphabet/number/punctuation)
*/
static int
A_is_formb(c)
int c;
A_is_formb(int c)
{
return ((c >= a_s_FATHATAN && c <= a_s_DAMMATAN)
|| c == a_s_KASRATAN
@@ -1137,8 +1122,7 @@ A_is_formb(c)
* A_is_ok returns TRUE if 'c' is an Arabic 10646 (8859-6 or Form-B)
*/
static int
A_is_ok(c)
int c;
A_is_ok(int c)
{
return (A_is_iso(c) || A_is_formb(c));
}
@@ -1149,8 +1133,7 @@ A_is_ok(c)
* with some exceptions/exclusions
*/
static int
A_is_valid(c)
int c;
A_is_valid(int c)
{
return (A_is_ok(c) && !A_is_special(c));
}
@@ -1161,8 +1144,7 @@ A_is_valid(c)
* Specials don't adhere to most of the rules.
*/
static int
A_is_special(c)
int c;
A_is_special(int c)
{
return (c == a_HAMZA || c == a_s_HAMZA);
}

305
src/auto/configure vendored
View File

@@ -638,7 +638,6 @@ NARROW_PROTO
MOTIF_LIBNAME
GRESOURCE_OBJ
GRESOURCE_SRC
GRESOURCE_HDR
GLIB_COMPILE_RESOURCES
GNOME_INCLUDEDIR
GNOME_LIBDIR
@@ -656,6 +655,8 @@ XMKMF
xmkmfpath
SNIFF_OBJ
SNIFF_SRC
CHANNEL_OBJ
CHANNEL_SRC
NETBEANS_OBJ
NETBEANS_SRC
WORKSHOP_OBJ
@@ -810,6 +811,7 @@ with_ruby_command
enable_cscope
enable_workshop
enable_netbeans
enable_channel
enable_sniff
enable_multibyte
enable_hangulinput
@@ -1468,11 +1470,12 @@ Optional Features:
--enable-perlinterp=OPTS Include Perl interpreter. default=no OPTS=no/yes/dynamic
--enable-pythoninterp=OPTS Include Python interpreter. default=no OPTS=no/yes/dynamic
--enable-python3interp=OPTS Include Python3 interpreter. default=no OPTS=no/yes/dynamic
--enable-tclinterp Include Tcl interpreter.
--enable-tclinterp=OPTS Include Tcl interpreter. default=no OPTS=no/yes/dynamic
--enable-rubyinterp=OPTS Include Ruby interpreter. default=no OPTS=no/yes/dynamic
--enable-cscope Include cscope interface.
--enable-workshop Include Sun Visual Workshop support.
--disable-netbeans Disable NetBeans integration support.
--disable-channel Disable process communication support.
--enable-sniff Include Sniff interface.
--enable-multibyte Include multibyte editing support.
--enable-hangulinput Include Hangul input support.
@@ -4763,8 +4766,8 @@ if test "${with_features+set}" = set; then :
withval=$with_features; features="$withval"; { $as_echo "$as_me:${as_lineno-$LINENO}: result: $features" >&5
$as_echo "$features" >&6; }
else
features="normal"; { $as_echo "$as_me:${as_lineno-$LINENO}: result: Defaulting to normal" >&5
$as_echo "Defaulting to normal" >&6; }
features="huge"; { $as_echo "$as_me:${as_lineno-$LINENO}: result: Defaulting to huge" >&5
$as_echo "Defaulting to huge" >&6; }
fi
@@ -4854,6 +4857,10 @@ fi
$as_echo "$enable_luainterp" >&6; }
if test "$enable_luainterp" = "yes" -o "$enable_luainterp" = "dynamic"; then
if test "x$features" = "xtiny" -o "x$features" = "xsmall"; then
as_fn_error $? "cannot use Lua with tiny or small features" "$LINENO" 5
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-lua-prefix argument" >&5
@@ -5207,6 +5214,7 @@ fi
if test "X$with_plthome" != "X"; then
vi_cv_path_mzscheme_pfx="$with_plthome"
vi_cv_path_mzscheme="${vi_cv_path_mzscheme_pfx}/bin/mzscheme"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking PLTHOME environment var" >&5
$as_echo_n "checking PLTHOME environment var... " >&6; }
@@ -5214,6 +5222,7 @@ $as_echo_n "checking PLTHOME environment var... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: \"$PLTHOME\"" >&5
$as_echo "\"$PLTHOME\"" >&6; }
vi_cv_path_mzscheme_pfx="$PLTHOME"
vi_cv_path_mzscheme="${vi_cv_path_mzscheme_pfx}/bin/mzscheme"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not set" >&5
$as_echo "not set" >&6; }
@@ -5285,54 +5294,63 @@ $as_echo "$vi_cv_path_mzscheme_pfx" >&6; }
fi
fi
SCHEME_INC=
if test "X$vi_cv_path_mzscheme_pfx" != "X"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include" >&5
$as_echo_n "checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include... " >&6; }
if test -f "$vi_cv_path_mzscheme_pfx/include/scheme.h"; then
SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for racket include directory" >&5
$as_echo_n "checking for racket include directory... " >&6; }
SCHEME_INC=`${vi_cv_path_mzscheme} -e '(require setup/dirs)(let ((p (find-include-dir))) (when (path? p) (display p)))'`
if test "X$SCHEME_INC" != "X"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${SCHEME_INC}" >&5
$as_echo "${SCHEME_INC}" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/plt" >&5
$as_echo_n "checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/plt... " >&6; }
if test -f "$vi_cv_path_mzscheme_pfx/include/plt/scheme.h"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
$as_echo "not found" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include" >&5
$as_echo_n "checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include... " >&6; }
if test -f "$vi_cv_path_mzscheme_pfx/include/scheme.h"; then
SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include/plt
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/racket" >&5
$as_echo_n "checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/racket... " >&6; }
if test -f "$vi_cv_path_mzscheme_pfx/include/racket/scheme.h"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/plt" >&5
$as_echo_n "checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/plt... " >&6; }
if test -f "$vi_cv_path_mzscheme_pfx/include/plt/scheme.h"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include/racket
SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include/plt
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if scheme.h can be found in /usr/include/plt/" >&5
$as_echo_n "checking if scheme.h can be found in /usr/include/plt/... " >&6; }
if test -f /usr/include/plt/scheme.h; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/racket" >&5
$as_echo_n "checking if scheme.h can be found in $vi_cv_path_mzscheme_pfx/include/racket... " >&6; }
if test -f "$vi_cv_path_mzscheme_pfx/include/racket/scheme.h"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
SCHEME_INC=/usr/include/plt
SCHEME_INC=${vi_cv_path_mzscheme_pfx}/include/racket
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if scheme.h can be found in /usr/include/racket/" >&5
$as_echo_n "checking if scheme.h can be found in /usr/include/racket/... " >&6; }
if test -f /usr/include/racket/scheme.h; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if scheme.h can be found in /usr/include/plt/" >&5
$as_echo_n "checking if scheme.h can be found in /usr/include/plt/... " >&6; }
if test -f /usr/include/plt/scheme.h; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
SCHEME_INC=/usr/include/racket
SCHEME_INC=/usr/include/plt
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
vi_cv_path_mzscheme_pfx=
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if scheme.h can be found in /usr/include/racket/" >&5
$as_echo_n "checking if scheme.h can be found in /usr/include/racket/... " >&6; }
if test -f /usr/include/racket/scheme.h; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
SCHEME_INC=/usr/include/racket
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
vi_cv_path_mzscheme_pfx=
fi
fi
fi
fi
@@ -5341,52 +5359,101 @@ $as_echo "no" >&6; }
fi
if test "X$vi_cv_path_mzscheme_pfx" != "X"; then
if test "x$MACOSX" = "xyes"; then
MZSCHEME_LIBS="-framework Racket"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"; then
MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libracket3m.a"; then
MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libracket3m.a"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libracket.a"; then
MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libracket.a ${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"
elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme.a"; then
MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme.a ${vi_cv_path_mzscheme_pfx}/lib/libmzgc.a"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for racket lib directory" >&5
$as_echo_n "checking for racket lib directory... " >&6; }
SCHEME_LIB=`${vi_cv_path_mzscheme} -e '(require setup/dirs)(let ((p (find-lib-dir))) (when (path? p) (display p)))'`
if test "X$SCHEME_LIB" != "X"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${SCHEME_LIB}" >&5
$as_echo "${SCHEME_LIB}" >&6; }
else
if test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.so"; then
MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lmzscheme3m"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libracket3m.so"; then
MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lracket3m"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libracket.so"; then
MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lracket -lmzgc"
else
MZSCHEME_LIBS="-L${vi_cv_path_mzscheme_pfx}/lib -lmzscheme -lmzgc"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
$as_echo "not found" >&6; }
fi
for path in "${vi_cv_path_mzscheme_pfx}/lib" "${SCHEME_LIB}"; do
if test "X$path" != "X"; then
if test "x$MACOSX" = "xyes"; then
MZSCHEME_LIBS="-framework Racket"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${path}/libmzscheme3m.a"; then
MZSCHEME_LIBS="${path}/libmzscheme3m.a"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${path}/libracket3m.a"; then
MZSCHEME_LIBS="${path}/libracket3m.a"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${path}/libracket.a"; then
MZSCHEME_LIBS="${path}/libracket.a ${path}/libmzgc.a"
elif test -f "${path}/libmzscheme.a"; then
MZSCHEME_LIBS="${path}/libmzscheme.a ${path}/libmzgc.a"
else
if test -f "${path}/libmzscheme3m.so"; then
MZSCHEME_LIBS="-L${path} -lmzscheme3m"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${path}/libracket3m.so"; then
MZSCHEME_LIBS="-L${path} -lracket3m"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${path}/libracket.so"; then
MZSCHEME_LIBS="-L${path} -lracket -lmzgc"
else
if test "$path" != "$SCHEME_LIB"; then
continue
fi
MZSCHEME_LIBS="-L${path} -lmzscheme -lmzgc"
fi
if test "$GCC" = yes; then
MZSCHEME_LIBS="${MZSCHEME_LIBS} -Wl,-rpath -Wl,${path}"
elif test "`(uname) 2>/dev/null`" = SunOS &&
uname -r | grep '^5' >/dev/null; then
MZSCHEME_LIBS="${MZSCHEME_LIBS} -R ${path}"
fi
fi
fi
if test "$GCC" = yes; then
MZSCHEME_LIBS="${MZSCHEME_LIBS} -Wl,-rpath -Wl,${vi_cv_path_mzscheme_pfx}/lib"
elif test "`(uname) 2>/dev/null`" = SunOS &&
uname -r | grep '^5' >/dev/null; then
MZSCHEME_LIBS="${MZSCHEME_LIBS} -R ${vi_cv_path_mzscheme_pfx}/lib"
if test "X$MZSCHEME_LIBS" != "X"; then
break
fi
done
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if racket requires -pthread" >&5
$as_echo_n "checking if racket requires -pthread... " >&6; }
if test "X$SCHEME_LIB" != "X" && $FGREP -e -pthread "$SCHEME_LIB/buildinfo" >/dev/null ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
MZSCHEME_LIBS="${MZSCHEME_LIBS} -pthread"
MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -pthread"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for racket config directory" >&5
$as_echo_n "checking for racket config directory... " >&6; }
SCHEME_CONFIGDIR=`${vi_cv_path_mzscheme} -e '(require setup/dirs)(let ((p (find-config-dir))) (when (path? p) (display p)))'`
if test "X$SCHEME_CONFIGDIR" != "X"; then
MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -DMZSCHEME_CONFIGDIR='\"${SCHEME_CONFIGDIR}\"'"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${SCHEME_CONFIGDIR}" >&5
$as_echo "${SCHEME_CONFIGDIR}" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
$as_echo "not found" >&6; }
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for racket collects directory" >&5
$as_echo_n "checking for racket collects directory... " >&6; }
if test -d "$vi_cv_path_mzscheme_pfx/lib/plt/collects"; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/plt/
else
if test -d "$vi_cv_path_mzscheme_pfx/lib/racket/collects"; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/racket/
SCHEME_COLLECTS=`${vi_cv_path_mzscheme} -e '(require setup/dirs)(let ((p (find-collects-dir))) (when (path? p) (let-values (((base _1 _2) (split-path p))) (display base))))'`
if test "X$SCHEME_COLLECTS" = "X"; then
if test -d "$vi_cv_path_mzscheme_pfx/lib/plt/collects"; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/plt/
else
if test -d "$vi_cv_path_mzscheme_pfx/share/racket/collects"; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/share/racket/
if test -d "$vi_cv_path_mzscheme_pfx/lib/racket/collects"; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/racket/
else
if test -d "$vi_cv_path_mzscheme_pfx/collects"; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/
if test -d "$vi_cv_path_mzscheme_pfx/share/racket/collects"; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/share/racket/
else
if test -d "$vi_cv_path_mzscheme_pfx/collects"; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/
fi
fi
fi
fi
@@ -5420,7 +5487,6 @@ $as_echo_n "checking for mzscheme_base.c... " >&6; }
fi
if test "X$MZSCHEME_EXTRA" != "X" ; then
MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -DINCLUDE_MZSCHEME_BASE"
MZSCHEME_MZC="${vi_cv_path_mzscheme_pfx}/bin/mzc"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: needed" >&5
$as_echo "needed" >&6; }
else
@@ -5535,6 +5601,9 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_perlinterp" >&5
$as_echo "$enable_perlinterp" >&6; }
if test "$enable_perlinterp" = "yes" -o "$enable_perlinterp" = "dynamic"; then
if test "x$features" = "xtiny" -o "x$features" = "xsmall"; then
as_fn_error $? "cannot use Perl with tiny or small features" "$LINENO" 5
fi
# Extract the first word of "perl", so it can be a program name with args.
set dummy perl; ac_word=$2
@@ -5928,7 +5997,9 @@ eof
fi
if ${vi_cv_dll_name_python+:} false; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Python's dll name" >&5
$as_echo_n "checking Python's dll name... " >&6; }
if ${vi_cv_dll_name_python+:} false; then :
$as_echo_n "(cached) " >&6
else
@@ -5939,7 +6010,8 @@ else
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $vi_cv_dll_name_python" >&5
$as_echo "$vi_cv_dll_name_python" >&6; }
PYTHON_LIBS="${vi_cv_path_python_plibs}"
if test "${vi_cv_path_python_pfx}" = "${vi_cv_path_python_epfx}"; then
@@ -6257,7 +6329,9 @@ eof
fi
if ${vi_cv_dll_name_python3+:} false; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Python3's dll name" >&5
$as_echo_n "checking Python3's dll name... " >&6; }
if ${vi_cv_dll_name_python3+:} false; then :
$as_echo_n "(cached) " >&6
else
@@ -6268,7 +6342,8 @@ else
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $vi_cv_dll_name_python3" >&5
$as_echo "$vi_cv_dll_name_python3" >&6; }
PYTHON3_LIBS="${vi_cv_path_python3_plibs}"
if test "${vi_cv_path_python3_pfx}" = "${vi_cv_path_python3_epfx}"; then
@@ -6410,7 +6485,7 @@ else
int no_rtl_global_needed_for(char *python_instsoname, char *prefix)
{
int needed = 0;
void* pylib = dlopen(python_instsoname, RTLD_LAZY);
void* pylib = dlopen(python_instsoname, RTLD_LAZY|RTLD_LOCAL);
if (pylib != 0)
{
void (*pfx)(char *home) = dlsym(pylib, "Py_SetPythonHome");
@@ -6476,7 +6551,7 @@ else
int no_rtl_global_needed_for(char *python_instsoname, wchar_t *prefix)
{
int needed = 0;
void* pylib = dlopen(python_instsoname, RTLD_LAZY);
void* pylib = dlopen(python_instsoname, RTLD_LAZY|RTLD_LOCAL);
if (pylib != 0)
{
void (*pfx)(wchar_t *home) = dlsym(pylib, "Py_SetPythonHome");
@@ -6616,7 +6691,7 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_tclinterp" >&5
$as_echo "$enable_tclinterp" >&6; }
if test "$enable_tclinterp" = "yes"; then
if test "$enable_tclinterp" = "yes" -o "$enable_tclinterp" = "dynamic"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking --with-tclsh argument" >&5
$as_echo_n "checking --with-tclsh argument... " >&6; }
@@ -6852,6 +6927,7 @@ $as_echo_n "checking Tcl version... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $tclver - OK" >&5
$as_echo "$tclver - OK" >&6; };
tclloc=`echo 'set l [info library];set i [string last lib $l];incr i -2;puts [string range $l 0 $i]' | $vi_cv_path_tcl -`
tcldll=`echo 'puts libtcl[info tclversion][info sharedlibextension]' | $vi_cv_path_tcl -`
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of Tcl include" >&5
$as_echo_n "checking for location of Tcl include... " >&6; }
@@ -6888,7 +6964,11 @@ $as_echo_n "checking for location of tclConfig.sh script... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $try/tclConfig.sh" >&5
$as_echo "$try/tclConfig.sh" >&6; }
. "$try/tclConfig.sh"
TCL_LIBS=`eval echo "$TCL_LIB_SPEC $TCL_LIBS"`
if test "$enable_tclinterp" = "dynamic"; then
TCL_LIBS=`eval echo "$TCL_STUB_LIB_SPEC $TCL_LIBS"`
else
TCL_LIBS=`eval echo "$TCL_LIB_SPEC $TCL_LIBS"`
fi
TCL_DEFS=`echo $TCL_DEFS | sed -e 's/\\\\ /\\\\X/g' | tr ' ' '\012' | sed -e '/^[^-]/d' -e '/^-[^D]/d' -e '/-D[^_]/d' -e 's/-D_/ -D_/' | tr '\012' ' ' | sed -e 's/\\\\X/\\\\ /g'`
break
fi
@@ -6937,6 +7017,13 @@ $as_echo "<not found>" >&6; }
$as_echo "too old; need Tcl version 8.0 or later" >&6; }
fi
fi
if test "$enable_tclinterp" = "dynamic"; then
if test "X$TCL_SRC" != "X" -a "X$tcldll" != "X"; then
$as_echo "#define DYNAMIC_TCL 1" >>confdefs.h
TCL_CFLAGS="-DDYNAMIC_TCL_DLL=\\\"$tcldll\\\" -DDYNAMIC_TCL_VER=\\\"$tclver\\\" $TCL_CFLAGS"
fi
fi
if test "$fail_if_missing" = "yes" -a -z "$TCL_SRC"; then
as_fn_error $? "could not configure Tcl" "$LINENO" 5
fi
@@ -7154,8 +7241,49 @@ else
fi
if test "$enable_netbeans" = "yes"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
if test "x$features" = "xtiny" -o "x$features" = "xsmall"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot use NetBeans with tiny or small features" >&5
$as_echo "cannot use NetBeans with tiny or small features" >&6; }
enable_netbeans="no"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking --disable-channel argument" >&5
$as_echo_n "checking --disable-channel argument... " >&6; }
# Check whether --enable-channel was given.
if test "${enable_channel+set}" = set; then :
enableval=$enable_channel;
else
enable_channel="yes"
fi
if test "$enable_channel" = "yes"; then
if test "x$features" = "xtiny" -o "x$features" = "xsmall"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot use channels with tiny or small features" >&5
$as_echo "cannot use channels with tiny or small features" >&6; }
enable_channel="no"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
else
if test "$enable_netbeans" = "yes"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, netbeans also disabled" >&5
$as_echo "yes, netbeans also disabled" >&6; }
enable_netbeans="no"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
fi
fi
if test "$enable_channel" = "yes"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for socket in -lsocket" >&5
$as_echo_n "checking for socket in -lsocket... " >&6; }
if ${ac_cv_lib_socket_socket+:} false; then :
@@ -7246,8 +7374,8 @@ _ACEOF
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiling netbeans integration is possible" >&5
$as_echo_n "checking whether compiling netbeans integration is possible... " >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiling with process communication is possible" >&5
$as_echo_n "checking whether compiling with process communication is possible... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -7287,13 +7415,10 @@ if ac_fn_c_try_link "$LINENO"; then :
$as_echo "yes" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }; enable_netbeans="no"
$as_echo "no" >&6; }; enable_netbeans="no"; enable_channel="no"
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
fi
if test "$enable_netbeans" = "yes"; then
$as_echo "#define FEAT_NETBEANS_INTG 1" >>confdefs.h
@@ -7302,6 +7427,14 @@ if test "$enable_netbeans" = "yes"; then
NETBEANS_OBJ="objects/netbeans.o"
fi
if test "$enable_channel" = "yes"; then
$as_echo "#define FEAT_CHANNEL 1" >>confdefs.h
CHANNEL_SRC="channel.c"
CHANNEL_OBJ="objects/channel.o"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking --enable-sniff argument" >&5
@@ -8919,7 +9052,7 @@ $as_echo_n "checking version of Gdk-Pixbuf... " >&6; }
gdk_pixbuf_version_minor=`echo $gdk_pixbuf_version | \
sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\)\.[0-9][0-9]*/\1/'`
if test "x$gdk_pixbuf_version_minor" != x -a \
$gdk_pixbuf_version_minor -ge 32 ; then
$gdk_pixbuf_version_minor -ge 31 ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: OK." >&5
$as_echo "OK." >&6; }
# Extract the first word of "glib-compile-resources", so it can be a program name with args.
@@ -8973,7 +9106,6 @@ $as_echo "cannot be found in PATH." >&6; }
$as_echo "usable." >&6; }
$as_echo "#define USE_GRESOURCE 1" >>confdefs.h
GRESOURCE_HDR="auto/gui_gtk_gresources.h"
GRESOURCE_SRC="auto/gui_gtk_gresources.c"
GRESOURCE_OBJ="objects/gui_gtk_gresources.o"
fi
@@ -8991,7 +9123,6 @@ fi
if test -z "$SKIP_MOTIF"; then
gui_XXX="/usr/XXX/Motif* /usr/Motif*/XXX /usr/XXX /usr/shlib /usr/X11*/XXX /usr/XXX/X11* /usr/dt/XXX /local/Motif*/XXX /local/XXX/Motif* /usr/local/Motif*/XXX /usr/local/XXX/Motif* /usr/local/XXX /usr/local/X11*/XXX /usr/local/LessTif/Motif*/XXX $MOTIFHOME/XXX"
GUI_INC_LOC="`echo $GUI_INC_LOC|sed 's%-I%%g'`"
@@ -9949,7 +10080,7 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
for ac_header in stdarg.h stdint.h stdlib.h string.h \
for ac_header in stdint.h stdlib.h string.h \
sys/select.h sys/utsname.h termcap.h fcntl.h \
sgtty.h sys/ioctl.h sys/time.h sys/types.h \
termio.h iconv.h inttypes.h langinfo.h math.h \

View File

@@ -56,12 +56,12 @@ typedef struct {
} bf_state_T;
static void bf_e_block __ARGS((bf_state_T *state, UINT32_T *p_xl, UINT32_T *p_xr));
static void bf_e_cblock __ARGS((bf_state_T *state, char_u *block));
static int bf_check_tables __ARGS((UINT32_T pax[18], UINT32_T sbx[4][256], UINT32_T val));
static int bf_self_test __ARGS((void));
static void bf_key_init __ARGS((bf_state_T *state, char_u *password, char_u *salt, int salt_len));
static void bf_cfb_init __ARGS((bf_state_T *state, char_u *seed, int seed_len));
static void bf_e_block(bf_state_T *state, UINT32_T *p_xl, UINT32_T *p_xr);
static void bf_e_cblock(bf_state_T *state, char_u *block);
static int bf_check_tables(UINT32_T pax[18], UINT32_T sbx[4][256], UINT32_T val);
static int bf_self_test(void);
static void bf_key_init(bf_state_T *state, char_u *password, char_u *salt, int salt_len);
static void bf_cfb_init(bf_state_T *state, char_u *seed, int seed_len);
/* Blowfish code */
static UINT32_T pax_init[18] = {
@@ -348,10 +348,10 @@ static UINT32_T sbx_init[4][256] = {
bfs->sbx[3][xr & 0xFF];
static void
bf_e_block(bfs, p_xl, p_xr)
bf_state_T *bfs;
UINT32_T *p_xl;
UINT32_T *p_xr;
bf_e_block(
bf_state_T *bfs,
UINT32_T *p_xl,
UINT32_T *p_xr)
{
UINT32_T temp;
UINT32_T xl = *p_xl;
@@ -384,9 +384,9 @@ bf_e_block(bfs, p_xl, p_xr)
#endif
static void
bf_e_cblock(bfs, block)
bf_state_T *bfs;
char_u *block;
bf_e_cblock(
bf_state_T *bfs,
char_u *block)
{
block8 bk;
@@ -404,11 +404,11 @@ bf_e_cblock(bfs, block)
* "salt[salt_len]" as the salt.
*/
static void
bf_key_init(bfs, password, salt, salt_len)
bf_state_T *bfs;
char_u *password;
char_u *salt;
int salt_len;
bf_key_init(
bf_state_T *bfs,
char_u *password,
char_u *salt,
int salt_len)
{
int i, j, keypos = 0;
unsigned u;
@@ -470,10 +470,10 @@ bf_key_init(bfs, password, salt, salt_len)
* Blowfish self-test for corrupted tables or instructions.
*/
static int
bf_check_tables(pax, sbx, val)
UINT32_T pax[18];
UINT32_T sbx[4][256];
UINT32_T val;
bf_check_tables(
UINT32_T pax[18],
UINT32_T sbx[4][256],
UINT32_T val)
{
int i, j;
UINT32_T c = 0;
@@ -514,7 +514,7 @@ static struct_bf_test_data bf_test_data[] = {
* Return FAIL when there is something wrong with blowfish encryption.
*/
static int
bf_self_test()
bf_self_test(void)
{
int i, bn;
int err = 0;
@@ -566,10 +566,10 @@ bf_self_test()
* Initialize with seed "seed[seed_len]".
*/
static void
bf_cfb_init(bfs, seed, seed_len)
bf_state_T *bfs;
char_u *seed;
int seed_len;
bf_cfb_init(
bf_state_T *bfs,
char_u *seed,
int seed_len)
{
int i, mi;
@@ -602,11 +602,11 @@ bf_cfb_init(bfs, seed, seed_len)
* "from" and "to" can be equal to encrypt in place.
*/
void
crypt_blowfish_encode(state, from, len, to)
cryptstate_T *state;
char_u *from;
size_t len;
char_u *to;
crypt_blowfish_encode(
cryptstate_T *state,
char_u *from,
size_t len,
char_u *to)
{
bf_state_T *bfs = state->method_state;
size_t i;
@@ -625,11 +625,11 @@ crypt_blowfish_encode(state, from, len, to)
* Decrypt "from[len]" into "to[len]".
*/
void
crypt_blowfish_decode(state, from, len, to)
cryptstate_T *state;
char_u *from;
size_t len;
char_u *to;
crypt_blowfish_decode(
cryptstate_T *state,
char_u *from,
size_t len,
char_u *to)
{
bf_state_T *bfs = state->method_state;
size_t i;
@@ -644,13 +644,13 @@ crypt_blowfish_decode(state, from, len, to)
}
void
crypt_blowfish_init(state, key, salt, salt_len, seed, seed_len)
cryptstate_T *state;
char_u* key;
char_u* salt;
int salt_len;
char_u* seed;
int seed_len;
crypt_blowfish_init(
cryptstate_T *state,
char_u* key,
char_u* salt,
int salt_len,
char_u* seed,
int seed_len)
{
bf_state_T *bfs = (bf_state_T *)alloc_clear(sizeof(bf_state_T));
@@ -672,7 +672,7 @@ crypt_blowfish_init(state, key, salt, salt_len, seed, seed_len)
* Give an error and return FAIL when not.
*/
int
blowfish_self_test()
blowfish_self_test(void)
{
if (sha256_self_test() == FAIL)
{

File diff suppressed because it is too large Load Diff

1251
src/channel.c Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -10,17 +10,17 @@
#include "vim.h"
#ifdef FEAT_LINEBREAK
static int win_chartabsize __ARGS((win_T *wp, char_u *p, colnr_T col));
static int win_chartabsize(win_T *wp, char_u *p, colnr_T col);
#endif
#ifdef FEAT_MBYTE
# if defined(HAVE_WCHAR_H)
# include <wchar.h> /* for towupper() and towlower() */
# endif
static int win_nolbr_chartabsize __ARGS((win_T *wp, char_u *s, colnr_T col, int *headp));
static int win_nolbr_chartabsize(win_T *wp, char_u *s, colnr_T col, int *headp);
#endif
static unsigned nr2hex __ARGS((unsigned c));
static unsigned nr2hex(unsigned c);
static int chartab_initialized = FALSE;
@@ -30,21 +30,32 @@ static int chartab_initialized = FALSE;
#define RESET_CHARTAB(buf, c) (buf)->b_chartab[(unsigned)(c) >> 3] &= ~(1 << ((c) & 0x7))
#define GET_CHARTAB(buf, c) ((buf)->b_chartab[(unsigned)(c) >> 3] & (1 << ((c) & 0x7)))
/* table used below, see init_chartab() for an explanation */
static char_u g_chartab[256];
/*
* Fill chartab[]. Also fills curbuf->b_chartab[] with flags for keyword
* Flags for g_chartab[].
*/
#define CT_CELL_MASK 0x07 /* mask: nr of display cells (1, 2 or 4) */
#define CT_PRINT_CHAR 0x10 /* flag: set for printable chars */
#define CT_ID_CHAR 0x20 /* flag: set for ID chars */
#define CT_FNAME_CHAR 0x40 /* flag: set for file name chars */
/*
* Fill g_chartab[]. Also fills curbuf->b_chartab[] with flags for keyword
* characters for current buffer.
*
* Depends on the option settings 'iskeyword', 'isident', 'isfname',
* 'isprint' and 'encoding'.
*
* The index in chartab[] depends on 'encoding':
* The index in g_chartab[] depends on 'encoding':
* - For non-multi-byte index with the byte (same as the character).
* - For DBCS index with the first byte.
* - For UTF-8 index with the character (when first byte is up to 0x80 it is
* the same as the character, if the first byte is 0x80 and above it depends
* on further bytes).
*
* The contents of chartab[]:
* The contents of g_chartab[]:
* - The lower two bits, masked by CT_CELL_MASK, give the number of display
* cells the character occupies (1 or 2). Not valid for UTF-8 above 0x80.
* - CT_PRINT_CHAR bit is set when the character is printable (no need to
@@ -57,15 +68,15 @@ static int chartab_initialized = FALSE;
* error, OK otherwise.
*/
int
init_chartab()
init_chartab(void)
{
return buf_init_chartab(curbuf, TRUE);
}
int
buf_init_chartab(buf, global)
buf_T *buf;
int global; /* FALSE: only set buf->b_chartab[] */
buf_init_chartab(
buf_T *buf,
int global) /* FALSE: only set buf->b_chartab[] */
{
int c;
int c2;
@@ -86,18 +97,18 @@ buf_init_chartab(buf, global)
*/
c = 0;
while (c < ' ')
chartab[c++] = (dy_flags & DY_UHEX) ? 4 : 2;
g_chartab[c++] = (dy_flags & DY_UHEX) ? 4 : 2;
#ifdef EBCDIC
while (c < 255)
#else
while (c <= '~')
#endif
chartab[c++] = 1 + CT_PRINT_CHAR;
g_chartab[c++] = 1 + CT_PRINT_CHAR;
#ifdef FEAT_FKMAP
if (p_altkeymap)
{
while (c < YE)
chartab[c++] = 1 + CT_PRINT_CHAR;
g_chartab[c++] = 1 + CT_PRINT_CHAR;
}
#endif
while (c < 256)
@@ -105,17 +116,17 @@ buf_init_chartab(buf, global)
#ifdef FEAT_MBYTE
/* UTF-8: bytes 0xa0 - 0xff are printable (latin1) */
if (enc_utf8 && c >= 0xa0)
chartab[c++] = CT_PRINT_CHAR + 1;
g_chartab[c++] = CT_PRINT_CHAR + 1;
/* euc-jp characters starting with 0x8e are single width */
else if (enc_dbcs == DBCS_JPNU && c == 0x8e)
chartab[c++] = CT_PRINT_CHAR + 1;
g_chartab[c++] = CT_PRINT_CHAR + 1;
/* other double-byte chars can be printable AND double-width */
else if (enc_dbcs != 0 && MB_BYTE2LEN(c) == 2)
chartab[c++] = CT_PRINT_CHAR + 2;
g_chartab[c++] = CT_PRINT_CHAR + 2;
else
#endif
/* the rest is unprintable by default */
chartab[c++] = (dy_flags & DY_UHEX) ? 4 : 2;
g_chartab[c++] = (dy_flags & DY_UHEX) ? 4 : 2;
}
#ifdef FEAT_MBYTE
@@ -124,7 +135,7 @@ buf_init_chartab(buf, global)
if ((enc_dbcs != 0 && MB_BYTE2LEN(c) > 1)
|| (enc_dbcs == DBCS_JPNU && c == 0x8e)
|| (enc_utf8 && c >= 0xa0))
chartab[c] |= CT_FNAME_CHAR;
g_chartab[c] |= CT_FNAME_CHAR;
#endif
}
@@ -232,9 +243,9 @@ buf_init_chartab(buf, global)
if (i == 0) /* (re)set ID flag */
{
if (tilde)
chartab[c] &= ~CT_ID_CHAR;
g_chartab[c] &= ~CT_ID_CHAR;
else
chartab[c] |= CT_ID_CHAR;
g_chartab[c] |= CT_ID_CHAR;
}
else if (i == 1) /* (re)set printable */
{
@@ -256,23 +267,23 @@ buf_init_chartab(buf, global)
{
if (tilde)
{
chartab[c] = (chartab[c] & ~CT_CELL_MASK)
g_chartab[c] = (g_chartab[c] & ~CT_CELL_MASK)
+ ((dy_flags & DY_UHEX) ? 4 : 2);
chartab[c] &= ~CT_PRINT_CHAR;
g_chartab[c] &= ~CT_PRINT_CHAR;
}
else
{
chartab[c] = (chartab[c] & ~CT_CELL_MASK) + 1;
chartab[c] |= CT_PRINT_CHAR;
g_chartab[c] = (g_chartab[c] & ~CT_CELL_MASK) + 1;
g_chartab[c] |= CT_PRINT_CHAR;
}
}
}
else if (i == 2) /* (re)set fname flag */
{
if (tilde)
chartab[c] &= ~CT_FNAME_CHAR;
g_chartab[c] &= ~CT_FNAME_CHAR;
else
chartab[c] |= CT_FNAME_CHAR;
g_chartab[c] |= CT_FNAME_CHAR;
}
else /* i == 3 */ /* (re)set keyword flag */
{
@@ -302,9 +313,9 @@ buf_init_chartab(buf, global)
* enough room, not all characters will be translated.
*/
void
trans_characters(buf, bufsize)
char_u *buf;
int bufsize;
trans_characters(
char_u *buf,
int bufsize)
{
int len; /* length of string needing translation */
int room; /* room in buffer after string */
@@ -345,8 +356,7 @@ trans_characters(buf, bufsize)
* printable chars. Returns NULL when out of memory.
*/
char_u *
transstr(s)
char_u *s;
transstr(char_u *s)
{
char_u *res;
char_u *p;
@@ -423,11 +433,11 @@ transstr(s)
* Otherwise puts the result in "buf[buflen]".
*/
char_u *
str_foldcase(str, orglen, buf, buflen)
char_u *str;
int orglen;
char_u *buf;
int buflen;
str_foldcase(
char_u *str,
int orglen,
char_u *buf,
int buflen)
{
garray_T ga;
int i;
@@ -531,9 +541,9 @@ str_foldcase(str, orglen, buf, buflen)
#endif
/*
* Catch 22: chartab[] can't be initialized before the options are
* Catch 22: g_chartab[] can't be initialized before the options are
* initialized, and initializing options may cause transchar() to be called!
* When chartab_initialized == FALSE don't use chartab[].
* When chartab_initialized == FALSE don't use g_chartab[].
* Does NOT work for multi-byte characters, c must be <= 255.
* Also doesn't work for the first byte of a multi-byte, "c" must be a
* character!
@@ -541,8 +551,7 @@ str_foldcase(str, orglen, buf, buflen)
static char_u transchar_buf[7];
char_u *
transchar(c)
int c;
transchar(int c)
{
int i;
@@ -581,8 +590,7 @@ transchar(c)
* for an illegal UTF-8 byte.
*/
char_u *
transchar_byte(c)
int c;
transchar_byte(int c)
{
if (enc_utf8 && c >= 0x80)
{
@@ -599,9 +607,7 @@ transchar_byte(c)
* Does NOT work for multi-byte characters, c must be <= 255.
*/
void
transchar_nonprint(buf, c)
char_u *buf;
int c;
transchar_nonprint(char_u *buf, int c)
{
if (c == NL)
c = NUL; /* we use newline in place of a NUL */
@@ -668,9 +674,7 @@ transchar_nonprint(buf, c)
}
void
transchar_hex(buf, c)
char_u *buf;
int c;
transchar_hex(char_u *buf, int c)
{
int i = 0;
@@ -694,8 +698,7 @@ transchar_hex(buf, c)
* function key 1.
*/
static unsigned
nr2hex(c)
unsigned c;
nr2hex(unsigned c)
{
if ((c & 0xf) <= 9)
return (c & 0xf) + '0';
@@ -711,14 +714,13 @@ nr2hex(c)
* cells depends on further bytes.
*/
int
byte2cells(b)
int b;
byte2cells(int b)
{
#ifdef FEAT_MBYTE
if (enc_utf8 && b >= 0x80)
return 0;
#endif
return (chartab[b] & CT_CELL_MASK);
return (g_chartab[b] & CT_CELL_MASK);
}
/*
@@ -727,8 +729,7 @@ byte2cells(b)
* A TAB is counted as two cells: "^I" or four: "<09>".
*/
int
char2cells(c)
int c;
char2cells(int c)
{
if (IS_SPECIAL(c))
return char2cells(K_SECOND(c)) + 2;
@@ -748,7 +749,7 @@ char2cells(c)
}
}
#endif
return (chartab[c & 0xff] & CT_CELL_MASK);
return (g_chartab[c & 0xff] & CT_CELL_MASK);
}
/*
@@ -756,8 +757,7 @@ char2cells(c)
* A TAB is counted as two cells: "^I" or four: "<09>".
*/
int
ptr2cells(p)
char_u *p;
ptr2cells(char_u *p)
{
#ifdef FEAT_MBYTE
/* For UTF-8 we need to look at more bytes if the first byte is >= 0x80. */
@@ -765,7 +765,7 @@ ptr2cells(p)
return utf_ptr2cells(p);
/* For DBCS we can tell the cell count from the first byte. */
#endif
return (chartab[*p] & CT_CELL_MASK);
return (g_chartab[*p] & CT_CELL_MASK);
}
/*
@@ -773,8 +773,7 @@ ptr2cells(p)
* counting TABs as two characters: "^I".
*/
int
vim_strsize(s)
char_u *s;
vim_strsize(char_u *s)
{
return vim_strnsize(s, (int)MAXCOL);
}
@@ -784,9 +783,7 @@ vim_strsize(s)
* screen, counting TABs as two characters: "^I".
*/
int
vim_strnsize(s, len)
char_u *s;
int len;
vim_strnsize(char_u *s, int len)
{
int size = 0;
@@ -825,23 +822,15 @@ vim_strnsize(s, len)
else \
return ptr2cells(p);
#if defined(FEAT_VREPLACE) || defined(FEAT_EX_EXTRA) || defined(FEAT_GUI) \
|| defined(FEAT_VIRTUALEDIT) || defined(PROTO)
int
chartabsize(p, col)
char_u *p;
colnr_T col;
chartabsize(char_u *p, colnr_T col)
{
RET_WIN_BUF_CHARTABSIZE(curwin, curbuf, p, col)
}
#endif
#ifdef FEAT_LINEBREAK
static int
win_chartabsize(wp, p, col)
win_T *wp;
char_u *p;
colnr_T col;
win_chartabsize(win_T *wp, char_u *p, colnr_T col)
{
RET_WIN_BUF_CHARTABSIZE(wp, wp->w_buffer, p, col)
}
@@ -852,8 +841,7 @@ win_chartabsize(wp, p, col)
* taking into account the size of a tab.
*/
int
linetabsize(s)
char_u *s;
linetabsize(char_u *s)
{
return linetabsize_col(0, s);
}
@@ -862,9 +850,7 @@ linetabsize(s)
* Like linetabsize(), but starting at column "startcol".
*/
int
linetabsize_col(startcol, s)
int startcol;
char_u *s;
linetabsize_col(int startcol, char_u *s)
{
colnr_T col = startcol;
char_u *line = s; /* pointer to start of line, for breakindent */
@@ -878,10 +864,7 @@ linetabsize_col(startcol, s)
* Like linetabsize(), but for a given window instead of the current one.
*/
int
win_linetabsize(wp, line, len)
win_T *wp;
char_u *line;
colnr_T len;
win_linetabsize(win_T *wp, char_u *line, colnr_T len)
{
colnr_T col = 0;
char_u *s;
@@ -897,10 +880,9 @@ win_linetabsize(wp, line, len)
* Letters and characters from the 'isident' option.
*/
int
vim_isIDc(c)
int c;
vim_isIDc(int c)
{
return (c > 0 && c < 0x100 && (chartab[c] & CT_ID_CHAR));
return (c > 0 && c < 0x100 && (g_chartab[c] & CT_ID_CHAR));
}
/*
@@ -909,16 +891,13 @@ vim_isIDc(c)
* For multi-byte characters mb_get_class() is used (builtin rules).
*/
int
vim_iswordc(c)
int c;
vim_iswordc(int c)
{
return vim_iswordc_buf(c, curbuf);
}
int
vim_iswordc_buf(c, buf)
int c;
buf_T *buf;
vim_iswordc_buf(int c, buf_T *buf)
{
#ifdef FEAT_MBYTE
if (c >= 0x100)
@@ -936,8 +915,7 @@ vim_iswordc_buf(c, buf)
* Just like vim_iswordc() but uses a pointer to the (multi-byte) character.
*/
int
vim_iswordp(p)
char_u *p;
vim_iswordp(char_u *p)
{
#ifdef FEAT_MBYTE
if (has_mbyte && MB_BYTE2LEN(*p) > 1)
@@ -947,9 +925,7 @@ vim_iswordp(p)
}
int
vim_iswordp_buf(p, buf)
char_u *p;
buf_T *buf;
vim_iswordp_buf(char_u *p, buf_T *buf)
{
#ifdef FEAT_MBYTE
if (has_mbyte && MB_BYTE2LEN(*p) > 1)
@@ -963,10 +939,9 @@ vim_iswordp_buf(p, buf)
* Assume characters above 0x100 are valid (multi-byte).
*/
int
vim_isfilec(c)
int c;
vim_isfilec(int c)
{
return (c >= 0x100 || (c > 0 && (chartab[c] & CT_FNAME_CHAR)));
return (c >= 0x100 || (c > 0 && (g_chartab[c] & CT_FNAME_CHAR)));
}
/*
@@ -976,8 +951,7 @@ vim_isfilec(c)
* returns false.
*/
int
vim_isfilec_or_wc(c)
int c;
vim_isfilec_or_wc(int c)
{
char_u buf[2];
@@ -992,14 +966,13 @@ vim_isfilec_or_wc(c)
* Unicode.
*/
int
vim_isprintc(c)
int c;
vim_isprintc(int c)
{
#ifdef FEAT_MBYTE
if (enc_utf8 && c >= 0x100)
return utf_printable(c);
#endif
return (c >= 0x100 || (c > 0 && (chartab[c] & CT_PRINT_CHAR)));
return (c >= 0x100 || (c > 0 && (g_chartab[c] & CT_PRINT_CHAR)));
}
/*
@@ -1007,8 +980,7 @@ vim_isprintc(c)
* byte of a double-byte character.
*/
int
vim_isprintc_strict(c)
int c;
vim_isprintc_strict(int c)
{
#ifdef FEAT_MBYTE
if (enc_dbcs != 0 && c < 0x100 && MB_BYTE2LEN(c) > 1)
@@ -1016,17 +988,17 @@ vim_isprintc_strict(c)
if (enc_utf8 && c >= 0x100)
return utf_printable(c);
#endif
return (c >= 0x100 || (c > 0 && (chartab[c] & CT_PRINT_CHAR)));
return (c >= 0x100 || (c > 0 && (g_chartab[c] & CT_PRINT_CHAR)));
}
/*
* like chartabsize(), but also check for line breaks on the screen
*/
int
lbr_chartabsize(line, s, col)
char_u *line UNUSED; /* start of the line */
unsigned char *s;
colnr_T col;
lbr_chartabsize(
char_u *line UNUSED, /* start of the line */
unsigned char *s,
colnr_T col)
{
#ifdef FEAT_LINEBREAK
if (!curwin->w_p_lbr && *p_sbr == NUL && !curwin->w_p_bri)
@@ -1047,10 +1019,10 @@ lbr_chartabsize(line, s, col)
* Call lbr_chartabsize() and advance the pointer.
*/
int
lbr_chartabsize_adv(line, s, col)
char_u *line; /* start of the line */
char_u **s;
colnr_T col;
lbr_chartabsize_adv(
char_u *line, /* start of the line */
char_u **s,
colnr_T col)
{
int retval;
@@ -1067,12 +1039,12 @@ lbr_chartabsize_adv(line, s, col)
* value, init to 0 before calling.
*/
int
win_lbr_chartabsize(wp, line, s, col, headp)
win_T *wp;
char_u *line UNUSED; /* start of the line */
char_u *s;
colnr_T col;
int *headp UNUSED;
win_lbr_chartabsize(
win_T *wp,
char_u *line UNUSED, /* start of the line */
char_u *s,
colnr_T col,
int *headp UNUSED)
{
#ifdef FEAT_LINEBREAK
int c;
@@ -1243,11 +1215,11 @@ win_lbr_chartabsize(wp, line, s, col, headp)
* doesn't fit at the end of the screen line.
*/
static int
win_nolbr_chartabsize(wp, s, col, headp)
win_T *wp;
char_u *s;
colnr_T col;
int *headp;
win_nolbr_chartabsize(
win_T *wp,
char_u *s,
colnr_T col,
int *headp)
{
int n;
@@ -1273,9 +1245,7 @@ win_nolbr_chartabsize(wp, s, col, headp)
* "wp".
*/
int
in_win_border(wp, vcol)
win_T *wp;
colnr_T vcol;
in_win_border(win_T *wp, colnr_T vcol)
{
int width1; /* width of first line (after line number) */
int width2; /* width of further lines */
@@ -1305,12 +1275,12 @@ in_win_border(wp, vcol)
* This is used very often, keep it fast!
*/
void
getvcol(wp, pos, start, cursor, end)
win_T *wp;
pos_T *pos;
colnr_T *start;
colnr_T *cursor;
colnr_T *end;
getvcol(
win_T *wp,
pos_T *pos,
colnr_T *start,
colnr_T *cursor,
colnr_T *end)
{
colnr_T vcol;
char_u *ptr; /* points to current char */
@@ -1368,7 +1338,7 @@ getvcol(wp, pos, start, cursor, end)
if (enc_utf8 && c >= 0x80)
incr = utf_ptr2cells(ptr);
else
incr = CHARSIZE(c);
incr = g_chartab[c] & CT_CELL_MASK;
/* If a double-cell char doesn't fit at the end of a line
* it wraps to the next line, it's like this char is three
@@ -1382,7 +1352,7 @@ getvcol(wp, pos, start, cursor, end)
}
else
#endif
incr = CHARSIZE(c);
incr = g_chartab[c] & CT_CELL_MASK;
}
if (posptr != NULL && ptr >= posptr) /* character at pos->col */
@@ -1435,8 +1405,7 @@ getvcol(wp, pos, start, cursor, end)
* Get virtual cursor column in the current window, pretending 'list' is off.
*/
colnr_T
getvcol_nolist(posp)
pos_T *posp;
getvcol_nolist(pos_T *posp)
{
int list_save = curwin->w_p_list;
colnr_T vcol;
@@ -1452,12 +1421,12 @@ getvcol_nolist(posp)
* Get virtual column in virtual mode.
*/
void
getvvcol(wp, pos, start, cursor, end)
win_T *wp;
pos_T *pos;
colnr_T *start;
colnr_T *cursor;
colnr_T *end;
getvvcol(
win_T *wp,
pos_T *pos,
colnr_T *start,
colnr_T *cursor,
colnr_T *end)
{
colnr_T col;
colnr_T coladd;
@@ -1508,10 +1477,12 @@ getvvcol(wp, pos, start, cursor, end)
* Used for Visual block mode.
*/
void
getvcols(wp, pos1, pos2, left, right)
win_T *wp;
pos_T *pos1, *pos2;
colnr_T *left, *right;
getvcols(
win_T *wp,
pos_T *pos1,
pos_T *pos2,
colnr_T *left,
colnr_T *right)
{
colnr_T from1, from2, to1, to2;
@@ -1544,8 +1515,7 @@ getvcols(wp, pos1, pos2, left, right)
* skipwhite: skip over ' ' and '\t'.
*/
char_u *
skipwhite(q)
char_u *q;
skipwhite(char_u *q)
{
char_u *p = q;
@@ -1558,8 +1528,7 @@ skipwhite(q)
* skip over digits
*/
char_u *
skipdigits(q)
char_u *q;
skipdigits(char_u *q)
{
char_u *p = q;
@@ -1573,8 +1542,7 @@ skipdigits(q)
* skip over binary digits
*/
char_u *
skipbin(q)
char_u *q;
skipbin(char_u *q)
{
char_u *p = q;
@@ -1587,8 +1555,7 @@ skipbin(q)
* skip over digits and hex characters
*/
char_u *
skiphex(q)
char_u *q;
skiphex(char_u *q)
{
char_u *p = q;
@@ -1598,13 +1565,11 @@ skiphex(q)
}
#endif
#if defined(FEAT_EX_EXTRA) || defined(PROTO)
/*
* skip to bin digit (or NUL after the string)
*/
char_u *
skiptobin(q)
char_u *q;
skiptobin(char_u *q)
{
char_u *p = q;
@@ -1617,8 +1582,7 @@ skiptobin(q)
* skip to digit (or NUL after the string)
*/
char_u *
skiptodigit(q)
char_u *q;
skiptodigit(char_u *q)
{
char_u *p = q;
@@ -1631,8 +1595,7 @@ skiptodigit(q)
* skip to hex character (or NUL after the string)
*/
char_u *
skiptohex(q)
char_u *q;
skiptohex(char_u *q)
{
char_u *p = q;
@@ -1640,7 +1603,6 @@ skiptohex(q)
++p;
return p;
}
#endif
/*
* Variant of isdigit() that can handle characters > 0x100.
@@ -1649,8 +1611,7 @@ skiptohex(q)
* Use the VIM_ISDIGIT() macro for simple arguments.
*/
int
vim_isdigit(c)
int c;
vim_isdigit(int c)
{
return (c >= '0' && c <= '9');
}
@@ -1661,8 +1622,7 @@ vim_isdigit(c)
* superscript 1 to be a digit.
*/
int
vim_isxdigit(c)
int c;
vim_isxdigit(int c)
{
return (c >= '0' && c <= '9')
|| (c >= 'a' && c <= 'f')
@@ -1674,8 +1634,7 @@ vim_isxdigit(c)
* characters > 0x100.
*/
int
vim_isbdigit(c)
int c;
vim_isbdigit(int c)
{
return (c == '0' || c == '1');
}
@@ -1695,8 +1654,7 @@ static char_u latin1upper[257] = " !\"#$%&'()*+,
static char_u latin1lower[257] = " !\"#$%&'()*+,-./0123456789:;<=>?@abcdefghijklmnopqrstuvwxyz[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xd7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xdf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff";
int
vim_islower(c)
int c;
vim_islower(int c)
{
if (c <= '@')
return FALSE;
@@ -1720,8 +1678,7 @@ vim_islower(c)
}
int
vim_isupper(c)
int c;
vim_isupper(int c)
{
if (c <= '@')
return FALSE;
@@ -1745,8 +1702,7 @@ vim_isupper(c)
}
int
vim_toupper(c)
int c;
vim_toupper(int c)
{
if (c <= '@')
return c;
@@ -1770,8 +1726,7 @@ vim_toupper(c)
}
int
vim_tolower(c)
int c;
vim_tolower(int c)
{
if (c <= '@')
return c;
@@ -1799,8 +1754,7 @@ vim_tolower(c)
* skiptowhite: skip over text until ' ' or '\t' or NUL.
*/
char_u *
skiptowhite(p)
char_u *p;
skiptowhite(char_u *p)
{
while (*p != ' ' && *p != '\t' && *p != NUL)
++p;
@@ -1813,8 +1767,7 @@ skiptowhite(p)
* skiptowhite_esc: Like skiptowhite(), but also skip escaped chars
*/
char_u *
skiptowhite_esc(p)
char_u *p;
skiptowhite_esc(char_u *p)
{
while (*p != ' ' && *p != '\t' && *p != NUL)
{
@@ -1831,8 +1784,7 @@ skiptowhite_esc(p)
* Note: the argument is a pointer to a char_u pointer!
*/
long
getdigits(pp)
char_u **pp;
getdigits(char_u **pp)
{
char_u *p;
long retval;
@@ -1850,8 +1802,7 @@ getdigits(pp)
* Return TRUE if "lbuf" is empty or only contains blanks.
*/
int
vim_isblankline(lbuf)
char_u *lbuf;
vim_isblankline(char_u *lbuf)
{
char_u *p;
@@ -1879,16 +1830,16 @@ vim_isblankline(lbuf)
* If maxlen > 0, check at a maximum maxlen chars
*/
void
vim_str2nr(start, prep, len, what, nptr, unptr, maxlen)
char_u *start;
int *prep; /* return: type of number 0 = decimal, 'x'
vim_str2nr(
char_u *start,
int *prep, /* return: type of number 0 = decimal, 'x'
or 'X' is hex, '0' = octal, 'b' or 'B'
is bin */
int *len; /* return: detected length of number */
int what; /* what numbers to recognize */
long *nptr; /* return: signed result */
unsigned long *unptr; /* return: unsigned result */
int maxlen; /* max length of string to check */
int *len, /* return: detected length of number */
int what, /* what numbers to recognize */
long *nptr, /* return: signed result */
unsigned long *unptr, /* return: unsigned result */
int maxlen) /* max length of string to check */
{
char_u *ptr = start;
int pre = 0; /* default is decimal */
@@ -2013,8 +1964,7 @@ vim_str2nr(start, prep, len, what, nptr, unptr, maxlen)
* Only valid when the argument is '0' - '9', 'A' - 'F' or 'a' - 'f'.
*/
int
hex2nr(c)
int c;
hex2nr(int c)
{
if (c >= 'a' && c <= 'f')
return c - 'a' + 10;
@@ -2030,8 +1980,7 @@ hex2nr(c)
* Return -1 if one of the characters is not hex.
*/
int
hexhex2nr(p)
char_u *p;
hexhex2nr(char_u *p)
{
if (!vim_isxdigit(p[0]) || !vim_isxdigit(p[1]))
return -1;
@@ -2053,8 +2002,7 @@ hexhex2nr(p)
* characters.
*/
int
rem_backslash(str)
char_u *str;
rem_backslash(char_u *str)
{
#ifdef BACKSLASH_IN_FILENAME
return (str[0] == '\\'
@@ -2077,8 +2025,7 @@ rem_backslash(str)
* is not a normal file character.
*/
void
backslash_halve(p)
char_u *p;
backslash_halve(char_u *p)
{
for ( ; *p; ++p)
if (rem_backslash(p))
@@ -2089,8 +2036,7 @@ backslash_halve(p)
* backslash_halve() plus save the result in allocated memory.
*/
char_u *
backslash_halve_save(p)
char_u *p;
backslash_halve_save(char_u *p)
{
char_u *res;
@@ -2148,9 +2094,7 @@ static char_u ebcdic2ascii_tab[256] =
* wanting 7-bit ASCII characters out the other end.
*/
void
ebcdic2ascii(buffer, len)
char_u *buffer;
int len;
ebcdic2ascii(char_u *buffer, int len)
{
int i;

View File

@@ -65,6 +65,8 @@ WORKSHOP_OBJ = @WORKSHOP_OBJ@
NETBEANS_SRC = @NETBEANS_SRC@
NETBEANS_OBJ = @NETBEANS_OBJ@
CHANNEL_SRC = @CHANNEL_SRC@
CHANNEL_OBJ = @CHANNEL_OBJ@
RUBY = @vi_cv_path_ruby@
RUBY_SRC = @RUBY_SRC@

View File

@@ -296,7 +296,6 @@
/* #undef STDC_HEADERS */
/* instead, we check a few STDC things ourselves */
#undef HAVE_STDARG_H
#undef HAVE_STDLIB_H
#undef HAVE_STRING_H
@@ -360,6 +359,9 @@
/* Define if you want to include the Tcl interpreter. */
#undef FEAT_TCL
/* Define for linking via dlopen() or LoadLibrary() */
#undef DYNAMIC_TCL
/* Define if you want to include the Sniff interface. */
#undef FEAT_SNIFF
@@ -432,6 +434,9 @@
/* Define if you want to include NetBeans integration. */
#undef FEAT_NETBEANS_INTG
/* Define if you want to include process communication. */
#undef FEAT_CHANNEL
/* Define default global runtime path */
#undef RUNTIME_GLOBAL

Some files were not shown because too many files have changed in this diff Show More