diff options
author | maxxnino <[email protected]> | 2021-07-03 14:41:32 +0900 |
---|---|---|
committer | GitHub <[email protected]> | 2021-07-03 01:41:32 -0400 |
commit | b6942d5025b72dd4e5f0fa0f3baa6c6d8c030817 (patch) | |
tree | db52c4ff997d63dc476312cab7e4b6dea6a534f0 | |
parent | 27f662efa7482bf54c46f41b8fc47a1dd363096f (diff) |
auto detect file for zig, and language server for zig (#604)
Co-authored-by: maxxnino <[email protected]>
-rw-r--r-- | ftdetect/zig.lua | 4 | ||||
-rw-r--r-- | ftplugin/zig.lua | 15 | ||||
-rw-r--r-- | lua/default-config.lua | 3 |
3 files changed, 21 insertions, 1 deletions
diff --git a/ftdetect/zig.lua b/ftdetect/zig.lua new file mode 100644 index 00000000..81e901ca --- /dev/null +++ b/ftdetect/zig.lua @@ -0,0 +1,4 @@ +vim.cmd([[ + au BufRead,BufNewFile *.zig set filetype=zig + au BufRead,BufNewFile *.zir set filetype=zir +]]) diff --git a/ftplugin/zig.lua b/ftplugin/zig.lua new file mode 100644 index 00000000..06217ddd --- /dev/null +++ b/ftplugin/zig.lua @@ -0,0 +1,15 @@ +-- Because lspinstall don't support zig yet, +-- So we need zls preset in global lib +-- Further custom install zls in +-- https://github.com/zigtools/zls/wiki/Downloading-and-Building-ZLS +require'lspconfig'.zls.setup{ + root_dir = require'lspconfig'.util.root_pattern(".git", "build.zig", "zls.json"), + on_attach = require'lsp'.common_on_attach, +} +require('lv-utils').define_augroups({ + _zig_autoformat = { + {'BufWritePre', '*.zig', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'}, + {'BufEnter', '*.zig', ':lua vim.api.nvim_buf_set_option(0, "commentstring", "// %s")'} + } +}) +vim.cmd("setl expandtab tabstop=8 softtabstop=4 shiftwidth=4") diff --git a/lua/default-config.lua b/lua/default-config.lua index 0553226f..76a853ab 100644 --- a/lua/default-config.lua +++ b/lua/default-config.lua @@ -188,7 +188,8 @@ O = { formatter = '', autoformat = false, virtual_text = true - } + }, + zig = {} }, |