From 5b217eea49e5b98d5165f2f60419d8bd13250dc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kayhan=20G=C3=BCltekin?= Date: Mon, 18 Mar 2024 19:23:30 -0400 Subject: [PATCH] Update dircycle.plugin.zsh Added dirhistory-like go up a directory (insert-cycledup) and go down to first child directory (insert-cycleddown). --- plugins/dircycle/dircycle.plugin.zsh | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/plugins/dircycle/dircycle.plugin.zsh b/plugins/dircycle/dircycle.plugin.zsh index bb69f6b3f..2dd03d209 100644 --- a/plugins/dircycle/dircycle.plugin.zsh +++ b/plugins/dircycle/dircycle.plugin.zsh @@ -43,6 +43,27 @@ insert-cycledright () { } zle -N insert-cycledright +insert-cycledup () { + switch-to-dir .. || return + + local fn + for fn (chpwd $chpwd_functions precmd $precmd_functions); do + (( $+functions[$fn] )) && $fn + done + zle reset-prompt +} +zle -N insert-cycledup + +insert-cycleddown () { + switch-to-dir "$(find . -mindepth 1 -maxdepth 1 -type d | sort -n | head -n 1)" || return + + local fn + for fn (chpwd $chpwd_functions precmd $precmd_functions); do + (( $+functions[$fn] )) && $fn + done + zle reset-prompt +} +zle -N insert-cycleddown # These sequences work for xterm, Apple Terminal.app, and probably others. # Not for rxvt-unicode, but it doesn't seem differentiate Ctrl-Shift-Arrow