Mercurial > vim
view runtime/syntax/j.vim @ 5621:be61f315eafe v7.4.157
updated for version 7.4.157
Problem: Error number used twice. (Yukihiro Nakadaira)
Solution: Change the one not referred in the docs.
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Thu, 23 Jan 2014 18:12:49 +0100 |
parents | 9521463d4fc1 |
children | 657ade71d395 |
line wrap: on
line source
" Vim syntax file " Language: J " Maintainer: David Bürgin <676c7473@gmail.com> " Last Change: 2013-10-06 if exists("b:current_syntax") finish endif syntax case match syntax sync minlines=50 syn match jControl /\<\%(assert\|break\|case\|catch[dt]\=\|continue\|do\|else\%(if\)\=\|end\|fcase\|for\|if\|return\|select\|throw\|try\|whil\%(e\|st\)\)\./ syn match jControl /\<\%(for\|goto\|label\)_\a\k*\./ syn region jString oneline start=/'/ skip=/''/ end=/'/ " Patterns for numbers in general, rational numbers, numbers with explicit " base, infinities, and numbers with extended precision. " " Matching J numbers is difficult. The regular expression used for the general " case roughly embodies this grammar sketch: " " EXP := /_?\d+(\.\d*)?([eE]_?\d+)?/ " COMP := EXP | EXP (j|a[dr]) EXP " PIEU := COMP | COMP [px] COMP " " For the rest, a compromise between correctness and practicality was made. " See http://www.jsoftware.com/help/dictionary/dcons.htm for reference. syn match jNumber /\<_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\%(\%(j\|a[dr]\)_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\)\=\%([px]_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\%(\%(j\|a[dr]\)_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=\)\=\)\=/ syn match jNumber /\<_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=r_\=\d\+\%(\.\d*\)\=\%([eE]_\=\d\+\)\=/ syn match jNumber /\<_\=\d\+\%([eE]\d\+\)\=b_\=[0-9a-z]\+/ syn match jNumber /\<__\=\>/ syn match jNumber /\<_\=\d\+x\>/ syn match jComment /NB\..*$/ contains=jTodo,@Spell syn keyword jTodo TODO FIXME XXX contained hi def link jControl Statement hi def link jString String hi def link jNumber Number hi def link jComment Comment hi def link jTodo Todo let b:current_syntax = "j"