{pkgs, ...}: { programs.vim = { enable = true; settings = { copyindent = true; expandtab = false; hidden = true; history = 100; ignorecase = false; modeline = true; mousefocus = false; number = true; relativenumber = true; shiftwidth = 2; tabstop = 2; }; plugins = with pkgs.vimPlugins; [ onedark-vim everforest gruvbox vim-colors-solarized terminus vim-fugitive vim-gitgutter ]; extraConfig = '' set scrolloff=5 set hlsearch set background=dark set signcolumn=yes colorscheme gruvbox set updatetime=100 set cursorline set autoindent set belloff=all nnoremap :call system("wl-copy", @") nnoremap :nohlsearch ''; }; home.file.".vim/after/plugin/terminus.vim".text = '' let &t_SI="\e[6 q" let &t_EI="\e[2 q" ''; }