diff --git a/common/.config/nvim/init.lua b/common/.config/nvim/init.lua index 93d3d0c..ddd5875 100644 --- a/common/.config/nvim/init.lua +++ b/common/.config/nvim/init.lua @@ -1,5 +1,10 @@ -require('basics') -require('globals') -require('keymappings') +DATA_PATH = vim.fn.stdpath('data') +CACHE_PATH = vim.fn.stdpath('cache') + +vim.cmd('source ~/.vimrc') + +vim.api.nvim_set_hl(0, "NormalFloat", { bg = "NONE" }) +vim.api.nvim_set_hl(0, "FloatBorder", { bg = "NONE" }) +vim.api.nvim_set_hl(0, "CmpItemMenu", { bg = "NONE" }) + require('plugins') -require('post-plugin-basics') diff --git a/common/.config/nvim/lua/basics.lua b/common/.config/nvim/lua/basics.lua deleted file mode 100644 index 3d3a8ce..0000000 --- a/common/.config/nvim/lua/basics.lua +++ /dev/null @@ -1,108 +0,0 @@ - --- ================= Holy leader key ================= -- - -vim.g.mapleader = ',' - - -vim.keymap.set({'n', 'v', 'o', 's'}, '', '', {remap = true}) - --- ================= File management ================= -- - --- swapfile has global & local config, eventhough help says otherwise -vim.o.swapfile = false -- can open already open files -vim.bo.swapfile = false -vim.o.backup = false -vim.o.writebackup = false -vim.o.autoread = true -- auto file change detection --- clipboard -vim.opt.clipboard = "unnamedplus" - --- autocmds are currently not supported by nvim (0.5 nighlty) -vim.api.nvim_command([[ -" Triger `autoread` when files changes on disk -autocmd FocusGained,BufEnter,CursorHold,CursorHoldI * if mode() != 'c' | checktime | endif -" Notification after file change -autocmd FileChangedShellPost * - \ echohl WarningMsg | echo "File changed on disk. Buffer reloaded." | echohl None -]]) - --- ================= Scrolling ================= -- - -vim.o.scrolloff = 8 -- start scrolling when 8 lines away from margins - --- ================= Indentation ================= -- - --- pay attention to 'vim.bo' (buffer local options) and 'vim.o' (global options) --- see :help options.txt - --- for some reason these values need to be set in both o and bo objects --- eventhough these options are supposed to be local to buffer -vim.o.tabstop = 4 -- maximum width of tab character (measured in spaces) -vim.bo.tabstop = 4 -vim.o.shiftwidth = 4 -- size of indent (measured in spaces), should equal tabstop -vim.bo.shiftwidth = 4 -vim.o.softtabstop = 4 -- should be the same as the other two above -vim.bo.softtabstop = 4 -vim.o.expandtab = true -- expand tabs to spaces -vim.bo.expandtab = true -- expand tabs to spaces -vim.o.smartindent = true -- smart indenting on new line for C-like programs -vim.bo.smartindent = true -vim.o.autoindent = true -- copy the indentation from previous line -vim.bo.autoindent = true -vim.o.smarttab = true -- tab infront of a line inserts blanks based on shiftwidth - --- ================= Number column ================= -- - -vim.wo.number = true -vim.cmd [[ - augroup numbertoggle - autocmd! - autocmd BufEnter,FocusGained,InsertLeave,WinEnter * if &nu && mode() != "i" | set rnu | endif - autocmd BufLeave,FocusLost,InsertEnter,WinLeave * if &nu | set nornu | endif - augroup END -]] -- h/t https://jeffkreeftmeijer.com/vim-number/ - --- ================= Search ================= -- - -vim.o.ignorecase = true -- Ignorecase when searching -vim.o.incsearch = true -- start searching on each keystroke -vim.o.smartcase = true -- ignore case when lowercase, match case when capital case is used -vim.o.hlsearch = true -- highlight the search results - --- ================= Performance ================= -- - -vim.o.lazyredraw = false -- useful for when executing macros. -vim.o.ttimeoutlen = 30 -- ms to wait for a key code seq to complete - --- ================= NETRW ================= -- - -vim.g.netrw_banner = 0 -vim.g.netrw_liststyle = 3 -vim.g.netrw_browse_split = 4 -vim.g.netrw_altv = 1 -vim.g.netrw_winsize = 25 - --- ================= Misc ================= -- - -vim.wo.wrap = true -- wrap long text into multiple lines -vim.o.history = 10000 -- numbers of entries in history for ':' commands and search patterns (10000 = max) -vim.o.updatetime = 300 -- used for CursorHold event (for document highlighting detection) -vim.o.mouse = 'nv' -- allow mose in normal & visual mode - --- we want splits to be to the bottom and to the right -vim.o.splitright = true -vim.o.splitbelow = true - --- better autocomplete behaviour --- menuone - show popup menu also when there is only one match available --- preview - show extra information about currently selected completion --- noinsert - do not insert any text for match until the user selects it from the menu -vim.o.completeopt='menuone,preview,noinsert' - --- allows hidden buffers --- this means that a modified buffer doesn't need to be saved when changing --- tabs/windows. -vim.o.hidden=true - --- Copy paste between vim and everything else -vim.o.clipboard = "unnamedplus" diff --git a/common/.config/nvim/lua/globals.lua b/common/.config/nvim/lua/globals.lua deleted file mode 100644 index 60fadff..0000000 --- a/common/.config/nvim/lua/globals.lua +++ /dev/null @@ -1,2 +0,0 @@ -DATA_PATH = vim.fn.stdpath('data') -CACHE_PATH = vim.fn.stdpath('cache') diff --git a/common/.config/nvim/lua/keymappings.lua b/common/.config/nvim/lua/keymappings.lua deleted file mode 100644 index 862d748..0000000 --- a/common/.config/nvim/lua/keymappings.lua +++ /dev/null @@ -1,31 +0,0 @@ - -- defaults -local opts = { noremap = true, silent = true } - --- paste in insert mode -vim.api.nvim_set_keymap('i', '', '"+pa', opts) - --- paste and keep the paste register -vim.api.nvim_set_keymap('', 'p', '"_dP', opts) - --- peek registers -vim.api.nvim_set_keymap('n', 'r', ':Telescope registers', opts) - --- vscode style quick peek at the tree -vim.api.nvim_set_keymap('n', '', ":Lexplore:vertical resize 30", { noremap = true }) - --- make ctrl-shift arrows line movement -vim.api.nvim_set_keymap('n', '', 'ddkP', opts) -vim.api.nvim_set_keymap('v', '', ':m \'<-2gv=gv', opts) -vim.api.nvim_set_keymap('n', '', 'ddp', opts) -vim.api.nvim_set_keymap('v', '', ':m \'>+1gv=gv', opts) - --- Mapping U to Redo. -vim.api.nvim_set_keymap('', 'U', '', opts) -vim.api.nvim_set_keymap('', '', '', opts) - --- indent via Tab -vim.api.nvim_set_keymap('v', '', '>>_', opts) -vim.api.nvim_set_keymap('v', '', '<<_', opts) -vim.api.nvim_set_keymap('i', '', '\t', opts) -vim.api.nvim_set_keymap('i', '', '\b', opts) - diff --git a/common/.config/nvim/lua/lsp-general.lua b/common/.config/nvim/lua/lsp-general.lua index 3d581fb..2cb596d 100644 --- a/common/.config/nvim/lua/lsp-general.lua +++ b/common/.config/nvim/lua/lsp-general.lua @@ -171,3 +171,4 @@ vim.api.nvim_set_hl(0, "CmpItemMenu", { italic = true }) vim.diagnostic.config({ virtual_text = true }) + diff --git a/common/.config/nvim/lua/plugins.lua b/common/.config/nvim/lua/plugins.lua index dadec92..86dbe10 100644 --- a/common/.config/nvim/lua/plugins.lua +++ b/common/.config/nvim/lua/plugins.lua @@ -45,6 +45,13 @@ local packer = require('packer').startup(function(use) require('harpoon').setup({ tabline = true, }) + vim.keymap.set("n", "hg", require("harpoon.mark").toggle_file, { desc = "Add file to harpoon list" }) + vim.keymap.set("n", "hh", require("harpoon.ui").toggle_quick_menu, { desc = "Toggle harpoon menu" }) + for pos = 1, 9 do + vim.keymap.set("n", "h" .. pos, function() + require("harpoon.ui").nav_file(pos) + end, { desc = "Move to harpoon mark #" .. pos }) + end end } @@ -89,6 +96,9 @@ local packer = require('packer').startup(function(use) 'folke/zen-mode.nvim', config = function() require('zen-mode').setup({}) + vim.keymap.set("n", "z", function() + require("zen-mode").toggle() + end, { desc = "Toggle Zen Mode" }) end } diff --git a/common/.config/nvim/lua/post-plugin-basics.lua b/common/.config/nvim/lua/post-plugin-basics.lua index 7fb1456..9b83e70 100644 --- a/common/.config/nvim/lua/post-plugin-basics.lua +++ b/common/.config/nvim/lua/post-plugin-basics.lua @@ -1,52 +1,5 @@ --- ################# Basic settings dependent on plugins ################ -- --- ==================== KEYS ======================= -- - --- Harpoon ---vim.cmd('highlight! HarpoonNumberActive guibg=NONE guifg=#f5bde6') ---vim.cmd('highlight! HarpoonNumberInactive guibg=NONE guifg=#6e738d') ---vim.cmd('highlight! TabLineFill guibg=#24273a guifg=#cad3f5') - -vim.keymap.set("n", "hh", require("harpoon.ui").toggle_quick_menu, { desc = "Toggle Harpoon Menu" }) -vim.keymap.set("n", "hg", require("harpoon.mark").toggle_file, { desc = "Add file to harpoon list" }) -for pos = 1, 9 do - vim.keymap.set("n", "h" .. pos, function() - require("harpoon.ui").nav_file(pos) - end, { desc = "Move to harpoon mark #" .. pos }) -end - --- Zen mode -vim.keymap.set("n", "z", function() - require("zen-mode").toggle() -end, { desc = "Toggle Zen Mode" }) - --- ================= Visualization ================= -- - -vim.o.termguicolors = true +vsm.o.termguicolors = true vim.o.background = 'dark' ---require('kanagawa').setup({ - --undercurl = true, -- enable undercurls - --commentStyle = { italic = true }, - --functionStyle = {}, - --keywordStyle = { italic = true}, - --statementStyle = { bold = true }, - --typeStyle = {}, - --variablebuiltinStyle = { italic = true}, - --transparent = false, -- do not set background color - --dimInactive = false, -- dim inactive window `:h hl-NormalNC` - --globalStatus = true, -- adjust window separators highlight for laststatus=3 - --terminalColors = true, -- define vim.g.terminal_color_{0,17} - --colors = { - --bg = '#22222d', - --}, - --overrides = {}, - --theme = "default" -- Load "default" theme or the experimental "light" theme ---}) - --- setup must be called before loading vim.cmd("colorscheme kanagawa") -vim.api.nvim_set_hl(0, "NormalFloat", { bg = "NONE" }) -vim.api.nvim_set_hl(0, "FloatBorder", { bg = "NONE" }) -vim.api.nvim_set_hl(0, "CmpItemMenu", { bg = "NONE" }) - diff --git a/common/.config/polybar/modules.ini b/common/.config/polybar/modules.ini index 4c52e8a..2a3be00 100644 --- a/common/.config/polybar/modules.ini +++ b/common/.config/polybar/modules.ini @@ -25,7 +25,7 @@ label-urgent = %name% label-focused-padding = 1 label-unfocused-padding = 1 label-visible-padding = 1 -label-urgent-padding = 0 +label-urgent-padding = 1 label-separator-padding = 0 label-focused-background = ${colors.pink} diff --git a/common/.vimrc b/common/.vimrc new file mode 100644 index 0000000..2c74557 --- /dev/null +++ b/common/.vimrc @@ -0,0 +1,85 @@ +colorscheme kanagawa + +set confirm +set noswapfile +set termguicolors +set autoread + +set clipboard=unnamedplus + +" Triger `autoread` when files changes on disk +autocmd FocusGained,BufEnter,CursorHold,CursorHoldI * if mode() != 'c' | checktime | endif +" Notification after file change +autocmd FileChangedShellPost * + \ echohl WarningMsg | echo "File changed on disk. Buffer reloaded." | echohl None + +set scrolloff=4 +set tabstop=4 +set shiftwidth=4 +set softtabstop=4 +set expandtab +set smartindent +set autoindent +set smarttab +set wrap + +set ignorecase +set smartcase +set incsearch +set hlsearch + +set number +augroup numbertoggle + autocmd! + autocmd BufEnter,FocusGained,InsertLeave,WinEnter * if &nu && mode() != "i" | set rnu | endif + autocmd BufLeave,FocusLost,InsertEnter,WinLeave * if &nu | set nornu | endif +augroup END + +set nolazyredraw +set timeoutlen=600 + +let g:netrw_banner=0 +let g:netrw_liststyle=3 +let g:netrw_browse_split=4 +let g:netrw_altv=1 +let g:netrw_winsize=25 + +set history=1000 +set updatetime=69 +set mouse=nvi +set cursorline + +set splitbelow +set splitright + +set completeopt=menu,menuone,preview,noinsert,noselect +set guicursor=a:block,i:ver20,v-r:hor20 + +" The holy leader key +let g:mapleader="," +map + +" Drag lines +nn ddkP +vn :m '<-2gv=gv +nn ddp +vn :m '>+1gv=gv + +" Take a peek at netrw +nn :Lexplore:vertical resize 30 + +" Paste in insert mode +ino "+pa + +" Clear search +nn :nohlsearch + +" Better redo +nn U +nn + +" Peep the registers +nn r :Telescope registers + +" Paste and keep the " register +nn p "_dP diff --git a/common/.zshrc b/common/.zshrc index 57fa70a..fb6b494 100644 --- a/common/.zshrc +++ b/common/.zshrc @@ -7,16 +7,8 @@ plugins=(git fancy-ctrl-z fzf) source $ZSH/oh-my-zsh.sh -# more based keybinginds for regular ass typing -#source /usr/share/zsh/plugins/zsh-vi-mode/zsh-vi-mode.plugin.zsh -ZVM_VI_EDITOR=vim - # aliases - -alias vim=nvim -alias vi=nvim alias v=nvim -alias oldvim=vim export VISUAL=nvim; export EDITOR=nvim; @@ -33,7 +25,6 @@ export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || pr source $HOME/.zshrc.local - export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm