diff options
| -rw-r--r-- | .config/nvim/init.lua | 8 | ||||
| -rw-r--r-- | .config/nvim/lua/autocmds.lua | 24 | ||||
| -rw-r--r-- | .config/nvim/lua/mappings.lua | 31 | ||||
| -rw-r--r-- | .config/nvim/lua/plugin_settings.lua | 87 | ||||
| -rw-r--r-- | .config/nvim/lua/plugins.lua | 12 | ||||
| -rw-r--r-- | .config/nvim/lua/settings.lua | 12 |
6 files changed, 131 insertions, 43 deletions
diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index 9dcc9b5..071711d 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua | |||
| @@ -11,8 +11,12 @@ | |||
| 11 | -- │ ▘▝▀▘▝▀▘│ | 11 | -- │ ▘▝▀▘▝▀▘│ |
| 12 | -- └────────┘ | 12 | -- └────────┘ |
| 13 | 13 | ||
| 14 | -- do not source the default filetype.vim | ||
| 15 | -- needed for filetype.nvim | ||
| 16 | vim.g.did_load_filetypes = 1 | ||
| 17 | |||
| 14 | require('plugins') | 18 | require('plugins') |
| 15 | require('settings') | 19 | require('settings') |
| 16 | require('autocmds') | ||
| 17 | require('mappings') | ||
| 18 | require('plugin_settings') | 20 | require('plugin_settings') |
| 21 | require('mappings') | ||
| 22 | require('autocmds') | ||
diff --git a/.config/nvim/lua/autocmds.lua b/.config/nvim/lua/autocmds.lua index 295dcc2..6b3279e 100644 --- a/.config/nvim/lua/autocmds.lua +++ b/.config/nvim/lua/autocmds.lua | |||
| @@ -11,13 +11,6 @@ au.TextYankPost = function() | |||
| 11 | vim.highlight.on_yank({ higroup = 'Visual', timeout = 120 }) | 11 | vim.highlight.on_yank({ higroup = 'Visual', timeout = 120 }) |
| 12 | end | 12 | end |
| 13 | 13 | ||
| 14 | au.BufEnter = { | ||
| 15 | 'PKGBUILD', | ||
| 16 | function() | ||
| 17 | vim.bo.filetype = "PKGBUILD" | ||
| 18 | end, | ||
| 19 | } | ||
| 20 | |||
| 21 | -- autocmd FileType vimwiki,latex,tex setlocal formatprg=/home/yigit/.local/bin/sentences | 14 | -- autocmd FileType vimwiki,latex,tex setlocal formatprg=/home/yigit/.local/bin/sentences |
| 22 | au.FileType = { | 15 | au.FileType = { |
| 23 | 'vimwiki,latex,tex', | 16 | 'vimwiki,latex,tex', |
| @@ -54,6 +47,21 @@ au.VimResized = { | |||
| 54 | au.FileType = { | 47 | au.FileType = { |
| 55 | 'markdown,text', | 48 | 'markdown,text', |
| 56 | function() | 49 | function() |
| 57 | vim.bo.spell = true | 50 | vim.wo.spell = true |
| 58 | end, | 51 | end, |
| 59 | } | 52 | } |
| 53 | |||
| 54 | au.BufEnter = { | ||
| 55 | 'init.lua', | ||
| 56 | function() | ||
| 57 | vim.opt.path:append("./lua") | ||
| 58 | end | ||
| 59 | } | ||
| 60 | |||
| 61 | au.BufLeave = { | ||
| 62 | 'init.lua', | ||
| 63 | function() | ||
| 64 | vim.opt.path:remove("./lua") | ||
| 65 | end | ||
| 66 | } | ||
| 67 | |||
diff --git a/.config/nvim/lua/mappings.lua b/.config/nvim/lua/mappings.lua index f27ac1b..6633134 100644 --- a/.config/nvim/lua/mappings.lua +++ b/.config/nvim/lua/mappings.lua | |||
| @@ -1,9 +1,3 @@ | |||
| 1 | -- ┌──────────────────┐ | ||
| 2 | -- │ ▗ │ | ||
| 3 | -- │▛▀▖▞▀▖▞▀▖▌ ▌▄ ▛▚▀▖│ | ||
| 4 | -- │▌ ▌▛▀ ▌ ▌▐▐ ▐ ▌▐ ▌│ | ||
| 5 | -- │▘ ▘▝▀▘▝▀ ▘ ▀▘▘▝ ▘│ | ||
| 6 | -- └──────────────────┘ | ||
| 7 | -- ┌────────────────────────┐ | 1 | -- ┌────────────────────────┐ |
| 8 | -- │ ▗ │ | 2 | -- │ ▗ │ |
| 9 | -- │▛▚▀▖▝▀▖▛▀▖▛▀▖▄ ▛▀▖▞▀▌▞▀▘│ | 3 | -- │▛▚▀▖▝▀▖▛▀▖▛▀▖▄ ▛▀▖▞▀▌▞▀▘│ |
| @@ -22,6 +16,9 @@ end | |||
| 22 | local cmd = vim.cmd | 16 | local cmd = vim.cmd |
| 23 | local M = {} | 17 | local M = {} |
| 24 | 18 | ||
| 19 | -- edit vimrc \ev | ||
| 20 | map('n', '<leader>ev', ':tabnew<CR>:e ~/.config/nvim/init.lua<CR>') | ||
| 21 | |||
| 25 | -- brute force deasciify everything | 22 | -- brute force deasciify everything |
| 26 | map('n', '<Leader>tc', 'TurkishDeasciifyForce()', {expr = true}) | 23 | map('n', '<Leader>tc', 'TurkishDeasciifyForce()', {expr = true}) |
| 27 | map('x', '<Leader>tc', 'TurkishDeasciifyForce()', {expr = true}) | 24 | map('x', '<Leader>tc', 'TurkishDeasciifyForce()', {expr = true}) |
| @@ -42,7 +39,7 @@ map('n', '<Leader>rtrt', "TurkishAsciify() .. '_'", {expr = true}) | |||
| 42 | map('n', '*', ':keepjumps normal! mi*`i<CR>') | 39 | map('n', '*', ':keepjumps normal! mi*`i<CR>') |
| 43 | map('n', '#', ':keepjumps normal! mi#`i<CR> ') | 40 | map('n', '#', ':keepjumps normal! mi#`i<CR> ') |
| 44 | 41 | ||
| 45 | -- Save file as sudo on files that require root permission | 42 | -- save file as sudo on files that require root permission |
| 46 | map('c', 'w!!', 'execute "silent! write !sudo tee % >/dev/null" <bar> edit!') | 43 | map('c', 'w!!', 'execute "silent! write !sudo tee % >/dev/null" <bar> edit!') |
| 47 | 44 | ||
| 48 | -- replace ex mode with gq (format lines) | 45 | -- replace ex mode with gq (format lines) |
| @@ -51,25 +48,25 @@ map('n', 'Q', 'gq') | |||
| 51 | -- set formatprg to sentences, for prose | 48 | -- set formatprg to sentences, for prose |
| 52 | map('n', '<Leader>fp', ":set formatprg=~/.local/bin/sentences<CR>") | 49 | map('n', '<Leader>fp', ":set formatprg=~/.local/bin/sentences<CR>") |
| 53 | 50 | ||
| 54 | -- Replace all is aliased to S. | 51 | -- replace all is aliased to S. |
| 55 | map('n', 'S', ':%s//g<Left><Left>') | 52 | map('n', 'S', ':%s//g<Left><Left>') |
| 56 | 53 | ||
| 57 | -- If you like "Y" to work from the cursor to the end of line (which is more | 54 | -- if you like "Y" to work from the cursor to the end of line (which is more |
| 58 | -- logical, but not Vi-compatible) | 55 | -- logical, but not Vi-compatible) |
| 59 | map('n', 'Y', 'y$') | 56 | map('n', 'Y', 'y$') |
| 60 | 57 | ||
| 61 | -- jump to buffer | 58 | -- jump to buffer |
| 62 | map('n', '<Leader>b', ':ls<cr>:b<space>') | 59 | map('n', '<Leader>b', ':ls<cr>:b<space>') |
| 63 | 60 | ||
| 64 | -- Up and down are more logical with g.. | 61 | -- up and down are more logical with g.. |
| 65 | map('n', 'k', 'gk') | 62 | map('n', 'k', 'gk') |
| 66 | map('n', 'j', 'gj') | 63 | map('n', 'j', 'gj') |
| 67 | map('i', '<Up>', '<Esc>gka') | 64 | map('i', '<Up>', '<Esc>gka') |
| 68 | map('i', '<Down>', '<Esc>gja') | 65 | map('i', '<Down>', '<Esc>gja') |
| 69 | 66 | ||
| 70 | -- Disable highlight when <leader><cr> is pressed | 67 | -- disable highlight when <leader><cr> is pressed |
| 71 | map('n', '<Leader><Cr>', ':noh<Cr>') | 68 | map('n', '<Leader><Cr>', ':noh<Cr>') |
| 72 | -- Space used to toggle folds, now it's x (because x is d) | 69 | -- space used to toggle folds, now it's x (because x is d) |
| 73 | map('n', '<Space>', '"_x') | 70 | map('n', '<Space>', '"_x') |
| 74 | 71 | ||
| 75 | -- separate cut and delete | 72 | -- separate cut and delete |
| @@ -106,6 +103,9 @@ local function plugmap(mode, lhs, rhs, opts) | |||
| 106 | vim.api.nvim_set_keymap(mode, lhs, rhs, options) | 103 | vim.api.nvim_set_keymap(mode, lhs, rhs, options) |
| 107 | end | 104 | end |
| 108 | 105 | ||
| 106 | -- open the TagBar Plugin | ||
| 107 | plugmap('n', '<F3>', ':TagbarToggle<CR>') | ||
| 108 | |||
| 109 | -- sneak using grave, s is for sandwich | 109 | -- sneak using grave, s is for sandwich |
| 110 | plugmap('n', '`', '<Plug>Sneak_s') | 110 | plugmap('n', '`', '<Plug>Sneak_s') |
| 111 | plugmap('n', '`', '<Plug>Sneak_s') | 111 | plugmap('n', '`', '<Plug>Sneak_s') |
| @@ -145,4 +145,11 @@ plugmap('n', '<leader>v', '<Plug>VimwikiToggleListItem') | |||
| 145 | -- add/increase header level | 145 | -- add/increase header level |
| 146 | plugmap('n', '<leader>a', '<Plug>VimwikiAddHeaderLevel') | 146 | plugmap('n', '<leader>a', '<Plug>VimwikiAddHeaderLevel') |
| 147 | 147 | ||
| 148 | -- vim-test bindings | ||
| 149 | map('n', 't<C-n>', ':TestNearest<CR>') | ||
| 150 | map('n', 't<C-f>', ':TestFile<CR>') | ||
| 151 | map('n', 't<C-s>', ':TestSuite<CR>') | ||
| 152 | map('n', 't<C-l>', ':TestLast<CR>') | ||
| 153 | map('n', 't<C-g>', ':TestVisit<CR>') | ||
| 154 | |||
| 148 | -- 1}}} -- | 155 | -- 1}}} -- |
diff --git a/.config/nvim/lua/plugin_settings.lua b/.config/nvim/lua/plugin_settings.lua index 4e28726..60bbbe1 100644 --- a/.config/nvim/lua/plugin_settings.lua +++ b/.config/nvim/lua/plugin_settings.lua | |||
| @@ -1,9 +1,3 @@ | |||
| 1 | -- ┌──────────────────┐ | ||
| 2 | -- │ ▗ │ | ||
| 3 | -- │▛▀▖▞▀▖▞▀▖▌ ▌▄ ▛▚▀▖│ | ||
| 4 | -- │▌ ▌▛▀ ▌ ▌▐▐ ▐ ▌▐ ▌│ | ||
| 5 | -- │▘ ▘▝▀▘▝▀ ▘ ▀▘▘▝ ▘│ | ||
| 6 | -- └──────────────────┘ | ||
| 7 | -- ┌─────────────────────────────────────┐ | 1 | -- ┌─────────────────────────────────────┐ |
| 8 | -- │ ▜ ▐ ▐ ▗ │ | 2 | -- │ ▜ ▐ ▐ ▗ │ |
| 9 | -- │▛▀▖▐ ▌ ▌▞▀▌▗▖▖▞▀▘▞▀▖▜▀ ▜▀ ▄ ▛▀▖▞▀▌▞▀▘│ | 3 | -- │▛▀▖▐ ▌ ▌▞▀▌▗▖▖▞▀▘▞▀▖▜▀ ▜▀ ▄ ▛▀▖▞▀▌▞▀▘│ |
| @@ -118,7 +112,86 @@ g.vimtex_view_method = 'zathura' | |||
| 118 | g.vimtex_quickfix_mode = 0 | 112 | g.vimtex_quickfix_mode = 0 |
| 119 | -- }}} vimtex -- | 113 | -- }}} vimtex -- |
| 120 | 114 | ||
| 121 | vim.g.polyglot_disabled={'latex', 'tex'} | 115 | -- filetype.nvim {{{ -- |
| 116 | require('filetype').setup({ | ||
| 117 | overrides = { | ||
| 118 | literal = { | ||
| 119 | PKGBUILD = 'PKGBUILD', | ||
| 120 | }, | ||
| 121 | } | ||
| 122 | }) | ||
| 123 | -- }}} filetype.nvim -- | ||
| 124 | |||
| 125 | -- tagbar {{{ -- | ||
| 126 | g.tagbar_autofocus = 1 | ||
| 127 | g.tagbar_compact = 1 | ||
| 128 | g.tagbar_sort = 0 | ||
| 129 | g.tagbar_width = 25 | ||
| 130 | -- }}} tagbar -- | ||
| 131 | |||
| 132 | -- ledger {{{ -- | ||
| 133 | g.ledger_maxwidth = 80 | ||
| 134 | g.ledger_fillstring = ' -' | ||
| 135 | -- }}} ledger -- | ||
| 136 | |||
| 137 | -- devicons {{{ -- | ||
| 138 | require'nvim-web-devicons'.setup { | ||
| 139 | override = { | ||
| 140 | wiki = { | ||
| 141 | icon = "", | ||
| 142 | color = "#D7827E", | ||
| 143 | name = "vimwiki" | ||
| 144 | }, | ||
| 145 | rem = { | ||
| 146 | icon = "", | ||
| 147 | color = "#B4637A", | ||
| 148 | name = "remind" | ||
| 149 | } | ||
| 150 | }; | ||
| 151 | |||
| 152 | default = true | ||
| 153 | } | ||
| 154 | -- }}} devicons -- | ||
| 155 | |||
| 156 | -- vim-slime {{{ -- | ||
| 157 | g.slime_target = "tmux" | ||
| 158 | g.slime_paste_file = "$HOME/.slime_paste" | ||
| 159 | g.slime_default_config = {socket_name = vim.call("get", vim.call("split", vim.env.TMUX, ','), "0"), target_pane = "{last}"} | ||
| 160 | -- }}} vim-slime -- | ||
| 161 | |||
| 162 | -- gutentags {{{ -- | ||
| 163 | g.gutentags_enabled = 1 | ||
| 164 | g.gutentags_add_default_project_roots = 0 | ||
| 165 | g.gutentags_project_root = {'Makefile', '.git'} | ||
| 166 | g.gutentags_exclude_filetypes = {'gitcommit', 'gitconfig', 'gitrebase', 'gitsendemail', 'git'} | ||
| 167 | g.gutentags_generate_on_new = 1 | ||
| 168 | g.gutentags_generate_on_missing = 1 | ||
| 169 | g.gutentags_generate_on_write = 1 | ||
| 170 | g.gutentags_generate_on_empty_buffer = 0 | ||
| 171 | g.gutentags_ctags_exclude = { | ||
| 172 | '*.git', '*.svn', '*.hg', | ||
| 173 | 'cache', 'build', 'dist', 'bin', 'node_modules', 'bower_components', | ||
| 174 | '*-lock.json', '*.lock', | ||
| 175 | '*.min.*', | ||
| 176 | '*.bak', | ||
| 177 | '*.zip', | ||
| 178 | '*.pyc', | ||
| 179 | '*.class', | ||
| 180 | '*.sln', | ||
| 181 | '*.csproj', '*.csproj.user', | ||
| 182 | '*.tmp', | ||
| 183 | '*.cache', | ||
| 184 | '*.vscode', | ||
| 185 | '*.pdb', | ||
| 186 | '*.exe', '*.dll', '*.bin', | ||
| 187 | '*.mp3', '*.ogg', '*.flac', | ||
| 188 | '*.swp', '*.swo', | ||
| 189 | '.DS_Store', '*.plist', | ||
| 190 | '*.bmp', '*.gif', '*.ico', '*.jpg', '*.png', '*.svg', | ||
| 191 | '*.rar', '*.zip', '*.tar', '*.tar.gz', '*.tar.xz', '*.tar.bz2', | ||
| 192 | '*.pdf', '*.doc', '*.docx', '*.ppt', '*.pptx', '*.xls', | ||
| 193 | } | ||
| 194 | -- }}} gutentags -- | ||
| 122 | 195 | ||
| 123 | -- float preview | 196 | -- float preview |
| 124 | g["float_preview#docked"] = 0 | 197 | g["float_preview#docked"] = 0 |
diff --git a/.config/nvim/lua/plugins.lua b/.config/nvim/lua/plugins.lua index 4f5420f..8233e44 100644 --- a/.config/nvim/lua/plugins.lua +++ b/.config/nvim/lua/plugins.lua | |||
| @@ -12,7 +12,7 @@ return require('packer').startup(function() | |||
| 12 | -- latex suite | 12 | -- latex suite |
| 13 | use {'lervag/vimtex', ft = {'tex', 'latex', 'plaintext'}} | 13 | use {'lervag/vimtex', ft = {'tex', 'latex', 'plaintext'}} |
| 14 | 14 | ||
| 15 | -- still here | 15 | -- still here, going away soon say bye bye |
| 16 | use 'dense-analysis/ale' | 16 | use 'dense-analysis/ale' |
| 17 | -- manages tag files | 17 | -- manages tag files |
| 18 | use 'ludovicchabant/vim-gutentags' | 18 | use 'ludovicchabant/vim-gutentags' |
| @@ -31,13 +31,15 @@ return require('packer').startup(function() | |||
| 31 | use 'ncm2/float-preview.nvim' | 31 | use 'ncm2/float-preview.nvim' |
| 32 | 32 | ||
| 33 | -- language packs | 33 | -- language packs |
| 34 | use 'sheerun/vim-polyglot' | 34 | use "nathom/filetype.nvim" |
| 35 | -- i3 config syntax | 35 | -- i3 config filetype |
| 36 | use 'mboughaba/i3config.vim' | 36 | use 'mboughaba/i3config.vim' |
| 37 | -- kitty config filetype | 37 | -- kitty config filetype |
| 38 | use 'fladson/vim-kitty' | 38 | use 'fladson/vim-kitty' |
| 39 | -- ledger filetype | ||
| 40 | use 'ledger/vim-ledger' | ||
| 39 | 41 | ||
| 40 | use{'junegunn/fzf', dir = '~/.fzf'} | 42 | use {'junegunn/fzf', dir = '~/.fzf'} |
| 41 | use 'junegunn/fzf.vim' | 43 | use 'junegunn/fzf.vim' |
| 42 | 44 | ||
| 43 | -- file explorer | 45 | -- file explorer |
| @@ -116,7 +118,7 @@ return require('packer').startup(function() | |||
| 116 | use 'tpope/vim-unimpaired' | 118 | use 'tpope/vim-unimpaired' |
| 117 | -- git wrapper | 119 | -- git wrapper |
| 118 | use { | 120 | use { |
| 119 | 'tpope/vim-fugitive', cmd = { 'Git', 'Gstatus', 'Gblame', 'Gpush', 'Gpull' } | 121 | 'tpope/vim-fugitive', cmd = {'Git', 'Gstatus', 'Gblame', 'Gpush', 'Gpull'} |
| 120 | } | 122 | } |
| 121 | -- increment dates, times & more | 123 | -- increment dates, times & more |
| 122 | use 'tpope/vim-speeddating' | 124 | use 'tpope/vim-speeddating' |
diff --git a/.config/nvim/lua/settings.lua b/.config/nvim/lua/settings.lua index 5996c51..5931e5d 100644 --- a/.config/nvim/lua/settings.lua +++ b/.config/nvim/lua/settings.lua | |||
| @@ -1,9 +1,3 @@ | |||
| 1 | -- ┌──────────────────┐ | ||
| 2 | -- │ ▗ │ | ||
| 3 | -- │▛▀▖▞▀▖▞▀▖▌ ▌▄ ▛▚▀▖│ | ||
| 4 | -- │▌ ▌▛▀ ▌ ▌▐▐ ▐ ▌▐ ▌│ | ||
| 5 | -- │▘ ▘▝▀▘▝▀ ▘ ▀▘▘▝ ▘│ | ||
| 6 | -- └──────────────────┘ | ||
| 7 | -- ┌───────────────────────┐ | 1 | -- ┌───────────────────────┐ |
| 8 | -- │ ▐ ▐ ▗ │ | 2 | -- │ ▐ ▐ ▗ │ |
| 9 | -- │▞▀▘▞▀▖▜▀ ▜▀ ▄ ▛▀▖▞▀▌▞▀▘│ | 3 | -- │▞▀▘▞▀▖▜▀ ▜▀ ▄ ▛▀▖▞▀▌▞▀▘│ |
| @@ -34,9 +28,9 @@ o.softtabstop = 4 | |||
| 34 | o.tabstop = 8 | 28 | o.tabstop = 8 |
| 35 | 29 | ||
| 36 | -- use english for spellchecking, but don't spellcheck by default | 30 | -- use english for spellchecking, but don't spellcheck by default |
| 37 | o.spell = true | 31 | wo.spell = true |
| 38 | o.spelllang = "en_gb" | 32 | bo.spelllang = "en_gb" |
| 39 | o.spell = false | 33 | wo.spell = false |
| 40 | 34 | ||
| 41 | -- tab completion, zsh style | 35 | -- tab completion, zsh style |
| 42 | o.wildmode = "full" | 36 | o.wildmode = "full" |
