aboutsummaryrefslogtreecommitdiff
path: root/autoload/window.kak
diff options
context:
space:
mode:
Diffstat (limited to 'autoload/window.kak')
-rw-r--r--autoload/window.kak8
1 files changed, 5 insertions, 3 deletions
diff --git a/autoload/window.kak b/autoload/window.kak
index a405924..f5f1d95 100644
--- a/autoload/window.kak
+++ b/autoload/window.kak
@@ -9,16 +9,18 @@ map global win z ': wq<ret>'
define-command terminal-singleton -params 2.. -docstring 'terminal-singleton <name> <command> [args...]' %{
eval %sh{
- name="$1"; shift;
+ name="$1"; shift 1;
open-term-win() {
printf "terminal -n '$name' env"
printf " 'KAKOUNE_SESSION=$kak_session' 'KAKOUNE_CLIENT=$kak_client'"
- printf " %q" "$@"
+ for arg in "$@"; do
+ printf ' "%s"' "$(echo "$arg" | sed 's/["]/\\"/g')"
+ done
}
focus-term-win() {
tmux select-window -t "$name" >/dev/null 2>&1
}
- focus-term-win || open-term-win "$@";
+ (focus-term-win || open-term-win "$@")
}
}