From 35f04a1797c418af8db6a9cdc4eb730921a8de93 Mon Sep 17 00:00:00 2001 From: Julian Ospald Date: Thu, 7 May 2020 01:35:18 +0200 Subject: [PATCH] Initial commit --- completions/ghcup.fish | 19 +++++++++++++++ conf.d/omf.fish | 7 ++++++ config.fish | 23 ++++++++++++++++++ fish_variables | 34 +++++++++++++++++++++++++++ fishd.localhost | 31 ++++++++++++++++++++++++ functions/fish_prompt.1588176641.copy | 27 +++++++++++++++++++++ functions/fish_prompt.fish | 1 + functions/re_search.fish | 14 +++++++++++ 8 files changed, 156 insertions(+) create mode 100644 completions/ghcup.fish create mode 100644 conf.d/omf.fish create mode 100644 config.fish create mode 100644 fish_variables create mode 100644 fishd.localhost create mode 100644 functions/fish_prompt.1588176641.copy create mode 120000 functions/fish_prompt.fish create mode 100644 functions/re_search.fish diff --git a/completions/ghcup.fish b/completions/ghcup.fish new file mode 100644 index 0000000..1605ba5 --- /dev/null +++ b/completions/ghcup.fish @@ -0,0 +1,19 @@ + function _ghcup + set -l cl (commandline --tokenize --current-process) + # Hack around fish issue #3934 + set -l cn (commandline --tokenize --cut-at-cursor --current-process) + set -l cn (count $cn) + set -l tmpline --bash-completion-enriched --bash-completion-index $cn + for arg in $cl + set tmpline $tmpline --bash-completion-word $arg + end + for opt in (ghcup $tmpline) + if test -d $opt + echo -E "$opt/" + else + echo -E "$opt" + end + end +end + +complete --no-files --command ghcup --arguments '(_ghcup)' diff --git a/conf.d/omf.fish b/conf.d/omf.fish new file mode 100644 index 0000000..3e0f6d6 --- /dev/null +++ b/conf.d/omf.fish @@ -0,0 +1,7 @@ +# Path to Oh My Fish install. +set -q XDG_DATA_HOME + and set -gx OMF_PATH "$XDG_DATA_HOME/omf" + or set -gx OMF_PATH "$HOME/.local/share/omf" + +# Load Oh My Fish configuration. +source $OMF_PATH/init.fish diff --git a/config.fish b/config.fish new file mode 100644 index 0000000..e7132a4 --- /dev/null +++ b/config.fish @@ -0,0 +1,23 @@ +set -g theme_display_git_master_branch yes +set -g theme_newline_cursor yes +set -g theme_newline_prompt '$ ' +set -g theme_display_user ssh +set -g theme_display_hostname ssh +set -g theme_color_scheme dark +set -g theme_date_timezone Europe/Berlin +set -g theme_date_format "+%a %H:%M" +set -g theme_nerd_fonts yes + +set -gx PATH /home/hasufell/.ghcup/bin /home/hasufell/go/bin /home/hasufell/.cargo/bin /home/hasufell/.cabal/bin /home/hasufell/.local/bin $PATH + +set -g PAGER most + +set -gx LS_COLORS "rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:" + +bind \cr re_search + +alias grep="grep -d skip --color=always" +alias vncstart='x11vnc -display :0 -forever -rfbport 5900 -httpdir /usr/share/tightvnc/classes/ -rfbauth ~/.vnc/passwd' +alias ls="lsd" +alias gpf='git pull --ff-only' + diff --git a/fish_variables b/fish_variables new file mode 100644 index 0000000..6cd99ea --- /dev/null +++ b/fish_variables @@ -0,0 +1,34 @@ +# This file contains fish universal variable definitions. +# VERSION: 3.0 +SETUVAR __fish_init_2_39_8:\x1d +SETUVAR __fish_init_2_3_0:\x1d +SETUVAR __fish_initialized:3100 +SETUVAR fish_color_autosuggestion:555\x1ebrblack +SETUVAR fish_color_cancel:\x2dr +SETUVAR fish_color_command:\x2d\x2dbold +SETUVAR fish_color_comment:red +SETUVAR fish_color_cwd:green +SETUVAR fish_color_cwd_root:red +SETUVAR fish_color_end:brmagenta +SETUVAR fish_color_error:brred +SETUVAR fish_color_escape:bryellow\x1e\x2d\x2dbold +SETUVAR fish_color_history_current:\x2d\x2dbold +SETUVAR fish_color_host:normal +SETUVAR fish_color_host_remote:yellow +SETUVAR fish_color_match:\x2d\x2dbackground\x3dbrblue +SETUVAR fish_color_normal:normal +SETUVAR fish_color_operator:bryellow +SETUVAR fish_color_param:cyan +SETUVAR fish_color_quote:yellow +SETUVAR fish_color_redirection:brblue +SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack +SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack +SETUVAR fish_color_status:red +SETUVAR fish_color_user:brgreen +SETUVAR fish_color_valid_path:\x2d\x2dunderline +SETUVAR fish_greeting:Welcome\x20to\x20fish\x2c\x20the\x20friendly\x20interactive\x20shell +SETUVAR fish_key_bindings:fish_default_key_bindings +SETUVAR fish_pager_color_completion:\x1d +SETUVAR fish_pager_color_description:B3A06D\x1eyellow +SETUVAR fish_pager_color_prefix:white\x1e\x2d\x2dbold\x1e\x2d\x2dunderline +SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan diff --git a/fishd.localhost b/fishd.localhost new file mode 100644 index 0000000..93eb0b8 --- /dev/null +++ b/fishd.localhost @@ -0,0 +1,31 @@ +# This file is automatically generated by the fish. +# Do NOT edit it directly, your changes will be overwritten. +SET __fish_init_2_39_8:\x1d +SET __fish_init_2_3_0:\x1d +SET fish_color_autosuggestion:555\x1ebrblack +SET fish_color_cancel:\x2dr +SET fish_color_command:\x2d\x2dbold +SET fish_color_comment:red +SET fish_color_cwd:green +SET fish_color_cwd_root:red +SET fish_color_end:brmagenta +SET fish_color_error:brred +SET fish_color_escape:bryellow\x1e\x2d\x2dbold +SET fish_color_history_current:\x2d\x2dbold +SET fish_color_host:normal +SET fish_color_match:\x2d\x2dbackground\x3dbrblue +SET fish_color_normal:normal +SET fish_color_operator:bryellow +SET fish_color_param:cyan +SET fish_color_quote:yellow +SET fish_color_redirection:brblue +SET fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack +SET fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack +SET fish_color_user:brgreen +SET fish_color_valid_path:\x2d\x2dunderline +SET fish_greeting:Welcome\x20to\x20fish\x2c\x20the\x20friendly\x20interactive\x20shell +SET fish_key_bindings:fish_default_key_bindings +SET fish_pager_color_completion:\x1d +SET fish_pager_color_description:B3A06D\x1eyellow +SET fish_pager_color_prefix:white\x1e\x2d\x2dbold\x1e\x2d\x2dunderline +SET fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan diff --git a/functions/fish_prompt.1588176641.copy b/functions/fish_prompt.1588176641.copy new file mode 100644 index 0000000..4f86aec --- /dev/null +++ b/functions/fish_prompt.1588176641.copy @@ -0,0 +1,27 @@ +function fish_prompt --description 'Write out the prompt' + set -l last_pipestatus $pipestatus + set -l last_status $status + set -l normal (set_color normal) + + # Color the prompt differently when we're root + set -l color_cwd $fish_color_cwd + set -l prefix + set -l suffix '>' + if contains -- $USER root toor + if set -q fish_color_cwd_root + set color_cwd $fish_color_cwd_root + end + set suffix '#' + end + + # If we're running via SSH, change the host color. + set -l color_host $fish_color_host + if set -q SSH_TTY + set color_host $fish_color_host_remote + end + + # Write pipestatus + set -l prompt_status (__fish_print_pipestatus " [" "]" "|" (set_color $fish_color_status) (set_color --bold $fish_color_status) $last_pipestatus) + + echo -n -s (set_color $fish_color_user) "$USER" $normal @ (set_color $color_host) (prompt_hostname) $normal ' ' (set_color $color_cwd) (prompt_pwd) $normal (fish_vcs_prompt) $normal $prompt_status $suffix " " +end diff --git a/functions/fish_prompt.fish b/functions/fish_prompt.fish new file mode 120000 index 0000000..d9eeb3b --- /dev/null +++ b/functions/fish_prompt.fish @@ -0,0 +1 @@ +/home/hasufell/.local/share/omf/themes/bobthefish/fish_prompt.fish \ No newline at end of file diff --git a/functions/re_search.fish b/functions/re_search.fish new file mode 100644 index 0000000..f4506d6 --- /dev/null +++ b/functions/re_search.fish @@ -0,0 +1,14 @@ +function re_search + set -l tmp (mktemp -t fish.XXXXXX) + set -x SEARCH_BUFFER (commandline -b) + re-search > $tmp + set -l res $status + commandline -f repaint + if [ -s $tmp ] + commandline -r (cat $tmp) + end + if [ $res = 0 ] + commandline -f execute + end + rm -f $tmp +end