summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2011-12-30 13:11:27 +0100
committerBram Moolenaar <Bram@vim.org>2011-12-30 13:11:27 +0100
commitb6b046b281fac168a78b3eafdea9274bef06882f (patch)
tree8d50c58421278f30521e290a8cf18c6085b78168
parentdeaf7b739791095e2c98a7087dfe9b3c8dfd56f2 (diff)
downloadvim-git-b6b046b281fac168a78b3eafdea9274bef06882f.tar.gz
Updated runtime files.
-rw-r--r--runtime/autoload/ccomplete.vim7
-rw-r--r--runtime/compiler/gcc.vim2
-rw-r--r--runtime/compiler/rst.vim2
-rw-r--r--runtime/doc/eval.txt7
-rw-r--r--runtime/doc/options.txt4
-rw-r--r--runtime/doc/syntax.txt11
-rw-r--r--runtime/doc/todo.txt49
-rw-r--r--runtime/doc/usr_41.txt8
-rw-r--r--runtime/doc/various.txt5
-rw-r--r--runtime/filetype.vim6
-rw-r--r--runtime/ftplugin/fortran.vim10
-rw-r--r--runtime/ftplugin/kwt.vim10
-rw-r--r--runtime/ftplugin/spec.vim8
-rw-r--r--runtime/indent/fortran.vim10
-rw-r--r--runtime/indent/gitolite.vim8
-rw-r--r--runtime/indent/sdl.vim10
-rw-r--r--runtime/indent/tex.vim43
-rw-r--r--runtime/syntax/abel.vim11
-rw-r--r--runtime/syntax/art.vim8
-rw-r--r--runtime/syntax/ayacc.vim7
-rw-r--r--runtime/syntax/basic.vim7
-rw-r--r--runtime/syntax/bib.vim8
-rw-r--r--runtime/syntax/blank.vim8
-rw-r--r--runtime/syntax/c.vim7
-rw-r--r--runtime/syntax/clean.vim7
-rw-r--r--runtime/syntax/clipper.vim9
-rw-r--r--runtime/syntax/csc.vim7
-rw-r--r--runtime/syntax/cupl.vim11
-rw-r--r--runtime/syntax/cweb.vim7
-rw-r--r--runtime/syntax/fortran.vim15
-rw-r--r--runtime/syntax/gitolite.vim8
-rw-r--r--runtime/syntax/java.vim9
-rw-r--r--runtime/syntax/kwt.vim2
-rw-r--r--runtime/syntax/lua.vim371
-rw-r--r--runtime/syntax/sdl.vim2
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