From 5a67715d972ac1151a632dd30880a31bf14311c0 Mon Sep 17 00:00:00 2001 From: Nicholas Noll Date: Wed, 20 Oct 2021 09:00:16 -0700 Subject: feat(nvim): added diffview integration --- .config/nvim/init.lua | 2 +- .config/nvim/lua/code.lua | 63 +++++++++++++++++++++++++++++++++++++++ .config/nvim/lua/lsp.lua | 57 ----------------------------------- .config/nvim/pack/vendor/packages | 2 ++ .config/qutebrowser/config.py | 2 +- 5 files changed, 67 insertions(+), 59 deletions(-) create mode 100644 .config/nvim/lua/code.lua delete mode 100644 .config/nvim/lua/lsp.lua diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index 21eac01..a3b76bb 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -33,4 +33,4 @@ require("settings") require("theme") require("function") require("keybind") -require("lsp") +require("code") diff --git a/.config/nvim/lua/code.lua b/.config/nvim/lua/code.lua new file mode 100644 index 0000000..4b20290 --- /dev/null +++ b/.config/nvim/lua/code.lua @@ -0,0 +1,63 @@ +local lsp = require('lspconfig') +local git = require('neogit') +local gitdiff = require('diffview') +local gitsigns = require('gitsigns') + +-------------------------------------------------------------------------- +-- lsp + +local setup = function(client, buffer) + local function set_keymap(...) vim.api.nvim_buf_set_keymap(buffer, ...) end + local function set_option(...) vim.api.nvim_buf_set_option(buffer, ...) end + + set_option('omnifunc', 'v:lua.vim.lsp.omnifunc') + + local opts = { noremap=true, silent=true } + + set_keymap('n', 'gD', 'lua vim.lsp.buf.declaration()', opts) + set_keymap('n', 'gd', 'lua vim.lsp.buf.definition()', opts) + set_keymap('n', 'K', 'lua vim.lsp.buf.hover()', opts) + set_keymap('n', 'gi', 'lua vim.lsp.buf.implementation()', opts) + set_keymap('n', 'gr', 'lua vim.lsp.buf.references()', opts) + set_keymap('n', '[c', 'lua vim.lsp.diagnostic.goto_prev()', opts) + set_keymap('n', ']c', 'lua vim.lsp.diagnostic.goto_next()', opts) + + set_keymap('n', 'r', 'lua vim.lsp.buf.rename()', opts) +end + +local servers = { 'clangd', 'tsserver' } +for _, s in ipairs(servers) do + lsp[s].setup { + on_attach=setup, + flags = { + debounce_text_changes = 150, + } + } +end + +vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with( + vim.lsp.diagnostic.on_publish_diagnostics, { + virtual_text = false + } +) + +-------------------------------------------------------------------------- +-- neogit + +git.setup({}) + +-------------------------------------------------------------------------- +-- diffview + +gitdiff.setup({}) + +-------------------------------------------------------------------------- +-- gitsigns + +gitsigns.setup({ + keymaps = { + noremap = true, + ['n ]d'] = { expr = true, "&diff ? ']c' : 'lua require\"gitsigns.actions\".next_hunk()'"}, + ['n [d'] = { expr = true, "&diff ? '[c' : 'lua require\"gitsigns.actions\".prev_hunk()'"}, + } +}) diff --git a/.config/nvim/lua/lsp.lua b/.config/nvim/lua/lsp.lua deleted file mode 100644 index 1eb2e9c..0000000 --- a/.config/nvim/lua/lsp.lua +++ /dev/null @@ -1,57 +0,0 @@ -local lsp = require('lspconfig') -local git = require('neogit') -local gitsigns = require('gitsigns') - --------------------------------------------------------------------------- --- lsp - -local setup = function(client, buffer) - local function set_keymap(...) vim.api.nvim_buf_set_keymap(buffer, ...) end - local function set_option(...) vim.api.nvim_buf_set_option(buffer, ...) end - - set_option('omnifunc', 'v:lua.vim.lsp.omnifunc') - - local opts = { noremap=true, silent=true } - - set_keymap('n', 'gD', 'lua vim.lsp.buf.declaration()', opts) - set_keymap('n', 'gd', 'lua vim.lsp.buf.definition()', opts) - set_keymap('n', 'K', 'lua vim.lsp.buf.hover()', opts) - set_keymap('n', 'gi', 'lua vim.lsp.buf.implementation()', opts) - set_keymap('n', 'gr', 'lua vim.lsp.buf.references()', opts) - set_keymap('n', '[c', 'lua vim.lsp.diagnostic.goto_prev()', opts) - set_keymap('n', ']c', 'lua vim.lsp.diagnostic.goto_next()', opts) - - set_keymap('n', 'r', 'lua vim.lsp.buf.rename()', opts) -end - -local servers = { 'clangd', 'tsserver' } -for _, s in ipairs(servers) do - lsp[s].setup { - on_attach=setup, - flags = { - debounce_text_changes = 150, - } - } -end - -vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with( - vim.lsp.diagnostic.on_publish_diagnostics, { - virtual_text = false - } -) - --------------------------------------------------------------------------- --- neogit - -git.setup({}) - --------------------------------------------------------------------------- --- gitsigns - -gitsigns.setup({ - keymaps = { - noremap = true, - ['n ]d'] = { expr = true, "&diff ? ']c' : 'lua require\"gitsigns.actions\".next_hunk()'"}, - ['n [d'] = { expr = true, "&diff ? '[c' : 'lua require\"gitsigns.actions\".prev_hunk()'"}, - } -}) diff --git a/.config/nvim/pack/vendor/packages b/.config/nvim/pack/vendor/packages index 5b668a4..5b2d059 100644 --- a/.config/nvim/pack/vendor/packages +++ b/.config/nvim/pack/vendor/packages @@ -5,7 +5,9 @@ neovim/nvim-lspconfig nvim-neorg/neorg nvim-lua/plenary.nvim nvim-treesitter/nvim-treesitter + TimUntersberger/neogit +sindrets/diffview.nvim lewis6991/gitsigns.nvim junegunn/fzf.vim diff --git a/.config/qutebrowser/config.py b/.config/qutebrowser/config.py index 7728fb9..d8e0e66 100644 --- a/.config/qutebrowser/config.py +++ b/.config/qutebrowser/config.py @@ -340,7 +340,7 @@ c.colors.tabs.pinned.selected.odd.fg = c.colors.tabs.selected.odd.fg # ------------------------------------------------------------------------ # fonts -font = "14pt consolas" +font = "12pt consolas" # ------------------------------------------------------------------------ # fonts -- cgit v1.2.1