From 505c80a8168a7cfe739b0883b7958ba8f8bf56fd Mon Sep 17 00:00:00 2001 From: Rotem Yaari Date: Thu, 30 Aug 2012 21:29:23 +0300 Subject: [PATCH] Add dircycle mode: cycle directory stack with Ctrl+Shift+Left/Right --- modules/dircycle/README.md | 8 ++++++++ modules/dircycle/init.zsh | 13 +++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 modules/dircycle/README.md create mode 100644 modules/dircycle/init.zsh 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