about summary refs log tree commit diff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/chat.tmux.conf22
1 files changed, 19 insertions, 3 deletions
diff --git a/scripts/chat.tmux.conf b/scripts/chat.tmux.conf
index db5cca2..e58f955 100644
--- a/scripts/chat.tmux.conf
+++ b/scripts/chat.tmux.conf
@@ -1,8 +1,12 @@
 # use `tmux -L chat -f ./chat.tmux.conf attach-session' (without any other
 # options or parameters) to access this session group in its own tmux server,
 # not interfering with existing servers/sessions/configurations
+
 new-session -t chat
 
+# catgirl(1) puts windows at the top
+set-option -g	-- status-position	top
+
 # intuitive navigation
 set-option -g	-- mode-keys	vi
 set-option -g	-- mouse	on
@@ -30,6 +34,10 @@ bind-key -n -N 'confirm INTR key'	-- C-c	\
 # one-click version of default `C-b w' (shows preview windows)
 bind-key -n -N 'pick chat network'	-- F1	choose-tree -Z
 
+# catgirl(1) might run in `-R'/`restrict'ed mode, i.e. `/help' is disabled
+bind-key -n -N 'read catgirl help'	-- F2	\
+	new-window -S -n help	-- man -s 1	-- catgirl
+
 # intuitive refresh, just don't spam it ;-)
 bind-key -n -N 'reconnect network'	-- F5	\
 	confirm-before -p 'reconnect network? (y/N)'	-- 'respawn-pane -k'
@@ -38,9 +46,17 @@ bind-key -n -N 'reconnect network'	-- F5	\
 bind-key -n -N 'toggle fullscreen'	-- F11	set status
 
 
+# this configuration is idempotent, i.e. reloading it only changes settings
+# and never duplicates already existing windows
+bind-key -N 'reload configuration'	-- R	{
+	source-file	-- ./chat.tmux.conf
+	display-message	-- 'configuration reloaded'
+}
+
+
 ## do not double-quote commands to avoid running through "sh -c"
 
 # IRC
-new-window -n hackint	-- catgirl hackint
-new-window -n freenode	-- catgirl freenode
-new-window -n efnet	-- catgirl efnet
+new-window -d -S -n hackint	-- catgirl	-- defaults hackint
+new-window -d -S -n freenode	-- catgirl	-- defaults freenode
+new-window -d -S -n efnet	-- catgirl	-- defaults efnet