终端主题_再见 XShell 和 ITerm 2,是时候拥抱全平台高颜值终端工具 Hyper 了!
点击上方“涛哥聊Python”,选择“星标”公众号
重磅干货,第一时间送达
转自:运维之美
不论是 macOS
还是 Windows
下,我们都不推荐使用系统自带终端。无论是可拓展性还是可编程性都被「系统自带」这样的特点限制。特别是 Windows
下的万恶之源「小黑框」,在 9012 年真的是不太好用哟!
今天我们将给大家介绍一款基于 Electron
的全平台高颜值的终端工具 Hyper
。Hyper
支持丰富的主题和插件功能,通过强大的插件系统提供了非常丰富的自定义选项,可谓是颜值和易用并存的神器。
官网地址:https://hyper.is
下面先放一张配置好的预览效果图,让大家先睹为快。

由于 Hyper
是基于 Electron
的,所以它的插件、主题等等可拓展性都非常强大。几行简单的 Javascript
、HTML
、 CSS
代码,你就可以定制自己的插件。
Electron
是一个利用最新Web
技术栈搭建跨平台应用的项目,比如:GitHub
出品的代码编辑器Atom
和微软出品的VSCode
都是基于Electron
的。
安装 Hyper
Hyper
的安装非常简单,只需要在官网下载对应平台二进制安装包后,直接安装就可以运行。

如果你是 macOS
平台,你还可以通过 Homebrew
命令来快速完成安装。
$ brew cask install hyper
Hyper 主题安装
Hyper
做为一个高颜值终端工具,自然就少不了对主题的支持。官方首页推荐了 4 种不同颜色的主题,你可以在官方主题地址 https://hyper.is/themes
直接查看并安装。
当然,如果上面官方推荐的主题满足不了你,你也可以去在上面的主题地址中的 NEWEST
页签找到更多主题,或者是去 GitHub
搜索更多好看的主题。
善用 Hyper 插件
Hyper
本身是支持插件系统的,在安装扩展插件前,你需要先安装 Hyper
命令行程序。你可以点击菜单,选择 Plugin
选项,然后点击 Install Hyper CLI command in PATH
。
Hyper
命令行程序安装完成后,Hyper
插件安装就十分简单了,只需要打开 Hyper
之后一行代码就可以搞定:
$ hyper i verminal
这样就安装了 verminal
这个插件。
Hyper
官方也在首页给大家推荐了 4 个比较易用的插件,推荐大家全部都安装试试。
1. hypercwd
它可以让你的终端在新建标签页时,保持上一个终端的目录地址。其安装命令是:
$ hyper i hypercwd
2. hyper-search
它可以让你搜索整个终端的所有文本内容。其安装命令是:
$ hyper i hyper-search
3. hyper-pane
该插件用来增强窗口导航,对于支持多个页签的软件来说这是个利器。其安装命令是:
$ hyper i hyper-pane
4. hyperpower
这是一个让你的终端变得更加绚丽的插件,类似于 Atom
里面的一个叫做 activate-power-mode
的插件。当然这么炫酷的效果是不是会影响你的工作呢,还是要视个人情而定。其安装命令是:
$ hyper i hyperpower
如果你需要更多的插件和主题,你可以在官方网站以下地址中找到。
Hyper
的官方主题地址:https://hyper.is/themes
Hyper
的官方插件地址:https://hyper.is/plugins
除了,官方提供的主题和插件。目前还有一个社区驱动的 awesome-hyper
项目,里面有着更多开源的 Hyper
终端插件、主题等等。如果你对不同的主题和插件有兴趣,可以去这个项目里进行探索哟!
- 项目地址:https://github.com/bnb/awesome-hyper
整合 ZSH
通常 Linux
服务器上面默认使用的 SHELL
是 Bash
。其实除了 Bash
之外,还有很多其他的 SHELL
程序,比如:ZSH
、CSH
、Fish
等等。
这里我们将介绍的 ZSH
是我认为在类 Unix
系统下最优雅的 Shell
程序 。虽然 ZSH
设置复杂,但得益于开源社区,我们可以使用 Oh-My-ZSH
这个神器来很方便的管理和配置 ZSH
。
安装 ZSH 和 Oh-My-ZSH
在使用 Oh-My-ZSH
之前,你需要先安装 ZSH
。各个平台安装的方式可能不一样,这里就只简单说下比较常用的 Centos
和 Ubuntu
系统下的安装方法。
# Redhat / Centos$ yum install zsh# Debian / Ubuntu$ apt-get install zsh
安装好 ZSH
后,就可以安装 Oh-My-ZSH
了。Oh-My-ZSH
的安装也是非常简单的,你只需要用下面两条指令中的任意一条就可完成安装。
# 通过 curl 安装$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"# 通过 wget 安装$ sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
安装完成后,你就会发现你的终端 SHELL
变成了 ZSH
。你还可以通过命令 chsh -s /bin/zsh
将 ZSH
设置为默认的 Shell
。
配置主题
Oh-My-ZSH
默认也附带了大量好看的主题,你可以利用它们对终端界面做进一步增强和美化。Oh-My-ZSH
默认的主题存放在 ~/.oh-my-zsh/themes
目录中。
$ ls ~/.oh-my-zsh/themes3den.zsh-theme essembeh.zsh-theme junkfood.zsh-theme rgm.zsh-themeSoliah.zsh-theme evan.zsh-theme kafeitu.zsh-theme risto.zsh-themeadben.zsh-theme example.zsh-theme kardan.zsh-theme rixius.zsh-themeaf-magic.zsh-theme fino-time.zsh-theme kennethreitz.zsh-theme rkj-repos.zsh-themeafowler.zsh-theme fino.zsh-theme kiwi.zsh-theme rkj.zsh-themeagnoster.zsh-theme fishy.zsh-theme kolo.zsh-theme robbyrussell.zsh-themealanpeabody.zsh-theme flazz.zsh-theme kphoen.zsh-theme sammy.zsh-themeamuse.zsh-theme fletcherm.zsh-theme lambda.zsh-theme simonoff.zsh-themeapple.zsh-theme fox.zsh-theme linuxonly.zsh-theme simple.zsh-themearrow.zsh-theme frisk.zsh-theme lukerandall.zsh-theme skaro.zsh-theme....
对于主题的启用,你只需编辑 ZSH
配置文件 ~/.zshrc
。并在 ZSH_THEME
项中直接修改主题名称为要启用的主题名称即可。
ZSH_THEME="agnoster"
注意:如果你安装的主题无法显示预期效果,那是因为响应的主题的系统字体没有安装。这时,你需要正确的安装了
Powerline
字体才会显示出来。
Powerline
项目地址:https://github.com/powerline/fonts
Powerline
安装教程:https://powerline.readthedocs.io/en/latest/installation.html#fonts-installation
如果这些默认主题还不能满足你的需要,你还可以到下面这些地址中找到更多的 ZSH
主题。
https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
https://github.com/robbyrussell/oh-my-zsh/wiki/External-themes
https://github.com/unixorn/awesome-zsh-plugins#themes
配置插件
Oh-My-ZSH
之所以强大,其中一个原因就是支持诸多功能强大的插件,Oh-My-ZSH
默认自带的插件都存放在 ~/.oh-my-zsh/plugins
目录中。
$ ls ~/.oh-my-zsh/pluginsadb brew coffee dirpersist fastfile gitignore httpie last-working-dir nanoc pod rebar sprunge terminitor vault zeusant brew-cask colemak django fbterm git-prompt iwhois lein nmap postgres redis-cli ssh-agent terraform vim-interaction zsh-navigation-toolsapache2-macports bundler colored-man-pages dnf fedora git-remote-branch jake-node lighthouse node pow repo stack textastic vi-mode zsh_reloadarchlinux bwana colorize docker forklift glassfish jhbuild lol npm powder rsync sublime textmate virtualenvasdf cabal command-not-found docker-compose frontend-search gnu-utils jira macports nvm powify ruby sudo thefuck virtualenvwrapperautoenv cake common-aliases emacs gas go jruby man nyan profiles rvm supervisor themes vundleautojump cakephp3 compleat ember-cli geeknote golang jsontools marked2 osx pyenv safe-paste suse thor wakeonlanautopep8 capistrano composer emoji gem gpg-agent jump mercurial pass pylint sbt svn tmux wdaws cask copydir emoji-clock git gradle kate meteor paver python scala svn-fast-info tmux-cssh web-searchbattery catimg copyfile emotty git-extras grails kitchen mix pep8 rails scd symfony tmuxinator wp-clibbedit celery cp encode64 gitfast grunt knife mix-fast per-directory-history rake screen symfony2 torrent xcodebgnotify chruby cpanm extract git-flow gulp knife_ssh mosh perl rake-fast scw systemadmin tugboat yiiboot2docker chucknorris debian fabric git-flow-avh heroku laravel mvn phing rand-quote sfffe systemd ubuntu yii2bower cloudapp dircycle fancy-ctrl-z github history laravel4 mysql-macports pip rbenv singlechar taskwarrior urltools yumbranch codeclimate dirhistory fasd git-hubflow history-substring-search laravel5 n98-magerun pj rbfu spring terminalapp vagrant z
默认情况下,Oh-My-ZSH
只启用 Git
插件。
# Git 插件可以十分清晰的显示出当前代码仓库里与远程仓库是否同步,以及最新同步日期等等信息。plugins=(git)
如果你需启用更多插件,只需加入要启用插件的名称。
plugins=(git wd web-search history history-substring-search)
除默认自带的插件外,你还可以在 GitHub
上找到更多好用的 ZSH
三方插件,这里推荐几个比较好用三方插件。
- zsh-history-substring-search项目地址:https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/history-substring-search
zsh-syntax-highlighting项目地址:https://github.com/zsh-users/zsh-syntax-highlighting
zsh-autosuggestions项目地址:https://github.com/zsh-users/zsh-autosuggestions
集成 WSL
通常在使用 WSL (Windows Subsystem for Linux)
工作时,我们希望启动终端时就进入 WSL
的 SHELL
内部。但默认情况下我们需要在启动终端并输入 bash
命令后才能进入 WSL
终端。
很显然有此一步操作后,我们会觉得太繁琐了。有了 Hyper
后,我们只需要改动一下配置文件,上面这步就可以直接省略。
现在,你只需打开 Hyper
设置页面文件,从菜单 Edit -> Preferences
进入,然后编辑 shell
和 shellArgs
参数即可。
shell: 'C:\\Windows\\System32\\bash.exe',shellArgs: [],

修改完成后,再次重新打开 Hyper
,你会发现默认已经进入了 Bash
终端界面了。
总结
本文讲述了如何安装和使用 Hyper
这个高颜值跨平台的终端软件,其中包括配置 Hyper
插件和主题。并讲述了如何使用 ZSH
来代替 Bash
让你的终端更加强大易用的方法。都看到这里了,你还在等什么呢?是时候放弃你的 Xshell
和 iTerm 2
吧!
参考文档
https://www.google.com
https://sspai.com/post/56081
https://sspai.com/post/45332
https://archive.spencerwoo.com/posts/2018/06/17/terminal.html
https://www.fythonfang.com/blog/post/24
https://github.com/sindresorhus/hyper-snazzy
https://www.veinin.com/2018/11/30/hyper-windows-tutorial/
https://blog.csdn.net/was172/article/details/85016495
https://github.com/sindresorhus/pure
https://www.fythonfang.com/blog/post/24
200页!分享珍藏很久的Python学习知识手册(附链接)
学界震动!北大教授实名举报武大,中科院三人学术造假!官方回应
相关文章:

每天一个linux命令(8):cp 命令
cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一。一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数。但是如果是在shell脚本…

samba srver on centos-7
切换到root用户安装samba,将windows登录用户admin映射到linux用户centos 安装samba并准备工作目录 yum install -y samba samba-client mkdir -p /var/samba/code chown -R centos:centos /var/samba/codetouch /etc/samba/smbusersecho "centos admin "…

以太坊数据结构MPT
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 MPT(Merkle Patricia Tries)是以太坊存储数据的核心数据结构,它是由Merkle Tree和Patricia Tree结合的一种树形结构,理解MP…

lambda在python中的用法_在python中对lambda使用.assign()方法
我在Python中运行以下代码:#Declaring these now for later use in the plotsTOP_CAP_TITLE Top 10 market capitalizationTOP_CAP_YLABEL % of total cap# Selecting the first 10 rows and setting the indexcap10 cap.loc[:10, :].set_index(id)# Calculating…

react 开发过程中的总结/归纳
1、点击元素,获取绑定该事件的父级元素,使用 e.currentTarget。e.target 获取的是,出发该事件的元素,该元素有可能是所绑定事件的元素的子元素。 2、使用 react router4 history 只能传递给儿子组件,不能传递给孙子组件…

kvm虚拟机--存储池配置梳理(转)
1.创建基于文件夹的存储池(目录) 2.定义存储池与其目录 1 # virsh pool-define-as vmdisk --type dir --target /data/vmfs 3.创建已定义的存储池 (1)创建已定义的存储池 1 # virsh pool-build vmdisk (2)查看已定义的存储池,存储池不激活无法…

区块链概况:什么是区块链
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 区块链技术自身仍然在飞速发展中,目前还缺乏统一的规范和标准。 wikipedia 给出的定义为: A blockchain —originally, b…

drx功能开启后_简单实用!小米手机中这些新功能真香
小米手机作为国产机热销品牌之一,它除了有好看的外观,还有很多隐藏的实用功能,今天小编就来和大家分享5个小米手机里你不知道的功能。Al电话助理看到陌生号码时,很多人第一反应就是挂掉,不想接听,但又担心自…

Ubuntu 8.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解
Linux版本:Ubuntu8.04 内核版本:Linux 2.6.24 交叉编译器版本:arm-linux-gcc-3.4.1 交叉编译器下载链接: https://share.weiyun.com/5oxlS6X (密码:36R7) 前言 1、搭建交叉编译环境 安装、配置交…

Installshield 2015 实现检测某安装文件是否存在并运行安装
最近在用installshiled 2015做安装包,用了很长时间研究明白了怎样实现在安装成功界面显示一个checkbox,选中该checkbox,就会安装选中的安装包。 首先我们要有一个installshield的工程。 其次是判断是否要显示这个checkbox。我的需求是根据某个…

区块链概况:从数字货币说起
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 从数字货币说起 货币是人类文明发展过程中的一大发明,最重要的职能包括价值尺度、流通手段、贮藏手段。很难想象离开了货币,…

Android RecyclerView 基本使用
Android RecyclerView 基本使用 概述 RecyclerView出现已经有一段时间了,相信大家肯定不陌生了,大家可以通过导入support-v7对其进行使用。 据官方的介绍,该控件用于在有限的窗口中展示大量数据集,其实这样功能的控件我们并不陌生…

lisp语言cond和if套用_在'if'语句中设置多行条件的样式?
Harley Holco..679您不需要在第二个条件行上使用4个空格.也许用:if (cond1 val1 and cond2 val2 andcond3 val3 and cond4 val4):do_something另外,不要忘记空格比您想象的更灵活:if (cond1 val1 and cond2 val2 andcond3 val3 and cond4 val4):do_somethingif (cond1 …

jvm七种垃圾收集器
JVM_七种垃圾收集器介绍 本文中的垃圾收集器研究背景为:HotSpotJDK7一、垃圾收集器概述如上图所示,垃圾回收算法一共有7个,3个属于年轻代、三个属于年老代,G1属于横跨年轻代和年老代的算法。JVM会从年轻代和年老代各选出一个算法进…

新手怎么学以太坊区块链开发?
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 在学习以太坊应用开发时,除了学习solidity开发智能合约,一个小白还应该补充 哪些知识?文本将给出相关的学习资源…

【题解】 bzoj1260: [CQOI2007]涂色paint (区间dp)
bzoj1260,懒得复制,戳我戳我 Solution: 这种题目我不会做qwq,太菜了区间打牌(dp) 用f[l][r]表示从l到r最少需要染几次色。状态转移方程: 1.\(f[l][r]min(f[l][i],f[i1][r]) (l<i<r)\) 这段染色等于俩段分别染色,…

[deviceone开发]-组件功能演示示例
一、简介 这个是官方比较早期对组件功能的展示集合,因为发布的比较早,只包含了部分组件,但是常用的组件和常用的功能都包含了。初学者推荐。二、效果图 三、相关下载 https://github.com/do-project/code4do/tree/master/demo四、相关讨论 ht…

联想g510升级换什么cpu好_老兵不死,十年前的联想 Y450 笔记本复活记
如果你是一个接触笔记本电脑比较早的用户,那么联想小Y的大名你一定不会陌生,作为联想旗下较为成功的产品线,彪悍的小Y在几年前就打出了名堂,而小Y系列笔记本里面又以 Y450 最为经典,Y450 引入 NVIDIA GT240M 中端移动显…

区块链和数据库
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 区块链技术是一种不依赖第三方、通过自身分散式节点进行网路数据的存储、验证、传递和交流的一种技术方案。因此,有人从金融会计的角度…

普通粒子群算法和优化方法
粒子群优化(PSO, particle swarm optimization) 是由Kennedy和Eberhart在1995年提出的一 种群智能优化方法。 优点:好理解容易实现,适合解决极值问题 缺点:容易过早收敛,容易陷入局部最优解,(如果初始点选的…

古人怎么称呼年龄
来自为知笔记(Wiz)转载于:https://www.cnblogs.com/sanyuanempire/p/6154780.html

vue变量传值_vue组件与组件之间传值
目录一、父组件向子组件传值二、子组件向父组件传值三、兄弟组件之间的传值如上图所示,2是1的子组件,1是3的父组件,2和3是兄弟组件一、父组件向子组件传值:html代码:<div id"app"><v-app><!-- 用:xxxx&q…

区块链技术背后的运行逻辑
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 区块链技术可能是自互联网技术以来最伟大的发明。区块链可以在不需要有中央权威机构的情况下或不需要双方信任的情况下交换价值或财富。想像一下你…

scp遇到路径中有空格
sudo scp root1.1.1.1:/test/soft/123/Microsoft SQL Server 2000.iso . 错误! sudo scp root1.1.1.1:"/test/soft/123/Microsoft SQL Server 2000.iso" . 错误! sudo scp root1.1.1.1:/test/soft/123/Microsoft\ SQL\ Server\ 2000.…

bzoj 3262 陌上花开
本质是一个三维偏序,一位排序后cdq分治,一维在子函数里排序,一维用树状数组维护。 把三维相等的合并到一个里面。 1 #include<iostream>2 #include<cstdio>3 #include<algorithm>4 #include<cstring>5 #define N 100…

jspstudy启动mysql失败_MySql启动数据库设置初始密码
这一小节介绍在Mac OS、Linux、Windows上启动关闭重启MySQL服务,以及部分图形化界面对服务的操控。安装完成后,可以使用 service 命令启动 mysql 服务,在Mac上service命令不存在。命令行启动关闭重启MySQL服务在命令行终端启动 MySQL 非常方便…

区块链技术产生数字货币时代
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 比特币是一种革命性的数字货币,更是一种颠覆性的创新技术。比特币最大的贡献是创造了信用,解决了困扰互联网进一步发展的拜…

软件构造 第二章 第一节 软件生命周期和版本控制
软件构造第二章 第一节 软件生命周期和版本控制 基本内容 Software Development Lifecycle (SDLC) Traditional software process models (waterfall, incremental, V- model, prototyping, spiral) Agile development and eXtreme Programming (XP) Collaborative software de…

三极管在ad中的原理图库_555时基电路内部结构及其工作原理
555时基电路特点时基电路是一种常用的模数混合型集成电路。由它组成的振荡器、单稳态触发器、双稳态触发器和各类电子开关等都被十分广泛地应用在各类电路之中。它具有定时精度高、响应速度快、温漂小、输出驱动电流大、结构简单等优点。555时基电路型号命名555时基芯片由其内部…
Mac下导出chrome插件
Mac下导出chrome插件 chrome最强大的功能之一就是插件,有时候需要给小伙伴们共享一些插件,所以需要将自己chrome中的插件打包,在mac下打包插件还是挺费劲的,在此记录。 打开chrome的扩展程序,找到要导出的插件…