summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2012-12-26 17:52:17 +0100
committerMaxime Coste <frrrwww@gmail.com>2013-01-04 18:31:37 +0100
commit5939eb219f94bc6595dfb8f8a17f9625ea57ac25 (patch)
treec38d4ca028bad9e3f2f71093f43468a9eb774462 /src
parentfeef062344d38b371f04a705772f0fb9d5d508b4 (diff)
add client.kak providing 'new' command for opening a new client
Autodetect tmux, use tmux if we are in a tmux session, else fallback to urxvt.
Diffstat (limited to 'src')
-rw-r--r--src/Makefile2
-rw-r--r--src/rc/client.kak13
2 files changed, 14 insertions, 1 deletions
diff --git a/src/Makefile b/src/Makefile
index 753847fc..7424f2fa 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -23,6 +23,6 @@ XDG_CONFIG_HOME ?= $(HOME)/.config
userconfig:
mkdir -p $(XDG_CONFIG_HOME)/kak/autoload
- ln -rs rc/{asciidoc,cpp,diff,git,grep,kakrc,make}.kak $(XDG_CONFIG_HOME)/kak/autoload/
+ ln -rs rc/{asciidoc,client,cpp,diff,git,grep,kakrc,make}.kak $(XDG_CONFIG_HOME)/kak/autoload/
.PHONY: tags userconfig
diff --git a/src/rc/client.kak b/src/rc/client.kak
new file mode 100644
index 00000000..6bb0cd05
--- /dev/null
+++ b/src/rc/client.kak
@@ -0,0 +1,13 @@
+setg termcmd %sh{
+ if [[ -n "$TMUX" ]]; then
+ echo "'tmux split-window -h'"
+ else
+ echo "'urxvt -e sh -c'"
+ fi
+}
+
+def new -shell-params %{ nop %sh{
+ if (( $# != 0 )); then kakoune_params="-e '$@'"; fi
+ ${kak_opt_termcmd} "kak -c ${kak_socket#/tmp/kak-} ${kakoune_params}" < /dev/null >& /dev/null &
+ disown
+}}