如果你使用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. CF-1684C - Column Swapping

    Problem - 1684C - Codeforces 题意: 现在有一个n*m的棋盘,每个棋子有一个值,你可以交换两列棋盘的棋子位置,使得每一行的棋子从左到右为非递减. 题解: 只需要判断一行不满 ...

  2. BI如何实现用户身份集成自定义安全程序开发

    统一身份认证是整个 IT 架构的最基本的组成部分,而账号则是实现统一身份认证的基础.做好账号的规划和设计直接决定着企业整个信息系统建设的便利与难易程度,决定着系统能否足够敏捷和快速赋能,也决定了在数字 ...

  3. 至少要几个砝码,可以称出 1g ~ 40g 重量

    请点赞关注,你的支持对我意义重大. Hi,我是小彭.本文已收录到 GitHub · AndroidFamily 中.这里有 Android 进阶成长知识体系,有志同道合的朋友,关注公众号 [彭旭锐] ...

  4. Linux安装Minio

    Linux安装Minio 一.安装包方式安装 1.下载minio 1.1 手动下载:https://docs.min.io/docs/minio-quickstart-guide.html ​ 访问上 ...

  5. MQ的消息丢失/重复/积压的问题解决

    在我们实际的开发过程中,我们肯定会用到MQ中间件,常见的MQ中间件有kafka,RabbitMQ,RocketMQ.在使用的过程中,我们必须要考虑这样一个问题,在使用MQ的时候,我们怎么确保消息100 ...

  6. 使用 Shell 命令 分析服务器日志

    文章转载自:https://mp.weixin.qq.com/s/z2qF571m4JSSVi59D7V71g 1.查看有多少个IP访问: awk '{print $1}' log_file|sort ...

  7. python csv写入多列

    import csv import os def main(): current_dir = os.path.abspath('.') file_name = os.path.join(current ...

  8. 如何通过 Java 代码隐藏 Word 文档中的指定段落

    在编辑Word文档时,我们有时需要将一些重要信息保密. 因此,可以隐藏它们以确保机密性. 在本文中,将向您介绍如何通过 Java 程序中的代码隐藏 Word 文档中的特定段落.下面是我整理的具体步骤, ...

  9. 矩阵顺时针打印(C++)(? 为什么不能AC,9度1391)

    #include <iostream> #include <fstream> using namespace std; int a[1000][1000]; void prin ...

  10. 洛谷P3690 (动态树模板)

    一位大佬写的代码.(加上我自己的一些习惯性写法) 存个模板. 1 #include<bits/stdc++.h> 2 using namespace std; 3 const int N= ...