From 540e5d6861d11feecfa2c97122551b45d7380ff1 Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 31 Jan 2023 19:03:16 +0100 Subject: [PATCH 01/20] Deprecate gbam in favor of gbda --- zshrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zshrc b/zshrc index b9c052b..f95f40d 100644 --- a/zshrc +++ b/zshrc @@ -52,7 +52,7 @@ alias grb="git rebase" alias gdc="git diff --cached" alias gst="git stash" alias git-remote-cleanup="git remote prune origin" -alias gbam="git branch --merged master | grep -v master | xargs git branch -d" +alias gbam="echo 'Use gbda from oh my zsh git plugin instead'" alias gpn="git push --no-verify" alias sagi="sudo apt-get install" From df92f22ca811ffd52c35b6245b6babc9d849790a Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 2 May 2023 17:04:27 +0200 Subject: [PATCH 02/20] Start with neovim config by defining leader --- nvim/init.lua | 1 + nvim/lua/core/keymaps.lua | 2 ++ 2 files changed, 3 insertions(+) create mode 100644 nvim/init.lua create mode 100644 nvim/lua/core/keymaps.lua diff --git a/nvim/init.lua b/nvim/init.lua new file mode 100644 index 0000000..d2d4eb1 --- /dev/null +++ b/nvim/init.lua @@ -0,0 +1 @@ +require("core.keymaps") diff --git a/nvim/lua/core/keymaps.lua b/nvim/lua/core/keymaps.lua new file mode 100644 index 0000000..645891a --- /dev/null +++ b/nvim/lua/core/keymaps.lua @@ -0,0 +1,2 @@ +vim.g.mapleader = 'ö' +vim.g.maplocalleader = 'ö' From 3e112a75ac63432f2e0f60795b7a5224b828731c Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 2 May 2023 17:29:30 +0200 Subject: [PATCH 03/20] Add some plugins using packer.nvim --- nvim/init.lua | 1 + nvim/lua/core/plugins.lua | 30 ++++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 nvim/lua/core/plugins.lua diff --git a/nvim/init.lua b/nvim/init.lua index d2d4eb1..a82d1b1 100644 --- a/nvim/init.lua +++ b/nvim/init.lua @@ -1 +1,2 @@ require("core.keymaps") +require("core.plugins") diff --git a/nvim/lua/core/plugins.lua b/nvim/lua/core/plugins.lua new file mode 100644 index 0000000..5ab8990 --- /dev/null +++ b/nvim/lua/core/plugins.lua @@ -0,0 +1,30 @@ +local ensure_packer = function() + local fn = vim.fn + local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim' + if fn.empty(fn.glob(install_path)) > 0 then + fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path}) + vim.cmd [[packadd packer.nvim]] + return true + end + return false +end + +local packer_bootstrap = ensure_packer() + +return require('packer').startup(function(use) + use 'wbthomason/packer.nvim' + use 'ellisonleao/gruvbox.nvim' + use 'nvim-tree/nvim-tree.lua' + use 'nvim-tree/nvim-web-devicons' + use 'nvim-lualine/lualine.nvim' + use { + 'nvim-telescope/telescope.nvim', tag = '0.1.1', + requires = { {'nvim-lua/plenary.nvim'} } + } + + -- Automatically set up your configuration after cloning packer.nvim + -- Put this at the end after all plugins + if packer_bootstrap then + require('packer').sync() + end +end) From 52c2251ff37b7b2f51d208994560c673e3ea12f1 Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 2 May 2023 17:35:00 +0200 Subject: [PATCH 04/20] Ignore plugins directory --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index ac91f76..ff24380 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ vim/.netrwhist vim/spell + +nvim/plugin From acc3168f1f538b17cdb533a64d3b65f857b105f3 Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 2 May 2023 17:35:13 +0200 Subject: [PATCH 05/20] Add creation of symbolic link to nvim config --- install.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/install.sh b/install.sh index 1f94847..a9236f3 100755 --- a/install.sh +++ b/install.sh @@ -22,6 +22,7 @@ $(create-alias zshrc ~/.zshrc) $(create-alias tmux.conf ~/.tmux.conf) $(create-alias gitconfig ~/.gitconfig) $(create-alias gitignore ~/.gitignore) +$(create-alias nvim ~/.config/nvim) $(create-alias vscode-settings.json ~/.config/Code/User/settings.json) $(create-alias vscode-keybindings.json ~/.config/Code/User/keybindings.json) $(create-alias vscode-snippets ~/.config/Code/User/snippets) From 99ce06ecfda3a8bcbb91371ea8df23406bc0048c Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 2 May 2023 17:35:44 +0200 Subject: [PATCH 06/20] Add basic config for telescope --- nvim/init.lua | 1 + nvim/lua/plugin_config/init.lua | 1 + nvim/lua/plugin_config/telescope.lua | 6 ++++++ 3 files changed, 8 insertions(+) create mode 100644 nvim/lua/plugin_config/init.lua create mode 100644 nvim/lua/plugin_config/telescope.lua diff --git a/nvim/init.lua b/nvim/init.lua index a82d1b1..5307a4c 100644 --- a/nvim/init.lua +++ b/nvim/init.lua @@ -1,2 +1,3 @@ require("core.keymaps") require("core.plugins") +require("plugin_config") diff --git a/nvim/lua/plugin_config/init.lua b/nvim/lua/plugin_config/init.lua new file mode 100644 index 0000000..4564f76 --- /dev/null +++ b/nvim/lua/plugin_config/init.lua @@ -0,0 +1 @@ +require("plugin_config.telescope") diff --git a/nvim/lua/plugin_config/telescope.lua b/nvim/lua/plugin_config/telescope.lua new file mode 100644 index 0000000..db35c0c --- /dev/null +++ b/nvim/lua/plugin_config/telescope.lua @@ -0,0 +1,6 @@ +local builtin = require('telescope.builtin') +vim.keymap.set('n', 'p', builtin.find_files, {}) +vim.keymap.set('n', '', builtin.git_files, {}) +vim.keymap.set('n', 'f', function() + builtin.grep_string({ search = vim.fn.input("Grep > ") }); +end) From bc86b0be015ebe793e898b4f2a446b5a6b2bd79e Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 2 May 2023 17:42:03 +0200 Subject: [PATCH 07/20] Setup gruvbox as colorscheme --- nvim/lua/plugin_config/colorscheme.lua | 1 + nvim/lua/plugin_config/init.lua | 1 + 2 files changed, 2 insertions(+) create mode 100644 nvim/lua/plugin_config/colorscheme.lua diff --git a/nvim/lua/plugin_config/colorscheme.lua b/nvim/lua/plugin_config/colorscheme.lua new file mode 100644 index 0000000..869cc44 --- /dev/null +++ b/nvim/lua/plugin_config/colorscheme.lua @@ -0,0 +1 @@ +vim.cmd([[colorscheme gruvbox]]) diff --git a/nvim/lua/plugin_config/init.lua b/nvim/lua/plugin_config/init.lua index 4564f76..b17d27b 100644 --- a/nvim/lua/plugin_config/init.lua +++ b/nvim/lua/plugin_config/init.lua @@ -1 +1,2 @@ require("plugin_config.telescope") +require("plugin_config.colorscheme") From 9aa4e57e73e8dc335c66e8584284b42e55e0c7aa Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 2 May 2023 17:52:36 +0200 Subject: [PATCH 08/20] Install treesitter --- nvim/lua/core/plugins.lua | 1 + nvim/lua/plugin_config/init.lua | 1 + nvim/lua/plugin_config/treesitter.lua | 21 +++++++++++++++++++++ 3 files changed, 23 insertions(+) create mode 100644 nvim/lua/plugin_config/treesitter.lua diff --git a/nvim/lua/core/plugins.lua b/nvim/lua/core/plugins.lua index 5ab8990..47f7c2b 100644 --- a/nvim/lua/core/plugins.lua +++ b/nvim/lua/core/plugins.lua @@ -21,6 +21,7 @@ return require('packer').startup(function(use) 'nvim-telescope/telescope.nvim', tag = '0.1.1', requires = { {'nvim-lua/plenary.nvim'} } } + use('nvim-treesitter/nvim-treesitter', { run = ':TSUpdate' }) -- Automatically set up your configuration after cloning packer.nvim -- Put this at the end after all plugins diff --git a/nvim/lua/plugin_config/init.lua b/nvim/lua/plugin_config/init.lua index b17d27b..60107f7 100644 --- a/nvim/lua/plugin_config/init.lua +++ b/nvim/lua/plugin_config/init.lua @@ -1,2 +1,3 @@ require("plugin_config.telescope") require("plugin_config.colorscheme") +require("plugin_config.treesitter") diff --git a/nvim/lua/plugin_config/treesitter.lua b/nvim/lua/plugin_config/treesitter.lua new file mode 100644 index 0000000..cafd9eb --- /dev/null +++ b/nvim/lua/plugin_config/treesitter.lua @@ -0,0 +1,21 @@ +require'nvim-treesitter.configs'.setup { + -- A list of parser names, or "all" (the five listed parsers should always be installed) + ensure_installed = { "c", "lua", "vim", "vimdoc", "query", "help", "javascript", "typescript" }, + + -- Install parsers synchronously (only applied to `ensure_installed`) + sync_install = false, + + -- Automatically install missing parsers when entering buffer + -- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally + auto_install = true, + + highlight = { + enable = true, + + -- Setting this to true will run `:h syntax` and tree-sitter at the same time. + -- Set this to `true` if you depend on 'syntax' being enabled (like for indentation). + -- Using this option may slow down your editor, and you may see some duplicate highlights. + -- Instead of true it can also be a list of languages + additional_vim_regex_highlighting = false, + }, +} From e2d41b4356f15faecba0fb904a3c8baf407491c7 Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 2 May 2023 18:13:00 +0200 Subject: [PATCH 09/20] Move plugin config into after folder which loads automatically Also fix wrong parser help, which does not exist --- nvim/{lua/plugin_config => after/plugin}/colorscheme.lua | 0 nvim/{lua/plugin_config => after/plugin}/telescope.lua | 0 nvim/{lua/plugin_config => after/plugin}/treesitter.lua | 2 +- nvim/init.lua | 1 - nvim/lua/plugin_config/init.lua | 3 --- 5 files changed, 1 insertion(+), 5 deletions(-) rename nvim/{lua/plugin_config => after/plugin}/colorscheme.lua (100%) rename nvim/{lua/plugin_config => after/plugin}/telescope.lua (100%) rename nvim/{lua/plugin_config => after/plugin}/treesitter.lua (89%) delete mode 100644 nvim/lua/plugin_config/init.lua diff --git a/nvim/lua/plugin_config/colorscheme.lua b/nvim/after/plugin/colorscheme.lua similarity index 100% rename from nvim/lua/plugin_config/colorscheme.lua rename to nvim/after/plugin/colorscheme.lua diff --git a/nvim/lua/plugin_config/telescope.lua b/nvim/after/plugin/telescope.lua similarity index 100% rename from nvim/lua/plugin_config/telescope.lua rename to nvim/after/plugin/telescope.lua diff --git a/nvim/lua/plugin_config/treesitter.lua b/nvim/after/plugin/treesitter.lua similarity index 89% rename from nvim/lua/plugin_config/treesitter.lua rename to nvim/after/plugin/treesitter.lua index cafd9eb..b239877 100644 --- a/nvim/lua/plugin_config/treesitter.lua +++ b/nvim/after/plugin/treesitter.lua @@ -1,6 +1,6 @@ require'nvim-treesitter.configs'.setup { -- A list of parser names, or "all" (the five listed parsers should always be installed) - ensure_installed = { "c", "lua", "vim", "vimdoc", "query", "help", "javascript", "typescript" }, + ensure_installed = { "c", "lua", "vim", "vimdoc", "query", "javascript", "typescript" }, -- Install parsers synchronously (only applied to `ensure_installed`) sync_install = false, diff --git a/nvim/init.lua b/nvim/init.lua index 5307a4c..a82d1b1 100644 --- a/nvim/init.lua +++ b/nvim/init.lua @@ -1,3 +1,2 @@ require("core.keymaps") require("core.plugins") -require("plugin_config") diff --git a/nvim/lua/plugin_config/init.lua b/nvim/lua/plugin_config/init.lua deleted file mode 100644 index 60107f7..0000000 --- a/nvim/lua/plugin_config/init.lua +++ /dev/null @@ -1,3 +0,0 @@ -require("plugin_config.telescope") -require("plugin_config.colorscheme") -require("plugin_config.treesitter") From 9603f668249b276111d13031b47ac275ecd6cf23 Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 2 May 2023 18:29:42 +0200 Subject: [PATCH 10/20] Configure lualine --- nvim/after/plugin/lualine.lua | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 nvim/after/plugin/lualine.lua diff --git a/nvim/after/plugin/lualine.lua b/nvim/after/plugin/lualine.lua new file mode 100644 index 0000000..92d9172 --- /dev/null +++ b/nvim/after/plugin/lualine.lua @@ -0,0 +1,14 @@ +require('lualine').setup { + options = { + icons_enabled = true, + theme = 'dracula', + }, + sections = { + lualine_a = { + { + 'filename', + path = 1, + } + } + } +} From c32e727616483989c198e771551a03bb4826dbd2 Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 2 May 2023 18:33:32 +0200 Subject: [PATCH 11/20] Configure nvim-tree --- nvim/after/plugin/nvim-tree.lua | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 nvim/after/plugin/nvim-tree.lua diff --git a/nvim/after/plugin/nvim-tree.lua b/nvim/after/plugin/nvim-tree.lua new file mode 100644 index 0000000..9fddd4f --- /dev/null +++ b/nvim/after/plugin/nvim-tree.lua @@ -0,0 +1,11 @@ +# Disable netrw (standard vim file manager) +vim.g.loaded_netrw = 1 +vim.g.loaded_netrwPlugin = 1 + +require("nvim-tree").setup({ + view = { + adaptive_size = true + } +}) + +vim.keymap.set('n', '', ':NvimTreeFindFileToggle') From 8edc29900675241ccf707b8ccc64d88220b93d02 Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 2 May 2023 20:03:32 +0200 Subject: [PATCH 12/20] Install lsp-zero --- nvim/after/plugin/lsp.lua | 40 +++++++++++++++++++++++++++++++++++++++ nvim/lua/core/plugins.lua | 20 ++++++++++++++++++++ 2 files changed, 60 insertions(+) create mode 100644 nvim/after/plugin/lsp.lua diff --git a/nvim/after/plugin/lsp.lua b/nvim/after/plugin/lsp.lua new file mode 100644 index 0000000..ac6bdc7 --- /dev/null +++ b/nvim/after/plugin/lsp.lua @@ -0,0 +1,40 @@ +local lsp = require('lsp-zero').preset({ +}) + +lsp.on_attach(function(client, bufnr) + lsp.default_keymaps({buffer = bufnr}) +end) + +lsp.setup_servers({ + 'tsserver', + 'eslint', +}) + +-- Configure lua language server for neovim +require('lspconfig').lua_ls.setup(lsp.nvim_lua_ls()) + + +lsp.setup() + +local cmp = require('cmp') +local cmp_action = require('lsp-zero').cmp_action() +local cmp_select_opts = {behavior = cmp.SelectBehavior.Select} + + +cmp.setup({ + mapping = { + -- `Enter` key to confirm completion + [''] = cmp.mapping.confirm({select = false}), + + -- Navigate between completions + [''] = cmp.mapping.select_prev_item(cmp_select_opts), + [''] = cmp.mapping.select_next_item(cmp_select_opts), + + -- Ctrl+Space to trigger completion menu + [''] = cmp.mapping.complete(), + + -- Navigate between snippet placeholder + [''] = cmp_action.luasnip_jump_forward(), + [''] = cmp_action.luasnip_jump_backward(), + } +}) diff --git a/nvim/lua/core/plugins.lua b/nvim/lua/core/plugins.lua index 47f7c2b..05702cf 100644 --- a/nvim/lua/core/plugins.lua +++ b/nvim/lua/core/plugins.lua @@ -22,6 +22,26 @@ return require('packer').startup(function(use) requires = { {'nvim-lua/plenary.nvim'} } } use('nvim-treesitter/nvim-treesitter', { run = ':TSUpdate' }) + use { + 'VonHeikemen/lsp-zero.nvim', + branch = 'v2.x', + requires = { + -- LSP Support + {'neovim/nvim-lspconfig'}, -- Required + { -- Optional + 'williamboman/mason.nvim', + run = function() + pcall(vim.cmd, 'MasonUpdate') + end, + }, + {'williamboman/mason-lspconfig.nvim'}, -- Optional + + -- Autocompletion + {'hrsh7th/nvim-cmp'}, -- Required + {'hrsh7th/cmp-nvim-lsp'}, -- Required + {'L3MON4D3/LuaSnip'}, -- Required + } + } -- Automatically set up your configuration after cloning packer.nvim -- Put this at the end after all plugins From 05529dad89b8dd28435fe4ae67acd80ed24da9b4 Mon Sep 17 00:00:00 2001 From: christof Date: Wed, 3 May 2023 19:19:56 +0200 Subject: [PATCH 13/20] Configure tab completion --- nvim/after/plugin/lsp.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nvim/after/plugin/lsp.lua b/nvim/after/plugin/lsp.lua index ac6bdc7..b72116b 100644 --- a/nvim/after/plugin/lsp.lua +++ b/nvim/after/plugin/lsp.lua @@ -30,6 +30,9 @@ cmp.setup({ [''] = cmp.mapping.select_prev_item(cmp_select_opts), [''] = cmp.mapping.select_next_item(cmp_select_opts), + [''] = cmp_action.tab_complete(), + [''] = cmp_action.select_prev_or_fallback(), + -- Ctrl+Space to trigger completion menu [''] = cmp.mapping.complete(), From f49a9d18bf435e108382dc93db5330e9ba487bb6 Mon Sep 17 00:00:00 2001 From: christof Date: Wed, 3 May 2023 14:31:52 +0200 Subject: [PATCH 14/20] Add install script to install some nerdfonts Inconsolata wasn't selectable on the test system after installation. --- install-nerdfonts.sh | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100755 install-nerdfonts.sh diff --git a/install-nerdfonts.sh b/install-nerdfonts.sh new file mode 100755 index 0000000..b1d354f --- /dev/null +++ b/install-nerdfonts.sh @@ -0,0 +1,11 @@ +mkdir -p ~/.fonts +cd ~/.fonts +wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.0.0/RobotoMono.zip +wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.0.0/Inconsolata.zip +wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.0.0/FiraCode.zip + +unzip -o RobotoMono.zip +unzip -o Inconsolata.zip +unzip -o FiraCode.zip + +sudo fc-cache -vf ~/.fonts From e1319d2d859e7e23137b76c602c116346a03d717 Mon Sep 17 00:00:00 2001 From: christof Date: Thu, 4 May 2023 15:57:43 +0200 Subject: [PATCH 15/20] Use nvim as editor and don't specify credential helper --- gitconfig | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/gitconfig b/gitconfig index 04b8171..e95abab 100644 --- a/gitconfig +++ b/gitconfig @@ -5,7 +5,7 @@ branch = auto ui = auto [core] - editor = vim + editor = nvim attributesfile = ~/.gitattributes excludesfile = ~/.gitignore filemode = false @@ -24,8 +24,6 @@ command = ~/bin/git-imgdiff [push] default = simple -[credential] - helper = libsecret [pager] diff = diff-highlight | less show = diff-highlight | less From a3c5865517a3e7cead02e3ca1aa26d5e042e17ae Mon Sep 17 00:00:00 2001 From: christof Date: Tue, 9 May 2023 22:26:24 +0200 Subject: [PATCH 16/20] Overwrite some nvim settings (nearly like vim) --- nvim/init.lua | 1 + nvim/lua/core/set.lua | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 nvim/lua/core/set.lua diff --git a/nvim/init.lua b/nvim/init.lua index a82d1b1..a2af934 100644 --- a/nvim/init.lua +++ b/nvim/init.lua @@ -1,2 +1,3 @@ require("core.keymaps") require("core.plugins") +require("core.set") diff --git a/nvim/lua/core/set.lua b/nvim/lua/core/set.lua new file mode 100644 index 0000000..542ad66 --- /dev/null +++ b/nvim/lua/core/set.lua @@ -0,0 +1,25 @@ +vim.opt.number = true -- show line numbers + +vim.opt.tabstop = 2 -- a tab is two spaces +vim.opt.softtabstop = 2 -- a tab is two spaces in insert +vim.opt.shiftwidth = 2 -- an autoindent (with <<) is two spaces +vim.opt.expandtab = true -- use spaces, not tabs +vim.opt.smartindent = true -- use smart autoindent + +vim.opt.wrap = false -- don't wrap lines + +vim.opt.swapfile = false -- don't use a swapfile +vim.opt.backup = false -- don't use a backup +vim.opt.undofile = true -- use an undo file instead + +vim.opt.ignorecase = true -- ignore casing in searches +vim.opt.smartcase = true -- enable casing in searches if there is an upper case letter in the search + +vim.opt.list = true -- show invisible characters (tabs and trailing spaces) + +vim.opt.termguicolors = true -- enables 24-bit RGB colors + +vim.opt.scrolloff = 4 -- always show 4 lines above and below +vim.opt.sidescrolloff = 4 -- always show 4 columns left and right + +vim.opt.autowrite = true -- write when buffers are changed From cf5592754f43d41a452fe5541173777ef8c42af1 Mon Sep 17 00:00:00 2001 From: christof Date: Wed, 17 May 2023 21:44:48 +0200 Subject: [PATCH 17/20] Add nvim-comment plugin --- nvim/after/plugin/nvim-comment.lua | 1 + nvim/lua/core/plugins.lua | 1 + 2 files changed, 2 insertions(+) create mode 100644 nvim/after/plugin/nvim-comment.lua diff --git a/nvim/after/plugin/nvim-comment.lua b/nvim/after/plugin/nvim-comment.lua new file mode 100644 index 0000000..e1f1358 --- /dev/null +++ b/nvim/after/plugin/nvim-comment.lua @@ -0,0 +1 @@ +require('nvim_comment').setup() diff --git a/nvim/lua/core/plugins.lua b/nvim/lua/core/plugins.lua index 05702cf..96f6538 100644 --- a/nvim/lua/core/plugins.lua +++ b/nvim/lua/core/plugins.lua @@ -22,6 +22,7 @@ return require('packer').startup(function(use) requires = { {'nvim-lua/plenary.nvim'} } } use('nvim-treesitter/nvim-treesitter', { run = ':TSUpdate' }) + use('terrortylor/nvim-comment') use { 'VonHeikemen/lsp-zero.nvim', branch = 'v2.x', From c639711d42e7f493072c98c829e2125881ab6e1e Mon Sep 17 00:00:00 2001 From: christof Date: Wed, 17 May 2023 22:02:21 +0200 Subject: [PATCH 18/20] Add nvim-surround plugin --- nvim/lua/core/plugins.lua | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/nvim/lua/core/plugins.lua b/nvim/lua/core/plugins.lua index 96f6538..de795b7 100644 --- a/nvim/lua/core/plugins.lua +++ b/nvim/lua/core/plugins.lua @@ -23,6 +23,13 @@ return require('packer').startup(function(use) } use('nvim-treesitter/nvim-treesitter', { run = ':TSUpdate' }) use('terrortylor/nvim-comment') + use({ + "kylechui/nvim-surround", + tag = "*", -- Use for stability; omit to use `main` branch for the latest features + config = function() + require("nvim-surround").setup({}) + end + }) use { 'VonHeikemen/lsp-zero.nvim', branch = 'v2.x', From 2bc234b54349b63015224fee09825f69e836a717 Mon Sep 17 00:00:00 2001 From: christof Date: Wed, 17 May 2023 22:42:57 +0200 Subject: [PATCH 19/20] Add null-ls plugin for formatting, linting and completions --- nvim/after/plugin/null-ls.lua | 16 ++++++++++++++++ nvim/lua/core/plugins.lua | 4 +++- 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 nvim/after/plugin/null-ls.lua diff --git a/nvim/after/plugin/null-ls.lua b/nvim/after/plugin/null-ls.lua new file mode 100644 index 0000000..1bd6270 --- /dev/null +++ b/nvim/after/plugin/null-ls.lua @@ -0,0 +1,16 @@ +local null_ls = require("null-ls") + +local formatting = null_ls.builtins.formatting +local diagnostics = null_ls.builtins.diagnostics +local completion = null_ls.builtins.completion + +null_ls.setup({ + sources = { + formatting.stylua, + formatting.prettier, + diagnostics.eslint, + completion.spell, + }, +}) + +vim.keymap.set('n', 'k', function() vim.lsp.buf.format() end) diff --git a/nvim/lua/core/plugins.lua b/nvim/lua/core/plugins.lua index de795b7..f59b6a1 100644 --- a/nvim/lua/core/plugins.lua +++ b/nvim/lua/core/plugins.lua @@ -28,7 +28,8 @@ return require('packer').startup(function(use) tag = "*", -- Use for stability; omit to use `main` branch for the latest features config = function() require("nvim-surround").setup({}) - end + end, + requires = { "nvim-lua/plenary.nvim" }, }) use { 'VonHeikemen/lsp-zero.nvim', @@ -50,6 +51,7 @@ return require('packer').startup(function(use) {'L3MON4D3/LuaSnip'}, -- Required } } + use 'jose-elias-alvarez/null-ls.nvim' -- Automatically set up your configuration after cloning packer.nvim -- Put this at the end after all plugins From 463ed57d139e82aa3485b1654883e587e60fa115 Mon Sep 17 00:00:00 2001 From: christof Date: Wed, 17 May 2023 22:44:11 +0200 Subject: [PATCH 20/20] Add stylua config --- nvim/stylua.toml | 1 + 1 file changed, 1 insertion(+) create mode 100644 nvim/stylua.toml diff --git a/nvim/stylua.toml b/nvim/stylua.toml new file mode 100644 index 0000000..394e884 --- /dev/null +++ b/nvim/stylua.toml @@ -0,0 +1 @@ +indent_type = "Spaces"