,z: guard empty tmux_opts array under set -u
The prefix-g tmux binding sets IN_TMUX_FLOAT, which empties tmux_opts.
Expanding "${tmux_opts[@]}" then aborted the script under set -u,
because macOS's frozen bash 3.2 treats an empty array as an unbound
variable. The binding died before fzf ran while the command-line path
(non-empty array) kept working. Splice with ${tmux_opts[@]+...} so the
empty case expands to nothing instead of erroring.

Assisted-by: Claude Opus 4.8 via Claude Code
change mnuyrrqwxmuoqnlwmtzltmosoluuvxmw
commit de62bc344c19b712c5bbc31e94161eb6fbee9f08
author Alpha Chen <alpha@kejadlen.dev>
date
parent lktwykqt
diff --git a/bin/,z b/bin/,z
index 877b8dcd..4fa962a3 100755
--- a/bin/,z
+++ b/bin/,z
@@ -13,8 +13,11 @@ main() {
     [[ -n "${IN_TMUX_FLOAT:-}" ]] && tmux_opts=()
 
     local dir
+    # ${arr[@]+"${arr[@]}"} splices the array only when it has elements. A bare
+    # "${tmux_opts[@]}" would abort under `set -u` on the empty (IN_TMUX_FLOAT)
+    # path, because macOS bash 3.2 counts an empty array as an unbound variable.
     dir=$(zoxide query -l "$@" | fzf --no-multi --select-1 --no-margin --no-padding \
-        "${tmux_opts[@]}" \
+        ${tmux_opts[@]+"${tmux_opts[@]}"} \
         --height 100% \
         --highlight-line --info inline-right \
         --border-label ' zoxide ' \