大家好,我是秦世成,我在云效负责制品仓库Packages的开发工作。作为一个有多年经验的资深CRUD后端工程师,使用过很多日常开发所需的工具软件,其中不少能堪称为「神器」,这些「神器」能极大的提升日常开发的效率;小到一个复制粘贴操作,大到开发运维,我们都可以使用合适的工具来进行效率提升,加速日常开发流程,让开发效率蹭蹭蹭。本文我将主要从Terminal 和 Desktop 2个大类、8个核心开发场景介绍一下我最常使用的效率工具,及如何通过这些工具来提升程序员「幸福感」的实践。
Terminal
终端管理
在我们日常开发运维的过程中,经常会和终端打交道,比如服务的部署,文件的浏览查看等;但是我们在和终端打交道的过程中,经常会遇到下面的问题:
-
需要在多个终端之间切换,来回操作麻烦,容易出错,效率低下
-
终端输入效率低下,无智能自动提示,输入高亮显示等
-
终端显示操作不流畅,乱码频发,苦不堪言
通过下面的终端神器,就可以打造一个高颜值,高效率的终端。
iTerm2负责颜值和基本的Shell呈现托管,Tmux负责Shell的多窗口管理,而Zsh负责对Shell功能的拓展提升。
iTerm2:高颜值终端工具
🔗 链接:https://iterm2.com/
👍 推荐指数:⭐⭐⭐⭐⭐
iTerm2 是一款功能强大的终端工具,也可以说是 Terminal 的替代品,也可以说是 iTerm 的后继产品。它适用于 macOS 10.12 或更高版本的 macOS。它支持分窗口操作、自动补齐、粘贴历史、回放功能、全屏等功能,是一款非常强大、非常值得推荐的终端工具。
Tmux:终端复用软件
🔗 链接:https://github.com/tmux/tmux
👍 推荐指数:⭐⭐⭐⭐⭐
Tmux 是一个用于在终端窗口中运行多个终端会话的工具,即终端复用软件(terminal multiplexer)。在 Tmux 中可以根据不同的工作任务创建不同的会话,每个会话又可以创建多个窗口来完成不同的工作,每个窗口又可以分割成很多小窗口。这些功能都是非常实用的。
Tmux可以无差别的优化我们使用终端的体验,特别是分屏+多窗口的功能可以极大的提高使用效率,就如下图所示,可以将自己关注的所有关键信息都展示在一个屏幕上,很极客有没有。不仅如此,tmux还提供了session管理功能,可以同时开启多个session,将相关的多个窗口集中在一个session进行管理,如果搭配上tmux-continuum 插件,还可以自动保存和恢复session,不用再担心重启以后session丢失的问题了。
Tmux的细节和技巧有很多,这里就不再一一介绍了,更多奇技淫巧可以看阮一峰老师的文章《Tmux使用教程》
Tmux社区也提供了许多的插件,满足不同的定制化需求,这里推荐几个比较常用的,更多的插件可以到官网探索:
tmux-plugin-manager: tmux插件管理器
tmux-powerline:tmux状态栏,颜控必备
tmux-continuum: 自动恢复和连续保存tmux env
tmux-yank:允许将突出显示的文本复制到系统剪贴板
Zsh & Oh-my-zsh:能抗能打强大Shell
🔗 zsh 链接:https://github.com/zsh-users/zsh
🔗 oh-my-zsh链接:https://github.com/ohmyzsh/ohmyzsh
👍 推荐指数:⭐⭐⭐⭐⭐
Zsh同bash一样,是一款功能强大的终端(shell)软件,提供的强大的自定制的能力,并且其99% 的 Bash 操作 和 Zsh 是相同的。
而oh-my-zsh则是zsh的配置管理工具,其提供了强大的功能,插件,主题等,能够最大效率的提升使用shell