dotfiles

My personal home directory config files
git clone https://erai.gay/code/dotfiles/
Log | Files | Refs | LICENSE

tmux.conf (4897B)


      1 unbind -a
      2 
      3 set -g history-limit 100000
      4 
      5 # don't wait for escapes
      6 set -s                  escape-time 0
      7 
      8 # resize current window
      9 setw -g           aggressive-resize
     10 
     11 # use vi keys for copy mode
     12 setw -g                   mode-keys vi
     13 
     14 # start indexing at 1
     15 set -g                   base-index 1
     16 setw -g             pane-base-index 1
     17 
     18 # color terminal
     19 set -g             default-terminal "screen-256color"
     20 
     21 # status bars
     22 # <username>@<hostname> <date>, <time>
     23 set -g          status-right-length 60
     24 set -g                 status-right "#h %a %h %-d, %-I:%M %P "
     25 set -g                  status-left " [#S] "
     26 set -g         window-status-format " #I: #W "
     27 set -g window-status-current-format "[#I: #W]"
     28 set -g  window-status-current-style "bg=yellow"
     29 
     30 # prefix
     31 set -g    prefix C-a
     32 bind         C-a send-prefix
     33 
     34 # clear screen
     35 bind -n      C-l clear-history
     36 
     37 # vi resize
     38 bind -rn     M-J resize-pane -D 5
     39 bind -rn     M-K resize-pane -U 5
     40 bind -rn     M-H resize-pane -L 5
     41 bind -rn     M-L resize-pane -R 5
     42 
     43 # navigation
     44 bind -n      M-h select-pane -L
     45 bind -n      M-j select-pane -D
     46 bind -n      M-k select-pane -U
     47 bind -n      M-l select-pane -R
     48 
     49 bind -n     M-\{ swap-pane -U
     50 bind -n     M-\} swap-pane -D
     51 
     52 bind -n     M-q select-window -t :5
     53 bind -n     M-w select-window -t :6
     54 bind -n     M-e select-window -t :7
     55 bind -n     M-r select-window -t :8
     56 
     57 bind -n     M-1 select-window -t :1
     58 bind -n     M-2 select-window -t :2
     59 bind -n     M-3 select-window -t :3
     60 bind -n     M-4 select-window -t :4
     61 bind -n     M-5 select-window -t :5
     62 bind -n     M-6 select-window -t :6
     63 bind -n     M-7 select-window -t :7
     64 bind -n     M-8 select-window -t :8
     65 bind -n     M-9 select-window -t :9
     66 bind -n     M-` command-prompt -p index "select-window -t ':%%'"
     67 
     68 bind -n     M-. next-window
     69 bind -n     M-, previous-window
     70 bind -n     M-< swap-window -t -1
     71 bind -n     M-> swap-window -t +1
     72 
     73 # pane creation
     74 bind -n     M-! break-pane
     75 bind -n     M-@ command-prompt -p "send to:" "join-pane -t ':%%'"
     76 bind -n     M-c new-window -c "#{pane_current_path}"
     77 bind -n    M-\- split-window -c "#{pane_current_path}"
     78 bind -n    M-\\ split-window -h -c "#{pane_current_path}"
     79 
     80 bind -n     M-x confirm-before -p "kill-pane #P? (y/n)" kill-pane
     81 bind -n     M-X confirm-before -p "kill-window #W? (y/n)" kill-window
     82 
     83 # layout
     84 bind -n M-Space next-layout
     85 bind -n M-S-Space previous-layout
     86 
     87 # standard
     88 bind          : command-prompt
     89 bind          ? list-keys
     90 bind          d detach-client
     91 bind        '~' show-messages
     92 bind          [ copy-mode
     93 bind          ] paste-buffer
     94 bind          f command-prompt "find-window '%%'"
     95 
     96 # defaults
     97 bind        C-o rotate-window
     98 bind        C-z suspend-client
     99 bind      Space next-layout
    100 bind          ! break-pane
    101 bind        '"' split-window
    102 bind        '#' list-buffers
    103 bind        '$' command-prompt -I '#S' "rename-session '%%'"
    104 bind          % split-window -h
    105 bind          & confirm-before -p "kill-window #W? (y/n)" kill-window
    106 bind        "'" command-prompt -p index "select-window -t ':%%'"
    107 bind          ( switch-client -p
    108 bind          ) switch-client -n
    109 bind        ',' command-prompt -I '#W' "rename-window '%%'"
    110 bind          - delete-buffer
    111 bind          . command-prompt "move-window -t '%%'"
    112 bind          0 select-window -t :0
    113 bind          1 select-window -t :1
    114 bind          2 select-window -t :2
    115 bind          3 select-window -t :3
    116 bind          4 select-window -t :4
    117 bind          5 select-window -t :5
    118 bind          6 select-window -t :6
    119 bind          7 select-window -t :7
    120 bind          8 select-window -t :8
    121 bind          9 select-window -t :9
    122 bind        ';' last-pane
    123 bind          = choose-buffer
    124 bind          D choose-client
    125 bind          L switch-client -l
    126 bind          c new-window
    127 bind          i display-message
    128 bind          l last-window
    129 bind          n next-window
    130 bind          o select-pane -t :.+
    131 bind          p previous-window
    132 bind          q display-panes
    133 bind          r refresh-client
    134 bind          s choose-tree
    135 bind          t clock-mode
    136 bind          w choose-window
    137 bind          x confirm-before -p "kill-pane #P? (y/n)" kill-pane
    138 bind          z resize-pane -Z
    139 bind         \{ swap-pane -U
    140 bind         \} swap-pane -D
    141 bind      PPage copy-mode -u
    142 bind -r      Up select-pane -U
    143 bind -r    Down select-pane -D
    144 bind -r    Left select-pane -L
    145 bind -r   Right select-pane -R
    146 bind        M-1 select-layout even-horizontal
    147 bind        M-2 select-layout even-vertical
    148 bind        M-3 select-layout main-horizontal
    149 bind        M-4 select-layout main-vertical
    150 bind        M-5 select-layout tiled
    151 bind        M-n next-window -a
    152 bind        M-o rotate-window -D
    153 bind        M-p previous-window -a
    154 bind -r    M-Up resize-pane -U 5
    155 bind -r  M-Down resize-pane -D 5
    156 bind -r  M-Left resize-pane -L 5
    157 bind -r M-Right resize-pane -R 5
    158 bind -r    C-Up resize-pane -U
    159 bind -r  C-Down resize-pane -D
    160 bind -r  C-Left resize-pane -L
    161 bind -r C-Right resize-pane -R