this repo has no description

broot + cleanup

+58 -481
+58 -1
home.nix
··· 30 30 config = { theme = "Solarized (light)"; }; 31 31 }; 32 32 33 + programs.broot = { 34 + enable = true; 35 + enableZshIntegration = true; 36 + # skin = "Solarized (light)"; 37 + skin = { 38 + default = "rgb(101, 123, 131) rgb(253, 246, 227) / rgb(147, 161, 161) rgb(238, 232, 213)"; 39 + tree = "rgb(147, 161, 161) none"; 40 + file = "none none"; 41 + directory = "rgb(38, 139, 210) none bold"; 42 + exe = "rgb(211, 1, 2) none"; 43 + link = "rgb(211, 54, 130) none"; 44 + pruning = "rgb(147, 161, 161) none italic"; 45 + perm__ = "rgb(147, 161, 161) none"; 46 + perm_r = "none none"; 47 + perm_w = "none none"; 48 + perm_x = "none none"; 49 + owner = "rgb(147, 161, 161) none"; 50 + group = "rgb(147, 161, 161) none"; 51 + sparse = "none none"; 52 + git_branch = "rgb(88, 110, 117) none"; 53 + git_insertions = "rgb(133, 153, 0) none"; 54 + git_deletions = "rgb(211, 1, 2) none"; 55 + git_status_current = "none none"; 56 + git_status_modified = "rgb(181, 137, 0) none"; 57 + git_status_new = "rgb(133, 153, 0) none"; 58 + git_status_ignored = "rgb(147, 161, 161) none"; 59 + git_status_conflicted = "rgb(211, 1, 2) none"; 60 + git_status_other = "rgb(211, 1, 2) none"; 61 + selected_line = "none rgb(238, 232, 213)"; 62 + char_match = "rgb(133, 153, 0) none underlined"; 63 + file_error = "rgb(203, 75, 22) none italic"; 64 + flag_label = "none none"; 65 + flag_value = "rgb(181, 137, 0) none bold"; 66 + input = "none none"; 67 + status_error = "rgb(203, 75, 22) rgb(238, 232, 213)"; 68 + status_job = "rgb(108, 113, 196) rgb(238, 232, 213) bold"; 69 + status_normal = "none rgb(238, 232, 213)"; 70 + status_italic = "rgb(181, 137, 0) rgb(238, 232, 213)"; 71 + status_bold = "rgb(88, 110, 117) rgb(238, 232, 213) bold"; 72 + status_code = "rgb(108, 113, 196) rgb(238, 232, 213)"; 73 + status_ellipsis = "none rgb(238, 232, 213)"; 74 + scrollbar_track = "rgb(238, 232, 213) none"; 75 + scrollbar_thumb = "none none"; 76 + help_paragraph = "none none"; 77 + help_bold = "rgb(88, 110, 117) none bold"; 78 + help_italic = "rgb(88, 110, 117) none italic"; 79 + help_code = "rgb(88, 110, 117) rgb(238, 232, 213)"; 80 + help_headers = "rgb(181, 137, 0) none"; 81 + help_table_border = "none none"; 82 + preview_title = "rgb(147, 161, 161) rgb(238, 232, 213)"; 83 + preview = "rgb(101, 123, 131) rgb(253, 246, 227) / rgb(147, 161, 161) rgb(238, 232, 213)"; 84 + preview_line_number = "rgb(147, 161, 161) rgb(238, 232, 213)"; 85 + preview_match = "None ansi(29)"; 86 + staging_area_title = "gray(22) rgb(253, 246, 227)"; 87 + }; 88 + }; 89 + 33 90 programs.fzf = { 34 91 enable = true; 35 92 enableZshIntegration = true; ··· 48 105 pkgs.delta # TODO: configure as part of programs.git 49 106 pkgs.wget 50 107 pkgs.curl 51 - # pkgs.vifm 52 108 53 109 # Non-free, or don't work on MacOS 54 110 # ---------------- 55 111 # pkgs.firefox 56 112 # pkgs.obsidian 57 113 # pkgs.slack 114 + # pkgs.signal-desktop 58 115 ]; 59 116 60 117 home.file = {
-8
tigrc
··· 1 - set refresh-mode = periodic 2 - set refresh-interval = 1 3 - 4 - set main-view-date = relative 5 - set tree-view-date = relative 6 - set stash-view-date = relative 7 - set refs-view-date = relative 8 - set blame-view-date = relative
-57
vifm/solarized-light.vifm
··· 1 - " VIFM COLORS 2 - " solarized light 3 - " based on: https://github.com/altercation/vim-colors-solarized/blob/master/colors/solarized.vim 4 - 5 - " default = -1 = None, can be used for transparency or default color 6 - " black = 0 7 - " red = 1 8 - " green = 2 9 - " yellow = 3 10 - " blue = 4 11 - " magenta = 5 12 - " cyan = 6 13 - " white = 7 14 - 15 - "elseif g:solarized_termcolors != 256 && &t_Co >= 16 16 - "let s:vmode = "cterm" 17 - "let s:base03 = "8" 18 - "let s:base02 = "0" 19 - "let s:base01 = "10" 20 - "let s:base00 = "11" 21 - "let s:base0 = "12" 22 - "let s:base1 = "14" 23 - "let s:base2 = "7" 24 - "let s:base3 = "15" 25 - "let s:yellow = "3" 26 - "let s:orange = "9" 27 - "let s:red = "1" 28 - "let s:magenta = "5" 29 - "let s:violet = "13" 30 - "let s:blue = "4" 31 - "let s:cyan = "6" 32 - "let s:green = "2" 33 - 34 - highlight clear 35 - 36 - highlight Win cterm=none ctermfg=default ctermbg=none 37 - highlight OtherWin cterm=none ctermfg=default ctermbg=white 38 - 39 - highlight TopLine cterm=none ctermfg=blue ctermbg=white 40 - highlight TopLineSel cterm=none,underline ctermfg=blue ctermbg=15 41 - highlight StatusLine cterm=none ctermfg=12 ctermbg=white 42 - highlight Border cterm=none ctermfg=blue ctermbg=white 43 - 44 - highlight Selected cterm=reverse ctermfg=14 ctermbg=15 45 - highlight CurrLine cterm=none ctermbg=white 46 - 47 - highlight WildMenu cterm=underline,reverse ctermfg=11 ctermbg=white 48 - highlight CmdLine cterm=none ctermfg=11 ctermbg=15 49 - highlight ErrorMsg cterm=none ctermfg=red ctermbg=white 50 - 51 - highlight Directory cterm=none ctermfg=blue ctermbg=default 52 - highlight Link cterm=none ctermfg=magenta ctermbg=default 53 - highlight BrokenLink cterm=bold ctermfg=red ctermbg=default 54 - highlight Socket cterm=none ctermfg=violet ctermbg=default 55 - highlight Device cterm=none ctermfg=green ctermbg=default 56 - highlight Fifo cterm=none ctermfg=cyan ctermbg=default 57 - highlight Executable cterm=none ctermfg=red ctermbg=default
-415
vifm/vifmrc
··· 1 - " vim: filetype=vifm : 2 - " Sample configuration file for vifm on OSX (last updated: 2 June, 2019) 3 - " You can edit this file by hand. 4 - " The " character at the beginning of a line comments out the line. 5 - " Blank lines are ignored. 6 - " The basic format for each item is shown with an example. 7 - 8 - " ------------------------------------------------------------------------------ 9 - 10 - " Command used to edit files in various contexts. The default is vim. 11 - " If you would like to use another vi clone such as Elvis or Vile 12 - " you will need to change this setting. 13 - 14 - set vicmd=vim 15 - " set vicmd=elvis\ -G\ termcap 16 - " set vicmd=vile 17 - 18 - " This makes vifm perform file operations on its own instead of relying on 19 - " standard utilities like `cp`. While using `cp` and alike is a more universal 20 - " solution, it's also much slower when processing large amounts of files and 21 - " doesn't support progress measuring. 22 - 23 - set syscalls 24 - 25 - " Trash Directory 26 - " The default is to move files that are deleted with dd or :d to 27 - " the trash directory. If you change this you will not be able to move 28 - " files by deleting them and then using p to put the file in the new location. 29 - " I recommend not changing this until you are familiar with vifm. 30 - " This probably shouldn't be an option. 31 - 32 - set trash 33 - 34 - " This is how many directories to store in the directory history. 35 - 36 - set history=100 37 - 38 - " Automatically resolve symbolic links on l or Enter. 39 - 40 - set nofollowlinks 41 - 42 - " With this option turned on you can run partially entered commands with 43 - " unambiguous beginning using :! (e.g. :!Te instead of :!Terminal or :!Te<tab>). 44 - 45 - " set fastrun 46 - 47 - " Natural sort of (version) numbers within text. 48 - 49 - set sortnumbers 50 - 51 - " Maximum number of changes that can be undone. 52 - 53 - set undolevels=100 54 - 55 - " Use Vim's format of help file (has highlighting and "hyperlinks"). 56 - " If you would rather use a plain text help file set novimhelp. 57 - 58 - set vimhelp 59 - 60 - " If you would like to run an executable file when you 61 - " press return on the file name set this. 62 - 63 - set norunexec 64 - 65 - " Selected color scheme 66 - 67 - colorscheme solarized-light 68 - 69 - " Format for displaying time in file list. For example: 70 - " TIME_STAMP_FORMAT=%m/%d-%H:%M 71 - " See man date or man strftime for details. 72 - 73 - set timefmt=%m/%d\ %H:%M 74 - 75 - " Show list of matches on tab completion in command-line mode 76 - 77 - set wildmenu 78 - 79 - " Display completions in a form of popup with descriptions of the matches 80 - 81 - set wildstyle=popup 82 - 83 - " Display suggestions in normal, visual and view modes for keys, marks and 84 - " registers (at most 5 files). In other view, when available. 85 - 86 - set suggestoptions=normal,visual,view,otherpane,keys,marks,registers 87 - 88 - " Ignore case in search patterns unless it contains at least one uppercase 89 - " letter 90 - 91 - set ignorecase 92 - set smartcase 93 - 94 - " Don't highlight search results automatically 95 - 96 - set nohlsearch 97 - 98 - " Use increment searching (search while typing) 99 - set incsearch 100 - 101 - " Try to leave some space from cursor to upper/lower border in lists 102 - 103 - set scrolloff=4 104 - 105 - " Don't do too many requests to slow file systems 106 - 107 - set slowfs=curlftpfs 108 - 109 - " Set custom status line look 110 - 111 - set statusline=" Hint: %z%= %A %10u:%-7g %15s %20d " 112 - 113 - " ------------------------------------------------------------------------------ 114 - 115 - " :mark mark /full/directory/path [filename] 116 - 117 - mark b ~/bin/ 118 - mark h ~/ 119 - 120 - " ------------------------------------------------------------------------------ 121 - 122 - " :com[mand][!] command_name action 123 - " The following macros can be used in a command 124 - " %a is replaced with the user arguments. 125 - " %c the current file under the cursor. 126 - " %C the current file under the cursor in the other directory. 127 - " %f the current selected file, or files. 128 - " %F the current selected file, or files in the other directory. 129 - " %b same as %f %F. 130 - " %d the current directory name. 131 - " %D the other window directory name. 132 - " %m run the command in a menu window 133 - 134 - command! df df -h %m 2> /dev/null 135 - command! diff vim -d %f %F 136 - command! zip zip -r %f.zip %f 137 - command! run !! ./%f 138 - command! make !!make %a 139 - command! mkcd :mkdir %a | cd %a 140 - command! reload :write | restart 141 - 142 - " ------------------------------------------------------------------------------ 143 - 144 - " The file type is for the default programs to be used with 145 - " a file extension. 146 - " :filetype pattern1,pattern2 defaultprogram,program2 147 - " :fileviewer pattern1,pattern2 consoleviewer 148 - " The other programs for the file type can be accessed with the :file command 149 - " The command macros %f, %F, %d, %F may be used in the commands. 150 - " Spaces in an app name will have to be escaped e.g. QuickTime\ Player.app 151 - " The %a macro is ignored. To use a % you must put %%. 152 - 153 - " For automated FUSE mounts, you must register an extension with :file[x]type 154 - " in one of following formats: 155 - " 156 - " :filetype extensions FUSE_MOUNT|some_mount_command using %SOURCE_FILE and %DESTINATION_DIR variables 157 - " %SOURCE_FILE and %DESTINATION_DIR are filled in by vifm at runtime. 158 - " A sample line might look like this: 159 - " :filetype *.zip,*.jar,*.war,*.ear FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR 160 - " 161 - " :filetype extensions FUSE_MOUNT2|some_mount_command using %PARAM and %DESTINATION_DIR variables 162 - " %PARAM and %DESTINATION_DIR are filled in by vifm at runtime. 163 - " A sample line might look like this: 164 - " :filetype *.ssh FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR 165 - " %PARAM value is filled from the first line of file (whole line). 166 - " Example first line for SshMount filetype: root@127.0.0.1:/ 167 - " 168 - " You can also add %CLEAR if you want to clear screen before running FUSE 169 - " program. 170 - 171 - " Pdf 172 - filetype *.pdf 173 - \ {Open in Preview} 174 - \ open -a Preview.app, 175 - \ {Open in Skim} 176 - \ open -a Skim.app, 177 - fileviewer *.pdf pdftotext -nopgbrk %c - 178 - 179 - " PostScript 180 - filetype *.ps,*.eps open -a Preview.app 181 - 182 - " Djvu 183 - filetype *.djvu open -a MacDjView.app 184 - 185 - " Audio 186 - filetype *.wav,*.mp3,*.flac,*.m4a,*.wma,*.ape,*.ac3,*.og[agx],*.spx,*.opus 187 - \ {Play using MPlayerX} 188 - \ open -a MPlayerX.app, 189 - \ {Open in iTunes} 190 - \ open -a iTunes.app, 191 - \ {Open in QuickTime Player} 192 - \ open -a QuickTime\ Player.app, 193 - fileviewer *.mp3 mp3info 194 - fileviewer *.flac soxi 195 - 196 - " Video 197 - filetype *.avi,*.mp4,*.wmv,*.dat,*.3gp,*.ogv,*.mkv,*.mpg,*.mpeg,*.vob, 198 - \*.fl[icv],*.m2v,*.mov,*.webm,*.ts,*.mts,*.m4v,*.r[am],*.qt,*.divx, 199 - \*.as[fx] 200 - \ {Open in VLC} 201 - \ open -a VLC.app, 202 - \ {Open in QuickTime Player} 203 - \ open -a QuickTime\ Player.app, 204 - \ {Open in MPlayerX} 205 - \ open -a MPlayerX.app, 206 - fileviewer *.avi,*.mp4,*.wmv,*.dat,*.3gp,*.ogv,*.mkv,*.mpg,*.mpeg,*.vob, 207 - \*.fl[icv],*.m2v,*.mov,*.webm,*.ts,*.mts,*.m4v,*.r[am],*.qt,*.divx, 208 - \*.as[fx] 209 - \ ffprobe -pretty %c 2>&1 210 - 211 - " Web 212 - filetype *.html,*.htm 213 - \ {Open in Safari} 214 - \ open -a Safari.app, 215 - \ {Open in Firefox} 216 - \ open -a Firefox.app, 217 - \ {Open in Chrome} 218 - \ open -a Google\ Chrome.app, 219 - \ {Open in vim} 220 - \ vim, 221 - fileviewer *.html,*.htm w3m -dump -T text/html 222 - 223 - " Object 224 - filetype *.o nm %f | less 225 - 226 - " Man page 227 - filetype *.[1-8] man ./%c 228 - fileviewer *.[1-8] man ./%c | col -b 229 - 230 - " Image 231 - filetype *.bmp,*.jpg,*.jpeg,*.png,*.gif,*.xpm, 232 - \ open -a Preview.app, 233 - fileviewer *.bmp,*.jpg,*.jpeg,*.png,*.gif,*.xpm 234 - \ identify %f 235 - 236 - " MD5 237 - filetype *.md5 238 - \ {Check MD5 hash sum} 239 - \ md5sum -c %f %S, 240 - 241 - " SHA1 242 - filetype *.sha1 243 - \ {Check SHA1 hash sum} 244 - \ sha1sum -c %f %S, 245 - 246 - " SHA256 247 - filetype *.sha256 248 - \ {Check SHA256 hash sum} 249 - \ sha256sum -c %f %S, 250 - 251 - " SHA512 252 - filetype *.sha512 253 - \ {Check SHA512 hash sum} 254 - \ sha512sum -c %f %S, 255 - 256 - " Torrent 257 - filetype *.torrent open -a Transmission.app 258 - fileviewer *.torrent dumptorrent -v %c 259 - 260 - " Extract zip files 261 - filetype *.zip unzip %f 262 - fileviewer *.zip,*.jar,*.war,*.ear zip -sf %c 263 - 264 - " Extract tar archives 265 - filetype *.tar,*.tar.bz2,*.tbz2,*.tgz,*.tar.gz tar -xf %f 266 - fileviewer *.tar,*.tar.bz2,*.tbz2,*.tgz,*.tar.gz tar -tf %f 267 - 268 - " Extract .bz2 archives 269 - filetype *.bz2 bzip2 -d %f 270 - 271 - " Extract .gz files 272 - filetype *.gz gunzip %f 273 - 274 - " Mount .dmg archives 275 - filetype *.dmg open 276 - 277 - " Mount disk .img 278 - filetype *.img open 279 - 280 - " Open .pkg binaries 281 - filetype *.pkg open 282 - 283 - " Office files 284 - filetype *.odt,*.doc,*.docx,*.xls,*.xlsx,*.odp,*.pptx,*.ppt open -a LibreOffice.app 285 - fileviewer *.doc antiword - 286 - fileviewer *.docx docx2txt.pl %f - 287 - 288 - " Syntax highlighting in preview 289 - " 290 - " Explicitly set highlight type for some extensions 291 - " 292 - " 256-color terminal 293 - " fileviewer *.[ch],*.[ch]pp highlight -O xterm256 -s dante --syntax c %c 294 - " fileviewer Makefile,Makefile.* highlight -O xterm256 -s dante --syntax make %c 295 - " 296 - " 16-color terminal 297 - " fileviewer *.c,*.h highlight -O ansi -s dante %c 298 - " 299 - " Or leave it for automatic detection 300 - " 301 - " fileviewer *[^/] pygmentize -O style=monokai -f console256 -g 302 - 303 - " Displaying pictures in terminal 304 - " 305 - " fileviewer *.jpg,*.png shellpic %c 306 - 307 - " Open all other files with default system programs (you can also remove all 308 - " :file[x]type commands above to ensure they don't interfere with system-wide 309 - " settings). By default all unknown files are opened with 'vi[x]cmd' 310 - " uncommenting one of lines below will result in ignoring 'vi[x]cmd' option 311 - " for unknown file types. 312 - " For OS X: 313 - " filetype * open 314 - 315 - " ------------------------------------------------------------------------------ 316 - 317 - " What should be saved automatically between vifm sessions. Drop "savedirs" 318 - " value if you don't want vifm to remember last visited directories for you. 319 - set vifminfo=dhistory,savedirs,chistory,state,tui,shistory, 320 - \phistory,fhistory,dirstack,registers,bookmarks,bmarks 321 - 322 - " ------------------------------------------------------------------------------ 323 - 324 - " Examples of configuring both panels 325 - 326 - " Customize view columns a bit (enable ellipsis for truncated file names) 327 - " 328 - " set viewcolumns=-{name}..,6{}. 329 - 330 - " Filter-out build and temporary files 331 - " 332 - " filter! /^.*\.(lo|o|d|class|py[co])$|.*~$/ 333 - 334 - " ------------------------------------------------------------------------------ 335 - 336 - " Sample mappings 337 - nnoremap ; : 338 - 339 - " Start shell in current directory 340 - nnoremap s :shell<cr> 341 - 342 - " Display sorting dialog 343 - nnoremap S :sort<cr> 344 - 345 - " Toggle visibility of preview window 346 - nnoremap w :view<cr> 347 - vnoremap w :view<cr>gv 348 - 349 - " Open file in new MacVim tab 350 - nnoremap o :!mvim --remote-tab-silent %f<cr> 351 - " Open file in new MacVim window 352 - nnoremap O :!mvim %f<cr> 353 - 354 - " Open file in the background using its default program 355 - nnoremap gb :!open -g %f<cr> 356 - 357 - " Yank current directory path into the clipboard 358 - nnoremap yd :!printf %d | pbcopy<cr> 359 - 360 - " Yank current file path into the clipboard 361 - nnoremap yf :!printf %c:p | pbcopy<cr> 362 - 363 - " View preview in Quick Look 364 - nnoremap q :!qlmanage -p %f > /dev/null 2>&1<cr> 365 - " Unhide builtin q* keymaps 366 - nnoremap q: q: 367 - nnoremap q/ q/ 368 - nnoremap q? q? 369 - nnoremap q= q= 370 - 371 - " Mappings for faster renaming 372 - nnoremap I cw<c-a> 373 - nnoremap cc cw<c-u> 374 - nnoremap A cw 375 - 376 - " Open editor to edit vifmrc and apply settings after returning to vifm 377 - nnoremap ,c :write | edit $MYVIFMRC | restart<cr> 378 - " Open MacVim to edit vifmrc 379 - nnoremap ,C :!mvim --remote-tab-silent $MYVIFMRC &<cr> 380 - 381 - " Toggle wrap setting on ,w key 382 - nnoremap ,w :set wrap!<cr> 383 - 384 - " Example of standard two-panel file managers mappings 385 - nnoremap <f3> :!less %f<cr> 386 - nnoremap <f4> :edit<cr> 387 - nnoremap <f5> :copy<cr> 388 - nnoremap <f6> :move<cr> 389 - nnoremap <f7> :mkdir<space> 390 - nnoremap <f8> :delete<cr> 391 - 392 - " ------------------------------------------------------------------------------ 393 - 394 - " Various customization examples 395 - 396 - " Use ag (the silver searcher) instead of grep 397 - " 398 - " set grepprg='ag --line-numbers %i %a %s' 399 - 400 - " Add additional place to look for executables 401 - " 402 - " let $PATH = $HOME.'/bin/fuse:'.$PATH 403 - 404 - " Block particular shortcut 405 - " 406 - " nnoremap <left> <nop> 407 - 408 - " Export IPC name of current instance as environment variable and use it to 409 - " communicate with the instance later. 410 - " 411 - " It can be used in some shell script that gets run from inside vifm, for 412 - " example, like this: 413 - " vifm --server-name "$VIFM_SERVER_NAME" --remote +"cd '$PWD'" 414 - " 415 - " let $VIFM_SERVER_NAME = v:servername