# HG changeset patch # User vimboss # Date 1144680934 0 # Node ID 6675076019ae7e7444c526b342c91ae2ef6cfaac # Parent 8dd456c1e283bf8c85e9ff38994fdfc6dd009ff5 updated for version 7.0d diff --git a/Contents b/Contents --- a/Contents +++ b/Contents @@ -9,10 +9,10 @@ Vim Vi IMproved. A clone of the UNIX t messages, shows current file name in window title, on-line help, rectangular cut/paste, etc., etc., etc... - Version 7.0c. Also runs under UNIX, MSDOS and other systems. - vim70crt.tgz contains the documentation and syntax files. - vim70cbin.tgz contains the binaries. - vim70csrc.tgz contains the sources. + Version 7.0d. Also runs under UNIX, MSDOS and other systems. + vim70drt.tgz contains the documentation and syntax files. + vim70dbin.tgz contains the binaries. + vim70dsrc.tgz contains the sources. Author: Bram Moolenaar et al. diff --git a/Makefile b/Makefile --- a/Makefile +++ b/Makefile @@ -69,7 +69,7 @@ all install uninstall tools config confi # Before creating an archive first delete all backup files, *.orig, etc. MAJOR = 7 -MINOR = 0c +MINOR = 0d # Uncomment this line if the Win32s version is to be included. DOSBIN_S = dosbin_s @@ -159,6 +159,7 @@ DOSBIN_S = dosbin_s # - The produced uninstalw32.exe and vimrun.exe are used. # Create the archives: # - Copy all the "*.exe" files to where this Makefile is. +# - Copy all the "*.pdb" files to the dist directory. # - "make dosbin". # - Run make on Unix to update the ".mo" files. # - "make doslang". diff --git a/README.txt b/README.txt --- a/README.txt +++ b/README.txt @@ -1,4 +1,4 @@ -README.txt for version 7.0c of Vim: Vi IMproved. +README.txt for version 7.0d of Vim: Vi IMproved. WHAT IS VIM diff --git a/README_ami.txt b/README_ami.txt --- a/README_ami.txt +++ b/README_ami.txt @@ -1,4 +1,4 @@ -README_ami.txt for version 7.0c of Vim: Vi IMproved. +README_ami.txt for version 7.0d of Vim: Vi IMproved. This file explains the installation of Vim on Amiga systems. See README.txt for general information about Vim. diff --git a/README_amibin.txt b/README_amibin.txt --- a/README_amibin.txt +++ b/README_amibin.txt @@ -1,4 +1,4 @@ -README_amibin.txt for version 7.0c of Vim: Vi IMproved. +README_amibin.txt for version 7.0d of Vim: Vi IMproved. See "README.txt" for general information about Vim. See "README_ami.txt" for installation instructions for the Amiga. diff --git a/README_amisrc.txt b/README_amisrc.txt --- a/README_amisrc.txt +++ b/README_amisrc.txt @@ -1,4 +1,4 @@ -README_amisrc.txt for version 7.0c of Vim: Vi IMproved. +README_amisrc.txt for version 7.0d of Vim: Vi IMproved. See "README.txt" for general information about Vim. See "README_ami.txt" for installation instructions for the Amiga. diff --git a/README_bindos.txt b/README_bindos.txt --- a/README_bindos.txt +++ b/README_bindos.txt @@ -1,4 +1,4 @@ -README_bindos.txt for version 7.0c of Vim: Vi IMproved. +README_bindos.txt for version 7.0d of Vim: Vi IMproved. See "README.txt" for general information about Vim. See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows. diff --git a/README_dos.txt b/README_dos.txt --- a/README_dos.txt +++ b/README_dos.txt @@ -1,4 +1,4 @@ -README_dos.txt for version 7.0c of Vim: Vi IMproved. +README_dos.txt for version 7.0d of Vim: Vi IMproved. This file explains the installation of Vim on MS-DOS and MS-Windows systems. See "README.txt" for general information about Vim. diff --git a/README_extra.txt b/README_extra.txt --- a/README_extra.txt +++ b/README_extra.txt @@ -1,4 +1,4 @@ -README_extra.txt for version 7.0c of Vim: Vi IMproved. +README_extra.txt for version 7.0d of Vim: Vi IMproved. The extra archive of Vim is to be used in combination with the source archive (vim-6.0-src.tar.gz). The extra archive is useless without it. diff --git a/README_lang.txt b/README_lang.txt --- a/README_lang.txt +++ b/README_lang.txt @@ -1,4 +1,4 @@ -README_lang.txt for version 7.0c of Vim: Vi IMproved. +README_lang.txt for version 7.0d of Vim: Vi IMproved. This file contains files for non-English languages: - Translated messages. diff --git a/README_mac.txt b/README_mac.txt --- a/README_mac.txt +++ b/README_mac.txt @@ -1,4 +1,4 @@ -README_mac.txt for version 7.0c of Vim: Vi IMproved. +README_mac.txt for version 7.0d of Vim: Vi IMproved. This file explains the installation of Vim on Macintosh systems. See "README.txt" for general information about Vim. diff --git a/README_ole.txt b/README_ole.txt --- a/README_ole.txt +++ b/README_ole.txt @@ -1,4 +1,4 @@ -README_ole.txt for version 7.0c of Vim: Vi IMproved. +README_ole.txt for version 7.0d of Vim: Vi IMproved. This archive contains gvim.exe with OLE interface and VisVim. This version of gvim.exe can also load a number of interface dynamically (you diff --git a/README_os2.txt b/README_os2.txt --- a/README_os2.txt +++ b/README_os2.txt @@ -1,4 +1,4 @@ -README_os2.txt for version 7.0c of Vim: Vi IMproved. +README_os2.txt for version 7.0d of Vim: Vi IMproved. This file explains the installation of Vim on OS/2 systems. See "README.txt" for general information about Vim. diff --git a/README_os390.txt b/README_os390.txt --- a/README_os390.txt +++ b/README_os390.txt @@ -1,4 +1,4 @@ -README_os_390.txt for version 7.0c of Vim: Vi IMproved. +README_os_390.txt for version 7.0d of Vim: Vi IMproved. Welcome to the OS/390 Unix port of VIM. diff --git a/README_src.txt b/README_src.txt --- a/README_src.txt +++ b/README_src.txt @@ -1,4 +1,4 @@ -README_src.txt for version 7.0c of Vim: Vi IMproved. +README_src.txt for version 7.0d of Vim: Vi IMproved. The source archive contains the files needed to compile Vim on Unix systems. It is packed for Unix systems (NL line separator). It is also used for other diff --git a/README_srcdos.txt b/README_srcdos.txt --- a/README_srcdos.txt +++ b/README_srcdos.txt @@ -1,4 +1,4 @@ -README_srcdos.txt for version 7.0c of Vim: Vi IMproved. +README_srcdos.txt for version 7.0d of Vim: Vi IMproved. See "README.txt" for general information about Vim. See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows. diff --git a/README_unix.txt b/README_unix.txt --- a/README_unix.txt +++ b/README_unix.txt @@ -1,4 +1,4 @@ -README_unix.txt for version 7.0c of Vim: Vi IMproved. +README_unix.txt for version 7.0d of Vim: Vi IMproved. This file explains the installation of Vim on Unix systems. See "README.txt" for general information about Vim. diff --git a/README_vms.txt b/README_vms.txt --- a/README_vms.txt +++ b/README_vms.txt @@ -1,4 +1,4 @@ -README_vms.txt for version 7.0c of Vim: Vi IMproved. +README_vms.txt for version 7.0d of Vim: Vi IMproved. This file explains the installation of Vim on VMS systems. See "README.txt" in the runtime archive for information about Vim. diff --git a/README_w32s.txt b/README_w32s.txt --- a/README_w32s.txt +++ b/README_w32s.txt @@ -1,4 +1,4 @@ -README_w32s.txt for version 7.0c of Vim: Vi IMproved. +README_w32s.txt for version 7.0d of Vim: Vi IMproved. This archive contains the gvim.exe that was specifically compiled for use in the Win32s subsystem in MS-Windows 3.1 and 3.11. diff --git a/nsis/gvim.nsi b/nsis/gvim.nsi --- a/nsis/gvim.nsi +++ b/nsis/gvim.nsi @@ -22,7 +22,7 @@ !define HAVE_NLS !define VER_MAJOR 7 -!define VER_MINOR 0c +!define VER_MINOR 0d # ----------- No configurable settings below this line ----------- diff --git a/runtime/doc/arabic.txt b/runtime/doc/arabic.txt --- a/runtime/doc/arabic.txt +++ b/runtime/doc/arabic.txt @@ -1,4 +1,4 @@ -*arabic.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*arabic.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Nadim Shaikli diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt --- a/runtime/doc/autocmd.txt +++ b/runtime/doc/autocmd.txt @@ -1,4 +1,4 @@ -*autocmd.txt* For Vim version 7.0c. Last change: 2006 Apr 07 +*autocmd.txt* For Vim version 7.0d. Last change: 2006 Apr 07 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt --- a/runtime/doc/change.txt +++ b/runtime/doc/change.txt @@ -1,4 +1,4 @@ -*change.txt* For Vim version 7.0c. Last change: 2006 Apr 09 +*change.txt* For Vim version 7.0d. Last change: 2006 Apr 09 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt --- a/runtime/doc/cmdline.txt +++ b/runtime/doc/cmdline.txt @@ -1,4 +1,4 @@ -*cmdline.txt* For Vim version 7.0c. Last change: 2006 Mar 16 +*cmdline.txt* For Vim version 7.0d. Last change: 2006 Mar 16 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/debug.txt b/runtime/doc/debug.txt --- a/runtime/doc/debug.txt +++ b/runtime/doc/debug.txt @@ -1,4 +1,4 @@ -*debug.txt* For Vim version 7.0c. Last change: 2005 Dec 17 +*debug.txt* For Vim version 7.0d. Last change: 2005 Dec 17 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/debugger.txt b/runtime/doc/debugger.txt --- a/runtime/doc/debugger.txt +++ b/runtime/doc/debugger.txt @@ -1,4 +1,4 @@ -*debugger.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*debugger.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Gordon Prieur diff --git a/runtime/doc/develop.txt b/runtime/doc/develop.txt --- a/runtime/doc/develop.txt +++ b/runtime/doc/develop.txt @@ -1,4 +1,4 @@ -*develop.txt* For Vim version 7.0c. Last change: 2006 Mar 09 +*develop.txt* For Vim version 7.0d. Last change: 2006 Mar 09 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/diff.txt b/runtime/doc/diff.txt --- a/runtime/doc/diff.txt +++ b/runtime/doc/diff.txt @@ -1,4 +1,4 @@ -*diff.txt* For Vim version 7.0c. Last change: 2006 Apr 04 +*diff.txt* For Vim version 7.0d. Last change: 2006 Apr 04 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/digraph.txt b/runtime/doc/digraph.txt --- a/runtime/doc/digraph.txt +++ b/runtime/doc/digraph.txt @@ -1,4 +1,4 @@ -*digraph.txt* For Vim version 7.0c. Last change: 2005 Sep 11 +*digraph.txt* For Vim version 7.0d. Last change: 2005 Sep 11 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt --- a/runtime/doc/editing.txt +++ b/runtime/doc/editing.txt @@ -1,4 +1,4 @@ -*editing.txt* For Vim version 7.0c. Last change: 2006 Apr 06 +*editing.txt* For Vim version 7.0d. Last change: 2006 Apr 06 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 7.0c. Last change: 2006 Apr 09 +*eval.txt* For Vim version 7.0d. Last change: 2006 Apr 09 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/farsi.txt b/runtime/doc/farsi.txt --- a/runtime/doc/farsi.txt +++ b/runtime/doc/farsi.txt @@ -1,4 +1,4 @@ -*farsi.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*farsi.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Mortaza Ghassab Shiran diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt --- a/runtime/doc/filetype.txt +++ b/runtime/doc/filetype.txt @@ -1,4 +1,4 @@ -*filetype.txt* For Vim version 7.0c. Last change: 2006 Mar 24 +*filetype.txt* For Vim version 7.0d. Last change: 2006 Mar 24 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/fold.txt b/runtime/doc/fold.txt --- a/runtime/doc/fold.txt +++ b/runtime/doc/fold.txt @@ -1,4 +1,4 @@ -*fold.txt* For Vim version 7.0c. Last change: 2006 Mar 29 +*fold.txt* For Vim version 7.0d. Last change: 2006 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/getscript.txt b/runtime/doc/getscript.txt --- a/runtime/doc/getscript.txt +++ b/runtime/doc/getscript.txt @@ -1,4 +1,4 @@ -*getscript.txt* For Vim version 7.0c. Last change: 2006 Mar 24 +*getscript.txt* For Vim version 7.0d. Last change: 2006 Mar 24 Get the Latest VimScripts diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt --- a/runtime/doc/gui.txt +++ b/runtime/doc/gui.txt @@ -1,4 +1,4 @@ -*gui.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*gui.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/gui_w16.txt b/runtime/doc/gui_w16.txt --- a/runtime/doc/gui_w16.txt +++ b/runtime/doc/gui_w16.txt @@ -1,4 +1,4 @@ -*gui_w16.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*gui_w16.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/gui_w32.txt b/runtime/doc/gui_w32.txt --- a/runtime/doc/gui_w32.txt +++ b/runtime/doc/gui_w32.txt @@ -1,4 +1,4 @@ -*gui_w32.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*gui_w32.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/gui_x11.txt b/runtime/doc/gui_x11.txt --- a/runtime/doc/gui_x11.txt +++ b/runtime/doc/gui_x11.txt @@ -1,4 +1,4 @@ -*gui_x11.txt* For Vim version 7.0c. Last change: 2005 Dec 06 +*gui_x11.txt* For Vim version 7.0d. Last change: 2005 Dec 06 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/hangulin.txt b/runtime/doc/hangulin.txt --- a/runtime/doc/hangulin.txt +++ b/runtime/doc/hangulin.txt @@ -1,4 +1,4 @@ -*hangulin.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*hangulin.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM REFERENCE MANUAL by Chi-Deok Hwang and Sung-Hyun Nam diff --git a/runtime/doc/hebrew.txt b/runtime/doc/hebrew.txt --- a/runtime/doc/hebrew.txt +++ b/runtime/doc/hebrew.txt @@ -1,4 +1,4 @@ -*hebrew.txt* For Vim version 7.0c. Last change: 2003 May 11 +*hebrew.txt* For Vim version 7.0d. Last change: 2003 May 11 VIM REFERENCE MANUAL by Ron Aaron (and Avner Lottem) diff --git a/runtime/doc/help.txt b/runtime/doc/help.txt --- a/runtime/doc/help.txt +++ b/runtime/doc/help.txt @@ -1,4 +1,4 @@ -*help.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*help.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM - main help file k diff --git a/runtime/doc/howto.txt b/runtime/doc/howto.txt --- a/runtime/doc/howto.txt +++ b/runtime/doc/howto.txt @@ -1,4 +1,4 @@ -*howto.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*howto.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/if_cscop.txt b/runtime/doc/if_cscop.txt --- a/runtime/doc/if_cscop.txt +++ b/runtime/doc/if_cscop.txt @@ -1,4 +1,4 @@ -*if_cscop.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*if_cscop.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Andy Kahn diff --git a/runtime/doc/if_mzsch.txt b/runtime/doc/if_mzsch.txt --- a/runtime/doc/if_mzsch.txt +++ b/runtime/doc/if_mzsch.txt @@ -1,4 +1,4 @@ -*if_mzsch.txt* For Vim version 7.0c. Last change: 2006 Mar 06 +*if_mzsch.txt* For Vim version 7.0d. Last change: 2006 Mar 06 VIM REFERENCE MANUAL by Sergey Khorev diff --git a/runtime/doc/if_ole.txt b/runtime/doc/if_ole.txt --- a/runtime/doc/if_ole.txt +++ b/runtime/doc/if_ole.txt @@ -1,4 +1,4 @@ -*if_ole.txt* For Vim version 7.0c. Last change: 2006 Mar 06 +*if_ole.txt* For Vim version 7.0d. Last change: 2006 Mar 06 VIM REFERENCE MANUAL by Paul Moore diff --git a/runtime/doc/if_perl.txt b/runtime/doc/if_perl.txt --- a/runtime/doc/if_perl.txt +++ b/runtime/doc/if_perl.txt @@ -1,4 +1,4 @@ -*if_perl.txt* For Vim version 7.0c. Last change: 2006 Mar 06 +*if_perl.txt* For Vim version 7.0d. Last change: 2006 Mar 06 VIM REFERENCE MANUAL by Sven Verdoolaege diff --git a/runtime/doc/if_pyth.txt b/runtime/doc/if_pyth.txt --- a/runtime/doc/if_pyth.txt +++ b/runtime/doc/if_pyth.txt @@ -1,4 +1,4 @@ -*if_pyth.txt* For Vim version 7.0c. Last change: 2006 Jan 20 +*if_pyth.txt* For Vim version 7.0d. Last change: 2006 Jan 20 VIM REFERENCE MANUAL by Paul Moore diff --git a/runtime/doc/if_ruby.txt b/runtime/doc/if_ruby.txt --- a/runtime/doc/if_ruby.txt +++ b/runtime/doc/if_ruby.txt @@ -1,4 +1,4 @@ -*if_ruby.txt* For Vim version 7.0c. Last change: 2006 Mar 26 +*if_ruby.txt* For Vim version 7.0d. Last change: 2006 Mar 26 VIM REFERENCE MANUAL by Shugo Maeda diff --git a/runtime/doc/if_sniff.txt b/runtime/doc/if_sniff.txt --- a/runtime/doc/if_sniff.txt +++ b/runtime/doc/if_sniff.txt @@ -1,4 +1,4 @@ -*if_sniff.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*if_sniff.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL diff --git a/runtime/doc/if_tcl.txt b/runtime/doc/if_tcl.txt --- a/runtime/doc/if_tcl.txt +++ b/runtime/doc/if_tcl.txt @@ -1,4 +1,4 @@ -*if_tcl.txt* For Vim version 7.0c. Last change: 2006 Mar 06 +*if_tcl.txt* For Vim version 7.0d. Last change: 2006 Mar 06 VIM REFERENCE MANUAL by Ingo Wilken diff --git a/runtime/doc/indent.txt b/runtime/doc/indent.txt --- a/runtime/doc/indent.txt +++ b/runtime/doc/indent.txt @@ -1,4 +1,4 @@ -*indent.txt* For Vim version 7.0c. Last change: 2006 Mar 29 +*indent.txt* For Vim version 7.0d. Last change: 2006 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -1,4 +1,4 @@ -*index.txt* For Vim version 7.0c. Last change: 2006 Apr 06 +*index.txt* For Vim version 7.0d. Last change: 2006 Apr 06 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt --- a/runtime/doc/insert.txt +++ b/runtime/doc/insert.txt @@ -1,4 +1,4 @@ -*insert.txt* For Vim version 7.0c. Last change: 2006 Apr 06 +*insert.txt* For Vim version 7.0d. Last change: 2006 Apr 10 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1105,18 +1105,22 @@ The menu is used when: The 'pumheight' option can be used to set a maximum height. The default is to use all space available. -There are two states: -1. A complete match has been inserted. -2. Only part of a match has been inserted. +There are three states: +1. A complete match has been inserted, e.g., after using CTRL-N or CTRL-P. +2. A cursor key has been used to select another match. The match was not + inserted then, only the entry in the popup menu is highlighted. +3. Only part of a match has been inserted and characters were typed or the + backspace key was used. The list of matches was then adjusted for what is + in front of the cursor. You normally start in the first state, with the first match being inserted. When "longest" is in 'completeopt' and there is more than one match you start -in the second state. +in the third state. -If you select another match, e.g., with CTRL-N or CTRL-P, you go from the -second to the first state. This doesn't change the list of matches. +If you select another match, e.g., with CTRL-N or CTRL-P, you go to the first +state. This doesn't change the list of matches. -When you are back at the original text then you are in the second state. To +When you are back at the original text then you are in the third state. To get there right away you can use a mapping that uses CTRL-P right after starting the completion: > :imap @@ -1126,8 +1130,11 @@ In the first state these keys have a spe and CTRL-H Delete one character, find the matches for the word before the cursor. This reduces the list of matches, often to one entry, and switches to the second state. +Any non-special character: + Stop completion without changing the match and insert the + typed character. -In the second state these keys have a special meaning: +In the second and third state these keys have a special meaning: and CTRL-H Delete one character, find the matches for the shorter word before the cursor. This may find more matches. CTRL-L Add one character from the current match, may reduce the @@ -1135,7 +1142,7 @@ CTRL-L Add one character from the cur any printable, non-white character: Add this character and reduce the number of matches. -In both states these can be used: +In all three states these can be used: CTRL-Y Yes: Accept the currently selected match and stop completion. CTRL-E End completion, go back to what was typed. Select a match several entries back, but don't insert it. @@ -1144,10 +1151,17 @@ CTRL-E End completion, go back to wha insert it. Select the next match, as if CTRL-N was used, but don't insert it. -Any other character: - Stop completion without changing the match and insert the - typed character. Note that typing a space or will - work in both states. +space or Stop completion without changing the match and insert the + typed character. + +The behavior of the Enter key depends on the state you are in: +first state: Use the text as it is and insert a line break. +second state: Insert the currently selected match. +third state: Use the text as it is and insert a line break. + +In other words: If you used the cursor keys to select another entry in the +list of matches then the Enter key inserts that match. If you typed something +else then Enter inserts a line break. The colors of the menu can be changed with these highlight groups: diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt --- a/runtime/doc/intro.txt +++ b/runtime/doc/intro.txt @@ -1,4 +1,4 @@ -*intro.txt* For Vim version 7.0c. Last change: 2006 Apr 09 +*intro.txt* For Vim version 7.0d. Last change: 2006 Apr 09 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt --- a/runtime/doc/map.txt +++ b/runtime/doc/map.txt @@ -1,4 +1,4 @@ -*map.txt* For Vim version 7.0c. Last change: 2006 Mar 20 +*map.txt* For Vim version 7.0d. Last change: 2006 Mar 20 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/mbyte.txt b/runtime/doc/mbyte.txt --- a/runtime/doc/mbyte.txt +++ b/runtime/doc/mbyte.txt @@ -1,4 +1,4 @@ -*mbyte.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*mbyte.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM REFERENCE MANUAL by Bram Moolenaar et al. diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt --- a/runtime/doc/message.txt +++ b/runtime/doc/message.txt @@ -1,4 +1,4 @@ -*message.txt* For Vim version 7.0c. Last change: 2006 Mar 01 +*message.txt* For Vim version 7.0d. Last change: 2006 Mar 01 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/mlang.txt b/runtime/doc/mlang.txt --- a/runtime/doc/mlang.txt +++ b/runtime/doc/mlang.txt @@ -1,4 +1,4 @@ -*mlang.txt* For Vim version 7.0c. Last change: 2004 Feb 24 +*mlang.txt* For Vim version 7.0d. Last change: 2004 Feb 24 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt --- a/runtime/doc/motion.txt +++ b/runtime/doc/motion.txt @@ -1,4 +1,4 @@ -*motion.txt* For Vim version 7.0c. Last change: 2006 Jan 02 +*motion.txt* For Vim version 7.0d. Last change: 2006 Jan 02 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/netbeans.txt b/runtime/doc/netbeans.txt --- a/runtime/doc/netbeans.txt +++ b/runtime/doc/netbeans.txt @@ -1,4 +1,4 @@ -*netbeans.txt* For Vim version 7.0c. Last change: 2006 Mar 09 +*netbeans.txt* For Vim version 7.0d. Last change: 2006 Mar 09 VIM REFERENCE MANUAL by Gordon Prieur diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 7.0c. Last change: 2006 Apr 09 +*options.txt* For Vim version 7.0d. Last change: 2006 Apr 10 VIM REFERENCE MANUAL by Bram Moolenaar @@ -2079,7 +2079,7 @@ A jump table for the options with a shor |hl-CursorLine|. Useful to easily spot the cursor. Will make screen redrawing slower. When Visual mode is active the highlighting isn't used to make it - easier to spot where the selected area. + easier to see the selected text. *'debug'* @@ -6361,6 +6361,8 @@ A jump table for the options with a shor jumping to errors (":cc", ":cn", "cp", etc.). It is also used in all buffer related split commands, for example ":sbuffer", ":sbnext", or ":sbrewind". + usetab Like "useopen", but also consider windows in other tab + pages. split If included, split the current window before loading a buffer. Otherwise: do not split, use current window. Supported in |quickfix| commands that display errors. diff --git a/runtime/doc/os_390.txt b/runtime/doc/os_390.txt --- a/runtime/doc/os_390.txt +++ b/runtime/doc/os_390.txt @@ -1,4 +1,4 @@ -*os_390.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*os_390.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Ralf Schandl diff --git a/runtime/doc/os_amiga.txt b/runtime/doc/os_amiga.txt --- a/runtime/doc/os_amiga.txt +++ b/runtime/doc/os_amiga.txt @@ -1,4 +1,4 @@ -*os_amiga.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*os_amiga.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/os_beos.txt b/runtime/doc/os_beos.txt --- a/runtime/doc/os_beos.txt +++ b/runtime/doc/os_beos.txt @@ -1,4 +1,4 @@ -*os_beos.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*os_beos.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/os_dos.txt b/runtime/doc/os_dos.txt --- a/runtime/doc/os_dos.txt +++ b/runtime/doc/os_dos.txt @@ -1,4 +1,4 @@ -*os_dos.txt* For Vim version 7.0c. Last change: 2006 Mar 30 +*os_dos.txt* For Vim version 7.0d. Last change: 2006 Mar 30 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/os_mac.txt b/runtime/doc/os_mac.txt --- a/runtime/doc/os_mac.txt +++ b/runtime/doc/os_mac.txt @@ -1,4 +1,4 @@ -*os_mac.txt* For Vim version 7.0c. Last change: 2006 Mar 29 +*os_mac.txt* For Vim version 7.0d. Last change: 2006 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar et al. diff --git a/runtime/doc/os_mint.txt b/runtime/doc/os_mint.txt --- a/runtime/doc/os_mint.txt +++ b/runtime/doc/os_mint.txt @@ -1,4 +1,4 @@ -*os_mint.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*os_mint.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Jens M. Felderhoff diff --git a/runtime/doc/os_msdos.txt b/runtime/doc/os_msdos.txt --- a/runtime/doc/os_msdos.txt +++ b/runtime/doc/os_msdos.txt @@ -1,4 +1,4 @@ -*os_msdos.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*os_msdos.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/os_os2.txt b/runtime/doc/os_os2.txt --- a/runtime/doc/os_os2.txt +++ b/runtime/doc/os_os2.txt @@ -1,4 +1,4 @@ -*os_os2.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*os_os2.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Paul Slootman diff --git a/runtime/doc/os_qnx.txt b/runtime/doc/os_qnx.txt --- a/runtime/doc/os_qnx.txt +++ b/runtime/doc/os_qnx.txt @@ -1,4 +1,4 @@ -*os_qnx.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*os_qnx.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Julian Kinraid diff --git a/runtime/doc/os_risc.txt b/runtime/doc/os_risc.txt --- a/runtime/doc/os_risc.txt +++ b/runtime/doc/os_risc.txt @@ -1,4 +1,4 @@ -*os_risc.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*os_risc.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Thomas Leonard diff --git a/runtime/doc/os_unix.txt b/runtime/doc/os_unix.txt --- a/runtime/doc/os_unix.txt +++ b/runtime/doc/os_unix.txt @@ -1,4 +1,4 @@ -*os_unix.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*os_unix.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/os_vms.txt b/runtime/doc/os_vms.txt --- a/runtime/doc/os_vms.txt +++ b/runtime/doc/os_vms.txt @@ -1,4 +1,4 @@ -*os_vms.txt* For Vim version 7.0c. Last change: 2006 Mar 02 +*os_vms.txt* For Vim version 7.0d. Last change: 2006 Mar 02 VIM REFERENCE MANUAL diff --git a/runtime/doc/os_win32.txt b/runtime/doc/os_win32.txt --- a/runtime/doc/os_win32.txt +++ b/runtime/doc/os_win32.txt @@ -1,4 +1,4 @@ -*os_win32.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*os_win32.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM REFERENCE MANUAL by George Reilly diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt --- a/runtime/doc/pattern.txt +++ b/runtime/doc/pattern.txt @@ -1,4 +1,4 @@ -*pattern.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*pattern.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/pi_gzip.txt b/runtime/doc/pi_gzip.txt --- a/runtime/doc/pi_gzip.txt +++ b/runtime/doc/pi_gzip.txt @@ -1,4 +1,4 @@ -*pi_gzip.txt* For Vim version 7.0c. Last change: 2002 Oct 29 +*pi_gzip.txt* For Vim version 7.0d. Last change: 2002 Oct 29 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/pi_netrw.txt b/runtime/doc/pi_netrw.txt --- a/runtime/doc/pi_netrw.txt +++ b/runtime/doc/pi_netrw.txt @@ -1,4 +1,4 @@ -*pi_netrw.txt* For Vim version 7.0c. Last change: Apr 06, 2006 +*pi_netrw.txt* For Vim version 7.0d. Last change: Apr 06, 2006 VIM REFERENCE MANUAL by Charles E. Campbell, Jr. diff --git a/runtime/doc/pi_paren.txt b/runtime/doc/pi_paren.txt --- a/runtime/doc/pi_paren.txt +++ b/runtime/doc/pi_paren.txt @@ -1,4 +1,4 @@ -*pi_paren.txt* For Vim version 7.0c. Last change: 2006 Apr 03 +*pi_paren.txt* For Vim version 7.0d. Last change: 2006 Apr 03 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/pi_spec.txt b/runtime/doc/pi_spec.txt --- a/runtime/doc/pi_spec.txt +++ b/runtime/doc/pi_spec.txt @@ -1,4 +1,4 @@ -*pi_spec.txt* For Vim version 7.0c. Last change: 2005 Oct 03 +*pi_spec.txt* For Vim version 7.0d. Last change: 2005 Oct 03 by Gustavo Niemeyer ~ diff --git a/runtime/doc/pi_tar.txt b/runtime/doc/pi_tar.txt --- a/runtime/doc/pi_tar.txt +++ b/runtime/doc/pi_tar.txt @@ -1,4 +1,4 @@ -*tar.txt* For Vim version 7.0c. Last change: 2006 Mar 24 +*tar.txt* For Vim version 7.0d. Last change: 2006 Mar 24 +====================+ | Tar File Interface | diff --git a/runtime/doc/pi_zip.txt b/runtime/doc/pi_zip.txt --- a/runtime/doc/pi_zip.txt +++ b/runtime/doc/pi_zip.txt @@ -1,4 +1,4 @@ -*zip.txt* For Vim version 7.0c. Last change: 2006 Apr 03 +*zip.txt* For Vim version 7.0d. Last change: 2006 Apr 03 +====================+ | Zip File Interface | diff --git a/runtime/doc/print.txt b/runtime/doc/print.txt --- a/runtime/doc/print.txt +++ b/runtime/doc/print.txt @@ -1,4 +1,4 @@ -*print.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*print.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt --- a/runtime/doc/quickfix.txt +++ b/runtime/doc/quickfix.txt @@ -1,4 +1,4 @@ -*quickfix.txt* For Vim version 7.0c. Last change: 2006 Mar 24 +*quickfix.txt* For Vim version 7.0d. Last change: 2006 Mar 24 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt --- a/runtime/doc/quickref.txt +++ b/runtime/doc/quickref.txt @@ -1,4 +1,4 @@ -*quickref.txt* For Vim version 7.0c. Last change: 2006 Mar 23 +*quickref.txt* For Vim version 7.0d. Last change: 2006 Mar 23 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/quotes.txt b/runtime/doc/quotes.txt --- a/runtime/doc/quotes.txt +++ b/runtime/doc/quotes.txt @@ -1,4 +1,4 @@ -*quotes.txt* For Vim version 7.0c. Last change: 2005 Apr 04 +*quotes.txt* For Vim version 7.0d. Last change: 2005 Apr 04 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/recover.txt b/runtime/doc/recover.txt --- a/runtime/doc/recover.txt +++ b/runtime/doc/recover.txt @@ -1,4 +1,4 @@ -*recover.txt* For Vim version 7.0c. Last change: 2005 Dec 12 +*recover.txt* For Vim version 7.0d. Last change: 2005 Dec 12 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/remote.txt b/runtime/doc/remote.txt --- a/runtime/doc/remote.txt +++ b/runtime/doc/remote.txt @@ -1,4 +1,4 @@ -*remote.txt* For Vim version 7.0c. Last change: 2006 Mar 11 +*remote.txt* For Vim version 7.0d. Last change: 2006 Mar 11 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt --- a/runtime/doc/repeat.txt +++ b/runtime/doc/repeat.txt @@ -1,4 +1,4 @@ -*repeat.txt* For Vim version 7.0c. Last change: 2006 Mar 21 +*repeat.txt* For Vim version 7.0d. Last change: 2006 Mar 21 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/rileft.txt b/runtime/doc/rileft.txt --- a/runtime/doc/rileft.txt +++ b/runtime/doc/rileft.txt @@ -1,4 +1,4 @@ -*rileft.txt* For Vim version 7.0c. Last change: 2005 Apr 04 +*rileft.txt* For Vim version 7.0d. Last change: 2005 Apr 04 VIM REFERENCE MANUAL by Avner Lottem diff --git a/runtime/doc/russian.txt b/runtime/doc/russian.txt --- a/runtime/doc/russian.txt +++ b/runtime/doc/russian.txt @@ -1,4 +1,4 @@ -*russian.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*russian.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM REFERENCE MANUAL by Vassily Ragosin diff --git a/runtime/doc/scroll.txt b/runtime/doc/scroll.txt --- a/runtime/doc/scroll.txt +++ b/runtime/doc/scroll.txt @@ -1,4 +1,4 @@ -*scroll.txt* For Vim version 7.0c. Last change: 2005 Dec 16 +*scroll.txt* For Vim version 7.0d. Last change: 2005 Dec 16 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/sign.txt b/runtime/doc/sign.txt --- a/runtime/doc/sign.txt +++ b/runtime/doc/sign.txt @@ -1,4 +1,4 @@ -*sign.txt* For Vim version 7.0c. Last change: 2005 Apr 04 +*sign.txt* For Vim version 7.0d. Last change: 2005 Apr 04 VIM REFERENCE MANUAL by Gordon Prieur diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt --- a/runtime/doc/spell.txt +++ b/runtime/doc/spell.txt @@ -1,4 +1,4 @@ -*spell.txt* For Vim version 7.0c. Last change: 2006 Apr 06 +*spell.txt* For Vim version 7.0d. Last change: 2006 Apr 06 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/sponsor.txt b/runtime/doc/sponsor.txt --- a/runtime/doc/sponsor.txt +++ b/runtime/doc/sponsor.txt @@ -1,4 +1,4 @@ -*sponsor.txt* For Vim version 7.0c. Last change: 2006 Mar 29 +*sponsor.txt* For Vim version 7.0d. Last change: 2006 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/sql.txt b/runtime/doc/sql.txt --- a/runtime/doc/sql.txt +++ b/runtime/doc/sql.txt @@ -1,4 +1,4 @@ -*sql.txt* For Vim version 7.0c. Last change: Mon Apr 03 2006 10:34:00 PM +*sql.txt* For Vim version 7.0d. Last change: Mon Apr 03 2006 10:34:00 PM by David Fishburn diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt --- a/runtime/doc/starting.txt +++ b/runtime/doc/starting.txt @@ -1,4 +1,4 @@ -*starting.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*starting.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 7.0c. Last change: 2006 Apr 06 +*syntax.txt* For Vim version 7.0d. Last change: 2006 Apr 06 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/tabpage.txt b/runtime/doc/tabpage.txt --- a/runtime/doc/tabpage.txt +++ b/runtime/doc/tabpage.txt @@ -1,4 +1,4 @@ -*tabpage.txt* For Vim version 7.0c. Last change: 2006 Apr 09 +*tabpage.txt* For Vim version 7.0d. Last change: 2006 Apr 09 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/tagsrch.txt b/runtime/doc/tagsrch.txt --- a/runtime/doc/tagsrch.txt +++ b/runtime/doc/tagsrch.txt @@ -1,4 +1,4 @@ -*tagsrch.txt* For Vim version 7.0c. Last change: 2006 Feb 24 +*tagsrch.txt* For Vim version 7.0d. Last change: 2006 Feb 24 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/term.txt b/runtime/doc/term.txt --- a/runtime/doc/term.txt +++ b/runtime/doc/term.txt @@ -1,4 +1,4 @@ -*term.txt* For Vim version 7.0c. Last change: 2006 Feb 14 +*term.txt* For Vim version 7.0d. Last change: 2006 Feb 14 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/tips.txt b/runtime/doc/tips.txt --- a/runtime/doc/tips.txt +++ b/runtime/doc/tips.txt @@ -1,4 +1,4 @@ -*tips.txt* For Vim version 7.0c. Last change: 2006 Mar 01 +*tips.txt* For Vim version 7.0d. Last change: 2006 Mar 01 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.0c. Last change: 2006 Apr 09 +*todo.txt* For Vim version 7.0d. Last change: 2006 Apr 10 VIM REFERENCE MANUAL by Bram Moolenaar @@ -30,11 +30,11 @@ be worked on, but only if you sponsor Vi *known-bugs* -------------------- Known bugs and current work ----------------------- +":mkspell" still takes much too long in Hungarian dictionary. + Handle postponed prefix with COMPOUNDPERMITFLAG or COMPOUNDFORBIDFLAG. WFP_COMPPERMIT and WFP_COMPFORBID -":mkspell" still takes much too long in Hungarian dictionary. - Use ~/tmp/hungarian*.txt to test dictionary with. New Hungarian dictionary. (Laci Nemeth) @@ -47,9 +47,6 @@ New Hungarian dictionary. (Laci Nemeth) How is it supposed to work? - implement using CHECKCOMPOUNDPATTERN: match words with sl_comppat[]. -Obey 'switchbuf' "useopen" value for windows in other tabs, e.g. for :sbuffer. -Or use another value, e.g., "usetab"? - Add more tests for all new functionality in Vim 7. Especially new functions. Win32: Describe how to do debugging. (George Reilly) diff --git a/runtime/doc/uganda.nsis.txt b/runtime/doc/uganda.nsis.txt deleted file mode 100644 --- a/runtime/doc/uganda.nsis.txt +++ /dev/null @@ -1,292 +0,0 @@ - For Vim version 7.0c. Last change: 2006 Mar 24 - - VIM REFERENCE MANUAL by Bram Moolenaar - -SUMMARY - -Vim is Charityware. You can use and copy it as much as you like, but you are -encouraged to make a donation for needy children in Uganda. Please see |kcc| -below or visit the ICCF web site, available at these URLs: - - http://iccf-holland.org/ - http://www.vim.org/iccf/ - -You can also sponsor the development of Vim. Vim sponsors can vote for -features. See |sponsor|. The money goes to Uganda anyway. - -The Open Publication License applies to the Vim documentation, see -|manual-copyright|. - -=== begin of license === - -VIM LICENSE - -I) There are no restrictions on distributing unmodified copies of Vim except - that they must include this license text. You can also distribute - unmodified parts of Vim, likewise unrestricted except that they must - include this license text. You are also allowed to include executables - that you made from the unmodified Vim sources, plus your own usage - examples and Vim scripts. - -II) It is allowed to distribute a modified (or extended) version of Vim, - including executables and/or source code, when the following four - conditions are met: - 1) This license text must be included unmodified. - 2) The modified Vim must be distributed in one of the following five ways: - a) If you make changes to Vim yourself, you must clearly describe in - the distribution how to contact you. When the maintainer asks you - (in any way) for a copy of the modified Vim you distributed, you - must make your changes, including source code, available to the - maintainer without fee. The maintainer reserves the right to - include your changes in the official version of Vim. What the - maintainer will do with your changes and under what license they - will be distributed is negotiable. If there has been no negotiation - then this license, or a later version, also applies to your changes. - The current maintainer is Bram Moolenaar . If this - changes it will be announced in appropriate places (most likely - vim.sf.net, www.vim.org and/or comp.editors). When it is completely - impossible to contact the maintainer, the obligation to send him - your changes ceases. Once the maintainer has confirmed that he has - received your changes they will not have to be sent again. - b) If you have received a modified Vim that was distributed as - mentioned under a) you are allowed to further distribute it - unmodified, as mentioned at I). If you make additional changes the - text under a) applies to those changes. - c) Provide all the changes, including source code, with every copy of - the modified Vim you distribute. This may be done in the form of a - context diff. You can choose what license to use for new code you - add. The changes and their license must not restrict others from - making their own changes to the official version of Vim. - d) When you have a modified Vim which includes changes as mentioned - under c), you can distribute it without the source code for the - changes if the following three conditions are met: - - The license that applies to the changes permits you to distribute - the changes to the Vim maintainer without fee or restriction, and - permits the Vim maintainer to include the changes in the official - version of Vim without fee or restriction. - - You keep the changes for at least three years after last - distributing the corresponding modified Vim. When the maintainer - or someone who you distributed the modified Vim to asks you (in - any way) for the changes within this period, you must make them - available to him. - - You clearly describe in the distribution how to contact you. This - contact information must remain valid for at least three years - after last distributing the corresponding modified Vim, or as long - as possible. - e) When the GNU General Public License (GPL) applies to the changes, - you can distribute the modified Vim under the GNU GPL version 2 or - any later version. - 3) A message must be added, at least in the output of the ":version" - command and in the intro screen, such that the user of the modified Vim - is able to see that it was modified. When distributing as mentioned - under 2)e) adding the message is only required for as far as this does - not conflict with the license used for the changes. - 4) The contact information as required under 2)a) and 2)d) must not be - removed or changed, except that the person himself can make - corrections. - -III) If you distribute a modified version of Vim, you are encouraged to use - the Vim license for your changes and make them available to the - maintainer, including the source code. The preferred way to do this is - by e-mail or by uploading the files to a server and e-mailing the URL. - If the number of changes is small (e.g., a modified Makefile) e-mailing a - context diff will do. The e-mail address to be used is - - -IV) It is not allowed to remove this license from the distribution of the Vim - sources, parts of it or from a modified version. You may use this - license for previous Vim releases instead of the license that they came - with, at your option. - -=== end of license === - -Note: - -- If you are happy with Vim, please express that by reading the rest of this - file and consider helping needy children in Uganda. - -- If you want to support further Vim development consider becoming a - |sponsor|. The money goes to Uganda anyway. - -- According to Richard Stallman the Vim license is GNU GPL compatible. - A few minor changes have been made since he checked it, but that should not - make a difference. - -- If you link Vim with a library that goes under the GNU GPL, this limits - further distribution to the GNU GPL. Also when you didn't actually change - anything in Vim. - -- Once a change is included that goes under the GNU GPL, this forces all - further changes to also be made under the GNU GPL or a compatible license. - -- If you distribute a modified version of Vim, you can include your name and - contact information with the "--with-modified-by" configure argument or the - MODIFIED_BY define. - -============================================================================== -Kibaale Children's Centre - -Kibaale Children's Centre (KCC) is located in Kibaale, a small town in the -south of Uganda, near Tanzania, in East Africa. The area is known as Rakai -District. The population is mostly farmers. Although people are poor, there -is enough food. But this district is suffering from AIDS more than any other -part of the world. Some say that it started there. Estimations are that 10 -to 30% of the Ugandans are infected with HIV. Because parents die, there are -many orphans. In this district about 60,000 children have lost one or both -parents, out of a population of 350,000. And this is still continuing. - -The children need a lot of help. The KCC is working hard to provide the needy -with food, medical care and education. Food and medical care to keep them -healthy now, and education so that they can take care of themselves in the -future. KCC works on a Christian base, but help is given to children of any -religion. - -The key to solving the problems in this area is education. This has been -neglected in the past years with president Idi Amin and the following civil -wars. Now that the government is stable again, the children and parents have -to learn how to take care of themselves and how to avoid infections. There is -also help for people who are ill and hungry, but the primary goal is to -prevent people from getting ill and to teach them how to grow healthy food. - -Most of the orphans are living in an extended family. An uncle or older -sister is taking care of them. Because these families are big and the income -(if any) is low, a child is lucky if it gets healthy food. Clothes, medical -care and schooling is beyond its reach. To help these needy children, a -sponsorship program was put into place. A child can be financially adopted. -For a few dollars a month KCC sees to it that the child gets indispensable -items, is healthy, goes to school and KCC takes care of anything else that -needs to be done for the child and the family that supports it. - -Besides helping the child directly, the environment where the child grows up -needs to be improved. KCC helps schools to improve their teaching methods. -There is a demonstration school at the centre and teacher trainings are given. -Health workers are being trained, hygiene education is carried out and -households are stimulated to build a proper latrine. I helped setting up a -production site for cement slabs. These are used to build a good latrine. -They are sold below cost price. - -There is a small clinic at the project, which provides children and their -family with medical help. When needed, transport to a hospital is offered. -Immunization programs are carried out and help is provided when an epidemic is -breaking out (measles and cholera have been a problem). - -Summer 1994 to summer 1995 I spent a whole year at the centre, working as a -volunteer. I have helped to expand the centre and worked in the area of water -and sanitation. I learned that the help that the KCC provides really helps. -Now that I'm back in Holland, I would like to continue supporting KCC. To do -this I'm raising funds and organizing the sponsorship program. Please -consider one of these possibilities: - -1. Sponsor a child in primary school: 17 euro a month (or more). -2. Sponsor a child in secondary school: 25 euro a month (or more). -3. Sponsor the clinic: Any amount a month or quarter -4. A one-time donation - -Compared with other organizations that do child sponsorship the amounts are -very low. This is because the money goes directly to the centre. Less than -5% is used for administration. This is possible because this is a small -organization that works with volunteers. If you would like to sponsor a -child, you should have the intention to do this for at least one year. - -How do you know that the money will be spent right? First of all you have my -personal guarantee as the author of Vim. I trust the people that are working -at the centre, I know them personally. Further more, the centre is -co-sponsored and inspected by World Vision, Save the Children Fund and -International Child Care Fund. The centre is visited about once a year to -check the progress (at our own cost). I have visited the centre myself in -1996, 1998, 2000, 2001 and 2003. The visit reports are on the ICCF web site. - -If you have any further questions, send me e-mail: . - -The address of the centre is: - Kibaale Children's Centre - p.o. box 1658 - Masaka, Uganda, East Africa - -Sending money: - -Check the ICCF web site for the latest information! See |iccf| for the URL. - -USA: The methods mentioned below can be used. Alternatively, you - can send a check to the Nehemiah Group Outreach Society - (NGOS). This will reduce banking costs and you can get an IRS - tax receipt. The NGOS forwards the funds directly to the - Kibaale project in Uganda. Checks must be made payable to - NGOS but please note on the check "donation Kibaale". Mail - checks to: - NGOS - P.O. Box 50862 - Indianapolis, IN 45250 - Questions regarding the Nehemiah Group Outreach Society (NGOS) - should be directed to: Ross deMerchant, Executive Director - - r.demerchant AT sbcglobal DOT net. - For sponsoring a child contact KCF in Canada (see below) and - send the check to NGOS in Indianapolis. - -Canada: Contact Kibaale Children's Fund (KCF) in Surrey, Canada. They - take care of the Canadian sponsors for the children in - Kibaale. KCF forwards 100% of the money to the project in - Uganda. You can send them a one time donation directly. - Please send me a note so that I know what has been donated - because of Vim. Ask KCF for information about sponsorship. - Kibaale Children's Fund c/o Pacific Academy - 10238-168 Street - Surrey, B.C. V4N 1Z4 - Canada - Phone: 604-581-5353 - If you make a donation to Kibaale Children's Fund (KCF) you - will receive a tax receipt which can be submitted with your - tax return. - -Holland: Transfer to the account of "Stichting ICCF Holland" in Venlo. - This will allow for tax deduction if you live in Holland. - Postbank, nr. 4548774 - -Germany: It is possible to make donations that allow for a tax return. - Check the ICCF web site for the latest information: - http://iccf-holland.org/germany.html - -World: Use a postal money order. That should be possible from any - country, mostly from the post office. Use this name (which is - in my passport): "Abraham Moolenaar". Use Euro for the - currency if possible. - -Europe: Use a bank transfer if possible. Your bank should have a form - that you can use for this. See "Others" below for the swift - code and IBAN number. - Any other method should work. Ask for information about - sponsorship. - -Credit Card: You can use PayPal to send money with a Credit card. This is - the most widely used Internet based payment system. It's - really simple to use. Use this link to find more info: - https://www.paypal.com/affil/pal=Bram%40iccf-holland.org - The e-mail address for sending the money to is: - Bram@iccf-holland.org - For amounts above 400 Euro ($500) sending a check is - preferred. - -Others: Transfer to one of these accounts if possible: - Postbank, account 4548774 - Swift code: INGB NL 2A - IBAN: NL47 PSTB 0004 5487 74 - under the name "stichting ICCF Holland", Venlo - If that doesn't work: - Rabobank Venlo, account 3765.05.117 - Swift code: RABO NL 2U - under the name "Bram Moolenaar", Venlo - Otherwise, send a check in euro or US dollars to the address - below. Minimal amount: $70 (my bank does not accept smaller - amounts for foreign check, sorry) - -Address to send checks to: - stichting ICCF Holland - Bram Moolenaar - Molenstraat 2 - 2161 HP Lisse - The Netherlands - -This address is expected to be valid for a long time. The address in Venlo -will not be valid after June 2006. - - ts=8:ft=help:norl: diff --git a/runtime/doc/uganda.txt b/runtime/doc/uganda.txt --- a/runtime/doc/uganda.txt +++ b/runtime/doc/uganda.txt @@ -1,4 +1,4 @@ -*uganda.txt* For Vim version 7.0c. Last change: 2006 Mar 24 +*uganda.txt* For Vim version 7.0d. Last change: 2006 Mar 24 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/undo.txt b/runtime/doc/undo.txt --- a/runtime/doc/undo.txt +++ b/runtime/doc/undo.txt @@ -1,4 +1,4 @@ -*undo.txt* For Vim version 7.0c. Last change: 2006 Mar 24 +*undo.txt* For Vim version 7.0d. Last change: 2006 Mar 24 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/usr_01.txt b/runtime/doc/usr_01.txt --- a/runtime/doc/usr_01.txt +++ b/runtime/doc/usr_01.txt @@ -1,4 +1,4 @@ -*usr_01.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_01.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_02.txt b/runtime/doc/usr_02.txt --- a/runtime/doc/usr_02.txt +++ b/runtime/doc/usr_02.txt @@ -1,4 +1,4 @@ -*usr_02.txt* For Vim version 7.0c. Last change: 2006 Mar 24 +*usr_02.txt* For Vim version 7.0d. Last change: 2006 Mar 24 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_03.txt b/runtime/doc/usr_03.txt --- a/runtime/doc/usr_03.txt +++ b/runtime/doc/usr_03.txt @@ -1,4 +1,4 @@ -*usr_03.txt* For Vim version 7.0c. Last change: 2005 Apr 22 +*usr_03.txt* For Vim version 7.0d. Last change: 2005 Apr 22 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_04.txt b/runtime/doc/usr_04.txt --- a/runtime/doc/usr_04.txt +++ b/runtime/doc/usr_04.txt @@ -1,4 +1,4 @@ -*usr_04.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_04.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_05.txt b/runtime/doc/usr_05.txt --- a/runtime/doc/usr_05.txt +++ b/runtime/doc/usr_05.txt @@ -1,4 +1,4 @@ -*usr_05.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*usr_05.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_06.txt b/runtime/doc/usr_06.txt --- a/runtime/doc/usr_06.txt +++ b/runtime/doc/usr_06.txt @@ -1,4 +1,4 @@ -*usr_06.txt* For Vim version 7.0c. Last change: 2006 Feb 16 +*usr_06.txt* For Vim version 7.0d. Last change: 2006 Feb 16 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_07.txt b/runtime/doc/usr_07.txt --- a/runtime/doc/usr_07.txt +++ b/runtime/doc/usr_07.txt @@ -1,4 +1,4 @@ -*usr_07.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_07.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_08.txt b/runtime/doc/usr_08.txt --- a/runtime/doc/usr_08.txt +++ b/runtime/doc/usr_08.txt @@ -1,4 +1,4 @@ -*usr_08.txt* For Vim version 7.0c. Last change: 2006 Feb 25 +*usr_08.txt* For Vim version 7.0d. Last change: 2006 Feb 25 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_09.txt b/runtime/doc/usr_09.txt --- a/runtime/doc/usr_09.txt +++ b/runtime/doc/usr_09.txt @@ -1,4 +1,4 @@ -*usr_09.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_09.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_10.txt b/runtime/doc/usr_10.txt --- a/runtime/doc/usr_10.txt +++ b/runtime/doc/usr_10.txt @@ -1,4 +1,4 @@ -*usr_10.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_10.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_11.txt b/runtime/doc/usr_11.txt --- a/runtime/doc/usr_11.txt +++ b/runtime/doc/usr_11.txt @@ -1,4 +1,4 @@ -*usr_11.txt* For Vim version 7.0c. Last change: 2005 Jun 09 +*usr_11.txt* For Vim version 7.0d. Last change: 2005 Jun 09 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_12.txt b/runtime/doc/usr_12.txt --- a/runtime/doc/usr_12.txt +++ b/runtime/doc/usr_12.txt @@ -1,4 +1,4 @@ -*usr_12.txt* For Vim version 7.0c. Last change: 2006 Feb 26 +*usr_12.txt* For Vim version 7.0d. Last change: 2006 Feb 26 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_20.txt b/runtime/doc/usr_20.txt --- a/runtime/doc/usr_20.txt +++ b/runtime/doc/usr_20.txt @@ -1,4 +1,4 @@ -*usr_20.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_20.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_21.txt b/runtime/doc/usr_21.txt --- a/runtime/doc/usr_21.txt +++ b/runtime/doc/usr_21.txt @@ -1,4 +1,4 @@ -*usr_21.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_21.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_22.txt b/runtime/doc/usr_22.txt --- a/runtime/doc/usr_22.txt +++ b/runtime/doc/usr_22.txt @@ -1,4 +1,4 @@ -*usr_22.txt* For Vim version 7.0c. Last change: 2005 Apr 10 +*usr_22.txt* For Vim version 7.0d. Last change: 2005 Apr 10 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_23.txt b/runtime/doc/usr_23.txt --- a/runtime/doc/usr_23.txt +++ b/runtime/doc/usr_23.txt @@ -1,4 +1,4 @@ -*usr_23.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_23.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_24.txt b/runtime/doc/usr_24.txt --- a/runtime/doc/usr_24.txt +++ b/runtime/doc/usr_24.txt @@ -1,4 +1,4 @@ -*usr_24.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*usr_24.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_25.txt b/runtime/doc/usr_25.txt --- a/runtime/doc/usr_25.txt +++ b/runtime/doc/usr_25.txt @@ -1,4 +1,4 @@ -*usr_25.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_25.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_26.txt b/runtime/doc/usr_26.txt --- a/runtime/doc/usr_26.txt +++ b/runtime/doc/usr_26.txt @@ -1,4 +1,4 @@ -*usr_26.txt* For Vim version 7.0c. Last change: 2002 Oct 29 +*usr_26.txt* For Vim version 7.0d. Last change: 2002 Oct 29 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_27.txt b/runtime/doc/usr_27.txt --- a/runtime/doc/usr_27.txt +++ b/runtime/doc/usr_27.txt @@ -1,4 +1,4 @@ -*usr_27.txt* For Vim version 7.0c. Last change: 2005 Feb 08 +*usr_27.txt* For Vim version 7.0d. Last change: 2005 Feb 08 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_28.txt b/runtime/doc/usr_28.txt --- a/runtime/doc/usr_28.txt +++ b/runtime/doc/usr_28.txt @@ -1,4 +1,4 @@ -*usr_28.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_28.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_29.txt b/runtime/doc/usr_29.txt --- a/runtime/doc/usr_29.txt +++ b/runtime/doc/usr_29.txt @@ -1,4 +1,4 @@ -*usr_29.txt* For Vim version 7.0c. Last change: 2004 Feb 12 +*usr_29.txt* For Vim version 7.0d. Last change: 2004 Feb 12 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_30.txt b/runtime/doc/usr_30.txt --- a/runtime/doc/usr_30.txt +++ b/runtime/doc/usr_30.txt @@ -1,4 +1,4 @@ -*usr_30.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_30.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_31.txt b/runtime/doc/usr_31.txt --- a/runtime/doc/usr_31.txt +++ b/runtime/doc/usr_31.txt @@ -1,4 +1,4 @@ -*usr_31.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*usr_31.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_32.txt b/runtime/doc/usr_32.txt --- a/runtime/doc/usr_32.txt +++ b/runtime/doc/usr_32.txt @@ -1,4 +1,4 @@ -*usr_32.txt* For Vim version 7.0c. Last change: 2006 Mar 24 +*usr_32.txt* For Vim version 7.0d. Last change: 2006 Mar 24 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_40.txt b/runtime/doc/usr_40.txt --- a/runtime/doc/usr_40.txt +++ b/runtime/doc/usr_40.txt @@ -1,4 +1,4 @@ -*usr_40.txt* For Vim version 7.0c. Last change: 2006 Mar 24 +*usr_40.txt* For Vim version 7.0d. Last change: 2006 Mar 24 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt --- a/runtime/doc/usr_41.txt +++ b/runtime/doc/usr_41.txt @@ -1,4 +1,4 @@ -*usr_41.txt* For Vim version 7.0c. Last change: 2006 Apr 09 +*usr_41.txt* For Vim version 7.0d. Last change: 2006 Apr 09 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_42.txt b/runtime/doc/usr_42.txt --- a/runtime/doc/usr_42.txt +++ b/runtime/doc/usr_42.txt @@ -1,4 +1,4 @@ -*usr_42.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*usr_42.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_43.txt b/runtime/doc/usr_43.txt --- a/runtime/doc/usr_43.txt +++ b/runtime/doc/usr_43.txt @@ -1,4 +1,4 @@ -*usr_43.txt* For Vim version 7.0c. Last change: 2002 Jul 14 +*usr_43.txt* For Vim version 7.0d. Last change: 2002 Jul 14 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_44.txt b/runtime/doc/usr_44.txt --- a/runtime/doc/usr_44.txt +++ b/runtime/doc/usr_44.txt @@ -1,4 +1,4 @@ -*usr_44.txt* For Vim version 7.0c. Last change: 2006 Mar 27 +*usr_44.txt* For Vim version 7.0d. Last change: 2006 Mar 27 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_45.txt b/runtime/doc/usr_45.txt --- a/runtime/doc/usr_45.txt +++ b/runtime/doc/usr_45.txt @@ -1,4 +1,4 @@ -*usr_45.txt* For Vim version 7.0c. Last change: 2004 Jun 08 +*usr_45.txt* For Vim version 7.0d. Last change: 2004 Jun 08 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_90.txt b/runtime/doc/usr_90.txt --- a/runtime/doc/usr_90.txt +++ b/runtime/doc/usr_90.txt @@ -1,4 +1,4 @@ -*usr_90.txt* For Vim version 7.0c. Last change: 2004 Mar 21 +*usr_90.txt* For Vim version 7.0d. Last change: 2004 Mar 21 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/usr_toc.txt b/runtime/doc/usr_toc.txt --- a/runtime/doc/usr_toc.txt +++ b/runtime/doc/usr_toc.txt @@ -1,4 +1,4 @@ -*usr_toc.txt* For Vim version 7.0c. Last change: 2006 Apr 02 +*usr_toc.txt* For Vim version 7.0d. Last change: 2006 Apr 02 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -1,4 +1,4 @@ -*various.txt* For Vim version 7.0c. Last change: 2006 Mar 25 +*various.txt* For Vim version 7.0d. Last change: 2006 Mar 25 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/version4.txt b/runtime/doc/version4.txt --- a/runtime/doc/version4.txt +++ b/runtime/doc/version4.txt @@ -1,4 +1,4 @@ -*version4.txt* For Vim version 7.0c. Last change: 2004 Mar 12 +*version4.txt* For Vim version 7.0d. Last change: 2004 Mar 12 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/version5.txt b/runtime/doc/version5.txt --- a/runtime/doc/version5.txt +++ b/runtime/doc/version5.txt @@ -1,4 +1,4 @@ -*version5.txt* For Vim version 7.0c. Last change: 2005 Apr 01 +*version5.txt* For Vim version 7.0d. Last change: 2005 Apr 01 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/version6.txt b/runtime/doc/version6.txt --- a/runtime/doc/version6.txt +++ b/runtime/doc/version6.txt @@ -1,4 +1,4 @@ -*version6.txt* For Vim version 7.0c. Last change: 2005 Oct 17 +*version6.txt* For Vim version 7.0d. Last change: 2005 Oct 17 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt --- a/runtime/doc/version7.txt +++ b/runtime/doc/version7.txt @@ -1,4 +1,4 @@ -*version7.txt* For Vim version 7.0c. Last change: 2006 Apr 09 +*version7.txt* For Vim version 7.0d. Last change: 2006 Apr 10 VIM REFERENCE MANUAL by Bram Moolenaar @@ -924,6 +924,7 @@ mailaliases syntax file. (Nikolai Weibul mailcap ftplugin file. (Nikolai Weibull) manconf syntax and ftplugin file. (Nikolai Weibull) matlab ftplugin file. (Jake Wasserman) +Maxima syntax file. (Robert Dodier) MGL syntax file. (Gero Kuhlmann) modconf ftplugin file. (Nikolai Weibull) mplayer config ftplugin file. (Nikolai Weibull) @@ -2240,7 +2241,7 @@ apparently doesn't work everywhere. Use Typing BS at the "z=" prompt removed the prompt. ---- fixes since Vim 7.0c --- +--- fixes and changes since Vim 7.0c --- When jumping to another tab page the Vim window size was always set, even when nothing in the layout changed. @@ -2414,4 +2415,9 @@ glob('/dir/\$ABC/*') didn't work. When using several tab pages and changing 'cmdheight' the display could become messed up. Now store the value of 'cmdheight' separately for each tab page. +The user of the Enter key while the popup menu is visible was still confusing. +Now use Enter to select the match after using a cursor key. + +Added "usetab" to 'switchbuf'. + vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/doc/vi_diff.txt b/runtime/doc/vi_diff.txt --- a/runtime/doc/vi_diff.txt +++ b/runtime/doc/vi_diff.txt @@ -1,4 +1,4 @@ -*vi_diff.txt* For Vim version 7.0c. Last change: 2006 Jan 02 +*vi_diff.txt* For Vim version 7.0d. Last change: 2006 Jan 02 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/vimball.txt b/runtime/doc/vimball.txt --- a/runtime/doc/vimball.txt +++ b/runtime/doc/vimball.txt @@ -1,4 +1,4 @@ -*vimball.txt* For Vim version 7.0c. Last change: 2006 Apr 01 +*vimball.txt* For Vim version 7.0d. Last change: 2006 Apr 01 Vimball Archiver diff --git a/runtime/doc/visual.txt b/runtime/doc/visual.txt --- a/runtime/doc/visual.txt +++ b/runtime/doc/visual.txt @@ -1,4 +1,4 @@ -*visual.txt* For Vim version 7.0c. Last change: 2006 Mar 20 +*visual.txt* For Vim version 7.0d. Last change: 2006 Mar 20 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt --- a/runtime/doc/windows.txt +++ b/runtime/doc/windows.txt @@ -1,4 +1,4 @@ -*windows.txt* For Vim version 7.0c. Last change: 2006 Apr 06 +*windows.txt* For Vim version 7.0d. Last change: 2006 Apr 06 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/workshop.txt b/runtime/doc/workshop.txt --- a/runtime/doc/workshop.txt +++ b/runtime/doc/workshop.txt @@ -1,4 +1,4 @@ -*workshop.txt* For Vim version 7.0c. Last change: 2005 Mar 29 +*workshop.txt* For Vim version 7.0d. Last change: 2005 Mar 29 VIM REFERENCE MANUAL by Gordon Prieur diff --git a/runtime/makemenu.vim b/runtime/makemenu.vim --- a/runtime/makemenu.vim +++ b/runtime/makemenu.vim @@ -1,6 +1,6 @@ " Script to define the syntax menu in synmenu.vim " Maintainer: Bram Moolenaar -" Last Change: 2006 Apr 07 +" Last Change: 2006 Apr 10 " This is used by "make menu" in the src directory. edit :p:h/synmenu.vim @@ -278,6 +278,7 @@ SynMenu L-Ma.Maple\ V:maple SynMenu L-Ma.Mason:mason SynMenu L-Ma.Mathematica:mma SynMenu L-Ma.Matlab:matlab +SynMenu L-Ma.Maxima:maxima SynMenu Me-NO.MEL\ (for\ Maya):mel SynMenu Me-NO.Metafont:mf diff --git a/runtime/synmenu.vim b/runtime/synmenu.vim --- a/runtime/synmenu.vim +++ b/runtime/synmenu.vim @@ -253,6 +253,7 @@ an 50.60.440 &Syntax.L-Ma.Maple\ V :cal an 50.60.450 &Syntax.L-Ma.Mason :cal SetSyn("mason") an 50.60.460 &Syntax.L-Ma.Mathematica :cal SetSyn("mma") an 50.60.470 &Syntax.L-Ma.Matlab :cal SetSyn("matlab") +an 50.60.480 &Syntax.L-Ma.Maxima :cal SetSyn("maxima") an 50.70.100 &Syntax.Me-NO.MEL\ (for\ Maya) :cal SetSyn("mel") an 50.70.110 &Syntax.Me-NO.Metafont :cal SetSyn("mf") an 50.70.120 &Syntax.Me-NO.MetaPost :cal SetSyn("mp") diff --git a/runtime/syntax/maxima.vim b/runtime/syntax/maxima.vim new file mode 100644 --- /dev/null +++ b/runtime/syntax/maxima.vim @@ -0,0 +1,274 @@ +" Vim syntax file +" Language: Maxima (symbolic algebra program) +" Maintainer: Robert Dodier (robert.dodier@gmail.com) +" Last Change: April 6, 2006 +" Version: 1 +" Adapted mostly from xmath.vim +" Number formats adapted from r.vim +" +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +syn sync lines=1000 + +" parenthesis sanity checker +syn region maximaZone matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" transparent contains=ALLBUT,maximaError,maximaBraceError,maximaCurlyError +syn region maximaZone matchgroup=Delimiter start="{" matchgroup=Delimiter end="}" transparent contains=ALLBUT,maximaError,maximaBraceError,maximaParenError +syn region maximaZone matchgroup=Delimiter start="\[" matchgroup=Delimiter end="]" transparent contains=ALLBUT,maximaError,maximaCurlyError,maximaParenError +syn match maximaError "[)\]}]" +syn match maximaBraceError "[)}]" contained +syn match maximaCurlyError "[)\]]" contained +syn match maximaParenError "[\]}]" contained +syn match maximaComma "[\[\](),;]" +syn match maximaComma "\.\.\.$" + +" A bunch of useful maxima keywords +syn keyword maximaConditional if then else elseif and or not +syn keyword maximaRepeat do for thru + +" ---------------------- BEGIN LIST OF ALL FUNCTIONS (EXCEPT KEYWORDS) ---------------------- +syn keyword maximaFunc abasep abs absboxchar absint acos acosh acot acoth acsc +syn keyword maximaFunc acsch activate activecontexts addcol additive addrow adim +syn keyword maximaFunc adjoint af aform airy algebraic algepsilon algexact algsys +syn keyword maximaFunc alg_type alias aliases allbut all_dotsimp_denoms allroots allsym +syn keyword maximaFunc alphabetic antid antidiff antisymmetric append appendfile +syn keyword maximaFunc apply apply1 apply2 applyb1 apropos args array arrayapply +syn keyword maximaFunc arrayinfo arraymake arrays asec asech asin asinh askexp +syn keyword maximaFunc askinteger asksign assoc assoc_legendre_p assoc_legendre_q assume +syn keyword maximaFunc assume_pos assume_pos_pred assumescalar asymbol asympa at atan +syn keyword maximaFunc atan2 atanh atensimp atom atomgrad atrig1 atvalue augcoefmatrix +syn keyword maximaFunc av backsubst backtrace bashindices batch batchload bc2 bdvac +syn keyword maximaFunc berlefact bern bernpoly bessel besselexpand bessel_i bessel_j +syn keyword maximaFunc bessel_k bessel_y beta bezout bffac bfhzeta bfloat bfloatp +syn keyword maximaFunc bfpsi bfpsi0 bftorat bftrunc bfzeta bimetric binomial block +syn keyword maximaFunc bothcoef box boxchar break breakup bug_report build_info buildq +syn keyword maximaFunc burn cabs canform canten carg cartan catch cauchysum cbffac +syn keyword maximaFunc cdisplay cf cfdisrep cfexpand cflength cframe_flag cgeodesic +syn keyword maximaFunc changename changevar charpoly checkdiv check_overlaps christof +syn keyword maximaFunc clear_rules closefile closeps cmetric cnonmet_flag coeff +syn keyword maximaFunc coefmatrix cograd col collapse columnvector combine commutative +syn keyword maximaFunc comp2pui compfile compile compile_file components concan concat +syn keyword maximaFunc conj conjugate conmetderiv cons constant constantp cont2part +syn keyword maximaFunc content context contexts contortion contract contragrad coord +syn keyword maximaFunc copylist copymatrix cos cosh cosnpiflag cot coth covdiff +syn keyword maximaFunc covect create_list csc csch csetup ctaylor ctaypov ctaypt +syn keyword maximaFunc ctayswitch ctayvar ct_coords ct_coordsys ctorsion_flag ctransform +syn keyword maximaFunc ctrgsimp current_let_rule_package dblint deactivate debugmode +syn keyword maximaFunc declare declare_translated declare_weight decsym +syn keyword maximaFunc default_let_rule_package defcon define define_variable defint +syn keyword maximaFunc defmatch defrule deftaylor del delete deleten delta demo +syn keyword maximaFunc demoivre denom dependencies depends derivabbrev derivdegree +syn keyword maximaFunc derivlist derivsubst describe desolve determinant detout +syn keyword maximaFunc diagmatrix diagmatrixp diagmetric diff dim dimension direct +syn keyword maximaFunc disolate disp dispcon dispflag dispform dispfun display +syn keyword maximaFunc display2d display_format_internal disprule dispterms distrib +syn keyword maximaFunc divide divsum doallmxops domain domxexpt domxmxops domxnctimes +syn keyword maximaFunc dontfactor doscmxops doscmxplus dot0nscsimp dot0simp dot1simp +syn keyword maximaFunc dotassoc dotconstrules dotdistrib dotexptsimp dotident dotscrules +syn keyword maximaFunc dotsimp dpart dscalar %e echelon %edispflag eigenvalues +syn keyword maximaFunc eigenvectors eighth einstein eivals eivects ele2comp +syn keyword maximaFunc ele2polynome ele2pui elem eliminate elliptic_e elliptic_ec +syn keyword maximaFunc elliptic_eu elliptic_f elliptic_kc elliptic_pi ematrix %emode +syn keyword maximaFunc endcons entermatrix entertensor entier %enumer equal equalp erf +syn keyword maximaFunc erfflag errcatch error errormsg error_size error_syms +syn keyword maximaFunc %e_to_numlog euler ev eval evenp every evflag evfun evundiff +syn keyword maximaFunc example exp expand expandwrt expandwrt_denom expandwrt_factored +syn keyword maximaFunc explose expon exponentialize expop express expt exptdispflag +syn keyword maximaFunc exptisolate exptsubst extdiff extract_linear_equations ezgcd +syn keyword maximaFunc facexpand factcomb factlim factor factorflag factorial factorout +syn keyword maximaFunc factorsum facts false fast_central_elements fast_linsolve +syn keyword maximaFunc fasttimes fb feature featurep features fft fib fibtophi fifth +syn keyword maximaFunc filename_merge file_search file_search_demo file_search_lisp +syn keyword maximaFunc file_search_maxima file_type fillarray findde first fix flatten +syn keyword maximaFunc flipflag float float2bf floatnump flush flush1deriv flushd +syn keyword maximaFunc flushnd forget fortindent fortran fortspaces fourcos fourexpand +syn keyword maximaFunc fourier fourint fourintcos fourintsin foursimp foursin fourth +syn keyword maximaFunc fpprec fpprintprec frame_bracket freeof fullmap fullmapl +syn keyword maximaFunc fullratsimp fullratsubst funcsolve functions fundef funmake funp +syn keyword maximaFunc gamma %gamma gammalim gauss gcd gcdex gcfactor gdet genfact +syn keyword maximaFunc genindex genmatrix gensumnum get getchar gfactor gfactorsum +syn keyword maximaFunc globalsolve go gradef gradefs gramschmidt grind grobner_basis +syn keyword maximaFunc gschmit hach halfangles hermite hipow hodge horner i0 i1 +syn keyword maximaFunc *read-base* ic1 ic2 icc1 icc2 ic_convert ichr1 ichr2 icounter +syn keyword maximaFunc icurvature ident idiff idim idummy idummyx ieqn ieqnprint ifb +syn keyword maximaFunc ifc1 ifc2 ifg ifgi ifr iframe_bracket_form iframes ifri ift +syn keyword maximaFunc igeodesic_coords igeowedge_flag ikt1 ikt2 ilt imagpart imetric +syn keyword maximaFunc inchar indexed_tensor indices inf %inf infeval infinity infix +syn keyword maximaFunc inflag infolists init_atensor init_ctensor inm inmc1 inmc2 +syn keyword maximaFunc innerproduct in_netmath inpart inprod inrt integerp integrate +syn keyword maximaFunc integrate_use_rootsof integration_constant_counter interpolate +syn keyword maximaFunc intfaclim intopois intosum intpolabs intpolerror intpolrel +syn keyword maximaFunc invariant1 invariant2 inverse_jacobi_cd inverse_jacobi_cn +syn keyword maximaFunc inverse_jacobi_cs inverse_jacobi_dc inverse_jacobi_dn +syn keyword maximaFunc inverse_jacobi_ds inverse_jacobi_nc inverse_jacobi_nd +syn keyword maximaFunc inverse_jacobi_ns inverse_jacobi_sc inverse_jacobi_sd +syn keyword maximaFunc inverse_jacobi_sn invert is ishow isolate isolate_wrt_times +syn keyword maximaFunc isqrt itr j0 j1 jacobi jacobi_cd jacobi_cn jacobi_cs jacobi_dc +syn keyword maximaFunc jacobi_dn jacobi_ds jacobi_nc jacobi_nd jacobi_ns jacobi_sc +syn keyword maximaFunc jacobi_sd jacobi_sn jn kdels kdelta keepfloat kill killcontext +syn keyword maximaFunc kinvariant kostka kt labels lambda laplace lassociative last +syn keyword maximaFunc lc2kdt lc_l lcm lc_u ldefint ldisp ldisplay leinstein length +syn keyword maximaFunc let letrat let_rule_packages letrules letsimp levi_civita lfg +syn keyword maximaFunc lfreeof lg lgtreillis lhospitallim lhs liediff limit limsubst +syn keyword maximaFunc linear linechar linel linenum linsolve linsolve_params +syn keyword maximaFunc linsolvewarn listarith listarray listconstvars listdummyvars +syn keyword maximaFunc list_nc_monomials listoftens listofvars listp lmxchar load +syn keyword maximaFunc loadfile loadprint local log logabs logarc logconcoeffp +syn keyword maximaFunc logcontract logexpand lognegint lognumer logsimp lopow +syn keyword maximaFunc lorentz_gauge lpart lratsubst lriem lriemann lsum ltreillis +syn keyword maximaFunc m1pbranch macroexpansion mainvar make_array makebox makefact +syn keyword maximaFunc makegamma makelist make_random_state make_transform map mapatom +syn keyword maximaFunc maperror maplist matchdeclare matchfix matrix matrix_element_add +syn keyword maximaFunc matrix_element_mult matrix_element_transpose matrixmap matrixp +syn keyword maximaFunc mattrace max maxapplydepth maxapplyheight maxnegex maxposex +syn keyword maximaFunc maxtayorder member min %minf minfactorial minor mod +syn keyword maximaFunc mode_check_errorp mode_checkp mode_check_warnp mode_declare +syn keyword maximaFunc mode_identity modulus mon2schur mono monomial_dimensions +syn keyword maximaFunc multi_elem multinomial multi_orbit multiplicative multiplicities +syn keyword maximaFunc multi_pui multsym multthru myoptions nc_degree ncexpt ncharpoly +syn keyword maximaFunc negdistrib negsumdispflag newcontext newdet newton niceindices +syn keyword maximaFunc niceindicespref ninth nm nmc noeval nolabels nonmetricity +syn keyword maximaFunc nonscalar nonscalarp noun noundisp nounify nouns np npi +syn keyword maximaFunc nptetrad nroots nterms ntermst nthroot ntrig num numberp numer +syn keyword maximaFunc numerval numfactor nusum obase oddp ode2 op openplot_curves +syn keyword maximaFunc operatorp opproperties opsubst optimize optimprefix optionset +syn keyword maximaFunc orbit ordergreat ordergreatp orderless orderlessp outative +syn keyword maximaFunc outchar outermap outofpois packagefile pade part part2cont +syn keyword maximaFunc partfrac partition partpol partswitch permanent permut petrov +syn keyword maximaFunc pfeformat pi pickapart piece playback plog plot2d plot2d_ps +syn keyword maximaFunc plot3d plot_options poisdiff poisexpt poisint poislim poismap +syn keyword maximaFunc poisplus poissimp poisson poissubst poistimes poistrim polarform +syn keyword maximaFunc polartorect polynome2ele posfun potential powerdisp powers +syn keyword maximaFunc powerseries pred prederror primep print printpois printprops +syn keyword maximaFunc prodhack prodrac product programmode prompt properties props +syn keyword maximaFunc propvars pscom psdraw_curve psexpand psi pui pui2comp pui2ele +syn keyword maximaFunc pui2polynome pui_direct puireduc put qput qq quad_qag quad_qagi +syn keyword maximaFunc quad_qags quad_qawc quad_qawf quad_qawo quad_qaws quanc8 quit +syn keyword maximaFunc qunit quotient radcan radexpand radsubstflag random rank +syn keyword maximaFunc rassociative rat ratalgdenom ratchristof ratcoef ratdenom +syn keyword maximaFunc ratdenomdivide ratdiff ratdisrep rateinstein ratepsilon ratexpand +syn keyword maximaFunc ratfac ratmx ratnumer ratnump ratp ratprint ratriemann ratsimp +syn keyword maximaFunc ratsimpexpons ratsubst ratvars ratweight ratweights ratweyl +syn keyword maximaFunc ratwtlvl read readonly realonly realpart realroots rearray +syn keyword maximaFunc rectform recttopolar rediff refcheck rem remainder remarray +syn keyword maximaFunc rembox remcomps remcon remcoord remfun remfunction remlet +syn keyword maximaFunc remove remrule remsym remvalue rename reset residue resolvante +syn keyword maximaFunc resolvante_alternee1 resolvante_bipartite resolvante_diedrale +syn keyword maximaFunc resolvante_klein resolvante_klein3 resolvante_produit_sym +syn keyword maximaFunc resolvante_unitaire resolvante_vierer rest resultant return +syn keyword maximaFunc reveal reverse revert revert2 rhs ric ricci riem riemann +syn keyword maximaFunc rinvariant risch rmxchar rncombine %rnum_list romberg rombergabs +syn keyword maximaFunc rombergit rombergmin rombergtol room rootsconmode rootscontract +syn keyword maximaFunc rootsepsilon round row run_testsuite save savedef savefactors +syn keyword maximaFunc scalarmatrixp scalarp scalefactors scanmap schur2comp sconcat +syn keyword maximaFunc scsimp scurvature sec sech second setcheck setcheckbreak +syn keyword maximaFunc setelmx set_plot_option set_random_state setup_autoload +syn keyword maximaFunc set_up_dot_simplifications setval seventh sf show showcomps +syn keyword maximaFunc showratvars showtime sign signum similaritytransform simpsum +syn keyword maximaFunc simtran sin sinh sinnpiflag sixth solve solvedecomposes +syn keyword maximaFunc solveexplicit solvefactors solve_inconsistent_error solvenullwarn +syn keyword maximaFunc solveradcan solvetrigwarn somrac sort sparse spherical_bessel_j +syn keyword maximaFunc spherical_bessel_y spherical_hankel1 spherical_hankel2 +syn keyword maximaFunc spherical_harmonic splice sqfr sqrt sqrtdispflag sstatus +syn keyword maximaFunc stardisp status string stringout sublis sublis_apply_lambda +syn keyword maximaFunc sublist submatrix subst substinpart substpart subvarp sum +syn keyword maximaFunc sumcontract sumexpand sumhack sumsplitfact supcontext symbolp +syn keyword maximaFunc symmetric symmetricp system tan tanh taylor taylordepth +syn keyword maximaFunc taylorinfo taylor_logexpand taylor_order_coefficients taylorp +syn keyword maximaFunc taylor_simplifier taylor_truncate_polynomials taytorat tcl_output +syn keyword maximaFunc tcontract tellrat tellsimp tellsimpafter tensorkill tentex tenth +syn keyword maximaFunc tex %th third throw time timer timer_devalue timer_info +syn keyword maximaFunc tldefint tlimit tlimswitch todd_coxeter to_lisp totaldisrep +syn keyword maximaFunc totalfourier totient tpartpol tr trace trace_options +syn keyword maximaFunc transcompile translate translate_file transpose transrun +syn keyword maximaFunc tr_array_as_ref tr_bound_function_applyp treillis treinat +syn keyword maximaFunc tr_file_tty_messagesp tr_float_can_branch_complex +syn keyword maximaFunc tr_function_call_default triangularize trigexpand trigexpandplus +syn keyword maximaFunc trigexpandtimes triginverses trigrat trigreduce trigsign trigsimp +syn keyword maximaFunc tr_numer tr_optimize_max_loop tr_semicompile tr_state_vars true +syn keyword maximaFunc trunc truncate tr_warn_bad_function_calls tr_warn_fexpr +syn keyword maximaFunc tr_warnings_get tr_warn_meval tr_warn_mode tr_warn_undeclared +syn keyword maximaFunc tr_warn_undefined_variable tr_windy ttyoff ueivects ufg ug +syn keyword maximaFunc ultraspherical undiff uniteigenvectors unitvector unknown unorder +syn keyword maximaFunc unsum untellrat untimer untrace uric uricci uriem uriemann +syn keyword maximaFunc use_fast_arrays uvect values vect_cross vectorpotential +syn keyword maximaFunc vectorsimp verb verbify verbose weyl with_stdout writefile +syn keyword maximaFunc xgraph_curves xthru zerobern zeroequiv zeromatrix zeta zeta%pi +syn match maximaOp "[\*\/\+\-\#\!\~\^\=\:\<\>\@]" +" ---------------------- END LIST OF ALL FUNCTIONS (EXCEPT KEYWORDS) ---------------------- + + +syn case match + +" Labels (supports maxima's goto) +syn match maximaLabel "^\s*<[a-zA-Z_][a-zA-Z0-9%_]*>" + +" String and Character constants +" Highlight special characters (those which have a backslash) differently +syn match maximaSpecial contained "\\\d\d\d\|\\." +syn region maximaString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=maximaSpecial +syn match maximaCharacter "'[^\\]'" +syn match maximaSpecialChar "'\\.'" + +" number with no fractional part or exponent +syn match maximaNumber /\<\d\+\>/ +" floating point number with integer and fractional parts and optional exponent +syn match maximaFloat /\<\d\+\.\d*\([BbDdEeSs][-+]\=\d\+\)\=\>/ +" floating point number with no integer part and optional exponent +syn match maximaFloat /\<\.\d\+\([BbDdEeSs][-+]\=\d\+\)\=\>/ +" floating point number with no fractional part and optional exponent +syn match maximaFloat /\<\d\+[BbDdEeSs][-+]\=\d\+\>/ + +" Comments: +" maxima supports /* ... */ (like C) +syn keyword maximaTodo contained TODO Todo DEBUG +syn region maximaCommentBlock start="/\*" end="\*/" contains=maximaString,maximaTodo + +" synchronizing +syn sync match maximaSyncComment grouphere maximaCommentBlock "/*" +syn sync match maximaSyncComment groupthere NONE "*/" + +" Define the default highlighting. +" For version 5.7 and earlier: only when not done already +" For version 5.8 and later: only when an item doesn't have highlighting yet +if version >= 508 || !exists("did_maxima_syntax_inits") + if version < 508 + let did_maxima_syntax_inits = 1 + command -nargs=+ HiLink hi link + else + command -nargs=+ HiLink hi def link + endif + + HiLink maximaBraceError maximaError + HiLink maximaCmd maximaStatement + HiLink maximaCurlyError maximaError + HiLink maximaFuncCmd maximaStatement + HiLink maximaParenError maximaError + + " The default methods for highlighting. Can be overridden later + HiLink maximaCharacter Character + HiLink maximaComma Function + HiLink maximaCommentBlock Comment + HiLink maximaConditional Conditional + HiLink maximaError Error + HiLink maximaFunc Delimiter + HiLink maximaOp Delimiter + HiLink maximaLabel PreProc + HiLink maximaNumber Number + HiLink maximaFloat Float + HiLink maximaRepeat Repeat + HiLink maximaSpecial Type + HiLink maximaSpecialChar SpecialChar + HiLink maximaStatement Statement + HiLink maximaString String + HiLink maximaTodo Todo + + delcommand HiLink +endif + +let b:current_syntax = "maxima" diff --git a/runtime/syntax/rst.vim b/runtime/syntax/rst.vim --- a/runtime/syntax/rst.vim +++ b/runtime/syntax/rst.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: reStructuredText documentation format -" Maintainer: Nikolai Weibull -" Latest Revision: 2006-03-26 +" Maintainer: Nikolai Weibull +" Latest Revision: 2006-04-09 if exists("b:current_syntax") finish @@ -10,90 +10,167 @@ endif let s:cpo_save = &cpo set cpo&vim -syn keyword rstTodo contained FIXME TODO XXX NOTE - syn case ignore -syn region rstComment start='^\.\.\%( \%([a-z0-9_.-]\+::\)\@!\|$\)' - \ end='^\s\@!' contains=rstTodo +" FIXME: The problem with these two is that Vim doesn’t seem to like +" matching across line boundaries. +" +" syn match rstSections /^.*\n[=`:.'"~^_*+#-]\+$/ + +" syn match rstTransition /^\s*[=`:.'"~^_*+#-]\{4,}\s*$/ + +syn cluster rstCruft contains=rstEmphasis,rstStrongEmphasis, + \ rstInterpretedText,rstInlineLiteral,rstSubstitutionReference, + \ rstInlineInternalTargets,rstFootnoteReference,rstHyperlinkReference -syn cluster rstCruft contains=rstFootnoteLabel,rstCitationLabel, - \ rstSubstitutionLabel,rstInline, - \ rstHyperlinks,rstInternalTarget +syn region rstLiteralBlock matchgroup=rstDelimiter + \ start='::\_s*\n\ze\z(\s\+\)' skip='^$' end='^\z1\@!' + \ contains=@NoSpell -syn region rstBlock matchgroup=rstDelimiter - \ start='::$' skip='^$' end='^\s\@!' -syn region rstDoctestBlock matchgroup=rstDelimiter - \ start='^>>>\s' end='^$' +syn region rstQuotedLiteralBlock matchgroup=rstDelimiter + \ start="::\_s*\n\ze\z([!\"#$%&'()*+,-./:;<=>?@[\]^_`{|}~]\)" + \ end='^\z1\@!' contains=@NoSpell + +syn region rstDoctestBlock oneline display matchgroup=rstDelimiter + \ start='^>>>\s' end='^$' + +syn region rstTable transparent start='^\n\s*+[-=+]\+' end='^$' + \ contains=rstTableLines,@rstCruft +syn match rstTableLines contained display '|\|+\%(=\+\|-\+\)\=' -" TODO: these may actually be a bit too complicated to match correctly and -" should perhaps be removed. We won't really needs it anyway? -syn region rstTable transparent start='^\n\s*+[-=+]\+' end='^$' - \ contains=rstTableLines,@rstCruft -syn match rstTableLines contained '^\s*[|+=-]\+$' -syn region rstSimpleTable transparent - \ start='^\n\%(\s*\)\@>\%(\%(=\+\)\@>\%(\s\+\)\@>\)\%(\%(\%(=\+\)\@>\%(\s*\)\@>\)\+\)\@>$' - \ end='^$' - \ contains=rstSimpleTableLines,@rstCruft -syn match rstSimpleTableLines contained display - \ '^\%(\s*\)\@>\%(\%(=\+\)\@>\%(\s\+\)\@>\)\%(\%(\%(=\+\)\@>\%(\s*\)\@>\)\+\)\@>$' +syn region rstSimpleTable transparent + \ start='^\n\%(\s*\)\@>\%(\%(=\+\)\@>\%(\s\+\)\@>\)\%(\%(\%(=\+\)\@>\%(\s*\)\@>\)\+\)\@>$' + \ end='^$' + \ contains=rstSimpleTableLines,@rstCruft +syn match rstSimpleTableLines contained display + \ '^\%(\s*\)\@>\%(\%(=\+\)\@>\%(\s\+\)\@>\)\%(\%(\%(=\+\)\@>\%(\s*\)\@>\)\+\)\@>$' +syn match rstSimpleTableLines contained display + \ '^\%(\s*\)\@>\%(\%(-\+\)\@>\%(\s\+\)\@>\)\%(\%(\%(-\+\)\@>\%(\s*\)\@>\)\+\)\@>$' + +syn cluster rstDirectives contains=rstFootnote,rstCitation, + \ rstHyperlinkTarget,rstExDirective + +syn match rstExplicitMarkup '^\.\.\s' + \ nextgroup=@rstDirectives,rstComment,rstSubstitutionDefinition + +let s:ReferenceName = '[[:alnum:]]\+\%([_.-][[:alnum:]]\+\)*' -syn region rstFootnote matchgroup=rstDirective - \ start='^\.\. \[\%([#*]\|[0-9]\+\|#[a-z0-9_.-]\+\)\]\s' - \ end='^\s\@!' contains=@rstCruft -syn match rstFootnoteLabel '\[\%([#*]\|[0-9]\+\|#[a-z0-9_.-]\+\)\]_' +syn keyword rstTodo contained FIXME TODO XXX NOTE + +execute 'syn region rstComment contained' . + \ ' start=/.*/' + \ ' end=/^\s\@!/ contains=rstTodo' + +execute 'syn region rstFootnote contained matchgroup=rstDirective' . + \ ' start=+\[\%(\d\+\|#\%(' . s:ReferenceName . '\)\=\|\*\)\]\_s+' . + \ ' skip=+^$+' . + \ ' end=+^\s\@!+ contains=@rstCruft,@NoSpell' + +execute 'syn region rstCitation contained matchgroup=rstDirective' . + \ ' start=+\[' . s:ReferenceName . '\]\_s+' . + \ ' skip=+^$+' . + \ ' end=+^\s\@!+ contains=@rstCruft,@NoSpell' + +syn region rstHyperlinkTarget contained matchgroup=rstDirective + \ start='_\%(_\|[^:\\]*\%(\\.[^:\\]*\)*\):\_s' skip=+^$+ end=+^\s\@!+ -syn region rstCitation matchgroup=rstDirective - \ start='^\.\. \[[a-z0-9_.-]\+\]\s' - \ end='^\s\@!' contains=@rstCruft -syn match rstCitationLabel '\[[a-z0-9_.-]\+\]_' +syn region rstHyperlinkTarget contained matchgroup=rstDirective + \ start='_`[^`\\]*\%(\\.[^`\\]*\)*`:\_s' skip=+^$+ end=+^\s\@!+ + +syn region rstHyperlinkTarget matchgroup=rstDirective + \ start=+^__\_s+ skip=+^$+ end=+^\s\@!+ + +execute 'syn region rstExDirective contained matchgroup=rstDirective' . + \ ' start=+' . s:ReferenceName . '::\_s+' . + \ ' skip=+^$+' . + \ ' end=+^\s\@!+ contains=@rstCruft' -syn region rstDirectiveBody matchgroup=rstDirective - \ start='^\.\. [a-z0-9_.-]\+::' - \ end='^\s\@!' +execute 'syn match rstSubstitutionDefinition contained' . + \ ' /|' . s:ReferenceName . '|\_s\+/ nextgroup=@rstDirectives' -syn region rstSubstitution matchgroup=rstDirective - \ start='^\.\. |[a-z0-9_.-]|\s[a-z0-9_.-]\+::\s' - \ end='^\s\@!' contains=@rstCruft -syn match rstSubstitutionLbl '|[a-z0-9_.-]|' +function! s:DefineOneInlineMarkup(name, start, middle, end, char_left, char_right) + execute 'syn region rst' . a:name . + \ ' start=+' . a:char_left . '\zs' . a:start . + \ '[^[:space:]' . a:char_right . a:start[strlen(a:start) - 1] . ']+' . + \ a:middle . + \ ' end=+\S' . a:end . '\ze\%($\|\s\|[''")\]}>/:.,;!?\\-]\)+' +endfunction + +function! s:DefineInlineMarkup(name, start, middle, end) + let middle = a:middle != "" ? + \ (' skip=+\\\\\|\\' . a:middle . '+') : + \ "" -syn match rstInline '\*\{1,2}\S\%([^*]*\S\)\=\*\{1,2}' -syn match rstInline '`\{1,2}\S\%([^`]*\S\)\=`\{1,2}' + call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, "'", "'") + call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '"', '"') + call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '(', ')') + call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '\[', '\]') + call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '{', '}') + call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '<', '>') -syn region rstHyperlinks matchgroup=RstDirective - \ start='^\.\. _[a-z0-9_. -]\+:\s' - \ end='^\s\@!' contains=@rstCruft + call s:DefineOneInlineMarkup(a:name, a:start, middle, a:end, '\%(^\|\s\|[/:]\)', '') + + execute 'syn match rst' . a:name . + \ ' +\%(^\|\s\|[''"([{/:.,;!?\\-]\)+' + + execute 'hi def link rst' . a:name . 'Delimiter' . ' rst' . a:name +endfunction -syn match rstHyperlinksLabel '`\S\%([^`]*\S\)\=`__\=\>' -syn match rstHyperlinksLabel '\w\+__\=\>' +call s:DefineInlineMarkup('Emphasis', '\*', '\*', '\*') +call s:DefineInlineMarkup('StrongEmphasis', '\*\*', '\*', '\*\*') +call s:DefineInlineMarkup('InterpretedTextOrHyperlinkReference', '`', '`', '`_\{0,2}') +call s:DefineInlineMarkup('InlineLiteral', '``', "", '``') +call s:DefineInlineMarkup('SubstitutionReference', '|', '|', '|_\{0,2}') +call s:DefineInlineMarkup('InlineInternalTargets', '_`', '`', '`') + +" TODO: Can’t remember why these two can’t be defined like the ones above. +execute 'syn match rstFootnoteReference contains=@NoSpell' . + \ ' +\[\%(\d\+\|#\%(' . s:ReferenceName . '\)\=\|\*\)\]_+' -syn match rstInternalTarget '_`\S\%([^`]*\S\)\=`' +execute 'syn match rstCitationReference contains=@NoSpell' . + \ ' +\[' . s:ReferenceName . '\]_+' + +execute 'syn match rstHyperlinkReference' . + \ ' /\<' . s:ReferenceName . '__\=/' -syn match rstListItem '^:\w\+\%(\s\+\w\+\)*:' -syn match rstListItem '^\s*[-*+]\s\+' +syn match rstStandaloneHyperlink contains=@NoSpell + \ "\<\%(\%(\%(https\=\|file\|ftp\|gopher\)://\|\%(mailto\|news\):\)[^[:space:]'\"<>]\+\|www[[:alnum:]_-]*\.[[:alnum:]_-]\+\.[^[:space:]'\"<>]\+\)[[:alnum:]/]" +" TODO: Use better syncing. I don’t know the specifics of syncing well enough, +" though. syn sync minlines=50 -hi def link rstTodo Todo -hi def link rstComment Comment -hi def link rstDelimiter Delimiter -hi def link rstBlock String -hi def link rstDoctestBlock PreProc -hi def link rstTableLines Delimiter -hi def link rstSimpleTableLines rstTableLines -hi def link rstFootnote String -hi def link rstFootnoteLabel Identifier -hi def link rstCitation String -hi def link rstCitationLabel Identifier -hi def link rstDirective Keyword -hi def link rstDirectiveBody Type -hi def link rstSubstitution String -hi def link rstSubstitutionLbl Identifier -hi def link rstHyperlinks String -hi def link rstHyperlinksLabel Identifier -hi def link rstListItem Identifier -hi def rstInline term=italic cterm=italic gui=italic -hi def rstInternalTarget term=italic cterm=italic gui=italic +hi def link rstTodo Todo +hi def link rstComment Comment +"hi def link rstSections Type +"hi def link rstTransition Type +hi def link rstLiteralBlock String +hi def link rstQuotedLiteralBlock String +hi def link rstDoctestBlock PreProc +hi def link rstTableLines rstDelimiter +hi def link rstSimpleTableLines rstTableLines +hi def link rstExplicitMarkup rstDirective +hi def link rstDirective Keyword +hi def link rstFootnote String +hi def link rstCitation String +hi def link rstHyperlinkTarget String +hi def link rstExDirective String +hi def link rstSubstitutionDefinition rstDirective +hi def link rstDelimiter Delimiter +" TODO: I dunno... +hi def rstEmphasis term=italic cterm=italic gui=italic +hi def link rstStrongEmphasis Special +"term=bold cterm=bold gui=bold +hi def link rstInterpretedTextOrHyperlinkReference Identifier +hi def link rstInlineLiteral String +hi def link rstSubstitutionReference PreProc +hi def link rstInlineInternalTargets Identifier +hi def link rstFootnoteReference Identifier +hi def link rstCitationReference Identifier +hi def link rstHyperLinkReference Identifier +hi def link rstStandaloneHyperlink Identifier let b:current_syntax = "rst" diff --git a/src/GvimExt/GvimExt.reg b/src/GvimExt/GvimExt.reg --- a/src/GvimExt/GvimExt.reg +++ b/src/GvimExt/GvimExt.reg @@ -15,6 +15,6 @@ REGEDIT4 [HKEY_LOCAL_MACHINE\Software\Vim\Gvim] "path"="gvim.exe" -[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\Vim 7.0c] - "DisplayName"="Vim 7.0c: Edit with Vim popup menu entry" +[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\Vim 7.0d] + "DisplayName"="Vim 7.0d: Edit with Vim popup menu entry" "UninstallString"="uninstal.exe" diff --git a/src/Makefile b/src/Makefile --- a/src/Makefile +++ b/src/Makefile @@ -880,7 +880,7 @@ MAN1DIR = /man1 ### Vim version (adjusted by a script) VIMMAJOR = 7 -VIMMINOR = 0c +VIMMINOR = 0d ### Location of Vim files (should not need to be changed, and {{{1 ### some things might not work when they are changed!) diff --git a/src/buffer.c b/src/buffer.c --- a/src/buffer.c +++ b/src/buffer.c @@ -1212,7 +1212,11 @@ do_buffer(action, start, dir, count, for { # ifdef FEAT_WINDOWS /* jump to first window containing buf if one exists ("useopen") */ - if (vim_strchr(p_swb, 'u') && buf_jump_open_win(buf)) + if (vim_strchr(p_swb, 'o') && buf_jump_open_win(buf)) + return OK; + /* jump to first window in any tab page containing buf if one exists + * ("usetab") */ + if (vim_strchr(p_swb, 'a') && buf_jump_open_tab(buf)) return OK; if (win_split(0, 0) == FAIL) # endif @@ -1316,7 +1320,7 @@ set_curbuf(buf, action) #endif { if (prevbuf == curbuf) - u_sync(); + u_sync(FALSE); close_buffer(prevbuf == curwin->w_buffer ? curwin : NULL, prevbuf, unload ? action : (action == DOBUF_GOTO && !P_HID(prevbuf) @@ -1833,8 +1837,11 @@ buflist_getfile(n, lnum, options, forcei if (options & GETF_SWITCH) { /* use existing open window for buffer if wanted */ - if (vim_strchr(p_swb, 'u')) /* useopen */ + if (vim_strchr(p_swb, 'o')) /* useopen */ wp = buf_jump_open_win(buf); + /* use existing open window in any tab page for buffer if wanted */ + if (vim_strchr(p_swb, 'a')) /* usetab */ + wp = buf_jump_open_tab(buf); /* split window if wanted ("split") */ if (wp == NULL && vim_strchr(p_swb, 't') && !bufempty()) { diff --git a/src/diff.c b/src/diff.c --- a/src/diff.c +++ b/src/diff.c @@ -2233,7 +2233,7 @@ ex_diffgetput(eap) * another buffer. Sync undo if the command was typed. This isn't * 100% right when ":diffput" is used in a function or mapping. */ if (KeyTyped) - u_sync(); + u_sync(FALSE); aucmd_restbuf(&aco); } diff --git a/src/edit.c b/src/edit.c --- a/src/edit.c +++ b/src/edit.c @@ -90,6 +90,10 @@ static compl_T *compl_first_match = N static compl_T *compl_curr_match = NULL; static compl_T *compl_shown_match = NULL; +/* After using a cursor key selects a match in the popup menu, + * otherwise it inserts a line break. */ +static int compl_enter_selects = FALSE; + /* When "compl_leader" is not NULL only matches that start with this string * are used. */ static char_u *compl_leader = NULL; @@ -726,8 +730,10 @@ edit(cmdchar, startln, count) continue; } - /* Pressing CTRL-Y selects the current match. */ - if (c == Ctrl_Y) + /* Pressing CTRL-Y selects the current match. Shen + * compl_enter_selects is set the Enter key does the same. */ + if (c == Ctrl_Y || (compl_enter_selects + && (c == CAR || c == K_KENTER || c == NL))) { ins_compl_delete(); ins_compl_insert(); @@ -2915,6 +2921,7 @@ ins_compl_clear() edit_submode_extra = NULL; vim_free(compl_orig_text); compl_orig_text = NULL; + compl_enter_selects = FALSE; } /* @@ -2976,6 +2983,7 @@ ins_compl_bs() /* Show the popup menu with a different set of matches. */ ins_compl_show_pum(); compl_used_match = FALSE; + compl_enter_selects = FALSE; return TRUE; } @@ -3014,6 +3022,7 @@ ins_compl_addleader(c) ins_compl_del_pum(); ins_compl_show_pum(); compl_used_match = FALSE; + compl_enter_selects = FALSE; ins_compl_set_original_text(compl_leader); } } @@ -3277,8 +3286,11 @@ ins_compl_prep(c) auto_format(FALSE, TRUE); /* If the popup menu is displayed pressing CTRL-Y means accepting - * the selection without inserting anything. */ - if (c == Ctrl_Y && pum_visible()) + * the selection without inserting anything. When + * compl_enter_selects is set the Enter key does the same. */ + if ((c == Ctrl_Y || (compl_enter_selects + && (c == CAR || c == K_KENTER || c == NL))) + && pum_visible()) retval = TRUE; /* CTRL-E means completion is Ended, go back to the typed text. */ @@ -3298,6 +3310,7 @@ ins_compl_prep(c) compl_matches = 0; msg_clr_cmdline(); /* necessary for "noshowmode" */ ctrl_x_mode = 0; + compl_enter_selects = FALSE; if (edit_submode != NULL) { edit_submode = NULL; @@ -4049,6 +4062,10 @@ ins_compl_next(allow_get_expansion, coun ins_compl_delete(); } + /* Enter will select a match when the match wasn't inserted and the popup + * menu is visislbe. */ + compl_enter_selects = !insert_match && compl_match_array != NULL; + /* * Show the file name for the match (if any) * Truncate the file name to avoid a wait for return. @@ -7277,7 +7294,7 @@ ins_ctrl_g() break; /* CTRL-G u: start new undoable edit */ - case 'u': u_sync(); + case 'u': u_sync(TRUE); ins_need_undo = TRUE; /* Need to reset Insstart, esp. because a BS that joins diff --git a/src/ex_cmds.c b/src/ex_cmds.c --- a/src/ex_cmds.c +++ b/src/ex_cmds.c @@ -3253,7 +3253,7 @@ do_ecmd(fnum, ffname, sfname, eap, newln buf_copy_options(buf, BCO_ENTER); /* close the link to the current buffer */ - u_sync(); + u_sync(FALSE); close_buffer(curwin, curbuf, (flags & ECMD_HIDE) ? 0 : DOBUF_UNLOAD); @@ -4289,7 +4289,7 @@ do_sub(eap) if (!do_count && !curbuf->b_p_ma) { - /* Substitusion is not allowed in non-'modifiable' buffer */ + /* Substitution is not allowed in non-'modifiable' buffer */ EMSG(_(e_modifiable)); return; } @@ -6919,12 +6919,7 @@ ex_drop(eap) if (wp->w_buffer == buf) { # ifdef FEAT_WINDOWS - goto_tabpage_tp(tp); - win_enter(wp, TRUE); -# ifdef FEAT_GUI_TABLINE - if (gui_use_tabline()) - gui_mch_set_curtab(tabpage_index(curtab)); -# endif + goto_tabpage_win(tp, wp); # endif curwin->w_arg_idx = 0; return; diff --git a/src/getchar.c b/src/getchar.c --- a/src/getchar.c +++ b/src/getchar.c @@ -1201,8 +1201,8 @@ gotchars(s, len) may_sync_undo() { if ((!(State & (INSERT + CMDLINE)) || arrow_used) - && scriptin[curscript] == NULL && no_u_sync == 0) - u_sync(); + && scriptin[curscript] == NULL) + u_sync(FALSE); } /* diff --git a/src/gui.c b/src/gui.c --- a/src/gui.c +++ b/src/gui.c @@ -4931,8 +4931,7 @@ gui_do_findrepl(flags, find_text, repl_t if (u_save_cursor() == OK) { /* A button was pressed thus undo should be synced. */ - if (no_u_sync == 0) - u_sync(); + u_sync(FALSE); del_bytes((long)(regmatch.endp[0] - regmatch.startp[0]), FALSE, FALSE); @@ -4948,8 +4947,7 @@ gui_do_findrepl(flags, find_text, repl_t if (type == FRD_REPLACEALL) { /* A button was pressed, thus undo should be synced. */ - if (no_u_sync == 0) - u_sync(); + u_sync(FALSE); do_cmdline_cmd(ga.ga_data); } else diff --git a/src/option.c b/src/option.c --- a/src/option.c +++ b/src/option.c @@ -2811,7 +2811,7 @@ static char *(p_bsdir_values[]) = {"curr #ifdef FEAT_SCROLLBIND static char *(p_scbopt_values[]) = {"ver", "hor", "jump", NULL}; #endif -static char *(p_swb_values[]) = {"useopen", "split", NULL}; +static char *(p_swb_values[]) = {"useopen", "usetab", "split", NULL}; static char *(p_debug_values[]) = {"msg", "beep", NULL}; #ifdef FEAT_VERTSPLIT static char *(p_ead_values[]) = {"both", "ver", "hor", NULL}; @@ -7767,7 +7767,7 @@ set_num_option(opt_idx, varp, value, err { /* use the old value, otherwise u_sync() may not work properly */ p_ul = old_value; - u_sync(); + u_sync(TRUE); p_ul = value; } diff --git a/src/popupmnu.c b/src/popupmnu.c --- a/src/popupmnu.c +++ b/src/popupmnu.c @@ -427,18 +427,24 @@ pum_set_selected(n) while (!bufempty()) ml_delete((linenr_T)1, FALSE); } - else if ((res = do_ecmd(0, NULL, NULL, NULL, ECMD_ONE, 0)) - == OK) + else { - /* Edit a new, empty buffer. Set options for a "wipeout" - * buffer. */ - set_option_value((char_u *)"swf", 0L, NULL, OPT_LOCAL); - set_option_value((char_u *)"bt", 0L, (char_u *)"nofile", - OPT_LOCAL); - set_option_value((char_u *)"bh", 0L, (char_u *)"wipe", - OPT_LOCAL); - set_option_value((char_u *)"diff", 0L, (char_u *)"", - OPT_LOCAL); + /* Don't want to sync undo in the current buffer. */ + ++no_u_sync; + res = do_ecmd(0, NULL, NULL, NULL, ECMD_ONE, 0); + --no_u_sync; + if (res == OK) + { + /* Edit a new, empty buffer. Set options for a "wipeout" + * buffer. */ + set_option_value((char_u *)"swf", 0L, NULL, OPT_LOCAL); + set_option_value((char_u *)"bt", 0L, + (char_u *)"nofile", OPT_LOCAL); + set_option_value((char_u *)"bh", 0L, + (char_u *)"wipe", OPT_LOCAL); + set_option_value((char_u *)"diff", 0L, + (char_u *)"", OPT_LOCAL); + } } if (res == OK) { diff --git a/src/proto/ex_cmds.pro b/src/proto/ex_cmds.pro --- a/src/proto/ex_cmds.pro +++ b/src/proto/ex_cmds.pro @@ -1,59 +1,59 @@ /* ex_cmds.c */ -void do_ascii __ARGS((exarg_T *eap)); -void ex_align __ARGS((exarg_T *eap)); -void ex_sort __ARGS((exarg_T *eap)); -void ex_retab __ARGS((exarg_T *eap)); -int do_move __ARGS((linenr_T line1, linenr_T line2, linenr_T dest)); -void ex_copy __ARGS((linenr_T line1, linenr_T line2, linenr_T n)); -void free_prev_shellcmd __ARGS((void)); -void do_bang __ARGS((int addr_count, exarg_T *eap, int forceit, int do_in, int do_out)); -void do_shell __ARGS((char_u *cmd, int flags)); -char_u *make_filter_cmd __ARGS((char_u *cmd, char_u *itmp, char_u *otmp)); -void append_redir __ARGS((char_u *buf, char_u *opt, char_u *fname)); -int viminfo_error __ARGS((char *errnum, char *message, char_u *line)); -int read_viminfo __ARGS((char_u *file, int want_info, int want_marks, int forceit)); -void write_viminfo __ARGS((char_u *file, int forceit)); -int viminfo_readline __ARGS((vir_T *virp)); -char_u *viminfo_readstring __ARGS((vir_T *virp, int off, int convert)); -void viminfo_writestring __ARGS((FILE *fd, char_u *p)); -void do_fixdel __ARGS((exarg_T *eap)); -void print_line_no_prefix __ARGS((linenr_T lnum, int use_number, int list)); -void print_line __ARGS((linenr_T lnum, int use_number, int list)); -void ex_file __ARGS((exarg_T *eap)); -void ex_update __ARGS((exarg_T *eap)); -void ex_write __ARGS((exarg_T *eap)); -int do_write __ARGS((exarg_T *eap)); -void ex_wnext __ARGS((exarg_T *eap)); -void do_wqall __ARGS((exarg_T *eap)); -int not_writing __ARGS((void)); -int getfile __ARGS((int fnum, char_u *ffname, char_u *sfname, int setpm, linenr_T lnum, int forceit)); -int do_ecmd __ARGS((int fnum, char_u *ffname, char_u *sfname, exarg_T *eap, linenr_T newlnum, int flags)); -void ex_append __ARGS((exarg_T *eap)); -void ex_change __ARGS((exarg_T *eap)); -void ex_z __ARGS((exarg_T *eap)); -int check_restricted __ARGS((void)); -int check_secure __ARGS((void)); -void do_sub __ARGS((exarg_T *eap)); -int do_sub_msg __ARGS((int count_only)); -void ex_global __ARGS((exarg_T *eap)); -void global_exe __ARGS((char_u *cmd)); -int read_viminfo_sub_string __ARGS((vir_T *virp, int force)); -void write_viminfo_sub_string __ARGS((FILE *fp)); -void free_old_sub __ARGS((void)); -int prepare_tagpreview __ARGS((int undo_sync)); -void ex_help __ARGS((exarg_T *eap)); -char_u *check_help_lang __ARGS((char_u *arg)); -int help_heuristic __ARGS((char_u *matched_string, int offset, int wrong_case)); -int find_help_tags __ARGS((char_u *arg, int *num_matches, char_u ***matches, int keep_lang)); -void fix_help_buffer __ARGS((void)); -void ex_exusage __ARGS((exarg_T *eap)); -void ex_viusage __ARGS((exarg_T *eap)); -void ex_helptags __ARGS((exarg_T *eap)); -void ex_sign __ARGS((exarg_T *eap)); -void sign_gui_started __ARGS((void)); -int sign_get_attr __ARGS((int typenr, int line)); -char_u *sign_get_text __ARGS((int typenr)); -void *sign_get_image __ARGS((int typenr)); -char_u *sign_typenr2name __ARGS((int typenr)); -void ex_drop __ARGS((exarg_T *eap)); +extern void do_ascii __ARGS((exarg_T *eap)); +extern void ex_align __ARGS((exarg_T *eap)); +extern void ex_sort __ARGS((exarg_T *eap)); +extern void ex_retab __ARGS((exarg_T *eap)); +extern int do_move __ARGS((linenr_T line1, linenr_T line2, linenr_T dest)); +extern void ex_copy __ARGS((linenr_T line1, linenr_T line2, linenr_T n)); +extern void free_prev_shellcmd __ARGS((void)); +extern void do_bang __ARGS((int addr_count, exarg_T *eap, int forceit, int do_in, int do_out)); +extern void do_shell __ARGS((char_u *cmd, int flags)); +extern char_u *make_filter_cmd __ARGS((char_u *cmd, char_u *itmp, char_u *otmp)); +extern void append_redir __ARGS((char_u *buf, char_u *opt, char_u *fname)); +extern int viminfo_error __ARGS((char *errnum, char *message, char_u *line)); +extern int read_viminfo __ARGS((char_u *file, int want_info, int want_marks, int forceit)); +extern void write_viminfo __ARGS((char_u *file, int forceit)); +extern int viminfo_readline __ARGS((vir_T *virp)); +extern char_u *viminfo_readstring __ARGS((vir_T *virp, int off, int convert)); +extern void viminfo_writestring __ARGS((FILE *fd, char_u *p)); +extern void do_fixdel __ARGS((exarg_T *eap)); +extern void print_line_no_prefix __ARGS((linenr_T lnum, int use_number, int list)); +extern void print_line __ARGS((linenr_T lnum, int use_number, int list)); +extern void ex_file __ARGS((exarg_T *eap)); +extern void ex_update __ARGS((exarg_T *eap)); +extern void ex_write __ARGS((exarg_T *eap)); +extern int do_write __ARGS((exarg_T *eap)); +extern void ex_wnext __ARGS((exarg_T *eap)); +extern void do_wqall __ARGS((exarg_T *eap)); +extern int not_writing __ARGS((void)); +extern int getfile __ARGS((int fnum, char_u *ffname, char_u *sfname, int setpm, linenr_T lnum, int forceit)); +extern int do_ecmd __ARGS((int fnum, char_u *ffname, char_u *sfname, exarg_T *eap, linenr_T newlnum, int flags)); +extern void ex_append __ARGS((exarg_T *eap)); +extern void ex_change __ARGS((exarg_T *eap)); +extern void ex_z __ARGS((exarg_T *eap)); +extern int check_restricted __ARGS((void)); +extern int check_secure __ARGS((void)); +extern void do_sub __ARGS((exarg_T *eap)); +extern int do_sub_msg __ARGS((int count_only)); +extern void ex_global __ARGS((exarg_T *eap)); +extern void global_exe __ARGS((char_u *cmd)); +extern int read_viminfo_sub_string __ARGS((vir_T *virp, int force)); +extern void write_viminfo_sub_string __ARGS((FILE *fp)); +extern void free_old_sub __ARGS((void)); +extern int prepare_tagpreview __ARGS((int undo_sync)); +extern void ex_help __ARGS((exarg_T *eap)); +extern char_u *check_help_lang __ARGS((char_u *arg)); +extern int help_heuristic __ARGS((char_u *matched_string, int offset, int wrong_case)); +extern int find_help_tags __ARGS((char_u *arg, int *num_matches, char_u ***matches, int keep_lang)); +extern void fix_help_buffer __ARGS((void)); +extern void ex_exusage __ARGS((exarg_T *eap)); +extern void ex_viusage __ARGS((exarg_T *eap)); +extern void ex_helptags __ARGS((exarg_T *eap)); +extern void ex_sign __ARGS((exarg_T *eap)); +extern void sign_gui_started __ARGS((void)); +extern int sign_get_attr __ARGS((int typenr, int line)); +extern char_u *sign_get_text __ARGS((int typenr)); +extern void *sign_get_image __ARGS((int typenr)); +extern char_u *sign_typenr2name __ARGS((int typenr)); +extern void ex_drop __ARGS((exarg_T *eap)); /* vim: set ft=c : */ diff --git a/src/proto/ex_getln.pro b/src/proto/ex_getln.pro --- a/src/proto/ex_getln.pro +++ b/src/proto/ex_getln.pro @@ -1,54 +1,54 @@ /* ex_getln.c */ -char_u *getcmdline __ARGS((int firstc, long count, int indent)); -char_u *getcmdline_prompt __ARGS((int firstc, char_u *prompt, int attr, int xp_context, char_u *xp_arg)); -int text_locked __ARGS((void)); -void text_locked_msg __ARGS((void)); -int curbuf_locked __ARGS((void)); -char_u *getexline __ARGS((int c, void *dummy, int indent)); -char_u *getexmodeline __ARGS((int promptc, void *dummy, int indent)); -int cmdline_overstrike __ARGS((void)); -int cmdline_at_end __ARGS((void)); -colnr_T cmdline_getvcol_cursor __ARGS((void)); -void free_cmdline_buf __ARGS((void)); -void putcmdline __ARGS((int c, int shift)); -void unputcmdline __ARGS((void)); -int put_on_cmdline __ARGS((char_u *str, int len, int redraw)); -void cmdline_paste_str __ARGS((char_u *s, int literally)); -void redrawcmdline __ARGS((void)); -void redrawcmd __ARGS((void)); -void compute_cmdrow __ARGS((void)); -void gotocmdline __ARGS((int clr)); -char_u *ExpandOne __ARGS((expand_T *xp, char_u *str, char_u *orig, int options, int mode)); -void ExpandInit __ARGS((expand_T *xp)); -void ExpandCleanup __ARGS((expand_T *xp)); -void ExpandEscape __ARGS((expand_T *xp, char_u *str, int numfiles, char_u **files, int options)); -void tilde_replace __ARGS((char_u *orig_pat, int num_files, char_u **files)); -char_u *sm_gettail __ARGS((char_u *s)); -char_u *addstar __ARGS((char_u *fname, int len, int context)); -void set_cmd_context __ARGS((expand_T *xp, char_u *str, int len, int col)); -int expand_cmdline __ARGS((expand_T *xp, char_u *str, int col, int *matchcount, char_u ***matches)); -int ExpandGeneric __ARGS((expand_T *xp, regmatch_T *regmatch, int *num_file, char_u ***file, char_u *((*func)(expand_T *, int)))); -char_u *globpath __ARGS((char_u *path, char_u *file)); -void init_history __ARGS((void)); -int get_histtype __ARGS((char_u *name)); -void add_to_history __ARGS((int histype, char_u *new_entry, int in_map, int sep)); -int get_history_idx __ARGS((int histype)); -char_u *get_cmdline_str __ARGS((void)); -int get_cmdline_pos __ARGS((void)); -int set_cmdline_pos __ARGS((int pos)); -int get_cmdline_type __ARGS((void)); -char_u *get_history_entry __ARGS((int histype, int idx)); -int clr_history __ARGS((int histype)); -int del_history_entry __ARGS((int histype, char_u *str)); -int del_history_idx __ARGS((int histype, int idx)); -void remove_key_from_history __ARGS((void)); -int get_list_range __ARGS((char_u **str, int *num1, int *num2)); -void ex_history __ARGS((exarg_T *eap)); -void prepare_viminfo_history __ARGS((int asklen)); -int read_viminfo_history __ARGS((vir_T *virp)); -void finish_viminfo_history __ARGS((void)); -void write_viminfo_history __ARGS((FILE *fp)); -void cmd_pchar __ARGS((int c, int offset)); -int cmd_gchar __ARGS((int offset)); -char_u *script_get __ARGS((exarg_T *eap, char_u *cmd)); +extern char_u *getcmdline __ARGS((int firstc, long count, int indent)); +extern char_u *getcmdline_prompt __ARGS((int firstc, char_u *prompt, int attr, int xp_context, char_u *xp_arg)); +extern int text_locked __ARGS((void)); +extern void text_locked_msg __ARGS((void)); +extern int curbuf_locked __ARGS((void)); +extern char_u *getexline __ARGS((int c, void *dummy, int indent)); +extern char_u *getexmodeline __ARGS((int promptc, void *dummy, int indent)); +extern int cmdline_overstrike __ARGS((void)); +extern int cmdline_at_end __ARGS((void)); +extern colnr_T cmdline_getvcol_cursor __ARGS((void)); +extern void free_cmdline_buf __ARGS((void)); +extern void putcmdline __ARGS((int c, int shift)); +extern void unputcmdline __ARGS((void)); +extern int put_on_cmdline __ARGS((char_u *str, int len, int redraw)); +extern void cmdline_paste_str __ARGS((char_u *s, int literally)); +extern void redrawcmdline __ARGS((void)); +extern void redrawcmd __ARGS((void)); +extern void compute_cmdrow __ARGS((void)); +extern void gotocmdline __ARGS((int clr)); +extern char_u *ExpandOne __ARGS((expand_T *xp, char_u *str, char_u *orig, int options, int mode)); +extern void ExpandInit __ARGS((expand_T *xp)); +extern void ExpandCleanup __ARGS((expand_T *xp)); +extern void ExpandEscape __ARGS((expand_T *xp, char_u *str, int numfiles, char_u **files, int options)); +extern void tilde_replace __ARGS((char_u *orig_pat, int num_files, char_u **files)); +extern char_u *sm_gettail __ARGS((char_u *s)); +extern char_u *addstar __ARGS((char_u *fname, int len, int context)); +extern void set_cmd_context __ARGS((expand_T *xp, char_u *str, int len, int col)); +extern int expand_cmdline __ARGS((expand_T *xp, char_u *str, int col, int *matchcount, char_u ***matches)); +extern int ExpandGeneric __ARGS((expand_T *xp, regmatch_T *regmatch, int *num_file, char_u ***file, char_u *((*func)(expand_T *, int)))); +extern char_u *globpath __ARGS((char_u *path, char_u *file)); +extern void init_history __ARGS((void)); +extern int get_histtype __ARGS((char_u *name)); +extern void add_to_history __ARGS((int histype, char_u *new_entry, int in_map, int sep)); +extern int get_history_idx __ARGS((int histype)); +extern char_u *get_cmdline_str __ARGS((void)); +extern int get_cmdline_pos __ARGS((void)); +extern int set_cmdline_pos __ARGS((int pos)); +extern int get_cmdline_type __ARGS((void)); +extern char_u *get_history_entry __ARGS((int histype, int idx)); +extern int clr_history __ARGS((int histype)); +extern int del_history_entry __ARGS((int histype, char_u *str)); +extern int del_history_idx __ARGS((int histype, int idx)); +extern void remove_key_from_history __ARGS((void)); +extern int get_list_range __ARGS((char_u **str, int *num1, int *num2)); +extern void ex_history __ARGS((exarg_T *eap)); +extern void prepare_viminfo_history __ARGS((int asklen)); +extern int read_viminfo_history __ARGS((vir_T *virp)); +extern void finish_viminfo_history __ARGS((void)); +extern void write_viminfo_history __ARGS((FILE *fp)); +extern void cmd_pchar __ARGS((int c, int offset)); +extern int cmd_gchar __ARGS((int offset)); +extern char_u *script_get __ARGS((exarg_T *eap, char_u *cmd)); /* vim: set ft=c : */ diff --git a/src/proto/gui_motif.pro b/src/proto/gui_motif.pro --- a/src/proto/gui_motif.pro +++ b/src/proto/gui_motif.pro @@ -1,46 +1,46 @@ /* gui_motif.c */ -void gui_x11_create_widgets __ARGS((void)); -void gui_x11_destroy_widgets __ARGS((void)); -void gui_mch_set_text_area_pos __ARGS((int x, int y, int w, int h)); -void gui_x11_set_back_color __ARGS((void)); -void manage_centered __ARGS((Widget dialog_child)); -XmFontList gui_motif_create_fontlist __ARGS((XFontStruct *font)); -XmFontList gui_motif_fontset2fontlist __ARGS((XFontSet *fontset)); -void gui_mch_enable_menu __ARGS((int flag)); -void gui_motif_set_mnemonics __ARGS((int enable)); -void gui_mch_add_menu __ARGS((vimmenu_T *menu, int idx)); -void gui_mch_toggle_tearoffs __ARGS((int enable)); -int gui_mch_text_area_extra_height __ARGS((void)); -void gui_mch_compute_menu_height __ARGS((Widget id)); -void gui_mch_add_menu_item __ARGS((vimmenu_T *menu, int idx)); -void gui_motif_update_mousemodel __ARGS((vimmenu_T *menu)); -void gui_mch_new_menu_colors __ARGS((void)); -void gui_mch_new_menu_font __ARGS((void)); -void gui_mch_new_tooltip_font __ARGS((void)); -void gui_mch_new_tooltip_colors __ARGS((void)); -void gui_mch_destroy_menu __ARGS((vimmenu_T *menu)); -void gui_mch_show_popupmenu __ARGS((vimmenu_T *menu)); -void gui_mch_def_colors __ARGS((void)); -void gui_mch_set_scrollbar_thumb __ARGS((scrollbar_T *sb, long val, long size, long max)); -void gui_mch_set_scrollbar_pos __ARGS((scrollbar_T *sb, int x, int y, int w, int h)); -void gui_mch_enable_scrollbar __ARGS((scrollbar_T *sb, int flag)); -void gui_mch_create_scrollbar __ARGS((scrollbar_T *sb, int orient)); -void gui_mch_destroy_scrollbar __ARGS((scrollbar_T *sb)); -void gui_mch_set_scrollbar_colors __ARGS((scrollbar_T *sb)); -Window gui_x11_get_wid __ARGS((void)); -char_u *gui_mch_browse __ARGS((int saving, char_u *title, char_u *dflt, char_u *ext, char_u *initdir, char_u *filter)); -int gui_mch_dialog __ARGS((int type, char_u *title, char_u *message, char_u *button_names, int dfltbutton, char_u *textfield)); -void gui_mch_enable_footer __ARGS((int showit)); -void gui_mch_set_footer __ARGS((char_u *s)); -void gui_mch_show_toolbar __ARGS((int showit)); -int gui_mch_compute_toolbar_height __ARGS((void)); -void motif_get_toolbar_colors __ARGS((Pixel *bgp, Pixel *fgp, Pixel *bsp, Pixel *tsp, Pixel *hsp)); -void gui_mch_show_tabline __ARGS((int showit)); -int gui_mch_showing_tabline __ARGS((void)); -void gui_mch_update_tabline __ARGS((void)); -void gui_mch_set_curtab __ARGS((int nr)); -void gui_motif_menu_fontlist __ARGS((Widget id)); -void gui_mch_find_dialog __ARGS((exarg_T *eap)); -void gui_mch_replace_dialog __ARGS((exarg_T *eap)); -void gui_motif_synch_fonts __ARGS((void)); +extern void gui_x11_create_widgets __ARGS((void)); +extern void gui_x11_destroy_widgets __ARGS((void)); +extern void gui_mch_set_text_area_pos __ARGS((int x, int y, int w, int h)); +extern void gui_x11_set_back_color __ARGS((void)); +extern void manage_centered __ARGS((Widget dialog_child)); +extern XmFontList gui_motif_create_fontlist __ARGS((XFontStruct *font)); +extern XmFontList gui_motif_fontset2fontlist __ARGS((XFontSet *fontset)); +extern void gui_mch_enable_menu __ARGS((int flag)); +extern void gui_motif_set_mnemonics __ARGS((int enable)); +extern void gui_mch_add_menu __ARGS((vimmenu_T *menu, int idx)); +extern void gui_mch_toggle_tearoffs __ARGS((int enable)); +extern int gui_mch_text_area_extra_height __ARGS((void)); +extern void gui_mch_compute_menu_height __ARGS((Widget id)); +extern void gui_mch_add_menu_item __ARGS((vimmenu_T *menu, int idx)); +extern void gui_motif_update_mousemodel __ARGS((vimmenu_T *menu)); +extern void gui_mch_new_menu_colors __ARGS((void)); +extern void gui_mch_new_menu_font __ARGS((void)); +extern void gui_mch_new_tooltip_font __ARGS((void)); +extern void gui_mch_new_tooltip_colors __ARGS((void)); +extern void gui_mch_destroy_menu __ARGS((vimmenu_T *menu)); +extern void gui_mch_show_popupmenu __ARGS((vimmenu_T *menu)); +extern void gui_mch_def_colors __ARGS((void)); +extern void gui_mch_set_scrollbar_thumb __ARGS((scrollbar_T *sb, long val, long size, long max)); +extern void gui_mch_set_scrollbar_pos __ARGS((scrollbar_T *sb, int x, int y, int w, int h)); +extern void gui_mch_enable_scrollbar __ARGS((scrollbar_T *sb, int flag)); +extern void gui_mch_create_scrollbar __ARGS((scrollbar_T *sb, int orient)); +extern void gui_mch_destroy_scrollbar __ARGS((scrollbar_T *sb)); +extern void gui_mch_set_scrollbar_colors __ARGS((scrollbar_T *sb)); +extern Window gui_x11_get_wid __ARGS((void)); +extern char_u *gui_mch_browse __ARGS((int saving, char_u *title, char_u *dflt, char_u *ext, char_u *initdir, char_u *filter)); +extern int gui_mch_dialog __ARGS((int type, char_u *title, char_u *message, char_u *button_names, int dfltbutton, char_u *textfield)); +extern void gui_mch_enable_footer __ARGS((int showit)); +extern void gui_mch_set_footer __ARGS((char_u *s)); +extern void gui_mch_show_toolbar __ARGS((int showit)); +extern int gui_mch_compute_toolbar_height __ARGS((void)); +extern void motif_get_toolbar_colors __ARGS((Pixel *bgp, Pixel *fgp, Pixel *bsp, Pixel *tsp, Pixel *hsp)); +extern void gui_mch_show_tabline __ARGS((int showit)); +extern int gui_mch_showing_tabline __ARGS((void)); +extern void gui_mch_update_tabline __ARGS((void)); +extern void gui_mch_set_curtab __ARGS((int nr)); +extern void gui_motif_menu_fontlist __ARGS((Widget id)); +extern void gui_mch_find_dialog __ARGS((exarg_T *eap)); +extern void gui_mch_replace_dialog __ARGS((exarg_T *eap)); +extern void gui_motif_synch_fonts __ARGS((void)); /* vim: set ft=c : */ diff --git a/src/proto/misc1.pro b/src/proto/misc1.pro --- a/src/proto/misc1.pro +++ b/src/proto/misc1.pro @@ -1,95 +1,95 @@ /* misc1.c */ -int get_indent __ARGS((void)); -int get_indent_lnum __ARGS((linenr_T lnum)); -int get_indent_buf __ARGS((buf_T *buf, linenr_T lnum)); -int get_indent_str __ARGS((char_u *ptr, int ts)); -int set_indent __ARGS((int size, int flags)); -int get_number_indent __ARGS((linenr_T lnum)); -int open_line __ARGS((int dir, int flags, int old_indent)); -int get_leader_len __ARGS((char_u *line, char_u **flags, int backward)); -int plines __ARGS((linenr_T lnum)); -int plines_win __ARGS((win_T *wp, linenr_T lnum, int winheight)); -int plines_nofill __ARGS((linenr_T lnum)); -int plines_win_nofill __ARGS((win_T *wp, linenr_T lnum, int winheight)); -int plines_win_nofold __ARGS((win_T *wp, linenr_T lnum)); -int plines_win_col __ARGS((win_T *wp, linenr_T lnum, long column)); -int plines_m_win __ARGS((win_T *wp, linenr_T first, linenr_T last)); -void ins_bytes __ARGS((char_u *p)); -void ins_bytes_len __ARGS((char_u *p, int len)); -void ins_char __ARGS((int c)); -void ins_char_bytes __ARGS((char_u *buf, int charlen)); -void ins_str __ARGS((char_u *s)); -int del_char __ARGS((int fixpos)); -int del_chars __ARGS((long count, int fixpos)); -int del_bytes __ARGS((long count, int fixpos_arg, int use_delcombine)); -int truncate_line __ARGS((int fixpos)); -void del_lines __ARGS((long nlines, int undo)); -int gchar_pos __ARGS((pos_T *pos)); -int gchar_cursor __ARGS((void)); -void pchar_cursor __ARGS((int c)); -int inindent __ARGS((int extra)); -char_u *skip_to_option_part __ARGS((char_u *p)); -void changed __ARGS((void)); -void changed_bytes __ARGS((linenr_T lnum, colnr_T col)); -void appended_lines __ARGS((linenr_T lnum, long count)); -void appended_lines_mark __ARGS((linenr_T lnum, long count)); -void deleted_lines __ARGS((linenr_T lnum, long count)); -void deleted_lines_mark __ARGS((linenr_T lnum, long count)); -void changed_lines __ARGS((linenr_T lnum, colnr_T col, linenr_T lnume, long xtra)); -void unchanged __ARGS((buf_T *buf, int ff)); -void check_status __ARGS((buf_T *buf)); -void change_warning __ARGS((int col)); -int ask_yesno __ARGS((char_u *str, int direct)); -int get_keystroke __ARGS((void)); -int get_number __ARGS((int colon, int *mouse_used)); -int prompt_for_number __ARGS((int *mouse_used)); -void msgmore __ARGS((long n)); -void beep_flush __ARGS((void)); -void vim_beep __ARGS((void)); -void init_homedir __ARGS((void)); -void free_homedir __ARGS((void)); -void expand_env __ARGS((char_u *src, char_u *dst, int dstlen)); -void expand_env_esc __ARGS((char_u *srcp, char_u *dst, int dstlen, int esc, char_u *startstr)); -char_u *vim_getenv __ARGS((char_u *name, int *mustfree)); -char_u *expand_env_save __ARGS((char_u *src)); -void vim_setenv __ARGS((char_u *name, char_u *val)); -char_u *get_env_name __ARGS((expand_T *xp, int idx)); -void home_replace __ARGS((buf_T *buf, char_u *src, char_u *dst, int dstlen, int one)); -char_u *home_replace_save __ARGS((buf_T *buf, char_u *src)); -int fullpathcmp __ARGS((char_u *s1, char_u *s2, int checkname)); -char_u *gettail __ARGS((char_u *fname)); -char_u *gettail_sep __ARGS((char_u *fname)); -char_u *getnextcomp __ARGS((char_u *fname)); -char_u *get_past_head __ARGS((char_u *path)); -int vim_ispathsep __ARGS((int c)); -int vim_ispathlistsep __ARGS((int c)); -void shorten_dir __ARGS((char_u *str)); -int dir_of_file_exists __ARGS((char_u *fname)); -int vim_fnamecmp __ARGS((char_u *x, char_u *y)); -int vim_fnamencmp __ARGS((char_u *x, char_u *y, size_t len)); -char_u *concat_fnames __ARGS((char_u *fname1, char_u *fname2, int sep)); -char_u *concat_str __ARGS((char_u *str1, char_u *str2)); -void add_pathsep __ARGS((char_u *p)); -char_u *FullName_save __ARGS((char_u *fname, int force)); -pos_T *find_start_comment __ARGS((int ind_maxcomment)); -void do_c_expr_indent __ARGS((void)); -int cin_islabel __ARGS((int ind_maxcomment)); -int cin_iscase __ARGS((char_u *s)); -int cin_isscopedecl __ARGS((char_u *s)); -int get_c_indent __ARGS((void)); -int get_expr_indent __ARGS((void)); -int get_lisp_indent __ARGS((void)); -void prepare_to_exit __ARGS((void)); -void preserve_exit __ARGS((void)); -int vim_fexists __ARGS((char_u *fname)); -void line_breakcheck __ARGS((void)); -void fast_breakcheck __ARGS((void)); -int expand_wildcards __ARGS((int num_pat, char_u **pat, int *num_file, char_u ***file, int flags)); -int match_suffix __ARGS((char_u *fname)); -int unix_expandpath __ARGS((garray_T *gap, char_u *path, int wildoff, int flags, int didstar)); -int gen_expand_wildcards __ARGS((int num_pat, char_u **pat, int *num_file, char_u ***file, int flags)); -void addfile __ARGS((garray_T *gap, char_u *f, int flags)); -char_u *get_cmd_output __ARGS((char_u *cmd, char_u *infile, int flags)); -void FreeWild __ARGS((int count, char_u **files)); -int goto_im __ARGS((void)); +extern int get_indent __ARGS((void)); +extern int get_indent_lnum __ARGS((linenr_T lnum)); +extern int get_indent_buf __ARGS((buf_T *buf, linenr_T lnum)); +extern int get_indent_str __ARGS((char_u *ptr, int ts)); +extern int set_indent __ARGS((int size, int flags)); +extern int get_number_indent __ARGS((linenr_T lnum)); +extern int open_line __ARGS((int dir, int flags, int old_indent)); +extern int get_leader_len __ARGS((char_u *line, char_u **flags, int backward)); +extern int plines __ARGS((linenr_T lnum)); +extern int plines_win __ARGS((win_T *wp, linenr_T lnum, int winheight)); +extern int plines_nofill __ARGS((linenr_T lnum)); +extern int plines_win_nofill __ARGS((win_T *wp, linenr_T lnum, int winheight)); +extern int plines_win_nofold __ARGS((win_T *wp, linenr_T lnum)); +extern int plines_win_col __ARGS((win_T *wp, linenr_T lnum, long column)); +extern int plines_m_win __ARGS((win_T *wp, linenr_T first, linenr_T last)); +extern void ins_bytes __ARGS((char_u *p)); +extern void ins_bytes_len __ARGS((char_u *p, int len)); +extern void ins_char __ARGS((int c)); +extern void ins_char_bytes __ARGS((char_u *buf, int charlen)); +extern void ins_str __ARGS((char_u *s)); +extern int del_char __ARGS((int fixpos)); +extern int del_chars __ARGS((long count, int fixpos)); +extern int del_bytes __ARGS((long count, int fixpos_arg, int use_delcombine)); +extern int truncate_line __ARGS((int fixpos)); +extern void del_lines __ARGS((long nlines, int undo)); +extern int gchar_pos __ARGS((pos_T *pos)); +extern int gchar_cursor __ARGS((void)); +extern void pchar_cursor __ARGS((int c)); +extern int inindent __ARGS((int extra)); +extern char_u *skip_to_option_part __ARGS((char_u *p)); +extern void changed __ARGS((void)); +extern void changed_bytes __ARGS((linenr_T lnum, colnr_T col)); +extern void appended_lines __ARGS((linenr_T lnum, long count)); +extern void appended_lines_mark __ARGS((linenr_T lnum, long count)); +extern void deleted_lines __ARGS((linenr_T lnum, long count)); +extern void deleted_lines_mark __ARGS((linenr_T lnum, long count)); +extern void changed_lines __ARGS((linenr_T lnum, colnr_T col, linenr_T lnume, long xtra)); +extern void unchanged __ARGS((buf_T *buf, int ff)); +extern void check_status __ARGS((buf_T *buf)); +extern void change_warning __ARGS((int col)); +extern int ask_yesno __ARGS((char_u *str, int direct)); +extern int get_keystroke __ARGS((void)); +extern int get_number __ARGS((int colon, int *mouse_used)); +extern int prompt_for_number __ARGS((int *mouse_used)); +extern void msgmore __ARGS((long n)); +extern void beep_flush __ARGS((void)); +extern void vim_beep __ARGS((void)); +extern void init_homedir __ARGS((void)); +extern void free_homedir __ARGS((void)); +extern void expand_env __ARGS((char_u *src, char_u *dst, int dstlen)); +extern void expand_env_esc __ARGS((char_u *srcp, char_u *dst, int dstlen, int esc, char_u *startstr)); +extern char_u *vim_getenv __ARGS((char_u *name, int *mustfree)); +extern char_u *expand_env_save __ARGS((char_u *src)); +extern void vim_setenv __ARGS((char_u *name, char_u *val)); +extern char_u *get_env_name __ARGS((expand_T *xp, int idx)); +extern void home_replace __ARGS((buf_T *buf, char_u *src, char_u *dst, int dstlen, int one)); +extern char_u *home_replace_save __ARGS((buf_T *buf, char_u *src)); +extern int fullpathcmp __ARGS((char_u *s1, char_u *s2, int checkname)); +extern char_u *gettail __ARGS((char_u *fname)); +extern char_u *gettail_sep __ARGS((char_u *fname)); +extern char_u *getnextcomp __ARGS((char_u *fname)); +extern char_u *get_past_head __ARGS((char_u *path)); +extern int vim_ispathsep __ARGS((int c)); +extern int vim_ispathlistsep __ARGS((int c)); +extern void shorten_dir __ARGS((char_u *str)); +extern int dir_of_file_exists __ARGS((char_u *fname)); +extern int vim_fnamecmp __ARGS((char_u *x, char_u *y)); +extern int vim_fnamencmp __ARGS((char_u *x, char_u *y, size_t len)); +extern char_u *concat_fnames __ARGS((char_u *fname1, char_u *fname2, int sep)); +extern char_u *concat_str __ARGS((char_u *str1, char_u *str2)); +extern void add_pathsep __ARGS((char_u *p)); +extern char_u *FullName_save __ARGS((char_u *fname, int force)); +extern pos_T *find_start_comment __ARGS((int ind_maxcomment)); +extern void do_c_expr_indent __ARGS((void)); +extern int cin_islabel __ARGS((int ind_maxcomment)); +extern int cin_iscase __ARGS((char_u *s)); +extern int cin_isscopedecl __ARGS((char_u *s)); +extern int get_c_indent __ARGS((void)); +extern int get_expr_indent __ARGS((void)); +extern int get_lisp_indent __ARGS((void)); +extern void prepare_to_exit __ARGS((void)); +extern void preserve_exit __ARGS((void)); +extern int vim_fexists __ARGS((char_u *fname)); +extern void line_breakcheck __ARGS((void)); +extern void fast_breakcheck __ARGS((void)); +extern int expand_wildcards __ARGS((int num_pat, char_u **pat, int *num_file, char_u ***file, int flags)); +extern int match_suffix __ARGS((char_u *fname)); +extern int unix_expandpath __ARGS((garray_T *gap, char_u *path, int wildoff, int flags, int didstar)); +extern int gen_expand_wildcards __ARGS((int num_pat, char_u **pat, int *num_file, char_u ***file, int flags)); +extern void addfile __ARGS((garray_T *gap, char_u *f, int flags)); +extern char_u *get_cmd_output __ARGS((char_u *cmd, char_u *infile, int flags)); +extern void FreeWild __ARGS((int count, char_u **files)); +extern int goto_im __ARGS((void)); /* vim: set ft=c : */ diff --git a/src/proto/option.pro b/src/proto/option.pro --- a/src/proto/option.pro +++ b/src/proto/option.pro @@ -1,56 +1,56 @@ /* option.c */ -void set_init_1 __ARGS((void)); -void set_string_default __ARGS((char *name, char_u *val)); -void set_number_default __ARGS((char *name, long val)); -void free_all_options __ARGS((void)); -void set_init_2 __ARGS((void)); -void set_init_3 __ARGS((void)); -void set_helplang_default __ARGS((char_u *lang)); -void init_gui_options __ARGS((void)); -void set_title_defaults __ARGS((void)); -int do_set __ARGS((char_u *arg, int opt_flags)); -void set_options_bin __ARGS((int oldval, int newval, int opt_flags)); -int get_viminfo_parameter __ARGS((int type)); -char_u *find_viminfo_parameter __ARGS((int type)); -void check_options __ARGS((void)); -void check_buf_options __ARGS((buf_T *buf)); -void free_string_option __ARGS((char_u *p)); -void clear_string_option __ARGS((char_u **pp)); -void set_term_option_alloced __ARGS((char_u **p)); -int was_set_insecurely __ARGS((char_u *opt, int opt_flags)); -void set_string_option_direct __ARGS((char_u *name, int opt_idx, char_u *val, int opt_flags, int set_sid)); -char_u *check_stl_option __ARGS((char_u *s)); -int get_option_value __ARGS((char_u *name, long *numval, char_u **stringval, int opt_flags)); -void set_option_value __ARGS((char_u *name, long number, char_u *string, int opt_flags)); -char_u *get_term_code __ARGS((char_u *tname)); -char_u *get_highlight_default __ARGS((void)); -char_u *get_encoding_default __ARGS((void)); -int makeset __ARGS((FILE *fd, int opt_flags, int local_only)); -int makefoldset __ARGS((FILE *fd)); -void clear_termoptions __ARGS((void)); -void free_termoptions __ARGS((void)); -void set_term_defaults __ARGS((void)); -void comp_col __ARGS((void)); -char_u *get_equalprg __ARGS((void)); -void win_copy_options __ARGS((win_T *wp_from, win_T *wp_to)); -void copy_winopt __ARGS((winopt_T *from, winopt_T *to)); -void check_win_options __ARGS((win_T *win)); -void check_winopt __ARGS((winopt_T *wop)); -void clear_winopt __ARGS((winopt_T *wop)); -void buf_copy_options __ARGS((buf_T *buf, int flags)); -void reset_modifiable __ARGS((void)); -void set_iminsert_global __ARGS((void)); -void set_imsearch_global __ARGS((void)); -void set_context_in_set_cmd __ARGS((expand_T *xp, char_u *arg, int opt_flags)); -int ExpandSettings __ARGS((expand_T *xp, regmatch_T *regmatch, int *num_file, char_u ***file)); -int ExpandOldSetting __ARGS((int *num_file, char_u ***file)); -int has_format_option __ARGS((int x)); -int shortmess __ARGS((int x)); -void vimrc_found __ARGS((char_u *fname, char_u *envname)); -void change_compatible __ARGS((int on)); -int option_was_set __ARGS((char_u *name)); -int can_bs __ARGS((int what)); -void save_file_ff __ARGS((buf_T *buf)); -int file_ff_differs __ARGS((buf_T *buf)); -int check_ff_value __ARGS((char_u *p)); +extern void set_init_1 __ARGS((void)); +extern void set_string_default __ARGS((char *name, char_u *val)); +extern void set_number_default __ARGS((char *name, long val)); +extern void free_all_options __ARGS((void)); +extern void set_init_2 __ARGS((void)); +extern void set_init_3 __ARGS((void)); +extern void set_helplang_default __ARGS((char_u *lang)); +extern void init_gui_options __ARGS((void)); +extern void set_title_defaults __ARGS((void)); +extern int do_set __ARGS((char_u *arg, int opt_flags)); +extern void set_options_bin __ARGS((int oldval, int newval, int opt_flags)); +extern int get_viminfo_parameter __ARGS((int type)); +extern char_u *find_viminfo_parameter __ARGS((int type)); +extern void check_options __ARGS((void)); +extern void check_buf_options __ARGS((buf_T *buf)); +extern void free_string_option __ARGS((char_u *p)); +extern void clear_string_option __ARGS((char_u **pp)); +extern void set_term_option_alloced __ARGS((char_u **p)); +extern int was_set_insecurely __ARGS((char_u *opt, int opt_flags)); +extern void set_string_option_direct __ARGS((char_u *name, int opt_idx, char_u *val, int opt_flags, int set_sid)); +extern char_u *check_stl_option __ARGS((char_u *s)); +extern int get_option_value __ARGS((char_u *name, long *numval, char_u **stringval, int opt_flags)); +extern void set_option_value __ARGS((char_u *name, long number, char_u *string, int opt_flags)); +extern char_u *get_term_code __ARGS((char_u *tname)); +extern char_u *get_highlight_default __ARGS((void)); +extern char_u *get_encoding_default __ARGS((void)); +extern int makeset __ARGS((FILE *fd, int opt_flags, int local_only)); +extern int makefoldset __ARGS((FILE *fd)); +extern void clear_termoptions __ARGS((void)); +extern void free_termoptions __ARGS((void)); +extern void set_term_defaults __ARGS((void)); +extern void comp_col __ARGS((void)); +extern char_u *get_equalprg __ARGS((void)); +extern void win_copy_options __ARGS((win_T *wp_from, win_T *wp_to)); +extern void copy_winopt __ARGS((winopt_T *from, winopt_T *to)); +extern void check_win_options __ARGS((win_T *win)); +extern void check_winopt __ARGS((winopt_T *wop)); +extern void clear_winopt __ARGS((winopt_T *wop)); +extern void buf_copy_options __ARGS((buf_T *buf, int flags)); +extern void reset_modifiable __ARGS((void)); +extern void set_iminsert_global __ARGS((void)); +extern void set_imsearch_global __ARGS((void)); +extern void set_context_in_set_cmd __ARGS((expand_T *xp, char_u *arg, int opt_flags)); +extern int ExpandSettings __ARGS((expand_T *xp, regmatch_T *regmatch, int *num_file, char_u ***file)); +extern int ExpandOldSetting __ARGS((int *num_file, char_u ***file)); +extern int has_format_option __ARGS((int x)); +extern int shortmess __ARGS((int x)); +extern void vimrc_found __ARGS((char_u *fname, char_u *envname)); +extern void change_compatible __ARGS((int on)); +extern int option_was_set __ARGS((char_u *name)); +extern int can_bs __ARGS((int what)); +extern void save_file_ff __ARGS((buf_T *buf)); +extern int file_ff_differs __ARGS((buf_T *buf)); +extern int check_ff_value __ARGS((char_u *p)); /* vim: set ft=c : */ diff --git a/src/proto/syntax.pro b/src/proto/syntax.pro --- a/src/proto/syntax.pro +++ b/src/proto/syntax.pro @@ -1,47 +1,47 @@ /* syntax.c */ -void syntax_start __ARGS((win_T *wp, linenr_T lnum)); -void syn_stack_free_all __ARGS((buf_T *buf)); -void syn_stack_apply_changes __ARGS((buf_T *buf)); -void syntax_end_parsing __ARGS((linenr_T lnum)); -int syntax_check_changed __ARGS((linenr_T lnum)); -int get_syntax_attr __ARGS((colnr_T col, int *can_spell)); -void syntax_clear __ARGS((buf_T *buf)); -void ex_syntax __ARGS((exarg_T *eap)); -int syntax_present __ARGS((buf_T *buf)); -void set_context_in_syntax_cmd __ARGS((expand_T *xp, char_u *arg)); -char_u *get_syntax_name __ARGS((expand_T *xp, int idx)); -int syn_get_id __ARGS((win_T *wp, long lnum, colnr_T col, int trans, int *spellp)); -int syn_get_foldlevel __ARGS((win_T *wp, long lnum)); -void init_highlight __ARGS((int both, int reset)); -int load_colors __ARGS((char_u *name)); -void do_highlight __ARGS((char_u *line, int forceit, int init)); -void free_highlight __ARGS((void)); -void restore_cterm_colors __ARGS((void)); -void set_normal_colors __ARGS((void)); -char_u *hl_get_font_name __ARGS((void)); -void hl_set_font_name __ARGS((char_u *font_name)); -void hl_set_bg_color_name __ARGS((char_u *name)); -void hl_set_fg_color_name __ARGS((char_u *name)); -void clear_hl_tables __ARGS((void)); -int hl_combine_attr __ARGS((int char_attr, int prim_attr)); -attrentry_T *syn_gui_attr2entry __ARGS((int attr)); -int syn_attr2attr __ARGS((int attr)); -attrentry_T *syn_term_attr2entry __ARGS((int attr)); -attrentry_T *syn_cterm_attr2entry __ARGS((int attr)); -char_u *highlight_has_attr __ARGS((int id, int flag, int modec)); -char_u *highlight_color __ARGS((int id, char_u *what, int modec)); -long_u highlight_gui_color_rgb __ARGS((int id, int fg)); -int syn_name2id __ARGS((char_u *name)); -int highlight_exists __ARGS((char_u *name)); -char_u *syn_id2name __ARGS((int id)); -int syn_namen2id __ARGS((char_u *linep, int len)); -int syn_check_group __ARGS((char_u *pp, int len)); -int syn_id2attr __ARGS((int hl_id)); -int syn_id2colors __ARGS((int hl_id, guicolor_T *fgp, guicolor_T *bgp)); -int syn_get_final_id __ARGS((int hl_id)); -void highlight_gui_started __ARGS((void)); -int highlight_changed __ARGS((void)); -void set_context_in_highlight_cmd __ARGS((expand_T *xp, char_u *arg)); -char_u *get_highlight_name __ARGS((expand_T *xp, int idx)); -void free_highlight_fonts __ARGS((void)); +extern void syntax_start __ARGS((win_T *wp, linenr_T lnum)); +extern void syn_stack_free_all __ARGS((buf_T *buf)); +extern void syn_stack_apply_changes __ARGS((buf_T *buf)); +extern void syntax_end_parsing __ARGS((linenr_T lnum)); +extern int syntax_check_changed __ARGS((linenr_T lnum)); +extern int get_syntax_attr __ARGS((colnr_T col, int *can_spell)); +extern void syntax_clear __ARGS((buf_T *buf)); +extern void ex_syntax __ARGS((exarg_T *eap)); +extern int syntax_present __ARGS((buf_T *buf)); +extern void set_context_in_syntax_cmd __ARGS((expand_T *xp, char_u *arg)); +extern char_u *get_syntax_name __ARGS((expand_T *xp, int idx)); +extern int syn_get_id __ARGS((win_T *wp, long lnum, colnr_T col, int trans, int *spellp)); +extern int syn_get_foldlevel __ARGS((win_T *wp, long lnum)); +extern void init_highlight __ARGS((int both, int reset)); +extern int load_colors __ARGS((char_u *name)); +extern void do_highlight __ARGS((char_u *line, int forceit, int init)); +extern void free_highlight __ARGS((void)); +extern void restore_cterm_colors __ARGS((void)); +extern void set_normal_colors __ARGS((void)); +extern char_u *hl_get_font_name __ARGS((void)); +extern void hl_set_font_name __ARGS((char_u *font_name)); +extern void hl_set_bg_color_name __ARGS((char_u *name)); +extern void hl_set_fg_color_name __ARGS((char_u *name)); +extern void clear_hl_tables __ARGS((void)); +extern int hl_combine_attr __ARGS((int char_attr, int prim_attr)); +extern attrentry_T *syn_gui_attr2entry __ARGS((int attr)); +extern int syn_attr2attr __ARGS((int attr)); +extern attrentry_T *syn_term_attr2entry __ARGS((int attr)); +extern attrentry_T *syn_cterm_attr2entry __ARGS((int attr)); +extern char_u *highlight_has_attr __ARGS((int id, int flag, int modec)); +extern char_u *highlight_color __ARGS((int id, char_u *what, int modec)); +extern long_u highlight_gui_color_rgb __ARGS((int id, int fg)); +extern int syn_name2id __ARGS((char_u *name)); +extern int highlight_exists __ARGS((char_u *name)); +extern char_u *syn_id2name __ARGS((int id)); +extern int syn_namen2id __ARGS((char_u *linep, int len)); +extern int syn_check_group __ARGS((char_u *pp, int len)); +extern int syn_id2attr __ARGS((int hl_id)); +extern int syn_id2colors __ARGS((int hl_id, guicolor_T *fgp, guicolor_T *bgp)); +extern int syn_get_final_id __ARGS((int hl_id)); +extern void highlight_gui_started __ARGS((void)); +extern int highlight_changed __ARGS((void)); +extern void set_context_in_highlight_cmd __ARGS((expand_T *xp, char_u *arg)); +extern char_u *get_highlight_name __ARGS((expand_T *xp, int idx)); +extern void free_highlight_fonts __ARGS((void)); /* vim: set ft=c : */ diff --git a/src/proto/undo.pro b/src/proto/undo.pro --- a/src/proto/undo.pro +++ b/src/proto/undo.pro @@ -7,7 +7,7 @@ extern int u_savedel __ARGS((linenr_T ln extern void u_undo __ARGS((int count)); extern void u_redo __ARGS((int count)); extern void undo_time __ARGS((long step, int sec, int absolute)); -extern void u_sync __ARGS((void)); +extern void u_sync __ARGS((int force)); extern void ex_undolist __ARGS((exarg_T *eap)); extern void ex_undojoin __ARGS((exarg_T *eap)); extern void u_unchanged __ARGS((buf_T *buf)); diff --git a/src/proto/window.pro b/src/proto/window.pro --- a/src/proto/window.pro +++ b/src/proto/window.pro @@ -1,59 +1,61 @@ /* window.c */ -void do_window __ARGS((int nchar, long Prenum, int xchar)); -int win_split __ARGS((int size, int flags)); -int win_valid __ARGS((win_T *win)); -int win_count __ARGS((void)); -int make_windows __ARGS((int count, int vertical)); -void win_move_after __ARGS((win_T *win1, win_T *win2)); -void win_equal __ARGS((win_T *next_curwin, int current, int dir)); -void close_windows __ARGS((buf_T *buf, int keep_curwin)); -void win_close __ARGS((win_T *win, int free_buf)); -void win_close_othertab __ARGS((win_T *win, int free_buf, tabpage_T *tp)); -void win_free_all __ARGS((void)); -void close_others __ARGS((int message, int forceit)); -void curwin_init __ARGS((void)); -int win_alloc_first __ARGS((void)); -void win_init_size __ARGS((void)); -int win_new_tabpage __ARGS((int after)); -int may_open_tabpage __ARGS((void)); -int make_tabpages __ARGS((int maxcount)); -int valid_tabpage __ARGS((tabpage_T *tpc)); -tabpage_T *find_tabpage __ARGS((int n)); -int tabpage_index __ARGS((tabpage_T *ftp)); -void goto_tabpage __ARGS((int n)); -void goto_tabpage_tp __ARGS((tabpage_T *tp)); -void tabpage_move __ARGS((int nr)); -void win_goto __ARGS((win_T *wp)); -win_T *win_find_nr __ARGS((int winnr)); -void win_enter __ARGS((win_T *wp, int undo_sync)); -win_T *buf_jump_open_win __ARGS((buf_T *buf)); -int win_alloc_lines __ARGS((win_T *wp)); -void win_free_lsize __ARGS((win_T *wp)); -void shell_new_rows __ARGS((void)); -void shell_new_columns __ARGS((void)); -void win_size_save __ARGS((garray_T *gap)); -void win_size_restore __ARGS((garray_T *gap)); -int win_comp_pos __ARGS((void)); -void win_setheight __ARGS((int height)); -void win_setheight_win __ARGS((int height, win_T *win)); -void win_setwidth __ARGS((int width)); -void win_setwidth_win __ARGS((int width, win_T *wp)); -void win_setminheight __ARGS((void)); -void win_drag_status_line __ARGS((win_T *dragwin, int offset)); -void win_drag_vsep_line __ARGS((win_T *dragwin, int offset)); -void win_comp_scroll __ARGS((win_T *wp)); -void command_height __ARGS((void)); -void last_status __ARGS((int morewin)); -int tabline_height __ARGS((void)); -char_u *grab_file_name __ARGS((long count, linenr_T *file_lnum)); -char_u *file_name_at_cursor __ARGS((int options, long count, linenr_T *file_lnum)); -char_u *file_name_in_line __ARGS((char_u *line, int col, int options, long count, char_u *rel_fname, linenr_T *file_lnum)); -char_u *find_file_name_in_path __ARGS((char_u *ptr, int len, int options, long count, char_u *rel_fname)); -int path_with_url __ARGS((char_u *fname)); -int vim_isAbsName __ARGS((char_u *name)); -int vim_FullName __ARGS((char_u *fname, char_u *buf, int len, int force)); -int min_rows __ARGS((void)); -int only_one_window __ARGS((void)); -void check_lnums __ARGS((int do_curwin)); -int win_hasvertsplit __ARGS((void)); +extern void do_window __ARGS((int nchar, long Prenum, int xchar)); +extern int win_split __ARGS((int size, int flags)); +extern int win_valid __ARGS((win_T *win)); +extern int win_count __ARGS((void)); +extern int make_windows __ARGS((int count, int vertical)); +extern void win_move_after __ARGS((win_T *win1, win_T *win2)); +extern void win_equal __ARGS((win_T *next_curwin, int current, int dir)); +extern void close_windows __ARGS((buf_T *buf, int keep_curwin)); +extern void win_close __ARGS((win_T *win, int free_buf)); +extern void win_close_othertab __ARGS((win_T *win, int free_buf, tabpage_T *tp)); +extern void win_free_all __ARGS((void)); +extern void close_others __ARGS((int message, int forceit)); +extern void curwin_init __ARGS((void)); +extern int win_alloc_first __ARGS((void)); +extern void win_init_size __ARGS((void)); +extern int win_new_tabpage __ARGS((int after)); +extern int may_open_tabpage __ARGS((void)); +extern int make_tabpages __ARGS((int maxcount)); +extern int valid_tabpage __ARGS((tabpage_T *tpc)); +extern tabpage_T *find_tabpage __ARGS((int n)); +extern int tabpage_index __ARGS((tabpage_T *ftp)); +extern void goto_tabpage __ARGS((int n)); +extern void goto_tabpage_tp __ARGS((tabpage_T *tp)); +extern void goto_tabpage_win __ARGS((tabpage_T *tp, win_T *wp)); +extern void tabpage_move __ARGS((int nr)); +extern void win_goto __ARGS((win_T *wp)); +extern win_T *win_find_nr __ARGS((int winnr)); +extern void win_enter __ARGS((win_T *wp, int undo_sync)); +extern win_T *buf_jump_open_win __ARGS((buf_T *buf)); +extern win_T *buf_jump_open_tab __ARGS((buf_T *buf)); +extern int win_alloc_lines __ARGS((win_T *wp)); +extern void win_free_lsize __ARGS((win_T *wp)); +extern void shell_new_rows __ARGS((void)); +extern void shell_new_columns __ARGS((void)); +extern void win_size_save __ARGS((garray_T *gap)); +extern void win_size_restore __ARGS((garray_T *gap)); +extern int win_comp_pos __ARGS((void)); +extern void win_setheight __ARGS((int height)); +extern void win_setheight_win __ARGS((int height, win_T *win)); +extern void win_setwidth __ARGS((int width)); +extern void win_setwidth_win __ARGS((int width, win_T *wp)); +extern void win_setminheight __ARGS((void)); +extern void win_drag_status_line __ARGS((win_T *dragwin, int offset)); +extern void win_drag_vsep_line __ARGS((win_T *dragwin, int offset)); +extern void win_comp_scroll __ARGS((win_T *wp)); +extern void command_height __ARGS((void)); +extern void last_status __ARGS((int morewin)); +extern int tabline_height __ARGS((void)); +extern char_u *grab_file_name __ARGS((long count, linenr_T *file_lnum)); +extern char_u *file_name_at_cursor __ARGS((int options, long count, linenr_T *file_lnum)); +extern char_u *file_name_in_line __ARGS((char_u *line, int col, int options, long count, char_u *rel_fname, linenr_T *file_lnum)); +extern char_u *find_file_name_in_path __ARGS((char_u *ptr, int len, int options, long count, char_u *rel_fname)); +extern int path_with_url __ARGS((char_u *fname)); +extern int vim_isAbsName __ARGS((char_u *name)); +extern int vim_FullName __ARGS((char_u *fname, char_u *buf, int len, int force)); +extern int min_rows __ARGS((void)); +extern int only_one_window __ARGS((void)); +extern void check_lnums __ARGS((int do_curwin)); +extern int win_hasvertsplit __ARGS((void)); /* vim: set ft=c : */ diff --git a/src/spell.c b/src/spell.c --- a/src/spell.c +++ b/src/spell.c @@ -5959,7 +5959,7 @@ aff_process_flags(affile, entry) { char_u *p; char_u *prevp; - int flag; + unsigned flag; if (entry->ae_flags != NULL && (affile->af_compforbid != 0 || affile->af_comppermit != 0)) @@ -6474,6 +6474,7 @@ spell_read_dic(spin, fname, affile) if (spin->si_ascii && has_non_ascii(w)) { ++non_ascii; + vim_free(pc); continue; } @@ -6495,10 +6496,11 @@ spell_read_dic(spin, fname, affile) /* Store the word in the hashtable to be able to find duplicates. */ dw = (char_u *)getroom_save(spin, w); if (dw == NULL) + { retval = FAIL; - vim_free(pc); - if (retval == FAIL) + vim_free(pc); break; + } hash = hash_hash(dw); hi = hash_lookup(&ht, dw, hash); @@ -6558,6 +6560,8 @@ spell_read_dic(spin, fname, affile) CONDIT_SUF, flags, store_afflist, pfxlen) == FAIL) retval = FAIL; } + + vim_free(pc); } if (duplicate > 0) diff --git a/src/undo.c b/src/undo.c --- a/src/undo.c +++ b/src/undo.c @@ -551,7 +551,7 @@ u_undo(count) */ if (curbuf->b_u_synced == FALSE) { - u_sync(); + u_sync(TRUE); count = 1; } @@ -673,7 +673,7 @@ undo_time(step, sec, absolute) /* First make sure the current undoable change is synced. */ if (curbuf->b_u_synced == FALSE) - u_sync(); + u_sync(TRUE); u_newcount = 0; u_oldcount = 0; @@ -1255,10 +1255,12 @@ u_undo_end(did_undo, absolute) * u_sync: stop adding to the current entry list */ void -u_sync() +u_sync(force) + int force; /* Also sync when no_u_sync is set. */ { - if (curbuf->b_u_synced) - return; /* already synced */ + /* Skip it when already synced or syncing is disabled. */ + if (curbuf->b_u_synced || (!force && no_u_sync > 0)) + return; #if defined(FEAT_XIM) && defined(FEAT_GUI_GTK) if (im_is_preediting()) return; /* XIM is busy, don't break an undo sequence */ diff --git a/src/version.h b/src/version.h --- a/src/version.h +++ b/src/version.h @@ -19,9 +19,9 @@ #define VIM_VERSION_MINOR_STR "0" #define VIM_VERSION_100 (VIM_VERSION_MAJOR * 100 + VIM_VERSION_MINOR) -#define VIM_VERSION_BUILD 259 -#define VIM_VERSION_BUILD_BCD 0x103 -#define VIM_VERSION_BUILD_STR "259" +#define VIM_VERSION_BUILD 260 +#define VIM_VERSION_BUILD_BCD 0x104 +#define VIM_VERSION_BUILD_STR "260" #define VIM_VERSION_PATCHLEVEL 0 #define VIM_VERSION_PATCHLEVEL_STR "0" /* Used by MacOS port should be one of: development, alpha, beta, final */ @@ -33,8 +33,8 @@ * VIM_VERSION_MEDIUM is used for the startup-screen. * VIM_VERSION_LONG is used for the ":version" command and "Vim -h". */ -#define VIM_VERSION_NODOT "vim70c" -#define VIM_VERSION_SHORT "7.0c" -#define VIM_VERSION_MEDIUM "7.0c13 BETA" -#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0c13 BETA (2006 Apr 8)" -#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0c13 BETA (2006 Apr 8, compiled " +#define VIM_VERSION_NODOT "vim70d" +#define VIM_VERSION_SHORT "7.0d" +#define VIM_VERSION_MEDIUM "7.0d BETA" +#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0d BETA (2006 Apr 10)" +#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0d BETA (2006 Apr 10, compiled " diff --git a/src/window.c b/src/window.c --- a/src/window.c +++ b/src/window.c @@ -3527,6 +3527,26 @@ goto_tabpage_tp(tp) } /* + * Enter window "wp" in tab page "tp". + * Also updates the GUI tab. + */ + void +goto_tabpage_win(tp, wp) + tabpage_T *tp; + win_T *wp; +{ + goto_tabpage_tp(tp); + if (curtab == tp && win_valid(wp)) + { + win_enter(wp, TRUE); +# ifdef FEAT_GUI_TABLINE + if (gui_use_tabline()) + gui_mch_set_curtab(tabpage_index(curtab)); +# endif + } +} + +/* * Move the current tab page to before tab page "nr". */ void @@ -3810,7 +3830,7 @@ win_enter_ext(wp, undo_sync, curwin_inva /* sync undo before leaving the current buffer */ if (undo_sync && curbuf != wp->w_buffer) - u_sync(); + u_sync(FALSE); /* may have to copy the buffer options when 'cpo' contains 'S' */ if (wp->w_buffer != curbuf) buf_copy_options(wp->w_buffer, BCO_ENTER | BCO_NOHELP); @@ -3896,9 +3916,8 @@ win_enter_ext(wp, undo_sync, curwin_inva #if defined(FEAT_WINDOWS) || defined(FEAT_SIGNS) || defined(PROTO) /* - * Jump to the first open window that contains buffer buf if one exists - * TODO: Alternatively jump to last open window? Dependent from 'splitbelow'? - * Returns pointer to window if it exists, otherwise NULL. + * Jump to the first open window that contains buffer "buf", if one exists. + * Returns a pointer to the window found, otherwise NULL. */ win_T * buf_jump_open_win(buf) @@ -3907,7 +3926,7 @@ buf_jump_open_win(buf) # ifdef FEAT_WINDOWS win_T *wp; - for (wp = firstwin; wp; wp = wp->w_next) + for (wp = firstwin; wp != NULL; wp = wp->w_next) if (wp->w_buffer == buf) break; if (wp != NULL) @@ -3919,6 +3938,47 @@ buf_jump_open_win(buf) return NULL; # endif } + +/* + * Jump to the first open window in any tab page that contains buffer "buf", + * if one exists. + * Returns a pointer to the window found, otherwise NULL. + */ + win_T * +buf_jump_open_tab(buf) + buf_T *buf; +{ +# ifdef FEAT_WINDOWS + win_T *wp; + tabpage_T *tp; + + /* First try the current tab page. */ + wp = buf_jump_open_win(buf); + if (wp != NULL) + return wp; + + for (tp = first_tabpage; tp != NULL; tp = tp->tp_next) + if (tp != curtab) + { + for (wp = tp->tp_firstwin; wp != NULL; wp = wp->w_next) + if (wp->w_buffer == buf) + break; + if (wp != NULL) + { + goto_tabpage_win(tp, wp); + if (curwin != wp) + wp = NULL; /* something went wrong */ + break; + } + } + + return wp; +# else + if (curwin->w_buffer == buf) + return curwin; + return NULL; +# endif +} #endif /*