# Copyright 2012 Cirrus Minor. All rights reserved. # # Redistribution and use in source and binary forms, with or without modification, are # permitted provided that the following conditions are met: # # 1. Redistributions of source code must retain the above copyright notice, this list of # conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright notice, this list # of conditions and the following disclaimer in the documentation and/or other materials # provided with the distribution. # # THIS SOFTWARE IS PROVIDED BY Cirrus Minor ''AS IS'' AND ANY EXPRESS OR IMPLIED # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL Cirrus Minor OR # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON # ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # All the following colours are supported: black, red, green, yellow, blue, magenta, cyan, white, default, bright, bold, dim, # The views and conclusions contained in the software and documentation are those of the # authors and should not be interpreted as representing official policies, either expressed # or implied, by Cirrus Minor. ################ ## .tmux.conf ## #unbind C-b set -g prefix C-a # generalized startup stuff #----------------------------------------------- set -g default-command zsh set -g default-terminal screen-256color set -g set-remain-on-exit on set -g remain-on-exit on set -g base-index 1 #set -g default-command "${SHELL}" # Mouse (tmux >= 2.1) #------------------------------------------------- # Allows scrolling and selecting in copy-mode set -g mouse-utf8 on set -g mouse on set -ga terminal-overrides ',xterm*:smcup@:rmcup@' set -ga terminal-override ',rxvt-uni*:XT:Ms=\E]52;%p1%s;%p2%s\007' set -g history-limit 30000 # Enable mouse copy-mode scrolling bind-key -T root WheelUpPane if-shell -F -t = "#{alternate_on}" "send-keys -M" "select-pane -t =; copy-mode -e; send-keys -M" bind-key -T root WheelDownPane if-shell -F -t = "#{alternate_on}" "send-keys -M" "select-pane -t =; send-keys -M" # Enable fast scrolling with Ctrl bind-key -T root C-WheelUpPane if-shell -F -t = "#{alternate_on}" "send-keys -M" "select-pane -t =; copy-mode -e; send-keys -M" #bind-key -T root C-WheelDownPane if-shell -F -t = "#{alternate_on}" "send-keys -M" "select-pane -t =; copy-mode -e; send-keys -M" bind-key -t vi-copy C-WheelUpPane halfpage-up bind-key -t vi-copy C-WheelDownPane halfpage-down # Make mouse-drag work only with Ctrl #unbind -T root MouseDrag1Pane #unbind -t vi-copy MouseDrag1Pane #bind-key -n C-MouseDrag1Pane if -Ft= '#{mouse_any_flag}' 'if -Ft= \"#{pane_in_mode}\" \"copy-mode -M\" \"send-keys -M\"' 'copy-mode -M' #bind-key -t vi-copy C-MouseDrag1Pane begin-selection # Toggle mouse on/off #bind-key m set-option -g mouse on \; display 'Mouse: ON' #bind-key M set-option -g mouse off \; display 'Mouse: OFF' # Look & Feel #----------------------------------------------- # Statusbar properties set -g display-time 5000 set -g status-bg default set -g status-fg black #set -g window-status-current-format "#[bg=blue,fg=black] Session #S ❮|:#W|#h:#T|❯ " # pane divider color; non active pane set -g pane-border-fg green set -g pane-border-bg default # pane divider color; active pane # helps when you have more than two panes. set -g pane-active-border-fg blue set -g pane-active-border-bg default # window notifications; display activity on other window set -g monitor-activity on set -g visual-activity on # statusbar colors set -g status-fg white set -g status-bg default set -g status-attr default # window title colors; non active set -g window-status-fg blue set -g window-status-bg default set -g window-status-attr dim # window title colors; active set -g window-status-current-fg colour38 set -g window-status-current-bg default #set -g window-status-current-attr bright # urlscan as context and url view bind-key u capture-pane \; save-buffer /tmp/tmux-buffer \; \ new-window -n "urlscan" '$SHELL -c "urlscan < /tmp/tmux-buffer"' # urlview as context and url view bind-key U capture-pane \; save-buffer /tmp/tmux-buffer \; \ new-window -n "urlview" '$SHELL -c "urlview < /tmp/tmux-buffer"' # Titles set -g set-titles on #set -g set-titles-string "#T" set -g status-justify centre set -g automatic-rename on #tmux messages set -g message-bg default set -g message-fg yellow #statusbar & external scripts #----------------------------------------------------- set -g status on #set -g status-interval 2 set -g status-utf8 on set -g status-left-length 200 set -g status-right-length 180 #set -g status-left '#(rainbarf)' set -g status-left " #(~/tmux-powerline/powerline.sh left)" #set-option -g status-left "#[fg=green]Session: #S #[fg=yellow]#I #[fg=cyan]#P" #set -g status-right "#(~/tmux-powerline/powerline.sh right)" set -g status-right "#[fg=colour255]#(cat /home/cirrus/.cache/i3blocks/notification | grep BODY | cut -c 6-) #[bg=36,fg=yellow]◀ %H:%M #[default] " run-shell ~/build/tmux-open/open.tmux run-shell ~/build/tmux-copycat/copycat.tmux