MacOS OSX 安装 oh-my-zsh autojump

[TOC]

zsh+oh-my-zsh

oh-my-zsh 介绍

oh-my-zsh是基于zsh的功能做了一个扩展,方便的插件管理、主题自定义,以及漂亮的自动完成效果

先安装 zsh

brew info zsh
brew install zsh

再安装 oh-my-zsh

curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh

或者

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

查看zsh版本

zsh --version

当前默认bash

echo $SHELL

确保zsh在/etc/shells列表中,修改默认shell

检查当前的shell有那些

cat /etc/shells
chsh -s /bin/zsh

注销用户,重新登录用户,确认已经是zsh,就可以了

提示 chsh:no changes made解决办法

chsh -s /bin/zsh
dscl . -read /Users/$USER/ UserShell
exec su - $USER

zsh兼容bash_profile

zsh 不会读取用户目录下的 .bash_profile.bashrc 文件,把你要在 ~/.bash_profile 里做的事写在 ~/.zshrc 里。

或者,手工在 ~/.zshrc 里使用 source 命令执行 ~/.bash_profile 也可以
方法是在 ~/.zshrc 中加入一行 source ~/.bash_profile

安装可能错误Error

.zshrc:3: command not found: ^M

The temporary solution to that is changing your core.autocrlf git config setting to use input, given that you are on OSX. See #4402 (comment).

cd $ZSH
git config core.autocrlf input
git rm --cached -r .
git reset --hard

oh-my-zsh.sh: : parse error near || after Upgrade

vi the ~/.gitconfig file and set the autocrlf = false. then it works

Git clone errors if .gitconfig specifies autocrlf = true #4069

PATH set to RVM ruby but GEM_HOME and/or GEM_PATH not set

PATH set to RVM ruby but GEM_HOME and/or GEM_PATH not set

Add RVM set at ~/.zshrc

export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting

常用alias配置

# alias base
alias free='top -l 1 | head -n 10 | grep PhysMem'
alias ls='ls -hG'
alias ll='ls -l'
alias la='ls -a'
alias l='ls -CF'
alias cls='clear'
alias gs='git status'
alias gc='git commit'
alias gqa='git add .'

# alias docker
alias dkst="docker stats"
alias dkps="docker ps"
alias dkpsa="docker ps -a"
alias dkimgs="docker images"
alias dkcpup="docker-compose up -d"
alias dkcpdown="docker-compose down"
alias dkcpstart="docker-compose start"
alias dkcpstop="docker-compose stop"

export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting

zsh插件设置

修改 ~/.zshrc 文件中plugins=(git) 这个部分

这个是本人的插件

plugins=(
  zsh_reload
  git
  osx
  brew
  colored-man-pages
  sudo
  autojump
  zsh-autosuggestions
)

查看插件列表

ls ~/.oh-my-zsh/plugins | grep [pluginsName]

可以再插件在最前面加 ! 表示禁用插件

  • osx 希望在 OSX 中 插件生效,请一定加入这个配置
  • zsh_reload ,这个增加了一个src的alias,可以重新reload zsh,尤其是当一个新的程序安装,zsh并不能像bash那样立马可以识别新的命令
  • autojump 配合autojump 使用 j 命令直接快速进入某个目录
  • zsh-syntax-highlighting,这个是当你正在输入一个命令的时候,显示绿色,表示这个命令是有效的存在的,显示红色表示这个命令在系统中不存在,当然不止这些。
  • brew 这两个是给OS X 的brew增加补全的。非这个系统请写成 !brew-cask !brew
  • colored-man-pages 顾名思义,彩色的man很赞!
  • sudo 当你输入一个命令发现需要root权限,通常只能按方向上键,然后光标移到头部,加入sudo,但是有了这个插件,不用再移动光标到头部了,直接两下 ESC, sudo就会自动加入到最前面。。。

自动提示命令 zsh-autosuggestions

输入命令时,终端会自动提示你接下来可能要输入的命令

  • 克隆仓库到本地 ~/.oh-my-zsh/custom/plugins 路径
git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions

~/.zshrc 中添加

plugins=(
  zsh-autosuggestions
)

可能看不到变化,可能你的字体颜色太淡

vim ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh

修改 ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=10'

语法高亮

zsh-syntax-highlighting 安装分源码和管理工具安装

# if use brew install
brew install zsh-syntax-highlighting
echo "source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc

# use git install
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting
echo "source \$ZSH_CUSTOM/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc

插件推荐

  • rsync 增加了几个rsync的alias,简化操作

zsh 美化

主题预览

https://github.com/robbyrussell/oh-my-zsh/wiki/External-themes

其中主题 robbyrussell dst agnoster duellj 可以尝试一下

autojump 配置

只在 zsh 中配置了插件

plugins=(
  git
  zsh_reload
  autojump
)

没有安装autojump是不能使用的

brew install autojump

安装完成后会有提示,因为是使用了zsh,将下面的配置添加到 ~/.bash_profile

# env of autojump
[ -f /usr/local/etc/profile.d/autojump.sh ] && . /usr/local/etc/profile.d/autojump.sh

设置完成后,加载配置source ~/.bash_profile,然后就可以使用 j [路径短写]来跳转

autojump 是基于cd去过的路径,没用去过的路径无法短写跳转

路径跳转错误可以使用 autojump --purge 来清理错误路径

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,390评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,821评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,632评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,170评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,033评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,098评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,511评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,204评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,479评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,572评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,341评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,893评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,171评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,486评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,676评论 2 335

推荐阅读更多精彩内容