From 805f6ff76d1477a07e75497e9c7b5621c8b210b3 Mon Sep 17 00:00:00 2001 From: Akihiro Uchida Date: Mon, 29 Jul 2013 20:03:26 +0900 Subject: [PATCH 1/6] redirect to /dev/null instead of '-q' option for solaris 10 or earlier --- z.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/z.sh b/z.sh index 047f647..81eff88 100644 --- a/z.sh +++ b/z.sh @@ -233,7 +233,7 @@ elif complete >/dev/null 2>&1; then complete -o filenames -C '_z --complete "$COMP_LINE"' ${_Z_CMD:-z} [ "$_Z_NO_PROMPT_COMMAND" ] || { # populate directory list. avoid clobbering other PROMPT_COMMANDs. - grep -q "_z --add" <<< "$PROMPT_COMMAND" || { + grep "_z --add" <<< "$PROMPT_COMMAND" >/dev/null || { PROMPT_COMMAND="$PROMPT_COMMAND"$'\n''_z --add "$(pwd '$_Z_RESOLVE_SYMLINKS' 2>/dev/null)" 2>/dev/null;' } } From 8053deda7508b36443f1b57dad1f295dfa60959f Mon Sep 17 00:00:00 2001 From: rupa Date: Tue, 30 Jul 2013 10:23:34 -0400 Subject: [PATCH 2/6] Avoid duplicate precmd functions in zsh Hat tip @knu ... closes #110 --- z.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/z.sh b/z.sh index 81eff88..a1cd175 100644 --- a/z.sh +++ b/z.sh @@ -218,7 +218,9 @@ if compctl >/dev/null 2>&1; then _z --add "${PWD:A}" } fi - precmd_functions+=(_z_precmd) + [[ -n "${precmd_functions[(r)_z_precmd]}" ]] || { + precmd_functions+=(_z_precmd) + } } _z_zsh_tab_completion() { # tab completion From dde88df53f4b0bdaf8164a60bf8df15b7af258a0 Mon Sep 17 00:00:00 2001 From: rupa Date: Sun, 18 Aug 2013 02:41:29 -0400 Subject: [PATCH 3/6] Delete a letter in man page. --- README | 2 +- z.1 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README b/README index 4257001..179dce3 100644 --- a/README +++ b/README @@ -58,7 +58,7 @@ NOTES Set $_Z_NO_PROMPT_COMMAND to handle PROMPT_COMMAND/precmd your- self. Set $_Z_EXCLUDE_DIRS to an array of directories to exclude. - (These settings should go in .bashrc/.zshrc before the lines + (These settings should go in .bashrc/.zshrc before the line added above.) Install the provided man page z.1 somewhere like /usr/local/man/man1. diff --git a/z.1 b/z.1 index 4d2a607..97459de 100644 --- a/z.1 +++ b/z.1 @@ -82,7 +82,7 @@ Set \fB$_Z_NO_PROMPT_COMMAND\fR to handle \fBPROMPT_COMMAND/precmd\fR yourself. Set \fB$_Z_EXCLUDE_DIRS\fR to an array of directories to exclude. .RE .RS -(These settings should go in .bashrc/.zshrc before the lines added above.) +(These settings should go in .bashrc/.zshrc before the line added above.) .RE .RS Install the provided man page \fBz.1\fR somewhere like \fB/usr/local/man/man1\fR. From 2d45afcc7f509a4a26f0ae44066301ca2c20f643 Mon Sep 17 00:00:00 2001 From: rupa Date: Sun, 18 Aug 2013 14:12:51 -0400 Subject: [PATCH 4/6] Eliminate leading space from $fnd --- z.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/z.sh b/z.sh index a1cd175..990a177 100644 --- a/z.sh +++ b/z.sh @@ -103,7 +103,7 @@ _z() { else # list/go while [ "$1" ]; do case "$1" in - --) while [ "$1" ]; do shift; local fnd="$fnd $1";done;; + --) while [ "$1" ]; do shift; local fnd="$fnd${fnd:+ }$1";done;; -*) local opt=${1:1}; while [ "$opt" ]; do case ${opt:0:1} in c) local fnd="^$PWD $fnd";; h) echo "${_Z_CMD:-z} [-chlrtx] args" >&2; return;; @@ -112,7 +112,7 @@ _z() { r) local typ="rank";; t) local typ="recent";; esac; opt=${opt:1}; done;; - *) local fnd="$fnd $1";; + *) local fnd="$fnd${fnd:+ }$1";; esac; local last=$1; shift; done [ "$fnd" -a "$fnd" != "^$PWD " ] || local list=1 From f1500aa03df7781a6cf920a10a2585436b225859 Mon Sep 17 00:00:00 2001 From: rupa Date: Fri, 23 Aug 2013 10:22:07 -0400 Subject: [PATCH 5/6] Typo fix. Closes #115. --- z.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/z.sh b/z.sh index 990a177..8fd7f0a 100644 --- a/z.sh +++ b/z.sh @@ -78,7 +78,7 @@ _z() { if [ $? -ne 0 -a -f "$datafile" ]; then env rm -f "$tempfile" else - env mv -f "$tempfile" "$datafile" || env rm -f "$tmpfile" + env mv -f "$tempfile" "$datafile" || env rm -f "$tempfile" fi # tab completion From 575cada5e96ab77c6b9a9d84403120b49dac617e Mon Sep 17 00:00:00 2001 From: rupa Date: Thu, 12 Dec 2013 20:01:41 -0500 Subject: [PATCH 6/6] Different syntax for setting zsh precmd Old versions of bash choke on the += syntax, even though it's in a chunk of code for another shell. Closes #122 - h/t @atannen. --- z.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/z.sh b/z.sh index 8fd7f0a..786bdfd 100644 --- a/z.sh +++ b/z.sh @@ -219,7 +219,7 @@ if compctl >/dev/null 2>&1; then } fi [[ -n "${precmd_functions[(r)_z_precmd]}" ]] || { - precmd_functions+=(_z_precmd) + precmd_functions[$(($#precmd_functions+1))]=_z_precmd } } _z_zsh_tab_completion() {