summaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2008-08-06 17:06:04 +0000
committerBram Moolenaar <Bram@vim.org>2008-08-06 17:06:04 +0000
commite37d50a5def1c0ff162392cd3f017059c458650c (patch)
treee7d1e2b17976b130d1283d33b091baf30cfc5d2c /runtime
parentda40c8536c2b7bdbd1d192ee1aa3045e2119675e (diff)
downloadvim-git-e37d50a5def1c0ff162392cd3f017059c458650c.tar.gz
updated for version 7.2c-000v7.2c.000
Diffstat (limited to 'runtime')
-rw-r--r--runtime/autoload/netrw.vim236
-rw-r--r--runtime/autoload/tar.vim6
-rw-r--r--runtime/autoload/vimball.vim60
-rw-r--r--runtime/autoload/zip.vim27
-rw-r--r--runtime/colors/darkblue.vim8
-rw-r--r--runtime/doc/Makefile25
-rw-r--r--runtime/doc/arabic.txt2
-rw-r--r--runtime/doc/autocmd.txt2
-rw-r--r--runtime/doc/change.txt4
-rw-r--r--runtime/doc/cmdline.txt19
-rw-r--r--runtime/doc/debug.txt2
-rw-r--r--runtime/doc/debugger.txt2
-rw-r--r--runtime/doc/develop.txt2
-rw-r--r--runtime/doc/diff.txt8
-rw-r--r--runtime/doc/digraph.txt6
-rw-r--r--runtime/doc/editing.txt2
-rw-r--r--runtime/doc/eval.txt24
-rw-r--r--runtime/doc/farsi.txt2
-rw-r--r--runtime/doc/filetype.txt25
-rw-r--r--runtime/doc/fold.txt2
-rw-r--r--runtime/doc/ft_ada.txt2
-rw-r--r--runtime/doc/ft_sql.txt2
-rw-r--r--runtime/doc/gui.txt2
-rw-r--r--runtime/doc/gui_w16.txt2
-rw-r--r--runtime/doc/gui_w32.txt2
-rw-r--r--runtime/doc/gui_x11.txt2
-rw-r--r--runtime/doc/hangulin.txt2
-rw-r--r--runtime/doc/hebrew.txt2
-rw-r--r--runtime/doc/help.txt4
-rw-r--r--runtime/doc/howto.txt2
-rw-r--r--runtime/doc/if_cscop.txt2
-rw-r--r--runtime/doc/if_mzsch.txt2
-rw-r--r--runtime/doc/if_ole.txt2
-rw-r--r--runtime/doc/if_perl.txt2
-rw-r--r--runtime/doc/if_pyth.txt2
-rw-r--r--runtime/doc/if_ruby.txt2
-rw-r--r--runtime/doc/if_sniff.txt2
-rw-r--r--runtime/doc/if_tcl.txt2
-rw-r--r--runtime/doc/indent.txt6
-rw-r--r--runtime/doc/index.txt2
-rw-r--r--runtime/doc/insert.txt2
-rw-r--r--runtime/doc/intro.txt2
-rw-r--r--runtime/doc/map.txt2
-rw-r--r--runtime/doc/mbyte.txt2
-rw-r--r--runtime/doc/message.txt2
-rw-r--r--runtime/doc/mlang.txt2
-rw-r--r--runtime/doc/motion.txt18
-rw-r--r--runtime/doc/netbeans.txt2
-rw-r--r--runtime/doc/options.txt27
-rw-r--r--runtime/doc/os_390.txt2
-rw-r--r--runtime/doc/os_amiga.txt2
-rw-r--r--runtime/doc/os_beos.txt2
-rw-r--r--runtime/doc/os_dos.txt2
-rw-r--r--runtime/doc/os_mac.txt2
-rw-r--r--runtime/doc/os_mint.txt2
-rw-r--r--runtime/doc/os_msdos.txt2
-rw-r--r--runtime/doc/os_os2.txt2
-rw-r--r--runtime/doc/os_qnx.txt2
-rw-r--r--runtime/doc/os_risc.txt2
-rw-r--r--runtime/doc/os_unix.txt2
-rw-r--r--runtime/doc/os_vms.txt2
-rw-r--r--runtime/doc/os_win32.txt2
-rw-r--r--runtime/doc/pattern.txt4
-rw-r--r--runtime/doc/pi_getscript.txt2
-rw-r--r--runtime/doc/pi_gzip.txt2
-rw-r--r--runtime/doc/pi_netrw.txt84
-rw-r--r--runtime/doc/pi_paren.txt2
-rw-r--r--runtime/doc/pi_spec.txt2
-rw-r--r--runtime/doc/pi_tar.txt2
-rw-r--r--runtime/doc/pi_vimball.txt2
-rw-r--r--runtime/doc/pi_zip.txt2
-rw-r--r--runtime/doc/print.txt2
-rw-r--r--runtime/doc/quickfix.txt2
-rw-r--r--runtime/doc/quickref.txt2
-rw-r--r--runtime/doc/quotes.txt2
-rw-r--r--runtime/doc/recover.txt2
-rw-r--r--runtime/doc/remote.txt2
-rw-r--r--runtime/doc/repeat.txt2
-rw-r--r--runtime/doc/rileft.txt2
-rw-r--r--runtime/doc/russian.txt2
-rw-r--r--runtime/doc/scroll.txt2
-rw-r--r--runtime/doc/sign.txt2
-rw-r--r--runtime/doc/spell.txt2
-rw-r--r--runtime/doc/sponsor.txt2
-rw-r--r--runtime/doc/starting.txt2
-rw-r--r--runtime/doc/syntax.txt6
-rw-r--r--runtime/doc/tabpage.txt2
-rw-r--r--runtime/doc/tags3
-rw-r--r--runtime/doc/tagsrch.txt2
-rw-r--r--runtime/doc/term.txt2
-rw-r--r--runtime/doc/tips.txt2
-rw-r--r--runtime/doc/todo.txt93
-rw-r--r--runtime/doc/uganda.txt2
-rw-r--r--runtime/doc/undo.txt2
-rw-r--r--runtime/doc/usr_01.txt2
-rw-r--r--runtime/doc/usr_02.txt2
-rw-r--r--runtime/doc/usr_03.txt2
-rw-r--r--runtime/doc/usr_04.txt2
-rw-r--r--runtime/doc/usr_05.txt2
-rw-r--r--runtime/doc/usr_06.txt2
-rw-r--r--runtime/doc/usr_07.txt2
-rw-r--r--runtime/doc/usr_08.txt2
-rw-r--r--runtime/doc/usr_09.txt2
-rw-r--r--runtime/doc/usr_10.txt2
-rw-r--r--runtime/doc/usr_11.txt2
-rw-r--r--runtime/doc/usr_12.txt2
-rw-r--r--runtime/doc/usr_20.txt2
-rw-r--r--runtime/doc/usr_21.txt2
-rw-r--r--runtime/doc/usr_22.txt2
-rw-r--r--runtime/doc/usr_23.txt2
-rw-r--r--runtime/doc/usr_24.txt2
-rw-r--r--runtime/doc/usr_25.txt2
-rw-r--r--runtime/doc/usr_26.txt2
-rw-r--r--runtime/doc/usr_27.txt2
-rw-r--r--runtime/doc/usr_28.txt2
-rw-r--r--runtime/doc/usr_29.txt2
-rw-r--r--runtime/doc/usr_30.txt2
-rw-r--r--runtime/doc/usr_31.txt2
-rw-r--r--runtime/doc/usr_32.txt2
-rw-r--r--runtime/doc/usr_40.txt2
-rw-r--r--runtime/doc/usr_41.txt2
-rw-r--r--runtime/doc/usr_42.txt2
-rw-r--r--runtime/doc/usr_43.txt2
-rw-r--r--runtime/doc/usr_44.txt2
-rw-r--r--runtime/doc/usr_45.txt2
-rw-r--r--runtime/doc/usr_90.txt2
-rw-r--r--runtime/doc/usr_toc.txt2
-rw-r--r--runtime/doc/various.txt9
-rw-r--r--runtime/doc/version4.txt2
-rw-r--r--runtime/doc/version5.txt2
-rw-r--r--runtime/doc/version6.txt4
-rw-r--r--runtime/doc/version7.txt181
-rw-r--r--runtime/doc/vi_diff.txt2
-rw-r--r--runtime/doc/vim-fr.12
-rw-r--r--runtime/doc/vim-fr.UTF-8.12
-rwxr-xr-xruntime/doc/vim-it.12
-rw-r--r--runtime/doc/vim-it.UTF-8.12
-rw-r--r--runtime/doc/vim-pl.12
-rw-r--r--runtime/doc/vim-pl.UTF-8.12
-rw-r--r--runtime/doc/vim-ru.12
-rw-r--r--runtime/doc/vim-ru.UTF-8.12
-rw-r--r--runtime/doc/vim.14
-rw-r--r--runtime/doc/vim.man8
-rw-r--r--runtime/doc/vimdiff.16
-rw-r--r--runtime/doc/vimdiff.man14
-rw-r--r--runtime/doc/visual.txt2
-rw-r--r--runtime/doc/windows.txt2
-rw-r--r--runtime/doc/workshop.txt2
-rw-r--r--runtime/filetype.vim17
-rw-r--r--runtime/ftplugin/a2ps.vim8
-rw-r--r--runtime/ftplugin/alsaconf.vim8
-rw-r--r--runtime/ftplugin/arch.vim8
-rw-r--r--runtime/ftplugin/automake.vim8
-rw-r--r--runtime/ftplugin/bdf.vim8
-rw-r--r--runtime/ftplugin/calendar.vim8
-rw-r--r--runtime/ftplugin/cdrdaoconf.vim6
-rw-r--r--runtime/ftplugin/conf.vim8
-rw-r--r--runtime/ftplugin/context.vim5
-rw-r--r--runtime/ftplugin/crm.vim8
-rw-r--r--runtime/ftplugin/css.vim8
-rw-r--r--runtime/ftplugin/cvsrc.vim8
-rw-r--r--runtime/ftplugin/denyhosts.vim6
-rw-r--r--runtime/ftplugin/dictconf.vim8
-rw-r--r--runtime/ftplugin/dictdconf.vim8
-rw-r--r--runtime/ftplugin/dircolors.vim8
-rw-r--r--runtime/ftplugin/dosini.vim8
-rw-r--r--runtime/ftplugin/dtd.vim10
-rw-r--r--runtime/ftplugin/elinks.vim8
-rw-r--r--runtime/ftplugin/eterm.vim8
-rw-r--r--runtime/ftplugin/fetchmail.vim8
-rw-r--r--runtime/ftplugin/framescript.vim30
-rw-r--r--runtime/ftplugin/git.vim4
-rw-r--r--runtime/ftplugin/gpg.vim8
-rw-r--r--runtime/ftplugin/group.vim8
-rw-r--r--runtime/ftplugin/grub.vim8
-rw-r--r--runtime/ftplugin/haskell.vim8
-rw-r--r--runtime/ftplugin/help.vim8
-rw-r--r--runtime/ftplugin/hostconf.vim6
-rw-r--r--runtime/ftplugin/hostsaccess.vim19
-rw-r--r--runtime/ftplugin/html.vim10
-rw-r--r--runtime/ftplugin/indent.vim8
-rw-r--r--runtime/ftplugin/kconfig.vim8
-rw-r--r--runtime/ftplugin/ld.vim8
-rw-r--r--runtime/ftplugin/lftp.vim8
-rw-r--r--runtime/ftplugin/libao.vim8
-rw-r--r--runtime/ftplugin/limits.vim8
-rw-r--r--runtime/ftplugin/loginaccess.vim8
-rw-r--r--runtime/ftplugin/logindefs.vim8
-rw-r--r--runtime/ftplugin/m4.vim8
-rw-r--r--runtime/ftplugin/mailaliases.vim8
-rw-r--r--runtime/ftplugin/mailcap.vim8
-rw-r--r--runtime/ftplugin/manconf.vim8
-rw-r--r--runtime/ftplugin/mf.vim7
-rw-r--r--runtime/ftplugin/modconf.vim8
-rw-r--r--runtime/ftplugin/mp.vim8
-rw-r--r--runtime/ftplugin/mplayerconf.vim8
-rw-r--r--runtime/ftplugin/muttrc.vim6
-rw-r--r--runtime/ftplugin/nanorc.vim8
-rw-r--r--runtime/ftplugin/netrc.vim8
-rw-r--r--runtime/ftplugin/nsis.vim22
-rw-r--r--runtime/ftplugin/ocaml.vim39
-rw-r--r--runtime/ftplugin/pamconf.vim8
-rw-r--r--runtime/ftplugin/passwd.vim8
-rw-r--r--runtime/ftplugin/perl.vim5
-rw-r--r--runtime/ftplugin/pinfo.vim8
-rw-r--r--runtime/ftplugin/procmail.vim8
-rw-r--r--runtime/ftplugin/prolog.vim8
-rw-r--r--runtime/ftplugin/protocols.vim8
-rw-r--r--runtime/ftplugin/quake.vim8
-rw-r--r--runtime/ftplugin/racc.vim8
-rw-r--r--runtime/ftplugin/readline.vim8
-rw-r--r--runtime/ftplugin/rnc.vim8
-rw-r--r--runtime/ftplugin/rst.vim8
-rw-r--r--runtime/ftplugin/screen.vim8
-rw-r--r--runtime/ftplugin/sensors.vim8
-rw-r--r--runtime/ftplugin/services.vim8
-rw-r--r--runtime/ftplugin/setserial.vim8
-rw-r--r--runtime/ftplugin/sieve.vim8
-rw-r--r--runtime/ftplugin/slpconf.vim8
-rw-r--r--runtime/ftplugin/slpreg.vim8
-rw-r--r--runtime/ftplugin/slpspi.vim8
-rw-r--r--runtime/ftplugin/sshconfig.vim8
-rw-r--r--runtime/ftplugin/sudoers.vim8
-rw-r--r--runtime/ftplugin/sysctl.vim8
-rw-r--r--runtime/ftplugin/terminfo.vim8
-rw-r--r--runtime/ftplugin/udevconf.vim8
-rw-r--r--runtime/ftplugin/udevperm.vim8
-rw-r--r--runtime/ftplugin/udevrules.vim8
-rw-r--r--runtime/ftplugin/updatedb.vim8
-rw-r--r--runtime/ftplugin/xdefaults.vim8
-rw-r--r--runtime/ftplugin/xf86conf.vim8
-rw-r--r--runtime/ftplugin/xinetd.vim8
-rw-r--r--runtime/ftplugin/xml.vim11
-rw-r--r--runtime/ftplugin/xmodmap.vim8
-rw-r--r--runtime/ftplugin/yaml.vim8
-rw-r--r--runtime/ftplugin/zsh.vim8
-rw-r--r--runtime/indent/dtd.vim325
-rw-r--r--runtime/indent/framescript.vim41
-rw-r--r--runtime/plugin/netrwPlugin.vim24
-rw-r--r--runtime/plugin/tarPlugin.vim2
-rw-r--r--runtime/plugin/vimballPlugin.vim2
-rw-r--r--runtime/plugin/zipPlugin.vim11
-rw-r--r--runtime/scripts.vim3
-rw-r--r--runtime/spell/pt/main.aap2
-rw-r--r--runtime/spell/pt/pt_BR.diff2
-rw-r--r--runtime/spell/pt/pt_PT.diff2
-rw-r--r--runtime/syntax/2html.vim4
-rw-r--r--runtime/syntax/autohotkey.vim11
-rw-r--r--runtime/syntax/bzr.vim4
-rw-r--r--runtime/syntax/doxygen.vim22
-rw-r--r--runtime/syntax/forth.vim110
-rw-r--r--runtime/syntax/mailaliases.vim4
-rw-r--r--runtime/syntax/make.vim4
-rw-r--r--runtime/syntax/modconf.vim4
-rw-r--r--runtime/syntax/natural.vim252
-rw-r--r--runtime/syntax/racc.vim14
-rw-r--r--runtime/syntax/sas.vim115
-rw-r--r--runtime/syntax/sh.vim9
-rw-r--r--runtime/syntax/sieve.vim6
-rw-r--r--runtime/syntax/svn.vim5
-rw-r--r--runtime/syntax/updatedb.vim4
-rw-r--r--runtime/syntax/vim.vim19
-rw-r--r--runtime/syntax/yaml.vim176
-rw-r--r--runtime/syntax/zsh.vim43
-rwxr-xr-xruntime/tools/vimm4
-rwxr-xr-xruntime/tools/vimspell.sh3
-rw-r--r--runtime/tutor/tutor.vim7
267 files changed, 2239 insertions, 933 deletions
diff --git a/runtime/autoload/netrw.vim b/runtime/autoload/netrw.vim
index 6221294bb..8bd597aaf 100644
--- a/runtime/autoload/netrw.vim
+++ b/runtime/autoload/netrw.vim
@@ -1,7 +1,7 @@
" netrw.vim: Handles file transfer and remote directory listing across
" AUTOLOAD SECTION
-" Date: Jul 12, 2008
-" Version: 127
+" Date: Aug 01, 2008
+" Version: 131
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
" Copyright: Copyright (C) 1999-2008 Charles E. Campbell, Jr. {{{1
@@ -27,7 +27,7 @@ if !exists("s:NOTE")
let s:WARNING = 1
let s:ERROR = 2
endif
-let g:loaded_netrw = "v127"
+let g:loaded_netrw = "v131"
" sanity checks
if v:version < 700
@@ -76,7 +76,13 @@ if !exists("g:netrw_ftp_cmd")
let g:netrw_ftp_cmd = "ftp"
endif
if !exists("g:netrw_http_cmd")
- if executable("curl")
+ if executable("elinks")
+ let g:netrw_http_cmd = "elinks"
+ let g:netrw_http_xcmd= "-dump >"
+ elseif executable("links")
+ let g:netrw_http_cmd = "links"
+ let g:netrw_http_xcmd= "-dump >"
+ elseif executable("curl")
let g:netrw_http_cmd = "curl -o"
elseif executable("wget")
let g:netrw_http_cmd = "wget -q -O"
@@ -359,6 +365,7 @@ endif
if !exists("g:netrw_tmpfile_escape")
let g:netrw_tmpfile_escape= ' &;'
endif
+let s:netrw_map_escape = "<|\n\r\\\<C-V>\""
" BufEnter event ignored by decho when following variable is true
" Has a side effect that doau BufReadPost doesn't work, so
@@ -712,15 +719,16 @@ fun! netrw#NetRead(mode,...)
" call Decho("read via ftp+.netrc (method #2)")
let netrw_fname= b:netrw_fname
call s:SaveBufVars()|new|call s:RestoreBufVars()
+ let filtbuf= bufnr("%")
setlocal ff=unix
- exe "put ='".g:netrw_ftpmode."'"
-" call Decho("filter input: ".getline('.'))
+ put =g:netrw_ftpmode
+" call Decho("filter input: ".getline(line("$")))
if exists("g:netrw_ftpextracmd")
- exe "put ='".g:netrw_ftpextracmd."'"
-" call Decho("filter input: ".getline('.'))
+ put =g:netrw_ftpextracmd
+" call Decho("filter input: ".getline(line("$")))
endif
- exe "put ='".'get \"'.netrw_fname.'\" '.tmpfile."'"
-" call Decho("filter input: ".getline('.'))
+ call setline(line("$")+1,'get "'.netrw_fname.'" '.tmpfile)
+" call Decho("filter input: ".getline(line("$")))
if exists("g:netrw_port") && g:netrw_port != ""
" call Decho("executing: %!".g:netrw_ftp_cmd." -i ".shellescape(g:netrw_machine." ".g:netrw_port,1))
exe s:netrw_silentxfer."%!".g:netrw_ftp_cmd." -i ".shellescape(g:netrw_machine." ".g:netrw_port,1)
@@ -746,6 +754,7 @@ fun! netrw#NetRead(mode,...)
" call Decho("read via ftp+mipf (method #3)")
let netrw_fname= escape(b:netrw_fname,g:netrw_fname_escape)
call s:SaveBufVars()|new|call s:RestoreBufVars()
+ let filtbuf= bufnr("%")
setlocal ff=unix
if exists("g:netrw_port") && g:netrw_port != ""
put ='open '.g:netrw_machine.' '.g:netrw_port
@@ -770,7 +779,7 @@ fun! netrw#NetRead(mode,...)
" call Decho("filter input: ".getline('.'))
endif
if exists("g:netrw_ftpextracmd")
- exe "put ='".g:netrw_ftpextracmd."'"
+ put =g:netrw_ftpextracmd
" call Decho("filter input: ".getline('.'))
endif
put ='get \"'.netrw_fname.'\" '.tmpfile
@@ -820,15 +829,20 @@ fun! netrw#NetRead(mode,...)
return
endif
- if match(b:netrw_fname,"#") == -1
- " using g:netrw_http_cmd (usually wget or curl)
+ if match(b:netrw_fname,"#") == -1 || exists("g:netrw_http_xcmd")
+ " using g:netrw_http_cmd (usually elinks, links, curl, wget, or fetch)
" call Decho('using '.g:netrw_http_cmd.' (# not in b:netrw_fname<'.b:netrw_fname.">)")
-" call Decho("exe ".s:netrw_silentxfer."!".g:netrw_http_cmd." ".shellescape(tmpfile,1)." ".shellescape("http://".g:netrw_machine.netrw_fname,1))
- exe s:netrw_silentxfer."!".g:netrw_http_cmd." ".shellescape(tmpfile,1)." ".shellescape("http://".g:netrw_machine.b:netrw_fname,1)
+ if exists("g:netrw_http_xcmd")
+" call Decho("exe ".s:netrw_silentxfer."!".g:netrw_http_cmd." ".shellescape("http://".g:netrw_machine.b:netrw_fname,1)." ".g:netrw_http_xcmd." ".shellescape(tmpfile,1))
+ exe s:netrw_silentxfer."!".g:netrw_http_cmd." ".shellescape("http://".g:netrw_machine.b:netrw_fname,1)." ".g:netrw_http_xcmd." ".shellescape(tmpfile,1)
+ else
+" call Decho("exe ".s:netrw_silentxfer."!".g:netrw_http_cmd." ".shellescape(tmpfile,1)." ".shellescape("http://".g:netrw_machine.b:netrw_fname,1))
+ exe s:netrw_silentxfer."!".g:netrw_http_cmd." ".shellescape(tmpfile,1)." ".shellescape("http://".g:netrw_machine.b:netrw_fname,1)
+ endif
let result = s:NetrwGetFile(readcmd, tmpfile, b:netrw_method)
else
- " wget/curl plus a jump to an in-page marker (ie. http://abc/def.html#aMarker)
+ " wget/curl/fetch plus a jump to an in-page marker (ie. http://abc/def.html#aMarker)
" call Decho(("wget/curl plus jump (# in b:netrw_fname<".b:netrw_fname.">)")
let netrw_html= substitute(b:netrw_fname,"#.*$","","")
let netrw_tag = substitute(b:netrw_fname,"^.*#","","")
@@ -1084,14 +1098,14 @@ fun! netrw#NetWrite(...) range
new
" call Decho("filter input window#".winnr())
setlocal ff=unix
- exe "put ='".g:netrw_ftpmode."'"
-" call Decho("filter input: ".getline('.'))
+ put =g:netrw_ftpmode
+" call Decho("filter input: ".getline('$'))
if exists("g:netrw_ftpextracmd")
- exe "put ='".g:netrw_ftpextracmd."'"
-" call Decho("filter input: ".getline('.'))
+ put =g:netrw_ftpextracmd
+" call Decho("filter input: ".getline("$"))
endif
- exe "put ='".'put \"'.tmpfile.'\" \"'.netrw_fname.'\"'."'"
-" call Decho("filter input: ".getline('.'))
+ call setline(line("$")+1,'put "'.tmpfile.'" "'.netrw_fname.'"')
+" call Decho("filter input: ".getline("$"))
if exists("g:netrw_port") && g:netrw_port != ""
" call Decho("executing: %!".g:netrw_ftp_cmd." -i ".shellescape(g:netrw_machine,1)." ".shellescape(g:netrw_port,1))
exe s:netrw_silentxfer."%!".g:netrw_ftp_cmd." -i ".shellescape(g:netrw_machine,1)." ".shellescape(g:netrw_port,1)
@@ -1276,10 +1290,11 @@ fun! netrw#NetSource(...)
let i= 1
while i <= a:0
call netrw#NetRead(3,a:{i})
-" call Decho("s:netread_tmpfile<".s:netrw_tmpfile.">")
+" call Decho("(netrw#NetSource) s:netread_tmpfile<".s:netrw_tmpfile.">")
if s:FileReadable(s:netrw_tmpfile)
-" call Decho("exe so ".s:netrw_tmpfile)
- exe "so ".s:netrw_tmpfile
+" call Decho("(netrw#NetSource) exe so ".fnameescape(s:netrw_tmpfile))
+ exe "so ".fnameescape(s:netrw_tmpfile)
+" call Decho("(netrw#NetSource) delete(".s:netrw_tmpfile.")")
call delete(s:netrw_tmpfile)
unlet s:netrw_tmpfile
else
@@ -1654,6 +1669,7 @@ endfun
fun! s:BrowserMaps(islocal)
" call Dfunc("s:BrowserMaps(islocal=".a:islocal.") b:netrw_curdir<".b:netrw_curdir.">")
if a:islocal
+" call Decho("make local maps")
nnoremap <buffer> <silent> <cr> :call netrw#LocalBrowseCheck(<SID>NetrwBrowseChgDir(1,<SID>NetrwGetWord()))<cr>
nnoremap <buffer> <silent> - :exe "norm! 0"<bar>call netrw#LocalBrowseCheck(<SID>NetrwBrowseChgDir(1,'../'))<cr>
nnoremap <buffer> <silent> a :call <SID>NetrwHide(1)<cr>
@@ -1709,23 +1725,25 @@ fun! s:BrowserMaps(islocal)
if s:didstarstar || !mapcheck("<s-up>","n")
nnoremap <buffer> <silent> <s-up> :Pexplore<cr>
endif
+ let mapsafecurdir = escape(b:netrw_curdir, s:netrw_map_escape)
if g:netrw_mousemaps == 1
nnoremap <buffer> <silent> <leftmouse> <leftmouse>:call <SID>NetrwLeftmouse(1)<cr>
nnoremap <buffer> <silent> <middlemouse> <leftmouse>:call <SID>NetrwPrevWinOpen(1)<cr>
nnoremap <buffer> <silent> <s-leftmouse> <leftmouse>:call <SID>NetrwMarkFile(1,<SID>NetrwGetWord())<cr>
- exe 'nnoremap <buffer> <silent> <rightmouse> <leftmouse>:call <SID>NetrwLocalRm("'.b:netrw_curdir.'")<cr>'
- exe 'vnoremap <buffer> <silent> <rightmouse> <leftmouse>:call <SID>NetrwLocalRm("'.b:netrw_curdir.'")<cr>'
- endif
- exe 'nnoremap <buffer> <silent> <del> :call <SID>NetrwLocalRm("'.b:netrw_curdir.'")<cr>'
- exe 'vnoremap <buffer> <silent> <del> :call <SID>NetrwLocalRm("'.b:netrw_curdir.'")<cr>'
- exe 'nnoremap <buffer> <silent> D :call <SID>NetrwLocalRm("'.b:netrw_curdir.'")<cr>'
- exe 'vnoremap <buffer> <silent> D :call <SID>NetrwLocalRm("'.b:netrw_curdir.'")<cr>'
- exe 'nnoremap <buffer> <silent> R :call <SID>NetrwLocalRename("'.b:netrw_curdir.'")<cr>'
- exe 'vnoremap <buffer> <silent> R :call <SID>NetrwLocalRename("'.b:netrw_curdir.'")<cr>'
+ exe 'nnoremap <buffer> <silent> <rightmouse> <leftmouse>:call <SID>NetrwLocalRm("'.mapsafecurdir.'")<cr>'
+ exe 'vnoremap <buffer> <silent> <rightmouse> <leftmouse>:call <SID>NetrwLocalRm("'.mapsafecurdir.'")<cr>'
+ endif
+ exe 'nnoremap <buffer> <silent> <del> :call <SID>NetrwLocalRm("'.mapsafecurdir.'")<cr>'
+ exe 'vnoremap <buffer> <silent> <del> :call <SID>NetrwLocalRm("'.mapsafecurdir.'")<cr>'
+ exe 'nnoremap <buffer> <silent> D :call <SID>NetrwLocalRm("'.mapsafecurdir.'")<cr>'
+ exe 'vnoremap <buffer> <silent> D :call <SID>NetrwLocalRm("'.mapsafecurdir.'")<cr>'
+ exe 'nnoremap <buffer> <silent> R :call <SID>NetrwLocalRename("'.mapsafecurdir.'")<cr>'
+ exe 'vnoremap <buffer> <silent> R :call <SID>NetrwLocalRename("'.mapsafecurdir.'")<cr>'
exe 'nnoremap <buffer> <silent> <Leader>m :call <SID>NetrwMakeDir("")<cr>'
nnoremap <buffer> <F1> :he netrw-quickhelp<cr>
else " remote
+" call Decho("make remote maps")
call s:RemotePathAnalysis(b:netrw_curdir)
nnoremap <buffer> <silent> <cr> :call <SID>NetrwBrowse(0,<SID>NetrwBrowseChgDir(0,<SID>NetrwGetWord()))<cr>
nnoremap <buffer> <silent> <c-l> :call <SID>NetrwRefresh(0,<SID>NetrwBrowseChgDir(0,'./'))<cr>
@@ -1774,21 +1792,25 @@ fun! s:BrowserMaps(islocal)
if !hasmapto('<Plug>NetrwRefresh')
nmap <buffer> <c-l> <Plug>NetrwRefresh
endif
+
+ let mapsafepath = escape(s:path, s:netrw_map_escape)
+ let mapsafeusermach = escape(s:user.s:machine, s:netrw_map_escape)
+
nnoremap <buffer> <silent> <Plug>NetrwRefresh :call <SID>NetrwRefresh(0,<SID>NetrwBrowseChgDir(0,'./'))<cr>
if g:netrw_mousemaps == 1
nnoremap <buffer> <silent> <leftmouse> <leftmouse>:call <SID>NetrwLeftmouse(0)<cr>
nnoremap <buffer> <silent> <middlemouse> <leftmouse>:call <SID>NetrwPrevWinOpen(0)<cr>
nnoremap <buffer> <silent> <s-leftmouse> <leftmouse>:call <SID>NetrwMarkFile(0,<SID>NetrwGetWord())<cr>
- exe 'nnoremap <buffer> <silent> <rightmouse> <leftmouse>:call <SID>NetrwRemoteRm("'.s:user.s:machine.'","'.s:path.'")<cr>'
- exe 'vnoremap <buffer> <silent> <rightmouse> <leftmouse>:call <SID>NetrwRemoteRm("'.s:user.s:machine.'","'.s:path.'")<cr>'
- endif
- exe 'nnoremap <buffer> <silent> <del> :call <SID>NetrwRemoteRm("'.s:user.s:machine.'","'.s:path.'")<cr>'
- exe 'vnoremap <buffer> <silent> <del> :call <SID>NetrwRemoteRm("'.s:user.s:machine.'","'.s:path.'")<cr>'
- exe 'nnoremap <buffer> <silent> d :call <SID>NetrwMakeDir("'.s:user.s:machine.'")<cr>'
- exe 'nnoremap <buffer> <silent> D :call <SID>NetrwRemoteRm("'.s:user.s:machine.'","'.s:path.'")<cr>'
- exe 'vnoremap <buffer> <silent> D :call <SID>NetrwRemoteRm("'.s:user.s:machine.'","'.s:path.'")<cr>'
- exe 'nnoremap <buffer> <silent> R :call <SID>NetrwRemoteRename("'.s:user.s:machine.'","'.s:path.'")<cr>'
- exe 'vnoremap <buffer> <silent> R :call <SID>NetrwRemoteRename("'.s:user.s:machine.'","'.s:path.'")<cr>'
+ exe 'nnoremap <buffer> <silent> <rightmouse> <leftmouse>:call <SID>NetrwRemoteRm("'.mapsafeusermach.'","'.mapsafepath.'")<cr>'
+ exe 'vnoremap <buffer> <silent> <rightmouse> <leftmouse>:call <SID>NetrwRemoteRm("'.mapsafeusermach.'","'.mapsafepath.'")<cr>'
+ endif
+ exe 'nnoremap <buffer> <silent> <del> :call <SID>NetrwRemoteRm("'.mapsafeusermach.'","'.mapsafepath.'")<cr>'
+ exe 'vnoremap <buffer> <silent> <del> :call <SID>NetrwRemoteRm("'.mapsafeusermach.'","'.mapsafepath.'")<cr>'
+ exe 'nnoremap <buffer> <silent> d :call <SID>NetrwMakeDir("'.mapsafeusermach.'")<cr>'
+ exe 'nnoremap <buffer> <silent> D :call <SID>NetrwRemoteRm("'.mapsafeusermach.'","'.mapsafepath.'")<cr>'
+ exe 'vnoremap <buffer> <silent> D :call <SID>NetrwRemoteRm("'.mapsafeusermach.'","'.mapsafepath.'")<cr>'
+ exe 'nnoremap <buffer> <silent> R :call <SID>NetrwRemoteRename("'.mapsafeusermach.'","'.mapsafepath.'")<cr>'
+ exe 'vnoremap <buffer> <silent> R :call <SID>NetrwRemoteRename("'.mapsafeusermach.'","'.mapsafepath.'")<cr>'
nnoremap <buffer> <F1> :he netrw-quickhelp<cr>
endif
call s:SetRexDir(a:islocal,b:netrw_curdir)
@@ -1842,7 +1864,7 @@ fun! s:NetrwBookmarkDir(chg,curdir)
" change to the bookmarked directory
" call Decho("(user: <B>) change to the bookmarked directory")
if exists("g:NETRW_BOOKMARKDIR_{v:count}")
- exe "e ".g:NETRW_BOOKMARKDIR_{v:count}
+ exe "e ".fnameescape(g:NETRW_BOOKMARKDIR_{v:count})
else
echomsg "Sorry, bookmark#".v:count." doesn't exist!"
endif
@@ -2340,8 +2362,8 @@ fun! s:NetrwGetBuffer(islocal,dirname)
" let v:errmsg= "" " Decho
let escdirname= fnameescape(dirname)
" call Decho(" errmsg<".v:errmsg."> bufnr(".escdirname.")=".bufnr(escdirname)."<".bufname(bufnr(escdirname)).">")
-" call Decho(' exe silent! keepalt file '.fnameescape(escdirname))
- exe 'silent! keepalt file '.fnameescape(escdirname)
+" call Decho(' exe silent! keepalt file '.escdirname)
+ exe 'silent! keepalt file '.escdirname
" call Decho(" errmsg<".v:errmsg."> bufnr(".escdirname.")=".bufnr(escdirname)."<".bufname(bufnr(escdirname)).">")
endif
" call Decho(" named enew buffer#".bufnr("%")."<".bufname("%").">")
@@ -3273,7 +3295,7 @@ fun! netrw#Explore(indx,dosplit,style,...)
if starpat == 1
" starpat=1: Explore *//pattern (current directory only search for files containing pattern)
" call Decho("starpat=".starpat.": build *//pattern list")
- exe "vimgrep /".pattern."/gj ".b:netrw_curdir."/*"
+ exe "vimgrep /".pattern."/gj ".fnameescape(b:netrw_curdir)."/*"
let w:netrw_explore_list = map(getqflist(),'bufname(v:val.bufnr)')
if &hls | let keepregslash= s:ExplorePatHls(pattern) | endif
@@ -3707,6 +3729,14 @@ endfun
" of whatever may happen to be under the cursor at that
" moment. When the mouse and gui are available,
" shift-leftmouse may also be used to mark files.
+"
+" Creates two lists
+" s:netrwmarkfilelist -- holds complete paths to all marked files
+" s:netrwmarkfilelist_# -- holds list of marked files in current-buffer's directory (#==bufnr())
+"
+" Creates a marked file match string
+" s:netrwmarfilemtch_# -- used with 2match to display marked files
+"
fun! s:NetrwMarkFile(islocal,fname)
" call Dfunc("s:NetrwMarkFile(islocal=".a:islocal." fname<".a:fname.">)")
let curbufnr= bufnr("%")
@@ -3826,7 +3856,7 @@ fun! s:NetrwMarkFileCompress(islocal)
let fname= shellescape(s:ComposePath(curdir,fname))
endif
else
- let fname= shellescape(b:netrw_curdir.fname)
+ let fname= shellescape(b:netrw_curdir.fname,1)
endif
if executable(exe)
if a:islocal
@@ -3886,7 +3916,7 @@ fun! s:NetrwMarkFileCopy(islocal)
if a:islocal && s:netrwmftgt_islocal
" Copy marked files, local directory to local directory
" call Decho("copy from local to local")
- let args= join(map(copy(s:netrwmarkfilelist_{bufnr('%')}),"b:netrw_curdir.\"/\".shellescape(v:val)"))
+ let args= join(map(deepcopy(s:netrwmarkfilelist_{bufnr('%')}),"shellescape(b:netrw_curdir.\"/\".v:val)"))
" call Decho("system(".g:netrw_localcopycmd." ".args." ".shellescape(s:netrwmftgt).")")
call system(s:WinPath(g:netrw_localcopycmd)." ".args." ".shellescape(s:netrwmftgt))
@@ -3914,7 +3944,7 @@ fun! s:NetrwMarkFileCopy(islocal)
if isdirectory(tmpdir)
exe "keepjumps lcd ".fnameescape(tmpdir)
call netrw#NetrwObtain(a:islocal,s:netrwmarkfilelist_{bufnr('%')},tmpdir)
- let localfiles= map(copy(s:netrwmarkfilelist_{bufnr('%')}),'substitute(v:val,"^.*/","","")')
+ let localfiles= map(deepcopy(s:netrwmarkfilelist_{bufnr('%')}),'substitute(v:val,"^.*/","","")')
call s:NetrwUpload(localfiles,s:netrwmftgt)
if getcwd() == tmpdir
for fname in s:netrwmarkfilelist_{bufnr('%')}
@@ -3957,24 +3987,21 @@ endfun
fun! s:NetrwMarkFileDiff(islocal)
" call Dfunc("s:NetrwMarkFileDiff(islocal=".a:islocal.") b:netrw_curdir<".b:netrw_curdir.">")
let curbufnr= bufnr("%")
- if exists("s:netrwmarkfilelist_{curbufnr}")
+ if exists("s:netrwmarkfilelist_{curbufnr}")
let cnt = 0
let curdir = b:netrw_curdir
for fname in s:netrwmarkfilelist
let cnt= cnt + 1
- if !a:islocal
- let fname= curdir.fname
- endif
if cnt == 1
-" call Decho("diffthis: ".fname)
- exe "e ".fname
+" call Decho("diffthis: fname<".fname.">")
+ exe "e ".fnameescape(fname)
diffthis
elseif cnt == 2 || cnt == 3
vsplit
wincmd l
" call Decho("diffthis: ".fname)
- exe "e ".fname
+ exe "e ".fnameescape(fname)
diffthis
else
break
@@ -3982,6 +4009,7 @@ fun! s:NetrwMarkFileDiff(islocal)
endfor
call s:NetrwUnmarkList(curbufnr,curdir)
endif
+
" call Dret("s:NetrwMarkFileDiff")
endfun
@@ -3995,17 +4023,7 @@ fun! s:NetrwMarkFileEdit(islocal)
let curbufnr = bufnr("%")
if exists("s:netrwmarkfilelist_{curbufnr}")
call s:SetRexDir(a:islocal,curdir)
- if a:islocal && g:netrw_keepdir
- " use complete paths if its local and keepdir enabled
- let flist= ""
- for fname in s:netrwmarkfilelist
-" let flist= flist." ".s:ComposePath(curdir,fname)
- let flist= flist." ".fname
- endfor
- else
-" let flist= substitute(escape(join(s:netrwmarkfilelist_{curbufnr},"\t"),' '),"\t",' ','g')
- let flist= substitute(escape(join(s:netrwmarkfilelist,"\t"),' '),"\t",' ','g')
- endif
+ let flist= join(map(deepcopy(s:netrwmarkfilelist), "fnameescape(v:val)"))
" unmark markedfile list
" call s:NetrwUnmarkList(curbufnr,curdir)
call s:NetrwUnmarkAll()
@@ -4138,17 +4156,11 @@ endfun
fun! s:NetrwMarkFileGrep(islocal)
" call Dfunc("s:NetrwMarkFileGrep(islocal=".a:islocal.")")
let svpos = netrw#NetrwSavePosn()
- let curdir = b:netrw_curdir
let curbufnr = bufnr("%")
if exists("s:netrwmarkfilelist")
" call Decho("s:netrwmarkfilelist".string(s:netrwmarkfilelist).">")
- let netrwmarkfilelist= ""
- for fname in s:netrwmarkfilelist
-" call Decho("fname<".fname.">")
- let fname = escape(substitute(fname,"[\"']","","g")," ")
- let netrwmarkfilelist = netrwmarkfilelist." ".fname
- endfor
+ let netrwmarkfilelist= join(map(deepcopy(s:netrwmarkfilelist), "fnameescape(v:val)"))
call s:NetrwUnmarkAll()
" ask user for pattern
@@ -4295,7 +4307,7 @@ fun! s:NetrwMarkFilePrint(islocal)
1split
" the autocmds will handle both local and remote files
" call Decho("exe silent e ".escape(fname,' '))
- exe "silent e ".escape(fname,' ')
+ exe "silent e ".fnameescape(fname)
" call Decho("hardcopy")
hardcopy
q
@@ -4419,21 +4431,11 @@ fun! s:NetrwMarkFileTag(islocal)
if exists("s:netrwmarkfilelist")
" call Decho("s:netrwmarkfilelist".string(s:netrwmarkfilelist).">")
- if a:islocal && g:netrw_keepdir
- let netrwmarkfilelist= ""
- for fname in s:netrwmarkfilelist
-" let netrwmarkfilelist= netrwmarkfilelist." ".s:ComposePath(curdir,fname)
- let netrwmarkfilelist= netrwmarkfilelist." ".fname
- endfor
- else
- let netrwmarkfilelist= string(s:netrwmarkfilelist)
- let netrwmarkfilelist= substitute(netrwmarkfilelist,'[[\],]','','g')
- endif
+ let netrwmarkfilelist= join(map(deepcopy(s:netrwmarkfilelist), "shellescape(v:val,".!a:islocal.")"))
call s:NetrwUnmarkAll()
if a:islocal
if executable(g:netrw_ctags)
- call map(netrwmarkfilelist,"shellescape(v:val)")
" call Decho("call system(".g:netrw_ctags." ".netrwmarkfilelist.")")
call system(g:netrw_ctags." ".netrwmarkfilelist)
else
@@ -4447,7 +4449,7 @@ fun! s:NetrwMarkFileTag(islocal)
e tags
let path= substitute(curdir,'^\(.*\)/[^/]*$','\1/','')
" call Decho("curdir<".curdir."> path<".path.">")
- exe '%s/\t\(\S\+\)\t/\t'.escape(path,'/').'\1\t/e'
+ exe '%s/\t\(\S\+\)\t/\t'.escape(path,"/\n\r\\").'\1\t/e'
wq!
endif
2match none
@@ -4771,7 +4773,7 @@ fun! netrw#NetrwObtain(islocal,fname,...)
endfor
else
" transfer files with one command
- let filelist= join(map(copy(fname),"shellescape(v:val)"))
+ let filelist= join(map(deepcopy(fname),"shellescape(v:val)"))
" call Decho("system(".g:netrw_localcopycmd." ".filelist." ".shellescape(topath).")")
call system(g:netrw_localcopycmd." ".filelist." ".shellescape(topath))
endif
@@ -4801,7 +4803,7 @@ fun! netrw#NetrwObtain(islocal,fname,...)
else
let path= ""
endif
- let filelist= join(map(copy(fnamelist),'shellescape(g:netrw_machine.":".path.v:val,1))'))
+ let filelist= join(map(deepcopy(fnamelist),'shellescape(g:netrw_machine.":".path.v:val,1)'))
" call Decho("exe ".s:netrw_silentxfer."!".g:netrw_scp_cmd.shellescape(useport,1)." ".filelist." ".shellescape(tgtdir,1))
exe s:netrw_silentxfer."!".g:netrw_scp_cmd.shellescape(useport,1)." ".filelist." ".shellescape(tgtdir,1)
@@ -4812,7 +4814,7 @@ fun! netrw#NetrwObtain(islocal,fname,...)
let tmpbufnr= bufnr("%")
setlocal ff=unix
if exists("g:netrw_ftpmode") && g:netrw_ftpmode != ""
- exe "put ='".g:netrw_ftpmode."'"
+ put =g:netrw_ftpmode
" call Decho("filter input: ".getline('$'))
endif
@@ -4822,7 +4824,7 @@ fun! netrw#NetrwObtain(islocal,fname,...)
endif
if exists("g:netrw_ftpextracmd")
- exe "put ='".g:netrw_ftpextracmd."'"
+ put =g:netrw_ftpextracmd
" call Decho("filter input: ".getline('$'))
endif
for fname in fnamelist
@@ -4880,12 +4882,12 @@ fun! netrw#NetrwObtain(islocal,fname,...)
endif
if exists("g:netrw_ftpextracmd")
- exe "put ='".g:netrw_ftpextracmd."'"
+ put =g:netrw_ftpextracmd
" call Decho("filter input: ".getline('$'))
endif
if exists("g:netrw_ftpextracmd")
- exe "put ='".g:netrw_ftpextracmd."'"
+ put =g:netrw_ftpextracmd
" call Decho("filter input: ".getline('$'))
endif
for fname in fnamelist
@@ -5053,15 +5055,13 @@ fun! s:NetrwUpload(fname,tgt,...)
" handle uploading a single file using NetWrite
" call Decho("handle uploading a single file via NetWrite")
1split
- let efname= escape(a:fname,g:netrw_fname_escape)
-" call Decho("exe e ".efname)
- exe "e ".efname
+" call Decho("exe e ".fnameescape(a:fname))
+ exe "e ".fnameescape(a:fname)
" call Decho("now locally editing<".expand("%").">, has ".line("$")." lines")
if a:tgt =~ '/$'
let wfname= substitute(a:fname,'^.*/','','')
- let wfname= escape(a:tgt.wfname,g:netrw_fname_escape)
" call Decho("exe w! ".fnameescape(wfname))
- exe "w! ".fnameescape(wfname)
+ exe "w! ".fnameescape(a:tgt.wfname)
else
" call Decho("writing local->remote: exe w ".fnameescape(a:tgt))
exe "w ".fnameescape(a:tgt)
@@ -5075,8 +5075,8 @@ fun! s:NetrwUpload(fname,tgt,...)
let curdir= getcwd()
if a:tgt =~ '^scp:'
exe "keepjumps silent lcd ".fnameescape(fromdir)
- let filelist= copy(s:netrwmarkfilelist_{bufnr('%')})
- let args = join(map(filelist,"shellescape(v:val)"))
+ let filelist= deepcopy(s:netrwmarkfilelist_{bufnr('%')})
+ let args = join(map(filelist,"shellescape(v:val, 1)"))
if exists("g:netrw_port") && g:netrw_port != ""
let useport= " ".g:netrw_scpport." ".g:netrw_port
else
@@ -5097,11 +5097,11 @@ fun! s:NetrwUpload(fname,tgt,...)
silent keepjumps new
" call Decho("filter input window#".winnr())
- exe "put ='".g:netrw_ftpmode."'"
+ put =g:netrw_ftpmode
" call Decho("filter input: ".getline('$'))
if exists("g:netrw_ftpextracmd")
- exe "put ='".g:netrw_ftpextracmd."'"
+ put =g:netrw_ftpextracmd
" call Decho("filter input: ".getline('$'))
endif
@@ -5166,7 +5166,7 @@ fun! s:NetrwUpload(fname,tgt,...)
endif
if exists("g:netrw_ftpextracmd")
- exe "put ='".g:netrw_ftpextracmd."'"
+ put =g:netrw_ftpextracmd
" call Decho("filter input: ".getline('$'))
endif
@@ -5210,7 +5210,7 @@ fun! s:NetrwPreview(path) range
call s:NetrwSafeOptions()
if has("quickfix")
if !isdirectory(a:path)
- exe (g:netrw_preview? "vert " : "")."pedit ".escape(a:path,g:netrw_fname_escape)
+ exe (g:netrw_preview? "vert " : "")."pedit ".fnameescape(a:path)
elseif !exists("g:netrw_quiet")
call netrw#ErrorMsg(s:WARNING,"sorry, cannot preview a directory such as <".a:path.">",38)
endif
@@ -6027,8 +6027,8 @@ fun! s:NetrwRemoteListing()
let listcmd= s:MakeSshCmd(g:netrw_list_cmd)
" call Decho("listcmd<".listcmd."> (using g:netrw_list_cmd)")
if g:netrw_scp_cmd =~ '^pscp'
-" call Decho("1: exe silent r! ".listcmd.s:path)
- exe "silent r! ".listcmd.s:path
+" call Decho("1: exe silent r! ".shellescape(listcmd.s:path, 1))
+ exe "silent r! ".listcmd.shellescape(s:path, 1)
" remove rubbish and adjust listing format of 'pscp' to 'ssh ls -FLa' like
g/^Listing directory/d
g/^d[-rwx][-rwx][-rwx]/s+$+/+e
@@ -6286,7 +6286,7 @@ fun! s:NetrwRemoteFtpCmd(path,listcmd)
put ='cd \"'.a:path.'\"'
endif
if exists("g:netrw_ftpextracmd")
- exe "put ='".g:netrw_ftpextracmd."'"
+ put =g:netrw_ftpextracmd
" call Decho("filter input: ".getline('.'))
endif
call setline(line("$")+1,a:listcmd)
@@ -6320,7 +6320,7 @@ fun! s:NetrwRemoteFtpCmd(path,listcmd)
put ='cd \"'.a:path.'\"'
endif
if exists("g:netrw_ftpextracmd")
- exe "put ='".g:netrw_ftpextracmd."'"
+ put =g:netrw_ftpextracmd
" call Decho("filter input: ".getline('.'))
endif
call setline(line("$")+1,a:listcmd)
@@ -6669,7 +6669,7 @@ fun! s:LocalBrowseShellCmdRefresh()
if bufwinnr(ibuf) == -1 && index(buftablist,ibuf) == -1
" wipe out any non-displaying netrw buffer
" call Decho("wiping buf#".ibuf,"<".bufname(ibuf).">")
- exe "silent! bd ".ibuf
+ exe "silent! bd ".fnameescape(ibuf)
call remove(s:netrw_browselist,ibl)
" call Decho("browselist=".string(s:netrw_browselist))
continue
@@ -6860,7 +6860,7 @@ fun! s:NetrwLocalRename(path) range
let newname = substitute(oldname,subfrom,subto,'')
endif
endif
- let ret= rename(oldname,newname)
+ call rename(oldname,newname)
endfor
2match none
unlet s:netrwmarkfilelist_{bufnr("%")}
@@ -6891,7 +6891,7 @@ fun! s:NetrwLocalRename(path) range
let newname= input("Moving ".oldname." to : ",substitute(oldname,'/*$','','e'))
call inputrestore()
- let ret= rename(oldname,newname)
+ call rename(oldname,newname)
" call Decho("renaming <".oldname."> to <".newname.">")
let ctr= ctr + 1
@@ -7570,22 +7570,24 @@ fun! s:SetRexDir(islocal,dirname)
" call Dfunc("s:SetRexDir(islocal=".a:islocal." dirname<".a:dirname.">)")
" set up Rex and leftmouse-double-click
if a:islocal
- exe 'com! Rexplore call s:NetrwRexplore(1,"'.a:dirname.'")'
+ exe 'com! Rexplore call s:NetrwRexplore(1,"'.escape(a:dirname,'"\').'")'
if g:netrw_retmap
silent! unmap <2-leftmouse>
if !hasmapto("<Plug>NetrwReturn")
nmap <unique> <silent> <2-leftmouse> <Plug>NetrwReturn
endif
- exe 'nnoremap <silent> <Plug>NetrwReturn :call <SID>NetrwRexplore(1,"'.a:dirname.'")<cr>'
+ let dir = escape(a:dirname, s:netrw_map_escape)
+ exe 'nnoremap <silent> <Plug>NetrwReturn :call <SID>NetrwRexplore(1,"'.dir.'")<cr>'
endif
else
- exe 'com! Rexplore call s:NetrwRexplore(0,"'.a:dirname.'")'
+ exe 'com! Rexplore call s:NetrwRexplore(0,"'.escape(a:dirname,'"\').'")'
if g:netrw_retmap
silent! unmap <2-leftmouse>
if !hasmapto("<Plug>NetrwReturn")
nmap <unique> <silent> <2-leftmouse> <Plug>NetrwReturn
endif
- exe 'nnoremap <silent> <Plug>NetrwReturn :call <SID>NetrwRexplore(0,"'.a:dirname.'")<cr>'
+ let dir = escape(a:dirname, s:netrw_map_escape)
+ exe 'nnoremap <silent> <Plug>NetrwReturn :call <SID>NetrwRexplore(0,"'.dir.'")<cr>'
endif
endif
" call Dret("s:SetRexDir")
diff --git a/runtime/autoload/tar.vim b/runtime/autoload/tar.vim
index b1529d60f..fc168e801 100644
--- a/runtime/autoload/tar.vim
+++ b/runtime/autoload/tar.vim
@@ -1,7 +1,7 @@
" tar.vim: Handles browsing tarfiles
" AUTOLOAD PORTION
-" Date: Jul 12, 2008
-" Version: 19 + changes by Bram
+" Date: Jul 30, 2008
+" Version: 20
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
" License: Vim License (see vim's :help license)
"
@@ -24,7 +24,7 @@ set cpo&vim
if &cp || exists("g:loaded_tar") || v:version < 700
finish
endif
-let g:loaded_tar= "v19+b"
+let g:loaded_tar= "v20"
"call Decho("loading autoload/tar.vim")
if v:version < 701 || (v:version == 701 && !has("patch299"))
echoerr "(autoload/tar.vim) need vim v7.1 with patchlevel 299"
diff --git a/runtime/autoload/vimball.vim b/runtime/autoload/vimball.vim
index d69c64532..4f6292b9c 100644
--- a/runtime/autoload/vimball.vim
+++ b/runtime/autoload/vimball.vim
@@ -1,7 +1,7 @@
" vimball.vim : construct a file containing both paths and files
" Author: Charles E. Campbell, Jr.
-" Date: Jun 05, 2008
-" Version: 27
+" Date: Jul 30, 2008
+" Version: 29
" GetLatestVimScripts: 1502 1 :AutoInstall: vimball.vim
" Copyright: (c) 2004-2008 by Charles E. Campbell, Jr.
" The VIM LICENSE applies to Vimball.vim, and Vimball.txt
@@ -15,7 +15,7 @@ if &cp || exists("g:loaded_vimball") || v:version < 700
finish
endif
let s:keepcpo = &cpo
-let g:loaded_vimball = "v27"
+let g:loaded_vimball = "v29"
set cpo&vim
"DechoTabOn
@@ -169,9 +169,8 @@ fun! vimball#MkVimball(line1,line2,writelevel,...) range
call setline(lastline+1,0)
" write the file from the tab
- let svfilepath= s:Path(svfile,'')
-" call Decho("exe $r ".fnameescape(svfilepath))
- exe "$r ".fnameescape(svfilepath)
+" call Decho("exe $r ".fnameescape(svfile))
+ exe "$r ".fnameescape(svfile)
call setline(lastline+1,line("$") - lastline - 1)
" call Decho("lastline=".lastline." line$=".line("$"))
@@ -186,13 +185,11 @@ fun! vimball#MkVimball(line1,line2,writelevel,...) range
call s:ChgDir(curdir)
setlocal ff=unix
if a:writelevel
- let vbnamepath= s:Path(vbname,'')
-" call Decho("exe w! ".fnameescape(vbnamepath))
- exe "w! ".fnameescape(vbnamepath)
+" call Decho("exe w! ".fnameescape(vbname))
+ exe "w! ".fnameescape(vbname)
else
- let vbnamepath= s:Path(vbname,'')
-" call Decho("exe w ".fnameescape(vbnamepath))
- exe "w ".fnameescape(vbnamepath)
+" call Decho("exe w ".fnameescape(vbname))
+ exe "w ".fnameescape(vbname)
endif
" call Decho("Vimball<".vbname."> created")
echo "Vimball<".vbname."> created"
@@ -215,8 +212,8 @@ endfun
fun! vimball#Vimball(really,...)
" call Dfunc("vimball#Vimball(really=".a:really.") a:0=".a:0)
- if v:version < 701 || (v:version == 701 && !has("patch299"))
- echoerr "This version of vimball requires vim 7.1 with patch 299"
+ if v:version < 701 || (v:version == 701 && !exists('*fnameescape'))
+ echoerr "your vim is missing the fnameescape() function"
" call Dret("vimball#Vimball : needs 7.1 with patch 299")
return
endif
@@ -338,7 +335,7 @@ fun! vimball#Vimball(really,...)
" write tab to file
if a:really
- let fnamepath= s:Path(home."/".fname,'')
+ let fnamepath= home."/".fname
" call Decho("exe w! ".fnameescape(fnamepath))
exe "silent w! ".fnameescape(fnamepath)
echo "wrote ".fnamepath
@@ -364,9 +361,9 @@ fun! vimball#Vimball(really,...)
" set up help
" call Decho("about to set up help: didhelp<".didhelp.">")
if didhelp != ""
- let htpath= s:Path(home."/".didhelp,"")
+ let htpath= home."/".didhelp
" call Decho("exe helptags ".htpath)
- exe "helptags ".htpath
+ exe "helptags ".fnameescape(htpath)
echo "did helptags"
endif
@@ -578,27 +575,6 @@ fun! s:ChgDir(newdir)
endfun
" ---------------------------------------------------------------------
-" s:Path: prepend and append quotes and do escaping {{{2
-fun! s:Path(cmd,quote)
-" call Dfunc("Path(cmd<".a:cmd."> quote<".a:quote.">) vimball_path_escape<".g:vimball_path_escape.">")
- if (has("win32") || has("win95") || has("win64") || has("win16"))
-" let cmdpath= a:quote.substitute(a:cmd,'/','\\','g').a:quote
- let cmdpath= a:quote.substitute(a:cmd,'\\','/','g').a:quote
-" call Decho("cmdpath<".cmdpath."> (win32 mod)")
- else
- let cmdpath= a:quote.a:cmd.a:quote
-" call Decho("cmdpath<".cmdpath."> (not-win32 mod)")
- endif
- if a:quote == "" && g:vimball_path_escape !~ ' '
- let cmdpath= escape(cmdpath,' ')
-" call Decho("cmdpath<".cmdpath."> (empty quote case)")
- endif
- let cmdpath= escape(cmdpath,g:vimball_path_escape)
-" call Dret("Path <".cmdpath.">")
- return cmdpath
-endfun
-
-" ---------------------------------------------------------------------
" s:RecordInVar: record a un-vimball command in the .VimballRecord file {{{2
fun! s:RecordInVar(home,cmd)
" call Dfunc("RecordInVar(home<".a:home."> cmd<".a:cmd.">)")
@@ -719,14 +695,14 @@ fun! vimball#SaveSettings()
let s:acdkeep = &acd
endif
let s:eikeep = &ei
- let s:fenkeep = &fen
+ let s:fenkeep = &l:fen
let s:hidkeep = &hidden
let s:ickeep = &ic
let s:lzkeep = &lz
let s:pmkeep = &pm
let s:repkeep = &report
let s:vekeep = &ve
- let s:ffkeep = &ff
+ let s:ffkeep = &l:ff
if exists("&acd")
setlocal ei=all ve=all noacd nofen noic report=999 nohid bt= ma lz pm= ff=unix
else
@@ -745,7 +721,7 @@ fun! vimball#RestoreSettings()
if exists("&acd")
let &acd = s:acdkeep
endif
- let &fen = s:fenkeep
+ let &l:fen = s:fenkeep
let &hidden = s:hidkeep
let &ic = s:ickeep
let &lz = s:lzkeep
@@ -753,7 +729,7 @@ fun! vimball#RestoreSettings()
let &report = s:repkeep
let &ve = s:vekeep
let &ei = s:eikeep
- let &ff = s:ffkeep
+ let &l:ff = s:ffkeep
if s:makeep[0] != 0
" restore mark a
" call Decho("restore mark-a: makeep=".string(makeep))
diff --git a/runtime/autoload/zip.vim b/runtime/autoload/zip.vim
index b35a411d7..af56944ce 100644
--- a/runtime/autoload/zip.vim
+++ b/runtime/autoload/zip.vim
@@ -1,7 +1,7 @@
" zip.vim: Handles browsing zipfiles
" AUTOLOAD PORTION
-" Date: Jul 12, 2008
-" Version: 21 (modified by Bram)
+" Date: Jul 30, 2008
+" Version: 22
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
" License: Vim License (see vim's :help license)
" Copyright: Copyright (C) 2005-2008 Charles E. Campbell, Jr. {{{1
@@ -22,7 +22,7 @@ if &cp || exists("g:loaded_zip") || v:version < 700
finish
endif
-let g:loaded_zip = "v21+b"
+let g:loaded_zip = "v22"
let s:zipfile_escape = ' ?&;\'
let s:ERROR = 2
let s:WARNING = 1
@@ -58,6 +58,12 @@ fun! zip#Browse(zipfile)
set report=10
" sanity checks
+ if !exists("*fnameescape")
+ if &verbose > 1
+ echoerr "the zip plugin is not available (your vim doens't support fnameescape())"
+ endif
+ return
+ endif
if !executable(g:zip_unzipcmd)
redraw!
echohl Error | echo "***error*** (zip#Browse) unzip not available on your system"
@@ -99,8 +105,8 @@ fun! zip#Browse(zipfile)
0d
$
-" call Decho("exe silent r! ".g:zip_unzipcmd." -l ".s:Escape(a:zipfile,1))
- exe "silent r! ".g:zip_unzipcmd." -l ".s:Escape(a:zipfile,1)
+" call Decho("exe silent r! ".g:zip_unzipcmd." -l -- ".s:Escape(a:zipfile,1))
+ exe "silent r! ".g:zip_unzipcmd." -l -- ".s:Escape(a:zipfile,1)
if v:shell_error != 0
redraw!
echohl WarningMsg | echo "***warning*** (zip#Browse) ".fnameescape(a:zipfile)." is not a zip file" | echohl None
@@ -193,8 +199,8 @@ fun! zip#Read(fname,mode)
" call Decho("zipfile<".zipfile.">")
" call Decho("fname <".fname.">")
-" call Decho("exe r! ".g:zip_unzipcmd." -p ".s:Escape(zipfile,1)." ".s:Escape(fname,1))
- exe "silent r! ".g:zip_unzipcmd." -p ".s:Escape(zipfile,1)." ".s:Escape(fname,1)
+" call Decho("exe r! ".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fname,1))
+ exe "silent r! ".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fname,1)
" cleanup
0d
@@ -286,8 +292,8 @@ fun! zip#Write(fname)
let fname = substitute(fname, '[', '[[]', 'g')
endif
-" call Decho(g:zip_zipcmd." -u ".s:Escape(zipfile,0)." ".s:Escape(fname,0))
- call system(g:zip_zipcmd." -u ".s:Escape(zipfile,0)." ".s:Escape(fname,0))
+" call Decho(g:zip_zipcmd." -u ".s:Escape(fnamemodify(zipfile,":p"),0)." ".s:Escape(fname,0))
+ call system(g:zip_zipcmd." -u ".s:Escape(fnamemodify(zipfile,":p"),0)." ".s:Escape(fname,0))
if v:shell_error != 0
redraw!
echohl Error | echo "***error*** (zip#Write) sorry, unable to update ".zipfile." with ".fname | echohl None
@@ -342,9 +348,8 @@ endfun
fun! s:ChgDir(newdir,errlvl,errmsg)
" call Dfunc("ChgDir(newdir<".a:newdir."> errlvl=".a:errlvl." errmsg<".a:errmsg.">)")
-
try
- exe "cd ".fnameescape(newdir)
+ exe "cd ".fnameescape(a:newdir)
catch /^Vim\%((\a\+)\)\=:E344/
redraw!
if a:errlvl == s:NOTE
diff --git a/runtime/colors/darkblue.vim b/runtime/colors/darkblue.vim
index c1800eaca..411712272 100644
--- a/runtime/colors/darkblue.vim
+++ b/runtime/colors/darkblue.vim
@@ -1,6 +1,6 @@
" Vim color file
" Maintainer: Bohdan Vlasyuk <bohdan@vstu.edu.ua>
-" Last Change: 2006 Apr 30
+" Last Change: 2008 Jul 18
" darkblue -- for those who prefer dark background
" [note: looks bit uglier with come terminal palettes,
@@ -58,3 +58,9 @@ hi PreProc ctermfg=magenta guifg=#ff80ff gui=none cterm=none
hi type ctermfg=green guifg=#60ff60 gui=none cterm=none
hi Underlined cterm=underline term=underline
hi Ignore guifg=bg ctermfg=bg
+
+" suggested by tigmoid, 2008 Jul 18
+hi Pmenu guifg=#c0c0c0 guibg=#404080
+hi PmenuSel guifg=#c0c0c0 guibg=#2050d0
+hi PmenuSbar guifg=blue guibg=darkgray
+hi PmenuThumb guifg=#c0c0c0
diff --git a/runtime/doc/Makefile b/runtime/doc/Makefile
index 3a289d7b0..2f697508b 100644
--- a/runtime/doc/Makefile
+++ b/runtime/doc/Makefile
@@ -287,6 +287,11 @@ CONVERTED = \
vimdiff-it.UTF-8.1 \
vimtutor-it.UTF-8.1 \
xxd-it.UTF-8.1 \
+ vim-pl.UTF-8.1 \
+ evim-pl.UTF-8.1 \
+ vimdiff-pl.UTF-8.1 \
+ vimtutor-pl.UTF-8.1 \
+ xxd-pl.UTF-8.1 \
vim-ru.UTF-8.1 \
evim-ru.UTF-8.1 \
vimdiff-ru.UTF-8.1 \
@@ -296,7 +301,7 @@ CONVERTED = \
.SUFFIXES:
.SUFFIXES: .c .o .txt .html
-all: tags vim.man vimdiff.man vimtutor.man xxd.man $(CONVERTED)
+all: tags vim.man evim.man vimdiff.man vimtutor.man xxd.man $(CONVERTED)
# Use Vim to generate the tags file. Can only be used when Vim has been
# compiled and installed. Supports multiple languages.
@@ -314,6 +319,9 @@ doctags: doctags.c
vim.man: vim.1
nroff -man vim.1 | sed -e s/.//g > vim.man
+evim.man: evim.1
+ nroff -man evim.1 | sed -e s/.//g > evim.man
+
vimdiff.man: vimdiff.1
nroff -man vimdiff.1 | sed -e s/.//g > vimdiff.man
@@ -445,6 +453,21 @@ vimtutor-it.UTF-8.1: vimtutor-it.1
xxd-it.UTF-8.1: xxd-it.1
iconv -f latin1 -t utf-8 $< >$@
+vim-pl.UTF-8.1: vim-pl.1
+ iconv -f latin2 -t utf-8 $< >$@
+
+evim-pl.UTF-8.1: evim-pl.1
+ iconv -f latin2 -t utf-8 $< >$@
+
+vimdiff-pl.UTF-8.1: vimdiff-pl.1
+ iconv -f latin2 -t utf-8 $< >$@
+
+vimtutor-pl.UTF-8.1: vimtutor-pl.1
+ iconv -f latin2 -t utf-8 $< >$@
+
+xxd-pl.UTF-8.1: xxd-pl.1
+ iconv -f latin2 -t utf-8 $< >$@
+
vim-ru.UTF-8.1: vim-ru.1
iconv -f KOI8-R -t utf-8 $< >$@
diff --git a/runtime/doc/arabic.txt b/runtime/doc/arabic.txt
index dc8e9b173..164764c55 100644
--- a/runtime/doc/arabic.txt
+++ b/runtime/doc/arabic.txt
@@ -1,4 +1,4 @@
-*arabic.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*arabic.txt* For Vim version 7.2c. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Nadim Shaikli
diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt
index e892f4c49..271dd5cb8 100644
--- a/runtime/doc/autocmd.txt
+++ b/runtime/doc/autocmd.txt
@@ -1,4 +1,4 @@
-*autocmd.txt* For Vim version 7.2b. Last change: 2008 Jun 27
+*autocmd.txt* For Vim version 7.2c. Last change: 2008 Jun 27
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt
index 65af5fc1c..e38cc24e5 100644
--- a/runtime/doc/change.txt
+++ b/runtime/doc/change.txt
@@ -1,4 +1,4 @@
-*change.txt* For Vim version 7.2b. Last change: 2008 Jul 09
+*change.txt* For Vim version 7.2c. Last change: 2008 Jul 24
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1561,10 +1561,12 @@ found here: |sort()|.
With [n] sorting is done on the first decimal number
in the line (after or inside a {pattern} match).
+ One leading '-' is included in the number.
With [x] sorting is done on the first hexadecimal
number in the line (after or inside a {pattern}
match). A leading "0x" or "0X" is ignored.
+ One leading '-' is included in the number.
With [o] sorting is done on the first octal number in
the line (after or inside a {pattern} match).
diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt
index 8f577c87a..66a8de307 100644
--- a/runtime/doc/cmdline.txt
+++ b/runtime/doc/cmdline.txt
@@ -1,4 +1,4 @@
-*cmdline.txt* For Vim version 7.2b. Last change: 2008 Jul 11
+*cmdline.txt* For Vim version 7.2c. Last change: 2008 Jul 29
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -99,19 +99,20 @@ CTRL-E or <End> *c_CTRL-E* *c_<End>*
cursor to end of command-line
*c_<LeftMouse>*
-<LeftMouse> cursor to position of mouse click.
+<LeftMouse> Move the cursor to the position of the mouse click.
CTRL-H *c_<BS>* *c_CTRL-H*
-<BS> delete the character in front of the cursor (see |:fixdel| if
+<BS> Delete the character in front of the cursor (see |:fixdel| if
your <BS> key does not do what you want).
*c_<Del>*
-<Del> delete the character under the cursor (at end of line:
+<Del> Delete the character under the cursor (at end of line:
character before the cursor) (see |:fixdel| if your <Del>
key does not do what you want).
*c_CTRL-W*
-CTRL-W delete the word before the cursor
+CTRL-W Delete the |word| before the cursor. This depends on the
+ 'iskeyword' option.
*c_CTRL-U*
-CTRL-U remove all characters between the cursor position and
+CTRL-U Remove all characters between the cursor position and
the beginning of the line. Previous versions of vim
deleted all characters on the line. If that is the
preferred behavior, add the following to your .vimrc: >
@@ -997,7 +998,7 @@ other than the one that is executed with <CR> are lost.
If you would like to execute the command under the cursor and then have the
command-line window open again, you may find this mapping useful: >
- :map <F5> <CR>q:
+ :autocmd CmdwinEnter * map <buffer> <F5> <CR>q:
VARIOUS
@@ -1044,9 +1045,9 @@ events are not triggered. You can use the Cmdwin events to do settings
specifically for the command-line window. Be careful not to cause side
effects!
Example: >
- :au CmdwinEnter : let b:cpt_save = &cpt | set cpt=v
+ :au CmdwinEnter : let b:cpt_save = &cpt | set cpt=.
:au CmdwinLeave : let &cpt = b:cpt_save
-This sets 'complete' to use command-line completion in Insert mode for CTRL-N.
+This sets 'complete' to use completion in the current window for |i_CTRL-N|.
Another example: >
:au CmdwinEnter [/?] startinsert
This will make Vim start in Insert mode in the command-line window.
diff --git a/runtime/doc/debug.txt b/runtime/doc/debug.txt
index 1eb20afbf..aac589fb6 100644
--- a/runtime/doc/debug.txt
+++ b/runtime/doc/debug.txt
@@ -1,4 +1,4 @@
-*debug.txt* For Vim version 7.2b. Last change: 2006 May 01
+*debug.txt* For Vim version 7.2c. Last change: 2006 May 01
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/debugger.txt b/runtime/doc/debugger.txt
index ea9858a7d..dfb302deb 100644
--- a/runtime/doc/debugger.txt
+++ b/runtime/doc/debugger.txt
@@ -1,4 +1,4 @@
-*debugger.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*debugger.txt* For Vim version 7.2c. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Gordon Prieur
diff --git a/runtime/doc/develop.txt b/runtime/doc/develop.txt
index 85bf1c577..d18b9542a 100644
--- a/runtime/doc/develop.txt
+++ b/runtime/doc/develop.txt
@@ -1,4 +1,4 @@
-*develop.txt* For Vim version 7.2b. Last change: 2007 May 11
+*develop.txt* For Vim version 7.2c. Last change: 2007 May 11
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/diff.txt b/runtime/doc/diff.txt
index 379f6a6be..2177c5698 100644
--- a/runtime/doc/diff.txt
+++ b/runtime/doc/diff.txt
@@ -1,12 +1,12 @@
-*diff.txt* For Vim version 7.2b. Last change: 2006 Oct 02
+*diff.txt* For Vim version 7.2c. Last change: 2008 Jul 21
VIM REFERENCE MANUAL by Bram Moolenaar
*diff* *vimdiff* *gvimdiff* *diff-mode*
-This file describes the +diff feature: Showing differences between two or
-three versions of the same file.
+This file describes the +diff feature: Showing differences between two,
+three or four versions of the same file.
The basics are explained in section |08.7| of the user manual.
@@ -49,7 +49,7 @@ What happens is that Vim opens a window for each of the files. This is like
using the |-O| argument. This uses vertical splits. If you prefer horizontal
splits add the |-o| argument: >
- vimdiff -o file1 file2 [file3]
+ vimdiff -o file1 file2 [file3 [file4]]
If you always prefer horizontal splits include "horizontal" in 'diffopt'.
diff --git a/runtime/doc/digraph.txt b/runtime/doc/digraph.txt
index b15651d79..7cc2558a0 100644
--- a/runtime/doc/digraph.txt
+++ b/runtime/doc/digraph.txt
@@ -1,4 +1,4 @@
-*digraph.txt* For Vim version 7.2b. Last change: 2007 Sep 10
+*digraph.txt* For Vim version 7.2c. Last change: 2008 Jul 17
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -53,7 +53,9 @@ this file.
The decimal number normally is the Unicode number of the character. Note that
the meaning doesn't change when 'encoding' changes. The character will be
converted from Unicode to 'encoding' when needed. This does require the
-conversion to be available, it might fail.
+conversion to be available, it might fail. For the NUL character you will see
+"10". That's because NUL characters are internally represented with a NL
+character. When you write the file it will become a NUL character.
When Vim was compiled without the +multi_byte feature, you need to specify the
character in the encoding given with 'encoding'. You might want to use
diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt
index 65a11344c..05a9e146e 100644
--- a/runtime/doc/editing.txt
+++ b/runtime/doc/editing.txt
@@ -1,4 +1,4 @@
-*editing.txt* For Vim version 7.2b. Last change: 2008 Jul 05
+*editing.txt* For Vim version 7.2c. Last change: 2008 Jul 05
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 20fa361da..ffe5ea9e5 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt* For Vim version 7.2b. Last change: 2008 Jul 09
+*eval.txt* For Vim version 7.2c. Last change: 2008 Jul 16
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -967,11 +967,16 @@ These are INVALID:
3. empty {M}
1e40 missing .{M}
+ *float-pi* *float-e*
+A few useful values to copy&paste: >
+ :let pi = 3.14159265359
+ :let e = 2.71828182846
+
Rationale:
Before floating point was introduced, the text "123.456" was interpreted as
the two numbers "123" and "456", both converted to a string and concatenated,
resulting in the string "123456". Since this was considered pointless, and we
-could not find it actually being used in Vim scripts, this backwards
+could not find it intentionally being used in Vim scripts, this backwards
incompatibility was accepted in favor of being able to use the normal notation
for floating point numbers.
@@ -4963,9 +4968,16 @@ shellescape({string} [, {special}]) *shellescape()*
and replace all "'" with "'\''".
When the {special} argument is present and it's a non-zero
Number or a non-empty String (|non-zero-arg|), then special
- items such as "%", "#" and "<cword>" will be preceded by a
- backslash. This backslash will be removed again by the |:!|
+ items such as "!", "%", "#" and "<cword>" will be preceded by
+ a backslash. This backslash will be removed again by the |:!|
command.
+ The "!" character will be escaped (again with a |non-zero-arg|
+ {special}) when 'shell' contains "csh" in the tail. That is
+ because for csh and tcsh "!" is used for history replacement
+ even when inside single quotes.
+ The <NL> character is also escaped. With a |non-zero-arg|
+ {special} and 'shell' containing "csh" in the tail it's
+ escaped a second time.
Example of use with a |:!| command: >
:exe '!dir ' . shellescape(expand('<cfile>'), 1)
< This results in a directory listing for the file under the
@@ -5918,7 +5930,7 @@ It's also possible to use curly braces, see |curly-braces-names|. And the
A function local to a script must start with "s:". A local script function
can only be called from within the script and from functions, user commands
and autocommands defined in the script. It is also possible to call the
-function from a mappings defined in the script, but then |<SID>| must be used
+function from a mapping defined in the script, but then |<SID>| must be used
instead of "s:" when the mapping is expanded outside of the script.
*:fu* *:function* *E128* *E129* *E123*
@@ -6028,7 +6040,7 @@ can be 0). "a:000" is set to a |List| that contains these arguments. Note
that "a:1" is the same as "a:000[0]".
*E742*
The a: scope and the variables in it cannot be changed, they are fixed.
-However, if a |List| or |Dictionary| is used, you can changes their contents.
+However, if a |List| or |Dictionary| is used, you can change their contents.
Thus you can pass a |List| to a function and have the function add an item to
it. If you want to make sure the function cannot change a |List| or
|Dictionary| use |:lockvar|.
diff --git a/runtime/doc/farsi.txt b/runtime/doc/farsi.txt
index 5a42e439f..f044e0fd3 100644
--- a/runtime/doc/farsi.txt
+++ b/runtime/doc/farsi.txt
@@ -1,4 +1,4 @@
-*farsi.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*farsi.txt* For Vim version 7.2c. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Mortaza Ghassab Shiran
diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt
index 4bff42d5b..4b5ac9e2c 100644
--- a/runtime/doc/filetype.txt
+++ b/runtime/doc/filetype.txt
@@ -1,4 +1,4 @@
-*filetype.txt* For Vim version 7.2b. Last change: 2008 Jun 27
+*filetype.txt* For Vim version 7.2c. Last change: 2008 Jul 15
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -482,6 +482,29 @@ g:changelog_date_end_entry_search
The default is '^\s*$' which finds lines that contain
only whitespace or are completely empty.
+b:changelog_name *b:changelog_name*
+ Name of the ChangeLog file to look for.
+ The default is 'ChangeLog'.
+
+b:changelog_path
+ Path of the ChangeLog to use for the current buffer.
+ The default is empty, thus looking for a file named
+ |b:changelog_name| in the same directory as the
+ current buffer. If not found, the parent directory of
+ the current buffer is searched. This continues
+ recursively until a file is found or there are no more
+ parent directories to search.
+
+b:changelog_entry_prefix
+ Name of a function to call to generate a prefix to a
+ new entry. This function takes no arguments and
+ should return a string containing the prefix.
+ Returning an empty prefix is fine.
+ The default generates the shortest path between the
+ ChangeLog's pathname and the current buffers pathname.
+ In the future, it will also be possible to use other
+ variable contexts for this variable, for example, g:.
+
The Changelog entries are inserted where they add the least amount of text.
After figuring out the current date and user, the file is searched for an
entry beginning with the current date and user and if found adds another item
diff --git a/runtime/doc/fold.txt b/runtime/doc/fold.txt
index 8a8d800e6..f4aa79912 100644
--- a/runtime/doc/fold.txt
+++ b/runtime/doc/fold.txt
@@ -1,4 +1,4 @@
-*fold.txt* For Vim version 7.2b. Last change: 2007 May 11
+*fold.txt* For Vim version 7.2c. Last change: 2007 May 11
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/ft_ada.txt b/runtime/doc/ft_ada.txt
index 621d58342..92d1433f2 100644
--- a/runtime/doc/ft_ada.txt
+++ b/runtime/doc/ft_ada.txt
@@ -1,4 +1,4 @@
-*ft_ada.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*ft_ada.txt* For Vim version 7.2c. Last change: 2008 Jun 21
ADA FILE TYPE PLUG-INS REFERENCE MANUAL~
diff --git a/runtime/doc/ft_sql.txt b/runtime/doc/ft_sql.txt
index 8d236a10e..38b5b5832 100644
--- a/runtime/doc/ft_sql.txt
+++ b/runtime/doc/ft_sql.txt
@@ -1,4 +1,4 @@
-*ft_sql.txt* For Vim version 7.2b. Last change: Wed Apr 26 2006 3:05:33 PM
+*ft_sql.txt* For Vim version 7.2c. Last change: Wed Apr 26 2006 3:05:33 PM
by David Fishburn
diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt
index 58123b1e9..c3b84c0a6 100644
--- a/runtime/doc/gui.txt
+++ b/runtime/doc/gui.txt
@@ -1,4 +1,4 @@
-*gui.txt* For Vim version 7.2b. Last change: 2008 Jun 14
+*gui.txt* For Vim version 7.2c. Last change: 2008 Jun 14
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/gui_w16.txt b/runtime/doc/gui_w16.txt
index db1f83110..e75416ac2 100644
--- a/runtime/doc/gui_w16.txt
+++ b/runtime/doc/gui_w16.txt
@@ -1,4 +1,4 @@
-*gui_w16.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*gui_w16.txt* For Vim version 7.2c. 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
index 85b910f5b..ed42122ca 100644
--- a/runtime/doc/gui_w32.txt
+++ b/runtime/doc/gui_w32.txt
@@ -1,4 +1,4 @@
-*gui_w32.txt* For Vim version 7.2b. Last change: 2007 Aug 30
+*gui_w32.txt* For Vim version 7.2c. Last change: 2007 Aug 30
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/gui_x11.txt b/runtime/doc/gui_x11.txt
index ff848564d..d33f56bf2 100644
--- a/runtime/doc/gui_x11.txt
+++ b/runtime/doc/gui_x11.txt
@@ -1,4 +1,4 @@
-*gui_x11.txt* For Vim version 7.2b. Last change: 2007 Dec 09
+*gui_x11.txt* For Vim version 7.2c. Last change: 2007 Dec 09
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/hangulin.txt b/runtime/doc/hangulin.txt
index 29a828a74..c743fc658 100644
--- a/runtime/doc/hangulin.txt
+++ b/runtime/doc/hangulin.txt
@@ -1,4 +1,4 @@
-*hangulin.txt* For Vim version 7.2b. Last change: 2006 Apr 02
+*hangulin.txt* For Vim version 7.2c. 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
index d28c33d63..c9b141f50 100644
--- a/runtime/doc/hebrew.txt
+++ b/runtime/doc/hebrew.txt
@@ -1,4 +1,4 @@
-*hebrew.txt* For Vim version 7.2b. Last change: 2007 Jun 14
+*hebrew.txt* For Vim version 7.2c. Last change: 2007 Jun 14
VIM REFERENCE MANUAL by Ron Aaron (and Avner Lottem)
diff --git a/runtime/doc/help.txt b/runtime/doc/help.txt
index e81dd3a4e..db3f1b61c 100644
--- a/runtime/doc/help.txt
+++ b/runtime/doc/help.txt
@@ -1,4 +1,4 @@
-*help.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*help.txt* For Vim version 7.2c. Last change: 2008 Jul 21
VIM - main help file
k
@@ -126,7 +126,7 @@ Advanced editing ~
|tabpage.txt| commands for using multiple tab pages
|syntax.txt| syntax highlighting
|spell.txt| spell checking
-|diff.txt| working with two or three versions of the same file
+|diff.txt| working with two to four versions of the same file
|autocmd.txt| automatically executing commands on an event
|filetype.txt| settings done specifically for a type of file
|eval.txt| expression evaluation, conditional commands
diff --git a/runtime/doc/howto.txt b/runtime/doc/howto.txt
index fbad7beb9..3e2bf25e3 100644
--- a/runtime/doc/howto.txt
+++ b/runtime/doc/howto.txt
@@ -1,4 +1,4 @@
-*howto.txt* For Vim version 7.2b. Last change: 2006 Apr 02
+*howto.txt* For Vim version 7.2c. 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
index 97bb4b12a..290e2f291 100644
--- a/runtime/doc/if_cscop.txt
+++ b/runtime/doc/if_cscop.txt
@@ -1,4 +1,4 @@
-*if_cscop.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*if_cscop.txt* For Vim version 7.2c. 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
index 559c43966..84e90ddd6 100644
--- a/runtime/doc/if_mzsch.txt
+++ b/runtime/doc/if_mzsch.txt
@@ -1,4 +1,4 @@
-*if_mzsch.txt* For Vim version 7.2b. Last change: 2008 Jun 28
+*if_mzsch.txt* For Vim version 7.2c. Last change: 2008 Jun 28
VIM REFERENCE MANUAL by Sergey Khorev
diff --git a/runtime/doc/if_ole.txt b/runtime/doc/if_ole.txt
index d1a306342..6a31d3a01 100644
--- a/runtime/doc/if_ole.txt
+++ b/runtime/doc/if_ole.txt
@@ -1,4 +1,4 @@
-*if_ole.txt* For Vim version 7.2b. Last change: 2007 May 10
+*if_ole.txt* For Vim version 7.2c. Last change: 2007 May 10
VIM REFERENCE MANUAL by Paul Moore
diff --git a/runtime/doc/if_perl.txt b/runtime/doc/if_perl.txt
index 97e99b988..aa9cd256c 100644
--- a/runtime/doc/if_perl.txt
+++ b/runtime/doc/if_perl.txt
@@ -1,4 +1,4 @@
-*if_perl.txt* For Vim version 7.2b. Last change: 2006 Mar 06
+*if_perl.txt* For Vim version 7.2c. 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
index efdc37ef0..bc455e2ea 100644
--- a/runtime/doc/if_pyth.txt
+++ b/runtime/doc/if_pyth.txt
@@ -1,4 +1,4 @@
-*if_pyth.txt* For Vim version 7.2b. Last change: 2006 Apr 30
+*if_pyth.txt* For Vim version 7.2c. Last change: 2006 Apr 30
VIM REFERENCE MANUAL by Paul Moore
diff --git a/runtime/doc/if_ruby.txt b/runtime/doc/if_ruby.txt
index 6de1f10da..836cb851f 100644
--- a/runtime/doc/if_ruby.txt
+++ b/runtime/doc/if_ruby.txt
@@ -1,4 +1,4 @@
-*if_ruby.txt* For Vim version 7.2b. Last change: 2006 Apr 30
+*if_ruby.txt* For Vim version 7.2c. Last change: 2006 Apr 30
VIM REFERENCE MANUAL by Shugo Maeda
diff --git a/runtime/doc/if_sniff.txt b/runtime/doc/if_sniff.txt
index 3129c140d..c5e299685 100644
--- a/runtime/doc/if_sniff.txt
+++ b/runtime/doc/if_sniff.txt
@@ -1,4 +1,4 @@
-*if_sniff.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*if_sniff.txt* For Vim version 7.2c. Last change: 2005 Mar 29
VIM REFERENCE MANUAL
diff --git a/runtime/doc/if_tcl.txt b/runtime/doc/if_tcl.txt
index a9f5af78a..223d36516 100644
--- a/runtime/doc/if_tcl.txt
+++ b/runtime/doc/if_tcl.txt
@@ -1,4 +1,4 @@
-*if_tcl.txt* For Vim version 7.2b. Last change: 2008 Jun 26
+*if_tcl.txt* For Vim version 7.2c. Last change: 2008 Jun 26
VIM REFERENCE MANUAL by Ingo Wilken
diff --git a/runtime/doc/indent.txt b/runtime/doc/indent.txt
index 542e03d7b..ffd366dd7 100644
--- a/runtime/doc/indent.txt
+++ b/runtime/doc/indent.txt
@@ -1,4 +1,4 @@
-*indent.txt* For Vim version 7.2b. Last change: 2008 Jun 30
+*indent.txt* For Vim version 7.2c. Last change: 2008 Jul 30
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -584,8 +584,8 @@ unnecessary indentation)
PYTHON *ft-python-indent*
The amount of indent can be set for the following situations. The examples
-given are de the defaults. Note that the variables are set to an expression,
-so that you can change the value of 'shiftwidth' later.
+given are the defaults. Note that the variables are set to an expression, so
+that you can change the value of 'shiftwidth' later.
Indent after an open paren: >
let g:pyindent_open_paren = '&sw * 2'
diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt
index 35f504478..731a607ae 100644
--- a/runtime/doc/index.txt
+++ b/runtime/doc/index.txt
@@ -1,4 +1,4 @@
-*index.txt* For Vim version 7.2b. Last change: 2008 May 04
+*index.txt* For Vim version 7.2c. Last change: 2008 May 04
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt
index 6752ba60e..51f0657bf 100644
--- a/runtime/doc/insert.txt
+++ b/runtime/doc/insert.txt
@@ -1,4 +1,4 @@
-*insert.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*insert.txt* For Vim version 7.2c. Last change: 2008 Jun 21
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt
index ac750eee7..9a27ccead 100644
--- a/runtime/doc/intro.txt
+++ b/runtime/doc/intro.txt
@@ -1,4 +1,4 @@
-*intro.txt* For Vim version 7.2b. Last change: 2008 Jun 24
+*intro.txt* For Vim version 7.2c. Last change: 2008 Jun 24
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt
index 131e1bdf0..06eaa4f0b 100644
--- a/runtime/doc/map.txt
+++ b/runtime/doc/map.txt
@@ -1,4 +1,4 @@
-*map.txt* For Vim version 7.2b. Last change: 2008 Jul 09
+*map.txt* For Vim version 7.2c. Last change: 2008 Jul 09
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/mbyte.txt b/runtime/doc/mbyte.txt
index 60445d14d..6633fbe85 100644
--- a/runtime/doc/mbyte.txt
+++ b/runtime/doc/mbyte.txt
@@ -1,4 +1,4 @@
-*mbyte.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*mbyte.txt* For Vim version 7.2c. Last change: 2008 Jun 21
VIM REFERENCE MANUAL by Bram Moolenaar et al.
diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt
index 4731a71b0..cd958893e 100644
--- a/runtime/doc/message.txt
+++ b/runtime/doc/message.txt
@@ -1,4 +1,4 @@
-*message.txt* For Vim version 7.2b. Last change: 2007 Aug 19
+*message.txt* For Vim version 7.2c. Last change: 2007 Aug 19
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/mlang.txt b/runtime/doc/mlang.txt
index d214c27ae..b8ce3cc51 100644
--- a/runtime/doc/mlang.txt
+++ b/runtime/doc/mlang.txt
@@ -1,4 +1,4 @@
-*mlang.txt* For Vim version 7.2b. Last change: 2008 Jun 08
+*mlang.txt* For Vim version 7.2c. Last change: 2008 Jun 08
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt
index c1b8d38c5..9b8cd0b9b 100644
--- a/runtime/doc/motion.txt
+++ b/runtime/doc/motion.txt
@@ -1,4 +1,4 @@
-*motion.txt* For Vim version 7.2b. Last change: 2008 May 02
+*motion.txt* For Vim version 7.2c. Last change: 2008 Aug 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -851,16 +851,16 @@ when using blockwise Visual mode. These commands do not work when no change
was made yet in the current file.
*'<* *`<*
-'< `< To the first character of the last selected Visual
- area in the current buffer. For block mode it may
- also be the last character in the first line (to be
- able to define the block). {not in Vi}.
+'< `< To the first line or character of the last selected
+ Visual area in the current buffer. For block mode it
+ may also be the last character in the first line (to
+ be able to define the block). {not in Vi}.
*'>* *`>*
-'> `> To the last character of the last selected Visual
- area in the current buffer. For block mode it may
- also be the first character of the last line (to be
- able to define the block). Note that 'selection'
+'> `> To the last line or character of the last selected
+ Visual area in the current buffer. For block mode it
+ may also be the first character of the last line (to
+ be able to define the block). Note that 'selection'
applies, the position may be just after the Visual
area. {not in Vi}.
diff --git a/runtime/doc/netbeans.txt b/runtime/doc/netbeans.txt
index b8074c780..01266a782 100644
--- a/runtime/doc/netbeans.txt
+++ b/runtime/doc/netbeans.txt
@@ -1,4 +1,4 @@
-*netbeans.txt* For Vim version 7.2b. Last change: 2008 Jun 28
+*netbeans.txt* For Vim version 7.2c. Last change: 2008 Jun 28
VIM REFERENCE MANUAL by Gordon Prieur et al.
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 22c04196a..1302f169e 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt* For Vim version 7.2b. Last change: 2008 Jul 05
+*options.txt* For Vim version 7.2c. Last change: 2008 Aug 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2292,6 +2292,8 @@ A jump table for the options with a short description can be found at |Q_op|.
or "\\", the swap file name will be built from the complete path to
the file with all path separators substituted to percent '%' signs.
This will ensure file name uniqueness in the preserve directory.
+ On Win32, when a separating comma is following, you must use "//",
+ since "\\" will include the comma in the file name.
- Spaces after the comma are ignored, other spaces are considered part
of the directory name. To have a space at the start of a directory
name, precede it with a backslash.
@@ -4898,7 +4900,7 @@ A jump table for the options with a short description can be found at |Q_op|.
name, datestamp and permissions. This option contains the extra
information, the nature of which will vary between systems.
The value of this option is usually set when the file is loaded, and
- use to set the file type when file is written.
+ is used to set the operating system file type when file is written.
It can affect the pattern matching of the automatic commands.
|autocmd-osfiletypes|
@@ -6306,15 +6308,15 @@ A jump table for the options with a short description can be found at |Q_op|.
directory.
F S Full path to the file in the buffer.
t S File name (tail) of file in the buffer.
- m F Modified flag, text is " [+]"; " [-]" if 'modifiable' is off.
+ m F Modified flag, text is "[+]"; "[-]" if 'modifiable' is off.
M F Modified flag, text is ",+" or ",-".
- r F Readonly flag, text is " [RO]".
+ r F Readonly flag, text is "[RO]".
R F Readonly flag, text is ",RO".
- h F Help buffer flag, text is " [help]".
+ h F Help buffer flag, text is "[help]".
H F Help buffer flag, text is ",HLP".
- w F Preview window flag, text is " [Preview]".
+ w F Preview window flag, text is "[Preview]".
W F Preview window flag, text is ",PRV".
- y F Type of file in the buffer, e.g., " [vim]". See 'filetype'.
+ y F Type of file in the buffer, e.g., "[vim]". See 'filetype'.
Y F Type of file in the buffer, e.g., ",VIM". See 'filetype'.
{not available when compiled without |+autocmd| feature}
k S Value of "b:keymap_name" or 'keymap' when |:lmap| mappings are
@@ -6361,14 +6363,9 @@ A jump table for the options with a short description can be found at |Q_op|.
to StatusLineNC for the statusline of non-current windows.
The number N must be between 1 and 9. See |hl-User1..9|
- Display of flags are controlled by the following heuristic:
- If a flag text starts with comma it is assumed that it wants to
- separate itself from anything but preceding plaintext. If it starts
- with a space it is assumed that it wants to separate itself from
- anything but other flags. That is: A leading comma is removed if the
- preceding character stems from plaintext. A leading space is removed
- if the preceding character stems from another active flag. This will
- make a nice display when flags are used like in the examples below.
+ When displaying a flag, Vim removes the leading comma, if any, when
+ that flag comes right after plaintext. This will make a nice display
+ when flags are used like in the examples below.
When all items in a group becomes an empty string (i.e. flags that are
not set) and a minwid is not set for the group, the whole group will
diff --git a/runtime/doc/os_390.txt b/runtime/doc/os_390.txt
index 59074a690..0b0e836a9 100644
--- a/runtime/doc/os_390.txt
+++ b/runtime/doc/os_390.txt
@@ -1,4 +1,4 @@
-*os_390.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*os_390.txt* For Vim version 7.2c. 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
index 1e21121e7..7e262bf62 100644
--- a/runtime/doc/os_amiga.txt
+++ b/runtime/doc/os_amiga.txt
@@ -1,4 +1,4 @@
-*os_amiga.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*os_amiga.txt* For Vim version 7.2c. 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
index c7bbf372f..e5f54b8c0 100644
--- a/runtime/doc/os_beos.txt
+++ b/runtime/doc/os_beos.txt
@@ -1,4 +1,4 @@
-*os_beos.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*os_beos.txt* For Vim version 7.2c. 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
index e4cfb7077..085b295b9 100644
--- a/runtime/doc/os_dos.txt
+++ b/runtime/doc/os_dos.txt
@@ -1,4 +1,4 @@
-*os_dos.txt* For Vim version 7.2b. Last change: 2006 Mar 30
+*os_dos.txt* For Vim version 7.2c. 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
index 68dbcfb7b..5521a9380 100644
--- a/runtime/doc/os_mac.txt
+++ b/runtime/doc/os_mac.txt
@@ -1,4 +1,4 @@
-*os_mac.txt* For Vim version 7.2b. Last change: 2006 Apr 30
+*os_mac.txt* For Vim version 7.2c. Last change: 2006 Apr 30
VIM REFERENCE MANUAL by Bram Moolenaar et al.
diff --git a/runtime/doc/os_mint.txt b/runtime/doc/os_mint.txt
index 1afd335f9..e52988741 100644
--- a/runtime/doc/os_mint.txt
+++ b/runtime/doc/os_mint.txt
@@ -1,4 +1,4 @@
-*os_mint.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*os_mint.txt* For Vim version 7.2c. 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
index a9fd7bed4..1cb38035b 100644
--- a/runtime/doc/os_msdos.txt
+++ b/runtime/doc/os_msdos.txt
@@ -1,4 +1,4 @@
-*os_msdos.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*os_msdos.txt* For Vim version 7.2c. 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
index fbae5f96b..072922abc 100644
--- a/runtime/doc/os_os2.txt
+++ b/runtime/doc/os_os2.txt
@@ -1,4 +1,4 @@
-*os_os2.txt* For Vim version 7.2b. Last change: 2007 Apr 22
+*os_os2.txt* For Vim version 7.2c. Last change: 2007 Apr 22
VIM REFERENCE MANUAL by Paul Slootman
diff --git a/runtime/doc/os_qnx.txt b/runtime/doc/os_qnx.txt
index c199a9751..3b50ace47 100644
--- a/runtime/doc/os_qnx.txt
+++ b/runtime/doc/os_qnx.txt
@@ -1,4 +1,4 @@
-*os_qnx.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*os_qnx.txt* For Vim version 7.2c. 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
index e7fb80613..a54576e23 100644
--- a/runtime/doc/os_risc.txt
+++ b/runtime/doc/os_risc.txt
@@ -1,4 +1,4 @@
-*os_risc.txt* For Vim version 7.2b. Last change: 2008 Jun 28
+*os_risc.txt* For Vim version 7.2c. Last change: 2008 Jun 28
VIM REFERENCE MANUAL by Thomas Leonard
diff --git a/runtime/doc/os_unix.txt b/runtime/doc/os_unix.txt
index 036f59707..740712ea0 100644
--- a/runtime/doc/os_unix.txt
+++ b/runtime/doc/os_unix.txt
@@ -1,4 +1,4 @@
-*os_unix.txt* For Vim version 7.2b. Last change: 2005 Mar 29
+*os_unix.txt* For Vim version 7.2c. 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
index 8b9692943..8fd6712f9 100644
--- a/runtime/doc/os_vms.txt
+++ b/runtime/doc/os_vms.txt
@@ -1,4 +1,4 @@
-*os_vms.txt* For Vim version 7.2b. Last change: 2006 Nov 18
+*os_vms.txt* For Vim version 7.2c. Last change: 2006 Nov 18
VIM REFERENCE MANUAL
diff --git a/runtime/doc/os_win32.txt b/runtime/doc/os_win32.txt
index 73d55e947..92392c166 100644
--- a/runtime/doc/os_win32.txt
+++ b/runtime/doc/os_win32.txt
@@ -1,4 +1,4 @@
-*os_win32.txt* For Vim version 7.2b. Last change: 2008 May 02
+*os_win32.txt* For Vim version 7.2c. Last change: 2008 May 02
VIM REFERENCE MANUAL by George Reilly
diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt
index ae60b83ba..d48d9f14c 100644
--- a/runtime/doc/pattern.txt
+++ b/runtime/doc/pattern.txt
@@ -1,4 +1,4 @@
-*pattern.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*pattern.txt* For Vim version 7.2c. Last change: 2008 Jul 16
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1122,7 +1122,7 @@ in the file. {Vi cannot handle <Nul> characters in the file at all}
*CR-used-for-NL*
When 'fileformat' is "mac", <NL> characters in the file are stored as <CR>
-characters internally. In the display they are shown as "^M". Otherwise this
+characters internally. In the text they are shown as "^J". Otherwise this
works similar to the usage of <NL> for a <Nul>.
When working with expression evaluation, a <NL> character in the pattern
diff --git a/runtime/doc/pi_getscript.txt b/runtime/doc/pi_getscript.txt
index 2d7edb881..dc0b2ff30 100644
--- a/runtime/doc/pi_getscript.txt
+++ b/runtime/doc/pi_getscript.txt
@@ -1,4 +1,4 @@
-*pi_getscript.txt* For Vim version 7.2b. Last change: 2008 Jun 29
+*pi_getscript.txt* For Vim version 7.2c. Last change: 2008 Jun 29
>
GETSCRIPT REFERENCE MANUAL by Charles E. Campbell, Jr.
<
diff --git a/runtime/doc/pi_gzip.txt b/runtime/doc/pi_gzip.txt
index e9e224bea..4f20124e6 100644
--- a/runtime/doc/pi_gzip.txt
+++ b/runtime/doc/pi_gzip.txt
@@ -1,4 +1,4 @@
-*pi_gzip.txt* For Vim version 7.2b. Last change: 2002 Oct 29
+*pi_gzip.txt* For Vim version 7.2c. 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
index 7e0c597cc..1879dd8ed 100644
--- a/runtime/doc/pi_netrw.txt
+++ b/runtime/doc/pi_netrw.txt
@@ -1,4 +1,4 @@
-*pi_netrw.txt* For Vim version 7.2b. Last change: 2008 Jul 13
+*pi_netrw.txt* For Vim version 7.2c. Last change: 2008 Aug 01
-----------------------------------------------------
NETRW REFERENCE MANUAL by Charles E. Campbell, Jr.
@@ -1437,21 +1437,56 @@ tips & tools" by Rob Flickenger (O'Reilly, ISBN 0-596-00461-3) gives a tip
for setting up no-password ssh and scp and discusses associated security
issues. It used to be available at http://hacks.oreilly.com/pub/h/66 ,
but apparently that address is now being redirected to some "hackzine".
-I'll attempt a summary:
-
- 1. Generate a public/private key pair on the ssh server:
- ssh-keygen -t rsa
- (saving the file in ~/.ssh/id_rsa is ok)
- 2. Just hit the <CR> when asked for passphrase (twice).
- 3. This creates two files:
- ~/.ssh/id_rsa
- ~/.ssh/id_rsa.pub
- 4. On the client:
- cd
- mkdir .ssh
- chmod 0700 .ssh
- scp {serverhostname}:.ssh/id_rsa.pub .
- cat id_rsa.pub >> .ssh/authorized_keys2
+I'll attempt a summary based on that article and on a communication from
+Ben Schmidt:
+
+ 1. Generate a public/private key pair on the local machine
+ (ssh client): >
+ ssh-keygen -t rsa
+ (saving the file in ~/.ssh/id_rsa as prompted)
+<
+ 2. Just hit the <CR> when asked for passphrase (twice) for no
+ passphrase. If you do use a passphrase, you will also need to use
+ ssh-agent so you only have to type the passphrase once per session.
+ If you don't use a passphrase, simply logging onto your local
+ computer or getting access to the keyfile in any way will suffice
+ to access any ssh servers which have that key authorized for login.
+
+ 3. This creates two files: >
+ ~/.ssh/id_rsa
+ ~/.ssh/id_rsa.pub
+<
+ 4. On the target machine (ssh server): >
+ cd
+ mkdir -p .ssh
+ chmod 0700 .ssh
+<
+ 5. On your local machine (ssh client): (one line) >
+ ssh {serverhostname}
+ cat '>>' '~/.ssh/authorized_keys2' < ~/.ssh/id_rsa.pub
+<
+ or, for OpenSSH, (one line) >
+ ssh {serverhostname}
+ cat '>>' '~/.ssh/authorized_keys' < ~/.ssh/id_rsa.pub
+<
+You can test it out with >
+ ssh {serverhostname}
+and you should be log onto the server machine without further need to type
+anything.
+
+If you decided to use a passphrase, do: >
+ ssh-agent $SHELL
+ ssh-add
+ ssh {serverhostname}
+You will be prompted for your key passphrase when you use ssh-add, but not
+subsequently when you use ssh. For use with vim, you can use >
+ ssh-agent vim
+and, when next within vim, use >
+ :!ssh-add
+Alternatively, you can apply ssh-agent to the terminal you're planning on
+running vim in: >
+ ssh-agent xterm &
+and do ssh-add whenever you need.
For Windows, folks on the vim mailing list have mentioned that Pageant helps
with avoiding the constant need to enter the password.
@@ -1628,6 +1663,13 @@ MARKED FILES: MOVING *netrw-mm* {{{2
(See |netrw-mf| and |netrw-mr| for how to mark files)
(uses the global marked file list)
+ WARNING: moving files is more dangerous than copying them.
+ A file being moved is first copied and then deleted; if the
+ copy operation fails and the delete succeeds, you will lose
+ the file. Either try things out with unimportant files
+ first or do the copy and then delete yourself using mc and D.
+ Use at your own risk!
+
Select a target directory with mT (|netrw-mt|). Then change directory,
select file(s) (see |netrw-mf|), and press "mm".
@@ -2387,6 +2429,16 @@ which is loaded automatically at startup (assuming :set nocp).
==============================================================================
12. History *netrw-history* {{{1
+ v130: Jul 31, 2008 * trying out elinks/links for http://host/
+ requests. One problem: in-page links
+ (such as with ...#LABEL) are not supported
+ * verified that Bram's modified netrwPlugin works
+ Aug 01, 2008 * fixed a bug: when sourcing a file via ftp, the
+ "filter window" was left behind.
+ v129: Jul 31, 2008 * bug found in non-mouse enabled vim and some
+ local maps
+ v128: Jul 30, 2008 * much work done in using shellescape() and
+ fnameescape()
v126: Jun 30, 2008 * after having gone to a remote directory,
<f1> was no longer taking one to the correct
entry in the help (|netrw-quickhelp|). Fixed.
diff --git a/runtime/doc/pi_paren.txt b/runtime/doc/pi_paren.txt
index faa889bc1..3a539a9c9 100644
--- a/runtime/doc/pi_paren.txt
+++ b/runtime/doc/pi_paren.txt
@@ -1,4 +1,4 @@
-*pi_paren.txt* For Vim version 7.2b. Last change: 2008 Jun 16
+*pi_paren.txt* For Vim version 7.2c. Last change: 2008 Jun 16
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/pi_spec.txt b/runtime/doc/pi_spec.txt
index e5cb3daf3..80e10aaaf 100644
--- a/runtime/doc/pi_spec.txt
+++ b/runtime/doc/pi_spec.txt
@@ -1,4 +1,4 @@
-*pi_spec.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*pi_spec.txt* For Vim version 7.2c. Last change: 2006 Apr 24
by Gustavo Niemeyer ~
diff --git a/runtime/doc/pi_tar.txt b/runtime/doc/pi_tar.txt
index c6926cdd0..e1ef09723 100644
--- a/runtime/doc/pi_tar.txt
+++ b/runtime/doc/pi_tar.txt
@@ -1,4 +1,4 @@
-*pi_tar.txt* For Vim version 7.2b. Last change: 2008 Jul 13
+*pi_tar.txt* For Vim version 7.2c. Last change: 2008 Jul 13
+====================+
| Tar File Interface |
diff --git a/runtime/doc/pi_vimball.txt b/runtime/doc/pi_vimball.txt
index 7220d0ed9..258f307e3 100644
--- a/runtime/doc/pi_vimball.txt
+++ b/runtime/doc/pi_vimball.txt
@@ -1,4 +1,4 @@
-*pi_vimball.txt* For Vim version 7.2b. Last change: 2008 Jun 05
+*pi_vimball.txt* For Vim version 7.2c. Last change: 2008 Jul 30
----------------
Vimball Archiver
diff --git a/runtime/doc/pi_zip.txt b/runtime/doc/pi_zip.txt
index d4e3f67a6..b28dcf0b7 100644
--- a/runtime/doc/pi_zip.txt
+++ b/runtime/doc/pi_zip.txt
@@ -1,4 +1,4 @@
-*pi_zip.txt* For Vim version 7.2b. Last change: 2008 Jun 29
+*pi_zip.txt* For Vim version 7.2c. Last change: 2008 Jul 30
+====================+
| Zip File Interface |
diff --git a/runtime/doc/print.txt b/runtime/doc/print.txt
index af1e2c0aa..4e92d76a3 100644
--- a/runtime/doc/print.txt
+++ b/runtime/doc/print.txt
@@ -1,4 +1,4 @@
-*print.txt* For Vim version 7.2b. Last change: 2008 Apr 30
+*print.txt* For Vim version 7.2c. Last change: 2008 Apr 30
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index 5c48e6716..75f59c455 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -1,4 +1,4 @@
-*quickfix.txt* For Vim version 7.2b. Last change: 2008 Mar 14
+*quickfix.txt* For Vim version 7.2c. Last change: 2008 Mar 14
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt
index 230a110f9..b9a7ee322 100644
--- a/runtime/doc/quickref.txt
+++ b/runtime/doc/quickref.txt
@@ -1,4 +1,4 @@
-*quickref.txt* For Vim version 7.2b. Last change: 2008 Jan 22
+*quickref.txt* For Vim version 7.2c. Last change: 2008 Jan 22
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/quotes.txt b/runtime/doc/quotes.txt
index af874514d..71e82d256 100644
--- a/runtime/doc/quotes.txt
+++ b/runtime/doc/quotes.txt
@@ -1,4 +1,4 @@
-*quotes.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*quotes.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/recover.txt b/runtime/doc/recover.txt
index 75f5d7e96..879f56fd8 100644
--- a/runtime/doc/recover.txt
+++ b/runtime/doc/recover.txt
@@ -1,4 +1,4 @@
-*recover.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*recover.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/remote.txt b/runtime/doc/remote.txt
index bbf1c1277..2037398b7 100644
--- a/runtime/doc/remote.txt
+++ b/runtime/doc/remote.txt
@@ -1,4 +1,4 @@
-*remote.txt* For Vim version 7.2b. Last change: 2008 May 24
+*remote.txt* For Vim version 7.2c. Last change: 2008 May 24
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt
index 577c0de81..e9c02c86b 100644
--- a/runtime/doc/repeat.txt
+++ b/runtime/doc/repeat.txt
@@ -1,4 +1,4 @@
-*repeat.txt* For Vim version 7.2b. Last change: 2007 Aug 12
+*repeat.txt* For Vim version 7.2c. Last change: 2007 Aug 12
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/rileft.txt b/runtime/doc/rileft.txt
index 40f00bca7..5b288b977 100644
--- a/runtime/doc/rileft.txt
+++ b/runtime/doc/rileft.txt
@@ -1,4 +1,4 @@
-*rileft.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*rileft.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM REFERENCE MANUAL by Avner Lottem
diff --git a/runtime/doc/russian.txt b/runtime/doc/russian.txt
index 0ba9be791..b6b7985e9 100644
--- a/runtime/doc/russian.txt
+++ b/runtime/doc/russian.txt
@@ -1,4 +1,4 @@
-*russian.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*russian.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM REFERENCE MANUAL by Vassily Ragosin
diff --git a/runtime/doc/scroll.txt b/runtime/doc/scroll.txt
index 141eee6e6..72a59aaf6 100644
--- a/runtime/doc/scroll.txt
+++ b/runtime/doc/scroll.txt
@@ -1,4 +1,4 @@
-*scroll.txt* For Vim version 7.2b. Last change: 2006 Aug 27
+*scroll.txt* For Vim version 7.2c. Last change: 2006 Aug 27
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/sign.txt b/runtime/doc/sign.txt
index 7e2952038..26e6aeba1 100644
--- a/runtime/doc/sign.txt
+++ b/runtime/doc/sign.txt
@@ -1,4 +1,4 @@
-*sign.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*sign.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM REFERENCE MANUAL by Gordon Prieur
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index ea4da257d..bc52a9a47 100644
--- a/runtime/doc/spell.txt
+++ b/runtime/doc/spell.txt
@@ -1,4 +1,4 @@
-*spell.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*spell.txt* For Vim version 7.2c. Last change: 2008 Jun 21
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/sponsor.txt b/runtime/doc/sponsor.txt
index 9e67ec469..c2a9994f4 100644
--- a/runtime/doc/sponsor.txt
+++ b/runtime/doc/sponsor.txt
@@ -1,4 +1,4 @@
-*sponsor.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*sponsor.txt* For Vim version 7.2c. Last change: 2008 Jun 21
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt
index dfb403bc8..d259a9f13 100644
--- a/runtime/doc/starting.txt
+++ b/runtime/doc/starting.txt
@@ -1,4 +1,4 @@
-*starting.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*starting.txt* For Vim version 7.2c. Last change: 2008 Jun 21
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 839ab3442..c4779cb0e 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*syntax.txt* For Vim version 7.2c. Last change: 2008 Jul 22
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -852,8 +852,8 @@ If this variable is undefined or zero, btm syntax is selected.
DOXYGEN *doxygen.vim* *doxygen-syntax*
Doxygen generates code documentation using a special documentation format
-(similar to Javadoc). This syntax script adds doxygen highlighting to c, cpp
-and idl files, and should also work with java.
+(similar to Javadoc). This syntax script adds doxygen highlighting to c, cpp,
+idl and php files, and should also work with java.
There are a few of ways to turn on doxygen formatting. It can be done
explicitly or in a modeline by appending '.doxygen' to the syntax of the file.
diff --git a/runtime/doc/tabpage.txt b/runtime/doc/tabpage.txt
index 518f9802c..166e26a9e 100644
--- a/runtime/doc/tabpage.txt
+++ b/runtime/doc/tabpage.txt
@@ -1,4 +1,4 @@
-*tabpage.txt* For Vim version 7.2b. Last change: 2007 Mar 11
+*tabpage.txt* For Vim version 7.2c. Last change: 2007 Mar 11
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/tags b/runtime/doc/tags
index b955aaf06..7e2ef9aef 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -4615,6 +4615,7 @@ a{ motion.txt /*a{*
a} motion.txt /*a}*
b motion.txt /*b*
b:changedtick-variable eval.txt /*b:changedtick-variable*
+b:changelog_name filetype.txt /*b:changelog_name*
b:current_syntax-variable syntax.txt /*b:current_syntax-variable*
b:netrw_lastfile pi_netrw.txt /*b:netrw_lastfile*
b:var eval.txt /*b:var*
@@ -5329,6 +5330,8 @@ fixed-6.4 version6.txt /*fixed-6.4*
fixed-7.1 version7.txt /*fixed-7.1*
fixed-7.2 version7.txt /*fixed-7.2*
flexwiki.vim syntax.txt /*flexwiki.vim*
+float-e eval.txt /*float-e*
+float-pi eval.txt /*float-pi*
float2nr() eval.txt /*float2nr()*
floating-point-format eval.txt /*floating-point-format*
floating-point-precision eval.txt /*floating-point-precision*
diff --git a/runtime/doc/tagsrch.txt b/runtime/doc/tagsrch.txt
index 952bb96f0..c08e63310 100644
--- a/runtime/doc/tagsrch.txt
+++ b/runtime/doc/tagsrch.txt
@@ -1,4 +1,4 @@
-*tagsrch.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*tagsrch.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/term.txt b/runtime/doc/term.txt
index cf960bd53..57235c0a2 100644
--- a/runtime/doc/term.txt
+++ b/runtime/doc/term.txt
@@ -1,4 +1,4 @@
-*term.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*term.txt* For Vim version 7.2c. Last change: 2008 Jun 21
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/tips.txt b/runtime/doc/tips.txt
index ffeea0fbf..2dfe35dde 100644
--- a/runtime/doc/tips.txt
+++ b/runtime/doc/tips.txt
@@ -1,4 +1,4 @@
-*tips.txt* For Vim version 7.2b. Last change: 2006 Jul 24
+*tips.txt* For Vim version 7.2c. Last change: 2006 Jul 24
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 03e49813d..dba4c8e90 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.2b. Last change: 2008 Jul 13
+*todo.txt* For Vim version 7.2c. Last change: 2008 Aug 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -31,10 +31,13 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
-------------------- Known bugs and current work -----------------------
":pedit %" with a BufReadPre autocommand causes the cursor to move to the
-first line. (Ingo Karkat, 2008 Jul 1)
+first line. (Ingo Karkat, 2008 Jul 1) Ian Kelling is working on this.
Have a look at patch for utf-8 line breaking. (Yongwei Wu, 2008 Mar 1, Mar 23)
+netrw: dragging status line causes selection of entry. Should check row
+number to be below last visible line.
+
Runtime files for Clojure. (Toralf Wittner, 2008 Jun 25)
Patch to add extra argument to glob() and globpath() to ignore 'wildignore'.
@@ -52,6 +55,13 @@ Wildmenu not deleted: "gvim -u NONE", ":set nocp wildmenu cmdheight=3
laststatus=2", CTRL-D CTRL-H CTRL-H CTRL-H. (A.Politz, 2008 April 1)
Works OK with Vim in an xterm.
+When using ":e ++enc=foo file" and the file is already loaded with
+'fileencoding' set to "bar", then do_ecmd() uses that buffer, even though the
+fileencoding differs. Reload the buffer in this situation? Need to check for
+the buffer to be unmodified.
+Unfinished patch by Ian Kelling, 2008 Jul 11. Followup Jul 14, need to have
+another look at it.
+
Fix for matchparen HL doesn't work. beep.
Win32: associating a type with Vim doesn't take care of space after a
@@ -59,17 +69,22 @@ backslash? (Robert Vibrant, 2008 Jun 5)
After using <Tab> for command line completion after ":ta blah" and getting E33
(no tags file), further editing the command to e.g., ":echo 'blah'", the
-command is not executed.
+command is not executed. Fix by Ian Kelling?
When 'bomb' is changed the window title is updated to show/hide a "+", but the
tab page label isn't. (Patrick Texier, 2008 Jun 24)
+":help s/~" jumps to *s/\~*, while ":help s/\~" doesn't find anything. (Tim
+Chase) Fix by Ian Kelling, 2008 Jul 14.
+
Despite adding save_subexpr() this still doesn't work properly:
Regexp: matchlist('12a4aaa', '^\(.\{-}\)\(\%5c\@<=a\+\)\(.\+\)\?')
Returns ['12a4', 'aaa', '4aaa'], should be ['12a4', 'aaa', '']
Backreference not cleared when retrying after \@<= fails?
(Brett Stahlman, 2008 March 8)
+Patch for 2html.vim to avoid "&amp;nbsp;". (Markus Heidelberg, 2008 Jul 19)
+
Win32: remote editing fails when the current directory name contains "[".
(Ivan Tishchenko, Liu Yubao) Suggested patch by Chris Lubinski: Avoid
escaping characters where the backslash is not removed later. Asked Chris for
@@ -111,6 +126,9 @@ changed or the window is resized.
Mac: Patch for configure: remove arch from ruby link args. (Knezevic, 2008
Mar 5) Alternative: Kazuki Sakamoto, Mar 7.
+Mac: trouble compiling with Motif, requires --disable-darwin. (Raf, 2008 Aug
+1) Reply by Ben Schmidt.
+
":emenu" works with the translated menu name. Should also work with the
untranslated name. Would need to store both the English and the translated
name. Patch by Bjorn Winckler, 2008 Mar 30.
@@ -125,8 +143,6 @@ Await response to question to make the register writable.
Problem with 'ts' set to 9 and 'showbreak' to ">>>". (Matthew Winn, 2007 Oct
1)
-"vim -O aa aa" gives only one window. (Zdenek Sekera, 2008 Apr 16)
-
Including NFA regexp code:
Use "\%#= to set the engine: 0 = automatic, 1 = backtracking, 2 = new.
Useful in tests.
@@ -158,6 +174,10 @@ New PHP syntax file, use it? (Peter Hodge)
'foldcolumn' in modeline applied to wrong window when using a session. (Teemu
Likonen, March 19)
+The documentation mentions the priority for ":2match" and ":3match", but it
+appears the last one wins. (John Beckett, 2008 Jul 22) Caused by adding
+matchadd()? Suggested patch by John, 2008 Jul 24.
+
Replace ccomplete.vim by cppcomplete.vim from www.vim.org? script 1520
by Vissale Neang. (Martin Stubenschrott)
Asked Vissale to make the scripts more friendly for the Vim distribution.
@@ -168,8 +188,9 @@ Asked about latest version: 0.77.1 is on www.vim.org.
More AmigaOS4 patches. (Peter Bengtsson, Nov 9)
-Error when cancelling completion menu and auto-formatting. (Tim Weber, 2008
-Apr 17)
+Insert mode completion: When editing the text and pressing CTRL-N again goes
+back to originally completed text, edited text is gone. (Peng Yu, 2008 Jul 24)
+Suggestion by Ben Schmidt, 2008 Aug 6.
Problem with compound words? (Bert, 2008 May 6)
No warning for when flags are defined after they are used in an affix.
@@ -193,6 +214,9 @@ popup menu over it, first draw the new popup menu, remember its position and
size and then redraw the text, skipping the characters under the popup menu.
This should avoid flicker. Other solution by A.Politz, 2007 Aug 22.
+When the popup menu is close to the edge of the window it is truncated. Patch
+to anchor the popup menu in a different way. (James Vega, 2008 Jul 30)
+
Spell checking: Add a way to specify punctuation characters. Add the
superscript numbers by default: 0x2070, 0xb9, 0xb2, 0xb3, 0x2074 - 0x2079.
@@ -200,9 +224,9 @@ Windows 98: pasting from the clipboard with text from another application has
a trailing NUL. (Joachim Hofmann) Perhaps the length specified for CF_TEXT
isn't right?
-Completion: Scanning for tags doesn't check for typed key now and then?
-Hangs for about 5 seconds. Appears to be caused by finding include files with
-"foo/**" in 'path'. (Kalisiak, 2006 July 15)
+Command line completion: Scanning for tags doesn't check for typed key now and
+then? Hangs for about 5 seconds. Appears to be caused by finding include
+files with "foo/**" in 'path'. (Kalisiak, 2006 July 15)
Additional info: When using the |wildcards| ** globing, vim hangs
indefinitely on lots of directories. The |file-searching| globing, like in
":set path=/**" does not hang as often as with globing with |wildcards|, like
@@ -247,6 +271,9 @@ Win32: Patch for convert_filterW(). (Taro Muraoka, 2007 Mar 2)
Win32: Patch for cscope external command. (Mike Williams, 2007 Aug 7)
+":cscope find f filename" doesn't work because of the extra space. (Ethan
+Mallove)
+
Win32: XPM support only works with path without spaces. Patch by Mathias
Michaelis, 2006 Jun 9. Another patch for more path names, 2006 May 31.
New version: http://members.tcnet.ch/michaelis/vim/patches.zip (also for other
@@ -280,6 +307,10 @@ pointer in long and seek offset in 64 bit var.
Win32: patch for fullscreen mode. (Liushaolin, 2008 April 17)
+When file b is a link to file a and editing b twice you get the correct
+warning for existing swap file, but when trying to recover it doesn't find the
+swapfile. (Matt Wozniski, 2008 Aug 5)
+
Pressing the 'pastetoggle' key doesn't update the statusline. (Jan Christoph
Ebersbach, 2008 Feb 1)
@@ -321,6 +352,8 @@ use a different dialog: "busy saving, really quit? yes / no".
Check other interfaces for changing curbuf in a wrong way. Patch like for
if_ruby.c.
+Problem with cursorcolumn highlighting and folds. (John Mullin, 2008 Jul 18)
+
Spell checking in popup menu: If the only problem is the case of the first
character, don't offer "ignore" and "add to word list".
@@ -381,12 +414,19 @@ Jun 5)
Mac: Using gvim: netrw window disappears. (Nick Lo, 2006 Jun 21)
+When 'ff' is "mac" then "ga" on a ^J shows 0x0d instead of 0x0a. Compare with
+using "ga" on a NUL when 'ff' is "unix". (Andy Wokula, 2008 Jul 16)
+
Add an option to specify the character to use when a double-width character is
moved to the next line. Default '>', set to a space to blank it out. Check
that char is single width when it's set (compare with 'listchars').
The generated vim.bat can avoid the loop for NT. (Carl Zmola, 2006 Sep 3)
+In a C file with spell checking, in "% integer" "nteger" is seen as an error,
+but "]s" doesn't find it. "nteger" by itself is found. (Ralf Wildenhues, 2008
+Jul 22)
+
Session file creation: 'autochdir' causes trouble. Keep it off until after
loading all files.
@@ -443,7 +483,7 @@ show more text of the completions. Shorten the items that don't fit in the
middle?
When running inside screen it's possible to kill the X server and restart it
-(using pty's the program can keep on running). Vim dies because it looses the
+(using pty's the program can keep on running). Vim dies because it loses the
connection to the X server. Can Vim simply quit using the X server instead of
dying? Also relevant when running in a console.
@@ -463,9 +503,6 @@ Campbell 2006 Jul 06.
Syntax HL error caused by "containedin". (Peter Hodge, 2006 Oct 6)
-":help s/~" jumps to *s/\~*, while ":help s/\~" doesn't find anything. (Tim
-Chase)
-
A custom completion function in a ":command" cannot be a Funcref. (Andy
Wokula, 2007 Aug 25)
@@ -487,10 +524,6 @@ number. (Tony Mechelynck, 2007 Feb 6)
GTK: when using the -geom argument with an offset from the right edge and the
size is smaller than the default, the Vim window is not positioned properly.
-GTK: when editing a directory with the netrw plugin in a terminal and doing
-":gui" Vim hangs in obtaining the selection. Workaround patch 7.1.209 is a
-hack (timeout after 3 seconds). Why don't we get the selection here?
-
After starting Vim, using '0 to jump somewhere in a file, ":sp" doesn't center
the cursor line. It works OK after some other commands.
@@ -626,6 +659,16 @@ More patches:
- gettabvar() and settabvar() functions. (Yegappan Lakshmanan, 2007 Sep 13,
2008 Jun 12)
- recognize hex numbers better. (Mark Manning, 2006 Sep 13)
+- Add <AbbrExpand> key, to expand an abbreviation in a mapping. (Kana
+ Natsuno, 2008 Jul 17)
+- Add 'wspara' option, also accept blank lines like empty lines for "{" and
+ "}". (Mark Lundquist, 2008 Jul 18)
+- Patch to add CTRL-T to delete part of a path on cmdline. (Adek, 2008 Jul
+ 21)
+- Instead of creating a copy of the tutor in all the shell scripts, do it in
+ vimtutor.vim. (Jan Minar, 2008 Jul 20)
+- When fsync() fails there is no hint about what went wrong. Patch by Ben
+ Schmidt, 2008 Jul 22.
Awaiting updated patches:
@@ -1204,11 +1247,6 @@ Macintosh:
the :catch commands are always executed, also when the file is edited
normally. Should reset did_emsg and undo side effects. Also make sure
the ATTENTION message shows up. Servatius Brandt works on this.
-9 When using ":e ++enc=foo file" and the file is already loaded with
- 'fileencoding' set to "bar", then do_ecmd() uses that buffer, even though
- the fileencoding differs. Reload the buffer in this situation? Need to
- check for the buffer to be unmodified.
- Unfinished patch by Ian Kelling, 2008 Jul 11.
8 ":g//" gives "Pattern not found error" with E486. Should not use the
error number, it's not a regular error message.
7 Vimtutor leaves escape sequence in terminal. This is the xterm response to
@@ -1307,7 +1345,7 @@ Macintosh:
9 When editing a file with 'readonly' set, there is no check for an existing
swap file. Then using ":write" (without making any changes) doesn't give
a warning either. Should check for an existing swap file without creating
- one. Unfinished patch by Ian Kelling, 2008 July 7.
+ one. Unfinished patch by Ian Kelling, 2008 July 14.
7 When 'showbreak' is set, the amount of space a Tab occupies changes.
Should work like 'showbreak' is inserted without changing the Tabs.
7 When 'mousefocus' is set and switching to another window with a typed
@@ -1477,6 +1515,13 @@ Problems that will (probably) not be solved:
- GTK: when using the popup menu with spelling suggestions and releasing the
right mouse button before the menu appears selecting an item with the
right mouse button has no effect. GTK does not produce an event for this.
+- GTK 2: Cannot use the file selector. When using it many things become
+ slow. This is caused by some code in GTK that writes
+ ~/.recently-used.xbel every time an event is handled. It assumes the main
+ loop is never quit, which is a wrong assumption. Also, it overwrites the
+ file with different file permissions, which is a privacy issue. This
+ needs to be fixed in GTK. A solution in Vim would be really complicated.
+ (2008 Jul 31)
- xterm title: The following scenario may occur (esp. when running the Vim
test script): Vim 1 sets the title to "file1", then restores the title to
"xterm" with an ESC sequence when exiting. Vim 2 obtains the old title
diff --git a/runtime/doc/uganda.txt b/runtime/doc/uganda.txt
index 655725f41..ed8b95489 100644
--- a/runtime/doc/uganda.txt
+++ b/runtime/doc/uganda.txt
@@ -1,4 +1,4 @@
-*uganda.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*uganda.txt* For Vim version 7.2c. Last change: 2008 Jun 21
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/undo.txt b/runtime/doc/undo.txt
index 6940102f4..eb87dac40 100644
--- a/runtime/doc/undo.txt
+++ b/runtime/doc/undo.txt
@@ -1,4 +1,4 @@
-*undo.txt* For Vim version 7.2b. Last change: 2006 Apr 30
+*undo.txt* For Vim version 7.2c. Last change: 2006 Apr 30
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/usr_01.txt b/runtime/doc/usr_01.txt
index 3a56abedc..3c450794c 100644
--- a/runtime/doc/usr_01.txt
+++ b/runtime/doc/usr_01.txt
@@ -1,4 +1,4 @@
-*usr_01.txt* For Vim version 7.2b. Last change: 2008 May 07
+*usr_01.txt* For Vim version 7.2c. Last change: 2008 May 07
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_02.txt b/runtime/doc/usr_02.txt
index f47c63e21..5e6613e69 100644
--- a/runtime/doc/usr_02.txt
+++ b/runtime/doc/usr_02.txt
@@ -1,4 +1,4 @@
-*usr_02.txt* For Vim version 7.2b. Last change: 2007 Feb 28
+*usr_02.txt* For Vim version 7.2c. Last change: 2007 Feb 28
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_03.txt b/runtime/doc/usr_03.txt
index 47d24d455..75191e2f9 100644
--- a/runtime/doc/usr_03.txt
+++ b/runtime/doc/usr_03.txt
@@ -1,4 +1,4 @@
-*usr_03.txt* For Vim version 7.2b. Last change: 2006 Jun 21
+*usr_03.txt* For Vim version 7.2c. Last change: 2006 Jun 21
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_04.txt b/runtime/doc/usr_04.txt
index dd6a84c0e..19ebba0c4 100644
--- a/runtime/doc/usr_04.txt
+++ b/runtime/doc/usr_04.txt
@@ -1,4 +1,4 @@
-*usr_04.txt* For Vim version 7.2b. Last change: 2006 Jun 21
+*usr_04.txt* For Vim version 7.2c. Last change: 2006 Jun 21
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_05.txt b/runtime/doc/usr_05.txt
index 93c34ded3..f832ebb4c 100644
--- a/runtime/doc/usr_05.txt
+++ b/runtime/doc/usr_05.txt
@@ -1,4 +1,4 @@
-*usr_05.txt* For Vim version 7.2b. Last change: 2007 May 11
+*usr_05.txt* For Vim version 7.2c. Last change: 2007 May 11
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_06.txt b/runtime/doc/usr_06.txt
index 8ee32c43d..0daec597c 100644
--- a/runtime/doc/usr_06.txt
+++ b/runtime/doc/usr_06.txt
@@ -1,4 +1,4 @@
-*usr_06.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*usr_06.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_07.txt b/runtime/doc/usr_07.txt
index ac2164961..25b82c380 100644
--- a/runtime/doc/usr_07.txt
+++ b/runtime/doc/usr_07.txt
@@ -1,4 +1,4 @@
-*usr_07.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*usr_07.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_08.txt b/runtime/doc/usr_08.txt
index 5c3a93e54..5c26f589e 100644
--- a/runtime/doc/usr_08.txt
+++ b/runtime/doc/usr_08.txt
@@ -1,4 +1,4 @@
-*usr_08.txt* For Vim version 7.2b. Last change: 2006 Jul 18
+*usr_08.txt* For Vim version 7.2c. Last change: 2006 Jul 18
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_09.txt b/runtime/doc/usr_09.txt
index d2c652e90..73b61c671 100644
--- a/runtime/doc/usr_09.txt
+++ b/runtime/doc/usr_09.txt
@@ -1,4 +1,4 @@
-*usr_09.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*usr_09.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_10.txt b/runtime/doc/usr_10.txt
index b41976f50..5ff201261 100644
--- a/runtime/doc/usr_10.txt
+++ b/runtime/doc/usr_10.txt
@@ -1,4 +1,4 @@
-*usr_10.txt* For Vim version 7.2b. Last change: 2006 Nov 05
+*usr_10.txt* For Vim version 7.2c. Last change: 2006 Nov 05
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_11.txt b/runtime/doc/usr_11.txt
index d23743afe..6a1a0de22 100644
--- a/runtime/doc/usr_11.txt
+++ b/runtime/doc/usr_11.txt
@@ -1,4 +1,4 @@
-*usr_11.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*usr_11.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_12.txt b/runtime/doc/usr_12.txt
index 3988de8f4..438b33049 100644
--- a/runtime/doc/usr_12.txt
+++ b/runtime/doc/usr_12.txt
@@ -1,4 +1,4 @@
-*usr_12.txt* For Vim version 7.2b. Last change: 2007 May 11
+*usr_12.txt* For Vim version 7.2c. Last change: 2007 May 11
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_20.txt b/runtime/doc/usr_20.txt
index 864559c5f..fab7714e0 100644
--- a/runtime/doc/usr_20.txt
+++ b/runtime/doc/usr_20.txt
@@ -1,4 +1,4 @@
-*usr_20.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*usr_20.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_21.txt b/runtime/doc/usr_21.txt
index b15e7f011..c0f5cc949 100644
--- a/runtime/doc/usr_21.txt
+++ b/runtime/doc/usr_21.txt
@@ -1,4 +1,4 @@
-*usr_21.txt* For Vim version 7.2b. Last change: 2007 May 01
+*usr_21.txt* For Vim version 7.2c. Last change: 2007 May 01
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_22.txt b/runtime/doc/usr_22.txt
index a642c59b3..6b19b041c 100644
--- a/runtime/doc/usr_22.txt
+++ b/runtime/doc/usr_22.txt
@@ -1,4 +1,4 @@
-*usr_22.txt* For Vim version 7.2b. Last change: 2007 Aug 14
+*usr_22.txt* For Vim version 7.2c. Last change: 2007 Aug 14
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_23.txt b/runtime/doc/usr_23.txt
index ead8711c9..014348824 100644
--- a/runtime/doc/usr_23.txt
+++ b/runtime/doc/usr_23.txt
@@ -1,4 +1,4 @@
-*usr_23.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*usr_23.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_24.txt b/runtime/doc/usr_24.txt
index eab8a36dd..5976cb717 100644
--- a/runtime/doc/usr_24.txt
+++ b/runtime/doc/usr_24.txt
@@ -1,4 +1,4 @@
-*usr_24.txt* For Vim version 7.2b. Last change: 2006 Jul 23
+*usr_24.txt* For Vim version 7.2c. Last change: 2006 Jul 23
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_25.txt b/runtime/doc/usr_25.txt
index 22ddddf1a..5d167a637 100644
--- a/runtime/doc/usr_25.txt
+++ b/runtime/doc/usr_25.txt
@@ -1,4 +1,4 @@
-*usr_25.txt* For Vim version 7.2b. Last change: 2007 May 11
+*usr_25.txt* For Vim version 7.2c. Last change: 2007 May 11
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_26.txt b/runtime/doc/usr_26.txt
index b8252dd4d..96e04c37d 100644
--- a/runtime/doc/usr_26.txt
+++ b/runtime/doc/usr_26.txt
@@ -1,4 +1,4 @@
-*usr_26.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*usr_26.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_27.txt b/runtime/doc/usr_27.txt
index d2d0cc4ef..f4aa914bc 100644
--- a/runtime/doc/usr_27.txt
+++ b/runtime/doc/usr_27.txt
@@ -1,4 +1,4 @@
-*usr_27.txt* For Vim version 7.2b. Last change: 2007 Nov 10
+*usr_27.txt* For Vim version 7.2c. Last change: 2007 Nov 10
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_28.txt b/runtime/doc/usr_28.txt
index 045aef8fd..dc7388dcf 100644
--- a/runtime/doc/usr_28.txt
+++ b/runtime/doc/usr_28.txt
@@ -1,4 +1,4 @@
-*usr_28.txt* For Vim version 7.2b. Last change: 2008 Jun 14
+*usr_28.txt* For Vim version 7.2c. Last change: 2008 Jun 14
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_29.txt b/runtime/doc/usr_29.txt
index 20f72ea28..07c4a43d2 100644
--- a/runtime/doc/usr_29.txt
+++ b/runtime/doc/usr_29.txt
@@ -1,4 +1,4 @@
-*usr_29.txt* For Vim version 7.2b. Last change: 2008 Jun 28
+*usr_29.txt* For Vim version 7.2c. Last change: 2008 Jun 28
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_30.txt b/runtime/doc/usr_30.txt
index 51ffcdfae..18c6108ba 100644
--- a/runtime/doc/usr_30.txt
+++ b/runtime/doc/usr_30.txt
@@ -1,4 +1,4 @@
-*usr_30.txt* For Vim version 7.2b. Last change: 2007 Nov 10
+*usr_30.txt* For Vim version 7.2c. Last change: 2007 Nov 10
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_31.txt b/runtime/doc/usr_31.txt
index 403086fb8..f00a76c26 100644
--- a/runtime/doc/usr_31.txt
+++ b/runtime/doc/usr_31.txt
@@ -1,4 +1,4 @@
-*usr_31.txt* For Vim version 7.2b. Last change: 2007 May 08
+*usr_31.txt* For Vim version 7.2c. Last change: 2007 May 08
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_32.txt b/runtime/doc/usr_32.txt
index b049540bc..852c7c8bc 100644
--- a/runtime/doc/usr_32.txt
+++ b/runtime/doc/usr_32.txt
@@ -1,4 +1,4 @@
-*usr_32.txt* For Vim version 7.2b. Last change: 2006 Apr 30
+*usr_32.txt* For Vim version 7.2c. Last change: 2006 Apr 30
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_40.txt b/runtime/doc/usr_40.txt
index cc8acc184..e21d2f9d1 100644
--- a/runtime/doc/usr_40.txt
+++ b/runtime/doc/usr_40.txt
@@ -1,4 +1,4 @@
-*usr_40.txt* For Vim version 7.2b. Last change: 2006 Jun 21
+*usr_40.txt* For Vim version 7.2c. Last change: 2006 Jun 21
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index 25e911ac7..3673de46c 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -1,4 +1,4 @@
-*usr_41.txt* For Vim version 7.2b. Last change: 2008 Jun 21
+*usr_41.txt* For Vim version 7.2c. Last change: 2008 Jun 21
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_42.txt b/runtime/doc/usr_42.txt
index b8c4eea0e..5082ba9b6 100644
--- a/runtime/doc/usr_42.txt
+++ b/runtime/doc/usr_42.txt
@@ -1,4 +1,4 @@
-*usr_42.txt* For Vim version 7.2b. Last change: 2008 May 05
+*usr_42.txt* For Vim version 7.2c. Last change: 2008 May 05
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_43.txt b/runtime/doc/usr_43.txt
index dbf3b8671..1ddbb262c 100644
--- a/runtime/doc/usr_43.txt
+++ b/runtime/doc/usr_43.txt
@@ -1,4 +1,4 @@
-*usr_43.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*usr_43.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_44.txt b/runtime/doc/usr_44.txt
index 19165d473..d409bf56c 100644
--- a/runtime/doc/usr_44.txt
+++ b/runtime/doc/usr_44.txt
@@ -1,4 +1,4 @@
-*usr_44.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*usr_44.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_45.txt b/runtime/doc/usr_45.txt
index 5f6a14f05..5bea5d864 100644
--- a/runtime/doc/usr_45.txt
+++ b/runtime/doc/usr_45.txt
@@ -1,4 +1,4 @@
-*usr_45.txt* For Vim version 7.2b. Last change: 2008 Apr 30
+*usr_45.txt* For Vim version 7.2c. Last change: 2008 Apr 30
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_90.txt b/runtime/doc/usr_90.txt
index 24efda2e3..f31af7362 100644
--- a/runtime/doc/usr_90.txt
+++ b/runtime/doc/usr_90.txt
@@ -1,4 +1,4 @@
-*usr_90.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*usr_90.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/usr_toc.txt b/runtime/doc/usr_toc.txt
index 75f29ce6a..d473d4535 100644
--- a/runtime/doc/usr_toc.txt
+++ b/runtime/doc/usr_toc.txt
@@ -1,4 +1,4 @@
-*usr_toc.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*usr_toc.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt
index e8f4de16f..5163adc1c 100644
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -1,4 +1,4 @@
-*various.txt* For Vim version 7.2b. Last change: 2008 Jun 08
+*various.txt* For Vim version 7.2c. Last change: 2008 Aug 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -644,7 +644,12 @@ g CTRL-A Only when Vim was compiled with MEM_PROFILING defined
":tnext" command can then be used to jump to other
matches, "tselect" to list matches and choose one. >
:help index| :tse z.
-< This command can be followed by '|' and another
+< When there is no argument you will see matches for
+ "help", to avoid listing all possible matches (that
+ would be very slow).
+ The number of matches displayed is limited to 300.
+
+ This command can be followed by '|' and another
command, but you don't need to escape the '|' inside a
help command. So these both work: >
:help |
diff --git a/runtime/doc/version4.txt b/runtime/doc/version4.txt
index 5eb624124..9bdcafc1f 100644
--- a/runtime/doc/version4.txt
+++ b/runtime/doc/version4.txt
@@ -1,4 +1,4 @@
-*version4.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*version4.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/version5.txt b/runtime/doc/version5.txt
index 81205778d..778dd1a63 100644
--- a/runtime/doc/version5.txt
+++ b/runtime/doc/version5.txt
@@ -1,4 +1,4 @@
-*version5.txt* For Vim version 7.2b. Last change: 2008 Jun 28
+*version5.txt* For Vim version 7.2c. Last change: 2008 Jun 28
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/version6.txt b/runtime/doc/version6.txt
index 0ab4d1deb..5f7c8c80b 100644
--- a/runtime/doc/version6.txt
+++ b/runtime/doc/version6.txt
@@ -1,4 +1,4 @@
-*version6.txt* For Vim version 7.2b. Last change: 2007 May 11
+*version6.txt* For Vim version 7.2c. Last change: 2008 Aug 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -5894,7 +5894,7 @@ Files: src/move.c
Patch 6.1b.023
Problem: On MS-Windows system() may cause checking timestamps, because Vim
- looses and gains input focus, while this doesn't happen on Unix.
+ loses and gains input focus, while this doesn't happen on Unix.
Solution: Don't check timestamps while system() is busy.
Files: src/ex_cmds2.c, src/fileio.c, src/globals.h, src/misc1.c
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 7f450f427..bea46a3e4 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt* For Vim version 7.2b. Last change: 2008 Jul 13
+*version7.txt* For Vim version 7.2c. Last change: 2008 Aug 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -4727,6 +4727,7 @@ New keymap files:
Other new runtime files:
Esperanto menus and message translations. (Dominique Pelle)
Finnish translation of menus and messages. (Flammie Pirinen)
+ Brazilian Portugese message translations. (Eduardo Dobay)
Added floating point support. |Float|
@@ -6847,7 +6848,7 @@ Problem: When a file name has an illegal byte sequence Vim may read
Solution: Don't use UTF_COMPOSINGLIKE() on an illegal byte. In
msg_outtrans_len_attr() use char2cells() instead of ptr2cells().
In utf_ptr2char() don't check second byte when first byte is
- illega. (Dominique Pelle)
+ illegal. (Dominique Pelle)
Files: src/mbyte.c, src/message.c
Patch 7.2a.011
@@ -6916,7 +6917,7 @@ Overlapping STRCPY() arguments when using %r item in 'errorformat'. Use
STRMOVE() instead. (Ralf Wildenhues)
Mac: On Leopard gvim, when using the mouse wheel nothing would happen until
-another event occures, such as moving the mouse. Then the recorded scrolling
+another event occurs, such as moving the mouse. Then the recorded scrolling
would take place all at once. (Eckehard Berns)
Solution for cursor color not reflecting IM status for GTK 2. Add
@@ -6936,5 +6937,179 @@ characters may not be cleared properly. (Yukihiro Nakadaira)
The #ifdef for including "vimio.h" was inconsistent. In a few files it
depended on MSWIN, which isn't defined until later.
+Patch 7.2b.001
+Problem: Compilation problem: mb_fix_col() missing with multi-byte feature
+ but without GUI or clipboard.
+Solution: Remove #ifdef.
+Files: src/mbyte.c
+
+Patch 7.2b.002
+Problem: Compiler warnings for signed/unsigned mismatch.
+Solution: Add type casts.
+Files: src/screen.c
+
+Patch 7.2b.003
+Problem: Still a compilation problem, check_col() and check_row() missing.
+Solution: Add FEAT_MBYTE to the #if.
+Files: src/ui.c
+
+Patch 7.2b.004
+Problem: Trying to free memory for a static string when using ":helpgrep".
+ (George Reilly)
+Solution: Set 'cpo' to empty_option instead of an empty string. Also for
+ searchpair() and substitute().
+Files: src/quickfix.c, src/eval.c
+
+Patch 7.2b.005
+Problem: The special character "!" isn't handled properly in shellescape().
+ (Jan Minar)
+Solution: Escape "!" when using a "csh" like shell and with
+ shellescape(s, 1). Twice for both. Also escape <NL>.
+Files: src/misc2.c
+
+Patch 7.2b.006
+Problem: Reading past end of string when reading info from tags line.
+Solution: Break the loop when encountering a NUL. (Dominique Pelle)
+Files: src/tag.c
+
+Patch 7.2b.007
+Problem: Part of a message cannot be translated.
+Solution: Put _() around the message.
+Files: src/search.c
+
+Patch 7.2b.008
+Problem: A few filetypes are not detected or not detected properly.
+Solution: Add filetype detection patterns. (Nikolai Weibull)
+Files: runtime/filetype.vim
+
+Patch 7.2b.009
+Problem: Reading past end of screen line. (Epicurus)
+Solution: Avoid going past the value of Columns.
+Files: src/screen.c
+
+Patch 7.2b.010
+Problem: ":mksession" doesn't work for ":map , foo", ":sunmap ,". (Ethan
+ Mallove)
+Solution: Check for "nxo", "nso" and other strange mapping combinations.
+Files: src/getchar.c
+
+Patch 7.2b.011
+Problem: Configure for TCL ends up with include file in compiler command.
+ (Richard Hogg)
+Solution: Delete items from $TCL_DEFS that do not start with a dash.
+Files: src/auto/configure, src/configure.in
+
+Patch 7.2b.012
+Problem: Build failure with +multi_byte but without +diff.
+Solution: Add #ifdef. (Patrick Texier)
+Files: src/main.c
+
+Patch 7.2b.013
+Problem: Build fails with tiny features and Perl. (Dominique Pelle)
+Solution: Define missing functions. Also when compiling Python.
+Files: src/if_perl.xs, src/if_python.c
+
+Patch 7.2b.014
+Problem: Configure uses an unsafe temp file to store commands.
+Solution: Create the temp file in local directory.
+Files: src/auto/configure, src/configure.in
+
+Patch 7.2b.015
+Problem: Build fails on Mac when using Aap.
+Solution: Fix typo in configure script.
+Files: src/auto/configure, src/configure.in
+
+Patch 7.2b.016
+Problem: Build fails with normal features but without +autocmd.
+Solution: Fix #ifdefs. (Ian Kelling)
+Files: src/eval.c, src/ex_cmds.c, src/quickfix.c, src/option.c,
+ src/ex_docmd.c
+
+Patch 7.2b.017
+Problem: "vim -O foo foo" results in only one window. (Zdenek Sekera)
+Solution: Handle result of ATTENTION prompt properly. (Ian Kelling)
+Files: src/main.c
+
+Patch 7.2b.018
+Problem: When doing command line completion on a file name for a csh-like
+ shell argument a '!' character isn't escaped properly.
+Solution: Add another backslash.
+Files: src/ex_getln.c, src/misc2.c, src/proto/misc2.pro, src/screen.c
+
+Patch 7.2b.019 (extra)
+Problem: Win32: Various compiler warnings.
+Solution: Use __w64 attribute. Comment-out unused parameters. Adjust a few
+ #ifdefs. (George Reilly)
+Files: src/gui_w48.c, src/GvimExt/gvimext.cpp, src/Make_mvc.mak,
+ src/os_mswin.c, src/os_win32.c, src/vim.h
+
+Patch 7.2b.020
+Problem: ":sort n" doesn't handle negative numbers. (James Vega)
+Solution: Include '-' in the number.
+Files: src/charset.c, src/ex_cmds.c
+
+Patch 7.2b.021
+Problem: Reloading doesn't read the BOM correctly. (Steve Gardner)
+Solution: Accept utf-8 BOM when specified file encoding is utf-8.
+Files: src/fileio.c
+
+Patch 7.2b.022
+Problem: When using ":normal" while updating the status line the count of
+ an operator is lost. (Dominique Pelle)
+Solution: Save and restore "opcount".
+Files: src/ex_docmd.c, src/globals.h, src/normal.c
+
+Patch 7.2b.023
+Problem: Crash when using the result of synstack(0,0). (Matt Wozniski)
+Solution: Check for v_list to be NULL in a few more places.
+Files: src/eval.c
+
+Patch 7.2b.024
+Problem: Using ":gui" while the netrw plugin is active causes a delay in
+ updating the display.
+Solution: Don't check for terminal codes when starting the GUI.
+Files: src/term.c
+
+Patch 7.2b.025
+Problem: When the CursorHold event triggers a pending count is lost.
+ (Juergen Kraemer)
+Solution: Save the counts and restore them.
+Files: src/normal.c, src/structs.h
+
+Patch 7.2b.026
+Problem: The GTK 2 file chooser causes the ~/.recently-used.xbel file to be
+ written over and over again. This may cause a significant
+ slowdown. (Guido Berhoerster)
+Solution: Don't use the GTK 2 file chooser.
+Files: src/gui_gtk.c
+
+Patch 7.2b.027
+Problem: Memory leak for Python, Perl, etc. script command with end marker.
+Solution: Free the memory of the end marker. (Andy Kittner)
+Files: src/ex_getln.c
+
+Patch 7.2b.028
+Problem: Reading uninitialized memory when doing ":gui -f". (Dominique
+ Pelle)
+Solution: Don't position the cursor when the screen size is invalid.
+Files: src/gui.c
+
+Patch 7.2b.029
+Problem: ":help a" doesn't jump to "a" tag in docs. (Tony Mechelynck)
+Solution: Get all tags and throw away more than TAG_MANY after sorting.
+ When there is no argument find matches for "help" to avoid a long
+ delay.
+Files: src/ex_cmds.c, src/ex_getln.c
+
+Patch 7.2b.030
+Problem: When changing the value of t_Co from 8 to 16 the Visual
+ highlighting keeps both reverse and a background color.
+Solution: Remove the attribute when setting the default highlight color.
+ (Markus Heidelberg)
+Files: src/syntax.c
+
+Error when cancelling completion menu and auto-formatting. (fixed by Ian
+Kelling)
+
vim:tw=78:ts=8:ft=help:norl:
diff --git a/runtime/doc/vi_diff.txt b/runtime/doc/vi_diff.txt
index bd5df64dc..47c5494ff 100644
--- a/runtime/doc/vi_diff.txt
+++ b/runtime/doc/vi_diff.txt
@@ -1,4 +1,4 @@
-*vi_diff.txt* For Vim version 7.2b. Last change: 2008 Jun 28
+*vi_diff.txt* For Vim version 7.2c. Last change: 2008 Jun 28
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/vim-fr.1 b/runtime/doc/vim-fr.1
index 58434406a..3b49351bf 100644
--- a/runtime/doc/vim-fr.1
+++ b/runtime/doc/vim-fr.1
@@ -549,7 +549,7 @@ Voir ":help 'filetype'".
Script pour détecter le type d'un fichier d'après son contenu.
Voir ":help 'filetype'".
.TP
-/usr/local/lib/vim/*.ps
+/usr/local/lib/vim/print/*.ps
Fichiers utilisés pour l'impression PostScript.
.PP
Pour disposer d'informations récentes, consulter le site Internet de VIM :
diff --git a/runtime/doc/vim-fr.UTF-8.1 b/runtime/doc/vim-fr.UTF-8.1
index aa2c3c958..6e7b183be 100644
--- a/runtime/doc/vim-fr.UTF-8.1
+++ b/runtime/doc/vim-fr.UTF-8.1
@@ -549,7 +549,7 @@ Voir ":help 'filetype'".
Script pour détecter le type d'un fichier d'après son contenu.
Voir ":help 'filetype'".
.TP
-/usr/local/lib/vim/*.ps
+/usr/local/lib/vim/print/*.ps
Fichiers utilisés pour l'impression PostScript.
.PP
Pour disposer d'informations récentes, consulter le site Internet de VIM :
diff --git a/runtime/doc/vim-it.1 b/runtime/doc/vim-it.1
index d712af466..1a8967fd9 100755
--- a/runtime/doc/vim-it.1
+++ b/runtime/doc/vim-it.1
@@ -534,7 +534,7 @@ Vedere ":help 'filetype'".
Script Vim per determinare il tipo di un file a partire dal suo contenuto.
Vedere ":help 'filetype'".
.TP
-/usr/local/lib/vim/*.ps
+/usr/local/lib/vim/print/*.ps
File usati per stampa PostScript.
.PP
Per informazioni aggiornate [in inglese \- NdT] vedere la home page di Vim:
diff --git a/runtime/doc/vim-it.UTF-8.1 b/runtime/doc/vim-it.UTF-8.1
index f41691df9..a7ea5f99c 100644
--- a/runtime/doc/vim-it.UTF-8.1
+++ b/runtime/doc/vim-it.UTF-8.1
@@ -534,7 +534,7 @@ Vedere ":help 'filetype'".
Script Vim per determinare il tipo di un file a partire dal suo contenuto.
Vedere ":help 'filetype'".
.TP
-/usr/local/lib/vim/*.ps
+/usr/local/lib/vim/print/*.ps
File usati per stampa PostScript.
.PP
Per informazioni aggiornate [in inglese \- NdT] vedere la home page di Vim:
diff --git a/runtime/doc/vim-pl.1 b/runtime/doc/vim-pl.1
index 25dd78698..3fa34e299 100644
--- a/runtime/doc/vim-pl.1
+++ b/runtime/doc/vim-pl.1
@@ -523,7 +523,7 @@ Skrypt do wykrywania typu pliku wed³ug jego nazwy. Zobacz ":help 'filetype'".
/usr/local/lib/vim/scripts.vim
Skrypt do wykrywania typu pliku wed³ug jego zawarto¶ci. Zobacz ":help 'filetype'".
.TP
-/usr/local/lib/vim/*.ps
+/usr/local/lib/vim/print/*.ps
Pliku u¿ywane do drukowania PostScriptu.
.PP
Naj¶wie¿sze wiadomo¶ci na stronie
diff --git a/runtime/doc/vim-pl.UTF-8.1 b/runtime/doc/vim-pl.UTF-8.1
index ab19a527c..365da5a41 100644
--- a/runtime/doc/vim-pl.UTF-8.1
+++ b/runtime/doc/vim-pl.UTF-8.1
@@ -523,7 +523,7 @@ Skrypt do wykrywania typu pliku według jego nazwy. Zobacz ":help 'filetype'".
/usr/local/lib/vim/scripts.vim
Skrypt do wykrywania typu pliku według jego zawartości. Zobacz ":help 'filetype'".
.TP
-/usr/local/lib/vim/*.ps
+/usr/local/lib/vim/print/*.ps
Pliku używane do drukowania PostScriptu.
.PP
Najświeższe wiadomości na stronie
diff --git a/runtime/doc/vim-ru.1 b/runtime/doc/vim-ru.1
index 11e30174b..bb2597fea 100644
--- a/runtime/doc/vim-ru.1
+++ b/runtime/doc/vim-ru.1
@@ -452,7 +452,7 @@ rvim rview rgvim rgview
/usr/local/lib/vim/scripts.vim
óÃÅÎÁÒÉÊ ÄÌÑ ÏÐÒÅÄÅÌÅÎÉÑ ÔÉÐÁ ÆÁÊÌÁ ÐÏ ÓÏÄÅÒÖÉÍÏÍÕ. óÍ. ":help 'filetype'".
.TP
-/usr/local/lib/vim/*.ps
+/usr/local/lib/vim/print/*.ps
æÁÊÌÙ ÄÌÑ ÐÅÞÁÔÉ PostScript.
.PP
âÏÌÅÅ Ó×ÅÖÁÑ ÉÎÆÏÒÍÁÃÉÑ -- ÎÁ ÓÁÊÔÅ VIM:
diff --git a/runtime/doc/vim-ru.UTF-8.1 b/runtime/doc/vim-ru.UTF-8.1
index b4d88edb5..78127a1cc 100644
--- a/runtime/doc/vim-ru.UTF-8.1
+++ b/runtime/doc/vim-ru.UTF-8.1
@@ -452,7 +452,7 @@ rvim rview rgvim rgview
/usr/local/lib/vim/scripts.vim
Сценарий Ð´Ð»Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ñ‚Ð¸Ð¿Ð° файла по Ñодержимому. См. ":help 'filetype'".
.TP
-/usr/local/lib/vim/*.ps
+/usr/local/lib/vim/print/*.ps
Файлы Ð´Ð»Ñ Ð¿ÐµÑ‡Ð°Ñ‚Ð¸ PostScript.
.PP
Более ÑÐ²ÐµÐ¶Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ -- на Ñайте VIM:
diff --git a/runtime/doc/vim.1 b/runtime/doc/vim.1
index 4e90da276..820caa24f 100644
--- a/runtime/doc/vim.1
+++ b/runtime/doc/vim.1
@@ -187,7 +187,7 @@ behave mostly like Vi, even though a .vimrc file exists.
.TP
\-d
Start in diff mode.
-There should be two or three file name arguments.
+There should be two, three or four file name arguments.
.B Vim
will open all the files and show differences between them.
Works like vimdiff(1).
@@ -522,7 +522,7 @@ Script to detect the type of a file by its name. See ":help 'filetype'".
/usr/local/lib/vim/scripts.vim
Script to detect the type of a file by its contents. See ":help 'filetype'".
.TP
-/usr/local/lib/vim/*.ps
+/usr/local/lib/vim/print/*.ps
Files used for PostScript printing.
.PP
For recent info read the VIM home page:
diff --git a/runtime/doc/vim.man b/runtime/doc/vim.man
index fa5c5c855..5b9b83cb6 100644
--- a/runtime/doc/vim.man
+++ b/runtime/doc/vim.man
@@ -135,9 +135,9 @@ OPTIONS
Vim behave mostly like Vi, even though a .vimrc file
exists.
- -d Start in diff mode. There should be two or three file name
- arguments. Vim will open all the files and show differ-
- ences between them. Works like vimdiff(1).
+ -d Start in diff mode. There should be two, three or four
+ file name arguments. Vim will open all the files and show
+ differences between them. Works like vimdiff(1).
-d {device} Open {device} for use as a terminal. Only on the Amiga.
Example: "-d con:20/30/600/150".
@@ -398,7 +398,7 @@ FILES
Script to detect the type of a file by its contents.
See ":help 'filetype'".
- /usr/local/lib/vim/*.ps
+ /usr/local/lib/vim/print/*.ps
Files used for PostScript printing.
For recent info read the VIM home page:
diff --git a/runtime/doc/vimdiff.1 b/runtime/doc/vimdiff.1
index 90ed8b800..bed2b3288 100644
--- a/runtime/doc/vimdiff.1
+++ b/runtime/doc/vimdiff.1
@@ -1,17 +1,17 @@
.TH VIMDIFF 1 "2001 March 30"
.SH NAME
-vimdiff \- edit two or three versions of a file with Vim and show differences
+vimdiff \- edit two, three or four versions of a file with Vim and show differences
.SH SYNOPSIS
.br
.B vimdiff
-[options] file1 file2 [file3]
+[options] file1 file2 [file3 [file4]]
.PP
.B gvimdiff
.SH DESCRIPTION
.B Vimdiff
starts
.B Vim
-on two (or three) files.
+on two (or three or four) files.
Each file gets its own window.
The differences between the files are highlighted.
This is a nice way to inspect changes and to move changes from one version
diff --git a/runtime/doc/vimdiff.man b/runtime/doc/vimdiff.man
index 41ef47f35..913ac1384 100644
--- a/runtime/doc/vimdiff.man
+++ b/runtime/doc/vimdiff.man
@@ -3,19 +3,19 @@ VIMDIFF(1) VIMDIFF(1)
NAME
- vimdiff - edit two or three versions of a file with Vim and show dif-
- ferences
+ vimdiff - edit two, three or four versions of a file with Vim and show
+ differences
SYNOPSIS
- vimdiff [options] file1 file2 [file3]
+ vimdiff [options] file1 file2 [file3 [file4]]
gvimdiff
DESCRIPTION
- Vimdiff starts Vim on two (or three) files. Each file gets its own
- window. The differences between the files are highlighted. This is a
- nice way to inspect changes and to move changes from one version to
- another version of the same file.
+ Vimdiff starts Vim on two (or three or four) files. Each file gets its
+ own window. The differences between the files are highlighted. This
+ is a nice way to inspect changes and to move changes from one version
+ to another version of the same file.
See vim(1) for details about Vim itself.
diff --git a/runtime/doc/visual.txt b/runtime/doc/visual.txt
index fca71f360..6968f774d 100644
--- a/runtime/doc/visual.txt
+++ b/runtime/doc/visual.txt
@@ -1,4 +1,4 @@
-*visual.txt* For Vim version 7.2b. Last change: 2006 Sep 26
+*visual.txt* For Vim version 7.2c. Last change: 2006 Sep 26
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt
index 40e98c441..62917700d 100644
--- a/runtime/doc/windows.txt
+++ b/runtime/doc/windows.txt
@@ -1,4 +1,4 @@
-*windows.txt* For Vim version 7.2b. Last change: 2008 Jul 05
+*windows.txt* For Vim version 7.2c. Last change: 2008 Jul 05
VIM REFERENCE MANUAL by Bram Moolenaar
diff --git a/runtime/doc/workshop.txt b/runtime/doc/workshop.txt
index e67685256..da56f287d 100644
--- a/runtime/doc/workshop.txt
+++ b/runtime/doc/workshop.txt
@@ -1,4 +1,4 @@
-*workshop.txt* For Vim version 7.2b. Last change: 2006 Apr 24
+*workshop.txt* For Vim version 7.2c. Last change: 2006 Apr 24
VIM REFERENCE MANUAL by Gordon Prieur
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index 17f7a80c5..a8e6261e9 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -1,7 +1,7 @@
" Vim support file to detect file types
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2008 Jul 17
+" Last Change: 2008 Aug 03
" Listen very carefully, I will say this only once
if exists("did_load_filetypes")
@@ -25,7 +25,7 @@ au BufNewFile,BufRead *~
\ if s:name != s:short && s:short != "" |
\ exe "doau filetypedetect BufRead " . fnameescape(s:short) |
\ endif |
- \ unlet s:name s:short
+ \ unlet! s:name s:short
au BufNewFile,BufRead ?\+.in
\ if expand("<afile>:t") != "configure.in" |
\ exe "doau filetypedetect BufRead " . fnameescape(expand("<afile>:r")) |
@@ -181,7 +181,7 @@ func! s:FTasm()
endif
endif
- exe "setf " . b:asmsyntax
+ exe "setf " . fnameescape(b:asmsyntax)
endfunc
func! s:FTasmsyntax()
@@ -189,8 +189,9 @@ func! s:FTasmsyntax()
" b:asmsyntax appropriately
let head = " ".getline(1)." ".getline(2)." ".getline(3)." ".getline(4).
\" ".getline(5)." "
- if head =~ '\sasmsyntax=\S\+\s'
- let b:asmsyntax = substitute(head, '.*\sasmsyntax=\([a-zA-Z0-9]\+\)\s.*','\1', "")
+ let match = matchstr(head, '\sasmsyntax=\zs[a-zA-Z0-9]\+\ze\s')
+ if match != ''
+ let b:asmsyntax = match
elseif ((head =~? '\.title') || (head =~? '\.ident') || (head =~? '\.macro') || (head =~? '\.subtitle') || (head =~? '\.library'))
let b:asmsyntax = "vmasm"
endif
@@ -690,6 +691,9 @@ if has("fname_case")
endif
au BufNewFile,BufRead *.f,*.for,*.fortran,*.fpp,*.ftn,*.f77,*.f90,*.f95 setf fortran
+" Framescript
+au BufNewFile,BufRead *.fsl setf framescript
+
" FStab
au BufNewFile,BufRead fstab,mtab setf fstab
@@ -1347,7 +1351,7 @@ func! s:FTinc()
else
call s:FTasmsyntax()
if exists("b:asmsyntax")
- exe "setf " . b:asmsyntax
+ exe "setf " . fnameescape(b:asmsyntax)
else
setf pov
endif
@@ -1751,6 +1755,7 @@ endfunc
" Z-Shell script
au BufNewFile,BufRead .zprofile,/etc/zprofile,.zfbfmarks setf zsh
au BufNewFile,BufRead .zsh*,.zlog*,.zcompdump* call s:StarSetf('zsh')
+au BufNewFile,BufRead *.zsh setf zsh
" Scheme
au BufNewFile,BufRead *.scm,*.ss setf scheme
diff --git a/runtime/ftplugin/a2ps.vim b/runtime/ftplugin/a2ps.vim
index a596fc839..665335194 100644
--- a/runtime/ftplugin/a2ps.vim
+++ b/runtime/ftplugin/a2ps.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: a2ps(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=:# commentstring=#\ %s include=^\\s*Include:
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/alsaconf.vim b/runtime/ftplugin/alsaconf.vim
index 0ef6991d3..5d763c801 100644
--- a/runtime/ftplugin/alsaconf.vim
+++ b/runtime/ftplugin/alsaconf.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: alsaconf(8) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/arch.vim b/runtime/ftplugin/arch.vim
index 2da9e40ac..71d831e11 100644
--- a/runtime/ftplugin/arch.vim
+++ b/runtime/ftplugin/arch.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: GNU Arch inventory file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/automake.vim b/runtime/ftplugin/automake.vim
index c48ea13e1..20b06af36 100644
--- a/runtime/ftplugin/automake.vim
+++ b/runtime/ftplugin/automake.vim
@@ -1,10 +1,16 @@
" Vim filetype plugin file
" Language: Automake
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
+let s:cpo_save = &cpo
+set cpo&vim
+
runtime! ftplugin/make.vim ftplugin/make_*.vim ftplugin/make/*.vim
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/bdf.vim b/runtime/ftplugin/bdf.vim
index a010c2c5a..120c5df96 100644
--- a/runtime/ftplugin/bdf.vim
+++ b/runtime/ftplugin/bdf.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: BDF font definition
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=b:COMMENT commentstring=COMMENT\ %s
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/calendar.vim b/runtime/ftplugin/calendar.vim
index ca5651118..6f117e36e 100644
--- a/runtime/ftplugin/calendar.vim
+++ b/runtime/ftplugin/calendar.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: calendar(1) input file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=s1:/*,mb:*,ex:*/ commentstring& include&
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/cdrdaoconf.vim b/runtime/ftplugin/cdrdaoconf.vim
index 86796eb8e..557fd82c5 100644
--- a/runtime/ftplugin/cdrdaoconf.vim
+++ b/runtime/ftplugin/cdrdaoconf.vim
@@ -1,6 +1,6 @@
" Vim filetype plugin file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2007-09-18
+" Latest Revision: 2007-12-04
if exists("b:did_ftplugin")
finish
@@ -14,5 +14,5 @@ let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
-let s:cpo_save = &cpo
-set cpo&vim
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/conf.vim b/runtime/ftplugin/conf.vim
index 8e0b7f8d2..1b110e475 100644
--- a/runtime/ftplugin/conf.vim
+++ b/runtime/ftplugin/conf.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: generic configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/context.vim b/runtime/ftplugin/context.vim
index c74be0714..1c7d67837 100644
--- a/runtime/ftplugin/context.vim
+++ b/runtime/ftplugin/context.vim
@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: ConTeXt typesetting engine
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
@@ -29,8 +29,7 @@ if exists("loaded_matchit")
let b:match_skip = 'r:\\\@<!\%(\\\\\)*%'
let b:match_words = '(:),\[:],{:},\\(:\\),\\\[:\\],' .
\ '\\start\(\a\+\):\\stop\1'
-endif " exists("loaded_matchit")
-
+endif
let &cpo = s:cpo_save
unlet s:cpo_save
diff --git a/runtime/ftplugin/crm.vim b/runtime/ftplugin/crm.vim
index 8ec42a90c..e86e68306 100644
--- a/runtime/ftplugin/crm.vim
+++ b/runtime/ftplugin/crm.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: CRM114
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/css.vim b/runtime/ftplugin/css.vim
index d80582e2f..43d1edfa5 100644
--- a/runtime/ftplugin/css.vim
+++ b/runtime/ftplugin/css.vim
@@ -1,13 +1,16 @@
" Vim filetype plugin file
" Language: CSS
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2007-05-08
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< inc< fo< ofu<"
setlocal comments=s1:/*,mb:*,ex:*/ commentstring&
@@ -15,3 +18,6 @@ setlocal formatoptions-=t formatoptions+=croql
setlocal omnifunc=csscomplete#CompleteCSS
let &l:include = '^\s*@import\s\+\%(url(\)\='
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/cvsrc.vim b/runtime/ftplugin/cvsrc.vim
index 2a49f8d60..c41053058 100644
--- a/runtime/ftplugin/cvsrc.vim
+++ b/runtime/ftplugin/cvsrc.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: cvs(1) RC file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments= commentstring= formatoptions-=tcroql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/denyhosts.vim b/runtime/ftplugin/denyhosts.vim
index 86796eb8e..557fd82c5 100644
--- a/runtime/ftplugin/denyhosts.vim
+++ b/runtime/ftplugin/denyhosts.vim
@@ -1,6 +1,6 @@
" Vim filetype plugin file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2007-09-18
+" Latest Revision: 2007-12-04
if exists("b:did_ftplugin")
finish
@@ -14,5 +14,5 @@ let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
-let s:cpo_save = &cpo
-set cpo&vim
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/dictconf.vim b/runtime/ftplugin/dictconf.vim
index 6ebd94adf..659046c17 100644
--- a/runtime/ftplugin/dictconf.vim
+++ b/runtime/ftplugin/dictconf.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: dict(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/dictdconf.vim b/runtime/ftplugin/dictdconf.vim
index bda87821a..ee738c50c 100644
--- a/runtime/ftplugin/dictdconf.vim
+++ b/runtime/ftplugin/dictdconf.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: dictd(8) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/dircolors.vim b/runtime/ftplugin/dircolors.vim
index bdbecc019..3b3d046e3 100644
--- a/runtime/ftplugin/dircolors.vim
+++ b/runtime/ftplugin/dircolors.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: dircolors(1) input file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/dosini.vim b/runtime/ftplugin/dosini.vim
index 354b093ee..461403ca9 100644
--- a/runtime/ftplugin/dosini.vim
+++ b/runtime/ftplugin/dosini.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: Configuration File (ini file) for MSDOS/MS Windows
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2007-08-23
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:; commentstring=;\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/dtd.vim b/runtime/ftplugin/dtd.vim
index 991118779..3b15bda3c 100644
--- a/runtime/ftplugin/dtd.vim
+++ b/runtime/ftplugin/dtd.vim
@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: dtd
" Maintainer: Dan Sharp <dwsharp at hotmail dot com>
-" Last Changed: 2003 Sep 29
+" Last Changed: 30 Jun 2008
" URL: http://mywebpage.netscape.com/sharppeople/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
@@ -13,6 +13,12 @@ let s:save_cpo = &cpo
set cpo-=C
setlocal commentstring=<!--%s-->
+setlocal comments=s:<!--,m:\ \ \ \ \ ,e:-->
+
+setlocal formatoptions-=t
+if !exists("g:ft_dtd_autocomment") || (g:ft_dtd_autocomment == 1)
+ setlocal formatoptions+=croql
+endif
if exists("loaded_matchit")
let b:match_words = '<!--:-->,<!:>'
@@ -26,7 +32,7 @@ if has("gui_win32")
endif
" Undo the stuff we changed.
-let b:undo_ftplugin = "setlocal commentstring<" .
+let b:undo_ftplugin = "setlocal commentstring< comments< formatoptions<" .
\ " | unlet! b:matchwords b:browsefilter"
" Restore the saved compatibility options.
diff --git a/runtime/ftplugin/elinks.vim b/runtime/ftplugin/elinks.vim
index c7c11f642..7d9257566 100644
--- a/runtime/ftplugin/elinks.vim
+++ b/runtime/ftplugin/elinks.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: elinks(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/eterm.vim b/runtime/ftplugin/eterm.vim
index df5bf5007..e072c638b 100644
--- a/runtime/ftplugin/eterm.vim
+++ b/runtime/ftplugin/eterm.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: eterm(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=:# commentstring=#\ %s include=^\\s*include
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/fetchmail.vim b/runtime/ftplugin/fetchmail.vim
index 174ed448b..a0d4650c0 100644
--- a/runtime/ftplugin/fetchmail.vim
+++ b/runtime/ftplugin/fetchmail.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: fetchmail(1) RC File
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/framescript.vim b/runtime/ftplugin/framescript.vim
new file mode 100644
index 000000000..805401a89
--- /dev/null
+++ b/runtime/ftplugin/framescript.vim
@@ -0,0 +1,30 @@
+" Vim ftplugin file
+" Language: FrameScript
+" Maintainer: Nikolai Weibull <now@bitwi.se>
+" Latest Revision: 2008-07-19
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+if exists("b:did_ftplugin")
+ finish
+endif
+let b:did_ftplugin = 1
+
+let b:undo_ftplugin = "setl com< cms< fo< inc< | unlet! b:matchwords"
+
+setlocal comments=s1:/*,mb:*,ex:*/,:// commentstring=/*\ %s\ */
+setlocal formatoptions-=t formatoptions+=croql
+setlocal include=^\\s*<#Include
+
+if exists("loaded_matchit")
+ let s:not_end = '\c\%(\<End\)\@<!'
+ let b:match_words =
+ \ s:not_end . '\<If\>:\c\<ElseIf\>:\c\<Else\>:\c\<EndIf\>,' .
+ \ s:not_end . '\<Loop\>:\c\<EndLoop\>' .
+ \ s:not_end . '\<Sub\>:\c\<EndSub\>'
+ unlet s:not_end
+endif
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/git.vim b/runtime/ftplugin/git.vim
index f8d331faf..9ac1aa151 100644
--- a/runtime/ftplugin/git.vim
+++ b/runtime/ftplugin/git.vim
@@ -1,7 +1,7 @@
" Vim filetype plugin
" Language: generic git output
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
-" Last Change: 2008 Jun 20
+" Last Change: 2008 Jul 30
" Only do this when not done yet for this buffer
if (exists("b:did_ftplugin"))
@@ -22,7 +22,7 @@ endif
if exists('*shellescape') && exists('b:git_dir') && b:git_dir != ''
if b:git_dir =~# '/\.git$' " Not a bare repository
- let &l:path = escape(fnamemodify(b:git_dir,':t'),'\, ').','.&l:path
+ let &l:path = escape(fnamemodify(b:git_dir,':h'),'\, ').','.&l:path
endif
let &l:path = escape(b:git_dir,'\, ').','.&l:path
let &l:keywordprg = 'git --git-dir='.shellescape(b:git_dir).' show'
diff --git a/runtime/ftplugin/gpg.vim b/runtime/ftplugin/gpg.vim
index d4bed143b..5caa1f69c 100644
--- a/runtime/ftplugin/gpg.vim
+++ b/runtime/ftplugin/gpg.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: gpg(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/group.vim b/runtime/ftplugin/group.vim
index 447ba183c..eef3cd68d 100644
--- a/runtime/ftplugin/group.vim
+++ b/runtime/ftplugin/group.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: group(5) user group file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments= commentstring= formatoptions-=tcroq formatoptions+=l
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/grub.vim b/runtime/ftplugin/grub.vim
index 162fcd3eb..21c4e3609 100644
--- a/runtime/ftplugin/grub.vim
+++ b/runtime/ftplugin/grub.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: grub(8) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/haskell.vim b/runtime/ftplugin/haskell.vim
index f5a3a807a..144f9f686 100644
--- a/runtime/ftplugin/haskell.vim
+++ b/runtime/ftplugin/haskell.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: Haskell
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=s1fl:{-,mb:-,ex:-},:-- commentstring=--\ %s
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/help.vim b/runtime/ftplugin/help.vim
index 46c844ca2..5c6dac821 100644
--- a/runtime/ftplugin/help.vim
+++ b/runtime/ftplugin/help.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: Vim help file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl fo< tw<"
setlocal formatoptions+=tcroql textwidth=78
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/hostconf.vim b/runtime/ftplugin/hostconf.vim
index 86796eb8e..557fd82c5 100644
--- a/runtime/ftplugin/hostconf.vim
+++ b/runtime/ftplugin/hostconf.vim
@@ -1,6 +1,6 @@
" Vim filetype plugin file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2007-09-18
+" Latest Revision: 2007-12-04
if exists("b:did_ftplugin")
finish
@@ -14,5 +14,5 @@ let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
-let s:cpo_save = &cpo
-set cpo&vim
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/hostsaccess.vim b/runtime/ftplugin/hostsaccess.vim
new file mode 100644
index 000000000..a2f55acb8
--- /dev/null
+++ b/runtime/ftplugin/hostsaccess.vim
@@ -0,0 +1,19 @@
+" Vim filetype plugin file
+" Language: hosts_access(5) control file
+" Maintainer: Nikolai Weibull <now@bitwi.se>
+" Latest Revision: 2008-07-09
+
+if exists("b:did_ftplugin")
+ finish
+endif
+let b:did_ftplugin = 1
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+let b:undo_ftplugin = "setl com< cms< fo<"
+
+setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/html.vim b/runtime/ftplugin/html.vim
index 4797f4b46..6c8607d92 100644
--- a/runtime/ftplugin/html.vim
+++ b/runtime/ftplugin/html.vim
@@ -12,8 +12,14 @@ let b:did_ftplugin = 1
let s:save_cpo = &cpo
set cpo-=C
-setlocal commentstring=<!--%s-->
setlocal matchpairs+=<:>
+setlocal commentstring=<!--%s-->
+setlocal comments=s:<!--,m:\ \ \ \ ,e:-->
+
+if exists("g:ft_html_autocomment") && (g:ft_html_autocomment == 1)
+ setlocal formatoptions-=t formatoptions+=croql
+endif
+
if exists('&omnifunc')
" Distinguish between HTML versions
@@ -77,7 +83,7 @@ if has("gui_win32")
endif
" Undo the stuff we changed.
-let b:undo_ftplugin = "setlocal commentstring< matchpairs< omnifunc<"
+let b:undo_ftplugin = "setlocal commentstring< matchpairs< omnifunc< comments< formatoptions<" .
\ " | unlet! b:match_ignorecase b:match_skip b:match_words b:browsefilter"
" Restore the saved compatibility options.
diff --git a/runtime/ftplugin/indent.vim b/runtime/ftplugin/indent.vim
index 2047b1de0..0e195b061 100644
--- a/runtime/ftplugin/indent.vim
+++ b/runtime/ftplugin/indent.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: indent(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=s1:/*,mb:*,ex:*/ commentstring&
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/kconfig.vim b/runtime/ftplugin/kconfig.vim
index bb932188f..1b10c86ae 100644
--- a/runtime/ftplugin/kconfig.vim
+++ b/runtime/ftplugin/kconfig.vim
@@ -1,12 +1,18 @@
" Vim filetype plugin file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-10
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/ld.vim b/runtime/ftplugin/ld.vim
index 544fc0d0e..31ce5c9ff 100644
--- a/runtime/ftplugin/ld.vim
+++ b/runtime/ftplugin/ld.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: ld(1) script
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=s1:/*,mb:*,ex:*/ commentstring=/*%s*/ include=^\\s*INCLUDE
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/lftp.vim b/runtime/ftplugin/lftp.vim
index e81684c2d..9e2eeb52c 100644
--- a/runtime/ftplugin/lftp.vim
+++ b/runtime/ftplugin/lftp.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: lftp(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/libao.vim b/runtime/ftplugin/libao.vim
index 8845b17fc..38bd3de92 100644
--- a/runtime/ftplugin/libao.vim
+++ b/runtime/ftplugin/libao.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: libao.conf(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/limits.vim b/runtime/ftplugin/limits.vim
index 6b18c8373..cd5b7b5c9 100644
--- a/runtime/ftplugin/limits.vim
+++ b/runtime/ftplugin/limits.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: limits(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/loginaccess.vim b/runtime/ftplugin/loginaccess.vim
index c5cb1b1cb..7c44f972f 100644
--- a/runtime/ftplugin/loginaccess.vim
+++ b/runtime/ftplugin/loginaccess.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: login.access(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/logindefs.vim b/runtime/ftplugin/logindefs.vim
index 431755e52..668d08a00 100644
--- a/runtime/ftplugin/logindefs.vim
+++ b/runtime/ftplugin/logindefs.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: login.defs(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/m4.vim b/runtime/ftplugin/m4.vim
index 870258409..0ffe0ac77 100644
--- a/runtime/ftplugin/m4.vim
+++ b/runtime/ftplugin/m4.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: m4
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:#,:dnl commentstring=dnl\ %s
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/mailaliases.vim b/runtime/ftplugin/mailaliases.vim
index f52583fc8..1b10c86ae 100644
--- a/runtime/ftplugin/mailaliases.vim
+++ b/runtime/ftplugin/mailaliases.vim
@@ -1,12 +1,18 @@
" Vim filetype plugin file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-03-27
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/mailcap.vim b/runtime/ftplugin/mailcap.vim
index df4e994c0..f4c8c232d 100644
--- a/runtime/ftplugin/mailcap.vim
+++ b/runtime/ftplugin/mailcap.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: Mailcap configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/manconf.vim b/runtime/ftplugin/manconf.vim
index 69cf6f504..a249a9750 100644
--- a/runtime/ftplugin/manconf.vim
+++ b/runtime/ftplugin/manconf.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: man.conf(5) - man configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/mf.vim b/runtime/ftplugin/mf.vim
index e351a1361..fd1d3ce64 100644
--- a/runtime/ftplugin/mf.vim
+++ b/runtime/ftplugin/mf.vim
@@ -1,14 +1,19 @@
" Vim filetype plugin file
" Language: MetaFont
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:% commentstring=%\ %s formatoptions-=t formatoptions+=croql
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/modconf.vim b/runtime/ftplugin/modconf.vim
index 97102a1ee..f200e9f61 100644
--- a/runtime/ftplugin/modconf.vim
+++ b/runtime/ftplugin/modconf.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: modules.conf(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=:# commentstring=#\ %s include=^\\s*include
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/mp.vim b/runtime/ftplugin/mp.vim
index 370978216..316fa9bb6 100644
--- a/runtime/ftplugin/mp.vim
+++ b/runtime/ftplugin/mp.vim
@@ -1,13 +1,16 @@
" Vim filetype plugin file
" Language: MetaPost
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-07-04
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:% commentstring=%\ %s formatoptions-=t formatoptions+=croql
@@ -20,3 +23,6 @@ if exists(":FixBeginfigs") != 2
g/^beginfig(\d*);$/s//\='beginfig('.i.');'/ | let i = i + 1
endfunction
endif
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/mplayerconf.vim b/runtime/ftplugin/mplayerconf.vim
index e410667d2..65034a815 100644
--- a/runtime/ftplugin/mplayerconf.vim
+++ b/runtime/ftplugin/mplayerconf.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: mplayer(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=:# commentstring=#\ %s include=^\\s*include
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/muttrc.vim b/runtime/ftplugin/muttrc.vim
index 18b06d813..a109e5ddd 100644
--- a/runtime/ftplugin/muttrc.vim
+++ b/runtime/ftplugin/muttrc.vim
@@ -8,9 +8,15 @@ if exists("b:did_ftplugin")
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=:# commentstring=#\ %s
setlocal formatoptions-=t formatoptions+=croql
let &l:include = '^\s*source\>'
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/nanorc.vim b/runtime/ftplugin/nanorc.vim
index 67a2a48cc..be20d1250 100644
--- a/runtime/ftplugin/nanorc.vim
+++ b/runtime/ftplugin/nanorc.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: nanorc(5) - GNU nano configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/netrc.vim b/runtime/ftplugin/netrc.vim
index 0f9417a83..105a1d3a8 100644
--- a/runtime/ftplugin/netrc.vim
+++ b/runtime/ftplugin/netrc.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: netrc(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments= commentstring= formatoptions-=tcroq formatoptions+=l
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/nsis.vim b/runtime/ftplugin/nsis.vim
new file mode 100644
index 000000000..acc26208c
--- /dev/null
+++ b/runtime/ftplugin/nsis.vim
@@ -0,0 +1,22 @@
+" Vim ftplugin file
+" Language: NSIS script
+" Maintainer: Nikolai Weibull <now@bitwi.se>
+" Latest Revision: 2008-07-09
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+if exists("b:did_ftplugin")
+ finish
+endif
+let b:did_ftplugin = 1
+
+let b:undo_ftplugin = "setl com< cms< fo< def< inc<"
+
+setlocal comments=s1:/*,mb:*,ex:*/,b:#,:; commentstring=;\ %s
+setlocal formatoptions-=t formatoptions+=croql
+setlocal define=^\\s*!define\\%(\\%(utc\\)\\=date\\|math\\)\\=
+setlocal include=^\\s*!include\\%(/NONFATAL\\)\\=
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/ocaml.vim b/runtime/ftplugin/ocaml.vim
index 53431c9b0..7acf49328 100644
--- a/runtime/ftplugin/ocaml.vim
+++ b/runtime/ftplugin/ocaml.vim
@@ -5,7 +5,8 @@
" Stefano Zacchiroli <zack@bononia.it>
" Vincent Aravantinos <firstname.name@imag.fr>
" URL: http://www.ocaml.info/vim/ftplugin/ocaml.vim
-" Last Change: 2007 Sep 09 - Added .annot support for ocamlbuild, python not
+" Last Change: 2008 Jul 17 - Bugfix related to fnameescape (VA)
+" 2007 Sep 09 - Added .annot support for ocamlbuild, python not
" needed anymore (VA)
" 2006 May 01 - Added .annot support for file.whateverext (SZ)
" 2006 Apr 11 - Fixed an initialization bug; fixed ASS abbrev (MM)
@@ -16,6 +17,17 @@ if exists("b:did_ftplugin")
endif
let b:did_ftplugin=1
+" some macro
+if exists('*fnameescape')
+ function! s:Fnameescape(s)
+ return fnameescape(a:s)
+ endfun
+else
+ function! s:Fnameescape(s)
+ return escape(a:s," \t\n*?[{`$\\%#'\"|!<")
+ endfun
+endif
+
" Error handling -- helps moving where the compiler wants you to go
let s:cposet=&cpoptions
set cpo-=C
@@ -71,14 +83,14 @@ if !exists("g:did_ocaml_switch")
map <LocalLeader>S :call OCaml_switch(1)<CR>
fun OCaml_switch(newwin)
if (match(bufname(""), "\\.mli$") >= 0)
- let fname = substitute(bufname(""), "\\.mli$", ".ml", "")
+ let fname = s:Fnameescape(substitute(bufname(""), "\\.mli$", ".ml", ""))
if (a:newwin == 1)
exec "new " . fname
else
exec "arge " . fname
endif
elseif (match(bufname(""), "\\.ml$") >= 0)
- let fname = bufname("") . "i"
+ let fname = s:Fnameescape(bufname("")) . "i"
if (a:newwin == 1)
exec "new " . fname
else
@@ -260,6 +272,7 @@ endfunction
" For the moment, the only possible keyword is \"type\"."
" >>
+
" 1. Finding the annotation file even if we use ocamlbuild
" In: two strings representing paths
@@ -286,16 +299,16 @@ endfunction
function! s:Locate_annotation()
if !b:annotation_file_located
- silent exe 'cd' expand('%:p:h')
+ silent exe 'cd' s:Fnameescape(expand('%:p:h'))
- let annot_file_name = expand('%:r').'.annot'
+ let annot_file_name = s:Fnameescape(expand('%:r')).'.annot'
" 1st case : the annot file is in the same directory as the buffer (no ocamlbuild)
let b:annot_file_path = findfile(annot_file_name,'.')
if b:annot_file_path != ''
let b:annot_file_path = getcwd().'/'.b:annot_file_path
let b:_build_path = ''
- let b:source_file_relative_path = expand('%')
+ let b:source_file_relative_path = s:Fnameescape(expand('%'))
else
" 2nd case : the buffer and the _build directory are in the same directory
" ..
@@ -310,7 +323,7 @@ endfunction
if b:annot_file_path != ''
let b:annot_file_path = getcwd().'/'.b:annot_file_path
endif
- let b:source_file_relative_path = expand('%')
+ let b:source_file_relative_path = s:Fnameescape(expand('%'))
else
" 3rd case : the _build directory is in a directory higher in the file hierarchy
" (it can't be deeper by ocamlbuild requirements)
@@ -325,9 +338,9 @@ endfunction
let b:_build_path = finddir('_build',';')
if b:_build_path != ''
let project_path = substitute(b:_build_path,'/_build$','','')
- let path_relative_to_project = substitute(expand('%:p:h'),project_path.'/','','')
+ let path_relative_to_project = s:Fnameescape(substitute(expand('%:p:h'),project_path.'/','',''))
let b:annot_file_path = findfile(annot_file_name,project_path.'/_build/'.path_relative_to_project)
- let b:source_file_relative_path = substitute(expand('%:p'),project_path.'/','','')
+ let b:source_file_relative_path = s:Fnameescape(substitute(expand('%:p'),project_path.'/','',''))
else
let b:annot_file_path = findfile(annot_file_name,'**')
"4th case : what if the user decided to change the name of the _build directory ?
@@ -339,7 +352,7 @@ endfunction
let b:annot_file_path = getcwd().'/'.b:annot_file_path
let b:_build_path = getcwd().'/'.b:_build_path
endif
- let b:source_file_relative_path = expand('%')
+ let b:source_file_relative_path = s:Fnameescape(expand('%'))
else
" 4b. anarchy : the renamed _build directory may be higher in the hierarchy
" this will work if the file for which we are looking annotations has a unique name in the whole project
@@ -380,16 +393,16 @@ endfunction
set hidden
let s:current_buf = bufname('%')
if bufloaded(b:annot_file_path)
- silent exe 'keepj keepalt' 'buffer' b:annot_file_path
+ silent exe 'keepj keepalt' 'buffer' s:Fnameescape(b:annot_file_path)
else
- silent exe 'keepj keepalt' 'view' b:annot_file_path
+ silent exe 'keepj keepalt' 'view' s:Fnameescape(b:annot_file_path)
endif
endfun
" After call:
" The original buffer has been restored in the exact same state as before.
function! s:Exit_annotation_buffer()
- silent exe 'keepj keepalt' 'buffer' s:current_buf
+ silent exe 'keepj keepalt' 'buffer' s:Fnameescape(s:current_buf)
let &l:hidden = s:current_hidden
call setpos('.',s:current_pos)
endfun
diff --git a/runtime/ftplugin/pamconf.vim b/runtime/ftplugin/pamconf.vim
index cf9707aab..96d96461e 100644
--- a/runtime/ftplugin/pamconf.vim
+++ b/runtime/ftplugin/pamconf.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: pam(8) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/passwd.vim b/runtime/ftplugin/passwd.vim
index 20f2b7f58..5088c4335 100644
--- a/runtime/ftplugin/passwd.vim
+++ b/runtime/ftplugin/passwd.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: passwd(5) password file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments= commentstring= formatoptions-=tcroq formatoptions+=l
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/perl.vim b/runtime/ftplugin/perl.vim
index 3f3e570b8..377100564 100644
--- a/runtime/ftplugin/perl.vim
+++ b/runtime/ftplugin/perl.vim
@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: Perl
" Maintainer: Dan Sharp <dwsharp at hotmail dot com>
-" Last Change: 2007 Nov 30
+" Last Change: 17 Jul 2008
" URL: http://mywebpage.netscape.com/sharppeople/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
@@ -13,6 +13,7 @@ let s:save_cpo = &cpo
set cpo-=C
setlocal formatoptions+=crq
+setlocal keywordprg=perldoc\ -f
setlocal comments=:#
setlocal commentstring=#%s
@@ -63,7 +64,7 @@ let &l:path=perlpath
"---------------------------------------------
" Undo the stuff we changed.
-let b:undo_ftplugin = "setlocal fo< com< cms< inc< inex< def< isf<" .
+let b:undo_ftplugin = "setlocal fo< com< cms< inc< inex< def< isf< kp<" .
\ " | unlet! b:browsefilter"
" Restore the saved compatibility options.
diff --git a/runtime/ftplugin/pinfo.vim b/runtime/ftplugin/pinfo.vim
index 7f1ecdfb5..6ec1f87b9 100644
--- a/runtime/ftplugin/pinfo.vim
+++ b/runtime/ftplugin/pinfo.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: pinfo(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/procmail.vim b/runtime/ftplugin/procmail.vim
index a8db58eb9..cc2ceede1 100644
--- a/runtime/ftplugin/procmail.vim
+++ b/runtime/ftplugin/procmail.vim
@@ -1,15 +1,21 @@
" Vim filetype plugin file
" Language: procmail(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
let &l:include = '^\s*INCLUDERC\>'
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/prolog.vim b/runtime/ftplugin/prolog.vim
index cf191a90b..caeb574c5 100644
--- a/runtime/ftplugin/prolog.vim
+++ b/runtime/ftplugin/prolog.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: Prolog
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=s1:/*,mb:*,ex:*/,:% commentstring=%\ %s
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/protocols.vim b/runtime/ftplugin/protocols.vim
index b3679bd59..2486ff937 100644
--- a/runtime/ftplugin/protocols.vim
+++ b/runtime/ftplugin/protocols.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: protocols(5) - Internet protocols definition file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/quake.vim b/runtime/ftplugin/quake.vim
index 25c6e7e50..f62693b11 100644
--- a/runtime/ftplugin/quake.vim
+++ b/runtime/ftplugin/quake.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: Quake[1-3] configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:// commentstring=//\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/racc.vim b/runtime/ftplugin/racc.vim
index 72c1e14cd..7ff22f893 100644
--- a/runtime/ftplugin/racc.vim
+++ b/runtime/ftplugin/racc.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: Racc input file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=s1:/*,mb:*,ex:*/,:# commentstring=#\ %s
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/readline.vim b/runtime/ftplugin/readline.vim
index 9656c5757..0a4dbb5c0 100644
--- a/runtime/ftplugin/readline.vim
+++ b/runtime/ftplugin/readline.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: readline(3) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/rnc.vim b/runtime/ftplugin/rnc.vim
index a5d21fb26..2b8fd50d8 100644
--- a/runtime/ftplugin/rnc.vim
+++ b/runtime/ftplugin/rnc.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: Relax NG compact syntax
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/rst.vim b/runtime/ftplugin/rst.vim
index 8fc25e9e2..b871cf148 100644
--- a/runtime/ftplugin/rst.vim
+++ b/runtime/ftplugin/rst.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: reStructuredText documentation format
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< et< fo<"
setlocal comments=fb:.. commentstring=..\ %s expandtab
setlocal formatoptions+=tcroql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/screen.vim b/runtime/ftplugin/screen.vim
index 92ce475b8..95c384955 100644
--- a/runtime/ftplugin/screen.vim
+++ b/runtime/ftplugin/screen.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: screen(1) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/sensors.vim b/runtime/ftplugin/sensors.vim
index e1f66fc07..813d14c0e 100644
--- a/runtime/ftplugin/sensors.vim
+++ b/runtime/ftplugin/sensors.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: sensors.conf(5) - libsensors configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/services.vim b/runtime/ftplugin/services.vim
index d670cd90a..d34349ee2 100644
--- a/runtime/ftplugin/services.vim
+++ b/runtime/ftplugin/services.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: services(5) - Internet network services list
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/setserial.vim b/runtime/ftplugin/setserial.vim
index 4b4796bc0..f9d594578 100644
--- a/runtime/ftplugin/setserial.vim
+++ b/runtime/ftplugin/setserial.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: setserial(8) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/sieve.vim b/runtime/ftplugin/sieve.vim
index d906e1987..9a8759c02 100644
--- a/runtime/ftplugin/sieve.vim
+++ b/runtime/ftplugin/sieve.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: Sieve filtering language input file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=s1:/*,mb:*,ex:*/,:# commentstring=#\ %s
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/slpconf.vim b/runtime/ftplugin/slpconf.vim
index 8c92a55b2..0c4568967 100644
--- a/runtime/ftplugin/slpconf.vim
+++ b/runtime/ftplugin/slpconf.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: RFC 2614 - An API for Service Location configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:#,:; commentstring=#\ %s
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/slpreg.vim b/runtime/ftplugin/slpreg.vim
index 07e42c1f2..e9d533e2d 100644
--- a/runtime/ftplugin/slpreg.vim
+++ b/runtime/ftplugin/slpreg.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: RFC 2614 - An API for Service Location registration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:#,:; commentstring=#\ %s
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/slpspi.vim b/runtime/ftplugin/slpspi.vim
index d6a675174..8d64d476f 100644
--- a/runtime/ftplugin/slpspi.vim
+++ b/runtime/ftplugin/slpspi.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: RFC 2614 - An API for Service Location SPI file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:#,:; commentstring=#\ %s
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/sshconfig.vim b/runtime/ftplugin/sshconfig.vim
index 3552696a6..f940af972 100644
--- a/runtime/ftplugin/sshconfig.vim
+++ b/runtime/ftplugin/sshconfig.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: OpenSSH client configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/sudoers.vim b/runtime/ftplugin/sudoers.vim
index a698f04d6..575630217 100644
--- a/runtime/ftplugin/sudoers.vim
+++ b/runtime/ftplugin/sudoers.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: sudoers(5) configuration files
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/sysctl.vim b/runtime/ftplugin/sysctl.vim
index 6b1ac6c04..fb1098dd3 100644
--- a/runtime/ftplugin/sysctl.vim
+++ b/runtime/ftplugin/sysctl.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: sysctl.conf(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:;,:# commentstring=#\ %s
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/terminfo.vim b/runtime/ftplugin/terminfo.vim
index a473bcd06..7ce31d1ca 100644
--- a/runtime/ftplugin/terminfo.vim
+++ b/runtime/ftplugin/terminfo.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: terminfo(5) definition
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/udevconf.vim b/runtime/ftplugin/udevconf.vim
index c0a09827b..6042e1441 100644
--- a/runtime/ftplugin/udevconf.vim
+++ b/runtime/ftplugin/udevconf.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: udev(8) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/udevperm.vim b/runtime/ftplugin/udevperm.vim
index 82602b1ea..e7ad31d07 100644
--- a/runtime/ftplugin/udevperm.vim
+++ b/runtime/ftplugin/udevperm.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: udev(8) permissions file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/udevrules.vim b/runtime/ftplugin/udevrules.vim
index 3cb4c3346..be8d64696 100644
--- a/runtime/ftplugin/udevrules.vim
+++ b/runtime/ftplugin/udevrules.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: udev(8) rules file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/updatedb.vim b/runtime/ftplugin/updatedb.vim
index db35fee15..f4e7bcebd 100644
--- a/runtime/ftplugin/updatedb.vim
+++ b/runtime/ftplugin/updatedb.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: updatedb.conf(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/xdefaults.vim b/runtime/ftplugin/xdefaults.vim
index b441dfe7f..cd851829c 100644
--- a/runtime/ftplugin/xdefaults.vim
+++ b/runtime/ftplugin/xdefaults.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: X resources files like ~/.Xdefaults (xrdb)
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=s1:/*,mb:*,ex:*/,:! commentstring& inc&
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/xf86conf.vim b/runtime/ftplugin/xf86conf.vim
index 29e9eac66..ab7569a10 100644
--- a/runtime/ftplugin/xf86conf.vim
+++ b/runtime/ftplugin/xf86conf.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: XFree86 Configuration File
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/xinetd.vim b/runtime/ftplugin/xinetd.vim
index b62dec57b..f209af18b 100644
--- a/runtime/ftplugin/xinetd.vim
+++ b/runtime/ftplugin/xinetd.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: xinetd.conf(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< inc< fo<"
setlocal comments=:# commentstring=#\ %s include=^\\s*include
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/xml.vim b/runtime/ftplugin/xml.vim
index 8cff53776..55d9ee6c5 100644
--- a/runtime/ftplugin/xml.vim
+++ b/runtime/ftplugin/xml.vim
@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: xml
" Maintainer: Dan Sharp <dwsharp at hotmail dot com>
-" Last Changed: 2003 Sep 29
+" Last Changed: 30 Jun 2008
" URL: http://mywebpage.netscape.com/sharppeople/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
@@ -13,6 +13,13 @@ let s:save_cpo = &cpo
set cpo-=C
setlocal commentstring=<!--%s-->
+setlocal comments=s:<!--,m:\ \ \ \ \ ,e:-->
+
+setlocal formatoptions-=t
+if !exists("g:ft_xml_autocomment") || (g:ft_xml_autocomment == 1)
+ setlocal formatoptions+=croql
+endif
+
" XML: thanks to Johannes Zellner and Akbar Ibrahim
" - case sensitive
@@ -49,7 +56,7 @@ if has("gui_win32")
endif
" Undo the stuff we changed.
-let b:undo_ftplugin = "setlocal cms<" .
+let b:undo_ftplugin = "setlocal commentstring< comments< formatoptions<" .
\ " | unlet! b:match_ignorecase b:match_words b:browsefilter"
" Restore the saved compatibility options.
diff --git a/runtime/ftplugin/xmodmap.vim b/runtime/ftplugin/xmodmap.vim
index a0d913ea4..027ae09ff 100644
--- a/runtime/ftplugin/xmodmap.vim
+++ b/runtime/ftplugin/xmodmap.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: xmodmap(1) definition file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:! commentstring=!\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/yaml.vim b/runtime/ftplugin/yaml.vim
index a2893cdad..b88803ab3 100644
--- a/runtime/ftplugin/yaml.vim
+++ b/runtime/ftplugin/yaml.vim
@@ -1,14 +1,20 @@
" Vim filetype plugin file
" Language: YAML (YAML Ain't Markup Language)
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< et< fo<"
setlocal comments=:# commentstring=#\ %s expandtab
setlocal formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/ftplugin/zsh.vim b/runtime/ftplugin/zsh.vim
index c8f82a561..c6db78171 100644
--- a/runtime/ftplugin/zsh.vim
+++ b/runtime/ftplugin/zsh.vim
@@ -1,13 +1,19 @@
" Vim filetype plugin file
" Language: Zsh shell script
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2008-07-09
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
+let s:cpo_save = &cpo
+set cpo&vim
+
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/indent/dtd.vim b/runtime/indent/dtd.vim
new file mode 100644
index 000000000..3c35116aa
--- /dev/null
+++ b/runtime/indent/dtd.vim
@@ -0,0 +1,325 @@
+" Vim indent file
+" Language: DTD (Document Type Definition for XML)
+" Maintainer: Nikolai Weibull <now@bitwi.se>
+" Latest Revision: 2008-07-18
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+setlocal indentexpr=GetDTDIndent()
+setlocal indentkeys=!^F,o,O,>
+setlocal nosmartindent
+
+if exists("*GetDTDIndent")
+ finish
+endif
+
+" TODO: Needs to be adjusted to stop at [, <, and ].
+let s:token_pattern = '^[^[:space:]]\+'
+
+function s:lex1(input, start, ...)
+ let pattern = a:0 > 0 ? a:1 : s:token_pattern
+ let start = matchend(a:input, '^\_s*', a:start)
+ if start == -1
+ return ["", a:start]
+ endif
+ let end = matchend(a:input, pattern, start)
+ if end == -1
+ return ["", a:start]
+ endif
+ let token = strpart(a:input, start, end - start)
+ return [token, end]
+endfunction
+
+function s:lex(input, start, ...)
+ let pattern = a:0 > 0 ? a:1 : s:token_pattern
+ let info = s:lex1(a:input, a:start, pattern)
+ while info[0] == '--'
+ let info = s:lex1(a:input, info[1], pattern)
+ while info[0] != "" && info[0] != '--'
+ let info = s:lex1(a:input, info[1], pattern)
+ endwhile
+ if info[0] == ""
+ return info
+ endif
+ let info = s:lex1(a:input, info[1], pattern)
+ endwhile
+ return info
+endfunction
+
+function s:indent_to_innermost_parentheses(line, end)
+ let token = '('
+ let end = a:end
+ let parentheses = [end - 1]
+ while token != ""
+ let [token, end] = s:lex(a:line, end, '^\%([(),|]\|[A-Za-z0-9_-]\+\)[?*+]\=')
+ if token[0] == '('
+ call add(parentheses, end - 1)
+ elseif token[0] == ')'
+ if len(parentheses) == 1
+ return [-1, end]
+ endif
+ call remove(parentheses, -1)
+ endif
+ endwhile
+ return [parentheses[-1] - strridx(a:line, "\n", parentheses[-1]), end]
+endfunction
+
+" TODO: Line and end could be script global (think OO members).
+function GetDTDIndent()
+ if v:lnum == 1
+ return 0
+ endif
+
+ " Begin by searching back for a <! that isn’t inside a comment.
+ " From here, depending on what follows immediately after, parse to
+ " where we’re at to determine what to do.
+ if search('<!', 'bceW') == 0
+ return indent(v:lnum - 1)
+ endif
+ let lnum = line('.')
+ let col = col('.')
+ let indent = indent('.')
+ let line = join(getline(lnum, v:lnum - 1), "\n")
+
+ let [declaration, end] = s:lex1(line, col)
+ if declaration == ""
+ return indent + &sw
+ elseif declaration == '--'
+ " We’re looking at a comment. Now, simply determine if the comment is
+ " terminated or not. If it isn’t, let Vim take care of that using
+ " 'comments' and 'autoindent'. Otherwise, indent to the first lines level.
+ while declaration != ""
+ let [declaration, end] = s:lex(line, end)
+ if declaration == "-->"
+ return indent
+ endif
+ endwhile
+ return -1
+ elseif declaration == 'ELEMENT'
+ " Check for element name. If none exists, indent one level.
+ let [name, end] = s:lex(line, end)
+ if name == ""
+ return indent + &sw
+ endif
+
+ " Check for token following element name. This can be a specification of
+ " whether the start or end tag may be omitted. If nothing is found, indent
+ " one level.
+ let [token, end] = s:lex(line, end)
+ let n = 0
+ while token =~ '[-O]' && n < 2
+ let [token, end] = s:lex(line, end, '^\%([-O(]\|ANY\|EMPTY\)')
+ let n += 1
+ endwhile
+ if token == ""
+ return indent + &sw
+ endif
+
+ " Next comes the content model. If the token we’ve found isn’t a
+ " parenthesis it must be either ANY, EMPTY or some random junk. Either
+ " way, we’re done indenting this element, so set it to that of the first
+ " line so that the terminating “>†winds up having the same indention.
+ if token != '('
+ return indent
+ endif
+
+ " Now go through the content model. We need to keep track of the nesting
+ " of parentheses. As soon as we hit 0 we’re done. If that happens we must
+ " have a complete content model. Thus set indention to be the same as that
+ " of the first line so that the terminating “>†winds up having the same
+ " indention. Otherwise, we’ll indent to the innermost parentheses not yet
+ " matched.
+ let [indent_of_innermost, end] = s:indent_to_innermost_parentheses(line, end)
+ if indent_of_innermost != -1
+ return indent_of_innermost
+ endif
+
+ " Finally, look for any additions and/or exceptions to the content model.
+ " This is defined by a “+†or “-†followed by another content model
+ " declaration.
+ " TODO: Can the “-†be separated by whitespace from the “(�
+ let seen = { '+(': 0, '-(': 0 }
+ while 1
+ let [additions_exceptions, end] = s:lex(line, end, '^[+-](')
+ if additions_exceptions != '+(' && additions_exceptions != '-('
+ let [token, end] = s:lex(line, end)
+ if token == '>'
+ return indent
+ endif
+ " TODO: Should use s:lex here on getline(v:lnum) and check for >.
+ return getline(v:lnum) =~ '^\s*>' || count(values(seen), 0) == 0 ? indent : (indent + &sw)
+ endif
+
+ " If we’ve seen an addition or exception already and this is of the same
+ " kind, the user is writing a broken DTD. Time to bail.
+ if seen[additions_exceptions]
+ return indent
+ endif
+ let seen[additions_exceptions] = 1
+
+ let [indent_of_innermost, end] = s:indent_to_innermost_parentheses(line, end)
+ if indent_of_innermost != -1
+ return indent_of_innermost
+ endif
+ endwhile
+ elseif declaration == 'ATTLIST'
+ " Check for element name. If none exists, indent one level.
+ let [name, end] = s:lex(line, end)
+ if name == ""
+ return indent + &sw
+ endif
+
+ " Check for any number of attributes.
+ while 1
+ " Check for attribute name. If none exists, indent one level, unless the
+ " current line is a lone “>â€, in which case we indent to the same level
+ " as the first line. Otherwise, if the attribute name is “>â€, we have
+ " actually hit the end of the attribute list, in which case we indent to
+ " the same level as the first line.
+ let [name, end] = s:lex(line, end)
+ if name == ""
+ " TODO: Should use s:lex here on getline(v:lnum) and check for >.
+ return getline(v:lnum) =~ '^\s*>' ? indent : (indent + &sw)
+ elseif name == ">"
+ return indent
+ endif
+
+ " Check for attribute value declaration. If none exists, indent two
+ " levels. Otherwise, if it’s an enumerated value, check for nested
+ " parentheses and indent to the innermost one if we don’t reach the end
+ " of the listc. Otherwise, just continue with looking for the default
+ " attribute value.
+ " TODO: Do validation of keywords
+ " (CDATA|NMTOKEN|NMTOKENS|ID|IDREF|IDREFS|ENTITY|ENTITIES)?
+ let [value, end] = s:lex(line, end, '^\%((\|[^[:space:]]\+\)')
+ if value == ""
+ return indent + &sw * 2
+ elseif value == 'NOTATION'
+ " If this is a enumerated value based on notations, read another token
+ " for the actual value. If it doesn’t exist, indent three levels.
+ " TODO: If validating according to above, value must be equal to '('.
+ let [value, end] = s:lex(line, end, '^\%((\|[^[:space:]]\+\)')
+ if value == ""
+ return indent + &sw * 3
+ endif
+ endif
+
+ if value == '('
+ let [indent_of_innermost, end] = s:indent_to_innermost_parentheses(line, end)
+ if indent_of_innermost != -1
+ return indent_of_innermost
+ endif
+ endif
+
+ " Finally look for the attribute’s default value. If non exists, indent
+ " two levels.
+ " TODO: Do validation of keywords (#REQUIRED|#IMPLIED)?
+ let [default, end] = s:lex(line, end, '^\%("\_[^"]*"\|[^[:space:]]\+\)')
+ if default == ""
+ return indent + &sw * 2
+ elseif default == '#FIXED'
+ " We need to look for the fixed value. If non exists, indent three
+ " levels.
+ let [default, end] = s:lex(line, end, '^"\_[^"]*"')
+ if default == ""
+ return indent + &sw * 3
+ endif
+ endif
+ endwhile
+ elseif declaration == 'ENTITY'
+ " Check for entity name. If none exists, indent one level. Otherwise, if
+ " the name actually turns out to be a percent sign, “%â€, this is a
+ " parameter entity. Read another token to determine the entity name and,
+ " again, if none exists, indent one level.
+ let [name, end] = s:lex(line, end)
+ if name == ""
+ return indent + &sw
+ elseif name == '%'
+ let [name, end] = s:lex(line, end)
+ if name == ""
+ return indent + &sw
+ endif
+ endif
+
+ " Now check for the entity value. If none exists, indent one level. If it
+ " does exist, indent to same level as first line, as we’re now done with
+ " this entity.
+ "
+ " The entity value can be a string in single or double quotes (no escapes
+ " to worry about, as entities are used instead). However, it can also be
+ " that this is an external unparsed entity. In that case we have to look
+ " further for (possibly) a public ID and an URI followed by the NDATA
+ " keyword and the actual notation name. For the public ID and URI, indent
+ " two levels, if they don’t exist. If the NDATA keyword doesn’t exist,
+ " indent one level. Otherwise, if the actual notation name doesn’t exist,
+ " indent two level. If it does, indent to same level as first line, as
+ " we’re now done with this entity.
+ let [value, end] = s:lex(line, end)
+ if value == ""
+ return indent + &sw
+ elseif value == 'SYSTEM' || value == 'PUBLIC'
+ let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\)')
+ if quoted_string == ""
+ return indent + &sw * 2
+ endif
+
+ if value == 'PUBLIC'
+ let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\)')
+ if quoted_string == ""
+ return indent + &sw * 2
+ endif
+ endif
+
+ let [ndata, end] = s:lex(line, end)
+ if ndata == ""
+ return indent + &sw
+ endif
+
+ let [name, end] = s:lex(line, end)
+ return name == "" ? (indent + &sw * 2) : indent
+ else
+ return indent
+ endif
+ elseif declaration == 'NOTATION'
+ " Check for notation name. If none exists, indent one level.
+ let [name, end] = s:lex(line, end)
+ if name == ""
+ return indent + &sw
+ endif
+
+ " Now check for the external ID. If none exists, indent one level.
+ let [id, end] = s:lex(line, end)
+ if id == ""
+ return indent + &sw
+ elseif id == 'SYSTEM' || id == 'PUBLIC'
+ let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\)')
+ if quoted_string == ""
+ return indent + &sw * 2
+ endif
+
+ if id == 'PUBLIC'
+ let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\|>\)')
+ if quoted_string == ""
+ " TODO: Should use s:lex here on getline(v:lnum) and check for >.
+ return getline(v:lnum) =~ '^\s*>' ? indent : (indent + &sw * 2)
+ elseif quoted_string == '>'
+ return indent
+ endif
+ endif
+ endif
+
+ return indent
+ endif
+
+ " TODO: Processing directives could be indented I suppose. But perhaps it’s
+ " just as well to let the user decide how to indent them (perhaps extending
+ " this function to include proper support for whatever processing directive
+ " language they want to use).
+
+ " Conditional sections are simply passed along to let Vim decide what to do
+ " (and hence the user).
+ return -1
+endfunction
+
+let &cpo = s:cpo_save
diff --git a/runtime/indent/framescript.vim b/runtime/indent/framescript.vim
new file mode 100644
index 000000000..49ff92a81
--- /dev/null
+++ b/runtime/indent/framescript.vim
@@ -0,0 +1,41 @@
+" Vim indent file
+" Language: FrameScript
+" Maintainer: Nikolai Weibull <now@bitwi.se>
+" Latest Revision: 2008-07-19
+
+if exists("b:did_indent")
+ finish
+endif
+let b:did_indent = 1
+
+setlocal indentexpr=GetFrameScriptIndent()
+setlocal indentkeys=!^F,o,O,0=~Else,0=~EndIf,0=~EndLoop,0=~EndSub
+setlocal nosmartindent
+
+if exists("*GetFrameScriptIndent")
+ finish
+endif
+
+function GetFrameScriptIndent()
+ let lnum = prevnonblank(v:lnum - 1)
+
+ if lnum == 0
+ return 0
+ endif
+
+ if getline(v:lnum) =~ '^\s*\*'
+ return cindent(v:lnum)
+ endif
+
+ let ind = indent(lnum)
+
+ if getline(lnum) =~? '^\s*\%(If\|Loop\|Sub\)'
+ let ind = ind + &sw
+ endif
+
+ if getline(v:lnum) =~? '^\s*\%(Else\|End\%(If\|Loop\|Sub\)\)'
+ let ind = ind - &sw
+ endif
+
+ return ind
+endfunction
diff --git a/runtime/plugin/netrwPlugin.vim b/runtime/plugin/netrwPlugin.vim
index f84aadcf1..36f576cd7 100644
--- a/runtime/plugin/netrwPlugin.vim
+++ b/runtime/plugin/netrwPlugin.vim
@@ -1,9 +1,9 @@
" netrwPlugin.vim: Handles file transfer and remote directory listing across a network
" PLUGIN SECTION
-" Date: Apr 07, 2008
+" Date: Aug 01, 2008
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
-" Copyright: Copyright (C) 1999-2005 Charles E. Campbell, Jr. {{{1
+" Copyright: Copyright (C) 1999-2008 Charles E. Campbell, Jr. {{{1
" Permission is hereby granted to use and distribute this code,
" with or without modifications, provided that this copyright
" notice is copied with it. Like anything else that's free,
@@ -22,7 +22,7 @@
if &cp || exists("g:loaded_netrwPlugin")
finish
endif
-let g:loaded_netrwPlugin = "v127"
+let g:loaded_netrwPlugin = "v131"
let s:keepcpo = &cpo
if v:version < 700
echohl WarningMsg | echo "***netrw*** you need vim version 7.0 for this version of netrw" | echohl None
@@ -47,19 +47,19 @@ augroup END
augroup Network
au!
if has("win32") || has("win95") || has("win64") || has("win16")
- au BufReadCmd file://* exe "silent doau BufReadPre ".netrw#RFC2396(expand("<amatch>"))|exe 'e '.substitute(netrw#RFC2396(expand("<amatch>")),'file://\(.*\)','\1',"")|exe "bwipe ".expand("<amatch>")|exe "silent doau BufReadPost ".netrw#RFC2396(expand("<amatch>"))
+ au BufReadCmd file://* exe "silent doau BufReadPre ".fnameescape(netrw#RFC2396(expand("<amatch>")))|exe 'e '.fnameescape(substitute(netrw#RFC2396(expand("<amatch>")),'file://\(.*\)','\1',""))|exe "bwipe ".fnameescape(expand("<amatch>"))|exe "silent doau BufReadPost ".fnameescape(netrw#RFC2396(expand("<amatch>")))
else
- au BufReadCmd file://* exe "silent doau BufReadPre ".netrw#RFC2396(expand("<amatch>"))|exe 'e '.substitute(netrw#RFC2396(expand("<amatch>")),'file://\(.*\)','\1',"")|exe "bwipe ".expand("<amatch>")|exe "silent doau BufReadPost ".netrw#RFC2396(expand("<amatch>"))
- au BufReadCmd file://localhost/* exe "silent doau BufReadPre ".netrw#RFC2396(expand("<amatch>"))|exe 'e '.substitute(netrw#RFC2396(expand("<amatch>")),'file://localhost/\(.*\)','\1',"")|exe "bwipe ".substitute(expand("<amatch>"),'file://\(\k\+@\)\=','','')|exe "silent doau BufReadPost ".netrw#RFC2396(expand("<amatch>"))
+ au BufReadCmd file://* exe "silent doau BufReadPre ".fnameescape(netrw#RFC2396(expand("<amatch>")))|exe 'e '.fnameescape(substitute(netrw#RFC2396(expand("<amatch>")),'file://\(.*\)','\1',""))|exe "bwipe ".fnameescape(expand("<amatch>"))|exe "silent doau BufReadPost ".fnameescape(netrw#RFC2396(expand("<amatch>")))
+ au BufReadCmd file://localhost/* exe "silent doau BufReadPre ".fnameescape(netrw#RFC2396(expand("<amatch>")))|exe 'e '.fnameescape(substitute(netrw#RFC2396(expand("<amatch>")),'file://localhost/\(.*\)','\1',""))|exe "bwipe ".fnameescape(substitute(expand("<amatch>"),'file://\(\k\+@\)\=','',''))|exe "silent doau BufReadPost ".fnameescape(netrw#RFC2396(expand("<amatch>")))
endif
- au BufReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufReadPre ".expand("<amatch>")|exe '2Nread "'.expand("<amatch>").'"'|exe "silent doau BufReadPost ".expand("<amatch>")
- au FileReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileReadPre ".expand("<amatch>")|exe 'Nread "' .expand("<amatch>").'"'|exe "silent doau FileReadPost ".expand("<amatch>")
- au BufWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufWritePre ".expand("<amatch>")|exe 'Nwrite "' .expand("<amatch>").'"'|exe "silent doau BufWritePost ".expand("<amatch>")
- au FileWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileWritePre ".expand("<amatch>")|exe "'[,']".'Nwrite "' .expand("<amatch>").'"'|exe "silent doau FileWritePost ".expand("<amatch>")
+ au BufReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufReadPre ".fnameescape(expand("<amatch>"))|exe '2Nread '.fnameescape(expand("<amatch>"))|exe "silent doau BufReadPost ".fnameescape(expand("<amatch>"))
+ au FileReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileReadPre ".fnameescape(expand("<amatch>"))|exe 'Nread '.fnameescape(expand("<amatch>"))|exe "silent doau FileReadPost ".fnameescape(expand("<amatch>"))
+ au BufWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufWritePre ".fnameescape(expand("<amatch>"))|exe 'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau BufWritePost ".fnameescape(expand("<amatch>"))
+ au FileWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileWritePre ".fnameescape(expand("<amatch>"))|exe "'[,']".'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau FileWritePost ".fnameescape(expand("<amatch>"))
try
- au SourceCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource "'.expand("<amatch>").'"'
+ au SourceCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource '.fnameescape(expand("<amatch>"))
catch /^Vim\%((\a\+)\)\=:E216/
- au SourcePre ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource "'.expand("<amatch>").'"'
+ au SourcePre ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe 'Nsource '.fnameescape(expand("<amatch>"))
endtry
augroup END
diff --git a/runtime/plugin/tarPlugin.vim b/runtime/plugin/tarPlugin.vim
index 412ceed7b..9a28a1033 100644
--- a/runtime/plugin/tarPlugin.vim
+++ b/runtime/plugin/tarPlugin.vim
@@ -14,7 +14,7 @@
if &cp || exists("g:loaded_tarPlugin")
finish
endif
-let g:loaded_tarPlugin = "v19"
+let g:loaded_tarPlugin = "v20"
let s:keepcpo = &cpo
set cpo&vim
diff --git a/runtime/plugin/vimballPlugin.vim b/runtime/plugin/vimballPlugin.vim
index 502c8216f..630bb9fba 100644
--- a/runtime/plugin/vimballPlugin.vim
+++ b/runtime/plugin/vimballPlugin.vim
@@ -16,7 +16,7 @@
if &cp || exists("g:loaded_vimballPlugin")
finish
endif
-let g:loaded_vimballPlugin = "v27"
+let g:loaded_vimballPlugin = "v29"
let s:keepcpo = &cpo
set cpo&vim
diff --git a/runtime/plugin/zipPlugin.vim b/runtime/plugin/zipPlugin.vim
index e198c66e2..b80ecc610 100644
--- a/runtime/plugin/zipPlugin.vim
+++ b/runtime/plugin/zipPlugin.vim
@@ -20,16 +20,7 @@
if &cp || exists("g:loaded_zipPlugin")
finish
endif
-
-" Don't use the plugin if fnameescape() is not available
-if !exists("*fnameescape")
- if &verbose > 1
- echoerr "zipPlugin not loaded because fnameescape() is not available"
- endif
- finish
-endif
-
-let g:loaded_zipPlugin = "v21+b"
+let g:loaded_zipPlugin = "v22"
let s:keepcpo = &cpo
set cpo&vim
diff --git a/runtime/scripts.vim b/runtime/scripts.vim
index 201c37569..a58692042 100644
--- a/runtime/scripts.vim
+++ b/runtime/scripts.vim
@@ -1,7 +1,7 @@
" Vim support file to detect file types in scripts
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last change: 2008 Jun 30
+" Last change: 2008 Jul 17
" This file is called by an autocommand for every file that has just been
" loaded into a buffer. It checks if the type of file can be recognized by
@@ -276,6 +276,7 @@ else
" Strace
elseif s:line1 =~ '^[0-9]* *execve('
+ elseif s:line1 =~ '^\(\[pid \d\+\] \)\=[0-9:.]* *execve(' || s:line1 =~ '^__libc_start_main'
set ft=strace
" VSE JCL
diff --git a/runtime/spell/pt/main.aap b/runtime/spell/pt/main.aap
index 17ba24d33..b2ad65bf6 100644
--- a/runtime/spell/pt/main.aap
+++ b/runtime/spell/pt/main.aap
@@ -1,5 +1,5 @@
# Aap recipe for Portuguese Vim spell files.
-#
+# See ftp://ftp.vim.org/pub/vim/runtime/spell/README.txt
# Use a freshly compiled Vim if it exists.
@if os.path.exists('../../../src/vim'):
diff --git a/runtime/spell/pt/pt_BR.diff b/runtime/spell/pt/pt_BR.diff
index 0bd44e2c2..f4814af11 100644
--- a/runtime/spell/pt/pt_BR.diff
+++ b/runtime/spell/pt/pt_BR.diff
@@ -14,7 +14,7 @@
--- 13,32 ----
+ NAME Brazilian Portuguese
-+ VERSION 20080221V
++ VERSION 2008-07-07V
+ HOME http://www.broffice.org/verortografico
+ AUTHOR Raimundo Santos Moura
+ EMAIL raimundomoura AT openoffice DOT org
diff --git a/runtime/spell/pt/pt_PT.diff b/runtime/spell/pt/pt_PT.diff
index 4b048eb60..36a12aced 100644
--- a/runtime/spell/pt/pt_PT.diff
+++ b/runtime/spell/pt/pt_PT.diff
@@ -10,7 +10,7 @@
SET ISO8859-1
+ NAME European Portuguese
-+ VERSION 2008-03-20
++ VERSION 2008-07-05
+ HOME http://natura.di.uminho.pt/
+ AUTHOR Rui Vilela
+ EMAIL ruivilela AT di DOT uminho DOT pt
diff --git a/runtime/syntax/2html.vim b/runtime/syntax/2html.vim
index bd4016615..ee66bf644 100644
--- a/runtime/syntax/2html.vim
+++ b/runtime/syntax/2html.vim
@@ -1,6 +1,6 @@
" Vim syntax support file
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2007 Aug 31
+" Last Change: 2008 Jul 17
" (modified by David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>)
" (XHTML support by Panagiotis Issaris <takis@lumumba.luc.ac.be>)
" (made w3 compliant by Edd Barrett <vext01@gmail.com>)
@@ -238,7 +238,7 @@ let s:LeadingSpace = ' '
let s:HtmlEndline = ''
if exists("html_no_pre")
let s:HtmlEndline = '<br' . s:tag_close
- let s:LeadingSpace = '&nbsp;'
+ let s:LeadingSpace = '&nbsp;'
let s:HtmlSpace = '\' . s:LeadingSpace
endif
diff --git a/runtime/syntax/autohotkey.vim b/runtime/syntax/autohotkey.vim
index bbefd6f7b..42d4cfdfe 100644
--- a/runtime/syntax/autohotkey.vim
+++ b/runtime/syntax/autohotkey.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: AutoHotkey script file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2007-06-01
+" Latest Revision: 2008-06-22
if exists("b:current_syntax")
finish
@@ -246,6 +246,15 @@ syn keyword autohotkeyBoolean
\ true
\ false
+" TODO: Shouldn't we look for g:, b:, variables before defaulting to
+" something?
+if exists("g:autohotkey_syntax_sync_minlines")
+ let b:autohotkey_syntax_sync_minlines = g:autohotkey_syntax_sync_minlines
+else
+ let b:autohotkey_syntax_sync_minlines = 50
+endif
+exec "syn sync ccomment autohotkeyComment minlines=" . b:autohotkey_syntax_sync_minlines
+
hi def link autohotkeyTodo Todo
hi def link autohotkeyComment Comment
hi def link autohotkeyCommentStart autohotkeyComment
diff --git a/runtime/syntax/bzr.vim b/runtime/syntax/bzr.vim
index afbae1a7d..2968f79b1 100644
--- a/runtime/syntax/bzr.vim
+++ b/runtime/syntax/bzr.vim
@@ -4,7 +4,7 @@
" URL: http://www.hlabs.spb.ru/vim/bzr.vim
" Revision: $Id$
" Filenames: bzr_log.*
-" Version: 1.0
+" Version: 1.1
" For version 5.x: Clear all syntax items.
" For version 6.x: Quit when a syntax file was already loaded.
@@ -14,7 +14,7 @@ elseif exists("b:current_syntax")
finish
endif
-syn region bzrRegion start="^-\{14} This line and the following will be ignored -\{14}$" end="\%$" contains=ALL
+syn region bzrRegion start="^-\{14} This line and the following will be ignored -\{14}$" end="\%$" contains=ALL contains=@NoSpell
syn match bzrRemoved "^removed:$" contained
syn match bzrAdded "^added:$" contained
syn match bzrRenamed "^renamed:$" contained
diff --git a/runtime/syntax/doxygen.vim b/runtime/syntax/doxygen.vim
index 4916b4d36..fb4d3cca4 100644
--- a/runtime/syntax/doxygen.vim
+++ b/runtime/syntax/doxygen.vim
@@ -1,11 +1,11 @@
" DoxyGen syntax hilighting extension for c/c++/idl/java
-" Language: doxygen on top of c, cpp, idl, java
+" Language: doxygen on top of c, cpp, idl, java, php
" Maintainer: Michael Geddes <vimmer@frog.wheelycreek.net>
" Author: Michael Geddes
-" Last Change: April 2007
-" Version: 1.20
+" Last Change: July 2008
+" Version: 1.22
"
-" Copyright 2004-2006 Michael Geddes
+" Copyright 2004-2008 Michael Geddes
" Please feel free to use, modify & distribute all or part of this script,
" providing this copyright message remains.
" I would appreciate being acknowledged in any derived scripts, and would
@@ -30,12 +30,14 @@
" also be set to any highlight attribute. Alternatively, a highlight for doxygenCodeWord
" can be used to override it.
"
-" By default, highlighting is done assumng you have the JAVADOC_AUTOBRIEF
+" By default, highlighting is done assuming you have the JAVADOC_AUTOBRIEF
" setting turned on in your Doxygen configuration. If you don't, you
" can set the variable g:doxygen_javadoc_autobrief to 0 to have the
" highlighting more accurately reflect the way Doxygen will interpret your
" comments.
"
+" Support for cpp, c, idl, doxygen and php.
+"
" Special thanks to: Wu Yongwei, Toby Allsopp
"
@@ -56,10 +58,10 @@ try
"
" C/C++ Style line comments
- syn region doxygenComment start=+/\*\(\*/\)\@![*!]+ end=+\*/+ contains=doxygenSyncStart,doxygenStart,doxygenTODO keepend fold
- syn region doxygenCommentL start=+//[/!]<\@!+me=e-1 end=+$+ contains=doxygenStartL keepend skipwhite skipnl nextgroup=doxygenComment2 fold
- syn region doxygenCommentL start=+//[/!]<+me=e-2 end=+$+ contains=doxygenStartL keepend skipwhite skipnl fold
- syn region doxygenCommentL start=+//@\ze[{}]+ end=+$+ contains=doxygenGroupDefine,doxygenGroupDefineSpecial fold
+ syn region doxygenComment start=+/\*\(\*/\)\@![*!]+ end=+\*/+ contains=doxygenSyncStart,doxygenStart,doxygenTODO keepend fold containedin=phpRegion
+ syn region doxygenCommentL start=+//[/!]<\@!+me=e-1 end=+$+ contains=doxygenStartL,@Spell keepend skipwhite skipnl nextgroup=doxygenComment2 fold containedin=phpRegion
+ syn region doxygenCommentL start=+//[/!]<+me=e-2 end=+$+ contains=doxygenStartL,@Spell keepend skipwhite skipnl fold containedin=phpRegion
+ syn region doxygenCommentL start=+//@\ze[{}]+ end=+$+ contains=doxygenGroupDefine,doxygenGroupDefineSpecial,@Spell fold containedin=phpRegion
" Single line brief followed by multiline comment.
syn region doxygenComment2 start=+/\*\(\*/\)\@![*!]+ end=+\*/+ contained contains=doxygenSyncStart2,doxygenStart2,doxygenTODO keepend fold
@@ -98,7 +100,7 @@ try
" This helps with sync-ing as for some reason, syncing behaves differently to a normal region, and the start pattern does not get matched.
syn match doxygenSyncStart +\ze[^*/]+ contained nextgroup=doxygenBrief,doxygenPrev,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
- syn region doxygenBriefLine contained start=+\<\k+ end=+\(\n\s*\*\=\s*\([@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+ contains=doxygenContinueComment,doxygenFindBriefSpecial,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenHyperLink,doxygenHashLink skipwhite keepend
+ syn region doxygenBriefLine contained start=+\<\k+ end=+\(\n\s*\*\=\s*\([@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+ contains=doxygenContinueComment,doxygenFindBriefSpecial,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenHyperLink,doxygenHashLink,@Spell skipwhite keepend
" Match a '<' for applying a comment to the previous element.
syn match doxygenPrev +<+ contained nextgroup=doxygenBrief,doxygenBody,doxygenSpecial,doxygenStartSkip skipwhite
diff --git a/runtime/syntax/forth.vim b/runtime/syntax/forth.vim
index a61f7db3f..8713a721a 100644
--- a/runtime/syntax/forth.vim
+++ b/runtime/syntax/forth.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: FORTH
" Maintainer: Christian V. J. Brüssow <cvjb@cvjb.de>
-" Last Change: Sa 14 Jul 2007 21:39:53 CEST
+" Last Change: Sa 09 Feb 2008 13:27:29 CET
" Filenames: *.fs,*.ft
" URL: http://www.cvjb.de/comp/vim/forth.vim
@@ -10,9 +10,17 @@
" The list of keywords is incomplete, compared with the offical ANS
" wordlist. If you use this language, please improve it, and send me
" the patches.
+"
+" Before sending me patches, please download the newest version of this file
+" from http://www.cvjb.de/comp/vim/forth.vim or http://www.vim.org/ (search
+" for forth.vim).
" Many Thanks to...
"
+" 2008-02-09:
+" Shawn K. Quinn <sjquinn at speakeasy dot net> send a big patch with
+" new words commonly used in Forth programs or defined by GNU Forth.
+"
" 2007-07-11:
" Benjamin Krill <ben at codiert dot org> send me a patch
" to highlight space errors.
@@ -79,7 +87,7 @@ syn keyword forthTodo contained TODO FIXME XXX
syn match forthTodo contained 'Copyright\(\s([Cc])\)\=\(\s[0-9]\{2,4}\)\='
" Characters allowed in keywords
-" I don't know if 128-255 are allowed in ANS-FORHT
+" I don't know if 128-255 are allowed in ANS-FORTH
if version >= 600
setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
else
@@ -100,21 +108,27 @@ endif
" basic mathematical and logical operators
syn keyword forthOperators + - * / MOD /MOD NEGATE ABS MIN MAX
-syn keyword forthOperators AND OR XOR NOT INVERT 2* 2/ 1+ 1- 2+ 2- 8*
+syn keyword forthOperators AND OR XOR NOT LSHIFT RSHIFT INVERT 2* 2/ 1+
+syn keyword forthOperators 1- 2+ 2- 8* UNDER+
syn keyword forthOperators M+ */ */MOD M* UM* M*/ UM/MOD FM/MOD SM/REM
-syn keyword forthOperators D+ D- DNEGATE DABS DMIN DMAX
+syn keyword forthOperators D+ D- DNEGATE DABS DMIN DMAX D2* D2/
syn keyword forthOperators F+ F- F* F/ FNEGATE FABS FMAX FMIN FLOOR FROUND
syn keyword forthOperators F** FSQRT FEXP FEXPM1 FLN FLNP1 FLOG FALOG FSIN
syn keyword forthOperators FCOS FSINCOS FTAN FASIN FACOS FATAN FATAN2 FSINH
-syn keyword forthOperators FCOSH FTANH FASINH FACOSH FATANH
-syn keyword forthOperators 0< 0<= 0<> 0= 0> 0>= < <= <> = > >=
-syn keyword forthOperators ?NEGATE ?DNEGATE
+syn keyword forthOperators FCOSH FTANH FASINH FACOSH FATANH F2* F2/ 1/F
+syn keyword forthOperators F~REL F~ABS F~
+syn keyword forthOperators 0< 0<= 0<> 0= 0> 0>= < <= <> = > >= U< U<=
+syn keyword forthOperators U> U>= D0< D0<= D0<> D0= D0> D0>= D< D<= D<>
+syn keyword forthOperators D= D> D>= DU< DU<= DU> DU>= WITHIN ?NEGATE
+syn keyword forthOperators ?DNEGATE
" stack manipulations
syn keyword forthStack DROP NIP DUP OVER TUCK SWAP ROT -ROT ?DUP PICK ROLL
-syn keyword forthStack 2DROP 2NIP 2DUP 2OVER 2TUCK 2SWAP 2ROT
-syn keyword forthStack 3DUP 4DUP
+syn keyword forthStack 2DROP 2NIP 2DUP 2OVER 2TUCK 2SWAP 2ROT 2-ROT
+syn keyword forthStack 3DUP 4DUP 5DUP 3DROP 4DROP 5DROP 8DROP 4SWAP 4ROT
+syn keyword forthStack 4-ROT 4TUCK 8SWAP 8DUP
syn keyword forthRStack >R R> R@ RDROP 2>R 2R> 2R@ 2RDROP
+syn keyword forthRstack 4>R 4R> 4R@ 4RDROP
syn keyword forthFStack FDROP FNIP FDUP FOVER FTUCK FSWAP FROT
" stack pointer manipulations
@@ -139,24 +153,40 @@ syn keyword forthLoop ?DO LOOP I J K +DO U+DO -DO U-DO DO +LOOP -LOOP
syn keyword forthLoop UNLOOP LEAVE ?LEAVE EXIT DONE FOR NEXT
" new words
+syn match forthClassDef '\<:class\s*[^ \t]\+\>'
+syn match forthObjectDef '\<:object\s*[^ \t]\+\>'
syn match forthColonDef '\<:m\?\s*[^ \t]\+\>'
syn keyword forthEndOfColonDef ; ;M ;m
-syn keyword forthDefine CONSTANT 2CONSTANT FCONSTANT VARIABLE 2VARIABLE CREATE
-syn keyword forthDefine USER VALUE TO DEFER IS DOES> IMMEDIATE COMPILE-ONLY
-syn keyword forthDefine COMPILE RESTRICT INTERPRET POSTPONE EXECUTE LITERAL
-syn keyword forthDefine CREATE-INTERPRET/COMPILE INTERPRETATION> <INTERPRETATION
-syn keyword forthDefine COMPILATION> <COMPILATION ] LASTXT COMP' POSTPONE,
-syn keyword forthDefine FIND-NAME NAME>INT NAME?INT NAME>COMP NAME>STRING STATE
-syn keyword forthDefine C; CVARIABLE
+syn keyword forthEndOfClassDef ;class
+syn keyword forthEndOfObjectDef ;object
+syn keyword forthDefine CONSTANT 2CONSTANT FCONSTANT VARIABLE 2VARIABLE
+syn keyword forthDefine FVARIABLE CREATE USER VALUE TO DEFER IS DOES> IMMEDIATE
+syn keyword forthDefine COMPILE-ONLY COMPILE RESTRICT INTERPRET POSTPONE EXECUTE
+syn keyword forthDefine LITERAL CREATE-INTERPRET/COMPILE INTERPRETATION>
+syn keyword forthDefine <INTERPRETATION COMPILATION> <COMPILATION ] LASTXT
+syn keyword forthDefine COMP' POSTPONE, FIND-NAME NAME>INT NAME?INT NAME>COMP
+syn keyword forthDefine NAME>STRING STATE C; CVARIABLE
+syn keyword forthDefine , 2, F, C,
+syn match forthDefine "\[IFDEF]"
+syn match forthDefine "\[IFUNDEF]"
+syn match forthDefine "\[THEN]"
+syn match forthDefine "\[ENDIF]"
+syn match forthDefine "\[ELSE]"
+syn match forthDefine "\[?DO]"
+syn match forthDefine "\[DO]"
+syn match forthDefine "\[LOOP]"
+syn match forthDefine "\[+LOOP]"
+syn match forthDefine "\[NEXT]"
+syn match forthDefine "\[BEGIN]"
+syn match forthDefine "\[UNTIL]"
+syn match forthDefine "\[AGAIN]"
+syn match forthDefine "\[WHILE]"
+syn match forthDefine "\[REPEAT]"
syn match forthDefine "\[COMP']"
syn match forthDefine "'"
syn match forthDefine '\<\[\>'
syn match forthDefine "\[']"
syn match forthDefine '\[COMPILE]'
-syn match forthClassDef '\<:class\s*[^ \t]\+\>'
-syn match forthObjectDef '\<:object\s*[^ \t]\+\>'
-syn keyword forthEndOfClassDef ';class'
-syn keyword forthEndOfObjectDef ';object'
" debugging
syn keyword forthDebug PRINTDEBUGDATA PRINTDEBUGLINE
@@ -175,27 +205,48 @@ syn match forthCharOps '\<\[char\]\s\S\s'
syn region forthCharOps start=+."\s+ skip=+\\"+ end=+"+
" char-number conversion
-syn keyword forthConversion <# # #> #S (NUMBER) (NUMBER?) CONVERT D>F D>S DIGIT
-syn keyword forthConversion DPL F>D HLD HOLD NUMBER S>D SIGN >NUMBER
+syn keyword forthConversion <<# <# # #> #>> #S (NUMBER) (NUMBER?) CONVERT D>F
+syn keyword forthConversion D>S DIGIT DPL F>D HLD HOLD NUMBER S>D SIGN >NUMBER
+syn keyword forthConversion F>S S>F
" interptreter, wordbook, compiler
syn keyword forthForth (LOCAL) BYE COLD ABORT >BODY >NEXT >LINK CFA >VIEW HERE
syn keyword forthForth PAD WORDS VIEW VIEW> N>LINK NAME> LINK> L>NAME FORGET
-syn keyword forthForth BODY>
+syn keyword forthForth BODY> ASSERT( ASSERT0( ASSERT1( ASSERT2( ASSERT3( )
syn region forthForth start=+ABORT"\s+ skip=+\\"+ end=+"+
" vocabularies
syn keyword forthVocs ONLY FORTH ALSO ROOT SEAL VOCS ORDER CONTEXT #VOCS
syn keyword forthVocs VOCABULARY DEFINITIONS
+" File keywords
+syn keyword forthFileMode R/O R/W W/O BIN
+syn keyword forthFileWords OPEN-FILE CREATE-FILE CLOSE-FILE DELETE-FILE
+syn keyword forthFileWords RENAME-FILE READ-FILE READ-LINE KEY-FILE
+syn keyword forthFileWords KEY?-FILE WRITE-FILE WRITE-LINE EMIT-FILE
+syn keyword forthFileWords FLUSH-FILE FILE-STATUS FILE-POSITION
+syn keyword forthFileWords REPOSITION-FILE FILE-SIZE RESIZE-FILE
+syn keyword forthFileWords SLURP-FILE SLURP-FID STDIN STDOUT STDERR
+syn keyword forthBlocks OPEN-BLOCKS USE LOAD --> BLOCK-OFFSET
+syn keyword forthBlocks GET-BLOCK-FID BLOCK-POSITION LIST SCR BLOCK
+syn keyword forthBlocks BUFER EMPTY-BUFFERS EMPTY-BUFFER UPDATE UPDATED?
+syn keyword forthBlocks SAVE-BUFFERS SAVE-BUFFER FLUSH THRU +LOAD +THRU
+syn keyword forthBlocks BLOCK-INCLUDED
+
" numbers
syn keyword forthMath DECIMAL HEX BASE
syn match forthInteger '\<-\=[0-9.]*[0-9.]\+\>'
+syn match forthInteger '\<&-\=[0-9.]*[0-9.]\+\>'
" recognize hex and binary numbers, the '$' and '%' notation is for gforth
syn match forthInteger '\<\$\x*\x\+\>' " *1* --- dont't mess
syn match forthInteger '\<\x*\d\x*\>' " *2* --- this order!
syn match forthInteger '\<%[0-1]*[0-1]\+\>'
-syn match forthFloat '\<-\=\d*[.]\=\d\+[Ee]\d\+\>'
+syn match forthFloat '\<-\=\d*[.]\=\d\+[DdEe]\d\+\>'
+syn match forthFloat '\<-\=\d*[.]\=\d\+[DdEe][-+]\d\+\>'
+
+" XXX If you find this overkill you can remove it. this has to come after the
+" highlighting for numbers otherwise it has no effect.
+syn region forthComment start='0 \[if\]' end='\[endif\]' end='\[then\]' contains=forthTodo
" Strings
syn region forthString start=+\.*\"+ end=+"+ end=+$+
@@ -212,9 +263,15 @@ syn region forthComment start='/\*' end='\*/' contains=forthTodo,forthSpaceError
" Include files
syn match forthInclude '^INCLUDE\s\+\k\+'
+syn match forthInclude '^require\s\+\k\+'
syn match forthInclude '^fload\s\+'
syn match forthInclude '^needs\s\+'
+" Locals definitions
+syn region forthLocals start='{\s' start='{$' end='\s}' end='^}'
+syn match forthLocals '{ }' " otherwise, at least two spaces between
+syn region forthDeprecated start='locals|' end='|'
+
" 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
@@ -257,6 +314,11 @@ if version >= 508 || !exists("did_forth_syn_inits")
HiLink forthObjectDef Define
HiLink forthEndOfObjectDef Define
HiLink forthInclude Include
+ HiLink forthLocals Type " nothing else uses type and locals must stand out
+ HiLink forthDeprecated Error " if you must, change to Type
+ HiLink forthFileMode Function
+ HiLink forthFileWords Statement
+ HiLink forthBlocks Statement
HiLink forthSpaceError Error
delcommand HiLink
diff --git a/runtime/syntax/mailaliases.vim b/runtime/syntax/mailaliases.vim
index de85a174f..743068f66 100644
--- a/runtime/syntax/mailaliases.vim
+++ b/runtime/syntax/mailaliases.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: aliases(5) local alias database file
" Maintainer: Nikolai Weibull <nikolai@bitwi.se>
-" Latest Revision: 2006-01-14
+" Latest Revision: 2008-04-14
if exists("b:current_syntax")
finish
@@ -19,7 +19,7 @@ syn match mailaliasesBegin display '^'
\ nextgroup=mailaliasesName,
\ mailaliasesComment
-syn match mailaliasesName contained '[0-9A-Za-z_-]\+'
+syn match mailaliasesName contained '[[:alnum:]\._-]\+'
\ nextgroup=mailaliasesColon
syn region mailaliasesName contained oneline start=+"+
diff --git a/runtime/syntax/make.vim b/runtime/syntax/make.vim
index 5e72f4e69..e9d7ee99d 100644
--- a/runtime/syntax/make.vim
+++ b/runtime/syntax/make.vim
@@ -2,7 +2,7 @@
" Language: Makefile
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/make.vim
-" Last Change: 2007 Apr 30
+" Last Change: 2008 Aug 04
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -63,7 +63,7 @@ syn match makeCmdNextLine "\\\n."he=e-1 contained
" Statements / Functions (GNU make)
-syn match makeStatement contained "(\(subst\|addprefix\|addsuffix\|basename\|call\|dir\|error\|eval\|filter-out\|filter\|findstring\|firstword\|foreach\|if\|join\|notdir\|origin\|patsubst\|shell\|sort\|strip\|suffix\|warning\|wildcard\|word\|wordlist\|words\)\>"ms=s+1
+syn match makeStatement contained "(\(subst\|abspath\|addprefix\|addsuffix\|and\|basename\|call\|dir\|error\|eval\|filter-out\|filter\|findstring\|firstword\|flavor\|foreach\|if\|info\|join\|lastword\|notdir\|or\|origin\|patsubst\|realpath\|shell\|sort\|strip\|suffix\|value\|warning\|wildcard\|word\|wordlist\|words\)\>"ms=s+1
" Comment
if exists("make_microsoft")
diff --git a/runtime/syntax/modconf.vim b/runtime/syntax/modconf.vim
index d4e8827be..54b6593b6 100644
--- a/runtime/syntax/modconf.vim
+++ b/runtime/syntax/modconf.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: modules.conf(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2007-06-17
+" Latest Revision: 2007-10-25
if exists("b:current_syntax")
finish
@@ -21,7 +21,7 @@ syn keyword modconfConditional if else elseif endif
syn keyword modconfPreProc alias define include keep prune
\ post-install post-remove pre-install
- \ pre-remove persistdir
+ \ pre-remove persistdir blacklist
syn keyword modconfKeyword add above below install options probe probeall
\ remove
diff --git a/runtime/syntax/natural.vim b/runtime/syntax/natural.vim
index f7f140f58..262815137 100644
--- a/runtime/syntax/natural.vim
+++ b/runtime/syntax/natural.vim
@@ -1,205 +1,209 @@
" Vim syntax file
"
-" Language: NATURAL
-" Version: 2.0.26.17
-" Maintainer: Marko Leipert <vim@mleipert.de>
-" Last Changed: 2002-02-28 09:50:36
-" Support: http://www.winconsole.de/vim/syntax.html
+" Language: NATURAL
+" Version: 2.1.0.3
+" Maintainer: Marko von Oppen <marko@von-oppen.com>
+" Last Changed: 2008-07-29 01:40:52
+" Support: http://www.von-oppen.com/
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when this syntax file was already loaded
if v:version < 600
- syntax clear
- set iskeyword+=-,*,#,+,_,/
+ syntax clear
+ set iskeyword+=-,*,#,+,_,/
elseif exists("b:current_syntax")
- finish
+ finish
else
- setlocal iskeyword+=-,*,#,+,_,/
+ setlocal iskeyword+=-,*,#,+,_,/
endif
" NATURAL is case insensitive
syntax case ignore
" preprocessor
-syn keyword naturalInclude include nextgroup=naturalObjName skipwhite
+syn keyword naturalInclude include nextgroup=naturalObjName skipwhite
" define data
-syn keyword naturalKeyword define data end-define
-syn keyword naturalKeyword independent global parameter local redefine view
-syn keyword naturalKeyword const[ant] init initial
+syn keyword naturalKeyword define data end-define
+syn keyword naturalKeyword independent global parameter local redefine view
+syn keyword naturalKeyword const[ant] init initial
" loops
-syn keyword naturalLoop read end-read end-work find end-find histogram end-histogram
-syn keyword naturalLoop end-all sort end-sort sorted descending ascending
-syn keyword naturalRepeat repeat end-repeat while until for step end-for
-syn keyword naturalKeyword in file with field starting from ending at thru by isn where
-syn keyword naturalError on error end-error
-syn keyword naturalKeyword accept reject end-enddata number unique retain as release
-syn keyword naturalKeyword start end-start break end-break physical page top sequence
-syn keyword naturalKeyword end-toppage end-endpage end-endfile before processing
-syn keyword naturalKeyword end-before
+syn keyword naturalLoop read end-read end-work find end-find histogram end-histogram
+syn keyword naturalLoop end-all sort end-sort sorted descending ascending
+syn keyword naturalRepeat repeat end-repeat while until for step end-for
+syn keyword naturalKeyword in file with field starting from ending at thru by isn where
+syn keyword naturalError on error end-error
+syn keyword naturalKeyword accept reject end-enddata number unique retain as release
+syn keyword naturalKeyword start end-start break end-break physical page top sequence
+syn keyword naturalKeyword end-toppage end-endpage end-endfile before processing
+syn keyword naturalKeyword end-before
" conditionals
syn keyword naturalConditional if then else end-if end-norec
syn keyword naturalConditional decide end-decide value when condition none any
" assignment / calculation
-syn keyword naturalKeyword reset assign move left right justified compress to into edited
-syn keyword naturalKeyword add subtract multiply divide compute name
-syn keyword naturalKeyword all giving remainder rounded leaving space
-syn keyword naturalKeyword examine full replace giving separate delimiter modified
-syn keyword naturalKeyword suspend identical suppress
+syn keyword naturalKeyword reset assign move left right justified compress to into edited
+syn keyword naturalKeyword add subtract multiply divide compute name
+syn keyword naturalKeyword all giving remainder rounded leaving space numeric
+syn keyword naturalKeyword examine full replace giving separate delimiter modified
+syn keyword naturalKeyword suspend identical suppress
" program flow
-syn keyword naturalFlow callnat fetch return enter escape bottom top stack formatted
-syn keyword naturalFlow command call
-syn keyword naturalflow end-subroutine routine
+syn keyword naturalFlow callnat fetch return enter escape bottom top stack formatted
+syn keyword naturalFlow command call
+syn keyword naturalflow end-subroutine routine
" file operations
-syn keyword naturalKeyword update store get delete end transaction work once close
+syn keyword naturalKeyword update store get delete end transaction work once close
" other keywords
-syn keyword naturalKeyword first every of no record[s] found ignore immediate
-syn keyword naturalKeyword set settime key control stop terminate
+syn keyword naturalKeyword first every of no record[s] found ignore immediate
+syn keyword naturalKeyword set settime key control stop terminate
" in-/output
-syn keyword naturalKeyword write display input reinput notitle nohdr map newpage mark
-syn keyword naturalKeyword alarm text help eject index
-syn keyword naturalKeyword format printer skip lines
+syn keyword naturalKeyword write display input reinput notitle nohdr map newpage
+syn keyword naturalKeyword alarm text help eject index window base size
+syn keyword naturalKeyword format printer skip lines
" functions
-syn keyword naturalKeyword abs atn cos exp frac int log sgn sin sqrt tan val old
+syn keyword naturalKeyword abs atn cos exp frac int log sgn sin sqrt tan val old
+syn keyword naturalKeyword pos
" report mode keywords
syn keyword naturalRMKeyword same loop obtain indexed do doend
" Subroutine name
-syn keyword naturalFlow perform subroutine nextgroup=naturalFunction skipwhite
-syn match naturalFunction "\<[a-z][-_a-z0-9]*\>"
+syn keyword naturalFlow perform subroutine nextgroup=naturalFunction skipwhite
+syn match naturalFunction "\<[a-z][-_a-z0-9]*\>"
-syn keyword naturalFlow using nextgroup=naturalKeyword,naturalObjName skipwhite
-syn match naturalObjName "\<[a-z][-_a-z0-9]\{,7}\>"
+syn keyword naturalFlow using nextgroup=naturalKeyword,naturalObjName skipwhite
+syn match naturalObjName "\<[a-z][-_a-z0-9]\{,7}\>"
" Labels
-syn match naturalLabel "\<[+#a-z][-_#a-z0-9]*\."
-syn match naturalRef "\<[+#a-z][-_#a-z0-9]*\>\.\<[+#a-z][*]\=[-_#a-z0-9]*\>"
+syn match naturalLabel "\<[+#a-z][-_#a-z0-9]*\."
+syn match naturalRef "\<[+#a-z][-_#a-z0-9]*\>\.\<[+#a-z][*]\=[-_#a-z0-9]*\>"
+
+" mark keyword special handling
+syn keyword naturalKeyword mark nextgroup=naturalMark skipwhite
+syn match naturalMark "\<\*[a-z][-_#.a-z0-9]*\>"
" System variables
-syn match naturalSysVar "\<\*[a-z][-a-z0-9]*\>"
+syn match naturalSysVar "\<\*[a-z][-a-z0-9]*\>"
"integer number, or floating point number without a dot.
-syn match naturalNumber "\<-\=\d\+\>"
+syn match naturalNumber "\<-\=\d\+\>"
"floating point number, with dot
-syn match naturalNumber "\<-\=\d\+\.\d\+\>"
+syn match naturalNumber "\<-\=\d\+\.\d\+\>"
"floating point number, starting with a dot
-syn match naturalNumber "\.\d\+"
+syn match naturalNumber "\.\d\+"
" Formats in write statement
-syn match naturalFormat "\<\d\+[TX]\>"
+syn match naturalFormat "\<\d\+[TX]\>"
" String and Character contstants
-syn match naturalString "H'\x\+'"
-syn region naturalString start=+"+ end=+"+
-syn region naturalString start=+'+ end=+'+
+syn match naturalString "H'\x\+'"
+syn region naturalString start=+"+ end=+"+
+syn region naturalString start=+'+ end=+'+
" Type definition
-syn match naturalAttribute "\<[-a-z][a-z]=[-a-z0-9_\.,]\+\>"
-syn match naturalType contained "\<[ABINP]\d\+\(,\d\+\)\=\>"
-syn match naturalType contained "\<[CL]\>"
+syn match naturalAttribute "\<[-a-z][a-z]=[-a-z0-9_\.,]\+\>"
+syn match naturalType contained "\<[ABINP]\d\+\(,\d\+\)\=\>"
+syn match naturalType contained "\<[CL]\>"
" "TODO" / other comments
-syn keyword naturalTodo contained todo test
-syn match naturalCommentMark contained "[a-z][^ \t/:|]*\(\s[^ \t/:'"|]\+\)*:\s"he=e-1
+syn keyword naturalTodo contained todo test
+syn match naturalCommentMark contained "[a-z][^ \t/:|]*\(\s[^ \t/:'"|]\+\)*:\s"he=e-1
" comments
-syn region naturalComment start="/\*" end="$" contains=naturalTodo,naturalLineRef,naturalCommentMark
-syn region naturalComment start="^\*[\ \*]" end="$" contains=naturalTodo,naturalLineRef,naturalCommentMark
-syn region naturalComment start="^\d\{4} \*[\ \*]"lc=5 end="$" contains=naturalTodo,naturalLineRef,naturalCommentMark
-syn match naturalComment "^*$"
-syn match naturalComment "^\d\{4} \*$"lc=5
+syn region naturalComment start="/\*" end="$" contains=naturalTodo,naturalLineRef,naturalCommentMark
+syn region naturalComment start="^\*[ *]" end="$" contains=naturalTodo,naturalLineRef,naturalCommentMark
+syn region naturalComment start="^\d\{4} \*[\ \*]"lc=5 end="$" contains=naturalTodo,naturalLineRef,naturalCommentMark
+syn match naturalComment "^\*$"
+syn match naturalComment "^\d\{4} \*$"lc=5
" /* is legal syntax in parentheses e.g. "#ident(label./*)"
-syn region naturalPComment contained start="/\*\s*[^),]" end="$" contains=naturalTodo,naturalLineRef,naturalCommentMark
+syn region naturalPComment contained start="/\*\s*[^),]" end="$" contains=naturalTodo,naturalLineRef,naturalCommentMark
" operators
-syn keyword naturalOperator and or not eq ne gt lt ge le mask scan
+syn keyword naturalOperator and or not eq ne gt lt ge le mask scan modified
" constants
-syn keyword naturalBoolean true false
-
-syn match naturalLineNo "^\d\{4}"
+syn keyword naturalBoolean true false
+syn match naturalLineNo "^\d\{4}"
" identifiers
-syn match naturalIdent "\<[+#a-z][-_#a-z0-9]*\>[^\.']"me=e-1
-syn match naturalIdent "\<[+#a-z][-_#a-z0-9]*$"
-syn match naturalLegalIdent "[+#a-z][-_#a-z0-9]*/[-_#a-z0-9]*"
+syn match naturalIdent "\<[+#a-z][-_#a-z0-9]*\>[^\.']"me=e-1
+syn match naturalIdent "\<[+#a-z][-_#a-z0-9]*$"
+syn match naturalLegalIdent "[+#a-z][-_#a-z0-9]*/[-_#a-z0-9]*"
" parentheses
-syn region naturalPar matchgroup=naturalParGui start="(" end=")" contains=naturalLabel,naturalRef,naturalOperator,@naturalConstant,naturalType,naturalSysVar,naturalPar,naturalLineNo,naturalPComment
-syn match naturalLineRef "(\d\{4})"
+syn region naturalPar matchgroup=naturalParGui start="(" end=")" contains=naturalLabel,naturalRef,naturalOperator,@naturalConstant,naturalType,naturalSysVar,naturalPar,naturalLineNo,naturalPComment
+syn match naturalLineRef "(\d\{4})"
" build syntax groups
syntax cluster naturalConstant contains=naturalString,naturalNumber,naturalAttribute,naturalBoolean
" folding
if v:version >= 600
- set foldignore=*
+ set foldignore=*
endif
if v:version >= 508 || !exists("did_natural_syntax_inits")
- if v:version < 508
- let did_natural_syntax_inits = 1
- command -nargs=+ HiLink hi link <args>
- else
- command -nargs=+ HiLink hi def link <args>
- endif
- " The default methods for highlighting. Can be overridden later
-
- " Constants
- HiLink naturalFormat Constant
- HiLink naturalAttribute Constant
- HiLink naturalNumber Number
- HiLink naturalString String
- HiLink naturalBoolean Boolean
-
- " All kinds of keywords
- HiLink naturalConditional Conditional
- HiLink naturalRepeat Repeat
- HiLink naturalLoop Repeat
- HiLink naturalFlow Keyword
- HiLink naturalError Keyword
- HiLink naturalKeyword Keyword
- HiLink naturalOperator Operator
- HiLink naturalParGui Operator
-
- " Labels
- HiLink naturalLabel Label
- HiLink naturalRefLabel Label
-
- " Comments
- HiLink naturalPComment Comment
- HiLink naturalComment Comment
- HiLink naturalTodo Todo
- HiLink naturalCommentMark PreProc
-
- HiLink naturalInclude Include
- HiLink naturalSysVar Identifier
- HiLink naturalLineNo LineNr
- HiLink naturalLineRef Error
- HiLink naturalSpecial Special
- HiLink naturalComKey Todo
-
- " illegal things
- HiLink naturalRMKeyword Error
- HiLink naturalLegalIdent Error
-
- HiLink naturalType Type
- HiLink naturalFunction Function
- HiLink naturalObjName Function
-
- delcommand HiLink
+ if v:version < 508
+ let did_natural_syntax_inits = 1
+ command -nargs=+ HiLink hi link <args>
+ else
+ command -nargs=+ HiLink hi def link <args>
+ endif
+ " The default methods for highlighting. Can be overridden later
+
+ " Constants
+ HiLink naturalFormat Constant
+ HiLink naturalAttribute Constant
+ HiLink naturalNumber Number
+ HiLink naturalString String
+ HiLink naturalBoolean Boolean
+
+ " All kinds of keywords
+ HiLink naturalConditional Conditional
+ HiLink naturalRepeat Repeat
+ HiLink naturalLoop Repeat
+ HiLink naturalFlow Keyword
+ HiLink naturalError Keyword
+ HiLink naturalKeyword Keyword
+ HiLink naturalOperator Operator
+ HiLink naturalParGui Operator
+
+ " Labels
+ HiLink naturalLabel Label
+ HiLink naturalRefLabel Label
+
+ " Comments
+ HiLink naturalPComment Comment
+ HiLink naturalComment Comment
+ HiLink naturalTodo Todo
+ HiLink naturalCommentMark PreProc
+
+ HiLink naturalInclude Include
+ HiLink naturalSysVar Identifier
+ HiLink naturalLineNo LineNr
+ HiLink naturalLineRef Error
+ HiLink naturalSpecial Special
+ HiLink naturalComKey Todo
+
+ " illegal things
+ HiLink naturalRMKeyword Error
+ HiLink naturalLegalIdent Error
+
+ HiLink naturalType Type
+ HiLink naturalFunction Function
+ HiLink naturalObjName PreProc
+
+ delcommand HiLink
endif
let b:current_syntax = "natural"
-" vim:set ts=4 sw=4 noet ft=vim list:
+" vim:set ts=8 sw=8 noet ft=vim:
diff --git a/runtime/syntax/racc.vim b/runtime/syntax/racc.vim
index 795b65243..d412227cb 100644
--- a/runtime/syntax/racc.vim
+++ b/runtime/syntax/racc.vim
@@ -1,7 +1,7 @@
" Vim default file
" Language: Racc input file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-07-09
+" Latest Revision: 2008-06-22
if exists("b:current_syntax")
finish
@@ -31,7 +31,7 @@ syn keyword raccPrecSpec contained nonassoc left right
\ nextgroup=raccPrecToken,raccPrecString skipwhite
\ skipnl
-syn match raccPrecToken contained '\<\u[A-Z0-9]*\>'
+syn match raccPrecToken contained '\<\u[A-Z0-9_]*\>'
\ nextgroup=raccPrecToken,raccPrecString skipwhite
\ skipnl
@@ -48,7 +48,7 @@ syn region raccPrecString matchgroup=raccPrecString start=+'+
syn keyword raccTokenDecl contained token
\ nextgroup=raccTokenR skipwhite skipnl
-syn match raccTokenR contained '\<\u[A-Z0-9]*\>'
+syn match raccTokenR contained '\<\u[A-Z0-9_]*\>'
\ nextgroup=raccTokenR skipwhite skipnl
syn keyword raccExpect contained expect
@@ -67,13 +67,13 @@ syn region raccConvert transparent contained matchgroup=raccKeyword
\ contains=raccComment,raccConvToken skipwhite
\ skipnl
-syn match raccConvToken contained '\<\u[A-Z0-9]*\>'
+syn match raccConvToken contained '\<\u[A-Z0-9_]*\>'
\ nextgroup=raccString skipwhite skipnl
syn keyword raccStart contained start
\ nextgroup=raccTargetS skipwhite skipnl
-syn match raccTargetS contained '\<\l[a-z0-9]*\>'
+syn match raccTargetS contained '\<\l[a-z0-9_]*\>'
syn match raccSpecial contained '\\["'\\]'
@@ -87,11 +87,11 @@ syn region raccRules transparent matchgroup=raccKeyword start='\<rule\>'
\ raccNumber,raccToken,raccTarget,raccDelimiter,
\ raccAction
-syn match raccTarget contained '\<\l[a-z0-9]*\>'
+syn match raccTarget contained '\<\l[a-z0-9_]*\>'
syn match raccDelimiter contained '[:|]'
-syn match raccToken contained '\<\u[A-Z0-9]*\>'
+syn match raccToken contained '\<\u[A-Z0-9_]*\>'
syn include @raccRuby syntax/ruby.vim
diff --git a/runtime/syntax/sas.vim b/runtime/syntax/sas.vim
index 68e8788e2..976dca26f 100644
--- a/runtime/syntax/sas.vim
+++ b/runtime/syntax/sas.vim
@@ -1,7 +1,11 @@
" Vim syntax file
" Language: SAS
" Maintainer: James Kidd <james.kidd@covance.com>
-" Last Change: 02 Jun 2003
+" Last Change: 18 Jul 2008 by Paulo Tanimoto <ptanimoto@gmail.com>
+" Fixed comments with * taking multiple lines.
+" Fixed highlighting of macro keywords.
+" Added words to cases that didn't fit anywhere.
+" 02 Jun 2003
" Added highlighting for additional keywords and such;
" Attempted to match SAS default syntax colors;
" Changed syncing so it doesn't lose colors on large blocks;
@@ -25,18 +29,18 @@ syn region sasCards start="^\s*DATALINES.*" end="^\s*;\s*$"
syn match sasNumber "-\=\<\d*\.\=[0-9_]\>"
+" Block comment
syn region sasComment start="/\*" end="\*/" contains=sasTodo
+
" Ignore misleading //JCL SYNTAX... (Bob Heckel)
syn region sasComment start="[^/][^/]/\*" end="\*/" contains=sasTodo
-" Allow highlighting of embedded TODOs (Bob Heckel)
-syn match sasComment "^\s*\*.*;" contains=sasTodo
-
-" Allow highlighting of embedded TODOs (Bob Heckel)
-syn match sasComment ";\s*\*.*;"hs=s+1 contains=sasTodo
+" Previous code for comments was written by Bob Heckel
+" Comments with * may take multiple lines (Paulo Tanimoto)
+syn region sasComment start=";\s*\*"hs=s+1 end=";" contains=sasTodo
-" Handle macro comments too (Bob Heckel).
-syn match sasComment "^\s*%*\*.*;" contains=sasTodo
+" Comments with * starting after a semicolon (Paulo Tanimoto)
+syn region sasComment start="^\s*\*" end=";" contains=sasTodo
" This line defines macro variables in code. HiLink at end of file
" defines the color scheme. Begin region with ampersand and end with
@@ -84,24 +88,71 @@ syn keyword sasStatement NULL ON OR ORDER PRIMARY REFERENCES
syn keyword sasStatement RESET RESTRICT SELECT SET TABLE
syn keyword sasStatement UNIQUE UPDATE VALIDATE VIEW WHERE
-
-syn match sasStatement "FOOTNOTE\d" "TITLE\d"
-
-syn match sasMacro "%BQUOTE" "%NRBQUOTE" "%CMPRES" "%QCMPRES"
-syn match sasMacro "%COMPSTOR" "%DATATYP" "%DISPLAY" "%DO"
-syn match sasMacro "%ELSE" "%END" "%EVAL" "%GLOBAL"
-syn match sasMacro "%GOTO" "%IF" "%INDEX" "%INPUT"
-syn match sasMacro "%KEYDEF" "%LABEL" "%LEFT" "%LENGTH"
-syn match sasMacro "%LET" "%LOCAL" "%LOWCASE" "%MACRO"
-syn match sasMacro "%MEND" "%NRBQUOTE" "%NRQUOTE" "%NRSTR"
-syn match sasMacro "%PUT" "%QCMPRES" "%QLEFT" "%QLOWCASE"
-syn match sasMacro "%QSCAN" "%QSUBSTR" "%QSYSFUNC" "%QTRIM"
-syn match sasMacro "%QUOTE" "%QUPCASE" "%SCAN" "%STR"
-syn match sasMacro "%SUBSTR" "%SUPERQ" "%SYSCALL" "%SYSEVALF"
-syn match sasMacro "%SYSEXEC" "%SYSFUNC" "%SYSGET" "%SYSLPUT"
-syn match sasMacro "%SYSPROD" "%SYSRC" "%SYSRPUT" "%THEN"
-syn match sasMacro "%TO" "%TRIM" "%UNQUOTE" "%UNTIL"
-syn match sasMacro "%UPCASE" "%VERIFY" "%WHILE" "%WINDOW"
+" Match declarations have to appear one per line (Paulo Tanimoto)
+syn match sasStatement "FOOTNOTE\d"
+syn match sasStatement "TITLE\d"
+
+" Match declarations have to appear one per line (Paulo Tanimoto)
+syn match sasMacro "%BQUOTE"
+syn match sasMacro "%NRBQUOTE"
+syn match sasMacro "%CMPRES"
+syn match sasMacro "%QCMPRES"
+syn match sasMacro "%COMPSTOR"
+syn match sasMacro "%DATATYP"
+syn match sasMacro "%DISPLAY"
+syn match sasMacro "%DO"
+syn match sasMacro "%ELSE"
+syn match sasMacro "%END"
+syn match sasMacro "%EVAL"
+syn match sasMacro "%GLOBAL"
+syn match sasMacro "%GOTO"
+syn match sasMacro "%IF"
+syn match sasMacro "%INDEX"
+syn match sasMacro "%INPUT"
+syn match sasMacro "%KEYDEF"
+syn match sasMacro "%LABEL"
+syn match sasMacro "%LEFT"
+syn match sasMacro "%LENGTH"
+syn match sasMacro "%LET"
+syn match sasMacro "%LOCAL"
+syn match sasMacro "%LOWCASE"
+syn match sasMacro "%MACRO"
+syn match sasMacro "%MEND"
+syn match sasMacro "%NRBQUOTE"
+syn match sasMacro "%NRQUOTE"
+syn match sasMacro "%NRSTR"
+syn match sasMacro "%PUT"
+syn match sasMacro "%QCMPRES"
+syn match sasMacro "%QLEFT"
+syn match sasMacro "%QLOWCASE"
+syn match sasMacro "%QSCAN"
+syn match sasMacro "%QSUBSTR"
+syn match sasMacro "%QSYSFUNC"
+syn match sasMacro "%QTRIM"
+syn match sasMacro "%QUOTE"
+syn match sasMacro "%QUPCASE"
+syn match sasMacro "%SCAN"
+syn match sasMacro "%STR"
+syn match sasMacro "%SUBSTR"
+syn match sasMacro "%SUPERQ"
+syn match sasMacro "%SYSCALL"
+syn match sasMacro "%SYSEVALF"
+syn match sasMacro "%SYSEXEC"
+syn match sasMacro "%SYSFUNC"
+syn match sasMacro "%SYSGET"
+syn match sasMacro "%SYSLPUT"
+syn match sasMacro "%SYSPROD"
+syn match sasMacro "%SYSRC"
+syn match sasMacro "%SYSRPUT"
+syn match sasMacro "%THEN"
+syn match sasMacro "%TO"
+syn match sasMacro "%TRIM"
+syn match sasMacro "%UNQUOTE"
+syn match sasMacro "%UNTIL"
+syn match sasMacro "%UPCASE"
+syn match sasMacro "%VERIFY"
+syn match sasMacro "%WHILE"
+syn match sasMacro "%WINDOW"
" SAS Functions
@@ -159,13 +210,17 @@ syn keyword sasErrMsg ERROR
syn keyword sasTodo TODO TBD FIXME contained
" These don't fit anywhere else (Bob Heckel).
-syn match sasUnderscore "_NULL_"
+" Added others that were missing.
+syn match sasUnderscore "_ALL_"
+syn match sasUnderscore "_AUTOMATIC_"
+syn match sasUnderscore "_CHARACTER_"
syn match sasUnderscore "_INFILE_"
syn match sasUnderscore "_N_"
-syn match sasUnderscore "_WEBOUT_"
+syn match sasUnderscore "_NAME_"
+syn match sasUnderscore "_NULL_"
syn match sasUnderscore "_NUMERIC_"
-syn match sasUnderscore "_CHARACTER_"
-syn match sasUnderscore "_ALL_"
+syn match sasUnderscore "_USER_"
+syn match sasUnderscore "_WEBOUT_"
" End of SAS Functions
diff --git a/runtime/syntax/sh.vim b/runtime/syntax/sh.vim
index cb92bbda8..5fa8d938f 100644
--- a/runtime/syntax/sh.vim
+++ b/runtime/syntax/sh.vim
@@ -2,8 +2,8 @@
" Language: shell (sh) Korn shell (ksh) bash (sh)
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
" Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int>
-" Last Change: Jul 01, 2008
-" Version: 100
+" Last Change: Jul 11, 2008
+" Version: 102
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
" For options and settings, please use: :help ft-sh-syntax
" This file includes many ideas from Éric Brunet (eric.brunet@ens.fr)
@@ -42,9 +42,6 @@ if !exists("b:is_kornshell") && !exists("b:is_bash")
endif
endif
-" adjust iskeyword for shell characters
-"setlocal isk=@,48-57,_,192-255,#,.,/
-
" set up default g:sh_fold_enabled {{{1
if !exists("g:sh_fold_enabled")
let g:sh_fold_enabled= 0
@@ -275,7 +272,7 @@ else
endif
syn region shSingleQuote matchgroup=shOperator start=+'+ end=+'+ contains=shStringSpecial,@Spell
syn region shDoubleQuote matchgroup=shOperator start=+"+ skip=+\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial,@Spell
-syn match shStringSpecial "[^[:print:]]" contained
+syn match shStringSpecial "[^[:print:] \t]" contained
syn match shStringSpecial "\%(\\\\\)*\\[\\"'`$()#]"
syn match shSpecial "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]"
syn match shSpecial "^\%(\\\\\)*\\[\\"'`$()#]"
diff --git a/runtime/syntax/sieve.vim b/runtime/syntax/sieve.vim
index f651cbd4e..4bb4417f3 100644
--- a/runtime/syntax/sieve.vim
+++ b/runtime/syntax/sieve.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: Sieve filtering language input file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2007-10-25
if exists("b:current_syntax")
finish
@@ -33,7 +33,7 @@ syn keyword sieveTest address allof anyof envelope exists false header
\ not size true
syn keyword sievePreProc require stop
syn keyword sieveAction reject fileinto redirect keep discard
-syn match sieveKeyword '\<\h\w*\>'
+syn keyword sieveKeyword vacation
syn case match
@@ -46,7 +46,7 @@ hi def link sieveString String
hi def link sieveConditional Conditional
hi def link sieveTest Keyword
hi def link sievePreProc PreProc
-hi def link sieveAction Keyword
+hi def link sieveAction Function
hi def link sieveKeyword Keyword
let b:current_syntax = "sieve"
diff --git a/runtime/syntax/svn.vim b/runtime/syntax/svn.vim
index d691ba15c..bb4f59446 100644
--- a/runtime/syntax/svn.vim
+++ b/runtime/syntax/svn.vim
@@ -4,10 +4,11 @@
" URL: http://www.hlabs.spb.ru/vim/svn.vim
" Revision: $Id$
" Filenames: svn-commit*.tmp
-" Version: 1.5
+" Version: 1.6
" Contributors:
" Stefano Zacchiroli
+" A. S. Budden
" For version 5.x: Clear all syntax items.
" For version 6.x: Quit when a syntax file was already loaded.
@@ -17,7 +18,7 @@ elseif exists("b:current_syntax")
finish
endif
-syn region svnRegion start="^--.*--$" end="\%$" contains=ALL
+syn region svnRegion start="^--.*--$" end="\%$" contains=ALL contains=@NoSpell
syn match svnRemoved "^D .*$" contained
syn match svnAdded "^A[ M] .*$" contained
syn match svnModified "^M[ M] .*$" contained
diff --git a/runtime/syntax/updatedb.vim b/runtime/syntax/updatedb.vim
index dd8e6f7a5..4f912d4d9 100644
--- a/runtime/syntax/updatedb.vim
+++ b/runtime/syntax/updatedb.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: updatedb.conf(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2007-10-25
if exists("b:current_syntax")
finish
@@ -18,7 +18,7 @@ syn region updatedbComment display oneline start='^\s*#' end='$'
syn match updatedbBegin display '^'
\ nextgroup=updatedbName,updatedbComment skipwhite
-syn keyword updatedbName contained PRUNEFS PRUNEPATHS
+syn keyword updatedbName contained PRUNEFS PRUNEPATHS PRUNE_BIND_MOUNTS
\ nextgroup=updatedbNameEq
syn match updatedbNameEq contained display '=' nextgroup=updatedbValue
diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim
index c220f9de2..5bfcd6606 100644
--- a/runtime/syntax/vim.vim
+++ b/runtime/syntax/vim.vim
@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Vim 7.2 script
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
-" Last Change: Jul 10, 2008
-" Version: 7.2-79+
+" Last Change: July 29, 2008
+" Version: 7.2-82
" Automatically generated keyword lists: {{{1
" Quit when a syntax file was already loaded {{{2
@@ -16,11 +16,11 @@ syn keyword vimTodo contained COMBAK FIXME TODO XXX
syn cluster vimCommentGroup contains=vimTodo,@Spell
" regular vim commands {{{2
-syn keyword vimCommand contained ab[breviate] argd[elete] ar[gs] bd[elete] bn[ext] breaka[dd] bufdo ca[bbrev] cal[l] cd cgetb[uffer] chd[ir] clo[se] cnf[ile] comc[lear] co[py] cuna[bbrev] delf[unction] diffpu[t] di[splay] dsp[lit] e[dit] endfo[r] ene[w] files fir[st] foldd[oopen] gr[ep] helpg[rep] iabc[lear] inorea[bbrev] ju[mps] laddb[uffer] la[st] lch[dir] lex[pr] lgete[xpr] lh[elpgrep] lli[st] lnew[er] lNf[ile] lockv[ar] lp[revious] lv[imgrep] ma[rk] mk[exrc] mkv[imrc] mz[scheme] N[ext] nu[mber] opt[ions] perld[o] pp[op] P[rint] promptr[epl] ptj[ump] ptp[revious] pw[d] q[uit] redi[r] reg[isters] rew[ind] rubyd[o] sal[l] sba[ll] sbn[ext] sb[uffer] setf[iletype] sfir[st] sim[alt] sm[ap] sn[ext] snor[emap] so[urce] spellr[epall] spr[evious] star[tinsert] stopi[nsert] sunmenu t tabe[dit] tabm[ove] tabo[nly] ta[g] tclf[ile] tj[ump] tn[ext] tr[ewind] tu[nmenu] undol[ist] verb[ose] vim[grep] vmapc[lear] wh[ile] win[size] wq wv[iminfo] xm[ap] XMLent xnoremenu
-syn keyword vimCommand contained abc[lear] argdo argu[ment] bel[owright] bN[ext] breakd[el] b[uffer] cabc[lear] cat[ch] ce[nter] cgete[xpr] che[ckpath] cmapc[lear] cNf[ile] comp[iler] cpf[ile] cw[indow] delm[arks] diffsplit dj[ump] earlier el[se] endf[unction] ex filetype fix[del] foldo[pen] grepa[dd] helpt[ags] if is[earch] k lad[dexpr] later lcl[ose] lf[ile] lg[etfile] l[ist] lmak[e] lne[xt] ln[oremap] lol[der] lr[ewind] lvimgrepa[dd] marks mks[ession] mod[e] nbkey nmapc[lear] omapc[lear] pc[lose] po[p] pre[serve] profd[el] ps[earch] ptl[ast] ptr[ewind] pyf[ile] quita[ll] red[o] res[ize] ri[ght] rubyf[ile] san[dbox] sbf[irst] sbN[ext] scripte[ncoding] setg[lobal] sh[ell] sla[st] smapc[lear] sN[ext] snoreme spelld[ump] spellu[ndo] sre[wind] startr[eplace] sts[elect] sus[pend] tab tabf[ind] tabnew tabp[revious] tags te[aroff] tl[ast] tN[ext] try una[bbreviate] unh[ide] ve[rsion] vimgrepa[dd] vne[w] winc[md] wn[ext] wqa[ll] X xmapc[lear] XMLns xunme
-syn keyword vimCommand contained abo[veleft] arge[dit] as[cii] bf[irst] bo[tright] breakl[ist] buffers caddb[uffer] cb[uffer] cex[pr] cg[etfile] checkt[ime] cnew[er] cnorea[bbrev] conf[irm] cp[revious] debugg[reedy] diffg[et] diffthis dl[ist] echoe[rr] elsei[f] en[dif] exi[t] fina[lly] fo[ld] for ha[rdcopy] hid[e] ij[ump] isp[lit] keepalt laddf[ile] lb[uffer] le[ft] lfir[st] lgr[ep] ll lm[ap] lN[ext] lo[adview] lop[en] ls lw[indow] mat[ch] mksp[ell] m[ove] new noh[lsearch] on[ly] ped[it] popu prev[ious] prof[ile] pta[g] ptn[ext] pts[elect] py[thon] r[ead] redr[aw] ret[ab] rightb[elow] ru[ntime] sa[rgument] sbl[ast] sbp[revious] scrip[tnames] setl[ocal] sign sl[eep] sme sni[ff] snoremenu spe[llgood] spellw[rong] sta[g] stj[ump] sun[hide] sv[iew] tabc[lose] tabfir[st] tabn[ext] tabr[ewind] tc[l] tf[irst] tm to[pleft] ts[elect] u[ndo] unlo[ckvar] vert[ical] vi[sual] vs[plit] windo wN[ext] w[rite] xa[ll] xme xn[oremap] xunmenu
-syn keyword vimCommand contained al[l] argg[lobal] bad[d] bl[ast] bp[revious] br[ewind] bun[load] cad[dexpr] cc cf[ile] c[hange] cla[st] cn[ext] col[der] con[tinue] cq[uit] delc[ommand] diffoff diffu[pdate] dr[op] echom[sg] em[enu] endt[ry] exu[sage] fin[d] foldc[lose] fu[nction] h[elp] his[tory] il[ist] iuna[bbrev] keepj[umps] lan[guage] lc[d] lefta[bove] lgetb[uffer] lgrepa[dd] lla[st] lmapc[lear] lnf[ile] loc[kmarks] lpf[ile] lt[ag] mak[e] menut[ranslate] mkvie[w] mzf[ile] n[ext] norea[bbrev] o[pen] pe[rl] popu[p] p[rint] promptf[ind] ptf[irst] ptN[ext] pu[t] qa[ll] rec[over] redraws[tatus] retu[rn] rub[y] rv[iminfo] sav[eas] sbm[odified] sbr[ewind] se[t] sf[ind] sil[ent] sm[agic] smenu sno[magic] sor[t] spelli[nfo] sp[lit] startg[replace] st[op] sunme syncbind tabd[o] tabl[ast] tabN[ext] tabs tcld[o] th[row] tm[enu] tp[revious] tu undoj[oin] up[date] vie[w] viu[sage] wa[ll] winp[os] wp[revious] ws[verb] x[it] xmenu xnoreme y[ank]
-syn keyword vimCommand contained arga[dd] argl[ocal] ba[ll] bm[odified] brea[k] bro[wse] bw[ipeout] caddf[ile] ccl[ose] cfir[st] changes cl[ist] cN[ext] colo[rscheme] cope[n] cr[ewind] d[elete] diffpatch dig[raphs] ds[earch] echon emenu* endw[hile] f[ile] fini[sh] folddoc[losed] go[to] helpf[ind] ia[bbrev] imapc[lear] j[oin] kee[pmarks]
+syn keyword vimCommand contained abc[lear] argdo argu[ment] bel[owright] bN[ext] breakd[el] b[uffer] caddb[uffer] cb[uffer] cex[pr] cg[etfile] checkt[ime] cnew[er] col[der] con[tinue] cq[uit] delc[ommand] diffoff diffu[pdate] dr[op] echom[sg] em[enu] endt[ry] exu[sage] fin[d] foldc[lose] fu[nction] ha[rdcopy] helpt[ags] if is[earch] ju[mps] kee[pmarks] lan[guage] lc[d] lefta[bove] lgetb[uffer] lgrepa[dd] lla[st] lmapc[lear] lnf[ile] loc[kmarks] lpf[ile] lt[ag] mak[e] menut[ranslate] mkvie[w] mzf[ile] n[ext] nu[mber] opt[ions] perld[o] pp[op] P[rint] promptr[epl] ptj[ump] ptp[revious] pw[d] q[uit] redi[r] reg[isters] rew[ind] rubyd[o] sal[l] sba[ll] sbn[ext] sb[uffer] setf[iletype] sfir[st] sim[alt] sm[ap] sn[ext] snor[emap] so[urce] spellr[epall] spr[evious] star[tinsert] stopi[nsert] sunmenu t tabe[dit] tabm[ove] tabo[nly] ta[g] tclf[ile] tj[ump] tn[ext] tr[ewind] tu[nmenu] undol[ist] verb[ose] vim[grep] vmapc[lear] wh[ile] win[size] wq wv[iminfo] xm[ap] XMLent xnoremenu
+syn keyword vimCommand contained abo[veleft] arge[dit] as[cii] bf[irst] bo[tright] breakl[ist] buffers cad[dexpr] cc cf[ile] c[hange] cla[st] cn[ext] colo[rscheme] cope[n] cr[ewind] d[elete] diffpatch dig[raphs] ds[earch] echon emenu* endw[hile] f[ile] fini[sh] folddoc[losed] go[to] h[elp] hid[e] ij[ump] isp[lit] k laddb[uffer] la[st] lch[dir] lex[pr] lgete[xpr] lh[elpgrep] lli[st] lnew[er] lNf[ile] lockv[ar] lp[revious] lv[imgrep] ma[rk] mk[exrc] mkv[imrc] mz[scheme] N[ext] omapc[lear] pc[lose] po[p] pre[serve] profd[el] ps[earch] ptl[ast] ptr[ewind] pyf[ile] quita[ll] red[o] res[ize] ri[ght] rubyf[ile] san[dbox] sbf[irst] sbN[ext] scripte[ncoding] setg[lobal] sh[ell] sla[st] smapc[lear] sN[ext] snoreme spelld[ump] spellu[ndo] sre[wind] startr[eplace] sts[elect] sus[pend] tab tabf[ind] tabnew tabp[revious] tags te[aroff] tl[ast] tN[ext] try una[bbreviate] unh[ide] ve[rsion] vimgrepa[dd] vne[w] winc[md] wn[ext] wqa[ll] X xmapc[lear] XMLns xunme
+syn keyword vimCommand contained al[l] argg[lobal] bad[d] bl[ast] bp[revious] br[ewind] bun[load] caddf[ile] ccl[ose] cfir[st] changes cl[ist] cN[ext] comc[lear] co[py] cuna[bbrev] delf[unction] diffpu[t] di[splay] dsp[lit] e[dit] endfo[r] ene[w] files fir[st] foldd[oopen] gr[ep] helpf[ind] his[tory] il[ist] iuna[bbrev] keepalt lad[dexpr] later lcl[ose] lf[ile] lg[etfile] l[ist] lmak[e] lne[xt] ln[oremap] lol[der] lr[ewind] lvimgrepa[dd] marks mks[ession] mod[e] nbkey nmapc[lear] on[ly] ped[it] popu prev[ious] prof[ile] pta[g] ptn[ext] pts[elect] py[thon] r[ead] redr[aw] ret[ab] rightb[elow] ru[ntime] sa[rgument] sbl[ast] sbp[revious] scrip[tnames] setl[ocal] sign sl[eep] sme sni[ff] snoremenu spe[llgood] spellw[rong] sta[g] stj[ump] sun[hide] sv[iew] tabc[lose] tabfir[st] tabn[ext] tabr[ewind] tc[l] tf[irst] tm to[pleft] ts[elect] u[ndo] unlo[ckvar] vert[ical] vi[sual] vs[plit] windo wN[ext] w[rite] xa[ll] xme xn[oremap] xunmenu
+syn keyword vimCommand contained arga[dd] argl[ocal] ba[ll] bm[odified] brea[k] bro[wse] bw[ipeout] cal[l] cd cgetb[uffer] chd[ir] clo[se] cnf[ile] comp[iler] cpf[ile] cw[indow] delm[arks] diffsplit dj[ump] earlier el[se] endf[unction] ex filetype fix[del] foldo[pen] grepa[dd] helpg[rep] iabc[lear] imapc[lear] j[oin] keepj[umps] laddf[ile] lb[uffer] le[ft] lfir[st] lgr[ep] ll lm[ap] lN[ext] lo[adview] lop[en] ls lw[indow] mat[ch] mksp[ell] m[ove] new noh[lsearch] o[pen] pe[rl] popu[p] p[rint] promptf[ind] ptf[irst] ptN[ext] pu[t] qa[ll] rec[over] redraws[tatus] retu[rn] rub[y] rv[iminfo] sav[eas] sbm[odified] sbr[ewind] se[t] sf[ind] sil[ent] sm[agic] smenu sno[magic] sor[t] spelli[nfo] sp[lit] startg[replace] st[op] sunme syncbind tabd[o] tabl[ast] tabN[ext] tabs tcld[o] th[row] tm[enu] tp[revious] tu undoj[oin] up[date] vie[w] viu[sage] wa[ll] winp[os] wp[revious] ws[verb] x[it] xmenu xnoreme y[ank]
+syn keyword vimCommand contained argd[elete] ar[gs] bd[elete] bn[ext] breaka[dd] bufdo cabc[lear] cat[ch] ce[nter] cgete[xpr] che[ckpath] cmapc[lear] cNf[ile] conf[irm] cp[revious] debugg[reedy] diffg[et] diffthis dl[ist] echoe[rr] elsei[f] en[dif] exi[t] fina[lly] fo[ld] for
syn match vimCommand contained "\<z[-+^.=]"
" vimOptions are caught only when contained in a vimSet {{{2
@@ -292,6 +292,10 @@ syn match vimSetMod contained "&vim\|[!&]\|all&"
" ===
syn keyword vimLet let unl[et] skipwhite nextgroup=vimVar
+" Abbreviations {{{2
+" =============
+syn keyword vimAbb ab[breviate] ca[bbrev] inorea[bbrev] cnorea[bbrev] norea[bbrev] ia[bbrev] skipwhite nextgroup=vimMapMod,vimMapLhs
+
" Autocmd {{{2
" =======
syn match vimAutoEventList contained "\(!\s\+\)\=\(\a\+,\)*\a\+" contains=vimAutoEvent nextgroup=vimAutoCmdSpace
@@ -664,6 +668,7 @@ if !exists("g:vimsyn_noerror")
hi def link vimBufnrWarn vimWarn
endif
+hi def link vimAbb vimCommand
hi def link vimAddress vimMark
hi def link vimAugroupKey vimCommand
hi def link vimAutoCmdOpt vimOption
diff --git a/runtime/syntax/yaml.vim b/runtime/syntax/yaml.vim
index abda3f8b4..9ebab7068 100644
--- a/runtime/syntax/yaml.vim
+++ b/runtime/syntax/yaml.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: YAML (YAML Ain't Markup Language)
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2007-06-27
+" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
@@ -10,140 +10,53 @@ endif
let s:cpo_save = &cpo
set cpo&vim
-syn keyword yamlTodo
- \ contained
- \ TODO
- \ FIXME
- \ XXX
- \ NOTE
-
-syn region yamlComment
- \ display
- \ oneline
- \ start='%(^|s)#'
- \ end='$'
- \ contains=yamlTodo,@Spell
-
-syn match yamlNodeProperty
- \ '!\%(![^\\^% \t]\+\|[^!][^:/ \t]*\)'
-
-syn match yamlAnchor
- \ '&.+'
-
-syn match yamlAlias
- \ '*.+'
-
-syn match yamlDelimiter
- \ '[-,:]'
-syn match yamlBlock
- \ '[[]{}>|]'
-syn match yamlOperator
- \ '[?+-]'
-syn match yamlKey
- \ 'w+(s+w+)*zes*:'
-
-syn region yamlString
- \ start=+"+
- \ skip=+\"+
- \ end=+"+
- \ contains=yamlEscape
-syn region yamlString
- \ start=+'+
- \ skip=+''+
- \ end=+'+
- \ contains=yamlSingleEscape
-syn match yamlEscape
- \ contained
- \ display
- \ +\[\"abefnrtv^0_ NLP]+
-syn match yamlEscape
- \ contained
- \ display
- \ '\xx{2}'
-syn match yamlEscape
- \ contained
- \ display
- \ '\ux{4}'
-syn match yamlEscape
- \ contained
- \ display
- \ '\Ux{8}'
+syn keyword yamlTodo contained TODO FIXME XXX NOTE
+syn region yamlComment display oneline start='\%(^\|\s\)#' end='$'
+ \ contains=yamlTodo,@Spell
+
+syn match yamlNodeProperty '!\%(![^\\^% ]\+\|[^!][^:/ ]*\)'
+
+syn match yamlAnchor '&.\+'
+
+syn match yamlAlias '\*.\+'
+
+syn match yamlDelimiter '[-,:]'
+syn match yamlBlock '[\[\]{}>|]'
+syn match yamlOperator '[?+-]'
+syn match yamlKey '\w\+\(\s\+\w\+\)*\ze\s*:'
+
+syn region yamlString start=+"+ skip=+\\"+ end=+"+
+ \ contains=yamlEscape
+syn region yamlString start=+'+ skip=+''+ end=+'+
+ \ contains=yamlSingleEscape
+syn match yamlEscape contained display +\\[\\"abefnrtv^0_ NLP]+
+syn match yamlEscape contained display '\\x\x\{2}'
+syn match yamlEscape contained display '\\u\x\{4}'
+syn match yamlEscape contained display '\\U\x\{8}'
" TODO: how do we get 0x85, 0x2028, and 0x2029 into this?
-" XXX: Em, what is going on here? This can't be right. Leave out until we
-" figure out what this is meant to do.
-"syn match yamlEscape
-" \ contained
-" \ display
-" \ '\%(rn|[rn])'
-syn match yamlSingleEscape
- \ contained
- \ display
- \ +''+
+syn match yamlEscape display '\\\%(\r\n\|[\r\n]\)'
+syn match yamlSingleEscape contained display +''+
" TODO: sexagecimal and fixed (20:30.15 and 1,230.15)
-syn match yamlNumber
- \ display
- \ '\<[+-]\=\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\='
-syn match yamlNumber
- \ display
- \ '0o+'
-syn match yamlNumber
- \ display
- \ '0xx+'
-syn match yamlNumber
- \ display
- \ '([+-]=[iI]nf)'
-syn match yamlNumber
- \ display
- \ '(NaN)'
-
-syn match yamlConstant
- \ '<[~yn]>'
-syn keyword yamlConstant
- \ true
- \ True
- \ TRUE
- \ false
- \ False
- \ FALSE
-syn keyword yamlConstant
- \ yes
- \ Yes
- \ on
- \ ON
- \ no
- \ No
- \ off
- \ OFF
-syn keyword yamlConstant
- \ null
- \ Null
- \ NULL
- \ nil
- \ Nil
- \ NIL
-
-syn match yamlTimestamp
- \ '\d\d\d\d-\%(1[0-2]\|\d\)-\%(3[0-2]\|2\d\|1\d\|\d\)\%( \%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d [+-]\%([01]\d\|2[0-3]\):[0-5]\d\|t\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d[+-]\%([01]\d\|2[0-3]\):[0-5]\d\|T\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\dZ\)\='
-
-syn region yamlDocumentHeader
- \ start='---'
- \ end='$'
- \ contains=yamlDirective
-syn match yamlDocumentEnd
- \ '\.\.\.'
-
-syn match yamlDirective
- \ contained
- \ '%[^:]+:.+'
-
-syn match yamlIndentation
- \ '^s*'
- \ contains=yamlIndentationError
-
-syn match yamlIndentationError
- \ 't'
+syn match yamlNumber display
+ \ '\<[+-]\=\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\='
+syn match yamlNumber display '0\o\+'
+syn match yamlNumber display '0x\x\+'
+syn match yamlNumber display '([+-]\=[iI]nf)'
+syn match yamlNumber display '(NaN)'
+
+syn match yamlConstant '\<[~yn]\>'
+syn keyword yamlConstant true True TRUE false False FALSE
+syn keyword yamlConstant yes Yes on ON no No off OFF
+syn keyword yamlConstant null Null NULL nil Nil NIL
+
+syn match yamlTimestamp '\d\d\d\d-\%(1[0-2]\|\d\)-\%(3[0-2]\|2\d\|1\d\|\d\)\%( \%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d [+-]\%([01]\d\|2[0-3]\):[0-5]\d\|t\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d[+-]\%([01]\d\|2[0-3]\):[0-5]\d\|T\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\dZ\)\='
+
+syn region yamlDocumentHeader start='---' end='$' contains=yamlDirective
+syn match yamlDocumentEnd '\.\.\.'
+
+syn match yamlDirective contained '%[^:]\+:.\+'
hi def link yamlTodo Todo
hi def link yamlComment Comment
@@ -163,7 +76,6 @@ hi def link yamlSingleEscape SpecialChar
hi def link yamlNumber Number
hi def link yamlConstant Constant
hi def link yamlTimestamp Number
-hi def link yamlIndentationError Error
let b:current_syntax = "yaml"
diff --git a/runtime/syntax/zsh.vim b/runtime/syntax/zsh.vim
index eb19eba56..ecd6f058b 100644
--- a/runtime/syntax/zsh.vim
+++ b/runtime/syntax/zsh.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: Zsh shell script
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2007-06-17
+" Latest Revision: 2008-07-17
if exists("b:current_syntax")
finish
@@ -34,7 +34,9 @@ syn keyword zshDelimiter do done
syn keyword zshConditional if then elif else fi case in esac select
-syn keyword zshRepeat for while until repeat foreach
+syn keyword zshRepeat while until repeat
+
+syn keyword zshRepeat for foreach nextgroup=zshVariable skipwhite
syn keyword zshException always
@@ -49,19 +51,30 @@ syn match zshRedir '\d\=\(<\|<>\|<<<\|<&\s*[0-9p-]\=\)'
syn match zshRedir '\d\=\(>\|>>\|>&\s*[0-9p-]\=\|&>\|>>&\|&>>\)[|!]\='
syn match zshRedir '|&\='
-syn region zshHereDoc matchgroup=zshRedir start='<<\s*\z(\S*\)'
- \ end='^\z1\>' contains=@zshSubst
-syn region zshHereDoc matchgroup=zshRedir start='<<-\s*\z(\S*\)'
- \ end='^\s*\z1\>' contains=@zshSubst
syn region zshHereDoc matchgroup=zshRedir
- \ start=+<<\s*\(["']\)\z(\S*\)\1+ end='^\z1\>'
+ \ start='<\@<!<<\s*\z([^<]\S*\)'
+ \ end='^\z1\>'
+ \ contains=@zshSubst
+syn region zshHereDoc matchgroup=zshRedir
+ \ start='<\@<!<<\s*\\\z(\S\+\)'
+ \ end='^\z1\>'
+ \ contains=@zshSubst
+syn region zshHereDoc matchgroup=zshRedir
+ \ start='<\@<!<<-\s*\\\=\z(\S\+\)'
+ \ end='^\s*\z1\>'
+ \ contains=@zshSubst
+syn region zshHereDoc matchgroup=zshRedir
+ \ start=+<\@<!<<\s*\(["']\)\z(\S\+\)\1+
+ \ end='^\z1\>'
syn region zshHereDoc matchgroup=zshRedir
- \ start=+<<-\s*\(["']\)\z(\S*\)\1+
+ \ start=+<\@<!<<-\s*\(["']\)\z(\S\+\)\1+
\ end='^\s*\z1\>'
-syn match zshVariable '\<\h\w*\ze+\=='
+syn match zshVariable '\<\h\w*' contained
+
+syn match zshVariableDef '\<\h\w*\ze+\=='
" XXX: how safe is this?
-syn region zshVariable oneline
+syn region zshVariableDef oneline
\ start='\$\@<!\<\h\w*\[' end='\]\ze+\=='
\ contains=@zshSubst
@@ -87,7 +100,7 @@ endif
if s:zsh_syntax_variables =~ 'all'
syn match zshDeref '\$[=^~]*[#+]*\h\w*\>'
else
- syn match zshDeref transparent '\$[=^~]*[#+]*\h\w*\>'
+ syn match zshDeref transparent contains=NONE '\$[=^~]*[#+]*\h\w*\>'
endif
syn match zshCommands '\%(^\|\s\)[.:]\ze\s'
@@ -119,6 +132,7 @@ syn match zshNumber '[+-]\=\<0\o\+\>'
syn match zshNumber '[+-]\=\d\+#[-+]\=\w\+\>'
syn match zshNumber '[+-]\=\d\+\.\d\+\>'
+" TODO: $[...] is the same as $((...)), so add that as well.
syn cluster zshSubst contains=zshSubst,zshOldSubst,zshMathSubst
syn region zshSubst matchgroup=zshSubstDelim transparent
\ start='\$(' skip='\\)' end=')' contains=TOP
@@ -131,10 +145,14 @@ syn region zshMathSubst matchgroup=zshSubstDelim transparent
syn region zshBrackets contained transparent start='{' skip='\\}'
\ end='}'
syn region zshSubst matchgroup=zshSubstDelim start='\${' skip='\\}'
- \ end='}' contains=@zshSubst,zshBrackets,zshQuoted
+ \ end='}' contains=@zshSubst,zshBrackets,zshQuoted,zshString
syn region zshOldSubst matchgroup=zshSubstDelim start=+`+ skip=+\\`+
\ end=+`+ contains=TOP,zshOldSubst
+syn sync minlines=50
+syn sync match zshHereDocSync grouphere NONE '<<-\=\s*\%(\\\=\S\+\|\(["']\)\S\+\1\)'
+syn sync match zshHereDocEndSync groupthere NONE '^\s*EO\a\+\>'
+
hi def link zshTodo Todo
hi def link zshComment Comment
hi def link zshPreProc PreProc
@@ -163,6 +181,7 @@ else
hi def link zshRedir None
endif
hi def link zshVariable None
+hi def link zshVariableDef zshVariable
hi def link zshDereferencing PreProc
if s:zsh_syntax_variables =~ 'short\|all'
hi def link zshShortDeref zshDereferencing
diff --git a/runtime/tools/vimm b/runtime/tools/vimm
index 042c4a022..7b84cb255 100755
--- a/runtime/tools/vimm
+++ b/runtime/tools/vimm
@@ -1,6 +1,6 @@
#!/bin/sh
# enable DEC locator input model on remote terminal
-echo "\033[1;2'z\033[1;3'{\c"
+printf "\033[1;2'z\033[1;3'{\c"
vim "$@"
# disable DEC locator input model on remote terminal
-echo "\033[2;4'{\033[0'z\c"
+printf "\033[2;4'{\033[0'z\c"
diff --git a/runtime/tools/vimspell.sh b/runtime/tools/vimspell.sh
index b405b7ad5..d336fe6c3 100755
--- a/runtime/tools/vimspell.sh
+++ b/runtime/tools/vimspell.sh
@@ -11,6 +11,7 @@
#
# Neil Schemenauer <nascheme@ucalgary.ca>
# March 1999
+# updated 2008 Jul 17 by Bram
#
# Safe method for the temp file by Javier Fernández-Sanguino_Peña
@@ -22,7 +23,7 @@ OUTFILE=`mktemp -t vimspellXXXXXX || tempfile -p vimspell || echo none`
# create a file in the safest way possible.
if test "$OUTFILE" = none; then
OUTFILE=$tmp/vimspell$$
- [ -e $OUTFILE ] && { echo "Cannot use temporary file $OUTFILE, it already exists!; exit 1 ; }
+ [ -e $OUTFILE ] && { echo "Cannot use temporary file $OUTFILE, it already exists!"; exit 1 ; }
(umask 077; touch $OUTFILE)
fi
# Note the copy of vimspell cannot be deleted on exit since it is
diff --git a/runtime/tutor/tutor.vim b/runtime/tutor/tutor.vim
index 81e5a1919..11584d5b7 100644
--- a/runtime/tutor/tutor.vim
+++ b/runtime/tutor/tutor.vim
@@ -1,8 +1,9 @@
" Vim tutor support file
" Author: Eduardo F. Amatria <eferna1@platea.pntic.mec.es>
-" Last Change: 2008 Jun 21
+" Maintainer: Bram Moolenaar
+" Last Change: 2008 Jul 21
-" This small source file is used for detecting if a translation of the
+" This Vim script is used for detecting if a translation of the
" tutor file exist, i.e., a tutor.xx file, where xx is the language.
" If the translation does not exist, or no extension is given,
" it defaults to the english version.
@@ -160,7 +161,7 @@ endif
" If 'encoding' is utf-8 s:ext must end in utf-8.
if &enc == 'utf-8' && s:ext !~ '\.utf-8'
- s:ext .= '.utf-8'
+ let s:ext .= '.utf-8'
endif
" 2. Build the name of the file: