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

如果你想让你的常规Bash终端功能强大,请看看我之前的博客:“ Jazz Up Your Bash Terminal ”。但ZSH在这个博客中解释的是更强大的东西。

摘要:

我们将涉及很多事情。这可能令人困惑,所以这里是我们将要做的总结。

  1. 安装ITerm2 - 这是默认终端的更好替代方案
  2. 安装最新的ZSH shell - 这比常规的bash shell更强大。我们将切换ITerm2以使用ZSH shell。
  3. 安装“Oh My ZSH” - 这是一个CLI工具,可以轻松配置ZSH并向ZSH添加主题和插件
  4. 使用“Oh My ZSH”添加两种类型的主题 - 一些主题需要额外的步骤,因此我们将涵盖两者
  5. 安装不同的ITerm2方案 - 这些只是UI的颜色方案
  6. 使用“Oh My ZSH”添加两个不同的插件,以提高工作效率
  7. 启用“连字”支持,这样当你写一个箭头=>时,它就像一个真正的箭头→
 

步骤1-安装ITerm2

许多程序员喜欢ITerm2而不是默认终端。它类似于终端,但它有很多自己的功能。它当然可以在其中运行ZSH,Bash和其他shell。

以下视频显示了第2项(v3)的一些新功能。

 
 

对于这个博客,我们将使用ITerm2。当我提到“终端”时,我指的是ITerm2。虽然终端或ITerm2的步骤相同。

步骤2-将Shell更改为ZSH

以下视频显示了为什么ZSH优于bash shell。

 

选项1 - 使用Mac自己的ZSH:

Mac带有ZSH开箱即用,所以我们不需要安装它。但是,有时它是ZSH的旧版本。通常它位于/ bin / zsh。要使用它,我们需要做的就是更改shell(chsh)。

  1. 打开终端(或ITerm2)并键入以下命令。
$ chsh -s $(which zsh)

2.输入密码,它将在注销和登录时更改shell。

3. 注销并重新登录

4.要测试,请打开终端并键入以下内容,它应该说zsh。

$ echo $0 
zsh //应该返回zsh

选项2-安装Homebrew并通过Homebrew安装最新的ZSH

这个选项在用户中很常见,因为有些插件只能使用最新的ZSH。

简单地说,Homebrew是各种软件的命令行安装程序。我们先安装一下。

  1. 通过运行以下命令安装Homebrew。
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2.如果您获得Xcode命令行工具错误,则表示您尚未安装Xcode的CLI工具。如果您没有收到错误,可以跳过此步骤,因为您已经安装了它。

XCode Developer CLI工具由操纵核心OSX功能的各种应用程序使用。因此,请确保通过运行以下命令来安装Xcode CLI工具。

$ xcode-select —-install

注意:上面的命令打开Mac的安装程序并安装XCode Developer CLI工具。如果它不起作用,请尝试xcode-select -r重置。

3.通过Homebrew安装ZSH

运行以下命令以安装ZSH。它安装在/usr/local/bin/zsh PS:Mac的默认ZSH是/bin/zsh

brew install zsh

4.使用自制软件版本的ZSH

运行以下命令。系统将提示您输入Mac的密码。

chsh -s /usr/local/bin/zsh

5.注销并重新登录。

6.测试我们是否使用ZSH和正确的ZSH

$ echo $0
zsh //correct
$ which zsh
/usr/local/bin/zsh //correct

第3步“哦,我的ZSH”

 

“哦,我的ZSH”是一个在ZSH上运行的插件。它为ZSH(〜/ .zhrc文件)提供默认配置,还提供主题和更多功能。

据我所知,大多数使用ZSH的高级用户也使用“Oh My ZSH”。

  1. 安装“哦我的ZSH”

运行以下命令安装“oh My ZSH”。

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

哦,我的ZSH已经安装好了

2.关闭并退出ITerm2并重新打开它。

它看起来应该如下所示。请注意,提示已更改,主题有点不同 - 这是“哦我的ZSH”为您操作。

 

初步哦我的ZSH主题

第4步 - 更改主题并安装字体

在这一步中,我们将添加两个不同的“Oh My ZSH”主题。“哦,我的ZSH”带来了大量的主题PS:但有些主题需要额外的步骤,如安装特定的字体等。

要设置主题,只需打开〜/ .zshrc文件(由“Oh My ZSH”创建)并更改主题,如下所示。

PS:.zshrc是ZSH shell的配置文件。不使用“Oh My ZSH”的人必须手动创建此文件并自行添加任何配置。“哦,我的ZSH”会自动创建此文件(如果该文件不存在),然后将其自己的一组配置添加到此文件中。

主题1 - 让我们添加一个名为“ Avit”的主题

  1. 打开.zshrc
$ open ~/.zshrc

2.将主题更改为“Avit”

您可以在这里浏览所有“Oh My ZSH”主题。要更改主题,只需将〜/ .zshrc文件中的ZSH_THEME值从robbyrussell更改为Avit。

 

3.更新ZSH配置

运行以下命令以更新配置。

$ source ~/.zhrc
 

您在Avit Theme中的命令提示符

4.更改背景颜色和字体大小

打开ITerm2>首选项>配置文件>颜色并将背景黑色更改为使用20%灰色,如下所示。

 

使用20%灰色背景

然后打开文本>更改字体并将大小更改为14pt。

 

将字体更改为14pt

 

一个干净漂亮的Iterm2与ZSH!

好的,让我们安装一个需要字体的不同主题。

主题2 - 安装“agnoster”哦我的ZSH主题

这是一个受欢迎的主题,因为它模拟了增强终端的Powerline Python应用程序。下图显示了它的外观。但是这个主题还需要我们安装Powerline主题。

 

agnoster哦我的ZSH主题

1.安装Powerline fonts

$ git clone https://github.com/powerline/fonts.git
$ cd fonts
$ ./install.sh

2.将主题更改为“agnoster”

$ open ~/.zshrc
Set ZSH_THEME="agnoster" and save the file

3.退出ITerm2并重新打开它。

4.设置电源线字体

您可以设置任何您喜欢的Powerline修补字体。所有字体都以“for Powerline”结尾。

打开ITerm2 > Preferences > Profiles > Text > Change Font并将其设置为具有“for Powerline”的内容。我选择“Meslo LG DZ for Powerline”字体。

 

Meslo LG DZ for Powerline Iterm2字体

注意 - 如果您对字体和主题感到困惑:主题是“Oh My ZSH”和ZSH shell,字体是Iterm2本身。

全部完成

此时您的终端应如下所示:

 

第5步 - 安装iTerm2“配色方案”(ITerm2主题)

iTerm2有很多华丽的配色方案。这些方案会更改前景色,背景色,光标颜色等。你可以在iTerm2-color-schemes Github repo 找到它们。

注意:这些只是ITerm2 UI的颜色方案,并不处理命令提示符的外观和感觉,如“Oh My ZSH”的主题(除了更改颜色)。

请按照以下步骤安装它们。

  1. 下载iTerm2-color-schemes作为zip文件并解压缩
  2. “Schemes”文件夹包含所有颜色方案文件 - 它们以 .itermcolors
  3. 打开 iTerm2 > Preferences > Profile > Colors > Color Presets > Import
  4. 在导入窗口中,导航到“Schemes”文件夹(从步骤2开始)
  5. 选择所有文件,以便一次导入所有颜色方案
  6. 只需选择您喜欢的颜色方案即可。

我最喜欢的是蝙蝠侠和Argonaut

 

蝙蝠侠Iterm2主题

Argonaut颜色方案如下所示:

 

Argonaut配色方案

步骤6-安装插件

插件为您的工作流程添加了更多功能。默认情况下“哦我的ZSH”已经有了“git”插件!这就是为什么你能够在早期截图中的提示中看到所有这些Git状态的原因。让我们再添一个来看看它是如何工作的。

注意:在本节中,我们将安装两个不同的插件来展示它们的工作方式。

插件1 - 添加语法突出显示插件

Syntax Highlighting插件为您键入的命令添加了漂亮的颜色,如下所示。

 
  1. 克隆zsh-syntax-highlighting插件的repo并将其复制到“Oh My ZSH”插件目录。
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

2. ~/.zshrc通过zsh-syntax-highlighting在插件部分添加` 来激活插件,如下所示。

 

在插件部分的新行中添加一个新插件

3.重新读取zshrc配置

source ~/.zshrc

插件2 - 添加ZSH-AutoSuggestion插件

此插件自动建议任何以前的命令。非常方便!要选择完成,只需按→键。

 
  1. 安装插件
git clone https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions

PS: ZSH_CUSTOM points to ~/.oh-my-zsh/custom

2.打开~/.zshrc并添加zsh-autosuggestions

 

第7步 - 使用Ligature支持

有各种各样的字体可以帮助使操作员小于,等于,右箭头,不等于等等,看起来很漂亮。例如,每次键入:=>时,它变为:→。

 

要使用它,我们需要支持连字的字体。我们还需要在ITerm2中启用它。FiraCode就是这样一种字体。按照步骤安装和启用连字。

  1. 下载FiraCode仓库并解压缩zip文件(或克隆它)
  2. 打开dstr > ttf文件夹并双击所有*.ttf文件,然后选择“安装字体”按钮以安装每个字体变体。
  3. 导航 ITerm2 | Preferences | Profiles | Text
  4. 选择Use Ligatures复选框
  5. 单击Change Font并选择Fira Code Regular字体
 

摘要

我们已经在这个博客中介绍了很多,从安装最新的ZSH开始,通过Homebrew,Oh My ZSH,插件,主题,为FiraCode字体启用“连线”。

图文详解之ZSH美化你的终端CLI的更多相关文章

  1. HTML标签----图文详解

    国庆节快乐,还在加班的童鞋,良辰必有重谢! 本文主要内容 头标签 排版标签:<p>     <br>     <hr>     <center>     ...

  2. CentOS 6.3下Samba服务器的安装与配置方法(图文详解)

    这篇文章主要介绍了CentOS 6.3下Samba服务器的安装与配置方法(图文详解),需要的朋友可以参考下   一.简介  Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件, ...

  3. Cocos2d-x win7 + vs2010 配置图文详解

    Cocos2d-x win7 + vs2010 配置图文详解 下载最新版的cocos2d-x.打开浏览器,输入cocos2d-x.org,然后选择Download,本教程写作时最新版本为cocos2d ...

  4. zookeeper的安装(图文详解。。。来点击哦!)

    zookeeper的安装(图文详解...来点击哦!) 一.服务器的配置 三台服务器: 192.168.83.133   sunshine 192.168.83.134   sunshineMin 19 ...

  5. Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!)

    Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!) 一.JDK的安装 安装位置都在同一位置(/usr/tools/jdk1.8.0_73) jdk的安装在克隆三台机器的时候可以提前安装 ...

  6. Hadoop集群搭建安装过程(二)(图文详解---尽情点击!!!)

    Hadoop集群搭建安装过程(二)(配置SSH免密登录)(图文详解---尽情点击!!!) 一.配置ssh无密码访问 ®生成公钥密钥对 1.在每个节点上分别执行: ssh-keygen -t rsa(一 ...

  7. Linux虚拟机安装(CentOS 6.5,图文详解,需要自查)

    Linux虚拟机的安装(图文详解) 下篇会接续Hadoop集群安装(以此为基础) 一.安装准备 VMWorkstation.linux系统镜像(以下以CentOS6.5为例) 二.安装过程详解 关闭防 ...

  8. 分享我开发的网络电话Android手机APP正式版,图文详解及下载

    分享我开发的网络电话Android手机APP正式版,图文详解及下载 分享我开发的网络电话Android手机APP正式版 实时语音通讯,可广域网实时通讯,音质清晰流畅! 安装之后的运行效果: 第一次安装 ...

  9. 图文详解Unity3D中Material的Tiling和Offset是怎么回事

    图文详解Unity3D中Material的Tiling和Offset是怎么回事 Tiling和Offset概述 Tiling表示UV坐标的缩放倍数,Offset表示UV坐标的起始位置. 这样说当然是隔 ...

随机推荐

  1. 将root 当成arraylist放入数据sturts2 入门笔记

    刚启动idea 就报出错误 [-- ::,] Artifact -sturts2:war exploded: Error during artifact deployment. See server ...

  2. vue中怎么全局引入sass文件

    1.添加依赖 npm install sass-resources-loader --save-dev 2.修改build/utils.js scss: generateLoaders('sass') ...

  3. Forethought Future Cup - Elimination Round

    A:签到. #include<bits/stdc++.h> using namespace std; #define ll long long char getc(){char c=get ...

  4. ZuulFilter 执行顺序

    说明: 创建了两个Filter,分别是 PreFilter public class PreFilter extends ZuulFilter { public PreFilter() { super ...

  5. bzoj 1926: [Sdoi2010]粟粟的书架 (主席树+二分)

    链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1926 题面; 1926: [Sdoi2010]粟粟的书架 Time Limit: 30 Se ...

  6. 20165223《网络对抗技术》Exp0 Kali的安装

    (1)安装步骤 Kali官网,下载Kali Linux 64 bit版本,按照网上安装教程进行即可 我是直接拷贝了Kali的.vmx文件(Linux 64bit),在上学期已经安装好的VMware中可 ...

  7. 配置webpack.config.js中的文件

    webpack.config.js文件中,主要包括 entry:入口文件 output:出口文件 module:模块 plugins:插件 这几部分 1.基本配置 运行 webpack 这一命令可以将 ...

  8. Android activity创建三部曲

    1.新建类继承Activity或其子类,现在一般继承AppCompatActivity public class TestActivity extends AppCompatActivity { @O ...

  9. java 多线程 synchronized与lock的通信机制等问题,结合相应实例说明

    1. 利用多线程实现如下需求: 写两个线程,一个线程打印1~52,另一个线程打印A~Z,打印顺序是12A34B...5152Z: 2. 使用synchronized 实现 public class T ...

  10. RPC-dubbo基本使用

      22.本地存根 消费者通过创建实现一个服务接口的实例,可以在执行远程调用前拿到远程调用的代理实例,进而可以在远程调用前.后添加一些操作,在出现异常后进行一些容错处理. 这个使用场景,可以调用前作数 ...