xref: /vim-8.2.3635/runtime/ftplugin/lua.vim (revision 519cc559)
1071d4279SBram Moolenaar" Vim filetype plugin file.
2*519cc559SBram Moolenaar" Language:	        Lua
3*519cc559SBram Moolenaar" Maintainer:		Doug Kearns <[email protected]>
4*519cc559SBram Moolenaar" Previous Maintainer:	Max Ischenko <[email protected]>
5*519cc559SBram Moolenaar" Last Change:	        2021 Nov 15
6071d4279SBram Moolenaar
7071d4279SBram Moolenaar" Only do this when not done yet for this buffer
8071d4279SBram Moolenaarif exists("b:did_ftplugin")
9071d4279SBram Moolenaar  finish
10071d4279SBram Moolenaarendif
11071d4279SBram Moolenaar
12071d4279SBram Moolenaar" Don't load another plugin for this buffer
13071d4279SBram Moolenaarlet b:did_ftplugin = 1
14071d4279SBram Moolenaar
15f1568ecaSBram Moolenaarlet s:cpo_save = &cpo
16f1568ecaSBram Moolenaarset cpo&vim
17f1568ecaSBram Moolenaar
18071d4279SBram Moolenaar" Set 'formatoptions' to break comment lines but not other lines, and insert
19071d4279SBram Moolenaar" the comment leader when hitting <CR> or using "o".
20*519cc559SBram Moolenaarsetlocal formatoptions-=t formatoptions+=croql
21071d4279SBram Moolenaar
22*519cc559SBram Moolenaarsetlocal comments=:--
23*519cc559SBram Moolenaarsetlocal commentstring=--%s
24071d4279SBram Moolenaarsetlocal suffixesadd=.lua
25071d4279SBram Moolenaar
26*519cc559SBram Moolenaarlet b:undo_ftplugin = "setlocal fo< com< cms< sua<"
27071d4279SBram Moolenaar
28*519cc559SBram Moolenaarif exists("loaded_matchit") && !exists("b:match_words")
29071d4279SBram Moolenaar  let b:match_ignorecase = 0
30071d4279SBram Moolenaar  let b:match_words =
31071d4279SBram Moolenaar        \ '\<\%(do\|function\|if\)\>:' .
32071d4279SBram Moolenaar        \ '\<\%(return\|else\|elseif\)\>:' .
33071d4279SBram Moolenaar        \ '\<end\>,' .
34*519cc559SBram Moolenaar        \ '\<repeat\>:\<until\>,' .
35*519cc559SBram Moolenaar        \ '\%(--\)\=\[\(=*\)\[:]\1]'
36*519cc559SBram Moolenaar  let b:undo_ftplugin .= " | unlet! b:match_words b:match_ignorecase"
37*519cc559SBram Moolenaarendif
38071d4279SBram Moolenaar
39*519cc559SBram Moolenaarif (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
40*519cc559SBram Moolenaar  let b:browsefilter = "Lua Source Files (*.lua)\t*.lua\n" .
41*519cc559SBram Moolenaar	\              "All Files (*.*)\t*.*\n"
42*519cc559SBram Moolenaar  let b:undo_ftplugin .= " | unlet! b:browsefilter"
43*519cc559SBram Moolenaarendif
44f1568ecaSBram Moolenaar
45f1568ecaSBram Moolenaarlet &cpo = s:cpo_save
46f1568ecaSBram Moolenaarunlet s:cpo_save
47