zoukankan      html  css  js  c++  java
  • iTerm2 + oh-my-zsh 教程(7000字长文)

    之前写了一篇文章「适合程序员的 MacBook 配置」, 里面有介绍 iTerm2 + oh-my-zsh 打造炫酷终端,读者看到后,问我能不能出一个详细的教程,现在给安排上。

    对于长期使用终端和 Vim 的人来说,iTerm2 和 oh-my-zsh 就是两大神器。

    把 iTerm2 和 oh-my-zsh 配置好,不仅可以给自己打造一个舒适的开发环境,养养眼,还能大大的提升效率。

    不过在讲解具体的操作步骤之前,我们先了解先 iTerm2 和 oh-my-zsh 是什么?

    要不你一顿操作,都不知道自己在干嘛。

    在做什么之前要先了解是什么。

    在操作系统内核外有一层壳,而这层壳就是 shell,它是用户和操作系统交互的桥梁。

    这很好理解,shell 包住了系统,用户想要跟系统交互,就必须经过shell。

    后来,shell 还慢慢变成了内核与用户交互的脚本语言的总称。

    我们常见的 shell 有:bash、zsh、csh、ksh、ash 等等。

    Linux 下默认的是 bash ,macOS 在 Catalina 之前的版本默认也是 bash ,后面随着 zsh 越来越流行,macOS 开始将 zsh 作为默认的解释器了。

    但是默认的 zsh 配置有点烦,于是有个大牛在 Github 上制作了一个配置文件 oh-my-zsh ,从此免去了我们一顿复杂的配置,这也让 oh-my-zsh 成为了目前最流行的 zsh 配置。

    oh-my-zsh Github 地址:https://github.com/ohmyzsh/ohmyzsh/projects
    复制代码

    到这里,大家对 shell 和 oh-my-zsh 应该有了初步的了解。

    那 iTerm2 呢?

    shell 作为系统内核的壳,是一种抽象的概念,是一个解释器,但作为用户并不能很好的操作。

    于是有了终端这样的软件,macOS 系统的默认终端是 terminal,这些终端不再是抽象的概念,是一个可视化的软件,很方便用户操作。

    而 iTerm2 也是这样的一款软件。

    它们既可以让我们输入 shell 命令,也能反馈输出结果给我们看。

    好了,吹了一大堆,下面是具体的操作。

    1、 Vim 的基础操作

    对 Vim 操作进行初步的了解,下面会用到。

    就几个简单的操作命令:

    vim <file name>   打开文件
    i                         insert 编辑模式
    esc                     退出编辑模式
    shift+zz               保存并退出
    复制代码

    2、 安装 iTerm2

    iTerm2 的安装,直接在官网下载安装。

    官网地址: http://iterm2.com/downloads.html
    复制代码

    3、安装 oh-my-zsh

    要安装一个东西,肯定是先找官网啊。

    一手资料总比经过加工的二手资料更有价值。

     oh-my-zsh 的官网地址:https://ohmyz.sh/
    复制代码

    在官网中点击按钮「Install oh-my-zsh」,就可以看到如何安装了。

    安装 oh-my-zsh 的方式有两种,使用 curl 或 wget ,看你自己的环境和喜欢进行选择了。

    curl 安装方式:

    $ sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
    复制代码

    wget 安装方式:

    $ sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
    复制代码

    安装完成后会显示这样:

    4、修改默认的 shell

    安装完成之后,在 /bin 目录下会多出一个 zsh 的文件。

    你可以通过以下命令来查看:

    cat /etc/shells  
    复制代码

    注意,cat 后面是有个空格的。

    其次,macOS 在 Catalina 版本之前都是使用 dash 作为终端,

    如果你想修改为 zsh ,可以使用以下命令:

    chsh -s /bin/zsh
    复制代码

    当然,你后悔了,想改回原来的 dash ,同样使用上面的 chsh 命令就可以。

    chsh -s /bin/bash
    复制代码

    5、修改主题

    该装的软件都装完了,现在主要就是选择自己喜欢的风格了。

    那么有哪些主题风格可以选呢?

    可以通过下面的 Github 地址来查看。

    Github 地址:https://github.com/ohmyzsh/ohmyzsh/wiki/themes
    复制代码

    里面的主题非常多,各种各样的风格都有,看你个人的喜好了。

    比如有云,有闪电的可爱主题 cloud 。

    还有非常简洁的的 steeef。

    也有官方推荐的 ys 。

    选好了主题,下一步就是配置主题了,怎么配置呢?

    此刻你可以在 iterm2 中输入以下命令

    vim ~/.zshrc
    复制代码

    找到 ZSH_THEME 字段,可以看到 oh-my-zsh 的默认主题是 robbyrussell ,如果要做修改,具体操作如下:

    要在 Vim 里修改文件,要先按 i 进入编辑模式,把 ZSH_THEME的值修改为你喜欢的那个主题,修改完成之后按 esc (电脑最左上)退出编辑模式,最后 shift+zz 保存并退出。

    当然,你不太熟悉上面的操作,可以直接打开 .zshrc 的文件,然后用普通的编辑器直接修改那个 ZSH_THEME 的值,最后保存就好。

    上面介绍的都是 oh-my-zsh默认自带了一些默认主题,存放在 ~/.oh-my-zsh/themes 目录中。

    你可以在终端输入 cd ~/.oh-my-zsh/themes && ls 就可以观察到。

    除了这些自带的主题,还有很多很酷,很炫的定制主题。

    比如,powerlevel9k 。

    powerlevel9k 真的是一个很酷的东西。

    那么你想用这些主题要怎么操作呢?

    也很简单,比用自带的主题多了一步操作而已。

    就是先把主题给下载下来。

    用 powerlevel9k 为例,通过 git clone 下载到 oh-my-zsh 放置第三方主题的目录中。

    git clone https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k
    复制代码

    最后就跟上面的操作一样,打开配置文件,把主题设置进去。

    最后记得 source 一下。

    source ~/.zshrc
    复制代码

    6、安装 powerline 和 PowerFonts

    powerline 是 oh my zsh 依赖的一个插件。

    这个插件主要解决很多关于 oh my zsh 主题中的字体问题。

    当然,这个插件不一定要求装啊,如果你遇到有乱码问题,就需要装上了。

    为什么会出现乱码的情况呢?

    因为有些特殊的主题,有特殊的表情和符号。比如上面提到的 powerlevel9k。

    废话不多说了,直接上官网。

    官网地址:https://powerline.readthedocs.io/en/latest/installation.html
    复制代码

    如果你去看了 powerline 的官网,会发现 powerline 是用 python 写的,所以安装起来也很方便,只需要一条命令就好了。

    pip install powerline-status
    复制代码

    当然安装之前要确保你已经安装了 python 环境和 pip , python 环境一般 Mac 系统都会自带的,所以如果你在安装过程中遇到:

    zsh: command not found: pip。
    复制代码

    那就是 pip 没有安装了。

    你也可以通过命令来安装。

    sudo easy_install pip
    复制代码

    如果还有乱码,那是因为 PowerFonts 还没有安装。

    PowerFonts 是一个字体库,要安装字体库需要先把 git clone 到本地,然后执行源码中的 install.sh

    具体的流程如下:

    # git clone
    git clone https://github.com/powerline/fonts.git --depth=1
    # install
    cd fonts
    ./install.sh
    # clean-up a bit
    cd ..
    rm -rf fonts
    复制代码

    安装完成之后,就可以设置 iTerm2 的字体,具体的操作是 iTerm2 -> Preferences -> Profiles -> Text,在 Font 区域选中 Change Font,看个人喜欢,选择字体,字体名字带有 for powerline 的就不会乱码了。

    7、色彩预设

    itme2 支持各种色彩主题。

    可以从官网那里看到各种介绍,这里就不再做详细的介绍了,主要还是讲下详细的步骤。

    官网地址:https://iterm2colorschemes.com/
    复制代码

    你可以先把色彩主题文件下载下来。

    在官网中直接点击图标下载

    当然,也可以通过运行命令来下载

    git clone https://github.com/mbadolato/iTerm2-Color-Schemes ~/Downloads/itemcolor
    复制代码

    注意,这里的 ~/Downloads/itemcolor 是指放置下载文件的目录地址,可自行修改。

    我是通过官网直接下载的,下载完成后,可以看到有很多文件夹,这里主要关注 schemesscreenshots 就好。

    schemes 文件夹里主要是放置色彩主题文件的。

    screenshots 则是各种色彩主题预设的预览图。

    大家可以根据个人的喜好选自己喜欢的色彩主题,然后在 iterm2 中选择 Preference -> Profiles -> Colors ,导入色彩主题,并勾上就可以。

    8、命令补全

    zsh-autosuggestion 是一个 zsh 命令补全,提示的插件。

    具体的流程如下:

    cd ~/.oh-my-zsh/custom/plugins/
    git clone https://github.com/zsh-users/zsh-autosuggestions
    vi ~/.zshrc
    复制代码

    然后找到 pluginszsh-autosuggestions 加上就行。

    当然你也可以直接打开 .zshrc 这个文件,找到 pluginszsh-autosuggestions 加上。

    记得保存。

    安装完成后,具体的效果如下,只要打 op ,它就会自动提示我之前打过的命令 open ~/.zshrc,非常方便。

    像这种插件还有很多,比如 zsh-syntax-highlighting 语法高亮的插件,都非常拥有,这里就不一一介绍了。

    9、 iTerm2 的其他优化设置

    设置下快捷键,比如你可以通过 keys 那里设置快速影藏和显示 iterm2 的快捷键。

    设置背景图片

    也可以任意设置背景透明度和模糊度, 就看你的爱好进行装逼了。


    作者:两点水
    链接:https://juejin.im/post/6894432073491152910
    来源:掘金
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 相关阅读:
    js replaceChild
    js hasChildNodes()指针对元素节点子节点多个的话 true
    js:获取节点相关的 nodeName,nodeType,nodeValue
    js 取值 getElementsByTagName,getElementsByName
    小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-5.HttpClient4.x工具获取使用
    小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-4.微信授权一键登录开发之授权URL获取
    小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-3.微信Oauth2.0交互流程讲解
    小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-2.微信扫一扫功能开发前期准备
    小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-1.数据信息安全--微信授权一键登录功能介绍
    小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_4-3.登录检验JWT实战之封装通用方法
  • 原文地址:https://www.cnblogs.com/lyck/p/13968615.html
Copyright © 2011-2022 走看看