iTerm+ohmyzsh+powerlevel10k瞬间让你终端炫酷起来

2,429 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第3天,点击查看活动详情

前沿

最近刚好看到ohmyzsh里有些不错的主题,之前的powerlevel9k也升级到10了,今天刚好有空就来美化下,作为程序员,完善开发利器,才能更好的玩耍哈哈~~~

拿 Mac 来说,系统默认的终端确实没什么好看的皮肤和字体,更没有图标什么的,期待下面能不能对它做一些改变呢?

安装

iTerm2

iTerm2 安装其实很简单,只需去iTerm2 官方下载终端即可,有Stable 和 Beta 版,建议大家安装 ### Stable 版本。

ohmyzsh

image.png

Oh My Zsh is an open source, community-driven framework for managing your zsh configuration.

官方这介绍很有意思,这才说明它才是今天的主角。

ohmyzsh官方提供 curl、wget、fetch 或其他类似工具通过命令行安装它。具体方法如下:

方法命令
curlsh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
wgetsh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
fetchsh -c "$(fetch -o - https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

修改.zshrc

这一步很关键,如果你初次安装,那么你需要将 ohmyzsh配置复制到.zshrc中,这提供个命令行可以完成操作:

cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
 

只需要修改ZSH_THEME值就可以调整对应的配色方案,我原来用的 agnoster,这里就直接改成了powerlevel10k,后面会讲powerlevel10k安装。

image.png 可以通过theme插件命令来查看当前支持哪些主题,方便切换 ,通过命令lstheme可查看。

image.png 如果是要修改当前终端窗口主题,可以通 theme 主题名来修改。这样修改方便很多,无需去修改 .zshrc 文件了。也可以上github.com/ohmyzsh/ohm… 查看。

如果你想每次打开 iTerm2 终端都不一样,可以把ZSH_THEME 设置成 random

如果你不想默认人配色,你也可以自己去谁定自己喜欢的配色,操作如下图:

image.png

当然,你可以选择第三方提供的配色方案,如👉iTerm2-Color-Schemes  这里有非常多的配色方案题,可以 clone 到本地,然后通过 iTerm2导入即可,如图:

image.png

同时,你也可以设置不同的背景图,如果下图:

image.png

ohmyzsh 常用plugin

ohmyzsh自带非常多的插件,自带插件在.ohmyzsh/plugins下,自定义插件安装的在.oh-my-zsh/custom/plugins/目录下。

  • git ——— 提供git命令的缩写😋(默认已开启)

  • autojump ——— 高效自动跳转目录命令,会记忆你曾经进入过的目录,用模糊匹配快速进入你想要的目录,这款需要安装,其实自带的z插件也有其功能。

使用 autojump 的缩写 j

j  曾经进过的目录名
j --purge #无效路径 
jo  music # 打开 muisc 文件夹
j Doc test # 多命令一起使用, 比如这个就是匹配已Doc 和 test为前缀的目录

2.gif

  • zsh-syntax-highlighting————高亮显示命令

    平常用的lscd 等命令输入正确会绿色高亮显示,输入错误会显示其他的颜色。

  • zsh-autosuggestions————根据历史记录和完成建议您键入的命令;

4.gif

  • history —————查看历史输入所有命令 用法:在终端输入h即可
  • macos ————仅支持Mac OSX系统,支持一键进入当前finder路径、在命令行返回最前面的finder窗口的路径等,具体命令看macos详情吧。
  • themes ————可以手动切换主题,无需修改.zshrc,具体使用上面已经讲过了。
  • urltools————encode / decode 编码/解码
# 使用方法
urlencode 'https://github.com/ohmyzsh/ohmyzsh/search?q=urltools&type=Code'
# returns https%3A%2F%2Fgithub.com%2Fohmyzsh%2Fohmyzsh%2Fsearch%3Fq%3Durltools%26type%3DCode

urldecode 'https%3A%2F%2Fgithub.com%2Fohmyzsh%2Fohmyzsh%2Fsearch%3Fq%3Durltools%26type%3DCode'
# returns https://github.com/ohmyzsh/ohmyzsh/search?q=urltools&type=Code

  • web-search————该插件它能让我们在命令行中使用搜索引擎进行搜索

这里我写了些我常用的,其实还有很多,根据自己需要来设置,具体设置操作方法:修改.zshrc文件中的plugins,把需要的插件名加入保存后source配置文件即可,比如:

 plugins=(
     git
     autojump
 }

Powerlevel10k 神器

Powerlevel10k is a theme for Zsh. It emphasizes speedflexibility and out-of-the-box experience. (zsh 主题,速度、灵活性和开箱即用)

由于这里用 onmyzsh,安装成ohmyzsh自定义主题即可:

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

刚上面我们已经提前把 ZSH_THEME改成了 ZSH_THEME="powerlevel10k/powerlevel10k",所有这里不用再调整。如是第一次设置,打开iTerm2会进入p10k configure初始化配置阶段: 都是选择性的问答。

大致都是问:符号、风格、编码、时间、换行、图标、光标类的问题?根据需要选择即可。 初始化配置完成,会自动在~/目录下生成.p10k.zsh文件,如图:

image.png

想要下面这样的图片效果,还需要强大的字体和图标的,如果匹不到图标,就会显示成?

image.png

Nerd Fonts

官方介绍:Nerd Fonts is a project that patches developer targeted fonts with a high number of glyphs (icons). Specifically to add a high number of extra glyphs from popular 'iconic fonts' such as Font AwesomeDeviconsOcticons, and others. image.png

官方文档中提供了非常多的安装方法,我这里不需要全部安装,就选择下载需要的字体来安装即可。如果全部安装这文件很大,也没必要。

这里我们直接到releasesHack字体包:

image.png 安装之后,还需要把终端改成这个字体才能生效。

image.png 查看图标是否生效,可以通过 get_icon_names 查看: image.png 正常显示图标了,表示成功。否则可能显示一些奇怪的符号。

colorls 不得不说的Ruby脚本

可以美化查看目录下文件列表 安装:

 gem install colorls

安装可能报错,如果你升级Mac系统,最好也把rvm,ruby 都升级下,我这ruby升级到最新3.1.2版本。 image.png 如出现上图情况,就加上 sudo

安装成功后,需要再 .zshrc或者.bash_profile中设置别名 ls

alias ls='colorls -lA --sd'

image.png 如上图,看起来更加直观,也可以直接用 colorls 后面跟其他的 flag,不同的展现方式而已。

iterm2快捷键

  • command+t 新开tab窗口
  • command+n 开新窗口
  • command+w 关闭窗口

vscode 配置

VS Code里也实现同样效果,需要再配置一下字体:

{
  "terminal.integrated.fontFamily": "Hack Nerd Font"
}

System Terminal

顺便把系统终端也美化了,是不是默认的好看多了..... image.png

路在脚下,远处未知的美好需要你去探索......

最后

image.png

image.png 效果是不是很骚气,写代码都有动力了,背景你可以随意更换哈~~~~

参考文献