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的一些介绍了,希望对大家有所帮助。

相关文章
|
Java Linux 开发工具
linux如何编译安装源码包软件
源码包软件是包含源代码的软件包,常见于Linux和BSD系统,如fcitx和Lumaqq。开源软件需满足源代码可见且有宽松许可,如GPL。安装源码包通常涉及解压、编译和安装步骤,使用`tar`命令解包,通过`./configure`, `make`, `make install`进行编译安装。软件源码允许定制和二次开发,但须遵循许可协议。安装前确保安装了必要的开发工具和库。对于perl和python程序,直接使用perl或python命令安装。推荐使用系统软件包管理工具如RPM、yum或apt进行管理,以简化流程。
424 0
|
前端开发 JavaScript C++
揭秘Web前端CSS引入秘籍:Link vs @import,你的选择决定页面加载速度,你选对了吗?
【8月更文挑战第26天】本文探讨了Web前端开发中CSS的引用方法,主要包括行内样式、内部样式表及外部样式表三种形式。重点对比了外部样式表中的`&lt;link&gt;`和`@import`两种引入方式。`&lt;link&gt;`作为HTML元素,在页面加载初期就开始加载样式资源,支持并行加载,对提高页面加载速度有益。而`@import`作为一种CSS规则,仅能在CSS文件中使用,其引入的样式表会在页面完成加载后才开始加载,可能导致渲染延迟且不支持并行加载。因此,在多数情况下,推荐采用`&lt;link&gt;`方式引入外部样式表,以确保更佳的性能表现和浏览器兼容性。
338 2
|
供应链 网络协议 数据安全/隐私保护
|
存储
香港服务器需要备案吗
要确定是否需要备案,建议您咨询香港相关部门或当地的托管服务提供商,因为备案规定可能会根据时间和政策的变化而不同。确保您的网站或服务器遵守当地法规和规定是非常重要的。
507 2
|
存储 移动开发 开发者
|
设计模式 算法 数据库
现代软件开发中的设计模式与效率优化
在当今快节奏的软件开发环境中,设计模式不仅仅是代码组织的工具,更是提升开发效率和代码质量的重要利器。本文探讨了几种常用的设计模式在实际项目中的应用与优化策略,旨在帮助开发者在面对复杂系统和变化需求时,能够更加高效地进行软件开发。
225 1
聊天框(番外篇)—如何实现@功能的整体删除
上一篇文章中,我们已经初步实现了聊天输入框,但其@功能是不完善的,例如无法整体删除、无法获取除用户名以外的数据(假设用户名不是唯一的)。有问题就要想办法解决,在网上百度了一圈后,倒是有一些收获。本文就着重解决@的整体删除以及获取额外数据。
1456 0
聊天框(番外篇)—如何实现@功能的整体删除
|
移动开发 测试技术 Python
02 埋点测试实战之神策数据
02 埋点测试实战之神策数据
|
人工智能 自然语言处理 算法
准确写汉字的文生图AnyText,魔搭社区最佳实践来啦!
AnyText模型所涉及的文字生成技术为电商海报、Logo设计、创意涂鸦、表情包等新型AIGC应用提供了可能性。
|
新零售 人工智能 供应链
成立了汽车与智能出行事业部的阿里云,如何建立云上行业生态?
今年4月,阿里云则专门成立了阿里云汽车与智能出行事业部。
1037 0