mac下终端iTerm2配置

mac下终端iTerm2配置_第1张图片

本文主要介绍mac下iTerm2的基本配置,包括两方面内容:主题和快捷键。写这篇的目的是为自己电脑的配置做个记录,以备不时之需。

主题

在配置完主题后,当你打开iTerm2时,会显示如下界面


mac下终端iTerm2配置_第2张图片

这个主题会让你的光标提示符之前的内容一目了然,尤其是当你进入git目录之后,还会提示git本地代码库相关的状态,例如:它会提示你所在的分支,以及文件是否有变化。下面我们一步步来配置吧。

安装oh-my-zsh

oh-my-zsh是mac下shell(zsh)的开源配置管理框架,从本文中,你将会看到可以用它来配置zsh的字体、主题、配色等。

首先我们检查下自己默认的shell是否是zsh

$ echo $0
-zsh

如果你的输出不是-zsh,需要手动切换一下

chsh -s /bin/zsh

安装oh-my-zsh

git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
cp ~/.zshrc ~/.zshrc.orig
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

修改主题

zsh的配置文件是~/.zshrc,每次打开终端时,这个脚本都会执行,修改该文件的ZSH_THEME字段,配置主题

ZSH_THEME="agnoster"

同时将agnoster主题下载下来,拷贝到~/.oh-my-zsh/themes目录下

$ wget https://gist.githubusercontent.com/agnoster/3712874/raw/c3107c06c04fb42b0ca27b0a81b15854819969c6/agnoster.zsh-theme
$ mv agnoster.zsh-theme ~/.oh-my-zsh/themes/agnoster.zsh-theme

修改配色

我使用的是solarized配色方案,你可以从这里下载:
solarized.zip解压缩后,请在 iTerm 里按command+,(逗号)快捷键,打开Preferences(选项)对话框

Preferences -> Profiles -> Colors -> Color Presets -> Import

导入iterm2-colors-solarized目录下的两个.itermcolors文件,修改配色方案

Preferences -> Profiles -> Colors -> Color Presets

选择Solarized Dark

mac下终端iTerm2配置_第3张图片

配置字体

首先配置字体编码,修改~/.zshrc文件,将字体编解码方式修改为UTF-8

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

下载并安装Powerline字体,继续打开iTerm2的选项

Preferences -> Profiles -> Text -> Change Font

换成Menlo字体,字号14

mac下终端iTerm2配置_第4张图片

新打开一个iTerm2 Tab,就可以看到效果了。

快捷键设置

这里说的快捷键主要是光标移动的快捷键,因为熟练使用这些快捷键会提升工作效率。iTerm2需要配置的地方不多,我就设置了两个地方,使光标可以以单词为单位移动:

  1. 使光标移动到右边单词的首字符
  2. 使光标移动到左边单词的首字符

依然是打开iTerm2的选项

Preferences -> Profiles -> Keys -> 添加快捷键(+号)

mac下终端iTerm2配置_第5张图片

设置光标前进一个单词的快捷键


mac下终端iTerm2配置_第6张图片

继续添加快捷键,设置光标回退一个单词的快捷键


mac下终端iTerm2配置_第7张图片

于是,当你需要敲一串很长的命令时,不巧其中某个选项需要修改,在配置完以上快捷键后,你可以键入option + foption + b完成以单词为单位的移动,这样移动速度会快很多。

其他常用的快捷键

  • Ctrl + a:将光标移动到命令行首
  • Ctrl + e:将光标移动到命令行尾
  • Ctrl + w:删除光标前的一个单词
  • Ctrl + u:删除所有内容
  • Ctrl + y:粘贴上次删除的内容
  • Ctrl + f:光标向右移动一个字符
  • Ctrl + b:光标向左移动一个字符
  • Ctrl + r:搜索历史命令

以上是我常用的一些快捷键,赶紧练练手吧。也欢迎在留言区补充其他Tips。

补充

ssh保活(keepalive)配置

当你使用ssh客户端连接公司服务器时,很有可能会出现闲置一段时间后,被服务器断开的情况,这是运维部门的一种安全策略。但这种被动断开很可能会影响到自己的工作上下文,例如你运行了一个耗时较长的脚本,或用vim打开了一个文本文件,如果此时远程服务器断开了你的连接,你的工作就被中断了,且无法恢复,这种体验非常糟糕。

怎样才能让iTerm2帮你保持连接呢?其实这事儿也不是iTerm2来完成的,而是ssh客户端本身来完成的,修改~/.ssh/config文件,如下

Host *
    ServerAliveInterval 10

上述设置意为对任何一个ssh连接,每10秒发送一个no-op包,意思是即使你不做任何操作,也可以起到心跳保活的效果。

参考:

  • iTerm2中ssh保持连接不断开

微信公众号:程序员在深圳(studycode)
交流微信:jingwumen777

你可能感兴趣的:(mac下终端iTerm2配置)