58 lines
1.5 KiB
Nix
58 lines
1.5 KiB
Nix
{ pkgs, ... }:
|
|
{
|
|
programs.neovim = {
|
|
enable = true;
|
|
defaultEditor = true;
|
|
viAlias = true;
|
|
vimAlias = true;
|
|
vimdiffAlias = true;
|
|
extraConfig = ''
|
|
" colorscheme elflord
|
|
set autoindent
|
|
set ruler
|
|
set pastetoggle=<F2>
|
|
set splitbelow
|
|
set splitright
|
|
set mouse=
|
|
set hidden
|
|
set expandtab
|
|
|
|
set tabstop=2
|
|
set softtabstop=2
|
|
|
|
set listchars="eol:¬,tab:>·,trail:~,extends:>,precedes:<,space:␣"
|
|
set grepprg=ack\ -k
|
|
|
|
set statusline+=%{SyntasticStatuslineFlag()}
|
|
set statusline+=%*
|
|
|
|
let g:syntastic_always_populate_loc_list = 1
|
|
let g:syntastic_auto_loc_list = 1
|
|
let g:syntastic_check_on_open = 1
|
|
let g:syntastic_check_on_wq = 0
|
|
let g:syntastic_mode_map = { 'mode': 'passive', 'active_filetypes': [],'passive_filetypes': [] }
|
|
"nnoremap <C-w>E :SyntasticCheck<CR> :SyntasticToggleMode<CR>
|
|
|
|
" Rust
|
|
"let g:rustfmt_autosave = 1
|
|
let g:racer_cmd="~/.cargo/bin/racer"
|
|
"let g:racer_experimental_completer = 1
|
|
au FileType rust nmap gd <Plug>(rust-def)
|
|
au FileType rust nmap gs <Plug>(rust-def-split)
|
|
au FileType rust nmap gx <Plug>(rust-def-vertical)
|
|
au FileType rust nmap <leader>gd <Plug>(rust-doc)
|
|
|
|
" Typescript
|
|
au BufRead,BufNewFile *.ts setfiletype typescript
|
|
|
|
" Options
|
|
filetype plugin indent on
|
|
syntax on
|
|
'';
|
|
plugins = with pkgs.vimPlugins; [
|
|
vim-sensible
|
|
vim-airline
|
|
];
|
|
};
|
|
catppuccin.nvim.enable = true;
|
|
}
|