如果你使用Mac进行开发,那么Terminal.app应该是你使用非常频繁的app了。初体验Terminal时你可能觉得单调乏味,阅读密密麻麻的内容也很费劲。但是如果你跟着我一起配置它,就会发现你平时觉得繁琐,不方便的地方其实都可以被完美解决,并且颜值也高了许多。

我们准备这样改造Terminal

  1. 修改Terminal的Profile: 让Terminal配色更美观
  2. 安装oh-my-zsh: 将Terminal的shell从bash改成更强大的zsh
  3. 安装oh-my-zsh主题: 美化oh-my-zsh
  4. 安装oh-my-zsh必备插件: 让Terminal具有更高级和便利的功能

准备工作

建议先安装homebrew, 方便后续工具安装:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

如果你的macOS版本早于Catalina,你需要手动安装zsh:

# 安装 zsh
brew install zsh
# 设置zsh为你的默认shell
chsh -s /usr/local/bin/zsh

修改Terminal Profile 主题设置

  1. 在GitHub的osx-terminal-theme项目主页里寻找你喜欢的主题
  2. 在schemes目录里找到对应的主题文件并双击安装到Terminal, 设置为默认

如果您觉得我的主题颜色不错,可以试试我的主题配置: https://gist.github.com/tonyxu-io/6b845cb1a53622eb4f1ce4063365e427

安装oh-my-zsh

Oh My Zsh 是一个令人愉快的、开源的、社区驱动的管理zsh配置的框架。它为我们带来了数千个有用的功能、助手、插件、主题,和其他一些令你惊叹的功能…

安装oh-my-zsh:

sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

安装oh-my-zsh主题

内置主题列表

oh-my-zsh提供一批内置主题,可以直接设置使用

  1. 在内置主题列表寻找你你喜欢的主题: https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
  2. ~/.zshrc配置文件里设置ZSH_THEME为你的主题名称
  3. 激活设置source ~/.zshrc

第三方主题列表

许多第三方也开发了供oh-my-zsh使用的主题,可以去第三方主题列表查看和安装:

https://github.com/robbyrussell/oh-my-zsh/wiki/External-themes

安装oh-my-zsh必备插件

oh-my-zsh有非常丰富的插件可供使用,下面列举一些必备插件,可以大幅提高生产力。

示例如下:

# ~/.zshrc:
plugins=(
git
extract
autojump
zsh-autosuggestions
zsh-syntax-highlighting
)

git

自带插件,可以使用缩写命令, 比如 gaa -> git add --all, 通过alias | grep git查看所有支持缩写命令

激活: 添加到~/.zshrc的plugins列表

extract

自带插件,不用再使用复杂的tar来解压压缩包了

激活: 添加 extract 到 ~/.zshrc 的plugins列表

autojump

使用j命令直接快速进入某个目录, 比如 j Downloads -> cd ~/Downloads

安装: brew install autojump

激活: 添加 autojump 至 ~/.zshrc 配置文件的插件列表。

zsh-syntax-highlighting

命令高亮插件,命令不再只是同一个颜色了

安装: git clone https://github.com/zsh-users/zsh-syntax-highlighting ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

激活: 添加 zsh-syntax-highlighting 至 ~/.zshrc 配置文件的插件列表。

zsh-autosuggestions

输入时按右方向键→自动补全命令

安装: git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

激活: 添加 zsh-autosuggestions 至 ~/.zshrc 配置文件的插件列表。

我自己的~/.zshrc配置

# Path to your oh-my-zsh installation.
export ZSH=/Users/tonxu/.oh-my-zsh # theme
ZSH_THEME="robbyrussell" # plugins
plugins=(
git
extract
autojump
zsh-autosuggestions
zsh-syntax-highlighting
) source $ZSH/oh-my-zsh.sh # set language
export LANG=en_US.UTF-8 # default editor
export EDITOR='vi' # ssh key path
export SSH_KEY_PATH="~/.ssh/rsa_id"

Terminal(oh-my-zsh) 美化的更多相关文章

  1. 图文详解之ZSH美化你的终端CLI

    在这个博客中,我将介绍安装ITerm2,ZSH shell,“我的ZSH”,主题,ITerm2配色方案,“我的ZSH”插件,并启用“连线”支持,以帮助创建一个美丽而强大的终端. 如果你想让你的常规Ba ...

  2. 一文搞定 Windows Terminal 设置与 zsh 安装 (非WSL)

    为 Windows Terminal 添加标签页 添加 Anaconda 标签页 在settings.json文件中的list列表中添加设置项: { // Make changes here to t ...

  3. Env:zsh和fish安装和使用

    zsh优势兼容bash, 方便git管理,但是有时候切换速度较慢,特别遇到git仓库目录 fish优势速度较快,路径提示也不错,但是和bash不兼容 1. zsh 首先,可以通过cat /etc/sh ...

  4. ubuntu-18.04 安装zsh的方法步骤

    zsh是一款跨平台的轻量级的终端,功能十分强大,会极大地提升你的工作效率.安装指南: ➜ ~ sudo apt-get install zsh ➜ ~ zsh --version #确认是否安装成功 ...

  5. Android Gradle 技巧之二: 最爱命令行

    命令行 很多做 Android 开发不久的同学,习惯于使用图形界面,对命令行操作很陌生甚至恐惧.遇到 AS 运行错误,束手无策.AS 为了确保易用性,也在 UI 界面上屏蔽了很多命令行运行的细节,导致 ...

  6. Practical Node.js (2018版) 第10章:Getting Node.js Apps Production Ready

    Getting Node.js Apps Production Ready 部署程序需要知道的方面: Environment variables Express.js in production So ...

  7. macOS Java安装与配置

    运行环境: macOS Hight Sierra(Version 10.13.6) Terminal(oh my zsh) 下载安装JRE Download URL 下载安装JDK Download ...

  8. wsl笔记

    目录 环境 修改更新源 新建用户 设置超级用户 环境变量 zsh美化终端 设zsh为默认shell 环境变量PATH 开启 ssh 远程连接 apt命令与问题 windows 和 wsl 互相访问文件 ...

  9. VS Code的安装与配置

    VS Code的安装与配置 Visual Studio Code(VS Code)是微软旗下的一个开源文本编辑器,支持Windows.macOS.Linux操作系统.数量众多.种类多样的插件极大提高了 ...

  10. 【iTerm2】美化你的Terminal 赠佛祖像

    我们开发就是喜欢各种酷炫的东西,对于有洁癖的我,连命令行都不放过了 先上图看效果,命令行显示高亮部分 实现过程: 第一步:.bash_prompt脚本 # ~/.bash_prompt # This  ...

随机推荐

  1. 从零教你使用MindStudio进行Pytorch离线推理全流程

    摘要:MindStudio的是一套基于华为自研昇腾AI处理器开发的AI全栈开发工具平台,该IDE上功能很多,涵盖面广,可以进行包括网络模型训练.移植.应用开发.推理运行及自定义算子开发等多种任务. 本 ...

  2. Ros入门21讲

    一.ROS是什么? ROS=通信机制+开发工具+应用功能+生态系统 目的:提高机器人研发中的软件复用率. 1.ROS中的通信机制 松耦合分布式通信: 注意:什么是耦合.紧耦合.松耦合? 1.1 耦合 ...

  3. Java中的引用概念

    Java对对象和基本的数据类型的处理是不一样的.和C语言一样,当把Java的基本数据类型(如int,char,double等)作为入口参数传给函数体的时候,传入的参数在函数体内部变成了局部变量,这个局 ...

  4. Jmeter中的JSON提取器用法

    一.使用前提 一般来说JSON提取器只适用于响应结果中返回的是json数据 二.需求 在下一个接口调用上一个接口的数据,如:请求1返回的结果,处理以后作为请求2的参数使用. 首先需要下载JSON Ex ...

  5. 进阶:spring-bean生命周期流程

    Bean的生成过程 主要流程图 1. 生成BeanDefinition Spring启动的时候会进行扫描,会先调用org.springframework.context.annotation.Clas ...

  6. 【java8新特性】02:常见的函数式接口

    Jdk8提供的函数式接口都在java.util.function包下,Jdk8的函数式类型的接口都有@FunctionInterface注解所标注,但实际上即使没有该注解标注的有且只有一个抽象方法的接 ...

  7. Elasticsearch: Cerebro 用户界面介绍

  8. 使用logstash同步Mysql数据表到ES的一点感悟

    针对单独一个数据表而言,大致可以分如下两种情况: 1.该数据表中有一个根据当前时间戳更新的字段,此时监控的是这个时间戳字段 具体可以看这个文章:https://www.cnblogs.com/sand ...

  9. vue-router query和params 传参和接收参数

    1.params 方式传递和接收参数 //传参 this.$router.push({ name: 'checkDetailInfo', params:{ fkdNum:fkdNum, jyayStr ...

  10. [题解] Atcoder Regular Contest ARC 147 A B C D E 题解

    点我看题 A - Max Mod Min 非常诈骗.一开始以为要观察什么神奇的性质,后来发现直接模拟就行了.可以证明总操作次数是\(O(nlog a_i)\)的.具体就是,每次操作都会有一个数a被b取 ...