mirror of
https://git.sr.ht/~rouven/nixos-config
synced 2025-04-27 00:48:30 +02:00
modularized the config
This commit is contained in:
parent
fa032ceaca
commit
7e3ab85170
10 changed files with 375 additions and 355 deletions
99
users/rouven/modules/neovim/default.nix
Normal file
99
users/rouven/modules/neovim/default.nix
Normal file
|
@ -0,0 +1,99 @@
|
|||
{ config, pkgs, ... }:
|
||||
{
|
||||
programs.neovim = {
|
||||
enable = true;
|
||||
# defaultEditor = true; why the hell doesn't this work :(
|
||||
# vimAlias = true;
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
nerdtree
|
||||
nerdcommenter
|
||||
fugitive-gitlab-vim
|
||||
vim-repeat
|
||||
vim-airline
|
||||
fzf-vim
|
||||
dracula-vim
|
||||
vim-nix # this destroys my tab settings, ffs
|
||||
];
|
||||
extraConfig =
|
||||
''
|
||||
" basic commands bound to uppercase key
|
||||
command Q q
|
||||
command W w
|
||||
command Wq wq
|
||||
command WQ wq
|
||||
|
||||
set shiftwidth=4
|
||||
set noexpandtab
|
||||
set preserveindent
|
||||
set number relativenumber
|
||||
set tabstop=4
|
||||
set smartcase
|
||||
set colorcolumn=120
|
||||
set nowrap
|
||||
highlight ColorColumn ctermbg=darkgray
|
||||
|
||||
|
||||
" beautify indents
|
||||
:set list lcs=tab:\|\
|
||||
|
||||
nnoremap ; :
|
||||
nnoremap : ;
|
||||
vnoremap ; :
|
||||
vnoremap : ;
|
||||
|
||||
" set space as leader
|
||||
nnoremap <SPACE> <Nop>
|
||||
let mapleader = " "
|
||||
|
||||
" air-line
|
||||
let g:airline_powerline_fonts = 1
|
||||
|
||||
" NERDTree
|
||||
nnoremap <leader>n :NERDTreeFocus<CR> :NERDTreeRefreshRoot<CR>
|
||||
" NERDTree autostart"
|
||||
autocmd VimEnter * NERDTree | wincmd p
|
||||
|
||||
" Close the tab if NERDTree is the only window remaining in it.
|
||||
autocmd BufEnter * if winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif
|
||||
|
||||
"remove ex-mode shortcut
|
||||
nmap Q <Nop>
|
||||
|
||||
" trigger the fuzzy finder (fzf)
|
||||
nnoremap <leader>f :Files<CR>
|
||||
nnoremap <leader>g :GFiles<CR>
|
||||
nnoremap <leader>b :Buffers<CR>
|
||||
nnoremap <leader>r :Rg<CR>
|
||||
|
||||
" keybinds for coc
|
||||
nnoremap <leader>d :CocDiagnostics<CR>
|
||||
|
||||
" quickfixlist binds
|
||||
nnoremap <C-j> :cnext<CR>
|
||||
nnoremap <C-k> :cprev<CR>
|
||||
|
||||
" locallist binds
|
||||
nnoremap <C-l> :lnext<CR>
|
||||
nnoremap <C-h> :lprev<CR>
|
||||
|
||||
" split keybinds
|
||||
nnoremap <leader>s :sp<CR>
|
||||
nnoremap <leader>v :vs<CR>
|
||||
|
||||
nnoremap <leader>h <C-w>h
|
||||
nnoremap <leader>j <C-w>j
|
||||
nnoremap <leader>k <C-w>k
|
||||
nnoremap <leader>l <C-w>l
|
||||
|
||||
" coloring stuff
|
||||
let g:dracula_colorterm = 0
|
||||
colorscheme dracula
|
||||
|
||||
" better autocompletion menu colors
|
||||
highlight Pmenu ctermbg=darkgray ctermfg=black
|
||||
highlight PmenuSel ctermbg=gray ctermfg=black
|
||||
|
||||
'';
|
||||
};
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue