mac下 iterm+Zsh+Oh My Zsh+tmux 配置方案
iterm2:
iterm的一些优点:
- 兼容性好,远程服务器 vi 什么的低版本能很好兼容,Terminal 则会出问题 (我是长时间在服务器上混的人,但其实并没有这种感觉~~)
- 支持 xterm-256 色,方便在终端中配置 vim/emacs 代码配色 (其实Terminal现在已经支持256色了)
- 快捷键丰富,自带/自己定义都很方便 (这个是关键,快捷键都我非常重要)
- 分屏简单方便,可以根据自己需要同时搭配上 tmux,大屏用起来爽到爆 (分屏只需要 command +(shift)+ d)
个人常用的快捷键和功能:
- ⌘ + 数字 : 各 tab 标签切换
- ⌘ + f : 查找 ,所查找的内容会被自动复制 ,输入查找的部分字符,找到匹配的值按tab,即可复制
- ⌘ + d : 横着分屏
- ⌘ + shift + d : 竖着分屏
- ⌘ + r = clear : 换到新一屏,而不是 类似clear ,会创建一个空屏
- ctrl + u :清空当前行,无论光标在什么位置
- () + ⌘ + ; : [() 输入的命令开头字符],会自动列出输入过的命令
- ⌘ + shift + h : 会列出剪切板历史
- ⌘← / ⌘→ : 到一行命令最左边/最右边
- ⌘ + enter : 全屏
Zsh
Mac 系统自带了 Zsh, 一般不是最新版,如果需要最新版可通过 Homebrew 来安装
brew install zsh |
可通过 zsh --version
命令查看 Zsh 的版本
使用 echo $ZSH_VERSION
命令查看当前使用的 Zsh 版本
修改默认 Shell
-
在 /etc/shells 文件中加入如下一行
/usr/local/bin/zsh
-
然后运行命令
chsh -s /usr/local/bin/zsh
Zsh配色设置:
-
首先在wiki 里找到你中意的皮肤 名称.
然后去 修改 zsh配置文件
➜ /Users/zhangzhi >nano .zshrc
然后在配置内容中找到
# time that oh-my-zsh is loaded. ZSH_THEME="robbyrussell"
ZSH_THEME 就是指定皮肤的名称.然后把你 wiki 里看中的皮肤名称替换进来就OK了
2. 也可以去用户目录 .oh-my-zsh 目录下找到 themes 目录
琳琅满目的皮肤.你可以调一款,可惜不能直接预览出效果....
然后把你挑中的皮肤名称配置在 .zshrc 文件中的 ZSH_THEME 配置项中.
-
Oh My Zsh
Oh My Zsh 用来管理 Zsh 配置的,自带了好用的基本配置,基本都是 Zsh 的标配了,你不用再一步步重新配置 Zsh ,节约你的宝贵时间
项目主页:https://github.com/robbyrussell/oh-my-zsh
安装方法见主页,很简单就不说了,下面说说一些常用的好用的功能:
配置文件在 ~/.zshrc
-
连续按 tab, 能直接选择文件及文件夹,还可以使用
⌃ + n/p/f/b
来选择 -
直接输入文件名打开文件,可指定不同的后缀名用不同的程序打开
在配置文件中写入alias -s md=mvim
, 表明在命令行中输入 md 后缀的文件名,会用 mvim 打开
又例如:alias -s gz="tar -xzvf"
, 自动解压后缀为 gz 的压缩包
一些常用的压缩方式如下:1 2 3 4 5
alias -s tar="tar -xvf" alias -s gz="tar -xzvf" alias -s tgz="tar -xzvf" alias -s bz2="tar -xjvf" alias -s zip="unzip"
-
kill <tab>
会自动列出进程,或者kill nginx
-
支持递归,例如
ls **/*
列出当前目录下所有文件及目录,并递归目录 -
使
man
结果高亮显示,在配置文件中写入如下内容:1 2 3 4 5 6 7 8
# man page highlight export LESS_TERMCAP_mb=$'\E[01;31m' # begin blinking export LESS_TERMCAP_md=$'\E[01;38;5;74m' # begin bold export LESS_TERMCAP_me=$'\E[0m' # end mode export LESS_TERMCAP_se=$'\E[0m' # end standout-mode export LESS_TERMCAP_so=$'\E[38;5;246m' # begin standout-mode - info box export LESS_TERMCAP_ue=$'\E[0m' # end underline export LESS_TERMCAP_us=$'\E[04;38;5;146m' # begin underline
Oh My Zsh 本身自带了很多插件,不过基本都没有启用,插件目录 ~/.oh-my-zsh/plugins
例如启用插件 git, autojump osx, 需要在配置文件中加入如下内容
plugins=(git autojump osx) |
-
osx 插件
man-preview
通过 preview 程序查看一个命令的手册quick-look
快速预览文件pfd
返回当前 Finder 打开的文件夹的路径cdf
切换到当前 Finder 所在的目录
-
autojump 插件
需要先安装 autojump
brew install autojump
使用方法:
j 目录名或目录名的一部分
跳转到最多访问的目录
-
zsh-autosuggestions 插件:https://github.com/zsh-users/zsh-autosuggestions
Fish 类的自动建议插件
自动建议的字体颜色可能和你终端的颜色相近,你可以将其改成其它的,比如设置为 blue
export ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=blue'
tmux
一个终端复用软件,可将终端方案化
安装
brew install tmux |
配置
mvim ~/.tmux.conf |
并不喜欢反人类的全键盘式操作,而且也没有特别吸引我的点,所以基本不使用
经常连接服务器的人用起来应该挺好用的
比如,在一个窗口中分隔成多个终端同时运行不同的命令
使用 SSH 的时候,在网络不稳定的情况下,可保存工作环境
原文地址:http://www.aisun.org/2017/09/iterm+Zsh+Oh%20myzsh+tmux/