Mac iterm2 & oh-my-zsh 提高生产效率

前言

oh-my-zsh是zsh的增强,支持很多好用的扩展插件,并提供了非常多的主题,为用户提供功能强大、易用的shell。

Your terminal never felt this good before.

下载并安装 Iterm2

Iterm2官网:https://iterm2.com

Mac 安装 oh-my-zsh

第一步,你需要安装 brew 参考这篇文章

第二步,安装 oh-my-zsh 你可以使用 curl 或者是 wget 进行安装,执行如下命令:

使用 curl(Mac用户推荐使用):

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

使用 wget

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

第三步,设置 oh-my-zsh

你只需在文本编辑器中打开 ~/.zshrc 即可配置 oh-my-zsh 设置。
如下所示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
# Path to your oh-my-zsh installation.
export ZSH="/Users/zhangyu/.oh-my-zsh"
# Set name of the theme to load --- if set to "random", it will
# load a random theme each time oh-my-zsh is loaded, in which case,
# to know which specific one was loaded, run: echo $RANDOM_THEME
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
#ZSH_THEME="robbyrussell"
#ZSH_THEME="ys"
ZSH_THEME="powerlevel9k/powerlevel9k"
# Set list of themes to pick from when loading at random
# Setting this variable when ZSH_THEME=random will cause zsh to load
# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/
# If set to an empty array, this variable will have no effect.
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
# Uncomment the following line to use case-sensitive completion.
# CASE_SENSITIVE="true"
# Uncomment the following line to use hyphen-insensitive completion.
# Case-sensitive completion must be off. _ and - will be interchangeable.
# HYPHEN_INSENSITIVE="true"
# Uncomment the following line to disable bi-weekly auto-update checks.
# DISABLE_AUTO_UPDATE="true"
# Uncomment the following line to automatically update without prompting.
# DISABLE_UPDATE_PROMPT="true"
# Uncomment the following line to change how often to auto-update (in days).
# export UPDATE_ZSH_DAYS=13
# Uncomment the following line if pasting URLs and other text is messed up.
# DISABLE_MAGIC_FUNCTIONS=true
# Uncomment the following line to disable colors in ls.
# DISABLE_LS_COLORS="true"
# Uncomment the following line to disable auto-setting terminal title.
# DISABLE_AUTO_TITLE="true"
# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"
# Uncomment the following line to display red dots whilst waiting for completion.
# COMPLETION_WAITING_DOTS="true"
# Uncomment the following line if you want to disable marking untracked files
# under VCS as dirty. This makes repository status check for large repositories
# much, much faster.
# DISABLE_UNTRACKED_FILES_DIRTY="true"
# Uncomment the following line if you want to change the command execution time
# stamp shown in the history command output.
# You can set one of the optional three formats:
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
# or set a custom format using the strftime function format specifications,
# see 'man strftime' for details.
# HIST_STAMPS="mm/dd/yyyy"
# Would you like to use another custom folder than $ZSH/custom?
# ZSH_CUSTOM=/path/to/new-custom-folder
# Which plugins would you like to load?
# Standard plugins can be found in ~/.oh-my-zsh/plugins/*
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(
git
docker
autojump
zsh-autosuggestions
)
source $ZSH/oh-my-zsh.sh
# User configuration
# export MANPATH="/usr/local/man:$MANPATH"
# You may need to manually set your language environment
# export LANG=en_US.UTF-8
# Preferred editor for local and remote sessions
# if [[ -n $SSH_CONNECTION ]]; then
# export EDITOR='vim'
# else
# export EDITOR='mvim'
# fi
# Compilation flags
# export ARCHFLAGS="-arch x86_64"
# Set personal aliases, overriding those provided by oh-my-zsh libs,
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
# For a full list of active aliases, run `alias`.
#
# Example aliases
# alias zshconfig="mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"
[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh
source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

oh-my-zsh 插件配置

推荐两款插件提高效率:autojump zsh-autosuggestions

安装 zsh-autosuggestions 自动补全插件

第一步,执行如下命令:

1
git clone git://github.com/zsh-users/zsh-autosuggestions --depth=1 $ZSH_CUSTOM/plugins/zsh-autosuggestions

第二步,编辑 ~/.zshrc 文件,并在 plugins=(git) 这行添加如下内容:

1
plugins=(git zsh-autosuggestions)

安装 autojump 懒人工具

autojump 是通过记录进入过的目录到数据库来实现的,所以必须是曾经进入过的目录才能跳转。

第一步,执行如下命令:

1
brew install autojump

第二步,编辑 ~/.zshrc 文件,并在 plugins=(git zsh-autosuggestions) 这行添加如下内容:

1
plugins=(git zsh-autosuggestions autojump)

如果终端工具使用的是zsh,需要在~/.zshrc最后一行添加如下内容:

1
[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh
autojump 用法

首先使用 cd 命令打开一个自己熟悉的目录,比如:cd /data/hackerdom,然后使用如下命令可以直接进入目录:

1
j hackerdom

安装 zsh-syntax-highlighting 语法高亮

第一步,执行如下命令(针对Mac用户):

1
brew install zsh-syntax-highlighting

第二步,在配置最后一行增加如下命令:

1
source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

更多插件官方提供插件列表地址:https://github.com/ohmyzsh/ohmyzsh/wiki/Plugins

使用自定义主题

第一步,执行如下命令:

1
git clone https://github.com/bhilburn/powerlevel9k.git --depth=1 ~/.oh-my-zsh/custom/themes/powerlevel9k

第二步,编辑 ~/.zshrc 文件:

1
ZSH_THEME="powerlevel9k/powerlevel9k"

第三步,安装字体:

1
2
3
git clone https://github.com/powerline/fonts.git --depth=1
cd fonts
./install.sh

第四步,设置Iterm2字体,如下图所示:
avatar

安装配色方案

第一步,到这里选一个自己喜欢的配色方案:https://github.com/mbadolato/iTerm2-Color-Schemes/tree/master/schemes

第二步,下载下来并导入到iterm2中,如图所示:
avatar

配置Iterm2快速启动

第一步,如下图所示,点击红框内容,并设置自己的快捷键(由于我本机已经设置过,所以就不演示了):
avatar

第二步,自定义配置,如果你比较懒的话,可以完全按照我的配置来,如下图所示:
avatar
之后你就可以使用你设置的快捷键,快速从屏幕上方呼出iterm2进行命令行操作了。

感谢阅读,如果你了解使用zsh提高生产效率的其他方法,可以联系我:hackerdom@pm.me,我很高兴收到您的来信。

----本文结束 感谢您的阅读----