Varius
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
function duh --description "Disk usage utility"
|
||||
if test (count $argv) -eq 0
|
||||
#echo "duh: missing operand" >&2
|
||||
#return 1
|
||||
set fold '.'
|
||||
else
|
||||
set fold $argv
|
||||
end
|
||||
|
||||
|
||||
du -hd1 $fold | sort -h
|
||||
end
|
||||
@@ -1,3 +0,0 @@
|
||||
function ezals --wraps='eza --icons --git --no-user --octal-permissions --no-permissions --group-directories-first -s name -lah' --description 'Base exa'
|
||||
eza --icons --git --no-user --octal-permissions --no-permissions --group-directories-first -s name --hyperlink -lah $argv
|
||||
end
|
||||
@@ -0,0 +1,3 @@
|
||||
function fish_preexec --on-event fish_preexec
|
||||
set -g __fish_prompt_command_ran 1
|
||||
end
|
||||
+113
-63
@@ -1,69 +1,119 @@
|
||||
function fish_prompt --description 'Write out the prompt'
|
||||
set -l last_pipestatus $pipestatus
|
||||
set -lx __fish_last_status $status # Export for __fish_print_pipestatus.
|
||||
|
||||
if not set -q __fish_git_prompt_show_informative_status
|
||||
set -g __fish_git_prompt_show_informative_status 1
|
||||
end
|
||||
if not set -q __fish_git_prompt_hide_untrackedfiles
|
||||
set -g __fish_git_prompt_hide_untrackedfiles 1
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_branch
|
||||
set -g __fish_git_prompt_color_branch magenta --bold
|
||||
end
|
||||
if not set -q __fish_git_prompt_showupstream
|
||||
set -g __fish_git_prompt_showupstream informative
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_dirtystate
|
||||
set -g __fish_git_prompt_color_dirtystate blue
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_stagedstate
|
||||
set -g __fish_git_prompt_color_stagedstate yellow
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_invalidstate
|
||||
set -g __fish_git_prompt_color_invalidstate red
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_untrackedfiles
|
||||
set -g __fish_git_prompt_color_untrackedfiles $fish_color_normal
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_cleanstate
|
||||
set -g __fish_git_prompt_color_cleanstate green --bold
|
||||
end
|
||||
|
||||
set -l color_cwd
|
||||
set -l suffix
|
||||
if functions -q fish_is_root_user; and fish_is_root_user
|
||||
if set -q fish_color_cwd_root
|
||||
set color_cwd $fish_color_cwd_root
|
||||
else
|
||||
set color_cwd $fish_color_cwd
|
||||
end
|
||||
set suffix '#'
|
||||
set -l last_pipestatus $pipestatus
|
||||
set -lx __fish_last_status $status # Export for __fish_print_pipestatus.
|
||||
|
||||
# Blank line before prompt only after a command was executed
|
||||
if set -q __fish_prompt_command_ran
|
||||
echo
|
||||
set -e __fish_prompt_command_ran
|
||||
end
|
||||
|
||||
if not set -q __fish_git_prompt_show_informative_status
|
||||
set -g __fish_git_prompt_show_informative_status 1
|
||||
end
|
||||
if not set -q __fish_git_prompt_hide_untrackedfiles
|
||||
set -g __fish_git_prompt_hide_untrackedfiles 1
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_branch
|
||||
set -g __fish_git_prompt_color_branch magenta --bold
|
||||
end
|
||||
if not set -q __fish_git_prompt_showupstream
|
||||
set -g __fish_git_prompt_showupstream informative
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_dirtystate
|
||||
set -g __fish_git_prompt_color_dirtystate blue
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_stagedstate
|
||||
set -g __fish_git_prompt_color_stagedstate yellow
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_invalidstate
|
||||
set -g __fish_git_prompt_color_invalidstate red
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_untrackedfiles
|
||||
set -g __fish_git_prompt_color_untrackedfiles $fish_color_normal
|
||||
end
|
||||
if not set -q __fish_git_prompt_color_cleanstate
|
||||
set -g __fish_git_prompt_color_cleanstate green --bold
|
||||
end
|
||||
|
||||
set -l color_cwd
|
||||
if functions -q fish_is_root_user; and fish_is_root_user
|
||||
if set -q fish_color_cwd_root
|
||||
set color_cwd $fish_color_cwd_root
|
||||
else
|
||||
set color_cwd $fish_color_cwd
|
||||
set suffix '$'
|
||||
set color_cwd $fish_color_cwd
|
||||
end
|
||||
|
||||
# PWD
|
||||
set_color $color_cwd
|
||||
echo -n (prompt_pwd)
|
||||
else
|
||||
set color_cwd $fish_color_cwd
|
||||
end
|
||||
|
||||
# Time
|
||||
set_color brblack
|
||||
echo -n (date '+%H:%M:%S')
|
||||
set_color normal
|
||||
echo -n ' '
|
||||
|
||||
# Last command duration
|
||||
if test -n "$CMD_DURATION" -a "$CMD_DURATION" -gt 0
|
||||
set -l secs (math --scale=0 "$CMD_DURATION / 1000")
|
||||
if test $secs -gt 0
|
||||
set_color yellow
|
||||
if test $secs -ge 60
|
||||
set -l mins (math --scale=0 "$secs / 60")
|
||||
set -l rem (math --scale=0 "$secs % 60")
|
||||
echo -n $mins"m"$rem"s "
|
||||
else
|
||||
echo -n $secs"s "
|
||||
end
|
||||
set_color normal
|
||||
end
|
||||
end
|
||||
|
||||
# User@host
|
||||
set_color brgreen
|
||||
echo -n $USER
|
||||
set_color normal
|
||||
echo -n @
|
||||
set_color brblue
|
||||
echo -n (prompt_hostname)
|
||||
set_color normal
|
||||
echo -n ' '
|
||||
|
||||
# PWD
|
||||
set_color $color_cwd
|
||||
echo -n (prompt_pwd)
|
||||
set_color normal
|
||||
|
||||
# Git + Kubernetes cluster
|
||||
set -l vcs (fish_vcs_prompt)
|
||||
if test -n "$vcs"
|
||||
printf '%s' $vcs
|
||||
# Kubernetes context
|
||||
if command -sq kubectl
|
||||
set -l kctx (kubectl config current-context 2>/dev/null)
|
||||
if test -n "$kctx"
|
||||
set_color brblack
|
||||
echo -n " [$kctx]"
|
||||
set_color normal
|
||||
end
|
||||
end
|
||||
end
|
||||
echo -n ' '
|
||||
|
||||
set -l status_color (set_color $fish_color_status)
|
||||
set -l statusb_color (set_color --bold $fish_color_status)
|
||||
set -l prompt_status (__fish_print_pipestatus "[" "]" "|" "$status_color" "$statusb_color" $last_pipestatus)
|
||||
echo -n $prompt_status
|
||||
set_color normal
|
||||
|
||||
# Background jobs counter
|
||||
set -l jobs_count (count (jobs -p))
|
||||
if test $jobs_count -gt 0
|
||||
set_color yellow
|
||||
echo -n "[$jobs_count] "
|
||||
set_color normal
|
||||
|
||||
printf '%s ' (fish_vcs_prompt)
|
||||
|
||||
set -l status_color (set_color $fish_color_status)
|
||||
set -l statusb_color (set_color --bold $fish_color_status)
|
||||
set -l prompt_status (__fish_print_pipestatus "[" "]" "|" "$status_color" "$statusb_color" $last_pipestatus)
|
||||
echo -n $prompt_status
|
||||
set_color normal
|
||||
end
|
||||
|
||||
# Background jobs counter
|
||||
set -l jobs_count (count (jobs -p))
|
||||
if test $jobs_count -gt 0
|
||||
set_color yellow
|
||||
echo -n "[$jobs_count] "
|
||||
set_color normal
|
||||
end
|
||||
|
||||
echo -n "$suffix "
|
||||
# Prompt on new line
|
||||
echo
|
||||
end
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
function fish_right_prompt
|
||||
end
|
||||
@@ -0,0 +1,6 @@
|
||||
function fish_user_key_bindings
|
||||
# Bind k to Atuin search in vim normal mode
|
||||
if type -q atuin
|
||||
bind -M default k _atuin_bind_up
|
||||
end
|
||||
end
|
||||
@@ -5,8 +5,8 @@
|
||||
# * $path package path
|
||||
# * $dependencies package dependencies
|
||||
|
||||
# Timeout in seconds before allowing another git pull (default: 15 minutes)
|
||||
set -q GIT_REFRESH_TIMEOUT; or set -g GIT_REFRESH_TIMEOUT 900
|
||||
# Timeout in seconds before allowing another git pull (default: 60 minutes)
|
||||
set -q GIT_REFRESH_TIMEOUT; or set -g GIT_REFRESH_TIMEOUT 3600
|
||||
|
||||
function git-refresh --on-variable PWD \
|
||||
--description "git pull automatically wherever inside a git repository"
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
function lls --wraps='eza --icons --git --no-user --octal-permissions --no-permissions --group-directories-first -s name -lah' --description 'Base exa'
|
||||
eza --icons --git --no-user --octal-permissions --no-permissions --group-directories-first -s name --hyperlink -lah $argv
|
||||
end
|
||||
@@ -0,0 +1,15 @@
|
||||
# worktrunk shell integration for fish
|
||||
# Sources full integration from binary on first use.
|
||||
# Docs: https://worktrunk.dev/config/#shell-integration
|
||||
# Check: wt config show | Uninstall: wt config shell uninstall
|
||||
|
||||
function wt
|
||||
command wt config shell init fish | source
|
||||
# Check both command exit code ($pipestatus[1]) and source exit code ($pipestatus[2])
|
||||
# If source fails, the function isn't replaced and we'd infinite-loop calling ourselves
|
||||
set -l wt_status $pipestatus[1]
|
||||
set -l source_status $pipestatus[2]
|
||||
test $wt_status -eq 0; or return $wt_status
|
||||
test $source_status -eq 0; or return $source_status
|
||||
wt $argv
|
||||
end
|
||||
+8
-7
@@ -1,9 +1,10 @@
|
||||
function y
|
||||
set tmp (mktemp -t "yazi-cwd.XXXXXX")
|
||||
yazi $argv --cwd-file="$tmp"
|
||||
if read -z cwd < "$tmp"; and [ -n "$cwd" ]; and [ "$cwd" != "$PWD" ]
|
||||
builtin cd -- "$cwd"
|
||||
end
|
||||
rm -f -- "$tmp"
|
||||
set tmp (mktemp -t "yazi-cwd.XXXXXX")
|
||||
yazi $argv --cwd-file="$tmp"
|
||||
if read -z cwd <"$tmp"; and [ -n "$cwd" ]; and [ "$cwd" != "$PWD" ]
|
||||
builtin cd -- "$cwd"
|
||||
end
|
||||
rm -f -- "$tmp"
|
||||
clear
|
||||
lls
|
||||
end
|
||||
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
function zjs -d "Avvia zellij in una nuova finestra TERM"
|
||||
if test (count $argv) -eq 0
|
||||
$TERM -e zellij &
|
||||
else
|
||||
$TERM -e zellij attach -c $argv[1] &
|
||||
end
|
||||
disown
|
||||
end
|
||||
Reference in New Issue
Block a user