diff --git a/modules/dircycle/README.md b/modules/dircycle/README.md new file mode 100644 index 00000000..20a89314 --- /dev/null +++ b/modules/dircycle/README.md @@ -0,0 +1,8 @@ +# Overview + +`dircycle` provides you with a way to quickly cycle through your dir stack without destroying the currently entered command. + +# Usage + +* Ctrl+Shift+Left: rotates the directory stack one step backward +* Ctrl+Shift+Right: rotates the directory stack one step forward diff --git a/modules/dircycle/init.zsh b/modules/dircycle/init.zsh new file mode 100644 index 00000000..3b373d0e --- /dev/null +++ b/modules/dircycle/init.zsh @@ -0,0 +1,13 @@ +## +# dircycle plugin: enables cycling through the directory +# stack using Ctrl+Shift+Left/Right + +alias dircycle-left="pushd -q +1" +alias dircycle-right="pushd -q -0" + +eval "insert-cycledleft () { zle push-line; LBUFFER='dircycle-left'; zle accept-line }" +zle -N insert-cycledleft +bindkey "\e[1;6D" insert-cycledleft +eval "insert-cycledright () { zle push-line; LBUFFER='dircycle-right'; zle accept-line }" +zle -N insert-cycledright +bindkey "\e[1;6C" insert-cycledright