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