diff options
Diffstat (limited to 'runtime')
42 files changed, 530 insertions, 398 deletions
diff --git a/runtime/CMakeLists.txt b/runtime/CMakeLists.txt index 46c5cf8235..ef8e38b553 100644 --- a/runtime/CMakeLists.txt +++ b/runtime/CMakeLists.txt @@ -38,7 +38,7 @@ add_custom_command(OUTPUT ${GENERATED_HELP_TAGS} COMMAND "${PROJECT_BINARY_DIR}/bin/nvim" -u NONE -i NONE - -esX + -es --headless -c "helptags ++t ." -c quit diff --git a/runtime/autoload/provider/python.vim b/runtime/autoload/provider/python.vim index d4a509864f..b769895357 100644 --- a/runtime/autoload/provider/python.vim +++ b/runtime/autoload/provider/python.vim @@ -46,7 +46,7 @@ function! provider#python#Call(method, args) echohl WarningMsg echomsg v:exception echohl None - finish + return endtry endif return call(s:rpcrequest, insert(insert(a:args, 'python_'.a:method), s:host)) diff --git a/runtime/autoload/provider/python3.vim b/runtime/autoload/provider/python3.vim index f469bf55aa..2952f76b40 100644 --- a/runtime/autoload/provider/python3.vim +++ b/runtime/autoload/provider/python3.vim @@ -46,7 +46,7 @@ function! provider#python3#Call(method, args) echohl WarningMsg echomsg v:exception echohl None - finish + return endtry endif return call(s:rpcrequest, insert(insert(a:args, 'python_'.a:method), s:host)) diff --git a/runtime/doc/Makefile b/runtime/doc/Makefile index 07b4226151..7423e63673 100644 --- a/runtime/doc/Makefile +++ b/runtime/doc/Makefile @@ -20,7 +20,7 @@ all: tags html # Use Vim to generate the tags file. Can only be used when Vim has been # compiled and installed. Supports multiple languages. vimtags: $(DOCS) - $(VIMEXE) -u NONE -esX -c "helptags ++t ." -c quit + $(VIMEXE) -u NONE -es -c "helptags ++t ." -c quit # Use "doctags" to generate the tags file. Only works for English! tags: doctags $(DOCS) diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt index 7b53bd64ca..a0ed91c95d 100644 --- a/runtime/doc/autocmd.txt +++ b/runtime/doc/autocmd.txt @@ -251,6 +251,7 @@ Name triggered by ~ |SwapExists| detected an existing swap file |TermOpen| when a terminal buffer is starting +|TermClose| when a terminal buffer ends Options |FileType| when the 'filetype' option has been set @@ -871,6 +872,8 @@ TermChanged After the value of 'term' has changed. Useful for re-loading the syntax file to update the colors, fonts and other terminal-dependent settings. Executed for all loaded buffers. + {Nvim} *TermClose* +TermClose When a terminal buffer ends. {Nvim} *TermOpen* TermOpen When a terminal buffer is starting. This can be used to configure the terminal emulator by diff --git a/runtime/doc/develop.txt b/runtime/doc/develop.txt index 2f96c4c6dc..d0dd741888 100644 --- a/runtime/doc/develop.txt +++ b/runtime/doc/develop.txt @@ -140,18 +140,13 @@ such that most users will enjoy using Vim as it is. Commands and options can be used to adjust Vim to the desire of the user and its environment. -VIM IS... NOT *design-not* - -- Vim is not a shell or an Operating System. You will not be able to run a - shell inside Vim or use it to control a debugger. This should work the - other way around: Use Vim as a component from a shell or in an IDE. - A satirical way to say this: "Unlike Emacs, Vim does not attempt to include - everything but the kitchen sink, but some people say that you can clean one - with it. ;-)" - To use Vim with gdb see: http://www.agide.org and http://clewn.sf.net. -- Vim is not a fancy GUI editor that tries to look nice at the cost of - being less consistent over all platforms. But functional GUI features are - welcomed. +NVIM IS... NOT *design-not* + +Nvim is not an Operating System; instead it should be composed with other +tools, or hosted as a component. Marvim once said: "Unlike Emacs, Nvim does +not attempt to include everything but the kitchen sink, but some people use it +for plumbing." + ============================================================================== 2. Coding style *coding-style* diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt index bb3d89e4ac..ffa3f1d673 100644 --- a/runtime/doc/editing.txt +++ b/runtime/doc/editing.txt @@ -1141,8 +1141,8 @@ If you want to always use ":confirm", set the 'confirm' option. |:mkvimrc|, |:mksession|, |:mkview|, |:split|, |:vsplit|, |:tabe|, |:tabnew|, |:cfile|, |:cgetfile|, |:caddfile|, |:lfile|, |:lgetfile|, |:laddfile|, - |:diffsplit|, |:diffpatch|, |:open|, |:pedit|, - |:redir|, |:source|, |:update|, |:visual|, |:vsplit|, + |:diffsplit|, |:diffpatch|, |:pedit|, |:redir|, + |:source|, |:update|, |:visual|, |:vsplit|, and |:qall| if 'confirm' is set. {only in Win32, Athena, Motif, GTK and Mac GUI} When ":browse" is not possible you get an error diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index 33ee5b78c1..7b12d2082f 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1763,6 +1763,8 @@ cursor( {lnum}, {col} [, {off}]) cursor( {list}) Number move cursor to position in {list} deepcopy( {expr} [, {noref}]) any make a full copy of {expr} delete( {fname}) Number delete file {fname} +dictwatcheradd({dict}, {pattern}, {callback}) Start watching a dictionary +dictwatcherdel({dict}, {pattern}, {callback}) Stop watching a dictionary did_filetype() Number TRUE if FileType autocommand event used diff_filler( {lnum}) Number diff filler lines about {lnum} diff_hlID( {lnum}, {col}) Number diff highlighting at {lnum}/{col} @@ -1870,10 +1872,13 @@ invert( {expr}) Number bitwise invert isdirectory( {directory}) Number TRUE if {directory} is a directory islocked( {expr}) Number TRUE if {expr} is locked items( {dict}) List key-value pairs in {dict} -job_close({job}) Closes a job with id {job} -job_send({job}, {data}) Writes {data} to {job}'s stdin -job_spawn({name}, {prog}[, {argv}]) - Spawns {prog} as a job associated with {name} +jobclose({job}[, {stream}]) Number Closes a job stream(s) +jobresize({job}, {width}, {height}) + Number Resize {job}'s pseudo terminal window +jobsend({job}, {data}) Number Writes {data} to {job}'s stdin +jobstart({cmd}[, {opts}]) Number Spawns {cmd} as a job +jobstop({job}) Number Stops a job +jobwait({ids}[, {timeout}]) Number Wait for a set of jobs join( {list} [, {sep}]) String join {list} items into one String keys( {dict}) List keys in {dict} len( {expr}) Number the length of {expr} @@ -2661,6 +2666,44 @@ delete({fname}) *delete()* To delete a line from the buffer use |:delete|. Use |:exe| when the line number is in a variable. +dictwatcheradd({dict}, {pattern}, {callback}) *dictwatcheradd()* + Adds a watcher to a dictionary. A dictionary watcher is + identified by three components: + + - A dictionary({dict}); + - A key pattern({pattern}). + - A function({callback}). + + After this is called, every change on {dict} and on keys + matching {pattern} will result in {callback} being invoked. + + For now {pattern} only accepts very simple patterns that can + contain a '*' at the end of the string, in which case it will + match every key that begins with the substring before the '*'. + That means if '*' is not the last character of {pattern}, only + keys that are exactly equal as {pattern} will be matched. + + The {callback} receives three arguments: + + - The dictionary being watched. + - The key which changed. + - A dictionary containg the new and old values for the key. + + The type of change can be determined by examining the keys + present on the third argument: + + - If contains both `old` and `new`, the key was updated. + - If it contains only `new`, the key was added. + - If it contains only `old`, the key was deleted. + + This function can be used by plugins to implement options with + validation and parsing logic. + +dictwatcherdel({dict}, {pattern}, {callback}) *dictwatcherdel()* + Removes a watcher added with |dictwatcheradd()|. All three + arguments must match the ones passed to |dictwatcheradd()| in + order for the watcher to be successfully deleted. + *did_filetype()* did_filetype() Returns non-zero when autocommands are being executed and the FileType event has been triggered at least once. Can be used @@ -2959,6 +3002,8 @@ extend({expr1}, {expr2} [, {expr3}]) *extend()* {expr1} is changed when {expr2} is not empty. If necessary make a copy of {expr1} first. {expr2} remains unchanged. + When {expr1} is locked and {expr2} is not empty the operation + fails. Returns {expr1}. diff --git a/runtime/doc/fold.txt b/runtime/doc/fold.txt index ef69835462..03dd6a61ba 100644 --- a/runtime/doc/fold.txt +++ b/runtime/doc/fold.txt @@ -362,7 +362,7 @@ zX Undo manually opened and closed folds: re-apply 'foldlevel'. Also forces recomputing folds, like |zx|. *zm* -zm Fold more: Subtract one from 'foldlevel'. If 'foldlevel' was +zm Fold more: Subtract |v:count1| from 'foldlevel'. If 'foldlevel' was already zero nothing happens. 'foldenable' will be set. @@ -371,7 +371,7 @@ zM Close all folds: set 'foldlevel' to 0. 'foldenable' will be set. *zr* -zr Reduce folding: Add one to 'foldlevel'. +zr Reduce folding: Add |v:count1| to 'foldlevel'. *zR* zR Open all folds. This sets 'foldlevel' to highest fold level. diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt index 90f772c46f..c74c31d1fa 100644 --- a/runtime/doc/gui.txt +++ b/runtime/doc/gui.txt @@ -61,10 +61,6 @@ When the GUI starts up initializations are carried out, in this order: ~/.config). The name of the first file found is stored in $MYGVIMRC, unless it was already set. -- If the 'exrc' option is set (which is NOT the default) the file ./.ngvimrc - is sourced, if it exists and isn't the same file as the system or user - gvimrc file. If this file is not owned by you, some security restrictions - apply. When ".ngvimrc" is not found, "_ngvimrc" is tried too. NOTE: All but the first one are not carried out if Vim was started with "-u NONE" and no "-U" argument was given, or when started with "-U NONE". diff --git a/runtime/doc/help.txt b/runtime/doc/help.txt index 76903d50a5..9ca96dfd79 100644 --- a/runtime/doc/help.txt +++ b/runtime/doc/help.txt @@ -160,7 +160,6 @@ Versions ~ |vi_diff.txt| Main differences between Vim and Vi *sys-file-list* Remarks about specific systems ~ -|os_mac.txt| Macintosh |os_win32.txt| MS-Windows *standard-plugin-list* Standard plugins ~ diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt index 0238d7cc53..75c986efcd 100644 --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -1359,8 +1359,7 @@ tag command action ~ |:number| :nu[mber] print lines with line number |:nunmap| :nun[map] like ":unmap" but for Normal mode |:nunmenu| :nunme[nu] remove menu for Normal mode -|:oldfiles| :ol[dfiles] list files that have marks in the ShaDa file -|:open| :o[pen] start open mode (not implemented) +|:oldfiles| :o[ldfiles] list files that have marks in the ShaDa file |:omap| :om[ap] like ":map" but for Operator-pending mode |:omapclear| :omapc[lear] remove all mappings for Operator-pending mode |:omenu| :ome[nu] add menu for Operator-pending mode diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt index a48ad0185d..013eb6b97b 100644 --- a/runtime/doc/insert.txt +++ b/runtime/doc/insert.txt @@ -1,4 +1,4 @@ -*insert.txt* For Vim version 7.4. Last change: 2014 Aug 04 +*insert.txt* For Vim version 7.4. Last change: 2015 May 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -77,9 +77,11 @@ CTRL-W Delete the word before the cursor (see |i_backspacing| about joining lines). See the section "word motions", |word-motions|, for the definition of a word. *i_CTRL-U* -CTRL-U Delete all entered characters in the current line (see - |i_backspacing| about joining lines). - +CTRL-U Delete all entered characters before the cursor in the current + line. If there are no newly entereed characters and + 'backspace'is not empty, delete all characters before the + cursor in the current line. + See |i_backspacing| about joining lines. *i_CTRL-I* *i_<Tab>* *i_Tab* <Tab> or CTRL-I Insert a tab. If the 'expandtab' option is on, the equivalent number of spaces is inserted (use CTRL-V <Tab> to diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt index 5e3fe715ab..7f84f2d2a3 100644 --- a/runtime/doc/motion.txt +++ b/runtime/doc/motion.txt @@ -1,4 +1,4 @@ -*motion.txt* For Vim version 7.4. Last change: 2014 Feb 11 +*motion.txt* For Vim version 7.4. Last change: 2015 Jun 06 VIM REFERENCE MANUAL by Bram Moolenaar @@ -171,6 +171,8 @@ CTRL-H or *CTRL-H* *<BS>* l or *l* <Right> or *<Right>* *<Space>* <Space> [count] characters to the right. |exclusive| motion. + See the 'whichwrap' option for adjusting the behavior + at end of line *0* 0 To the first character of the line. |exclusive| diff --git a/runtime/doc/nvim_terminal_emulator.txt b/runtime/doc/nvim_terminal_emulator.txt index 701c6dc274..6ef3aaebaa 100644 --- a/runtime/doc/nvim_terminal_emulator.txt +++ b/runtime/doc/nvim_terminal_emulator.txt @@ -105,6 +105,8 @@ The configuration variables are only processed when the terminal starts, which is why it needs to be done with the |TermOpen| autocmd or setting global variables before the terminal is started. +There is also a corresponding |TermClose| event. + The terminal cursor can be highlighted via |hl-TermCursor| and |hl-TermCursorNC|. diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index baafe8cbea..2b1044bead 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -980,60 +980,13 @@ A jump table for the options with a short description can be found at |Q_op|. the newly created file). Also see 'backupcopy' and |crontab|. *'balloondelay'* *'bdlay'* -'balloondelay' 'bdlay' number (default: 600) - global - {only available when compiled with the |+balloon_eval| - feature} - Delay in milliseconds before a balloon may pop up. See |balloon-eval|. +'balloondelay' 'bdlay' Removed. {Nvim} - *'ballooneval'* *'beval'* *'noballooneval'* *'nobeval'* -'ballooneval' 'beval' boolean (default off) - global - {only available when compiled with the |+balloon_eval| - feature} - Switch on the |balloon-eval| functionality. + *'ballooneval'* *'beval'* *'noballooneval'* *'nobeval'* +'ballooneval' 'beval' Removed. {Nvim} - *'balloonexpr'* *'bexpr'* -'balloonexpr' 'bexpr' string (default "") - global or local to buffer |global-local| - {only available when compiled with the |+balloon_eval| - feature} - Expression for text to show in evaluation balloon. It is only used - when 'ballooneval' is on. These variables can be used: - - v:beval_bufnr number of the buffer in which balloon is going to show - v:beval_winnr number of the window - v:beval_lnum line number - v:beval_col column number (byte index) - v:beval_text word under or after the mouse pointer - - The evaluation of the expression must not have side effects! - Example: > - function! MyBalloonExpr() - return 'Cursor is at line ' . v:beval_lnum . - \', column ' . v:beval_col . - \ ' of file ' . bufname(v:beval_bufnr) . - \ ' on word "' . v:beval_text . '"' - endfunction - set bexpr=MyBalloonExpr() - set ballooneval -< - NOTE: The balloon is displayed only if the cursor is on a text - character. If the result of evaluating 'balloonexpr' is not empty, - Vim does not try to send a message to an external debugger (Netbeans - or Sun Workshop). - - The expression will be evaluated in the |sandbox| when set from a - modeline, see |sandbox-option|. - - It is not allowed to change text or jump to another window while - evaluating 'balloonexpr' |textlock|. - - To check whether line breaks in the balloon text work use this check: > - if has("balloon_multiline") -< When they are supported "\n" characters will start a new line. If the - expression evaluates to a |List| this is equal to using each List item - as a string and putting "\n" in between them. + *'balloonexpr'* *'bexpr'* +'balloonexpr' 'bexpr' Removed. {Nvim} *'belloff'* *'bo'* 'belloff' 'bo' string (default "") @@ -1538,14 +1491,6 @@ A jump table for the options with a short description can be found at |Q_op|. (gzipped files for example). Unloaded buffers are not scanned for whole-line completion. - The default is ".,w,b,u,t,i", which means to scan: - 1. the current buffer - 2. buffers in other windows - 3. other loaded buffers - 4. unloaded buffers - 5. tags - 6. included files - As you can see, CTRL-N and CTRL-P can be used to do any 'iskeyword'- based expansion (e.g., dictionary |i_CTRL-X_CTRL-K|, included patterns |i_CTRL-X_CTRL-I|, tags |i_CTRL-X_CTRL-]| and normal expansions). @@ -2350,13 +2295,13 @@ A jump table for the options with a short description can be found at |Q_op|. *'exrc'* *'ex'* *'noexrc'* *'noex'* 'exrc' 'ex' boolean (default off) global - Enables the reading of .nvimrc, .exrc and .ngvimrc in the current - directory. If you switch this option on you should also consider - setting the 'secure' option (see |initialization|). Using a local - .exrc, .nvimrc or .ngvimrc is a potential security leak, use with care! - also see |init.vim| and |gui-init|. + Enables the reading of .nvimrc and .exrc in the current directory. + If you switch this option on you should also consider setting the + 'secure' option (see |initialization|). Using this option comes + with a potential security risk, use with care! This option cannot be set from a |modeline| or in the |sandbox|, for security reasons. + Also see |init.vim| and |gui-init|. *'fileencoding'* *'fenc'* *E213* 'fileencoding' 'fenc' string (default: "") @@ -5342,8 +5287,8 @@ A jump table for the options with a short description can be found at |Q_op|. *'shada'* *'sd'* *E526* *E527* *E528* 'shada' 'sd' string (Vim default for - Win32: '!,100,<50,s10,h,rA:,rB: - others: '!,100,<50,s10,h + Win32: !,'100,<50,s10,h,rA:,rB: + others: !,'100,<50,s10,h Vi default: "") global When non-empty, the shada file is read upon startup and written diff --git a/runtime/doc/os_mac.txt b/runtime/doc/os_mac.txt deleted file mode 100644 index 3eebb7ef0d..0000000000 --- a/runtime/doc/os_mac.txt +++ /dev/null @@ -1,116 +0,0 @@ -*os_mac.txt* For Vim version 7.4. Last change: 2006 Apr 30 - - - VIM REFERENCE MANUAL by Bram Moolenaar et al. - - - *mac* *Mac* *macintosh* *Macintosh* - -This file documents the particularities of the Macintosh version of Vim. - -NOTE: This file is a bit outdated. You might find more useful info here: - http://macvim.org/ - -1. Filename Convention |mac-filename| -2. .vimrc an .vim files |mac-vimfile| -3. FAQ |mac-faq| -4. Known Lack |mac-lack| -5. Mac Bug Report |mac-bug| -6. Compiling Vim |mac-compile| - -There was a Mac port for version 3.0 of Vim. Here are the first few lines -from the old file: - -VIM Release Notes -Initial Macintosh release, VIM version 3.0 -19 October 1994 - -Eric Fischer -<enf1@midway.uchicago.edu>, <eric@jcp.uchicago.edu>, <etaoin@uchicago.edu> -5759 N. Guilford Ave -Indianapolis IN 46220 USA - -============================================================================== -1. Filename Convention *mac-filename* - -Starting with Vim version 7 you can just use the unix path separators with -Vim. In order to determine if the specified filename is relative to the -current folder or absolute (i.e. relative to the "Desktop"), the following -algorithm is used: - - If the path start by a "/", the path is absolute - If the path start by a ":", the path is relative - If the path doesn't start by neither a "/" nor ":", - and a ":" is found before a "/" then the path is absolute -> - :e /HD/text - :e HD:text -< Edit the file "text" of the disk "HD" > - :e :src:main.c - :e src/main.c -< Edit the file "main.c" in the folder "src" in the current folder > - :e os_mac.c -< Edit the file "os_mac.c" in the current folder. - -You can use the |$VIM| and |$VIMRUNTIME| variable. > - - :so $VIMRUNTIME/syntax/syntax.vim - -============================================================================== -2. .vimrc and .vim files *mac-vimfile* - -It is recommended to use Unix style line separators for Vim scripts, thus a -single newline character. - -When starting up Vim will load the $VIMRUNTIME/macmap.vim script to define -default command-key mappings. - -On older systems files starting with a dot "." are discouraged, thus the rc -files are named "vimrc" or "_vimrc" and "gvimrc" or "_gvimrc". These files -can be in any format (mac, dos or unix). - -============================================================================== -3. Mac FAQ *mac-faq* - -On the internet: http://macvim.org/OSX/index.php#FAQ - -Q: I can't enter non-ASCII character in Apple Terminal. -A: Under Window Settings, Emulation, make sure that "Escape non-ASCII - characters" is not checked. - -Q: How do I start the GUI from the command line? -A: Assuming that Vim.app is located in /Applications: - open /Applications/Vim.app - Or: - /Applications/Vim.app/Contents/MacOS/Vim -g {arguments} - -Q: How can I set $PATH to something reasonable when I start Vim.app from the - GUI or with open? -A: The following trick works with most shells. Put it in your vimrc file. - This is included in the system vimrc file included with the binaries - distributed at macvim.org . > - let s:path = system("echo echo VIMPATH'${PATH}' | $SHELL -l") - let $PATH = matchstr(s:path, 'VIMPATH\zs.\{-}\ze\n') - -============================================================================== -4. Mac Lack *mac-lack* - -In a terminal CTRL-^ needs to be entered as Shift-Control-6. CTRL-@ as -Shift-Control-2. - -============================================================================== -5. Mac Bug Report *mac-bug* - -When reporting any Mac specific bug or feature change, please use the vim-mac -maillist |vim-mac|. However, you need to be subscribed. An alternative is to -send a message to the current MacVim maintainers: - - mac@vim.org - -============================================================================== -6. Compiling Vim *mac-compile* - -See the file "src/INSTALLmac.txt" that comes with the source files. - - - vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt index 75384832ec..d029391c60 100644 --- a/runtime/doc/repeat.txt +++ b/runtime/doc/repeat.txt @@ -586,6 +586,9 @@ For example, to profile the one_script.vim script file: > If {fname} already exists it will be silently overwritten. The variable |v:profiling| is set to one. +:prof[ile] stop + Write the logfile and stop profiling. + :prof[ile] pause Don't profile until the following ":profile continue". Can be used when doing something that should not be counted (e.g., an @@ -609,6 +612,9 @@ For example, to profile the one_script.vim script file: > after this command. A :profile command in the script itself won't work. +:prof[ile] dump + Don't wait until exiting Vim and write the current state of + profiling to the log immediately. :profd[el] ... *:profd* *:profdel* Stop profiling for the arguments specified. See |:breakdel| diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt index 2c630ed958..572823eca9 100644 --- a/runtime/doc/starting.txt +++ b/runtime/doc/starting.txt @@ -402,10 +402,9 @@ accordingly. Vim proceeds in this order: initializations until 4. are skipped. Only the "-u" option is interpreted. *system-vimrc* - a. For Unix, MS-DOS, MS-Windows, and Macintosh, the system vimrc file is - read for initializations. The path of this file is shown with the + a. For Unix, MS-Windows, and Macintosh, the system vimrc file is read for + initializations. The path of this file is shown with the ":version" command. Mostly it's "$VIM/vimrc". - For the Macintosh the $VIMRUNTIME/macmap.vim is read. *VIMINIT* *EXINIT* *$MYVIMRC* b. Four places are searched for initializations. The first that exists @@ -1163,13 +1162,14 @@ running) you have additional options: *:wv* *:wviminfo* :wv[iminfo][!] [file] Deprecated alias to |:wshada| command. - *:ol* *:oldfiles* -:ol[dfiles] List the files that have marks stored in the ShaDa + *:o* *:ol* *:oldfiles* +:o[ldfiles][!] List the files that have marks stored in the ShaDa file. This list is read on startup and only changes afterwards with ":rshada!". Also see |v:oldfiles|. The number can be used with |c_#<|. + Use ! to get a file selection prompt. -:bro[wse] ol[dfiles][!] +:bro[wse] o[ldfiles][!] List file names as with |:oldfiles|, and then prompt for a number. When the number is valid that file from the list is edited. diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index 65e69a901b..eeed014fdb 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1140,9 +1140,6 @@ Now that colnr_T is int instead of unsigned, more type casts can be removed. 'delcombine' does not work for the command line. (Tony Mechelynck, 2009 Jul 20) -Don't load macmap.vim on startup, turn it into a plugin. (Ron Aaron, -2009 Apr 7) Reminder Apr 14. - Add "no_hlsearch" to winsaveview(). Cursorline highlighting combines with Search ('hlsearch') but not with @@ -1389,9 +1386,6 @@ The utf class table is missing some entries: Visual line mode doesn't highlight properly when 'showbreak' is used and the line doesn't fit. (Dasn, 2008 May 1) -Mac: Move Carbon todo items to os_mac.txt. Note that this version is frozen, -try the Cocoa version. - Mac: After a ":vsplit" the left scrollbar doesn't appear until 'columns' is changed or the window is resized. diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt index 1b95cfe7d0..117e977e0d 100644 --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -212,7 +212,7 @@ g8 Print the hex values of the bytes used in the equivalent to: > :enew - :call termopen([&sh, &shcf, '{cmd}']) + :call termopen('{cmd}') :startinsert < If no {cmd} is given, 'shellcmdflag' will not be sent diff --git a/runtime/doc/vi_diff.txt b/runtime/doc/vi_diff.txt index e76c0163b5..fffb923219 100644 --- a/runtime/doc/vi_diff.txt +++ b/runtime/doc/vi_diff.txt @@ -10,33 +10,14 @@ Throughout the help files differences between Vim and Vi/Ex are given in curly braces, like "{not in Vi}". This file only lists what has not been mentioned in other files and gives an overview. -1. Simulated command |simulated-command| -2. Missing options |missing-options| -3. Limits |limits| -4. The most interesting additions |vim-additions| -5. Other vim features |other-features| -6. Command-line arguments |cmdline-arguments| +1. Missing options |missing-options| +2. Limits |limits| +3. The most interesting additions |vim-additions| +4. Other vim features |other-features| +5. Command-line arguments |cmdline-arguments| ============================================================================== -1. Simulated command *simulated-command* - -This command is in Vi, but Vim only simulates it: - - *:o* *:op* *:open* -:[range]o[pen] Works like |:visual|: end Ex mode. - {Vi: start editing in open mode} - -:[range]o[pen] /pattern/ As above, additionally move the cursor to the - column where "pattern" matches in the cursor - line. - -Vim does not support open mode, since it's not really useful. For those -situations where ":open" would start open mode Vim will leave Ex mode, which -allows executing the same commands, but updates the whole screen instead of -only one line. - -============================================================================== -2. Missing options *missing-options* +1. Missing options *missing-options* These options are in the Unix Vi, but not in Vim. @@ -58,7 +39,7 @@ w1200 number (default 23) *'w1200'* w9600 number (default 23) *'w9600'* ============================================================================== -3. Limits *limits* +2. Limits *limits* Vim has only a few limits for the files that can be edited {Vi: can not handle <Nul> characters and characters above 128, has limited line length, many other @@ -102,7 +83,7 @@ don't want a swap file at all, set 'updatecount' to 0, or use the "-n" argument when starting Vim. ============================================================================== -4. The most interesting additions *vim-additions* +3. The most interesting additions *vim-additions* Vi compatibility. |'compatible'| Although Vim is 99% Vi compatible, some things in Vi can be @@ -744,7 +725,7 @@ The "No lines in buffer" message is a normal message instead of an error message, since that may cause a mapping to be aborted. ============================================================================== -6. Command-line arguments *cmdline-arguments* +5. Command-line arguments *cmdline-arguments* Different versions of Vi have different command-line arguments. This can be confusing. To help you, this section gives an overview of the differences. diff --git a/runtime/doc/vim_diff.txt b/runtime/doc/vim_diff.txt index 6124c36dc9..6cbc2aef59 100644 --- a/runtime/doc/vim_diff.txt +++ b/runtime/doc/vim_diff.txt @@ -24,7 +24,7 @@ these differences. - Use `$XDG_CONFIG_HOME/nvim/init.vim` instead of `.vimrc` for storing configuration. - Use `$XDG_CONFIG_HOME/nvim` instead of `.vim` to store configuration files. -- Use `$XDG_DATA_HOME/shada/main.shada` instead of `.viminfo` for persistent +- Use `$XDG_DATA_HOME/nvim/shada/main.shada` instead of `.viminfo` for persistent session information. ============================================================================== @@ -106,6 +106,7 @@ Additional differences: compatibility reasons. - |:wviminfo| was renamed to |:wshada|, |:rviminfo| to |:rshada|. Old commands are still kept. +- |:oldfiles| supports !. - When writing (|:wshada| without bang or at exit) it merges much more data, and does this according to the timestamp. Vim merges only marks. |shada-merging| @@ -142,6 +143,8 @@ Events: |TabNew| |TabNewEntered| |TabClosed| + |TermOpen| + |TermClose| Highlight groups: |hl-EndOfBuffer| @@ -197,7 +200,7 @@ Other options: 'macatsui' 'shelltype' 'shortname' - 'termencoding' + 'termencoding' (Vim 7.4.852 also removed this for Windows) 'textauto' 'textmode' 'toolbar' @@ -210,12 +213,14 @@ Other commands: :Print :fixdel :mode (no longer accepts an argument) + :open :shell :tearoff Other compile-time features: EBCDIC Emacs tags support + X11 integration (see |x11-selection|) Nvim does not have a built-in GUI and hence the following aliases have been removed: gvim, gex, gview, rgvim, rgview diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt index 95be125c33..c009bec66e 100644 --- a/runtime/doc/windows.txt +++ b/runtime/doc/windows.txt @@ -971,9 +971,10 @@ A buffer can also be unlisted. This means it exists, but it is not in the list of buffers. |unlisted-buffer| -:files[!] *:files* -:buffers[!] *:buffers* *:ls* -:ls[!] Show all buffers. Example: +:files[!] [flags] *:files* +:buffers[!] [flags] *:buffers* *:ls* +:ls[!] [flags] + Show all buffers. Example: 1 #h "/test/text" line 1 ~ 2u "asdf" line 0 ~ @@ -999,6 +1000,21 @@ list of buffers. |unlisted-buffer| + a modified buffer x a buffer with read errors + [flags] can be a combination of the following characters, + which restrict the buffers to be listed: + + modified buffers + - buffers with 'modifiable' off + = readonly buffers + a active buffers + u unlisted buffers (overrides the "!") + h hidden buffers + x buffers with a read error + % current buffer + # alternate buffer + Combining flags means they are "and"ed together, e.g.: + h+ hidden buffers which are modified + a+ active buffers which are modified + *:bad* *:badd* :bad[d] [+lnum] {fname} Add file name {fname} to the buffer list, without loading it. diff --git a/runtime/filetype.vim b/runtime/filetype.vim index 9e0e39e3f8..b06e702637 100644 --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -495,7 +495,7 @@ au BufNewFile,BufRead *.prg \ endif " Clojure -au BufNewFile,BufRead *.clj,*.cljs setf clojure +au BufNewFile,BufRead *.clj,*.cljs,*.cljx,*.cljc setf clojure " Cmake au BufNewFile,BufRead CMakeLists.txt,*.cmake,*.cmake.in setf cmake @@ -772,10 +772,9 @@ au BufNewFile,BufRead *.mo,*.gdmo setf gdmo au BufNewFile,BufRead *.ged,lltxxxxx.txt setf gedcom " Git -au BufNewFile,BufRead *.git/COMMIT_EDITMSG setf gitcommit -au BufNewFile,BufRead *.git/MERGE_MSG setf gitcommit +au BufNewFile,BufRead COMMIT_EDITMSG setf gitcommit +au BufNewFile,BufRead MERGE_MSG setf gitcommit au BufNewFile,BufRead *.git/config,.gitconfig,.gitmodules setf gitconfig -au BufNewFile,BufRead *.git/modules/*/COMMIT_EDITMSG setf gitcommit au BufNewFile,BufRead *.git/modules/*/config setf gitconfig au BufNewFile,BufRead */.config/git/config setf gitconfig if !empty($XDG_CONFIG_HOME) diff --git a/runtime/ftplugin/kconfig.vim b/runtime/ftplugin/kconfig.vim index 1b10c86ae3..940ba7427f 100644 --- a/runtime/ftplugin/kconfig.vim +++ b/runtime/ftplugin/kconfig.vim @@ -1,6 +1,10 @@ " Vim filetype plugin file -" Maintainer: Nikolai Weibull <now@bitwi.se> -" Latest Revision: 2008-07-09 +" Vim syntax file +" Maintainer: Christian Brabandt <cb@256bit.org> +" Previous Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2015-05-29 +" License: Vim (see :h license) +" Repository: https://github.com/chrisbra/vim-kconfig if exists("b:did_ftplugin") finish @@ -14,5 +18,10 @@ let b:undo_ftplugin = "setl com< cms< fo<" setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql +" For matchit.vim +if exists("loaded_matchit") + let b:match_words = '^\<menu\>:\<endmenu\>,^\<if\>:\<endif\>,^\<choice\>:\<endchoice\>' +endif + let &cpo = s:cpo_save unlet s:cpo_save diff --git a/runtime/ftplugin/spec.vim b/runtime/ftplugin/spec.vim index c3af8a9fca..0b6750de94 100644 --- a/runtime/ftplugin/spec.vim +++ b/runtime/ftplugin/spec.vim @@ -20,11 +20,36 @@ endif noremap <buffer> <unique> <script> <Plug>SpecChangelog :call <SID>SpecChangelog("")<CR> +if !exists("*s:GetRelVer") + function! s:GetRelVer() + if has('python') +python << PYEND +import sys, datetime, shutil, tempfile +import vim + +try: + import rpm +except ImportError: + pass +else: + specfile = vim.current.buffer.name + if specfile: + spec = rpm.spec(specfile) + headers = spec.packages[0].header + version = headers['Version'] + release = ".".join(headers['Release'].split(".")[:-1]) + vim.command("let ver = " + version) + vim.command("let rel = " + release) +PYEND + endif + endfunction +endif + if !exists("*s:SpecChangelog") function s:SpecChangelog(format) if strlen(a:format) == 0 if !exists("g:spec_chglog_format") - let email = input("Email address: ") + let email = input("Name <email address>: ") let g:spec_chglog_format = "%a %b %d %Y " . l:email echo "\r" endif @@ -69,6 +94,9 @@ if !exists("*s:SpecChangelog") else let include_release_info = 0 endif + + call s:GetRelVer() + if (chgline == -1) let option = confirm("Can't find %changelog. Create one? ","&End of file\n&Here\n&Cancel",3) if (option == 1) @@ -83,7 +111,7 @@ if !exists("*s:SpecChangelog") endif endif if (chgline != -1) - let parsed_format = "* ".strftime(format) + let parsed_format = "* ".strftime(format)." - ".ver."-".rel let release_info = "+ ".name."-".ver."-".rel let wrong_format = 0 let wrong_release = 0 diff --git a/runtime/ftplugin/zsh.vim b/runtime/ftplugin/zsh.vim index 3970d65cc8..6cbc380dc3 100644 --- a/runtime/ftplugin/zsh.vim +++ b/runtime/ftplugin/zsh.vim @@ -1,7 +1,10 @@ " Vim filetype plugin file -" Language: Zsh shell script -" Maintainer: Nikolai Weibull <now@bitwi.se> -" Latest Revision: 2011-01-23 +" Language: Zsh shell script +" Maintainer: Christian Brabandt <cb@256bit.org> +" Previous Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2015-05-29 +" License: Vim (see :h license) +" Repository: https://github.com/chrisbra/vim-zsh if exists("b:did_ftplugin") finish diff --git a/runtime/indent/javascript.vim b/runtime/indent/javascript.vim index a83d34b110..21c8fff86c 100644 --- a/runtime/indent/javascript.vim +++ b/runtime/indent/javascript.vim @@ -1,7 +1,7 @@ " Vim indent file " Language: Javascript -" Maintainer: None! Wanna improve this? -" Last Change: 2007 Jan 22 +" Maintainer: Going to be Darrick Wiebe +" Last Change: 2015 Jun 09 " Only load this indent file when no other was loaded. if exists("b:did_indent") @@ -12,5 +12,7 @@ let b:did_indent = 1 " C indenting is not too bad. setlocal cindent setlocal cinoptions+=j1,J1 +setlocal cinkeys-=0# +setlocal cinkeys+=0] let b:undo_indent = "setl cin<" diff --git a/runtime/indent/zsh.vim b/runtime/indent/zsh.vim index c5580a10b1..8e30c65c18 100644 --- a/runtime/indent/zsh.vim +++ b/runtime/indent/zsh.vim @@ -1,7 +1,10 @@ " Vim indent file -" Language: Zsh Shell Script -" Maintainer: Nikolai Weibull <now@bitwi.se> -" Latest Revision: 2006-04-19 +" Language: Zsh shell script +" Maintainer: Christian Brabandt <cb@256bit.org> +" Previous Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2015-05-29 +" License: Vim (see :h license) +" Repository: https://github.com/chrisbra/vim-zsh if exists("b:did_indent") finish diff --git a/runtime/syntax/cpp.vim b/runtime/syntax/cpp.vim index 04fc73342c..15f0cbb4ff 100644 --- a/runtime/syntax/cpp.vim +++ b/runtime/syntax/cpp.vim @@ -63,7 +63,7 @@ if version >= 508 || !exists("did_cpp_syntax_inits") HiLink cppStructure Structure HiLink cppBoolean Boolean HiLink cppConstant Constant - HiLink cppRawDelimiter Delimiter + HiLink cppRawStringDelimiter Delimiter HiLink cppRawString String delcommand HiLink endif diff --git a/runtime/syntax/css.vim b/runtime/syntax/css.vim index c6fc6a7ae2..51758ca98f 100644 --- a/runtime/syntax/css.vim +++ b/runtime/syntax/css.vim @@ -6,7 +6,7 @@ " Nikolai Weibull (Add CSS2 support) " Maintainer: Jules Wang <w.jq0722@gmail.com> " URL: https://github.com/JulesWang/css.vim -" Last Change: 2013 Nov.27 +" Last Change: 2015 Apr.17 " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -26,18 +26,19 @@ set cpo&vim syn case ignore -" All HTML4 tags -syn keyword cssTagName abbr acronym address applet area a b base -syn keyword cssTagName basefont bdo big blockquote body br button -syn keyword cssTagName caption center cite code col colgroup dd del -syn keyword cssTagName dfn dir div dl dt em fieldset font form frame -syn keyword cssTagName frameset h1 h2 h3 h4 h5 h6 head hr html img i -syn keyword cssTagName iframe img input ins isindex kbd label legend li -syn keyword cssTagName link map menu meta noframes noscript ol optgroup -syn keyword cssTagName option p param pre q s samp script select small -syn keyword cssTagName span strike strong style sub sup table tbody td -syn keyword cssTagName textarea tfoot th thead title tr tt ul u var +" HTML4 tags +syn keyword cssTagName abbr address area a b base +syn keyword cssTagName bdo blockquote body br button +syn keyword cssTagName caption cite code col colgroup dd del +syn keyword cssTagName dfn div dl dt em fieldset form +syn keyword cssTagName h1 h2 h3 h4 h5 h6 head hr html img i +syn keyword cssTagName iframe input ins isindex kbd label legend li +syn keyword cssTagName link map menu meta noscript ol optgroup +syn keyword cssTagName option p param pre q s samp script small +syn keyword cssTagName span strong sub sup tbody td +syn keyword cssTagName textarea tfoot th thead title tr ul u var syn keyword cssTagName object svg +syn match cssTagName /\<select\>\|\<style\>\|\<table\>/ " 34 HTML5 tags syn keyword cssTagName article aside audio bdi canvas command data @@ -47,8 +48,8 @@ syn keyword cssTagName output progress rt rp ruby section syn keyword cssTagName source summary time track video wbr " Tags not supported in HTML5 -syn keyword cssDeprecated acronym applet basefont big center dir -syn keyword cssDeprecated font frame frameset noframes strike tt +" acronym applet basefont big center dir +" font frame frameset noframes strike tt syn match cssTagName "\*" @@ -70,13 +71,13 @@ endtry " digits syn match cssValueInteger contained "[-+]\=\d\+" contains=cssUnitDecorators syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\=" contains=cssUnitDecorators -syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\)" contains=cssUnitDecorators -syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)" contains=cssUnitDecorators -syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)" contains=cssUnitDecorators -syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)" contains=cssUnitDecorators +syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\)\>" contains=cssUnitDecorators +syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)\>" contains=cssUnitDecorators +syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)\>" contains=cssUnitDecorators +syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)\>" contains=cssUnitDecorators -syn match cssIncludeKeyword /@\(-[a-z]+-\)\=\(media\|keyframes\|import\|charset\|namespace\|page\)/ contained +syn match cssIncludeKeyword /@\(-[a-z]\+-\)\=\(media\|keyframes\|import\|charset\|namespace\|page\)/ contained " @media syn region cssInclude start=/@media\>/ end=/\ze{/ skipwhite skipnl contains=cssMediaProp,cssValueLength,cssMediaKeyword,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType,cssIncludeKeyword,cssMediaComma,cssComment nextgroup=cssMediaBlock syn keyword cssMediaType contained screen print aural braille embossed handheld projection tty tv speech all contained skipwhite skipnl @@ -86,7 +87,7 @@ syn match cssMediaComma "," skipwhite skipnl contained " Reference: http://www.w3.org/TR/css3-mediaqueries/ syn keyword cssMediaProp contained width height orientation scan grid -syn match cssMediaProp contained /\(\(device\)-\)\=aspect-ratio/ +syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(\(device\)-\)\=aspect-ratio/ syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-pixel-ratio/ syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-\(height\|width\)/ syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(height\|width\|resolution\|monochrome\|color\(-index\)\=\)/ @@ -104,7 +105,7 @@ syn keyword cssPageProp contained orphans widows " @keyframe " http://www.w3.org/TR/css3-animations/#keyframes -syn match cssKeyFrame "@\(-[a-z]+-\)\=keyframes\>[^{]*{\@=" nextgroup=cssKeyFrameWrap contains=cssVendor,cssIncludeKeyword skipwhite skipnl transparent +syn match cssKeyFrame "@\(-[a-z]\+-\)\=keyframes\>[^{]*{\@=" nextgroup=cssKeyFrameWrap contains=cssVendor,cssIncludeKeyword skipwhite skipnl transparent syn region cssKeyFrameWrap contained transparent matchgroup=cssBraces start="{" end="}" contains=cssKeyFrameSelector syn match cssKeyFrameSelector /\(\d*%\|from\|to\)\=/ contained skipwhite skipnl nextgroup=cssDefinition @@ -116,15 +117,27 @@ syn region cssInclude start=/@namespace\>/ end=/\ze;/ transparent contains=cssSt " @font-face " http://www.w3.org/TR/css3-fonts/#at-font-face-rule syn match cssFontDescriptor "@font-face\>" nextgroup=cssFontDescriptorBlock skipwhite skipnl -syn region cssFontDescriptorBlock contained transparent matchgroup=cssBraces start="{" end="}" contains=cssComment,cssError,cssUnicodeEscape,cssFontProp,cssFontAttr,cssCommonAttr,cssStringQ,cssStringQQ,cssFontDescriptorProp,cssValue.*,cssFontDescriptorFunction,cssUnicodeRange,cssFontDescriptorAttr -"syn match cssFontDescriptorProp contained "\<\(unicode-range\|unit-per-em\|panose-1\|cap-height\|x-height\|definition-src\)\>" -"syn keyword cssFontDescriptorProp contained src stemv stemh slope ascent descent widths bbox baseline centerline mathline topline +syn region cssFontDescriptorBlock contained transparent matchgroup=cssBraces start="{" end="}" contains=cssComment,cssError,cssUnicodeEscape,cssCommonAttr,cssFontDescriptorProp,cssValue.*,cssFontDescriptorFunction,cssFontDescriptorAttr,cssNoise + +syn match cssFontDescriptorProp contained "\<font-family\>" syn keyword cssFontDescriptorProp contained src +syn match cssFontDescriptorProp contained "\<font-\(style\|weight\|stretch\)\>" syn match cssFontDescriptorProp contained "\<unicode-range\>" -syn keyword cssFontDescriptorAttr contained all +syn match cssFontDescriptorProp contained "\<font-\(variant\|feature-settings\)\>" + +" src functions syn region cssFontDescriptorFunction contained matchgroup=cssFunctionName start="\<\(uri\|url\|local\|format\)\s*(" end=")" contains=cssStringQ,cssStringQQ oneline keepend -syn match cssUnicodeRange contained "U+[0-9A-Fa-f?]\+" -syn match cssUnicodeRange contained "U+\x\+-\x\+" +" font-sytle and font-weight attributes +syn keyword cssFontDescriptorAttr contained normal italic oblique bold +" font-stretch attributes +syn match cssFontDescriptorAttr contained "\<\(\(ultra\|extra\|semi\)-\)\=\(condensed\|expanded\)\>" +" unicode-range attributes +syn match cssFontDescriptorAttr contained "U+[0-9A-Fa-f?]\+" +syn match cssFontDescriptorAttr contained "U+\x\+-\x\+" +" font-feature-settings attributes +syn keyword cssFontDescriptorAttr contained on off + + " The 16 basic color names syn keyword cssColor contained aqua black blue fuchsia gray green lime maroon navy olive purple red silver teal yellow @@ -133,23 +146,23 @@ syn keyword cssColor contained aqua black blue fuchsia gray green lime maroon na syn keyword cssColor contained aliceblue antiquewhite aquamarine azure syn keyword cssColor contained beige bisque blanchedalmond blueviolet brown burlywood syn keyword cssColor contained cadetblue chartreuse chocolate coral cornflowerblue cornsilk crimson cyan -syn match cssColor contained /dark\(blue\|cyan\|goldenrod\|gray\|green\|grey\|khaki\)/ -syn match cssColor contained /dark\(magenta\|olivegreen\|orange\|orchid\|red\|salmon\|seagreen\)/ -syn match cssColor contained /darkslate\(blue\|gray\|grey\)/ -syn match cssColor contained /dark\(turquoise\|violet\)/ +syn match cssColor contained /\<dark\(blue\|cyan\|goldenrod\|gray\|green\|grey\|khaki\)\>/ +syn match cssColor contained /\<dark\(magenta\|olivegreen\|orange\|orchid\|red\|salmon\|seagreen\)\>/ +syn match cssColor contained /\<darkslate\(blue\|gray\|grey\)\>/ +syn match cssColor contained /\<dark\(turquoise\|violet\)\>/ syn keyword cssColor contained deeppink deepskyblue dimgray dimgrey dodgerblue firebrick syn keyword cssColor contained floralwhite forestgreen gainsboro ghostwhite gold syn keyword cssColor contained goldenrod greenyellow grey honeydew hotpink syn keyword cssColor contained indianred indigo ivory khaki lavender lavenderblush lawngreen syn keyword cssColor contained lemonchiffon limegreen linen magenta -syn match cssColor contained /light\(blue\|coral\|cyan\|goldenrodyellow\|gray\|green\)/ -syn match cssColor contained /light\(grey\|pink\|salmon\|seagreen\|skyblue\|yellow\)/ -syn match cssColor contained /light\(slategray\|slategrey\|steelblue\)/ -syn match cssColor contained /medium\(aquamarine\|blue\|orchid\|purple\|seagreen\)/ -syn match cssColor contained /medium\(slateblue\|springgreen\|turquoise\|violetred\)/ +syn match cssColor contained /\<light\(blue\|coral\|cyan\|goldenrodyellow\|gray\|green\)\>/ +syn match cssColor contained /\<light\(grey\|pink\|salmon\|seagreen\|skyblue\|yellow\)\>/ +syn match cssColor contained /\<light\(slategray\|slategrey\|steelblue\)\>/ +syn match cssColor contained /\<medium\(aquamarine\|blue\|orchid\|purple\|seagreen\)\>/ +syn match cssColor contained /\<medium\(slateblue\|springgreen\|turquoise\|violetred\)\>/ syn keyword cssColor contained midnightblue mintcream mistyrose moccasin navajowhite syn keyword cssColor contained oldlace olivedrab orange orangered orchid -syn match cssColor contained /pale\(goldenrod\|green\|turquoise\|violetred\)/ +syn match cssColor contained /\<pale\(goldenrod\|green\|turquoise\|violetred\)\>/ syn keyword cssColor contained papayawhip peachpuff peru pink plum powderblue syn keyword cssColor contained rosybrown royalblue saddlebrown salmon sandybrown syn keyword cssColor contained seagreen seashell sienna skyblue slateblue @@ -167,11 +180,12 @@ syn case ignore syn match cssImportant contained "!\s*important\>" syn match cssColor contained "\<transparent\>" +syn match cssColor contained "\<currentColor\>" syn match cssColor contained "\<white\>" syn match cssColor contained "#[0-9A-Fa-f]\{3\}\>" contains=cssUnitDecorators syn match cssColor contained "#[0-9A-Fa-f]\{6\}\>" contains=cssUnitDecorators -syn region cssURL contained matchgroup=cssFunctionName start="\<url\s*(" end=")" oneline extend +syn region cssURL contained matchgroup=cssFunctionName start="\<url\s*(" end=")" contains=cssStringQ,cssStringQQ oneline syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\|steps\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\|color-stop\|from\|to\)\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma,cssFunction syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\)\=\gradient\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunction,cssGradientAttr,cssFunctionComma @@ -196,6 +210,9 @@ syn keyword cssAnimationAttr contained forwards backwards both " animation-play-state attributes syn keyword cssAnimationAttr contained running paused + +" animation-iteration-count attributes +syn keyword cssAnimationAttr contained infinite "------------------------------------------------ " CSS Backgrounds and Borders Module Level 3 " http://www.w3.org/TR/css3-background/ @@ -253,7 +270,7 @@ syn keyword cssDimensionProp contained width syn match cssFlexibleBoxProp contained "\<box-\(align\|direction\|flex\|ordinal-group\|orient\|pack\|shadow\|sizing\)\>" syn keyword cssFlexibleBoxAttr contained start end baseline syn keyword cssFlexibleBoxAttr contained reverse -syn keyword cssFlexibleBoxAttr contained single mulitple +syn keyword cssFlexibleBoxAttr contained single multiple syn keyword cssFlexibleBoxAttr contained horizontal syn match cssFlexibleBoxAttr contained "\<vertical\(-align\)\@!\>" "escape vertical-align syn match cssFlexibleBoxAttr contained "\<\(inline\|block\)-axis\>" @@ -261,6 +278,7 @@ syn match cssFlexibleBoxAttr contained "\<\(inline\|block\)-axis\>" " CSS Fonts Module Level 3 " http://www.w3.org/TR/css-fonts-3/ syn match cssFontProp contained "\<font\(-\(family\|\|feature-settings\|kerning\|language-override\|size\(-adjust\)\=\|stretch\|style\|synthesis\|variant\(-\(alternates\|caps\|east-asian\|ligatures\|numeric\|position\)\)\=\|weight\)\)\=\>" + " font attributes syn keyword cssFontAttr contained icon menu caption syn match cssFontAttr contained "\<small-\(caps\|caption\)\>" @@ -268,27 +286,21 @@ syn match cssFontAttr contained "\<message-box\>" syn match cssFontAttr contained "\<status-bar\>" syn keyword cssFontAttr contained larger smaller syn match cssFontAttr contained "\<\(x\{1,2\}-\)\=\(large\|small\)\>" - " font-family attributes syn match cssFontAttr contained "\<\(sans-\)\=serif\>" -syn keyword cssFontAttr contained Antiqua Arial Black Book Charcoal Comic Courier Dingbats Gadget Geneva Georgia Grande Helvetica Impact Linotype Lucida MS Monaco Neue New Palatino Roboto Roman Symbol Tahoma Times Trebuchet Unicode Verdana Webdings Wingdings York Zapf +syn keyword cssFontAttr contained Antiqua Arial Black Book Charcoal Comic Courier Dingbats Gadget Geneva Georgia Grande Helvetica Impact Linotype Lucida MS Monaco Neue New Palatino Roboto Roman Symbol Tahoma Times Trebuchet Verdana Webdings Wingdings York Zapf syn keyword cssFontAttr contained cursive fantasy monospace - " font-feature-settings attributes syn keyword cssFontAttr contained on off - " font-stretch attributes syn match cssFontAttr contained "\<\(\(ultra\|extra\|semi\)-\)\=\(condensed\|expanded\)\>" - " font-style attributes syn keyword cssFontAttr contained italic oblique - -" font-variant-caps attributes -syn match cssFontAttr contained "\<\(all-\)\=\(small-\|petite-\|titling-\)caps\>" -syn keyword cssFontAttr contained unicase - +" font-synthesis attributes +syn keyword cssFontAttr contained weight style " font-weight attributes syn keyword cssFontAttr contained bold bolder lighter +" TODO: font-variant-* attributes "------------------------------------------------ " Webkit specific property/attributes @@ -448,7 +460,7 @@ syn match cssMobileTextProp contained "\<text-size-adjust\>" syn match cssBraces contained "[{}]" syn match cssError contained "{@<>" -syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=cssAttrRegion,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks keepend fold +syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=cssAttrRegion,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks,cssNoise fold syn match cssBraceError "}" syn match cssAttrComma "," @@ -466,6 +478,9 @@ syn match cssPseudoClassId contained "\<selection\>" syn match cssPseudoClassId contained "\<focus\(-inner\)\=\>" syn match cssPseudoClassId contained "\<\(input-\)\=placeholder\>" +" Misc highlight groups +syntax match cssUnitDecorators /\(#\|-\|%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|ch\|rem\|vh\|vw\|vmin\|vmax\|dpi\|dppx\|dpcm\|Hz\|kHz\|s\|ms\|deg\|grad\|rad\)/ contained +syntax match cssNoise contained /\(:\|;\|\/\)/ " Comment syn region cssComment start="/\*" end="\*/" contains=@Spell fold @@ -487,17 +502,13 @@ syn match cssVendor contained "\(-\(webkit\|moz\|o\|ms\)-\)" " http://www.paulirish.com/2009/browser-specific-css-hacks/ syn match cssHacks contained /\(_\|*\)/ -" Misc highlight groups -syntax match cssUnitDecorators /\(#\|-\|%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\|Hz\|kHz\|s\|ms\|deg\|grad\|rad\)/ contained -syntax match cssNoise contained /\(:\|;\|\/\)/ - " Attr Enhance " Some keywords are both Prop and Attr, so we have to handle them -syn region cssAttrRegion start=/:/ end=/;/ contained keepend contains=css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise +syn region cssAttrRegion start=/:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise " Hack for transition -" The 'transition' Prop has Props after ':'. -syn region cssAttrRegion start=/transition\s*:/ end=/;/ contained keepend contains=css.*Prop,css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise +" 'transition' has Props after ':'. +syn region cssAttrRegion start=/transition\s*:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Prop,css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise if main_syntax == "css" @@ -635,7 +646,7 @@ if version >= 508 || !exists("did_css_syn_inits") HiLink cssAttr Constant HiLink cssUnitDecorators Number HiLink cssNoise Noise - HiLink atKeyword Comment + HiLink atKeyword PreProc delcommand HiLink endif diff --git a/runtime/syntax/debchangelog.vim b/runtime/syntax/debchangelog.vim index 6206fa388c..ed3d024499 100644 --- a/runtime/syntax/debchangelog.vim +++ b/runtime/syntax/debchangelog.vim @@ -3,7 +3,7 @@ " Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org> " Former Maintainers: Gerfried Fuchs <alfie@ist.org> " Wichert Akkerman <wakkerma@debian.org> -" Last Change: 2014 Jul 11 +" Last Change: 2015 Apr 30 " URL: http://anonscm.debian.org/hg/pkg-vim/vim/raw-file/unstable/runtime/syntax/debchangelog.vim " Standard syntax initialization @@ -16,10 +16,14 @@ endif " Case doesn't matter for us syn case ignore +let urgency='urgency=\(low\|medium\|high\|critical\)\( [^[:space:],][^,]*\)\=' +let binNMU='binary-only=yes' + " Define some common expressions we can use later on syn match debchangelogName contained "^[[:alnum:]][[:alnum:].+-]\+ " -syn match debchangelogUrgency contained "; urgency=\(low\|medium\|high\|critical\|emergency\)\( \S.*\)\=" -syn match debchangelogTarget contained "\v %(frozen|unstable|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile)|wheezy-backports|%(devel|lucid|precise|trusty|utopic)%(-%(security|proposed|updates|backports|commercial|partner))=)+" +exe 'syn match debchangelogFirstKV contained "; \('.urgency.'\|'.binNMU.'\)"' +exe 'syn match debchangelogOtherKV contained ", \('.urgency.'\|'.binNMU.'\)"' +syn match debchangelogTarget contained "\v %(frozen|unstable|sid|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile|lts|security)|wheezy-%(backports%(-sloppy)=|security)|jessie%(-backports|-security)=|stretch|%(devel|lucid|precise|trusty|utopic)%(-%(security|proposed|updates|backports|commercial|partner))=)+" syn match debchangelogVersion contained "(.\{-})" syn match debchangelogCloses contained "closes:\_s*\(bug\)\=#\=\_s\=\d\+\(,\_s*\(bug\)\=#\=\_s\=\d\+\)*" syn match debchangelogLP contained "\clp:\s\+#\d\+\(,\s*#\d\+\)*" @@ -27,7 +31,7 @@ syn match debchangelogEmail contained "[_=[:alnum:].+-]\+@[[:alnum:]./\-]\+" syn match debchangelogEmail contained "<.\{-}>" " Define the entries that make up the changelog -syn region debchangelogHeader start="^[^ ]" end="$" contains=debchangelogName,debchangelogUrgency,debchangelogTarget,debchangelogVersion oneline +syn region debchangelogHeader start="^[^ ]" end="$" contains=debchangelogName,debchangelogFirstKV,debchangelogOtherKV,debchangelogTarget,debchangelogVersion,debchangelogBinNMU oneline syn region debchangelogFooter start="^ [^ ]" end="$" contains=debchangelogEmail oneline syn region debchangelogEntry start="^ " end="$" contains=debchangelogCloses,debchangelogLP oneline @@ -45,7 +49,8 @@ if version >= 508 || !exists("did_debchangelog_syn_inits") HiLink debchangelogEntry Normal HiLink debchangelogCloses Statement HiLink debchangelogLP Statement - HiLink debchangelogUrgency Identifier + HiLink debchangelogFirstKV Identifier + HiLink debchangelogOtherKV Identifier HiLink debchangelogName Comment HiLink debchangelogVersion Identifier HiLink debchangelogTarget Identifier diff --git a/runtime/syntax/debcontrol.vim b/runtime/syntax/debcontrol.vim index 5d9d45d025..6d140d9bd9 100644 --- a/runtime/syntax/debcontrol.vim +++ b/runtime/syntax/debcontrol.vim @@ -3,7 +3,7 @@ " Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org> " Former Maintainers: Gerfried Fuchs <alfie@ist.org> " Wichert Akkerman <wakkerma@debian.org> -" Last Change: 2014 May 01 +" Last Change: 2014 Oct 08 " URL: http://anonscm.debian.org/hg/pkg-vim/vim/raw-file/unstable/runtime/syntax/debcontrol.vim " Standard syntax initialization @@ -50,7 +50,7 @@ syn match debcontrolDmUpload contained "\cyes" syn match debcontrolHTTPUrl contained "\vhttps?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$" syn match debcontrolVcsSvn contained "\vsvn%(\+ssh)?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$" syn match debcontrolVcsCvs contained "\v%(\-d *)?:pserver:[^@]+\@[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?:/[^[:space:]]*%( [^[:space:]]+)?$" -syn match debcontrolVcsGit contained "\v%(git|http)://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?%(\s+-b\s+[^ ~^:?*[\\]+)?$" +syn match debcontrolVcsGit contained "\v%(git|https?)://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?%(\s+-b\s+[^ ~^:?*[\\]+)?$" " An email address syn match debcontrolEmail "[_=[:alnum:]\.+-]\+@[[:alnum:]\./\-]\+" diff --git a/runtime/syntax/debsources.vim b/runtime/syntax/debsources.vim index e877b06ae4..c8d110c77b 100644 --- a/runtime/syntax/debsources.vim +++ b/runtime/syntax/debsources.vim @@ -2,7 +2,7 @@ " Language: Debian sources.list " Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org> " Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl> -" Last Change: 2014 Jul 11 +" Last Change: 2015 May 25 " URL: http://anonscm.debian.org/hg/pkg-vim/vim/raw-file/unstable/runtime/syntax/debsources.vim " Standard syntax initialization @@ -21,15 +21,35 @@ syn match debsourcesKeyword /\(deb-src\|deb\|main\|contrib\|non-free\|res " Match comments syn match debsourcesComment /#.*/ contains=@Spell +let s:cpo = &cpo +set cpo-=C +let s:supported = [ + \ 'oldstable', 'stable', 'testing', 'unstable', 'experimental', + \ 'squeeze', 'wheezy', 'jessie', 'stretch', 'sid', 'rc-buggy', + \ + \ 'precise', 'trusty', 'utopic', 'vivid', 'wily', 'devel' + \ ] +let s:unsupported = [ + \ 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', + \ 'woody', 'sarge', 'etch', 'lenny', + \ + \ 'warty', 'hoary', 'breezy', 'dapper', 'edgy', 'feisty', + \ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid', + \ 'maverick', 'natty', 'oneiric', 'quantal', 'raring', 'saucy' + \ ] +let &cpo=s:cpo + " Match uri's syn match debsourcesUri +\(http://\|ftp://\|[rs]sh://\|debtorrent://\|\(cdrom\|copy\|file\):\)[^' <>"]\++ -syn match debsourcesDistrKeyword +\([[:alnum:]_./]*\)\(squeeze\|wheezy\|jessie\|\(old\)\=stable\|testing\|unstable\|sid\|rc-buggy\|experimental\|devel\|lucid\|precise\|trusty\|utopic\)\([-[:alnum:]_./]*\)+ +exe 'syn match debsourcesDistrKeyword +\([[:alnum:]_./]*\)\('. join(s:supported, '\|'). '\)\([-[:alnum:]_./]*\)+' +exe 'syn match debsourcesUnsupportedDistrKeyword +\([[:alnum:]_./]*\)\('. join(s:unsupported, '\|') .'\)\([-[:alnum:]_./]*\)+' " Associate our matches and regions with pretty colours -hi def link debsourcesLine Error -hi def link debsourcesKeyword Statement -hi def link debsourcesDistrKeyword Type -hi def link debsourcesComment Comment -hi def link debsourcesUri Constant +hi def link debsourcesLine Error +hi def link debsourcesKeyword Statement +hi def link debsourcesDistrKeyword Type +hi def link debsourcesUnsupportedDistrKeyword WarningMsg +hi def link debsourcesComment Comment +hi def link debsourcesUri Constant let b:current_syntax = "debsources" diff --git a/runtime/syntax/groovy.vim b/runtime/syntax/groovy.vim index 2056bd16d0..c745960bd5 100644 --- a/runtime/syntax/groovy.vim +++ b/runtime/syntax/groovy.vim @@ -157,7 +157,7 @@ syn match groovyOperator "\.\." syn match groovyOperator "<\{2,3}" syn match groovyOperator ">\{2,3}" syn match groovyOperator "->" -syn match groovyExternal '^#!.*[/\\]groovy\>' +syn match groovyLineComment '^\%1l#!.*' " Shebang line syn match groovyExceptions "\<Exception\>\|\<[A-Z]\{1,}[a-zA-Z0-9]*Exception\>" " Groovy JDK stuff diff --git a/runtime/syntax/kconfig.vim b/runtime/syntax/kconfig.vim index a6ceb1712a..c7a305b73c 100644 --- a/runtime/syntax/kconfig.vim +++ b/runtime/syntax/kconfig.vim @@ -1,6 +1,9 @@ " Vim syntax file -" Maintainer: Nikolai Weibull <now@bitwi.se> -" Latest Revision: 2009-05-25 +" Maintainer: Christian Brabandt <cb@256bit.org> +" Previous Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2015-05-29 +" License: Vim (see :h license) +" Repository: https://github.com/chrisbra/vim-kconfig if exists("b:current_syntax") finish diff --git a/runtime/syntax/po.vim b/runtime/syntax/po.vim index c09b960357..2ab13ac0b1 100644 --- a/runtime/syntax/po.vim +++ b/runtime/syntax/po.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: po (gettext) " Maintainer: Dwayne Bailey <dwayne@translate.org.za> -" Last Change: 2012 Apr 30 +" Last Change: 2015 Jun 07 " Contributors: Dwayne Bailey (Most advanced syntax highlighting) " Leonardo Fontenelle (Spell checking) " Nam SungHyun <namsh@kldp.org> (Original maintainer) @@ -52,6 +52,9 @@ syn match poCommentTranslator "^# .*$" contains=poCopyrightUnset syn match poCommentAutomatic "^#\..*$" syn match poCommentSources "^#:.*$" syn match poCommentFlags "^#,.*$" contains=poFlagFuzzy +syn match poDiffOld '\(^#| "[^{]*+}\|{+[^}]*+}\|{+[^}]*\|"$\)' contained +syn match poDiffNew '\(^#| "[^{]*-}\|{-[^}]*-}\|{-[^}]*\|"$\)' contained +syn match poCommentDiff "^#|.*$" contains=poDiffOld,poDiffNew " Translations (also includes header fields as they appear in a translation msgstr) syn region poCommentKDE start=+"_: +ms=s+1 end="\\n" end="\"\n^msgstr"me=s-1 contained @@ -94,8 +97,11 @@ if version >= 508 || !exists("did_po_syn_inits") HiLink poCommentAutomatic Comment HiLink poCommentTranslator Comment HiLink poCommentFlags Special + HiLink poCommentDiff Comment HiLink poCopyrightUnset Todo HiLink poFlagFuzzy Todo + HiLink poDiffOld Todo + HiLink poDiffNew Special HiLink poObsolete Comment HiLink poStatementMsgid Statement diff --git a/runtime/syntax/rc.vim b/runtime/syntax/rc.vim index c3feb97816..a2d5824d3e 100644 --- a/runtime/syntax/rc.vim +++ b/runtime/syntax/rc.vim @@ -1,7 +1,10 @@ " Vim syntax file " Language: M$ Resource files (*.rc) -" Maintainer: Heiko Erhardt <Heiko.Erhardt@munich.netsurf.de> -" Last Change: 2001 May 09 +" Maintainer: Christian Brabandt +" Last Change: 2015-05-29 +" Repository: https://github.com/chrisbra/vim-rc-syntax +" License: Vim (see :h license) +" Previous Maintainer: Heiko Erhardt <Heiko.Erhardt@munich.netsurf.de> " This file is based on the c.vim @@ -21,7 +24,7 @@ syn keyword rcMainObject MENU ACCELERATORS TOOLBAR DIALOG syn keyword rcMainObject STRINGTABLE MESSAGETABLE RCDATA DLGINIT DESIGNINFO syn keyword rcSubObject POPUP MENUITEM SEPARATOR -syn keyword rcSubObject CONTROL LTEXT CTEXT EDITTEXT +syn keyword rcSubObject CONTROL LTEXT CTEXT RTEXT EDITTEXT syn keyword rcSubObject BUTTON PUSHBUTTON DEFPUSHBUTTON GROUPBOX LISTBOX COMBOBOX syn keyword rcSubObject FILEVERSION PRODUCTVERSION FILEFLAGSMASK FILEFLAGS FILEOS syn keyword rcSubObject FILETYPE FILESUBTYPE diff --git a/runtime/syntax/vhdl.vim b/runtime/syntax/vhdl.vim index db51fa5034..c76b046d8c 100644 --- a/runtime/syntax/vhdl.vim +++ b/runtime/syntax/vhdl.vim @@ -3,7 +3,7 @@ " Maintainer: Daniel Kho <daniel.kho@tauhop.com> " Previous Maintainer: Czo <Olivier.Sirol@lip6.fr> " Credits: Stephan Hegel <stephan.hegel@snc.siemens.com.cn> -" Last Changed: 2012 Feb 03 by Thilo Six +" Last Changed: 2015 Apr 25 by Daniel Kho " $Id: vhdl.vim,v 1.1 2004/06/13 15:34:56 vimboss Exp $ " VHSIC (Very High Speed Integrated Circuit) Hardware Description Language @@ -160,10 +160,20 @@ syn match vhdlSpecial "[().,;]" syn match vhdlTime "\<\d\+\s\+\(\([fpnum]s\)\|\(sec\)\|\(min\)\|\(hr\)\)\>" syn match vhdlTime "\<\d\+\.\d\+\s\+\(\([fpnum]s\)\|\(sec\)\|\(min\)\|\(hr\)\)\>" -syn keyword vhdlTodo contained TODO FIXME - -syn region vhdlComment start="/\*" end="\*/" contains=vhdlTodo,@Spell -syn match vhdlComment "--.*" contains=vhdlTodo,@Spell +syn keyword vhdlTodo contained TODO NOTE +syn keyword vhdlFixme contained FIXME + +" Regex for space is '\s' +" Any number of spaces: \s* +" At least one space: \s+ +syn region vhdlComment start="/\*" end="\*/" contains=vhdlTodo,vhdlFixme,@Spell +syn match vhdlComment "--.*" contains=vhdlTodo,vhdlFixme,@Spell +syn match vhdlPreProc "/\* synthesis .* \*/" +syn match vhdlPreProc "/\* pragma .* \*/" +syn match vhdlPreProc "/\* synopsys .* \*/" +syn match vhdlPreProc "--\s*synthesis .*" +syn match vhdlPreProc "--\s*pragma .*" +syn match vhdlPreProc "--\s*synopsys .*" " syn match vhdlGlobal "[\'$#~!%@?\^\[\]{}\\]" "Modify the following as needed. The trade-off is performance versus functionality. @@ -180,21 +190,22 @@ if version >= 508 || !exists("did_vhdl_syntax_inits") command -nargs=+ HiLink hi def link <args> endif -" HiLink cDefine PreProc - HiLink vhdlSpecial Special - HiLink vhdlStatement Statement - HiLink vhdlCharacter Character - HiLink vhdlString String - HiLink vhdlVector Number - HiLink vhdlBoolean Number - HiLink vhdlTodo Todo - HiLink vhdlComment Comment - HiLink vhdlNumber Number - HiLink vhdlTime Number - HiLink vhdlType Type - HiLink vhdlOperator Special + HiLink vhdlSpecial Special + HiLink vhdlStatement Statement + HiLink vhdlCharacter Character + HiLink vhdlString String + HiLink vhdlVector Number + HiLink vhdlBoolean Number + HiLink vhdlTodo Todo + HiLink vhdlFixme Fixme + HiLink vhdlComment Comment + HiLink vhdlNumber Number + HiLink vhdlTime Number + HiLink vhdlType Type + HiLink vhdlOperator Operator " HiLink vhdlGlobal Error - HiLink vhdlAttribute Type + HiLink vhdlAttribute Special + HiLink vhdlPreProc PreProc delcommand HiLink endif diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim index e23232bbbe..cf51830b68 100644 --- a/runtime/syntax/vim.vim +++ b/runtime/syntax/vim.vim @@ -19,7 +19,7 @@ syn cluster vimCommentGroup contains=vimTodo,@Spell " Special and plugin vim commands {{{2 syn match vimCommand contained "\<z[-+^.=]\=" -syn keyword vimOnlyCommand contained fix[del] sh[ell] P[rint] +syn keyword vimOnlyCommand contained fix[del] op[en] sh[ell] P[rint] syn keyword vimStdPlugin contained DiffOrig Man N[ext] S TOhtml XMLent XMLns " Vim-specific options {{{2 diff --git a/runtime/syntax/zsh.vim b/runtime/syntax/zsh.vim index 79fd017ee8..5e588e7d6c 100644 --- a/runtime/syntax/zsh.vim +++ b/runtime/syntax/zsh.vim @@ -1,7 +1,10 @@ " Vim syntax file -" Language: Zsh shell script -" Maintainer: Nikolai Weibull <now@bitwi.se> -" Latest Revision: 2010-01-23 +" Language: Zsh shell script +" Maintainer: Christian Brabandt <cb@256bit.org> +" Previous Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2015-05-29 +" License: Vim (see :h license) +" Repository: https://github.com/chrisbra/vim-zsh if exists("b:current_syntax") finish @@ -14,7 +17,7 @@ setlocal iskeyword+=- syn keyword zshTodo contained TODO FIXME XXX NOTE -syn region zshComment oneline start='\%(^\|\s\)#' end='$' +syn region zshComment oneline start='\%(^\|\s*\)#' end='$' \ contains=zshTodo,@Spell syn match zshPreProc '^\%1l#\%(!\|compdef\|autoload\).*$' @@ -30,7 +33,7 @@ syn match zshJobSpec '%\(\d\+\|?\=\w\+\|[%+-]\)' syn keyword zshPrecommand noglob nocorrect exec command builtin - time -syn keyword zshDelimiter do done +syn keyword zshDelimiter do done end syn keyword zshConditional if then elif else fi case in esac select @@ -64,7 +67,7 @@ syn region zshHereDoc matchgroup=zshRedir \ end='^\s*\z1\>' \ contains=@zshSubst syn region zshHereDoc matchgroup=zshRedir - \ start=+<\@<!<<\s*\(["']\)\z(\S\+\)\1+ + \ start=+<\@<!<<\s*\(["']\)\z(\S\+\)\1+ \ end='^\z1\>' syn region zshHereDoc matchgroup=zshRedir \ start=+<\@<!<<-\s*\(["']\)\z(\S\+\)\1+ @@ -121,6 +124,165 @@ syn keyword zshCommands alias autoload bg bindkey break bye cap cd \ zmodload zparseopts zprof zpty zregexparse \ zsocket zstyle ztcp +" Options, generated by: echo ${(j:\n:)options[(I)*]} | sort +syn case ignore +syn keyword zshOptions aliases allexport all_export alwayslastprompt + \ always_lastprompt alwaystoend always_to_end + \ appendhistory append_history autocd autocontinue + \ auto_continue autolist auto_list + \ automenu auto_menu autonamedirs auto_name_dirs + \ autoparamkeys auto_param_keys autoparamslash + \ auto_param_slash autopushd auto_pushd autoremoveslash + \ auto_remove_slash autoresume auto_resume badpattern + \ banghist bang_hist bareglobqual bare_glob_qual + \ bashautolist bash_auto_list bashrematch bash_rematch + \ beep bgnice braceccl brace_ccl braceexpand brace_expand + \ bsdecho bsd_echo caseglob case_glob casematch case_match + \ cbases cdablevars cd_able_vars chasedots chase_dots + \ chaselinks chase_links checkjobs check_jobs + \ clobber combiningchars combining_chars completealiases + \ complete_aliases completeinword complete_in_word + \ continueonerror continue_on_error correct + \ correctall correct_all cprecedences c_precedences + \ cshjunkiehistory csh_junkie_history cshjunkieloops + \ csh_junkie_loops cshjunkiequotes csh_junkie_quotes + \ cshnullcmd csh_null_cmd cshnullglob csh_null_glob + \ debugbeforecmd debug_before_cmd dotglob dot_glob dvorak + \ emacs equals errexit err_exit errreturn err_return evallineno + \ eval_lineno exec extendedglob extended_glob extendedhistory + \ extended_history flowcontrol flow_control forcefloat + \ force_float functionargzero function_arg_zero glob globalexport + \ global_export globalrcs global_rcs globassign glob_assign + \ globcomplete glob_complete globdots glob_dots glob_subst + \ globsubst hashall hash_all hashcmds hash_cmds hashdirs + \ hash_dirs hashexecutablesonly hash_executables_only hashlistall + \ hash_list_all histallowclobber hist_allow_clobber histappend + \ hist_append histbeep hist_beep hist_expand hist_expire_dups_first + \ histexpand histexpiredupsfirst histfcntllock hist_fcntl_lock + \ histfindnodups hist_find_no_dups histignorealldups + \ hist_ignore_all_dups histignoredups hist_ignore_dups + \ histignorespace hist_ignore_space histlexwords hist_lex_words + \ histnofunctions hist_no_functions histnostore hist_no_store + \ histreduceblanks hist_reduce_blanks histsavebycopy + \ hist_save_by_copy histsavenodups hist_save_no_dups + \ histsubstpattern hist_subst_pattern histverify hist_verify + \ hup ignorebraces ignore_braces ignoreclosebraces ignore_close_braces + \ ignoreeof ignore_eof incappendhistory inc_append_history + \ incappendhistorytime inc_append_history_time interactive + \ interactivecomments interactive_comments ksharrays ksh_arrays + \ kshautoload ksh_autoload kshglob ksh_glob kshoptionprint + \ ksh_option_print kshtypeset ksh_typeset kshzerosubscript + \ ksh_zero_subscript listambiguous list_ambiguous listbeep + \ list_beep listpacked list_packed listrowsfirst list_rows_first + \ listtypes list_types localloops local_loops localoptions + \ local_options localpatterns local_patterns localtraps + \ local_traps log login longlistjobs long_list_jobs magicequalsubst + \ magic_equal_subst mailwarn mail_warn mail_warning mark_dirs + \ mailwarning markdirs menucomplete menu_complete monitor + \ multibyte multi_byte multifuncdef multi_func_def multios + \ multi_os nomatch no_match notify nullglob null_glob numericglobsort + \ numeric_glob_sort octalzeroes octal_zeroes onecmd one_cmd + \ overstrike over_strike pathdirs path_dirs pathscript + \ path_script physical pipefail pipe_fail posixaliases + \ posix_aliases posixargzero posix_arg_zero posixbuiltins + \ posix_builtins posixcd posix_cd posixidentifiers posix_identifiers + \ posixjobs posix_jobs posixstrings posix_strings posixtraps + \ posix_traps printeightbit print_eight_bit printexitvalue + \ print_exit_value privileged promptbang prompt_bang promptcr + \ prompt_cr promptpercent prompt_percent promptsp prompt_sp + \ promptsubst prompt_subst promptvars prompt_vars pushdignoredups + \ pushd_ignore_dups pushdminus pushd_minus pushdsilent pushd_silent + \ pushdtohome pushd_to_home rcexpandparam rc_expandparam rcquotes + \ rc_quotes rcs recexact rec_exact rematchpcre re_match_pcre + \ restricted rmstarsilent rm_star_silent rmstarwait rm_star_wait + \ sharehistory share_history shfileexpansion sh_file_expansion + \ shglob sh_glob shinstdin shin_stdin shnullcmd sh_nullcmd + \ shoptionletters sh_option_letters shortloops short_loops shwordsplit + \ sh_word_split singlecommand single_command singlelinezle single_line_zle + \ sourcetrace source_trace stdin sunkeyboardhack sun_keyboard_hack + \ trackall track_all transientrprompt transient_rprompt + \ trapsasync trapasync typesetsilent type_set_silent unset verbose vi + \ warncreateglobal warn_create_global xtrace zle + +syn keyword zshOptions noaliases no_aliases noallexport no_allexport noall_export no_all_export noalwayslastprompt no_alwayslastprompt + \ noalways_lastprompt no_always_lastprompt noalwaystoend no_alwaystoend noalways_to_end no_always_to_end + \ noappendhistory no_appendhistory noappend_history no_append_history noautocd no_autocd noautocontinue no_autocontinue + \ noauto_continue no_auto_continue noautolist no_autolist noauto_list no_auto_list + \ noautomenu no_automenu noauto_menu no_auto_menu noautonamedirs no_autonamedirs noauto_name_dirs no_auto_name_dirs + \ noautoparamkeys no_autoparamkeys noauto_param_keys no_auto_param_keys noautoparamslash no_autoparamslash + \ noauto_param_slash no_auto_param_slash noautopushd no_autopushd noauto_pushd no_auto_pushd noautoremoveslash no_autoremoveslash + \ noauto_remove_slash no_auto_remove_slash noautoresume no_autoresume noauto_resume no_auto_resume nobadpattern no_badpattern + \ nobanghist no_banghist nobang_hist no_bang_hist nobareglobqual no_bareglobqual nobare_glob_qual no_bare_glob_qual + \ nobashautolist no_bashautolist nobash_auto_list no_bash_auto_list nobashrematch no_bashrematch nobash_rematch no_bash_rematch + \ nobeep no_beep nobgnice no_bgnice nobraceccl no_braceccl nobrace_ccl no_brace_ccl nobraceexpand no_braceexpand nobrace_expand no_brace_expand + \ nobsdecho no_bsdecho nobsd_echo no_bsd_echo nocaseglob no_caseglob nocase_glob no_case_glob nocasematch no_casematch nocase_match no_case_match + \ nocbases no_cbases nocdablevars no_cdablevars nocd_able_vars no_cd_able_vars nochasedots no_chasedots nochase_dots no_chase_dots + \ nochaselinks no_chaselinks nochase_links no_chase_links nocheckjobs no_checkjobs nocheck_jobs no_check_jobs + \ noclobber no_clobber nocombiningchars no_combiningchars nocombining_chars no_combining_chars nocompletealiases no_completealiases + \ nocomplete_aliases no_complete_aliases nocompleteinword no_completeinword nocomplete_in_word no_complete_in_word + \ nocontinueonerror no_continueonerror nocontinue_on_error no_continue_on_error nocorrect no_correct + \ nocorrectall no_correctall nocorrect_all no_correct_all nocprecedences no_cprecedences noc_precedences no_c_precedences + \ nocshjunkiehistory no_cshjunkiehistory nocsh_junkie_history no_csh_junkie_history nocshjunkieloops no_cshjunkieloops + \ nocsh_junkie_loops no_csh_junkie_loops nocshjunkiequotes no_cshjunkiequotes nocsh_junkie_quotes no_csh_junkie_quotes + \ nocshnullcmd no_cshnullcmd nocsh_null_cmd no_csh_null_cmd nocshnullglob no_cshnullglob nocsh_null_glob no_csh_null_glob + \ nodebugbeforecmd no_debugbeforecmd nodebug_before_cmd no_debug_before_cmd nodotglob no_dotglob nodot_glob no_dot_glob nodvorak no_dvorak + \ noemacs no_emacs noequals no_equals noerrexit no_errexit noerr_exit no_err_exit noerrreturn no_errreturn noerr_return no_err_return noevallineno no_evallineno + \ noeval_lineno no_eval_lineno noexec no_exec noextendedglob no_extendedglob noextended_glob no_extended_glob noextendedhistory no_extendedhistory + \ noextended_history no_extended_history noflowcontrol no_flowcontrol noflow_control no_flow_control noforcefloat no_forcefloat + \ noforce_float no_force_float nofunctionargzero no_functionargzero nofunction_arg_zero no_function_arg_zero noglob no_glob noglobalexport no_globalexport + \ noglobal_export no_global_export noglobalrcs no_globalrcs noglobal_rcs no_global_rcs noglobassign no_globassign noglob_assign no_glob_assign + \ noglobcomplete no_globcomplete noglob_complete no_glob_complete noglobdots no_globdots noglob_dots no_glob_dots noglob_subst no_glob_subst + \ noglobsubst no_globsubst nohashall no_hashall nohash_all no_hash_all nohashcmds no_hashcmds nohash_cmds no_hash_cmds nohashdirs no_hashdirs + \ nohash_dirs no_hash_dirs nohashexecutablesonly no_hashexecutablesonly nohash_executables_only no_hash_executables_only nohashlistall no_hashlistall + \ nohash_list_all no_hash_list_all nohistallowclobber no_histallowclobber nohist_allow_clobber no_hist_allow_clobber nohistappend no_histappend + \ nohist_append no_hist_append nohistbeep no_histbeep nohist_beep no_hist_beep nohist_expand no_hist_expand nohist_expire_dups_first no_hist_expire_dups_first + \ nohistexpand no_histexpand nohistexpiredupsfirst no_histexpiredupsfirst nohistfcntllock no_histfcntllock nohist_fcntl_lock no_hist_fcntl_lock + \ nohistfindnodups no_histfindnodups nohist_find_no_dups no_hist_find_no_dups nohistignorealldups no_histignorealldups + \ nohist_ignore_all_dups no_hist_ignore_all_dups nohistignoredups no_histignoredups nohist_ignore_dups no_hist_ignore_dups + \ nohistignorespace no_histignorespace nohist_ignore_space no_hist_ignore_space nohistlexwords no_histlexwords nohist_lex_words no_hist_lex_words + \ nohistnofunctions no_histnofunctions nohist_no_functions no_hist_no_functions nohistnostore no_histnostore nohist_no_store no_hist_no_store + \ nohistreduceblanks no_histreduceblanks nohist_reduce_blanks no_hist_reduce_blanks nohistsavebycopy no_histsavebycopy + \ nohist_save_by_copy no_hist_save_by_copy nohistsavenodups no_histsavenodups nohist_save_no_dups no_hist_save_no_dups + \ nohistsubstpattern no_histsubstpattern nohist_subst_pattern no_hist_subst_pattern nohistverify no_histverify nohist_verify no_hist_verify + \ nohup no_hup noignorebraces no_ignorebraces noignore_braces no_ignore_braces noignoreclosebraces no_ignoreclosebraces noignore_close_braces no_ignore_close_braces + \ noignoreeof no_ignoreeof noignore_eof no_ignore_eof noincappendhistory no_incappendhistory noinc_append_history no_inc_append_history + \ noincappendhistorytime no_incappendhistorytime noinc_append_history_time no_inc_append_history_time nointeractive no_interactive + \ nointeractivecomments no_interactivecomments nointeractive_comments no_interactive_comments noksharrays no_ksharrays noksh_arrays no_ksh_arrays + \ nokshautoload no_kshautoload noksh_autoload no_ksh_autoload nokshglob no_kshglob noksh_glob no_ksh_glob nokshoptionprint no_kshoptionprint + \ noksh_option_print no_ksh_option_print nokshtypeset no_kshtypeset noksh_typeset no_ksh_typeset nokshzerosubscript no_kshzerosubscript + \ noksh_zero_subscript no_ksh_zero_subscript nolistambiguous no_listambiguous nolist_ambiguous no_list_ambiguous nolistbeep no_listbeep + \ nolist_beep no_list_beep nolistpacked no_listpacked nolist_packed no_list_packed nolistrowsfirst no_listrowsfirst nolist_rows_first no_list_rows_first + \ nolisttypes no_listtypes nolist_types no_list_types nolocalloops no_localloops nolocal_loops no_local_loops nolocaloptions no_localoptions + \ nolocal_options no_local_options nolocalpatterns no_localpatterns nolocal_patterns no_local_patterns nolocaltraps no_localtraps + \ nolocal_traps no_local_traps nolog no_log nologin no_login nolonglistjobs no_longlistjobs nolong_list_jobs no_long_list_jobs nomagicequalsubst no_magicequalsubst + \ nomagic_equal_subst no_magic_equal_subst nomailwarn no_mailwarn nomail_warn no_mail_warn nomail_warning no_mail_warning nomark_dirs no_mark_dirs + \ nomailwarning no_mailwarning nomarkdirs no_markdirs nomenucomplete no_menucomplete nomenu_complete no_menu_complete nomonitor no_monitor + \ nomultibyte no_multibyte nomulti_byte no_multi_byte nomultifuncdef no_multifuncdef nomulti_func_def no_multi_func_def nomultios no_multios + \ nomulti_os no_multi_os nonomatch no_nomatch nono_match no_no_match nonotify no_notify nonullglob no_nullglob nonull_glob no_null_glob nonumericglobsort no_numericglobsort + \ nonumeric_glob_sort no_numeric_glob_sort nooctalzeroes no_octalzeroes nooctal_zeroes no_octal_zeroes noonecmd no_onecmd noone_cmd no_one_cmd + \ nooverstrike no_overstrike noover_strike no_over_strike nopathdirs no_pathdirs nopath_dirs no_path_dirs nopathscript no_pathscript + \ nopath_script no_path_script nophysical no_physical nopipefail no_pipefail nopipe_fail no_pipe_fail noposixaliases no_posixaliases + \ noposix_aliases no_posix_aliases noposixargzero no_posixargzero noposix_arg_zero no_posix_arg_zero noposixbuiltins no_posixbuiltins + \ noposix_builtins no_posix_builtins noposixcd no_posixcd noposix_cd no_posix_cd noposixidentifiers no_posixidentifiers noposix_identifiers no_posix_identifiers + \ noposixjobs no_posixjobs noposix_jobs no_posix_jobs noposixstrings no_posixstrings noposix_strings no_posix_strings noposixtraps no_posixtraps + \ noposix_traps no_posix_traps noprinteightbit no_printeightbit noprint_eight_bit no_print_eight_bit noprintexitvalue no_printexitvalue + \ noprint_exit_value no_print_exit_value noprivileged no_privileged nopromptbang no_promptbang noprompt_bang no_prompt_bang nopromptcr no_promptcr + \ noprompt_cr no_prompt_cr nopromptpercent no_promptpercent noprompt_percent no_prompt_percent nopromptsp no_promptsp noprompt_sp no_prompt_sp + \ nopromptsubst no_promptsubst noprompt_subst no_prompt_subst nopromptvars no_promptvars noprompt_vars no_prompt_vars nopushdignoredups no_pushdignoredups + \ nopushd_ignore_dups no_pushd_ignore_dups nopushdminus no_pushdminus nopushd_minus no_pushd_minus nopushdsilent no_pushdsilent nopushd_silent no_pushd_silent + \ nopushdtohome no_pushdtohome nopushd_to_home no_pushd_to_home norcexpandparam no_rcexpandparam norc_expandparam no_rc_expandparam norcquotes no_rcquotes + \ norc_quotes no_rc_quotes norcs no_rcs norecexact no_recexact norec_exact no_rec_exact norematchpcre no_rematchpcre nore_match_pcre no_re_match_pcre + \ norestricted no_restricted normstarsilent no_rmstarsilent norm_star_silent no_rm_star_silent normstarwait no_rmstarwait norm_star_wait no_rm_star_wait + \ nosharehistory no_sharehistory noshare_history no_share_history noshfileexpansion no_shfileexpansion nosh_file_expansion no_sh_file_expansion + \ noshglob no_shglob nosh_glob no_sh_glob noshinstdin no_shinstdin noshin_stdin no_shin_stdin noshnullcmd no_shnullcmd nosh_nullcmd no_sh_nullcmd + \ noshoptionletters no_shoptionletters nosh_option_letters no_sh_option_letters noshortloops no_shortloops noshort_loops no_short_loops noshwordsplit no_shwordsplit + \ nosh_word_split no_sh_word_split nosinglecommand no_singlecommand nosingle_command no_single_command nosinglelinezle no_singlelinezle nosingle_line_zle no_single_line_zle + \ nosourcetrace no_sourcetrace nosource_trace no_source_trace nostdin no_stdin nosunkeyboardhack no_sunkeyboardhack nosun_keyboard_hack no_sun_keyboard_hack + \ notrackall no_trackall notrack_all no_track_all notransientrprompt no_transientrprompt notransient_rprompt no_transient_rprompt + \ notrapsasync no_trapsasync notrapasync no_trapasync notypesetsilent no_typesetsilent notype_set_silent no_type_set_silent nounset no_unset noverbose no_verbose novi no_vi + \ nowarncreateglobal no_warncreateglobal nowarn_create_global no_warn_create_global noxtrace no_xtrace nozle no_zle +syn case match + syn keyword zshTypes float integer local typeset declare " XXX: this may be too much @@ -149,7 +311,7 @@ syn region zshSubst matchgroup=zshSubstDelim start='\${' skip='\\}' syn region zshOldSubst matchgroup=zshSubstDelim start=+`+ skip=+\\`+ \ end=+`+ contains=TOP,zshOldSubst -syn sync minlines=50 +syn sync minlines=50 maxlines=90 syn sync match zshHereDocSync grouphere NONE '<<-\=\s*\%(\\\=\S\+\|\(["']\)\S\+\1\)' syn sync match zshHereDocEndSync groupthere NONE '^\s*EO\a\+\>' @@ -170,16 +332,8 @@ hi def link zshKeyword Keyword hi def link zshFunction None hi def link zshKSHFunction zshFunction hi def link zshHereDoc String -if 0 - hi def link zshOperator Operator -else - hi def link zshOperator None -endif -if 1 - hi def link zshRedir Operator -else - hi def link zshRedir None -endif +hi def link zshOperator None +hi def link zshRedir Operator hi def link zshVariable None hi def link zshVariableDef zshVariable hi def link zshDereferencing PreProc @@ -199,6 +353,7 @@ else hi def link zshDeref None endif hi def link zshCommands Keyword +hi def link zshOptions Constant hi def link zshTypes Type hi def link zshSwitches Special hi def link zshNumber Number |