diff options
Diffstat (limited to 'dots/zsh')
-rwxr-xr-x | dots/zsh/.config/zsh/osx/work.zsh | 2 | ||||
-rwxr-xr-x | dots/zsh/.config/zsh/setup/aliases.zsh | 28 |
2 files changed, 30 insertions, 0 deletions
diff --git a/dots/zsh/.config/zsh/osx/work.zsh b/dots/zsh/.config/zsh/osx/work.zsh index 19b9bcd..4edd8e8 100755 --- a/dots/zsh/.config/zsh/osx/work.zsh +++ b/dots/zsh/.config/zsh/osx/work.zsh @@ -19,4 +19,6 @@ alias brazil-recursive-cmd='brazil-recursive-cmd-parallel' # run java repl with class path of package! :D alias jshell='jshell --class-path "`brazil-path build.classpath`:`brazil-path run.classpath`"' + +# [[ -f "${HOME}/Library/Application Support/amazon-q/shell/zshrc.post.zsh" ]] && builtin source "${HOME}/Library/Application Support/amazon-q/shell/zshrc.post.zsh" #-- </amzn> -- diff --git a/dots/zsh/.config/zsh/setup/aliases.zsh b/dots/zsh/.config/zsh/setup/aliases.zsh index 73b09b3..abc4135 100755 --- a/dots/zsh/.config/zsh/setup/aliases.zsh +++ b/dots/zsh/.config/zsh/setup/aliases.zsh @@ -25,3 +25,31 @@ alias ..="cd .." #-- <neovim> -- alias vim="nvim" #-- </neovim> -- + +#-- <prev> -- +l() { + local cmd args="" + local pre="" + local replace_args=false + + # Find the last command that is NOT 'l' + cmd=$(fc -ln -100 | grep -vE '^\s*l(\s|$)' | tail -n 1) + + for arg in "$@"; do + if [[ "$replace_args" == true ]]; then + args+=" $arg" + fi + + if [[ "$arg" == "su" ]]; then + pre="sudo " + fi + + if [[ "$arg" == "ra" ]]; then + cmd=$(echo "$cmd" | awk '{print $1}') + replace_args=true + fi + done + + eval "${pre}${cmd} ${args}" +} +#-- </prev> -- |