Update runtime files.
diff --git a/runtime/doc/debugger.txt b/runtime/doc/debugger.txt
index 51a9cc9..7976395 100644
--- a/runtime/doc/debugger.txt
+++ b/runtime/doc/debugger.txt
@@ -1,4 +1,4 @@
-*debugger.txt* For Vim version 8.0. Last change: 2005 Mar 29
+*debugger.txt* For Vim version 8.0. Last change: 2017 Nov 21
VIM REFERENCE MANUAL by Gordon Prieur
@@ -95,10 +95,12 @@
XmNballoonEvalBackground, and XmNballoonEvalForeground).
The 'balloondelay' option sets the delay before an attempt is made to show a
balloon.
-The 'ballooneval' option needs to be set to switch it on.
+The 'ballooneval' and/or the 'balloonevalterm' option needs to be set to
+switch it on.
-Balloon evaluation is only available when compiled with the |+balloon_eval|
-feature.
+Balloon evaluation is only available in the GUI when compiled with the
+|+balloon_eval| feature. For the terminal the |+balloon_eval_term| feature
+matters.
The Balloon evaluation functions are also used to show a tooltip for the
toolbar. The 'ballooneval' option does not need to be set for this. But the
diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt
index 714bc65..4ade4aa 100644
--- a/runtime/doc/editing.txt
+++ b/runtime/doc/editing.txt
@@ -1,4 +1,4 @@
-*editing.txt* For Vim version 8.0. Last change: 2017 Aug 21
+*editing.txt* For Vim version 8.0. Last change: 2017 Nov 16
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -900,7 +900,7 @@
*:w* *:write*
*E502* *E503* *E504* *E505*
- *E512* *E514* *E667* *E796*
+ *E512* *E514* *E667* *E796* *E949*
:w[rite] [++opt] Write the whole buffer to the current file. This is
the normal way to save changes to a file. It fails
when the 'readonly' option is set or when there is
@@ -956,6 +956,9 @@
":w #". This can be switched off by removing the 'A' flag from the
'cpoptions' option.
+Note that the 'fsync' option matters here. If it's set it may make writes
+slower (but safer).
+
*:sav* *:saveas*
:sav[eas][!] [++opt] {file}
Save the current buffer under the name {file} and set
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index d753924..884f2e8 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt* For Vim version 8.0. Last change: 2017 Nov 16
+*eval.txt* For Vim version 8.0. Last change: 2017 Nov 19
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2748,6 +2748,8 @@
The result is a Number, which is |TRUE| if a buffer called
{expr} exists.
If the {expr} argument is a number, buffer numbers are used.
+ Number zero is the alternate buffer for the current window.
+
If the {expr} argument is a string it must match a buffer name
exactly. The name can be:
- Relative to the current directory.
diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt
index c900ff5..06ae663 100644
--- a/runtime/doc/quickref.txt
+++ b/runtime/doc/quickref.txt
@@ -1,4 +1,4 @@
-*quickref.txt* For Vim version 8.0. Last change: 2017 Oct 19
+*quickref.txt* For Vim version 8.0. Last change: 2017 Nov 21
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -618,7 +618,8 @@
'backupext' 'bex' extension used for the backup file
'backupskip' 'bsk' no backup for files that match these patterns
'balloondelay' 'bdlay' delay in mS before a balloon may pop up
-'ballooneval' 'beval' switch on balloon evaluation
+'ballooneval' 'beval' switch on balloon evaluation in the GUI
+'balloonevalterm' 'bevalterm' switch on balloon evaluation in the terminal
'balloonexpr' 'bexpr' expression to show in balloon
'belloff' 'bo' do not ring the bell for these reasons
'binary' 'bin' read/write/edit file in binary mode
diff --git a/runtime/doc/remote.txt b/runtime/doc/remote.txt
index dfae64e..6b0d9dd 100644
--- a/runtime/doc/remote.txt
+++ b/runtime/doc/remote.txt
@@ -1,4 +1,4 @@
-*remote.txt* For Vim version 8.0. Last change: 2017 Aug 01
+*remote.txt* For Vim version 8.0. Last change: 2017 Nov 12
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -181,7 +181,8 @@
A non GUI Vim with access to the X11 display (|xterm-clipboard| enabled), can
also act as a command server if a server name is explicitly given with the
---servername argument.
+--servername argument, or when Vim was build with the |+autoservername|
+feature.
An empty --servername argument will cause the command server to be disabled.
diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt
index 26d2fa2..6ac684a 100644
--- a/runtime/doc/starting.txt
+++ b/runtime/doc/starting.txt
@@ -1,4 +1,4 @@
-*starting.txt* For Vim version 8.0. Last change: 2017 Nov 11
+*starting.txt* For Vim version 8.0. Last change: 2017 Nov 18
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -58,9 +58,9 @@
that is read from stdin. The commands that would normally be
read from stdin will now be read from stderr. Example: >
find . -name "*.c" -print | vim -
-< The buffer will be marked modified, because it contains text
- that needs to be saved. Except when in readonly mode, then
- the buffer is not marked modified. Example: >
+< The buffer will not be marked as modified, so that it's easy
+ to exit. Be careful to mark it as modified if you don't want
+ to accidentally lose it. Example: >
ls | view -
<
Starting in Ex mode: >
@@ -421,7 +421,9 @@
*--not-a-term*
--not-a-term Tells Vim that the user knows that the input and/or output is
not connected to a terminal. This will avoid the warning and
- the two second delay that would happen. {not in Vi}
+ the two second delay that would happen.
+ Also avoids the "Reading from stdin..." message.
+ {not in Vi}
*--ttyfail*
--ttyfail When the stdin or stdout is not a terminal (tty) then exit
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 5019bcd..253a55f 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -74,12 +74,14 @@
'backupskip' options.txt /*'backupskip'*
'balloondelay' options.txt /*'balloondelay'*
'ballooneval' options.txt /*'ballooneval'*
+'balloonevalterm' options.txt /*'balloonevalterm'*
'balloonexpr' options.txt /*'balloonexpr'*
'bdir' options.txt /*'bdir'*
'bdlay' options.txt /*'bdlay'*
'beautify' vi_diff.txt /*'beautify'*
'belloff' options.txt /*'belloff'*
'beval' options.txt /*'beval'*
+'bevalterm' options.txt /*'bevalterm'*
'bex' options.txt /*'bex'*
'bexpr' options.txt /*'bexpr'*
'bf' vi_diff.txt /*'bf'*
@@ -505,7 +507,9 @@
'noawa' options.txt /*'noawa'*
'nobackup' options.txt /*'nobackup'*
'noballooneval' options.txt /*'noballooneval'*
+'noballoonevalterm' options.txt /*'noballoonevalterm'*
'nobeval' options.txt /*'nobeval'*
+'nobevalterm' options.txt /*'nobevalterm'*
'nobin' options.txt /*'nobin'*
'nobinary' options.txt /*'nobinary'*
'nobiosk' options.txt /*'nobiosk'*
@@ -1223,7 +1227,9 @@
+acl various.txt /*+acl*
+arabic various.txt /*+arabic*
+autocmd various.txt /*+autocmd*
++autoservername various.txt /*+autoservername*
+balloon_eval various.txt /*+balloon_eval*
++balloon_eval_term various.txt /*+balloon_eval_term*
+browse various.txt /*+browse*
+builtin_terms various.txt /*+builtin_terms*
+byte_offset various.txt /*+byte_offset*
@@ -4569,6 +4575,7 @@
E946 terminal.txt /*E946*
E947 terminal.txt /*E947*
E948 terminal.txt /*E948*
+E949 editing.txt /*E949*
E95 message.txt /*E95*
E96 diff.txt /*E96*
E97 diff.txt /*E97*
@@ -5145,6 +5152,7 @@
backup-table editing.txt /*backup-table*
balloon-eval debugger.txt /*balloon-eval*
balloon_show() eval.txt /*balloon_show()*
+balloon_split() eval.txt /*balloon_split()*
bar motion.txt /*bar*
bars help.txt /*bars*
base_font_name_list mbyte.txt /*base_font_name_list*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 44d002b..dbd138f 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 8.0. Last change: 2017 Nov 11
+*todo.txt* For Vim version 8.0. Last change: 2017 Nov 21
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -35,10 +35,6 @@
*known-bugs*
-------------------- Known bugs and current work -----------------------
-Permission of viminfo tempfile can be wrong. (Simon Ruderich)
-Always use 600 ? Also avoids groups problem.
-patch from Simon Ruderich, Nov 8
-
No maintainer for Vietnamese translations.
No maintainer for Simplified Chinese translations.
@@ -49,10 +45,6 @@
- Implement the right-click popup menu for the terminal. Can use the
completion popup menu code and mouse dragging.
Use it for "set breakpoint", "remove breakpoint", etc.
- - make showballoon() work in a terminal. Requires getting mouse-move
- events.
- - send 'balloonText' events for the cursor position (using CursorHold ?)
- in terminal mode.
- get ideas from http://clewn.sf.net
- Look into the idevim plugin/script.
- Improve testing:
@@ -88,6 +80,8 @@
Although user could use "xterm -e 'cmd arg'".
Regexp problems:
+- When search pattern has the base character both with and without combining
+ character, search fails. E.g. "รรีบ" in "การรีบรักใคร". (agguser, #2312)
- [:space:] only matches ASCII spaces. Add [:white:] for all space-like
characters, esp. including 0xa0. Use character class zero.
- Since 7.4.704 the old regex engine fails to match [[:print:]] in 0xf6.
@@ -136,7 +130,7 @@
Include a few color schemes, based on popularity:
http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
http://vimawesome.com/?q=tag:color-scheme
-Use names that indicate their apperance (Christian Brabandt, 2017 Aug 3)
+Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
- monokai - Xia Crusoe (2017 Aug 4)
- seoul256 - Christian Brabandt (2017 Aug 3)
- gruvbox - Christian Brabandt (2017 Aug 3)
@@ -147,6 +141,7 @@
- [hybrid](https://github.com/w0ng/vim-hybrid)
Include solarized color scheme?, it does not support termguicolors.
-> Make check for colorscheme that it's sane.
+- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
Compiler warnings (geeknik, 2017 Oct 26):
- signed integer overflow in do_sub() (#2249)
@@ -155,6 +150,13 @@
- signed integer overflow in nfa_regatom() (#2251)
- undefined left shift in get_string_tv() (#2250)
+Patch to use imactivatefunc() also without +xim feature. (Yasuhiro Matsumoto,
+2017 Nov 19, #2349)
+
+'hlsearch' shows empty matches, which means highlighting everything.
+Don't do that. For "foo\|" or "\v"
+Patch from Christian, 2017 Nov 14. Should still display "$" matches.
+
When starting with --clean packages under "start" are not loaded. Make this
work: :packadd START {name} similar to :runtime START name
@@ -169,6 +171,12 @@
Using 'wildignore' also applies to literally entered file name. Also with
:drop (remote commands).
+Race condition between stat() and open() in write_viminfo(). Use open() in the
+loop and try another name instead of using a temp file. (Simon Ruderich)
+The first one, when viminfo is new, should just fail if it creating with
+O_EXCL fails.
+Also use umask instead of mch_fopen() after vim_tempname().
+
"gvim --remote" from a directory with non-word characters changes the current
directory (Paulo Marcel Coelho Arabic, 2017 Oct 30, #2266)
Also see #1689.
@@ -176,19 +184,38 @@
ml_get error when using a Python. (Yggdroot, 2017 Jun 1, #1737)
Lemonboy can reproduce (2017 Jun 5)
+Invalid range error when using BufWinLeave for closing terminal.
+(Gabriel Barta, 2017 Nov 15, #2339)
+
ml_get errors with buggy script. (Dominique, 2017 Apr 30)
Error in emsg with buggy script. (Dominique, 2017 Apr 30)
+Patch to avoid clearing the intro message on Win32 console.
+(Ken Takata, 2017 Nov 14)
+
+Patch to copy buffer-local options before buffer leaves the window. (Bjorn
+Linse, 2017 Nov 14, #2336)
+
When a timer is running and typing CTRL-R on the command line, it is not
redrawn properly. (xtal8, 2017 Oct 23, #2241)
Universal solution to detect if t_RS is working, using cursor position.
Koichi Iwamoto, #2126
+Patch to fix cmdline abbreviation after '<,'>. (Christian Brabandt, 2017 Nov
+13, on issue #2320)
+
+Patch to add TextDeletePost and TextYankPost events. (Philippe Vaucher, 2011
+May 24) Update May 26.
+Now in patch by Lemonboy, #2333 (who is Lemonboy?)
+
Default install on MS-Windows should source defaults.vim.
Ask whether to use Windows or Vim key behavior?
+Patch for improving detecting Ruby on Mac in configure. (Ilya Mikhaltsou, 2017
+Nov 21)
+
When using command line window, CmdlineLeave is triggered without
CmdlineEnter. (xtal8, 2017 Oct 30, #2263)
Add some way to get the nested state. Although CmdwinEnter is obviously
@@ -196,9 +223,14 @@
matchit hasn't been maintained for a long time. #955.
+Problem with 'delcombine'. (agguser, 2017 Nov 10, #2313)
+
MS-Windows: buffer completetion doesn't work when using backslash (or slash)
for a path separator. (xtal8, #2201)
+Patch to adjust to DPI setting for GTK. (Roel van de Kraats, 2017 Nov 20,
+#2357)
+
Test runtime files.
Start with filetype detection: testdir/test_filetype.vim
@@ -217,15 +249,22 @@
When bracketed paste is used, pasting at the ":append" prompt does not get the
line breaks. (Ken Takata, 2017 Aug 22)
+The ":move" command does not honor closed folds. (Ryan Lue, #2351)
+
Patch for 24 bit color support in MS-Windows console, using vcon. (Nobuhiro
-Takasaki, 2017 Oct 1, #2060). Ready to include now?
+Takasaki, Ken Takata, 2017 Oct 1, #2060).
Memory leaks in test_channel? (or is it because of fork())
Memory leak in test_arabic.
Using uninitialized value in test_crypt.
+Patch to clear background when "guibg=NONE" is used and 'termguicolors' is
+set.
+
Patch to make gM move to middle of line. (Yasuhiro Matsumoto, Sep 8, #2070)
+Cannot copy modeless selection when cursor is inside it. (lkintact, #2300)
+
Include Haiku port. (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24)
It can replace the BeOS code, which is likely not used anymore.
Now on github: #1856. Updated Oct 2017
@@ -290,8 +329,15 @@
Python: After "import vim" error messages only show the first line of the
stack trace. (Yggdroot, 2017 Jul 28, #1887)
+Profile of a dict function is lost when the dict is deleted. Would it be
+possible to collect this? (Daniel Hahler, #2350)
+
Patch to add "module" to quickfix entries. (Marcin Szamotulski, Coot, 2017 Jun
-8, #1757)
+8, #1757) Now part of #2322. Or #2327? #1757 was re-opened, include that
+first.
+
+Add `:filter` support for various commands (Marcin Szamotulski, 2017 Nov 12
+#2322) Now in #2327?
When checking if a bufref is valid, also check the buffer number, to catch the
case of :bwipe followed by :new.
@@ -1484,9 +1530,6 @@
"0g@$" puts '] on last byte of multi-byte. (ZyX, 2011 Jan 22)
-Patch to add TextDeletePost and TextYankPost events. (Philippe Vaucher, 2011
-May 24) Update May 26.
-
Patch for :tabrecently. (Hirokazu Yoshida, 2012 Jan 30)
Problem with "syn sync grouphere". (Gustavo Niemeyer, 2011 Jan 27)
@@ -4653,7 +4696,7 @@
- Add "KeyWasTyped" flag: It's reset before each command and set when a
character from the keyboard is consumed. Value is used to decide to put a
command line in history or not. Put line in history if it didn't
- completely resulted from one mapping.
+ completely result from one mapping.
- When using ":browse", also put the resulting edit command in the history,
so that it can be repeated. (Demirel)
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index c13a0cb..bafdc54 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -1,4 +1,4 @@
-*usr_41.txt* For Vim version 8.0. Last change: 2017 Oct 15
+*usr_41.txt* For Vim version 8.0. Last change: 2017 Nov 19
VIM USER MANUAL - by Bram Moolenaar
@@ -886,6 +886,7 @@
getwinposx() X position of the GUI Vim window
getwinposy() Y position of the GUI Vim window
balloon_show() set the balloon content
+ balloon_split() split a message for a balloon
Vim server: *server-functions*
serverlist() return the list of server names
diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt
index 07ec3b1..232ccda 100644
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -1,4 +1,4 @@
-*various.txt* For Vim version 8.0. Last change: 2017 Sep 16
+*various.txt* For Vim version 8.0. Last change: 2017 Nov 18
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -310,9 +310,12 @@
B *+arabic* |Arabic| language support
N *+autocmd* |:autocmd|, automatic commands
H *+autoservername* Automatically enable |clientserver|
-m *+balloon_eval* |balloon-eval| support. Included when compiling with
- supported GUI (Motif, GTK, GUI) and either
- Netbeans/Sun Workshop integration or |+eval| feature.
+m *+balloon_eval* |balloon-eval| support in the GUI. Included when
+ compiling with supported GUI (Motif, GTK, GUI) and
+ either Netbeans/Sun Workshop integration or |+eval|
+ feature.
+H *+balloon_eval_term* |balloon-eval| support in the terminal,
+ 'balloonevalterm'
N *+browse* |:browse| command
N *+builtin_terms* some terminals builtin |builtin-terms|
B *++builtin_terms* maximal terminals builtin |builtin-terms|
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index d176cf1..ed1ef27 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: 2017 Nov 11
+" Last Change: 2017 Nov 21
" Listen very carefully, I will say this only once
if exists("did_load_filetypes")
@@ -231,10 +231,10 @@
au BufNewFile,BufRead */etc/blkid.tab,*/etc/blkid.tab.old setf xml
" Bazel (http://bazel.io)
-autocmd BufRead,BufNewFile *.bzl,WORKSPACE setf bzl
+autocmd BufRead,BufNewFile *.bzl,WORKSPACE,BUILD.bazel setf bzl
if has("fname_case")
" There is another check for BUILD further below.
- autocmd BufRead,BufNewFile BUILD setf bzl
+ autocmd BufRead,BufNewFile BUILD setf bzl
endif
" C or lpc
diff --git a/runtime/optwin.vim b/runtime/optwin.vim
index 127232f..74ebc9f 100644
--- a/runtime/optwin.vim
+++ b/runtime/optwin.vim
@@ -1,7 +1,7 @@
" These commands create the option window.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2017 Oct 19
+" Last Change: 2017 Nov 21
" If there already is an option window, jump to that one.
let buf = bufnr('option-window')
@@ -647,11 +647,17 @@
endif
call append("$", "linespace\tnumber of pixel lines to use between characters")
call append("$", " \tset lsp=" . &lsp)
- if has("balloon_eval")
+ if has("balloon_eval") || has("balloon_eval_term")
call append("$", "balloondelay\tdelay in milliseconds before a balloon may pop up")
call append("$", " \tset bdlay=" . &bdlay)
- call append("$", "ballooneval\twhether the balloon evaluation is to be used")
- call <SID>BinOptionG("beval", &beval)
+ if has("balloon_eval")
+ call append("$", "ballooneval\tuse balloon evaluation in the GUI")
+ call <SID>BinOptionG("beval", &beval)
+ endif
+ if has("balloon_eval_term")
+ call append("$", "balloonevalterm\tuse balloon evaluation in the terminal")
+ call <SID>BinOptionG("bevalterm", &beval)
+ endif
if has("eval")
call append("$", "balloonexpr\texpression to show in balloon eval")
call append("$", " \tset bexpr=" . &bexpr)
diff --git a/runtime/syntax/doxygen.vim b/runtime/syntax/doxygen.vim
index 6bd3726..adc0c41 100644
--- a/runtime/syntax/doxygen.vim
+++ b/runtime/syntax/doxygen.vim
@@ -2,11 +2,10 @@
" Language: doxygen on top of c, cpp, idl, java, php
" Maintainer: Michael Geddes <vimmer@frog.wheelycreek.net>
" Author: Michael Geddes
-" Last Changes: Jan 2009 (\tparam by Domnique Pelle, Aug 2013)
-" Nov 2017 (@throws by Domnique Pelle)
-" Version: 1.23
+" Last Change: November 2017 (\throws by Candy Gumdrop)
+" Version: 1.27
"
-" Copyright 2004-2008 Michael Geddes
+" Copyright 2004-2017 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
@@ -59,52 +58,76 @@
"
" C/C++ Style line comments
- 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 match doxygenCommentWhite +\s*\ze/\*\(\*/\)\@![*!]+ containedin=phpRegion
+ syn match doxygenCommentWhite +\s*\ze//[/!]+ containedin=phpRegion
+ syn match doxygenCommentWhite +\s*\ze/\*\(\*/\)\@![*!]+
+ syn match doxygenCommentWhite +\s*\ze//[/!]+ containedin=phpRegion
+
+ syn region doxygenComment start=+/\*\(\*/\)\@![*!]+ end=+\*/+ contains=doxygenSyncStart,doxygenStart,doxygenTODO,doxygenLeadingWhite keepend fold containedin=phpRegion
+ syn region doxygenCommentL start=+//[/!]<\@!+me=e-1 end=+$+ contains=doxygenLeadingLWhite,doxygenStartL,@Spell keepend skipwhite skipnl nextgroup=doxygenCommentWhite2 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
+ syn region doxygenComment start=+/\*@\ze[{}]+ end=+\*/+ contains=doxygenGroupDefine,doxygenGroupDefineSpecial,@Spell fold containedin=phpRegion
" Single line brief followed by multiline comment.
+ syn match doxygenCommentWhite2 +\_s*\ze/\*\(\*/\)\@![*!]+ contained nextgroup=doxygenComment2
syn region doxygenComment2 start=+/\*\(\*/\)\@![*!]+ end=+\*/+ contained contains=doxygenSyncStart2,doxygenStart2,doxygenTODO keepend fold
" 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 doxygenSyncStart2 +[^*/]+ contained nextgroup=doxygenBody,doxygenPrev,doxygenStartSpecial,doxygenSkipComment,doxygenStartSkip2 skipwhite skipnl
" Skip empty lines at the start for when comments start on the 2nd/3rd line.
- syn match doxygenStartSkip2 +^\s*\*[^/]+me=e-1 contained nextgroup=doxygenBody,doxygenStartSpecial,doxygenStartSkip skipwhite skipnl
- syn match doxygenStartSkip2 +^\s*\*$+ contained nextgroup=doxygenBody,doxygenStartSpecial,,doxygenStartSkip skipwhite skipnl
+ syn match doxygenStartSkip2 +^\s*\*[^/]+me=e-1 contained nextgroup=doxygenBody,doxygenStartSpecial,doxygenStartSkipWhite skipwhite skipnl
+ syn match doxygenStartSkip2 +^\s*\*$+ contained nextgroup=doxygenBody,doxygenStartSpecial,doxygenStartSkipWhite skipwhite skipnl
syn match doxygenStart2 +/\*[*!]+ contained nextgroup=doxygenBody,doxygenPrev,doxygenStartSpecial,doxygenStartSkip2 skipwhite skipnl
" Match the Starting pattern (effectively creating the start of a BNF)
if !exists('g:doxygen_javadoc_autobrief') || g:doxygen_javadoc_autobrief
- syn match doxygenStart +/\*[*!]+ contained nextgroup=doxygenBrief,doxygenPrev,doxygenFindBriefSpecial,doxygenStartSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
- syn match doxygenStartL +//[/!]+ contained nextgroup=doxygenPrevL,doxygenBriefL,doxygenSpecial skipwhite
+ syn match doxygenStart +/\*[*!]+ contained nextgroup=doxygenBrief,doxygenPrev,doxygenFindBriefSpecial,doxygenStartSpecial,doxygenStartSkipWhite,doxygenPage skipwhite skipnl
+ syn match doxygenLeadingLWhite +\s\++ contained nextgroup=doxygenPrevL,doxygenBriefL,doxygenSpecial
+ syn match doxygenStartL +//[/!]+ contained nextgroup=doxygenLeaingLWhite,doxygenPrevL,doxygenBriefL,doxygenSpecial
" Match the first sentence as a brief comment
if ! exists('g:doxygen_end_punctuation')
let g:doxygen_end_punctuation='[.]'
endif
- exe 'syn region doxygenBrief contained start=+[\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]+ start=+\(^\s*\)\@<!\*/\@!+ start=+\<\k+ skip=+'.doxygen_end_punctuation.'\S\@=+ end=+'.doxygen_end_punctuation.'+ end=+\(\s*\(\n\s*\*\=\s*\)[@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\@=+ contains=doxygenSmallSpecial,doxygenContinueComment,doxygenBriefEndComment,doxygenFindBriefSpecial,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenHyperLink,doxygenHashLink,@Spell skipnl nextgroup=doxygenBody'
+ exe 'syn region doxygenBrief contained start=+[\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]+ start=+\(^\s*\)\@<!\*/\@!+ start=+\<\k+ skip=+'.doxygen_end_punctuation.'\S\@=+ end=+'.doxygen_end_punctuation.'+ end=+\(\s*\(\n\s*\*\=\s*\)[@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\@=+ contains=doxygenSmallSpecial,doxygenContinueCommentWhite,doxygenLeadingWhite,doxygenBriefEndComment,doxygenFindBriefSpecial,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenHyperLink,doxygenHashLink,@Spell skipnl nextgroup=doxygenBody'
syn match doxygenBriefEndComment +\*/+ contained
exe 'syn region doxygenBriefL start=+@\k\@!\|[\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@]+ start=+\<+ skip=+'.doxygen_end_punctuation.'\S+ end=+'.doxygen_end_punctuation.'\|$+ contained contains=doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell keepend'
syn match doxygenPrevL +<+ contained nextgroup=doxygenBriefL,doxygenSpecial skipwhite
else
- syn match doxygenStart +/\*[*!]+ contained nextgroup=doxygenBody,doxygenPrev,doxygenFindBriefSpecial,doxygenStartSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
- syn match doxygenStartL +//[/!]+ contained nextgroup=doxygenPrevL,doxygenLine,doxygenSpecial skipwhite
+ syn match doxygenStart +/\*[*!]+ contained nextgroup=doxygenBody,doxygenPrev,doxygenFindBriefSpecial,doxygenStartSpecial,doxygenStartSkipWhite,doxygenPage skipwhite skipnl
+ syn match doxygenStartL +//[/!]+ contained nextgroup=doxygenLeadingLWhite,doxygenPrevL,doxygenLine,doxygenSpecial
+ syn match doxygenLeadingLWhite +\s\++ contained nextgroup=doxygenPrevL,doxygenLine,doxygenSpecial
syn region doxygenLine start=+@\k\@!\|[\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@<]+ start=+\<+ end='$' contained contains=doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell keepend
syn match doxygenPrevL +<+ contained nextgroup=doxygenLine,doxygenSpecial skipwhite
endif
" 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 match doxygenSyncStart +\ze[^*/]+ contained nextgroup=doxygenBrief,doxygenPrev,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkipWhite,doxygenPage skipwhite skipnl
+ " Match an [@\]brief so that it moves to body-mode.
+ "
+ "
+ " syn match doxygenBriefLine contained
+ syn match doxygenBriefSpecial contained +[@\\]+ nextgroup=doxygenBriefWord skipwhite
+ " syn region doxygenFindBriefSpecial start=+[@\\]brief\>+ end=+\(\n\s*\*\=\s*\([@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+ keepend contains=doxygenBriefSpecial nextgroup=doxygenBody keepend skipwhite skipnl contained
+ syn region doxygenFindBriefSpecial start=+[@\\]brief\>+ skip=+^\s*\(\*/\@!\s*\)\=\(\<\|[@\\]\<\([npcbea]\>\|em\>\|ref\|link\>\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]\)+ end=+^+ keepend contains=doxygenBriefSpecial nextgroup=doxygenBody keepend skipwhite skipnl contained
- 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
+
+
+" end=+\(\n\s*\*\=\s*\([@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+
+"syn region doxygenBriefLine contained start=+\<\k+ skip=+^\s*\(\*/\@!\s*\)\=\(\<\|[@\\]\<\([npcbea]\>\|em\>\|ref\|link\>\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]\)+ end=+^+ contains=doxygenContinueCommentWhite,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenHyperLink,doxygenHashLink,@Spell skipwhite keepend matchgroup=xxx
+syn region doxygenBriefLine contained start=+\<\k+ skip=+^\s*\(\*/\@!\s*\)\=\(\<\|[@\\]\<\([npcbea]\>\|em\>\|ref\|link\>\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]\)+ end=+^+ skipwhite keepend matchgroup=xxx
+" syn region doxygenBriefLine matchgroup=xxxy contained start=+\<\k.\++ skip=+^\s*\k+ end=+end+ skipwhite keepend
+"doxygenFindBriefSpecial,
+ "" syn region doxygenSpecialMultilineDesc start=+.\++ contained contains=doxygenSpecialContinueCommentWhite,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell skipwhite keepend
+
" Match a '<' for applying a comment to the previous element.
- syn match doxygenPrev +<+ contained nextgroup=doxygenBrief,doxygenBody,doxygenSpecial,doxygenStartSkip skipwhite
+ syn match doxygenPrev +<+ contained nextgroup=doxygenBrief,doxygenBody,doxygenSpecial,doxygenStartSkipWhite skipwhite
if exists("c_comment_strings")
" These are anti-Doxygen comments. If there are more than two asterisks or 3 '/'s
@@ -123,10 +146,11 @@
"syn region doxygenBodyBit contained start=+$+
" The main body of a doxygen comment.
- syn region doxygenBody contained start=+\(/\*[*!]\)\@<!<\|[^<]\|$+ matchgroup=doxygenEndComment end=+\*/+re=e-2,me=e-2 contains=doxygenContinueComment,doxygenTODO,doxygenSpecial,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell
+ syn region doxygenBody contained start=+\(/\*[*!]\)\@<!<\|[^<]\|$+ matchgroup=doxygenEndComment end=+\*/+re=e-2,me=e-2 contains=doxygenContinueCommentWhite,doxygenTODO,doxygenSpecial,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell
" These allow the skipping of comment continuation '*' characters.
- syn match doxygenContinueComment contained +^\s*\*/\@!\s*+
+ syn match doxygenContinueCommentWhite contained +^\s*\ze\*+ nextgroup=doxygenContinueComment
+ syn match doxygenContinueComment contained +\*/\@!+
" Catch a Brief comment without punctuation - flag it as an error but
" make sure the end comment is picked up also.
@@ -135,27 +159,19 @@
" Skip empty lines at the start for when comments start on the 2nd/3rd line.
if !exists('g:doxygen_javadoc_autobrief') || g:doxygen_javadoc_autobrief
- syn match doxygenStartSkip +^\s*\*[^/]+me=e-1 contained nextgroup=doxygenBrief,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
- syn match doxygenStartSkip +^\s*\*$+ contained nextgroup=doxygenBrief,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
+ syn match doxygenStartSkipWhite +^\s*\ze\*/\@!+ contained nextgroup=doxygenBrief,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkipWhite,doxygenPage skipwhite skipnl
+ "syn match doxygenStartSkipWhite +^\s*\ze\*$+ contained nextgroup=doxygenBrief,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkipWhite,doxygenPage skipwhite skipnl
else
- syn match doxygenStartSkip +^\s*\*[^/]+me=e-1 contained nextgroup=doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkip,doxygenPage,doxygenBody skipwhite skipnl
- syn match doxygenStartSkip +^\s*\*$+ contained nextgroup=doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkip,doxygenPage,doxygenBody skipwhite skipnl
+ syn match doxygenStartSkipWhite +^\s*\*[^/]+me=e-1 contained nextgroup=doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkipWhite,doxygenPage,doxygenBody skipwhite skipnl
+ syn match doxygenStartSkipWhite +^\s*\*$+ contained nextgroup=doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkipWhite,doxygenPage,doxygenBody skipwhite skipnl
endif
- " Match an [@\]brief so that it moves to body-mode.
- "
- "
- " syn match doxygenBriefLine contained
- syn match doxygenBriefSpecial contained +[@\\]+ nextgroup=doxygenBriefWord skipwhite
- syn region doxygenFindBriefSpecial start=+[@\\]brief\>+ end=+\(\n\s*\*\=\s*\([@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+ keepend contains=doxygenBriefSpecial nextgroup=doxygenBody keepend skipwhite skipnl contained
-
-
" Create the single word matching special identifiers.
fun! s:DxyCreateSmallSpecial( kword, name )
let mx='[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\\[\\<>&.]@\|[.,][0-9a-zA-Z_]\@=\|::\|([^)]*)\|&[0-9a-zA-Z]\{2,7};\)\+'
- exe 'syn region doxygenSpecial'.a:name.'Word contained start=+'.a:kword.'+ end=+\(\_s\+'.mx.'\)\@<=[-a-zA-Z_0-9+*/^%|~!=&\\]\@!+ skipwhite contains=doxygenContinueComment,doxygen'.a:name.'Word'
+ exe 'syn region doxygenSpecial'.a:name.'Word contained start=+'.a:kword.'+ end=+\(\_s\+'.mx.'\)\@<=[-a-zA-Z_0-9+*/^%|~!=&\\]\@!+ skipwhite contains=doxygenContinueCommentWhite,doxygen'.a:name.'Word'
exe 'syn match doxygen'.a:name.'Word contained "\_s\@<='.mx.'" contains=doxygenHtmlSpecial,@Spell keepend'
endfun
call s:DxyCreateSmallSpecial('p', 'Code')
@@ -180,40 +196,42 @@
" Match parameters and retvals (highlighting the first word as special).
syn match doxygenParamDirection contained "\v\[(\s*in>((]\s*\[|\s*,\s*)out>)=|out>((]\s*\[|\s*,\s*)in>)=)\]" nextgroup=doxygenParamName skipwhite
- syn keyword doxygenParam contained param tparam nextgroup=doxygenParamName,doxygenParamDirection skipwhite
+ syn keyword doxygenParam contained param nextgroup=doxygenParamName,doxygenParamDirection skipwhite
+ syn keyword doxygenTParam contained tparam nextgroup=doxygenParamName skipwhite
syn match doxygenParamName contained +[A-Za-z0-9_:]\++ nextgroup=doxygenSpecialMultilineDesc skipwhite
syn keyword doxygenRetval contained retval throw throws exception nextgroup=doxygenParamName skipwhite
" Match one line identifiers.
syn keyword doxygenOther contained addindex anchor
\ dontinclude endhtmlonly endlatexonly showinitializer hideinitializer
- \ example htmlonly image include ingroup internal latexonly line
- \ overload related relates relatedalso relatesalso sa skip skipline
+ \ example htmlonly image include includelineno ingroup internal latexonly line
+ \ overload relates relatesalso sa skip skipline
\ until verbinclude version addtogroup htmlinclude copydoc dotfile
\ xmlonly endxmlonly
- \ nextgroup=doxygenSpecialOnelineDesc
+ \ nextgroup=doxygenSpecialOnelineDesc copybrief copydetails copyright dir extends
+ \ implements
- syn region doxygenCodeRegion contained matchgroup=doxygenOther start=+\<code\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<endcode\>+ contains=doxygenCodeRegionSpecial,doxygenContinueComment,doxygenErrorComment,@NoSpell
+ syn region doxygenCodeRegion contained matchgroup=doxygenOther start=+\<code\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<endcode\>+ contains=doxygenCodeRegionSpecial,doxygenContinueCommentWhite,doxygenErrorComment,@NoSpell
syn match doxygenCodeRegionSpecial contained +[\\@]\(endcode\>\)\@=+
- syn region doxygenVerbatimRegion contained matchgroup=doxygenOther start=+\<verbatim\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<endverbatim\>+ contains=doxygenVerbatimRegionSpecial,doxygenContinueComment,doxygenErrorComment,@NoSpell
+ syn region doxygenVerbatimRegion contained matchgroup=doxygenOther start=+\<verbatim\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<endverbatim\>+ contains=doxygenVerbatimRegionSpecial,doxygenContinueCommentWhite,doxygenErrorComment,@NoSpell
syn match doxygenVerbatimRegionSpecial contained +[\\@]\(endverbatim\>\)\@=+
- if exists('b:current_syntax')
+ if exists('b:current_syntax')
let b:doxygen_syntax_save=b:current_syntax
unlet b:current_syntax
endif
syn include @Dotx syntax/dot.vim
- if exists('b:doxygen_syntax_save')
+ if exists('b:doxygen_syntax_save')
let b:current_syntax=b:doxygen_syntax_save
unlet b:doxygen_syntax_save
else
unlet b:current_syntax
endif
- syn region doxygenDotRegion contained matchgroup=doxygenOther start=+\<dot\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<enddot\>+ contains=doxygenDotRegionSpecial,doxygenErrorComment,doxygenContinueComment,@NoSpell,@Dotx
+ syn region doxygenDotRegion contained matchgroup=doxygenOther start=+\<dot\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<enddot\>+ contains=doxygenDotRegionSpecial,doxygenErrorComment,doxygenContinueCommentWhite,@NoSpell,@Dotx
syn match doxygenDotRegionSpecial contained +[\\@]\(enddot\>\)\@=+
" Match single line identifiers.
@@ -224,13 +242,13 @@
syn keyword doxygenOther contained par nextgroup=doxygenHeaderLine
syn region doxygenHeaderLine start=+.+ end=+^+ contained skipwhite nextgroup=doxygenSpecialMultilineDesc
- syn keyword doxygenOther contained arg author authors date deprecated li result return returns see invariant note post pre remark remarks since test nextgroup=doxygenSpecialMultilineDesc
+ syn keyword doxygenOther contained arg author authors date deprecated li return returns see invariant note post pre remarks since test nextgroup=doxygenSpecialMultilineDesc
syn keyword doxygenOtherTODO contained todo attention nextgroup=doxygenSpecialMultilineDesc
syn keyword doxygenOtherWARN contained warning nextgroup=doxygenSpecialMultilineDesc
syn keyword doxygenOtherBUG contained bug nextgroup=doxygenSpecialMultilineDesc
" Handle \link, \endlink, highlighting the link-to and the link text bits separately.
- syn region doxygenOtherLink matchgroup=doxygenOther start=+\<link\>+ end=+[\@]\@<=endlink\>+ contained contains=doxygenLinkWord,doxygenContinueComment,doxygenLinkError,doxygenEndlinkSpecial
+ syn region doxygenOtherLink matchgroup=doxygenOther start=+\<link\>+ end=+[\@]\@<=endlink\>+ contained contains=doxygenLinkWord,doxygenContinueCommentWhite,doxygenLinkError,doxygenEndlinkSpecial
syn match doxygenEndlinkSpecial contained +[\\@]\zeendlink\>+
syn match doxygenLinkWord "[_a-zA-Z:#()][_a-z0-9A-Z:#()]*\>" contained skipnl nextgroup=doxygenLinkRest,doxygenContinueLinkComment
@@ -250,7 +268,7 @@
" Handle section
syn keyword doxygenOther defgroup section subsection subsubsection weakgroup contained skipwhite nextgroup=doxygenSpecialIdent
- syn region doxygenSpecialSectionDesc start=+.\++ end=+$+ contained skipwhite contains=doxygenSmallSpecial,@doxygenHtmlGroup keepend skipwhite skipnl nextgroup=doxygenContinueComment
+ syn region doxygenSpecialSectionDesc start=+.\++ end=+$+ contained skipwhite contains=doxygenSmallSpecial,@doxygenHtmlGroup keepend skipwhite skipnl nextgroup=doxygenContinueCommentWhite
syn match doxygenSpecialIdent "\<[a-zA-Z_0-9]\+\>" contained nextgroup=doxygenSpecialSectionDesc
" Does the one-line description for the one-line type identifiers.
@@ -260,8 +278,12 @@
" Handle the multiline description for the multiline type identifiers.
" Continue until an 'empty' line (can contain a '*' continuation) or until the
" next whole-line @ command \ command.
- syn region doxygenSpecialMultilineDesc start=+.\++ skip=+^\s*\(\*/\@!\s*\)\=\(\<\|[@\\]\<\([npcbea]\>\|em\>\|ref\|link\>\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]\)+ end=+^+ contained contains=doxygenSpecialContinueComment,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell skipwhite keepend
- syn match doxygenSpecialContinueComment contained +^\s*\*/\@!\s*+ nextgroup=doxygenSpecial skipwhite
+ syn region doxygenSpecialMultilineDesc start=+.\++ skip=+^\s*\(\*/\@!\s*\)\=\(\<\|[@\\]\<\([npcbea]\>\|em\>\|ref\|link\>\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]\)+ end=+^+ contained contains=doxygenSpecialContinueCommentWhite,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell skipwhite keepend
+
+" syn match doxygenSpecialContinueComment contained +^\s*\*/\@!\s*+ nextgroup=doxygenSpecial skipwhite
+ syn match doxygenSpecialContinueCommentWhite contained +^\s*\ze\*+ nextgroup=doxygenSpecialContinueComment
+ syn match doxygenSpecialContinueComment contained +\*/\@!+
+
" Handle special cases 'bold' and 'group'
syn keyword doxygenBold contained bold nextgroup=doxygenSpecialHeading
@@ -288,7 +310,7 @@
" Supported HTML subset. Not perfect, but okay.
syn case ignore
- syn region doxygenHtmlTag contained matchgroup=doxygenHtmlCh start=+\v\</=\ze([biuap]|em|strong|img|br|center|code|dfn|d[ldt]|hr|h[0-3]|li|[ou]l|pre|small|sub|sup|table|tt|var|caption|src|alt|longdesc|name|height|width|usemap|ismap|href|type)>+ skip=+\\<\|\<\k\+=\("[^"]*"\|'[^']*\)+ end=+>+ contains=doxygenHtmlCmd,doxygenContinueComment,doxygenHtmlVar
+ syn region doxygenHtmlTag contained matchgroup=doxygenHtmlCh start=+\v\</=\ze([biuap]|em|strong|img|br|center|code|dfn|d[ldt]|hr|h[0-3]|li|[ou]l|pre|small|sub|sup|table|tt|var|caption|src|alt|longdesc|name|height|width|usemap|ismap|href|type)>+ skip=+\\<\|\<\k\+=\("[^"]*"\|'[^']*\)+ end=+>+ contains=doxygenHtmlCmd,doxygenContinueCommentWhite,doxygenHtmlVar
syn keyword doxygenHtmlCmd contained b i em strong u img a br p center code dfn dl dd dt hr h1 h2 h3 li ol ul pre small sub sup table tt var caption nextgroup=doxygenHtmlVar skipwhite
syn keyword doxygenHtmlVar contained src alt longdesc name height width usemap ismap href type nextgroup=doxygenHtmlEqu skipwhite
syn match doxygenHtmlEqu contained +=+ nextgroup=doxygenHtmlExpr skipwhite
@@ -298,7 +320,7 @@
syn cluster doxygenHtmlGroup contains=doxygenHtmlCode,doxygenHtmlBold,doxygenHtmlUnderline,doxygenHtmlItalic,doxygenHtmlSpecial,doxygenHtmlTag,doxygenHtmlLink
- syn cluster doxygenHtmlTop contains=@Spell,doxygenHtmlSpecial,doxygenHtmlTag,doxygenContinueComment
+ syn cluster doxygenHtmlTop contains=@Spell,doxygenHtmlSpecial,doxygenHtmlTag,doxygenContinueCommentWhite
" Html Support
syn region doxygenHtmlLink contained start=+<[aA]\>\s*\(\n\s*\*\s*\)\=\(\(name\|href\)=\("[^"]*"\|'[^']*'\)\)\=\s*>+ end=+</[aA]>+me=e-4 contains=@doxygenHtmlTop
hi link doxygenHtmlLink Underlined
@@ -343,7 +365,7 @@
syn cluster rcGroup add=doxygen.*
let s:my_syncolor=0
- if !exists(':SynColor')
+ if !exists(':SynColor')
command -nargs=+ SynColor hi def <args>
let s:my_syncolor=1
endif
@@ -469,6 +491,8 @@
call s:Doxygen_Hilights()
+ syn match doxygenLeadingWhite +\(^\s*\*\)\@<=\s*+ contained
+
" This is still a proposal, but won't do any harm.
aug doxygengroup
au!
@@ -483,6 +507,7 @@
SynLink doxygenOtherTODO Todo
SynLink doxygenOtherWARN Todo
SynLink doxygenOtherBUG Todo
+ SynLink doxygenLeadingLWhite doxygenBody
SynLink doxygenErrorSpecial Error
SynLink doxygenErrorEnd Error
@@ -517,7 +542,10 @@
SynLink doxygenBriefL doxygenBrief
SynLink doxygenBriefLine doxygenBrief
SynLink doxygenHeaderLine doxygenSpecialHeading
- SynLink doxygenStartSkip doxygenContinueComment
+ SynLink doxygenCommentWhite Normal
+ SynLink doxygenCommentWhite2 doxygenCommentWhite
+ SynLink doxygenContinueCommentWhite doxygenCommentWhite
+ SynLink doxygenStartSkipWhite doxygenContinueCommentWhite
SynLink doxygenLinkWord doxygenParamName
SynLink doxygenLinkRest doxygenSpecialMultilineDesc
SynLink doxygenHyperLink doxygenLinkWord
@@ -591,5 +619,5 @@
let &cpo = s:cpo_save
unlet s:cpo_save
endtry
-
+let suppress_doxygen=1
" vim:et sw=2 sts=2