From 5d1565283542dc9261bc133b82d8795ff33de901 Mon Sep 17 00:00:00 2001 From: Steffen Rademacker Date: Wed, 26 Apr 2023 18:34:21 +0200 Subject: [PATCH] Hooray, lazy.nvim --- .gitignore | 5 +- etc/php/8.2/conf.d/imagick.ini | 2 +- install/4_office.sh | 2 +- nvim/lua/config/autopairs.lua | 1 - nvim/lua/config/colorizer.lua | 7 -- nvim/lua/config/comment.lua | 1 - nvim/lua/config/floaterm.lua | 4 +- nvim/lua/config/gitsigns.lua | 1 - nvim/lua/config/leap.lua | 2 - nvim/lua/config/lualine.lua | 5 - nvim/lua/config/neorg.lua | 18 --- nvim/lua/config/notify.lua | 1 - nvim/lua/config/surround.lua | 3 - nvim/lua/config/treesitter.lua | 1 - nvim/lua/config/trouble.lua | 1 - nvim/lua/mappings.lua | 5 - nvim/lua/options.lua | 1 - nvim/lua/plugins.lua | 211 +++++++++++++++------------------ zsh/aliases.zsh | 2 +- 19 files changed, 100 insertions(+), 173 deletions(-) delete mode 100644 nvim/lua/config/autopairs.lua delete mode 100644 nvim/lua/config/colorizer.lua delete mode 100644 nvim/lua/config/comment.lua delete mode 100644 nvim/lua/config/gitsigns.lua delete mode 100644 nvim/lua/config/leap.lua delete mode 100644 nvim/lua/config/lualine.lua delete mode 100644 nvim/lua/config/neorg.lua delete mode 100644 nvim/lua/config/notify.lua delete mode 100644 nvim/lua/config/surround.lua delete mode 100644 nvim/lua/config/trouble.lua diff --git a/.gitignore b/.gitignore index 2b2ea76a..ee8361c0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,4 @@ -karabiner/automatic_backups/* -lazygit/state.yml -nvim/.netrwhist -nvim/plugin/* +nvim/lazy-lock.json office/mutt/cache/* office/mutt/tmp/* office/vdirsyncer/status/* diff --git a/etc/php/8.2/conf.d/imagick.ini b/etc/php/8.2/conf.d/imagick.ini index 7c56623f..97bda0d2 100644 --- a/etc/php/8.2/conf.d/imagick.ini +++ b/etc/php/8.2/conf.d/imagick.ini @@ -1 +1 @@ -extension="/opt/homebrew/Cellar/php/8.2.4/pecl/20220829/imagick.so" +extension="/opt/homebrew/Cellar/php/8.2.5/pecl/20220829/imagick.so" diff --git a/install/4_office.sh b/install/4_office.sh index df4b9571..9eafed1a 100755 --- a/install/4_office.sh +++ b/install/4_office.sh @@ -28,5 +28,5 @@ ln -s ~/dotfiles/office/msmtprc ~/.msmtprc # prepend imap-ones with http:// and smtp-ones with smtp://), then: mbsync -a -mu init -m ~/Mail +mu init -m /Users/webgefrickel/Mail mu index diff --git a/nvim/lua/config/autopairs.lua b/nvim/lua/config/autopairs.lua deleted file mode 100644 index f96cb3ec..00000000 --- a/nvim/lua/config/autopairs.lua +++ /dev/null @@ -1 +0,0 @@ -require('nvim-autopairs').setup({}) diff --git a/nvim/lua/config/colorizer.lua b/nvim/lua/config/colorizer.lua deleted file mode 100644 index 257c4d3d..00000000 --- a/nvim/lua/config/colorizer.lua +++ /dev/null @@ -1,7 +0,0 @@ -require('colorizer').setup({ - 'css'; - 'scss'; - 'json'; - 'json5'; - 'javascript'; -}, { css = true }) diff --git a/nvim/lua/config/comment.lua b/nvim/lua/config/comment.lua deleted file mode 100644 index 50603199..00000000 --- a/nvim/lua/config/comment.lua +++ /dev/null @@ -1 +0,0 @@ -require('Comment').setup({}) diff --git a/nvim/lua/config/floaterm.lua b/nvim/lua/config/floaterm.lua index f95625f3..bca27c4b 100644 --- a/nvim/lua/config/floaterm.lua +++ b/nvim/lua/config/floaterm.lua @@ -1,4 +1,3 @@ -local cmd = vim.cmd local g = vim.g g.floaterm_width = 0.98 @@ -8,4 +7,5 @@ g.floaterm_autoclose = 1 g.floaterm_opener = 'edit' g.floaterm_borderchars = '─│─│╭╮╯╰' g.floaterm_title = '' -cmd("au VimEnter * highlight FloatermBorder guibg='#282828' guifg='#fbf1c7'") + +vim.cmd("au VimEnter * highlight FloatermBorder guibg='#282828' guifg='#fbf1c7'") diff --git a/nvim/lua/config/gitsigns.lua b/nvim/lua/config/gitsigns.lua deleted file mode 100644 index 18405684..00000000 --- a/nvim/lua/config/gitsigns.lua +++ /dev/null @@ -1 +0,0 @@ -require('gitsigns').setup({}) diff --git a/nvim/lua/config/leap.lua b/nvim/lua/config/leap.lua deleted file mode 100644 index 17defe0a..00000000 --- a/nvim/lua/config/leap.lua +++ /dev/null @@ -1,2 +0,0 @@ --- require('leap').setup({}) -require('leap').set_default_keymaps() diff --git a/nvim/lua/config/lualine.lua b/nvim/lua/config/lualine.lua deleted file mode 100644 index 08fe8b15..00000000 --- a/nvim/lua/config/lualine.lua +++ /dev/null @@ -1,5 +0,0 @@ -require('lualine').setup({ - options = { - theme = 'gruvbox', - }, -}) diff --git a/nvim/lua/config/neorg.lua b/nvim/lua/config/neorg.lua deleted file mode 100644 index 5a25c30a..00000000 --- a/nvim/lua/config/neorg.lua +++ /dev/null @@ -1,18 +0,0 @@ -require('neorg').setup({ - load = { - ["core.defaults"] = {}, - ["core.norg.concealer"] = {}, - ["core.norg.completion"] = { - config = { - engine = "nvim-cmp", - }, - }, - ["core.norg.dirman"] = { - config = { - workspaces = { - default = "~/Notes", - }, - }, - }, - }, -}) diff --git a/nvim/lua/config/notify.lua b/nvim/lua/config/notify.lua deleted file mode 100644 index 1b473e4e..00000000 --- a/nvim/lua/config/notify.lua +++ /dev/null @@ -1 +0,0 @@ -vim.notify = require('notify') diff --git a/nvim/lua/config/surround.lua b/nvim/lua/config/surround.lua deleted file mode 100644 index 17c885ba..00000000 --- a/nvim/lua/config/surround.lua +++ /dev/null @@ -1,3 +0,0 @@ -require('surround').setup({ - mappings_style = 'surround' -}) diff --git a/nvim/lua/config/treesitter.lua b/nvim/lua/config/treesitter.lua index 34170721..fcc188fe 100644 --- a/nvim/lua/config/treesitter.lua +++ b/nvim/lua/config/treesitter.lua @@ -12,7 +12,6 @@ require('nvim-treesitter.configs').setup({ 'jsonc', 'lua', 'markdown', - -- 'norg', 'php', 'python', 'regex', diff --git a/nvim/lua/config/trouble.lua b/nvim/lua/config/trouble.lua deleted file mode 100644 index 4f4a7bb1..00000000 --- a/nvim/lua/config/trouble.lua +++ /dev/null @@ -1 +0,0 @@ -require('trouble').setup({}) diff --git a/nvim/lua/mappings.lua b/nvim/lua/mappings.lua index 0710669c..b773ab4f 100644 --- a/nvim/lua/mappings.lua +++ b/nvim/lua/mappings.lua @@ -1,8 +1,3 @@ --- set the leader key to space -vim.api.nvim_set_keymap('n', '', '', {}) -vim.g.mapleader = ' ' -vim.g.maplocalleader = ' ' - -- helper function for easier mappings local map = function(mode, lhs, rhs, opts) return vim.api.nvim_set_keymap(mode, lhs, rhs, vim.tbl_extend('keep', opts or {}, { diff --git a/nvim/lua/options.lua b/nvim/lua/options.lua index 6599ff57..c46404f6 100644 --- a/nvim/lua/options.lua +++ b/nvim/lua/options.lua @@ -38,7 +38,6 @@ set.showbreak = '\\\\\\\\' set.showmatch = true set.sidescroll = 10 set.sidescrolloff = 5 -set.signcolumn = 'number' set.smartcase = true set.splitright = true set.splitbelow = true diff --git a/nvim/lua/plugins.lua b/nvim/lua/plugins.lua index b6b5f84c..17b13cb5 100644 --- a/nvim/lua/plugins.lua +++ b/nvim/lua/plugins.lua @@ -1,54 +1,69 @@ -local fn = vim.fn -local install_path = fn.stdpath('data') .. '/site/pack/packer/start/packer.nvim' - -function get_config(name) - return string.format('require("config/%s")', name) -end - --- bootstrapping / downloading packer. run :PackerSync afterwards if sth. fails -if fn.empty(fn.glob(install_path)) > 0 then - packer_bootstrap = fn.system({ - 'git', 'clone', '--depth', '1', - 'https://github.com/wbthomason/packer.nvim', - install_path +-- using folke/lazy.nvim as package manager +local lazypath = vim.fn.stdpath('data') .. '/lazy/lazy.nvim' + +if not vim.loop.fs_stat(lazypath) then + vim.fn.system({ + 'git', 'clone', '--filter=blob:none', + 'https://github.com/folke/lazy.nvim.git', '--branch=stable', + lazypath, }) end -return require('packer').startup(function(use) - -- packer for plugin management itself - use 'wbthomason/packer.nvim' +vim.opt.rtp:prepend(lazypath) - -- Treesitter for nicer syntax-highlighting - use { - 'nvim-treesitter/nvim-treesitter', - config = get_config('treesitter'), - run = ':TSUpdate', - } +-- Make sure to set `mapleader` before lazy so your mappings are correct +vim.api.nvim_set_keymap('n', '', '', {}) +vim.g.mapleader = ' ' +vim.g.maplocalleader = ' ' + +require('lazy').setup({ + -- The colorscheme of choice + { 'ellisonleao/gruvbox.nvim', priority = 1000 }, + + -- plugins that need no further config/dependencies + -- oldschool, non-lua plugins + 'AndrewRadev/splitjoin.vim', + 'christoomey/vim-tmux-navigator', + 'editorconfig/editorconfig-vim', + 'tpope/vim-ragtag', + 'tpope/vim-repeat', + 'wincent/terminus', + + -- lua plugins using just the plain default config + { 'numToStr/Comment.nvim', config = true }, + { 'windwp/nvim-autopairs', config = true }, + { 'lewis6991/gitsigns.nvim', config = true }, - -- textobjects, surround, for stuff like cs", cib etc. - use 'nvim-treesitter/nvim-treesitter-textobjects' - use { + { -- Treesitter for nicer syntax-highlighting + 'nvim-treesitter/nvim-treesitter', + build = ':TSUpdate', + init = function() require('config/treesitter') end, + }, + { + 'nvim-treesitter/nvim-treesitter-textobjects', + dependencies = { 'nvim-treesitter/nvim-treesitter' }, + }, + + { -- textobjects, surround, for stuff like cs", cib etc. 'ur4ltz/surround.nvim', - config = get_config('surround'), - } + opts = { mappings_style = 'surround' }, + }, - -- lsp and null-ls for diagnostics and formatting (eslint_d, stylelint etc.) - -- remember to install all those tools in the cli, see ../../install/3_vimux.sh - use { + { -- lsp and null-ls for diagnostics and formatting (eslint_d, stylelint etc.) + -- remember to install all those tools in the cli, see ../../install/3_vimux.sh 'neovim/nvim-lspconfig', - config = get_config('lspconfig'), - } - use { + init = function() require('config/lspconfig') end, + }, + + { 'jose-elias-alvarez/null-ls.nvim', - config = get_config('null-ls'), - requires = { 'nvim-lua/plenary.nvim' }, - } + dependencies = { 'nvim-lua/plenary.nvim' }, + init = function() require('config/null-ls') end, + }, - -- autocompletion and snippets - use { + { -- autocompletion and snippets 'hrsh7th/nvim-cmp', - config = get_config('cmp'), - requires = { + dependencies = { 'andersevenrud/cmp-tmux', 'hrsh7th/cmp-buffer', 'hrsh7th/cmp-cmdline', @@ -57,100 +72,62 @@ return require('packer').startup(function(use) 'hrsh7th/cmp-path', 'hrsh7th/cmp-vsnip', }, - } - use { + init = function() require('config/cmp') end, + }, + { 'hrsh7th/vim-vsnip', - config = get_config('vsnip'), - } - use { + init = function() require('config/vsnip') end, + }, + { 'rafamadriz/friendly-snippets', - requires = { + dependencies = { 'hrsh7th/vim-vsnip', }, - } + }, - -- floating-terminal integration for nnn, lazygit etc. - use { + { -- floating-terminal integration for nnn, lazygit etc. 'voldikss/vim-floaterm', - config = get_config('floaterm'), - } + init = function() require('config/floaterm') end, + }, - -- fzf integration - use { + { -- fzf integration 'ibhagwan/fzf-lua', - config = get_config('fzf'), - requires = { 'kyazdani42/nvim-web-devicons' }, - } - - -- autopairs for sensible () "" '' - use { - 'windwp/nvim-autopairs', - config = get_config('autopairs'), - } - - -- colorizer for nice css-colors - use { + dependencies = { 'kyazdani42/nvim-web-devicons' }, + init = function() require('config/fzf') end, + }, + + { -- colorizer for nice css-colors 'norcalli/nvim-colorizer.lua', - config = get_config('colorizer'), event = 'BufReadPre', - } - - -- commenting stuff out - use { - 'numToStr/Comment.nvim', - config = get_config('comment'), - } + opts = { + css = { css = true }, + scss = { css = true }, + json = { css = true}, + json5 = { css = true, }, + javascript = { css = true }, + }, + }, - -- nice status line - use { + { -- nice status line 'nvim-lualine/lualine.nvim', - config = get_config('lualine'), - requires = { 'kyazdani42/nvim-web-devicons' }, + dependencies = { 'kyazdani42/nvim-web-devicons' }, event = 'VimEnter', - } + opts = { options = { theme = 'gruvbox' } }, + }, - -- leap for stupidly nice navigation - use { + { -- leap for stupidly nice navigation 'ggandor/leap.nvim', - config = get_config('leap'), event = 'BufReadPre', - } - - -- finally: the colorscheme of choice - use { - 'ellisonleao/gruvbox.nvim', - requires = { 'rktjmp/lush.nvim' }, - } + init = function() require('leap').set_default_keymaps() end, + }, -- Evaluating... - use { + { 'rcarriga/nvim-notify', - config = get_config('notify'), - } - use { + init = function() vim.notify = require('notify') end, + }, + { 'folke/trouble.nvim', - config = get_config('trouble'), - requires = { 'kyazdani42/nvim-web-devicons' }, - } - use { - 'lewis6991/gitsigns.nvim', - config = get_config('gitsigns'), - } - -- use { - -- 'nvim-neorg/neorg', - -- config = get_config('neorg'), - -- requires = { 'nvim-lua/plenary.nvim' }, - -- } - - -- oldschool vimscript plugins that still provide a lot of value - use 'christoomey/vim-tmux-navigator' - use 'editorconfig/editorconfig-vim' - use 'tpope/vim-repeat' - use 'tpope/vim-ragtag' - use 'wincent/terminus' - - -- automatically set up configuration after cloning packer.nvim - if packer_bootstrap then - require('packer').sync() - end -end) + dependencies = { 'kyazdani42/nvim-web-devicons' }, + }, +}) diff --git a/zsh/aliases.zsh b/zsh/aliases.zsh index f5dc8911..accf97de 100644 --- a/zsh/aliases.zsh +++ b/zsh/aliases.zsh @@ -30,7 +30,7 @@ alias vdiff='$EDITOR -d' alias vi=$EDITOR alias vim=$EDITOR alias vimdiff='$EDITOR -d' -alias vimup='nvim +PackerSync +TSUpdate' +alias vimup='nvim +TSUpdate' alias yb='yarn build' alias yp='yarn lint && yarn production' alias yre='rm -f yarn.lock && rm -rf node_modules && yarn'