From 71d5314331fc48fbc8a52aa4b00cfa7ca123784a Mon Sep 17 00:00:00 2001 From: "Kenneth Benzie (Benie)" Date: Wed, 6 Dec 2017 00:21:15 +0000 Subject: [PATCH] Add conduit file & tmux.conf config file --- .conduit.yaml | 6 +++ tmux.conf | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 107 insertions(+) create mode 100644 .conduit.yaml create mode 100644 tmux.conf diff --git a/.conduit.yaml b/.conduit.yaml new file mode 100644 index 0000000..af90a5a --- /dev/null +++ b/.conduit.yaml @@ -0,0 +1,6 @@ +--- +- location: ~/.config/tmux +- apt: + - tmux +- symlink: + - {src: tmux.conf, dst: ~/.tmux.conf} diff --git a/tmux.conf b/tmux.conf new file mode 100644 index 0000000..c60b5c8 --- /dev/null +++ b/tmux.conf @@ -0,0 +1,101 @@ +# Enable utf-8 +set -g utf8 on +set -g status-utf8 on + +# Use vim keybindings in copy mode +set -g mode-keys vi + +# Change prefix to C-Space +unbind C-b +set -g prefix C-Space +bind Space send-prefix + +# Address vim mode switching delay +set -s escape-time 0 + +# Increase scrollback buffer size +set -g history-limit 50000 + +# Set tmux messages display time to 4 seconds +set -g display-time 4000 + +# Refresh 'status-left' and 'status-right' more often +set -g status-interval 5 + +# Upgrade $TERM +set -g default-terminal "screen-256color" + +# Focus events enabled for terminals that support them +set -g focus-events on + +# TODO: Change this comment to something that explains the setting +# super useful when using "grouped sessions" and multi-monitor setup +setw -g aggressive-resize on + +# Start window & pane index at 1 +set -g pane-base-index 1 + +# Enable mouse support +set-option -g mouse on + +# Enable cursor shape per pane in VTE compatible terminals +if -b '[ "`uname`" != "Darwin" ]' \ + "set -ga terminal-overrides ',*:Ss=\E[%p1%d q:Se=\E[2 q'" + +# Set only on OS X where it's required +if -b '[ "`uname`" = "Darwin" ]' \ + "set -g default-command 'reattach-to-user-namespace -l $SHELL'" + +# Make new splits open in current directory +bind "\"" split-window -c "#{pane_current_path}" +bind "%" split-window -h -c "#{pane_current_path}" + +# Integrate pane selection with vim +is_vim='echo "#{pane_current_command}" | grep -iqE "(^|\/)g?(view|n?vim?)(diff)?$"' +bind -n C-h if-shell "$is_vim" "send-keys C-h" "select-pane -L" +bind -n C-j if-shell "$is_vim" "send-keys C-j" "select-pane -D" +bind -n C-k if-shell "$is_vim" "send-keys C-k" "select-pane -U" +bind -n C-l if-shell "$is_vim" "send-keys C-l" "select-pane -R" +bind -n C-\ if-shell "$is_vim" "send-keys C-\\" "select-pane -l" + +# Integrate urlview +bind-key u capture-pane \; split-window "tmux show-buffer | urlview -" + +# Enter copy mode with C-U +bind-key C-u copy-mode -u + +# Left status style +set-window-option -g status-left " #S" +set-window-option -g status-left-fg colour240 +set-window-option -g status-left-bg colour233 + +# Centre status style +set-window-option -g status-fg colour240 +set-window-option -g status-bg colour233 + +# Right status style +set-window-option -g status-right "%a %d-%m-%y %H:%M " +set-window-option -g status-right-fg white +set-window-option -g status-right-bg colour233 + +# Active window status style +set-window-option -g window-status-current-format " #I: #W" +set-window-option -g window-status-current-fg white +set-window-option -g window-status-current-bg colour233 + +# Inactive window status style +set-window-option -g window-status-format " #I: #W" +set-window-option -g window-status-fg colour240 +set-window-option -g window-status-bg colour233 + +# Active pane border +set-option -g pane-active-border-fg colour235 +set-option -g pane-active-border-bg colour235 + +# Inactive pane border +set-option -g pane-border-fg colour233 +set-option -g pane-border-bg colour233 + +# Command line window list selection +set-window-option -g mode-style fg=colour233,bg=colour30 +set-option -g message-style fg=colour233,bg=colour30