initial lsp config
This commit is contained in:
@@ -30,15 +30,15 @@ M.config = function()
|
||||
group = filetypes })
|
||||
autocmd("FileType",
|
||||
{ pattern = { "c", "ruby", "php", "php3", "perl", "python", "mason", "vim", "sh", "zsh", "scala", "javascript",
|
||||
"javascriptreact", "typescript", "typescriptreact", "html", "svelte", "css", "nix" },
|
||||
"javascriptreact", "typescript", "typescriptreact", "html", "svelte", "css", "nix", "terraform" },
|
||||
callback = function() require('pwnvim.options').programming() end, group = filetypes })
|
||||
autocmd("FileType",
|
||||
{ pattern = { "lua", "xml" }, callback = function() require('pwnvim.filetypes').lua() end, group = filetypes })
|
||||
autocmd("FileType",
|
||||
{ pattern = { "md", "markdown", "vimwiki" }, callback = function() require('pwnvim.markdown').setup() end,
|
||||
group = filetypes })
|
||||
autocmd("FileType",
|
||||
{ pattern = { "rust" }, callback = function() require('pwnvim.filetypes').rust() end, group = filetypes })
|
||||
-- autocmd("FileType",
|
||||
-- { pattern = { "rust" }, callback = function() require('pwnvim.filetypes').rust() end, group = filetypes })
|
||||
autocmd("FileType",
|
||||
{ pattern = { "Outline" }, command = "setlocal nospell", group = filetypes })
|
||||
|
||||
@@ -49,29 +49,29 @@ M.config = function()
|
||||
callback = function() require('pwnvim.filetypes').page() end })
|
||||
end
|
||||
|
||||
M.rust = function()
|
||||
require('pwnvim.options').programming()
|
||||
require('pwnvim.options').fourspaceindent()
|
||||
vim.bo.makeprg = "cargo"
|
||||
vim.cmd("compiler cargo")
|
||||
vim.g.rustfmt_autosave = 1
|
||||
vim.g.rust_fold = 1
|
||||
vim.api.nvim_exec([[
|
||||
augroup rustquickfix
|
||||
autocmd!
|
||||
autocmd BufReadPost quickfix setlocal foldmethod=expr
|
||||
autocmd BufReadPost quickfix setlocal foldexpr=getline(v:lnum)[0:1]=='\|\|'
|
||||
autocmd BufEnter quickfix setlocal foldexpr=getline(v:lnum)[0:1]=='\|\|'
|
||||
autocmd BufReadPost quickfix setlocal foldlevel=0
|
||||
augroup END
|
||||
]], false)
|
||||
end
|
||||
-- M.rust = function()
|
||||
-- require('pwnvim.options').programming()
|
||||
-- require('pwnvim.options').fourspaceindent()
|
||||
-- vim.bo.makeprg = "cargo"
|
||||
-- vim.cmd("compiler cargo")
|
||||
-- vim.g.rustfmt_autosave = 1
|
||||
-- vim.g.rust_fold = 1
|
||||
-- vim.api.nvim_exec([[
|
||||
-- augroup rustquickfix
|
||||
-- autocmd!
|
||||
-- autocmd BufReadPost quickfix setlocal foldmethod=expr
|
||||
-- autocmd BufReadPost quickfix setlocal foldexpr=getline(v:lnum)[0:1]=='\|\|'
|
||||
-- autocmd BufEnter quickfix setlocal foldexpr=getline(v:lnum)[0:1]=='\|\|'
|
||||
-- autocmd BufReadPost quickfix setlocal foldlevel=0
|
||||
-- augroup END
|
||||
-- ]], false)
|
||||
-- end
|
||||
|
||||
M.c = function()
|
||||
require('pwnvim.options').programming()
|
||||
require('pwnvim.options').fourspaceindent()
|
||||
vim.bo.makeprg = "make"
|
||||
end
|
||||
-- M.c = function()
|
||||
-- require('pwnvim.options').programming()
|
||||
-- require('pwnvim.options').fourspaceindent()
|
||||
-- vim.bo.makeprg = "make"
|
||||
-- end
|
||||
|
||||
M.lua = function()
|
||||
require('pwnvim.options').programming()
|
||||
|
||||
@@ -115,22 +115,22 @@ M.setup = function()
|
||||
-- auto_display = true -- WIP automatic markdown image display, may be prone to breaking
|
||||
-- }
|
||||
-- end
|
||||
vim.cmd('packadd clipboard-image.nvim')
|
||||
require 'clipboard-image'.setup {
|
||||
default = {
|
||||
img_name = function()
|
||||
vim.fn.inputsave()
|
||||
local name = vim.fn.input({ prompt = "Name: " })
|
||||
-- TODO: swap spaces out for dashes
|
||||
vim.fn.inputrestore()
|
||||
return os.date('%Y-%m-%d') .. "-" .. name
|
||||
end,
|
||||
img_dir = { "%:p:h", "%:t:r:s?$?_attachments?" },
|
||||
img_dir_txt = "%:t:r:s?$?_attachments?",
|
||||
-- TODO: can I put the name as the title somehow?
|
||||
affix = "",
|
||||
}
|
||||
}
|
||||
-- vim.cmd('packadd clipboard-image.nvim')
|
||||
-- require 'clipboard-image'.setup {
|
||||
-- default = {
|
||||
-- img_name = function()
|
||||
-- vim.fn.inputsave()
|
||||
-- local name = vim.fn.input({ prompt = "Name: " })
|
||||
-- -- TODO: swap spaces out for dashes
|
||||
-- vim.fn.inputrestore()
|
||||
-- return os.date('%Y-%m-%d') .. "-" .. name
|
||||
-- end,
|
||||
-- img_dir = { "%:p:h", "%:t:r:s?$?_attachments?" },
|
||||
-- img_dir_txt = "%:t:r:s?$?_attachments?",
|
||||
-- -- TODO: can I put the name as the title somehow?
|
||||
-- affix = "",
|
||||
-- }
|
||||
-- }
|
||||
|
||||
|
||||
-- I have historically always used spaces for indents wherever possible including markdown
|
||||
|
||||
@@ -338,11 +338,11 @@ M.gui = function()
|
||||
-- vim.opt.guifont = "Liga DejaVuSansMono Nerd Font:h16"
|
||||
-- vim.opt.guifont = "FiraCode Nerd Font:h16" -- no italics
|
||||
-- if vim.loop.os_uname().sysname == "Darwin" then
|
||||
if vim.fn.has('mac') == 1 then
|
||||
vim.opt.guifont = "Hasklug Nerd Font:h18"
|
||||
else
|
||||
vim.opt.guifont = "Hasklug Nerd Font:h9"
|
||||
end
|
||||
-- if vim.fn.has('mac') == 1 then
|
||||
-- vim.opt.guifont = "Hasklug Nerd Font:h18"
|
||||
-- else
|
||||
-- vim.opt.guifont = "Hasklug Nerd Font:h9"
|
||||
-- end
|
||||
|
||||
vim.g.neovide_transparency = 0.92
|
||||
vim.g.neovide_cursor_animation_length = 0.01
|
||||
@@ -420,8 +420,8 @@ M.programming = function()
|
||||
-- Load direnv when we're in a programming file as we may want
|
||||
-- the nix environment provided. Run explicitly since the autocmds
|
||||
-- might not otherwise fire.
|
||||
vim.cmd('packadd direnv.vim')
|
||||
vim.cmd('DirenvExport')
|
||||
-- vim.cmd('packadd direnv.vim')
|
||||
-- vim.cmd('DirenvExport')
|
||||
end
|
||||
|
||||
return M
|
||||
|
||||
@@ -310,7 +310,6 @@ M.diagnostics = function()
|
||||
}
|
||||
}
|
||||
}
|
||||
lspconfig.svelte.setup { on_attach = attached, capabilities = capabilities }
|
||||
lspconfig.tailwindcss.setup {
|
||||
on_attach = attached,
|
||||
capabilities = capabilities,
|
||||
@@ -351,6 +350,8 @@ M.diagnostics = function()
|
||||
},
|
||||
capabilities = capabilities
|
||||
}
|
||||
lspconfig.terraformls.setup { on_attach = attached, capabilities = capabilities } -- terraform lsp
|
||||
lspconfig.tflint.setup { on_attach = attached, capabilities = capabilities } -- terraform lsp
|
||||
|
||||
require 'lspsaga'.init_lsp_saga({
|
||||
use_saga_diagnostic_sign = not SimpleUI,
|
||||
|
||||
Reference in New Issue
Block a user