updated for version 7.0130
diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt
index fc0b1c9..3476ab2 100644
--- a/runtime/doc/change.txt
+++ b/runtime/doc/change.txt
@@ -1,4 +1,4 @@
-*change.txt* For Vim version 7.0aa. Last change: 2005 Jul 30
+*change.txt* For Vim version 7.0aa. Last change: 2005 Aug 14
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1534,4 +1534,8 @@
guarantee that sorting is "stable" or obeys the current locale. You will have
to try it out.
+The sorting itself cannot be interrupted, because of using a system library
+function. You can interrupt the preparation (for undo) and putting the sorted
+lines into the buffer. In the last case you may end up with duplicated lines.
+
vim:tw=78:ts=8:ft=help:norl:
diff --git a/runtime/doc/develop.txt b/runtime/doc/develop.txt
index dc3d695..a640f5b 100644
--- a/runtime/doc/develop.txt
+++ b/runtime/doc/develop.txt
@@ -1,4 +1,4 @@
-*develop.txt* For Vim version 7.0aa. Last change: 2005 Jun 13
+*develop.txt* For Vim version 7.0aa. Last change: 2005 Aug 14
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -123,7 +123,8 @@
- The source code should not become a mess. It should be reliable code.
- Use the same layout in all files to make it easy to read |coding-style|.
-- Use comments in a useful way!
+- Use comments in a useful way! Quoting the function name and argument names
+ is NOT useful. Do explain what they are for.
- Porting to another platform should be made easy, without having to change
too much platform-independent code.
- Use the object-oriented spirit: Put data and code together. Minimize the
diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt
index 19a9d53..de29f0f 100644
--- a/runtime/doc/map.txt
+++ b/runtime/doc/map.txt
@@ -273,6 +273,19 @@
Note: When using mappings for Visual mode, you can use the "'<" mark, which
is the start of the last selected Visual area in the current buffer |'<|.
+ *:map-verbose*
+When 'verbose' is non-zero, listing a key map will also display where it was
+last defined. Example: >
+
+ :verbose map <C-W>*
+ n <C-W>* * <C-W><C-S>*
+ Last set from /home/abcd/.vimrc
+
+When the map was defined by hand there is no "Last set" message. When the map
+was defined while executing a function, user command or autocommand, the
+script in which it was defined is reported.
+{not available when compiled without the +eval feature}
+
*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
diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt
index b99b0d7..078d754 100644
--- a/runtime/doc/pattern.txt
+++ b/runtime/doc/pattern.txt
@@ -1,4 +1,4 @@
-*pattern.txt* For Vim version 7.0aa. Last change: 2005 May 22
+*pattern.txt* For Vim version 7.0aa. Last change: 2005 Aug 14
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -944,6 +944,9 @@
This makes it Vi compatible: Without the "\_" or "\n" the collection
does not match an end-of-line.
+ When the ']' is not there Vim will not give an error message but
+ assume no collection is used. Useful to search for '['.
+
If the sequence begins with "^", it matches any single character NOT
in the collection: "[^xyz]" matches anything but 'x', 'y' and 'z'.
- If two characters in the sequence are separated by '-', this is
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index 7d8a51a..0525291 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 12
+*spell.txt* For Vim version 7.0aa. Last change: 2005 Aug 15
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -195,6 +195,14 @@
'spellfile' are only used when all entries in "spelllang" specify the same
region (not counting files specified by their .spl name).
+Specific exception: For German these special regions are used:
+ de all German words accepted
+ de_de old and new spelling
+ de_19 old spelling
+ de_20 new spelling
+ de_at Austria
+ de_ch Switzerland
+
SPELL FILES *spell-load*
@@ -335,6 +343,27 @@
Note that the default scripts don't set 'spellcapcheck' if it was changed from
the default value. This assumes the user prefers another value then.
+
+DOUBLE SCORING *spell-double-scoring*
+
+The 'spellsuggest' option can be used to select "double" scoring. This
+mechanism is based on the principle that there are two kinds of spelling
+mistakes:
+
+1. You know how to spell the word, but mistype something. This results in a
+ small editing distance (character swapped/omitted/inserted) and possibly a
+ word that sounds completely different.
+
+2. You don't know how to spell the word and type something that sounds right.
+ The edit distance can be big but the word is similar after sound-folding.
+
+Since scores for these two mistakes will be very different we use a list
+for each and mix them.
+
+The sound-folding is slow and people that know the language won't make the
+second kind of mistakes. Therefore 'spellsuggest' can be set to select the
+preferred method for scoring the suggestions.
+
==============================================================================
3. Generating a spell file *spell-mkspell*
@@ -409,6 +438,11 @@
and producing an output file in the same directory
that has ".{enc}.spl" appended.
+Vim will report the number of duplicate words. This might be a mistake in the
+list of words. But sometimes it is used to have different prefixes and
+suffixes for the same basic word to avoid them combining (e.g. Czech uses
+this).
+
Since you might want to change a Myspell word list for use with Vim the
following procedure is recommended:
@@ -716,9 +750,27 @@
but in lower case. Thus when the chop string is used to allow the following
word to start with an upper case letter.
+It is not possible to use PFXPOSTPONE together with COMPOUNDFLAG or
+COMPOUNDFLAGS.
-KEEP-CASE WORDS
- *spell-affix-KEP*
+
+WORDS WITH A SLASH *spell-affix-SLASH*
+
+The slash is used in the .dic file to separate the basic word from the affix
+letters that can be used. Unfortunately, this means you cannot use a slash in
+a word. Thus "TCP/IP" cannot be a word. To work around that you can define a
+replacement character for the slash. Example:
+
+ SLASH , ~
+
+Now you can use "TCP,IP" to add the word "TCP/IP".
+
+Of course, the letter used should itself not appear in any word! The letter
+must be ASCII, thus a single byte.
+
+
+KEEP-CASE WORDS *spell-affix-KEP*
+
In the affix file a KEP line can be used to define the affix name used for
keep-case words. Example:
@@ -727,8 +779,8 @@
See above for an example |spell-affix-vim|.
-RARE WORDS
- *spell-affix-RAR*
+RARE WORDS *spell-affix-RAR*
+
In the affix file a RAR line can be used to define the affix name used for
rare words. Example:
@@ -740,8 +792,8 @@
highlighted as rare.
-BAD WORDS
- *spell-affix-BAD*
+BAD WORDS *spell-affix-BAD*
+
In the affix file a BAD line can be used to define the affix name used for
bad words. Example:
@@ -756,6 +808,125 @@
word as good.
+COMPOUND WORDS *spell-affix-compound*
+
+A compound word is a longer word made by concatenating words. To specify
+which words may be concatenated a character is used. This character is put in
+the list of affixes after the word. We will call this character a flag here.
+Obviously these flags must be different from any affix IDs used.
+
+ *spell-COMPOUNDFLAG*
+The Myspell compatible method uses one flag, specified with COMPOUNDFLAG.
+All words with this flag combine in any order and without limit in length.
+This means there is no control over which word comes first. Example:
+ COMPOUNDFLAG c ~
+
+ *spell-COMPOUNDFLAGS*
+The method added by Vim allows specifying which words can be prepended to
+other words, and which words can be appended to other words. This is a list
+of comma separated items. Each item may contain zero or more dashes and plus
+signs.
+
+NOTE: At this moment COMPOUNDFLAGS has not been implemented yet!
+
+An item without dashes specifies words that combine in any order and as often
+as possible. Example:
+ COMPOUNDFLAGS c,m ~
+
+This allows all words with the "c" flag to be combined and all words with the
+"m" flag to be combined, but a word with the "c" flag doesn't combine with a
+word with the "m" flag.
+
+Flags that are put together, without a separating comma, are considered
+interchangable. Example:
+ COMPOUNDFLAGS cm ~
+
+This allows all words with the "c" and/or "m" flag to be combined.
+
+An item with one dash specifies flags for a leading word and flags for a
+trailing word. Thus only two-word combinations are made. Example:
+ COMPOUNDFLAGS f-d ~
+
+Here the 'f' flag can be used for food and 'd' for dishes, such that you can
+use these words in the dictionary:
+ tomato/f ~
+ onion/f~
+ soup/d~
+ salat/d~
+
+Which makes the words:
+ tomato
+ onion
+ soup
+ salat
+ tomatosoup
+ tomatosalat
+ onionsoup
+ onionsalat
+
+Note that something like "souptomato" is not possible. And that it's actually
+easier to list all the words if you have only this few.
+
+More dashes can be used to allow more words to combine. For example:
+ COMPOUNDFLAGS f-d,f-f-d ~
+
+Would allow "tomatoonionsoup" (OK, so this is a bad example, but you get the
+idea).
+
+When a word can be used an undetermined number of times use a plus instead of
+a dash. Example:
+ COMPOUNDFLAGS f+d ~
+
+Then you can make tasty "oniononiontomatotomatosoup".
+
+The "+" may also appear at the end, which means that the last flags can be
+repeated many times. Example:
+ COMPOUNDFLAGS f-d+ ~
+
+Which allows the use of "onionsoupsoupsoupsoupsoupsoup".
+
+ *spell-COMPOUNDMIN*
+The minimal length of a word used for concatenation is specified with
+COMPOUNDMIN. Example:
+ COMPOUNDMIN 5 ~
+
+When omitted a minimal length of 3 bytes is used. Obviously you could just
+leave out the compound flag from short words instead, this feature is present
+for compatibility with Myspell.
+
+ *spell-CMP*
+NOTE: At this moment CMP has not been implemented yet!
+
+Sometimes it is necessary to change a word when concatenating it to another,
+by removing a few letters, inserting something or both. It can also be useful
+to restrict concatenation to words that match a pattern. For this purpose CMP
+items can be used. They look like this:
+ CMP {flag} {strip} {add} {cond} {cond2}
+
+ {flag} the flag, as used in COMPOUNDFLAGS for the lead word
+ {strip} text to remove from the end of the lead word (zero
+ for no stripping)
+ {add} text to insert between the words (zero for no
+ addition)
+ {cond} condition to match at the end of the lead word
+ {cond2} condition to match at the start of the following word
+
+This is exactly the same as what is used for SFX and PFX items, except there
+is an extra condition. Example:
+ CMP f 0 - . . ~
+
+When used with the food and dish word list above, this means that a dash is
+inserted after each food item. Thus you get "onion-soup" and
+"onion-tomato-salat".
+
+When there are CMP items for a compound flag the concatenation is only done
+when a CMP item matches.
+
+When there are no CMP items for a compound flag, then all words will be
+concatenated, as if there was an item:
+ CMP {flag} 0 0 . .
+
+
REPLACEMENTS *spell-affix-REP*
In the affix file REP items can be used to define common mistakes. This is
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 3643f7a..04e76db 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 11
+*syntax.txt* For Vim version 7.0aa. Last change: 2005 Aug 14
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2234,7 +2234,7 @@
(Adapted from the html.vim help text by Claudio Fleiner <claudio@fleiner.com>)
-SH *sh.vim* *sh-syntax*
+SH *sh.vim* *sh-syntax* *bash-syntax* *ksh-syntax*
This covers the "normal" Unix (Bourne) sh, bash and the Korn shell.
@@ -3647,6 +3647,7 @@
result is like this single command has been used: >
:hi Comment term=bold ctermfg=Cyan guifg=#80a0ff gui=bold
<
+ *:highlight-verbose*
When listing a highlight group and 'verbose' is non-zero, the listing will
also tell where it was last set. Example: >
:verbose hi Comment
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 13f3073..18f6088 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -2014,6 +2014,7 @@
:highlight-default syntax.txt /*:highlight-default*
:highlight-link syntax.txt /*:highlight-link*
:highlight-normal syntax.txt /*:highlight-normal*
+:highlight-verbose syntax.txt /*:highlight-verbose*
:history cmdline.txt /*:history*
:history-indexing cmdline.txt /*:history-indexing*
:i insert.txt /*:i*
@@ -2124,6 +2125,7 @@
:map-silent map.txt /*:map-silent*
:map-special-keys map.txt /*:map-special-keys*
:map-undo map.txt /*:map-undo*
+:map-verbose map.txt /*:map-verbose*
:map_l map.txt /*:map_l*
:map_l! map.txt /*:map_l!*
:mapc map.txt /*:mapc*
@@ -4242,6 +4244,7 @@
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*
@@ -5205,7 +5208,6 @@
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*
@@ -5532,6 +5534,7 @@
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*
@@ -6372,6 +6375,9 @@
special-buffers windows.txt /*special-buffers*
speed-up tips.txt /*speed-up*
spell spell.txt /*spell*
+spell-COMPOUNDFLAG spell.txt /*spell-COMPOUNDFLAG*
+spell-COMPOUNDFLAGS spell.txt /*spell-COMPOUNDFLAGS*
+spell-COMPOUNDMIN spell.txt /*spell-COMPOUNDMIN*
spell-affix-BAD spell.txt /*spell-affix-BAD*
spell-affix-FOL spell.txt /*spell-affix-FOL*
spell-affix-KEP spell.txt /*spell-affix-KEP*
@@ -6383,10 +6389,12 @@
spell-affix-REP spell.txt /*spell-affix-REP*
spell-affix-SAL spell.txt /*spell-affix-SAL*
spell-affix-SFX spell.txt /*spell-affix-SFX*
+spell-affix-SLASH spell.txt /*spell-affix-SLASH*
spell-affix-SOFOFROM spell.txt /*spell-affix-SOFOFROM*
spell-affix-SOFOTO spell.txt /*spell-affix-SOFOTO*
spell-affix-UPP spell.txt /*spell-affix-UPP*
spell-affix-chars spell.txt /*spell-affix-chars*
+spell-affix-compound spell.txt /*spell-affix-compound*
spell-affix-mbyte spell.txt /*spell-affix-mbyte*
spell-affix-vim spell.txt /*spell-affix-vim*
spell-dic-format spell.txt /*spell-dic-format*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 8397b77..1f82ecc 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 12
+*todo.txt* For Vim version 7.0aa. Last change: 2005 Aug 15
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -30,6 +30,11 @@
*known-bugs*
-------------------- Known bugs and current work -----------------------
+Spelling:
+- suggestions for compound words.
+- Implement multiple flags for compound words. Await comments from other
+ spell checking authors.
+
Mac unicode patch (Da Woon Jung):
- selecting proportional font breaks display
- UTF-8 text causes display problems. Font replacement causes this.
@@ -77,12 +82,26 @@
Use something like 'completefunc'?
runtime/complete/{filetype}.vim files?
In function arguments suggest variables of expected type.
+ List of completions is a Dictionary with items:
+ complist[0]['text'] = completion text
+ complist[0]['type'] = type of completion (e.g. function, var, arg)
+ complist[0]['help'] = help text (e.g. function declaration)
+ complist[0]['helpfunc'] = function that shows help text
+ etc.
Ideas from others:
http://www.vim.org/scripts/script.php?script_id=747
+ http://sourceforge.net/projects/insenvim
+ of http://insenvim.sourceforge.net
+ Java, XML, HTML, C++, JSP, SQL, C#
+ MS-Windows only, lots of dependencies (e.g. Perl, Internet
+ explorer), uses .dll shared libraries.
+ for C++ uses $INCLUDE environment var
+ UI: popup menu with list of alternatives, icon to indicate type
+ optional popup window with info about selected alternative
+ Unrelated settings are changed (e.g. 'mousemodel').
+
www.vim.org script 1213 (Java Development Environment) (Fuchuan Wang)
- http://sourceforge.net/projects/insenvim
- of http://insenvim.sourceforge.net
IComplete: http://www.vim.org/scripts/script.php?script_id=1265
and http://stud4.tuwien.ac.at/~e0125672/icomplete/
http://cedet.sourceforge.net/intellisense.shtml (for Emacs)
@@ -2571,16 +2590,12 @@
Mappings and Abbreviations:
-8 Let ":verbose map xx" report where the mapping was set, just like with
- ":verbose set".
8 When "0" is mapped (it is a movement command) this mapping should not be
used after typing another number, e.g. "20l". (Charles Campbell)
Is this possible without disabling the mapping of the following command?
8 Should mapping <C-A> and <C-S-A> both work?
7 ":abbr b byte", append "b " to an existing word still expands to "byte".
This is Vi compatible, but can we avoid it anyway?
-8 ":verbose map" could show the script where the mapping was defined.
- m_script_ID can be used.
8 To make a mapping work with a prepended "x to select a register, store the
last _typed_ register name and access it with "&.
8 Add ":amap", like ":amenu".
@@ -2592,8 +2607,6 @@
8 Allow mapping of CTRL-@ (anywhere in the LHS).
8 Give a warning when using CTRL-C in the lhs of a mapping. It will never
(?) work.
-7 ":verbose map" should display where a mapping was defined, like ":verbose
- set".
8 Add a way to save a current mapping and restore it later. Use a function
that returns the mapping command to restore it: mapcmd()? mapcheck() is
not fool proof. How to handle ambiguous mappings?
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 12f5ddf..a1c537f 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt* For Vim version 7.0aa. Last change: 2005 Aug 12
+*version7.txt* For Vim version 7.0aa. Last change: 2005 Aug 15
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -559,6 +559,11 @@
For xterm most combinations of modifiers with function keys are recognized.
|xterm-modifier-keys|
+When 'verbose' is set the output of ":highlight" will show where a highlight
+item was last set.
+When 'verbose' is set the output of ":map" will show where a key map was
+last defined. (Yegappan Lakshmanan)
+
==============================================================================
IMPROVEMENTS *improvements-7*
@@ -740,6 +745,7 @@
The table with encodings has been expanded with many MS-Windows codepages,
such as cp1250 and cp737, so that these can also be used on Unix without
prepending "8bit-".
+When an encoding name starts with "microsoft-cp" ignore the "microsoft-" part.
Added the "customlist" completion argument to a user-defined command. The
user-defined completion function should return the completion candidates as a
@@ -752,9 +758,6 @@
The 's' flag is added to the search() and searchpair() function to set the
' mark if the cursor is moved. (Yegappan Lakshmanan)
-When 'verbose' is set the output of ":highlight" will show where a highlight
-item was last set.
-
For 'errorformat' it was not possible to have a file name that contains the
character that follows after "%f". For example, in "%f:%l:%m" the file name
could not contain ":". Now include the first ":" where the rest of the
@@ -1283,4 +1286,10 @@
Win32: Could not use "**/" in 'path', it had to be "**\".
+The search pattern "\n" did not match at the end of the last line.
+
+Searching for a pattern backwards, starting on the NUL at the end of the line
+and 'encoding' is "utf-8" would match the pattern just before it incorrectly.
+Affected searchpair('/\*', '', '\*/').
+
vim:tw=78:ts=8:ft=help:norl: