diff --git a/home-manager/cli/bat.nix b/home-manager/cli/bat.nix deleted file mode 100644 index 4eb7354..0000000 --- a/home-manager/cli/bat.nix +++ /dev/null @@ -1,13 +0,0 @@ -_:{ - programs.bat = { - enable = true; - config = { - theme = "base16"; - }; - }; - - programs.zsh.shellAliases = { - cat = "bat"; - less = "bat"; - }; -} diff --git a/home-manager/cli/default.nix b/home-manager/cli/default.nix index 7511657..b7ac4e9 100644 --- a/home-manager/cli/default.nix +++ b/home-manager/cli/default.nix @@ -6,8 +6,5 @@ ./pass.nix ./gnupg.nix ./neovim.nix - ./vifm - ./bat.nix - ./eza.nix ]; } diff --git a/home-manager/cli/eza.nix b/home-manager/cli/eza.nix deleted file mode 100644 index 7345765..0000000 --- a/home-manager/cli/eza.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ pkgs, ...}: -{ - home.packages = with pkgs; [ - eza - ]; - - programs.zsh.shellAliases = { - ls = "eza"; - }; - home.sessionVariables = { - EXA_COLORS = "xx=2"; - }; -} diff --git a/home-manager/cli/vifm/default.nix b/home-manager/cli/vifm/default.nix deleted file mode 100644 index 4b613dd..0000000 --- a/home-manager/cli/vifm/default.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ pkgs, ...}: -{ - home.packages = with pkgs; [ - vifm - chafa - ]; - - home.file.".config/vifm/vifmrc".source = ./files/vifmrc; - home.file.".config/vifm/colors/base16-default-dark.vifm".source = ./files/base16-default-dark.vifm; -} diff --git a/home-manager/cli/vifm/files/base16-default-dark.vifm b/home-manager/cli/vifm/files/base16-default-dark.vifm deleted file mode 100644 index 41a106e..0000000 --- a/home-manager/cli/vifm/files/base16-default-dark.vifm +++ /dev/null @@ -1,29 +0,0 @@ -highlight clear - -highlight Win cterm=none ctermfg=7 ctermbg=0 -highlight OtherWin cterm=none ctermfg=20 ctermbg=18 -highlight Border cterm=none ctermfg=7 ctermbg=0 -highlight AuxWin cterm=none ctermfg=7 ctermbg=18 - -highlight TopLine cterm=bold ctermfg=7 ctermbg=18 -highlight TopLineSel cterm=bold ctermfg=0 ctermbg=5 - -highlight CmdLine cterm=none ctermfg=7 ctermbg=0 -highlight ErrorMsg cterm=bold ctermfg=1 ctermbg=0 -highlight StatusLine cterm=none ctermfg=7 ctermbg=18 -highlight JobLine cterm=bold ctermfg=5 ctermbg=0 -highlight SuggestBox cterm=bold ctermfg=7 ctermbg=8 -highlight WildMenu cterm=bold ctermfg=7 ctermbg=18 - -highlight CurrLine cterm=bold,inverse ctermfg=default ctermbg=default -highlight OtherLine cterm=bold ctermfg=default ctermbg=19 -highlight Selected cterm=bold ctermfg=16 ctermbg=18 -highlight LineNr cterm=none ctermfg=7 ctermbg=0 - -highlight Directory cterm=bold ctermfg=4 ctermbg=default -highlight Link cterm=none ctermfg=6 ctermbg=default -highlight BrokenLink cterm=none ctermfg=6 ctermbg=default -highlight Socket cterm=bold ctermfg=16 ctermbg=default -highlight Device cterm=none ctermfg=1 ctermbg=default -highlight Fifo cterm=none ctermfg=5 ctermbg=default -highlight Executable cterm=bold ctermfg=2 ctermbg=default diff --git a/home-manager/cli/vifm/files/vifmrc b/home-manager/cli/vifm/files/vifmrc deleted file mode 100644 index 1ffab40..0000000 --- a/home-manager/cli/vifm/files/vifmrc +++ /dev/null @@ -1,326 +0,0 @@ -" vim: filetype=vifm : - -" Command used to edit files in various contexts. The default is vim. -" If you would like to use another vi clone such as Elvis or Vile -" you will need to change this setting. -if executable('vim') - set vicmd=vim -elseif executable('nvim') - set vicmd=nvim -elseif executable('elvis') - set vicmd=elvis\ -G\ termcap -elseif executable('vile') - set vicmd=vile -elseif $EDITOR != '' - echo 'Note: using `'.$EDITOR.'` as an editor' - let &vicmd = $EDITOR -endif - -" This makes vifm perform file operations on its own instead of relying on -" standard utilities like `cp`. While using `cp` and alike is a more universal -" solution, it's also much slower when processing large amounts of files and -" doesn't support progress measuring. -set syscalls - -" Trash Directory -" The default is to move files that are deleted with dd or :d to -" the trash directory. If you change this you will not be able to move -" files by deleting them and then using p to put the file in the new location. -" I recommend not changing this until you are familiar with vifm. -" This probably shouldn't be an option. -set trash - -" What should be saved automatically on restarting vifm. Drop "savedirs" -" value if you don't want vifm to remember last visited directories for you. -set vifminfo=dhistory,chistory,state,tui,shistory, - \phistory,fhistory,dirstack,registers,bookmarks,bmarks - -" This is how many directories to store in the directory history. -set history=100 - -" Automatically resolve symbolic links on l or Enter. -set nofollowlinks - -" Natural sort of (version) numbers within text. -set sortnumbers - -" Maximum number of changes that can be undone. -set undolevels=100 - -" Use Vim's format of help file (has highlighting and "hyperlinks"). -" If you would rather use a plain text help file set novimhelp. -set vimhelp - -" If you would like to run an executable file when you -" press Enter, l or Right Arrow, set this. -set norunexec - -" List of color schemes to try (picks the first one supported by the terminal) -colorscheme base16-default-dark - -" Format for displaying time in file list. For example: -" TIME_STAMP_FORMAT=%m/%d-%H:%M -" See man date or man strftime for details. -set timefmt='%Y/%m/%d %H:%M' - -" Show list of matches on tab completion in command-line mode -set wildmenu - -" Display completions in a form of popup with descriptions of the matches -set wildstyle=popup - -" Display suggestions in normal, visual and view modes for keys, marks and -" registers (at most 5 files). In other view, when available. -set suggestoptions=normal,visual,view,otherpane,keys,marks,registers - -" Ignore case in search patterns unless it contains at least one uppercase -" letter -set ignorecase -set smartcase - -" Don't highlight search results automatically -set nohlsearch - -" Use increment searching (search while typing) -set incsearch - -" Try to leave some space from cursor to upper/lower border in lists -set scrolloff=4 - -" Don't do too many requests to slow file systems -if !has('win') - set slowfs=curlftpfs -endif -set milleroptions=lsize:1,csize:1,rsize:1,rpreview:all - -" set custom status line look -set statusline=" Hint: %z%= %A %10u:%-7g %15s %20d " - -"------------------------------------------------------------------------------ -" Bookmarks -" ------------------------------------------------------------------------------ - -" :mark mark /full/directory/path [filename] - -mark b ~/.local/bin/ -mark h ~/ - -" ------------------------------------------------------------------------------ -" Commands -" ------------------------------------------------------------------------------ - -" :com[mand][!] command_name action -" -" These are some of the macros that can be used in the action part: -" %a for user arguments -" %c for current file under the cursor -" %C for current file under the cursor of inactive pane -" %f for selected file(s) -" %F for selected file(s) of inactive pane -" %b is the same as %f %F -" %d for current directory name -" %D for current directory name of inactive pane -" %r{x} for list of files in register {x} -" %m runs the command in a menu window -" %u uses command's output to build a file list -" see `:help vifm-macros` and `:help vifm-filename-modifiers` for more - -command! df df -h %m 2> /dev/null -command! diff vim -d %f %F -command! zip zip -r %c.zip %f -command! run !! ./%f -command! make !!make %a -command! mkcd :mkdir %a | cd %a -command! vgrep vim "+grep %a" -command! reload :write | restart full - -" ------------------------------------------------------------------------------ -" File types association -" ------------------------------------------------------------------------------ - -" :filetype pattern1,pattern2 defaultprogram,program2 -" :fileviewer pattern1,pattern2 consoleviewer -" -" The first entry is the default program to be used with a matching file. -" The other programs for the file type can be accessed via :file command. -" The command macros like %f, %F, %d, %D may be used in the commands. -" The %a macro is ignored. To use a % you must put %%. -" Spaces in an app name must be escaped, for example: QuickTime\ Player.app - -" For automated FUSE mounts, you must register an extension with :file[x]type -" in one of the following formats: -" -" :filetype patterns FUSE_MOUNT|mount_cmd %SOURCE_FILE %DESTINATION_DIR -" -" %SOURCE_FILE and %DESTINATION_DIR are filled in at runtime. -" -" Example: -" :filetype *.zip,*.[jwe]ar FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR -" -" :filetype patterns FUSE_MOUNT2|mount_cmd %PARAM %DESTINATION_DIR -" -" %PARAM and %DESTINATION_DIR are filled in at runtime. -" -" Example: -" :filetype *.ssh FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR -" -" %PARAM value is the first line of the matched file, example: root@127.0.0.1:/ -" -" You can also add %CLEAR if you want to clear screen before running FUSE -" program. There is also %FOREGROUND, which is useful for entering passwords. - -fileviewer .*/,*/ ls --group-directories-first --classify --color %c -fileviewer {*.pdf}, pdftotext -nopgbrk %c - -fileviewer {*.bmp,*.jpg,*.jpeg,*.png,*.gif,*.xpm}, - \ chafa -f sixel -s %pwx%ph %c:p %pd %N 2>/dev/null -fileviewer *.zip,*.jar,*.war,*.ear,*.oxt tar -tf %f -fileviewer *.tgz,*.tar.gz tar -tzf %c -fileviewer *.tar.bz2,*.tbz2 tar -tjf %c -fileviewer *.tar.xz,*.txz tar -tJf %c -fileviewer *.tar.zst,*.tzst tar -t --zstd -f %c -fileviewer {*.tar}, tar -tf %c - -" rar archives -fileviewer {*.rar}, unrar v %c - -fileviewer {*.7z}, 7z l %c -fileviewer bat --color always --wrap never --pager never %c -p -filetype * xdg-open -" Customize view columns a bit (enable ellipsis for truncated file names) -set viewcolumns=-{name}..,6{}. - -" Show vertical border -set fillchars=vborder:│ - -" Filter-out build and temporary files -" filter! {*.lo,*.o,*.d,*.class,*.pyc,*.pyo,.*~} - -" ------------------------------------------------------------------------------ -" Sample keyboard mappings -" ------------------------------------------------------------------------------ - -" Start shell in current directory -nnoremap s :shell - -" Display sorting dialog -nnoremap S :sort - -" Toggle visibility of preview window -nnoremap w :view -vnoremap w :viewgv - -if $DISPLAY && executable('gvim') - " Open file in existing instance of gvim - nnoremap o :!gvim --remote-tab-silent %f - " Open file in new instance of gvim - nnoremap O :!gvim %f -endif - -" Open file in the background using its default program -nnoremap gb :file &l - -" Interaction with system clipboard -if has('win') - " Yank current directory path to Windows clipboard with forward slashes - nnoremap yp :!echo %"d:gs!\!/! %i | clip - " Yank path to current file to Windows clipboard with forward slashes - nnoremap yf :!echo %"c:gs!\!/! %i | clip -elseif $WAYLAND_DISPLAY - if executable('wl-copy') - " Yank current directory path into primary and selection clipboards - nnoremap yd :!echo -n %d | wl-copy %i && - \ echo -n %d | wl-copy -p %i - " Yank current file path into into primary and selection clipboards - nnoremap yf :!echo -n %c:p | wl-copy %i && - \ echo -n %c:p | wl-copy -p %i - endif -elseif $DISPLAY - if executable('xclip') - " Yank current directory path into the clipboard - nnoremap yd :!echo %d | xclip %i - " Yank current file path into the clipboard - nnoremap yf :!echo %c:p | xclip %i - elseif executable('xsel') - " Yank current directory path into primary and selection clipboards - nnoremap yd :!echo -n %d | xsel --input --primary %i && - \ echo -n %d | xsel --clipboard --input %i - " Yank current file path into into primary and selection clipboards - nnoremap yf :!echo -n %c:p | xsel --input --primary %i && - \ echo -n %c:p | xsel --clipboard --input %i - endif -endif - -" Mappings for faster renaming -nnoremap I cw -nnoremap cc cw -nnoremap A cw - -" As above, but without the file extension -" nnoremap I cW -" nnoremap cc cW -" nnoremap A cW - -" Open console in current directory -if $DISPLAY && executable('xterm') - nnoremap ,t :!xterm & -elseif $TERMINAL - nnoremap ,t :!$TERMINAL & -endif - -" Open editor to edit vifmrc and apply settings after returning to vifm -nnoremap ,c :write | edit $MYVIFMRC | restart full - -" Open gvim to edit vifmrc -if $DISPLAY && executable('gvim') - nnoremap ,C :!gvim --remote-tab-silent $MYVIFMRC & -endif - -" Toggle wrap setting on ,w key -nnoremap ,w :set wrap! - -" Example of standard two-panel file managers mappings -nnoremap :!less %f -nnoremap :edit -nnoremap :copy -nnoremap :move -nnoremap :mkdir -nnoremap :delete - -" Midnight commander alike mappings -" Open current directory in the other pane -nnoremap :sync -" Open directory under cursor in the other pane -nnoremap :sync %c -" Swap panes -nnoremap x - -" ------------------------------------------------------------------------------ -" Various customization examples -" ------------------------------------------------------------------------------ - -" Use ag (the silver searcher) instead of grep -" set grepprg='ag --line-numbers %i %a %s' - -" Add additional place to look for executables -" let $PATH = $HOME.'/bin/fuse:'.$PATH - -" Block particular shortcut -" nnoremap - -" Export IPC name of current instance as environment variable and use it to -" communicate with the instance later. -" -" It can be used in some shell script that gets run from inside vifm, for -" example, like this: -" vifm --server-name "$VIFM_SERVER_NAME" --remote +"cd '$PWD'" -" -" let $VIFM_SERVER_NAME = v:servername - -" Activate screen/tmux support -" screen! - -" ------------------------------------------------------------------------------ -" Icon decorations example -" ------------------------------------------------------------------------------ - -" https://github.com/cirala/vifm_devicons