
前言
本文算是 工欲善其事必先利其器系列之一,主要介绍工作过程中能提高工作效率的工具
因为我更换了笔记本电脑,需要重新配置mac系统,对应命令行工具shell当然首选 oh-my-zsh 简称 zsh 。那么 zsh 是什么呢?oh-my-zsh 是由 robbyrussell 等开发的开源项目

oh-my-zsh项目目前有130k+star,贡献者超过1800,并且提供了300多个可选插件(rails,git,OSX,hub,capistrano,brew,ant,php,python等),以及超过140个主题供,具有如下特性:
首先兼容bash 自动cd: 只需输入目录的名称即可 命令选项补齐,比如输入git,然后按Tab,即可显示出git都有哪些命令 支持历史命令执行 补全功能, 目录一次性补全:比如输入Doc/doc按Tab键会自动变成Documents/document/ 140多种主题支持,习惯命令行操作git的朋友,agnoster 将是你们的最爱。
安装oh-my-zsh
mac 系统安装 oh-my-zsh 之前需要安装 zsh 并切换到 zsh
brew install zsh
chsh -s bin/zsh
echo $SHELL
下载并安装 oh-my-zsh
# curlsh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"# wegt sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
配置oh-my-zsh
我们可以通过编辑文件 ~/.zshrc 来增加环境变量,常用命令的别名,以及配置 oh-my-zsh 的主题和插件。
主题和插件
oh-my-zsh 目前提供大约140+ 中主题,默认是 ZSH_THEME="robbyrussell", 主题是由 ZSH_THEME 参数变量控制的,如果设置为 random, 则每次启动的时候就会重新加载 一个新的主题。
作为程序员或者运维人员,强烈安利 agnoster ,如果遇到乱码可以参考 文章1 结合git 会提示代码的分支.

以及分支状态情况比如已经修改,是否提交等。比如我新增一个文件1 ,分支的颜色从蓝色转变黄色。

谈到插件,我觉得其实这段才是本文的重点 。oh-my-zsh 的plugin 在 ~/.oh-my-zsh/plugins 文件下,使用哪种插件需要将插件下载到该目录即可。并且编辑 ~/.zshrc 文件的plugins变量,让后 source ~/.zshrc 让插件生效。
plugins=(gitzsh-autosuggestionszsh-syntax-highlighting)
回归我们使用shell 环境的常用操作,比如 git操作,查找文件,编辑文件操作,我们需要在命令行操作上尽可能的提升操作效率。oh-my-zsh 提供了很多插件。常用的有如下几种:
git 插件 默认启用的插件,提供了各种 git 命令的缩写。
zsh-autosuggestions 命令自动补全插件 当你输入命令的几个字母,它会自动根据历史输入进行自动补全,然后按→ .
git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/plugins/zsh-autosuggestionsvim ~/.zshrc# 加入插件列表plugins=( git zsh-autosuggestions)source ~/.zshrc

zsh-syntax-highlighting 输入正确的常用命令会以绿色高亮显示,输入错误则会显示其他的颜色。使用以下命令安装:
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/plugins/zsh-syntax-highlightingvim ~/.zshrc# 加入插件列表plugins=( git zsh-autosuggestions zsh-syntax-highlighting)source ~/.zshrc

单独输入字母 c 时, 会变红色,提示无该语法。
autojump 插件
当我们需要在不同文件夹之间来回切换时,这款插件极大地简化了路径跳转的操作。 具体安装请参考 https://github.com/wting/autojump#installation

总结
其他的有趣又能提高工作效率的插件读者朋友们可以自己去探索。
参考文章
1 乱码问题可以参考 https://zhuanlan.zhihu.com/p/26373052




