updated for version 7.0084
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
*develop.txt* For Vim version 7.0aa. Last change: 2005 Jun 04
|
||||
*develop.txt* For Vim version 7.0aa. Last change: 2005 Jun 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -375,8 +375,10 @@ checking engine in Vim, for various reasons:
|
||||
|
||||
- Missing support for multi-byte encodings. At least UTF-8 must be supported,
|
||||
so that more than one language can be used in the same file.
|
||||
Doing on-the-fly conversion is not always possible (would require iconv
|
||||
support).
|
||||
- For the programs and libraries: Using them as-is would require installing
|
||||
them separately from Vim. That's not impossible, but a drawback.
|
||||
them separately from Vim. That's mostly not impossible, but a drawback.
|
||||
- Performance: A few tests showed that it's possible to check spelling on the
|
||||
fly (while redrawing), just like syntax highlighting. But the mechanisms
|
||||
used by other code are much slower. Myspell uses a simplistic hashtable,
|
||||
@ -392,7 +394,9 @@ checking engine in Vim, for various reasons:
|
||||
all English words and highlight non-Canadian words differently.
|
||||
- Missing support for rare words. Many words are correct but hardly ever used
|
||||
and could be a misspelled often-used word.
|
||||
|
||||
- For making suggestions the speed is less important and requiring to install
|
||||
another program or library would be acceptable. But the word lists probably
|
||||
differ, the suggestions may be wrong words.
|
||||
|
||||
==============================================================================
|
||||
4. Assumptions *design-assumptions*
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 7.0aa. Last change: 2005 Jun 07
|
||||
*eval.txt* For Vim version 7.0aa. Last change: 2005 Jun 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -235,6 +235,18 @@ the same value. >
|
||||
:echo alist == blist
|
||||
< 1
|
||||
|
||||
Note about comparing lists: Two lists are considered equal if they have the
|
||||
same length and all items compare equal, as with using "==". There is one
|
||||
exception: When comparing a number with a string and the string contains extra
|
||||
characters beside the number they are not equal. Example: >
|
||||
echo 4 == "4x"
|
||||
< 1 >
|
||||
echo [4] == ["4x"]
|
||||
< 0
|
||||
|
||||
This is to fix the odd behavior of == that can't be changed for backward
|
||||
compatibility reasons.
|
||||
|
||||
|
||||
List unpack ~
|
||||
|
||||
@ -2593,7 +2605,8 @@ getwinposy() The result is a Number, which is the Y coordinate in pixels of
|
||||
|
||||
getwinvar({nr}, {varname}) *getwinvar()*
|
||||
The result is the value of option or local window variable
|
||||
{varname} in window {nr}.
|
||||
{varname} in window {nr}. When {nr} is zero the current
|
||||
window is used.
|
||||
This also works for a global option, buffer-local option and
|
||||
window-local option, but it doesn't work for a global variable
|
||||
or buffer-local variable.
|
||||
@ -3692,7 +3705,7 @@ setreg({regname}, {value} [,{options}])
|
||||
|
||||
setwinvar({nr}, {varname}, {val}) *setwinvar()*
|
||||
Set option or local variable {varname} in window {nr} to
|
||||
{val}.
|
||||
{val}. When {nr} is zero the current window is used.
|
||||
This also works for a global or local buffer option, but it
|
||||
doesn't work for a global or local buffer variable.
|
||||
For a local buffer option the global value is unchanged.
|
||||
@ -3804,6 +3817,7 @@ string({expr}) Return {expr} converted to a String. If {expr} is a Number,
|
||||
Number 123
|
||||
Funcref function('name')
|
||||
List [item, item]
|
||||
Dictionary {key: value, key: value}
|
||||
Note that in String values the ' character is doubled.
|
||||
|
||||
*strlen()*
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*intro.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
|
||||
*intro.txt* For Vim version 7.0aa. Last change: 2005 Jun 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -198,7 +198,7 @@ The user may create scripts for Vim that use external commands. These might
|
||||
introduce Y2K problems, but those are not really part of Vim itself.
|
||||
|
||||
==============================================================================
|
||||
3. Credits *credits* *author*
|
||||
3. Credits *credits* *author* *Bram* *Moolenaar*
|
||||
|
||||
Most of Vim was written by Bram Moolenaar <Bram@vim.org>.
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*spell.txt* For Vim version 7.0aa. Last change: 2005 Jun 08
|
||||
*spell.txt* For Vim version 7.0aa. Last change: 2005 Jun 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -51,7 +51,7 @@ To search for the next misspelled word:
|
||||
[S Like "]S" but search backwards.
|
||||
|
||||
|
||||
To add words to your own word list:
|
||||
To add words to your own word list: *E764*
|
||||
|
||||
*zg*
|
||||
zg Add word under the cursor as a good word to
|
||||
@ -73,6 +73,21 @@ automatically be updated. More details about the 'spellfile' format below
|
||||
|spell-wordlist-format|.
|
||||
|
||||
|
||||
Finding suggestions for bad words:
|
||||
|
||||
*z?*
|
||||
z? For the badly spelled word under the cursor suggest
|
||||
the correctly spelled word.
|
||||
When there is no badly spelled word under the cursor
|
||||
use the one after the cursor, in the same line.
|
||||
The results are sorted on similarity to the badly
|
||||
spelled word.
|
||||
This may take a long time. Hit CTRL-C when you are
|
||||
bored.
|
||||
You can enter the number of your choice or press
|
||||
<Enter> if you don't want to replace.
|
||||
|
||||
|
||||
PERFORMANCE
|
||||
|
||||
Note that Vim does on-the-fly spell checking. To make this work fast the
|
||||
@ -170,6 +185,10 @@ Vim uses a fixed method to recognize a word. This is independent of
|
||||
include characters like '-' in 'iskeyword'. The word characters do depend on
|
||||
'encoding'.
|
||||
|
||||
The table with word characters is stored in the main .spl file. Therefore it
|
||||
matters what the current locale is when generating it! A .add.spl file does
|
||||
not contain a word table.
|
||||
|
||||
A word that starts with a digit is always ignored. That includes hex numbers
|
||||
in the form 0xff and 0XFF.
|
||||
|
||||
@ -224,6 +243,9 @@ You can also use a plain word list.
|
||||
< This combines the English word lists for US, CA and AU
|
||||
into one en.spl file.
|
||||
Up to eight regions can be combined. *E754* *755*
|
||||
The REP and SAL items of the first .aff file where
|
||||
they appear are used. |spell-affix-REP|
|
||||
|spell-affix-SAL|
|
||||
|
||||
When the spell file was written all currently used
|
||||
spell files will be reloaded.
|
||||
@ -452,4 +474,53 @@ words that are correct for the language, but are hardly ever used and could be
|
||||
a typing mistake anyway.
|
||||
|
||||
|
||||
REPLACEMENTS *spell-affix-REP*
|
||||
|
||||
In the affix file REP items can be used to define common mistakes. This is
|
||||
used to make spelling suggestions. The items define the "from" text and the
|
||||
"to" replacement. Example:
|
||||
|
||||
REP 4 ~
|
||||
REP f ph ~
|
||||
REP ph f ~
|
||||
REP k ch ~
|
||||
REP ch k ~
|
||||
|
||||
The first line specifies the number of REP lines following. Vim ignores it.
|
||||
|
||||
|
||||
SIMILAR CHARACTERS *spell-affix-MAP*
|
||||
|
||||
In the affix file MAP items can be used to define letters that very much
|
||||
alike. This is mostly used for a letter with different accents. This is used
|
||||
to prefer suggestions with these letters substituted. Example:
|
||||
|
||||
MAP 2 ~
|
||||
MAP e<><65><EFBFBD><EFBFBD> ~
|
||||
MAP u<><75><EFBFBD><EFBFBD> ~
|
||||
|
||||
The first line specifies the number of MAP lines following. Vim ignores it.
|
||||
|
||||
|
||||
SOUNDS-A-LIKE *spell-affix-SAL*
|
||||
|
||||
In the affix file SAL items can be used to define the sounds-a-like mechanism
|
||||
to be used. The main items define the "from" text and the "to" replacement.
|
||||
Example:
|
||||
|
||||
SAL CIA X ~
|
||||
SAL CH X ~
|
||||
SAL C K ~
|
||||
SAL K K ~
|
||||
|
||||
TODO: explain how it works.
|
||||
|
||||
There are a few special items:
|
||||
|
||||
SAL followup true ~
|
||||
SAL collapse_result true ~
|
||||
SAL remove_accents true ~
|
||||
|
||||
"1" has the same meaning as "true". Any other value means "false".
|
||||
|
||||
vim:tw=78:sw=4:ts=8:ft=help:norl:
|
||||
|
||||
@ -2835,6 +2835,7 @@ Athena gui_x11.txt /*Athena*
|
||||
B motion.txt /*B*
|
||||
BeBox os_beos.txt /*BeBox*
|
||||
BeOS os_beos.txt /*BeOS*
|
||||
Bram intro.txt /*Bram*
|
||||
BufAdd autocmd.txt /*BufAdd*
|
||||
BufCreate autocmd.txt /*BufCreate*
|
||||
BufDelete autocmd.txt /*BufDelete*
|
||||
@ -3805,6 +3806,7 @@ Mac-format-write editing.txt /*Mac-format-write*
|
||||
Macintosh os_mac.txt /*Macintosh*
|
||||
Mark motion.txt /*Mark*
|
||||
MiNT os_mint.txt /*MiNT*
|
||||
Moolenaar intro.txt /*Moolenaar*
|
||||
MorphOS os_amiga.txt /*MorphOS*
|
||||
Motif gui_x11.txt /*Motif*
|
||||
MzScheme if_mzsch.txt /*MzScheme*
|
||||
@ -5125,6 +5127,7 @@ 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*
|
||||
@ -6250,9 +6253,12 @@ speed-up tips.txt /*speed-up*
|
||||
spell spell.txt /*spell*
|
||||
spell-affix-KEP spell.txt /*spell-affix-KEP*
|
||||
spell-affix-RAR spell.txt /*spell-affix-RAR*
|
||||
spell-affix-REP spell.txt /*spell-affix-REP*
|
||||
spell-affix-SAL spell.txt /*spell-affix-SAL*
|
||||
spell-affix-chars spell.txt /*spell-affix-chars*
|
||||
spell-affix-mbyte spell.txt /*spell-affix-mbyte*
|
||||
spell-affix-vim spell.txt /*spell-affix-vim*
|
||||
spell-dic-format spell.txt /*spell-dic-format*
|
||||
spell-file-format spell.txt /*spell-file-format*
|
||||
spell-mkspell spell.txt /*spell-mkspell*
|
||||
spell-quickstart spell.txt /*spell-quickstart*
|
||||
@ -7070,6 +7076,7 @@ z/OS os_390.txt /*z\/OS*
|
||||
z<CR> scroll.txt /*z<CR>*
|
||||
z<Left> scroll.txt /*z<Left>*
|
||||
z<Right> scroll.txt /*z<Right>*
|
||||
z? spell.txt /*z?*
|
||||
zA fold.txt /*zA*
|
||||
zC fold.txt /*zC*
|
||||
zD fold.txt /*zD*
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.0aa. Last change: 2005 Jun 08
|
||||
*todo.txt* For Vim version 7.0aa. Last change: 2005 Jun 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -30,7 +30,15 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
New menu file doesn't work with older vim. exists("spell") doesn't work?
|
||||
Range(0) should return an empty list (Servatius Brandt).
|
||||
|
||||
a few builtin functions call set_var() internally to set a variable. They do
|
||||
not check for a valid variable name. Example: setbufvar(1, ";", 1) sets a
|
||||
variable named ";". (Servatius Brandt)
|
||||
|
||||
Patch for if_python to make exit work better with threads. (ugo)
|
||||
Still seems to fail 15% of the time.
|
||||
Vim 7 breaks, works OK with 6.3 version of if_python (Thakkar)
|
||||
|
||||
Add extra list of file locations. Can be used with:
|
||||
:ltag list of matching tags, like :tselect
|
||||
@ -86,18 +94,25 @@ Awaiting response:
|
||||
- Win32: tearoff menu window should have a scrollbar when it's taller than
|
||||
the screen.
|
||||
|
||||
Patch for if_python to make exit work better with threads. (ugo)
|
||||
Still seems to fail 15% of the time.
|
||||
|
||||
|
||||
PLANNED FOR VERSION 7.0:
|
||||
|
||||
- Add SPELLCHECKER, with support for many languages.
|
||||
- Spell checking code todo's:
|
||||
- How about making suggestions? Use an external program like aspell?
|
||||
Or include the myspell suggestion code in Vim?
|
||||
- Support for approximate-regexps will help with finding similar words
|
||||
(agrep http://www.tgries.de/agrep/).
|
||||
- Code for making suggestions:
|
||||
- Also need to store "toupper" in the .spl file.
|
||||
- Give better score for words that sound like the bad word?
|
||||
- "sounds-like" matching: Also try variants of the soundslike word.
|
||||
- Aspell has the "special" character, useful?
|
||||
- Support for approximate-regexps will help with finding similar
|
||||
words (agrep http://www.tgries.de/agrep/).
|
||||
- Give a warning for ":mkspell it_IT wordfile", thus using a region
|
||||
name with only one input file.
|
||||
- Also put list of word characters in word list file. Otherwise the
|
||||
one for Italian may differ from the one used for English.
|
||||
- Somehow mark "frequent" words, so that suggestions with "a" and
|
||||
"the" can be preferred?
|
||||
- Make "en-rare" spell file.
|
||||
Convention: use en_US (language_region) and en-rare (language-field)
|
||||
Add hl groups to 'spelllang'?
|
||||
@ -130,7 +145,8 @@ PLANNED FOR VERSION 7.0:
|
||||
Later:
|
||||
- Implement compound words when it works for Myspell. Current idea has
|
||||
the problem that "foo/X" always allows "foofoo", there is no way to
|
||||
specify a word can only be at the start or end.
|
||||
specify a word can only be at the start or end, or that only certain
|
||||
words combine.
|
||||
|
||||
- REFACTORING: The main() function is very long. Move parts to separate
|
||||
functions, especially loops. Ideas from Walter Briscoe (2003 Apr 3, 2004
|
||||
@ -266,7 +282,7 @@ on MS-Windows. (George Reilly)
|
||||
Add strtol() to avoid the problems with leading zero causing octal conversion.
|
||||
|
||||
Try new POSIX tests, made after my comments. (Geoff Clare, 2005 April 7)
|
||||
Before April 23 if possible.
|
||||
Version 1.5 is in ~/src/posix/1.5. (Lynne Canal)
|
||||
|
||||
Add a 'tool' window: behaves like a preview window but there can be several.
|
||||
Don't count it in only_one_window(). (Alexei Alexandrov)
|
||||
@ -2342,6 +2358,9 @@ Insert mode:
|
||||
|
||||
|
||||
'cindent', 'smartindent':
|
||||
8 Wrong indent below ? : with ():
|
||||
if ((a ? (b) : c) != 0)
|
||||
aligns with ":".
|
||||
8 Wrong indent for ":" after a method with line break in arguments:
|
||||
Foo::Foo (int one,
|
||||
int two)
|
||||
@ -2927,12 +2946,8 @@ Options:
|
||||
8 When using ":mksession", also store a command to reset all options to
|
||||
their default value, before setting the options that are not at their
|
||||
default value.
|
||||
8 Should ":mksession" restore the current directory when writing the
|
||||
session, or the directory where the session file is? Probably need a word
|
||||
in 'sessionoptions' to make a choice:
|
||||
"curdir" (cd to current directory when session file was generated)
|
||||
"sessiondir" (cd to directory of session file)
|
||||
"nodir" (don't cd at all)
|
||||
7 With ":mksession" also store the tag stack and jump history. (Michal
|
||||
Malecki)
|
||||
8 Make "old" number options that really give a number of effects into string
|
||||
options that are a comma separated list. The old number values should
|
||||
also be supported.
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_11.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
|
||||
*usr_11.txt* For Vim version 7.0aa. Last change: 2005 Jun 09
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -34,7 +34,7 @@ messages (with different file names, of course):
|
||||
|
||||
Using swap file ".help.txt.swp" ~
|
||||
Original file "~/vim/runtime/doc/help.txt" ~
|
||||
Recovery completed. You should check if everything is OK. ~
|
||||
Recovery completed. You should check if everything is OK. ~
|
||||
(You might want to write out this file under another name ~
|
||||
and run diff with the original file to check for changes) ~
|
||||
Delete the .swp file afterwards. ~
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*usr_41.txt* For Vim version 7.0aa. Last change: 2005 May 18
|
||||
*usr_41.txt* For Vim version 7.0aa. Last change: 2005 Jun 09
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@ -612,13 +612,13 @@ List manipulation:
|
||||
join() join List items into a String
|
||||
string() String representation of a List
|
||||
call() call a function with List as arguments
|
||||
index() index of a value in a list
|
||||
index() index of a value in a List
|
||||
max() maximum value in a List
|
||||
min() minimum value in a List
|
||||
count() count number of times a value appears in a List
|
||||
|
||||
Dictionary manipulation:
|
||||
get() get an entries without error for wrong key
|
||||
get() get an entry without an error for a wrong key
|
||||
len() number of entries in a Dictionary
|
||||
has_key() check whether a key appears in a Dictionary
|
||||
empty() check if Dictionary is empty
|
||||
@ -1117,7 +1117,7 @@ over them: >
|
||||
one ~
|
||||
two ~
|
||||
|
||||
The will notice the items are not ordered. You can sort the list to get a
|
||||
The will notice the keys are not ordered. You can sort the list to get a
|
||||
specific order: >
|
||||
|
||||
:for key in sort(keys(uk2nl))
|
||||
@ -2237,8 +2237,8 @@ That script must define the "mylib#myfunction()" function.
|
||||
|
||||
You can put many other functions in the mylib.vim script, you are free to
|
||||
organize your functions in library scripts. But you must use function names
|
||||
where the part before the colon matches the script name. Otherwise Vim
|
||||
would not know what script to load.
|
||||
where the part before the '#' matches the script name. Otherwise Vim would
|
||||
not know what script to load.
|
||||
|
||||
If you get really enthousiastic and write lots of library scripts, you may
|
||||
want to use subdirectories. Example: >
|
||||
@ -2256,7 +2256,7 @@ Where the function is defined like this: >
|
||||
endfunction
|
||||
|
||||
Notice that the name the function is defined with is exactly the same as the
|
||||
name used for calling the function. And the part before the last colon
|
||||
name used for calling the function. And the part before the last '#'
|
||||
exactly matches the subdirectory and script name.
|
||||
|
||||
You can use the same mechanism for variables: >
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
*version7.txt* For Vim version 7.0aa. Last change: 2005 Jun 07
|
||||
*version7.txt* For Vim version 7.0aa. Last change: 2005 Jun 13
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -144,6 +144,11 @@ with scripts, but they were slow and/or required an external program.
|
||||
|
||||
The 'spell' option is used to switch spell checking on or off.
|
||||
The 'spelllang' option is used to specify the languages that are accepted.
|
||||
The 'spellfile' option specifies where new words are added.
|
||||
|
||||
The |[s| and |]s| commands can be used to move to the next or previous error.
|
||||
The |zg| and |zw| commands can be used to add good and wrong words.
|
||||
The |z?| command can be used to correct the word.
|
||||
|
||||
The "undercurl" highlighting attribute was added to nicely point out spelling
|
||||
mistakes in the GUI (based on patch from Marcin Dalecki).
|
||||
@ -649,6 +654,9 @@ Added the "%s" item to 'errorformat'. (Yegappan Lakshmanan)
|
||||
GTK GUI: use the GTK file dialog when it's available. Mix from patches by
|
||||
Grahame Bowland and Evan Webb.
|
||||
|
||||
Added ":scriptnames" to bugreport.vim, so that we can see what plugins were
|
||||
used.
|
||||
|
||||
==============================================================================
|
||||
COMPILE TIME CHANGES *compile-changes-7*
|
||||
|
||||
@ -1074,6 +1082,7 @@ reallocating the buffer every time. (Alexei Alexandrov)
|
||||
|
||||
When using a Python "atexit" function it was not invoked when Vim exits. Now
|
||||
call Py_Finalize() for that. (Ugo Di Girolamo)
|
||||
This breaks the thread stuff though, fixed by Ugo.
|
||||
|
||||
GTK GUI: using a .vimrc with "set cmdheight=2 lines=43" and ":split" right
|
||||
after startup, the window layout is messed up. (Michael Schaap) Added
|
||||
|
||||
Reference in New Issue
Block a user