diff options
| author | Marcin Juszkiewicz <marcin@juszkiewicz.com.pl> | 2010-04-01 20:58:44 +0200 |
|---|---|---|
| committer | Marcin Juszkiewicz <marcin@juszkiewicz.com.pl> | 2010-04-06 10:38:02 +0200 |
| commit | 0165ce18503740e99e175b5a1ed823185226f43d (patch) | |
| tree | 327f8dd00dd9884f92f161f6b046ddd8967b1bf6 | |
| parent | c906fd7faa8517ca565faba90887d10ebb90e092 (diff) | |
vim: updated to upstream patch 411
| -rw-r--r-- | recipes/vim/gvim_7.2.bb | 2 | ||||
| -rw-r--r-- | recipes/vim/vim-7.2/001-411.diff (renamed from recipes/vim/vim-7.2/001-394.diff) | 70870 | ||||
| -rw-r--r-- | recipes/vim/vim_7.2.bb | 8 |
3 files changed, 35656 insertions, 35224 deletions
diff --git a/recipes/vim/gvim_7.2.bb b/recipes/vim/gvim_7.2.bb index da7a3be39a..276a9f0553 100644 --- a/recipes/vim/gvim_7.2.bb +++ b/recipes/vim/gvim_7.2.bb @@ -5,8 +5,6 @@ require vim_${PV}.bb DEPENDS += "gtk+ xt" -PR = "${INC_PR}.0" - EXTRA_OECONF += "--enable-gtk2-test" #might needs RREPLACES as well diff --git a/recipes/vim/vim-7.2/001-394.diff b/recipes/vim/vim-7.2/001-411.diff index 4fcdb39c3e..420ac937d3 100644 --- a/recipes/vim/vim-7.2/001-394.diff +++ b/recipes/vim/vim-7.2/001-411.diff @@ -397,3045 +397,9478 @@ Individual patches for Vim 7.2: 4898 7.2.392 netbeans hangs reading from a socket at the maximum block size 9605 7.2.393 Mac: Can't build with different Xcode developer tools dir 4298 7.2.394 .lzma and .xz files are not supported + 1554 7.2.395 in help CTRL=] on g?g? escapes the ?, causing it to fail + 1554 7.2.396 get E38 errors + 1722 7.2.397 redundant check for w_lines_valid + 4127 7.2.398 when moving windows the cursor ends up in the wrong line + 1784 7.2.399 (extra, after 7.2.388) cannot compile on MingW + 12865 7.2.400 (after 7.2.387) Ruby problems with init and empty string + 1982 7.2.401 wildmode list doesn't highlight directory names with a space + 2649 7.2.402 error 705 when re-using funcref variable + 1548 7.2.403 (after 7.2.400) compiler warning for pointer type + 1880 7.2.404 pointers for composing characters are not properly initialized + 1636 7.2.405 with small features match is not highlighted for ":s/p/r/c" + 4701 7.2.406 (after 7.2.119) uninit memory read + 1916 7.2.407 when using :s with an expression backslashes are dropped + 2152 7.2.408 ":g/the/s/a/b/" can set '[ and '] marks to an unchanged line + 1814 7.2.409 summary of number of substitutes is incorrect for ":folddo" + 2526 7.2.410 highlighting directories for completion doesn't work properly + 1462 7.2.411 when parsing 'cino' a comma isn't skipped properly - ---- vim72.orig/src/pty.c -+++ vim72/src/pty.c -@@ -268,13 +268,14 @@ OpenPTY(ttyn) - *ttyn = TtyName; - return f; - } +--- vim72.orig/Filelist ++++ vim72/Filelist +@@ -283,10 +283,11 @@ SRC_DOS = \ + src/proto/os_msdos.pro \ + src/proto/os_win16.pro \ + src/proto/os_win32.pro \ + src/proto/os_mswin.pro \ + src/testdir/Make_dos.mak \ ++ src/testdir/Make_ming.mak \ + src/testdir/dos.vim \ + src/uninstal.c \ + src/vim.def \ + src/vim.rc \ + src/vimio.h \ +@@ -680,13 +681,11 @@ LANG_GEN = \ + runtime/spell/README.txt \ + runtime/spell/??/*.diff \ + runtime/spell/??/main.aap \ + runtime/spell/yi/README.txt \ + runtime/spell/main.aap \ +- runtime/spell/cleanadd.vim \ + runtime/spell/*.vim \ +- runtime/spell/fixdup \ + + # generic language files, binary + LANG_GEN_BIN = \ + runtime/spell/README_en.txt \ + runtime/spell/en.ascii.spl \ +--- vim72.orig/runtime/doc/autocmd.txt ++++ vim72/runtime/doc/autocmd.txt +@@ -333,10 +333,12 @@ BufDelete Before deleting a buffer fro + Also used just before a buffer in the buffer + list is renamed. + NOTE: When this autocommand is executed, the + current buffer "%" may be different from the + buffer being deleted "<afile>" and "<abuf>". ++ Don't change to another buffer, it will cause ++ problems. + *BufEnter* + BufEnter After entering a buffer. Useful for setting + options for a file type. Also executed when + starting to edit a buffer, after the + BufReadPost autocommands. +@@ -395,10 +397,12 @@ BufUnload Before unloading a buffer. + BufDelete. Also used for all buffers that are + loaded when Vim is going to exit. + NOTE: When this autocommand is executed, the + current buffer "%" may be different from the + buffer being unloaded "<afile>". ++ Don't change to another buffer, it will cause ++ problems. + *BufWinEnter* + BufWinEnter After a buffer is displayed in a window. This + can be when the buffer is loaded (after + processing the modelines) or when a hidden + buffer is displayed in a window (and is no +@@ -426,10 +430,12 @@ BufWipeout Before completely deleting + is renamed (also when it's not in the buffer + list). + NOTE: When this autocommand is executed, the + current buffer "%" may be different from the + buffer being deleted "<afile>". ++ Don't change to another buffer, it will cause ++ problems. + *BufWrite* *BufWritePre* + BufWrite or BufWritePre Before writing the whole buffer to a file. + *BufWriteCmd* + BufWriteCmd Before writing the whole buffer to a file. + Should do the writing of the file and reset +@@ -746,12 +752,14 @@ SwapExists Detected an existing swap f + 'd' delete the swap file + 'q' quit, don't edit the file + 'a' abort, like hitting CTRL-C + When set to an empty string the user will be + asked, as if there was no SwapExists autocmd. +- Note: Do not try to change the buffer, the +- results are unpredictable. ++ *E812* ++ It is not allowed to change to another buffer, ++ change a buffer name or change directory ++ here. + *Syntax* + Syntax When the 'syntax' option has been set. The + pattern is matched against the syntax name. + <afile> can be used for the name of the file + where this option was set, and <amatch> for +--- vim72.orig/runtime/doc/cmdline.txt ++++ vim72/runtime/doc/cmdline.txt +@@ -1,6 +1,6 @@ +-*cmdline.txt* For Vim version 7.2. Last change: 2008 Jul 29 ++*cmdline.txt* For Vim version 7.2. Last change: 2008 Sep 18 + + + VIM REFERENCE MANUAL by Bram Moolenaar + + +@@ -155,10 +155,15 @@ CTRL-R {0-9a-z"%#:-=.} *c_CTRL-R* *c + '=' the expression register: you are prompted to + enter an expression (see |expression|) + (doesn't work at the expression prompt; some + things such as changing the buffer or current + window are not allowed to avoid side effects) ++ When the result is a |List| the items are used ++ as lines. They can have line breaks inside ++ too. ++ When the result is a Float it's automatically ++ converted to a String. + See |registers| about registers. {not in Vi} + Implementation detail: When using the |expression| register + and invoking setcmdpos(), this sets the position before + inserting the resulting string. Use CTRL-R CTRL-R to set the + position afterwards. +@@ -434,17 +439,24 @@ matching files with the next. + For file name completion you can use the 'suffixes' option to set a priority + between files with almost the same name. If there are multiple matches, + those files with an extension that is in the 'suffixes' option are ignored. + The default is ".bak,~,.o,.h,.info,.swp,.obj", which means that files ending + in ".bak", "~", ".o", ".h", ".info", ".swp" and ".obj" are sometimes ignored. +-It is impossible to ignore suffixes with two dots. Examples: ++ ++An empty entry, two consecutive commas, match a file name that does not ++contain a ".", thus has no suffix. This is useful to ignore "prog" and prefer ++"prog.c". ++ ++Examples: + + pattern: files: match: ~ + test* test.c test.h test.o test.c + test* test.h test.o test.h and test.o + test* test.i test.h test.c test.i and test.c + ++It is impossible to ignore suffixes with two dots. ++ + If there is more than one matching file (after ignoring the ones matching + the 'suffixes' option) the first file name is inserted. You can see that + there is only one match when you type 'wildchar' twice and the completed + match stays the same. You can get to the other matches by entering + 'wildchar', CTRL-N or CTRL-P. All files are included, also the ones with +@@ -728,23 +740,33 @@ to use |fnameescape()|. + + + In Ex commands, at places where a file name can be used, the following + characters have a special meaning. These can also be used in the expression + function expand() |expand()|. +- % is replaced with the current file name *:_%* +- # is replaced with the alternate file name *:_#* ++ % Is replaced with the current file name. *:_%* *c_%* ++ # Is replaced with the alternate file name. *:_#* *c_#* + #n (where n is a number) is replaced with the file name of +- buffer n. "#0" is the same as "#" +- ## is replaced with all names in the argument list *:_##* ++ buffer n. "#0" is the same as "#". ++ ## Is replaced with all names in the argument list *:_##* *c_##* + concatenated, separated by spaces. Each space in a name + is preceded with a backslash. +-Note that these give the file name as it was typed. If an absolute path is +-needed (when using the file name from a different directory), you need to add +-":p". See |filename-modifiers|. ++ #<n (where n is a number > 0) is replaced with old *:_#<* *c_#<* ++ file name n. See |:oldfiles| or |v:oldfiles| to get the ++ number. *E809* ++ {only when compiled with the +eval and +viminfo features} ++ ++Note that these, except "#<n", give the file name as it was typed. If an ++absolute path is needed (when using the file name from a different directory), ++you need to add ":p". See |filename-modifiers|. ++ ++The "#<n" item returns an absolute path, but it will start with "~/" for files ++below your home directory. ++ + Note that backslashes are inserted before spaces, so that the command will + correctly interpret the file name. But this doesn't happen for shell +-commands. For those you probably have to use quotes: > ++commands. For those you probably have to use quotes (this fails for files ++that contain a quote and wildcards): > + :!ls "%" + :r !spell "%" + + To avoid the special meaning of '%' and '#' insert a backslash before it. + Detail: The special meaning is always escaped when there is a backslash before +--- vim72.orig/runtime/doc/eval.txt ++++ vim72/runtime/doc/eval.txt +@@ -1,6 +1,6 @@ +-*eval.txt* For Vim version 7.2. Last change: 2008 Aug 09 ++*eval.txt* For Vim version 7.2. Last change: 2008 Nov 27 + + + VIM REFERENCE MANUAL by Bram Moolenaar + + +@@ -1482,10 +1482,21 @@ v:mouse_lnum Line number for a mouse cli + *v:mouse_col* *mouse_col-variable* + v:mouse_col Column number for a mouse click obtained with |getchar()|. + This is the screen column number, like with |virtcol()|. The + value is zero when there was no mouse button click. + ++ *v:oldfiles* *oldfiles-variable* ++v:oldfiles List of file names that is loaded from the |viminfo| file on ++ startup. These are the files that Vim remembers marks for. ++ The length of the List is limited by the ' argument of the ++ 'viminfo' option (default is 100). ++ Also see |:oldfiles| and |c_#<|. ++ The List can be modified, but this has no effect on what is ++ stored in the |viminfo| file later. If you use values other ++ than String this will cause trouble. ++ {only when compiled with the +viminfo feature} ++ + *v:operator* *operator-variable* + v:operator The last operator given in Normal mode. This is a single + character except for commands starting with <g> or <z>, + in which case it is two characters. Best used alongside + |v:prevcount| and |v:register|. Useful if you want to cancel +@@ -1693,11 +1704,11 @@ eval( {string}) any evaluate {string} + eventhandler( ) Number TRUE if inside an event handler + executable( {expr}) Number 1 if executable {expr} exists + exists( {expr}) Number TRUE if {expr} exists + extend({expr1}, {expr2} [, {expr3}]) + List/Dict insert items of {expr2} into {expr1} +-expand( {expr}) String expand special keywords in {expr} ++expand( {expr} [, {flag}]) String expand special keywords in {expr} + feedkeys( {string} [, {mode}]) Number add key sequence to typeahead buffer + filereadable( {file}) Number TRUE if {file} is a readable file + filewritable( {file}) Number TRUE if {file} is a writable file + filter( {expr}, {string}) List/Dict remove items from {expr} where + {string} is 0 +@@ -1745,12 +1756,13 @@ getregtype( [{regname}]) String type of + gettabwinvar( {tabnr}, {winnr}, {name}) + any {name} in {winnr} in tab page {tabnr} + getwinposx() Number X coord in pixels of GUI Vim window + getwinposy() Number Y coord in pixels of GUI Vim window + getwinvar( {nr}, {varname}) any variable {varname} in window {nr} +-glob( {expr}) String expand file wildcards in {expr} +-globpath( {path}, {expr}) String do glob({expr}) for all dirs in {path} ++glob( {expr} [, {flag}]) String expand file wildcards in {expr} ++globpath( {path}, {expr} [, {flag}]) ++ String do glob({expr}) for all dirs in {path} + has( {feature}) Number TRUE if feature {feature} supported + has_key( {dict}, {key}) Number TRUE if {dict} has entry {key} + haslocaldir() Number TRUE if current window executed |:lcd| + hasmapto( {what} [, {mode} [, {abbr}]]) + Number TRUE if mapping to {what} exists +@@ -1801,15 +1813,16 @@ matchend( {expr}, {pat}[, {start}[, {cou + Number position where {pat} ends in {expr} + matchlist( {expr}, {pat}[, {start}[, {count}]]) + List match and submatches of {pat} in {expr} + matchstr( {expr}, {pat}[, {start}[, {count}]]) + String {count}'th match of {pat} in {expr} +-max({list}) Number maximum value of items in {list} +-min({list}) Number minimum value of items in {list} +-mkdir({name} [, {path} [, {prot}]]) ++max( {list}) Number maximum value of items in {list} ++min( {list}) Number minimum value of items in {list} ++mkdir( {name} [, {path} [, {prot}]]) + Number create directory {name} + mode( [expr]) String current editing mode ++mzeval( {expr}) any evaluate |MzScheme| expression + nextnonblank( {lnum}) Number line nr of non-blank line >= {lnum} + nr2char( {expr}) String single char with ASCII value {expr} + pathshorten( {expr}) String shorten directory names in a path + pow( {x}, {y}) Float {x} to the power of {y} + prevnonblank( {lnum}) Number line nr of non-blank line <= {lnum} +@@ -2400,10 +2413,11 @@ cursor({list}) + line. + If {col} is zero, the cursor will stay in the current column. + When 'virtualedit' is used {off} specifies the offset in + screen columns from the start of the character. E.g., a + position within a <Tab> or after the last character. ++ Returns 0 when the position could be set, -1 otherwise. + + + deepcopy({expr}[, {noref}]) *deepcopy()* *E698* + Make a copy of {expr}. For Numbers and Strings this isn't + different from using {expr} directly. +@@ -3273,18 +3287,20 @@ getwinvar({winnr}, {varname}) *getwin + Like |gettabwinvar()| for the current tabpage. + Examples: > + :let list_is_on = getwinvar(2, '&list') + :echo "myvar = " . getwinvar(1, 'myvar') + < +- *glob()* +-glob({expr}) Expand the file wildcards in {expr}. See |wildcards| for the ++glob({expr} [, {flag}]) *glob()* ++ Expand the file wildcards in {expr}. See |wildcards| for the + use of special characters. + The result is a String. + When there are several matches, they are separated by <NL> + characters. +- The 'wildignore' option applies: Names matching one of the +- patterns in 'wildignore' will be skipped. ++ Unless the optional {flag} argument is given and is non-zero, ++ the 'suffixes' and 'wildignore' options apply: Names matching ++ one of the patterns in 'wildignore' will be skipped and ++ 'suffixes' affect the ordering of matches. + If the expansion fails, the result is an empty string. + A name for a non-existing file is not included. + + For most systems backticks can be used to get files names from + any external command. Example: > +@@ -3294,24 +3310,26 @@ glob({expr}) Expand the file wildcards i + item per line. Spaces inside an item are allowed. + + See |expand()| for expanding special Vim variables. See + |system()| for getting the raw output of an external command. + +-globpath({path}, {expr}) *globpath()* ++globpath({path}, {expr} [, {flag}]) *globpath()* + Perform glob() on all directories in {path} and concatenate + the results. Example: > + :echo globpath(&rtp, "syntax/c.vim") + < {path} is a comma-separated list of directory names. Each + directory name is prepended to {expr} and expanded like with +- glob(). A path separator is inserted when needed. ++ |glob()|. A path separator is inserted when needed. + To add a comma inside a directory name escape it with a + backslash. Note that on MS-Windows a directory may have a + trailing backslash, remove it if you put a comma after it. + If the expansion fails for one of the directories, there is no + error message. +- The 'wildignore' option applies: Names matching one of the +- patterns in 'wildignore' will be skipped. ++ Unless the optional {flag} argument is given and is non-zero, ++ the 'suffixes' and 'wildignore' options apply: Names matching ++ one of the patterns in 'wildignore' will be skipped and ++ 'suffixes' affect the ordering of matches. + + The "**" item can be used to search in a directory tree. + For example, to find all "README.txt" files in the directories + in 'runtimepath' and below: > + :echo globpath(&rtp, "**/README.txt") +@@ -3783,11 +3801,12 @@ log10({expr}) *log10()* + map({expr}, {string}) *map()* + {expr} must be a |List| or a |Dictionary|. + Replace each item in {expr} with the result of evaluating + {string}. + Inside {string} |v:val| has the value of the current item. +- For a |Dictionary| |v:key| has the key of the current item. ++ For a |Dictionary| |v:key| has the key of the current item ++ and for a |List| |v:key| has the index of the current item. + Example: > + :call map(mylist, '"> " . v:val . " <"') + < This puts "> " before and " <" after each item in "mylist". + + Note that {string} is the result of an expression and is then +@@ -4070,10 +4089,27 @@ mode([expr]) Return a string that indica + This is useful in the 'statusline' option or when used + with |remote_expr()| In most other places it always returns + "c" or "n". + Also see |visualmode()|. + ++mzeval({expr}) *mzeval()* ++ Evaluate MzScheme expression {expr} and return its result ++ convert to Vim data structures. ++ Numbers and strings are returned as they are. ++ Pairs (including lists and improper lists) and vectors are ++ returned as Vim |Lists|. ++ Hash tables are represented as Vim |Dictionary| type with keys ++ converted to strings. ++ All other types are converted to string with display function. ++ Examples: > ++ :mz (define l (list 1 2 3)) ++ :mz (define h (make-hash)) (hash-set! h "list" l) ++ :echo mzeval("l") ++ :echo mzeval("h") ++< ++ {only available when compiled with the |+mzscheme| feature} ++ + nextnonblank({lnum}) *nextnonblank()* + Return the line number of the first line at or below {lnum} + that is not blank. Example: > + if getline(nextnonblank(1)) =~ "Java" + < When {lnum} is invalid or there is no non-blank line at or +@@ -4498,10 +4534,11 @@ remove({dict}, {key}) + rename({from}, {to}) *rename()* + Rename the file by the name {from} to the name {to}. This + should also work to move files across file systems. The + result is a Number, which is 0 if the file was renamed + successfully, and non-zero when the renaming failed. ++ NOTE: If {to} exists it is overwritten without warning. + This function is not available in the |sandbox|. + + repeat({expr}, {count}) *repeat()* + Repeat {expr} {count} times and return the concatenated + result. Example: > +@@ -5330,18 +5367,23 @@ synIDattr({synID}, {what} [, {mode}]) + {what} result + "name" the name of the syntax item + "fg" foreground color (GUI: color name used to set + the color, cterm: color number as a string, + term: empty string) +- "bg" background color (like "fg") ++ "bg" background color (as with "fg") ++ "font" font name (only available in the GUI) ++ |highlight-font| ++ "sp" special color (as with "fg") |highlight-guisp| + "fg#" like "fg", but for the GUI and the GUI is + running the name in "#RRGGBB" form + "bg#" like "fg#" for "bg" ++ "sp#" like "fg#" for "sp" + "bold" "1" if bold + "italic" "1" if italic + "reverse" "1" if reverse + "inverse" "1" if inverse (= reverse) ++ "standout" "1" if standout + "underline" "1" if underlined + "undercurl" "1" if undercurled + + Example (echoes the color of the syntax item under the + cursor): > +@@ -5821,11 +5863,12 @@ mouse_dec Compiled with support for Dec + mouse_gpm Compiled with support for gpm (Linux console mouse) + mouse_netterm Compiled with support for netterm mouse. + mouse_pterm Compiled with support for qnx pterm mouse. + mouse_sysmouse Compiled with support for sysmouse (*BSD console mouse) + mouse_xterm Compiled with support for xterm mouse. +-multi_byte Compiled with support for editing Korean et al. ++multi_byte Compiled with support for 'encoding' ++multi_byte_encoding 'encoding' is set to a multi-byte encoding. + multi_byte_ime Compiled with support for IME input method. + multi_lang Compiled with support for multiple languages. + mzscheme Compiled with MzScheme interface |mzscheme|. + netbeans_intg Compiled with support for |netbeans|. + netbeans_enabled Compiled with support for |netbeans| and it's used. +@@ -5846,10 +5889,11 @@ ruby Compiled with Ruby interface |rub + scrollbind Compiled with 'scrollbind' support. + showcmd Compiled with 'showcmd' support. + signs Compiled with |:sign| support. + smartindent Compiled with 'smartindent' support. + sniff Compiled with SNiFF interface support. ++startuptime Compiled with |--startuptime| support. + statusline Compiled with support for 'statusline', 'rulerformat' + and special formats of 'titlestring' and 'iconstring'. + sun_workshop Compiled with support for Sun |workshop|. + spell Compiled with spell checking support |spell|. + syntax Compiled with syntax highlighting support |syntax|. +--- vim72.orig/runtime/doc/if_cscop.txt ++++ vim72/runtime/doc/if_cscop.txt +@@ -1,6 +1,6 @@ +-*if_cscop.txt* For Vim version 7.2. Last change: 2005 Mar 29 ++*if_cscop.txt* For Vim version 7.2. Last change: 2009 Mar 18 + + + VIM REFERENCE MANUAL by Andy Kahn + + *cscope* *Cscope* +@@ -129,15 +129,26 @@ The available subcommands are: + 4 or t: Find this text string + 6 or e: Find this egrep pattern + 7 or f: Find this file + 8 or i: Find files #including this file + ++ For all types, except 4 and 6, leading white space for {name} is ++ removed. For 4 and 6 there is exactly one space between {querytype} ++ and {name}. Further white space is included in {name}. ++ + EXAMPLES > + :cscope find c vim_free +- :cscope find 3 vim_free ++ :cscope find 3 vim_free ++< ++ These two examples perform the same query: functions calling ++ "vim_free". > ++ ++ :cscope find t initOnce ++ :cscope find t initOnce + < +- These two examples perform the same query. > ++ The first one searches for the text "initOnce", the second one for ++ " initOnce". > + + :cscope find 0 DEFAULT_TERM + < + Executing this example on the source code for Vim 5.1 produces the + following output: +@@ -342,17 +353,12 @@ cscope version for Win32 see: + http://iamphet.nm.ru/cscope/index.html + + The DJGPP-built version from http://cscope.sourceforge.net is known to not + work with Vim. + +-There are a couple of hard-coded limitations: +- +- 1. The maximum number of cscope connections allowed is 8. Do you +- really need more? +- +- 2. Doing a |:tjump| when |:cstag| searches the tag files is not +- configurable (e.g., you can't do a tselect instead). ++Hard-coded limitation: doing a |:tjump| when |:cstag| searches the tag files ++is not configurable (e.g., you can't do a tselect instead). + + ============================================================================== + 6. Suggested usage *cscope-suggestions* + + Put these entries in your .vimrc (adjust the pathname accordingly to your +@@ -473,11 +479,12 @@ The cscope interface/support for Vim was + Andy Kahn <ackahn@netapp.com>. The original structure (as well as a tiny + bit of code) was adapted from the cscope interface in nvi. Please report + any problems, suggestions, patches, et al., you have for the usage of + cscope within Vim to him. + *cscope-win32* +-For a cscope version for Win32 see: http://iamphet.nm.ru/cscope/index.html ++For a cscope version for Win32 see: ++ http://code.google.com/p/cscope-win32/ + + Win32 support was added by Sergey Khorev <sergey.khorev@gmail.com>. Contact + him if you have Win32-specific issues. + + vim:tw=78:ts=8:ft=help:norl: +--- vim72.orig/runtime/doc/if_mzsch.txt ++++ vim72/runtime/doc/if_mzsch.txt +@@ -1,18 +1,19 @@ +-*if_mzsch.txt* For Vim version 7.2. Last change: 2008 Jun 28 ++*if_mzsch.txt* For Vim version 7.2. Last change: 2010 Jan 19 + + + VIM REFERENCE MANUAL by Sergey Khorev + + + The MzScheme Interface to Vim *mzscheme* *MzScheme* + + 1. Commands |mzscheme-commands| + 2. Examples |mzscheme-examples| + 3. Threads |mzscheme-threads| +-4. The Vim access procedures |mzscheme-vim| +-5. Dynamic loading |mzscheme-dynamic| ++4. Vim access from MzScheme |mzscheme-vim| ++5. mzeval() Vim function |mzscheme-mzeval| ++6. Dynamic loading |mzscheme-dynamic| + + {Vi does not have any of these commands} + + The MzScheme interface is available only if Vim was compiled with the + |+mzscheme| feature. +@@ -40,24 +41,18 @@ Note: On FreeBSD you should use the "drs + feature wasn't compiled in. To avoid errors, see + |script-here|. + + *:mzfile* *:mzf* + :[range]mzf[ile] {file} Execute the MzScheme script in {file}. {not in Vi} +- All statements are executed in the namespace of the +- buffer that was current during :mzfile start. +- If you want to access other namespaces, use +- 'parameterize'. + + All of these commands do essentially the same thing - they execute a piece of + MzScheme code, with the "current range" set to the given line + range. + + In the case of :mzscheme, the code to execute is in the command-line. + In the case of :mzfile, the code to execute is the contents of the given file. + +-Each buffer has its own MzScheme namespace. Global namespace is bound to +-the "global-namespace" value from the 'vimext' module. + MzScheme interface defines exception exn:vim, derived from exn. + It is raised for various Vim errors. + + During compilation, the MzScheme interface will remember the current MzScheme + collection path. If you want to specify additional paths use the +@@ -77,79 +72,68 @@ The exn:vim is available without explici + + To avoid clashes with MzScheme, consider using prefix when requiring module, + e.g.: > + :mzscheme (require (prefix vim- vimext)) + < +-All the examples below assume this naming scheme. Note that you need to do +-this again for every buffer. ++All the examples below assume this naming scheme. + +-The auto-instantiation can be achieved with autocommands, e.g. you can put +-something like this in your .vimrc (EOFs should not have indentation): > +- function s:MzRequire() +- if has("mzscheme") +- :mz << EOF +- (require (prefix vim- vimext)) +- (let ((buf (vim-get-buff-by-name (vim-eval "expand(\"<afile>\")")))) +- (when (and buf (not (eq? buf (vim-curr-buff)))) +- (parameterize ((current-namespace (vim-get-buff-namespace buf))) +- (namespace-attach-module vim-global-namespace 'vimext) +- (namespace-require '(prefix vim vimext))))) +- EOF +- endif +- endfunction +- +- function s:MzStartup() +- if has("mzscheme") +- au BufNew,BufNewFile,BufAdd,BufReadPre * :call s:MzRequire() +- :mz << EOF +- (current-library-collection-paths +- (cons +- (build-path (find-system-path 'addon-dir) (version) "collects") +- (current-library-collection-paths))) +- EOF +- endif +- endfunction +- +- call s:MzStartup() +-< +- +-The global namespace just instantiated this module with the prefix "vimext:". + *mzscheme-sandbox* + When executed in the |sandbox|, access to some filesystem and Vim interface + procedures is restricted. + + ============================================================================== + 2. Examples *mzscheme-examples* + > + :mzscheme (display "Hello") ++ :mz (display (string-append "Using MzScheme version " (version))) ++ :mzscheme (require (prefix vim- vimext)) ; for MzScheme < 4.x ++ :mzscheme (require (prefix-in vim- 'vimext)) ; MzScheme 4.x + :mzscheme (vim-set-buff-line 10 "This is line #10") + < + Inline script usage: > + function! <SID>SetFirstLine() + :mz << EOF + (display "!!!") ++ (require (prefix vim- vimext)) ++ ; for newer versions (require (prefix-in vim- 'vimext)) + (vim-set-buff-line 1 "This is line #1") + (vim-beep) +- EOF ++ EOF + endfunction + + nmap <F9> :call <SID>SetFirstLine() <CR> + < + File execution: > + :mzfile supascript.scm + < +-Accessing the current buffer namespace from an MzScheme program running in +-another buffer within |:mzfile|-executed script : > +- ; Move to the window below +- (vim-command "wincmd j") +- ; execute in the context of buffer, to which window belongs +- ; assume that buffer has 'textstring' defined +- (parameterize ((current-namespace +- (vim-get-buff-namespace (vim-curr-buff)))) +- (eval '(vim-set-buff-line 1 textstring))) +-< ++Vim exception handling: > ++ :mz << EOF ++ (require (prefix vim- vimext)) ++ ; for newer versions (require (prefix-in vim- 'vimext)) ++ (with-handlers ++ ([exn:vim? (lambda (e) (display (exn-message e)))]) ++ (vim-eval "nonsense-string")) ++ EOF ++< ++Auto-instantiation of vimext module (can be placed in your |vimrc|): > ++ function! MzRequire() ++ :redir => l:mzversion ++ :mz (version) ++ :redir END ++ if strpart(l:mzversion, 1, 1) < "4" ++ " MzScheme versions < 4.x: ++ :mz (require (prefix vim- vimext)) ++ else ++ " newer versions: ++ :mz (require (prefix-in vim- 'vimext)) ++ endif ++ endfunction + ++ if has("mzscheme") ++ silent call MzRequire() ++ endif ++< + ============================================================================== + 3. Threads *mzscheme-threads* + + The MzScheme interface supports threads. They are independent from OS threads, + thus scheduling is required. The option 'mzquantum' determines how often +@@ -157,24 +141,24 @@ Vim should poll for available MzScheme t + NOTE + Thread scheduling in the console version of Vim is less reliable than in the + GUI version. + + ============================================================================== +-5. VIM Functions *mzscheme-vim* ++4. Vim access from MzScheme *mzscheme-vim* + + *mzscheme-vimext* + The 'vimext' module provides access to procedures defined in the MzScheme + interface. + + Common + ------ + (command {command-string}) Perform the vim ":Ex" style command. +- (eval {expr-string}) Evaluate the vim expression to a string. +- A |List| is turned into a string by +- joining the items and inserting line +- breaks. +- NOTE clashes with MzScheme eval ++ (eval {expr-string}) Evaluate the vim expression into ++ respective MzScheme object: |Lists| are ++ represented as Scheme lists, ++ |Dictionaries| as hash tables. ++ NOTE the name clashes with MzScheme eval + (range-start) Start/End of the range passed with + (range-end) the Scheme command. + (beep) beep + (get-option {option-name} [buffer-or-window]) Get Vim option value (either + local or global, see set-option). +@@ -184,11 +168,10 @@ Common + optname+=optval, etc.) When called with + {buffer} or {window} the local option will + be set. The symbol 'global can be passed + as {buffer-or-window}. Then |:setglobal| + will be used. +- global-namespace The MzScheme main namespace. + + Buffers *mzscheme-buffer* + ------- + (buff? {object}) Is object a buffer? + (buff-valid? {object}) Is object a valid buffer? (i.e. +@@ -226,11 +209,10 @@ Buffers *mzscheme-buffer* + (open-buff {filename}) Open a new buffer (for file "name") + (get-buff-by-name {buffername}) Get a buffer by its filename or #f + if there is no such buffer. + (get-buff-by-num {buffernum}) Get a buffer by its number (return #f if + there is no buffer with this number). +- (get-buff-namespace [buffer]) Get buffer namespace. + + Windows *mzscheme-window* + ------ + (win? {object}) Is object a window? + (win-valid? {object}) Is object a valid window (i.e. corresponds +@@ -248,11 +230,17 @@ Windows *mzscheme-window* + (get-cursor [window]) Get cursor position in a window as + a pair (linenr . column). + (set-cursor (line . col) [window]) Set cursor position. + + ============================================================================== +-5. Dynamic loading *mzscheme-dynamic* ++5. mzeval() Vim function *mzscheme-mzeval* ++ ++To facilitate bi-directional interface, you can use |mzeval| function to ++evaluate MzScheme expressions and pass their values to VimL. ++ ++============================================================================== ++6. Dynamic loading *mzscheme-dynamic* *E815* + + On MS-Windows the MzScheme libraries can be loaded dynamically. The |:version| + output then includes |+mzscheme/dyn|. + + This means that Vim will search for the MzScheme DLL files only when needed. +--- vim72.orig/runtime/doc/map.txt ++++ vim72/runtime/doc/map.txt +@@ -222,10 +222,14 @@ define a new mapping or abbreviation, th + expression is evaluated to obtain the {rhs} that is used. Example: > + :inoremap <expr> . InsertDot() + The result of the InsertDot() function will be inserted. It could check the + text before the cursor and start omni completion when some condition is met. + ++For abbreviations |v:char| is set to the character that was typed to trigger ++the abbreviation. You can use this to decide how to expand the {lhs}. You ++can't change v:char and you should not insert it. ++ + Be very careful about side effects! The expression is evaluated while + obtaining characters, you may very well make the command dysfunctional. + For this reason the following is blocked: + - Changing the buffer text |textlock|. + - Editing another buffer. +--- vim72.orig/runtime/doc/netbeans.txt ++++ vim72/runtime/doc/netbeans.txt +@@ -1,6 +1,6 @@ +-*netbeans.txt* For Vim version 7.2. Last change: 2008 Jun 28 ++*netbeans.txt* For Vim version 7.2. Last change: 2009 Jan 06 + + + VIM REFERENCE MANUAL by Gordon Prieur et al. + + +@@ -720,12 +720,14 @@ keyCommand keyName + keyAtPos keyName lnum/col + Like "keyCommand" and also report the line number and column + of the cursor. + New in version 2.1. + +-killed A file was closed by the user. Only for files that have been +- assigned a number by the IDE. ++killed A file was deleted or wiped out by the user and the buffer ++ annotations have been removed. The bufID number for this ++ buffer has become invalid. Only for files that have been ++ assigned a bufID number by the IDE. + + newDotAndMark off off + Reports the position of the cursor being at "off" bytes into + the buffer. Only sent just before a "keyCommand" event. + +--- vim72.orig/runtime/doc/options.txt ++++ vim72/runtime/doc/options.txt +@@ -1,6 +1,6 @@ +-*options.txt* For Vim version 7.2. Last change: 2008 Aug 06 ++*options.txt* For Vim version 7.2. Last change: 2008 Nov 25 + + + VIM REFERENCE MANUAL by Bram Moolenaar + + +@@ -1441,10 +1441,18 @@ A jump table for the options with a shor + Also applies to the modeless selection. + + autoselectml Like "autoselect", but for the modeless selection + only. Compare to the 'A' flag in 'guioptions'. + ++ html When the clipboard contains HTML, use this when ++ pasting. When putting text on the clipboard, mark it ++ as HTML. This works to copy rendered HTML from ++ Firefox, paste it as raw HTML in Vim, select the HTML ++ in Vim and paste it in a rich edit box in Firefox. ++ Only supported for GTK version 2 and later. ++ Only available with the |+multi_byte| feature. ++ + exclude:{pattern} + Defines a pattern that is matched against the name of + the terminal 'term'. If there is a match, no + connection will be made to the X server. This is + useful in this situation: +@@ -4173,13 +4181,10 @@ A jump table for the options with a shor + care of translating these special characters to the original meaning + of the key. This means you don't have to change the keyboard mode to + be able to execute Normal mode commands. + This is the opposite of the 'keymap' option, where characters are + mapped in Insert mode. +- This only works for 8-bit characters. The value of 'langmap' may be +- specified with multi-byte characters (e.g., UTF-8), but only the lower +- 8 bits of each character will be used. + + Example (for Greek, in UTF-8): *greek* > + :set langmap=ΑA,ΒB,ΨC,ΔD,ΕE,ΦF,ΓG,ΗH,ΙI,ΞJ,ΚK,ΛL,ΜM,ΝN,ΟO,ΠP,QQ,ΡR,ΣS,ΤT,ΘU,ΩV,WW,ΧX,ΥY,ΖZ,αa,βb,ψc,δd,εe,φf,γg,ηh,ιi,ξj,κk,λl,μm,νn,οo,πp,qq,ρr,σs,τt,θu,ωv,ςw,χx,υy,ζz + < Example (exchanges meaning of z and y for commands): > + :set langmap=zy,yz,ZY,YZ +@@ -7470,11 +7475,13 @@ A jump table for the options with a shor + global + {not in Vi} + {not available when compiled without the |+wildignore| + feature} + A list of file patterns. A file that matches with one of these +- patterns is ignored when completing file or directory names. ++ patterns is ignored when completing file or directory names, and ++ influences the result of |expand()|, |glob()| and |globpath()| unless ++ a flag is passed to disable this. + The pattern is used like |
