zsh和oh-my-zsh安装

一、安装:

1、安装zsh

  sudo apt-get install zsh

2、把默认的Shell改成zsh

  chsh -s /bin/zsh

  注意:不要使用sudo。

3、如果总是报 chsh: PAM: Authentication failure, 则需配置密码文件,解决chsh: PAM认证失败的问题

  sudo vim /etc/passwd

  把第一行的/bin/bash改成/bin/zsh,这个是root用户的。

  把当前用户的/bin/bash改成/bin/zsh,一般安装后默认已经是zsh。

4、安装oh-my-zsh

  git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh

官网:http://ohmyz.sh/

5、重启电脑,查看效果

6.安装自动补全插件incr

  创建~/.oh-my-zsh/plugins/incr/incr-0.2.zsh,输入一下脚本

# Incremental completion for zsh
# by y.fujii <y-fujii at mimosa-pudica.net>, public domain

autoload -U compinit
zle -N self-insert self-insert-incr
zle -N vi-cmd-mode-incr
zle -N vi-backward-delete-char-incr
zle -N backward-delete-char-incr
zle -N expand-or-complete-prefix-incr
compinit

bindkey -M viins ‘^[‘ vi-cmd-mode-incr
bindkey -M viins ‘^h‘ vi-backward-delete-char-incr
bindkey -M viins ‘^?‘ vi-backward-delete-char-incr
bindkey -M viins ‘^i‘ expand-or-complete-prefix-incr
bindkey -M emacs ‘^h‘ backward-delete-char-incr
bindkey -M emacs ‘^?‘ backward-delete-char-incr
bindkey -M emacs ‘^i‘ expand-or-complete-prefix-incr

unsetopt automenu
compdef -d scp
compdef -d tar
compdef -d make
compdef -d java
compdef -d svn
compdef -d cvs

# TODO:
#     cp dir/

now_predict=0

function limit-completion
{
	if ((compstate[nmatches] <= 1)); then
		zle -M ""
	elif ((compstate[list_lines] > 6)); then
		compstate[list]=""
		zle -M "too many matches."
	fi
}

function correct-prediction
{
	if ((now_predict == 1)); then
		if [[ "$BUFFER" != "$buffer_prd" ]] || ((CURSOR != cursor_org)); then
			now_predict=0
		fi
	fi
}

function remove-prediction
{
	if ((now_predict == 1)); then
		BUFFER="$buffer_org"
		now_predict=0
	fi
}

function show-prediction
{
	# assert(now_predict == 0)
	if
		((PENDING == 0)) &&
		((CURSOR > 1)) &&
		[[ "$PREBUFFER" == "" ]] &&
		[[ "$BUFFER[CURSOR]" != " " ]]
	then
		cursor_org="$CURSOR"
		buffer_org="$BUFFER"
		comppostfuncs=(limit-completion)
		zle complete-word
		cursor_prd="$CURSOR"
		buffer_prd="$BUFFER"
		if [[ "$buffer_org[1,cursor_org]" == "$buffer_prd[1,cursor_org]" ]]; then
			CURSOR="$cursor_org"
			if [[ "$buffer_org" != "$buffer_prd" ]] || ((cursor_org != cursor_prd)); then
				now_predict=1
			fi
		else
			BUFFER="$buffer_org"
			CURSOR="$cursor_org"
		fi
		echo -n "\e[32m"
	else
		zle -M ""
	fi
}

function preexec
{
	echo -n "\e[39m"
}

function vi-cmd-mode-incr
{
	correct-prediction
	remove-prediction
	zle vi-cmd-mode
}

function self-insert-incr
{
	correct-prediction
	remove-prediction
	if zle .self-insert; then
		show-prediction
	fi
}

function vi-backward-delete-char-incr
{
	correct-prediction
	remove-prediction
	if zle vi-backward-delete-char; then
		show-prediction
	fi
}

function backward-delete-char-incr
{
	correct-prediction
	remove-prediction
	if zle backward-delete-char; then
		show-prediction
	fi
}

function expand-or-complete-prefix-incr
{
	correct-prediction
	if ((now_predict == 1)); then
		CURSOR="$cursor_prd"
		now_predict=0
		comppostfuncs=(limit-completion)
		zle list-choices
	else
		remove-prediction
		zle expand-or-complete-prefix
	fi
}

7. 在~/.zshrc中添加incr插件,具体配置可参考.zshrc配置

  

原文地址:https://www.cnblogs.com/zhchy89/p/9061519.html

时间: 2024-10-17 08:05:56

zsh和oh-my-zsh安装的相关文章

Ubuntu下安装配置zsh和oh my zsh

zsh优势:自动补全功能强大和很高的可配置性 1.查看当前系统装了哪些shell cat /etc/shells 2.当前正在运行的是哪个版本的shell echo $SHELL 3.安装zsh sudo apt-get zsh 4.切换zsh chsh -s /bin/bash(非实时,需重启) 5.安装oh my zsh wget --no-check-certificate https://github.com/robbyrussell/oh-my-zsh/raw/master/tools

Zsh和oh my zsh的安装和使用

Zsh 兼容 Bash,据传说 99% 的 Bash 操作 和 Zsh 是相同的,默认 CentOS / Ubuntu / Mac 系统用的是 Bash,倒也不是说 Bash 不好,而是说我们有更好的选择. Zsh 安装 先看下你的 CentOS 支持哪些 shell:cat /etc/shells,正常结果应该是这样的: /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh CentOS 安装: sudo yum instal

[Tips] zsh 自动补全插件安装

git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions # 编辑~/.zshrc,在plugins=(git)这一行中添加plugins=(git zsh-autosuggestions) source ~/.zshrc 原文地址:https://www.cnblogs.com/immortalBlog/p/12704543.html

Mac下安装zsh的shell,替代原有的bash

zsh Mac系统自带了zsh, 一般不是最新版,如果需要最新版可通过 Homebrew 来安装 brew install zsh 可通过 zsh --version 命令查看 zsh 的版本 使用 echo $ZSH_VERSION 命令查看当前使用的 Zsh 版本 修改默认 Shell 注意:这里的路径取决于你下载后存放的路径. 1.在 /etc/shells 文件中加入如下一行 /usr/local/bin/zsh或者/bin/zsh 2.然后运行命令 chsh -s /usr/local

在Linux上安装zsh

简介: 相对于绝大多数linux发行版默认的shell--bash,zsh绝对是一个优秀的替代品.zsh是交互型shell,同时它也是一个强大的编程语言,许多bash,ksh,tcsh优秀的地方在zsh都被实现.同时zsh有许多原生的优秀特点. 诞生: Paul Falstad 在1990年发布了zsh的第一版,当时他还是Princeton University的一名学生. 名字的来源: 这个名字来自耶鲁大学的Zhong Shao教授,那时他在Princeton University做助教.Pa

zsh和fish安装和使用

zsh优势兼容bash, 方便git管理,但是有时候切换速度较慢,特别遇到git仓库目录 fish优势速度较快,路径提示也不错,但是和bash不兼容 1. zsh 首先,可以通过cat /etc/shells显示当前安装了哪些shell,也可以通过echo $SHELL查看当前正在使用的shell 安装zsh:Ubuntu:sudo apt-get install zsh 从bash切换到zsh,且开启Terminal默认为zsh, chsh -s /bin/zsh 安装oh my zsh: 1

Zsh安装

Zsh 使用 Homebrew 完成 zsh 和 zsh completions 的安装 brew install zsh zsh-completions 安装 oh-my-zsh 让 zsh 获得拓展功能和主题 curl -L https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh | sh 用文本编辑器或 vi 打开 .zshrc 进行以下编辑: ZSH_THEME=pygmalion alias zshco

Z shell(zsh)安装-更新-配置-使用

有人演示了一把zsh,看着是挺爽的.这个shell一定有独到之处,于是就捣鼓一把. zsh是同bash一样,也是一中shell,只不过它有自己的不同之处,或优或劣.开始写这篇记录的时候,只是安装配置好它了,还没有来得及尝试体验其“优劣”. 1.安装.zsh在一般的linux发行版本中都默认包含了.看一下你的机器上都有什么shell呢?下面是我的机器上的shell $cat /etc/shells/bin/sh/bin/bash/sbin/nologin/bin/tcsh/bin/csh/bin/

树莓派Zsh安装脚本(原创)

zsh.sh 1 #!/bin/zsh 2 3 cd 4 #安装zsh 5 sudo apt-get install zsh 6 #查看zsh 7 cat /etc/shells 8 #更改zsh 9 chsh -s /bin/zsh 10 #自动安装: 11 wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh 12 #下载 13 git clone git://github.c

MAC-Zsh的安装与使用——终极Shell

前言:Zsh可配置性强,用户可以自定义配置,个性化强.Zsh tab补全更强大,该功能可以让我们节约很多时间.Zsh 还有代码高亮功能,使得代码更好看了,显得逼格更高.Zsh 还有很多强大的功能,这里就不一一细说了. 然后我来为大家说个笑话: Zsh全称为Z Shell,因为Z是最后一个字母,因此大家称之为——终极Shell. 这是我在知乎上看到的某一位评论,他说得很有道理,我竟无言以对. 很多人都在用bash,这是为什么呢?因为Zsh在初期,它的配置相当复杂,一般人只要看到配置就会掉头走人.但