diff options
author | Bram Moolenaar <Bram@vim.org> | 2011-12-30 13:11:27 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2011-12-30 13:11:27 +0100 |
commit | b6b046b281fac168a78b3eafdea9274bef06882f (patch) | |
tree | 8d50c58421278f30521e290a8cf18c6085b78168 | |
parent | deaf7b739791095e2c98a7087dfe9b3c8dfd56f2 (diff) | |
download | vim-git-b6b046b281fac168a78b3eafdea9274bef06882f.tar.gz |
Updated runtime files.
35 files changed, 453 insertions, 251 deletions
diff --git a/runtime/autoload/ccomplete.vim b/runtime/autoload/ccomplete.vim index 12fc92df2..198bd2005 100644 --- a/runtime/autoload/ccomplete.vim +++ b/runtime/autoload/ccomplete.vim @@ -1,8 +1,10 @@ " Vim completion script " Language: C " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2010 Mar 23 +" Last Change: 2011 Dec 30 +let s:cpo_save = &cpo +set cpo&vim " This function is used for the 'omnifunc' option. function! ccomplete#Complete(findstart, base) @@ -603,3 +605,6 @@ function! s:SearchMembers(matches, items, all) endfor return res endfunc + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/runtime/compiler/gcc.vim b/runtime/compiler/gcc.vim index c6c0e3f98..987a3a626 100644 --- a/runtime/compiler/gcc.vim +++ b/runtime/compiler/gcc.vim @@ -9,7 +9,7 @@ endif let current_compiler = "gcc" let s:cpo_save = &cpo -set cpo-=C +set cpo&vim CompilerSet errorformat= \%*[^\"]\"%f\"%*\\D%l:%c:\ %m, diff --git a/runtime/compiler/rst.vim b/runtime/compiler/rst.vim index 07c7d4139..15d2d79f6 100644 --- a/runtime/compiler/rst.vim +++ b/runtime/compiler/rst.vim @@ -9,7 +9,7 @@ endif let current_compiler = "rst" let s:cpo_save = &cpo -set cpo-=C +set cpo&vim setlocal errorformat= \%f:%l:\ (%tEBUG/0)\ %m, diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index 89ac16347..514a6704a 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 7.3. Last change: 2011 Dec 14 +*eval.txt* For Vim version 7.3. Last change: 2011 Dec 19 VIM REFERENCE MANUAL by Bram Moolenaar @@ -3941,11 +3941,12 @@ line2byte({lnum}) *line2byte()* Return the byte count from the start of the buffer for line {lnum}. This includes the end-of-line character, depending on the 'fileformat' option for the current buffer. The first - line returns 1. + line returns 1. 'encoding' matters, 'fileencoding' is ignored. This can also be used to get the byte count for the line just below the last line: > line2byte(line("$") + 1) -< This is the file size plus one. +< This is the buffer size plus one. If 'fileencoding' is empty + it is the file size plus one. When {lnum} is invalid, or the |+byte_offset| feature has been disabled at compile time, -1 is returned. Also see |byte2line()|, |go| and |:goto|. diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index c52e31b1b..5af206f25 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 7.3. Last change: 2011 Dec 14 +*options.txt* For Vim version 7.3. Last change: 2011 Dec 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -5059,7 +5059,7 @@ A jump table for the options with a short description can be found at |Q_op|. respectively; see |CTRL-A| for more info on these commands. alpha If included, single alphabetical characters will be incremented or decremented. This is useful for a list with a - letter index a), b), etc. *octal-number* + letter index a), b), etc. *octal-nrformats* octal If included, numbers that start with a zero will be considered to be octal. Example: Using CTRL-A on "007" results in "010". hex If included, numbers starting with "0x" or "0X" will be diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index 38bdb3968..ce65aab57 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 7.3. Last change: 2011 Nov 26 +*syntax.txt* For Vim version 7.3. Last change: 2011 Dec 30 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1603,11 +1603,6 @@ which are used for the statement itself, special characters used in debug strings, strings, boolean constants and types (this, super) respectively. I have opted to chose another background for those statements. -In order to help you write code that can be easily ported between Java and -C++, all C++ keywords can be marked as an error in a Java program. To -have this add this line in your .vimrc file: > - :let java_allow_cpp_keywords = 0 - Javadoc is a program that takes special comments out of Java program files and creates HTML pages. The standard configuration will highlight this HTML code similarly to HTML files (see |html.vim|). You can even add Javascript @@ -2775,7 +2770,9 @@ of specialized LaTeX commands, syntax, and fonts. If you're using such a package you'll often wish that the distributed syntax/tex.vim would support it. However, clearly this is impractical. So please consider using the techniques in |mysyntaxfile-add| to extend or modify the highlighting provided -by syntax/tex.vim. +by syntax/tex.vim. Please consider uploading any extensions that you write, +which typically would go in $HOME/after/syntax/tex/[pkgname].vim, to +http://vim.sf.net/. *tex-error* Tex: Excessive Error Highlighting? ~ diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index 2b43166e2..c044ce1bd 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.3. Last change: 2011 Dec 14 +*todo.txt* For Vim version 7.3. Last change: 2011 Dec 30 VIM REFERENCE MANUAL by Bram Moolenaar @@ -38,14 +38,31 @@ Go through more coverity reports. Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10) +Patch to fix crash with EXITFREE. (Dominique Pelle, 2011 Dec 20) + Patch to fix "Console prompts fail to reset the console pager". Issue 14 on googlecode Issue 33 on googlecode: feedkeys() leaks memory. +Patch for Mac using NULL pointer. (Bjorn Winckler, 2011 Dec 18) + Patch to support UTF-8 for Hangul. (Shawn Y.H. Kim, 2011 May 1) Needs more work. +Issue 43: patch with new C keywords. + +When setting 'undofile' while the file is already loaded, but unchanged, try +to read the undo file. Requires computing a checksum of the text. (Andy +Wokula) +Patch from Christian Brabandt, 2011 Dec 22. Dec 24 with test. + +Patch for Vim moving to another window when resizing. (Yukihiro Nakadaira, +2011 Dec 18) + +Compilation problem on z/OS, POUND is equal to '#', duplicate case. +(Stephen Bovy, 2011 Dec 16) + Once syntax and other runtime files have been fixed: add "set cp" to check.vim. Use a function to run both with 'cp' and 'nocp'. @@ -82,6 +99,10 @@ Patch to highlight cursor line number. (Howard Buchholz (lhb), 2011 Oct 18) Patch for urxvt mouse support after shell command. (Issue 31) +When exiting with unsaved changes, selecting an existing file in the file +dialog, there is no dialog to ask whether the existing file should be +overwritten. (Felipe G. Nievinski, 2011 Dec 22) + 7 Setting an option always sets "w_set_curswant", while this is only required for a few options. Only do it for those options to avoid the side effect. @@ -91,6 +112,8 @@ Patch for option in 'cino' to specify more indent for continued conditions. (Lech Lorens, 2011 Nov 27) Isn't this already possible? +Patch for using objcpp file type for headers files. Issue 44. + Docs fix for v:register. (Ingo Karkat, 2011 Sep 26, 27) v:register doesn't work exactly as expected. (David Fishburn, 2011 Sep 20) @@ -104,6 +127,9 @@ Patch for: (Christian Brabandt, 2011 Aug 24, updated patch) Patch to add "onselected" callback for completion. (Taro Muraoka, 2011 Sep 24) +Use a count before "v" and "V" to select that many characters or lines? +(Kikyous) + ":tab drop buffer.c" always opens a new tab, also if buffer.c is already in an open window. (Herb Sitz, 2011 Nov 17) @@ -135,6 +161,8 @@ characters. Patch by Christian Brabandt, 2011 Oct 11) Patch for 'transparency' option. (Sergiu Dotenco, 2011 Sep 17) Only for MS-Windows. No documentation. Do we want this? +Patch to support cursor shape in Cygwin console. (Ben bgold, 2011 Dec 27) + 'cursorline' is displayed too short when there are concealed characters and 'list' is set. (Dennis Preiser) Patch 7.3.116 was the wrong solution. @@ -472,10 +500,6 @@ Patch to support :undo absolute jump to file save number. (Christian Brabandt, Patch to use 'foldnextmax' also for "marker" foldmethod. (Arnaud Lacombe, 2011 Jan 7) -When setting 'undofile' while the file is already loaded, but unchanged, try -to read the undo file. Requires computing a checksum of the text. (Andy -Wokula) - Bug with 'incsearch' going to wrong line. (Wolfram Kresse, 2009 Aug 17) Only with "vim -u NONE". @@ -1055,6 +1079,15 @@ Latest version: 2011 May 18 http://nsis.sourceforge.net/Docs/Chapter4.html#4.12 Version from Guopeng Wen that does this (2010 Dec 27) +Windows installer should install 32-bit version of right-click handler also on +64-bit systems. (Brian Cunningham, 2011 Dec 28) + +Windows installer could add a "open in new tab of existing Vim" menu entry. +Gvimext: patch to add "Edit with single Vim &tabbed" menu entry. +Just have two choices, always using one Vim and selecting between using an +argument list or opening each file in a separate tab. +(Erik Falor, 2008 May 21, 2008 Jun 26) + Windows installer: licence text should not use indent, causes bad word wrap. (Benjamin Fritz, 2010 Aug 16) @@ -1215,12 +1248,6 @@ When unloading a buffer in a BufHidden autocommand the hidden flag is reset? Substituting an area with a line break with almost the same area does change the Visual area. Can this be fixed? (James Vega, 2006 Sept 15) -Windows installer could add a "open in new tab of existing Vim" menu entry. -Gvimext: patch to add "Edit with single Vim &tabbed" menu entry. -Just have two choices, always using one Vim and selecting between using an -argument list or opening each file in a separate tab. -(Erik Falor, 2008 May 21, 2008 Jun 26) - GUI: When combining fg en bg make sure they are not equal. Spell checking: Add a way to specify punctuation characters. Add the diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt index 0a025956f..0e85688d0 100644 --- a/runtime/doc/usr_41.txt +++ b/runtime/doc/usr_41.txt @@ -1,4 +1,4 @@ -*usr_41.txt* For Vim version 7.3. Last change: 2011 Jun 19 +*usr_41.txt* For Vim version 7.3. Last change: 2011 Dec 15 VIM USER MANUAL - by Bram Moolenaar @@ -670,6 +670,12 @@ Floating point computation: *float-functions* cosh() hyperbolic cosine tanh() hyperbolic tangent +Other computation: *bitwise-function* + and() bitwise AND + invert() bitwise invert + or() bitwise OR + xor() bitwise XOR + Variables: *var-functions* type() type of a variable islocked() check if a variable is locked diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt index 9fc890298..78ab7a63b 100644 --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -1,4 +1,4 @@ -*various.txt* For Vim version 7.3. Last change: 2011 Nov 28 +*various.txt* For Vim version 7.3. Last change: 2011 Dec 29 VIM REFERENCE MANUAL by Bram Moolenaar @@ -136,6 +136,9 @@ g8 Print the hex values of the bytes used in the then twice the value of the 'scroll' option is used, otherwise the current window height minus 3 is used. + If there is a {count} the 'window' option is set to + its value. + :z can be used either alone or followed by any of several punctuation marks. These have the following effect: diff --git a/runtime/filetype.vim b/runtime/filetype.vim index 90ce86dd3..f6dce94ad 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: 2011 Oct 26 +" Last Change: 2011 Dec 28 " Listen very carefully, I will say this only once if exists("did_load_filetypes") @@ -2533,6 +2533,10 @@ au BufNewFile,BufRead */etc/yum.repos.d/* call s:StarSetf('dosini') au BufNewFile,BufRead zsh*,zlog* call s:StarSetf('zsh') +" Plain text files, needs to be far down to not override others. This avoids +" the "conf" type being used if there is a line starting with '#'. +au BufNewFile,BufRead *.txt,*.text setf text + " Use the filetype detect plugins. They may overrule any of the previously " detected filetypes. diff --git a/runtime/ftplugin/fortran.vim b/runtime/ftplugin/fortran.vim index 741465da1..948e216f6 100644 --- a/runtime/ftplugin/fortran.vim +++ b/runtime/ftplugin/fortran.vim @@ -1,7 +1,7 @@ " Vim settings file " Language: Fortran90 (and Fortran95, Fortran77, F and elf90) -" Version: 0.46 -" Last Change: 2010 July 24 +" Version: 0.47 +" Last Change: 2011 December 28 " Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www.unb.ca/chem/ajit/> " Usage: Do :help fortran-plugin from Vim " Credits: @@ -12,6 +12,9 @@ if exists("b:did_ftplugin") finish endif +let s:cposet=&cpoptions +set cpoptions&vim + " Don't do other file type settings for this buffer let b:did_ftplugin = 1 @@ -78,9 +81,6 @@ setlocal fo+=tcql setlocal include=^\\c#\\=\\s*include\\s\\+ setlocal suffixesadd+=.f95,.f90,.for,.f,.F,.f77,.ftn,.fpp -let s:cposet=&cpoptions -set cpoptions-=C - " Define patterns for the matchit plugin if !exists("b:match_words") let s:notend = '\%(\<end\s\+\)\@<!' diff --git a/runtime/ftplugin/kwt.vim b/runtime/ftplugin/kwt.vim index 7be64229c..6d4b8fdbf 100644 --- a/runtime/ftplugin/kwt.vim +++ b/runtime/ftplugin/kwt.vim @@ -1,12 +1,13 @@ " Vim filetype plugin file " Language: Kimwitu++ -" Maintainer: Michael Piefel <piefel@informatik.hu-berlin.de> -" Last Change: 16 August 2001 +" Maintainer: Michael Piefel <entwurf@piefel.de> +" Last Change: 10 December 2011 " Behaves almost like C++ runtime! ftplugin/cpp.vim ftplugin/cpp_*.vim ftplugin/cpp/*.vim -set cpo-=C +let s:cpo_save = &cpo +set cpo&vim " Limit the browser to related files if has("gui_win32") && !exists("b:browsefilter") @@ -18,3 +19,6 @@ endif " Set the errorformat for the Kimwitu++ compiler set efm+=kc%.%#:\ error\ at\ %f:%l:\ %m + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/runtime/ftplugin/spec.vim b/runtime/ftplugin/spec.vim index 3b1d70a48..b84ed63fb 100644 --- a/runtime/ftplugin/spec.vim +++ b/runtime/ftplugin/spec.vim @@ -1,13 +1,16 @@ " Plugin to update the %changelog section of RPM spec files " Filename: spec.vim " Maintainer: Gustavo Niemeyer <niemeyer@conectiva.com> -" Last Change: Wed, 10 Apr 2002 16:28:52 -0300 +" Last Change: 2011 Dec 25 by Thilo Six if exists("b:did_ftplugin") finish endif let b:did_ftplugin = 1 +let s:cpo_save = &cpo +set cpo&vim + if !exists("no_plugin_maps") && !exists("no_spec_maps") if !hasmapto("<Plug>SpecChangelog") map <buffer> <LocalLeader>c <Plug>SpecChangelog @@ -166,3 +169,6 @@ let b:match_words = \ '^Name:^%description:^%clean:^%setup:^%build:^%install:^%files:' . \ '^%package:^%preun:^%postun:^%changelog' +let &cpo = s:cpo_save +unlet s:cpo_save + diff --git a/runtime/indent/fortran.vim b/runtime/indent/fortran.vim index a651c09c6..e76c64b67 100644 --- a/runtime/indent/fortran.vim +++ b/runtime/indent/fortran.vim @@ -1,7 +1,7 @@ " Vim indent file " Language: Fortran95 (and Fortran90, Fortran77, F and elf90) -" Version: 0.39 -" Last Change: 2011 May 30 +" Version: 0.40 +" Last Change: 2011 Dec. 28 " Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www.unb.ca/chem/ajit/> " Usage: Do :help fortran-indent from Vim @@ -11,6 +11,9 @@ if exists("b:did_indent") endif let b:did_indent = 1 +let s:cposet=&cpoptions +set cpoptions&vim + setlocal indentkeys+==~end,=~case,=~if,=~else,=~do,=~where,=~elsewhere,=~select setlocal indentkeys+==~endif,=~enddo,=~endwhere,=~endselect,=~elseif setlocal indentkeys+==~type,=~interface,=~forall,=~associate,=~block,=~enum @@ -67,9 +70,6 @@ else endif endif -let s:cposet=&cpoptions -set cpoptions-=C - function FortranGetIndent(lnum) let ind = indent(a:lnum) let prevline=getline(a:lnum) diff --git a/runtime/indent/gitolite.vim b/runtime/indent/gitolite.vim index b95cf0fa2..33b7c9f31 100644 --- a/runtime/indent/gitolite.vim +++ b/runtime/indent/gitolite.vim @@ -2,7 +2,7 @@ " Language: gitolite configuration " URL: https://github.com/tmatilai/gitolite.vim " Maintainer: Teemu Matilainen <teemu.matilainen@iki.fi> -" Last Change: 2011-11-01 +" Last Change: 2011-12-24 if exists("b:did_indent") finish @@ -18,6 +18,9 @@ if exists("*GetGitoliteIndent") finish endif +let s:cpo_save = &cpo +set cpo&vim + function! GetGitoliteIndent() let prevln = prevnonblank(v:lnum-1) let pline = getline(prevln) @@ -37,3 +40,6 @@ function! GetGitoliteIndent() return 0 endif endfunction + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/runtime/indent/sdl.vim b/runtime/indent/sdl.vim index 9dde2c3f5..b5e535eea 100644 --- a/runtime/indent/sdl.vim +++ b/runtime/indent/sdl.vim @@ -1,7 +1,7 @@ " Vim indent file " Language: SDL -" Maintainer: Michael Piefel <piefel@informatik.hu-berlin.de> -" Last Change: 2001 Sep 17 +" Maintainer: Michael Piefel <entwurf@piefel.de> +" Last Change: 10 December 2011 " Shamelessly stolen from the Vim-Script indent file @@ -19,7 +19,8 @@ if exists("*GetSDLIndent") " finish endif -set cpo-=C +let s:cpo_save = &cpo +set cpo&vim function! GetSDLIndent() " Find a non-blank line above the current line. @@ -86,4 +87,7 @@ function! GetSDLIndent() return ind endfunction +let &cpo = s:cpo_save +unlet s:cpo_save + " vim:sw=2 diff --git a/runtime/indent/tex.vim b/runtime/indent/tex.vim index 0758a7027..dcfbccdbe 100644 --- a/runtime/indent/tex.vim +++ b/runtime/indent/tex.vim @@ -2,7 +2,7 @@ " Language: LaTeX " Maintainer: Zhou YiChao <broken.zhou@gmail.com> " Created: Sat, 16 Feb 2002 16:50:19 +0100 -" Last Change: Tue, 25 Sep 2011 +" Last Change: 2011 Dec 24 " Last Update: 25th Sep 2002, by LH : " (*) better support for the option " (*) use some regex instead of several '||'. @@ -37,42 +37,42 @@ " " If this variable is unset or non-zero, it will use smartindent-like style " for "{}" and "[]" -" +" " * g:tex_indent_items " " If this variable is set, item-environments are indented like Emacs does " it, i.e., continuation lines are indented with a shiftwidth. -" +" " NOTE: I've already set the variable below; delete the corresponding line " if you don't like this behaviour. " " Per default, it is unset. -" +" " set unset " ---------------------------------------------------------------- -" \begin{itemize} \begin{itemize} +" \begin{itemize} \begin{itemize} " \item blablabla \item blablabla -" bla bla bla bla bla bla +" bla bla bla bla bla bla " \item blablabla \item blablabla -" bla bla bla bla bla bla -" \end{itemize} \end{itemize} +" bla bla bla bla bla bla +" \end{itemize} \end{itemize} " " " * g:tex_items " -" A list of tokens to be considered as commands for the beginning of an item -" command. The tokens should be separated with '\|'. The initial '\' should +" A list of tokens to be considered as commands for the beginning of an item +" command. The tokens should be separated with '\|'. The initial '\' should " be escaped. The default is '\\bibitem\|\\item'. " " * g:tex_itemize_env -" -" A list of environment names, separated with '\|', where the items (item -" commands matching g:tex_items) may appear. The default is +" +" A list of environment names, separated with '\|', where the items (item +" commands matching g:tex_items) may appear. The default is " 'itemize\|description\|enumerate\|thebibliography'. " " * g:tex_noindent_env " -" A list of environment names. separated with '\|', where no indentation is +" A list of environment names. separated with '\|', where no indentation is " required. The default is 'document\|verbatim'. " " * g:tex_indent_and @@ -82,7 +82,7 @@ " Note that this feature need to search back some line, so vim may become " a little slow. " -" }}} +" }}} if exists("b:did_indent") finish @@ -104,7 +104,7 @@ if g:tex_indent_items let g:tex_itemize_env = 'itemize\|description\|enumerate\|thebibliography' endif if !exists('g:tex_items') - let g:tex_items = '\\bibitem\|\\item' + let g:tex_items = '\\bibitem\|\\item' endif else let g:tex_items = '' @@ -125,6 +125,8 @@ let g:tex_items = '^\s*' . g:tex_items if exists("*GetTeXIndent") | finish endif +let s:cpo_save = &cpo +set cpo&vim function GetTeXIndent() " Find a non-blank line above the current line. @@ -137,7 +139,7 @@ function GetTeXIndent() " At the start of the file use zero indent. if lnum == 0 - return 0 + return 0 endif let line = getline(lnum) " last line @@ -159,7 +161,7 @@ function GetTeXIndent() if lnum == 0 - return 0 + return 0 endif let ind = indent(lnum) @@ -171,7 +173,7 @@ function GetTeXIndent() " Add a 'shiftwidth' after beginning of environments. " Don't add it for \begin{document} and \begin{verbatim} - ""if line =~ '^\s*\\begin{\(.*\)}' && line !~ 'verbatim' + ""if line =~ '^\s*\\begin{\(.*\)}' && line !~ 'verbatim' " LH modification : \begin does not always start a line " ZYC modification : \end after \begin won't cause wrong indent anymore if line =~ '\\begin{.*}' && line !~ g:tex_noindent_env @@ -247,4 +249,7 @@ function GetTeXIndent() return ind endfunction +let &cpo = s:cpo_save +unlet s:cpo_save + " vim: set sw=4 textwidth=80: diff --git a/runtime/syntax/abel.vim b/runtime/syntax/abel.vim index fde9be3dd..05e8dac91 100644 --- a/runtime/syntax/abel.vim +++ b/runtime/syntax/abel.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: ABEL -" Maintainer: John Cook <john.cook@kla-tencor.com> -" Last Change: 2001 Sep 2 +" Maintainer: John Cook <johncook3@gmail.com> +" Last Change: 2011 Dec 27 " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -11,6 +11,9 @@ elseif exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + " this language is oblivious to case syn case ignore @@ -164,4 +167,8 @@ if version >= 508 || !exists("did_abel_syn_inits") endif let b:current_syntax = "abel" + +let &cpo = s:cpo_save +unlet s:cpo_save + " vim:ts=8 diff --git a/runtime/syntax/art.vim b/runtime/syntax/art.vim index c1faddb1e..855119810 100644 --- a/runtime/syntax/art.vim +++ b/runtime/syntax/art.vim @@ -2,12 +2,15 @@ " Language: ART-IM and ART*Enterprise " Maintainer: Dorai Sitaram <ds26@gte.com> " URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html -" Last Change: Nov 6, 2002 +" Last Change: 2011 Dec 28 by Thilo Six if exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + syn case ignore syn keyword artspform => and assert bind @@ -42,3 +45,6 @@ hi def link artspform statement hi def link artvariable function let b:current_syntax = "art" + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/runtime/syntax/ayacc.vim b/runtime/syntax/ayacc.vim index be91e2f7e..fedd0e80a 100644 --- a/runtime/syntax/ayacc.vim +++ b/runtime/syntax/ayacc.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: AYacc " Maintainer: Mathieu Clabaut <mathieu.clabaut@free.fr> -" LastChange: 02 May 2001 +" LastChange: 2011 Dec 25 " Original: Yacc, maintained by Dr. Charles E. Campbell, Jr. " Comment: Replaced sourcing c.vim file by ada.vim and rename yacc* " in ayacc* @@ -22,6 +22,9 @@ else unlet b:current_syntax endif +let s:cpo_save = &cpo +set cpo&vim + " Clusters syn cluster ayaccActionGroup contains=ayaccDelim,cInParen,cTodo,cIncluded,ayaccDelim,ayaccCurlyError,ayaccUnionCurly,ayaccUnion,cUserLabel,cOctalZero,cCppOut2,cCppSkip,cErrInBracket,cErrInParen,cOctalError syn cluster ayaccUnionGroup contains=ayaccKey,cComment,ayaccCurly,cType,cStructure,cStorageClass,ayaccUnionCurly @@ -83,4 +86,6 @@ endif let b:current_syntax = "ayacc" +let &cpo = s:cpo_save +unlet s:cpo_save " vim: ts=15 diff --git a/runtime/syntax/basic.vim b/runtime/syntax/basic.vim index ee500178c..c72032da2 100644 --- a/runtime/syntax/basic.vim +++ b/runtime/syntax/basic.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: BASIC " Maintainer: Allan Kelly <allan@fruitloaf.co.uk> -" Last Change: Tue Sep 14 14:24:23 BST 1999 +" Last Change: 2011 Dec 25 by Thilo Six " First version based on Micro$soft QBASIC circa 1989, as documented in " 'Learn BASIC Now' by Halvorson&Rygmyr. Microsoft Press 1989. @@ -16,6 +16,9 @@ elseif exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + " A bunch of useful BASIC keywords syn keyword basicStatement BEEP beep Beep BLOAD bload Bload BSAVE bsave Bsave syn keyword basicStatement CALL call Call ABSOLUTE absolute Absolute @@ -171,4 +174,6 @@ endif let b:current_syntax = "basic" +let &cpo = s:cpo_save +unlet s:cpo_save " vim: ts=8 diff --git a/runtime/syntax/bib.vim b/runtime/syntax/bib.vim index cf4bba84f..3743fb0dc 100644 --- a/runtime/syntax/bib.vim +++ b/runtime/syntax/bib.vim @@ -2,7 +2,7 @@ " Language: BibTeX (bibliographic database format for (La)TeX) " Maintainer: Bernd Feige <Bernd.Feige@gmx.net> " Filenames: *.bib -" Last Change: Mar 23, 2011 +" Last Change: 2011 Dec 25 " Thanks to those who pointed out problems with this file or supplied fixes! @@ -16,6 +16,9 @@ elseif exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + " Ignore case syn case ignore @@ -93,3 +96,6 @@ if version >= 508 || !exists("did_bib_syn_inits") endif let b:current_syntax = "bib" + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/runtime/syntax/blank.vim b/runtime/syntax/blank.vim index 855433995..60251c966 100644 --- a/runtime/syntax/blank.vim +++ b/runtime/syntax/blank.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: Blank 1.4.1 " Maintainer: Rafal M. Sulejman <unefunge@friko2.onet.pl> -" Last change: 21 Jul 2000 +" Last change: 2011 Dec 28 by Thilo Six " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -11,6 +11,9 @@ elseif exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + syn case ignore " Blank instructions @@ -43,4 +46,7 @@ if version >= 508 || !exists("did_blank_syntax_inits") endif let b:current_syntax = "blank" + +let &cpo = s:cpo_save +unlet s:cpo_save " vim: ts=8 diff --git a/runtime/syntax/c.vim b/runtime/syntax/c.vim index 8ce0ff115..aef59a607 100644 --- a/runtime/syntax/c.vim +++ b/runtime/syntax/c.vim @@ -1,13 +1,16 @@ " Vim syntax file " Language: C " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2011 Sep 07 +" Last Change: 2011 Dec 30 " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + " A bunch of useful C keywords syn keyword cStatement goto break return continue asm syn keyword cLabel case default @@ -390,4 +393,6 @@ hi def link cCppOut Comment let b:current_syntax = "c" +let &cpo = s:cpo_save +unlet s:cpo_save " vim: ts=8 diff --git a/runtime/syntax/clean.vim b/runtime/syntax/clean.vim index 233ecbda1..10dc9cab3 100644 --- a/runtime/syntax/clean.vim +++ b/runtime/syntax/clean.vim @@ -2,7 +2,7 @@ " Language: Clean " Author: Pieter van Engelen <pietere@sci.kun.nl> " Co-Author: Arthur van Leeuwen <arthurvl@sci.kun.nl> -" Last Change: Fri Sep 29 11:35:34 CEST 2000 +" Last Change: 2011 Dec 25 by Thilo Six " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -12,6 +12,9 @@ elseif exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + " Some Clean-keywords syn keyword cleanConditional if case syn keyword cleanLabel let! with where in of @@ -91,4 +94,6 @@ endif let b:current_syntax = "clean" +let &cpo = s:cpo_save +unlet s:cpo_save " vim: ts=4 diff --git a/runtime/syntax/clipper.vim b/runtime/syntax/clipper.vim index 989b257f7..1a10a2dca 100644 --- a/runtime/syntax/clipper.vim +++ b/runtime/syntax/clipper.vim @@ -2,7 +2,7 @@ " Language: Clipper 5.2 & FlagShip " Maintainer: C R Zamana <zamana@zip.net> " Some things based on c.vim by Bram Moolenaar and pascal.vim by Mario Eusebio -" Last Change: Sat Sep 09 2000 +" Last Change: 2011 Dec 29 by Thilo Six " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -12,6 +12,9 @@ elseif exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + " Exceptions for my "Very Own" (TM) user variables naming style. " If you don't like this, comment it syn match clipperUserVariable "\<[a,b,c,d,l,n,o,u,x][A-Z][A-Za-z0-9_]*\>" @@ -140,4 +143,6 @@ endif let b:current_syntax = "clipper" -" vim: ts=4 +let &cpo = s:cpo_save +unlet s:cpo_save +" vim: ts=8 diff --git a/runtime/syntax/csc.vim b/runtime/syntax/csc.vim index 8d67334aa..5493b17f5 100644 --- a/runtime/syntax/csc.vim +++ b/runtime/syntax/csc.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: Essbase script " Maintainer: Raul Segura Acevedo <raulseguraaceved@netscape.net> -" Last change: 2001 Sep 25 +" Last change: 2011 Dec 25 by Thilo Six " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -11,6 +11,9 @@ elseif exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + " folds: fix/endfix and comments sy region EssFold start="\<Fix" end="EndFix" transparent fold @@ -196,4 +199,6 @@ endif let b:current_syntax = "csc" +let &cpo = s:cpo_save +unlet s:cpo_save " vim: ts=8 diff --git a/runtime/syntax/cupl.vim b/runtime/syntax/cupl.vim index 9f804c76c..545d873af 100644 --- a/runtime/syntax/cupl.vim +++ b/runtime/syntax/cupl.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: CUPL -" Maintainer: John Cook <john.cook@kla-tencor.com> -" Last Change: 2001 Apr 25 +" Maintainer: John Cook <johncook3@gmail.com> +" Last Change: 2011 Dec 27 " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -11,6 +11,9 @@ elseif exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + " this language is oblivious to case. syn case ignore @@ -127,4 +130,8 @@ if version >= 508 || !exists("did_cupl_syn_inits") endif let b:current_syntax = "cupl" + +let &cpo = s:cpo_save +unlet s:cpo_save + " vim:ts=8 diff --git a/runtime/syntax/cweb.vim b/runtime/syntax/cweb.vim index 4062b0a4e..39b593d2b 100644 --- a/runtime/syntax/cweb.vim +++ b/runtime/syntax/cweb.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: CWEB " Maintainer: Andreas Scherer <andreas.scherer@pobox.com> -" Last Change: April 30, 2001 +" Last Change: 2011 Dec 25 by Thilo Six " Details of the CWEB language can be found in the article by Donald E. Knuth " and Silvio Levy, "The CWEB System of Structured Documentation", included as @@ -36,6 +36,9 @@ endif " C/C++ section of a CWEB chunk or in inner C/C++ context in "|...|" groups. syntax include @webIncludedC <sfile>:p:h/cpp.vim +let s:cpo_save = &cpo +set cpo&vim + " Inner C/C++ context (ICC) should be quite simple as it's comprised of " material in "|...|"; however the naive definition for this region would " hickup at the innocious "\|" TeX macro. Note: For the time being we expect @@ -77,4 +80,6 @@ endif let b:current_syntax = "cweb" +let &cpo = s:cpo_save +unlet s:cpo_save " vim: ts=8 diff --git a/runtime/syntax/fortran.vim b/runtime/syntax/fortran.vim index 1c43a3ae2..e1d82ac0a 100644 --- a/runtime/syntax/fortran.vim +++ b/runtime/syntax/fortran.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: Fortran95 (and Fortran90, Fortran77, F and elf90) -" Version: 0.89 -" Last Change: 2010 July 21 +" Version: 0.90 +" Last Change: 2011 Dec. 28 " Maintainer: Ajit J. Thakkar (ajit AT unb.ca); <http://www.unb.ca/chem/ajit/> " Usage: For instructions, do :help fortran-syntax from Vim " Credits: @@ -19,6 +19,9 @@ elseif exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + " let b:fortran_dialect = fortran_dialect if set correctly by user if exists("fortran_dialect") if fortran_dialect =~ '\<\(f\(9[05]\|77\)\|elf\|F\)\>' @@ -257,7 +260,7 @@ if b:fortran_dialect != "f77" syn match fortranType "\<end\s*type" syn match fortranType "\<in\s*out" - syn keyword fortranUnitHeaderEx procedure + syn keyword fortranType procedure syn keyword fortranIOEx namelist syn keyword fortranConditionalEx while syn keyword fortran90IntrinsicEx achar iachar transfer @@ -306,13 +309,15 @@ if b:fortran_dialect == "f95" syn keyword fortran03ReadWrite flush wait syn keyword fortran03IO decimal round iomsg syn keyword fortran03Type asynchronous nopass non_overridable pass protected volatile abstract extends import - syn keyword fortran03Type non_intrinsic value bind deferred generic final enumerator class + syn keyword fortran03Type non_intrinsic value bind deferred generic final enumerator + syn match fortran03Type "\<class\>" syn match fortran03Type "\<associate\>" syn match fortran03Type "\<end\s*associate" syn match fortran03Type "\<enum\s*,\s*bind\s*(\s*c\s*)" syn match fortran03Type "\<end\s*enum" syn match fortran03Conditional "\<select\s*type" syn match fortran03Conditional "\<type\s*is\>" + syn match fortran03Conditional "\<class\s*is\>" syn match fortran03UnitHeader "\<abstract\s*interface\>" syn match fortran03Operator "\([\|]\)" @@ -537,4 +542,6 @@ endif let b:current_syntax = "fortran" +let &cpo = s:cpo_save +unlet s:cpo_save " vim: ts=8 tw=132 diff --git a/runtime/syntax/gitolite.vim b/runtime/syntax/gitolite.vim index 6963ac795..718aad0de 100644 --- a/runtime/syntax/gitolite.vim +++ b/runtime/syntax/gitolite.vim @@ -2,12 +2,15 @@ " Language: gitolite configuration " URL: https://github.com/tmatilai/gitolite.vim " Maintainer: Teemu Matilainen <teemu.matilainen@iki.fi> -" Last Change: 2011-10-18 +" Last Change: 2011-12-25 if exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + " Comment syn match gitoliteComment "\(^\|\s\)#.*" contains=gitoliteTodo syn keyword gitoliteTodo TODO FIXME XXX NOT contained @@ -78,3 +81,6 @@ hi def link gitoliteInclude Include hi def link gitoliteString String let b:current_syntax = "gitolite" + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/runtime/syntax/java.vim b/runtime/syntax/java.vim index d11afa8b6..13ca62ca4 100644 --- a/runtime/syntax/java.vim +++ b/runtime/syntax/java.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: Java " Maintainer: Claudio Fleiner <claudio@fleiner.com> " URL: http://www.fleiner.com/vim/syntax/java.vim -" Last Change: 2010 March 23 +" Last Change: 2011 Dec 30 " Please check :help java.vim for comments on some of the options available. @@ -120,11 +120,8 @@ syn region javaLabelRegion transparent matchgroup=javaLabel start="\<case\>" ma syn match javaUserLabel "^\s*[_$a-zA-Z][_$a-zA-Z0-9_]*\s*:"he=e-1 contains=javaLabel syn keyword javaLabel default -if !exists("java_allow_cpp_keywords") - syn keyword javaError auto delete extern friend inline redeclared - syn keyword javaError register signed sizeof struct template typedef union - syn keyword javaError unsigned operator -endif +" highlighting C++ keywords as errors removed, too many people find it +" annoying. Was: if !exists("java_allow_cpp_keywords") " The following cluster contains all java groups except the contained ones syn cluster javaTop add=javaExternal,javaError,javaError,javaBranch,javaLabelRegion,javaLabel,javaConditional,javaRepeat,javaBoolean,javaConstant,javaTypedef,javaOperator,javaType,javaType,javaStatement,javaStorageClass,javaAssert,javaExceptions,javaMethodDecl,javaClassDecl,javaClassDecl,javaClassDecl,javaScopeDecl,javaError,javaError2,javaUserLabel,javaLangObject,javaAnnotation,javaVarArg diff --git a/runtime/syntax/kwt.vim b/runtime/syntax/kwt.vim index 47be7a804..4c2c9d9dc 100644 --- a/runtime/syntax/kwt.vim +++ b/runtime/syntax/kwt.vim @@ -1,6 +1,6 @@ " Vim syntax file " Language: kimwitu++ -" Maintainer: Michael Piefel <piefel@informatik.hu-berlin.de> +" Maintainer: Michael Piefel <entwurf@piefel.de> " Last Change: 2 May 2001 " For version 5.x: Clear all syntax items diff --git a/runtime/syntax/lua.vim b/runtime/syntax/lua.vim index c40c6285c..18e97ff53 100644 --- a/runtime/syntax/lua.vim +++ b/runtime/syntax/lua.vim @@ -1,11 +1,11 @@ " Vim syntax file -" Language: Lua 4.0, Lua 5.0 and Lua 5.1 -" Maintainer: Marcus Aurelius Farias <marcus.cf 'at' bol com br> +" Language: Lua 4.0, Lua 5.0, Lua 5.1 and Lua 5.2 +" Maintainer: Marcus Aurelius Farias <masserahguard-lua 'at' yahoo com> " First Author: Carlos Augusto Teixeira Mendes <cmendes 'at' inf puc-rio br> -" Last Change: 2006 Aug 10 +" Last Change: 2011 Dec 20 " Options: lua_version = 4 or 5 -" lua_subversion = 0 (4.0, 5.0) or 1 (5.1) -" default 5.1 +" lua_subversion = 0 (4.0, 5.0) or 1 (5.1) or 2 (5.2) +" default 5.2 " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -16,9 +16,9 @@ elseif exists("b:current_syntax") endif if !exists("lua_version") - " Default is lua 5.1 + " Default is lua 5.2 let lua_version = 5 - let lua_subversion = 1 + let lua_subversion = 2 elseif !exists("lua_subversion") " lua_version exists, but lua_subversion doesn't. So, set it to 0 let lua_subversion = 0 @@ -30,14 +30,14 @@ syn case match syn sync minlines=100 " Comments -syn keyword luaTodo contained TODO FIXME XXX -syn match luaComment "--.*$" contains=luaTodo,@Spell +syn keyword luaTodo contained TODO FIXME XXX +syn match luaComment "--.*$" contains=luaTodo,@Spell if lua_version == 5 && lua_subversion == 0 - syn region luaComment matchgroup=luaComment start="--\[\[" end="\]\]" contains=luaTodo,luaInnerComment,@Spell - syn region luaInnerComment contained transparent start="\[\[" end="\]\]" + syn region luaComment matchgroup=luaComment start="--\[\[" end="\]\]" contains=luaTodo,luaInnerComment,@Spell + syn region luaInnerComment contained transparent start="\[\[" end="\]\]" elseif lua_version > 5 || (lua_version == 5 && lua_subversion >= 1) " Comments in Lua 5.1: --[[ ... ]], [=[ ... ]=], [===[ ... ]===], etc. - syn region luaComment matchgroup=luaComment start="--\[\z(=*\)\[" end="\]\z1\]" contains=luaTodo,@Spell + syn region luaComment matchgroup=luaComment start="--\[\z(=*\)\[" end="\]\z1\]" contains=luaTodo,@Spell endif " First line may start with #! @@ -46,59 +46,66 @@ syn match luaComment "\%^#!.*" " catch errors caused by wrong parenthesis and wrong curly brackets or " keywords placed outside their respective blocks -syn region luaParen transparent start='(' end=')' contains=ALLBUT,luaError,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement -syn match luaError ")" +syn region luaParen transparent start='(' end=')' contains=TOP,luaParenError +syn match luaParenError ")" syn match luaError "}" syn match luaError "\<\%(end\|else\|elseif\|then\|until\|in\)\>" " Function declaration -syn region luaFunctionBlock transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat +syn region luaFunctionBlock transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=TOP -" if then else elseif end -syn keyword luaCond contained else +" else +syn keyword luaCondElse matchgroup=luaCond contained containedin=luaCondEnd else " then ... end -syn region luaCondEnd contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaRepeat +syn region luaCondEnd contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=TOP " elseif ... then -syn region luaCondElseif contained transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat +syn region luaCondElseif contained containedin=luaCondEnd transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=TOP " if ... then -syn region luaCondStart transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaCondEnd skipwhite skipempty +syn region luaCondStart transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=TOP nextgroup=luaCondEnd skipwhite skipempty " do ... end -syn region luaBlock transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat - +syn region luaBlock transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=TOP " repeat ... until -syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat +syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=TOP " while ... do -syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaBlock skipwhite skipempty +syn region luaWhile transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=TOP nextgroup=luaBlock skipwhite skipempty " for ... do and for ... in ... do -syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd nextgroup=luaBlock skipwhite skipempty +syn region luaFor transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=TOP nextgroup=luaBlock skipwhite skipempty -" Following 'else' example. This is another item to those -" contains=ALLBUT,... because only the 'for' luaRepeatBlock contains it. -syn keyword luaRepeat contained in +syn keyword luaFor contained containedin=luaFor in " other keywords syn keyword luaStatement return local break -syn keyword luaOperator and or not -syn keyword luaConstant nil +if lua_version > 5 || (lua_version == 5 && lua_subversion >= 2) + syn keyword luaStatement goto + syn match luaLabel "::\I\i*::" +endif +syn keyword luaOperator and or not +syn keyword luaConstant nil if lua_version > 4 syn keyword luaConstant true false endif " Strings if lua_version < 5 - syn match luaSpecial contained "\\[\\abfnrtv\'\"]\|\\\d\{,3}" -elseif lua_version == 5 && lua_subversion == 0 - syn match luaSpecial contained "\\[\\abfnrtv\'\"[\]]\|\\\d\{,3}" - syn region luaString2 matchgroup=luaString start=+\[\[+ end=+\]\]+ contains=luaString2,@Spell -elseif lua_version > 5 || (lua_version == 5 && lua_subversion >= 1) - syn match luaSpecial contained "\\[\\abfnrtv\'\"]\|\\\d\{,3}" - syn region luaString2 matchgroup=luaString start="\[\z(=*\)\[" end="\]\z1\]" contains=@Spell + syn match luaSpecial contained "\\[\\abfnrtv\'\"]\|\\[[:digit:]]\{,3}" +elseif lua_version == 5 + if lua_subversion == 0 + syn match luaSpecial contained #\\[\\abfnrtv'"[\]]\|\\[[:digit:]]\{,3}# + syn region luaString2 matchgroup=luaString start=+\[\[+ end=+\]\]+ contains=luaString2,@Spell + else + if lua_subversion == 1 + syn match luaSpecial contained #\\[\\abfnrtv'"]\|\\[[:digit:]]\{,3}# + else " Lua 5.2 + syn match luaSpecial contained #\\[\\abfnrtvz'"]\|\\x[[:xdigit:]]\{2}\|\\[[:digit:]]\{,3}# + endif + syn region luaString2 matchgroup=luaString start="\[\z(=*\)\[" end="\]\z1\]" contains=@Spell + endif endif syn region luaString start=+'+ end=+'+ skip=+\\\\\|\\'+ contains=luaSpecial,@Spell syn region luaString start=+"+ end=+"+ skip=+\\\\\|\\"+ contains=luaSpecial,@Spell @@ -106,19 +113,23 @@ syn region luaString start=+"+ end=+"+ skip=+\\\\\|\\"+ contains=luaSpecial,@Sp " integer number syn match luaNumber "\<\d\+\>" " floating point number, with dot, optional exponent -syn match luaFloat "\<\d\+\.\d*\%(e[-+]\=\d\+\)\=\>" +syn match luaNumber "\<\d\+\.\d*\%([eE][-+]\=\d\+\)\=\>" " floating point number, starting with a dot, optional exponent -syn match luaFloat "\.\d\+\%(e[-+]\=\d\+\)\=\>" +syn match luaNumber "\.\d\+\%([eE][-+]\=\d\+\)\=\>" " floating point number, without dot, with exponent -syn match luaFloat "\<\d\+e[-+]\=\d\+\>" +syn match luaNumber "\<\d\+[eE][-+]\=\d\+\>" " hex numbers -if lua_version > 5 || (lua_version == 5 && lua_subversion >= 1) - syn match luaNumber "\<0x\x\+\>" +if lua_version >= 5 + if lua_subversion == 1 + syn match luaNumber "\<0[xX]\x\+\>" + elseif lua_subversion >= 2 + syn match luaNumber "\<0[xX][[:xdigit:].]\+\%([pP][-+]\=\d\+\)\=\>" + endif endif " tables -syn region luaTableBlock transparent matchgroup=luaTable start="{" end="}" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement +syn region luaTableBlock transparent matchgroup=luaTable start="{" end="}" contains=TOP,luaStatement syn keyword luaFunc assert collectgarbage dofile error next syn keyword luaFunc print rawget rawset tonumber tostring type _VERSION @@ -144,127 +155,170 @@ if lua_version == 4 syn keyword luaFunc format strfind gsub syn keyword luaFunc getinfo getlocal setlocal setcallhook setlinehook elseif lua_version == 5 - " Not sure if all these functions need to be highlighted... - syn keyword luaFunc _G getfenv getmetatable ipairs loadfile - syn keyword luaFunc loadstring pairs pcall rawequal - syn keyword luaFunc require setfenv setmetatable unpack xpcall + syn keyword luaFunc getmetatable setmetatable + syn keyword luaFunc ipairs pairs + syn keyword luaFunc pcall xpcall + syn keyword luaFunc _G loadfile rawequal require if lua_subversion == 0 + syn keyword luaFunc getfenv setfenv + syn keyword luaFunc loadstring unpack syn keyword luaFunc gcinfo loadlib LUA_PATH _LOADED _REQUIREDNAME - elseif lua_subversion == 1 - syn keyword luaFunc load module select - syn match luaFunc /package\.cpath/ - syn match luaFunc /package\.loaded/ - syn match luaFunc /package\.loadlib/ - syn match luaFunc /package\.path/ - syn match luaFunc /package\.preload/ - syn match luaFunc /package\.seeall/ - syn match luaFunc /coroutine\.running/ + else + syn keyword luaFunc load select + syn match luaFunc /\<package\.cpath\>/ + syn match luaFunc /\<package\.loaded\>/ + syn match luaFunc /\<package\.loadlib\>/ + syn match luaFunc /\<package\.path\>/ + if lua_subversion == 1 + syn keyword luaFunc getfenv setfenv + syn keyword luaFunc loadstring module unpack + syn match luaFunc /\<package\.loaders\>/ + syn match luaFunc /\<package\.preload\>/ + syn match luaFunc /\<package\.seeall\>/ + elseif lua_subversion == 2 + syn keyword luaFunc _ENV rawlen + syn match luaFunc /\<package\.config\>/ + syn match luaFunc /\<package\.preload\>/ + syn match luaFunc /\<package\.searchers\>/ + syn match luaFunc /\<package\.searchpath\>/ + syn match luaFunc /\<bit32\.arshift\>/ + syn match luaFunc /\<bit32\.band\>/ + syn match luaFunc /\<bit32\.bnot\>/ + syn match luaFunc /\<bit32\.bor\>/ + syn match luaFunc /\<bit32\.btest\>/ + syn match luaFunc /\<bit32\.bxor\>/ + syn match luaFunc /\<bit32\.extract\>/ + syn match luaFunc /\<bit32\.lrotate\>/ + syn match luaFunc /\<bit32\.lshift\>/ + syn match luaFunc /\<bit32\.replace\>/ + syn match luaFunc /\<bit32\.rrotate\>/ + syn match luaFunc /\<bit32\.rshift\>/ + endif + syn match luaFunc /\<coroutine\.running\>/ endif - syn match luaFunc /coroutine\.create/ - syn match luaFunc /coroutine\.resume/ - syn match luaFunc /coroutine\.status/ - syn match luaFunc /coroutine\.wrap/ - syn match luaFunc /coroutine\.yield/ - syn match luaFunc /string\.byte/ - syn match luaFunc /string\.char/ - syn match luaFunc /string\.dump/ - syn match luaFunc /string\.find/ - syn match luaFunc /string\.len/ - syn match luaFunc /string\.lower/ - syn match luaFunc /string\.rep/ - syn match luaFunc /string\.sub/ - syn match luaFunc /string\.upper/ - syn match luaFunc /string\.format/ - syn match luaFunc /string\.gsub/ + syn match luaFunc /\<coroutine\.create\>/ + syn match luaFunc /\<coroutine\.resume\>/ + syn match luaFunc /\<coroutine\.status\>/ + syn match luaFunc /\<coroutine\.wrap\>/ + syn match luaFunc /\<coroutine\.yield\>/ + syn match luaFunc /\<string\.byte\>/ + syn match luaFunc /\<string\.char\>/ + syn match luaFunc /\<string\.dump\>/ + syn match luaFunc /\<string\.find\>/ + syn match luaFunc /\<string\.format\>/ + syn match luaFunc /\<string\.gsub\>/ + syn match luaFunc /\<string\.len\>/ + syn match luaFunc /\<string\.lower\>/ + syn match luaFunc /\<string\.rep\>/ + syn match luaFunc /\<string\.sub\>/ + syn match luaFunc /\<string\.upper\>/ if lua_subversion == 0 - syn match luaFunc /string\.gfind/ - syn match luaFunc /table\.getn/ - syn match luaFunc /table\.setn/ - syn match luaFunc /table\.foreach/ - syn match luaFunc /table\.foreachi/ - elseif lua_subversion == 1 - syn match luaFunc /string\.gmatch/ - syn match luaFunc /string\.match/ - syn match luaFunc /string\.reverse/ - syn match luaFunc /table\.maxn/ + syn match luaFunc /\<string\.gfind\>/ + else + syn match luaFunc /\<string\.gmatch\>/ + syn match luaFunc /\<string\.match\>/ + syn match luaFunc /\<string\.reverse\>/ endif - syn match luaFunc /table\.concat/ - syn match luaFunc /table\.sort/ - syn match luaFunc /table\.insert/ - syn match luaFunc /table\.remove/ - syn match luaFunc /math\.abs/ - syn match luaFunc /math\.acos/ - syn match luaFunc /math\.asin/ - syn match luaFunc /math\.atan/ - syn match luaFunc /math\.atan2/ - syn match luaFunc /math\.ceil/ - syn match luaFunc /math\.sin/ - syn match luaFunc /math\.cos/ - syn match luaFunc /math\.tan/ - syn match luaFunc /math\.deg/ - syn match luaFunc /math\.exp/ - syn match luaFunc /math\.floor/ - syn match luaFunc /math\.log/ - syn match luaFunc /math\.log10/ - syn match luaFunc /math\.max/ - syn match luaFunc /math\.min/ if lua_subversion == 0 - syn match luaFunc /math\.mod/ + syn match luaFunc /\<table\.getn\>/ + syn match luaFunc /\<table\.setn\>/ + syn match luaFunc /\<table\.foreach\>/ + syn match luaFunc /\<table\.foreachi\>/ elseif lua_subversion == 1 - syn match luaFunc /math\.fmod/ - syn match luaFunc /math\.modf/ - syn match luaFunc /math\.cosh/ - syn match luaFunc /math\.sinh/ - syn match luaFunc /math\.tanh/ + syn match luaFunc /\<table\.maxn\>/ + elseif lua_subversion == 2 + syn match luaFunc /\<table\.pack\>/ + syn match luaFunc /\<table\.unpack\>/ + endif + syn match luaFunc /\<table\.concat\>/ + syn match luaFunc /\<table\.sort\>/ + syn match luaFunc /\<table\.insert\>/ + syn match luaFunc /\<table\.remove\>/ + syn match luaFunc /\<math\.abs\>/ + syn match luaFunc /\<math\.acos\>/ + syn match luaFunc /\<math\.asin\>/ + syn match luaFunc /\<math\.atan\>/ + syn match luaFunc /\<math\.atan2\>/ + syn match luaFunc /\<math\.ceil\>/ + syn match luaFunc /\<math\.sin\>/ + syn match luaFunc /\<math\.cos\>/ + syn match luaFunc /\<math\.tan\>/ + syn match luaFunc /\<math\.deg\>/ + syn match luaFunc /\<math\.exp\>/ + syn match luaFunc /\<math\.floor\>/ + syn match luaFunc /\<math\.log\>/ + syn match luaFunc /\<math\.max\>/ + syn match luaFunc /\<math\.min\>/ + if lua_subversion == 0 + syn match luaFunc /\<math\.mod\>/ + syn match luaFunc /\<math\.log10\>/ + else + if lua_subversion == 1 + syn match luaFunc /\<math\.log10\>/ + endif + syn match luaFunc /\<math\.huge\>/ + syn match luaFunc /\<math\.fmod\>/ + syn match luaFunc /\<math\.modf\>/ + syn match luaFunc /\<math\.cosh\>/ + syn match luaFunc /\<math\.sinh\>/ + syn match luaFunc /\<math\.tanh\>/ endif - syn match luaFunc /math\.pow/ - syn match luaFunc /math\.rad/ - syn match luaFunc /math\.sqrt/ - syn match luaFunc /math\.frexp/ - syn match luaFunc /math\.ldexp/ - syn match luaFunc /math\.random/ - syn match luaFunc /math\.randomseed/ - syn match luaFunc /math\.pi/ - syn match luaFunc /io\.stdin/ - syn match luaFunc /io\.stdout/ - syn match luaFunc /io\.stderr/ - syn match luaFunc /io\.close/ - syn match luaFunc /io\.flush/ - syn match luaFunc /io\.input/ - syn match luaFunc /io\.lines/ - syn match luaFunc /io\.open/ - syn match luaFunc /io\.output/ - syn match luaFunc /io\.popen/ - syn match luaFunc /io\.read/ - syn match luaFunc /io\.tmpfile/ - syn match luaFunc /io\.type/ - syn match luaFunc /io\.write/ - syn match luaFunc /os\.clock/ - syn match luaFunc /os\.date/ - syn match luaFunc /os\.difftime/ - syn match luaFunc /os\.execute/ - syn match luaFunc /os\.exit/ - syn match luaFunc /os\.getenv/ - syn match luaFunc /os\.remove/ - syn match luaFunc /os\.rename/ - syn match luaFunc /os\.setlocale/ - syn match luaFunc /os\.time/ - syn match luaFunc /os\.tmpname/ - syn match luaFunc /debug\.debug/ - syn match luaFunc /debug\.gethook/ - syn match luaFunc /debug\.getinfo/ - syn match luaFunc /debug\.getlocal/ - syn match luaFunc /debug\.getupvalue/ - syn match luaFunc /debug\.setlocal/ - syn match luaFunc /debug\.setupvalue/ - syn match luaFunc /debug\.sethook/ - syn match luaFunc /debug\.traceback/ + syn match luaFunc /\<math\.pow\>/ + syn match luaFunc /\<math\.rad\>/ + syn match luaFunc /\<math\.sqrt\>/ + syn match luaFunc /\<math\.frexp\>/ + syn match luaFunc /\<math\.ldexp\>/ + syn match luaFunc /\<math\.random\>/ + syn match luaFunc /\<math\.randomseed\>/ + syn match luaFunc /\<math\.pi\>/ + syn match luaFunc /\<io\.close\>/ + syn match luaFunc /\<io\.flush\>/ + syn match luaFunc /\<io\.input\>/ + syn match luaFunc /\<io\.lines\>/ + syn match luaFunc /\<io\.open\>/ + syn match luaFunc /\<io\.output\>/ + syn match luaFunc /\<io\.popen\>/ + syn match luaFunc /\<io\.read\>/ + syn match luaFunc /\<io\.stderr\>/ + syn match luaFunc /\<io\.stdin\>/ + syn match luaFunc /\<io\.stdout\>/ + syn match luaFunc /\<io\.tmpfile\>/ + syn match luaFunc /\<io\.type\>/ + syn match luaFunc /\<io\.write\>/ + syn match luaFunc /\<os\.clock\>/ + syn match luaFunc /\<os\.date\>/ + syn match luaFunc /\<os\.difftime\>/ + syn match luaFunc /\<os\.execute\>/ + syn match luaFunc /\<os\.exit\>/ + syn match luaFunc /\<os\.getenv\>/ + syn match luaFunc /\<os\.remove\>/ + syn match luaFunc /\<os\.rename\>/ + syn match luaFunc /\<os\.setlocale\>/ + syn match luaFunc /\<os\.time\>/ + syn match luaFunc /\<os\.tmpname\>/ + syn match luaFunc /\<debug\.debug\>/ + syn match luaFunc /\<debug\.gethook\>/ + syn match luaFunc /\<debug\.getinfo\>/ + syn match luaFunc /\<debug\.getlocal\>/ + syn match luaFunc /\<debug\.getupvalue\>/ + syn match luaFunc /\<debug\.setlocal\>/ + syn match luaFunc /\<debug\.setupvalue\>/ + syn match luaFunc /\<debug\.sethook\>/ + syn match luaFunc /\<debug\.traceback\>/ if lua_subversion == 1 - syn match luaFunc /debug\.getfenv/ - syn match luaFunc /debug\.getmetatable/ - syn match luaFunc /debug\.getregistry/ - syn match luaFunc /debug\.setfenv/ - syn match luaFunc /debug\.setmetatable/ + syn match luaFunc /\<debug\.getfenv\>/ + syn match luaFunc /\<debug\.setfenv\>/ + syn match luaFunc /\<debug\.getmetatable\>/ + syn match luaFunc /\<debug\.setmetatable\>/ + syn match luaFunc /\<debug\.getregistry\>/ + elseif lua_subversion == 2 + syn match luaFunc /\<debug\.getmetatable\>/ + syn match luaFunc /\<debug\.setmetatable\>/ + syn match luaFunc /\<debug\.getregistry\>/ + syn match luaFunc /\<debug\.getuservalue\>/ + syn match luaFunc /\<debug\.setuservalue\>/ + syn match luaFunc /\<debug\.upvalueid\>/ + syn match luaFunc /\<debug\.upvaluejoin\>/ endif endif @@ -281,24 +335,27 @@ if version >= 508 || !exists("did_lua_syntax_inits") HiLink luaStatement Statement HiLink luaRepeat Repeat + HiLink luaFor Repeat HiLink luaString String HiLink luaString2 String HiLink luaNumber Number - HiLink luaFloat Float HiLink luaOperator Operator HiLink luaConstant Constant HiLink luaCond Conditional + HiLink luaCondElse Conditional HiLink luaFunction Function HiLink luaComment Comment HiLink luaTodo Todo HiLink luaTable Structure HiLink luaError Error + HiLink luaParenError Error HiLink luaSpecial SpecialChar HiLink luaFunc Identifier + HiLink luaLabel Label delcommand HiLink endif let b:current_syntax = "lua" -" vim: et ts=8 +" vim: et ts=8 sw=2 diff --git a/runtime/syntax/sdl.vim b/runtime/syntax/sdl.vim index d0165e760..b524b7226 100644 --- a/runtime/syntax/sdl.vim +++ b/runtime/syntax/sdl.vim @@ -1,6 +1,6 @@ " Vim syntax file " Language: SDL -" Maintainer: Michael Piefel <piefel@informatik.hu-berlin.de> +" Maintainer: Michael Piefel <entwurf@piefel.de> " Last Change: 2 May 2001 " For version 5.x: Clear all syntax items |