aboutsummaryrefslogtreecommitdiff
path: root/.config/nvim
diff options
context:
space:
mode:
authorAlec Goncharow <alec@goncharow.dev>2024-01-12 08:48:32 -0500
committerAlec Goncharow <alec@goncharow.dev>2024-01-12 08:48:32 -0500
commit803274ed25384b4ffb134f35c910347c022999fd (patch)
tree7ae72fc76bedac20c36e289afcbad0bb250369b7 /.config/nvim
parent7ccc0f409ededaf3a19395f1bc1fb5e2686c37a0 (diff)
binding exploration
Diffstat (limited to '.config/nvim')
-rw-r--r--.config/nvim/lua/ls.lua10
-rw-r--r--.config/nvim/lua/lsp.lua11
-rw-r--r--.config/nvim/lua/mappings.lua8
-rw-r--r--.config/nvim/lua/plugins.lua34
-rw-r--r--.config/nvim/lua/powerline.lua2
-rw-r--r--.config/nvim/lua/settings.lua47
6 files changed, 64 insertions, 48 deletions
diff --git a/.config/nvim/lua/ls.lua b/.config/nvim/lua/ls.lua
index 7a93ec4..2361fda 100644
--- a/.config/nvim/lua/ls.lua
+++ b/.config/nvim/lua/ls.lua
@@ -54,11 +54,11 @@ require 'jabs'.setup {
-- Keymaps
keymap = {
- close = "<c-d>", -- Close buffer. Default D
- jump = "<cr>", -- Jump to buffer. Default <cr>
- h_split = "h", -- Horizontally split buffer. Default s
- v_split = "v", -- Vertically split buffer. Default v
- preview = "p", -- Open buffer preview. Default P
+ close = "x", -- Close buffer. Default D
+ jump = "<cr>", -- Jump to buffer. Default <cr>
+ h_split = "h", -- Horizontally split buffer. Default s
+ v_split = "v", -- Vertically split buffer. Default v
+ preview = "p", -- Open buffer preview. Default P
},
-- Whether to use nvim-web-devicons next to filenames
diff --git a/.config/nvim/lua/lsp.lua b/.config/nvim/lua/lsp.lua
index f2ec79a..aa156b5 100644
--- a/.config/nvim/lua/lsp.lua
+++ b/.config/nvim/lua/lsp.lua
@@ -20,7 +20,8 @@ local on_attach = function(client, bufnr)
local bufopts = { noremap = true, silent = true, buffer = bufnr }
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, bufopts)
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, bufopts)
- vim.keymap.set('n', 'K', vim.lsp.buf.hover, bufopts)
+ vim.keymap.set('n', 'gk', vim.lsp.buf.hover, bufopts)
+ vim.keymap.set('n', '<leader><leader>', vim.lsp.buf.hover, bufopts)
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, bufopts)
vim.keymap.set('n', '<space>wa', vim.lsp.buf.add_workspace_folder, bufopts)
vim.keymap.set('n', '<space>wr', vim.lsp.buf.remove_workspace_folder, bufopts)
@@ -72,10 +73,10 @@ lspconfig.bashls.setup({
})
-require'lspconfig'.sqlls.setup({
- server = {
- on_attach = on_attach,
- }
+require 'lspconfig'.sqlls.setup({
+ server = {
+ on_attach = on_attach,
+ }
})
-- https://github.com/nikeee/dot-language-server
diff --git a/.config/nvim/lua/mappings.lua b/.config/nvim/lua/mappings.lua
index 1e338f4..a5f50b2 100644
--- a/.config/nvim/lua/mappings.lua
+++ b/.config/nvim/lua/mappings.lua
@@ -31,8 +31,14 @@ Nmap("<c-j>", ":wincmd j<CR>")
Nmap("<c-h>", ":wincmd h<CR>")
Nmap("<c-l>", ":wincmd l<CR>")
+--- pane resize
+Nmap("_", ":resize -1<CR>")
+Nmap("+", ":resize +1<CR>")
+Nmap("<", ":vertical:resize -1<CR>")
+Nmap(">", ":vertical:resize +1<CR>")
+
-- pane spawn
-Nmap("t", ':split<CR>:wincmd j<CR>:term<CR>a')
+Nmap("t", ':split<CR>:wincmd j<CR>:term<CR>')
Nmap("s", ':vs<CR>:wincmd l<CR>')
-- escape terminal mode easier
diff --git a/.config/nvim/lua/plugins.lua b/.config/nvim/lua/plugins.lua
index ec13e3d..c97cb15 100644
--- a/.config/nvim/lua/plugins.lua
+++ b/.config/nvim/lua/plugins.lua
@@ -54,25 +54,14 @@ return require('packer').startup(function()
use { 'nvim-treesitter/nvim-treesitter', run = ':TSUpdate' }
use 'scrooloose/nerdcommenter' -- commenting shortcuts
- use {
- "folke/which-key.nvim",
- config = function()
- vim.o.timeout = true
- vim.o.timeoutlen = 300
- require("which-key").setup {
- -- your configuration comes here
- -- or leave it empty to use the default settings
- }
- end
- }
- use 'tpope/vim-eunuch' -- wrappers UNIX commands
- use 'tpope/vim-surround' -- surround characters shortcuts
- use 'tpope/vim-vinegar' -- make explore better
- use 'tpope/vim-endwise' -- wisely add
- use 'tpope/vim-repeat' -- repeat for plugins
+ use 'tpope/vim-eunuch' -- wrappers UNIX commands
+ use 'tpope/vim-surround' -- surround characters shortcuts
+ use 'tpope/vim-vinegar' -- make explore better
+ use 'tpope/vim-endwise' -- wisely add
+ use 'tpope/vim-repeat' -- repeat for plugins
use {
- 'prichrd/netrw.nvim', -- particles for ^
+ 'prichrd/netrw.nvim', -- particles for ^
config = function()
require("netrw").setup {
directory = '', -- Directory icon
@@ -129,4 +118,15 @@ return require('packer').startup(function()
use 'tpope/vim-dadbod' -- SQL
use 'nanotee/sqls.nvim'
+
+ use {
+ 'rmagatti/auto-session',
+ config = function()
+ vim.o.sessionoptions = "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal,localoptions"
+ require("auto-session").setup {
+ log_level = "error",
+ auto_session_suppress_dirs = { "~/", "~/Downloads", "/" },
+ }
+ end
+ }
end)
diff --git a/.config/nvim/lua/powerline.lua b/.config/nvim/lua/powerline.lua
index 9c29b12..5fe3c93 100644
--- a/.config/nvim/lua/powerline.lua
+++ b/.config/nvim/lua/powerline.lua
@@ -38,7 +38,7 @@ require('lualine').setup {
lualine_b = {},
lualine_c = {},
lualine_x = {},
- lualine_y = {},
+ lualine_y = { require('auto-session.lib').current_session_name, },
lualine_z = { 'tabs' }
},
winbar = {},
diff --git a/.config/nvim/lua/settings.lua b/.config/nvim/lua/settings.lua
index 837f22a..bfc771c 100644
--- a/.config/nvim/lua/settings.lua
+++ b/.config/nvim/lua/settings.lua
@@ -39,37 +39,46 @@ vim.o.showbreak = '↪' -- character to show when line is broken
vim.opt.clipboard = 'unnamedplus'
+-- title string
+vim.opt.title = true
+vim.opt.titlestring = 'neovim'
+
-- Sidebar
vim.o.number = true -- line number on the left
vim.o.numberwidth = 3 -- always reserve 3 spaces for line number
-vim.o.signcolumn = 'yes' -- keep 1 column for coc.vim check
+vim.o.signcolumn = 'yes' -- keep 1 column for check
vim.o.modelines = 0
vim.o.showcmd = true -- display command in bottom bar
+-- make term better
+vim.api.nvim_command('autocmd TermOpen * setlocal nonumber norelativenumber signcolumn=no')
+-- do insert on enter term
+-- vim.api.nvim_command('autocmd BufWinEnter,WinEnter term://* startinsert')
+
-- Search
-vim.o.incsearch = true -- starts searching as soon as typing, without enter needed
-vim.o.ignorecase = true -- ignore letter case when searching
-vim.o.smartcase = true -- case insentive unless capitals used in search
+vim.o.incsearch = true -- starts searching as soon as typing, without enter needed
+vim.o.ignorecase = true -- ignore letter case when searching
+vim.o.smartcase = true -- case insentive unless capitals used in search
-vim.o.matchtime = 2 -- delay before showing matching paren
-vim.o.mps = vim.o.mps .. ",<:>"
+vim.o.matchtime = 2 -- delay before showing matching paren
+vim.o.mps = vim.o.mps .. ",<:>"
-- White characters
-vim.o.autoindent = true
-vim.o.smartindent = true
-vim.o.tabstop = 2 -- 1 tab = 2 spaces
-vim.o.shiftwidth = 2 -- indentation rule
-vim.o.formatoptions =
-'qnj1' -- q - comment formatting; n - numbered lists; j - remove comment when joining lines; 1 - don't break after one-letter word
-vim.o.expandtab = true -- expand tab to spaces
+vim.o.autoindent = true
+vim.o.smartindent = true
+vim.o.tabstop = 2 -- 1 tab = 2 spaces
+vim.o.shiftwidth = 2 -- indentation rule
+vim.o.formatoptions =
+'qnj1' -- q - comment formatting; n - numbered lists; j - remove comment when joining lines; 1 - don't break after one-letter word
+vim.o.expandtab = true -- expand tab to spaces
-- Backup files
-vim.o.backup = true -- use backup files
-vim.o.writebackup = false
-vim.o.swapfile = false -- do not use swap file
-vim.o.undodir = HOME .. '/.vim/tmp/undo//' -- undo files
-vim.o.backupdir = HOME .. '/.vim/tmp/backup//' -- backups
-vim.o.directory = '/.vim/tmp/swap//' -- swap files
+vim.o.backup = true -- use backup files
+vim.o.writebackup = false
+vim.o.swapfile = false -- do not use swap file
+vim.o.undodir = HOME .. '/.vim/tmp/undo//' -- undo files
+vim.o.backupdir = HOME .. '/.vim/tmp/backup//' -- backups
+vim.o.directory = '/.vim/tmp/swap//' -- swap files
vim.cmd([[
au FileType python set ts=4 sw=4