前两天在给另外一个团队帮忙时,看他们在Rails日志、代码文件、git文件系统里面来回穿梭,觉得他们太累了,于是就介绍了 tmux 给他们用。但只讲了一点基本的开窗口、分屏,没给讲太多技巧,因为一下子讲太多也消化不了,还不如让他们自己慢慢学(记得 man tmuxC-b ? 就差不多了)。

不过过了一会儿,小陆问我: 咦,你怎么可以用鼠标将窗口拖大拖小? 我说,”就几个配置而已“,正说要让他到我博客上看详细说明,突然想起:咦,我好像没写过这个? 以前在 ~/.tmux.conf 曾经加过不少配置,后来长期留下来的还没几行,其中就有这个。这么重要的东西我居然忘记记在博客上了——说明已经完全记录在脑袋里面了?

其实就这么几行配置:

setw -g mouse-resize-pane on
setw -g mouse-select-pane on
setw -g mouse-select-window on
setw -g mode-mouse on

这几行的作用分别是:

  • 开启用鼠标拖动调节pane的大小(拖动位置是pane之间的分隔线)
  • 开启用鼠标点击pane来激活该pane
  • 开启用鼠标点击来切换活动window(点击位置是状态栏的窗口名称)
  • 开启window/pane里面的鼠标支持(也即可以用鼠标滚轮回滚显示窗口内容,此时还可以用鼠标选取文本)

这几行配置加到 ~/.tmux.conf 中,然后在tmux里面按 C-b : 执行 source ~/.tmux.conf 即可生效 (也可以直接将这几行放在 C-b : 的输入行去执行,每次执行一行,不过 tmux重启后还得再来一遍)。


什么是window?

就是用 C-b c 创建出来的窗口,每个window跟tmux所在的终端一样大,window里面可以容纳多个pane。

所有窗口的名称显示在底部状态栏上,如下图所示。 有了上面的配置,只要点击窗口名就可以切换到指定窗口了 (快捷键是 C-b n, C-b p, C-b 1 .. C-b 9



(图盗自这里: Increased Developer Productivity with Tmux, Part 2: ~/.tmux.conf)

什么是pane?

就是窗口里面的分屏,可以用 C-b o 来切换到下一个pane,或者用 C-b Up 切换到当前pane上方的pane, 用C-b Down切换到当前pane下方的pane.

还有一种切换方法是 C-b q,tmux会显示每个pane的序号,按这个序号就可以跳过去了(按慢了可不行,得在数字消失前按)。



(本图片盗自: http://www.slideshare.net/lgfang/tmux/14 )

开启了 mouse-select-pane 选项之后, 就可以用鼠标点击面板切换了

用鼠标改变pane的大小

其实前面切换window或者pane,用鼠标并没有太大优势,也就只能略微减轻一点记忆负担。 但用鼠标拖动改变pane的大小这条是比快捷键有优势的,因为用快捷键很难一次调节到位 ,比如是增加6行还是9行? 缩小20列还是40列?而且 还可以斜向拖住交叉点来同时改变多个窗口的大小

附送一条贴士: 最大化/还原pane

  • 如果你用的是tmux >= 1.8,那么可以用 C-b z 来最大化一个pane,想恢复的时候再次按 C-b z 就是了
  • 如果你用的是tmux < 1.8,那么有点复杂,自己看这里: “Maximizing” a pane in tmux

参考

推荐下面两个slides,讲得都很通俗易懂。不过slideshare被蔷了,各位自己想办法吧

我在tmux中最不可少的配置: 用鼠标切换窗口/调节分屏大小的更多相关文章

  1. tmux 终端分屏利器使用

    介绍 Tmux 是一个工具,用于在一个终端窗口中运行多个终端会话. 不仅如此,你还可以通过 Tmux 使终端会话运行于后台或是按需接入.断开会话,这个功能非常实用. 很好的工具,记录一下,以后要常用. ...

  2. 在tmux中的vi 上下左右键变为了ABCD等字符

    在本机上用vim编辑时,上下左右键没有问题,但是在tmux中确出现ABCD等字符. 原因是在tmux这个终端,默认做了字符转换,网上搜了很多答案,解决问题的设置是: set term=xterm

  3. Mysql中主从复制的原理、配置过程以及实际案例

    Mysql中主从复制的原理.配置过程以及实际案例1.什么是主从复制?原理:主从分离,什么意思呢?我们不妨画个图看看.如图1所示: 2.准备工作:预备两台服务器,我这里使用虚拟机安装了两个Centos6 ...

  4. Maven中pom.xml文件的配置

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  5. Ubuntu下使用tmux实现分屏,以及tmux快捷键

    最近用到了终端的复用,使用了tmux,写一下自己的使用和一些快捷键. tmux是指通过一个终端登录远程主机并运行后,在其中可以开启多个控制台的终端复用软件. 来个效果图: 截图我使用的命令是  gno ...

  6. 【Linux】Tmux分屏

    1.Tmux Arch维基: https://wiki.archlinux.org/index.php/Tmux_(简体中文) 官方WIKI: https://github.com/tmux/tmux ...

  7. 关闭Windows 2003/2008中IE增强的安全配置的方法

           在使用Windows Server 2003/2008操作系统时,打开IE浏览网页时,发现浏览器总提示 "是否需要将当前访问的网站添加到自己信任的站点中去",要是不信 ...

  8. Spring Boot中只能有一个WebMvcConfigurationSupport配置类

    首先将结论写文章的最前面,一个项目中只能有一个继承WebMvcConfigurationSupport的@Configuration类(使用@EnableMvc效果相同),如果存在多个这样的类,只有一 ...

  9. 痞子衡嵌入式:关于i.MXRT中FlexSPI外设lookupTable里配置Normal read的一个小误区

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT中FlexSPI外设lookupTable里配置Normal read的一个小误区. 关于串行四线NOR Flash,当其作 ...

随机推荐

  1. centos7.2下安装Mysql笔记

    centos7.2下安装Mysql笔记 安装 MySQL 适用于 CentOS 7.0 或以后版本: yum install mariadb mariadb-server 适用于 CentOS 6.8 ...

  2. python小工具myqr生成动态二维码

    python小工具myqr生成动态二维码 (一)安装 (二)使用 (一)安装 命令: pip install myqr 安装完成后,就可以在命令行中输入 myqr 查看下使用帮助: myqr --he ...

  3. P2648 赚钱

    P2648 赚钱对于不知道起点在哪里的最短路,先建立一个超级源点,然后从超级源点跑最长路,并判正环即可. #include<iostream> #include<cstdio> ...

  4. Angular 个人深究(三)【由Input&Output引起的】

    Angular 个人深究(三)[由Input&Output引起的] 注:最近项目在做别的事情,angular学习停滞了 1.Angular 中 @Input与@Output的使用 //test ...

  5. epoll使用详解

    目录 epoll介绍 Epoll的优点: 1.支持一个进程打开大数目的socket描述符(FD) 2.IO效率不随FD数目增加而线性下降 3.支持边缘触发模式 4.使用mmap加速内核与用户空间的消息 ...

  6. SQLserver 新用户的创建以及权限的给与

    我们有时在装sql server 2008或者2012的时候,发现在装的时候,忘记设置sa用户的密码了,其实sa用户是sql server自带的用户,所以我们在装数据库的时候只需要设置一个密码就可以了 ...

  7. Java并发程序设计(十三)锁的性能优化

    锁的性能优化 一.优化注意事件 一)减少锁的持有时间 只在必要时进行同步,能明显减少锁的持有时间. 二)锁的细化 缺陷:当系统需要全局锁时,其消耗的资源会比较多. 三)锁的分离 比如读写分离锁 四)锁 ...

  8. 潭州课堂25班:Ph201805201 WEB 之 页面编写 第二课 (课堂笔记)

    index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  9. Cocos2d-x 3.x游戏开发之旅 笔记

    #include "HelloWorldScene.h"#include "SimpleAudioEngine.h"#include "MyHello ...

  10. 最小生成树 Prim Kruskal

    layout: post title: 最小生成树 Prim Kruskal date: 2017-04-29 tag: 数据结构和算法 --- 目录 TOC {:toc} 最小生成树Minimum ...