updated for version 7.1a

This commit is contained in:
Bram Moolenaar
2007-05-05 17:15:44 +00:00
parent 0630b8d96d
commit d5ab34bd5e
20 changed files with 317 additions and 231 deletions

View File

@ -1,7 +1,7 @@
" Vim completion script
" Language: HTML and XHTML
" Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
" Last Change: 2006 Apr 30
" Last Change: 2006 Oct 19
function! htmlcomplete#CompleteTags(findstart, base)
if a:findstart
@ -84,7 +84,7 @@ function! htmlcomplete#CompleteTags(findstart, base)
let context_line = getline(curline-i)
if context_line =~ '<[^>]*$'
" Yep, this is this line
let context_lines = getline(curline-i, curline)
let context_lines = getline(curline-i, curline-1) + [b:compl_context]
let b:compl_context = join(context_lines, ' ')
break
elseif context_line =~ '>[^<]*$' || i == curline
@ -448,6 +448,15 @@ function! htmlcomplete#CompleteTags(findstart, base)
let attrname = matchstr(attr, '.*\ze\s*=')
let entered_value = matchstr(attr, ".*=\\s*[\"']\\?\\zs.*")
let values = []
" Load data {{{
if !exists("b:html_doctype")
call htmlcomplete#CheckDoctype()
endif
if !exists("b:html_omni")
"runtime! autoload/xml/xhtml10s.vim
call htmlcomplete#LoadData()
endif
" }}}
if attrname == 'href'
" Now we are looking for local anchors defined by name or id
if entered_value =~ '^#'
@ -604,21 +613,20 @@ function! htmlcomplete#CompleteTags(findstart, base)
if exists("uppercase_tag") && uppercase_tag == 1
let context = tolower(context)
endif
" Handle XML keywords: DOCTYPE and CDATA.
" Handle XML keywords: DOCTYPE
if opentag == ''
let tags += [
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">',
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">',
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">',
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN" "http://www.w3.org/TR/REC-html40/frameset.dtd">',
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">',
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">',
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">',
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">',
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">',
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">',
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/1999/xhtml">',
\ '!CDATA'
\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">',
\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">',
\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">',
\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN" "http://www.w3.org/TR/REC-html40/frameset.dtd">',
\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">',
\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">',
\ '!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">',
\ '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">',
\ '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">',
\ '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">',
\ '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/1999/xhtml">'
\ ]
endif

View File

@ -14,6 +14,7 @@ VIMEXE = vim
include ../../src/auto/config.mk
DOCS = \
ada.txt \
arabic.txt \
autocmd.txt \
change.txt \
@ -28,7 +29,6 @@ DOCS = \
farsi.txt \
filetype.txt \
fold.txt \
getscript.txt \
gui.txt \
gui_w16.txt \
gui_w32.txt \
@ -70,6 +70,7 @@ DOCS = \
os_vms.txt \
os_win32.txt \
pattern.txt \
pi_getscript.txt \
pi_gzip.txt \
pi_netrw.txt \
pi_paren.txt \
@ -144,6 +145,7 @@ DOCS = \
workshop.txt
HTMLS = \
ada.html \
arabic.html \
autocmd.html \
change.html \
@ -158,7 +160,6 @@ HTMLS = \
farsi.html \
filetype.html \
fold.html \
getscript.html \
gui.html \
gui_w16.html \
gui_w32.html \
@ -200,6 +201,7 @@ HTMLS = \
os_vms.html \
os_win32.html \
pattern.html \
pi_getscript.html \
pi_gzip.html \
pi_netrw.html \
pi_paren.html \
@ -224,8 +226,8 @@ HTMLS = \
sql.html \
syntax.html \
tabpage.html \
tagsrch.html \
tags.html \
tagsrch.html \
term.html \
tips.html \
todo.html \

View File

@ -1,4 +1,4 @@
*gui.txt* For Vim version 7.0. Last change: 2006 May 04
*gui.txt* For Vim version 7.1a. Last change: 2006 Aug 08
VIM REFERENCE MANUAL by Bram Moolenaar
@ -510,7 +510,7 @@ floating menus that do not appear on the main menu bar.
*:ime* *:imenu* *:inoreme* *:inoremenu*
*:cme* *:cmenu* *:cnoreme* *:cnoremenu*
*E330* *E327* *E331* *E336* *E333*
*E328* *E329* *E337*
*E328* *E329* *E337* *E792*
To create a new menu item, use the ":menu" commands. They are mostly like
the ":map" set of commands but the first argument is a menu item name, given
as a path of menus and submenus with a '.' between them, e.g.: >

View File

@ -1,4 +1,4 @@
*os_qnx.txt* For Vim version 7.0. Last change: 2005 Mar 29
*os_qnx.txt* For Vim version 7.1a. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Julian Kinraid

View File

@ -1,4 +1,4 @@
*os_vms.txt* For Vim version 7.0. Last change: 2006 Apr 30
*os_vms.txt* For Vim version 7.1a. Last change: 2006 Nov 18
VIM REFERENCE MANUAL
@ -243,7 +243,7 @@ and to the SYS$STARTUP:SYLOGIN.COM >
It will set up a normal Vim work environment for every user on the system.
IMPORTANT: Vim on OpenVMS (and on other case insensitive system) command line
parameters are assumed to be lowecase. In order to indicate that a command
parameters are assumed to be lowercase. In order to indicate that a command
line parameter is uppercase "/" sign must be used.
Examples:

View File

@ -1,4 +1,4 @@
*usr_43.txt* For Vim version 7.0. Last change: 2006 Apr 24
*usr_43.txt* For Vim version 7.1a. Last change: 2006 Apr 24
VIM USER MANUAL - by Bram Moolenaar

View File

@ -216,7 +216,7 @@ Wypisz trzy linie (heksowe 0x30 bajt
\fI% xxd \-s \-0x30 plik
.PP
.br
Wypisz 120 bajt<6A>w jako ci<63>g<EFBFBD>y zrzut heksowy z 40 oktetami na lini<6E>.
Wypisz 120 bajt<6A>w jako ci<63>g<EFBFBD>y zrzut heksowy z 20 oktetami na lini<6E>.
.br
\fI% xxd \-l 120 \-ps \-c 20 xxd.1\fR
.br

View File

@ -2,9 +2,9 @@
" Language: PHP
" Author: John Wellesz <John.wellesz (AT) teaser (DOT) fr>
" URL: http://www.2072productions.com/vim/indent/php.vim
" Last Change: 2006 Apr 30
" Last Change: 2007 February 25th
" Newsletter: http://www.2072productions.com/?to=php-indent-for-vim-newsletter.php
" Version: 1.23
" Version: 1.24
"
" The change log and all the comments have been removed from this file.
"
@ -68,12 +68,6 @@
" NOTE: The script will be a bit slower if you use this option because
" some optimizations won't be available.
if exists("b:did_indent")
finish
endif
@ -137,7 +131,7 @@ endif
let s:endline= '\s*\%(//.*\|#.*\|/\*.*\*/\s*\)\=$'
let s:PHP_startindenttag = '<?\%(.*?>\)\@!\|<script[^>]*>\%(.*<\/script>\)\@!'
" setlocal debug=msg " XXX
"setlocal debug=msg " XXX
function! GetLastRealCodeLNum(startline) " {{{
@ -205,6 +199,9 @@ function! GetLastRealCodeLNum(startline) " {{{
if b:InPHPcode_and_script && !b:InPHPcode
let b:InPHPcode_and_script = 0
endif
return lnum
endfunction " }}}
@ -221,7 +218,7 @@ endfun
function! Skippmatch() " {{{
let synname = synIDattr(synID(line("."), col("."), 0), "name")
if synname == "Delimiter" || synname == "phpParent" || synname == "javaScriptBraces" || synname == "phpComment" && b:UserIsTypingComment
if synname == "Delimiter" || synname == "phpRegionDelimiter" || synname =~# "^phpParent" || synname == "phpArrayParens" || synname =~# '^php\%(Block\|Brace\)' || synname == "javaScriptBraces" || synname == "phpComment" && b:UserIsTypingComment
return 0
else
return 1
@ -380,7 +377,7 @@ function! GetPhpIndent()
endif
if synname!=""
if synname != "phpHereDoc"
if synname != "phpHereDoc" && synname != "phpHereDocDelimiter"
let b:InPHPcode = 1
let b:InPHPcode_tofind = ""
@ -448,7 +445,7 @@ function! GetPhpIndent()
if b:InPHPcode
if !b:InPHPcode_and_script && last_line =~ '\%(<?.*\)\@<!?>\%(.*<?\)\@!' && IslinePHP(lnum, '?>')=="Delimiter"
if !b:InPHPcode_and_script && last_line =~ '\%(<?.*\)\@<!?>\%(.*<?\)\@!' && IslinePHP(lnum, '?>')=~"Delimiter"
if cline !~? s:PHP_startindenttag
let b:InPHPcode = 0
let b:InPHPcode_tofind = s:PHP_startindenttag
@ -717,5 +714,3 @@ function! GetPhpIndent()
let b:PHP_CurrentIndentLevel = ind
return ind
endfunction
" vim: set ts=8 sw=4 sts=4:

View File

@ -1,6 +1,6 @@
" Vim Keymap file for Sinhala (Sri Lanka) (2003-11-02)
" Maintainer : Harshula Jayasuriya <hash@jayasolutions.cjb.net>
" Last Updated: 2004-12-22
" Maintainer : Harshula Jayasuriya <harshula@gmail.com>
" Last Updated: 2006-06-08
" This is a static phonetic mapping for a standard US-English keyboard
" (qwerty)
" http://www.nongnu.org/sinhala/doc/keymaps/sinhala-keyboard_3.html
@ -15,8 +15,8 @@
let b:keymap_name = "sinhala"
loadkeymap
V <char-0x0d82> " - anusvaraya (anusvara)
<A-v> <char-0x0d83> " ඃ - visargaya (visarga)
<A-n> <char-0x0d82> " - anusvaraya (anusvara)
H <char-0x0d83> " ඃ - visargaya (visarga)
a <char-0x0d85> " අ - ayanna (a)
A <char-0x0d86> " ආ - aayanna (aa)
w <char-0x0d87> " ඇ - aeyanna (ae)
@ -31,15 +31,15 @@ Q <char-0x0d8e> " ඎ - iruuyanna (iruu)
<A-K> <char-0x0d90> " ඐ - iluuyanna (iluu)
e <char-0x0d91> " එ - eyanna (e)
E <char-0x0d92> " ඒ - eeyanna (ee)
F <char-0x0d93> " ඓ - aiyanna (ai)
<A-F> <char-0x0d93> " ඓ - aiyanna (ai)
o <char-0x0d94> " ඔ - oyanna (o)
O <char-0x0d95> " ඕ - ooyanna (oo)
H <char-0x0d96> " ඖ - auyanna (au)
<A-H> <char-0x0d96> " ඖ - auyanna (au)
k <char-0x0d9a> " ක - alpapraana kayanna (ka)
K <char-0x0d9b> " ඛ - mahaapraana kayanna (kha)
g <char-0x0d9c> " ග - alpapraana gayanna (ga)
G <char-0x0d9d> " ඝ - mahaapraana gayanna (gha)
<A-n> <char-0x0d9e> " ඞ - kantaja naasikyaya (nga)
<A-N> <char-0x0d9e> " ඞ - kantaja naasikyaya (nga)
<A-g> <char-0x0d9f> " ඟ - sanyaka gayanna (nnga)
c <char-0x0da0> " ච - alpapraana cayanna (ca)
C <char-0x0da1> " ඡ - mahaapraana cayanna (cha)

View File

@ -0,0 +1,86 @@
" thaana keymap
" Maintainer: Ibrahim fayaz <p h a y a x at gmail dot com>
" please set enc to utf-8
" thaana phonetic keyboard is used as a reference
" http://www.mcst.gov.mv/News_and_Events/xpfonts.htm
" changelog: 18th Feb 2006 - came up the initial idea of writing the keymap..
" 13th May 2006 - made some few corrections regarding < and >..
let b:keymap_name= "thaana"
" THAANA NORMAL LETTERS
loadkeymap
h <char-0x0780> "letter haa
S <char-0x0781> "shaviani
n <char-0x0782> "noonu
r <char-0x0783> "raa
b <char-0x0784> "baa
L <char-0x0785> "lhaviani
k <char-0x0786> "kaafu
w <char-0x0787> "alifu
v <char-0x0788> "vaavu
m <char-0x0789> "meemu
f <char-0x078A> "faafu
d <char-0x078B> "dhaalu
t <char-0x078C> "thaa
l <char-0x078D> "laamu
g <char-0x078E> "gaafu
N <char-0x078F> "gnaviani
s <char-0x0790> "seenu
D <char-0x0791> "daviani
z <char-0x0792> "zaviani
T <char-0x0793> "taviani
y <char-0x0794> "yaa
p <char-0x0795> "paviani
j <char-0x0796> "javiani
c <char-0x0797> "chaviani
"THAANA DOTTED LETTERS
X <char-0x0798> "TTAA (thaa mathee thin thiki)
H <char-0x0799> "HHAA (haa thiree ehthiki)
K <char-0x079A> "KHAA (haa mathee ehthiki)
J <char-0x079B> "THAALU (dhaa mathee ehthiki)
R <char-0x079C> "ZAA (raa mathee ehthiki)
C <char-0x079D> "SHEENU (seenu mathee thinthiki)
M <char-0x079E> "SAADHU (seenu thiree ehthiki)
B <char-0x079F> "DHAADHU(seenu mathee ehthiki)
Y <char-0x07A0> "TO (thaa thiree ehthiki)
Z <char-0x07A1> "ZO (thaa mathee ehthiki)
W <char-0x07A2> "AINU (alifu thiree ehthiki)
G <char-0x07A3> "GHAINU (alifu mathee ehthiki)
Q <char-0x07A4> "QAAFU (gaafu mathee dhethkiki)
V <char-0x07A5> "VAAVU (vaavu mathee ehthiki)
"THAANA FILI (combining characters)
a <char-0x07A6> "abafili
A <char-0x07A7> "aabaafili
i <char-0x07A8> "ibifili
I <char-0x07A9> "eebeefili
u <char-0x07AA> "ubufili
U <char-0x07AB> "ooboofili
e <char-0x07AC> "ebefili
E <char-0x07AD> "ebeyfili
o <char-0x07AE> "obofili
O <char-0x07AF> "oaboafili
q <char-0x07B0> "sukun
"OTHER THAANA RELATED
F <char-0xFDF2> "arabic ligature allah isolated form
? <char-0x061F> "arabic question mark
"~ <char-0xFDFD> "arabic -bismillah ahrahman araheem- not in phonetic keyboard, thats why commented
[ <char-0x005D> "english open bracket is thaana closing bracket
] <char-0x005B> "english close bracket = thaana open bracket
{ <char-0x007B> "braces reversed
} <char-0x007D>
x <char-0x00D7> " x for multiplication sign..
P <char-0x00F7> " division symbol mapped to 'p'
> <char-0x003C>
< <char-0x003E>
<M-v> <char-0x200D> "zwj - ZERO WIDTH JOINER i dont know how to use these yet..
<M-b> <char-0x200C> "zwnj - ZERO WIDTH NON JOINER
<M-n> <char-0x200E> "lrm - LEFT TO RIGHT MARK
<M-m> <char-0x200F> "rlm - RIGHT TO LEFT MARK
; <char-0x061B> "arabic semicolon
, <char-0x060C> "arabic coma
<M-;> ;
<M-,> ,

View File

@ -1,7 +1,7 @@
" These commands create the option window.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2006 Apr 24
" Last Change: 2006 Oct 10
" If there already is an option window, jump to that one.
if bufwinnr("option-window") > 0
@ -608,7 +608,7 @@ if has("gui")
call append("$", " \tset bexpr=" . &bexpr)
endif
endif
if exists("&macatsui")
if exists("+macatsui")
call append("$", "macatsui\tuse ATSUI text drawing; disable to avoid display problems")
call <SID>OptionG("macatsui", &macatsui)
endif
@ -1212,8 +1212,14 @@ call append("$", "gdefault\tuse the 'g' flag for \":substitute\"")
call <SID>BinOptionG("gd", &gd)
call append("$", "edcompatible\t'g' and 'c' flags of \":substitute\" toggle")
call <SID>BinOptionG("ed", &ed)
if exists("+opendevice")
call append("$", "opendevice\tallow reading/writing devices")
call <SID>BinOptionG("odev", &odev)
endif
if exists("+maxfuncdepth")
call append("$", "maxfuncdepth\tmaximum depth of function calls")
call append("$", " \tset mfd=" . &mfd)
endif
if has("mksession")
call append("$", "sessionoptions\tlist of words that specifies what to put in a session file")
call <SID>OptionG("ssop", &ssop)

View File

@ -4,9 +4,9 @@
" Maintainers: Markus Mottl <markus.mottl@gmail.com>
" Fabrizio Zeno Cornelli <zeno@filibusta.crema.unimi.it>
" URL: http://www.ocaml.info/vim/syntax/sml.vim
" Last Change: 2006 Feb 05
" Last Change: 2006 Oct 23 - Fixed character highlighting bug (MM)
" 2002 Jun 02 - Fixed small typo (MM)
" 2001 Nov 20 - Fixed small highlighting bug with modules (MM)
" 2001 Aug 29 - Fixed small highlighting bug (MM)
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@ -137,7 +137,7 @@ syn match smlConstructor "\u\(\w\|'\)*\>"
" Module prefix
syn match smlModPath "\u\(\w\|'\)*\."he=e-1
syn match smlCharacter +#"."\|#"\\\d\d\d"+
syn match smlCharacter +#"\\""\|#"."\|#"\\\d\d\d"+
syn match smlCharErr +#"\\\d\d"\|#"\\\d"+
syn region smlString start=+"+ skip=+\\\\\|\\"+ end=+"+

View File

@ -1,7 +1,7 @@
" Vim syntax file
" Language: Verilog
" Maintainer: Mun Johl <mun_johl@sierralogic.com>
" Last Update: Tue Jun 7 14:27:10 PDT 2005
" Maintainer: Mun Johl <Mun.Johl@emulex.com>
" Last Update: Fri Oct 13 11:44:32 PDT 2006
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@ -76,10 +76,10 @@ syn match verilogGlobal "$[a-zA-Z0-9_]\+\>"
syn match verilogConstant "\<[A-Z][A-Z0-9_]\+\>"
syn match verilogNumber "\(\<\d\+\|\)'[bB]\s*[0-1_xXzZ?]\+\>"
syn match verilogNumber "\(\<\d\+\|\)'[oO]\s*[0-7_xXzZ?]\+\>"
syn match verilogNumber "\(\<\d\+\|\)'[dD]\s*[0-9_xXzZ?]\+\>"
syn match verilogNumber "\(\<\d\+\|\)'[hH]\s*[0-9a-fA-F_xXzZ?]\+\>"
syn match verilogNumber "\(\<\d\+\|\)'[sS]\?[bB]\s*[0-1_xXzZ?]\+\>"
syn match verilogNumber "\(\<\d\+\|\)'[sS]\?[oO]\s*[0-7_xXzZ?]\+\>"
syn match verilogNumber "\(\<\d\+\|\)'[sS]\?[dD]\s*[0-9_xXzZ?]\+\>"
syn match verilogNumber "\(\<\d\+\|\)'[sS]\?[hH]\s*[0-9a-fA-F_xXzZ?]\+\>"
syn match verilogNumber "\<[+-]\=[0-9_]\+\(\.[0-9_]*\|\)\(e[0-9_]*\|\)\>"
syn region verilogString start=+"+ skip=+\\"+ end=+"+ contains=verilogEscape,@Spell

View File

@ -1,8 +1,8 @@
" Vim syntax file
" Language: xmath (a simulation tool)
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Apr 12, 2006
" Version: 5
" Last Change: Sep 11, 2006
" Version: 6
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
" For version 5.x: Clear all syntax items
@ -175,7 +175,7 @@ syn match xmathLabel "^\s*<[a-zA-Z_][a-zA-Z0-9]*>"
" String and Character constants
" Highlight special characters (those which have a backslash) differently
syn match xmathSpecial contained "\\\d\d\d\|\\."
syn region xmathString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=xmathSpecial
syn region xmathString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=xmathSpecial,@Spell
syn match xmathCharacter "'[^\\]'"
syn match xmathSpecialChar "'\\.'"
@ -184,9 +184,10 @@ syn match xmathNumber "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>"
" Comments:
" xmath supports #... (like Unix shells)
" and #{ ... }# comment blocks
syn cluster xmathCommentGroup contains=xmathString,xmathTodo,@Spell
syn keyword xmathTodo contained COMBAK DEBUG FIXME Todo TODO XXX
syn match xmathComment "#.*$" contains=xmathString,xmathTodo,@Spell
syn region xmathCommentBlock start="#{" end="}#" contains=xmathString,xmathTodo
syn match xmathComment "#.*$" contains=@xmathCommentGroup
syn region xmathCommentBlock start="#{" end="}#" contains=@xmathCommentGroup
" synchronizing
syn sync match xmathSyncComment grouphere xmathCommentBlock "#{"