vim: move configs to after/plugin/*.lua -> less packer dependence

This commit is contained in:
Fernando Schauenburg 2022-10-04 23:40:53 +02:00
parent 89d7683edc
commit ca271dd50c
14 changed files with 195 additions and 269 deletions

View file

@ -0,0 +1,7 @@
require('indent_blankline').setup {
enabled = false,
}
-- show/hide indent guides
vim.keymap.set('n', '<leader>si', '<cmd>IndentBlanklineToggle<cr>')

View file

@ -0,0 +1,27 @@
require('nvim-tree').setup {
git = {
ignore = false, -- don't hide files from .gitignore
},
view = {
width = 35, -- a little wider than the default 30
},
filters = {
dotfiles = false, -- show files starting with a .
custom = { '.git' }, -- don't show .git directory
},
renderer = {
add_trailing = true, -- add trailing / to folders
group_empty = true, -- folders that contain only one folder are grouped
highlight_git = true, -- enable highlight based on git attributes
indent_markers = {
enable = true, -- show indent markers
},
},
}
vim.keymap.set('n', '<c-n>', '<cmd>NvimTreeToggle<cr>')
vim.keymap.set('n', '<leader>n', '<cmd>NvimTreeFindFileToggle<cr>')

View file

@ -0,0 +1,5 @@
vim.g['rainbow#pairs'] = { {'(',')'}, {'[',']'}, {'{','}'} }
-- show/hide rainbow parens
vim.keymap.set('n', '<leader>sp', '<cmd>RainbowParentheses!!<cr>')

View file

@ -0,0 +1,4 @@
vim.cmd [[ AddTabularPattern! first_comma /^[^,]*\zs,/ ]]
vim.cmd [[ AddTabularPattern! first_colon /^[^:]*\zs:/ ]]
vim.cmd [[ AddTabularPattern! first_equal /^[^=]*\zs=/ ]]

View file

@ -0,0 +1,96 @@
local actions = require 'telescope.actions'
local builtin = require 'telescope.builtin'
local find_buffers = function()
builtin.buffers { prompt_title = ' ﬘ Find buffers ' }
end
local find_commits = function()
builtin.git_commits { prompt_title = '  Find git commits ' }
end
local find_dotfiles = function()
builtin.find_files {
prompt_title = '  Find dotfiles ',
cwd = '~/.dotfiles',
hidden = true,
}
end
local find_files = function()
builtin.find_files { prompt_title = '  Find files ' }
end
local find_grep = function()
builtin.live_grep { prompt_title = ' 🔍 Grep ' }
end
local find_help = function()
builtin.help_tags { prompt_title = ' ﬤ Find help tags ' }
end
local find_keymaps = function()
builtin.keymaps { prompt_title = '  Find keymaps ' }
end
local find_manpages = function()
builtin.man_pages {
prompt_title = '  Find man pages ',
sections = { 'ALL' },
}
end
local find_options = function()
builtin.vim_options {
prompt_title = '  Find nvim options ',
layout_config = {
width = 0.75,
height = 0.8,
}
}
end
require('telescope').setup {
defaults = {
prompt_prefix = ' ',
selection_caret = '',
layout_strategy = 'flex',
layout_config = {
anchor = 'center',
width = 0.92,
height = 0.95,
flex = {
flip_columns = 130,
},
horizontal = {
preview_width = 0.5,
preview_cutoff = 130,
},
vertical = {
preview_height = 0.5,
},
},
mappings = {
i = {
['<c-j>'] = actions.cycle_history_next,
['<c-k>'] = actions.cycle_history_prev,
},
},
},
}
vim.keymap.set('n', '<leader>fb', find_buffers)
vim.keymap.set('n', '<leader>fc', find_commits)
vim.keymap.set('n', '<leader>fd', find_dotfiles)
vim.keymap.set('n', '<leader>ff', find_files)
vim.keymap.set('n', '<leader>fg', find_grep)
vim.keymap.set('n', '<leader>fh', find_help)
vim.keymap.set('n', '<leader>fk', find_keymaps)
vim.keymap.set('n', '<leader>fm', find_manpages)
vim.keymap.set('n', '<leader>fo', find_options)

View file

@ -0,0 +1,6 @@
-- fix whitespace
vim.keymap.set('n', '<leader>w', '<cmd>StripWhitespace<cr>')
-- show/hide whitespace
vim.keymap.set('n', '<leader>sw', '<cmd>ToggleWhitespace<cr>')

View file

@ -0,0 +1,3 @@
vim.keymap.set('n', '<leader>gs', '<cmd>below Git<cr>')
vim.keymap.set('n', '<leader>gb', '<cmd>Git blame<cr>')

View file

@ -0,0 +1,6 @@
-- Make numbers and booleans stand out.
vim.cmd [[ highlight link jsonBraces Text ]]
vim.cmd [[ highlight link jsonNumber Identifier ]]
vim.cmd [[ highlight link jsonBoolean Identifier ]]
vim.cmd [[ highlight link jsonNull Identifier ]]

View file

@ -0,0 +1,14 @@
require('virt-column').setup {
char = '',
}
local toggle_virtual_column = function()
if vim.o.colorcolumn == '' then
vim.o.colorcolumn = '+1' -- one after 'textwidth'
else
vim.o.colorcolumn = '' -- none
end
end
vim.keymap.set('n', '<leader>sc', toggle_virtual_column)

View file

@ -19,4 +19,5 @@ require 'fs.options'
require 'fs.plugins'
require 'fs.keymaps'
require 'fs.autocmds'
require 'fs.theme'

View file

@ -192,7 +192,7 @@ local sections = Table:new {
lualine_z = {},
}
local config = function()
local setup = function()
require('lualine').setup {
options = {
icons_enabled = true,
@ -213,4 +213,4 @@ local config = function()
}
end
return { config = config }
return { setup = setup }

View file

@ -7,189 +7,46 @@ local packer = function()
return require('packer')
end
vim.g.better_whitespace_filetypes_blacklist = {
'diff',
'fugitive',
'git',
'gitcommit',
'help',
}
vim.g.vim_json_syntax_conceal = 0 -- Disable quote concealling.
return packer().startup(function(use)
use 'wbthomason/packer.nvim'
use 'nvim-lua/plenary.nvim'
-- Visuals ----------------------------------------------------------------
use {
'tjdevries/colorbuddy.nvim',
config = function() require'fs.solarized'.setup() end,
}
use 'tjdevries/colorbuddy.nvim'
use 'kyazdani42/nvim-web-devicons'
use {
'nvim-lualine/lualine.nvim',
config = function() require'fs.lualine'.config() end,
}
use {
'lukas-reineke/virt-column.nvim',
config = function()
require'virt-column'.setup {
char = ''
}
-- show/hide virtual colorcolumn
vim.keymap.set('n', '<leader>sc', function()
if vim.o.colorcolumn == '' then
vim.o.colorcolumn = '+1'
else
vim.o.colorcolumn = ''
end
end)
end,
}
use {
'lukas-reineke/indent-blankline.nvim',
config = function()
require'indent_blankline'.setup {
enabled = false
}
-- show/hide indent guides
vim.keymap.set('n', '<leader>si', '<cmd>:IndentBlanklineToggle<cr>')
end,
}
use {
'junegunn/rainbow_parentheses.vim',
config = function()
vim.g['rainbow#pairs'] = { {'(',')'}, {'[',']'}, {'{','}'} }
-- show/hide rainbow parens
vim.keymap.set('n', '<leader>sp', '<cmd>RainbowParentheses!!<cr>')
end,
}
use 'nvim-lualine/lualine.nvim'
use 'lukas-reineke/virt-column.nvim'
use 'lukas-reineke/indent-blankline.nvim'
use 'junegunn/rainbow_parentheses.vim'
-- Navigation -------------------------------------------------------------
use {
'nvim-telescope/telescope.nvim',
config = function() require'fs.telescope'.config() end,
}
use {
'kyazdani42/nvim-tree.lua',
config = function()
require'nvim-tree'.setup {
git = {
ignore = false, -- don't hide files from .gitignore
},
view = {
width = 35, -- a little wider than the default 30
},
filters = {
dotfiles = false, -- show files starting with a .
custom = { '.git' }, -- don't show .git directory
},
renderer = {
add_trailing = true, -- add trailing / to folders
group_empty = true, -- folders that contain only one folder are grouped
highlight_git = true, -- enable highlight based on git attributes
indent_markers = {
enable = true, -- show indent markers
},
},
}
vim.keymap.set('n', '<c-n>', '<cmd>NvimTreeToggle<cr>')
vim.keymap.set('n', '<leader>n', '<cmd>NvimTreeFindFileToggle<cr>')
end,
}
use 'nvim-telescope/telescope.nvim'
use 'kyazdani42/nvim-tree.lua'
-- Editing ----------------------------------------------------------------
use {
'ntpeters/vim-better-whitespace',
setup = function()
vim.g.better_whitespace_filetypes_blacklist = {
'diff',
'fugitive',
'git',
'gitcommit',
'help',
}
end,
config = function()
-- fix whitespace
vim.keymap.set('n', '<leader>w', '<cmd>StripWhitespace<cr>')
-- show/hide whitespace
vim.keymap.set('n', '<leader>sw', '<cmd>ToggleWhitespace<cr>')
end,
}
use {
'godlygeek/tabular',
setup = function()
-- This function is intentionally empty. If I don't have a setup()
-- function, somehow packer calls config() BEFORE the plugin is loaded
-- and therefore the command AddTabularPattern still doesn't exist and
-- config() throws errors on nvim startup.
end,
config = function()
vim.cmd [[ AddTabularPattern! first_comma /^[^,]*\zs,/ ]]
vim.cmd [[ AddTabularPattern! first_colon /^[^:]*\zs:/ ]]
vim.cmd [[ AddTabularPattern! first_equal /^[^=]*\zs=/ ]]
end,
}
use 'ntpeters/vim-better-whitespace'
use 'godlygeek/tabular'
use 'tpope/vim-commentary'
-- git --------------------------------------------------------------------
use {
'tpope/vim-fugitive',
config = function()
vim.keymap.set('n', '<leader>gs', '<cmd>below Git<cr>')
vim.keymap.set('n', '<leader>gb', '<cmd>Git blame<cr>')
end,
}
use 'tpope/vim-fugitive'
-- Filetypes --------------------------------------------------------------
use {
'elzr/vim-json',
setup = function()
-- Disable quote concealling.
vim.g.vim_json_syntax_conceal = 0
end,
config = function()
-- Make numbers and booleans stand out.
vim.cmd [[
highlight link jsonBraces Text
highlight link jsonNumber Identifier
highlight link jsonBoolean Identifier
highlight link jsonNull Identifier
]]
end,
}
use 'elzr/vim-json'
use 'keith/swift.vim'
use 'chr4/nginx.vim'
-- Misc -------------------------------------------------------------------
use 'milisims/nvim-luaref'
end)

View file

@ -1,103 +0,0 @@
local actions = require 'telescope.actions'
local builtin = require 'telescope.builtin'
local M = {}
M.find_buffers = function()
builtin.buffers { prompt_title = ' ﬘ Find buffers ' }
end
M.find_commits = function()
builtin.git_commits { prompt_title = '  Find git commits ' }
end
M.find_dotfiles = function()
builtin.find_files {
prompt_title = '  Find dotfiles ',
cwd = '~/.dotfiles',
hidden = true,
}
end
M.find_files = function()
builtin.find_files { prompt_title = '  Find files ' }
end
M.find_grep = function()
builtin.live_grep { prompt_title = ' 🔍 Grep ' }
end
M.find_help = function()
builtin.help_tags { prompt_title = ' ﬤ Find help tags ' }
end
M.find_keymaps = function()
builtin.keymaps { prompt_title = '  Find keymaps ' }
end
M.find_manpages = function()
builtin.man_pages {
prompt_title = '  Find man pages ',
sections = { 'ALL' },
}
end
M.find_options = function()
builtin.vim_options {
prompt_title = '  Find nvim options ',
layout_config = {
width = 0.75,
height = 0.8,
}
}
end
M.config = function()
require'telescope'.setup {
defaults = {
prompt_prefix = ' ',
selection_caret = '',
layout_strategy = 'flex',
layout_config = {
anchor = 'center',
width = 0.92,
height = 0.95,
flex = {
flip_columns = 130,
},
horizontal = {
preview_width = 0.5,
preview_cutoff = 130,
},
vertical = {
preview_height = 0.5,
},
},
mappings = {
i = {
['<c-j>'] = actions.cycle_history_next,
['<c-k>'] = actions.cycle_history_prev,
},
},
},
}
local nmap = require 'fs.util'.nmap
nmap { '<leader>fb', [[<cmd>lua require'fs.telescope'.find_buffers()<cr>]] }
nmap { '<leader>fc', [[<cmd>lua require'fs.telescope'.find_commits()<cr>]] }
nmap { '<leader>fd', [[<cmd>lua require'fs.telescope'.find_dotfiles()<cr>]] }
nmap { '<leader>ff', [[<cmd>lua require'fs.telescope'.find_files()<cr>]] }
nmap { '<leader>fg', [[<cmd>lua require'fs.telescope'.find_grep()<cr>]] }
nmap { '<leader>fh', [[<cmd>lua require'fs.telescope'.find_help()<cr>]] }
nmap { '<leader>fk', [[<cmd>lua require'fs.telescope'.find_keymaps()<cr>]] }
nmap { '<leader>fm', [[<cmd>lua require'fs.telescope'.find_manpages()<cr>]] }
nmap { '<leader>fo', [[<cmd>lua require'fs.telescope'.find_options()<cr>]] }
end
return M

View file

@ -0,0 +1,3 @@
R('fs.solarized').setup()
R('fs.lualine').setup()