summaryrefslogtreecommitdiffstats
path: root/regress
diff options
context:
space:
mode:
Diffstat (limited to 'regress')
-rw-r--r--regress/Makefile10
-rw-r--r--regress/am-terminal.sh29
-rw-r--r--regress/capture-pane-sgr0.sh31
-rw-r--r--regress/command-order.sh51
-rw-r--r--regress/conf-syntax.sh14
-rw-r--r--regress/conf/21867280ff7e99631046f9cc669b80d2.conf8
-rw-r--r--regress/conf/29813ff35544434e2e64dc879a8dd274.conf58
-rw-r--r--regress/conf/2e0f96ac3e1c144ce48261a4c9d68a48.conf25
-rw-r--r--regress/conf/2eae5d47049c1f6d0bef3db4e171aed7.conf56
-rw-r--r--regress/conf/327af72ad372255817b585a74da06eda.conf30
-rw-r--r--regress/conf/58304907c117cab9898ea0b070bccde3.conf118
-rw-r--r--regress/conf/91378fd400b0444eb8cac471e30642b3.conf30
-rw-r--r--regress/conf/99749670b62bcb99a9b2e3d59708e357.conf93
-rw-r--r--regress/conf/a46e6e84cd1071105aa807256dbc158d.conf432
-rw-r--r--regress/conf/a4789a6782859c66aa8c9614ee6fabfa.conf80
-rw-r--r--regress/conf/ad0537c4e83d7a25d5dc4f3a3c571349.conf65
-rw-r--r--regress/conf/ad21dbb0893240563ddfdd954b9903a1.conf580
-rw-r--r--regress/conf/b9f0ce1976ec62ec60dc5da7dd92c160.conf84
-rw-r--r--regress/conf/d0040b2e097f1e3d31d78eed6ce8d461.conf108
-rw-r--r--regress/conf/d2e576f947e108eb9903679b65c81fbc.conf198
-rw-r--r--regress/conf/d41d8cd98f00b204e9800998ecf8427e.conf148
-rw-r--r--regress/conf/dfd579a114a8366b5a665c264e29c084.conf52
-rw-r--r--regress/conf/e2661d67d0d45a8647fb95de76ec8174.conf78
-rw-r--r--regress/conf/ed08995f38b5a3079262a88d2563abe4.conf283
-rw-r--r--regress/control-client-sanity.sh42
-rw-r--r--regress/control-client-size.sh49
-rw-r--r--regress/copy-mode-test-emacs.sh116
-rw-r--r--regress/copy-mode-test-vi.sh115
-rw-r--r--regress/copy-mode-test.txt5
-rw-r--r--regress/cursor-test.txt6
-rw-r--r--regress/cursor-test1.result33
-rw-r--r--regress/cursor-test1.sh29
-rw-r--r--regress/cursor-test2.result33
-rw-r--r--regress/cursor-test2.sh29
-rw-r--r--regress/cursor-test3.result9
-rw-r--r--regress/cursor-test3.sh29
-rw-r--r--regress/cursor-test4.result16
-rw-r--r--regress/cursor-test4.sh31
-rw-r--r--regress/format-strings.sh183
-rw-r--r--regress/has-session-return.sh19
-rw-r--r--regress/if-shell-TERM.sh30
-rw-r--r--regress/if-shell-error.sh26
-rw-r--r--regress/if-shell-nested.sh25
-rw-r--r--regress/kill-session-process-exit.sh21
-rw-r--r--regress/new-session-base-index.sh27
-rw-r--r--regress/new-session-command.sh25
-rw-r--r--regress/new-session-environment.sh66
-rw-r--r--regress/new-session-no-client.sh25
-rw-r--r--regress/new-session-size.sh27
-rw-r--r--regress/new-window-command.sh26
-rw-r--r--regress/osc-11colours.sh243
-rw-r--r--regress/style-trim.sh93
52 files changed, 4039 insertions, 0 deletions
diff --git a/regress/Makefile b/regress/Makefile
new file mode 100644
index 00000000..e6c3619f
--- /dev/null
+++ b/regress/Makefile
@@ -0,0 +1,10 @@
+TESTS!= echo *.sh
+
+.PHONY: all $(TESTS)
+.NOTPARALLEL: all $(TESTS)
+
+all: $(TESTS)
+
+$(TESTS):
+ sh $*.sh
+ sleep 1
diff --git a/regress/am-terminal.sh b/regress/am-terminal.sh
new file mode 100644
index 00000000..94033468
--- /dev/null
+++ b/regress/am-terminal.sh
@@ -0,0 +1,29 @@
+#!/bin/sh
+
+PATH=/bin:/usr/bin
+TERM=screen
+
+[ -z "$TEST_TMUX" ] && TEST_TMUX=$(readlink -f ../tmux)
+TMUX="$TEST_TMUX -Ltest"
+$TMUX kill-server 2>/dev/null
+TMUX2="$TEST_TMUX -Ltest2"
+$TMUX2 kill-server 2>/dev/null
+
+TMP=$(mktemp)
+trap "rm -f $TMP" 0 1 15
+
+$TMUX2 -f/dev/null new -d || exit 1
+$TMUX2 set -as terminal-overrides ',*:am@' || exit 1
+$TMUX2 set -g status-right 'RRR' || exit 1
+$TMUX2 set -g status-left 'LLL' || exit 1
+$TMUX2 set -g window-status-current-format 'WWW' || exit 1
+$TMUX -f/dev/null new -x20 -y2 -d "$TMUX2 attach" || exit 1
+sleep 1
+$TMUX capturep -p|tail -1 >$TMP || exit 1
+$TMUX kill-server 2>/dev/null
+$TMUX2 kill-server 2>/dev/null
+cat <<EOF|cmp -s $TMP - || exit 1
+LLLWWW RR
+EOF
+
+exit 0
diff --git a/regress/capture-pane-sgr0.sh b/regress/capture-pane-sgr0.sh
new file mode 100644
index 00000000..0dd9cd82
--- /dev/null
+++ b/regress/capture-pane-sgr0.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+# 884
+# capture-pane should send colours after SGR 0
+
+PATH=/bin:/usr/bin
+TERM=screen
+
+[ -z "$TEST_TMUX" ] && TEST_TMUX=$(readlink -f ../tmux)
+TMUX="$TEST_TMUX -Ltest"
+$TMUX kill-server 2>/dev/null
+
+TMP=$(mktemp)
+trap "rm -f $TMP" 0 1 15
+
+$TMUX -f/dev/null new -d "
+ printf '\033[31;42;1mabc\033[0;31mdef\n'
+ printf '\033[m\033[100m bright bg \033[m'
+ $TMUX capturep -peS0 -E1 >>$TMP"
+
+
+sleep 1
+
+(
+ printf '\033[1m\033[31m\033[42mabc\033[0m\033[31m\033[49mdef\033[39m\n'
+ printf '\033[100m bright bg \033[49m\n'
+) | cmp - $TMP || exit 1
+
+$TMUX has 2>/dev/null && exit 1
+
+exit 0
diff --git a/regress/command-order.sh b/regress/command-order.sh
new file mode 100644
index 00000000..04046f0d
--- /dev/null
+++ b/regress/command-order.sh
@@ -0,0 +1,51 @@
+#!/bin/sh
+
+PATH=/bin:/usr/bin
+TERM=screen
+
+[ -z "$TEST_TMUX" ] && TEST_TMUX=$(readlink -f ../tmux)
+TMUX="$TEST_TMUX -Ltest"
+$TMUX kill-server 2>/dev/null
+
+TMP=$(mktemp)
+trap "rm -f $TMP" 0 1 15
+
+cat <<EOF >$TMP
+new -sfoo -nfoo0; neww -nfoo1; neww -nfoo2
+new -sbar -nbar0; neww -nbar1; neww -nbar2
+EOF
+$TMUX -f$TMP start </dev/null || exit 1
+sleep 1
+$TMUX lsw -aF '#{session_name},#{window_name}'|sort >$TMP || exit 1
+$TMUX kill-server 2>/dev/null
+cat <<EOF|cmp -s $TMP - || exit 1
+bar,bar0
+bar,bar1
+bar,bar2
+foo,foo0
+foo,foo1
+foo,foo2
+EOF
+
+cat <<EOF >$TMP
+new -sfoo -nfoo0
+neww -nfoo1
+neww -nfoo2
+new -sbar -nbar0
+neww -nbar1
+neww -nbar2
+EOF
+$TMUX -f$TMP start </dev/null || exit 1
+sleep 1
+$TMUX lsw -aF '#{session_name},#{window_name}'|sort >$TMP || exit 1
+$TMUX kill-server 2>/dev/null
+cat <<EOF|cmp -s $TMP - || exit 1
+bar,bar0
+bar,bar1
+bar,bar2
+foo,foo0
+foo,foo1
+foo,foo2
+EOF
+
+exit 0
diff --git a/regress/conf-syntax.sh b/regress/conf-syntax.sh
new file mode 100644
index 00000000..96d35140
--- /dev/null
+++ b/regress/conf-syntax.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+PATH=/bin:/usr/bin
+TERM=screen
+
+[ -z "$TEST_TMUX" ] && TEST_TMUX=$(readlink -f ../tmux)
+TMUX="$TEST_TMUX -Ltest"
+$TMUX kill-server 2>/dev/null
+
+for i in conf/*.conf; do
+ $TMUX -f/dev/null start \; source -n $i || exit 1
+done
+
+exit 0
diff --git a/regress/conf/21867280ff7e99631046f9cc669b80d2.conf b/regress/conf/21867280ff7e99631046f9cc669b80d2.conf
new file mode 100644
index 00000000..43b142b4
--- /dev/null
+++ b/regress/conf/21867280ff7e99631046f9cc669b80d2.conf
@@ -0,0 +1,8 @@
+%if #{l:1}
+set -g status-style fg=cyan,bg='#001040'
+%elif #{l:1}
+set -g status-style fg=white,bg='#400040'
+%else
+set -g status-style fg=white,bg='#800000'
+%endif
+bind ^X last-window
diff --git a/regress/conf/29813ff35544434e2e64dc879a8dd274.conf b/regress/conf/29813ff35544434e2e64dc879a8dd274.conf
new file mode 100644
index 00000000..d0bda4a2
--- /dev/null
+++ b/regress/conf/29813ff35544434e2e64dc879a8dd274.conf
@@ -0,0 +1,58 @@
+set -g prefix C-g
+# needed for e.g. mutt
+bind C-g send-prefix
+
+set -g set-titles on
+set -g status-position top
+set -g status-keys vi
+set -g mode-keys vi
+set -g base-index 1
+set -g pane-base-index 1
+set -g focus-events on
+
+set history-file ~/.tmux_SSH_history
+set focus-events on
+set -g history-limit 100000
+set -s set-clipboard on
+set -g display-time 3000
+set -g display-panes-time 3000
+
+set -g pane-border-status top
+
+setw -g window-status-current-style bg=colour240,fg=colour250
+setw -g window-status-separator "|"
+set -g status-bg colour235
+set -g status-fg colour245
+
+set -g window-status-format " #I #{=+15:pane_title} #{=-2:?window_flags, #{window_flags}, }"
+set -g window-status-current-format " #I #{=+15:pane_title} #{=-2:?window_flags, #{window_flags}, }"
+set -g pane-border-format " #P: #{s/ //:pane_title} "
+
+set -g renumber-windows on
+set -g status-right-length 0
+##############################################################
+
+# I prefer not to have a status for my tabbed term
+set -g status-right ""
+set -g status-right-length 0
+set -g status-left-length 0
+set -g status-left ""
+
+# some settings for "navigation"
+bind -n C-PageUp copy-mode -u
+unbind -n C-Left
+unbind -n C-Right
+bind -n C-Left select-window -t :-
+bind -n C-Right select-window -t :+
+
+# I prefer a tiled layout and easy joining of current active pane via windows'
+# index
+bind F1 join-pane -s 1.\; select-layout tiled
+bind F2 join-pane -s 2.\; select-layout tiled
+bind F3 join-pane -s 3.\; select-layout tiled
+bind F4 join-pane -s 4.\; select-layout tiled
+bind F5 join-pane -s 5.\; select-layout tiled
+bind F6 join-pane -s 6.\; select-layout tiled
+bind F7 join-pane -s 7.\; select-layout tiled
+bind F8 join-pane -s 8.\; select-layout tiled
+bind F9 join-pane -s 9.\; select-layout tiled
diff --git a/regress/conf/2e0f96ac3e1c144ce48261a4c9d68a48.conf b/regress/conf/2e0f96ac3e1c144ce48261a4c9d68a48.conf
new file mode 100644
index 00000000..df4c2b1c
--- /dev/null
+++ b/regress/conf/2e0f96ac3e1c144ce48261a4c9d68a48.conf
@@ -0,0 +1,25 @@
+bind -r Up if -F '#{pane_at_top}' '' 'selectp -U'
+bind -r Down if -F '#{pane_at_bottom}' '' 'selectp -D'
+bind -r Left if -F '#{pane_at_left}' '' 'selectp -L'
+bind -r Right if -F '#{pane_at_right}' '' 'selectp -R'
+
+bind -n WheelUpPane if -Ft= "#{mouse_any_flag}" "send -M" "send Up"
+bind -n WheelDownPane if -Ft= "#{mouse_any_flag}" "send -M" "send Down"
+
+bind w run 'tmux choose-tree -Nwf"##{==:##{session_name},#{session_name}}"'
+
+bind C {
+ splitw -f -l30% ''
+ set-hook -p pane-mode-changed 'if -F "#{!=:#{pane_mode},copy-mode}" "kill-pane"'
+ copy-mode -s'{last}'
+}
+
+bind -n C-DoubleClick1Pane if -F '#{m/r:^[^:]*:[0-9]+:,#{mouse_word}}' {
+ popup -w90% -h90% -KE -d '#{pane_current_path}' -R {
+ emacs `echo #{mouse_word}|awk -F: '{print "+" $2,$1}'`
+ }
+} {
+ popup -w90% -h90% -KE -d '#{pane_current_path}' -R {
+ emacs "#{mouse_word}"
+ }
+}
diff --git a/regress/conf/2eae5d47049c1f6d0bef3db4e171aed7.conf b/regress/conf/2eae5d47049c1f6d0bef3db4e171aed7.conf
new file mode 100644
index 00000000..c09adc24
--- /dev/null
+++ b/regress/conf/2eae5d47049c1f6d0bef3db4e171aed7.conf
@@ -0,0 +1,56 @@
+# 256 colors for vim
+set -g default-terminal "screen-256color"
+
+# Set default shell to zsh
+set-option -g default-shell /bin/zsh
+
+# Start window numbering at 1
+set-option -g base-index 1
+set-window-option -g pane-base-index 1
+
+# Cycle panes with C-b C-b
+unbind ^B
+bind ^B select-pane -t :.+
+
+# Reload config wtih a key
+bind-key r source-file ~/.tmux.conf \; display "Config reloaded!"
+
+# Mouse works as expected
+# set -g mode-mouse on
+# set -g mouse-select-pane on
+# set -g mouse-resize-pane on
+# set -g mouse-select-window on
+
+# Scrolling works as expected
+set -g terminal-overrides 'xterm*:smcup@:rmcup@'
+
+# Use the system clipboard
+# set-option -g default-command "reattach-to-user-namespace -l zsh"
+
+# Clear the pane and its history
+bind -n C-k send-keys C-l \; clear-history
+
+# smart pane switching with awareness of vim splits
+bind -n C-h run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-h) || tmux select-pane -L"
+bind -n C-j run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-j) || tmux select-pane -D"
+bind -n C-k run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-k) || tmux select-pane -U"
+bind -n C-l run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-l) || tmux select-pane -R"
+bind -n C-\ run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys 'C-\\') || tmux select-pane -l"
+
+# C-l is taken oer by vim style pane navigation
+bind C-l send-keys 'C-l'
+
+# Use vim keybindings in copy mode
+setw -g mode-keys vi
+
+# Setup 'v' to begin selection as in Vim
+# bind-key -t vi-copy v begin-selection
+# bind-key -t vi-copy y copy-pipe "reattach-to-user-namespace pbcopy"
+
+# Update default binding of `Enter` to also use copy-pipe
+# unbind -t vi-copy Enter
+# bind-key -t vi-copy Enter copy-pipe "reattach-to-user-namespace pbcopy"
+
+# Powerline
+run-shell "powerline-daemon -q"
+source "/Users/adamcooper/Library/Python/3.7/lib/python/site-packages/powerline/bindings/tmux/powerline.conf" \ No newline at end of file
diff --git a/regress/conf/327af72ad372255817b585a74da06eda.conf b/regress/conf/327af72ad372255817b585a74da06eda.conf
new file mode 100644
index 00000000..2a719c8b
--- /dev/null
+++ b/regress/conf/327af72ad372255817b585a74da06eda.conf
@@ -0,0 +1,30 @@
+set -sg escape-time 10
+
+set -g default-terminal tmux-256color
+set -g prefix ^X
+set -g history-limit 10000
+setw -g mode-keys vi
+setw -g xterm-keys off
+
+# black, red, green, yellow, blue, magenta, cyan, white, default.
+setw -g message-command-style fg=yellow,bg=black
+setw -g message-style fg=black,bg=yellow
+
+%if #{m:*mydomain*,#{host}}
+set -g status-style fg=cyan,bg='#001040'
+setw -g window-status-current-style fg='#f0f0f0',bg='#001040'
+%elif #{||:#{m:*somedomain*,#{host}},#{m:*otherdomain*,#{host}}}
+set -g status-style fg=white,bg='#400040'
+setw -g window-status-current-style fg=yellow,bg='#400040',bright
+%else
+set -g status-style fg=white,bg='#800000'
+setw -g window-status-current-style fg=brightwhite,bg='#800000'
+%endif
+
+unbind ^B
+bind ^X last-window
+bind x send-prefix
+bind ^C new-window
+bind ^D detach-client
+bind ^N next-window
+bind ^P previous-window
diff --git a/regress/conf/58304907c117cab9898ea0b070bccde3.conf b/regress/conf/58304907c117cab9898ea0b070bccde3.conf
new file mode 100644
index 00000000..c9ce3fa4
--- /dev/null
+++ b/regress/conf/58304907c117cab9898ea0b070bccde3.conf
@@ -0,0 +1,118 @@
+#
+# Tureba's tmux.conf
+#
+# To use it, either:
+# a) link ~/.tmux.conf to it; or
+# b) create a ~/.tmux.conf that sources it.
+#
+# who: Arthur Nascimento <tureba@gmail.com>
+# where: github.com/tureba/myconfigfiles
+#
+
+# defaults
+set -g default-shell /bin/zsh
+set -g default-command zsh
+# tmux sets screen/screen-256, but has no codes for italics
+set -g default-terminal tmux-256color
+# linux terminal doesn't need this, but xterm does
+set -g terminal-overrides 'xterm*:smcup@:rmcup@,*256col*:colors=256,xterm*:XT'
+# xterm-style function key sequences
+setw -g xterm-keys on
+
+# 1, 2 and 3 are closer together than 0, 1 and 2
+set -g base-index 1
+set -g pane-base-index 1
+
+# easier to type than C-b
+set -g prefix C-a
+set -g prefix2 C-b
+unbind C-b
+bind C-a send-prefix
+
+# for repeatable keys
+set -g repeat-time 170
+
+# status bar
+set -g status-style fg=green,bg=colour234
+set -g status-right-style bg=colour236
+set -g status-right "#[bold,fg=blue][#[fg=default]#T#[fg=blue]]#[nobold,fg=default] | #[fg=yellow]%F %R"
+set -g status-right-length 120
+set -g status-left-style bg=colour236,bright
+set -g status-left "#[fg=blue][#[fg=default]#h#[fg=cyan]:#[fg=default]#S#[fg=blue]]"
+set -g status-left-length 30
+setw -g window-status-style fg=green
+setw -g window-status-format " #I#[nobold]:#W "
+setw -g window-status-current-style fg=green,bright
+setw -g window-status-current-format "#[fg=red][#[fg=default]#I:#W#[fg=red]]"
+setw -g window-status-separator "|"
+setw -g window-status-activity-style blink
+setw -g window-status-bell-style blink
+setw -g window-status-last-style bright
+
+# enable wm window titles
+set -g set-titles on
+
+# auto window rename
+setw -g automatic-rename on
+# auto window resize
+setw -g aggressive-resize on
+
+# mouse settings
+set -g mouse on
+
+# var|bind \ cmd | vim | less | copy | zsh
+# pane_in_mode | 0 | 0 | 1 | 0
+# mouse_any_flag | 1 | 0 | 0 | 0
+# alternate_on | 1 | 1 | 0 | 0
+# WheelUpPane | send -M | send Up | * | send Up (** or copy-mode -e)
+# WheelDownPane | send -M | send Down | * | send Down
+# * panes in copy mode have scroll handled by different bindings
+
+# ** cycle over shell history
+#bind -T root WheelUpPane if -Ft= '#{mouse_any_flag}' 'send -Mt=' 'send -t= Up'
+
+# ** enter copy mode
+bind -T root WheelUpPane if -Ft= '#{mouse_any_flag}' 'send -Mt=' 'if -Ft= "#{alternate_on}" "send -t= Up" "copy-mode -et="'
+
+bind -T root WheelDownPane if -Ft= '#{mouse_any_flag}' 'send -Mt=' 'send -t= Down'
+
+# sensible v/h splits
+unbind %
+unbind '"'
+bind | split-window -h
+bind - split-window -v
+
+# hjkl pane traversal
+bind -r h select-pane -L
+bind -r j select-pane -D
+bind -r k select-pane -U
+bind -r l select-pane -R
+
+# window navigation
+unbind p
+bind -r [ previous-window
+unbind n
+bind -r ] next-window
+
+# Vi copypaste mode
+setw -g mode-keys vi
+bind C-c copy-mode
+bind p paste-buffer
+bind -T copy-mode-vi v send-keys -X begin-selection
+bind -T copy-mode-vi y send-keys -X copy-selection
+bind -T copy-mode-vi V send-keys -X rectangle-toggle
+
+# toggle window activity monitoring
+bind m setw monitor-activity
+
+# reload the configuration
+bind r source-file ~/.tmux.conf
+
+# toggle synchronize-panes
+bind S setw synchronize-panes
+
+# create a new window with exactly this command
+bind C command-prompt "new-window 'exec %%'"
+
+# (toggle) mark this pane for easier joins and swaps
+bind . select-pane -m
diff --git a/regress/conf/91378fd400b0444eb8cac471e30642b3.conf b/regress/conf/91378fd400b0444eb8cac471e30642b3.conf
new file mode 100644
index 00000000..40810076
--- /dev/null
+++ b/regress/conf/91378fd400b0444eb8cac471e30642b3.conf
@@ -0,0 +1,30 @@
+###
+
+if-shell " \
+ tmux -V \
+ | awk '{print $2}' \
+ | awk -F - '{print $1}' \
+ | awk '{ \
+ if ($1 ~ /^[[:digit:].]+$/) { \
+ exit !($1 >= 2.6) \
+ } else { \
+ exit !($1 == \"master\" || $1 == \"next\") \
+ } \
+ }'" \
+ "source-file ~/.tmux/v2rc" \
+ "source-file ~/.tmux/v1rc" \
+ ;
+
+###
+
+set-option -qg status-left \
+ "[#[fg=yellow]#{session_name}#[default]] #[fg=colour060]#{host_short}#[default]:#[fg=colour151]#{b:pane_current_path} #[fg=colour099]#(git -C #{pane_current_path} symbolic-ref --short HEAD) #[fg=green]#(git -C #{pane_current_path} status --porcelain --untracked-files=no | cut -b 1-1 | sort | uniq | awk '/^[^[:space:]]/ {printf\(\"%%s\", $0\)}')#[fg=red]#(git -C #{pane_current_path} status --porcelain --untracked-files=no | cut -b 2-2 | sort | uniq | awk '/^[^[:space:]]/ {printf\(\"%%s\", $0\)}')#[fg=colour113]#(git -C #{pane_current_path} stash list 2>/dev/null | wc -l | tr -d '\n' | sed s,^0\$,,) #[default]"
+
+set-option -qg status-right \
+ "#[default] ┊ #[fg=colour065]#(grep ^MemFree /proc/meminfo | awk '{print rshift\($2, 10\)}')#[fg=colour071]m #[default]┊ #[fg=colour101]#(echo \"\(`awk '{print \$1}' /proc/loadavg` / `grep ^processor /proc/cpuinfo | wc -l`\) \* 100\" | bc -ql | sed 's,\\..*,,' | awk '{printf\(\"%%2u\", $0\)}')#[fg=colour102]%% "
+
+set-option -qwg window-status-current-format \
+ "#[fg=colour208]»#[fg=colour190]#{window_name}#[fg=colour037]·#{?window_flags,#[fg=colour058]#{window_flags}#[default], #[default]}"
+
+set-option -qwg window-status-format \
+ "#[default]»#[fg=colour066]#{window_name}#[fg=colour037]·#{?window_flags,#[fg=colour058]#{window_flags}#[default], #[default]}"
diff --git a/regress/conf/99749670b62bcb99a9b2e3d59708e357.conf b/regress/conf/99749670b62bcb99a9b2e3d59708e357.conf
new file mode 100644
index 00000000..dd1700b0
--- /dev/null
+++ b/regress/conf/99749670b62bcb99a9b2e3d59708e357.conf
@@ -0,0 +1,93 @@
+# -----------------------------------------------------------------------------
+# This config is targeted for tmux 2.1+ and should be placed in $HOME.
+#
+# Read the "Plugin Manager" section (bottom) before trying to use this config!
+# -----------------------------------------------------------------------------
+
+# -----------------------------------------------------------------------------
+# Global options
+# -----------------------------------------------------------------------------
+
+# Set a new prefix / leader key.
+set -g prefix `
+bind ` send-prefix
+
+# Allow opening multiple terminals to view the same session at different sizes.
+setw -g aggressive-resize on
+
+# Remove delay when switching between Vim modes.
+set -s escape-time 0
+
+# Allow Vim's FocusGained to work when your terminal gains focus.
+# Requires Vim plugin: https://github.com/tmux-plugins/vim-tmux-focus-events
+set -g focus-events on
+
+# Add a bit more scroll history in the buffer.
+set -g history-limit 50000
+
+# Enable color support inside of tmux.
+set -g default-terminal "screen-256color"
+
+# Ensure window titles get renamed automatically.
+setw -g automatic-rename
+
+# Start windows and panes index at 1, not 0.
+set -g base-index 1
+setw -g pane-base-index 1
+
+# Enable full mouse support.
+set -g mouse on
+
+# Status bar optimized for Gruvbox.
+set -g status-fg colour244
+set -g status-bg default
+set -g status-left ''
+set -g status-right-length 0
+#set -g status-right-length 20
+#set -g status-right '%a %Y-%m-%d %H:%M'
+
+set -g pane-border-fg default
+set -g pane-border-bg default
+set -g pane-active-border-fg colour250
+set -g pane-active-border-bg default
+
+set-window-option -g window-status-current-attr bold
+set-window-option -g window-status-current-fg colour223
+
+# -----------------------------------------------------------------------------
+# Key bindings
+# -----------------------------------------------------------------------------
+
+# Unbind default keys
+unbind C-b
+unbind '"'
+unbind %
+
+# Reload the tmux config.
+bind-key r source-file ~/.tmux.conf
+
+# Split panes.
+bind-key h split-window -v
+bind-key v split-window -h
+
+# Move around panes with ALT + arrow keys.
+bind-key -n M-Up select-pane -U
+bind-key -n M-Left select-pane -L
+bind-key -n M-Down select-pane -D
+bind-key -n M-Right select-pane -R
+
+# -----------------------------------------------------------------------------
+# Plugin Manager - https://github.com/tmux-plugins/tpm
+# In order to use the plugins below you need to install TPM and the plugins.
+# Step 1) git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
+# Step 2) Reload tmux if it's already started with `r
+# Step 3) Launch tmux and hit `I (capital i) to fetch any plugins
+# -----------------------------------------------------------------------------
+
+# List of plugins.
+set -g @plugin 'tmux-plugins/tpm'
+set -g @plugin 'tmux-plugins/tmux-resurrect'
+set -g @plugin 'tmux-plugins/tmux-yank'
+
+# Initialize TPM (keep this line at the very bottom of your tmux.conf).
+run -b '~/.tmux/plugins/tpm/tpm'
diff --git a/regress/conf/a46e6e84cd1071105aa807256dbc158d.conf b/regress/conf/a46e6e84cd1071105aa807256dbc158d.conf
new file mode 100644
index 00000000..bfbb2d3e
--- /dev/null
+++ b/regress/conf/a46e6e84cd1071105aa807256dbc158d.conf
@@ -0,0 +1,432 @@
+# Dynamic configuration file generated by ~/Makefile from /home/sunny/.tmux.conf.erb
+#
+# DO NOT EDIT THIS FILE BY HAND --
+# YOUR CHANGES WILL BE OVERWRITTEN
+#
+
+
+
+bind-key R source ~/.tmux.conf \; display-message 'config reloaded!'
+
+#-----------------------------------------------------------------------------
+# terminal
+#-----------------------------------------------------------------------------
+
+# enable mouse support for general