Mac终端配置,DIY你的Terminal (iTerm 2 + Oh My Zsh)
使用mac osx一年以来,自带的Terminal终端一直都是白底黑字,食之无味,越来越缺乏新鲜感,怎么也得想个法子来刺激下眼球。
不然花那么多大洋买你回来是要哪般,难道真是为来学习工作???
怎么可能,不装逼谁TM买苹果。。。好吧,其实为来工作学习,装逼纯属业余。

完成配置后的终端具备功能:
- 语法高亮
- 命令行tab补全
- 自动提示符
- 显示Git仓库状态等功能
- ⌘+r 快速清空代码面板,跟终端输入clear一样的效果
***
安装步骤
1. 下载iTerm2
2. 解压后安装iTerm2并打开
- iTerm2 -> Make iTerm2 Default Term

打开偏好设置preference,选中Keys,勾选Hotkey下的Show/hide iTerm2 with a system-wide hotkey,将热键设置为 ⌘+. ,这样你就可以通过 ⌘+. 全局热键来打开或关闭iTerm2窗口,非常方便

3. 配色方案
选用 solarized,下载解压,然后打开 iTerm2 下的偏好设置 preference ,点开 profiles 下的colors 选项,点击右下角的 Color Presets 选项,选择import ,导入解压到的 solarized 文件下的Solarized Dark.itermcolors

4. 安装oh-my-zsh
github:https://github.com/robbyrussell/oh-my-zsh
官方提供 curl 和 wget 两种安装方式
curl 安装:
sh -c ``"$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
wget安装:
sh -c ``"$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
5. 配置主题
安装oh-my-zsh成功后
- 用 vim 编辑隐藏文件 .zshrc, 终端输入
vi ~/.zshrc
ZSH_THEME="agnoster"将zsh主题修改为“agnoster” - 应用“agnoster”主题需要特殊的字体支持,否则会出现乱码情况,
使用 Meslo 字体,点开链接点击 view raw 下载字体 - 安装字体到系统字体册
在iTerm2中应用字体 iTerm -> Preferences -> Profiles -> Text -> Change Font)

重新打开iTerm2窗口(或新打开一个iTerm2窗口)即可以看到字体效果
6. 自动提示与命令补全
比iTerm2自带的更强大的命令提示与补全
克隆仓库到本地 ~/.oh-my-zsh/custom/plugins 路径下
git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions用 vim 编辑 .zshrc 文件,找到插件设置命令,默认是
plugins=(git),我们把它修改为plugins=(zsh-autosuggestions git)
PS:当你重新打开终端时可能看不到变化,可能你的字体颜色太淡了,我们把其改亮一些:
cd ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions- 用 vim 编辑 zsh-autosuggestions.zsh 文件,修改
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=10'
7. 语法高亮效果
- 使用homebrew包管理工具安装 zsh-syntax-highlighting 插件
brew install zsh-syntax-highlighting
如果电脑上还没有安装homebrew,请先安装homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" - 配置.zshrc文件,插入一行
source /xxx/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
(注意: /xxx/ 代表.zshrc所在的路径) - 加载.zshrc配置
source ~/.zshrc - 重新打开iTerm2窗口(或新打开一个iTerm2窗口)即可以看到效果
扩展
- iTerm2 默认使用dash改用zsh解决方法:
chsh -s /bin/zsh - iTerm2 zsh切换回原来的dash:
chsh -s /bin/bash - 卸载
oh my zsh,在命令行输入:uninstall_oh_my_zsh - 路径前缀的XX@XX太长,缩短问题:
编辑~/.oh-my-zsh/themes/agnoster.zsh-theme主体文件,将里面的build_prompt下的prompt_context字段在前面加#注释掉即可
作者:以乐之名
本文原创,有不当的地方欢迎指出。转载请指明出处。
Mac终端配置,DIY你的Terminal (iTerm 2 + Oh My Zsh)的更多相关文章
- mac终端配置Android ADB命令
不得不说mac是一款开发利器,不仅可以开发ios,而且对于Android开发也是不错的选择,下面我就对mac配置adb命令,进行简要的说明.下面我将一下mac环境下的配置步骤:1.在自己的目录(hom ...
- ITerm让MAC终端更加灵活高效
一.ITerm2简介 1.安装 iTerm2 是一款完全免费的,专为 Mac OS 用户打造的命令行应用.直接在官网上http://iterm2.com/ 下载并安装即可. 2.配置 设置ITerm为 ...
- MAC 终端terminal颜色
Mac终端terminal颜色实在太单调了,安装Linux使用的GNU Coreutils替换Mac的ls命令: Mac终端terminal颜色实在太单调了,安装Linux使用的GNU Coreuti ...
- mac终端terminal快捷键:
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Hannotate SC" } span.s1 { } p.p1 { m ...
- mac终端terminal快捷键
mac终端terminal快捷键: Command + K 清屏 Command + T 新建标签 Command +W 关闭当前标签页 Command + S 保存终端输出 Command + ...
- MySQL Mac 终端环境变量配置
MySQL Mac 终端环境变量配置 这里安装的是mysql-8.0.26-macos11-x86_64,M1Mac,原本打算安装arm64版本,但一直安装不了,就装了x86版本 安装完成MySQL之 ...
- 从mac终端创建cocos2d-x项目在xcode和eclipse正常运行环境配置
一.创建可以同时运行在xcode和eclipse的项目: 1.打开mac终端,进入cocos2d-x目录下的tools/project-creator,执行命令./create_project.py ...
- mac 终端(terminal) 启动tomcat
mac 终端启动tomcat: 找到你的tomcat安装的根目录:找到bin目录,在终端 cd 到这个bin中,输入sudo ./startup.sh (然后终端会提示你输入本机密码如果是在需要权限的 ...
- Mac终端命令行提示符格式更改方法
内容提要: 主要是通过~/.bash_profile文件更改环境变量PS1,修改命令行提示符的显示格式,并展示不同颜色. 本文介绍了默认设置的缺陷,以及需要用到的基础知识,最后介绍了更改命令行提示符格 ...
随机推荐
- [转]深入理解mysqldump原理
本文转至:http://blog.csdn.net/cug_jiang126com/article/details/49824471 在mysqldump过程中,之前其实一直不是很理解为什么加了--s ...
- 工作总结(一):Linux C
这三个月以来一直忙着赶进度,没有停下来记录一些东西,很多很好的东西往往只能零零散散地记在草稿本上, 这样偶尔想起来自己都找不到,所以现在抽空总结下来. 这些天做了三件事,其一是在Linux下开发了对接 ...
- Java网络技术-待续
TCP Sockets基础 Sockets,是用户程序与TCP/IP协议的中介. 实现TCP Sockets通信,需要本地IP和端口,对方IP和端口.客户端发通信请求,发送或接收流,关 ...
- Hdu2068 RPG的错排 2017-06-27 15:27 30人阅读 评论(0) 收藏
RPG的错排 Time Limit : 1000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submis ...
- ES版本控制
版本控制 ElasticSearch采用了乐观锁来保证数据的一致性,也就是说,当用户对document进行操作时,并不需要对该doucument作加锁和解锁的操作,只需要指定要操作的版本即可.当版本号 ...
- DDL和DML的区别
DML(data Manipulation Language)数据库操纵语言: 使用范围:对数据库中的数据进行一些简单的操作,如IDUS(增删改查) DDL(Data Definiton Langua ...
- artificial neural network in spark MLLib
神经网络模型 每个node包含两种操作:线性变换(仿射变换)和激发函数(activation function). 其中仿射变换是通用的,而激发函数可以很多种,如下图. MLLib中实现ANN 使用两 ...
- 在线安装WordPress更新 失败的解决办法
1. 登录ftp登录不上 , 总是登录失败 在服务器上新建了一个vsftpd服务器,并设置了相应的虚拟用户,修改chroot到网站目录 相关连接:https://blog.csdn.net/zhan ...
- Apache-通过CGI执行脚本
1.配置服务器,开启注释 vim /etc/httpd/conf/httpd.conf 292 # (You will also need to add "ExecCGI" to ...
- Mac使用brew安装nginx,并解决端口访问权限问题
1.安装 brew install nginx 2.修改配置文件 sudo vi /usr/local/etc/nginx/nginx.conf 修改默认的8080端口为80 修改日志文件地方 err ...



