本文首发于个人网站:Mac高效开发之iTerm2、Prezto和Solarized主题

工欲善其事必先利其器,作为开发,我追求极致的高效,因此会在很多细节上追求效率,例如:命令行窗口敲命令的时候,如果能善用快捷键,就可以在短时间内敲更多的命令;IDEA的快捷键如果用得熟,在同样时间内,就可以产出更多的代码。这篇文章主要总结了我对iTerm2的使用,延伸出来了Zsh的配置框架Prezto和护眼主题Solarized的安装和配置。

iTerm2

iTerm2是非常好用的终端,我在拿到新的Mac后,第一个安装的软件就是iTerm2。这里我总结了一些常用的iTerm2的快捷键,在平常工作中使用最高频,对效率提升最高的,列举如下。

快捷键 效果
Fn ← 跳到行首
Fn ➝ 跳到行尾
Control u 删除当前行
Option ← 跳到当前单词的第一个字母前面,以空格为分隔符
Option ➝ 跳到当前单词的尾部,以空格为分隔符
Control w 删除光标位置到当前单词第一个字母的内容
Cmd d 将当前Tab窗口纵向切分为两个子窗口
Cmd Shift d 将当前Tab窗口横向切分为两个子窗口
Cmd [ 在当前Tab页窗口中,移动到前一个子窗口
Cmd ] 在当前Tab页窗口中,移动到后一个子窗口
Cmd t 新建一个Tab页窗口
Cmd ← 移动到上一个Tab页窗口中
Cmd ➝ 移动到下一个Tab页窗口中
Cmd q 退出iTerm2程序
Cmd Shift ; 搜索历史执行过的命令
Cmd Shift h 搜索历史粘贴过的内容
Cmd option i 多个输入窗口个同时输入命令,非常适合用于同时操作多台机器的情况
Cmd option e 搜索多个窗口的内容

Prezto

Prezto是Zsh的配置框架,作用是简化Zsh的配置难度,Prezto的使用可以参考这两篇文章:prezto官网Customizing Your Prezto Prompt

根据第一篇文章安装好Prezto后,需要按需配置Prezto,配置文件是~/.zpreztorc文件,将历史记录补全、语法高亮、git等插件的功能打开,另外在选择主题的时候,可以根据命令prompt -l列举出所有的主题,根据prompt -p themename预览主题的样式。我使用的就是它经典的主题sorin,其他的主题没有尝试过,你可以根据自己的喜好安装和配置。

Solarized主题

作为开发人员,每天长时间对着各种编辑器,势必需要选择一款比较护眼的主题,Solarized主题作为最流行的主题之一,对眼睛的保护效果也非常好。Solarized主题分为浅色和深色主题,我平常主要使用的编辑器有:Typora、iTerm2、IDEA、Visual Studio Code,这里我总结了这四种编辑器设置Solarized主题的方法。

Typora设置

  1. Typora——>偏好设置——>外观——>获取主题,在打开的Web页面查找“Solarized”主题,下载该主题到本地。

  2. Typora——>偏好设置——>外观——>打开主题文件夹,将上一步下载的主题解压缩,然后将相关文件拷贝到Typora的主题文件夹中,如下图所示

  3. 在Typora的窗口页选择:主题——>Solarized Dark或Solarized即可,主题格式如下:

iTerm2设置

iTerm2现在的版本非常简单,自带了Solarized主题。通过iTerm2——>Preferences——>Profiles,打开配置窗口,选择Colors这个Tab页,在右下角有个下拉框可以选择,如下图所示:

IDEA设置

  1. 安装Solarized Theme插件,可以通过IDEA的插件市场,或者下载到本地再导入进行安装
  2. 在偏好设置中搜索theme,可以看到,主题设置可以在Appearance中进行设置

参考资料

  1. http://ericbanisadr.com/tutorials/solarizing-the-macos-terminal.html
  2. https://medium.com/@adrian.j.chen/iterm-tips-tricks-15bebf01fa51

本号专注于后端技术、JVM问题排查和优化、Java面试题、个人成长和自我管理等主题,为读者提供一线开发者的工作和成长经验,期待你能在这里有所收获。

Mac高效开发之iTerm2、Prezto和Solarized主题的更多相关文章

  1. 高效开发之SASS篇 灵异留白事件——图片下方无故留白 你会用::before、::after吗 link 与 @import之对比 学习前端前必知的——HTTP协议详解 深入了解——CSS3新增属性 菜鸟进阶——grunt $(#form :input)与$(#form input)的区别

    高效开发之SASS篇   作为通往前端大神之路的普通的一只学鸟,最近接触了一样稍微高逼格一点的神器,特与大家分享~ 他是谁? 作为前端开发人员,你肯定对css很熟悉,但是你知道css可以自定义吗?大家 ...

  2. iOS_高效开发之道

    iOS_高效开发之道 话不多说, 总结一下个人感觉有利于提高iOS开发效率的几个小技巧. 本文将从下面几方面介绍: Xcode经常使用快捷键 Xcode调试技巧 Objc经常使用代码片段 Xcode插 ...

  3. iOS高效开发之Xcode应用插件

    前言:本文非原创 文章摘自 www.cocoachina.com/industry/20130918/7022.html    古人云“工欲善其事必先利其器”,打造一个强大的开发环境,是立即提升自身战 ...

  4. 高效开发之SASS篇

    作为通往前端大神之路的普通的一只学鸟,最近接触了一样稍微高逼格一点的神器,特与大家分享~ 他是谁? 作为前端开发人员,你肯定对css很熟悉,但是你知道css可以自定义吗?大家都知道,js中可以自定义变 ...

  5. 高效开发之写demo

    今天花了不少时间排查发现了几个明显的错误,但是相关开发人员就是没发现,自己改了一个流程影响到了其它的.最后解决问题的关键还是通过demo找到问题原因进而解决的. 这让我再次感觉到demo的重要性,以前 ...

  6. Android Studio快速开发之道

    概述 现如今开发越来越追求效率和节奏,节省出时间做更多的事情,除了开发技术上的封装等,开发工具的使用技巧也是很重要的,今天就根据自己的经验来给大家介绍一下Android Studio快速开发之道. P ...

  7. [整理]Unity3D游戏开发之Lua

    原文1:[Unity3D]Unity3D游戏开发之Lua与游戏的不解之缘(上) 各位朋友,大家好,我是秦元培,欢迎大家关注我的博客,我地博客地址是blog.csdn.net/qinyuanpei.如果 ...

  8. iOS 开发之 GCD 基础

    header{font-size:1em;padding-top:1.5em;padding-bottom:1.5em} .markdown-body{overflow:hidden} .markdo ...

  9. DarkStone - 跨平台移动应用开发之 Flex 的崛起

    我的好友Ds 发布一个flex的消息.我帮忙转发 DarkStone - 跨平台移动应用开发之 Flex 的崛起 (2013-08-20 22:28:32)     此文章由 周戈 (DarkSton ...

随机推荐

  1. CentOS 8 正式发布

    转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net] 本文地址:https://www.oschina.net/news/110111/centos-8-re ...

  2. 编程范式 --- 函数式编程(Funtional Programming,简称FP)

    函数式编程(Funtional Programming,简称FP)是一种编程范式,也就是如何编写程序的方法论 主要思想:把计算过程尽量分解成一系列可复用函数的调用 主要特征:函数是"第一等公 ...

  3. SharePoint 2013 Create Folder with conententtype programer

    记录一下昨天写的SharePoint tool,需求是这样的: 在SharePoint list subfolder 下创建1000个folder,这些folder指定特殊的contenttype,c ...

  4. WCF客户端简单动态配置服务地址

    本来想实现WCF服务无论放到哪个机器上,我的客户端都不需要重新编译,只需要配置一个服务的地址即可.各种百度找到了很多解决方案.但都比较繁琐,(只要因为个人小菜看不懂太多的代码)我对WCF内部机制还不了 ...

  5. yum install php-gd 安装php gd库报错Error: php56w-common conflicts with php-common-5.3.3-48.el6_8.x86_64 大

    yum install php-gd安装php gd库报错Error: php56w-common conflicts with php-common-5.3.3-48.el6_8.x86_64大概的 ...

  6. [LeetCode] 704. Binary Search

    Description Given a sorted (in ascending order) integer array nums of n elements and a target value, ...

  7. PHP 微信机器人 Vbot 结合 Laravel 基础入门及实例

    新来了项目,需要能监听指定微信群的消息并进行转发.基于 PHP 7 的 web 微信机器人 Vbot 可以满足需求.Vbot 本质上就是实现了登录网页版微信来进行自动回复.群管理等等操作. githu ...

  8. 记录一次jvm内存泄露的问题

    前些天,运维告诉我刚上线的java服务占用CPU过高. 以下是发现解决问题的具体流程. 1:通过#top命令查看,我的java服务确实把CPU几乎占满了,如图 可看到18400这个进程CPU占用达到了 ...

  9. .NET Core ❤ gRPC

    这篇内容主要来自Microsoft .NET团队程序经理Sourabh Shirhatti的博客文章:https://grpc.io/blog/grpc-on-dotnetcore/, .NET Co ...

  10. Vijos 1067守望者的烦恼

    背景 守望者-warden,长期在暗夜精灵的的首都艾萨琳内担任视察监狱的任务,监狱是成长条行的,守望者warden拥有一个技能名叫“闪烁”,这个技能可以把她传送到后面的监狱内查看,她比较懒,一般不查看 ...