adding vim or something
This commit is contained in:
22
modules/features/vim/default.nix
Normal file
22
modules/features/vim/default.nix
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
inputs,
|
||||
moduleWithSystem,
|
||||
...
|
||||
}: {
|
||||
flake.nixosModules.vim = moduleWithSystem ({pkgs, ...}: let
|
||||
modules = [];
|
||||
in {});
|
||||
perSystem = {pkgs, ...}: {
|
||||
packages.vim = inputs.wrappers.wrappers.vim.wrap {
|
||||
inherit pkgs;
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
# vim-lsp
|
||||
# vim-lsp-settings
|
||||
# asyncomplete-vim
|
||||
# asyncomplete-lsp-vim
|
||||
ale
|
||||
];
|
||||
vimrc = builtins.readFile ./vimrc;
|
||||
};
|
||||
};
|
||||
}
|
||||
62
modules/features/vim/vimrc
Normal file
62
modules/features/vim/vimrc
Normal file
@@ -0,0 +1,62 @@
|
||||
" Set colorscheme and enable highlighting
|
||||
colorscheme catppuccin
|
||||
set termguicolors
|
||||
syntax on
|
||||
|
||||
" Set tab stuff
|
||||
set tabstop=2
|
||||
set shiftwidth=2
|
||||
set expandtab
|
||||
set softtabstop=2
|
||||
|
||||
" Enable line numbers
|
||||
set number
|
||||
set relativenumber
|
||||
set cursorline
|
||||
" Make cursorlinenum a different color
|
||||
augroup colorAutoCmds
|
||||
autocmd!
|
||||
autocmd ColorScheme * highlight CursorLineNr cterm=bold guifg=#cba6f7
|
||||
augroup END
|
||||
|
||||
set ignorecase
|
||||
set smartcase
|
||||
set hlsearch
|
||||
set incsearch
|
||||
|
||||
" Set different cursor shapes depending on mode
|
||||
let &t_SI = "\e[6 q"
|
||||
let &t_EI = "\e[2 q"
|
||||
augroup cursorCmds
|
||||
au!
|
||||
autocmd VimEnter * silent !echo -ne "\e[2 q"
|
||||
augroup END
|
||||
|
||||
" Completion menu
|
||||
"inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
|
||||
"inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
|
||||
"inoremap <expr> <cr> pumvisible() ? asyncomplete#close_popup() : "\<cr>"
|
||||
|
||||
set omnifunc=ale#completion#OmniFunc
|
||||
nnoremap K <cmd>ALEHover<CR>
|
||||
nnoremap <leader>gd <cmd>ALEGoToDefinition<CR>
|
||||
nnoremap <leader>gr <cmd>ALEFindReferences<CR>
|
||||
nnoremap <leader>ca <cmd>ALECodeAc
|
||||
let g:ale_completion_enabled = 1
|
||||
|
||||
autocmd User lsp_setup call lsp#register_server({
|
||||
\ 'name': 'nixd',
|
||||
\ 'cmd': ['nixd'],
|
||||
\ 'allowlist': ['nix'],
|
||||
\ })
|
||||
|
||||
let g:ale_linters = {
|
||||
\ 'nix': ['nixd'],
|
||||
\}
|
||||
|
||||
let g:ale_fixers = {
|
||||
\ 'nix': ['alejandra'],
|
||||
\}
|
||||
|
||||
let g:ale_fix_on_save = 1
|
||||
|
||||
Reference in New Issue
Block a user