From 66adff9257c0bdcf5fea357cf4afd9c5804ac9d9 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Wed, 23 Dec 2020 23:40:35 +0530 Subject: Moves zsh config to config and symlinked --- config/zsh/plugins/magic-enter.zsh | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 config/zsh/plugins/magic-enter.zsh (limited to 'config/zsh/plugins/magic-enter.zsh') diff --git a/config/zsh/plugins/magic-enter.zsh b/config/zsh/plugins/magic-enter.zsh new file mode 100644 index 0000000..5d50316 --- /dev/null +++ b/config/zsh/plugins/magic-enter.zsh @@ -0,0 +1,29 @@ +# Bind quick stuff to enter! +# +# Pressing enter in a git directory runs `git status` +# in other directories `ls` +magic-enter () { + # If commands are not already set, use the defaults + [ -z "$MAGIC_ENTER_GIT_COMMAND" ] && MAGIC_ENTER_GIT_COMMAND="git status -u ." + [ -z "$MAGIC_ENTER_OTHER_COMMAND" ] && MAGIC_ENTER_OTHER_COMMAND="ls -lh ." + + if [[ -z $BUFFER ]]; then + echo "" + if git rev-parse --is-inside-work-tree &>/dev/null; then + eval "$MAGIC_ENTER_GIT_COMMAND" + else + eval "$MAGIC_ENTER_OTHER_COMMAND" + fi + zle redisplay + else + zle accept-line + fi +} + +zle -N magic-enter + +bindkey "^M" magic-enter + +# Auto correct typos +#setopt CORRECT +#setopt CORRECT_ALL -- cgit v1.3.1