tmux.conf 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. #clear all binds...?
  2. #unbind-key -a #oh, it really means all, not just reset to default.
  3. ##############################################
  4. # tmux-resurrect and tmux-continuum ##
  5. set -g @plugin 'tmux-plugins/tmux-resurrect'##
  6. set -g @plugin 'tmux-plugins/tmux-continuum'##
  7. # ##
  8. set -g @continuum-restore 'on' ##
  9. ##############################################
  10. ###############################################################################################################
  11. # oh this is cool. titles on panes. and i can re-name them. :) ... wont that be nice with tmux-continuum ##
  12. set -g pane-border-status top ##
  13. ###############################################################################################################
  14. ## STYLE STUFF ########################################################
  15. # ##
  16. # borders
  17. set -g pane-border-style 'fg=cyan bg=black bold' ##
  18. set -g pane-active-border-style 'fg=brightyellow bg=green' ##
  19. # copy mode
  20. #setw -g mode-style 'fg=colour1 bg=colour18 bold'
  21. # statusbar
  22. #set -g status-position bottom
  23. #set -g status-justify left
  24. #set -g status-style 'fg=colour1'
  25. #set -g status-left ''
  26. #set -g status-right '%Y-%m-%d %H:%M '
  27. set -g status-right '%Y%m%d %H:%M:%S '
  28. #set -g status-right-length 50
  29. #set -g status-left-length 10
  30. #setw -g window-status-current-style 'fg=colour0 bg=colour1 bold'
  31. setw -g window-status-current-style 'fg=colour3 bg=colour0 bold'
  32. #setw -g window-status-current-format ' #I #W #F '
  33. #setw -g window-status-style 'fg=colour1 dim'
  34. #setw -g window-status-format ' #I #[fg=colour7]#W #[fg=colour1]#F '
  35. #setw -g window-status-bell-style 'fg=colour2 bg=colour1 bold'
  36. # messages
  37. #set -g message-style 'fg=colour2 bg=colour0 bold'
  38. #######################################################################
  39. ## MESSAGE STUFF #################
  40. # keep messages (1000=1s) ########
  41. set-option -g display-time 8000 ##
  42. ##################################
  43. ## PANE MANAGEMENT THINGS ########################## ######################################################
  44. # ##
  45. #join-pane [-dhv] [-l size | -p percentage] [-s src-pane] [-t dst-pane] ##
  46. # (alias: joinp) ##
  47. # Like split-window, but instead of splitting dst-pane and creating ##
  48. # a new pane, split it and move src-pane into the space. This can ##
  49. # be used to reverse break-pane. ##
  50. #To simplify this, I have these binds in my .tmux.conf for that: ##
  51. # ##
  52. # pane movement ##
  53. bind-key j command-prompt -p "join pane from:" "join-pane -s '%%'" ##
  54. bind-key s command-prompt -p "send pane to:" "join-pane -t '%%'" ##
  55. # ##
  56. ## ##
  57. # easy switch panes (no prefix bind) ##
  58. bind -n M-Left select-pane -L ##
  59. bind -n M-Right select-pane -R ##
  60. bind -n M-Up select-pane -U ##
  61. bind -n M-Down select-pane -D ##
  62. # ##
  63. #default split ##
  64. #bind-key \" split-window -h ##
  65. #bind-key % split-window -v ##
  66. # easy split ##
  67. bind-key h split-window -h ##
  68. bind-key v split-window -v ##
  69. #or ##
  70. bind-key | split-window -h ##
  71. bind-key - split-window -v ##
  72. # ##
  73. # easy shift arrow to switch window (wont want this if wanting that in emacs in tmux. will override.) ##
  74. # do want to change that bind tho, since S-Left/Right is what yakuake uses too. ##
  75. bind-key -n S-Left previous-window ##
  76. bind-key -n S-Right next-window ##
  77. # ##
  78. # synchronize panes ##
  79. # wow. same commands typed into all panes n view. works ssh'd in to other systems. wow. ##
  80. bind-key y set-window-option synchronize-panes\; display-message "synchronize mode toggled." ##
  81. # ##
  82. # easy pane navigation ##
  83. bind -n M-w select-pane -U ##
  84. bind -n M-a select-pane -L ##
  85. bind -n M-s select-pane -D ##
  86. bind -n M-d select-pane -R ##
  87. #
  88. ## SCROLLL STUFF ###################################################
  89. # more scrollback (i made this up... see if there's a real one) ##
  90. #set-option -g scrollback-lines 9000 ##
  91. #there is! and i wasnt far off. ##
  92. set-option -g history-limit 9000 ##
  93. ####################################################################
  94. ## MOUSE STUFF ############################################################################################
  95. #mouse mode ##
  96. set -g mouse on ##
  97. #bind -n M-m set -g mouse off \; display-message "mouse toggled off" ##
  98. bind-key m set -g mouse \; display-message "mouse toggled" ##
  99. #bind -n C-m set -g mouse on \; display-message "mouse toggled on" # aw, does this instead of "enter". ##
  100. #bind -n C-n set -g mouse on \; display-message "mouse toggled on" ##
  101. #bind -u Enter # nope ##
  102. #unbind Enter #doesnt work. so i guess it's C-j for enter until this gets mended. ##
  103. #unbind C-m #doesnt work. so i guess it's C-j for enter until this gets mended. ##
  104. #unbind-key -a Enter #doesnt work. so i guess it's C-j for enter until this gets mended. ##
  105. #unbind-key -a C-m #doesnt work. so i guess it's C-j for enter until this gets mended. ##
  106. ###########################################################################################################
  107. ## CLIPBOARD STUFF ##################################################################
  108. # clipboard mode ##
  109. #set -s set-clipboard on ##
  110. #toggle clipboard modes. ##
  111. #bind-key c set -g set-clipboard \; display-message "clip toggled" ##
  112. ###bind-key c set -g set-clipboard on \; display-message "clip toggled ON" ##
  113. #####bind-key C set -g set-clipboard on \; display-message "clip toggled ON" ##
  114. #^ stuff like that, if ye like. ... kinda. ##
  115. #####################################################################################
  116. ## CONFIG RELOAD STUFF ########################################################
  117. # easy config reload ##
  118. bind-key r source-file ~/.tmux.conf \; display-message "tmux.conf reloaded" ##
  119. ###############################################################################
  120. ######## MISC... / UNSORTED...
  121. ############################################################################################################################################################
  122. # full colour
  123. set-option -sa terminal-overrides ",xterm*:Tc"
  124. ##############################################################################
  125. #######################################################################
  126. ### here followss a [now being edited] paste of the example default in ... ###
  127. ### +48.0°C20231014 16:27:13 mozart gentoostudio /home/digit %
  128. ### cat /bedrock/strata/jentoo/usr/share/doc/tmux-3.3a-r1/example_tmux.conf >> .tmux.conf
  129. ###
  130. ### and then i see weird things launch when i refresh my config, and i think, this is not default...
  131. ###
  132. ### oh no, oh it's all yuck. this is not normal stuff. ...
  133. #
  134. #####################
  135. #
  136. # Example .tmux.conf
  137. #
  138. # By Nicholas Marriott. Public domain.
  139. #
  140. # Some tweaks to the status line
  141. #set -g status-right "%H:%M"
  142. #set -g window-status-current-style "underscore"
  143. # If running inside tmux ($TMUX is set), then change the status line to red
  144. #%if #{TMUX}
  145. #set -g status-bg red
  146. #%endif
  147. # Enable RGB colour if running in xterm(1)
  148. #set-option -sa terminal-overrides ",xterm*:Tc"
  149. # Change the default $TERM to tmux-256color
  150. #set -g default-terminal "tmux-256color"
  151. # No bells at all
  152. #set -g bell-action none
  153. # Keep windows around after they exit
  154. #set -g remain-on-exit on
  155. # Change the prefix key to C-a
  156. #set -g prefix C-a
  157. #unbind C-b
  158. #bind C-a send-prefix
  159. # Turn the mouse on, but without copy mode dragging
  160. #set -g mouse on
  161. #unbind -n MouseDrag1Pane
  162. #unbind -Tcopy-mode MouseDrag1Pane
  163. # Some extra key bindings to select higher numbered windows
  164. #bind F1 selectw -t:10
  165. #bind F2 selectw -t:11
  166. #bind F3 selectw -t:12
  167. #bind F4 selectw -t:13
  168. #bind F5 selectw -t:14
  169. #bind F6 selectw -t:15
  170. #bind F7 selectw -t:16
  171. #bind F8 selectw -t:17
  172. #bind F9 selectw -t:18
  173. #bind F10 selectw -t:19
  174. #bind F11 selectw -t:20
  175. #bind F12 selectw -t:21
  176. # A key to toggle between smallest and largest sizes if a window is visible in
  177. # multiple places
  178. #bind F set -w window-size
  179. # Keys to toggle monitoring activity in a window and the synchronize-panes option
  180. #bind m set monitor-activity
  181. #bind y set synchronize-panes\; display 'synchronize-panes #{?synchronize-panes,on,off}'
  182. # Create a single default session - because a session is created here, tmux
  183. # should be started with "tmux attach" rather than "tmux new"
  184. #new -d -s0 -nirssi 'exec irssi'
  185. #set -t0:0 monitor-activity on
  186. #set -t0:0 aggressive-resize on
  187. #neww -d -ntodo 'exec emacs ~/TODO'
  188. #setw -t0:1 aggressive-resize on
  189. #neww -d -nmutt 'exec mutt'
  190. #setw -t0:2 aggressive-resize on
  191. #neww -d
  192. #neww -d
  193. #neww -d