我在tmux中最不可少的配置: 用鼠标切换窗口/调节分屏大小
前两天在给另外一个团队帮忙时,看他们在Rails日志、代码文件、git文件系统里面来回穿梭,觉得他们太累了,于是就介绍了 tmux
给他们用。但只讲了一点基本的开窗口、分屏,没给讲太多技巧,因为一下子讲太多也消化不了,还不如让他们自己慢慢学(记得 man tmux
和 C-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被蔷了,各位自己想办法吧
- http://www.slideshare.net/lgfang/tmux (搜了一下,在蔷内找到一个老点的版本: tmux - A Great Terminal Multiplexer)
- http://www.slideshare.net/chenkaie/tmux-rocks
我在tmux中最不可少的配置: 用鼠标切换窗口/调节分屏大小的更多相关文章
- tmux 终端分屏利器使用
介绍 Tmux 是一个工具,用于在一个终端窗口中运行多个终端会话. 不仅如此,你还可以通过 Tmux 使终端会话运行于后台或是按需接入.断开会话,这个功能非常实用. 很好的工具,记录一下,以后要常用. ...
- 在tmux中的vi 上下左右键变为了ABCD等字符
在本机上用vim编辑时,上下左右键没有问题,但是在tmux中确出现ABCD等字符. 原因是在tmux这个终端,默认做了字符转换,网上搜了很多答案,解决问题的设置是: set term=xterm
- Mysql中主从复制的原理、配置过程以及实际案例
Mysql中主从复制的原理.配置过程以及实际案例1.什么是主从复制?原理:主从分离,什么意思呢?我们不妨画个图看看.如图1所示: 2.准备工作:预备两台服务器,我这里使用虚拟机安装了两个Centos6 ...
- Maven中pom.xml文件的配置
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- Ubuntu下使用tmux实现分屏,以及tmux快捷键
最近用到了终端的复用,使用了tmux,写一下自己的使用和一些快捷键. tmux是指通过一个终端登录远程主机并运行后,在其中可以开启多个控制台的终端复用软件. 来个效果图: 截图我使用的命令是 gno ...
- 【Linux】Tmux分屏
1.Tmux Arch维基: https://wiki.archlinux.org/index.php/Tmux_(简体中文) 官方WIKI: https://github.com/tmux/tmux ...
- 关闭Windows 2003/2008中IE增强的安全配置的方法
在使用Windows Server 2003/2008操作系统时,打开IE浏览网页时,发现浏览器总提示 "是否需要将当前访问的网站添加到自己信任的站点中去",要是不信 ...
- Spring Boot中只能有一个WebMvcConfigurationSupport配置类
首先将结论写文章的最前面,一个项目中只能有一个继承WebMvcConfigurationSupport的@Configuration类(使用@EnableMvc效果相同),如果存在多个这样的类,只有一 ...
- 痞子衡嵌入式:关于i.MXRT中FlexSPI外设lookupTable里配置Normal read的一个小误区
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT中FlexSPI外设lookupTable里配置Normal read的一个小误区. 关于串行四线NOR Flash,当其作 ...
随机推荐
- [VB]常用函数
(一)类型转换类函数 . CType(X) [格式]: P=CBool(X) ' 将X转换为"布尔"(Boolean)类型 P=CByte(X) ' 将X转换为"字节&q ...
- NMAP为什么扫描不到端口
NMAP为什么扫描不到端口 NMAP是知名的网络端口扫描工具.但很多新人发现,使用NMAP经常扫描不出来任何端口,尤其是手机之类.这实际存在一个理解上的误区.扫描端口是为了发现主机/设备上存在的对 ...
- 新巴巴运动网上商城 项目 快速搭建 教程 The new babar sports online mall project quickly builds a tutorial
新巴巴运动网上商城 项目 快速搭建 教程 The new babar sports online mall project quickly builds a tutorial 作者:韩梦飞沙 Auth ...
- BZOJ 4552 [Tjoi2016&Heoi2016]排序 线段树的分裂和合并
https://www.lydsy.com/JudgeOnline/problem.php?id=4552 https://blog.csdn.net/zawedx/article/details/5 ...
- 洛谷.3807.[模板]卢卡斯定理(Lucas)
题目链接 Lucas定理 日常水题...sublime和C++字体死活不同步怎么办... //想错int范围了...不要被longlong坑 //这个范围现算阶乘比预处理快得多 #include &l ...
- 关于数据库alter的一系列操作总结
表操作 对于表的操作——创建(create),删除(drop)来说,基本上大家都很清楚,而作为很少被使用到的修改(alter)命令往往存在一些问题,现在做一下总结: 添加列:alter table 表 ...
- 在Windows环境下使用docker
Widows下的Docker工具有两个:Docker Toolbox,和Docker Desktop,其中后者是在win10下才能使用的,提供了更强大的功能.由于我个人的电脑是win7环境,用的就是d ...
- Redis 中 5 种数据结构的使用场景介绍
这篇文章主要介绍了Redis中5种数据结构的使用场景介绍,本文对Redis中的5种数据类型String.Hash.List.Set.Sorted Set做了讲解,需要的朋友可以参考下 一.redis ...
- [Beego模型] 五、构造查询
[Beego模型] 一.ORM 使用方法 [Beego模型] 二.CRUD 操作 [Beego模型] 三.高级查询 [Beego模型] 四.使用SQL语句进行查询 [Beego模型] 五.构造查询 [ ...
- grep/pgrep/egrep/fgrep
Differences between grep, pgrep, egrep, and fgrep (Linux): grep grep is an acronym that stands for & ...