diff --git a/git/.config/git/config b/git/.config/git/config index 361923b..d42caec 100644 --- a/git/.config/git/config +++ b/git/.config/git/config @@ -9,7 +9,6 @@ pushmerge = "push -o merge_request.merge_when_pipeline_succeeds" # see https://docs.gitlab.com/ce/user/project/push_options.html # merge-when-pipeline-succeeds-alias last = "diff HEAD~ HEAD" pushall = "!git remote | xargs -I R git push R" # push to all connected remotes - fetchall = "!git remote | xargs -I R git fetch R" # fetch from all connected remotes [commit] gpgsign = true # sign commits as me diff --git a/git/.config/sh/alias.d/git.sh b/git/.config/sh/alias.d/git.sh index 7e1b1de..db7df48 100644 --- a/git/.config/sh/alias.d/git.sh +++ b/git/.config/sh/alias.d/git.sh @@ -47,7 +47,6 @@ alias glog='git log --stat' alias gloog='git log --stat -p' alias gf='git fetch' -alias gfa='git fetchall' alias gl='git pull' alias gpn='git push --dry-run' diff --git a/nvim/.config/nvim/init.lua b/nvim/.config/nvim/init.lua index 1047d06..ad79d2c 100644 --- a/nvim/.config/nvim/init.lua +++ b/nvim/.config/nvim/init.lua @@ -11,18 +11,15 @@ require('maps') vim.api.nvim_create_autocmd({ "TextYankPost" }, { command = 'silent! lua require"vim.highlight".on_yank{timeout=500}', desc = "Highlight yanked text whenevery yanking something", - group = vim.api.nvim_create_augroup('highlightyanks', { clear = true }) + group = vim.api.nvim_create_augroup('highlightyanks', { clear = true }), }) -- Special setting for editing gopass files - make sure nothing leaks outside the directories it is supposed to vim.api.nvim_create_autocmd({ "BufNewFile", "BufRead" }, { - pattern = { - "/dev/shm/gopass.*", "/dev/shm/pass.?*/?*.txt", - "$TMPDIR/pass.?*/?*.txt", "/tmp/pass.?*/?*.txt" - }, + pattern = { "/dev/shm/gopass.*", "/dev/shm/pass.?*/?*.txt", "$TMPDIR/pass.?*/?*.txt", "/tmp/pass.?*/?*.txt" }, command = 'setlocal noswapfile nobackup noundofile nowritebackup viminfo=', desc = "Don't leak any information when editing potential password files", - group = vim.api.nvim_create_augroup('passnoleak', { clear = true }) + group = vim.api.nvim_create_augroup('passnoleak', { clear = true }), }) api.nvim_exec('runtime abbrev.vim', false) @@ -34,5 +31,5 @@ vim.api.nvim_create_autocmd({ "VimEnter" }, { vim.defer_fn(function() vim.loop.kill(pid, WINCH) end, 20) end, desc = "Fix neovim sizing issues if opening same time as alacritty", - group = vim.api.nvim_create_augroup('alacritty_fixsize', { clear = true }) + group = vim.api.nvim_create_augroup('alacritty_fixsize', { clear = true }), }) diff --git a/nvim/.config/nvim/lua/plug/_autopair.lua b/nvim/.config/nvim/lua/plug/_autopair.lua index 7a645e0..a2ad8a1 100644 --- a/nvim/.config/nvim/lua/plug/_autopair.lua +++ b/nvim/.config/nvim/lua/plug/_autopair.lua @@ -1,33 +1,18 @@ -require('nvim-autopairs').setup({ check_ts = true }) +require('nvim-autopairs').setup({check_ts = true}) --- Auto-space rules local npairs = require 'nvim-autopairs' local Rule = require 'nvim-autopairs.rule' -npairs.setup({ - check_ts = true, - ts_config = { - lua = { 'string' }, -- it will not add a pair on that treesitter node - javascript = { 'template_string' }, - java = false -- don't check treesitter on java - } -}) - -local ts_conds = require('nvim-autopairs.ts-conds') - --- press % => %% only while inside a comment or string -npairs.add_rules({ - Rule("%", "%", "lua"):with_pair(ts_conds.is_ts_node({ 'string', 'comment' })), - Rule("$", "$", "lua"):with_pair(ts_conds.is_not_ts_node({ 'function' })) -}) - npairs.add_rules { Rule(' ', ' '):with_pair(function(opts) local pair = opts.line:sub(opts.col, opts.col + 1) - return vim.tbl_contains({ '()', '[]', '{}' }, pair) + return vim.tbl_contains({'()', '[]', '{}'}, pair) end) } local cmp_autopairs = require('nvim-autopairs.completion.cmp') local cmp = require('cmp') cmp.event:on('confirm_done', - cmp_autopairs.on_confirm_done({ map_char = { tex = '' } })) + cmp_autopairs.on_confirm_done({map_char = {tex = ''}})) +-- add a lisp filetype (wrap my-function), FYI: Hardcoded = { "clojure", "clojurescript", "fennel", "janet" } +cmp_autopairs.lisp[#cmp_autopairs.lisp + 1] = "racket" diff --git a/nvim/.config/nvim/lua/plug/_cmp.lua b/nvim/.config/nvim/lua/plug/_cmp.lua deleted file mode 100644 index bad2eb5..0000000 --- a/nvim/.config/nvim/lua/plug/_cmp.lua +++ /dev/null @@ -1,92 +0,0 @@ -local cmp = require 'cmp' -local lspkind = require 'lspkind' - -local has_words_before = function() - local line, col = unpack(vim.api.nvim_win_get_cursor(0)) - return col ~= 0 and - vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, - col) - :match("%s") == nil -end - -local feedkey = function(key, mode) - vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes(key, true, true, true), - mode, true) -end - -vim.o.completeopt = "menu,menuone,noselect" - --- completion items -require('cmp').register_source('vCard', require('completion_vcard').setup_cmp( - '~/documents/contacts/myconts')) -vim.g.vsnip_snippet_dir = (vim.env.XDG_DATA_HOME or "~/.local/share") .. - "/nvim/snippets" -cmp.setup({ - snippet = { expand = function(args) vim.fn["vsnip#anonymous"](args.body) end }, - mapping = { - [''] = cmp.mapping(cmp.mapping.scroll_docs(-4), { 'i', 'c' }), - [''] = cmp.mapping(cmp.mapping.scroll_docs(4), { 'i', 'c' }), - [''] = cmp.mapping(cmp.mapping.complete(), { 'i', 'c' }), - [''] = cmp.config.disable, -- Specify `cmp.config.disable` if you want to remove the default `` mapping. - [''] = cmp.mapping({ - i = cmp.mapping.abort(), - c = cmp.mapping.close() - }), - -- Accept currently selected item. If none selected, `select` first item. - -- Set `select` to `false` to only confirm explicitly selected items. - [''] = cmp.mapping.confirm({ select = false }), - [""] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_next_item() - elseif vim.fn["vsnip#available"](1) == 1 then - feedkey("(vsnip-expand-or-jump)", "") - elseif has_words_before() then - cmp.complete() - else - fallback() - end - end, { "i", "s" }), - - [""] = cmp.mapping(function() - if cmp.visible() then - cmp.select_prev_item() - elseif vim.fn["vsnip#jumpable"](-1) == 1 then - feedkey("(vsnip-jump-prev)", "") - end - end, { "i", "s" }) - }, - formatting = { - format = lspkind.cmp_format({ - with_text = false, - menu = ({ - buffer = "B", - nvim_lua = "NLua", - tmux = "τ", - vCard = "VCARD" - }) - }) - }, - sources = cmp.config.sources({ - { name = 'path' }, { name = 'nvim_lsp' }, { name = 'treesitter' }, - { name = 'tmux' }, { name = 'vsnip' }, { name = 'latex_symbols' }, - { name = 'vCard' }, { name = 'nvim_lua' } - }, { { name = 'buffer' }, { name = 'spell' } }) -}) - -if vim.o.ft == 'clap_input' and vim.o.ft == 'guihua' and vim.o.ft == - 'guihua_rust' then require 'cmp'.setup.buffer { completion = { enable = false } } end - --- Use buffer source for `/` search -cmp.setup.cmdline('/', { - mapping = cmp.mapping.preset.cmdline(), - sources = cmp.config.sources({ { name = 'buffer' } }) -}) - --- Use cmdline & path source for ':' in vim -cmp.setup.cmdline(':', { - mapping = cmp.mapping.preset.cmdline(), - sources = cmp.config.sources({ { name = 'path' } }, { { name = 'cmdline' } }) -}) - -require('cmp_nvim_lsp').default_capabilities(vim.lsp.protocol - .make_client_capabilities()) diff --git a/nvim/.config/nvim/lua/plug/_format.lua b/nvim/.config/nvim/lua/plug/_format.lua index 487b57e..85021e8 100644 --- a/nvim/.config/nvim/lua/plug/_format.lua +++ b/nvim/.config/nvim/lua/plug/_format.lua @@ -1,3 +1,5 @@ +local augroup = require('helpers.augroup') + -- for each filetype autoformat on save -- TODO can automatically gather from formatter table keys? local prettierfmt = { diff --git a/nvim/.config/nvim/lua/plug/_gitsigns.lua b/nvim/.config/nvim/lua/plug/_gitsigns.lua deleted file mode 100644 index 378a12b..0000000 --- a/nvim/.config/nvim/lua/plug/_gitsigns.lua +++ /dev/null @@ -1,40 +0,0 @@ --- require('gitsigns').setup { --- on_attach = function(bufnr) --- local gs = package.loaded.gitsigns --- --- local function map(mode, l, r, opts) --- opts = opts or {} --- opts.buffer = bufnr --- vim.keymap.set(mode, l, r, opts) --- end --- --- -- Navigation --- map('n', ']h', function() --- if vim.wo.diff then return ']h' end --- vim.schedule(function() gs.next_hunk() end) --- return '' --- end, {expr = true}) --- --- map('n', '[h', function() --- if vim.wo.diff then return '[h' end --- vim.schedule(function() gs.prev_hunk() end) --- return '' --- end, {expr = true}) --- --- -- Actions --- map({'n', 'v'}, 'hs', ':Gitsigns stage_hunk') --- map('n', 'hS', gs.stage_buffer) --- map({'n', 'v'}, 'hr', ':Gitsigns reset_hunk') --- map('n', 'hR', gs.reset_buffer) --- map('n', 'hu', gs.undo_stage_hunk) --- map('n', 'hp', gs.preview_hunk) --- map('n', 'hb', function() gs.blame_line {full = true} end) --- map('n', 'hB', gs.toggle_current_line_blame) --- map('n', 'hd', gs.diffthis) --- map('n', 'hD', function() gs.diffthis('~') end) --- map('n', 'hdd', gs.toggle_deleted) --- --- -- Text object --- map({'o', 'x'}, 'ih', ':Gitsigns select_hunk') --- end --- } diff --git a/nvim/.config/nvim/lua/plug/_lsp.lua b/nvim/.config/nvim/lua/plug/_lsp.lua index 4bd08b7..ccbbd85 100644 --- a/nvim/.config/nvim/lua/plug/_lsp.lua +++ b/nvim/.config/nvim/lua/plug/_lsp.lua @@ -1,3 +1,154 @@ +local cmp = require 'cmp' +local lspkind = require 'lspkind' + +local has_words_before = function() + local line, col = unpack(vim.api.nvim_win_get_cursor(0)) + return col ~= 0 and + vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, + col) + :match("%s") == nil +end + +local feedkey = function(key, mode) + vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes(key, true, true, true), + mode, true) +end + +vim.o.completeopt = "menu,menuone,noselect" + +-- completion items +require('cmp').register_source('vCard', require('completion_vcard').setup_cmp( + '~/documents/contacts/myconts')) +vim.g.vsnip_snippet_dir = (vim.env.XDG_DATA_HOME or "~/.local/share") .. + "/nvim/snippets" +cmp.setup({ + snippet = {expand = function(args) vim.fn["vsnip#anonymous"](args.body) end}, + mapping = { + [''] = cmp.mapping(cmp.mapping.scroll_docs(-4), {'i', 'c'}), + [''] = cmp.mapping(cmp.mapping.scroll_docs(4), {'i', 'c'}), + [''] = cmp.mapping(cmp.mapping.complete(), {'i', 'c'}), + [''] = cmp.config.disable, -- Specify `cmp.config.disable` if you want to remove the default `` mapping. + [''] = cmp.mapping({ + i = cmp.mapping.abort(), + c = cmp.mapping.close() + }), + -- Accept currently selected item. If none selected, `select` first item. + -- Set `select` to `false` to only confirm explicitly selected items. + [''] = cmp.mapping.confirm({select = false}), + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item() + elseif vim.fn["vsnip#available"](1) == 1 then + feedkey("(vsnip-expand-or-jump)", "") + elseif has_words_before() then + cmp.complete() + else + fallback() + end + end, {"i", "s"}), + + [""] = cmp.mapping(function() + if cmp.visible() then + cmp.select_prev_item() + elseif vim.fn["vsnip#jumpable"](-1) == 1 then + feedkey("(vsnip-jump-prev)", "") + end + end, {"i", "s"}) + }, + formatting = { + format = lspkind.cmp_format({ + with_text = false, + menu = ({ + buffer = "B", + nvim_lua = "NLua", + tmux = "τ", + vCard = "VCARD" + }) + }) + }, + sources = cmp.config.sources({ + {name = 'path'}, {name = 'nvim_lsp'}, {name = 'treesitter'}, + {name = 'tmux'}, {name = 'vsnip'}, {name = 'latex_symbols'}, + {name = 'pandoc_references'}, {name = 'vCard'} + }, {{name = 'buffer'}, {name = 'spell'}}) +}) +if vim.o.ft == 'clap_input' and vim.o.ft == 'guihua' and vim.o.ft == + 'guihua_rust' then require'cmp'.setup.buffer {completion = {enable = false}} end + +-- Use buffer source for `/` search +cmp.setup.cmdline('/', {sources = {{name = 'buffer'}}}) + +-- Use cmdline & path source for ':' in vim +cmp.setup.cmdline(':', { + sources = cmp.config.sources({{name = 'path'}}, {{name = 'cmdline'}}) +}) + +require('cmp_nvim_lsp').update_capabilities(vim.lsp.protocol + .make_client_capabilities()) + +-- requires the lua-language-server package to be installed -- The arch package defaults to the following directory -require'navigator'.setup() +local sumneko_root_path = "/usr/share/lua-language-server" +require'navigator'.setup({ + lsp = { + servers = {'efm'}, + disable_lsp = {"pylsp", "jedi_language_server"}, + sumneko_lua = { + cmd = { + "lua-language-server", "-E", sumneko_root_path .. "/main.lua" + }, + settings = { + Lua = { + runtime = { + -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim) + version = 'LuaJIT', + -- Setup your lua path + path = vim.split(package.path, ';') + }, + diagnostics = { + -- Get the language server to recognize additional globals + globals = { + 'vim', 'before_each', 'after_each', 'describe', + 'it', 'mock', 'stub' + } + }, + workspace = { + -- Make the server aware of additional runtime files + library = { + [vim.fn.expand('$VIMRUNTIME/lua')] = true, + [vim.fn.expand('$VIMRUNTIME/lua/vim/lsp')] = true, + ["/usr/share/lua/5.1/busted/"] = true + } + } + } + } + }, + efm = { + init_options = { + documentFormatting = true, + codeAction = true, + completion = true, + documentSymbol = true, + hover = true + }, + filetypes = {"sh"}, + settings = { + rootMarkers = {".git/"}, + languages = { + sh = { + { + lintCommand = 'shellcheck -f gcc -x', + lintFormats = { + '%f:%l:%c: %trror: %m', + '%f:%l:%c: %tarning: %m', '%f:%l:%c: %tote: %m' + } + }, + {formatCommand = 'shfmt -ci -s -bn', formatStdin = true} + } + } + } + } + + } +}) require"lsp_signature".setup() diff --git a/nvim/.config/nvim/lua/plug/_neorg.lua b/nvim/.config/nvim/lua/plug/_neorg.lua deleted file mode 100644 index 90cb520..0000000 --- a/nvim/.config/nvim/lua/plug/_neorg.lua +++ /dev/null @@ -1,8 +0,0 @@ -require("neorg").setup { - load = { - ["core.defaults"] = {}, - ["core.norg.concealer"] = {}, - ["core.norg.completion"] = { config = { engine = "nvim-cmp" } }, - ["core.norg.qol.toc"] = {} - } -} diff --git a/nvim/.config/nvim/lua/plugins.lua b/nvim/.config/nvim/lua/plugins.lua index 3f11bdc..a9ad28b 100644 --- a/nvim/.config/nvim/lua/plugins.lua +++ b/nvim/.config/nvim/lua/plugins.lua @@ -32,9 +32,13 @@ require("packer").startup(function() use 'vifm/vifm.vim' -- integrate file manager use { 'lewis6991/gitsigns.nvim', -- show vcs changes on left-hand gutter - requires = { 'nvim-lua/plenary.nvim' }, + requires = {'nvim-lua/plenary.nvim'}, tag = 'release', - config = function() require('plug._gitsigns') end, + config = function() + require('gitsigns').setup { + keymaps = {['n ]c'] = nil, ['n [c'] = nil} + } + end, event = "BufRead" } use { @@ -49,12 +53,7 @@ require("packer").startup(function() } -- editing - -- use {'machakann/vim-sandwich', event = "BufRead"} -- surround things with other things using sa/sd/sr - use { - 'kylechui/nvim-surround', - tag = '*', - config = function() require('nvim-surround').setup() end - } -- surround things with other things using ys/cs/ds + use {'machakann/vim-sandwich', event = "BufRead"} -- surround things with other things using sa/sd/sr use { 'monaqa/dial.nvim', -- extend the ^a / ^x possibilities to dates, hex, alphabets, markdown headers event = "BufRead" @@ -88,19 +87,14 @@ require("packer").startup(function() -- statusline use { 'nvim-lualine/lualine.nvim', - requires = { 'kyazdani42/nvim-web-devicons', opt = true }, + requires = {'kyazdani42/nvim-web-devicons', opt = true}, config = function() require('plug._lualine') end } -- writing - use { 'vim-pandoc/vim-pandoc-syntax' } - use { 'vim-pandoc/vim-pandoc' } - use { 'vim-pandoc/vim-criticmarkup' } - use { - "quarto-dev/quarto-vim", - requires = { { "vim-pandoc/vim-pandoc-syntax" } }, - ft = { "quarto" } - } + use {'vim-pandoc/vim-pandoc-syntax', ft = 'pandoc'} + use {'vim-pandoc/vim-pandoc', ft = 'pandoc'} + use {'vim-pandoc/vim-criticmarkup', ft = 'pandoc'} -- highlights for criticmarkup use 'micarmst/vim-spellsync' -- personal dict improvements for git sync use { -- provide distraction free writing 'Pocco81/TrueZen.nvim', @@ -109,18 +103,17 @@ require("packer").startup(function() integrations = { gitsigns = true, lualine = true, - tmux = { global = false }, + tmux = {global = false}, limelight = true } }) end } - use { 'junegunn/limelight.vim', event = 'BufRead' } -- provide even distraction free-er writing (lowlight paragraphs) + use {'junegunn/limelight.vim', event = 'BufRead'} -- provide even distraction free-er writing (lowlight paragraphs) use 'alok/notational-fzf-vim' -- quickly search through the wiki -- languages - use { 'euclidianAce/BetterLua.vim', ft = 'lua' } -- better syntax highlighting for lua - use 'aliou/bats.vim' -- enable syntax for bats shell-code testing library + use {'euclidianAce/BetterLua.vim', ft = 'lua'} -- better syntax highlighting for lua -- REPL work use { @@ -140,7 +133,7 @@ require("packer").startup(function() 'hanschen/vim-ipython-cell', -- send code 'cells' to REPL ft = "python", config = function() - vim.g.ipython_cell_highlight_cells_ft = { 'python' } + vim.g.ipython_cell_highlight_cells_ft = {'python'} vim.g.ipython_cell_insert_tag = "## Cell" end } @@ -163,31 +156,24 @@ require("packer").startup(function() "folke/which-key.nvim", config = function() require("which-key").setup {} end } - -- extensive organization plugin mimicking orgmode - use { - "nvim-neorg/neorg", - config = function() require("plug._neorg") end, - requires = "nvim-lua/plenary.nvim", - tag = "*" - } -- fuzzy matching use { "nvim-telescope/telescope.nvim", requires = { - { "nvim-lua/popup.nvim" }, { "nvim-lua/plenary.nvim" }, - { "nvim-telescope/telescope-fzf-native.nvim", run = 'make' } + {"nvim-lua/popup.nvim"}, {"nvim-lua/plenary.nvim"}, + {"nvim-telescope/telescope-fzf-native.nvim", run = 'make'} }, config = function() require('plug._telescope') end } use { 'protex/better-digraphs.nvim', - requires = { { "nvim-telescope/telescope.nvim" } } + requires = {{"nvim-telescope/telescope.nvim"}} } -- snippeting - use { "hrsh7th/vim-vsnip", event = "InsertEnter" } -- snippet engine - use { "rafamadriz/friendly-snippets", event = "InsertEnter" } -- many snippets + use {"hrsh7th/vim-vsnip", event = "InsertEnter"} -- snippet engine + use {"rafamadriz/friendly-snippets", event = "InsertEnter"} -- many snippets -- treesitter use { @@ -200,7 +186,7 @@ require("packer").startup(function() use { 'RRethy/nvim-treesitter-textsubjects', -- allows using . and ; to target treesitter branches config = function() - require 'nvim-treesitter.configs'.setup { + require'nvim-treesitter.configs'.setup { textsubjects = { enable = true, keymaps = { @@ -220,15 +206,11 @@ require("packer").startup(function() -- lsp use 'neovim/nvim-lspconfig' -- some commong language server configurations - use { - 'simrat39/symbols-outline.nvim', - config = function() require('symbols-outline').setup() end - } -- vista-like outline view for code + use 'simrat39/symbols-outline.nvim' -- vista-like outline view for code use 'ray-x/lsp_signature.nvim' use { 'ray-x/navigator.lua', - requires = { 'ray-x/guihua.lua', run = 'cd lua/fzy && make' }, - config = function() require('plug._lsp') end + requires = {'ray-x/guihua.lua', run = 'cd lua/fzy && make'} } -- and completion use { @@ -236,12 +218,12 @@ require("packer").startup(function() requires = { 'onsails/lspkind-nvim', 'andersevenrud/cmp-tmux', -- completion source from adjacent tmux panes 'hrsh7th/cmp-nvim-lsp', 'hrsh7th/cmp-buffer', 'hrsh7th/cmp-path', - 'hrsh7th/cmp-cmdline', 'hrsh7th/cmp-vsnip', 'hrsh7th/cmp-nvim-lua', + 'hrsh7th/cmp-cmdline', 'hrsh7th/cmp-vsnip', 'kdheepak/cmp-latex-symbols', 'ray-x/cmp-treesitter', - 'f3fora/cmp-spell', 'cbarrete/completion-vcard' - + 'f3fora/cmp-spell', 'jc-doyle/cmp-pandoc-references', + 'cbarrete/completion-vcard' } } - require('plug._cmp') + require('plug._lsp') end) diff --git a/nvim/.config/nvim/plugin/vim-pandoc.vim b/nvim/.config/nvim/plugin/vim-pandoc.vim index 8387248..d662324 100644 --- a/nvim/.config/nvim/plugin/vim-pandoc.vim +++ b/nvim/.config/nvim/plugin/vim-pandoc.vim @@ -1,8 +1,8 @@ " PLUGIN: vim-pandoc " handle markdown files with pandoc (and pandoc syntax!) let g:pandoc#modules#disabled = [ "keyboard", "folding" ] -let g:pandoc#filetypes#pandoc_markdown = 0 -let g:pandoc#filetypes#handled = [ "extra", "latex", "markdown", "pandoc", "rst", "textile"] +let g:pandoc#filetypes#pandoc_markdown = 1 +let g:pandoc#filetypes#handled = [ "extra", "latex", "markdown", "pandoc", "rst", "textile" ] " disable all default keymaps let g:pandoc#keyboard#use_default_mappings=0 " needs to be set for wrapping and unwrapping of lines to work when doing j/k diff --git a/nvim/.config/nvim/spell/en.utf-8.add b/nvim/.config/nvim/spell/en.utf-8.add index e752768..0276317 100644 --- a/nvim/.config/nvim/spell/en.utf-8.add +++ b/nvim/.config/nvim/spell/en.utf-8.add @@ -177,4 +177,3 @@ ascriptions exploitations tradeable reproducability -positivity diff --git a/tmux/.config/tmux/tmux.conf b/tmux/.config/tmux/tmux.conf index 5e477b4..fcd03d7 100644 --- a/tmux/.config/tmux/tmux.conf +++ b/tmux/.config/tmux/tmux.conf @@ -1,6 +1,6 @@ # Layout of this conf file: # 1. Global Settings -# 2. Plugins +# 2. Keybinds # 3. Keybinds # 4. Theme @@ -27,8 +27,11 @@ set -g mouse on # allow truecolor support set -g default-terminal 'xterm-256color' set -ga terminal-overrides ',xterm-256color:Tc' +# Set Cursor terminal override, so nvim can change cursor style when changing modes +# more info see nvim, :help tui-cursor-shape +# LEGACY: this should not be necessary anymore +# set -ga terminal-overrides '*:Ss=\E[%p1%d q:Se=\E[ q' set -g status-keys vi -set-window-option -g mode-keys vi set -g history-limit 10000 # Screen size is based on the smallest client looking at the current windows, not the smallest @@ -108,12 +111,6 @@ bind-key '-' split-window -v -c '#{pane_current_path}' # Open a sessions chooser bind C-s split-window -v "tmux list-sessions | sed -E 's/:.*$//' | grep -v \"^$(tmux display-message -p '#S')\$\" | fzf --reverse | xargs tmux switch-client -t" -# Make visual selections act a little more like vim -bind-key -T copy-mode-vi v send -X begin-selection -bind-key -T copy-mode-vi V send -X select-line -bind-key -T copy-mode-vi y send -X copy-pipe-and-cancel 'wl-copy' \; send -X rectangle-off -bind-key -T copy-mode-vi 'C-v' send -X begin-selection \; send -X rectangle-on - ##################### ## 4. THEME ## #####################