Skip to content

HerringtonDarkholme/yats.vim

Repository files navigation

YATS: Yet Another TypeScript Syntax

Build Status

screenshot

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 like addEventListener. 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

About

Yet Another TypeScript Syntax: The most advanced TypeScript Syntax Highlighting in Vim

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published