updated for version 7.0139
diff --git a/Filelist b/Filelist
index 738dd9e..17a27a6 100644
--- a/Filelist
+++ b/Filelist
@@ -377,6 +377,7 @@
src/os_mac.pbproj/project.pbxproj \
src/proto/gui_mac.pro \
src/proto/os_mac.pro \
+ src/proto/os_mac_conv.pro \
# source files for VMS (in the extra archive)
SRC_VMS = \
diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt
index cb8ff41..e68b75a 100644
--- a/runtime/doc/filetype.txt
+++ b/runtime/doc/filetype.txt
@@ -1,4 +1,4 @@
-*filetype.txt* For Vim version 7.0aa. Last change: 2005 Aug 24
+*filetype.txt* For Vim version 7.0aa. Last change: 2005 Aug 30
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -44,15 +44,21 @@
name, the file $VIMRUNTIME/scripts.vim is used to detect it from the
contents of the file.
-To add your own file types, see |new-filetype| below.
+To add your own file types, see |new-filetype| below. To search for help on a
+filetype prepend "ft-" and optionally append "-syntax", "-indent" or
+"-plugin". For example: >
+ :help ft-vim-indent
+ :help ft-vim-syntax
+ :help ft-man-plugin
If the file type is not detected automatically, or it finds the wrong type,
you can either set the 'filetype' option manually, or add a modeline to your
file. Example, for in an IDL file use the command: >
:set filetype=idl
-or add this |modeline| to the file: >
- /* vim: set filetype=idl : */
-<
+
+or add this |modeline| to the file:
+ /* vim: set filetype=idl : */ ~
+
*:filetype-plugin-on*
You can enable loading the plugin files for specific file types with: >
:filetype plugin on
@@ -132,16 +138,16 @@
can be used to overrule the filetype used for certain extensions:
file name variable ~
- *.asa g:filetype_asa |aspvbs-syntax| |aspperl-syntax|
- *.asp g:filetype_asp |aspvbs-syntax| |aspperl-syntax|
- *.asm g:asmsyntax |asm-syntax|
+ *.asa g:filetype_asa |ft-aspvbs-syntax| |ft-aspperl-syntax|
+ *.asp g:filetype_asp |ft-aspvbs-syntax| |ft-aspperl-syntax|
+ *.asm g:asmsyntax |ft-asm-syntax|
*.prg g:filetype_prg
*.pl g:filetype_pl
*.inc g:filetype_inc
- *.w g:filetype_w |cweb-syntax|
- *.i g:filetype_i |progress-syntax|
- *.p g:filetype_p |pascal-syntax|
- *.sh g:bash_is_sh |sh-syntax|
+ *.w g:filetype_w |ft-cweb-syntax|
+ *.i g:filetype_i |ft-progress-syntax|
+ *.p g:filetype_p |ft-pascal-syntax|
+ *.sh g:bash_is_sh |ft-sh-syntax|
*filetype-ignore*
To avoid that certain files are being inspected, the g:ft_ignore_pat variable
@@ -380,7 +386,7 @@
3. Docs for the default filetype plugins. *ftplugin-docs*
-CHANGELOG *changelog-plugin*
+CHANGELOG *ft-changelog-plugin*
Allows for easy entrance of Changelog entries in Changelog files. There are
some commands, mappings, and variables worth exploring:
@@ -466,7 +472,7 @@
the Changelog.
-FORTRAN *fortran-plugin*
+FORTRAN *ft-fortran-plugin*
Options:
'expandtab' is switched on to avoid tabs as required by the Fortran
@@ -476,10 +482,10 @@
'formatoptions' is set to break code and comment lines and to preserve long
lines. You can format comments with |gq|.
For further discussion of fortran_have_tabs and the method used for the
-detection of source format see |fortran-syntax|.
+detection of source format see |ft-fortran-syntax|.
-MAIL *mail-plugin*
+MAIL *ft-mail-plugin*
Options:
'modeline' is switched off to avoid the danger of trojan horses, and to
@@ -496,7 +502,7 @@
to the end of the file in Normal mode. This means "> " is inserted in
each line.
-MAN *man-plugin* *:Man*
+MAN *ft-man-plugin* *:Man*
Displays a manual page in a nice way. Also see the user manual
|find-manpage|.
@@ -523,7 +529,7 @@
CTRL-T Jump back to the previous manual page.
-RPM SPEC *spec-plugin*
+RPM SPEC *ft-spec-plugin*
Since the text for this plugin is rather long it has been put in a separate
file: |pi_spec.txt|.
diff --git a/runtime/doc/indent.txt b/runtime/doc/indent.txt
index 0540c43..f26c540 100644
--- a/runtime/doc/indent.txt
+++ b/runtime/doc/indent.txt
@@ -1,4 +1,4 @@
-*indent.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
+*indent.txt* For Vim version 7.0aa. Last change: 2005 Aug 30
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -449,7 +449,7 @@
REMARKS ABOUT SPECIFIC INDENT FILES ~
-FORTRAN *fortran-indent*
+FORTRAN *ft-fortran-indent*
Block if, select case, and where constructs are indented. Comments, labelled
statements and continuation lines are indented if the Fortran is in free
@@ -457,7 +457,7 @@
form because of the left margin requirements. Hence manual indent corrections
will be necessary for labelled statements and continuation lines when fixed
source form is being used. For further discussion of the method used for the
-detection of source format see |fortran-syntax|.
+detection of source format see |ft-fortran-syntax|.
Do loops ~
All do loops are left unindented by default. Do loops can be unstructured in
@@ -485,7 +485,7 @@
other extensions such as .for.
-PYTHON *python-indent*
+PYTHON *ft-python-indent*
The amount of indent can be set for the following situations. The examples
given are de the defaults. Note that the variables are set to an expression,
@@ -499,7 +499,7 @@
let g:pyindent_continue = '&sw * 2'
-VERILOG *verilog-indent*
+VERILOG *ft-verilog-indent*
General block statements such as if, for, case, always, initial, function,
specify and begin, etc., are indented. The module block statements (first
@@ -534,7 +534,7 @@
Make sure to do ":set cmdheight=2" first to allow the display of the message.
-VIM *vim-indent*
+VIM *ft-vim-indent*
For indenting Vim scripts there is one variable that specifies the amount of
indent for a continuation line, a line that starts with a backslash: >
diff --git a/runtime/doc/pi_netrw.txt b/runtime/doc/pi_netrw.txt
index 48ee880..41b8820 100644
--- a/runtime/doc/pi_netrw.txt
+++ b/runtime/doc/pi_netrw.txt
@@ -904,7 +904,7 @@
the V (|linewise-visual|).
-HIDING FILES OR DIRECTORIES *g:netrw-a*
+HIDING FILES OR DIRECTORIES *g:netrw-a* *netrw-a*
Netrw's browsing facility allows one to use the hiding list in one of
three ways: ignore it, hide files which match, and show only those files
@@ -1077,7 +1077,7 @@
history (query). (see |netrw-b|, |netrw-B|, |netrw-u|, and |netrw-U|)
-IMPROVING DIRECTORY BROWSING *netrw-listhack*
+IMPROVING DIRECTORY BROWSING *netrw-list-hack*
Especially with the remote directory browser, constantly entering the password
is tedious.
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index b9e5114..a2d5135 100644
--- a/runtime/doc/spell.txt
+++ b/runtime/doc/spell.txt
@@ -1,4 +1,4 @@
-*spell.txt* For Vim version 7.0aa. Last change: 2005 Aug 29
+*spell.txt* For Vim version 7.0aa. Last change: 2005 Aug 30
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -64,13 +64,19 @@
*zg*
zg Add word under the cursor as a good word to the first
- name in 'spellfile'. In Visual mode the selected
- characters are added as a word (including white
- space!). If the word is explicitly marked as bad word
- in another spell file the result is unpredictable.
- A count may precede the command to indicate the entry
- in 'spellfile' to be used. A count of two uses the
- second entry.
+ name in 'spellfile'. A count may precede the command
+ to indicate the entry in 'spellfile' to be used. A
+ count of two uses the second entry.
+
+ In Visual mode the selected characters are added as a
+ word (including white space!).
+ When the cursor is on text that is marked as badly
+ spelled then the marked text is used.
+ Otherwise the word under the cursor, separated by
+ non-word characters, is used.
+
+ If the word is explicitly marked as bad word in
+ another spell file the result is unpredictable.
*zG*
zG Like "zg" but add the word to the internal word list
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index a6a03f5..f3210ea 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt* For Vim version 7.0aa. Last change: 2005 Aug 14
+*syntax.txt* For Vim version 7.0aa. Last change: 2005 Aug 30
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -454,7 +454,7 @@
for f in *.[ch]; do gvim -f +"syn on" +"run! syntax/2html.vim" +"wq" +"q" $f; done
<
-ABEL *abel.vim* *abel-syntax*
+ABEL *abel.vim* *ft-abel-syntax*
ABEL highlighting provides some user-defined options. To enable them, assign
any value to the respective variable. Example: >
@@ -467,7 +467,7 @@
abel_cpp_comments_illegal do not interpret '//' as inline comment leader
-ADA *ada.vim* *ada-syntax*
+ADA *ada.vim* *ft-ada-syntax*
This mode is designed for the 1995 edition of Ada ("Ada95"), which
includes support for objected-programming, protected types, and so on.
@@ -515,7 +515,7 @@
the performance unacceptable, turn on ada_withuse_ordinary.
-ANT *ant.vim* *ant-syntax*
+ANT *ant.vim* *ft-ant-syntax*
The ant syntax file provides syntax highlighting for javascript and python
by default. Syntax highlighting for other script languages can be installed
@@ -533,7 +533,7 @@
See |mysyntaxfile-add| for installing script languages permanently.
-APACHE *apache.vim* *apache-syntax*
+APACHE *apache.vim* *ft-apache-syntax*
The apache syntax file provides syntax highlighting depending on Apache HTTP
server version, by default for 1.3.x. Set "apache_version" to Apache version
@@ -543,8 +543,8 @@
<
*asm.vim* *asmh8300.vim* *nasm.vim* *masm.vim* *asm68k*
-ASSEMBLY *asm-syntax* *asmh8300-syntax* *nasm-syntax* *masm-syntax*
- *asm68k-syntax* *fasm.vim*
+ASSEMBLY *ft-asm-syntax* *ft-asmh8300-syntax* *ft-nasm-syntax*
+ *ft-masm-syntax* *ft-asm68k-syntax* *fasm.vim*
Files matching "*.i" could be Progress or Assembly. If the automatic detection
doesn't work for you, or you don't edit Progress at all, use this in your
@@ -598,7 +598,7 @@
nasm_no_warn potentially risky syntax not as ToDo
-ASPPERL and ASPVBS *aspperl-syntax* *aspvbs-syntax*
+ASPPERL and ASPVBS *ft-aspperl-syntax* *ft-aspvbs-syntax*
*.asp and *.asa files could be either Perl or Visual Basic script. Since it's
hard to detect this you can set two global variables to tell Vim what you are
@@ -610,7 +610,7 @@
:let g:filetype_asp = "aspvbs"
-BASIC *basic.vim* *vb.vim* *basic-syntax* *vb-syntax*
+BASIC *basic.vim* *vb.vim* *ft-basic-syntax* *ft-vb-syntax*
Both Visual Basic and "normal" basic use the extension ".bas". To detect
which one should be used, Vim checks for the string "VB_Name" in the first
@@ -619,7 +619,7 @@
Basic.
-C *c.vim* *c-syntax*
+C *c.vim* *ft-c-syntax*
A few things in C highlighting are optional. To enable them assign any value
to the respective variable. Example: >
@@ -686,7 +686,7 @@
syn sync fromstart
set foldmethod=syntax
-CH *ch.vim* *ch-syntax*
+CH *ch.vim* *ft-ch-syntax*
C/C++ interpreter. Ch has similar syntax highlighting to C and builds upon
the C syntax file. See |c.vim| for all the settings that are available for C.
@@ -696,7 +696,7 @@
:let ch_syntax_for_h = 1
-CHILL *chill.vim* *chill-syntax*
+CHILL *chill.vim* *ft-chill-syntax*
Chill syntax highlighting is similar to C. See |c.vim| for all the settings
that are available. Additionally there is:
@@ -706,7 +706,7 @@
chill_minlines like c_minlines
-CHANGELOG *changelog.vim* *changelog-syntax*
+CHANGELOG *changelog.vim* *ft-changelog-syntax*
ChangeLog supports highlighting spaces at the start of a line.
If you do not like this, add following line to your .vimrc: >
@@ -722,7 +722,7 @@
This works immediately.
-COBOL *cobol.vim* *cobol-syntax*
+COBOL *cobol.vim* *ft-cobol-syntax*
COBOL highlighting has different needs for legacy code than it does for fresh
development. This is due to differences in what is being done (maintenance
@@ -733,7 +733,7 @@
:unlet cobol_legacy_code
-COLD FUSION *coldfusion.vim* *coldfusion-syntax*
+COLD FUSION *coldfusion.vim* *ft-coldfusion-syntax*
The ColdFusion has its own version of HTML comments. To turn on ColdFusion
comment highlighting, add the following line to your startup file: >
@@ -743,7 +743,7 @@
The ColdFusion syntax file is based on the HTML syntax file.
-CSH *csh.vim* *csh-syntax*
+CSH *csh.vim* *ft-csh-syntax*
This covers the shell named "csh". Note that on some systems tcsh is actually
used.
@@ -766,7 +766,7 @@
variable.
-CYNLIB *cynlib.vim* *cynlib-syntax*
+CYNLIB *cynlib.vim* *ft-cynlib-syntax*
Cynlib files are C++ files that use the Cynlib class library to enable
hardware modelling and simulation using C++. Typically Cynlib files have a .cc
@@ -786,7 +786,7 @@
:unlet cynlib_cyntax_for_cpp
<
-CWEB *cweb.vim* *cweb-syntax*
+CWEB *cweb.vim* *ft-cweb-syntax*
Files matching "*.w" could be Progress or cweb. If the automatic detection
doesn't work for you, or you don't edit Progress at all, use this in your
@@ -794,7 +794,7 @@
:let filetype_w = "cweb"
-DESKTOP *desktop.vim* *desktop-syntax*
+DESKTOP *desktop.vim* *ft-desktop-syntax*
Primary goal of this syntax file is to highlight .desktop and .directory files
according to freedesktop.org standard: http://pdx.freedesktop.org/Standards/
@@ -804,7 +804,7 @@
:let enforce_freedesktop_standard = 1
-DIRCOLORS *dircolors.vim* *dircolors-syntax*
+DIRCOLORS *dircolors.vim* *ft-dircolors-syntax*
The dircolors utility highlighting definition has one option. It exists to
provide compatibility with the Slackware GNU/Linux distributions version of
@@ -815,9 +815,9 @@
let dircolors_is_slackware = 1
-DOCBOOK *docbk.vim* *docbk-syntax* *docbook*
-DOCBOOK XML *docbkxml.vim* *docbkxml-syntax*
-DOCBOOK SGML *docbksgml.vim* *docbksgml-syntax*
+DOCBOOK *docbk.vim* *ft-docbk-syntax* *docbook*
+DOCBOOK XML *docbkxml.vim* *ft-docbkxml-syntax*
+DOCBOOK SGML *docbksgml.vim* *ft-docbksgml-syntax*
There are two types of DocBook files: SGML and XML. To specify what type you
are using the "b:docbk_type" variable should be set. Vim does this for you
@@ -834,7 +834,7 @@
:set filetype=docbkxml
-DOSBATCH *dosbatch.vim* *dosbatch-syntax*
+DOSBATCH *dosbatch.vim* *ft-dosbatch-syntax*
There is one option with highlighting DOS batch files. This covers new
extensions to the Command Interpreter introduced with Windows 2000 and
@@ -857,7 +857,7 @@
-DTD *dtd.vim* *dtd-syntax*
+DTD *dtd.vim* *ft-dtd-syntax*
The DTD syntax highlighting is case sensitive by default. To disable
case-sensitive highlighting, add the following line to your startup file: >
@@ -881,7 +881,7 @@
The DTD syntax file is also included by xml.vim to highlight included dtd's.
-EIFFEL *eiffel.vim* *eiffel-syntax*
+EIFFEL *eiffel.vim* *ft-eiffel-syntax*
While Eiffel is not case-sensitive, its style guidelines are, and the
syntax highlighting file encourages their use. This also allows to
@@ -924,7 +924,7 @@
to your startup file.
-ERLANG *erlang.vim* *erlang-syntax*
+ERLANG *erlang.vim* *ft-erlang-syntax*
The erlang highlighting supports Erlang (ERicsson LANGuage).
Erlang is case sensitive and default extension is ".erl".
@@ -939,7 +939,7 @@
:let erlang_characters = 1
-FORM *form.vim* *form-syntax*
+FORM *form.vim* *ft-form-syntax*
The coloring scheme for syntax elements in the FORM file uses the default
modes Conditional, Number, Statement, Comment, PreProc, Type, and String,
@@ -973,7 +973,7 @@
conditionals are LightBlue for better distinction.
-FORTRAN *fortran.vim* *fortran-syntax*
+FORTRAN *fortran.vim* *ft-fortran-syntax*
Default highlighting and dialect ~
Highlighting appropriate for f95 (Fortran 95) is used by default. This choice
@@ -1114,11 +1114,11 @@
strings are not recognized. Some keywords may be highlighted incorrectly
because Fortran90 has no reserved words.
-For further information related to fortran, see |fortran-indent| and
-|fortran-plugin|.
+For further information related to fortran, see |ft-fortran-indent| and
+|ft-fortran-plugin|.
-FVWM CONFIGURATION FILES *fvwm.vim* *fvwm-syntax*
+FVWM CONFIGURATION FILES *fvwm.vim* *ft-fvwm-syntax*
In order for Vim to recognize Fvwm configuration files that do not match
the patterns *fvwmrc* or *fvwm2rc* , you must put additional patterns
@@ -1142,7 +1142,7 @@
to your .vimrc file.
-GSP *gsp.vim*
+GSP *gsp.vim* *ft-gsp-syntax*
The default coloring style for GSP pages is defined by |html.vim|, and
the coloring for java code (within java tags or inline between backticks)
@@ -1165,7 +1165,7 @@
group to make them easier to see.
-GROFF *groff.vim* *groff-syntax*
+GROFF *groff.vim* *ft-groff-syntax*
The groff syntax file is a wrapper for |nroff.vim|, see the notes
under that heading for examples of use and configuration. The purpose
@@ -1174,7 +1174,7 @@
(see |filetype.txt|).
-HASKELL *haskell.vim* *lhaskell.vim* *haskell-syntax*
+HASKELL *haskell.vim* *lhaskell.vim* *ft-haskell-syntax*
The Haskell syntax files support plain Haskell code as well as literate
Haskell code, the latter in both Bird style and TeX style. The Haskell
@@ -1218,7 +1218,7 @@
loading a file.
-HTML *html.vim* *html-syntax*
+HTML *html.vim* *ft-html-syntax*
The coloring scheme for tags in the HTML file works as follows.
@@ -1291,7 +1291,7 @@
the preprocessor language to the cluster htmlPreproc.
-HTML/OS (by Aestiva) *htmlos.vim* *htmlos-syntax*
+HTML/OS (by Aestiva) *htmlos.vim* *ft-htmlos-syntax*
The coloring scheme for HTML/OS works as follows:
@@ -1312,7 +1312,7 @@
block of HTML/OS code can either be << or [[ and >> or ]], respectively.
-IA64 *ia64.vim* *intel-itanium* *ia64-syntax*
+IA64 *ia64.vim* *intel-itanium* *ft-ia64-syntax*
Highlighting for the Intel Itanium 64 assembly language. See |asm.vim| for
how to recognize this filetype.
@@ -1321,7 +1321,7 @@
:let g:filetype_inc = "ia64"
-INFORM *inform.vim* *inform-syntax*
+INFORM *inform.vim* *ft-inform-syntax*
Inform highlighting includes symbols provided by the Inform Library, as
most programs make extensive use of it. If do not wish Library symbols
@@ -1350,7 +1350,7 @@
:let inform_highlight_old=1
-JAVA *java.vim* *java-syntax*
+JAVA *java.vim* *ft-java-syntax*
The java.vim syntax highlighting file offers several options:
@@ -1443,7 +1443,7 @@
number is that redrawing can become slow.
-LACE *lace.vim* *lace-syntax*
+LACE *lace.vim* *ft-lace-syntax*
Lace (Language for Assembly of Classes in Eiffel) is case insensitive, but the
style guide lines are not. If you prefer case insensitive highlighting, just
@@ -1451,7 +1451,7 @@
:let lace_case_insensitive=1
-LEX *lex.vim* *lex-syntax*
+LEX *lex.vim* *ft-lex-syntax*
Lex uses brute-force synchronizing as the "^%%$" section delimiter
gives no clue as to what section follows. Consequently, the value for >
@@ -1460,7 +1460,7 @@
difficulties (such as may happen with large lex files).
-LITE *lite.vim* *lite-syntax*
+LITE *lite.vim* *ft-lite-syntax*
There are two options for the lite syntax highlighting.
@@ -1474,7 +1474,7 @@
:let lite_minlines = 200
-LPC *lpc.vim* *lpc-syntax*
+LPC *lpc.vim* *ft-lpc-syntax*
LPC stands for a simple, memory-efficient language: Lars Pensj| C. The
file name of LPC is usually *.c. Recognizing these files as LPC would bother
@@ -1515,7 +1515,7 @@
instead, and the name of your source file should be *.pike
-LUA *lua.vim* *lua-syntax*
+LUA *lua.vim* *ft-lua-syntax*
This syntax file may be used for Lua 4.0 and Lua 5.0 (default). If you are
programming in Lua 4.0, use this: >
@@ -1525,7 +1525,7 @@
If lua_version variable doesn't exist, it is set to 5.
-MAIL *mail.vim*
+MAIL *mail.vim* *ft-mail.vim*
Vim highlights all the standard elements of an email (headers, signatures,
quoted text and URLs / email addresses). In keeping with standard conventions,
@@ -1543,7 +1543,7 @@
:let mail_minlines = 30
-MAKE *make.vim* *make-syntax*
+MAKE *make.vim* *ft-make-syntax*
In makefiles, commands are usually highlighted to make it easy for you to spot
errors. However, this may be too much coloring for you. You can turn this
@@ -1552,7 +1552,7 @@
:let make_no_commands = 1
-MAPLE *maple.vim* *maple-syntax*
+MAPLE *maple.vim* *ft-maple-syntax*
Maple V, by Waterloo Maple Inc, supports symbolic algebra. The language
supports many packages of functions which are selectively loaded by the user.
@@ -1577,7 +1577,7 @@
mv_finance mv_logic mv_powseries
-MATHEMATICA *mma.vim* *mma-syntax* *mathematica-syntax*
+MATHEMATICA *mma.vim* *ft-mma-syntax* *ft-mathematica-syntax*
Empty *.m files will automatically be presumed to be Matlab files unless you
have the following in your .vimrc: >
@@ -1585,7 +1585,7 @@
let filetype_m = "mma"
-MOO *moo.vim* *moo-syntax*
+MOO *moo.vim* *ft-moo-syntax*
If you use C-style comments inside expressions and find it mangles your
highlighting, you may want to use extended (slow!) matches for C-style
@@ -1621,7 +1621,7 @@
:syn keyword mooKnownBuiltinFunction sprintf contained
-MSQL *msql.vim* *msql-syntax*
+MSQL *msql.vim* *ft-msql-syntax*
There are two options for the msql syntax highlighting.
@@ -1635,7 +1635,7 @@
:let msql_minlines = 200
-NCF *ncf.vim* *ncf-syntax*
+NCF *ncf.vim* *ft-ncf-syntax*
There is one option for NCF syntax highlighting.
@@ -1647,7 +1647,7 @@
If you don't want to highlight these errors, leave it unset.
-NROFF *nroff.vim* *nroff-syntax*
+NROFF *nroff.vim* *ft-nroff-syntax*
The nroff syntax file works with AT&T n/troff out of the box. You need to
activate the GNU groff extra features included in the syntax file before you
@@ -1718,7 +1718,7 @@
groff syntax highlighting either on a file basis or globally by default.
-OCAML *ocaml.vim* *ocaml-syntax*
+OCAML *ocaml.vim* *ft-ocaml-syntax*
The OCaml syntax file handles files having the following prefixes: .ml,
.mli, .mll and .mly. By setting the following variable >
@@ -1734,7 +1734,7 @@
contain very long structures that Vim does not synchronize anymore.
-PAPP *papp.vim* *papp-syntax*
+PAPP *papp.vim* *ft-papp-syntax*
The PApp syntax file handles .papp files and, to a lesser extend, .pxml
and .pxsl files which are all a mixture of perl/xml/html/other using xml
@@ -1752,7 +1752,7 @@
http://papp.plan9.de.
-PASCAL *pascal.vim* *pascal-syntax*
+PASCAL *pascal.vim* *ft-pascal-syntax*
Files matching "*.p" could be Progress or Pascal. If the automatic detection
doesn't work for you, or you don't edit Progress at all, use this in your
@@ -1806,7 +1806,7 @@
-PERL *perl.vim* *perl-syntax*
+PERL *perl.vim* *ft-perl-syntax*
There are a number of possible options to the perl syntax highlighting.
@@ -1866,7 +1866,7 @@
:let perl_fold_blocks = 1
-PHP3 and PHP4 *php.vim* *php3.vim* *php-syntax* *php3-syntax*
+PHP3 and PHP4 *php.vim* *php3.vim* *ft-php-syntax* *ft-php3-syntax*
[note: previously this was called "php3", but since it now also supports php4
it has been renamed to "php"]
@@ -1919,7 +1919,7 @@
x = 0 to sync from start.
-PPWIZARD *ppwiz.vim* *ppwiz-syntax*
+PPWIZARD *ppwiz.vim* *ft-ppwiz-syntax*
PPWizard is a preprocessor for HTML and OS/2 INF files
@@ -1941,7 +1941,7 @@
HTML code; if 0, treat HTML code like ordinary text.
-PHTML *phtml.vim* *phtml-syntax*
+PHTML *phtml.vim* *ft-phtml-syntax*
There are two options for the phtml syntax highlighting.
@@ -1955,7 +1955,7 @@
:let phtml_minlines = 200
-POSTSCRIPT *postscr.vim* *postscr-syntax*
+POSTSCRIPT *postscr.vim* *ft-postscr-syntax*
There are several options when it comes to highlighting PostScript.
@@ -2010,8 +2010,8 @@
:let postscr_andornot_binary=1
<
- *ptcap.vim*
-PRINTCAP + TERMCAP *ptcap-syntax* *termcap-syntax* *printcap-syntax*
+ *ptcap.vim* *ft-printcap-syntax*
+PRINTCAP + TERMCAP *ft-ptcap-syntax* *ft-termcap-syntax*
This syntax file applies to the printcap and termcap databases.
@@ -2036,7 +2036,7 @@
(The default is 20 lines.)
-PROGRESS *progress.vim* *progress-syntax*
+PROGRESS *progress.vim* *ft-progress-syntax*
Files matching "*.w" could be Progress or cweb. If the automatic detection
doesn't work for you, or you don't edit cweb at all, use this in your
@@ -2048,7 +2048,7 @@
:let filetype_p = "progress"
-PYTHON *python.vim* *python-syntax*
+PYTHON *python.vim* *ft-python-syntax*
There are four options to control Python syntax highlighting.
@@ -2069,7 +2069,7 @@
:let python_highlight_all = 1
-QUAKE *quake.vim* *quake-syntax*
+QUAKE *quake.vim* *ft-quake-syntax*
The Quake syntax definition should work for most any FPS (First Person
Shooter) based on one of the Quake engines. However, the command names vary
@@ -2091,7 +2091,7 @@
commands than are actually available to you by the game.
-READLINE *readline.vim* *readline-syntax*
+READLINE *readline.vim* *ft-readline-syntax*
The readline library is primarily used by the BASH shell, which adds quite a
few commands and options to the ones already available. To highlight these
@@ -2103,7 +2103,7 @@
later, and part earlier) adds.
-REXX *rexx.vim* *rexx-syntax*
+REXX *rexx.vim* *ft-rexx-syntax*
If you notice highlighting errors while scrolling backwards, which are fixed
when redrawing with CTRL-L, try setting the "rexx_minlines" internal variable
@@ -2114,7 +2114,7 @@
number is that redrawing can become slow.
-RUBY *ruby.vim* *ruby-syntax*
+RUBY *ruby.vim* *ft-ruby-syntax*
There are a few options to the Ruby syntax highlighting.
@@ -2139,7 +2139,7 @@
"$global_var", "@instance_var", "| iterator |", and ":symbol".
-SCHEME *scheme.vim* *scheme-syntax*
+SCHEME *scheme.vim* *ft-scheme-syntax*
By default only R5RS keywords are highlighted and properly indented.
@@ -2150,7 +2150,7 @@
b:is_chicken or g:is_chicken, if you need them.
-SDL *sdl.vim* *sdl-syntax*
+SDL *sdl.vim* *ft-sdl-syntax*
The SDL highlighting probably misses a few keywords, but SDL has so many
of them it's almost impossibly to cope.
@@ -2170,7 +2170,7 @@
satisfied with it for my own projects.
-SED *sed.vim* *sed-syntax*
+SED *sed.vim* *ft-sed-syntax*
To make tabs stand out from regular blanks (accomplished by using Todo
highlighting on the tabs), define "highlight_sedtabs" by putting >
@@ -2193,7 +2193,7 @@
each plausible pattern delimiter).
-SGML *sgml.vim* *sgml-syntax*
+SGML *sgml.vim* *ft-sgml-syntax*
The coloring scheme for tags in the SGML file works as follows.
@@ -2234,7 +2234,7 @@
(Adapted from the html.vim help text by Claudio Fleiner <claudio@fleiner.com>)
-SH *sh.vim* *sh-syntax* *bash-syntax* *ksh-syntax*
+SH *sh.vim* *ft-sh-syntax* *ft-bash-syntax* *ft-ksh-syntax*
This covers the "normal" Unix (Bourne) sh, bash and the Korn shell.
@@ -2285,7 +2285,7 @@
speed up displaying. The disadvantage is that highlight errors may appear.
-SPEEDUP (AspenTech plant simulator) *spup.vim* *spup-syntax*
+SPEEDUP (AspenTech plant simulator) *spup.vim* *ft-spup-syntax*
The Speedup syntax file has some options:
@@ -2317,8 +2317,8 @@
the syntax file.
-SQL *sql.vim* *sql-syntax*
- *sqlinformix.vim* *sqlinformix-syntax*
+SQL *sql.vim* *ft-sql-syntax*
+ *sqlinformix.vim* *ft-sqlinformix-syntax*
While there is an ANSI standard for SQL, most database engines add their
own custom extensions. Vim currently supports the Oracle and Informix
@@ -2328,7 +2328,7 @@
:let g:filetype_sql = "sqlinformix"
-TCSH *tcsh.vim* *tcsh-syntax*
+TCSH *tcsh.vim* *ft-tcsh-syntax*
This covers the shell named "tcsh". It is a superset of csh. See |csh.vim|
for how the filetype is detected.
@@ -2350,7 +2350,7 @@
number is that redrawing can become slow.
-TEX *tex.vim* *tex-syntax*
+TEX *tex.vim* *ft-tex-syntax*
*tex-folding*
Want Syntax Folding? ~
@@ -2425,7 +2425,7 @@
always accept such use of @.
-TF *tf.vim* *tf-syntax*
+TF *tf.vim* *ft-tf-syntax*
There is one option for the tf syntax highlighting.
@@ -2435,7 +2435,7 @@
:let tf_minlines = your choice
-VIM *vim.vim* *vim-syntax*
+VIM *vim.vim* *ft-vim-syntax*
There is a tradeoff between more accurate syntax highlighting versus
screen updating speed. To improve accuracy, you may wish to increase
@@ -2459,7 +2459,7 @@
loaded.
-XF86CONFIG *xf86conf.vim* *xf86conf-syntax*
+XF86CONFIG *xf86conf.vim* *ft-xf86conf-syntax*
The syntax of XF86Config file differs in XFree86 v3.x and v4.x. Both
variants are supported. Automatic detection is used, but is far from perfect.
@@ -2474,7 +2474,7 @@
highlighted.
-XML *xml.vim* *xml-syntax*
+XML *xml.vim* *ft-xml-syntax*
Xml namespaces are highlighted by default. This can be inhibited by
setting a global variable: >
@@ -2492,7 +2492,7 @@
especially for large files.
-X Pixmaps (XPM) *xpm.vim* *xpm-syntax*
+X Pixmaps (XPM) *xpm.vim* *ft-xpm-syntax*
xpm.vim creates its syntax items dynamically based upon the contents of the
XPM file. Thus if you make changes e.g. in the color specification strings,
diff --git a/runtime/doc/tags b/runtime/doc/tags
index afa6b7b..ef72d3c 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -1036,6 +1036,8 @@
+comments various.txt /*+comments*
+cryptv various.txt /*+cryptv*
+cscope various.txt /*+cscope*
++cursorshape various.txt /*+cursorshape*
++debug various.txt /*+debug*
+dialog_con various.txt /*+dialog_con*
+dialog_con_gui various.txt /*+dialog_con_gui*
+dialog_gui various.txt /*+dialog_gui*
@@ -1702,6 +1704,7 @@
:aun gui.txt /*:aun*
:aunmenu gui.txt /*:aunmenu*
:autocmd autocmd.txt /*:autocmd*
+:autocmd-verbose autocmd.txt /*:autocmd-verbose*
:b windows.txt /*:b*
:bN windows.txt /*:bN*
:bNext windows.txt /*:bNext*
@@ -4140,10 +4143,8 @@
ab motion.txt /*ab*
abandon editing.txt /*abandon*
abbreviations map.txt /*abbreviations*
-abel-syntax syntax.txt /*abel-syntax*
abel.vim syntax.txt /*abel.vim*
active-buffer windows.txt /*active-buffer*
-ada-syntax syntax.txt /*ada-syntax*
ada.vim syntax.txt /*ada.vim*
add() eval.txt /*add()*
add-filetype-plugin usr_05.txt /*add-filetype-plugin*
@@ -4176,11 +4177,9 @@
alt-input debugger.txt /*alt-input*
alternate-file editing.txt /*alternate-file*
amiga-window starting.txt /*amiga-window*
-ant-syntax syntax.txt /*ant-syntax*
ant.vim syntax.txt /*ant.vim*
antialias gui_x11.txt /*antialias*
ap motion.txt /*ap*
-apache-syntax syntax.txt /*apache-syntax*
apache.vim syntax.txt /*apache.vim*
append() eval.txt /*append()*
aquote motion.txt /*aquote*
@@ -4195,14 +4194,9 @@
argument-list editing.txt /*argument-list*
argv() eval.txt /*argv()*
as motion.txt /*as*
-asm-syntax syntax.txt /*asm-syntax*
asm.vim syntax.txt /*asm.vim*
asm68k syntax.txt /*asm68k*
-asm68k-syntax syntax.txt /*asm68k-syntax*
-asmh8300-syntax syntax.txt /*asmh8300-syntax*
asmh8300.vim syntax.txt /*asmh8300.vim*
-aspperl-syntax syntax.txt /*aspperl-syntax*
-aspvbs-syntax syntax.txt /*aspvbs-syntax*
at motion.txt /*at*
athena-intellimouse gui.txt /*athena-intellimouse*
attr-list syntax.txt /*attr-list*
@@ -4226,7 +4220,6 @@
autocmd-remove autocmd.txt /*autocmd-remove*
autocmd-searchpat autocmd.txt /*autocmd-searchpat*
autocmd-use autocmd.txt /*autocmd-use*
-autocmd-verbose autocmd.txt /*autocmd-verbose*
autocmd.txt autocmd.txt /*autocmd.txt*
autocmds-kept version5.txt /*autocmds-kept*
autocommand autocmd.txt /*autocommand*
@@ -4255,8 +4248,6 @@
bar motion.txt /*bar*
bars help.txt /*bars*
base_font_name_list mbyte.txt /*base_font_name_list*
-bash-syntax syntax.txt /*bash-syntax*
-basic-syntax syntax.txt /*basic-syntax*
basic.vim syntax.txt /*basic.vim*
beep options.txt /*beep*
beos-colors os_beos.txt /*beos-colors*
@@ -4319,7 +4310,6 @@
byteidx() eval.txt /*byteidx()*
bzip2 pi_gzip.txt /*bzip2*
c change.txt /*c*
-c-syntax syntax.txt /*c-syntax*
c.vim syntax.txt /*c.vim*
cW change.txt /*cW*
c_<BS> cmdline.txt /*c_<BS>*
@@ -4393,7 +4383,6 @@
catch-order eval.txt /*catch-order*
catch-text eval.txt /*catch-text*
cc change.txt /*cc*
-ch-syntax syntax.txt /*ch-syntax*
ch.vim syntax.txt /*ch.vim*
change-list-jumps motion.txt /*change-list-jumps*
change-tabs change.txt /*change-tabs*
@@ -4410,8 +4399,6 @@
changed-6.2 version6.txt /*changed-6.2*
changed-6.3 version6.txt /*changed-6.3*
changelist motion.txt /*changelist*
-changelog-plugin filetype.txt /*changelog-plugin*
-changelog-syntax syntax.txt /*changelog-syntax*
changelog.vim syntax.txt /*changelog.vim*
changetick eval.txt /*changetick*
changing change.txt /*changing*
@@ -4423,7 +4410,6 @@
charconvert_to-variable eval.txt /*charconvert_to-variable*
charset mbyte.txt /*charset*
charset-conversion mbyte.txt /*charset-conversion*
-chill-syntax syntax.txt /*chill-syntax*
chill.vim syntax.txt /*chill.vim*
cindent() eval.txt /*cindent()*
cinkeys-format indent.txt /*cinkeys-format*
@@ -4446,12 +4432,10 @@
cmdline.txt cmdline.txt /*cmdline.txt*
cmdwin cmdline.txt /*cmdwin*
cmdwin-char cmdline.txt /*cmdwin-char*
-cobol-syntax syntax.txt /*cobol-syntax*
cobol.vim syntax.txt /*cobol.vim*
codeset mbyte.txt /*codeset*
coding-style develop.txt /*coding-style*
col() eval.txt /*col()*
-coldfusion-syntax syntax.txt /*coldfusion-syntax*
coldfusion.vim syntax.txt /*coldfusion.vim*
collapse tips.txt /*collapse*
color-xterm syntax.txt /*color-xterm*
@@ -4583,7 +4567,6 @@
cscopetag if_cscop.txt /*cscopetag*
cscopetagorder if_cscop.txt /*cscopetagorder*
cscopeverbose if_cscop.txt /*cscopeverbose*
-csh-syntax syntax.txt /*csh-syntax*
csh.vim syntax.txt /*csh.vim*
cspc if_cscop.txt /*cspc*
csprg if_cscop.txt /*csprg*
@@ -4615,9 +4598,7 @@
cursor_right intro.txt /*cursor_right*
cursor_up intro.txt /*cursor_up*
cw change.txt /*cw*
-cweb-syntax syntax.txt /*cweb-syntax*
cweb.vim syntax.txt /*cweb.vim*
-cynlib-syntax syntax.txt /*cynlib-syntax*
cynlib.vim syntax.txt /*cynlib.vim*
d change.txt /*d*
daB motion.txt /*daB*
@@ -4657,7 +4638,6 @@
design-multi-platform develop.txt /*design-multi-platform*
design-not develop.txt /*design-not*
design-speed-size develop.txt /*design-speed-size*
-desktop-syntax syntax.txt /*desktop-syntax*
desktop.vim syntax.txt /*desktop.vim*
develop-spell develop.txt /*develop-spell*
develop.txt develop.txt /*develop.txt*
@@ -4689,7 +4669,6 @@
digraphs-define digraph.txt /*digraphs-define*
digraphs-use digraph.txt /*digraphs-use*
dip motion.txt /*dip*
-dircolors-syntax syntax.txt /*dircolors-syntax*
dircolors.vim syntax.txt /*dircolors.vim*
dis motion.txt /*dis*
disable-menus gui.txt /*disable-menus*
@@ -4698,11 +4677,8 @@
dl change.txt /*dl*
do diff.txt /*do*
doc-file-list help.txt /*doc-file-list*
-docbk-syntax syntax.txt /*docbk-syntax*
docbk.vim syntax.txt /*docbk.vim*
-docbksgml-syntax syntax.txt /*docbksgml-syntax*
docbksgml.vim syntax.txt /*docbksgml.vim*
-docbkxml-syntax syntax.txt /*docbkxml-syntax*
docbkxml.vim syntax.txt /*docbkxml.vim*
docbook syntax.txt /*docbook*
documentation-6 version6.txt /*documentation-6*
@@ -4719,7 +4695,6 @@
dos-temp-files os_dos.txt /*dos-temp-files*
dos16 os_msdos.txt /*dos16*
dos32 os_msdos.txt /*dos32*
-dosbatch-syntax syntax.txt /*dosbatch-syntax*
dosbatch.vim syntax.txt /*dosbatch.vim*
double-click term.txt /*double-click*
download intro.txt /*download*
@@ -4727,7 +4702,6 @@
drag-n-drop gui.txt /*drag-n-drop*
drag-n-drop-win32 gui_w32.txt /*drag-n-drop-win32*
drag-status-line term.txt /*drag-status-line*
-dtd-syntax syntax.txt /*dtd-syntax*
dtd.vim syntax.txt /*dtd.vim*
dying-variable eval.txt /*dying-variable*
e motion.txt /*e*
@@ -4741,7 +4715,6 @@
editing.txt editing.txt /*editing.txt*
efm-entries quickfix.txt /*efm-entries*
efm-ignore quickfix.txt /*efm-ignore*
-eiffel-syntax syntax.txt /*eiffel-syntax*
eiffel.vim syntax.txt /*eiffel.vim*
emacs-keys tips.txt /*emacs-keys*
emacs-tags tagsrch.txt /*emacs-tags*
@@ -4754,7 +4727,6 @@
end intro.txt /*end*
end-of-file pattern.txt /*end-of-file*
enlightened-terminal syntax.txt /*enlightened-terminal*
-erlang-syntax syntax.txt /*erlang-syntax*
erlang.vim syntax.txt /*erlang.vim*
errmsg-variable eval.txt /*errmsg-variable*
error-file-format quickfix.txt /*error-file-format*
@@ -4964,18 +4936,114 @@
fontset mbyte.txt /*fontset*
foreground() eval.txt /*foreground()*
fork os_unix.txt /*fork*
-form-syntax syntax.txt /*form-syntax*
form.vim syntax.txt /*form.vim*
format-bullet-list tips.txt /*format-bullet-list*
format-comments change.txt /*format-comments*
formatting change.txt /*formatting*
formfeed intro.txt /*formfeed*
-fortran-indent indent.txt /*fortran-indent*
-fortran-plugin filetype.txt /*fortran-plugin*
-fortran-syntax syntax.txt /*fortran-syntax*
fortran.vim syntax.txt /*fortran.vim*
french-maillist intro.txt /*french-maillist*
frombook usr_01.txt /*frombook*
+ft-abel-syntax syntax.txt /*ft-abel-syntax*
+ft-ada-syntax syntax.txt /*ft-ada-syntax*
+ft-ant-syntax syntax.txt /*ft-ant-syntax*
+ft-apache-syntax syntax.txt /*ft-apache-syntax*
+ft-asm-syntax syntax.txt /*ft-asm-syntax*
+ft-asm68k-syntax syntax.txt /*ft-asm68k-syntax*
+ft-asmh8300-syntax syntax.txt /*ft-asmh8300-syntax*
+ft-aspperl-syntax syntax.txt /*ft-aspperl-syntax*
+ft-aspvbs-syntax syntax.txt /*ft-aspvbs-syntax*
+ft-bash-syntax syntax.txt /*ft-bash-syntax*
+ft-basic-syntax syntax.txt /*ft-basic-syntax*
+ft-c-syntax syntax.txt /*ft-c-syntax*
+ft-ch-syntax syntax.txt /*ft-ch-syntax*
+ft-changelog-plugin filetype.txt /*ft-changelog-plugin*
+ft-changelog-syntax syntax.txt /*ft-changelog-syntax*
+ft-chill-syntax syntax.txt /*ft-chill-syntax*
+ft-cobol-syntax syntax.txt /*ft-cobol-syntax*
+ft-coldfusion-syntax syntax.txt /*ft-coldfusion-syntax*
+ft-csh-syntax syntax.txt /*ft-csh-syntax*
+ft-cweb-syntax syntax.txt /*ft-cweb-syntax*
+ft-cynlib-syntax syntax.txt /*ft-cynlib-syntax*
+ft-desktop-syntax syntax.txt /*ft-desktop-syntax*
+ft-dircolors-syntax syntax.txt /*ft-dircolors-syntax*
+ft-docbk-syntax syntax.txt /*ft-docbk-syntax*
+ft-docbksgml-syntax syntax.txt /*ft-docbksgml-syntax*
+ft-docbkxml-syntax syntax.txt /*ft-docbkxml-syntax*
+ft-dosbatch-syntax syntax.txt /*ft-dosbatch-syntax*
+ft-dtd-syntax syntax.txt /*ft-dtd-syntax*
+ft-eiffel-syntax syntax.txt /*ft-eiffel-syntax*
+ft-erlang-syntax syntax.txt /*ft-erlang-syntax*
+ft-form-syntax syntax.txt /*ft-form-syntax*
+ft-fortran-indent indent.txt /*ft-fortran-indent*
+ft-fortran-plugin filetype.txt /*ft-fortran-plugin*
+ft-fortran-syntax syntax.txt /*ft-fortran-syntax*
+ft-fvwm-syntax syntax.txt /*ft-fvwm-syntax*
+ft-groff-syntax syntax.txt /*ft-groff-syntax*
+ft-gsp-syntax syntax.txt /*ft-gsp-syntax*
+ft-haskell-syntax syntax.txt /*ft-haskell-syntax*
+ft-html-syntax syntax.txt /*ft-html-syntax*
+ft-htmlos-syntax syntax.txt /*ft-htmlos-syntax*
+ft-ia64-syntax syntax.txt /*ft-ia64-syntax*
+ft-inform-syntax syntax.txt /*ft-inform-syntax*
+ft-java-syntax syntax.txt /*ft-java-syntax*
+ft-ksh-syntax syntax.txt /*ft-ksh-syntax*
+ft-lace-syntax syntax.txt /*ft-lace-syntax*
+ft-lex-syntax syntax.txt /*ft-lex-syntax*
+ft-lite-syntax syntax.txt /*ft-lite-syntax*
+ft-lpc-syntax syntax.txt /*ft-lpc-syntax*
+ft-lua-syntax syntax.txt /*ft-lua-syntax*
+ft-mail-plugin filetype.txt /*ft-mail-plugin*
+ft-mail.vim syntax.txt /*ft-mail.vim*
+ft-make-syntax syntax.txt /*ft-make-syntax*
+ft-man-plugin filetype.txt /*ft-man-plugin*
+ft-maple-syntax syntax.txt /*ft-maple-syntax*
+ft-masm-syntax syntax.txt /*ft-masm-syntax*
+ft-mathematica-syntax syntax.txt /*ft-mathematica-syntax*
+ft-mma-syntax syntax.txt /*ft-mma-syntax*
+ft-moo-syntax syntax.txt /*ft-moo-syntax*
+ft-msql-syntax syntax.txt /*ft-msql-syntax*
+ft-nasm-syntax syntax.txt /*ft-nasm-syntax*
+ft-ncf-syntax syntax.txt /*ft-ncf-syntax*
+ft-nroff-syntax syntax.txt /*ft-nroff-syntax*
+ft-ocaml-syntax syntax.txt /*ft-ocaml-syntax*
+ft-papp-syntax syntax.txt /*ft-papp-syntax*
+ft-pascal-syntax syntax.txt /*ft-pascal-syntax*
+ft-perl-syntax syntax.txt /*ft-perl-syntax*
+ft-php-syntax syntax.txt /*ft-php-syntax*
+ft-php3-syntax syntax.txt /*ft-php3-syntax*
+ft-phtml-syntax syntax.txt /*ft-phtml-syntax*
+ft-postscr-syntax syntax.txt /*ft-postscr-syntax*
+ft-ppwiz-syntax syntax.txt /*ft-ppwiz-syntax*
+ft-printcap-syntax syntax.txt /*ft-printcap-syntax*
+ft-progress-syntax syntax.txt /*ft-progress-syntax*
+ft-ptcap-syntax syntax.txt /*ft-ptcap-syntax*
+ft-python-indent indent.txt /*ft-python-indent*
+ft-python-syntax syntax.txt /*ft-python-syntax*
+ft-quake-syntax syntax.txt /*ft-quake-syntax*
+ft-readline-syntax syntax.txt /*ft-readline-syntax*
+ft-rexx-syntax syntax.txt /*ft-rexx-syntax*
+ft-ruby-syntax syntax.txt /*ft-ruby-syntax*
+ft-scheme-syntax syntax.txt /*ft-scheme-syntax*
+ft-sdl-syntax syntax.txt /*ft-sdl-syntax*
+ft-sed-syntax syntax.txt /*ft-sed-syntax*
+ft-sgml-syntax syntax.txt /*ft-sgml-syntax*
+ft-sh-syntax syntax.txt /*ft-sh-syntax*
+ft-spec-plugin filetype.txt /*ft-spec-plugin*
+ft-spup-syntax syntax.txt /*ft-spup-syntax*
+ft-sql-syntax syntax.txt /*ft-sql-syntax*
+ft-sqlinformix-syntax syntax.txt /*ft-sqlinformix-syntax*
+ft-tcsh-syntax syntax.txt /*ft-tcsh-syntax*
+ft-termcap-syntax syntax.txt /*ft-termcap-syntax*
+ft-tex-syntax syntax.txt /*ft-tex-syntax*
+ft-tf-syntax syntax.txt /*ft-tf-syntax*
+ft-vb-syntax syntax.txt /*ft-vb-syntax*
+ft-verilog-indent indent.txt /*ft-verilog-indent*
+ft-vim-indent indent.txt /*ft-vim-indent*
+ft-vim-syntax syntax.txt /*ft-vim-syntax*
+ft-xf86conf-syntax syntax.txt /*ft-xf86conf-syntax*
+ft-xml-syntax syntax.txt /*ft-xml-syntax*
+ft-xpm-syntax syntax.txt /*ft-xpm-syntax*
ftdetect filetype.txt /*ftdetect*
ftp pi_netrw.txt /*ftp*
ftplugin usr_41.txt /*ftplugin*
@@ -4991,7 +5059,6 @@
function-range-example eval.txt /*function-range-example*
function_key intro.txt /*function_key*
functions eval.txt /*functions*
-fvwm-syntax syntax.txt /*fvwm-syntax*
fvwm.vim syntax.txt /*fvwm.vim*
fvwm2rc syntax.txt /*fvwm2rc*
fvwmrc syntax.txt /*fvwmrc*
@@ -5125,7 +5192,6 @@
graphic-option-gone version4.txt /*graphic-option-gone*
greek options.txt /*greek*
grep quickfix.txt /*grep*
-groff-syntax syntax.txt /*groff-syntax*
groff.vim syntax.txt /*groff.vim*
group-name syntax.txt /*group-name*
gs various.txt /*gs*
@@ -5213,13 +5279,13 @@
has() eval.txt /*has()*
has-patch eval.txt /*has-patch*
has_key() eval.txt /*has_key()*
-haskell-syntax syntax.txt /*haskell-syntax*
haskell.vim syntax.txt /*haskell.vim*
hasmapto() eval.txt /*hasmapto()*
hebrew hebrew.txt /*hebrew*
hebrew.txt hebrew.txt /*hebrew.txt*
help various.txt /*help*
help-context help.txt /*help-context*
+help-tags tags 1
help-translated various.txt /*help-translated*
help-xterm-window various.txt /*help-xterm-window*
help.txt help.txt /*help.txt*
@@ -5307,9 +5373,7 @@
howto.txt howto.txt /*howto.txt*
hpterm term.txt /*hpterm*
hpterm-color syntax.txt /*hpterm-color*
-html-syntax syntax.txt /*html-syntax*
html.vim syntax.txt /*html.vim*
-htmlos-syntax syntax.txt /*htmlos-syntax*
htmlos.vim syntax.txt /*htmlos.vim*
http pi_netrw.txt /*http*
i insert.txt /*i*
@@ -5420,7 +5484,6 @@
i_digraph digraph.txt /*i_digraph*
i_esc intro.txt /*i_esc*
i` motion.txt /*i`*
-ia64-syntax syntax.txt /*ia64-syntax*
ia64.vim syntax.txt /*ia64.vim*
ib motion.txt /*ib*
iccf uganda.txt /*iccf*
@@ -5460,7 +5523,6 @@
index() eval.txt /*index()*
index.txt index.txt /*index.txt*
info-message starting.txt /*info-message*
-inform-syntax syntax.txt /*inform-syntax*
inform.vim syntax.txt /*inform.vim*
initialization starting.txt /*initialization*
input() eval.txt /*input()*
@@ -5511,7 +5573,6 @@
j motion.txt /*j*
java-cinoptions indent.txt /*java-cinoptions*
java-indenting indent.txt /*java-indenting*
-java-syntax syntax.txt /*java-syntax*
java.vim syntax.txt /*java.vim*
join() eval.txt /*join()*
jsbterm-mouse options.txt /*jsbterm-mouse*
@@ -5546,10 +5607,8 @@
keypad-point intro.txt /*keypad-point*
keys() eval.txt /*keys()*
known-bugs todo.txt /*known-bugs*
-ksh-syntax syntax.txt /*ksh-syntax*
l motion.txt /*l*
l:var eval.txt /*l:var*
-lace-syntax syntax.txt /*lace-syntax*
lace.vim syntax.txt /*lace.vim*
lang-variable eval.txt /*lang-variable*
language-mapping map.txt /*language-mapping*
@@ -5561,7 +5620,6 @@
len() eval.txt /*len()*
less various.txt /*less*
letter print.txt /*letter*
-lex-syntax syntax.txt /*lex-syntax*
lex.vim syntax.txt /*lex.vim*
lhaskell.vim syntax.txt /*lhaskell.vim*
libcall() eval.txt /*libcall()*
@@ -5581,7 +5639,6 @@
list-index eval.txt /*list-index*
list-modification eval.txt /*list-modification*
list-repeat windows.txt /*list-repeat*
-lite-syntax syntax.txt /*lite-syntax*
lite.vim syntax.txt /*lite.vim*
literal-string eval.txt /*literal-string*
lnum-variable eval.txt /*lnum-variable*
@@ -5597,9 +5654,7 @@
localtime() eval.txt /*localtime()*
long-lines version5.txt /*long-lines*
lowercase change.txt /*lowercase*
-lpc-syntax syntax.txt /*lpc-syntax*
lpc.vim syntax.txt /*lpc.vim*
-lua-syntax syntax.txt /*lua-syntax*
lua.vim syntax.txt /*lua.vim*
m motion.txt /*m*
m' motion.txt /*m'*
@@ -5616,13 +5671,10 @@
macintosh os_mac.txt /*macintosh*
macro map.txt /*macro*
mail-list intro.txt /*mail-list*
-mail-plugin filetype.txt /*mail-plugin*
mail.vim syntax.txt /*mail.vim*
maillist intro.txt /*maillist*
maillist-archive intro.txt /*maillist-archive*
-make-syntax syntax.txt /*make-syntax*
make.vim syntax.txt /*make.vim*
-man-plugin filetype.txt /*man-plugin*
manual-copyright usr_01.txt /*manual-copyright*
map() eval.txt /*map()*
map-<SID> map.txt /*map-<SID>*
@@ -5648,14 +5700,12 @@
map_space_in_rhs map.txt /*map_space_in_rhs*
maparg() eval.txt /*maparg()*
mapcheck() eval.txt /*mapcheck()*
-maple-syntax syntax.txt /*maple-syntax*
maple.vim syntax.txt /*maple.vim*
mapleader map.txt /*mapleader*
maplocalleader map.txt /*maplocalleader*
mapping map.txt /*mapping*
mark motion.txt /*mark*
mark-motions motion.txt /*mark-motions*
-masm-syntax syntax.txt /*masm-syntax*
masm.vim syntax.txt /*masm.vim*
match() eval.txt /*match()*
match-highlight pattern.txt /*match-highlight*
@@ -5663,7 +5713,6 @@
matchit-install usr_05.txt /*matchit-install*
matchlist() eval.txt /*matchlist()*
matchstr() eval.txt /*matchstr()*
-mathematica-syntax syntax.txt /*mathematica-syntax*
max() eval.txt /*max()*
mbyte-IME mbyte.txt /*mbyte-IME*
mbyte-XIM mbyte.txt /*mbyte-XIM*
@@ -5693,7 +5742,6 @@
missing-options vi_diff.txt /*missing-options*
mkdir() eval.txt /*mkdir()*
mlang.txt mlang.txt /*mlang.txt*
-mma-syntax syntax.txt /*mma-syntax*
mma.vim syntax.txt /*mma.vim*
mode() eval.txt /*mode()*
mode-Ex intro.txt /*mode-Ex*
@@ -5706,7 +5754,6 @@
modeline options.txt /*modeline*
modeline-local options.txt /*modeline-local*
modeline-version options.txt /*modeline-version*
-moo-syntax syntax.txt /*moo-syntax*
moo.vim syntax.txt /*moo.vim*
more-compatible version5.txt /*more-compatible*
more-prompt message.txt /*more-prompt*
@@ -5731,7 +5778,6 @@
msdos-problems os_msdos.txt /*msdos-problems*
msdos-termcap os_msdos.txt /*msdos-termcap*
msdos-versions os_msdos.txt /*msdos-versions*
-msql-syntax syntax.txt /*msql-syntax*
msql.vim syntax.txt /*msql.vim*
mswin.vim gui_w32.txt /*mswin.vim*
multi-byte mbyte.txt /*multi-byte*
@@ -5759,7 +5805,6 @@
mzscheme-vimext if_mzsch.txt /*mzscheme-vimext*
mzscheme-window if_mzsch.txt /*mzscheme-window*
n pattern.txt /*n*
-nasm-syntax syntax.txt /*nasm-syntax*
nasm.vim syntax.txt /*nasm.vim*
navigation motion.txt /*navigation*
nb-commands netbeans.txt /*nb-commands*
@@ -5768,7 +5813,6 @@
nb-messages netbeans.txt /*nb-messages*
nb-special netbeans.txt /*nb-special*
nb-terms netbeans.txt /*nb-terms*
-ncf-syntax syntax.txt /*ncf-syntax*
ncf.vim syntax.txt /*ncf.vim*
netbeans netbeans.txt /*netbeans*
netbeans-commands netbeans.txt /*netbeans-commands*
@@ -5792,6 +5836,7 @@
netrw-R pi_netrw.txt /*netrw-R*
netrw-S pi_netrw.txt /*netrw-S*
netrw-U pi_netrw.txt /*netrw-U*
+netrw-a pi_netrw.txt /*netrw-a*
netrw-activate pi_netrw.txt /*netrw-activate*
netrw-b pi_netrw.txt /*netrw-b*
netrw-bookmark pi_netrw.txt /*netrw-bookmark*
@@ -5830,8 +5875,8 @@
netrw-horiz pi_netrw.txt /*netrw-horiz*
netrw-i pi_netrw.txt /*netrw-i*
netrw-list pi_netrw.txt /*netrw-list*
+netrw-list-hack pi_netrw.txt /*netrw-list-hack*
netrw-listbookmark pi_netrw.txt /*netrw-listbookmark*
-netrw-listhack pi_netrw.txt /*netrw-listhack*
netrw-maps pi_netrw.txt /*netrw-maps*
netrw-move pi_netrw.txt /*netrw-move*
netrw-netrc pi_netrw.txt /*netrw-netrc*
@@ -5955,7 +6000,6 @@
notation intro.txt /*notation*
notepad gui_w32.txt /*notepad*
nr2char() eval.txt /*nr2char()*
-nroff-syntax syntax.txt /*nroff-syntax*
nroff.vim syntax.txt /*nroff.vim*
numbered-function eval.txt /*numbered-function*
o insert.txt /*o*
@@ -5966,7 +6010,6 @@
object-select motion.txt /*object-select*
objects index.txt /*objects*
obtaining-exted netbeans.txt /*obtaining-exted*
-ocaml-syntax syntax.txt /*ocaml-syntax*
ocaml.vim syntax.txt /*ocaml.vim*
ole-activation if_ole.txt /*ole-activation*
ole-eval if_ole.txt /*ole-eval*
@@ -6009,10 +6052,8 @@
page_down intro.txt /*page_down*
page_up intro.txt /*page_up*
pager message.txt /*pager*
-papp-syntax syntax.txt /*papp-syntax*
papp.vim syntax.txt /*papp.vim*
paragraph motion.txt /*paragraph*
-pascal-syntax syntax.txt /*pascal-syntax*
pascal.vim syntax.txt /*pascal.vim*
pattern pattern.txt /*pattern*
pattern-atoms pattern.txt /*pattern-atoms*
@@ -6044,7 +6085,6 @@
perl-editing if_perl.txt /*perl-editing*
perl-overview if_perl.txt /*perl-overview*
perl-patterns pattern.txt /*perl-patterns*
-perl-syntax syntax.txt /*perl-syntax*
perl-using if_perl.txt /*perl-using*
perl.vim syntax.txt /*perl.vim*
pexpr-option print.txt /*pexpr-option*
@@ -6052,11 +6092,8 @@
pheader-option print.txt /*pheader-option*
photon-fonts os_qnx.txt /*photon-fonts*
photon-gui os_qnx.txt /*photon-gui*
-php-syntax syntax.txt /*php-syntax*
php.vim syntax.txt /*php.vim*
-php3-syntax syntax.txt /*php3-syntax*
php3.vim syntax.txt /*php3.vim*
-phtml-syntax syntax.txt /*phtml-syntax*
phtml.vim syntax.txt /*phtml.vim*
pi_gzip.txt pi_gzip.txt /*pi_gzip.txt*
pi_netrw.txt pi_netrw.txt /*pi_netrw.txt*
@@ -6075,14 +6112,12 @@
posix vi_diff.txt /*posix*
posix-compliance vi_diff.txt /*posix-compliance*
posix-screen-size vi_diff.txt /*posix-screen-size*
-postscr-syntax syntax.txt /*postscr-syntax*
postscr.vim syntax.txt /*postscr.vim*
postscript-cjk-printing print.txt /*postscript-cjk-printing*
postscript-print-encoding print.txt /*postscript-print-encoding*
postscript-print-trouble print.txt /*postscript-print-trouble*
postscript-print-util print.txt /*postscript-print-util*
postscript-printing print.txt /*postscript-printing*
-ppwiz-syntax syntax.txt /*ppwiz-syntax*
ppwiz.vim syntax.txt /*ppwiz.vim*
press-enter message.txt /*press-enter*
press-return message.txt /*press-return*
@@ -6092,7 +6127,6 @@
print-intro print.txt /*print-intro*
print-options print.txt /*print-options*
print.txt print.txt /*print.txt*
-printcap-syntax syntax.txt /*printcap-syntax*
printf() eval.txt /*printf()*
printing print.txt /*printing*
printing-formfeed print.txt /*printing-formfeed*
@@ -6100,9 +6134,7 @@
profiling repeat.txt /*profiling*
profiling-variable eval.txt /*profiling-variable*
progname-variable eval.txt /*progname-variable*
-progress-syntax syntax.txt /*progress-syntax*
progress.vim syntax.txt /*progress.vim*
-ptcap-syntax syntax.txt /*ptcap-syntax*
ptcap.vim syntax.txt /*ptcap.vim*
pterm-mouse options.txt /*pterm-mouse*
put change.txt /*put*
@@ -6116,11 +6148,9 @@
python-error if_pyth.txt /*python-error*
python-eval if_pyth.txt /*python-eval*
python-examples if_pyth.txt /*python-examples*
-python-indent indent.txt /*python-indent*
python-input if_pyth.txt /*python-input*
python-output if_pyth.txt /*python-output*
python-range if_pyth.txt /*python-range*
-python-syntax syntax.txt /*python-syntax*
python-vim if_pyth.txt /*python-vim*
python-window if_pyth.txt /*python-window*
python-windows if_pyth.txt /*python-windows*
@@ -6133,7 +6163,6 @@
qnx-compiling os_qnx.txt /*qnx-compiling*
qnx-general os_qnx.txt /*qnx-general*
qnx-terminal os_qnx.txt /*qnx-terminal*
-quake-syntax syntax.txt /*quake-syntax*
quake.vim syntax.txt /*quake.vim*
quickfix quickfix.txt /*quickfix*
quickfix-6 version6.txt /*quickfix-6*
@@ -6188,7 +6217,6 @@
read-only-share editing.txt /*read-only-share*
read-stdin version5.txt /*read-stdin*
readfile() eval.txt /*readfile()*
-readline-syntax syntax.txt /*readline-syntax*
readline.vim syntax.txt /*readline.vim*
recording repeat.txt /*recording*
recover.txt recover.txt /*recover.txt*
@@ -6227,7 +6255,6 @@
retab-example change.txt /*retab-example*
rethrow eval.txt /*rethrow*
reverse() eval.txt /*reverse()*
-rexx-syntax syntax.txt /*rexx-syntax*
rexx.vim syntax.txt /*rexx.vim*
rgb.txt gui_w32.txt /*rgb.txt*
rgview starting.txt /*rgview*
@@ -6257,7 +6284,6 @@
ruby-globals if_ruby.txt /*ruby-globals*
ruby-message if_ruby.txt /*ruby-message*
ruby-set_option if_ruby.txt /*ruby-set_option*
-ruby-syntax syntax.txt /*ruby-syntax*
ruby-vim if_ruby.txt /*ruby-vim*
ruby-window if_ruby.txt /*ruby-window*
ruby.vim syntax.txt /*ruby.vim*
@@ -6297,7 +6323,6 @@
sandbox eval.txt /*sandbox*
save-file editing.txt /*save-file*
save-settings starting.txt /*save-settings*
-scheme-syntax syntax.txt /*scheme-syntax*
scheme.vim syntax.txt /*scheme.vim*
scp pi_netrw.txt /*scp*
script usr_41.txt /*script*
@@ -6318,7 +6343,6 @@
scrollbind-quickadj scroll.txt /*scrollbind-quickadj*
scrollbind-relative scroll.txt /*scrollbind-relative*
scrolling scroll.txt /*scrolling*
-sdl-syntax syntax.txt /*sdl-syntax*
sdl.vim syntax.txt /*sdl.vim*
search() eval.txt /*search()*
search-commands pattern.txt /*search-commands*
@@ -6328,7 +6352,6 @@
search-replace change.txt /*search-replace*
searchpair() eval.txt /*searchpair()*
section motion.txt /*section*
-sed-syntax syntax.txt /*sed-syntax*
sed.vim syntax.txt /*sed.vim*
self eval.txt /*self*
send-money sponsor.txt /*send-money*
@@ -6349,9 +6372,7 @@
setting-guifont gui.txt /*setting-guifont*
setwinvar() eval.txt /*setwinvar()*
sftp pi_netrw.txt /*sftp*
-sgml-syntax syntax.txt /*sgml-syntax*
sgml.vim syntax.txt /*sgml.vim*
-sh-syntax syntax.txt /*sh-syntax*
sh.vim syntax.txt /*sh.vim*
shell-window tips.txt /*shell-window*
shell_error-variable eval.txt /*shell_error-variable*
@@ -6382,7 +6403,6 @@
space intro.txt /*space*
spec-customizing pi_spec.txt /*spec-customizing*
spec-how-to-use-it pi_spec.txt /*spec-how-to-use-it*
-spec-plugin filetype.txt /*spec-plugin*
spec-setting-a-map pi_spec.txt /*spec-setting-a-map*
spec_chglog_format pi_spec.txt /*spec_chglog_format*
spec_chglog_prepend pi_spec.txt /*spec_chglog_prepend*
@@ -6397,11 +6417,13 @@
spell-COMPOUNDMAX spell.txt /*spell-COMPOUNDMAX*
spell-COMPOUNDMIN spell.txt /*spell-COMPOUNDMIN*
spell-COMPOUNDSYLMAX spell.txt /*spell-COMPOUNDSYLMAX*
+spell-FLAG spell.txt /*spell-FLAG*
spell-FOL spell.txt /*spell-FOL*
spell-KEP spell.txt /*spell-KEP*
spell-LOW spell.txt /*spell-LOW*
spell-MAP spell.txt /*spell-MAP*
spell-NEEDAFFIX spell.txt /*spell-NEEDAFFIX*
+spell-NEEDCOMPOUND spell.txt /*spell-NEEDCOMPOUND*
spell-NOBREAK spell.txt /*spell-NOBREAK*
spell-PFX spell.txt /*spell-PFX*
spell-PFXPOSTPONE spell.txt /*spell-PFXPOSTPONE*
@@ -6442,11 +6464,8 @@
sponsor-faq sponsor.txt /*sponsor-faq*
sponsor.txt sponsor.txt /*sponsor.txt*
spoon os_unix.txt /*spoon*
-spup-syntax syntax.txt /*spup-syntax*
spup.vim syntax.txt /*spup.vim*
-sql-syntax syntax.txt /*sql-syntax*
sql.vim syntax.txt /*sql.vim*
-sqlinformix-syntax syntax.txt /*sqlinformix-syntax*
sqlinformix.vim syntax.txt /*sqlinformix.vim*
sscanf eval.txt /*sscanf*
standard-plugin usr_05.txt /*standard-plugin*
@@ -6744,7 +6763,6 @@
tcl-window-height if_tcl.txt /*tcl-window-height*
tcl-window-option if_tcl.txt /*tcl-window-option*
tcsh-style cmdline.txt /*tcsh-style*
-tcsh-syntax syntax.txt /*tcsh-syntax*
tcsh.vim syntax.txt /*tcsh.vim*
tear-off-menus gui.txt /*tear-off-menus*
telnet-CTRL-] tagsrch.txt /*telnet-CTRL-]*
@@ -6759,7 +6777,6 @@
termcap-colors term.txt /*termcap-colors*
termcap-cursor-color term.txt /*termcap-cursor-color*
termcap-cursor-shape term.txt /*termcap-cursor-shape*
-termcap-syntax syntax.txt /*termcap-syntax*
termcap-title term.txt /*termcap-title*
terminal-colors os_unix.txt /*terminal-colors*
terminal-info term.txt /*terminal-info*
@@ -6772,11 +6789,9 @@
tex-runon syntax.txt /*tex-runon*
tex-slow syntax.txt /*tex-slow*
tex-style syntax.txt /*tex-style*
-tex-syntax syntax.txt /*tex-syntax*
tex.vim syntax.txt /*tex.vim*
text-objects motion.txt /*text-objects*
text-objects-changed version5.txt /*text-objects-changed*
-tf-syntax syntax.txt /*tf-syntax*
tf.vim syntax.txt /*tf.vim*
this_session-variable eval.txt /*this_session-variable*
throw-catch eval.txt /*throw-catch*
@@ -7029,10 +7044,8 @@
various-cmds various.txt /*various-cmds*
various-motions motion.txt /*various-motions*
various.txt various.txt /*various.txt*
-vb-syntax syntax.txt /*vb-syntax*
vb.vim syntax.txt /*vb.vim*
verbose starting.txt /*verbose*
-verilog-indent indent.txt /*verilog-indent*
version-5.1 version5.txt /*version-5.1*
version-5.2 version5.txt /*version-5.2*
version-5.3 version5.txt /*version-5.3*
@@ -7062,14 +7075,12 @@
vim-arguments starting.txt /*vim-arguments*
vim-default-editor gui_w32.txt /*vim-default-editor*
vim-dev intro.txt /*vim-dev*
-vim-indent indent.txt /*vim-indent*
vim-kpart gui_x11.txt /*vim-kpart*
vim-mac intro.txt /*vim-mac*
vim-modes intro.txt /*vim-modes*
vim-modes-intro intro.txt /*vim-modes-intro*
vim-multibyte intro.txt /*vim-multibyte*
vim-script-intro usr_41.txt /*vim-script-intro*
-vim-syntax syntax.txt /*vim-syntax*
vim-variable eval.txt /*vim-variable*
vim.vim syntax.txt /*vim.vim*
vim: options.txt /*vim:*
@@ -7212,7 +7223,6 @@
x11-clientserver remote.txt /*x11-clientserver*
x11-cut-buffer gui_x11.txt /*x11-cut-buffer*
x11-selection gui_x11.txt /*x11-selection*
-xf86conf-syntax syntax.txt /*xf86conf-syntax*
xf86conf.vim syntax.txt /*xf86conf.vim*
xfontset mbyte.txt /*xfontset*
xfree-xterm syntax.txt /*xfree-xterm*
@@ -7220,9 +7230,7 @@
xim-input-style mbyte.txt /*xim-input-style*
xiterm syntax.txt /*xiterm*
xml-folding syntax.txt /*xml-folding*
-xml-syntax syntax.txt /*xml-syntax*
xml.vim syntax.txt /*xml.vim*
-xpm-syntax syntax.txt /*xpm-syntax*
xpm.vim syntax.txt /*xpm.vim*
xterm-8-bit term.txt /*xterm-8-bit*
xterm-8bit term.txt /*xterm-8bit*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index f019ef0..6e63813 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.0aa. Last change: 2005 Aug 29
+*todo.txt* For Vim version 7.0aa. Last change: 2005 Aug 30
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -30,58 +30,16 @@
*known-bugs*
-------------------- Known bugs and current work -----------------------
-Spelling:
-- Check support of flags of two characters, numbers (comma separated) and HUH.
- When using many compound flags, does regexp still work?
+Mac:
+- strings.h is bogus, add configure check.
+- GUI: pasting lines results in ^M instead of line breaks. (Benjamin Esham)
+- "cp -R ../runtime appdir" may copy way too much.
-- "zg" doesn't work for Thai?
+cmdline_at_end() and cmdline_overstrike() may not be used.
-- Compound word is accepted if nr of words is <= COMPOUNDMAX OR nr of
- syllables <= COMPOUNDSYLMAX. Specify AND in the affix file?
+Ruby: documentation for window width (Wind)
-- COMPOUNDMAX -> COMPOUNDWORDMAX?
-
-- Support flags on a suffix. Used for second level affixes.
- The flags may also be used for compounding. Default is an OR mechanism with
- the flags of the word. Adding "compset" on the affixes means the compound
- flags of the word are not used.
- Instead of "SFX a 0 add/FLAGS ." we could use "SFX a 0 add . /FLAGS".
-
-- NEEDCOMPOUND also used for affix? Or use "needcomp" after affix?
-
-- Do we need a flag for the rule that when compounding is done the following
- word doesn't have a capital after a word character, even for Onecap words?
-
-- Also see tklspell: http://tkltrans.sourceforge.net/
-- New hunspell home page: http://hunspell.sourceforge.net/
- - Lots of code depends on LANG, that isn't right. Enable each mechanism
- in the affix file separately.
- - Example with compounding dash is bad, gets in the way of setting
- COMPOUNDMIN and COMPOUNDMAX to a reasonable value.
- - PSEUDOROOT == NEEDAFFIX
- - COMPOUNDROOT -> COMPOUNDED? For a word that already is a compound word
- Or use COMPOUNDED2, COMPOUNDED3, etc.
-- CIRCUMFIX: when a word uses a prefix marked with the CIRCUMFIX flag,
- then the word must also have a suffix marked with the CIRCUMFIX flag.
- It's a bit primitive, since only one flag is used, which doesn't allow
- matching specific prefixes with suffixes.
- Alternative:
- PSFX {flag} {pchop} {padd} {pcond} {schop} {sadd}[/flags] {scond}
- We might not need this at all, you can use the NEEDAFFIX flag.
-- When a suffix has more than one syllable, it may count as a word for
- COMPOUNDMAX.
-- Add flags to count extra syllables in a word. SYLLABLEADDONE
- SYLLABLEADDTWO, etc.? Or make it possible to specify the syllable count
- of a word directly, after another slash: /abc/3
-- MORPHO items ignores morphological items: after word and affix
-
-- Implement multiple flags for compound words and CMP item?
- Await comments from other spell checking authors.
-
-Help tags: something to make it easy to find help about a certain filetype?
- use ft-c-syntax ft-c-ftplugin etc.?
-
-Mac GUI: pasting lines results in ^M instead of line breaks. (Benjamin Esham)
+Add a few more languages for spell checking.
Mac unicode patch (Da Woon Jung):
- selecting proportional font breaks display
@@ -1348,6 +1306,43 @@
Spell checking:
9 Work together with OpenOffice.org to update the wordlists. (Adri Verhoef,
Aad Nales) Setup vim-spell maillist?
+- Compound word is accepted if nr of words is <= COMPOUNDMAX OR nr of
+ syllables <= COMPOUNDSYLMAX. Specify using AND in the affix file?
+- COMPOUNDMAX -> COMPOUNDWORDMAX?
+- Support flags on a suffix. Used for second level affixes. The flags may
+ also be used for compounding. Default is an OR mechanism with the flags
+ of the word. Adding "compset" on the affixes means the compound flags of
+ the word are not used. Instead of "SFX a 0 add/FLAGS ." we could use "SFX
+ a 0 add . /FLAGS" (or support both).
+- NEEDCOMPOUND also used for affix? Or use "needcomp" after affix?
+- Do we need a flag for the rule that when compounding is done the following
+ word doesn't have a capital after a word character, even for Onecap words?
+- New hunspell home page: http://hunspell.sourceforge.net/
+ - Lots of code depends on LANG, that isn't right. Enable each mechanism
+ in the affix file separately.
+ - Example with compounding dash is bad, gets in the way of setting
+ COMPOUNDMIN and COMPOUNDMAX to a reasonable value.
+ - PSEUDOROOT == NEEDAFFIX
+ - COMPOUNDROOT -> COMPOUNDED? For a word that already is a compound word
+ Or use COMPOUNDED2, COMPOUNDED3, etc.
+- CIRCUMFIX: when a word uses a prefix marked with the CIRCUMFIX flag, then
+ the word must also have a suffix marked with the CIRCUMFIX flag. It's a
+ bit primitive, since only one flag is used, which doesn't allow matching
+ specific prefixes with suffixes.
+ Alternative:
+ PSFX {flag} {pchop} {padd} {pcond} {schop} {sadd}[/flags] {scond}
+ We might not need this at all, you can use the NEEDAFFIX flag and the
+ affix which is required.
+- When a suffix has more than one syllable, it may count as a word for
+ COMPOUNDMAX.
+- Add flags to count extra syllables in a word. SYLLABLEADD1 SYLLABLEADD2,
+ etc.? Or make it possible to specify the syllable count of a word
+ directly, e.g., after another slash: /abc/3
+- MORPHO item in affix file: ignore morphological fields after word and
+ affix.
+- Implement multiple flags for compound words and CMP item?
+ Await comments from other spell checking authors.
+- Also see tklspell: http://tkltrans.sourceforge.net/
8 Charles Campbell asks for method to add "contained" groups to existing
syntax items (to add @Spell).
Add ":syntax contains {pattern} add=@Spell" command? A bit like ":syn
diff --git a/src/fileio.c b/src/fileio.c
index a34048c..d49d87b 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -1515,8 +1515,6 @@
# ifdef MACOS_X
if (fio_flags & FIO_MACROMAN)
{
- extern int macroman2enc __ARGS((char_u *ptr, long *sizep, long
- real_size));
/*
* Conversion from Apple MacRoman char encoding to UTF-8 or
* latin1. This is in os_mac_conv.c.
@@ -4815,9 +4813,6 @@
*/
char_u *from;
size_t fromlen;
- extern int enc2macroman __ARGS((char_u *from, size_t fromlen,
- char_u *to, int *tolenp, int maxtolen, char_u *rest,
- int *restlenp));
if (ip->bw_restlen > 0)
{
diff --git a/src/gui_mac.c b/src/gui_mac.c
index f01dc86..9253aa1 100644
--- a/src/gui_mac.c
+++ b/src/gui_mac.c
@@ -94,10 +94,6 @@
#if defined(USE_CARBONIZED) && defined(FEAT_MBYTE)
# define USE_CARBONKEYHANDLER
static EventHandlerUPP keyEventHandlerUPP = NULL;
-/* Defined in os_mac_conv.c */
-extern char_u *mac_utf16_to_enc __ARGS((UniChar *from, size_t fromLen, size_t *actualLen));
-extern UniChar *mac_enc_to_utf16 __ARGS((char_u *from, size_t fromLen, size_t *actualLen));
-extern CFStringRef mac_enc_to_cfstring __ARGS((char_u *from, size_t fromLen));
#endif
#ifdef MACOS_X
@@ -1618,7 +1614,7 @@
*/
#define FONT_STYLE_BUFFER_SIZE 32
static void
-GetFontPanelSelection(char_u* outName)
+GetFontPanelSelection(char_u *outName)
{
Str255 buf;
ByteCount fontNameLen = 0;
@@ -1639,12 +1635,12 @@
* get an unwanted utf-16 name) */
if (ATSUFindFontName(fid, kFontFullName, kFontMacintoshPlatform,
kFontNoScriptCode, kFontNoLanguageCode,
- 255, outName, &fontNameLen, NULL) != noErr)
+ 255, (char *)outName, &fontNameLen, NULL) != noErr)
return;
/* Only encode font size, because style (bold, italic, etc) is
* already part of the font full name */
- vim_snprintf(styleString, FONT_STYLE_BUFFER_SIZE, ":h%d",
+ vim_snprintf((char *)styleString, FONT_STYLE_BUFFER_SIZE, ":h%d",
gFontPanelInfo.size/*,
((gFontPanelInfo.style & bold)!=0 ? ":b" : ""),
((gFontPanelInfo.style & italic)!=0 ? ":i" : ""),
@@ -1655,7 +1651,7 @@
}
else
{
- *outName = NULL;
+ *outName = NUL;
}
}
#endif
diff --git a/src/if_ruby.c b/src/if_ruby.c
index 112b91e..4396b46 100644
--- a/src/if_ruby.c
+++ b/src/if_ruby.c
@@ -191,7 +191,7 @@
static HINSTANCE hinstRuby = 0; /* Instance of ruby.dll */
/*
- * Table of name to function pointer of python.
+ * Table of name to function pointer of ruby.
*/
#define RUBY_PROC FARPROC
static struct
@@ -768,6 +768,24 @@
return height;
}
+static VALUE window_width(VALUE self)
+{
+ win_T *win = get_win(self);
+
+ return INT2NUM(win->w_width);
+}
+
+static VALUE window_set_width(VALUE self, VALUE width)
+{
+ win_T *win = get_win(self);
+ win_T *savewin = curwin;
+
+ curwin = win;
+ win_setwidth(NUM2INT(width));
+ curwin = savewin;
+ return width;
+}
+
static VALUE window_cursor(VALUE self)
{
win_T *win = get_win(self);
@@ -860,6 +878,8 @@
rb_define_method(cVimWindow, "buffer", window_buffer, 0);
rb_define_method(cVimWindow, "height", window_height, 0);
rb_define_method(cVimWindow, "height=", window_set_height, 1);
+ rb_define_method(cVimWindow, "width", window_width, 0);
+ rb_define_method(cVimWindow, "width=", window_set_width, 1);
rb_define_method(cVimWindow, "cursor", window_cursor, 0);
rb_define_method(cVimWindow, "cursor=", window_set_cursor, 1);
diff --git a/src/mbyte.c b/src/mbyte.c
index d446a5b..bf86b5e 100644
--- a/src/mbyte.c
+++ b/src/mbyte.c
@@ -5788,11 +5788,6 @@
return dlen;
}
-#if defined(MACOS_X)
-/* This is in os_mac_conv.c. */
-extern char_u *mac_string_convert __ARGS((char_u *ptr, int len, int *lenp, int fail_on_error, int from, int to, int *unconvlenp));
-#endif
-
/*
* Convert text "ptr[*lenp]" according to "vcp".
* Returns the result in allocated memory and sets "*lenp".
diff --git a/src/normal.c b/src/normal.c
index ebf4008..e7cfad6 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -4678,6 +4678,18 @@
== FAIL)
return;
# endif
+ if (ptr == NULL)
+ {
+ pos_T pos = curwin->w_cursor;
+ int attr;
+
+ /* Find bad word under the cursor. */
+ len = spell_move_to(curwin, FORWARD, TRUE, TRUE, &attr);
+ if (len != 0 && curwin->w_cursor.col <= pos.col)
+ ptr = ml_get_pos(&curwin->w_cursor);
+ curwin->w_cursor = pos;
+ }
+
if (ptr == NULL && (len = find_ident_under_cursor(&ptr,
FIND_IDENT)) == 0)
return;
diff --git a/src/option.c b/src/option.c
index 98c0ad8..bbf564a 100644
--- a/src/option.c
+++ b/src/option.c
@@ -2994,7 +2994,7 @@
kLocaleRegionMask | kLocaleRegionVariantMask,
sizeof buf, buf) == noErr && *buf)
{
- vim_setenv("LANG", buf);
+ vim_setenv((char_u *)"LANG", (char_u *)buf);
# ifdef HAVE_LOCALE_H
setlocale(LC_ALL, "");
# endif
diff --git a/src/os_mac_conv.c b/src/os_mac_conv.c
index c255e73..fbce577 100644
--- a/src/os_mac_conv.c
+++ b/src/os_mac_conv.c
@@ -17,17 +17,6 @@
#include "vim.h"
#ifdef FEAT_MBYTE
-extern char_u *mac_string_convert __ARGS((char_u *ptr, int len, int *lenp, int fail_on_error, int from, int to, int *unconvlenp));
-extern int macroman2enc __ARGS((char_u *ptr, long *sizep, long real_size));
-extern int enc2macroman __ARGS((char_u *from, size_t fromlen, char_u *to, int *tolenp, int maxtolen, char_u *rest, int *restlenp));
-
-extern void mac_conv_init __ARGS((void));
-extern void mac_conv_cleanup __ARGS((void));
-extern char_u *mac_utf16_to_enc __ARGS((UniChar *from, size_t fromLen, size_t *actualLen));
-extern UniChar *mac_enc_to_utf16 __ARGS((char_u *from, size_t fromLen, size_t *actualLen));
-extern CFStringRef mac_enc_to_cfstring __ARGS((char_u *from, size_t fromLen));
-extern char_u *mac_precompose_path __ARGS((char_u *decompPath, size_t decompLen, size_t *precompLen));
-
static char_u *mac_utf16_to_utf8 __ARGS((UniChar *from, size_t fromLen, size_t *actualLen));
static UniChar *mac_utf8_to_utf16 __ARGS((char_u *from, size_t fromLen, size_t *actualLen));
@@ -114,7 +103,7 @@
if (!CFStringGetBytes(cfstr, convertRange, to, NULL, FALSE, retval, buflen, NULL))
#endif
- if (!CFStringGetCString(cfstr, retval, buflen, to))
+ if (!CFStringGetCString(cfstr, (char *)retval, buflen, to))
{
CFRelease(cfstr);
if (fail_on_error)
@@ -140,14 +129,14 @@
}
else
{
- if (!CFStringGetCString(cfstr, d, buflen - out, to))
+ if (!CFStringGetCString(cfstr, (char *)d, buflen - out, to))
{
*d++ = '?';
out++;
}
else
{
- i = strlen(d);
+ i = STRLEN(d);
d += i;
out += i;
}
@@ -162,7 +151,7 @@
}
CFRelease(cfstr);
if (lenp != NULL)
- *lenp = strlen(retval);
+ *lenp = STRLEN(retval);
return retval;
}
diff --git a/src/os_unix.c b/src/os_unix.c
index d567f90..7d32482 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -173,17 +173,6 @@
static int have_dollars __ARGS((int, char_u **));
#endif
-#ifndef NO_EXPANDPATH
-# if defined(MACOS_X) && defined(FEAT_MBYTE)
-extern char_u *mac_precompose_path __ARGS((char_u *decompPath, size_t decompLen, size_t *precompLen));
-# endif
-#endif
-
-#if defined(MACOS_X) && defined(FEAT_MBYTE)
-extern void mac_conv_init __ARGS((void));
-extern void mac_conv_cleanup __ARGS((void));
-#endif
-
#ifndef __EMX__
static int save_patterns __ARGS((int num_pat, char_u **pat, int *num_file, char_u ***file));
#endif
diff --git a/src/proto.h b/src/proto.h
index 4c0db37..6116578 100644
--- a/src/proto.h
+++ b/src/proto.h
@@ -261,6 +261,10 @@
# include "if_perlsfio.pro"
#endif
+#if defined(FEAT_MBYTE) && defined(MACOS_X)
+# include "os_mac_conv.pro"
+#endif
+
#ifdef __BORLANDC__
# define _PROTO_H
#endif
diff --git a/src/proto/gui_mac.pro b/src/proto/gui_mac.pro
index 933fe4d..c640351 100644
--- a/src/proto/gui_mac.pro
+++ b/src/proto/gui_mac.pro
@@ -47,6 +47,7 @@
guicolor_T gui_mch_get_color __ARGS((char_u *name));
void gui_mch_set_fg_color __ARGS((guicolor_T color));
void gui_mch_set_bg_color __ARGS((guicolor_T color));
+void gui_mch_set_sp_color __ARGS((guicolor_T color));
void gui_mch_draw_string __ARGS((int row, int col, char_u *s, int len, int flags));
int gui_mch_haskey __ARGS((char_u *name));
void gui_mch_beep __ARGS((void));
diff --git a/src/proto/os_mac_conv.pro b/src/proto/os_mac_conv.pro
new file mode 100644
index 0000000..1ab9d28
--- /dev/null
+++ b/src/proto/os_mac_conv.pro
@@ -0,0 +1,10 @@
+extern char_u *mac_string_convert __ARGS((char_u *ptr, int len, int *lenp, int fail_on_error, int from, int to, int *unconvlenp));
+extern int macroman2enc __ARGS((char_u *ptr, long *sizep, long real_size));
+extern int enc2macroman __ARGS((char_u *from, size_t fromlen, char_u *to, int *tolenp, int maxtolen, char_u *rest, int *restlenp));
+
+extern void mac_conv_init __ARGS((void));
+extern void mac_conv_cleanup __ARGS((void));
+extern char_u *mac_utf16_to_enc __ARGS((UniChar *from, size_t fromLen, size_t *actualLen));
+extern UniChar *mac_enc_to_utf16 __ARGS((char_u *from, size_t fromLen, size_t *actualLen));
+extern CFStringRef mac_enc_to_cfstring __ARGS((char_u *from, size_t fromLen));
+extern char_u *mac_precompose_path __ARGS((char_u *decompPath, size_t decompLen, size_t *precompLen));
diff --git a/src/screen.c b/src/screen.c
index ba345ae..2c39ac7 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -2939,6 +2939,10 @@
word_end = wp->w_cursor.col + len + 1;
wp->w_cursor = pos;
+
+ /* Need to restart syntax highlighting for this line. */
+ if (has_syntax)
+ syntax_start(wp, lnum);
}
#endif
}
diff --git a/src/spell.c b/src/spell.c
index 2b04bf8..56c891d 100644
--- a/src/spell.c
+++ b/src/spell.c
@@ -375,7 +375,7 @@
char_u *sl_midword; /* MIDWORD string or NULL */
int sl_compmax; /* COMPOUNDMAX (default: MAXWLEN) */
- int sl_compminlen; /* COMPOUNDMIN (default: MAXWLEN) */
+ int sl_compminlen; /* COMPOUNDMIN (default: 0) */
int sl_compsylmax; /* COMPOUNDSYLMAX (default: MAXWLEN) */
regprog_T *sl_compprog; /* COMPOUNDFLAGS turned into a regexp progrm
* (NULL when no compounding) */
@@ -1299,7 +1299,7 @@
/* For multi-byte chars check character length against
* COMPOUNDMIN. */
if (has_mbyte
- && slang->sl_compminlen < MAXWLEN
+ && slang->sl_compminlen > 0
&& mb_charlen_len(mip->mi_word + mip->mi_compoff,
wlen - mip->mi_compoff) < slang->sl_compminlen)
continue;
@@ -1388,6 +1388,8 @@
{
int save_result = mip->mi_result;
char_u *save_end = mip->mi_end;
+ langp_T *save_lp = mip->mi_lp;
+ int lpi;
/* Check that a valid word follows. If there is one and we
* are compounding, it will set "mi_result", thus we are
@@ -1417,25 +1419,43 @@
#endif
c = mip->mi_compoff;
++mip->mi_complen;
- find_word(mip, FIND_COMPOUND);
- /* When NOBREAK any word that matches is OK. Otherwise we
- * need to find the longest match, thus try with keep-case and
- * prefix too. */
- if (!slang->sl_nobreak || mip->mi_result == SP_BAD)
+ /* For NOBREAK we need to try all NOBREAK languages, at least
+ * to find the ".add" file(s). */
+ for (lpi = 0; lpi < mip->mi_buf->b_langp.ga_len; ++lpi)
{
- /* Find following word in keep-case tree. */
- mip->mi_compoff = wlen;
- find_word(mip, FIND_KEEPCOMPOUND);
+ if (slang->sl_nobreak)
+ {
+ mip->mi_lp = LANGP_ENTRY(mip->mi_buf->b_langp, lpi);
+ if (mip->mi_lp->lp_slang->sl_fidxs == NULL
+ || !mip->mi_lp->lp_slang->sl_nobreak)
+ continue;
+ }
+ find_word(mip, FIND_COMPOUND);
+
+ /* When NOBREAK any word that matches is OK. Otherwise we
+ * need to find the longest match, thus try with keep-case
+ * and prefix too. */
if (!slang->sl_nobreak || mip->mi_result == SP_BAD)
{
- /* Check for following word with prefix. */
- mip->mi_compoff = c;
- find_prefix(mip, FIND_COMPOUND);
+ /* Find following word in keep-case tree. */
+ mip->mi_compoff = wlen;
+ find_word(mip, FIND_KEEPCOMPOUND);
+
+ if (!slang->sl_nobreak || mip->mi_result == SP_BAD)
+ {
+ /* Check for following word with prefix. */
+ mip->mi_compoff = c;
+ find_prefix(mip, FIND_COMPOUND);
+ }
}
+
+ if (!slang->sl_nobreak)
+ break;
}
--mip->mi_complen;
+ mip->mi_lp = save_lp;
if (slang->sl_nobreak)
{
@@ -2037,6 +2057,13 @@
}
}
+typedef struct spelload_S
+{
+ char_u sl_lang[MAXWLEN + 1]; /* language name */
+ slang_T *sl_slang; /* resulting slang_T struct */
+ int sl_nobreak; /* NOBREAK language found */
+} spelload_T;
+
/*
* Load word list(s) for "lang" from Vim spell file(s).
* "lang" must be the language without the region: e.g., "en".
@@ -2047,35 +2074,37 @@
{
char_u fname_enc[85];
int r;
- char_u langcp[MAXWLEN + 1];
+ spelload_T sl;
/* Copy the language name to pass it to spell_load_cb() as a cookie.
* It's truncated when an error is detected. */
- STRCPY(langcp, lang);
+ STRCPY(sl.sl_lang, lang);
+ sl.sl_slang = NULL;
+ sl.sl_nobreak = FALSE;
/*
* Find the first spell file for "lang" in 'runtimepath' and load it.
*/
vim_snprintf((char *)fname_enc, sizeof(fname_enc) - 5,
"spell/%s.%s.spl", lang, spell_enc());
- r = do_in_runtimepath(fname_enc, FALSE, spell_load_cb, &langcp);
+ r = do_in_runtimepath(fname_enc, FALSE, spell_load_cb, &sl);
- if (r == FAIL && *langcp != NUL)
+ if (r == FAIL && *sl.sl_lang != NUL)
{
/* Try loading the ASCII version. */
vim_snprintf((char *)fname_enc, sizeof(fname_enc) - 5,
"spell/%s.ascii.spl", lang);
- r = do_in_runtimepath(fname_enc, FALSE, spell_load_cb, &langcp);
+ r = do_in_runtimepath(fname_enc, FALSE, spell_load_cb, &sl);
}
if (r == FAIL)
smsg((char_u *)_("Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\""),
lang, spell_enc(), lang);
- else if (*langcp != NUL)
+ else if (sl.sl_slang != NULL)
{
- /* Load all the additions. */
+ /* At least one file was loaded, now load all the additions. */
STRCPY(fname_enc + STRLEN(fname_enc) - 3, "add.spl");
- do_in_runtimepath(fname_enc, TRUE, spell_load_cb, &langcp);
+ do_in_runtimepath(fname_enc, TRUE, spell_load_cb, &sl);
}
}
@@ -2122,7 +2151,6 @@
lp->sl_name = vim_strsave(lang);
ga_init2(&lp->sl_rep, sizeof(fromto_T), 10);
lp->sl_compmax = MAXWLEN;
- lp->sl_compminlen = MAXWLEN;
lp->sl_compsylmax = MAXWLEN;
}
return lp;
@@ -2237,7 +2265,7 @@
#endif
lp->sl_compmax = MAXWLEN;
- lp->sl_compminlen = MAXWLEN;
+ lp->sl_compminlen = 0;
lp->sl_compsylmax = MAXWLEN;
lp->sl_regions[0] = NUL;
}
@@ -2249,9 +2277,23 @@
static void
spell_load_cb(fname, cookie)
char_u *fname;
- void *cookie; /* points to the language name */
+ void *cookie;
{
- (void)spell_load_file(fname, (char_u *)cookie, NULL, FALSE);
+ spelload_T *slp = (spelload_T *)cookie;
+ slang_T *slang;
+
+ slang = spell_load_file(fname, slp->sl_lang, NULL, FALSE);
+ if (slang != NULL)
+ {
+ /* When a previously loaded file has NOBREAK also use it for the
+ * ".add" files. */
+ if (slp->sl_nobreak && slang->sl_add)
+ slang->sl_nobreak = TRUE;
+ else if (slang->sl_nobreak)
+ slp->sl_nobreak = TRUE;
+
+ slp->sl_slang = slang;
+ }
}
/*
@@ -2941,7 +2983,7 @@
--todo;
c = getc(fd); /* <compminlen> */
if (c < 1)
- c = MAXWLEN;
+ c = 0;
slang->sl_compminlen = c;
--todo;
@@ -3508,6 +3550,7 @@
char_u *spf;
char_u *use_region = NULL;
int dont_use_region = FALSE;
+ int nobreak = FALSE;
ga_init2(&ga, sizeof(langp_T), 2);
clear_midword(buf);
@@ -3624,6 +3667,8 @@
LANGP_ENTRY(ga, ga.ga_len)->lp_region = region_mask;
++ga.ga_len;
use_midword(lp, buf);
+ if (lp->sl_nobreak)
+ nobreak = TRUE;
}
}
}
@@ -3678,6 +3723,11 @@
*p = NUL; /* truncate at ".encoding.add" */
}
lp = spell_load_file(spf_name, lang, NULL, TRUE);
+
+ /* If one of the languages has NOBREAK we assume the addition
+ * files also have this. */
+ if (lp != NULL && nobreak)
+ lp->sl_nobreak = TRUE;
}
if (lp != NULL && ga_grow(&ga, 1) == OK)
{
@@ -5229,8 +5279,6 @@
STRCPY(p, spin->si_compflags);
STRCAT(p, "/");
}
- else
- *p = NUL;
spin->si_compflags = p;
tp = p + STRLEN(p);
@@ -7703,37 +7751,55 @@
char_u *fname;
char_u *rtp;
char_u *lend;
+ int aspath = FALSE;
+ char_u *lstart = curbuf->b_p_spl;
if (*curbuf->b_p_spl != NUL && curbuf->b_langp.ga_len > 0)
{
- /* Find the end of the language name. Exclude the region. */
+ /* Find the end of the language name. Exclude the region. If there
+ * is a path separator remember the start of the tail. */
for (lend = curbuf->b_p_spl; *lend != NUL
&& vim_strchr((char_u *)",._", *lend) == NULL; ++lend)
- ;
+ if (vim_ispathsep(*lend))
+ {
+ aspath = TRUE;
+ lstart = lend + 1;
+ }
/* Loop over all entries in 'runtimepath'. Use the first one where we
* are allowed to write. */
rtp = p_rtp;
while (*rtp != NUL)
{
- /* Copy the path from 'runtimepath' to buf[]. */
- copy_option_part(&rtp, buf, MAXPATHL, ",");
+ if (aspath)
+ /* Use directory of an entry with path, e.g., for
+ * "/dir/lg.utf-8.spl" use "/dir". */
+ vim_strncpy(buf, curbuf->b_p_spl, lstart - curbuf->b_p_spl - 1);
+ else
+ /* Copy the path from 'runtimepath' to buf[]. */
+ copy_option_part(&rtp, buf, MAXPATHL, ",");
if (filewritable(buf) == 2)
{
/* Use the first language name from 'spelllang' and the
* encoding used in the first loaded .spl file. */
- fname = LANGP_ENTRY(curbuf->b_langp, 0)->lp_slang->sl_fname;
- if (fname == NULL)
- break;
+ if (aspath)
+ vim_strncpy(buf, curbuf->b_p_spl, lend - curbuf->b_p_spl);
+ else
+ {
+ l = STRLEN(buf);
+ vim_snprintf((char *)buf + l, MAXPATHL - l,
+ "/spell/%.*s", (int)(lend - lstart), lstart);
+ }
l = STRLEN(buf);
- vim_snprintf((char *)buf + l, MAXPATHL - l,
- "/spell/%.*s.%s.add",
- (int)(lend - curbuf->b_p_spl), curbuf->b_p_spl,
- strstr((char *)gettail(fname), ".ascii.") != NULL
- ? (char_u *)"ascii" : spell_enc());
+ fname = LANGP_ENTRY(curbuf->b_langp, 0)->lp_slang->sl_fname;
+ vim_snprintf((char *)buf + l, MAXPATHL - l, ".%s.add",
+ fname != NULL
+ && strstr((char *)gettail(fname), ".ascii.") != NULL
+ ? (char_u *)"ascii" : spell_enc());
set_option_value((char_u *)"spellfile", 0L, buf, OPT_LOCAL);
break;
}
+ aspath = FALSE;
}
}
}
@@ -9293,7 +9359,7 @@
/* For multi-byte chars check character length against
* COMPOUNDMIN. */
if (has_mbyte
- && slang->sl_compminlen < MAXWLEN
+ && slang->sl_compminlen > 0
&& mb_charlen(tword + sp->ts_splitoff)
< slang->sl_compminlen)
break;
@@ -9430,7 +9496,7 @@
>= slang->sl_compminlen
#ifdef FEAT_MBYTE
&& (!has_mbyte
- || slang->sl_compminlen == MAXWLEN
+ || slang->sl_compminlen == 0
|| mb_charlen(tword + sp->ts_splitoff)
>= slang->sl_compminlen)
#endif
@@ -9470,7 +9536,12 @@
if (!try_compound && !fword_ends)
{
/* If we're going to split need to check that the
- * words so far are valid for compounding. */
+ * words so far are valid for compounding. If there
+ * is only one word it must not have the NEEDCOMPOUND
+ * flag. */
+ if (sp->ts_complen == sp->ts_compsplit
+ && (flags & WF_NEEDCOMP))
+ break;
p = preword;
while (*skiptowhite(p) != NUL)
p = skipwhite(skiptowhite(p));
@@ -9576,7 +9647,11 @@
case STATE_ENDNUL:
/* Past the NUL bytes in the node. */
su->su_badflags = sp->ts_save_badflags;
- if (fword[sp->ts_fidx] == NUL)
+ if (fword[sp->ts_fidx] == NUL
+#ifdef FEAT_MBYTE
+ && sp->ts_tcharlen == 0
+#endif
+ )
{
/* The badword ends, can't use the bytes in this node. */
sp->ts_state = STATE_DEL;
diff --git a/src/testdir/test58.in b/src/testdir/test58.in
index 8bb58bf..b3902f1 100644
--- a/src/testdir/test58.in
+++ b/src/testdir/test58.in
@@ -93,6 +93,9 @@
:" Compound words
:call TestOne('3', '3')
:call TestOne('4', '4')
+:call TestOne('5', '5')
+:call TestOne('6', '6')
+:call TestOne('7', '7')
:"
gg:/^test output:/,$wq! test.out
ENDTEST
@@ -474,4 +477,123 @@
startwordwordwordwordend borkpreborkpreborkbork
badend
+Test affix flags with two characters
+
+5affstart
+SET ISO8859-1
+
+FLAG long
+
+NEEDAFFIX !!
+
+COMPOUNDFLAGS ssmm*ee
+
+NEEDCOMPOUND xx
+
+SFX 13 Y 1
+SFX 13 0 bork .
+
+SFX a1 Y 1
+SFX a1 0 a1 .
+
+SFX aé Y 1
+SFX aé 0 aé .
+
+PFX zz Y 1
+PFX zz 0 pre .
+5affend
+
+5dicstart
+1234
+foo/a1aé!!
+bar/zz13ee
+start/ss
+end/ee
+middle/mmxx
+5dicend
+
+5good: fooa1 fooaé bar prebar barbork prebarbork startprebar
+ start end startend startmiddleend
+bad: foo fooa2 prabar probarbirk middle startmiddle middleend endstart
+ startprobar
+badend
+
+6affstart
+SET ISO8859-1
+
+FLAG caplong
+
+NEEDAFFIX A!
+
+COMPOUNDFLAGS sMm*Ee
+
+NEEDCOMPOUND Xx
+
+SFX N3 Y 1
+SFX N3 0 bork .
+
+SFX A1 Y 1
+SFX A1 0 a1 .
+
+SFX Aé Y 1
+SFX Aé 0 aé .
+
+PFX Zz Y 1
+PFX Zz 0 pre .
+6affend
+
+6dicstart
+1234
+mee/A1AéA!
+bar/ZzN3Ee
+lead/s
+end/Ee
+middle/MmXx
+6dicend
+
+6good: meea1 meeaé bar prebar barbork prebarbork leadprebar
+ lead end leadend leadmiddleend
+bad: mee meea2 prabar probarbirk middle leadmiddle middleend endlead
+ leadprobar
+badend
+
+7affstart
+SET ISO8859-1
+
+FLAG num
+
+NEEDAFFIX 9999
+
+COMPOUNDFLAGS 2,77*123
+
+NEEDCOMPOUND 1
+
+SFX 61003 Y 1
+SFX 61003 0 meat .
+
+SFX 391 Y 1
+SFX 391 0 a1 .
+
+SFX 111 Y 1
+SFX 111 0 aé .
+
+PFX 17 Y 1
+PFX 17 0 pre .
+7affend
+
+7dicstart
+1234
+mee/391,111,9999
+bar/17,61003,123
+lead/2
+tail/123
+middle/77,1
+7dicend
+
+7good: meea1 meeaé bar prebar barmeat prebarmeat leadprebar
+ lead tail leadtail leadmiddletail
+bad: mee meea2 prabar probarmaat middle leadmiddle middletail taillead
+ leadprobar
+badend
+
test output:
diff --git a/src/testdir/test58.ok b/src/testdir/test58.ok
index 67f1f9c..9fba6bc 100644
--- a/src/testdir/test58.ok
+++ b/src/testdir/test58.ok
@@ -105,19 +105,19 @@
foomï
['foo mï', 'foo', 'foofoo']
barmï
-['bar mï', 'barfoo', 'barbar']
+['barfoo', 'barbar', 'mï']
mïfoo
['mï foo', 'foo', 'foofoo']
mïbar
['foobar', 'barbar', 'mï']
mïmï
-['mï mï', 'mï', 'la mï']
+['mï mï', 'mï']
lala
-['la mï']
+[]
mïla
['mï', 'mï mï']
lamï
-['la mï', 'mï', 'mï mï']
+['mï', 'mï mï']
foola
['foo', 'foobar', 'foofoo']
labar
@@ -160,3 +160,99 @@
['startwordwordwordword end', 'startwordwordwordword', 'start wordwordwordword end']
borkpreborkpreborkbork
['borkpreborkprebork bork', 'borkprebork preborkbork', 'bork preborkpreborkbork']
+
+test 5-5
+# file: Xtest.latin1.spl
+bar
+barbork
+end
+fooa1
+fooaé
+prebar
+prebarbork
+start
+-------
+bad
+['bar', 'end', 'fooa1']
+foo
+['fooa1', 'fooaé', 'bar']
+fooa2
+['fooa1', 'fooaé', 'bar']
+prabar
+['prebar', 'bar', 'bar bar']
+probarbirk
+['prebarbork']
+middle
+[]
+startmiddle
+['startmiddleend']
+middleend
+[]
+endstart
+['end start', 'start']
+startprobar
+['startprebar', 'start prebar', 'startbar']
+
+test 6-6
+# file: Xtest.latin1.spl
+bar
+barbork
+end
+lead
+meea1
+meeaé
+prebar
+prebarbork
+-------
+bad
+['bar', 'end', 'lead']
+mee
+['meea1', 'meeaé', 'bar']
+meea2
+['meea1', 'meeaé', 'lead']
+prabar
+['prebar', 'leadbar', 'bar']
+probarbirk
+['prebarbork']
+middle
+[]
+leadmiddle
+['leadmiddleend']
+middleend
+[]
+endlead
+['end lead', 'lead', 'end end']
+leadprobar
+['leadprebar', 'lead prebar', 'leadbar']
+
+test 7-7
+# file: Xtest.latin1.spl
+bar
+barmeat
+lead
+meea1
+meeaé
+prebar
+prebarmeat
+tail
+-------
+bad
+['bar', 'lead', 'tail']
+mee
+['meea1', 'meeaé', 'bar']
+meea2
+['meea1', 'meeaé', 'lead']
+prabar
+['prebar', 'leadbar', 'bar']
+probarmaat
+['prebarmeat']
+middle
+[]
+leadmiddle
+[]
+middletail
+[]
+taillead
+['tail lead', 'tail']
+leadprobar
+['leadprebar', 'lead prebar', 'leadbar']
diff --git a/src/testdir/test59.in b/src/testdir/test59.in
index aab48ae..a2dcc89 100644
--- a/src/testdir/test59.in
+++ b/src/testdir/test59.in
@@ -97,6 +97,9 @@
:" Compound words
:call TestOne('3', '3')
:call TestOne('4', '4')
+:call TestOne('5', '5')
+:call TestOne('6', '6')
+:call TestOne('7', '7')
:"
gg:/^test output:/,$wq! test.out
ENDTEST
@@ -478,4 +481,127 @@
test2:
elequint test elekwint test elekwent asdf
+Test affix flags with two characters
+
+5affstart
+SET ISO8859-1
+
+FLAG long
+
+NEEDAFFIX !!
+
+COMPOUNDFLAGS ssmm*ee
+
+NEEDCOMPOUND xx
+
+SFX 13 Y 1
+SFX 13 0 bork .
+
+SFX a1 Y 1
+SFX a1 0 a1 .
+
+SFX aé Y 1
+SFX aé 0 aé .
+
+PFX zz Y 1
+PFX zz 0 pre .
+5affend
+
+5dicstart
+1234
+foo/a1aé!!
+bar/zz13ee
+start/ss
+end/ee
+middle/mmxx
+5dicend
+
+5good: fooa1 fooaé bar prebar barbork prebarbork startprebar
+ start end startend startmiddleend
+bad: foo fooa2 prabar probarbirk middle startmiddle middleend endstart
+ startprobar
+badend
+
+6affstart
+SET ISO8859-1
+
+FLAG caplong
+
+NEEDAFFIX A!
+
+COMPOUNDFLAGS sMm*Ee
+
+NEEDCOMPOUND Xx
+
+SFX N3 Y 1
+SFX N3 0 bork .
+
+SFX A1 Y 1
+SFX A1 0 a1 .
+
+SFX Aé Y 1
+SFX Aé 0 aé .
+
+PFX Zz Y 1
+PFX Zz 0 pre .
+6affend
+
+6dicstart
+1234
+mee/A1AéA!
+bar/ZzN3Ee
+lead/s
+end/Ee
+middle/MmXx
+6dicend
+
+6good: meea1 meeaé bar prebar barbork prebarbork leadprebar
+ lead end leadend leadmiddleend
+bad: mee meea2 prabar probarbirk middle leadmiddle middleend endlead
+ leadprobar
+badend
+
+7affstart
+SET ISO8859-1
+
+FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
+LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
+UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
+
+FLAG num
+
+NEEDAFFIX 9999
+
+COMPOUNDFLAGS 2,77*123
+
+NEEDCOMPOUND 1
+
+SFX 61003 Y 1
+SFX 61003 0 meat .
+
+SFX 391 Y 1
+SFX 391 0 a1 .
+
+SFX 111 Y 1
+SFX 111 0 aé .
+
+PFX 17 Y 1
+PFX 17 0 pre .
+7affend
+
+7dicstart
+1234
+mee/391,111,9999
+bar/17,61003,123
+lead/2
+tail/123
+middle/77,1
+7dicend
+
+7good: meea1 meeaé bar prebar barmeat prebarmeat leadprebar
+ lead tail leadtail leadmiddletail
+bad: mee meea2 prabar probarmaat middle leadmiddle middletail taillead
+ leadprobar
+badend
+
test output:
diff --git a/src/testdir/test59.ok b/src/testdir/test59.ok
index e09eaac..c37ecb8 100644
--- a/src/testdir/test59.ok
+++ b/src/testdir/test59.ok
@@ -101,23 +101,23 @@
bar
['foobar', 'foo', 'mï']
la
-['foo', 'mï']
+['mï', 'foo']
foomï
['foo mï', 'foo', 'foofoo']
barmï
-['bar mï', 'barfoo', 'barbar']
+['barfoo', 'barbar', 'mï']
mïfoo
['mï foo', 'foo', 'foofoo']
mïbar
['foobar', 'barbar', 'mï']
mïmï
-['mï mï', 'mï', 'la mï']
+['mï mï', 'mï']
lala
[]
mïla
-['mï']
+['mï', 'mï mï']
lamï
-['la mï', 'mï', 'mï mï']
+['mï', 'mï mï']
foola
['foo', 'foobar', 'foofoo']
labar
@@ -160,3 +160,99 @@
['startwordwordwordword end', 'startwordwordwordword', 'start wordwordwordword end']
borkpreborkpreborkbork
['borkpreborkprebork bork', 'borkprebork preborkbork', 'bork preborkpreborkbork']
+
+test 5-5
+# file: Xtest.utf-8.spl
+bar
+barbork
+end
+fooa1
+fooaé
+prebar
+prebarbork
+start
+-------
+bad
+['bar', 'end', 'fooa1']
+foo
+['fooa1', 'fooaé', 'bar']
+fooa2
+['fooa1', 'fooaé', 'bar']
+prabar
+['prebar', 'bar', 'bar bar']
+probarbirk
+['prebarbork']
+middle
+[]
+startmiddle
+['startmiddleend']
+middleend
+[]
+endstart
+['end start', 'start']
+startprobar
+['startprebar', 'start prebar', 'startbar']
+
+test 6-6
+# file: Xtest.utf-8.spl
+bar
+barbork
+end
+lead
+meea1
+meeaé
+prebar
+prebarbork
+-------
+bad
+['bar', 'end', 'lead']
+mee
+['meea1', 'meeaé', 'bar']
+meea2
+['meea1', 'meeaé', 'lead']
+prabar
+['prebar', 'leadbar', 'bar']
+probarbirk
+['prebarbork']
+middle
+[]
+leadmiddle
+['leadmiddleend']
+middleend
+[]
+endlead
+['end lead', 'lead', 'end end']
+leadprobar
+['leadprebar', 'lead prebar', 'leadbar']
+
+test 7-7
+# file: Xtest.utf-8.spl
+bar
+barmeat
+lead
+meea1
+meeaé
+prebar
+prebarmeat
+tail
+-------
+bad
+['bar', 'lead', 'tail']
+mee
+['meea1', 'meeaé', 'bar']
+meea2
+['meea1', 'meeaé', 'lead']
+prabar
+['prebar', 'leadbar', 'bar']
+probarmaat
+['prebarmeat']
+middle
+[]
+leadmiddle
+[]
+middletail
+[]
+taillead
+['tail lead', 'tail']
+leadprobar
+['leadprebar', 'lead prebar', 'leadbar']
diff --git a/src/version.h b/src/version.h
index 2317c87..2ea46ab 100644
--- a/src/version.h
+++ b/src/version.h
@@ -36,5 +36,5 @@
#define VIM_VERSION_NODOT "vim70aa"
#define VIM_VERSION_SHORT "7.0aa"
#define VIM_VERSION_MEDIUM "7.0aa ALPHA"
-#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Aug 29)"
-#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Aug 29, compiled "
+#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Aug 30)"
+#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Aug 30, compiled "