aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAkshay Nair <phenax5@gmail.com>2026-06-12 10:02:56 +0530
committerAkshay Nair <phenax5@gmail.com>2026-06-12 10:02:56 +0530
commitc9e9f90ddf9fb840a1b12ff4d4ee714d872eb800 (patch)
tree0b92967b8a1c324afa040d1d200d9418af7f070b
parent0daf54486bceddf399930bcb8777d9e5f24ad003 (diff)
downloadkakoune-config-c9e9f90ddf9fb840a1b12ff4d4ee714d872eb800.tar.gz
kakoune-config-c9e9f90ddf9fb840a1b12ff4d4ee714d872eb800.zip
Fix terminal-singleton issue with echo special args
-rw-r--r--autoload/window.kak13
1 files changed, 9 insertions, 4 deletions
diff --git a/autoload/window.kak b/autoload/window.kak
index 96372be..ba5f676 100644
--- a/autoload/window.kak
+++ b/autoload/window.kak
@@ -5,16 +5,21 @@ map global win q ': quit<ret>' -docstring 'Quit'
map global win <c-q> ': quit<ret>' -docstring 'Quit'
map global win s ': tmux-terminal-horizontal kak -c %val{session}<ret>' -docstring 'Split vertical'
map global win v ': tmux-terminal-vertical kak -c %val{session}<ret>' -docstring 'Split horizontal'
-map global win z ': wq<ret>'
-map global win t ': toolsclient<ret>'
+map global win z ': wq<ret>' -docstring 'Write and quit'
+map global win t ': switch-to-tools<ret>' -docstring 'Tools client'
+
+def switch-to-tools %{
+ terminal-singleton tools kak -e 'rename-client tools' -c %val{session}
+}
def toolsclient %{
rename-client main
set global jumpclient main
try %{ eval -client tools nop } catch %{
- tmux-terminal-vertical kak -c %val{session} -e 'rename-client tools'
+ switch-to-tools
set global toolsclient tools
+ focus main
}
}
@@ -26,7 +31,7 @@ def terminal-singleton -params 2.. -docstring 'terminal-singleton <name> <comman
printf "tmux-repl-impl new-window -n '$name' env"
printf " 'KAKOUNE_SESSION=$kak_session' 'KAKOUNE_CLIENT=$kak_client'"
for arg in "$@"; do
- printf ' "%s"' "$(echo "$arg" | sed 's|["]|\\"|g')"
+ printf ' "%s"' "$(sed 's|["]|\\"|g' <<< "$arg")"
done
}