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

完成配置后的终端具备功能:

  1. 语法高亮
  2. 命令行tab补全
  3. 自动提示符
  4. 显示Git仓库状态等功能
  5. ⌘+r 快速清空代码面板,跟终端输入clear一样的效果
    ***

安装步骤

1. 下载iTerm2

2. 解压后安装iTerm2并打开

  1. iTerm2 -> Make iTerm2 Default Term
  2. 打开偏好设置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成功后

  1. 用 vim 编辑隐藏文件 .zshrc, 终端输入vi ~/.zshrc
    ZSH_THEME="agnoster" 将zsh主题修改为“agnoster”
  2. 应用“agnoster”主题需要特殊的字体支持,否则会出现乱码情况,
    使用 Meslo 字体,点开链接点击 view raw 下载字体
  3. 安装字体到系统字体册
  4. 在iTerm2中应用字体 iTerm -> Preferences -> Profiles -> Text -> Change Font)

  5. 重新打开iTerm2窗口(或新打开一个iTerm2窗口)即可以看到字体效果

6. 自动提示与命令补全

比iTerm2自带的更强大的命令提示与补全

  1. 克隆仓库到本地 ~/.oh-my-zsh/custom/plugins 路径下
    git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions

  2. 用 vim 编辑 .zshrc 文件,找到插件设置命令,默认是 plugins=(git) ,我们把它修改为plugins=(zsh-autosuggestions git)

PS:当你重新打开终端时可能看不到变化,可能你的字体颜色太淡了,我们把其改亮一些:

  1. cd ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions
  2. 用 vim 编辑 zsh-autosuggestions.zsh 文件,修改ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=10'

7. 语法高亮效果

  1. 使用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)"
  2. 配置.zshrc文件,插入一行
    source /xxx/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
    (注意: /xxx/ 代表.zshrc所在的路径)
  3. 加载.zshrc配置
    source ~/.zshrc
  4. 重新打开iTerm2窗口(或新打开一个iTerm2窗口)即可以看到效果

扩展

  1. iTerm2 默认使用dash改用zsh解决方法:chsh -s /bin/zsh
  2. iTerm2 zsh切换回原来的dash:chsh -s /bin/bash
  3. 卸载oh my zsh,在命令行输入:uninstall_oh_my_zsh
  4. 路径前缀的XX@XX太长,缩短问题:
    编辑~/.oh-my-zsh/themes/agnoster.zsh-theme主体文件,将里面的build_prompt下的prompt_context字段在前面加#注释掉即可

作者:以乐之名
本文原创,有不当的地方欢迎指出。转载请指明出处。

Mac终端配置,DIY你的Terminal (iTerm 2 + Oh My Zsh)的更多相关文章

  1. mac终端配置Android ADB命令

    不得不说mac是一款开发利器,不仅可以开发ios,而且对于Android开发也是不错的选择,下面我就对mac配置adb命令,进行简要的说明.下面我将一下mac环境下的配置步骤:1.在自己的目录(hom ...

  2. ITerm让MAC终端更加灵活高效

    一.ITerm2简介 1.安装 iTerm2 是一款完全免费的,专为 Mac OS 用户打造的命令行应用.直接在官网上http://iterm2.com/ 下载并安装即可. 2.配置 设置ITerm为 ...

  3. MAC 终端terminal颜色

    Mac终端terminal颜色实在太单调了,安装Linux使用的GNU Coreutils替换Mac的ls命令: Mac终端terminal颜色实在太单调了,安装Linux使用的GNU Coreuti ...

  4. mac终端terminal快捷键:

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Hannotate SC" } span.s1 { } p.p1 { m ...

  5. mac终端terminal快捷键

    mac终端terminal快捷键: Command + K 清屏 Command + T 新建标签 Command +W  关闭当前标签页 Command + S  保存终端输出 Command + ...

  6. MySQL Mac 终端环境变量配置

    MySQL Mac 终端环境变量配置 这里安装的是mysql-8.0.26-macos11-x86_64,M1Mac,原本打算安装arm64版本,但一直安装不了,就装了x86版本 安装完成MySQL之 ...

  7. 从mac终端创建cocos2d-x项目在xcode和eclipse正常运行环境配置

    一.创建可以同时运行在xcode和eclipse的项目: 1.打开mac终端,进入cocos2d-x目录下的tools/project-creator,执行命令./create_project.py ...

  8. mac 终端(terminal) 启动tomcat

    mac 终端启动tomcat: 找到你的tomcat安装的根目录:找到bin目录,在终端 cd 到这个bin中,输入sudo ./startup.sh (然后终端会提示你输入本机密码如果是在需要权限的 ...

  9. Mac终端命令行提示符格式更改方法

    内容提要: 主要是通过~/.bash_profile文件更改环境变量PS1,修改命令行提示符的显示格式,并展示不同颜色. 本文介绍了默认设置的缺陷,以及需要用到的基础知识,最后介绍了更改命令行提示符格 ...

随机推荐

  1. if结构和逻辑运算符

    一 :if选择结构 语法结构: 01.单个if if(表达式){ 如果满足表达式 则执行的代码 } 02.if(表达式) else if(表达式){ 如果满足表达式 则执行的代码 }else{ 不满足 ...

  2. 关于在Silverlight中添加图片的问题

    在Silverlight中添加图片,目前支持的Image格式有jpg和png两种,如何在目录中添加,有些什么技巧呢? <StackPanel Background="White&quo ...

  3. python list 和 tuple, dict 用于迭代代价

    #!/usr/bin/env python #-*- coding:utf-8 -*- import time start = time.time() for i in range(1000000): ...

  4. Java图形处理

    paint.repaint.update方法   Graphics类.     用于实现组件的画图.包括组件对象,坐标,区域,颜色,字体,画图模式等   Color类     用来封装颜色   Gra ...

  5. USTC《现代软件工程》春季学期——第一次个人作业:词频统计

    截止日期 2018年3月29日23:59 要求 1. 对源文件(*.txt,*.cpp,*.h,*.cs,*.html,*.js,*.java,*.py,*.php等,文件夹内的所有文件)统计字符数. ...

  6. C++中的四种类型转换

    //1.常见的类型转换,使用static_cast float f = 1.234; int i =static_cast<int>(f);//等价于 int i = (int)f; // ...

  7. poj 1129 搜索

    Channel Allocation Time Limit: 1000 MS Memory Limit: 10000 KB 64-bit integer IO format: %I64d , %I64 ...

  8. OS基础:动态链接库(一)

    动态链接库(一) 1.新建文件夹,命名lpt 2.用vc6.0建立一个空工程(Win 32 Dynamic-Link Library),名称:lptDll1 3.新建C++文件,命名:lptDll1: ...

  9. 纸壳CMS主题增强,支持主题中加入模板

    背景 在之前,纸壳CMS的主题仅仅只是CSS样式,并不支持在主题下使用模板来构建不同的HTML结构.现在我们对主题功能做了增强,可以在主题下添加各自的模板,这样在制作主题时,就会更加自由.不仅如此,新 ...

  10. win10 开机背景图

    地址 C:\Users\*\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalSta ...