iTerm2
iTerm 2 is a terminal emulator for Mac OS X that does amazing things.
iTerm2 是一个终端模拟器,官方网站: http://www.iterm2.com/
更改配色方案为 Solarized
Solarized 的主页: http://ethanschoonover.com/solarized
直接去主页下载或者使用 Git
git clone git://github.com/altercation/solarized.git
然后打开 solarized/iterm2-colors-solarized/ 双击里面的文件
遇到的问题
终端灰蒙蒙的,就像下面这样
下面我们来回到彩色世界:
依次打开 iTerm2 - Preferences - Profiles - Text - Text Rendering,将 Draw bold text in bright colors 前面的勾去掉
彩色的世界就回来了
有意思的配置
快捷键呼出 Preferences - Keys - Hotkey - Hotkey toggles a dedicated window with profile 把它设置成 Hotkey Window,按快捷键之后 Hotkey Window 会从屏幕上面折叠下来
菜单栏中的 Window 还有一些有趣的东西,比如保存读取窗口快照
Preferences - Profiles - Terminal - Terminal Emulation - Report Terminal Type 将其中的 xterm 改成 xterm-256color,比如在 Vim 显示一些配色方案会好很多
复用上个会话的目录 Preferences - Profiles - Working Directory - Reuse previous session’s directory
快捷键
⌘ + Click
:可以打开文件,文件夹和链接
⌘ + n
:新建窗口
⌘ + t
:新建标签页
⌘ + w
:关闭当前页
⌘ + 数字
& ⌘ + 方向键
:切换标签页
⌥⌘ + 数字
:切换窗口
⌘ + enter
:切换全屏
⌘ + d
:左右分屏
⇧⌘ + d
:上下分屏
⌘ + ;
:自动补全历史记录
⇧⌘ + h
:自动补全剪贴板历史
⌥⌘ + e
:查找所有来定位某个标签页
⌘ + r
& ⌃ + l
:清屏
⌘ + /
:显示光标位置
⌥⌘ + b
:历史回放
⌘ + f
:查找,然后用 tab
和 ⇧ + tab
可以向右和向左补全,补全之后的内容会被自动复制, 还可以用 ⌥ + enter
将查找结果输入终端
选中即复制,鼠标中键粘贴
很多快捷键都是通用的,和 Emace 等都是一样的
⌃ + u
:清空当前行
⌃ + a
:移动到行首
⌃ + e
:移动到行尾
⌃ + f
:向前移动
⌃ + b
:向后移动
⌃ + p
:上一条命令
⌃ + n
:下一条命令
⌃ + r
:搜索历史命令
⌃ + y
:召回最近用命令删除的文字
⌃ + h
:删除光标之前的字符
⌃ + d
:删除光标所指的字符
⌃ + w
:删除光标之前的单词
⌃ + k
:删除从光标到行尾的内容
⌃ + t
:交换光标和之前的字符
还有鼠标和触摸板控制Preferences - Pointer
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
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 的压缩包 一些常用的压缩方式如下: 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
结果高亮显示,在配置文件中写入如下内容: # man page highlightexport LESS_TERMCAP_mb=$'\E[01;31m' # begin blinkingexport LESS_TERMCAP_md=$'\E[01;38;5;74m' # begin boldexport LESS_TERMCAP_me=$'\E[0m' # end modeexport LESS_TERMCAP_se=$'\E[0m' # end standout-modeexport LESS_TERMCAP_so=$'\E[38;5;246m' # begin standout-mode - info boxexport LESS_TERMCAP_ue=$'\E[0m' # end underlineexport LESS_TERMCAP_us=$'\E[04;38;5;146m' # begin underline
Oh My Zsh 本身自带了很多插件,不过基本都没有启用,插件目录 ~/.oh-my-zsh/plugins
例如启用插件 git, autojumps osx, 需要在配置文件中加入如下内容
plugins=(git autojumps osx)
osx 插件 man-preview
通过 preview 程序查看一个命令的手册
quick-look
快速预览文件
pfd
返回当前 Finder 打开的文件夹的路径
cdf
切换到当前 Finder 所在的目录
autojump 插件
需要先安装 autojump
brew install autojump
使用方法:
j 目录名或目录名的一部分
跳转到最多访问的目录
tmux
官网: http://tmux.github.io/
一个终端复用软件,可将终端方案化
安装
brew install tmux
配置
mvim ~/.tmux.conf
并不喜欢反人类的全键盘式操作,而且也没有特别吸引我的点,所以基本不使用
经常连接服务器的人用起来应该挺好用的
比如,在一个窗口中分隔成多个终端同时运行不同的命令
使用 SSH 的时候,在网络不稳定的情况下,可保存工作环境
在网络不好的环境下,可以尝试使用 Mosh 来代替 SSH