Loading...
墨滴

北在南方

2021/09/07  阅读:66  主题:默认主题

oh-my-zsh

oh-my-zsh

前言

本文算是 工欲善其事必先利其器系列之一,主要介绍工作过程中能提高工作效率的工具

因为我更换了笔记本电脑,需要重新配置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个主题供,具有如下特性:

  1. 首先兼容bash
  2. 自动cd: 只需输入目录的名称即可
  3. 命令选项补齐,比如输入git,然后按Tab,即可显示出git都有哪些命令
  4. 支持历史命令执行 补全功能,
  5. 目录一次性补全:比如输入Doc/doc按Tab键会自动变成Documents/document/
  6. 140多种主题支持,习惯命令行操作git的朋友,agnoster 将是你们的最爱。

安装oh-my-zsh

mac 系统安装 oh-my-zsh 之前需要安装 zsh 并切换到 zsh

brew install zsh

chsh -s /bin/zsh

echo $SHELL

下载并安装 oh-my-zsh

# curl
sh -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变量。

plugins=(
git
zsh-autosuggestions
zsh-syntax-highlighting
)

回归我们使用shell 环境的常用操作,比如 git操作,查找文件,编辑文件操作,我们需要在命令行操作上尽可能的提升操作效率。oh-my-zsh 提供了很多插件。常用的有如下几种:

  1. git 插件 默认启用的插件,提供了各种 git 命令的缩写。

  2. zsh-autosuggestions 命令自动补全插件 当你输入命令的几个字母,它会自动根据历史输入进行自动补全,然后按→ .

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

当我们需要在不同的文件夹之间进行切换时,这款插件极大地简化了路径跳转的操作。

  1. autojump 插件

    当我们需要在不同文件夹之间来回切换时,这款插件极大地简化了路径跳转的操作。

    具体安装请参考 https://github.com/wting/autojump#installation

总结

其他的有趣又能提高工作效率的插件读者朋友们可以自己去探索。

参考文章

1 乱码问题可以参考 https://zhuanlan.zhihu.com/p/26373052

北在南方

2021/09/07  阅读:66  主题:默认主题

作者介绍

北在南方