]> ruderich.org/simon Gitweb - config/dotfiles.git/blobdiff - tmux.conf
tmux.conf: Reduce status line updates to one per minute.
[config/dotfiles.git] / tmux.conf
index 37a86ffcc84fa1c88f19d9a534b839804f7d1fc9..3a3bb78e2654922b519143ce1a34c63454ea57ee 100644 (file)
--- a/tmux.conf
+++ b/tmux.conf
@@ -1,11 +1,35 @@
 # Tmux configuration file.
 
+# Copyright (C) 2011-2012  Simon Ruderich
+#
+# This file is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This file is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this file.  If not, see <http://www.gnu.org/licenses/>.
+
+
+# GENERAL
+
+# Use a larger window history, in lines.
+set-option -g history-limit 10000
+
+# Display messages for three seconds.
+set-option -g display-time 3000
+
 
 # TERMINAL
 
 # Disable alternative screen feature. This way e.g. Vim's window content stays
 # visible after quitting Vim. This is quite useful to copy data (needs tmux
-# 1.5 to work completely).
+# 1.5 to work (almost) completely).
 set-window-option -g alternate-screen off
 
 # Set title for outer terminal.
@@ -26,7 +50,15 @@ set-option -g status-bg colour12
 # Nothing left of window list.
 set-option -g status-left ""
 # Current load average and hostname on the right.
-set-option -g status-right "#(uptime | cut -d: -f5- | tr -d ,) #H"
+set-option -g status-right "#(uptime | sed 's/^.*load averages*: //; s/,//g') #H"
+
+# Format for windows in the window list in the status line. #I window index,
+# #W window number, #F window flags.
+set-window-option -g window-status-format         "#I #W#F"
+set-window-option -g window-status-current-format "#I #W#F"
+
+# Update status line commands (#(..)) only every minute.
+set-option -g status-interval 60
 
 
 # BINDINGS
@@ -44,10 +76,18 @@ unbind-key C-b
 # GNU screen like bindings (with C-x).
 bind-key C-c new-window
 bind-key C-a last-window
-# Switch to next/previos window, like in GNU screen.
 bind-key C-n next-window
 bind-key C-p previous-window
 bind-key C-[ copy-mode
 bind-key C-] paste-buffer
 
+# Arrow-key replacements for tmux's prompt.
+bind-key -t vi-edit C-n history-down
+bind-key -t vi-edit C-p history-up
+
+# Run urlview on the current screen content. Very useful to follow links.
+# Thanks to Arch wiki (https://wiki.archlinux.org/index.php/Tmux) for the
+# basic idea.
+bind-key C-b capture-pane \; save-buffer ~/.tmp/tmux-urlview \; new-window "$SHELL -c 'urlview < ~/.tmp/tmux-urlview'"
+
 # vim: ft=tmux