summaryrefslogtreecommitdiff
path: root/ftplugin/zig.lua
diff options
context:
space:
mode:
authormaxxnino <[email protected]>2021-07-03 14:41:32 +0900
committerGitHub <[email protected]>2021-07-03 01:41:32 -0400
commitb6942d5025b72dd4e5f0fa0f3baa6c6d8c030817 (patch)
treedb52c4ff997d63dc476312cab7e4b6dea6a534f0 /ftplugin/zig.lua
parent27f662efa7482bf54c46f41b8fc47a1dd363096f (diff)
auto detect file for zig, and language server for zig (#604)
Co-authored-by: maxxnino <[email protected]>
Diffstat (limited to 'ftplugin/zig.lua')
-rw-r--r--ftplugin/zig.lua15
1 files changed, 15 insertions, 0 deletions
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")