diff options
| author | seth <[email protected]> | 2023-08-17 13:46:41 -0400 |
|---|---|---|
| committer | seth <[email protected]> | 2023-08-17 13:55:47 -0400 |
| commit | 6ca79241fe6a45ca4468e4c54c778df116c0b14f (patch) | |
| tree | ca6bbd7eaec86125c0e59a2553922ea4ef4a2b9b /users/seth/programs/vim.nix | |
| parent | 76127171e4ed7abcb2a14039f358e117aac20181 (diff) | |
users/seth: make everything a module
Diffstat (limited to 'users/seth/programs/vim.nix')
| -rw-r--r-- | users/seth/programs/vim.nix | 64 |
1 files changed, 38 insertions, 26 deletions
diff --git a/users/seth/programs/vim.nix b/users/seth/programs/vim.nix index 68062a7..0f81cfb 100644 --- a/users/seth/programs/vim.nix +++ b/users/seth/programs/vim.nix @@ -1,31 +1,43 @@ -{pkgs, ...}: { - programs.vim = { - enable = true; - packageConfigurable = pkgs.vim; - settings = { - expandtab = false; - shiftwidth = 2; - tabstop = 2; - }; - extraConfig = '' - " https://wiki.archlinux.org/title/XDG_Base_Directory - set runtimepath^=$XDG_CONFIG_HOME/vim - set runtimepath+=$XDG_DATA_HOME/vim - set runtimepath+=$XDG_CONFIG_HOME/vim/after +{ + config, + lib, + pkgs, + ... +}: let + cfg = config.getchoo.programs.vim; + inherit (lib) mkEnableOption mkIf; +in { + options.getchoo.programs.vim.enable = mkEnableOption "vim" // {default = true;}; + + config = mkIf cfg.enable { + programs.vim = { + enable = true; + packageConfigurable = pkgs.vim; + settings = { + expandtab = false; + shiftwidth = 2; + tabstop = 2; + }; + extraConfig = '' + " https://wiki.archlinux.org/title/XDG_Base_Directory + set runtimepath^=$XDG_CONFIG_HOME/vim + set runtimepath+=$XDG_DATA_HOME/vim + set runtimepath+=$XDG_CONFIG_HOME/vim/after - set packpath^=$XDG_DATA_HOME/vim,$XDG_CONFIG_HOME/vim - set packpath+=$XDG_CONFIG_HOME/vim/after,$XDG_DATA_HOME/vim/after - set packpath^=$XDG_DATA_HOME/vim,$XDG_CONFIG_HOME/vim - set packpath+=$XDG_CONFIG_HOME/vim/after,$XDG_DATA_HOME/vim/after + set packpath^=$XDG_DATA_HOME/vim,$XDG_CONFIG_HOME/vim + set packpath+=$XDG_CONFIG_HOME/vim/after,$XDG_DATA_HOME/vim/after + set packpath^=$XDG_DATA_HOME/vim,$XDG_CONFIG_HOME/vim + set packpath+=$XDG_CONFIG_HOME/vim/after,$XDG_DATA_HOME/vim/after - let g:netrw_home = $XDG_DATA_HOME."/vim" - call mkdir($XDG_DATA_HOME."/vim/spell", 'p') + let g:netrw_home = $XDG_DATA_HOME."/vim" + call mkdir($XDG_DATA_HOME."/vim/spell", 'p') - set backupdir=$XDG_STATE_HOME/vim/backup | call mkdir(&backupdir, 'p') - set directory=$XDG_STATE_HOME/vim/swap | call mkdir(&directory, 'p') - set undodir=$XDG_STATE_HOME/vim/undo | call mkdir(&undodir, 'p') - set viewdir=$XDG_STATE_HOME/vim/view | call mkdir(&viewdir, 'p') - set viminfofile=$XDG_STATE_HOME/vim/viminfo - ''; + set backupdir=$XDG_STATE_HOME/vim/backup | call mkdir(&backupdir, 'p') + set directory=$XDG_STATE_HOME/vim/swap | call mkdir(&directory, 'p') + set undodir=$XDG_STATE_HOME/vim/undo | call mkdir(&undodir, 'p') + set viewdir=$XDG_STATE_HOME/vim/view | call mkdir(&viewdir, 'p') + set viminfofile=$XDG_STATE_HOME/vim/viminfo + ''; + }; }; } |
