description: Mac上的漂亮终端oh-my-zsh + iterm2 + homebrew 包管理器
date: '2022-05-19 00:00:00'
permalink:/
categories: 碎片杂文
updated: '2024-01-11T01:11:00.000Z'
tags:
- 工具
title: Iterm2+oh-my-zsh+Homebrew
前言
Mac上的漂亮终端oh-my-zsh + iterm2 + homebrew 包管理器
安装Homebrew
安装homebrew,之后就可以通过它来安装其他的软件或者插件。访问homebrew网站 进行安装。安装brew之后就可以通过brew来安装,卸载软件包,但是官方的uninstall不会卸载软件的依赖包,只会卸载本身的包,为了干净的删除软件安装rmtree
国内的用户安装homebrew会出现各种网络问题,因为防火墙的原因导致github访问经常出现问题,所以这里有一个大佬写的国内一键安装脚本
也可以执行下面的命令一键安装
/bin/zsh -c "$(curl -fsSL <https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh>)"
brew tap beeftornado/rmtree
之后通过
brew rmtree <软件名>
brew cleanup
安装oh-my-zsh+iterm2
去iterm2官网下载安装软件,之后安装zsh
# 安装 zsh
brew install zsh
# 设置zsh为你的默认shell
chsh -s /usr/local/bin/zsh
在GitHub的osx-terminal-theme项目主页里寻找你喜欢的主题
在schemes目录里找到对应的主题文件并双击安装到Terminal, 设置为默认
如果您觉得我的主题颜色不错,可以试试我的主题配置
安装之后就可以安装oh-my-zsh(Oh My Zsh 是一个令人愉快的、开源的、社区驱动的管理zsh配置的框架。它为我们带来了数千个有用的功能、助手、插件、主题,和其他一些令你惊叹的功能)
安装oh-my-zsh:
sh -c "$(curl -fsSL <https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh>)"
安装oh-my-zsh主题
内置主题列表
oh-my-zsh提供一批内置主题,可以直接设置使用
- 在内置主题列表寻找你你喜欢的主题: https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
- 在~/.zshrc配置文件里设置ZSH_THEME为你的主题名称
- 激活设置source ~/.zshrc
第三方主题列表
许多第三方也开发了供oh-my-zsh使用的主题,可以去第三方主题列表查看和安装:
https://github.com/robbyrussell/oh-my-zsh/wiki/External-themes
安装oh-my-zsh必备插件
oh-my-zsh有非常丰富的插件可供使用,但是插件如果不进行管理的话,多起来会杂乱无章。所以先安装插件管理器。
Zinit
是一个灵活快速的zsh 插件管理器 ,它可以自动安装 Github 或者其他网站上的 zsh 插件。
- 由于Zinit作者删除库,所以推荐手动安装,已经换到另一个接手的作者库上去了。
官方推荐的安装方式,一键完成。不过让我很没有安全感,我倾向于手动安装。
sh -c "$(curl -fsSL <https://raw.githubusercontent.com/zdharma/zinit/master/doc/install.sh>)"
这里推荐手动安装
首先 clone repo 到随便哪个位置,我这里是``~/.zinit/bin`
git clone <https://github.com/zdharma-continuum/zinit.git> ~/.zinit/bin
然后在你的 ~/.zshrc 顶端添加如下语句,没有的话手动新建一个.zshrc
文件
source ~/.zinit/bin/zinit.zsh
重新加载~/.zshrc
source ~/.zshrc
ZInit
常见功能使用方法
基本使用方法如下,你只要找到zsh插件作者的github网站,然后截取项目的用户名/项目名
,就像下面的一样。
# 加载插件
$ zinit load {plg-spec}
# 加载插件,不打印加载信息
$ zinit light [-b] {plg-spec}
# 加载单文件,-f 表示不使用缓存,即强制重新下载
$ zinit snippet [-f] {url}
# 卸载插件,-q 表示 quiet
$ zinit unload [-q] {plg-spec}
# 显示插件加载时间,以插件加载顺序排序。-s 表示以秒进行显示(默认毫秒),-m 表示显示插件加载时刻
$ zinit times [-s] [-m]
# 显示 Zinit 状态
$ zinit zstatus
# 显示插件加载状态,--all 表示显示所有插件
$ zinit report {plg-spec} | --all
# 显示已加载的插件(使用关键字进行过滤)
$ zinit loaded [keyword],list [keyword]
# 显示每个插件的设置的按键绑定
$ zinit bindkeys
# 编译插件
$ zinit compile {plg-spec} | --all
# 移除已编译的插件
$ zinit uncompile {plg-spec} | --all
# 显示已编译的插件
$ zinit compiled
# 更新 Zinit
$ zinit self-update
# 更新插件/脚本,--all 表示更新所有插件/脚本,-q 表示静默更新,-r | --reset 更新前执行 git reset --hard / svn revert
$ zinit update [-q] [-r] {plg-spec} | URL | --all
# 为下一条 zinit 命令添加 ice 描述符
$ zinit ice <ice specification>
# 磁盘删除插件/脚本,--all 表示清除,--clean 表示删除未加载的插件/脚本
$ zinit delete {plg-spec} | URL | --clean | --all
# 进入插件目录
$ zinit cd {plg-spec}
- load:表示使能插件追踪功能。使用该关键字后,Zinit 会记录相关插件启动的信息,并提供如下功能:
- zinit report {plugin-spec}:查看插件信息
- zinit unload {plugin-spec}:卸载插件
- light:表示关闭插件追踪功能。当使用该关键字后,Zinit 不会对插件加载信息进行追踪,也就不具备查看和卸载插件的功能,但正如其名称一致,它提供了一个轻量级插件加载功能,加载插件速度会非常快。
注:在 Turbo 模式下,load引起的插件追踪导致的加载缓慢几乎是微不足道的。
推荐zsh插件
- zdharma-continuum/fast-syntax-highlighting # 日常用的命令会高亮显示,命令错误显示红色
- zdharma-continuum/history-search-multi-word
- zsh-users/zsh-autosuggestions # 输入时按右方向键→自动补全命令
- zsh-users/zsh-completions
我自己的zsh配置
以下是我的完整配置其他的例如mysql的路径也添加在此处我暂时不加入其中,终端代理通过privoxy。
#zsh manager
source ~/.zinit/bin/zinit.zsh
#zinit load zsh plugins
#zinit ice depth=1; zinit light zsh-users/zsh-autosuggestions
#zinit ice depth=1; zinit light zsh-users/zsh-syntax-highlighting
# Fast-syntax-highlighting & autosuggestions
zinit wait lucid for \\
atinit"ZINIT[COMPINIT_OPTS]=-C; zpcompinit; zpcdreplay" \\
zdharma/fast-syntax-highlighting \\
atload"!_zsh_autosuggest_start" \\
zsh-users/zsh-autosuggestions \\
blockf \\
zsh-users/zsh-completions
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
# Path to your oh-my-zsh installation.
export ZSH="/Users/davidmorgan/.oh-my-zsh"
# Set name of the
评论区