mirror of
https://github.com/gensokyo-zone/infrastructure.git
synced 2026-02-09 12:29:19 -08:00
vim: move to neovim
This commit is contained in:
parent
88721ea1cb
commit
31d35be90f
3 changed files with 32 additions and 57 deletions
|
|
@ -1,15 +1,16 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
home.sessionVariables.EDITOR = "vim";
|
||||
programs.vim = {
|
||||
home.sessionVariables.EDITOR = "nvim";
|
||||
|
||||
programs.neovim = {
|
||||
enable = true;
|
||||
settings = { };
|
||||
package = pkgs.vim_configurable-pynvim;
|
||||
#withPython3 = true;
|
||||
extraConfig = import ./vimrc.nix { inherit pkgs config; };
|
||||
vimAlias = true;
|
||||
viAlias = true;
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
nerdtree
|
||||
vim-nix
|
||||
notmuch-vim
|
||||
rust-vim
|
||||
coc-nvim
|
||||
coc-rust-analyzer
|
||||
|
|
@ -27,33 +28,23 @@
|
|||
vim-lastplace
|
||||
base16-vim
|
||||
];
|
||||
#extraPackages = with pkgs;
|
||||
# [ (python3.withPackages (ps: with ps; [ black flake8 ])) ];
|
||||
#extraPython3Packages = (ps: with ps; [ jedi pylint ]);
|
||||
extraConfig = import ./vimrc.nix { inherit pkgs config; };
|
||||
};
|
||||
xdg.dataFile = {
|
||||
"vim/undo/.keep".text = "";
|
||||
"vim/swap/.keep".text = "";
|
||||
"vim/backup/.keep".text = "";
|
||||
};
|
||||
xdg.configFile = {
|
||||
"vim/coc/coc-settings.json".text = builtins.toJSON {
|
||||
"rust.rustfmt_path" = "${pkgs.rustfmt}/bin/rustfmt";
|
||||
"rust-analyzer.serverPath" = "rust-analyzer";
|
||||
"rust-analyzer.updates.prompt" = false;
|
||||
"rust-analyzer.notifications.cargoTomlNotFound" = false;
|
||||
"rust-analyzer.notifications.workspaceLoaded" = false;
|
||||
"rust-analyzer.procMacro.enable" = true;
|
||||
"rust-analyzer.cargo.loadOutDirsFromCheck" = true;
|
||||
"rust-analyzer.cargo-watch.enable" =
|
||||
true;
|
||||
"rust-analyzer.completion.addCallParenthesis" =
|
||||
false; # consider using this?
|
||||
"rust-analyzer.hoverActions.linksInHover" = true;
|
||||
"rust-analyzer.diagnostics.disabled" = [
|
||||
"inactive-code" # it has strange cfg support..?
|
||||
];
|
||||
coc = {
|
||||
enable = true;
|
||||
settings = {
|
||||
"rust.rustfmt_path" = "${pkgs.rustfmt}/bin/rustfmt";
|
||||
"rust-analyzer.serverPath" = "rust-analyzer";
|
||||
"rust-analyzer.updates.prompt" = false;
|
||||
"rust-analyzer.notifications.cargoTomlNotFound" = false;
|
||||
"rust-analyzer.notifications.workspaceLoaded" = false;
|
||||
"rust-analyzer.procMacro.enable" = true;
|
||||
"rust-analyzer.cargo.loadOutDirsFromCheck" = true;
|
||||
"rust-analyzer.cargo-watch.enable" = true;
|
||||
"rust-analyzer.completion.addCallParenthesis" = false; # consider using this?
|
||||
"rust-analyzer.hoverActions.linksInHover" = true;
|
||||
"rust-analyzer.diagnostics.disabled" = [
|
||||
"inactive-code" # it has strange cfg support..?
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,9 +8,8 @@
|
|||
''}";
|
||||
" Enable mouse
|
||||
set mouse=a
|
||||
set ttymouse=sgr
|
||||
|
||||
set viminfo='100000,<100000,s1000,h,n$XDG_DATA_HOME/vim/viminfo
|
||||
set viminfo='100000,<100000,s1000,h,n$XDG_DATA_HOME/vim/viminfo'
|
||||
|
||||
" colors
|
||||
let base16colorspace=256
|
||||
|
|
@ -23,7 +22,7 @@
|
|||
" tabline
|
||||
let g:airline#extensions#tabline#enabled = 1
|
||||
|
||||
" notmuch!
|
||||
" notmuch!
|
||||
let g:notmuch_config_file='${config.xdg.configHome}/notmuch/notmuchrc'
|
||||
let g:notmuch_folders_count_threads=0
|
||||
let g:notmuch_date_format='%y-%m-%d %H:%M'
|
||||
|
|
@ -32,18 +31,9 @@
|
|||
let g:notmuch_search_date_format='%Y/%m/%d %H:%M'
|
||||
let g:notmuch_html_converter='${pkgs.elinks}/bin/elinks --dump'
|
||||
|
||||
" lastplace
|
||||
" lastplace
|
||||
let g:lastplace_ignore = "gitcommit,gitrebase,svn,hgcommit"
|
||||
|
||||
autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() |
|
||||
\ quit | endif
|
||||
autocmd BufEnter * if bufname('#') =~ 'NERD_tree_\d\+' && bufname('%') !~ 'NERD_tree_\d\+' && winnr('$') > 1 |
|
||||
\ let buf=bufnr() | buffer# | execute "normal! \<C-W>w" | execute 'buffer'.buf | endif
|
||||
nnoremap <leader>n :NERDTreeFocus<CR>
|
||||
nnoremap <C-n> :NERDTree<CR>
|
||||
nnoremap <C-t> :NERDTreeToggle<CR>
|
||||
nnoremap <C-f> :NERDTreeFind<CR>
|
||||
|
||||
let g:coc_node_path='${pkgs.nodejs}/bin/node'
|
||||
let g:coc_config_home=$XDG_CONFIG_HOME . '/vim/coc'
|
||||
|
||||
|
|
@ -64,7 +54,7 @@
|
|||
set hlsearch
|
||||
set relativenumber
|
||||
set completeopt=longest,menuone
|
||||
|
||||
|
||||
command Spaces set expandtab
|
||||
command Tabs set noexpandtab
|
||||
|
||||
|
|
@ -200,10 +190,4 @@
|
|||
nnoremap <silent><nowait> <space>k :<C-u>CocPrev<CR>
|
||||
" Resume latest coc list.
|
||||
nnoremap <silent><nowait> <space>p :<C-u>CocListResume<CR>
|
||||
|
||||
'' + (if config.wayland.windowManager.sway.enable then ''
|
||||
noremap "+y y:call system("wl-copy", @")<CR>
|
||||
nnoremap "+p :let @"=substitute(system("wl-paste --no-newline"), '<C-v><C-m>', ''', 'g')<CR>p
|
||||
nnoremap "*p :let @"=substitute(system("wl-paste --no-newline --primary"), '<C-v><C-m>', ''', 'g')<CR>p
|
||||
'' else
|
||||
"")
|
||||
''
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue