引言
hello
我们好,今日给我们共享Mac终端开发奇特 iTerm2
、Oh My Zsh
他俩是什么?能干嘛?我们先权且不谈,先说几个开发常见的痛点,我们能够品一品是否也有遇到过
首当其冲Mac默许的终端Terminal
没有显现项目分支,虽然修正器或许第三方可视化软件能够看,但仍是感觉不是很优雅
接着经常用的指令没有提示,每次重敲指令影响开发功率,遇到手残党单词简单打错,功率大打折扣
还有便是Terminal
终端
- 默许黑底白字可读性略差,装备后语法会高亮,例如上图
mkdir
、cd
等添加可读性; - 默许仿制终端内容,需求选中并按
command c
键,或许鼠标右击选仿制
,这样操作有时分不小心简单仿制失利,你遇到过吗?装备后选中字符,则直接仿制,离别command c
、右击直接张贴 ,超便利的; - 默许需求点击右上角终端才能够全屏,装备后直接
command enter
切换终端全屏; - 等等
在这儿先给我们共享5个点吧,信任我们装置,运用后会发现更多 ヾ(◍∇◍)ノ゙ 加油
一、东西介绍
装置装备前,引荐我们先把东西之间的联系搞清楚,这样有利于装置装备
1.1 Terminal vs iTerm2
-
terminal
:mac默许终端,能够了解为win体系的DOS窗口; -
iterm2
:第三方保护的一个终端,一般mac开发者都会装置一个,首要由于其终端装备、窗口办理、前史指令办理等装备操作上都比mac默许终端terminal
便利,所以受到许多开发者喜爱;
这儿也给我们预备了几张截图,便利我们更好的了解两者差异,了解为什么喜爱
iterm2
而不是Mac默许的terminal
a 默许作用
默许装置翻开后的作用,看着差不多
b 终端装备
iterm2
能够装备热键、背景通明和悬浮,它能够悬浮在恣意窗口上面等等,所以iterm2
更强壮
c 智能仿制
terminal
需求先选中,接着按下快捷键command c
或许鼠标右击选仿制
iterm2
这儿就便利太多了,选中则直接仿制,离别command c
、同时右击直接张贴的作用也十分友好;另外按下command option
能够矩形选中作用,这个我用的不多,算一个长处吧
d 窗格办理
terminal
窗格自定义办理没有 iterm2
强,经过下述快捷键能够测验
- 笔直分屏:
command d
- 水平分屏:
command shift d
- 切换窗格:
command option 方向键
或许Command 左右中括号
e 快捷功用
- 回车全屏
command enter
- 前史剪切板
command shift h
- 前史指令提示
command ;
等等这些指令都是在iterm2
下才会收效
暂时说这么多吧,等下文我们装置了自己再来体会下
1.2 Zsh vs Oh My Zsh
这儿我们需求先了解
Shell
接着了解Zsh
、Oh My Zsh
的概念和联系,最后考虑下terminal
、iterm2
、Zsh
、Oh My Zsh
四者之间联系,更加有利于后续得装备
Shell
计算机设备是由一个个物理硬件组成的,自身不具备运转处理才能,需求经过内核和驱动对硬件进行操作,驱动其作业。在计算机体系中,内核接口是隐藏起来的,用户不能直接操作内核,我们需求经过一个中心程序,接收用户操作指令,将其传递给内核,推进内核作业,进而推进硬件作业。Shell便是这个中心程序,起到连接操作体系内核和用户的作用。
简单了解哈,shell
便是指令解析器,把用户在terminal
或iterm2
上输入的指令进行解析,接着传递给内核;
- shell种类:ash、bash、ksh、csh、zsh等,值得一说的是在大多数 Linux 体系中,默许的 shell 是 Bash,而在 macOS 体系中,默许的 shell 是 Zsh(Z Shell) 。从 macOS Mojave 开端,Apple 将默许 shell 从 Bash 切换到了 Zsh 不过也依据个人喜爱。
- shell差异:例如指令,功用、特性存在差异,这儿就不展开说了,大致知道shell之间的差异就行
Oh My Zsh
Zsh
是Shell/指令解说器
的一种实现,自身很强壮,可是装备起来也十分的杂乱;所以为了解决Zsh
杂乱的装备问题,Oh My Zsh
就诞生了。
Oh My Zsh
是一个开源的、社区驱动的结构,用于办理您的 Zsh 装备。它绑缚了数千个有用的功用、插件、主题,能够让用户轻松定制和办理Zsh的装备。
具体有哪些插件,下文装置的时分我们继续说,这儿点到为止
1.3 brew
brew
全称 Homebrew
是 Mac OS 下强壮的包办理东西,类似于win体系的软件管家,我们能够经过他来装置iterm2
或许 装置Oh My Zsh
插件等;当然也能够经过其他办法装置都能够。
到这儿东西就悉数介绍完了,接下来开端装置
PS. 东西介绍次序iterm2
、Oh My Zsh
、brew
,可是装置次序则是brew
、iterm2
、Oh My Zsh
你能想理解为什么吗? 品一品
二、软件包办理东西 brew
2.1 装置
能够运用 官网 brew.sh 供给的办法装置,不过由于众所周知的原因,国内运用官方装置办法有问题,我们运用国内源装置脚本装置。
在终端中输入以下指令,依据提示装置就行
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
2.2 常用指令
装置成功后能够在终端输入brew -v
检查版别验证是否装置成功,后续也能够经过下述指令办理
brew search 关键词 # 搜索相关的包
brew install 包名 # 装置
brew uninstall 包名 # 卸载
brew info 包名 # 检查包的信息
brew list 包名 # 检查已装置的包
...
我们暂时不装软件,我们知晓指令后边用
2.3 卸载
这个知晓就行,不必操作
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/HomebrewUninstall.sh)"
三、终端东西 iTerm2
3.1 装置
直接翻开官网 iterm2.com下载可视化装置
或许
在终端中输入以下指令直接装置也行
brew install --cask iterm2
装置后默许作用
3.2 功用
许多功用之前terminal
、iterm2
比照的时分都介绍过,这儿再共享下,刚好我们趁热打铁挨个试一试到底好不好用;01~04
强烈引荐我们多用用,其他的依据个人爱好,有小编没总结到的,也引荐谈论区留言共享,感谢感谢
a 智能仿制*
在iterm2
中选中则仿制,被挑选的文本会自动保存在剪切板中。双击选中,三击选中整行,四击智能挑选,能够智能地选中你想要的数据,如日期、邮箱,网址,括号/引号中的数据等。
相同也支撑快速张贴,直接鼠标右击
或许command v
进行张贴
b 标签页Tabs*
- 新建标签
command t
- 封闭标签
command w
- 切换标签
command 数字
或许command 左右方向键
这个功用Terminal
也支撑
c 装备Settings*
- 3.1 窗口设置
翻开iTerm2,翻开Preferences
装备界面,Profiles -> Window
,依据自己的需求设置窗口通明度、背景图片、队伍数以及风格等。
- 3.2 设置 Status bar
敞开后我们能够在终端的最上方十分便利的实时检查本机的一些信息。
- 3.3 装备SSH快速连接
等等
d 终端窗体控制*
大爱啊,按下自定义快捷键
快速隐藏、显现窗体吗,它会通明而且悬浮于其他窗体之上。
翻开iTerm2,翻开Preferences装备界面,Profiles → Keys →configure Hotkey window,自定义一个快捷键就能够了。
删除Hotkey
e 部分快捷键
*
是小编喜爱用的
作用 | 指令 | 作用 | 指令 |
---|---|---|---|
清屏* | command r | 删光标字符 | ctrl d |
清除当时行 | ctrl u | 删光标前单词 | ctrl w |
到行首* | ctrl a | 删光标前一个字符 | ctrl h |
到行尾* | ctrl e | 删光标及末尾 | ctrl k |
交流光标文本 | ctrl t |
f 窗格Panes
- 笔直分屏:
command d
- 水平分屏:
command shift d
- 切换窗格:
command Option 方向键
或许command 左右中括号
g 前史剪切板
经过 command shift h
能够检查当时终端前史仿制的内容,由于iterm 2
支撑选中仿制,所以选中的内容都能够检查
h 前史指令回放
挺好玩的,不过一般用不到,他能够像录屏一样,然后播放曩昔一段时间内窗口显现的内容 command option b
四、装备办理东西 Oh My Zsh
4.1 装置
能够运用 官网 ohmyz.sh 供给的办法装置,不过由于众所周知的原因,国内运用官方装置办法有问题,我们运用手动装置。
# 1 下载 oh-my-zsh 源码
git clone https://github.com/ohmyzsh/ohmyzsh.git ~/.oh-my-zsh
# 2 把 .zshrc 装备文件拷贝到当时用户的目录下
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
# 3 让 .zshrc 装备文件收效
source ~/.zshrc
假如克隆失利,翻开github
手动下载zip
文件 -> 解压 -> 移动 oh-my-zsh
目录到用户家目录:
# 1 移动解压后的ohmyzsh到用户的家目录
mv ~/Downloads/ohmyzsh-master ~/.oh-my-zsh
# 2 把 .zshrc 装备文件拷贝到当时用户的目录下
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
# 3 让 .zshrc 装备文件收效
source ~/.zshrc
下图是装置前后的比照作用
4.2 装备主题
装置后假如你对上图默许主题不满意,也能够自己装备主题
a 自带主题
检查oh-my-zsh
自带主题
ls ~/.oh-my-zsh/themes
下面的网站看下oh-my-zsh
自带的部分主题显现作用:
找到自己喜爱的主题,接下来就能够进行主题修正了,我们以agnoster为例
vim ~/.zshrc
关于vim
不会用的度娘一下吧,或许
open ~/.zshrc
这个指令也能够直接修正
改完之后输入以下指令更新装备,让其收效。
source ~/.zshrc
b 第三方主题
一切第三方主题
powerlevel10k 是目前比较盛行的
首先去 ~/.oh-my-zsh/themes
目录下载主题
cd ~/.oh-my-zsh/themes
git clone https://github.com/romkatv/powerlevel10k.git
接着修正装备文件就行
vim ~/.zshrc 或 open ~/.zshrc
修正主题和添加额外主题装备
# ZSH_THEME="robbyrussell"
# ZSH_THEME="agnoster"
ZSH_THEME="powerlevel10k/powerlevel10k"
# Prompts
POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR='uE0C0'
#POWERLEVEL9K_LEFT_SUBSEGMENT_SEPARATOR='uE0C0'
POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR='uE0C2'
#POWERLEVEL9K_RIGHT_SUBSEGMENT_SEPARATOR='uE0C2'
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(dir dir_writable vcs virtualenv)
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status background_jobs command_execution_time ip)
POWERLEVEL9K_SHORTEN_DIR_LENGTH=2
POWERLEVEL9K_SHORTEN_DELIMITER=..
POWERLEVEL9K_PROMPT_ON_NEWLINE=true
POWERLEVEL9K_MULTILINE_FIRST_PROMPT_PREFIX=$'n'
POWERLEVEL9K_MULTILINE_LAST_PROMPT_PREFIX="uF460%F{073}uF460%F{109}uF460%f "
POWERLEVEL9K_MODE='nerdfont-complete'
HIST_STAMPS="yyyy/mm/dd"
改完之后输入以下指令更新装备,让其收效。
source ~/.zshrc
我们能够经过下图看到详细操作哈
4.3 装备插件
插件的装置,我们能够经过Homebrew
或许git
两种装置办法,我们依据习惯任选其一即可,无需重复装置。
然后插件有许多,这儿给我们共享,我个人比较喜爱的3个插件,你能够在github
检查更多,不过我看着形似不全,所以引荐谈论区共享你喜爱的插件名和原因,后续我来持续更新 感谢感谢
a 高亮插件 zsh-syntax-highlighting
装置
brew install zsh-syntax-highlighting
装备 vi/open ~/.zshrc
source /opt/homebrew/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source
途径能够经过 brew info zsh-syntax-highlighting
检查
b 前史指令提示插件 zsh-autosuggestions *
强推的,加快开发速度,敲指令能够看到前史的指令提示,然后按下键盘command ->
则自动补全
装置
git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions
装备
# 修正装备文件
vim/open ~/.zshrc
# 找到plugins装备,在括号内添加zsh-autosuggestions,与其他插件之间运用空格分离隔
plugins=(zsh-autosuggestions)
# 退出修正后执行使装备收效
source ~/.zshrc
作用
c ls列表美化插件 colorls
装置ruby
brew install ruby
装备ruby
# 修正装备文件
vim/open ~/.zshrc
# 文件最后加一行
export PATH="/opt/homebrew/opt/ruby/bin:$PATH"
# 退出修正后执行使装备收效
source ~/.zshrc
装置colorls
sudo gem install colorls -n /usr/local/bin
装备colorls
# 修正装备文件
vim/open ~/.zshrc
# 文件最后加
source $(dirname $(gem which colorls))/tab_complete.sh
alias ll='colorls -lA --sd --gs --group-directories-first'
alias ls='colorls --group-directories-first'
alias lc='colorls'
alias l='colorls -l --sort-dirs'
alias la='colorls -la --sort-dirs'
alias lt='colorls -lt --git-status'
alias lS='colorls -lS --git-status'
alias lr='colorls --tree=5'
alias lx='colorls -lAX --git-status'
# 退出修正后执行使装备收效
source ~/.zshrc
4.4 卸载
这个知晓就行,不必操作
uninstall_oh_my_zsh
五、作用展示
自己又改了改,跟着文章配下来太花里胡哨了,坑不住
✨✨终于写完了,希望能协助到我们。
假如你喜爱这篇文章,记得帮助给个点赞和评价,谢谢!