热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

默认终端+iTerm2+oh_my_zsh+agnostertheme+Powerlinefonts+solarized打造macOS炫酷终端

先上图iTerm2效果macOS自带终端效果iTerm2iTerm是一个非常好的终端模拟器,官网地址:http:iterm2.com,

先上图

iTerm2效果

macOS自带终端效果

 

 

iTerm2

iTerm是一个非常好的终端模拟器,官网地址:http://iterm2.com/ ,下载安装之。

 


oh_my_zsh

查看系统支持的sh环境

cat /etc/shells

macOS已经自带zsh ,但是它不是默认shell

# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells./bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh

输入如下命令更改zsh为默认shell

chsh -s /bin/zsh

echo $SHELL查看是否切换成功, 返回 /bin/zsh 就对了。

echo $SHELL
/bin/zsh

输入如下命令安装oh_my_zsh

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

 


Solarized配色方案

因为下面的字体需要在新的配色主题中更改,所以需要先安装Solarized配色方案。

git clone https://github.com/altercation/solarized

iTerm2的设置:

进入目录solarized/iterm2-colors-solarized,双击Solarized Dark.itermcolors、Solarized Light.itermcolors导入主题(可能会提示安全性问题,进入系统偏好设置-安全性与隐私-通用 里面确认安装);

iTerm2设置->Profiles->Colors->Color Presets…,在下拉菜单中选择Solarized Dark

macOS自带终端设置:

进入目录solarized/osx-terminal.app-colors-solarized/xterm-256color , 双击运行 Solarized Dark xterm-256color.terminal 和 Solarized Light xterm-256color.terminal 进行安装(可能会提示安全性问题,进入系统偏好设置-安全性与隐私-通用 里面确认安装)。

然后打开 终端 - 偏好设置 - 描述文件,双击 Solarized Dark xterm-256color ,并且点击右下方的“默认”,设置它为默认配色方案。

注意:我这里默认情况下字符背景不好看(上面的图是我修改过的),需要更改如下图中的两个颜色,点击它使用吸管工具,拾取iTerm2的相应位置颜色即可。

 

Powerline字体

为了显示agnoster主题提示符里的三角形,需要Powerline字体库的支持。使用pip安装

pip install powerline-status

如果没有安装pip,那么先安装pip

sudo easy_install pip

找个位置新建一个font文件夹

mkdir powerlinefonts
cd powerlinefonts

下载字体并运行install.sh安装

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

设置iTerm2字体

进入 iTerm2 - preferences - Profiles -Text - Font,选择其中一种Powerline字体,例如 18pt Meslo LG S DZ Regular for Powerline

设置自带终端字体:

进入 终端 - 偏好设置 - 描述文件 - 文本,选择一个Powerline字体,同上。

 

agnoster主题 

git clone 下载并安装

 

git clone https://github.com/fcamblor/oh-my-zsh-agnoster-fcamblor
cd oh-my-zsh-agnoster-fcamblor
./install

编辑~/.zshrc ,注释掉Zsh_THEME="robbyrussell",添加一行ZSH_THEME="agnoster", 注意 ZSH_THEME需要全部大写,虽然原先默认的那一行是Zsh。这个坑浪费了我一个小时。

#Zsh_THEME="robbyrussell"
ZSH_THEME="agnoster"

 


增加指令高亮效果 zsh-syntax-highlighting 

cd ~/.oh-my-zsh/custom/plugins/
git clone https://github.com/zsh-users/zsh-syntax-highlighting

编辑~/.zshrc ,添加

source ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
plugins=(zsh-syntax-highlighting)

 


缩短前缀

 每行前面的xxx@xxxxx太长,只需要编辑~/.zshrc,添加如下一行即可(记住 DEFAULT_USER 全大写),如此设置就取消前缀。

DEFAULT_USER="$USER"

如果你想仅显示当前用户名,可以这样设置:

prompt_context() {if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; thenprompt_segment black default "%(!.%{%F{yellow}%}.)$USER"fi
}

 

最后使zshrc的profile生效:

source ~/.zshrc

 

其他相关技巧


  1. 如果想切换回原来的bash:chsh -s /bin/bash

  2. 更新oh_my_zsh,在命令行输入如下命令:upgrade_oh_my_zsh

  3. 卸载oh_my_zsh,在命令行输入如下命令:uninstall_oh_my_zsh

  4. 执行指令pip install powerline-status出错解决方法:需要下载苹果官方的command line tools。

 


推荐阅读
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • Docker安全策略与管理
    本文探讨了Docker的安全挑战、核心安全特性及其管理策略,旨在帮助读者深入理解Docker安全机制,并提供实用的安全管理建议。 ... [详细]
  • 从理想主义者的内心深处萌发的技术信仰,推动了云原生技术在全球范围内的快速发展。本文将带你深入了解阿里巴巴在开源领域的贡献与成就。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中安装 Python 3.7 的步骤,包括编译工具的安装、Python 3.7 源码的下载与编译、软链接的创建以及常见错误的处理方法。 ... [详细]
  • 本文详细介绍了如何在Oracle VM VirtualBox中实现主机与虚拟机之间的数据交换,包括安装Guest Additions增强功能,以及如何利用这些功能进行文件传输、屏幕调整等操作。 ... [详细]
  • 如何在Django框架中实现对象关系映射(ORM)
    本文介绍了Django框架中对象关系映射(ORM)的实现方式,通过ORM,开发者可以通过定义模型类来间接操作数据库表,从而简化数据库操作流程,提高开发效率。 ... [详细]
  • CRZ.im:一款极简的网址缩短服务及其安装指南
    本文介绍了一款名为CRZ.im的极简网址缩短服务,该服务采用PHP和SQLite开发,体积小巧,约10KB。本文还提供了详细的安装步骤,包括环境配置、域名解析及Nginx伪静态设置。 ... [详细]
  • 调试利器SSH隧道
    在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到 ... [详细]
  • Web动态服务器Python基本实现
    Web动态服务器Python基本实现 ... [详细]
  • 本文详细介绍了如何正确设置Shadowsocks公共代理,包括调整超时设置、检查系统限制、防止滥用及遵守DMCA法规等关键步骤。 ... [详细]
  • 深入解析WebP图片格式及其应用
    随着互联网技术的发展,无论是PC端还是移动端,图片数据流量占据了很大比重。尤其在高分辨率屏幕普及的背景下,如何在保证图片质量的同时减少文件大小,成为了亟待解决的问题。本文将详细介绍Google推出的WebP图片格式,探讨其在实际项目中的应用及优化策略。 ... [详细]
  • 探索百度WebFE团队打造的强大HTML5上传插件Web Uploader
    本文将详细介绍由百度WebFE团队开发的Web Uploader,这是一款集成了HTML5与Flash技术的上传组件,以其卓越的用户体验和强大的功能著称。 ... [详细]
  • 【小白学习C++ 教程】二十三、如何安装和使用 C++ 标准库
    【小白学习C++ 教程】二十三、如何安装和使用 C++ 标准库 ... [详细]
  • 在探讨如何在Android的TextView中实现多彩文字与多样化字体效果时,本文提供了一种不依赖HTML技术的解决方案。通过使用SpannableString和相关的Span类,开发者可以轻松地为文本添加丰富的样式和颜色,从而提升用户体验。文章详细介绍了实现过程中的关键步骤和技术细节,帮助开发者快速掌握这一技巧。 ... [详细]
author-avatar
碧桃玉李
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有