那些我但愿在一开始使用 Zsh(oh-my-zsh) 时就知道的

其实我已经用了 fish shell 快半年了,由于被一些兼容性问题搞烦了,因此最近又用回了 zsh + oh-my-zsh。git

zsh + oh-my-zsh 配合是真心好用,并且 oh-my-zsh 还偷偷干了不少人不知道的事,好比 rake task也能补全,第一次见到时真是有点惊讶。好吧,下面说一说我但愿一开始就知道的。github

自带的插件

其实我用了 oh-my-zsh 快三个月后才知道原来他自带了不少插件没有开启。。。shell

如何开启?找到 ~/.zshrc 有一行 plugins=(git),想加什么插件就把名字放里面就是了,好比plugins=(rails git ruby) 就开启了railsgitruby 三个插件。浏览器

更多插件请进入 ~/.oh-my-zsh/plugins文件夹探索,也能够看看 wiki 里的 Plugins Overview,每一个人的需求不同,里面有一些比较神奇的插件,好比敲两下esc 它会给你自动加上 sudo 的 sudo 插件,让复制显示进度条的cp插件,解压用的 extract 插件(有没有以为在命令行下敲一大堆选项才能解压有点奇怪?),vi 粉的vi-mode 等等...ruby

z

嗯,这也是个自带的可是没有开启的插件。为何单独把它拿出来说呢?由于太好用了,没有它我根本就不想用命令行。简直就是能够无脑跳跃,好比你常常进入~/Documents目录,按下 z doc 通常它就能够跳进去了(固然首先你得用一段时间让它积累一下数据才能用)。相似的插件还有好几个好比autojump,fasd,这类东西好像叫 FS Jumping,这里有个完整列表:https://github.com/robbyrussell/oh-my-zsh/wiki/Plugins-Overview#fs-jumping插件

d

在 fish shell 里你能够按alt 加左右箭头随意穿梭于历史记录中,就像 GUI 文件浏览器的
前进,后退。zsh 没有这么好用,可是按一下 d 再回车你会看到最近的历史记录,而后你就能够经过数字好比 1, 2 之类的返回到某个历史记录中了。也是很是好用的。命令行

zsh-autosuggestions

官方的介绍是Fish-like fast/unobtrusive autosuggestions for zsh,没错,这是模仿fish shell 的一个插件,做用基本上就是根据历史记录即时提示。没有这个东西让我感受本身很盲目。没有用过 fish 的同窗可能以为它有点奇怪,可是一旦适应它之后就会发现它会大幅度的提升效率(按 ctrl+E 是正确姿式)。注意:它不是 oh-my-zsh 自带的,你们能够去 github 看它的安装说明。code

自带的 Git Aliases

git 插件是默认开启的,你们可能注意到它可以自动补全以及显示所在 branch。对于一个 git 重度用户,一些 aliases 是不可缺乏的。相信我,一旦习惯了 aliases,就会以为原来敲那么一大堆命令真是不能忍了(即便它可以自动补全)。下面列一些我最经常使用的(固然也是 oh-my-zsh 自带的,更多请看 wiki):ip

Alias Command
g git
gst git status
ga git add
gp git push
gc git commit -v
gc! git commit -v --amend

其余

  • zsh_stats 能够看到你的使用频率前 20 的命令是什么!get

  • take 看看 which take 就知道它有什么用了

  • clipcopyclippaste,剪贴板和命令行的交互

官方的 wiki(重要!)

官方 wiki 上面给出了不少有用的功能介绍,好比一些 aliases,像..., ...., take 等等。

若是完整的看完了 wiki 的话我前面的介绍都是废话了。

结语

  • 推荐一个不相关的:trash-cli,就是命令行版的回收站,它的神奇之处在于不是简单的把文件移动到回收站,并且能够在回收站里恢复。因此它说本身是Command line interface to the freedesktop.org trashcan,个人 zshrc 里有一行:alias rt="trash"

  • 其余的一些很是有用的 tips 想到再补充。

  • 补上个人配置文件们:https://github.com/dd1994/dotfiles

相关文章
相关标签/搜索