今天在知乎上看到了一篇关于《程序员如何优雅使用Mac》,里面介绍了不少Mac的高端使用技巧,其中关于terminal的部分更是深深的吸引了我,于是我也开始了我的terminal改造计划。

OK,废话不多说,如果想把你的terminal改造成如下图这个样子,

 

知乎直接盗图,莫怪莫怪,访问原文请点击上方蓝色链接

那么至少你需要准备好以下几个东西:

  • iterm2,点击过去下载吧,用最新的那个;
  • Z shell,传言是一个比bash强大很多的东西,具体强大在哪我还在细细体会之中,Mac下已自带,不用下载;
  • Solarized Dark,配色方案大集合,下载后找到iTerm的配色方案双击安装即可;
  • oh-my-zsh,前面所说的Z shell的现成配置方案,方便你管理自己的zsh,可使用curl -L https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh | sh进行安装;
  • Menlo-Powerline or Monaco-Powerline,两种字体补丁任选其一下载安装即可,不安装会有乱码(别问我为什么,我也不知道)。

该有的东西都有了,安装过程其实差不多就是按照上述的顺序挨个下载然后安装就好了,其中有几个地方需要特别注意一下:

  1. 装好iTerm之后,启动你的iTerm,安装Command + ,打开偏好设置,接着如下所示

    这个地方可以选择iTerm出现的体位

    这个地方可以设置iTerm呼出与隐藏的快捷键

    ,我自己使用的是command + .的组合。

  2. Solarized的配色方案很不错,但是在你选中某一项时,由于颜色过于接近,我自己看着非常不舒服,那么我如下图所示将选中时的颜色调整为明黄色,你也可以根据自己的喜好进行调整。

    调整选中时颜色
  3. 安装好oh my zsh后,在~/.zshrc中添加如下内容,能让你用的更愉快,

    ZSH_THEME="agnoster"  #使用 agnoster 主题,很好很强大
    DEFAULT_USER="你的用户名" #增加这一项,可以隐藏掉路径前面那串用户名
    plugins=(git brew node npm) #自己按需把要用的 plugin 写上
  4. 安装好了字体补丁之后别忘记重新设置下iTerm的字体,如果你按照上面的图都配置好了但是却还不知道字体在哪里设置,那我也。。。(自己好好找找吧)

最后,发一张自己的terminal图吧,还是挺漂亮的。

成果照,嘿嘿

设置终端历史行数

ITERM默认设置了终端能保留的历史输出行数,在进行调试时特别不方便,一旦输出过多就无法看到完整的历史记录。
Preference=>Profiles=>Terminal内将Scrollback Lines右侧的Unlimited scrollback勾选上即可保留所有的历史输出。

设置无限行数

参考文章:

  1. 折腾了一下 Terminal
  2. iTerm2 + Zsh + Oh-my-zsh + Monaco for Powerline font
文/丨飞翔的蛋花丨(简书作者)
原文链接:http://www.jianshu.com/p/bb1c97269b11
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

mac-改造你的terminal的更多相关文章

  1. Mac下终端(terminal)的一些快捷键

    Mac下终端(terminal)的一些快捷键 行首ctrl + a 行尾ctrl + e 两个终端窗口切换alt + 方向键 命令中,上一个单词esc + b (iterm2) 下一个单词esc + ...

  2. MAC机下用Terminal操作MySql

    在MAC机上安装好MySql后,在Terminal内运行mysql时会提示mysql command not found命令.这是因为没有把运行时的路径添加到$PATH变量中.检查$PATH变量中是否 ...

  3. Linux/Mac OS 个人常用Terminal技巧整理

    刚开始接触linux有些不适应,走了不少弯路,一直没有系统的学过linux应用,基本都是零零散散Google出来的知识,在这里做个整理: Vi/Vim 基本操作: 刚开始接触linux时,不懂vi吃了 ...

  4. Mac上简单常用Terminal命令

    方案1 SSH是一个非常伟大的工具,如果你要在互联网上远程连接到服务器,那么SSH无疑是最佳的候选.SSH是加密的,OpenSSH加密所有通信(包括密码),有效消除了窃听,连接劫持和其它攻击.本文将为 ...

  5. Mac - 关闭隐藏文件显示(Terminal)

    打开终端Terminal,输入:defaults write com.apple.finder AppleShowAllFiles -bool true 此命令显示隐藏文件defaults write ...

  6. Mac环境下终端(Terminal)用ssh 连接服务器问题 Received disconnect from 120.55.x.x: 2: Too many authentication failures for root

    由于这台Mac配置git生成公钥后,ssh连接就出现来这个问题 Received disconnect from 120.55.x.x: 2: Too many authentication fail ...

  7. mac, start sublime from terminal

    1.where is sublime CLI /Applications/Sublime Text.app/Contents/SharedSupport/bin/subl 2. run sublime ...

  8. 在Mac OS终端的Terminal 中使用Sublime Text3

    查看环境变量: $ echo $PATH $ /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin 创建软链接: $ sudo ln -s /Application ...

  9. Mac打开Terminal报错-bash : : command not found

    问题描述: Mac系统在打开Terminal的时候,报错-bash : : command not found. 问题分析: 报错并不影响Terminal的使用,于是忽略不计.但是在修改.bash_p ...

随机推荐

  1. linux centos 6.5下安装nodejs

    1.将文件下载或拷贝至/usr/local/src目录下,可使用xshell工具上传文件 2.解压缩文件: tar xvf /usr/local/src/node-v6.9.2-linux-x64 3 ...

  2. EKF的理解

    若已知参考点(landmarks)的坐标,则状态向量中不必含有xL, 从而实现的仅为机器人在已知环境中的定位,求解大大减少(状态向量维度仅为运动状态).若想实现完整SLAM,必须将xL加入状态向量中. ...

  3. Linux学习之八--关闭firewall防火墙安装iptables并配置

    CentOS 7之后默认使用的是firewall作为防火墙,这里改为iptables防火墙,并开启80端口.3306端口. 1.关闭firewall: systemctl stop firewalld ...

  4. ubuntu

    mongoChef: http://3t.io/mongochef/download/core/platform/#tab-id-3 背景色改成豆沙绿: /usr/share/themes/Ambia ...

  5. Docker - 入门

    术语 1. 镜像(image)与容器(container) 镜像是指文件系统快照或tar包. 容器是指镜像的运行态(时) 2.宿主机管理 设置/配置一台物理服务器或虚拟机,以便用于运行Docker容器 ...

  6. pwd命令

    [pwd]      打印当前的工作目录             pwd==print work director 命令格式: pwd [OPTION]... 命令功能: 打印当前工作目录的全路径 命 ...

  7. 设计模式--享元模式Flyweight(结构型)

    一.享元模式 在一个系统中如果有多个相同的对象,这些对象有部分状态是可以共享的,我们运用共享技术就能有效地支持大量细粒度的对象. 二.例子 举个围棋的例子,围棋的棋盘共有361格,即可放361个棋子. ...

  8. Android selecter背景选择器使用

    android:drawable这个属性是必须的,默认时的背景图片. android:state_pressed布尔值.true指当用户点击或者触摸该控件的状态.默认为false android:st ...

  9. 【http】四种常见的 POST 提交数据方式

    来源:http://www.cnblogs.com/aaronjs/p/4165049.html HTTP/1.1 协议规定的 HTTP 请求方法有 OPTIONS.GET.HEAD.POST.PUT ...

  10. 初识MVC

    本人是一个程序员,我也是一个很普通很普通的人,当我初学一些东西的时候感觉都很难,毕竟没有天才的头脑,没有高等的学历,但是我有的只是努力,只是拼搏的精神,人都是为自己而活,也可能为他人而活,但是有时候在 ...