1*3d1cde8aSBram Moolenaar" Vim filetype plugin file
2*3d1cde8aSBram Moolenaar" Language:	TypeScript
3*3d1cde8aSBram Moolenaar" Maintainer:	Doug Kearns <[email protected]>
4*3d1cde8aSBram Moolenaar" Last Change:	2019 Aug 30
5*3d1cde8aSBram Moolenaar
6*3d1cde8aSBram Moolenaarif exists("b:did_ftplugin")
7*3d1cde8aSBram Moolenaar  finish
8*3d1cde8aSBram Moolenaarendif
9*3d1cde8aSBram Moolenaarlet b:did_ftplugin = 1
10*3d1cde8aSBram Moolenaar
11*3d1cde8aSBram Moolenaarlet s:cpo_save = &cpo
12*3d1cde8aSBram Moolenaarset cpo-=C
13*3d1cde8aSBram Moolenaar
14*3d1cde8aSBram Moolenaar" Set 'formatoptions' to break comment lines but not other lines,
15*3d1cde8aSBram Moolenaar" and insert the comment leader when hitting <CR> or using "o".
16*3d1cde8aSBram Moolenaarsetlocal formatoptions-=t formatoptions+=croql
17*3d1cde8aSBram Moolenaar
18*3d1cde8aSBram Moolenaar" Set 'comments' to format dashed lists in comments.
19*3d1cde8aSBram Moolenaarsetlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
20*3d1cde8aSBram Moolenaar
21*3d1cde8aSBram Moolenaarsetlocal commentstring=//%s
22*3d1cde8aSBram Moolenaar
23*3d1cde8aSBram Moolenaarsetlocal suffixesadd+=.ts,.d.ts,.tsx,.js,.jsx,.cjs,.mjs
24*3d1cde8aSBram Moolenaar
25*3d1cde8aSBram Moolenaar" Change the :browse e filter to primarily show TypeScript-related files.
26*3d1cde8aSBram Moolenaarif (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
27*3d1cde8aSBram Moolenaar    let  b:browsefilter="TypeScript Files (*.ts)\t*.ts\n" .
28*3d1cde8aSBram Moolenaar		\	"TypeScript Declaration Files (*.d.ts)\t*.d.ts\n" .
29*3d1cde8aSBram Moolenaar		\	"TSX Files (*.tsx)\t*.tsx\n" .
30*3d1cde8aSBram Moolenaar		\	"JavaScript Files (*.js)\t*.js\n" .
31*3d1cde8aSBram Moolenaar		\	"JavaScript Modules (*.es, *.cjs, *.mjs)\t*.es;*.cjs;*.mjs\n" .
32*3d1cde8aSBram Moolenaar		\	"JSON Files (*.json)\t*.json\n" .
33*3d1cde8aSBram Moolenaar		\	"All Files (*.*)\t*.*\n"
34*3d1cde8aSBram Moolenaarendif
35*3d1cde8aSBram Moolenaar
36*3d1cde8aSBram Moolenaarlet b:undo_ftplugin = "setl fo< com< cms< sua< | unlet! b:browsefilter"
37*3d1cde8aSBram Moolenaar
38*3d1cde8aSBram Moolenaarlet &cpo = s:cpo_save
39*3d1cde8aSBram Moolenaarunlet s:cpo_save
40