# HG changeset patch # User Bram Moolenaar # Date 1281469415 -7200 # Node ID 31e51111bd146e6af949427887992e0f0eb18346 # Parent e27def2ed69b8a6fc68d23a2eaec875fe3166a11 Runtime file updates. Fix tar plugin window split. diff --git a/runtime/autoload/tar.vim b/runtime/autoload/tar.vim --- a/runtime/autoload/tar.vim +++ b/runtime/autoload/tar.vim @@ -1,7 +1,7 @@ " tar.vim: Handles browsing tarfiles " AUTOLOAD PORTION -" Date: Jul 27, 2010 -" Version: 25 +" Date: Aug 09, 2010 +" Version: 26 " Maintainer: Charles E Campbell, Jr " License: Vim License (see vim's :help license) " @@ -22,7 +22,7 @@ if &cp || exists("g:loaded_tar") finish endif -let g:loaded_tar= "v25" +let g:loaded_tar= "v26" if v:version < 702 echohl WarningMsg echo "***warning*** this version of tar needs vim 7.2" @@ -127,7 +127,7 @@ fun! tar#Browse(tarfile) if &ma != 1 set ma endif - let w:tarfile= a:tarfile + let b:tarfile= a:tarfile setlocal noswapfile setlocal buftype=nofile @@ -198,13 +198,13 @@ fun! tar#Browse(tarfile) noremap :call TarBrowseSelect() let &report= repkeep -" call Dret("tar#Browse : w:tarfile<".w:tarfile.">") +" call Dret("tar#Browse : b:tarfile<".b:tarfile.">") endfun " --------------------------------------------------------------------- " TarBrowseSelect: {{{2 fun! s:TarBrowseSelect() -" call Dfunc("TarBrowseSelect() w:tarfile<".w:tarfile."> curfile<".expand("%").">") +" call Dfunc("TarBrowseSelect() b:tarfile<".b:tarfile."> curfile<".expand("%").">") let repkeep= &report set report=10 let fname= getline(".") @@ -224,8 +224,8 @@ fun! s:TarBrowseSelect() return endif - " about to make a new window, need to use w:tarfile - let tarfile= w:tarfile + " about to make a new window, need to use b:tarfile + let tarfile= b:tarfile let curfile= expand("%") if has("win32") && executable("cygpath") " assuming cygwin @@ -313,7 +313,7 @@ fun! tar#Read(fname,mode) setlocal ro endif - let w:tarfile= a:fname + let b:tarfile= a:fname exe "file tarfile::".fnameescape(fname) " cleanup @@ -321,13 +321,13 @@ fun! tar#Read(fname,mode) set nomod let &report= repkeep -" call Dret("tar#Read : w:tarfile<".w:tarfile.">") +" call Dret("tar#Read : b:tarfile<".b:tarfile.">") endfun " --------------------------------------------------------------------- " tar#Write: {{{2 fun! tar#Write(fname) -" call Dfunc("tar#Write(fname<".a:fname.">) w:tarfile<".w:tarfile."> tblfile_".winnr()."<".s:tblfile_{winnr()}.">") +" call Dfunc("tar#Write(fname<".a:fname.">) b:tarfile<".b:tarfile."> tblfile_".winnr()."<".s:tblfile_{winnr()}.">") let repkeep= &report set report=10 @@ -383,8 +383,8 @@ fun! tar#Write(fname) cd _ZIPVIM_ " call Decho("current directory now: ".getcwd()) - let tarfile = substitute(w:tarfile,'tarfile:\(.\{-}\)::.*$','\1','') - let fname = substitute(w:tarfile,'tarfile:.\{-}::\(.*\)$','\1','') + let tarfile = substitute(b:tarfile,'tarfile:\(.\{-}\)::.*$','\1','') + let fname = substitute(b:tarfile,'tarfile:.\{-}::\(.*\)$','\1','') " handle compressed archives if tarfile =~# '\.bz2' diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt --- a/runtime/doc/message.txt +++ b/runtime/doc/message.txt @@ -1,4 +1,4 @@ -*message.txt* For Vim version 7.3f. Last change: 2010 Jul 26 +*message.txt* For Vim version 7.3f. Last change: 2010 Aug 10 VIM REFERENCE MANUAL by Bram Moolenaar @@ -547,7 +547,7 @@ Vim (and Vi) expect tags files to be sor can then be used, which is a lot faster than a linear search. If your tags files are not properly sorted, reset the |'tagbsearch'| option. This message is only given when Vim detects a problem when searching for a -tag. Sometimes this message is not given, even thought the tags file is not +tag. Sometimes this message is not given, even though the tags file is not properly sorted. *E460* > diff --git a/runtime/doc/pi_tar.txt b/runtime/doc/pi_tar.txt --- a/runtime/doc/pi_tar.txt +++ b/runtime/doc/pi_tar.txt @@ -1,4 +1,4 @@ -*pi_tar.txt* For Vim version 7.3f. Last change: 2010 Jul 27 +*pi_tar.txt* For Vim version 7.3f. Last change: 2010 Aug 09 +====================+ | Tar File Interface | @@ -83,6 +83,8 @@ 3. Options *tar-options* 4. History *tar-history* + v26 Aug 09, 2010 * uses buffer-local instead of window variables to hold + tarfile name v25 Jun 19, 2010 * (Jan Steffens) added support for xz compression v24 Apr 07, 2009 * :Untarvim command implemented Sep 28, 2009 * Added lzma support diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 7.3f. Last change: 2010 Aug 08 +*syntax.txt* For Vim version 7.3f. Last change: 2010 Aug 10 VIM REFERENCE MANUAL by Bram Moolenaar @@ -2613,7 +2613,7 @@ redrawing can become slow. TEX *tex.vim* *ft-tex-syntax* *tex-folding* -Want Syntax Folding? ~ + Tex: Want Syntax Folding? ~ As of version 28 of , syntax-based folding of parts, chapters, sections, subsections, etc are supported. Put > @@ -2623,7 +2623,7 @@ modeline at the end of your LaTeX file: % vim: fdm=syntax < *tex-nospell* -Don't Want Spell Checking In Comments? ~ + Tex: Don't Want Spell Checking In Comments? ~ Some folks like to include things like source code in comments and so would prefer that spell checking be disabled in comments in LaTeX files. To do @@ -2631,15 +2631,15 @@ this, put the following in your <.vimrc> let g:tex_comment_nospell= 1 < *tex-verb* -Want Spell Checking in Verbatim Zones?~ + Tex: Want Spell Checking in Verbatim Zones?~ Often verbatim regions are used for things like source code; seldom does one want source code spell-checked. However, for those of you who do want your verbatim zones spell-checked, put the following in your <.vimrc>: > let g:tex_verbspell= 1 - +< *tex-runon* -Run-on Comments/Math? ~ + Tex: Run-on Comments or MathZones ~ The highlighting supports TeX, LaTeX, and some AmsTeX. The highlighting supports three primary zones/regions: normal, texZone, and @@ -2652,7 +2652,7 @@ which will forcibly terminate the highli texMathZone. *tex-slow* -Slow Syntax Highlighting? ~ + Tex: Slow Syntax Highlighting? ~ If you have a slow computer, you may wish to reduce the values for > :syn sync maxlines=200 @@ -2662,7 +2662,7 @@ increase them. This primarily affects sy if any, is the text at the top of the screen supposed to be in?). *tex-morecommands* *tex-package* -Want To Highlight More Commands? ~ + Tex: Want To Highlight More Commands? ~ LaTeX is a programmable language, and so there are thousands of packages full of specialized LaTeX commands, syntax, and fonts. If you're using such a @@ -2672,7 +2672,7 @@ techniques in |mysyntaxfile-add| to exte by syntax/tex.vim. *tex-error* -Excessive Error Highlighting? ~ + Tex: Excessive Error Highlighting? ~ The supports lexical error checking of various sorts. Thus, although the error checking is ofttimes very useful, it can indicate @@ -2682,7 +2682,7 @@ you may put in your <.vimrc> the followi and all error checking by will be suppressed. *tex-math* -Need a new Math Group? ~ + Tex: Need a new Math Group? ~ If you want to include a new math group in your LaTeX, the following code shows you an example as to how you might do so: > @@ -2697,7 +2697,7 @@ The "starform" variable, if true, implie has a starred form (ie. eqnarray*). *tex-style* -Starting a New Style? ~ + Tex: Starting a New Style? ~ One may use "\makeatletter" in *.tex files, thereby making the use of "@" in commands available. However, since the *.tex file doesn't have one of the @@ -2711,7 +2711,7 @@ Putting "let g:tex_stylish=1" into your always accept such use of @. *tex-cchar* *tex-cole* *tex-conceal* -Taking Advantage of Conceal Mode~ + Tex: Taking Advantage of Conceal Mode~ If you have |'conceallevel'| set to 2 and if your encoding is utf-8, then a number of character sequences can be translated into appropriate utf-8 glyphs, @@ -2723,6 +2723,22 @@ In fact, only a few characters are suppo One way to use this is to have vertically split windows (see |CTRL-W_v|); one with |'conceallevel'| at 0 and the other at 2; and both using |'scrollbind'|. + *g:tex_conceal* + Tex: Selective Conceal Mode~ + +You may selectively use conceal mode by setting g:tex_conceal in your +<.vimrc>. By default it is set to "admgs" to enable conceal for the +following sets of characters: > + + a = accents/ligatures + d = delimiters + m = math symbols + g = Greek + s = superscripts/subscripts +< +By leaving one or more of these out, the associated conceal-character +substitution will not be made. + TF *tf.vim* *ft-tf-syntax* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.3f. Last change: 2010 Aug 09 +*todo.txt* For Vim version 7.3f. Last change: 2010 Aug 10 VIM REFERENCE MANUAL by Bram Moolenaar @@ -32,11 +32,14 @@ be worked on, but only if you sponsor Vi 'cursorline' stops too early in a help file, caused by conceal feature. +Test 73 fails on MS-Windows when compiled with DJGPP. +:find completion with 'path' set to "./**" results in full path for +"./subdir/file", should shorten to start with "./". + Before release 7.3: - Rename vim73 branch to default (hints: Xavier de Gaye, 2010 May 23) -Test 73 fails on MS-Windows when compiled with DJGPP. -Possibly change WIN3264 to MSWIN || MSDOS. +Problem with \NL in Ex script. (Ray Frish, 2010 Aug 10) Bug: E685 error for func_unref(). (ZyX, 2010 Aug 5) diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -1,4 +1,4 @@ -*various.txt* For Vim version 7.3f. Last change: 2010 Aug 01 +*various.txt* For Vim version 7.3f. Last change: 2010 Aug 10 VIM REFERENCE MANUAL by Bram Moolenaar @@ -364,7 +364,7 @@ m *+ole* Win32 GUI only: |ole-interfac N *+path_extra* Up/downwards search in 'path' and 'tags' m *+perl* Perl interface |perl| m *+perl/dyn* Perl interface |perl-dynamic| |/dyn| -H *+persistent_undo* Persistent undo |undo-persistence| +N *+persistent_undo* Persistent undo |undo-persistence| *+postscript* |:hardcopy| writes a PostScript file N *+printer* |:hardcopy| command H *+profile* |:profile| command diff --git a/runtime/plugin/tarPlugin.vim b/runtime/plugin/tarPlugin.vim --- a/runtime/plugin/tarPlugin.vim +++ b/runtime/plugin/tarPlugin.vim @@ -14,7 +14,7 @@ if &cp || exists("g:loaded_tarPlugin") finish endif -let g:loaded_tarPlugin = "v25" +let g:loaded_tarPlugin = "v26" let s:keepcpo = &cpo set cpo&vim diff --git a/runtime/syntax/tex.vim b/runtime/syntax/tex.vim --- a/runtime/syntax/tex.vim +++ b/runtime/syntax/tex.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: TeX " Maintainer: Dr. Charles E. Campbell, Jr. -" Last Change: Aug 04, 2010 -" Version: 55 +" Last Change: Aug 09, 2010 +" Version: 56 " URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax " " Notes: {{{1 @@ -55,9 +55,9 @@ if exists("g:tex_tex") && !exists("g:tex endif " let user determine which classes of concealment will be supported -" a=accents/ligatures m=math symbols g=Greek s=superscripts/subscripts +" a=accents/ligatures d=delimiters m=math symbols g=Greek s=superscripts/subscripts if !exists("g:tex_conceal") - let s:tex_conceal= 'amgs' + let s:tex_conceal= 'admgs' else let s:tex_conceal= g:tex_conceal endif @@ -350,7 +350,7 @@ if !exists("tex_no_math") call TexNewMathZone("L","xxalignat",0) " Inline Math Zones: {{{2 - if has("conceal") && &enc == 'utf-8' + if has("conceal") && &enc == 'utf-8' && s:tex_conceal =~ 'd' syn region texMathZoneV matchgroup=Delimiter start="\\(" matchgroup=Delimiter end="\\)\|%stopzone\>" keepend concealends contains=@texMathZoneGroup syn region texMathZoneW matchgroup=Delimiter start="\\\[" matchgroup=Delimiter end="\\]\|%stopzone\>" keepend concealends contains=@texMathZoneGroup syn region texMathZoneX matchgroup=Delimiter start="\$" skip="\\\\\|\\\$" matchgroup=Delimiter end="\$" end="%stopzone\>" concealends contains=@texMathZoneGroup @@ -514,215 +514,247 @@ if !exists("g:tex_no_error") syn region texStyleMatcher matchgroup=Delimiter start="\[" end="]" contains=@texStyleGroup,texError contained endif -" Conceal mode support (supports set cole=1) {{{1 +" Conceal mode support (supports set cole=2) {{{1 if has("conceal") && &enc == 'utf-8' " Math Symbols {{{2 + " (many of these symbols were contributed by Björn Winckler) if s:tex_conceal =~ 'm' - syn match texMathSymbol '\\angle\>' contained conceal cchar=∠ - syn match texMathSymbol '\\approx\>' contained conceal cchar=≈ - syn match texMathSymbol '\\ast\>' contained conceal cchar=∗ - syn match texMathSymbol '\\asymp\>' contained conceal cchar=≍ - syn match texMathSymbol '\\backepsilon\>' contained conceal cchar=∍ - syn match texMathSymbol '\\backsimeq\>' contained conceal cchar=≃ - syn match texMathSymbol '\\barwedge\>' contained conceal cchar=⊼ - syn match texMathSymbol '\\because\>' contained conceal cchar=∵ - syn match texMathSymbol '\\between\>' contained conceal cchar=≬ - syn match texMathSymbol '\\bigcap\>' contained conceal cchar=∩ - syn match texMathSymbol '\\bigcup\>' contained conceal cchar=∪ - syn match texMathSymbol '\\bigodot\>' contained conceal cchar=⊙ - syn match texMathSymbol '\\bigoplus\>' contained conceal cchar=⊕ - syn match texMathSymbol '\\bigotimes\>' contained conceal cchar=⊗ - syn match texMathSymbol '\\bigsqcup\>' contained conceal cchar=⊔ - syn match texMathSymbol '\\bigtriangledown\>' contained conceal cchar=∇ - syn match texMathSymbol '\\bigvee\>' contained conceal cchar=⋁ - syn match texMathSymbol '\\bigwedge\>' contained conceal cchar=⋀ - syn match texMathSymbol '\\blacksquare\>' contained conceal cchar=∎ - syn match texMathSymbol '\\bot\>' contained conceal cchar=⊥ - syn match texMathSymbol '\\boxdot\>' contained conceal cchar=⊡ - syn match texMathSymbol '\\boxminus\>' contained conceal cchar=⊟ - syn match texMathSymbol '\\boxplus\>' contained conceal cchar=⊞ - syn match texMathSymbol '\\boxtimes\>' contained conceal cchar=⊠ - syn match texMathSymbol '\\bumpeq\>' contained conceal cchar=≏ - syn match texMathSymbol '\\Bumpeq\>' contained conceal cchar=≎ - syn match texMathSymbol '\\cap\>' contained conceal cchar=∩ - syn match texMathSymbol '\\Cap\>' contained conceal cchar=⋒ - syn match texMathSymbol '\\cdot\>' contained conceal cchar=· - syn match texMathSymbol '\\cdots\>' contained conceal cchar=⋯ - syn match texMathSymbol '\\circ\>' contained conceal cchar=∘ - syn match texMathSymbol '\\circeq\>' contained conceal cchar=≗ - syn match texMathSymbol '\\circledast\>' contained conceal cchar=⊛ - syn match texMathSymbol '\\circledcirc\>' contained conceal cchar=⊚ - syn match texMathSymbol '\\complement\>' contained conceal cchar=∁ - syn match texMathSymbol '\\cong\>' contained conceal cchar=≅ - syn match texMathSymbol '\\coprod\>' contained conceal cchar=∐ - syn match texMathSymbol '\\cup\>' contained conceal cchar=∪ - syn match texMathSymbol '\\Cup\>' contained conceal cchar=⋓ - syn match texMathSymbol '\\curlyeqprec\>' contained conceal cchar=⋞ - syn match texMathSymbol '\\curlyeqsucc\>' contained conceal cchar=⋟ - syn match texMathSymbol '\\curlyvee\>' contained conceal cchar=⋎ - syn match texMathSymbol '\\curlywedge\>' contained conceal cchar=⋏ - syn match texMathSymbol '\\dashv\>' contained conceal cchar=⊣ - syn match texMathSymbol '\\diamond\>' contained conceal cchar=⋄ - syn match texMathSymbol '\\div\>' contained conceal cchar=÷ - syn match texMathSymbol '\\doteq\>' contained conceal cchar=≐ - syn match texMathSymbol '\\doteqdot\>' contained conceal cchar=≑ - syn match texMathSymbol '\\dotplus\>' contained conceal cchar=∔ - syn match texMathSymbol '\\dotsb\>' contained conceal cchar=⋯ - syn match texMathSymbol '\\dotsc\>' contained conceal cchar=… - syn match texMathSymbol '\\dots\>' contained conceal cchar=… - syn match texMathSymbol '\\dotsi\>' contained conceal cchar=⋯ - syn match texMathSymbol '\\dotso\>' contained conceal cchar=… - syn match texMathSymbol '\\doublebarwedge\>' contained conceal cchar=⩞ - syn match texMathSymbol '\\emptyset\>' contained conceal cchar=∅ - syn match texMathSymbol '\\eqcirc\>' contained conceal cchar=≖ - syn match texMathSymbol '\\eqsim\>' contained conceal cchar=≂ - syn match texMathSymbol '\\eqslantgtr\>' contained conceal cchar=⪖ - syn match texMathSymbol '\\eqslantless\>' contained conceal cchar=⪕ - syn match texMathSymbol '\\equiv\>' contained conceal cchar=≡ - syn match texMathSymbol '\\exists\>' contained conceal cchar=∃ - syn match texMathSymbol '\\fallingdotseq\>' contained conceal cchar=≒ - syn match texMathSymbol '\\forall\>' contained conceal cchar=∀ - syn match texMathSymbol '\\ge\>' contained conceal cchar=≥ - syn match texMathSymbol '\\geq\>' contained conceal cchar=≥ - syn match texMathSymbol '\\geqq\>' contained conceal cchar=≧ - syn match texMathSymbol '\\gneqq\>' contained conceal cchar=≩ - syn match texMathSymbol '\\gtrdot\>' contained conceal cchar=⋗ - syn match texMathSymbol '\\gtreqless\>' contained conceal cchar=⋛ - syn match texMathSymbol '\\gtrless\>' contained conceal cchar=≷ - syn match texMathSymbol '\\gtrsim\>' contained conceal cchar=≳ - syn match texMathSymbol '\\iiint\>' contained conceal cchar=∭ - syn match texMathSymbol '\\iint\>' contained conceal cchar=∬ - syn match texMathSymbol '\\Im\>' contained conceal cchar=ℑ - syn match texMathSymbol '\\in\>' contained conceal cchar=∈ - syn match texMathSymbol '\\infty\>' contained conceal cchar=∞ - syn match texMathSymbol '\\int\>' contained conceal cchar=∫ - syn match texMathSymbol '\\lceil\>' contained conceal cchar=⌈ - syn match texMathSymbol '\\ldots\>' contained conceal cchar=… - syn match texMathSymbol '\\le\>' contained conceal cchar=≤ - syn match texMathSymbol '\\leftarrow\>' contained conceal cchar=⟵ - syn match texMathSymbol '\\Leftarrow\>' contained conceal cchar=⟸ - syn match texMathSymbol '\\left(' contained conceal cchar=( - syn match texMathSymbol '\\left\[' contained conceal cchar=[ - syn match texMathSymbol '\\left\\{' contained conceal cchar={ - syn match texMathSymbol '\\leftthreetimes\>' contained conceal cchar=⋋ - syn match texMathSymbol '\\leq\>' contained conceal cchar=≤ - syn match texMathSymbol '\\leqq\>' contained conceal cchar=≦ - syn match texMathSymbol '\\lessdot\>' contained conceal cchar=⋖ - syn match texMathSymbol '\\lesseqgtr\>' contained conceal cchar=⋚ - syn match texMathSymbol '\\lesssim\>' contained conceal cchar=≲ - syn match texMathSymbol '\\lfloor\>' contained conceal cchar=⌊ - syn match texMathSymbol '\\lneqq\>' contained conceal cchar=≨ - syn match texMathSymbol '\\ltimes\>' contained conceal cchar=⋉ - syn match texMathSymbol '\\mapsto\>' contained conceal cchar=↦ - syn match texMathSymbol '\\measuredangle\>' contained conceal cchar=∡ - syn match texMathSymbol '\\mid\>' contained conceal cchar=∣ - syn match texMathSymbol '\\mp\>' contained conceal cchar=∓ - syn match texMathSymbol '\\nabla\>' contained conceal cchar=∇ - syn match texMathSymbol '\\ncong\>' contained conceal cchar=≇ - syn match texMathSymbol '\\ne\>' contained conceal cchar=≠ - syn match texMathSymbol '\\neg\>' contained conceal cchar=¬ - syn match texMathSymbol '\\neq\>' contained conceal cchar=≠ - syn match texMathSymbol '\\nexists\>' contained conceal cchar=∄ - syn match texMathSymbol '\\ngeq\>' contained conceal cchar=≱ - syn match texMathSymbol '\\ngeqq\>' contained conceal cchar=≱ - syn match texMathSymbol '\\ngtr\>' contained conceal cchar=≯ - syn match texMathSymbol '\\ni\>' contained conceal cchar=∋ - syn match texMathSymbol '\\nleq\>' contained conceal cchar=≰ - syn match texMathSymbol '\\nleqq\>' contained conceal cchar=≰ - syn match texMathSymbol '\\nless\>' contained conceal cchar=≮ - syn match texMathSymbol '\\nmid\>' contained conceal cchar=∤ - syn match texMathSymbol '\\notin\>' contained conceal cchar=∉ - syn match texMathSymbol '\\nprec\>' contained conceal cchar=⊀ - syn match texMathSymbol '\\nsim\>' contained conceal cchar=≁ - syn match texMathSymbol '\\nsucc\>' contained conceal cchar=⊁ - syn match texMathSymbol '\\ntriangleleft\>' contained conceal cchar=⋪ - syn match texMathSymbol '\\ntrianglelefteq\>' contained conceal cchar=⋬ - syn match texMathSymbol '\\ntriangleright\>' contained conceal cchar=⋫ - syn match texMathSymbol '\\ntrianglerighteq\>' contained conceal cchar=⋭ - syn match texMathSymbol '\\nvdash\>' contained conceal cchar=⊬ - syn match texMathSymbol '\\nvDash\>' contained conceal cchar=⊭ - syn match texMathSymbol '\\nVdash\>' contained conceal cchar=⊮ - syn match texMathSymbol '\\odot\>' contained conceal cchar=⊙ - syn match texMathSymbol '\\oint\>' contained conceal cchar=∮ - syn match texMathSymbol '\\ominus\>' contained conceal cchar=⊖ - syn match texMathSymbol '\\oplus\>' contained conceal cchar=⊕ - syn match texMathSymbol '\\oslash\>' contained conceal cchar=⊘ - syn match texMathSymbol '\\otimes\>' contained conceal cchar=⊗ - syn match texMathSymbol '\\owns\>' contained conceal cchar=∋ - syn match texMathSymbol '\\partial\>' contained conceal cchar=∂ - syn match texMathSymbol '\\perp\>' contained conceal cchar=⊥ - syn match texMathSymbol '\\pitchfork\>' contained conceal cchar=⋔ - syn match texMathSymbol '\\pm\>' contained conceal cchar=± - syn match texMathSymbol '\\precapprox\>' contained conceal cchar=⪷ - syn match texMathSymbol '\\prec\>' contained conceal cchar=≺ - syn match texMathSymbol '\\preccurlyeq\>' contained conceal cchar=≼ - syn match texMathSymbol '\\preceq\>' contained conceal cchar=⪯ - syn match texMathSymbol '\\precnapprox\>' contained conceal cchar=⪹ - syn match texMathSymbol '\\precneqq\>' contained conceal cchar=⪵ - syn match texMathSymbol '\\precsim\>' contained conceal cchar=≾ - syn match texMathSymbol '\\prod\>' contained conceal cchar=∏ - syn match texMathSymbol '\\propto\>' contained conceal cchar=∝ - syn match texMathSymbol '\\rceil\>' contained conceal cchar=⌉ - syn match texMathSymbol '\\Re\>' contained conceal cchar=ℜ - syn match texMathSymbol '\\rfloor\>' contained conceal cchar=⌋ - syn match texMathSymbol '\\rightarrow\>' contained conceal cchar=⟶ - syn match texMathSymbol '\\Rightarrow\>' contained conceal cchar=⟹ - syn match texMathSymbol '\\right)' contained conceal cchar=) - syn match texMathSymbol '\\right]' contained conceal cchar=] - syn match texMathSymbol '\\right\\}' contained conceal cchar=} - syn match texMathSymbol '\\rightthreetimes\>' contained conceal cchar=⋌ - syn match texMathSymbol '\\risingdotseq\>' contained conceal cchar=≓ - syn match texMathSymbol '\\rtimes\>' contained conceal cchar=⋊ - syn match texMathSymbol '\\setminus\>' contained conceal cchar=∖ - syn match texMathSymbol '\\sim\>' contained conceal cchar=∼ - syn match texMathSymbol '\\sphericalangle\>' contained conceal cchar=∢ - syn match texMathSymbol '\\sqcap\>' contained conceal cchar=⊓ - syn match texMathSymbol '\\sqcup\>' contained conceal cchar=⊔ - syn match texMathSymbol '\\sqsubset\>' contained conceal cchar=⊏ - syn match texMathSymbol '\\sqsubseteq\>' contained conceal cchar=⊑ - syn match texMathSymbol '\\sqsupset\>' contained conceal cchar=⊐ - syn match texMathSymbol '\\sqsupseteq\>' contained conceal cchar=⊒ - syn match texMathSymbol '\\subset\>' contained conceal cchar=⊂ - syn match texMathSymbol '\\Subset\>' contained conceal cchar=⋐ - syn match texMathSymbol '\\subseteq\>' contained conceal cchar=⊆ - syn match texMathSymbol '\\subseteqq\>' contained conceal cchar=⫅ - syn match texMathSymbol '\\subsetneq\>' contained conceal cchar=⊊ - syn match texMathSymbol '\\subsetneqq\>' contained conceal cchar=⫋ - syn match texMathSymbol '\\succapprox\>' contained conceal cchar=⪸ - syn match texMathSymbol '\\succ\>' contained conceal cchar=≻ - syn match texMathSymbol '\\succcurlyeq\>' contained conceal cchar=≽ - syn match texMathSymbol '\\succeq\>' contained conceal cchar=⪰ - syn match texMathSymbol '\\succnapprox\>' contained conceal cchar=⪺ - syn match texMathSymbol '\\succneqq\>' contained conceal cchar=⪶ - syn match texMathSymbol '\\succsim\>' contained conceal cchar=≿ - syn match texMathSymbol '\\sum\>' contained conceal cchar=∑ - syn match texMathSymbol '\\Supset\>' contained conceal cchar=⋑ - syn match texMathSymbol '\\supseteq\>' contained conceal cchar=⊇ - syn match texMathSymbol '\\supseteqq\>' contained conceal cchar=⫆ - syn match texMathSymbol '\\supsetneq\>' contained conceal cchar=⊋ - syn match texMathSymbol '\\supsetneqq\>' contained conceal cchar=⫌ - syn match texMathSymbol '\\surd\>' contained conceal cchar=√ - syn match texMathSymbol '\\therefore\>' contained conceal cchar=∴ - syn match texMathSymbol '\\times\>' contained conceal cchar=× - syn match texMathSymbol '\\to\>' contained conceal cchar=→ - syn match texMathSymbol '\\top\>' contained conceal cchar=⊤ - syn match texMathSymbol '\\triangleleft\>' contained conceal cchar=⊲ - syn match texMathSymbol '\\trianglelefteq\>' contained conceal cchar=⊴ - syn match texMathSymbol '\\triangleq\>' contained conceal cchar=≜ - syn match texMathSymbol '\\triangleright\>' contained conceal cchar=⊳ - syn match texMathSymbol '\\trianglerighteq\>' contained conceal cchar=⊵ - syn match texMathSymbol '\\varnothing\>' contained conceal cchar=∅ - syn match texMathSymbol '\\vartriangle\>' contained conceal cchar=∆ - syn match texMathSymbol '\\vdash\>' contained conceal cchar=⊢ - syn match texMathSymbol '\\vDash\>' contained conceal cchar=⊨ - syn match texMathSymbol '\\Vdash\>' contained conceal cchar=⊩ - syn match texMathSymbol '\\vdots\>' contained conceal cchar=⋮ - syn match texMathSymbol '\\veebar\>' contained conceal cchar=⊻ - syn match texMathSymbol '\\vee\>' contained conceal cchar=∨ - syn match texMathSymbol '\\Vvdash\>' contained conceal cchar=⊪ - syn match texMathSymbol '\\wedge\>' contained conceal cchar=∧ - syn match texMathSymbol '\\wr\>' contained conceal cchar=≀ + let s:texMathList=[ + \ ['angle' , '∠'], + \ ['approx' , '≈'], + \ ['ast' , '∗'], + \ ['asymp' , '≍'], + \ ['backepsilon' , '∍'], + \ ['backsimeq' , '≃'], + \ ['barwedge' , '⊼'], + \ ['because' , '∵'], + \ ['between' , '≬'], + \ ['bigcap' , '∩'], + \ ['bigcup' , '∪'], + \ ['bigodot' , '⊙'], + \ ['bigoplus' , '⊕'], + \ ['bigotimes' , '⊗'], + \ ['bigsqcup' , '⊔'], + \ ['bigtriangledown', '∇'], + \ ['bigvee' , '⋁'], + \ ['bigwedge' , '⋀'], + \ ['blacksquare' , '∎'], + \ ['bot' , '⊥'], + \ ['boxdot' , '⊡'], + \ ['boxminus' , '⊟'], + \ ['boxplus' , '⊞'], + \ ['boxtimes' , '⊠'], + \ ['bumpeq' , '≏'], + \ ['Bumpeq' , '≎'], + \ ['cap' , '∩'], + \ ['Cap' , '⋒'], + \ ['cdot' , '·'], + \ ['cdots' , '⋯'], + \ ['circ' , '∘'], + \ ['circeq' , '≗'], + \ ['circlearrowleft', '↺'], + \ ['circlearrowright', '↻'], + \ ['circledast' , '⊛'], + \ ['circledcirc' , '⊚'], + \ ['complement' , '∁'], + \ ['cong' , '≅'], + \ ['coprod' , '∐'], + \ ['cup' , '∪'], + \ ['Cup' , '⋓'], + \ ['curlyeqprec' , '⋞'], + \ ['curlyeqsucc' , '⋟'], + \ ['curlyvee' , '⋎'], + \ ['curlywedge' , '⋏'], + \ ['dashv' , '⊣'], + \ ['diamond' , '⋄'], + \ ['div' , '÷'], + \ ['doteq' , '≐'], + \ ['doteqdot' , '≑'], + \ ['dotplus' , '∔'], + \ ['dotsb' , '⋯'], + \ ['dotsc' , '…'], + \ ['dots' , '…'], + \ ['dotsi' , '⋯'], + \ ['dotso' , '…'], + \ ['doublebarwedge' , '⩞'], + \ ['downarrow' , '↓'], + \ ['Downarrow' , '⇓'], + \ ['emptyset' , '∅'], + \ ['eqcirc' , '≖'], + \ ['eqsim' , '≂'], + \ ['eqslantgtr' , '⪖'], + \ ['eqslantless' , '⪕'], + \ ['equiv' , '≡'], + \ ['exists' , '∃'], + \ ['fallingdotseq' , '≒'], + \ ['forall' , '∀'], + \ ['ge' , '≥'], + \ ['geq' , '≥'], + \ ['geqq' , '≧'], + \ ['gets' , '←'], + \ ['gneqq' , '≩'], + \ ['gtrdot' , '⋗'], + \ ['gtreqless' , '⋛'], + \ ['gtrless' , '≷'], + \ ['gtrsim' , '≳'], + \ ['hookleftarrow' , '↩'], + \ ['hookrightarrow' , '↪'], + \ ['iiint' , '∭'], + \ ['iint' , '∬'], + \ ['Im' , 'ℑ'], + \ ['in' , '∈'], + \ ['infty' , '∞'], + \ ['int' , '∫'], + \ ['lceil' , '⌈'], + \ ['ldots' , '…'], + \ ['le' , '≤'], + \ ['leftarrow' , '⟵'], + \ ['Leftarrow' , '⟸'], + \ ['leftarrowtail' , '↢'], + \ ['left(' , '('], + \ ['left\[' , '['], + \ ['left\\{' , '{'], + \ ['Leftrightarrow' , '⇔'], + \ ['leftrightsquigarrow', '↭'], + \ ['leftthreetimes' , '⋋'], + \ ['leq' , '≤'], + \ ['leqq' , '≦'], + \ ['lessdot' , '⋖'], + \ ['lesseqgtr' , '⋚'], + \ ['lesssim' , '≲'], + \ ['lfloor' , '⌊'], + \ ['lneqq' , '≨'], + \ ['ltimes' , '⋉'], + \ ['mapsto' , '↦'], + \ ['measuredangle' , '∡'], + \ ['mid' , '∣'], + \ ['mp' , '∓'], + \ ['nabla' , '∇'], + \ ['ncong' , '≇'], + \ ['nearrow' , '↗'], + \ ['ne' , '≠'], + \ ['neg' , '¬'], + \ ['neq' , '≠'], + \ ['nexists' , '∄'], + \ ['ngeq' , '≱'], + \ ['ngeqq' , '≱'], + \ ['ngtr' , '≯'], + \ ['ni' , '∋'], + \ ['nleftarrow' , '↚'], + \ ['nLeftarrow' , '⇍'], + \ ['nLeftrightarrow', '⇎'], + \ ['nleq' , '≰'], + \ ['nleqq' , '≰'], + \ ['nless' , '≮'], + \ ['nmid' , '∤'], + \ ['notin' , '∉'], + \ ['nprec' , '⊀'], + \ ['nrightarrow' , '↛'], + \ ['nRightarrow' , '⇏'], + \ ['nsim' , '≁'], + \ ['nsucc' , '⊁'], + \ ['ntriangleleft' , '⋪'], + \ ['ntrianglelefteq', '⋬'], + \ ['ntriangleright' , '⋫'], + \ ['ntrianglerighteq', '⋭'], + \ ['nvdash' , '⊬'], + \ ['nvDash' , '⊭'], + \ ['nVdash' , '⊮'], + \ ['nwarrow' , '↖'], + \ ['odot' , '⊙'], + \ ['oint' , '∮'], + \ ['ominus' , '⊖'], + \ ['oplus' , '⊕'], + \ ['oslash' , '⊘'], + \ ['otimes' , '⊗'], + \ ['owns' , '∋'], + \ ['partial' , '∂'], + \ ['perp' , '⊥'], + \ ['pitchfork' , '⋔'], + \ ['pm' , '±'], + \ ['precapprox' , '⪷'], + \ ['prec' , '≺'], + \ ['preccurlyeq' , '≼'], + \ ['preceq' , '⪯'], + \ ['precnapprox' , '⪹'], + \ ['precneqq' , '⪵'], + \ ['precsim' , '≾'], + \ ['prod' , '∏'], + \ ['propto' , '∝'], + \ ['rceil' , '⌉'], + \ ['Re' , 'ℜ'], + \ ['rfloor' , '⌋'], + \ ['rightarrow' , '⟶'], + \ ['Rightarrow' , '⟹'], + \ ['rightarrowtail' , '↣'], + \ ['right)' , ')'], + \ ['right]' , ']'], + \ ['right\\}' , '}'], + \ ['rightsquigarrow', '↝'], + \ ['rightthreetimes', '⋌'], + \ ['risingdotseq' , '≓'], + \ ['rtimes' , '⋊'], + \ ['searrow' , '↘'], + \ ['setminus' , '∖'], + \ ['sim' , '∼'], + \ ['sphericalangle' , '∢'], + \ ['sqcap' , '⊓'], + \ ['sqcup' , '⊔'], + \ ['sqsubset' , '⊏'], + \ ['sqsubseteq' , '⊑'], + \ ['sqsupset' , '⊐'], + \ ['sqsupseteq' , '⊒'], + \ ['subset' , '⊂'], + \ ['Subset' , '⋐'], + \ ['subseteq' , '⊆'], + \ ['subseteqq' , '⫅'], + \ ['subsetneq' , '⊊'], + \ ['subsetneqq' , '⫋'], + \ ['succapprox' , '⪸'], + \ ['succ' , '≻'], + \ ['succcurlyeq' , '≽'], + \ ['succeq' , '⪰'], + \ ['succnapprox' , '⪺'], + \ ['succneqq' , '⪶'], + \ ['succsim' , '≿'], + \ ['sum' , '∑'], + \ ['Supset' , '⋑'], + \ ['supseteq' , '⊇'], + \ ['supseteqq' , '⫆'], + \ ['supsetneq' , '⊋'], + \ ['supsetneqq' , '⫌'], + \ ['surd' , '√'], + \ ['swarrow' , '↙'], + \ ['therefore' , '∴'], + \ ['times' , '×'], + \ ['to' , '→'], + \ ['top' , '⊤'], + \ ['triangleleft' , '⊲'], + \ ['trianglelefteq' , '⊴'], + \ ['triangleq' , '≜'], + \ ['triangleright' , '⊳'], + \ ['trianglerighteq', '⊵'], + \ ['twoheadleftarrow', '↞'], + \ ['twoheadrightarrow', '↠'], + \ ['uparrow' , '↑'], + \ ['Uparrow' , '⇑'], + \ ['updownarrow' , '↕'], + \ ['Updownarrow' , '⇕'], + \ ['varnothing' , '∅'], + \ ['vartriangle' , '∆'], + \ ['vdash' , '⊢'], + \ ['vDash' , '⊨'], + \ ['Vdash' , '⊩'], + \ ['vdots' , '⋮'], + \ ['veebar' , '⊻'], + \ ['vee' , '∨'], + \ ['Vvdash' , '⊪'], + \ ['wedge' , '∧'], + \ ['wr' , '≀']] + for texmath in s:texMathList + exe "syn match texMathSymbol '\\\\".texmath[0]."\\>' contained conceal cchar=".texmath[1] + endfor if &ambw == "double" syn match texMathSymbol '\\gg\>' contained conceal cchar=≫ @@ -890,49 +922,62 @@ if has("conceal") && &enc == 'utf-8' else fun! s:Accents(chr,...) let i= 1 - for accent in ["`","\\'","^",'"','\~',"r","v"] + for accent in ["`","\\'","^",'"','\~','\.',"c","H","k","r","u","v"] if i > a:0 break endif - if strlen(a:{i}) == 0 + if strlen(a:{i}) == 0 || a:{i} == ' ' || a:{i} == '?' let i= i + 1 continue endif - exe "syn match texAccent '\\\\".accent."{".a:chr."}' conceal cchar=".a:{i} + if accent =~ '\a' + exe "syn match texAccent '".'\\'.accent.'\(\s*{'.a:chr.'}\|\s\+'.a:chr.'\)'."' conceal cchar=".a:{i} + else + exe "syn match texAccent '".'\\'.accent.'\s*\({'.a:chr.'}\|'.a:chr.'\)'."' conceal cchar=".a:{i} + endif let i= i + 1 endfor endfun - call s:Accents('a','à','á','â','ä','ã','å','ă') - call s:Accents('A','À','Á','Â','Ä','Ã','Å','Ă') - call s:Accents('C',"" ,'Ć','Ĉ',"" ,"" ,"" ,'Ć') - call s:Accents('e','è','é','ê','ë','ẽ',"" ,'ĕ') - call s:Accents('E','È','É','Ê','Ë','Ẽ',"" ,'Ė') - call s:Accents('i','ì','í','î','ï','ĩ',"" ,"ĭ") - call s:Accents('I','Ì','Í','Î','Ï','Ĩ',"" ,'Ĭ') - call s:Accents('o','ò','ó','ô','ö','õ',"" ,'ŏ') - call s:Accents('O','Ò','Ó','Ô','Ö','Õ',"" ,'Ŏ') - call s:Accents('r',"" ,'ŕ',"" ,"" ,"" ,"" ,'ř') - call s:Accents('R',"" ,'Ŕ',"" ,"" ,"" ,"" ,'Ř') - call s:Accents('s',"" ,'ś','ŝ',"" ,"" ,"" ,'š') - call s:Accents('S',"" ,'Ś','Ŝ',"" ,"" ,"" ,'Š') - call s:Accents('u','ù','ú','û','ü','ũ',"" ,'ŭ') - call s:Accents('U','Ù','Ú','Û','Ü','Ũ',"" ,'Ŭ') - call s:Accents('y','ỳ','ý','ŷ','ÿ','ỹ',"" ,"" ) - call s:Accents('Y','Ỳ','Ý','Ŷ','Ÿ','Ỹ',"" ,"" ) + " \` \' \^ \" \~ \. \c \H \k \r \u \v + call s:Accents('a','à','á','â','ä','ã',' ',' ',' ','ą','å','ă','ă') + call s:Accents('A','À','Á','Â','Ä','Ã',' ',' ',' ','Ą','Å','Ă','Ă') + call s:Accents('c',' ','ć','ĉ',' ',' ','ċ','ç',' ',' ',' ',' ','č') + call s:Accents('C',' ','Ć','Ĉ',' ',' ','Ċ','Ç',' ',' ',' ',' ','Č') + call s:Accents('d',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','ď') + call s:Accents('D',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','Ď') + call s:Accents('e','è','é','ê','ë','ẽ','ė','ȩ',' ','ę',' ','ĕ','ě') + call s:Accents('E','È','É','Ê','Ë','Ẽ','Ė','Ȩ',' ','Ę',' ','Ĕ','Ě') + call s:Accents('g',' ',' ',' ',' ',' ','ġ','ģ',' ',' ',' ','ğ',' ') + call s:Accents('G',' ',' ',' ',' ',' ','Ġ','Ģ',' ',' ',' ','Ğ',' ') + call s:Accents('i','ì','í','î','ï','ĩ','į',' ',' ',' ',' ','ĭ',' ') + call s:Accents('I','Ì','Í','Î','Ï','Ĩ','İ',' ',' ',' ',' ','Ĭ',' ') + call s:Accents('l',' ','ĺ','ľ',' ',' ',' ','ļ',' ',' ',' ',' ','ľ') + call s:Accents('L',' ','Ĺ','Ľ',' ',' ',' ','Ļ',' ',' ',' ',' ','Ľ') + call s:Accents('n',' ','ń',' ',' ','ñ',' ','ņ',' ',' ',' ',' ','ň') + call s:Accents('N',' ','Ń',' ',' ','Ñ',' ','Ņ',' ',' ',' ',' ','Ň') + call s:Accents('o','ò','ó','ô','ö','õ','ȯ',' ','ő','ǫ',' ','ŏ',' ') + call s:Accents('O','Ò','Ó','Ô','Ö','Õ','Ȯ',' ','Ő','Ǫ',' ','Ŏ',' ') + call s:Accents('r',' ','ŕ',' ',' ',' ',' ','ŗ',' ',' ',' ',' ','ř') + call s:Accents('R',' ','Ŕ',' ',' ',' ',' ','Ŗ',' ',' ',' ',' ','Ř') + call s:Accents('s',' ','ś','ŝ',' ',' ',' ','ş',' ',' ',' ',' ','š') + call s:Accents('S',' ','Ś','Ŝ',' ',' ',' ','Ş',' ',' ',' ',' ','Š') + call s:Accents('t',' ',' ',' ',' ',' ',' ','ţ',' ',' ',' ',' ','ť') + call s:Accents('T',' ',' ',' ',' ',' ',' ','Ţ',' ',' ',' ',' ','Ť') + call s:Accents('u','ù','ú','û','ü','ũ',' ',' ','ű',' ','ů','ŭ',' ') + call s:Accents('U','Ù','Ú','Û','Ü','Ũ',' ',' ','Ű',' ','Ů','Ŭ',' ') + call s:Accents('w',' ',' ','ŵ',' ',' ',' ',' ',' ',' ',' ',' ',' ') + call s:Accents('W',' ',' ','Ŵ',' ',' ',' ',' ',' ',' ',' ',' ',' ') + call s:Accents('y','ỳ','ý','ŷ','ÿ','ỹ',' ',' ',' ',' ',' ',' ',' ') + call s:Accents('Y','Ỳ','Ý','Ŷ','Ÿ','Ỹ',' ',' ',' ',' ',' ',' ',' ') + call s:Accents('z',' ','ź',' ',' ',' ','ż',' ',' ',' ',' ',' ','ž') + call s:Accents('Z',' ','Ź',' ',' ',' ','Ż',' ',' ',' ',' ',' ','Ž') + call s:Accents('\\i','ì','í','î','ï','ĩ','į',' ',' ',' ',' ','ĭ',' ') + " \` \' \^ \" \~ \. \c \H \k \r \u \v delfun s:Accents syn match texAccent '\\aa\>' conceal cchar=å syn match texAccent '\\AA\>' conceal cchar=Å - syn match texAccent '\\k{a}' conceal cchar=ą - syn match texAccent '\\k{A}' conceal cchar=Ą - syn match texAccent '\\c{C}' conceal cchar=Ç - syn match texAccent '\\c{c}' conceal cchar=ç - syn match texAccent '\\\~{n}' conceal cchar=ñ - syn match texAccent '\\\~{N}' conceal cchar=Ñ syn match texAccent '\\o\>' conceal cchar=ø syn match texAccent '\\O\>' conceal cchar=Ø - syn match texAccent '\\H{o}' conceal cchar=ő - syn match texAccent '\\H{O}' conceal cchar=Ő - syn match texAccent '\\c{r}' conceal cchar=ŗ syn match texLigature '\\AE\>' conceal cchar=Æ syn match texLigature '\\ae\>' conceal cchar=æ syn match texLigature '\\oe\>' conceal cchar=œ @@ -995,6 +1040,11 @@ if did_tex_syntax_inits == 1 HiLink texMathDelimSet2 texMathDelim HiLink texMathDelimKey texMathDelim HiLink texMathMatcher texMath + HiLink texAccent texStatement + HiLink texGreek texStatement + HiLink texSuperscript texStatement + HiLink texSubscript texStatement + HiLink texMathSymbol texStatement HiLink texMathZoneV texMath HiLink texMathZoneW texMath HiLink texMathZoneX texMath