Mac 命令行美化
在 mac 中使用原生的命令行工具,竟然没有 git 命令的自动补全,在 git 仓库下也看不到当前的分支名,不能忍。于是,开始一波改造。
目标:命名 Tab 自动补全;可以显示分支名;
一番 Google 之后,看到这两个关键词:
- zsh (oh my zsh)
- iTerm2
oh my zsh
mac 自带 zsh shell , oh my zsh 是让 zsh 更好用的一个增强工具。
使用 wget 自动安装 oh-my-zsh :
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh
wget 是一个从网络上自动下载文件的自由工具,如果没有,则先安装之:
brew install wget
mac 原生默认使用 bash shell,需要切换为 zsh。
切换命令:
chsh -s /bin/zsh
重新启动终端程序,就可以从终端的标题栏发现当前使用的是 zsh shell 了。
使用 echo $0
命令也可以查看当前使用的 shell 。
使用 oh my zsh 前后对比:
VS Code
在 VS Code 中,在用户配置中,将终端改为 zsh 即可(默认为 bash)。
"terminal.integrated.shell.osx": "/bin/zsh",
至此,已经完成了最初的目标。
VS Code 原生:
VS Code 使用 zsh:
iTerm2
oh my zsh 是用来替换 bash 的,但终端程序还是原来那个,如果想要进一步改造终端,则可以使用 iTerm2 。
安装
brew cask install iterm2
配置主题
打开 iterm2 之后,在软件的偏好设置(Command + ,
)中可以设置(有 UI 界面就是好用。)
自带 Solarized Dark theme 主题,无需重新下载
这个主题是指终端窗口的主题,包括背景颜色(也可以用背景图片)等;
配置 zsh 的主题
zsh 的主题针对于命令行文本相关的样式。
修改配置文件 ~/.zshrc
中相关的字段,就可以啦。
使用 Shift + Command + .
显示隐藏文件。
如 agnoster
主题长这样:
当然,使用这个主题,需要安装相应的字体(Meslo),不然会有乱码。
下载地址:
fonts/Meslo LG M Regular for Powerline.ttf at master · powerline/fonts · GitHub
重启终端,即可看到效果,不过,事情还没有结束,这时的 VS Code 已经不能正常显示了,也需要为其配置字体。
但直接配置 Meslo LG M Regular for Powerline
VS Code 是不认的。
下载另一个字体就 OK 啦: Source Code Pro for Powerline
fonts/Source Code Pro for Powerline.otf at master · powerline/fonts · GitHub
然后增加一条 VS Code 的配置:
"terminal.integrated.fontFamily": "Source Code Pro for Powerline"
最终,VS Code 的效果如下:
看起来很酷炫吧,然鹅,个人并是不特别喜欢这个主题(agnoster
),命令行的前缀太长。
不过,确实挺好看。
另一个主题是 ys
,虽然前缀也很长,但自动另起了一行,看起来也跟简洁。
avit
主题也可以试试。
更多主题,可以看这里:
Themes · robbyrussell/oh-my-zsh Wiki · GitHub
找资料的时候发现有些安装字体的做法是把整个 git 仓库 clone 下来,使用命令安装字体的,这,没必要吧。
如果还缺了什么,下方的参考资料中可能有:
参考资料:
- 终极 Shell——ZSH
- oh-my-zsh配置你的zsh提高shell逼格终极选择 一介布衣
- 查看当前终端运行的是哪种shell | 写点什么
- Mac OS 终端利器 iTerm2 - 田园里的蟋蟀 - 博客园
PS:
最后发现,或许一开始 git 就是用自动补全功能的,只是没在意,现在已经没法验证 git 的自动补全是因为安装了 oh my zsh ,还是一开始就有的了。至少现在可以看到分支名了,而之前是没有的。
原文: https://www.cnblogs.com/jasongrass/p/10433265.html
END
Mac 命令行美化的更多相关文章
- mac命令行配置网络
mac命令行配置网络今天终于找到了Mac OS X通过命令行修改ip的方式了,记录如下: 修改mac地址,重启后失效sudo ifconfig en0 lladdr d0:67:e5:2e:07:f1 ...
- mac命令行对复杂ipa包重新签名
最近在做ios的自动化平台,需要通过命令行安装卸载ipa包 好了问题来,别人上传的ipa包,很可能是开发签名了只能在特定手机上安装的测试ipa包,那我们如何将其安装在我们的自动化的iphone上呢? ...
- Appium Mac 命令行安装
试过很多方法都失败,打算用命令行方式安装. 准备工作: 从 https://github.com/appium/appium下载appium版本的源码(.tar) 详见github_Appium1.6 ...
- Mac命令行
参考:http://www.cnblogs.com/-ios/p/4949923.html 必读 涵盖范围: 这篇文章对刚接触命令行的新手以及具有命令行使用经验的人都有用处.本文致力于做到覆盖面广(尽 ...
- mac 命令行安装软件
第一步需要在mac上安装brew工具 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/mas ...
- mac 命令行上传文件,mac tar.gz命令压缩
在mac上可以直接打开命令行给服务器上传文件,注意是本地的命令行,不是服务器的命令行,我就走了绕路 命令可以看这里https://www.cnblogs.com/hitwtx/archive/2011 ...
- 【Mac命令行学习】(持续更新)
常用命令: 一.修改环境变量文件: 1.进入文件:vi .bash_profile 2.键盘点击[a]键,进入文件编辑 3.修改完成后,如果是vi,点击[esc]键退出编辑模式 4.输入以下命令进行具 ...
- mac启动springboot失败,8080端口被占用,mac命令行关闭端口
如下图,idea启动springboot失败,8080端口被占用 Error starting ApplicationContext. To display the conditions report ...
- MAC - 命令行中用sublime打开指定文件,使用ln命令建立软链接
眼下sublime是mac下最好的文本编辑软件.常常要使用它打开一些文件,比如html,js,txt,json等文件,可是sublime2默认不支持在命令行下调用.经过研究发现能够用建立软连接的方式调 ...
随机推荐
- Eclipse错误笔记!
1.ERROR: JDWP Unable to get JNI 1.2 environment, jvm->GetEnv() return code = -2 JDWP exit error ...
- SQL基础操作
SQL是操作数据的语言 增加记录: insert into 数据表名称(字段1,字段2,字段3....)values(值1,值2,值3.....) 查看表结构:desc 表名 inset into x ...
- linux之nginx的安装
(一)这次是自己折腾服务器的环境,所以自己算是都装过一遍,在装的过程中也是在网上搜索,其实最后在公司运维的指导下知道自己安装出错在哪里的.不说了,直接说安装和问题 (二):首先从 http://ngi ...
- 51nod 1629 B君的圆锥
1629 B君的圆锥 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 收藏 关注 B君要用一个表面积为S的圆锥将白山云包起来. B君希望包住的白山云体积尽量 ...
- 数学:A^B的约数(因子)之和对MOD取模
POJ1845 首先把A写成唯一分解定理的形式 分解时让A对所有质数从小到大取模就好了 然后就有:A = p1^k1 * p2^k2 * p3^k3 *...* pn^kn 然后有: A^B = p1 ...
- 那些让 Web 开发者们深感意外的事情
作为 Web 开发者,对自己的行业前景,人人都有自己的看法,然而,任何行业都有出人意料的地方.著名的 Web 开发设计博客 Nope.com 曾向他们的读者做了一个调查,请他们列举 Web 开发领域那 ...
- uoj311 【UNR #2】积劳成疾
传送门:http://uoj.ac/problem/311 [题解] 这题的期望dp好神奇啊(可能是我太菜了) 由于每个位置都完全一样,所以我们设$f_{i,j}$表示审了连续$i$个位置,最大值不超 ...
- 【BZOJ】1875: [SDOI2009]HH去散步 矩阵快速幂
[题意]给定n个点m边的无向图,求A到B恰好经过t条边的路径数,路径须满足每条边都和前一条边不同.n<=20,m<=60,t<=2^30. [算法]矩阵快速幂 [题解]将图的邻接矩阵 ...
- 【BZOJ】4129: Haruna’s Breakfast 树分块+带修改莫队算法
[题意]给定n个节点的树,每个节点有一个数字ai,m次操作:修改一个节点的数字,或询问一条树链的数字集合的mex值.n,m<=5*10^4,0<=ai<=10^9. [算法]树分块+ ...
- 【leetcode 简单】第四十八题 旋转数组
给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: [1,2,3,4,5,6,7] 和 k = 3 输出: [5,6,7,1,2,3,4] 解释: 向右旋转 1 ...