############ # bindings # ############ for mode in default insert bind --mode $mode \cf 'tmux-sessionizer ; commandline -f repaint' end # vi cursor style fish_vi_key_bindings set fish_cursor_default block set fish_cursor_insert line blink set fish_cursor_replace_one underscore blink set fish_cursor_visual block ############### # colorscheme # ############### # Learn more: https://fishshell.com/docs/current/interactive.html begin # scope this in a block to not leak variables everywhere set -l black "#073642" # .hs-identifier set -l grey "#a0a1a7" set -l cyan "#2aa198" # .hs-pragma set -l blue "#268bd2" # .hs-number set -l magenta "#d33682" # .hs-operator set -l green "#859900" # .hs-cpp set -l orange "#cb4b16" # .hs-char set -l red "#af005f" # .hs-special set -l purple "#5f5faf" # .hs-type set -l visual "#dbcba3" set -l cursor "#f0e5c9" # General set fish_color_normal $black # default color set fish_color_command # commands like echo set fish_color_keyword $red # keywords like if - this falls back on the command color if unset set fish_color_quote $orange # quoted text like "abc" set fish_color_redirection $magenta # IO redirections like >/dev/null set fish_color_end $magenta --bold # process separators like ; and & set fish_color_error $grey # syntax errors set fish_color_param $black # ordinary command parameters set fish_color_valid_path --italics # parameters that are filenames (if the file exists) set fish_color_option # options starting with “-”, up to the first “--” parameter set fish_color_comment $grey # comments like ‘# important’ set fish_color_selection --background=$visual # selected text in vi visual mode set fish_color_operator $magenta # parameter expansion operators like * and ~ set fish_color_escape $orange # character escapes like \n and \x70 set fish_color_autosuggestion $grey # autosuggestions (the proposed rest of a command) set fish_color_cwd $black # The current working directory in the default prompt set fish_color_cwd_root $red # The current working directory in the default prompt for the root user set fish_color_user $grey # The username in the default prompt set fish_color_host $black # The hostname in the default prompt set fish_color_host_remote $red # the hostname in the default prompt for remote sessions (like ssh) set fish_color_status $red # the last command’s nonzero exit code in the default prompt set fish_color_cancel $cyan --reverse # the ‘^C’ indicator on a canceled command set fish_color_search_match --background=$cursor # history search matches and selected pager items (background only) # Pager set fish_pager_color_progress --reverse # the progress bar at the bottom left corner set fish_pager_color_background # the background color of a line set fish_pager_color_prefix $black # the prefix string, i.e. the string that is to be completed set fish_pager_color_completion $grey # the completion itself, i.e. the proposed rest of the string set fish_pager_color_description $grey # the completion description set fish_pager_color_selected_background --background=$cursor # background of the selected completion set fish_pager_color_selected_prefix $black # prefix of the selected completion set fish_pager_color_selected_completion $black # suffix of the selected completion set fish_pager_color_selected_description $black # description of the selected completion # # Alternating colors # set fish_pager_color_secondary_background --background=$tinted_bg # background of every second unselected completion # set fish_pager_color_secondary_prefix # prefix of every second unselected completion # set fish_pager_color_secondary_completion # suffix of every second unselected completion # set fish_pager_color_secondary_description # description of every second unselected completion end ################### # shell variables # ################### # fzf preview theme (use delta instead of bat) set -x fzf_preview_file_cmd 'cat -n' # fzf-fish search hidden files set -x fzf_fd_opts --hidden --exclude=.git # fzf-fish using patdiff would show incomplete diff, it is a bug # don't do it # fd uses LS_COLORS set -x LS_COLORS (vivid -m 24-bit generate solarized-light) # similar to milou set -g sponge_purge_only_on_exit true