diff options
| author | Robert Günzler <r@gnzler.io> | 2021-04-22 13:19:32 +0200 |
|---|---|---|
| committer | Robert Günzler <r@gnzler.io> | 2021-04-26 02:09:48 +0200 |
| commit | 23050d0a3a958cd011cd2bc87aa8a6f546399af2 (patch) | |
| tree | 841940ce746a0375b706cae810f4088839f3b0cb /.vim/init.lua | |
| parent | d3497269ec01f89178b784169bdc53cbd16aafa2 (diff) | |
vim: update
* adds colors * neuron.nvim config * etc.
Diffstat (limited to '.vim/init.lua')
| -rw-r--r-- | .vim/init.lua | 83 |
1 files changed, 51 insertions, 32 deletions
diff --git a/.vim/init.lua b/.vim/init.lua index 62cb9a3..e25acf7 100644 --- a/.vim/init.lua +++ b/.vim/init.lua @@ -3,6 +3,9 @@ local fn = vim.fn local g = vim.g local o = vim.o +local nnoremap = require('astronauta.keymap').nnoremap +local inoremap = require('astronauta.keymap').tnoremap + g.mapleader = ' ' -- <leader> key to <space> g.maplocalleader = '\\' @@ -12,6 +15,7 @@ local u = require('utils') -- OPTIONS -- {{{ cmd('set clipboard+=unnamedplus') +u.opt('o', 'exrc', true) u.opt('o', 'title', true) u.opt('o', 'shiftround', true) u.opt('o', 'termguicolors', true) @@ -41,36 +45,45 @@ u.opt('o', 'showcmd', false) u.opt('o', 'laststatus', 2) u.opt('o', 'ruler', true) u.opt('o', 'mouse', 'a') -u.opt('o', 'spell', false) +u.opt('o', 'spell', true) u.opt('o', 'lazyredraw', true) u.opt('o', 'backspace', 'indent,eol,start') u.opt('o', 'undolevels', 1000) u.opt('o', 'updatetime', 300) u.opt('o', 'signcolumn', 'yes') + +u.opt('w', 'conceallevel', 2) +u.opt('w', 'concealcursor', 'cv') + +u.opt('o', 'expandtab', true) -- }}} -- COLORS -- {{{ -g.nihoncolors_transparent_background = true -cmd('colorscheme nihoncolors') +-- g.nihoncolors_transparent_background = true +cmd('colorscheme lush') -- }}} -- KEY BINDS -- {{{ -u.map('n', 'Q', ':quitall', { silent = false }) -u.map('n', 'gb', ':bnext<CR>') -u.map('n', 'gB', ':bprevious<CR>') +nnoremap { 'Q', function() cmd [[ quitall ]] end, silent = false } +nnoremap { 'gb', function() cmd [[ bnext ]] end } +nnoremap { 'gB', function() cmd [[ bprevious ]] end } + -- terminal u.map('t', '<ESC>', '<C-\\><C-n>') u.map('t', '<Leader>qq', '<C-\\><C-n>:bdelete!<CR>') --- completion -u.map('i', '<C-n>', 'pumvisible() ? "\\<C-n>" : completion#trigger_completion()', { expr = true }) -u.map('i', '<C-p>', 'pumvisible() ? "\\<C-n>" : completion#trigger_completion()', { expr = true }) -u.map('i', '<C-j>', '<cmd>lua require("completion.source").nextCompletion()<CR>') -u.map('i', '<C-k>', '<cmd>lua require("completion.source").prevCompletion()<CR>') + +nnoremap { 'gf', function() require('misc').open_under_cursor('open') end } +nnoremap { 'gF', function() require('misc').open_under_cursor() end } +nnoremap { 'gx', function() require('misc').open_under_cursor('url-launcher') end } +nnoremap { 'gGw', function() require('misc').word_under_cursor(function(s) require('telescope.builtin.files').grep_string({ search = s }) end) end } +nnoremap { 'gGe', function() require('misc').expr_under_cursor(function(s) require('telescope.builtin.files').grep_string({ search = s }) end) end } +nnoremap { 'gGf', function() require('misc').file_under_cursor(function(s) require('telescope.builtin.files').grep_string({ search = s }) end) end } -- }}} -- AUTO GROUPS -- {{{ -u.augroup('yank_highlight', {{'TextYankPost', '*', 'silent! lua require("vim.highlight").on_yank()'}}) -u.augroup('diagnostics', {{'CursorHold', '*', 'lua vim.lsp.diagnostic.show_line_diagnostics()'}}) +u.augroup2 { + yank_highlight = {{ 'TextYankPost', '*', 'silent! lua require("vim.highlight").on_yank()' }} +} -- }}} -- USER COMMANDS -- {{{ @@ -82,26 +95,32 @@ u.def('SortLine', 'call setline(".", join(sort(split(getline("."), " ")), " "))' vim.api.nvim_command('hi StatusLineInsert guifg=#00ffff guibg=None') vim.api.nvim_command('hi StatusLineCommand guifg=#ff3300 guibg=None') statusline = function() - local sl = '' - -- left - sl = sl .. statusline_color(vim.fn.mode()) - sl = sl .. [[ ⢷ %<%F %-m %-r ]] - -- right - sl = sl .. [[ %= %l:%v %y ]] - return sl + local sl = '' + -- left + sl = sl .. statusline_color(vim.fn.mode()) + sl = sl .. [[ ⢷ %<%F %-m %-r ]] + -- right + sl = sl .. [[ %= %l:%v %y ]] + return sl end statusline_color = function(mode) - if mode == 'i' then - return '%#StatusLineInsert#' - elseif mode == 'c' then - return '%#StatusLineCommand#' - elseif mode == 'v' or mode == 'V' or mode == '' then - return '%#Visual#' - elseif mode == 'R' or mode == 'Rv' then - return '%1*' - -- return '%#Include#' - else - return '%1*' - end + if mode == 'i' then + return '%#StatusLineInsert#' + elseif mode == 'c' then + return '%#StatusLineCommand#' + elseif mode == 'v' or mode == 'V' or mode == '' then + return '%#Visual#' + elseif mode == 'R' or mode == 'Rv' then + return '%1*' + -- return '%#Include#' + else + return '%1*' + end end -- }}} + +-- source .nvimrc if it exists +local local_vimrc = vim.fn.getcwd()..'/.nvimrc' +if vim.loop.fs_stat(local_vimrc) then + vim.cmd('source '..local_vimrc) +end |