antigen简介

简介: 在Linux下经常需要进行终端操作,一个好的shell解释器可以帮助我们极大提高工作效率。有些同学可能听说过zshell和oh-my-zsh,前者是一个shell程序,由于功能比较强大,所以叫做z shell,意为终极shell;而后者是一个模板化的zshell配置脚本,通过它我们可以快速配置一个好用的zsh。

在Linux下经常需要进行终端操作,一个好的shell解释器可以帮助我们极大提高工作效率。有些同学可能听说过zshell和oh-my-zsh,前者是一个shell程序,由于功能比较强大,所以叫做z shell,意为终极shell;而后者是一个模板化的zshell配置脚本,通过它我们可以快速配置一个好用的zsh。不过其实oh-my-zsh也并不是很好用,我了解这个项目也有好几年了,但是仍然只会使用一些默认配置。今天偶然发现了一个项目叫做antigen,它是zsh的包管理器,让我们以类似apt-get的方式来安装zsh功能,非常方便。

关于这个项目的效果图,可以参考官网的视频,基本上演示了antigen的使用方法。下面我们就来直接学习一下如何使用antigen。

安装

用下面的命令就可以将antigen脚本下载到本地。

curl -L git.io/antigen > antigen.zsh

如果要用系统包管理器来安装也可以,如果是Debian系统,可以用下面的命令。

apt-get install zsh-antigen

如果使用ArchLinux,用下面的命令。

yaourt -S antigen-git

其他系统请参考官方文档或者直接用antigen脚本。

用法

快速配置

假如你之前使用了oh-my-zsh,在这里可以先把原来的oh-my-zsh和zshrc文件删掉,然后创建一个新的.zshrc文件,内容如下。

source /path-to-antigen/antigen.zsh

# 加载oh-my-zsh库
antigen use oh-my-zsh

# 加载原版oh-my-zsh中的功能(robbyrussell's oh-my-zsh).
antigen bundle git
antigen bundle heroku
antigen bundle pip
antigen bundle lein
antigen bundle command-not-found

# 语法高亮功能
antigen bundle zsh-users/zsh-syntax-highlighting

# 代码提示功能
antigen bundle zsh-users/zsh-autosuggestions

# 自动补全功能
antigen bundle zsh-users/zsh-completions

# 加载主题
antigen theme robbyrussell

# 保存更改
antigen apply

配置完之后,打开一个新的zsh终端窗口,antigen就会开始安装所需功能,稍等片刻配置应该就生效了。我录了一个GIF动画,大家可以看看效果。可以看到,只需要很简单的配置,就可以获得自动补全、提示等功能,真的非常简单。顺便说一下,我用的这个录屏软件叫ScreenToGif,可以截取屏幕任意部分保存为GIF或者视频,真是一个非常实用的工具。

img_cea5dee063cbaa75fce90b3db912a4f3.gif
示例动画

详细命令

antigen bundle

该命令用于下载和安装插件,如果插件已安装,那么就加载该插件。下面的例子安装了oh-my-zsh官方仓库的ant插件。

antigen bundle https://github.com/robbyrussell/oh-my-zsh.git plugins/ant

当然如果仓库在Github上,还可以简化一下。

antigen bundle robbyrussell/oh-my-zsh plugins/ant

antigen cache-gen

这个命令用当前加载的插件生成缓存,可以加快之后的加载过程。

antigen cache-gen

antigen init

该命令可以生成一个antigen配置文件,可以提高之后的加载过程。如果你有了一些稳定的插件,就可以用这个命令将这些插件保存到antigen配置文件中,之后的加载过程会有很大的性能提高。

antigen init /path/to/.antigenrc

antigen update

该命令用于更新插件,这个命令不需要放到.zshrc文件中,只需要定期手动执行一边进行更新即可。如果需要更新全部插件,插件名留空即可。

antigen update [<bundle-name>]

antigen revert

该命令用于回退到antigen update之前的状态,这个命令没有参数。

antigen list

该命令用于列出所有安装的插件,可以使用三个参数指定如何显示。

antigen list [--simple|--short|--long]

antigen cleanup

该命令会清理掉所有当前未使用的插件。

antigen purge

该命令用于从文件系统上删除插件。删除插件的时候会有提示进行询问,使用--force参数可以直接删除。需要注意如果在.zshrc中保留某个插件的引用,下次打开终端的时候会重新下载安装插件。

antigen purge example/bundle [--force]

antigen reset

该命令用于清除生成的缓存,这个命令经常与antigen init配合使用,在引入了新的插件的情况下删除并重新生成缓存。

antigen use

该命令用于加载antigen支持的zsh框架,例如oh-my-zsh和prezto。

antigen theme

该命令用于切换提示符的主题,下面是一个例子。

antigen theme robbyrussell/oh-my-zsh themes/apple

antigen apply

该命令会应用所有之前所做的更改。

antigen selfupdate

该命令用于更新antigen本身。如果antigen位于git仓库中,该命令会执行git pull操作,否则就什么也不做。不过这时候我们仍然可以用前面介绍的方法直接下载脚本。

antigen help

该命令会列出帮助信息。

以上就是antigen的一些介绍了,希望对大家有所帮助。

相关文章
|
7月前
|
Unix 编译器 C语言
c++简介
c++简介
62 0
|
XML 安全 网络协议
netconf简介
netconf简要
|
API C++
exosip 和 pjsip 简介
oSIP  oSIP的开发开始于2000年7月,第一个版本在2001年5月发 布,到现在已经发展到3.x了。它采用ANSI C编写,而且结 构简单小巧,所以速度特别快,它并不提供高层的SIP会话 控制API,它主要提供一些解析SIP/SDP消息的API和事务处理 的状态机,oSIP的作者还开发了基于oSIP的UA lib:exosip和 proxy server lib:partysip.
3996 0
|
XML 分布式计算 算法
Rosetta | Rosetta简介
Rosetta | Rosetta简介
935 0
Rosetta | Rosetta简介
|
索引 容器
NSIndexSet 简介
NSIndexSet (以及它的可修改子类, NSMutableIndexSet) 是一个排好序的,无重复元素的整数集合。它看上去有点像 支持离散整数的 NSRange .它能用于快速查找特定范围的值的索引,也能用于快速计算交集, 同时,Foundation collection class 提供了很多好用的方法,方便你使用 NSIndexSet.
391 0
NSIndexSet 简介
|
数据安全/隐私保护
叶帆密码箱简介
叶帆密码箱一个纯绿色软件,小巧实用,可以保存各种网络账号,银号帐户,Email信息 等等,此外还可以直接打开链接网址,直接通过热键发送登录信息,方便简洁
742 0
|
数据安全/隐私保护 网络架构 网络协议
|
关系型数据库 数据安全/隐私保护 监控
|
Shell 网络协议 安全