diff options
author | Adam Stankiewicz <sheerun@sher.pl> | 2019-09-06 14:32:07 +0200 |
---|---|---|
committer | Adam Stankiewicz <sheerun@sher.pl> | 2019-09-06 14:32:07 +0200 |
commit | 84ec4eedcdd2892249b5369f91a6dd1d12fef2fc (patch) | |
tree | 6c9806851123656af2b71f6c6f5d89649442909c /ftplugin/typescript.vim | |
parent | 66b769328c4511b2273f01c70de971c41f6964dd (diff) | |
download | vim-polyglot-84ec4eedcdd2892249b5369f91a6dd1d12fef2fc.tar.gz vim-polyglot-84ec4eedcdd2892249b5369f91a6dd1d12fef2fc.zip |
Switch typescript provider, closes #428v4.0.0
Diffstat (limited to 'ftplugin/typescript.vim')
-rw-r--r-- | ftplugin/typescript.vim | 67 |
1 files changed, 64 insertions, 3 deletions
diff --git a/ftplugin/typescript.vim b/ftplugin/typescript.vim index 705cb7cd..b3d4c9c4 100644 --- a/ftplugin/typescript.vim +++ b/ftplugin/typescript.vim @@ -2,6 +2,8 @@ if exists('g:polyglot_disabled') && index(g:polyglot_disabled, 'typescript') != finish endif +" set Vi-incompatible, compiler and commentstring + if exists("b:did_ftplugin") finish endif @@ -17,9 +19,68 @@ setlocal commentstring=//\ %s " " and insert the comment leader when hitting <CR> or using "o". setlocal formatoptions-=t formatoptions+=croql -setlocal suffixesadd+=.ts,.tsx - -let b:undo_ftplugin = "setl fo< ofu< com< cms<" +" setlocal foldmethod=syntax let &cpo = s:cpo_save unlet s:cpo_save + +function! TsIncludeExpr(file) + if (filereadable(a:file)) + return l:file + else + let l:file2=substitute(a:file,'$','/index.ts','g') + return l:file2 + endif +endfunction + +set path+=./node_modules/**,node_modules/** +set include=import\_s.\\zs[^'\"]*\\ze +set includeexpr=TsIncludeExpr(v:fname) +set suffixesadd=.ts + +" +" TagBar +" +let g:tagbar_type_typescript = { + \ 'ctagstype' : 'typescript', + \ 'kinds' : [ + \ 'c:classes', + \ 'a:abstract classes', + \ 't:types', + \ 'n:modules', + \ 'f:functions', + \ 'v:variables', + \ 'l:varlambdas', + \ 'm:members', + \ 'i:interfaces', + \ 'e:enums' + \ ], + \ 'sro' : '.', + \ 'kind2scope' : { + \ 'c' : 'classes', + \ 'a' : 'abstract classes', + \ 't' : 'types', + \ 'f' : 'functions', + \ 'v' : 'variables', + \ 'l' : 'varlambdas', + \ 'm' : 'members', + \ 'i' : 'interfaces', + \ 'e' : 'enums' + \ }, + \ 'scope2kind' : { + \ 'classes' : 'c', + \ 'abstract classes' : 'a', + \ 'types' : 't', + \ 'functions' : 'f', + \ 'variables' : 'v', + \ 'varlambdas' : 'l', + \ 'members' : 'm', + \ 'interfaces' : 'i', + \ 'enums' : 'e' + \ } +\ } + +" In case you've updated/customized your ~/.ctags and prefer to use it. +if get(g:, 'typescript_use_builtin_tagbar_defs', 1) + let g:tagbar_type_typescript.deffile = expand('<sfile>:p:h:h') . '/ctags/typescript.ctags' +endif |