From 835a3a601875f64a47f7596e97c9ea03e9e7d613 Mon Sep 17 00:00:00 2001 From: Sam Willcocks Date: Mon, 28 Mar 2022 23:03:21 +0000 Subject: [PATCH] Split dev vim config into own file --- home/dev.lua | 49 +++++++++++++++++++++++++++++++++++++++++++++++ home/init.lua | 47 --------------------------------------------- home/profiles.nix | 17 +++++++++++++--- home/vim-dev.nix | 17 ++++++++++++++++ home/vim.nix | 10 +--------- 5 files changed, 81 insertions(+), 59 deletions(-) create mode 100644 home/dev.lua create mode 100644 home/vim-dev.nix diff --git a/home/dev.lua b/home/dev.lua new file mode 100644 index 0000000..dda17c7 --- /dev/null +++ b/home/dev.lua @@ -0,0 +1,49 @@ +-- More vim init for "bells and whistles you are using vim for dev" mode + +-- LSP +local opts = { noremap=true, silent=true } +local on_attach = function(client, bufnr) + vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc') + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gD', 'lua vim.lsp.buf.declaration()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gd', 'lua vim.lsp.buf.definition()', opts) + vim.api.nvim_buf_set_keymap(bufnr, 'n', 'f', 'lua vim.lsp.buf.formatting()', opts) +end + +-- Enable Language LSPs +require'lspconfig'.gopls.setup{ + on_attach = on_attach, +} +require'lspconfig'.pylsp.setup{ + on_attach = on_attach, + handlers = { + ["textDocument/publishDiagnostics"] = vim.lsp.with( + vim.lsp.diagnostic.on_publish_diagnostics, { + -- Disable virtual_text + virtual_text = false + } + ), + } +} +require'lspconfig'.rnix.setup{ + on_attach = on_attach +} + +-- Diags with Trouble +require('trouble').setup { + icons = false, + signs = { + error = "E", + warning = "W", + hint = "H", + information = "I" + } +} + +vim.g.rustfmt_autosave = 1 + +-- Tree-sitter +require'nvim-treesitter.configs'.setup { + highlight = { + enable = true + } +} diff --git a/home/init.lua b/home/init.lua index 11e3fbb..9e05b24 100644 --- a/home/init.lua +++ b/home/init.lua @@ -17,50 +17,3 @@ vim.o.termguicolors = true -- Keybinds vim.api.nvim_set_keymap('n','', ' FZF', { noremap=true }) --- LSP -local opts = { noremap=true, silent=true } -local on_attach = function(client, bufnr) - vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc') - vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gD', 'lua vim.lsp.buf.declaration()', opts) - vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gd', 'lua vim.lsp.buf.definition()', opts) - vim.api.nvim_buf_set_keymap(bufnr, 'n', 'f', 'lua vim.lsp.buf.formatting()', opts) -end - --- Enable Language LSPs -require'lspconfig'.gopls.setup{ - on_attach = on_attach, -} -require'lspconfig'.pylsp.setup{ - on_attach = on_attach, - handlers = { - ["textDocument/publishDiagnostics"] = vim.lsp.with( - vim.lsp.diagnostic.on_publish_diagnostics, { - -- Disable virtual_text - virtual_text = false - } - ), - } -} -require'lspconfig'.rnix.setup{ - on_attach = on_attach -} - --- Diags with Trouble -require('trouble').setup { - icons = false, - signs = { - error = "E", - warning = "W", - hint = "H", - information = "I" - } -} - -vim.g.rustfmt_autosave = 1 - --- Tree-sitter -require'nvim-treesitter.configs'.setup { - highlight = { - enable = true - } -} diff --git a/home/profiles.nix b/home/profiles.nix index 890e027..7a3ae40 100644 --- a/home/profiles.nix +++ b/home/profiles.nix @@ -1,6 +1,17 @@ { - dev = { ... }: { imports = [ ./default.nix ./git.nix ./rust.nix ./vim.nix ]; }; - laptop = { ... }: { - imports = [ ./default.nix ./git.nix ./macs.nix ./rust.nix ./vim.nix ./passwords.nix ]; + dev = { ... }: { + imports = [ ./default.nix ./git.nix ./rust.nix ./vim.nix ./vim-dev.nix ]; }; + laptop = { ... }: { + imports = [ + ./default.nix + ./git.nix + ./macs.nix + ./rust.nix + ./vim.nix + ./vim-dev.nix + ./passwords.nix + ]; + }; + server = { ... }: { imports = [ ./default.nix ./git.nix ./vim.nix ]; }; } diff --git a/home/vim-dev.nix b/home/vim-dev.nix new file mode 100644 index 0000000..4be71c4 --- /dev/null +++ b/home/vim-dev.nix @@ -0,0 +1,17 @@ +{ pkgs, ... }: { + programs.neovim.plugins = with pkgs.vimPlugins; [ + # More fancy shit + nvim-treesitter + # Language stuff + nvim-lspconfig + trouble-nvim + vim-nix + rust-vim + vim-go + ]; + programs.neovim.extraConfig = '' + lua <