V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
vnady
V2EX  ›  程序员

多终端管理工具 tmux 我的入门配置

  •  
  •   vnady · 2016-06-26 18:07:37 +08:00 · 5396 次点击
    这是一个创建于 2860 天前的主题,其中的信息可能已经有所发展或是发生改变。

    tmux 是一个优秀的终端复用软件,类似 GNU Screen ,但来自于 OpenBSD ,采用 BSD 授权。使用它最直观的好处就是,通过一个终端登录远程主机并运行 tmux 后,在其中可以开启多个控制台而无需再“浪费”多余的终端来连接这台远程主机;当然其功能远不止于此。 [ from 百度百科]

    我的配置文件主要进行如下定制:

    • 修改 prefix 键为 C-a

    • 分屏快捷键为 | -

    • 窗格选择移动键与 vim 移动键一致

    • 窗格尺寸调整,边界移动键 GHJK (与 vim 移动键一致,只是变成大写)

    • 状态栏设置

    • 使能鼠标操作

    配置文件.tmux.conf

    unbind C-b
    set -g prefix C-a
    bind-key C-a send-prefix
    bind r source-file ~/.tmux.conf \; display "Reloaded configure file!"
    setw -g mode-keys vi
    set -g default-terminal "screen-256color"
    
    # split window
    unbind '"'
    bind - splitw -v
    
    # vertical split (prefix -)
    unbind %
    bind | splitw -h # horizontal split (prefix |)
    
    # select pane
    bind k selectp -U # above (prefix k)
    bind j selectp -D # below (prefix j)
    bind h selectp -L # left (prefix h)
    bind l selectp -R # right (prefix l)
    
    # resize pane
    bind -r K resizep -U 10 # upward (prefix Ctrl+k)
    bind -r J resizep -D 10 # downward (prefix Ctrl+j)
    bind -r H resizep -L 10 # to the left (prefix Ctrl+h)
    bind -r L resizep -R 10 # to the right (prefix Ctrl+l)
    
    set -g status-right '#[fg=green][#[fg=cyan]%Y-%m-%d #[fg=cyan]%H:%M#[fg=green]]'
    set -g status-bg black
    set -g status-fg white
    set-option -g status-justify centre
    set-option -g status-left '#[bg=black,fg=green][#[fg=cyan]#S#[fg=green]]'
    set-option -g status-left-length 20
    setw -g automatic-rename on
    set-window-option -g window-status-format '#[dim]#I:#[default]#W#[fg=grey,dim]'
    set-window-option -g window-status-current-format '#[fg=cyan,bold]#I#[fg=blue]:#[fg=cyan]#W#[fg=dim]'
    
    # panes
    set -g pane-border-fg colour235
    set -g pane-active-border-fg cyan
    
    set -g mouse on
    

    tmux 使用截图

    19 条回复    2016-07-16 15:12:11 +08:00
    vnady
        1
    vnady  
    OP
       2016-06-26 18:11:41 +08:00
    <font color="ff8000">欢迎前辈推荐实用的配置,我会根据自己每次开始工作的情况写一个 init 脚本来完成工作环境准备( virtualenv 环境激活、工作目录切换、自动远程登录、打开工作文档、软件测试环境准备等等)</font>
    hei1000
        2
    hei1000  
       2016-06-26 19:10:25 +08:00 via Android
    wweir
        3
    wweir  
       2016-06-26 19:30:00 +08:00 via Android
    配置我是直接写在 .zshrc 里随时同步
    h4x3rotab
        4
    h4x3rotab  
       2016-06-26 19:30:37 +08:00 via iPhone
    我直接用 item + tmux -CC
    dongxiaozhuo
        5
    dongxiaozhuo  
       2016-06-26 20:46:38 +08:00 via iPhone
    原来 tmux 还是需要配置的。。。默认方式一路狂奔半年了。。。。
    midas
        6
    midas  
       2016-06-26 21:54:16 +08:00
    kkk330
        7
    kkk330  
       2016-06-27 00:34:42 +08:00 via Android
    用 byobu 吧
    hanxiV2EX
        8
    hanxiV2EX  
       2016-06-27 00:44:57 +08:00 via iPhone   ❤️ 1
    分享一下我的配置,亮点在自动保存布局,开机重启不怕丢失。
    hanxiV2EX
        9
    hanxiV2EX  
       2016-06-27 00:45:18 +08:00 via iPhone
    ncwhale
        10
    ncwhale  
       2016-06-27 02:14:24 +08:00   ❤️ 1
    (删)咱用 Byobu 的喵(/删)
    yech1990
        11
    yech1990  
       2016-06-27 03:30:29 +08:00 via Android
    @hanxiV2EX 怎么用啊
    hanxiV2EX
        12
    hanxiV2EX  
       2016-06-27 07:08:53 +08:00 via iPhone
    @yech1990 拷贝.tmux 文件夹,.tmux.conf 文件,然后拷贝.bash_profile 中的 alias tmux 那行。
    vnady
        13
    vnady  
    OP
       2016-06-27 09:21:23 +08:00
    @hanxiV2EX 确实很需要这样一个功能。
    whnzy
        14
    whnzy  
       2016-06-27 10:28:33 +08:00
    msg7086
        15
    msg7086  
       2016-06-27 12:28:01 +08:00
    远程的话何不用 byobu 。
    jswh
        16
    jswh  
       2016-06-27 13:36:25 +08:00
    tmux 和 emacs 调和不定,我还在纠结
    vnady
        17
    vnady  
    OP
       2016-06-27 14:31:15 +08:00
    @msg7086 谢谢!之前不知道 byobu 。在知乎上看到“发 caffe 的时候用了哪些工具”,作者回复里提到 tmux 正好自己需要就去体验了下。以后有机会探索下 byobu 。
    sinxccc
        18
    sinxccc  
       2016-06-28 01:15:12 +08:00
    @jswh 印象中 tmux 开发者是用 emacs 的,所以你要对兼容有信心ˊ_>ˋ

    用 Emacs 的话 prefix 推荐使用 C-o
    vnady
        19
    vnady  
    OP
       2016-07-16 15:12:11 +08:00
    有人说, iTerm2 是配置完毕开箱即用的 tmux 。
    最近开始在 mac 上使用 iTerm2 ,与 tmux 同时使用。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3495 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 00:42 · PVG 08:42 · LAX 17:42 · JFK 20:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.