YATS: Yet Another TypeScript Syntax
Yet Another TypeScript Syntax file for Vim, adapted from YAJS. Key differences:
- Exuberant Highlighting. The most elaborate or byzatine syntax highlighting for TypeScript.
- Bundled with snippets for UltiSnips!
- Builtin Support for tagbar!
- Use 'typescript' as group name's prefix, not 'typeScript' nor 'TypeScript'. Works great with SyntaxComplete.
- Inherit Web API and DOM keywords from YAJS
- Syntax fold. Fold long code block, semantically!
- Remove old, unused syntax definitions.
Config
-
let g:yats_host_keyword = 1
: configure yats to highlight host specific keywords likeaddEventListener
. Default is 1. Set it 0 to turn off highlighting. -
Note:
set re=0
explicitly in your vimrc. Old regexp engine will incur performance issues for yats and old engine is usually turned on by other plugins.
Concealing Characters
You can customize concealing characters, if your font provides the glyph you want, by defining one or more of the following variables:
let g:typescript_conceal_function = "Æ’"
let g:typescript_conceal_null = "ø"
let g:typescript_conceal_undefined = "¿"
let g:typescript_conceal_this = "@"
let g:typescript_conceal_return = "⇚"
let g:typescript_conceal_prototype = "¶"
let g:typescript_conceal_super = "Ω"
You can enable concealing within VIM with:
set conceallevel=1
OR if you wish to toggle concealing you may wish to bind a command such as the following which will map <LEADER>l
(leader is usually the \
key) to toggling conceal mode:
map <leader>l :exec &conceallevel ? "set conceallevel=0" : "set conceallevel=1"<CR>
Credits
- othree, whose YAJS is the most up-to-date js syntax for Vim
- Jose Elera, Enhanced Javascript syntax
- Zhao Yi, Claudio Fleiner, Scott Shattuck (This file is based on their hard work)
- gumnos (From the #vim IRC Channel in Freenode) (Who helped me figured out the crazy Vim Regexes)
License
The same as Vim