Compare commits
9 Commits
727d2274d8
...
future
| Author | SHA1 | Date | |
|---|---|---|---|
| cc688392da | |||
| f3752929e2 | |||
| d0842dc020 | |||
| 8ce4cbb15d | |||
| 135a793d1c | |||
| 4d493a9917 | |||
| 529a65c06b | |||
| a6b8580ef0 | |||
| 71d5314331 |
15
.conduit.yaml
Normal file
15
.conduit.yaml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
- location: ~/.config/tmux
|
||||||
|
- apt:
|
||||||
|
- libevent-dev
|
||||||
|
- ncurses-dev
|
||||||
|
- xsel
|
||||||
|
- repo:
|
||||||
|
- url: 'https://github.com/tmux/tmux.git'
|
||||||
|
location: ~/.local/src/tmux
|
||||||
|
branch: 2.6
|
||||||
|
actions:
|
||||||
|
- command: ./configure --prefix=$HOME/.local
|
||||||
|
- command: {install: make -j8 install, remove: make uninstall}
|
||||||
|
- symlink:
|
||||||
|
- {src: tmux.conf, dst: ~/.tmux.conf}
|
||||||
4
layouts/2vt
Normal file
4
layouts/2vt
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
# vim: ft=tmux
|
||||||
|
select-pane -t 0
|
||||||
|
split-window -v -p 34
|
||||||
|
select-pane -t 1
|
||||||
111
tmux.conf
Normal file
111
tmux.conf
Normal file
@@ -0,0 +1,111 @@
|
|||||||
|
# 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 "tmux-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 changing cursor shape per pane in iTerm2 or VTE compatible terminals,
|
||||||
|
# vim or zsh should emit VTE compatible escape sequences to change cursor shape
|
||||||
|
if -b '[ -n $ITERM_PROFILE ]' \
|
||||||
|
"set -ga terminal-overrides '*:Ss=\E]1337;CursorShape=%p1%d\7'" \
|
||||||
|
"set -ga terminal-overrides '*:Ss=\E[%p1%d q:Se=\E[2 q'"
|
||||||
|
|
||||||
|
# Enable strikethrough on VTE compatible terminals.
|
||||||
|
set -ga terminal-overrides 'xterm*:smxx=\E[9m'
|
||||||
|
|
||||||
|
# Set only on OS X where it's required
|
||||||
|
if -b '[ "`uname`" = "Darwin" ]' \
|
||||||
|
"set -g default-command 'reattach-to-user-namespace -l $SHELL'"
|
||||||
|
|
||||||
|
# Restore old next/previous window bindings
|
||||||
|
bind C-n next-window
|
||||||
|
bind C-p previous-window
|
||||||
|
|
||||||
|
# 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
|
||||||
|
# Begin selection in copy mode with v not Space
|
||||||
|
bind-key -T copy-mode-vi v send-keys -X begin-selection
|
||||||
|
# Yank to the system clipboard in copy mode
|
||||||
|
if -b '[ "`uname`" = "Linux" ]' \
|
||||||
|
"bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel 'xsel -i -p && xsel -o -p | xsel -i -b'"
|
||||||
|
|
||||||
|
# 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
|
||||||
Reference in New Issue
Block a user