Zsh 安装和配置

一直在使用code::stat来记录写东西的统计。vscodeintellij idea好处理,直接安装对应的插件就可以了。终端里面就比较麻烦,但是看到有zsh插件,感觉还是可以搞定的。这里就记录下安装zsh的记录

安装 zgen

原本就在用zsh,但是oh my Zsh是手动配置的,安装比较麻烦,而且手动安装code::stat比较麻烦。看网上的对比,在zplugzgen中选了zgen其实后来才发现大部分shell管理都是支持从网络上下载插件的

以下的记录都是以zgen为准,如果使用了其他的shell管理工具,请参考工具的主页。

下面的内容大部分是参考了zgen主页

Arch Linux上安装比较简单,直接从AUR里安装就可以了。我这里用的是yay

1
yay -S zgen

zgen需要依赖zsh,工具会自动安装。

配置 zsh

接下来进行zsh配置,使zgen生效。

  1. 启动zsh

第一次启动会有提示是否进行初始化流程,直接选择生成一个空的配置文件。

  1. 编辑.zshrc

默认生成的配置文件是在~/.zshrc。里面应该是空的只有一条注释。添加下面的内容,使zgen生效。

1
2
# load zgen
source "/usr/share/zsh/share/zgen.zsh"

上面的路径是安装路径/

  1. 重启zsh

重启之后,输入zgen,如果没有出错就说明已经生效了。

配置 zgen

输入下面命令加载oh my Zsh基础,并初始化zgen

1
2
zgen oh-my-zsh
zgen save

根据Code::Stats plugin for Zsh教程,这个插件读取环境变量中的CODESTATS_API_KEY来工作,在.zshrc中加入下面的语句来设置环境。

1
2
# code::stat
export CODESTATS_API_KEY="api key"

直接输入下面的命令就可以安装code::stat的插件了。

1
zgen load https://gitlab.com/code-stats/code-stats-zsh.git

这样就已经可以生效了,但是更好的办法是把上面的命令加到配置文件中。

配置文件

这里备份下.zshrc的内容。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# code::stat
export CODESTATS_API_KEY="api key"

# load zgen
source "/usr/share/zsh/share/zgen.zsh"

# if the init scipt doesn't exist
if ! zgen saved; then
echo "Creating a zgen save"

zgen oh-my-zsh

# plugins
zgen oh-my-zsh plugins/git
zgen oh-my-zsh plugins/sudo
zgen oh-my-zsh plugins/command-not-found
zgen oh-my-zsh plugins/z
zgen oh-my-zsh plugins/archlinux
zgen load zsh-users/zsh-syntax-highlighting
zgen load https://gitlab.com/code-stats/code-stats-zsh.git
zgen load romkatv/powerlevel10k powerlevel10k

# completions
zgen load zsh-users/zsh-completions src

# save all to init script
zgen save
fi

# POWERLEVEL9K theme setting
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(dir vcs)
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status root_indicator background_jobs history time battery)