aboutsummaryrefslogtreecommitdiff
path: root/.config
diff options
context:
space:
mode:
Diffstat (limited to '.config')
-rw-r--r--.config/nvim/init.lua2
-rw-r--r--.config/nvim/lua/autocomplete.lua23
-rw-r--r--.config/nvim/lua/buffers.lua36
-rw-r--r--.config/nvim/lua/fzf.lua2
-rw-r--r--.config/nvim/lua/jabs_conf.lua2
-rw-r--r--.config/nvim/lua/mappings.lua1
6 files changed, 41 insertions, 25 deletions
diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua
index d77bcd5..d9b5cc6 100644
--- a/.config/nvim/init.lua
+++ b/.config/nvim/init.lua
@@ -1,4 +1,3 @@
--- TODO SPEED
require('plugins')
require('settings')
require('mappings')
@@ -15,6 +14,7 @@ require('nerdcommenter_conf')
require('bqf_conf')
require('autosession_conf')
require('autoclose_conf')
+require('buffers')
if vim.g.neovide then
require('neovide_conf')
diff --git a/.config/nvim/lua/autocomplete.lua b/.config/nvim/lua/autocomplete.lua
index 8531258..8d624fa 100644
--- a/.config/nvim/lua/autocomplete.lua
+++ b/.config/nvim/lua/autocomplete.lua
@@ -28,29 +28,6 @@ cmp.setup({
['<C-f>'] = cmp.mapping.scroll_docs(4),
['<C-Space>'] = cmp.mapping.complete(),
['<C-e>'] = cmp.mapping.abort(),
- ['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
- ["<Tab>"] = cmp.mapping(function(fallback)
- if vim.fn.pumvisible() == 1 then
- feedkey("<C-n>", "n")
- elseif cmp.visible() then
- cmp.select_next_item()
- else
- fallback()
- end
- end, {
- "i",
- }),
- ["<S-Tab>"] = cmp.mapping(function(fallback)
- if vim.fn.pumvisible() == 1 then
- feedkey("<C-p>", "n")
- elseif cmp.visible() then
- cmp.select_prev_item()
- else
- fallback()
- end
- end, {
- "i",
- }),
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
diff --git a/.config/nvim/lua/buffers.lua b/.config/nvim/lua/buffers.lua
new file mode 100644
index 0000000..ca593a7
--- /dev/null
+++ b/.config/nvim/lua/buffers.lua
@@ -0,0 +1,36 @@
+--Nmap("<leader>b", ':buffer ')
+
+-- stolen from https://www.reddit.com/r/neovim/comments/12c4ad8/closing_unused_buffers/
+local id = vim.api.nvim_create_augroup("startup", {
+ clear = false
+})
+
+local persistbuffer = function(bufnr)
+ bufnr = bufnr or vim.api.nvim_get_current_buf()
+ vim.fn.setbufvar(bufnr, 'bufpersist', 1)
+end
+
+vim.api.nvim_create_autocmd({ "BufRead" }, {
+ group = id,
+ pattern = { "*" },
+ callback = function()
+ vim.api.nvim_create_autocmd({ "InsertEnter", "BufModifiedSet" }, {
+ buffer = 0,
+ once = true,
+ callback = function()
+ persistbuffer()
+ end
+ })
+ end
+})
+
+vim.keymap.set('n', '<Leader>o',
+ function()
+ local curbufnr = vim.api.nvim_get_current_buf()
+ local buflist = vim.api.nvim_list_bufs()
+ for _, bufnr in ipairs(buflist) do
+ if vim.bo[bufnr].buflisted and bufnr ~= curbufnr and (vim.fn.getbufvar(bufnr, 'bufpersist') ~= 1) then
+ vim.cmd('bd ' .. tostring(bufnr))
+ end
+ end
+ end, { silent = true, desc = 'Close unused buffers' })
diff --git a/.config/nvim/lua/fzf.lua b/.config/nvim/lua/fzf.lua
index 7d2c50c..170158a 100644
--- a/.config/nvim/lua/fzf.lua
+++ b/.config/nvim/lua/fzf.lua
@@ -1,4 +1,6 @@
local fzf = require('fzf-lua')
+vim.keymap.set('n', '<c-b>', fzf.buffers, {})
+vim.keymap.set('n', '<leader>fb', fzf.lines, {})
vim.keymap.set('n', '<leader>ff', fzf.files, {})
vim.keymap.set('n', '<leader>fg', fzf.live_grep, {})
vim.keymap.set('n', '<leader>fw', fzf.grep_cword, {})
diff --git a/.config/nvim/lua/jabs_conf.lua b/.config/nvim/lua/jabs_conf.lua
index 2b2ffff..4962b2a 100644
--- a/.config/nvim/lua/jabs_conf.lua
+++ b/.config/nvim/lua/jabs_conf.lua
@@ -66,4 +66,4 @@ require 'jabs'.setup {
}
-Nmap('<c-b>', ':JABSOpen<CR>')
+Nmap('<leader>b', ':JABSOpen<CR>')
diff --git a/.config/nvim/lua/mappings.lua b/.config/nvim/lua/mappings.lua
index a5f50b2..a031328 100644
--- a/.config/nvim/lua/mappings.lua
+++ b/.config/nvim/lua/mappings.lua
@@ -40,6 +40,7 @@ Nmap(">", ":vertical:resize +1<CR>")
-- pane spawn
Nmap("t", ':split<CR>:wincmd j<CR>:term<CR>')
Nmap("s", ':vs<CR>:wincmd l<CR>')
+Nmap("<c-s>", ':only<CR>')
-- escape terminal mode easier
Tmap('<Esc>', '<C-\\><C-n>')