图:Urxvt中的Tmux,打开了4个窗格和两个窗口
我尝试了很多终端模拟器,而Urxvt是我的最佳选择。
这是一款非常轻巧且快速的终端,尤其是如果你运行Urxvtd、Urxvt守护进程的话。它可以非常容易地生成任意终端。
话虽如此,由于有了Tmux,现在我只需同时打开2-3个终端。这是一款功能强大的终端复用器,你可以:
创建会话,包括窗口和窗格。
根据需要在终端中打开尽可能多的窗口。每个窗口都会占据整个终端窗口,而且还可以分成窗格。即使你需要3个窗口,每个窗口4个窗格(总共12个不同的Shell),tmux也可以轻松应对。
分离和附着会话。想象一下你错误地关闭了某个终端,这时你可以打开一个新终端,然后附着会话就可以恢复整个tmux会话。
同步窗格。你需要在三台不同的远程服务器上运行完全相同的命令?那么只需打开三个窗格,用一个命令同步它们,你在第一个窗格中键入的所有内容都会被复制到其他窗格中。
还有很多我不了解的用法。
如上所示,一切都可以用键盘来管理。当然你也可以使用鼠标,在学习期间使用鼠标也很方便。
你甚至可以利用tmuxp,进一步自动化tmux会话。实际上,你可以编写一个配置文件来打开所需的窗口和窗格,并在其中自动启动应用程序。
假设为了启动一个新项目,你需要:
在一个窗格中运行dockercompose。
在另一个窗格中,在Docker容器中运行npm run dev。
在另一个窗口中,打开到生产服务器的ssh连接。
在tmuxp的帮助下,你只需要一个命令行和一个简单的配置文件就可以自动化上述所有操作。
适合自己的IDE
我选用的IDE是Neovim,它是Vim的一个强大分支,可以与Shell配合使用。Neovim和Vim非常相似,因此我会使用“Vim”来指代二者。
图:本文就是用Neovim写的
你害怕了?别跑。让我解释一下,为什么你应该认真考虑学习Vim的知识。
我写了很多关于Vim的文章,这里我简单总结一下Vim的优点:
使用Vim编程很有趣。
Vim可以让你充分利用键盘。
原版的Vim拥有很多功能,你总是能够学到新技巧。
Vim有一个很好的社区,其中维护着许多插件。不论你使用何种编程语言,不论是JavaScript、Golang、PHP还是Clojure,这些插件都能够满足你99%的需求。
你不必再受任何语言的限制。你想通过同一款编辑器使用Rust、Go和C编程,同时还可以使用自动补齐、高亮显示语法以及其他功能?Vim就是完美的选择。
一切都是高度可配置的。忘记你的其他喜好吧,使用Vim,你可以微调任何所需的内容。
不会有通知时不时地冒出来,打断你的工作(说的就是你,Intellij IDE)。
你可以针对自己的工作流构建自己的IDE,同时不必在IDE中塞满你永远不会使用的东西。
非常快。
免费。