aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/lua/vim')
-rw-r--r--runtime/lua/vim/filetype.lua8
-rw-r--r--runtime/lua/vim/filetype/detect.lua13
2 files changed, 20 insertions, 1 deletions
diff --git a/runtime/lua/vim/filetype.lua b/runtime/lua/vim/filetype.lua
index 28d13cf270..7dd1d7cd25 100644
--- a/runtime/lua/vim/filetype.lua
+++ b/runtime/lua/vim/filetype.lua
@@ -611,7 +611,9 @@ local extension = {
c = function(path, bufnr)
return require('vim.filetype.detect').lpc(bufnr)
end,
- lsl = 'lsl',
+ lsl = function(path, bufnr)
+ return require('vim.filetype.detect').lsl(bufnr)
+ end,
lss = 'lss',
nse = 'lua',
rockspec = 'lua',
@@ -674,6 +676,7 @@ local extension = {
DEF = 'modula2',
['m2'] = 'modula2',
mi = 'modula2',
+ lm3 = 'modula3',
ssc = 'monk',
monk = 'monk',
tsc = 'monk',
@@ -1459,6 +1462,9 @@ local filename = {
['.sawfishrc'] = 'lisp',
['/etc/login.access'] = 'loginaccess',
['/etc/login.defs'] = 'logindefs',
+ ['.lsl'] = function(path, bufnr)
+ return require('vim.filetype.detect').lsl(bufnr)
+ end,
['.luacheckrc'] = 'lua',
['lynx.cfg'] = 'lynx',
['m3overrides'] = 'm3build',
diff --git a/runtime/lua/vim/filetype/detect.lua b/runtime/lua/vim/filetype/detect.lua
index 23fa1c5068..51ea1971cb 100644
--- a/runtime/lua/vim/filetype/detect.lua
+++ b/runtime/lua/vim/filetype/detect.lua
@@ -634,6 +634,19 @@ function M.lpc(bufnr)
return 'c'
end
+function M.lsl(bufnr)
+ if vim.g.filetype_lsl then
+ return vim.g.filetype_lsl
+ end
+
+ local line = nextnonblank(bufnr, 1)
+ if findany(line, { '^%s*%%', ':%s*trait%s*$' }) then
+ return 'larch'
+ else
+ return 'lsl'
+ end
+end
+
function M.m(bufnr)
if vim.g.filetype_m then
return vim.g.filetype_m