summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--runtime/autoload/netrw.vim177
-rw-r--r--runtime/doc/pi_netrw.txt12
-rw-r--r--runtime/doc/syntax.txt15
-rw-r--r--runtime/doc/tabpage.txt9
-rw-r--r--runtime/doc/tags6
-rw-r--r--runtime/doc/todo.txt19
-rw-r--r--runtime/doc/version7.txt12
-rw-r--r--runtime/indent/vhdl.vim96
-rw-r--r--runtime/syntax/abap.vim53
-rw-r--r--runtime/syntax/apache.vim246
-rw-r--r--runtime/syntax/help.vim12
-rw-r--r--runtime/syntax/kconfig.vim4
-rw-r--r--runtime/syntax/lifelines.vim180
-rw-r--r--runtime/syntax/sh.vim18
-rw-r--r--src/diff.c12
-rw-r--r--src/edit.c20
-rw-r--r--src/ex_getln.c5
-rw-r--r--src/misc1.c157
-rw-r--r--src/option.c8
-rw-r--r--src/os_mswin.c21
-rw-r--r--src/testdir/test3.in39
-rw-r--r--src/testdir/test3.ok39
-rw-r--r--src/version.h6
23 files changed, 655 insertions, 511 deletions
diff --git a/runtime/autoload/netrw.vim b/runtime/autoload/netrw.vim
index 7f4bd64e4..1a865fabe 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 a network
" AUTOLOAD PORTION
-" Date: Apr 06, 2006
-" Version: 86
+" Date: Apr 12, 2006
+" Version: 87
" Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
" Copyright: Copyright (C) 1999-2005 Charles E. Campbell, Jr. {{{1
@@ -23,7 +23,7 @@
if &cp || exists("g:loaded_netrw")
finish
endif
-let g:loaded_netrw = "v86"
+let g:loaded_netrw = "v87"
if v:version < 700
echohl WarningMsg | echo "***netrw*** you need vim version 7.0 or later for version ".g:loaded_netrw." of netrw" | echohl None
finish
@@ -1155,7 +1155,7 @@ fun! s:NetBrowse(dirname)
" set up menus
let b:netrw_browser_active= 1
- call s:NetMenu()
+ call s:NetMenu(1)
" make this buffer modifiable
setlocal ma nonu nowrap
@@ -1460,6 +1460,7 @@ fun! s:NetBrowse(dirname)
else
exe 'silent keepjumps '.w:netrw_bannercnt.',$sort!'
endif
+ " remove priority pattern prefix
exe 'silent keepjumps '.w:netrw_bannercnt.',$s/^\d\{3}\///e'
endif
if w:netrw_longlist == 1
@@ -1494,14 +1495,17 @@ fun! s:NetBrowseChgDir(dirname,newdir)
if newdir !~ '[\/]$'
" handling a file
let dirname= dirname.newdir
+ let didfile= 0
if g:netrw_browse_split == 1
new
wincmd _
elseif g:netrw_browse_split == 2
rightb vert new
wincmd |
+ else
+ " handling a file, didn't split, so possibly remove menu
+ call s:NetMenu(0)
endif
- call s:NetMenu()
" call Decho("handling a file: dirname<".dirname.">")
elseif newdir == './'
@@ -2567,7 +2571,7 @@ fun! netrw#NetObtain(...)
endfun
" ---------------------------------------------------------------------
-" NetPrevWinOpen: opoen file/directory in previous window. {{{2
+" NetPrevWinOpen: open file/directory in previous window. {{{2
" If there's only one window, then the window will first be split.
fun! s:NetPrevWinOpen(islocal)
" call Dfunc("NetPrevWinOpen(islocal=".a:islocal.")")
@@ -2644,69 +2648,81 @@ endfun
" ---------------------------------------------------------------------
" NetMenu: generates the menu for gvim and netrw {{{2
-fun! s:NetMenu()
+fun! s:NetMenu(domenu)
if has("menu") && has("gui_running") && &go =~ 'm'
-" call Dfunc("NetMenu()")
- if !exists("s:netrw_menu_enabled")
+" call Dfunc("NetMenu(domenu=".a:domenu.")")
+ if !exists("s:netrw_menu_enabled") && a:domenu
+" call Decho("initialize menu")
let s:netrw_menu_enabled= 1
- if !exists("g:DrChipTopLvlMenu")
- let g:DrChipTopLvlMenu= "DrChip."
+ if !exists("g:NetrwTopLvlMenu")
+ let g:NetrwTopLvlMenu= "Netrw."
+ endif
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Help<tab><F1> <F1>'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Apply\ Special\ Viewer<tab>x x'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Bookmark\ Current\ Directory<tab>b Nb'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Go\ Up\ Directory<tab>- -'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Goto\ Bookmarked\ Directory<tab>B NB'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Change\ To\ Recently\ Used\ Directory<tab>u u'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Change\ To\ Subsequently\ Used\ Directory<tab>U U'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Delete\ File/Directory<tab>D D'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Edit\ File\ Hiding\ List<tab>'."<ctrl-h> \<c-h>"
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Edit\ File/Directory<tab><cr> '."\<cr>"
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Edit\ File/Directory,\ New\ Window<tab>o o'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Edit\ File/Directory,\ New\ Vertical\ Window<tab>v v'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'List\ Bookmarks\ and\ History<tab>q q'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Listing\ Style\ (thin-long-wide)<tab>i i'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Make\ Subdirectory<tab>d d'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Normal-Hide-Show<tab>a a'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Obtain\ File<tab>O O'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Preview\ File/Directory<tab>p p'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Previous\ Window\ Browser<tab>P P'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Refresh\ Listing<tab>'."<ctrl-l> \<c-l>"
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Rename\ File/Directory<tab>R R'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Reverse\ Sorting\ Order<tab>'."r r"
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Select\ Sorting\ Style<tab>s s'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Sorting\ Sequence\ Edit<tab>S S'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Set\ Current\ Directory<tab>c c'
+ exe 'silent! menu '.g:NetrwTopLvlMenu.'Settings/Options<tab>:NetrwSettings '.":NetrwSettings\<cr>"
+ elseif !a:domenu
+ let s:netrwcnt = 0
+ let curwin = winnr()
+ windo if getline(2) =~ "Netrw" | let s:netrwcnt= s:netrwcnt + 1 | endif
+ exe curwin."wincmd w"
+
+ if s:netrwcnt <= 1
+" call Decho("clear menus")
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Help'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Apply\ Special\ Viewer'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Bookmark\ Current\ Directory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Go\ Up\ Directory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Goto\ Bookmarked\ Directory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Change\ To\ Recently\ Used\ Directory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Change\ To\ Subsequently\ Used\ Directory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Delete\ File/Directory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Edit\ File/Directory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Edit\ File/Directory,\ New\ Window'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Edit\ File/Directory,\ New\ Vertical\ Window'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Edit\ File\ Hiding\ List'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Edit\ File'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Enter\ File/Directory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Enter\ File/Directory\ (vertical\ split)'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'List\ Bookmarks\ and\ History'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Listing\ Style\ (thin-long-wide)'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Make\ Subdirectory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Normal-Hide-Show'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Obtain\ File'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Preview\ File/Directory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Previous\ Window\ Browser'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Refresh\ Listing'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Rename\ File/Directory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Reverse\ Sorting\ Order'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Select\ Sorting\ Style'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Sorting\ Sequence\ Edit'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Set\ Current\ Directory'
+ exe 'silent! unmenu '.g:NetrwTopLvlMenu.'Settings/Options'
+ unlet s:netrw_menu_enabled
endif
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Help<tab>? ?'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Apply\ Special\ Viewer<tab>x x'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Bookmark\ Current\ Directory<tab>b Nb'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Go\ Up\ Directory<tab>- -'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Goto\ Bookmarked\ Directory<tab>B NB'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Change\ To\ Recently\ Used\ Directory<tab>u u'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Change\ To\ Subsequently\ Used\ Directory<tab>U U'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Delete\ File/Directory<tab>D D'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File\ Hiding\ List<tab>'."<ctrl-h> \<c-h>"
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File/Directory<tab><cr> '."\<cr>"
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File/Directory,\ New\ Window<tab>o o'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File/Directory,\ New\ Vertical\ Window\ <tab>v v'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.List\ Bookmarks\ and\ History<tab>q q'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Listing\ Style\ (thin-long-wide)<tab>i i'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Make\ Subdirectory<tab>d d'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Normal-Hide-Show<tab>a a'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Obtain\ File<tab>O O'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Preview\ File/Directory<tab>p p'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Previous\ Window\ Browser<tab>P P'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Refresh\ Listing<tab>'."<ctrl-l> \<c-l>"
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Rename\ File/Directory<tab>R R'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Reverse\ Sorting\ Order<tab>'."r r"
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Select\ Sorting\ Style<tab>s s'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Sorting\ Sequence\ Edit<tab>S S'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Set\ Current\ Directory<tab>c c'
- exe 'silent! menu '.g:DrChipTopLvlMenu.'Netrw.Settings/Options<tab>:NetrwSettings '.":NetrwSettings\<cr>"
- else
-" call Decho("clear menus")
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Help'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Apply\ Special\ Viewer'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Bookmark\ Current\ Directory'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Go\ Up\ Directory'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Goto\ Bookmarked\ Directory'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Change\ To\ Recently\ Used\ Directory'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Change\ To\ Subsequently\ Used\ Directory'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Delete\ File/Directory'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File\ Hiding\ List'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Edit\ File'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Enter\ File/Directory'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Enter\ File/Directory\ (vertical\ split)'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.List\ Bookmarks\ and\ History'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Listing\ Style\ (thin-long-wide)'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Make\ Subdirectory'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Normal-Hide-Show'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Obtain\ File'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Preview\ File'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Previous\ Window\ Browser'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Refresh\ Listing'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Rename\ File/Directory'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Reverse\ Sorting\ Order'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Select\ Sorting\ Style'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Sorting\ Sequence\ Edit'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Set\ Current\ Directory'
- exe 'silent! unmenu '.g:DrChipTopLvlMenu.'Netrw.Settings/Options'
endif
" call Dret("NetMenu")
endif
@@ -2766,7 +2782,7 @@ fun! netrw#DirBrowse(dirname)
" set up menus
let b:netrw_browser_active= 1
- call s:NetMenu()
+ call s:NetMenu(1)
" find buffer number of buffer named precisely the same as a:dirname
let bufnum= bufnr(escape(a:dirname,'\'))
@@ -2793,7 +2809,7 @@ fun! netrw#DirBrowse(dirname)
else
exe "keepalt b ".bufnum
if exists("s:last_sort_by") && g:netrw_sort_by == s:last_sort_by
- if getline(2) =~ '^" Directory Listing '
+ if getline(2) =~ '^" Netrw Directory Listing '
if !g:netrw_keepdir
" call Decho("change directory: cd ".b:netrw_curdir)
exe 'cd '.escape(b:netrw_curdir,s:netrw_cd_escape)
@@ -2911,7 +2927,7 @@ fun! netrw#DirBrowse(dirname)
" call Decho("set up banner")
keepjumps put ='\" ============================================================================'
keepjumps 1d
- keepjumps put ='\" Directory Listing (netrw '.g:loaded_netrw.')'
+ keepjumps put ='\" Netrw Directory Listing (netrw '.g:loaded_netrw.')'
keepjumps put ='\" '.b:netrw_curdir
let w:netrw_bannercnt= 3
@@ -2979,6 +2995,7 @@ fun! netrw#DirBrowse(dirname)
exe 'silent keepjumps '.w:netrw_bannercnt.',$sort!'
endif
endif
+ " remove priority pattern prefix
exe 'silent keepjumps '.w:netrw_bannercnt.',$s/^\d\{3}\///e'
else
@@ -3025,12 +3042,12 @@ fun! s:LocalBrowseList()
let dirname = escape(b:netrw_curdir,s:netrw_glob_escape)
let dirnamelen = strlen(b:netrw_curdir)
let filelist = glob(dirname."/*")
-" call Decho("glob(dirname<".dirname.">,*)=".filelist)
+" call Decho("glob(dirname<".dirname."/.*>)=".filelist)
if filelist != ""
let filelist= filelist."\n"
endif
let filelist= filelist.glob(dirname."/.*")
-" call Decho("glob(dirname<".dirname.">,.*)=".glob(dirname.".*"))
+" call Decho("glob(dirname<".dirname."/.*>)=".glob(dirname.".*"))
" if the directory name includes a "$", and possibly other characters,
" the glob() doesn't include "." and ".." entries.
@@ -3145,9 +3162,11 @@ fun! s:LocalBrowseChgDir(dirname,newdir,...)
elseif g:netrw_browse_split == 2
rightb vert new
wincmd |
+ else
+ " handling a file, didn't split, so possibly remove menu
+ call s:NetMenu(0)
endif
exe "e! ".escape(dirname,s:netrw_cd_escape)
- call s:NetMenu()
set ma nomod
endif
@@ -3177,8 +3196,9 @@ endfun
" on the chance that s/he removed/created a file/directory with it.
fun! s:LocalBrowseShellCmdRefresh()
" call Dfunc("LocalBrowseShellCmdRefresh() browselist=".string(s:netrw_browselist))
- " go through all buffers,
- " including unlisted (which is why I can't use bufdo)
+ " GO through all buffers on netrw_browselist (ie. just local-netrw buffers):
+ " | refresh any netrw window
+ " | wipe out any non-displaying netrw buffer
let curwin = winnr()
let ibl = 0
for ibuf in s:netrw_browselist
@@ -4098,11 +4118,12 @@ fun! s:SetSort()
let priority = priority + 1
endwhile
- " I'm afraid that I don't remember why the following line was present. It
- " has something to do with priority -- items that satisfy a two or more
- " priority patterns get preceded by two or more priority patterns: ###/
- " So, I want to remove priority patterns, but not ###/ directory names.
- " Following pattern retains just one priority pattern.
+ " Following line associated with priority -- items that satisfy a priority
+ " pattern get prefixed by ###/ which permits easy sorting by priority.
+ " Sometimes files can satisfy multiple priority patterns -- only the latest
+ " priority pattern needs to be retained. So, at this point, these excess
+ " priority prefixes need to be removed, but not directories that happen to
+ " be just digits themselves.
exe 'silent keepjumps '.w:netrw_bannercnt.',$s/^\(\d\{3}\/\)\%(\d\{3}\/\)\+\ze./\1/e'
" call Dret("SetSort")
diff --git a/runtime/doc/pi_netrw.txt b/runtime/doc/pi_netrw.txt
index 5ee16fc23..092704975 100644
--- a/runtime/doc/pi_netrw.txt
+++ b/runtime/doc/pi_netrw.txt
@@ -1,4 +1,4 @@
-*pi_netrw.txt* For Vim version 7.0d. Last change: Apr 06, 2006
+*pi_netrw.txt* For Vim version 7.0d. Last change: Apr 12, 2006
VIM REFERENCE MANUAL by Charles E. Campbell, Jr.
@@ -847,11 +847,10 @@ NETRW BROWSER VARIABLES *netrw-browse-var*
*g:netrw_winsize* specify initial size of new o/v windows
default: ""
- *g:DrChipTopLvlMenu* This variable specifies the top level
- submenu name; by default, its "DrChip.".
- If you wish to change this, do so in your
- .vimrc. It affects all of my plugins which
- have menus.
+ *g:NetrwTopLvlMenu* This variable specifies the top level
+ menu name; by default, its "Netrw.". If
+ you wish to change this, do so in your
+ .vimrc.
INTRODUCTION TO DIRECTORY BROWSING *netrw-browse-intro*
@@ -1448,6 +1447,7 @@ which is loaded automatically at startup (assuming :set nocp).
==============================================================================
11. History *netrw-history* {{{1
+ v87: * bug fix -- menus were partially disappearing
v85: * bug fix -- missing an endif
* bug fix -- handles spaces in names and directories when using
ftp-based browsing
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index a085860b6..8c0b79c9b 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -2316,22 +2316,25 @@ If none of these cases pertain, then the first line of the file is examined
(ex. /bin/sh /bin/ksh /bin/bash). If the first line specifies a shelltype,
then that shelltype is used. However some files (ex. .profile) are known to
be shell files but the type is not apparent. Furthermore, on many systems
-sh is symbolically linked to "bash" (linux) or "ksh" (posix).
+sh is symbolically linked to "bash" (Linux, Windows+cygwin) or "ksh" (Posix).
One may specify a global default by instantiating one of the following three
variables in your <.vimrc>:
ksh: >
- let is_kornshell = 1
+ let g:is_kornshell = 1
+< posix: (using this is the same as setting is_kornshell to 1) >
+ let g:is_posix = 1
< bash: >
- let is_bash = 1
-< sh: >
- let is_sh = 1
+ let g:is_bash = 1
+< sh: (default) Borne shell >
+ let g:is_sh = 1
If there's no "#! ..." line, and the user hasn't availed himself/herself of a
default sh.vim syntax setting as just shown, then syntax/sh.vim will assume
the Borne shell syntax. No need to quote RFCs or market penetration
-statistics in error reports, please.
+statistics in error reports, please -- just select the default version of
+the sh your system uses in your <.vimrc>.
If, in your <.vimrc>, you set >
let g:sh_fold_enabled= 1
diff --git a/runtime/doc/tabpage.txt b/runtime/doc/tabpage.txt
index 43b05b324..b775bacf9 100644
--- a/runtime/doc/tabpage.txt
+++ b/runtime/doc/tabpage.txt
@@ -1,4 +1,4 @@
-*tabpage.txt* For Vim version 7.0d. Last change: 2006 Apr 09
+*tabpage.txt* For Vim version 7.0d. Last change: 2006 Apr 13
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -124,11 +124,12 @@ next tab page. |'tabline'|
:tabn[ext] *:tabn* *:tabnext* *gt*
gt *CTRL-<PageDown>* *<C-PageDown>*
-<C-PageDown> Go to the next tab page. Wraps around from the last to the
+<C-PageDown> *i_CTRL-<PageDown>* *i_<C-PageDown>*
+ Go to the next tab page. Wraps around from the last to the
first one.
-:tabn[ext] {count}
-{count}gt *CTRL-<PageUp>* *<C-PageUp>*
+:tabn[ext] {count} *CTRL-<PageUp>* *<C-PageUp>*
+{count}gt *i_CTRL-<PageUp>* *i_<C-PageUp>*
<C-PageUp> Go to tab page {count}. The first tab page has number one.
diff --git a/runtime/doc/tags b/runtime/doc/tags
index a16484982..5f1b67dc2 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -5367,7 +5367,7 @@ g, motion.txt /*g,*
g- undo.txt /*g-*
g0 motion.txt /*g0*
g8 various.txt /*g8*
-g:DrChipTopLvlMenu pi_netrw.txt /*g:DrChipTopLvlMenu*
+g:NetrwTopLvlMenu pi_netrw.txt /*g:NetrwTopLvlMenu*
g:netrw_alto pi_netrw.txt /*g:netrw_alto*
g:netrw_altv pi_netrw.txt /*g:netrw_altv*
g:netrw_browse_split pi_netrw.txt /*g:netrw_browse_split*
@@ -5730,6 +5730,8 @@ i_<BS> insert.txt /*i_<BS>*
i_<C-End> insert.txt /*i_<C-End>*
i_<C-Home> insert.txt /*i_<C-Home>*
i_<C-Left> insert.txt /*i_<C-Left>*
+i_<C-PageDown> tabpage.txt /*i_<C-PageDown>*
+i_<C-PageUp> tabpage.txt /*i_<C-PageUp>*
i_<C-Right> insert.txt /*i_<C-Right>*
i_<CR> insert.txt /*i_<CR>*
i_<Del> insert.txt /*i_<Del>*
@@ -5757,6 +5759,8 @@ i_<S-Up> insert.txt /*i_<S-Up>*
i_<Tab> insert.txt /*i_<Tab>*
i_<Up> insert.txt /*i_<Up>*
i_BS insert.txt /*i_BS*
+i_CTRL-<PageDown> tabpage.txt /*i_CTRL-<PageDown>*
+i_CTRL-<PageUp> tabpage.txt /*i_CTRL-<PageUp>*
i_CTRL-@ insert.txt /*i_CTRL-@*
i_CTRL-A insert.txt /*i_CTRL-A*
i_CTRL-B-gone version5.txt /*i_CTRL-B-gone*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 0ff82d716..8e9ba4bc5 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.0d. Last change: 2006 Apr 12
+*todo.txt* For Vim version 7.0d. Last change: 2006 Apr 13
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -32,6 +32,8 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
Do some of the 'cindent' bugs below.
+Should a[:5] not give an error for a list with 4 items?
+
Add more tests for all new functionality in Vim 7. Especially new functions.
Win32: Describe how to do debugging. (George Reilly)
@@ -2236,21 +2238,6 @@ Insert mode:
'cindent', 'smartindent':
-8 Using "+" part of 'cinoptions' where it's not expected (Alexei Alexandrov):
- if (a)
- {
- } else
- asdf;
-8 Wrong indent for ":" after a method with line break in arguments:
- Foo::Foo (int one,
- int two)
- : something(4)
- {}
-8 Wrong indent for ":" after a method with multiple lines:
- Foo::Foo (int one, int two)
- : something(4),
- somethingelse(3)
- {}
9 Too much indent for "lulu": (Uwe Zeisberger)
int main ()
{
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 356e686f2..a37d7234a 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt* For Vim version 7.0d. Last change: 2006 Apr 12
+*version7.txt* For Vim version 7.0d. Last change: 2006 Apr 13
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2465,5 +2465,15 @@ When 'guitablabel' is set the effect wasn't visible right away.
Fixed a few 'cindent' errors.
+When completing menu names, e.g., after ":emenu", don't sort the entries but
+keep them in the original order.
+
+Fixed a crash when editing a directory in diff mode. Don't trigger
+autocommands when executing the diff command.
+
+Getting a keystroke could get stuck if 'encoding' is a multi-byte encoding and
+typing a special key.
+
+When 'foldignore' is set the folds were not updated right away.
vim:tw=78:ts=8:ft=help:norl:
diff --git a/runtime/indent/vhdl.vim b/runtime/indent/vhdl.vim
index 82f0f834b..8176673a8 100644
--- a/runtime/indent/vhdl.vim
+++ b/runtime/indent/vhdl.vim
@@ -1,8 +1,8 @@
" VHDL indent ('93 syntax)
" Language: VHDL
" Maintainer: Gerald Lai <laigera+vim?gmail.com>
-" Version: 1.34
-" Last Change: 2006 Feb 11
+" Version: 1.36
+" Last Change: 2006 Apr 12
" URL: http://www.vim.org/scripts/script.php?script_id=1450
" only load this indent file when no other was loaded
@@ -15,37 +15,37 @@ let b:did_indent = 1
setlocal indentexpr=GetVHDLindent()
setlocal indentkeys=!^F,o,O,e,0(,0)
setlocal indentkeys+==~if,=~then,=~elsif,=~else
-setlocal indentkeys+==~begin,=~is,=~select,=~--
+setlocal indentkeys+==~begin,=~is,=~select
" count repeat
-function! <SID>CountWrapper(cmd)
- let i = v:count1
- if a:cmd[0] == ":"
- while i > 0
- execute a:cmd
- let i = i - 1
- endwhile
- else
- execute "normal! gv\<Esc>"
- execute "normal ".i.a:cmd
- let curcol = col(".")
- let curline = line(".")
- normal! gv
- call cursor(curline, curcol)
- endif
-endfunction
+"function! <SID>CountWrapper(cmd)
+" let i = v:count1
+" if a:cmd[0] == ":"
+" while i > 0
+" execute a:cmd
+" let i = i - 1
+" endwhile
+" else
+" execute "normal! gv\<Esc>"
+" execute "normal ".i.a:cmd
+" let curcol = col(".")
+" let curline = line(".")
+" normal! gv
+" call cursor(curline, curcol)
+" endif
+"endfunction
" explore motion
" keywords: "architecture", "block", "configuration", "component", "entity", "function", "package", "procedure", "process", "record", "units"
-let b:vhdl_explore = '\%(architecture\|block\|configuration\|component\|entity\|function\|package\|procedure\|process\|record\|units\)'
-noremap <buffer><silent>[[ :<C-u>cal <SID>CountWrapper(':cal search("\\%(--.*\\)\\@<!\\%(\\<end\\s\\+\\)\\@<!\\<".b:vhdl_explore."\\>\\c\\<Bar>\\%^","bW")')<CR>
-noremap <buffer><silent>]] :<C-u>cal <SID>CountWrapper(':cal search("\\%(--.*\\)\\@<!\\%(\\<end\\s\\+\\)\\@<!\\<".b:vhdl_explore."\\>\\c\\<Bar>\\%$","W")')<CR>
-noremap <buffer><silent>[] :<C-u>cal <SID>CountWrapper(':cal search("\\%(--.*\\)\\@<!\\<end\\s\\+".b:vhdl_explore."\\>\\c\\<Bar>\\%^","bW")')<CR>
-noremap <buffer><silent>][ :<C-u>cal <SID>CountWrapper(':cal search("\\%(--.*\\)\\@<!\\<end\\s\\+".b:vhdl_explore."\\>\\c\\<Bar>\\%$","W")')<CR>
-vnoremap <buffer><silent>[[ :<C-u>cal <SID>CountWrapper('[[')<CR>
-vnoremap <buffer><silent>]] :<C-u>cal <SID>CountWrapper(']]')<CR>
-vnoremap <buffer><silent>[] :<C-u>cal <SID>CountWrapper('[]')<CR>
-vnoremap <buffer><silent>][ :<C-u>cal <SID>CountWrapper('][')<CR>
+"let b:vhdl_explore = '\%(architecture\|block\|configuration\|component\|entity\|function\|package\|procedure\|process\|record\|units\)'
+"noremap <buffer><silent>[[ :<C-u>cal <SID>CountWrapper(':cal search("\\%(--.*\\)\\@<!\\%(\\<end\\s\\+\\)\\@<!\\<".b:vhdl_explore."\\>\\c\\<Bar>\\%^","bW")')<CR>
+"noremap <buffer><silent>]] :<C-u>cal <SID>CountWrapper(':cal search("\\%(--.*\\)\\@<!\\%(\\<end\\s\\+\\)\\@<!\\<".b:vhdl_explore."\\>\\c\\<Bar>\\%$","W")')<CR>
+"noremap <buffer><silent>[] :<C-u>cal <SID>CountWrapper(':cal search("\\%(--.*\\)\\@<!\\<end\\s\\+".b:vhdl_explore."\\>\\c\\<Bar>\\%^","bW")')<CR>
+"noremap <buffer><silent>][ :<C-u>cal <SID>CountWrapper(':cal search("\\%(--.*\\)\\@<!\\<end\\s\\+".b:vhdl_explore."\\>\\c\\<Bar>\\%$","W")')<CR>
+"vnoremap <buffer><silent>[[ :<C-u>cal <SID>CountWrapper('[[')<CR>
+"vnoremap <buffer><silent>]] :<C-u>cal <SID>CountWrapper(']]')<CR>
+"vnoremap <buffer><silent>[] :<C-u>cal <SID>CountWrapper('[]')<CR>
+"vnoremap <buffer><silent>][ :<C-u>cal <SID>CountWrapper('][')<CR>
" constants
" not a comment
@@ -56,26 +56,26 @@ let s:ES = '\s*\%(--.*\)\=$'
let s:NE = '\%(\<end\s\+\)\@<!'
" for matchit plugin
-if exists("loaded_matchit")
- let b:match_ignorecase = 1
- let b:match_words =
- \ s:NE.'\<if\>:\<elsif\>:\<else\>:\<end\s\+if\>,'.
- \ s:NE.'\<case\>:\<when\>:\<end\s\+case\>,'.
- \ s:NE.'\<loop\>:\<end\s\+loop\>,'.
- \ s:NE.'\<for\>:\<end\s\+for\>,'.
- \ s:NE.'\<generate\>:\<end\s\+generate\>,'.
- \ s:NE.'\<record\>:\<end\s\+record\>,'.
- \ s:NE.'\<units\>:\<end\s\+units\>,'.
- \ s:NE.'\<process\>:\<end\s\+process\>,'.
- \ s:NE.'\<block\>:\<end\s\+block\>,'.
- \ s:NE.'\<function\>:\<end\s\+function\>,'.
- \ s:NE.'\<entity\>:\<end\s\+entity\>,'.
- \ s:NE.'\<component\>:\<end\s\+component\>,'.
- \ s:NE.'\<architecture\>:\<end\s\+architecture\>,'.
- \ s:NE.'\<package\>:\<end\s\+package\>,'.
- \ s:NE.'\<procedure\>:\<end\s\+procedure\>,'.
- \ s:NE.'\<configuration\>:\<end\s\+configuration\>'
-endif
+"if exists("loaded_matchit")
+" let b:match_ignorecase = 1
+" let b:match_words =
+" \ s:NE.'\<if\>:\<elsif\>:\<else\>:\<end\s\+if\>,'.
+" \ s:NE.'\<case\>:\<when\>:\<end\s\+case\>,'.
+" \ s:NE.'\<loop\>:\<end\s\+loop\>,'.
+" \ s:NE.'\<for\>:\<end\s\+for\>,'.
+" \ s:NE.'\<generate\>:\<end\s\+generate\>,'.
+" \ s:NE.'\<record\>:\<end\s\+record\>,'.
+" \ s:NE.'\<units\>:\<end\s\+units\>,'.
+" \ s:NE.'\<process\>:\<end\s\+process\>,'.
+" \ s:NE.'\<block\>:\<end\s\+block\>,'.
+" \ s:NE.'\<function\>:\<end\s\+function\>,'.
+" \ s:NE.'\<entity\>:\<end\s\+entity\>,'.
+" \ s:NE.'\<component\>:\<end\s\+component\>,'.
+" \ s:NE.'\<architecture\>:\<end\s\+architecture\>,'.
+" \ s:NE.'\<package\>:\<end\s\+package\>,'.
+" \ s:NE.'\<procedure\>:\<end\s\+procedure\>,'.
+" \ s:NE.'\<configuration\>:\<end\s\+configuration\>'
+"endif
" only define indent function once
if exists("*GetVHDLindent")
diff --git a/runtime/syntax/abap.vim b/runtime/syntax/abap.vim
index 2b1229fa2..18d3b0fd3 100644
--- a/runtime/syntax/abap.vim
+++ b/runtime/syntax/abap.vim
@@ -1,11 +1,11 @@
" Vim ABAP syntax file
-" Language: SAP - ABAP/4
-" Revision: 0.8
-" Maintainer: Marius van Wyk <marius@e.co.za>
-" Last Change: 2004 Aug 30
+" Language: SAP - ABAP/R4
+" Revision: 1.0
+" Maintainer: Marius Piedallu van Wyk <marius@e.co.za>
+" Last Change: 2006 Apr 13
-" For version 5.x: Clear all syntax items
-" For version 6.x: Quit when a syntax file was already loaded
+" For version < 6.0: Clear all syntax items
+" For version >= 6.0: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax")
@@ -16,19 +16,19 @@ endif
syn case ignore
" Symbol Operators
-syn match abapSymbolOperator "[+\-/=<>$]"
-syn match abapSymbolOperator "\*"
-syn match abapSymbolOperator "[<>]="
-syn match abapSymbolOperator "<>"
-syn match abapSymbolOperator "\*\*"
-syn match abapSymbolOperator "[()]"
-syn match abapSymbolOperator "[:,\.]"
+syn match abapSymbolOperator "[+\-/=<>$]"
+syn match abapSymbolOperator "\*"
+syn match abapSymbolOperator "[<>]="
+syn match abapSymbolOperator "<>"
+syn match abapSymbolOperator "\*\*"
+syn match abapSymbolOperator "[()]"
+syn match abapSymbolOperator "[:,\.]"
" Literals
syn region abapString matchgroup=abapString start="'" end="'" contains=abapStringEscape
syn match abapStringEscape contained "''"
-syn match abapNumber "-\=\<\d\+\>"
+syn match abapNumber "-\=\<\d\+\>"
syn region abapHex matchgroup=abapHex start="X'" end="'"
if version >= 600
@@ -52,7 +52,7 @@ syn keyword abapStatement MESSAGE MODIFY MODULE MOVE MOVE-CORRESPONDING MULTIPLY
syn keyword abapStatement NEW-LINE NEW-PAGE NEW-SECTION
syn keyword abapStatement ON OVERLAY
syn keyword abapStatement PACK PARAMETERS PERFORM POSITION PRINT-CONTROL PROGRAM PROVIDE PUT
-syn keyword abapStatement RAISE RANGES READ RECEIVE REFRESH REJECT REPLACE REPORT RESERVE RESTORE ROLLBACK
+syn keyword abapStatement RAISE RANGES READ RECEIVE REFRESH REJECT REPLACE REPORT RESERVE RESTORE ROLLBACK RP-PROVIDE-FROM-LAST
syn keyword abapStatement SCAN SCROLL SEARCH SELECT SELECT-OPTIONS SELECTION-SCREEN SET SHIFT SKIP SORT SPLIT START-OF-SELECTION STATICS STOP SUBMIT SUBTRACT SUBTRACT-CORRESPONDING SUM SUMMARY SUPPRESS SYNTAX-CHECK SYNTAX-TRACE
syn keyword abapStatement TABLES TOP-OF-PAGE TRANSFER TRANSLATE TYPE TYPE-POOL TYPE-POOLS TYPES
syn keyword abapStatement UNPACK UPDATE
@@ -82,7 +82,7 @@ syn match abapStatement "\(\W\|^\)REF\W\+TO\(\W\|$\)"ms=s+1,me=e-1
" Special ABAP specific tables:
syn match abapSpecial "\(\W\|^\)\(sy\|\(p\|pa\)\d\d\d\d\|t\d\d\d.\|innnn\)\(\W\|$\)"ms=s+1,me=e-1
syn match abapSpecialTables "\(sy\|\(p\|pa\)\d\d\d\d\|t\d\d\d.\|innnn\)-"me=e-1 contained
-syn match abapSpecial "\(\W\|^\)\w\+-\w\+"ms=s+1 contains=abapSpecialTables
+syn match abapSpecial "\(\W\|^\)\w\+-\(\w\+-\w\+\|\w\+\)"ms=s+1 contains=abapSpecialTables
" Pointer
syn match abapSpecial "<\w\+>"
@@ -118,7 +118,7 @@ syn match abapError "\.\."
" Comments
syn region abapComment start="^\*" end="$" contains=abapTodo
syn match abapComment "\".*" contains=abapTodo
-syn keyword abapTodo contained TODO NOTE
+syn keyword abapTodo contained TODO NOTE
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
@@ -132,17 +132,17 @@ if version >= 508 || !exists("did_abap_syntax_inits")
endif
HiLink abapError Error
- HiLink abapComment Comment
- HiLink abapInclude Include
+ HiLink abapComment Comment
+ HiLink abapInclude Include
HiLink abapSpecial Special
HiLink abapSpecialTables PreProc
- HiLink abapSymbolOperator abapOperator
- HiLink abapOperator Operator
- HiLink abapStatement Statement
- HiLink abapString String
- HiLink abapFloat Float
- HiLink abapNumber Number
- HiLink abapHex Number
+ HiLink abapSymbolOperator abapOperator
+ HiLink abapOperator Operator
+ HiLink abapStatement Statement
+ HiLink abapString String
+ HiLink abapFloat Float
+ HiLink abapNumber Number
+ HiLink abapHex Number
delcommand HiLink
endif
@@ -150,3 +150,4 @@ endif
let b:current_syntax = "abap"
" vim: ts=8 sw=2
+
diff --git a/runtime/syntax/apache.vim b/runtime/syntax/apache.vim
index 4fe9e8e0b..d15388a84 100644
--- a/runtime/syntax/apache.vim
+++ b/runtime/syntax/apache.vim
@@ -2,9 +2,14 @@
" This is a GENERATED FILE. Please always refer to source file at the URI below.
" Language: Apache configuration (httpd.conf, srm.conf, access.conf, .htaccess)
" Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>
-" Last Change: 2002-10-15
+" License: This file can be redistribued and/or modified under the same terms
+" as Vim itself.
+" Last Change: 2006-04-12
" URL: http://trific.ath.cx/Ftp/vim/syntax/apache.vim
-" Note: define apache_version to your Apache version, e.g. "1.3", "2", "2.0.39"
+" Notes: Last synced with apache-2.2.0, version 1.x is no longer supported
+" TODO: see particular FIXME's scattered through the file
+" make it really linewise?
+" + add `display' where appropriate
" Setup
if version >= 600
@@ -15,25 +20,11 @@ else
syntax clear
endif
-if exists("apache_version")
- let s:av = apache_version
-else
- let s:av = "1.3"
-endif
-let s:av = substitute(s:av, "[^.0-9]", "", "g")
-let s:av = substitute(s:av, "^\\d\\+$", "\\0.999", "")
-let s:av = substitute(s:av, "^\\d\\+\\.\\d\\+$", "\\0.999", "")
-let s:av = substitute(s:av, "\\<\\d\\>", "0\\0", "g")
-let s:av = substitute(s:av, "\\<\\d\\d\\>", "0\\0", "g")
-let s:av = substitute(s:av, "[.]", "", "g")
-
syn case ignore
" Base constructs
syn match apacheComment "^\s*#.*$" contains=apacheFixme
-if s:av >= "002000000"
- syn match apacheUserID "#-\?\d\+\>"
-endif
+syn match apacheUserID "#-\?\d\+\>"
syn case match
syn keyword apacheFixme FIXME TODO XXX NOT
syn case ignore
@@ -43,146 +34,118 @@ syn region apacheString start=+"+ end=+"+ skip=+\\\\\|\\\"+
" Core and mpm
syn keyword apacheDeclaration AccessFileName AddDefaultCharset AllowOverride AuthName AuthType ContentDigest DefaultType DocumentRoot ErrorDocument ErrorLog HostNameLookups IdentityCheck Include KeepAlive KeepAliveTimeout LimitRequestBody LimitRequestFields LimitRequestFieldsize LimitRequestLine LogLevel MaxKeepAliveRequests NameVirtualHost Options Require RLimitCPU RLimitMEM RLimitNPROC Satisfy ScriptInterpreterSource ServerAdmin ServerAlias ServerName ServerPath ServerRoot ServerSignature ServerTokens TimeOut UseCanonicalName
-if s:av < "002000000"
- syn keyword apacheDeclaration AccessConfig AddModule BindAddress BS2000Account ClearModuleList CoreDumpDirectory Group Listen ListenBacklog LockFile MaxClients MaxRequestsPerChild MaxSpareServers MinSpareServers PidFile Port ResourceConfig ScoreBoardFile SendBufferSize ServerType StartServers ThreadsPerChild ThreadStackSize User
-endif
-if s:av >= "002000000"
- syn keyword apacheDeclaration AcceptPathInfo CGIMapExtension EnableMMAP FileETag ForceType LimitXMLRequestBody SetHandler SetInputFilter SetOutputFilter
- syn keyword apacheOption INode MTime Size
-endif
+syn keyword apacheDeclaration AcceptPathInfo CGIMapExtension EnableMMAP FileETag ForceType LimitXMLRequestBody SetHandler SetInputFilter SetOutputFilter
+syn keyword apacheDeclaration AcceptFilter AllowEncodedSlashes EnableSendfile LimitInternalRecursion TraceEnable
+syn keyword apacheOption INode MTime Size
syn keyword apacheOption Any All On Off Double EMail DNS Min Minimal OS Prod ProductOnly Full
syn keyword apacheOption emerg alert crit error warn notice info debug
syn keyword apacheOption registry script inetd standalone
syn match apacheOptionOption "[+-]\?\<\(ExecCGI\|FollowSymLinks\|Includes\|IncludesNoExec\|Indexes\|MultiViews\|SymLinksIfOwnerMatch\)\>"
-syn keyword apacheOption user group valid-user
+syn keyword apacheOption user group
+syn match apacheOption "\<valid-user\>"
syn case match
syn keyword apacheMethodOption GET POST PUT DELETE CONNECT OPTIONS TRACE PATCH PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK contained
syn case ignore
-syn match apacheSection "<\/\=\(Directory\|DirectoryMatch\|Files\|FilesMatch\|IfModule\|IfDefine\|Location\|LocationMatch\|VirtualHost\)\+.*>" contains=apacheAnything
-syn match apacheLimitSection "<\/\=\(Limit\|LimitExcept\)\+.*>" contains=apacheLimitSectionKeyword,apacheMethodOption,apacheError
+syn match apacheSection "<\/\=\(Directory\|DirectoryMatch\|Files\|FilesMatch\|IfModule\|IfDefine\|Location\|LocationMatch\|VirtualHost\)[^>]*>" contains=apacheAnything
+syn match apacheLimitSection "<\/\=\(Limit\|LimitExcept\)[^>]*>" contains=apacheLimitSectionKeyword,apacheMethodOption,apacheError
syn keyword apacheLimitSectionKeyword Limit LimitExcept contained
syn match apacheAuthType "AuthType\s.*$" contains=apacheAuthTypeValue
syn keyword apacheAuthTypeValue Basic Digest
syn match apacheAllowOverride "AllowOverride\s.*$" contains=apacheAllowOverrideValue,apacheComment
syn keyword apacheAllowOverrideValue AuthConfig FileInfo Indexes Limit Options contained
-if s:av >= "002000000"
- syn keyword apacheDeclaration CoreDumpDirectory Group Listen ListenBacklog LockFile MaxClients MaxMemFree MaxRequestsPerChild MaxSpareThreads MaxSpareThreadsPerChild MinSpareThreads NumServers PidFile ScoreBoardFile SendBufferSize ServerLimit StartServers StartThreads ThreadLimit ThreadsPerChild User
- syn keyword apacheDeclaration MaxThreads ThreadStackSize
- syn keyword apacheDeclaration AssignUserId ChildPerUserId
- syn keyword apacheDeclaration AcceptMutex MaxSpareServers MinSpareServers
- syn keyword apacheOption flock fcntl sysvsem pthread
-endif
+syn keyword apacheDeclaration CoreDumpDirectory EnableExceptionHook GracefulShutdownTimeout Group Listen ListenBacklog LockFile MaxClients MaxMemFree MaxRequestsPerChild MaxSpareThreads MaxSpareThreadsPerChild MinSpareThreads NumServers PidFile ScoreBoardFile SendBufferSize ServerLimit StartServers StartThreads ThreadLimit ThreadsPerChild User
+syn keyword apacheDeclaration MaxThreads ThreadStackSize
+syn keyword apacheDeclaration Win32DisableAcceptEx
+syn keyword apacheDeclaration AssignUserId ChildPerUserId
+syn keyword apacheDeclaration AcceptMutex MaxSpareServers MinSpareServers
+syn keyword apacheOption flock fcntl sysvsem pthread
" Modules
-syn match apacheAllowDeny "Allow\s\+from.*$" contains=apacheAllowDenyValue,apacheComment
-syn match apacheAllowDeny "Deny\s\+from.*$" contains=apacheAllowDenyValue,apacheComment
-syn keyword apacheAllowDenyValue All None contained
-syn match apacheOrder "^\s*Order\s.*$" contains=apacheOrderValue,apacheComment
-syn keyword apacheOrderValue Deny Allow contained
syn keyword apacheDeclaration Action Script
syn keyword apacheDeclaration Alias AliasMatch Redirect RedirectMatch RedirectTemp RedirectPermanent ScriptAlias ScriptAliasMatch
syn keyword apacheOption permanent temp seeother gone
syn keyword apacheDeclaration AuthAuthoritative AuthGroupFile AuthUserFile
-syn keyword apacheDeclaration Anonymous Anonymous_Authoritative Anonymous_LogEmail Anonymous_MustGiveEmail Anonymous_NoUserID Anonymous_VerifyEmail
-if s:av < "002000000"
- syn keyword apacheDeclaration AuthDBGroupFile AuthDBUserFile AuthDBAuthoritative
-endif
-syn keyword apacheDeclaration AuthDBMGroupFile AuthDBMUserFile AuthDBMAuthoritative
-if s:av >= "002000000"
- syn keyword apacheDeclaration AuthDBMType
- syn keyword apacheOption default SDBM GDBM NDBM DB
-endif
-syn keyword apacheDeclaration AuthDigestAlgorithm AuthDigestDomain AuthDigestFile AuthDigestGroupFile AuthDigestNcCheck AuthDigestNonceFormat AuthDigestNonceLifetime AuthDigestQop
+syn keyword apacheDeclaration AuthBasicAuthoritative AuthBasicProvider
+syn keyword apacheDeclaration AuthDigestAlgorithm AuthDigestDomain AuthDigestNcCheck AuthDigestNonceFormat AuthDigestNonceLifetime AuthDigestProvider AuthDigestQop AuthDigestShmemSize
syn keyword apacheOption none auth auth-int MD5 MD5-sess
-if s:av >= "002000000"
- syn keyword apacheDeclaration AuthLDAPAuthoritative AuthLDAPBindON AuthLDAPBindPassword AuthLDAPCompareDNOnServer AuthLDAPDereferenceAliases AuthLDAPEnabled AuthLDAPFrontPageHack AuthLDAPGroupAttribute AuthLDAPGroupAttributeIsDN AuthLDAPRemoteUserIsDN AuthLDAPStartTLS AuthLDAPUrl
- syn keyword apacheOption always never searching finding
-endif
-if s:av < "002000000"
- syn keyword apacheDeclaration FancyIndexing
-endif
+syn match apacheSection "<\/\=\(<AuthnProviderAlias\)[^>]*>" contains=apacheAnything
+syn keyword apacheDeclaration Anonymous Anonymous_Authoritative Anonymous_LogEmail Anonymous_MustGiveEmail Anonymous_NoUserID Anonymous_VerifyEmail
+syn keyword apacheDeclaration AuthDBDUserPWQuery AuthDBDUserRealmQuery
+syn keyword apacheDeclaration AuthDBMGroupFile AuthDBMAuthoritative
+syn keyword apacheDeclaration AuthDBM TypeAuthDBMUserFile
+syn keyword apacheOption default SDBM GDBM NDBM DB
+syn keyword apacheDeclaration AuthDefaultAuthoritative
+syn keyword apacheDeclaration AuthUserFile
+syn keyword apacheDeclaration AuthLDAPBindON AuthLDAPEnabled AuthLDAPFrontPageHack AuthLDAPStartTLS
+syn keyword apacheDeclaration AuthLDAPBindDN AuthLDAPBindPassword AuthLDAPCharsetConfig AuthLDAPCompareDNOnServer AuthLDAPDereferenceAliases AuthLDAPGroupAttribute AuthLDAPGroupAttributeIsDN AuthLDAPRemoteUserIsDN AuthLDAPUrl AuthzLDAPAuthoritative
+syn keyword apacheOption always never searching finding
+syn keyword apacheOption ldap-user ldap-group ldap-dn ldap-attribute ldap-filter
+syn keyword apacheDeclaration AuthDBMGroupFile AuthzDBMAuthoritative AuthzDBMType
+syn keyword apacheDeclaration AuthzDefaultAuthoritative
+syn keyword apacheDeclaration AuthGroupFile AuthzGroupFileAuthoritative
+syn match apacheAllowDeny "Allow\s\+from.*$" contains=apacheAllowDenyValue,apacheComment
+syn match apacheAllowDeny "Deny\s\+from.*$" contains=apacheAllowDenyValue,apacheComment
+syn keyword apacheAllowDenyValue All None contained
+syn match apacheOrder "^\s*Order\s.*$" contains=apacheOrderValue,apacheComment
+syn keyword apacheOrderValue Deny Allow contained
+syn keyword apacheDeclaration AuthzOwnerAuthoritative
+syn keyword apacheDeclaration AuthzUserAuthoritative
syn keyword apacheDeclaration AddAlt AddAltByEncoding AddAltByType AddDescription AddIcon AddIconByEncoding AddIconByType DefaultIcon HeaderName IndexIgnore IndexOptions IndexOrderDefault ReadmeName
+syn keyword apacheDeclaration IndexStyleSheet
syn keyword apacheOption DescriptionWidth FancyIndexing FoldersFirst IconHeight IconsAreLinks IconWidth NameWidth ScanHTMLTitles SuppressColumnSorting SuppressDescription SuppressHTMLPreamble SuppressLastModified SuppressSize TrackModified
syn keyword apacheOption Ascending Descending Name Date Size Description
-if s:av >= "002000000"
- syn keyword apacheOption HTMLTable SupressIcon SupressRules VersionSort
-endif
-if s:av < "002000000"
- syn keyword apacheDeclaration BrowserMatch BrowserMatchNoCase
-endif
-if s:av >= "002000000"
- syn keyword apacheDeclaration CacheDefaultExpire CacheEnable CacheForceCompletion CacheIgnoreCacheControl CacheIgnoreNoLastMod CacheLastModifiedFactor CacheMaxExpire CacheMaxStreamingBuffer
-endif
+syn keyword apacheOption HTMLTable SupressIcon SupressRules VersionSort XHTML
+syn keyword apacheOption IgnoreClient IgnoreCase ShowForbidden SuppresRules
+syn keyword apacheDeclaration CacheForceCompletion CacheMaxStreamingBuffer
+syn keyword apacheDeclaration CacheDefaultExpire CacheDisable CacheEnable CacheIgnoreCacheControl CacheIgnoreHeaders CacheIgnoreNoLastMod CacheLastModifiedFactor CacheMaxExpire CacheStoreNoStore CacheStorePrivate
syn keyword apacheDeclaration MetaFiles MetaDir MetaSuffix
syn keyword apacheDeclaration ScriptLog ScriptLogLength ScriptLogBuffer
-if s:av >= "002000000"
- syn keyword apacheDeclaration ScriptStock
- syn keyword apacheDeclaration CharsetDefault CharsetOptions CharsetSourceEnc
- syn keyword apacheOption DebugLevel ImplicitAdd NoImplicitAdd
-endif
-syn keyword apacheDeclaration Dav DavDepthInfinity DavLockDB DavMinTimeout
-if s:av < "002000000"
- syn keyword apacheDeclaration Define
-end
-if s:av >= "002000000"
- syn keyword apacheDeclaration DeflateBufferSize DeflateFilterNote DeflateMemLevel DeflateWindowSize
-endif
-if s:av < "002000000"
- syn keyword apacheDeclaration AuthDigestFile
-endif
-syn keyword apacheDeclaration DirectoryIndex
-if s:av >= "002000000"
- syn keyword apacheDeclaration ProtocolEcho
-endif
+syn keyword apacheDeclaration ScriptStock
+syn keyword apacheDeclaration CharsetDefault CharsetOptions CharsetSourceEnc
+syn keyword apacheOption DebugLevel ImplicitAdd NoImplicitAdd
+syn keyword apacheDeclaration Dav DavDepthInfinity DavMinTimeout
+syn keyword apacheDeclaration DavLockDB
+syn keyword apacheDeclaration DavGenericLockDB
+syn keyword apacheDeclaration DBDExptime DBDKeep DBDMax DBDMin DBDParams DBDPersist DBDPrepareSQL DBDriver
+syn keyword apacheDeclaration DeflateCompressionLevel DeflateBufferSize DeflateFilterNote DeflateMemLevel DeflateWindowSize
+syn keyword apacheDeclaration DirectoryIndex DirectorySlash
+syn keyword apacheDeclaration CacheExpiryCheck CacheGcClean CacheGcDaily CacheGcInterval CacheGcMemUsage CacheGcUnused CacheSize CacheTimeMargin
+syn keyword apacheDeclaration CacheDirLength CacheDirLevels CacheMaxFileSize CacheMinFileSize CacheRoot
+syn keyword apacheDeclaration DumpIOInput DumpIOOutput
+syn keyword apacheDeclaration ProtocolEcho
syn keyword apacheDeclaration PassEnv SetEnv UnsetEnv
syn keyword apacheDeclaration Example
syn keyword apacheDeclaration ExpiresActive ExpiresByType ExpiresDefault
-if s:av >= "002000000"
- syn keyword apacheDeclaration ExtFilterDefine ExtFilterOptions
- syn keyword apacheOption PreservesContentLength DebugLevel LogStderr NoLogStderr
- syn keyword apacheDeclaration CacheFile MMapFile
-endif
+syn keyword apacheDeclaration ExtFilterDefine ExtFilterOptions
+syn keyword apacheOption PreservesContentLength DebugLevel LogStderr NoLogStderr
+syn match apacheOption "\<\(cmd\|mode\|intype\|outtype\|ftype\|disableenv\|enableenv\)\ze="
+syn keyword apacheDeclaration CacheFile MMapFile
+syn keyword apacheDeclaration FilterChain FilterDeclare FilterProtocol FilterProvider FilterTrace
syn keyword apacheDeclaration Header
-if s:av >= "002000000"
- syn keyword apacheDeclaration RequestHeader
-endif
+syn keyword apacheDeclaration RequestHeader
syn keyword apacheOption set unset append add
+syn keyword apacheDeclaration IdentityCheck IdentityCheckTimeout
syn keyword apacheDeclaration ImapMenu ImapDefault ImapBase
syn keyword apacheOption none formatted semiformatted unformatted
syn keyword apacheOption nocontent referer error map
-syn keyword apacheDeclaration XBitHack
-if s:av >= "002000000"
- syn keyword apacheDeclaration SSIEndTag SSIErrorMsg SSIStartTag SSITimeFormat SSIUndefinedEcho
-endif
+syn keyword apacheDeclaration SSIEndTag SSIErrorMsg SSIStartTag SSITimeFormat SSIUndefinedEcho XBitHack
syn keyword apacheOption on off full
syn keyword apacheDeclaration AddModuleInfo
syn keyword apacheDeclaration ISAPIReadAheadBuffer ISAPILogNotSupported ISAPIAppendLogToErrors ISAPIAppendLogToQuery
-if s:av >= "002000000"
- syn keyword apacheDeclaration ISAPICacheFile ISAIPFakeAsync
- syn keyword apacheDeclaration LDAPCacheEntries LDAPCacheTTL LDAPCertDBPath LDAPOpCacheEntries LDAPOpCacheTTL LDAPSharedCacheSize
-endif
-if s:av < "002000000"
- syn keyword apacheDeclaration AgentLog
-endif
-syn keyword apacheDeclaration CookieLog CustomLog LogFormat TransferLog
-if s:av < "002000000"
- syn keyword apacheDeclaration RefererIgnore RefererLog
-endif
-if s:av >= "002000000"
-endif
+syn keyword apacheDeclaration ISAPICacheFile ISAIPFakeAsync
+syn keyword apacheDeclaration LDAPCertDBPath
+syn keyword apacheDeclaration LDAPCacheEntries LDAPCacheTTL LDAPConnectionTimeout LDAPOpCacheEntries LDAPOpCacheTTL LDAPSharedCacheFile LDAPSharedCacheSize LDAPTrustedClientCert LDAPTrustedGlobalCert LDAPTrustedMode LDAPVerifyServerCert
+syn keyword apacheOption CA_DER CA_BASE64 CA_CERT7_DB CA_SECMOD CERT_DER CERT_BASE64 CERT_KEY3_DB CERT_NICKNAME CERT_PFX KEY_DER KEY_BASE64 KEY_PFX
+syn keyword apacheDeclaration BufferedLogs CookieLog CustomLog LogFormat TransferLog
+syn keyword apacheDeclaration ForensicLog
+syn keyword apacheDeclaration MCacheMaxObjectCount MCacheMaxObjectSize MCacheMaxStreamingBuffer MCacheMinObjectSize MCacheRemovalAlgorithm MCacheSize
syn keyword apacheDeclaration AddCharset AddEncoding AddHandler AddLanguage AddType DefaultLanguage RemoveEncoding RemoveHandler RemoveType TypesConfig
-if s:av < "002000000"
- syn keyword apacheDeclaration ForceType SetHandler
-endif
-if s:av >= "002000000"
- syn keyword apacheDeclaration AddInputFilter AddOutputFilter ModMimeUsePathInfo MultiviewsMatch RemoveInputFilter RemoveOutputFilter
-endif
+syn keyword apacheDeclaration AddInputFilter AddOutputFilter ModMimeUsePathInfo MultiviewsMatch RemoveInputFilter RemoveOutputFilter RemoveCharset
+syn keyword apacheOption NegotiatedOnly Filters Handlers
syn keyword apacheDeclaration MimeMagicFile
syn keyword apacheDeclaration MMapFile
-syn keyword apacheDeclaration CacheNegotiatedDocs LanguagePriority
-if s:av >= "002000000"
- syn keyword apacheDeclaration ForceLanguagePriority
-endif
+syn keyword apacheDeclaration CacheNegotiatedDocs LanguagePriority ForceLanguagePriority
+syn keyword apacheDeclaration NWSSLTrustedCerts NWSSLUpgradeable SecureListen
syn keyword apacheDeclaration PerlModule PerlRequire PerlTaintCheck PerlWarn
syn keyword apacheDeclaration PerlSetVar PerlSetEnv PerlPassEnv PerlSetupEnv
syn keyword apacheDeclaration PerlInitHandler PerlPostReadRequestHandler PerlHeaderParserHandler
@@ -192,50 +155,25 @@ syn keyword apacheDeclaration PerlCleanupHandler PerlChildInitHandler PerlChildE
syn keyword apacheDeclaration PerlRestartHandler PerlDispatchHandler
syn keyword apacheDeclaration PerlFreshRestart PerlSendHeader
syn keyword apacheDeclaration php_value php_flag php_admin_value php_admin_flag
-syn keyword apacheDeclaration AllowCONNECT NoProxy ProxyBlock ProxyDomain ProxyPass ProxyPassReverse ProxyReceiveBufferSize ProxyRemote ProxyRequests ProxyVia
-if s:av < "002000000"
- syn keyword apacheDeclaration CacheRoot CacheSize CacheMaxExpire CacheDefaultExpire CacheLastModifiedFactor CacheGcInterval CacheDirLevels CacheDirLength CacheForceCompletion NoCache
- syn keyword apacheOption block
-endif
-if s:av >= "002000000"
- syn match apacheSection "<\/\=\(Proxy\|ProxyMatch\)\+.*>" contains=apacheAnything
- syn keyword apacheDeclaration ProxyErrorOverride ProxyIOBufferSize ProxyMaxForwards ProxyPreserveHost ProxyRemoteMatch ProxyTimeout
-endif
-syn keyword apacheDeclaration RewriteEngine RewriteOptions RewriteLog RewriteLogLevel RewriteLock RewriteMap RewriteBase RewriteCond RewriteRule
+syn match apacheSection "<\/\=\(Proxy\|ProxyMatch\)[^>]*>" contains=apacheAnything
+syn keyword apacheDeclaration AllowCONNECT NoProxy ProxyBadHeader ProxyBlock ProxyDomain ProxyErrorOverride ProxyIOBufferSize ProxyMaxForwards ProxyPass ProxyPassReverse ProxyPassReverseCookieDomain ProxyPassReverseCookiePath ProxyPreserveHost ProxyReceiveBufferSize ProxyRemote ProxyRemoteMatch ProxyRequests ProxyTimeout ProxyVia
+syn keyword apacheDeclaration RewriteBase RewriteCond RewriteEngine RewriteLock RewriteLog RewriteLogLevel RewriteMap RewriteOptions RewriteRule
syn keyword apacheOption inherit
-if s:av < "002000000"
- syn keyword apacheDeclaration RoamingAlias
-endif
syn keyword apacheDeclaration BrowserMatch BrowserMatchNoCase SetEnvIf SetEnvIfNoCase
syn keyword apacheDeclaration LoadFile LoadModule
syn keyword apacheDeclaration CheckSpelling
-syn keyword apacheDeclaration SSLCACertificateFile SSLCACertificatePath SSLCARevocationFile SSLCARevocationPath SSLCertificateChainFile SSLCertificateFile SSLCertificateKeyFile SSLCipherSuite SSLEngine SSLMutex SSLOptions SSLPassPhraseDialog SSLProtocol SSLRandomSeed SSLRequire SSLRequireSSL SSLSessionCache SSLSessionCacheTimeout SSLVerifyClient SSLVerifyDepth
-if s:av < "002000000"
- syn keyword apacheDeclaration SSLLog SSLLogLevel
-endif
-if s:av >= "002000000"
- syn keyword apacheDeclaration SSLProxyCACertificateFile SSLProxyCACertificatePath SSLProxyCARevocationFile SSLProxyCARevocationPath SSLProxyCipherSuite SSLProxyEngine SSLProxyMachineCertificateFile SSLProxyMachineCertificatePath SSLProxyProtocol SSLProxyVerify SSLProxyVerifyDepth
-endif
+syn keyword apacheDeclaration SSLCACertificateFile SSLCACertificatePath SSLCADNRequestFile SSLCADNRequestPath SSLCARevocationFile SSLCARevocationPath SSLCertificateChainFile SSLCertificateFile SSLCertificateKeyFile SSLCipherSuite SSLCryptoDevice SSLEngine SSLHonorCipherOrder SSLMutex SSLOptions SSLPassPhraseDialog SSLProtocol SSLProxyCACertificateFile SSLProxyCACertificatePath SSLProxyCARevocationFile SSLProxyCARevocationPath SSLProxyCipherSuite SSLProxyEngine SSLProxyMachineCertificateFile SSLProxyMachineCertificatePath SSLProxyProtocol SSLProxyVerify SSLProxyVerifyDepth SSLRandomSeed SSLRequire SSLRequireSSL SSLSessionCache SSLSessionCacheTimeout SSLUserName SSLVerifyClient SSLVerifyDepth
syn match apacheOption "[+-]\?\<\(StdEnvVars\|CompatEnvVars\|ExportCertData\|FakeBasicAuth\|StrictRequire\|OptRenegotiate\)\>"
syn keyword apacheOption builtin sem
syn match apacheOption "\(file\|exec\|egd\|dbm\|shm\):"
-if s:av < "002000000"
- syn match apacheOption "[+-]\?\<\(SSLv2\|SSLv3\|TLSv1\)\>"
-endif
-if s:av >= "002000000"
- syn match apacheOption "[+-]\?\<\(SSLv2\|SSLv3\|TLSv1\|kRSA\|kHDr\|kDHd\|kEDH\|aNULL\|aRSA\|aDSS\|aRH\|eNULL\|DES\|3DES\|RC2\|RC4\|IDEA\|MD5\|SHA1\|SHA\|EXP\|EXPORT40\|EXPORT56\|LOW\|MEDIUM\|HIGH\|RSA\|DH\|EDH\|ADH\|DSS\|NULL\)\>"
-endif
-syn keyword apacheOption optional require optional_no_ca
+syn match apacheOption "[+-]\?\<\(SSLv2\|SSLv3\|TLSv1\|kRSA\|kHDr\|kDHd\|kEDH\|aNULL\|aRSA\|aDSS\|aRH\|eNULL\|DES\|3DES\|RC2\|RC4\|IDEA\|MD5\|SHA1\|SHA\|EXP\|EXPORT40\|EXPORT56\|LOW\|MEDIUM\|HIGH\|RSA\|DH\|EDH\|ADH\|DSS\|NULL\)\>"
+syn keyword apacheOption optional optional_no_ca
syn keyword apacheDeclaration ExtendedStatus
-if s:av >= "002000000"
- syn keyword apacheDeclaration SuexecUserGroup
-endif
+syn keyword apacheDeclaration SuexecUserGroup
syn keyword apacheDeclaration UserDir
-syn keyword apacheDeclaration CookieExpires CookieName CookieTracking
-if s:av >= "002000000"
- syn keyword apacheDeclaration CookieDomain CookieStyle
- syn keyword apacheOption Netscape Cookie Cookie2 RFC2109 RFC2965
-endif
+syn keyword apacheDeclaration CookieDomain CookieExpires CookieName CookieStyle CookieTracking
+syn keyword apacheOption Netscape Cookie Cookie2 RFC2109 RFC2965
+syn match apacheSection "<\/\=\(<IfVersion\)[^>]*>" contains=apacheAnything
syn keyword apacheDeclaration VirtualDocumentRoot VirtualDocumentRootIP VirtualScriptAlias VirtualScriptAliasIP
" Define the default highlighting
diff --git a/runtime/syntax/help.vim b/runtime/syntax/help.vim
index 5c2abe024..32e223124 100644
--- a/runtime/syntax/help.vim
+++ b/runtime/syntax/help.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: Vim help file
" Maintainer: Bram Moolenaar (Bram@vim.org)
-" Last Change: 2006 Apr 12
+" Last Change: 2006 Apr 13
" Quit when a (custom) syntax file was already loaded
if exists("b:current_syntax")
@@ -14,14 +14,15 @@ syn match helpSectionDelim "^-\{3,}.*--$"
syn region helpExample matchgroup=helpIgnore start=" >$" start="^>$" end="^[^ \t]"me=e-1 end="^<"
if has("ebcdic")
syn match helpHyperTextJump "\\\@<!|[^"*|]\+|" contains=helpBar
- syn match helpHyperTextEntry "\*[^"*|]\+\*\s"he=e-1
- syn match helpHyperTextEntry "\*[^"*|]\+\*$"
+ syn match helpHyperTextEntry "\*[^"*|]\+\*\s"he=e-1 contains=helpStar
+ syn match helpHyperTextEntry "\*[^"*|]\+\*$" contains=helpStar
else
syn match helpHyperTextJump "\\\@<!|[#-)!+-~]\+|" contains=helpBar
- syn match helpHyperTextEntry "\*[#-)!+-~]\+\*\s"he=e-1
- syn match helpHyperTextEntry "\*[#-)!+-~]\+\*$"
+ syn match helpHyperTextEntry "\*[#-)!+-~]\+\*\s"he=e-1 contains=helpStar
+ syn match helpHyperTextEntry "\*[#-)!+-~]\+\*$" contains=helpStar
endif
syn match helpBar contained "|"
+syn match helpStar contained "\*"
syn match helpNormal "|.*====*|"
syn match helpNormal ":|vim:|" " for :help modeline
syn match helpVim "Vim version [0-9.a-z]\+"
@@ -124,6 +125,7 @@ hi def link helpExampleStart helpIgnore
hi def link helpIgnore Ignore
hi def link helpHyperTextJump Subtitle
hi def link helpBar Ignore
+hi def link helpStar Ignore
hi def link helpHyperTextEntry String
hi def link helpHeadline Statement
hi def link helpHeader PreProc
diff --git a/runtime/syntax/kconfig.vim b/runtime/syntax/kconfig.vim
index 00c07d2cc..05730a518 100644
--- a/runtime/syntax/kconfig.vim
+++ b/runtime/syntax/kconfig.vim
@@ -1,6 +1,6 @@
" Vim syntax file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-12
+" Latest Revision: 2006-04-13
if exists("b:current_syntax")
finish
@@ -711,6 +711,8 @@ syn region kconfigHelpText
\ skip='^$'
\ end='^\z1\@!'
+syn sync match kconfigSyncHelp grouphere kconfigHelpText 'help\|---help---'
+
hi def link kconfigTodo Todo
hi def link kconfigComment Comment
hi def link kconfigKeyword Keyword
diff --git a/runtime/syntax/lifelines.vim b/runtime/syntax/lifelines.vim
index a6a2c8d14..d825a178a 100644
--- a/runtime/syntax/lifelines.vim
+++ b/runtime/syntax/lifelines.vim
@@ -1,8 +1,15 @@
" Vim syntax file
-" Language: Lifelines (v 3.0.7) http://lifelines.sourceforge.net
-" Maintainer: Patrick Texier <p.texier@orsennes.com>
-" Location: ftp://216.71.72.236/lifelines.vim
-" Last Change: 2002 Mar 03
+" Language: LifeLines (v 3.0.50) http://lifelines.sourceforge.net
+" Maintainer: Patrick Texier <p.texier@genindre.org>
+" Location: http://www.genindre.org/ftp/lifelines/lifelines.vim
+" Last Change: 2005 Dec 22.
+
+" option to highlight error obsolete statements
+" add the following line to your .vimrc file or here :
+" (level2 is for baptism)
+
+" let lifelines_deprecated=1
+" let lifelines_deprecated_level2=1
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -13,61 +20,94 @@ elseif exists("b:current_syntax")
finish
endif
-" A bunch of useful lifelines keywords 3.0.7
+" A bunch of useful lifelines keywords 3.0.50
-syn keyword lifelinesStatement set
-syn keyword lifelinesUser getindi geindiset getfam getint getstr choosechild
-syn keyword lifelinesUser chooseindi choosespouse choosesubset menuchoose
-syn keyword lifelinesUser choosefam getintmsg getindimsg getstrmsg
-syn keyword lifelinesProc proc func return call
-syn keyword lifelinesInclude include
-syn keyword lifelinesDef global
+syn keyword lifelinesStatement set
+syn keyword lifelinesUser getindi geindiset getfam getint getstr choosechild
+syn keyword lifelinesUser chooseindi choosespouse choosesubset menuchoose
+syn keyword lifelinesUser choosefam
+syn keyword lifelinesProc proc func return call
+syn keyword lifelinesInclude include
+syn keyword lifelinesDef global
syn keyword lifelinesConditional if else elsif switch
-syn keyword lifelinesRepeat continue break while
-syn keyword lifelinesLogical and or not eq ne lt gt le ge strcmp eqstr nestr
-syn keyword lifelinesArithm add sub mul div mod exp neg incr decr
-syn keyword lifelinesIndi name fullname surname givens trimname birth
-syn keyword lifelinesIndi death baptism burial
-syn keyword lifelinesIndi father mother nextsib prevsib sex male female
-syn keyword lifelinesIndi pn nspouses nfamilies parents title key
-syn keyword lifelinesIndi soundex inode root indi firstindi nextindi
-syn keyword lifelinesIndi previndi spouses families forindi indiset
-syn keyword lifelinesIndi addtoset deletefromset lengthset union intersect
-syn keyword lifelinesIndi difference parentset childset spouseset siblingset
-syn keyword lifelinesIndi ancestorset descendentset descendantset uniqueset
-syn keyword lifelinesIndi namesort keysort valuesort genindiset getindiset
-syn keyword lifelinesIndi forindiset lastindi writeindi
-syn keyword lifelinesIndi inset
-syn keyword lifelinesFam marriage husband wife nchildren firstchild
-syn keyword lifelinesFam lastchild fnode fam firstfam nextfam lastfam
-syn keyword lifelinesFam prevfam children forfam writefam
-syn keyword lifelinesList list empty length enqueue dequeue requeue
-syn keyword lifelinesList push pop setel getel forlist inlist
-syn keyword lifelinesTable table insert lookup
-syn keyword lifelinesGedcom xref tag value parent child sibling savenode
-syn keyword lifelinesGedcom fornodes traverse createnode addnode deletenode
-syn keyword lifelinesGedcom reference dereference getrecord
-syn keyword lifelinesGedcom gengedcom gengedcomstrong gengedcomweak
-syn keyword lifelinesFunct date place year long short gettoday dayformat
-syn keyword lifelinesFunct monthformat dateformat extractdate
-syn keyword lifelinesFunct complexdate
-syn keyword lifelinesFunct extractnames extractplaces extracttokens lower
-syn keyword lifelinesFunct upper capitalize trim rjustify save strsave
-syn keyword lifelinesFunct concat strconcat strlen substring index
-syn keyword lifelinesFunct d card ord alpha roman strsoundex strtoint
-syn keyword lifelinesFunct atoi linemode pagemod col row pos pageout nl
-syn keyword lifelinesFunct sp qt newfile outfile copyfile print lock unlock
-syn keyword lifelinesFunct database version system stddate program
-syn keyword lifelinesFunct pvalue pagemode level extractdatestr debug
-syn keyword lifelinesFunct f free getcol getproperty heapused
+syn keyword lifelinesRepeat continue break while
+syn keyword lifelinesLogical and or not eq ne lt gt le ge strcmp eqstr nestr
+syn keyword lifelinesArithm add sub mul div mod exp neg incr decr
+syn keyword lifelinesArithm cos sin tan arccos arcsin arctan
+syn keyword lifelinesArithm deg2dms dms2deg spdist
+syn keyword lifelinesIndi name fullname surname givens trimname birth
+syn keyword lifelinesIndi death burial
+syn keyword lifelinesIndi father mother nextsib prevsib sex male female
+syn keyword lifelinesIndi pn nspouses nfamilies parents title key
+syn keyword lifelinesIndi soundex inode root indi firstindi nextindi
+syn keyword lifelinesIndi previndi spouses families forindi indiset
+syn keyword lifelinesIndi addtoset deletefromset union intersect
+syn keyword lifelinesIndi difference parentset childset spouseset siblingset
+syn keyword lifelinesIndi ancestorset descendentset descendantset uniqueset
+syn keyword lifelinesIndi namesort keysort valuesort genindiset getindiset
+syn keyword lifelinesIndi forindiset lastindi writeindi
+syn keyword lifelinesIndi inset
+syn keyword lifelinesFam marriage husband wife nchildren firstchild
+syn keyword lifelinesFam lastchild fnode fam firstfam nextfam lastfam
+syn keyword lifelinesFam prevfam children forfam writefam
+syn keyword lifelinesFam fathers mothers Parents
+syn keyword lifelinesList list empty length enqueue dequeue requeue
+syn keyword lifelinesList push pop setel getel forlist inlist dup clear
+syn keyword lifelinesTable table insert lookup
+syn keyword lifelinesGedcom xref tag value parent child sibling savenode
+syn keyword lifelinesGedcom fornodes traverse createnode addnode
+syn keyword lifelinesGedcom detachnode foreven fornotes forothr forsour
+syn keyword lifelinesGedcom reference dereference getrecord
+syn keyword lifelinesFunct date place year long short gettoday dayformat
+syn keyword lifelinesFunct monthformat dateformat extractdate eraformat
+syn keyword lifelinesFunct complexdate complexformat complexpic datepic
+syn keyword lifelinesFunct extractnames extractplaces extracttokens lower
+syn keyword lifelinesFunct yearformat
+syn keyword lifelinesFunct upper capitalize trim rjustify
+syn keyword lifelinesFunct concat strconcat strlen substring index
+syn keyword lifelinesFunct titlecase gettext
+syn keyword lifelinesFunct d card ord alpha roman strsoundex strtoint
+syn keyword lifelinesFunct atoi linemode pagemod col row pos pageout nl
+syn keyword lifelinesFunct sp qt newfile outfile copyfile print lock unlock test
+syn keyword lifelinesFunct database version system stddate program
+syn keyword lifelinesFunct pvalue pagemode level extractdatestr debug
+syn keyword lifelinesFunct f float int free getcol getproperty heapused
+syn keyword lifelinesFunct sort rsort
+syn keyword lifelinesFunct deleteel
+syn keyword lifelinesFunct bytecode convertcode setlocale
+
+" option to highlight error obsolete statements
+" please read ll-reportmanual
+
+if exists("lifelines_deprecated")
+ syn keyword lifelinesError getintmsg getindimsg getstrmsg
+ syn keyword lifelinesError gengedcom gengedcomstrong gengedcomweak deletenode
+ syn keyword lifelinesError save strsave
+ syn keyword lifelinesError lengthset
+else
+ syn keyword lifelinesUser getintmsg getindimsg getstrmsg
+ syn keyword lifelinesGedcom gengedcom gengedcomstrong gengedcomweak deletenode
+ syn keyword lifelinesFunct save strsave
+ syn keyword lifelinesIndi lengthset
+endif
+if exists("lifelines_deprecated_level2")
+ syn keyword lifelinesError baptism
+else
+ syn keyword lifelinesIndi baptism
+endif
syn region lifelinesString start=+L\="+ skip=+\\\\\|\\"+ end=+"+ contains=lifelinesSpecial
-syn region lifelinesComment start="/\*" end="\*/" contains=lifelinesComment
+syn match lifelinesSpecial "\\\(\\\|\(n\|t\)\)" contained
-" Only integers with lifelines
+syn region lifelinesComment start="/\*" end="\*/"
-syn match lifelinesNumber "\<\d\+\>"
+" integers
+syn match lifelinesNumber "-\=\<\d\+\>"
+"floats, with dot
+syn match lifelinesNumber "-\=\<\d\+\.\d*\>"
+"floats, starting with a dot
+syn match lifelinesNumber "-\=\.\d\+\>"
"catch errors caused by wrong parenthesis
"adapted from original c.vim written by Bram Moolenaar
@@ -90,25 +130,27 @@ if version >= 508 || !exists("did_lifelines_syn_inits")
endif
HiLink lifelinesConditional Conditional
- HiLink lifelinesArithm Operator
- HiLink lifelinesLogical Conditional
- HiLink lifelinesInclude Include
- HiLink lifelinesComment Comment
- HiLink lifelinesStatement Statement
- HiLink lifelinesUser Statement
- HiLink lifelinesFunct Statement
- HiLink lifelinesTable Statement
- HiLink lifelinesGedcom Statement
- HiLink lifelinesList Statement
- HiLink lifelinesRepeat Repeat
- HiLink lifelinesFam Statement
- HiLink lifelinesIndi Statement
- HiLink lifelinesProc Statement
- HiLink lifelinesDef Statement
- HiLink lifelinesString String
- HiLink lifelinesNumber Number
+ HiLink lifelinesArithm Operator
+ HiLink lifelinesLogical Conditional
+ HiLink lifelinesInclude Include
+ HiLink lifelinesComment Comment
+ HiLink lifelinesStatement Statement
+ HiLink lifelinesUser Statement
+ HiLink lifelinesFunct Statement
+ HiLink lifelinesTable Statement
+ HiLink lifelinesGedcom Statement
+ HiLink lifelinesList Statement
+ HiLink lifelinesRepeat Repeat
+ HiLink lifelinesFam Statement
+ HiLink lifelinesIndi Statement
+ HiLink lifelinesProc Statement
+ HiLink lifelinesDef Statement
+ HiLink lifelinesString String
+ HiLink lifelinesSpecial Special
+ HiLink lifelinesNumber Number
HiLink lifelinesParenError Error
HiLink lifelinesErrInParen Error
+ HiLink lifelinesError Error
delcommand HiLink
endif
diff --git a/runtime/syntax/sh.vim b/runtime/syntax/sh.vim
index b1aa1012d..2c53f9fa4 100644
--- a/runtime/syntax/sh.vim
+++ b/runtime/syntax/sh.vim
@@ -3,18 +3,17 @@
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
" Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int>
" Last Change: Apr 12, 2006
-" Version: 83
+" Version: 84
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
"
" Using the following VIM variables: {{{1
-" b:is_kornshell if defined, enhance with kornshell/POSIX syntax
-" b:is_bash if defined, enhance with bash syntax
-" g:is_kornshell if neither b:is_kornshell or b:is_bash is
-" defined, then if g:is_kornshell is set
-" enhance with kornshell/POSIX syntax highlighting
" g:is_bash if none of the previous three variables are
" defined, then if g:is_bash is set enhance with
" bash syntax highlighting
+" g:is_kornshell if neither b:is_kornshell or b:is_bash is
+" defined, then if g:is_kornshell is set
+" enhance with kornshell/POSIX syntax highlighting
+" g:is_posix this variable is the same as g:is_kornshell
" g:sh_fold_enabled if non-zero, syntax folding is enabled
" g:sh_minlines sets up syn sync minlines (dflt: 200)
" g:sh_maxlines sets up syn sync maxlines (dflt: 2x sh_minlines)
@@ -37,12 +36,15 @@ endif
" a b:is_sh is converted into b:is_bash/b:is_kornshell,
" respectively.
if !exists("b:is_kornshell") && !exists("b:is_bash")
- if exists("is_kornshell")
+ if exists("g:is_posix") && !exists("g:is_kornshell")
+ let g:is_kornshell= g:is_posix
+ endif
+ if exists("g:is_kornshell")
let b:is_kornshell= 1
if exists("b:is_sh")
unlet b:is_sh
endif
- elseif exists("is_bash")
+ elseif exists("g:is_bash")
let b:is_bash= 1
if exists("b:is_sh")
unlet b:is_sh
diff --git a/src/diff.c b/src/diff.c
index bc0364c77..4896c049a 100644
--- a/src/diff.c
+++ b/src/diff.c
@@ -839,7 +839,13 @@ diff_file(tmp_orig, tmp_new, tmp_diff)
(diff_flags & DIFF_ICASE) ? "-i " : "",
tmp_orig, tmp_new);
append_redir(cmd, p_srr, tmp_diff);
+#ifdef FEAT_AUTOCMD
+ ++autocmd_block; /* Avoid ShellCmdPost stuff */
+#endif
(void)call_shell(cmd, SHELL_FILTER|SHELL_SILENT|SHELL_DOOUT);
+#ifdef FEAT_AUTOCMD
+ --autocmd_block;
+#endif
vim_free(cmd);
}
}
@@ -942,7 +948,13 @@ ex_diffpatch(eap)
fullname != NULL ? fullname :
# endif
eap->arg);
+#ifdef FEAT_AUTOCMD
+ ++autocmd_block; /* Avoid ShellCmdPost stuff */
+#endif
(void)call_shell(buf, SHELL_FILTER | SHELL_COOKED);
+#ifdef FEAT_AUTOCMD
+ --autocmd_block;
+#endif
}
#ifdef UNIX
diff --git a/src/edit.c b/src/edit.c
index f2a5cdacd..a57787a98 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -8494,6 +8494,16 @@ ins_pageup()
pos_T tpos;
undisplay_dollar();
+
+#ifdef FEAT_WINDOWS
+ if (mod_mask & MOD_MASK_CTRL)
+ {
+ /* <C-PageUp>: tab page back */
+ goto_tabpage(-1);
+ return;
+ }
+#endif
+
tpos = curwin->w_cursor;
if (onepage(BACKWARD, 1L) == OK)
{
@@ -8543,6 +8553,16 @@ ins_pagedown()
pos_T tpos;
undisplay_dollar();
+
+#ifdef FEAT_WINDOWS
+ if (mod_mask & MOD_MASK_CTRL)
+ {
+ /* <C-PageDown>: tab page forward */
+ goto_tabpage(0);
+ return;
+ }
+#endif
+
tpos = curwin->w_cursor;
if (onepage(FORWARD, 1L) == OK)
{
diff --git a/src/ex_getln.c b/src/ex_getln.c
index e4a1c99b4..11069f25e 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -4444,8 +4444,9 @@ ExpandGeneric(xp, regmatch, num_file, file, func)
}
}
- /* Sort the results. */
- sort_strings(*file, *num_file);
+ /* Sort the results. Keep menu's in the specified order. */
+ if (xp->xp_context != EXPAND_MENUNAMES && xp->xp_context != EXPAND_MENUS)
+ sort_strings(*file, *num_file);
return OK;
}
diff --git a/src/misc1.c b/src/misc1.c
index c8d0000ab..905df158c 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -3085,6 +3085,7 @@ get_keystroke()
mch_memmove(buf, buf + 3, (size_t)len);
continue;
}
+ break;
}
#ifdef FEAT_MBYTE
if (has_mbyte)
@@ -4771,6 +4772,7 @@ static int cin_isdo __ARGS((char_u *));
static int cin_iswhileofdo __ARGS((char_u *, linenr_T, int));
static int cin_isbreak __ARGS((char_u *));
static int cin_is_cpp_baseclass __ARGS((char_u *line, colnr_T *col));
+static int get_baseclass_amount __ARGS((int col, int ind_maxparen, int ind_maxcomment, int ind_cpp_baseclass));
static int cin_ends_in __ARGS((char_u *, char_u *, char_u *));
static int cin_skip2pos __ARGS((pos_T *trypos));
static pos_T *find_start_brace __ARGS((int));
@@ -5447,7 +5449,8 @@ cin_isbreak(p)
return (STRNCMP(p, "break", 5) == 0 && !vim_isIDc(p[5]));
}
-/* Find the position of a C++ base-class declaration or
+/*
+ * Find the position of a C++ base-class declaration or
* constructor-initialization. eg:
*
* class MyClass :
@@ -5462,10 +5465,11 @@ cin_isbreak(p)
static int
cin_is_cpp_baseclass(line, col)
char_u *line;
- colnr_T *col;
+ colnr_T *col; /* return: column to align with */
{
char_u *s;
int class_or_struct, lookfor_ctor_init, cpp_base_class;
+ linenr_T lnum = curwin->w_cursor.lnum;
*col = 0;
@@ -5478,8 +5482,49 @@ cin_is_cpp_baseclass(line, col)
cpp_base_class = lookfor_ctor_init = class_or_struct = FALSE;
- while(*s != NUL)
+ /* Search for a line starting with '#', empty, ending in ';' or containing
+ * '{' or '}' and start below it. This handles the following situations:
+ * a = cond ?
+ * func() :
+ * asdf;
+ * func::foo()
+ * : something
+ * {}
+ * Foo::Foo (int one, int two)
+ * : something(4),
+ * somethingelse(3)
+ * {}
+ */
+ while (lnum > 1)
{
+ s = skipwhite(ml_get(lnum - 1));
+ if (*s == '#' || *s == NUL)
+ break;
+ while (*s != NUL)
+ {
+ s = cin_skipcomment(s);
+ if (*s == '{' || *s == '}'
+ || (*s == ';' && cin_nocode(s + 1)))
+ break;
+ if (*s != NUL)
+ ++s;
+ }
+ if (*s != NUL)
+ break;
+ --lnum;
+ }
+
+ s = cin_skipcomment(ml_get(lnum));
+ for (;;)
+ {
+ if (*s == NUL)
+ {
+ if (lnum == curwin->w_cursor.lnum)
+ break;
+ /* Continue in the cursor line. */
+ s = cin_skipcomment(ml_get(++lnum));
+ }
+
if (s[0] == ':')
{
if (s[1] == ':')
@@ -5542,41 +5587,51 @@ cin_is_cpp_baseclass(line, col)
lookfor_ctor_init = FALSE;
/* the first statement starts here: lineup with this one... */
- if (cpp_base_class && *col == 0)
+ if (cpp_base_class)
*col = (colnr_T)(s - line);
}
+ /* When the line ends in a comma don't align with it. */
+ if (lnum == curwin->w_cursor.lnum && *s == ',' && cin_nocode(s + 1))
+ *col = 0;
+
s = cin_skipcomment(s + 1);
}
}
- if (cpp_base_class && curwin->w_cursor.lnum > 1)
+ return cpp_base_class;
+}
+
+ static int
+get_baseclass_amount(col, ind_maxparen, ind_maxcomment, ind_cpp_baseclass)
+ int col;
+ int ind_maxparen;
+ int ind_maxcomment;
+ int ind_cpp_baseclass;
+{
+ int amount;
+ colnr_T vcol;
+ pos_T *trypos;
+
+ if (col == 0)
{
- /* Check that there is no '?' in the previous line to catch:
- * a = cond ?
- * func() :
- * asdf;
- */
- s = ml_get(curwin->w_cursor.lnum - 1);
- if (!cin_ispreproc(s))
- while (*s != NUL)
- {
- s = cin_skipcomment(s);
- if (*s == '?')
- /* Disable when finding a '?'... */
- cpp_base_class = FALSE;
- else if (*s == ';' && cin_nocode(s + 1))
- {
- /* ...but re-enable when the line ends in ';'. */
- cpp_base_class = TRUE;
- break;
- }
- if (*s != NUL)
- ++s;
- }
+ amount = get_indent();
+ if (find_last_paren(ml_get_curline(), '(', ')')
+ && (trypos = find_match_paren(ind_maxparen,
+ ind_maxcomment)) != NULL)
+ amount = get_indent_lnum(trypos->lnum); /* XXX */
+ if (!cin_ends_in(ml_get_curline(), (char_u *)",", NULL))
+ amount += ind_cpp_baseclass;
}
-
- return cpp_base_class;
+ else
+ {
+ curwin->w_cursor.col = col;
+ getvcol(curwin, &curwin->w_cursor, &vcol, NULL, NULL);
+ amount = (int)vcol;
+ }
+ if (amount < ind_cpp_baseclass)
+ amount = ind_cpp_baseclass;
+ return amount;
}
/*
@@ -6902,22 +6957,17 @@ get_c_indent()
else
amount += ind_continuation;
}
- else if (col == 0 || theline[0] == '{')
+ else if (theline[0] == '{')
{
- amount = get_indent();
- if (find_last_paren(l, '(', ')')
- && (trypos = find_match_paren(ind_maxparen,
- ind_maxcomment)) != NULL)
- amount = get_indent_lnum(trypos->lnum); /* XXX */
- if (theline[0] != '{')
- amount += ind_cpp_baseclass;
+ /* Need to find start of the declaration. */
+ lookfor = LOOKFOR_UNTERM;
+ ind_continuation = 0;
+ continue;
}
else
- {
- curwin->w_cursor.col = col;
- getvcol(curwin, &curwin->w_cursor, &col, NULL, NULL);
- amount = (int)col;
- }
+ /* XXX */
+ amount = get_baseclass_amount(col, ind_maxparen,
+ ind_maxcomment, ind_cpp_baseclass);
break;
}
else if (lookfor == LOOKFOR_CPP_BASECLASS)
@@ -6967,7 +7017,8 @@ get_c_indent()
* If we are looking for ',', we also look for matching
* braces.
*/
- if (trypos == NULL && find_last_paren(l, '{', '}'))
+ if (trypos == NULL && terminated == ','
+ && find_last_paren(l, '{', '}'))
trypos = find_start_brace(ind_maxcomment);
if (trypos != NULL)
@@ -7490,21 +7541,9 @@ term_again:
}
if (n)
{
- if (col == 0)
- {
- amount = get_indent() + ind_cpp_baseclass; /* XXX */
- if (find_last_paren(l, '(', ')')
- && (trypos = find_match_paren(ind_maxparen,
- ind_maxcomment)) != NULL)
- amount = get_indent_lnum(trypos->lnum)
- + ind_cpp_baseclass; /* XXX */
- }
- else
- {
- curwin->w_cursor.col = col;
- getvcol(curwin, &curwin->w_cursor, &col, NULL, NULL);
- amount = (int)col;
- }
+ /* XXX */
+ amount = get_baseclass_amount(col, ind_maxparen,
+ ind_maxcomment, ind_cpp_baseclass);
break;
}
@@ -7604,7 +7643,7 @@ term_again:
* bar;
* indent_to_0 here;
*/
- if (cin_ends_in(l, (char_u*)";", NULL))
+ if (cin_ends_in(l, (char_u *)";", NULL))
{
l = ml_get(curwin->w_cursor.lnum - 1);
if (cin_ends_in(l, (char_u *)",", NULL)
diff --git a/src/option.c b/src/option.c
index 36cfe035e..70f686a51 100644
--- a/src/option.c
+++ b/src/option.c
@@ -2066,7 +2066,7 @@ static struct vimoption
{"sessionoptions", "ssop", P_STRING|P_VI_DEF|P_COMMA|P_NODUP,
#ifdef FEAT_SESSION
(char_u *)&p_ssop, PV_NONE,
- {(char_u *)"blank,buffers,curdir,folds,help,options,tabpage,winsize",
+ {(char_u *)"blank,buffers,curdir,folds,help,options,tabpages,winsize",
(char_u *)0L}
#else
(char_u *)NULL, PV_NONE,
@@ -6458,6 +6458,12 @@ did_set_string_option(opt_idx, varp, new_value_alloced, oldval, errbuf,
if (check_opt_strings(p_fcl, p_fcl_values, TRUE) != OK)
errmsg = e_invarg;
}
+ /* 'foldignore' */
+ else if (gvarp == &curwin->w_allbuf_opt.wo_fdi)
+ {
+ if (foldmethodIsIndent(curwin))
+ foldUpdateAll(curwin);
+ }
#endif
#ifdef FEAT_VIRTUALEDIT
diff --git a/src/os_mswin.c b/src/os_mswin.c
index 50a03a577..d196c869a 100644
--- a/src/os_mswin.c
+++ b/src/os_mswin.c
@@ -584,20 +584,6 @@ display_errors()
for (p = (char *)error_ga.ga_data; *p; ++p)
if (!isspace(*p))
{
-#if 0
- /* Truncate a very long message, it will go off-screen. */
- if (STRLEN(p) > 2000)
- {
- char_u *s = p + 2000 - 14;
-
-#ifdef FEAT_MBYTE
- if (has_mbyte)
- s -= (*mb_head_off)(p, s);
-#endif
- STRCPY(s, _("...(truncated)"));
- }
-#endif
-
(void)gui_mch_dialog(
#ifdef FEAT_GUI
gui.starting ? VIM_INFO :
@@ -608,13 +594,6 @@ display_errors()
#endif
(char_u *)_("Error"),
p, (char_u *)_("&Ok"), 1, NULL);
-#if 0
-#ifdef WIN3264
- MessageBox(NULL, p, "Vim", MB_TASKMODAL|MB_SETFOREGROUND);
-#else
- MessageBox(NULL, p, "Vim", MB_TASKMODAL);
-#endif
-#endif
break;
}
ga_clear(&error_ga);
diff --git a/src/testdir/test3.in b/src/testdir/test3.in
index 51ad72095..898311834 100644
--- a/src/testdir/test3.in
+++ b/src/testdir/test3.in
@@ -742,6 +742,31 @@ int main(void)
next_line_of_code();
}
+barry()
+{
+ Foo::Foo (int one,
+ int two)
+ : something(4)
+ {}
+}
+
+barry()
+{
+ Foo::Foo (int one, int two)
+ : something(4)
+ {}
+}
+
+Constructor::Constructor(int a,
+ int b
+ ) :
+ BaseClass(a,
+ b,
+ c),
+ mMember(b)
+{
+}
+
/* end of AUTO */
STARTTEST
@@ -1189,6 +1214,20 @@ protected:
};
STARTTEST
+:set cino=+20
+2kdd]]=][
+ENDTEST
+
+ void
+foo()
+{
+ if (a)
+ {
+ } else
+ asdf;
+}
+
+STARTTEST
:set cino=(0,W2s
2kdd]]=][
ENDTEST
diff --git a/src/testdir/test3.ok b/src/testdir/test3.ok
index b197a28e0..2c7fd17f5 100644
--- a/src/testdir/test3.ok
+++ b/src/testdir/test3.ok
@@ -618,7 +618,7 @@ Constructor::Constructor(int a,
Constructor::Constructor(int a,
int b ) /*x*/ : /*x*/ BaseClass(a),
- member(b)
+ member(b)
{
}
@@ -651,7 +651,7 @@ class CAbc :
};
class CAbc : public BaseClass1,
- protected BaseClass2
+ protected BaseClass2
{
};
@@ -730,6 +730,31 @@ int main(void)
next_line_of_code();
}
+barry()
+{
+ Foo::Foo (int one,
+ int two)
+ : something(4)
+ {}
+}
+
+barry()
+{
+ Foo::Foo (int one, int two)
+ : something(4)
+ {}
+}
+
+Constructor::Constructor(int a,
+ int b
+ ) :
+ BaseClass(a,
+ b,
+ c),
+ mMember(b)
+{
+}
+
/* end of AUTO */
@@ -1070,6 +1095,16 @@ protected:
};
+ void
+foo()
+{
+ if (a)
+ {
+ } else
+ asdf;
+}
+
+
{
averylongfunctionnamelongfunctionnameaverylongfunctionname()->asd(
asdasdf,
diff --git a/src/version.h b/src/version.h
index 980a85c97..11f5d83d6 100644
--- a/src/version.h
+++ b/src/version.h
@@ -35,6 +35,6 @@
*/
#define VIM_VERSION_NODOT "vim70d"
#define VIM_VERSION_SHORT "7.0d"
-#define VIM_VERSION_MEDIUM "7.0d02 BETA"
-#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0d02 BETA (2006 Apr 12)"
-#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0d02 BETA (2006 Apr 12, compiled "
+#define VIM_VERSION_MEDIUM "7.0d03 BETA"
+#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0d03 BETA (2006 Apr 13)"
+#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0d03 BETA (2006 Apr 13, compiled "