blob: 88b1fc9d44e941f3df97e1cab0438cb10786c292 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim filetype plugin file.
Bram Moolenaar71b6d332022-09-10 13:13:14 +01002" Language: Lua
Bram Moolenaar519cc552021-11-16 19:18:26 +00003" Maintainer: Doug Kearns <dougkearns@gmail.com>
4" Previous Maintainer: Max Ischenko <mfi@ukr.net>
Bram Moolenaar71b6d332022-09-10 13:13:14 +01005" Contributor: Dorai Sitaram <ds26@gte.com>
Bram Moolenaar3c053a12022-10-16 13:11:12 +01006" C.D. MacEachern <craig.daniel.maceachern@gmail.com>
Bram Moolenaarb59ae592022-11-23 23:46:31 +00007" Last Change: 2022 Nov 19
Bram Moolenaar071d4272004-06-13 20:20:40 +00008
Bram Moolenaar071d4272004-06-13 20:20:40 +00009if exists("b:did_ftplugin")
10 finish
11endif
Bram Moolenaar071d4272004-06-13 20:20:40 +000012let b:did_ftplugin = 1
13
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010014let s:cpo_save = &cpo
15set cpo&vim
16
Bram Moolenaar71b6d332022-09-10 13:13:14 +010017setlocal comments=:--
18setlocal commentstring=--\ %s
Bram Moolenaar519cc552021-11-16 19:18:26 +000019setlocal formatoptions-=t formatoptions+=croql
Bram Moolenaar071d4272004-06-13 20:20:40 +000020
Bram Moolenaar71b6d332022-09-10 13:13:14 +010021let &l:define = '\<function\|\<local\%(\s\+function\)\='
22
Bram Moolenaar3c053a12022-10-16 13:11:12 +010023" TODO: handle init.lua
Bram Moolenaarb59ae592022-11-23 23:46:31 +000024setlocal includeexpr=tr(v:fname,'.','/')
Bram Moolenaar071d4272004-06-13 20:20:40 +000025setlocal suffixesadd=.lua
26
Bram Moolenaar3c053a12022-10-16 13:11:12 +010027let b:undo_ftplugin = "setlocal cms< com< def< fo< inex< sua<"
Bram Moolenaar071d4272004-06-13 20:20:40 +000028
Bram Moolenaar519cc552021-11-16 19:18:26 +000029if exists("loaded_matchit") && !exists("b:match_words")
Bram Moolenaar071d4272004-06-13 20:20:40 +000030 let b:match_ignorecase = 0
31 let b:match_words =
Bram Moolenaar71b6d332022-09-10 13:13:14 +010032 \ '\<\%(do\|function\|if\)\>:' ..
33 \ '\<\%(return\|else\|elseif\)\>:' ..
34 \ '\<end\>,' ..
35 \ '\<repeat\>:\<until\>,' ..
36 \ '\%(--\)\=\[\(=*\)\[:]\1]'
37 let b:undo_ftplugin ..= " | unlet! b:match_words b:match_ignorecase"
Bram Moolenaar519cc552021-11-16 19:18:26 +000038endif
Bram Moolenaar071d4272004-06-13 20:20:40 +000039
Bram Moolenaar519cc552021-11-16 19:18:26 +000040if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
Bram Moolenaar71b6d332022-09-10 13:13:14 +010041 let b:browsefilter = "Lua Source Files (*.lua)\t*.lua\n" ..
42 \ "All Files (*.*)\t*.*\n"
43 let b:undo_ftplugin ..= " | unlet! b:browsefilter"
Bram Moolenaar519cc552021-11-16 19:18:26 +000044endif
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010045
46let &cpo = s:cpo_save
47unlet s:cpo_save
Bram Moolenaar71b6d332022-09-10 13:13:14 +010048
49" vim: nowrap sw=2 sts=2 ts=8 noet: