annotate runtime/ftplugin/javascript.vim @ 35498:caf0a74e9b20 draft default tip

Added tag v9.1.0514 for changeset ae2cc753b57f599cd5404f57b9ea5dac80c9778d
author Christian Brabandt <cb@256bit.org>
date Sat, 22 Jun 2024 17:45:06 +0200
parents 7c7432a53a6c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
651
bc95c6c4bac1 updated for version 7.0191
vimboss
parents:
diff changeset
1 " Vim filetype plugin file
21991
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
2 " Language: Javascript
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
3 " Maintainer: Doug Kearns <dougkearns@gmail.com>
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
4 " Contributor: Romain Lafourcade <romainlafourcade@gmail.com>
34134
8ae680be2a51 runtime(ftplugin): Use "*" browsefilter pattern to match "All Files"
Christian Brabandt <cb@256bit.org>
parents: 21991
diff changeset
5 " Last Change: 2024 Jan 14
35324
7c7432a53a6c patch 9.1.0464: no whitespace padding in commentstring option in ftplugins
Christian Brabandt <cb@256bit.org>
parents: 34134
diff changeset
6 " 2024 May 23 by Riley Bruins <ribru17@gmail.com> ('commentstring')
651
bc95c6c4bac1 updated for version 7.0191
vimboss
parents:
diff changeset
7
bc95c6c4bac1 updated for version 7.0191
vimboss
parents:
diff changeset
8 if exists("b:did_ftplugin")
21991
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
9 finish
651
bc95c6c4bac1 updated for version 7.0191
vimboss
parents:
diff changeset
10 endif
bc95c6c4bac1 updated for version 7.0191
vimboss
parents:
diff changeset
11 let b:did_ftplugin = 1
bc95c6c4bac1 updated for version 7.0191
vimboss
parents:
diff changeset
12
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
13 let s:cpo_save = &cpo
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
14 set cpo-=C
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
15
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
16 " Set 'formatoptions' to break comment lines but not other lines,
21991
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
17 " and insert the comment leader when hitting <CR> or using "o".
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
18 setlocal formatoptions-=t formatoptions+=croql
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
19
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
20 " Set completion with CTRL-X CTRL-O to autoloaded function.
651
bc95c6c4bac1 updated for version 7.0191
vimboss
parents:
diff changeset
21 if exists('&ofu')
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
22 setlocal omnifunc=javascriptcomplete#CompleteJS
651
bc95c6c4bac1 updated for version 7.0191
vimboss
parents:
diff changeset
23 endif
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
24
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
25 " Set 'comments' to format dashed lists in comments.
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
26 setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
27
35324
7c7432a53a6c patch 9.1.0464: no whitespace padding in commentstring option in ftplugins
Christian Brabandt <cb@256bit.org>
parents: 34134
diff changeset
28 setlocal commentstring=//\ %s
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
29
21991
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
30 " Change the :browse e filter to primarily show JavaScript-related files.
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
31 if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
32 let b:browsefilter =
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
33 \ "JavaScript Files (*.js)\t*.js\n"
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
34 \ .. "JSX Files (*.jsx)\t*.jsx\n"
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
35 \ .. "JavaScript Modules (*.es, *.es6, *.cjs, *.mjs, *.jsm)\t*.es;*.es6;*.cjs;*.mjs;*.jsm\n"
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
36 \ .. "Vue Templates (*.vue)\t*.vue\n"
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
37 \ .. "JSON Files (*.json)\t*.json\n"
34134
8ae680be2a51 runtime(ftplugin): Use "*" browsefilter pattern to match "All Files"
Christian Brabandt <cb@256bit.org>
parents: 21991
diff changeset
38 if has("win32")
8ae680be2a51 runtime(ftplugin): Use "*" browsefilter pattern to match "All Files"
Christian Brabandt <cb@256bit.org>
parents: 21991
diff changeset
39 let b:browsefilter ..= "All Files (*.*)\t*\n"
8ae680be2a51 runtime(ftplugin): Use "*" browsefilter pattern to match "All Files"
Christian Brabandt <cb@256bit.org>
parents: 21991
diff changeset
40 else
8ae680be2a51 runtime(ftplugin): Use "*" browsefilter pattern to match "All Files"
Christian Brabandt <cb@256bit.org>
parents: 21991
diff changeset
41 let b:browsefilter ..= "All Files (*)\t*\n"
8ae680be2a51 runtime(ftplugin): Use "*" browsefilter pattern to match "All Files"
Christian Brabandt <cb@256bit.org>
parents: 21991
diff changeset
42 endif
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
43 endif
21991
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
44
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
45 " The following suffixes should be implied when resolving filenames
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
46 setlocal suffixesadd+=.js,.jsx,.es,.es6,.cjs,.mjs,.jsm,.vue,.json
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
47
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
48 " The following suffixes should have low priority
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
49 " .snap jest snapshot
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
50 setlocal suffixes+=.snap
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
51
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
52 " Remove irrelevant part of 'path'.
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
53 " User is expected to augment it with contextually-relevant paths
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
54 setlocal path-=/usr/include
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
55
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
56 " Matchit configuration
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
57 if exists("loaded_matchit")
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
58 let b:match_ignorecase = 0
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
59 let b:match_words =
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
60 \ '\<do\>:\<while\>,'
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
61 \ .. '<\@<=\([^ \t>/]\+\)\%(\s\+[^>]*\%([^/]>\|$\)\|>\|$\):<\@<=/\1>,'
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
62 \ .. '<\@<=\%([^ \t>/]\+\)\%(\s\+[^/>]*\|$\):/>'
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
63 endif
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
64
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
65 " Set 'define' to a comprehensive value
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
66 let &l:define =
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
67 \ '\(^\s*(*async\s\+function\|(*function\)'
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
68 \ .. '\|^\s*\(\*\|static\|async\|get\|set\|\i\+\.\)'
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
69 \ .. '\|^\s*\(\ze\i\+\)\(([^)]*).*{$\|\s*[:=,]\)'
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
70 \ .. '\|^\s*\(export\s\+\|export\s\+default\s\+\)*\(var\|let\|const\|function\|class\)'
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
71 \ .. '\|\<as\>'
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
72
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
73 let b:undo_ftplugin =
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
74 \ "setl fo< ofu< com< cms< sua< su< def< pa<"
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
75 \ .. "| unlet! b:browsefilter b:match_ignorecase b:match_words"
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
76
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
77 let &cpo = s:cpo_save
96cd8222a819 updated for version 7.1a
vimboss
parents: 651
diff changeset
78 unlet s:cpo_save
21991
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
79
bbca88cd13d5 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 1623
diff changeset
80 " vim: textwidth=78 tabstop=8 shiftwidth=4 softtabstop=4 expandtab