Ubuntu配置zsh+oh-my-zsh+漂亮主题bullet-train

环境:Ubuntu16.04LTS 64bit

1 .安装zsh : zsh_on_github_地址

sudo apt install zsh

2. 安装oh-my-zsh : oh-my-zsh on github

前提条件:

  1. Unix-based操作系统。(OS X或者是Linux)
  2. 安装了zsh
  3. 安装了curl或者是wget
  4. 安装了git
    这四点都满足了可以进行下一步。
    两种安装方式二选一
    curl安装方式:
    sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
    wget安装方式:
    sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

3. 安装漂亮主题 Bullet Train for oh-my-zsh

前提条件 :

  • fonts-powerline字体 Input Mono 或者 Monoid字体(推荐第一个,因为比较简单)
  • 确保Ubuntu的ttf-ancient-fonts字体没有被上面的字体覆盖,如果覆盖可用尝试重新安装ttf-ancient-fonts字体
  • 已安装antigen, oh-my-zsh or zgen等zsh框架
  • 确保终端支持256色
    安装:
    下载主题文件:
    把下载好的主题文件放到~/.oh-my-zsh/custom/themes目录下
    修改~/.zshrcZSH_THEME参数,把原来的参数注释或者删掉,换成下面的
    ZSH_THEME="bullet-train"
    保存,然后刷新.zshrc文件
    source ~/.zshrc
    即可!

4. 安装autojump

sudo apt-get install autojump
安装后的配置
激活 autojump 应用
为了暂时激活 autojump 应用,即直到你关闭当前会话或打开一个新的会话之前让 autojump 均有效,你需要以常规用户身份运行下面的命令:
$ source /usr/share/autojump/autojump.sh on startup
为了使得 autojump 在 BASH shell 和ZSH中永久有效,你需要运行下面的命令。
$ echo '. /usr/share/autojump/autojump.sh'>>~/.bashrc
$ echo '. /usr/share/autojump/autojump.sh'>>~/.zshrc
刷新配置文件:
在bash中执行source ~/.bashrc
在zsh中执行source ~/.zshrc
查看autojump的版本:
j -v

5. 安装The Fuck

Requirements

  • python (3.4+)
  • pip
  • python-dev
    安装:
sudo apt update
sudo apt install python3-dev python3-pip
sudo pip3 install thefuck

配置:
~/.zshrc~/.bashrc 文件中添加如下代码:

eval $(thefuck --alias)
eval $(thefuck --alias FUCK)

刷新配置文件:
在bash中执行source ~/.bashrc
在zsh中执行source ~/.zshrc

6 . zsh-autosuggestions

代码提示
安装命令(确切地说不是安装,是下载,下载好,在.zshrc中配置好即可):
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

7. zsh-syntax-highlighting

Ubuntu16.04安装包:

    cd ~/.oh-my-zsh/custom/plugins
    git clone git://github.com/zsh-users/zsh-syntax-highlighting.git

然后打开~/.zshrc
确保配置如下:

plugins=(
  git
  zsh-autosuggestions
  zsh-syntax-highlighting  # 添加插件
)

source $ZSH/oh-my-zsh.sh

. /usr/share/autojump/autojump.sh
source $HOME/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh  
source $ZSH_CUSTOM/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh

保存退出!
然后source ~/.zshrc

备注:如果使用vim编辑文件按Tab想自动补全文件名的时候出现了
_arguments:450: _vim_files: function definition file not found
_arguments:450: _vim_files: function definition file not found
_arguments:450: _vim_files: function definition file not found
尝试执行命令:rm $ZSH_COMPDUMP && exec zsh
然后关闭所有终端,再打开试试,问题就会解决!

8. 设置zsh为系统默认shell

为root用户修改默认shell为zsh
chsh -s /bin/zsh root
为当前用户修改默认shell为zsh
chsh -s /bin/zsh
恢复命令
chsh -s /bin/bash

9. 让其他用户使用oh-my-zsh

如果使用wt用户安装配置了oh-my-zsh,其他用户想要使用相同的主题和配置,可以参考 oh my zsh for the root and for all user.
这里介绍一种更简单的方法(亲测有效):
比如让root用户使用和wt用户相同的配置:

sudo ln -s $HOME/.oh-my-zsh           /root/.oh-my-zsh
sudo ln -s $HOME/.zshrc               /root/.zshrc

切换到root用户,命令zsh,即可看到zsh的主题和wt用户的一样了。如果提示

/root/.zshrc:119: command not found: pyenv
/root/.zshrc:120: command not found: pyenv

再创建.pyenv的软连接即可。

sudo ln -s $HOME/.pyenv    /root/.pyenv

这样做的缺点是root用户的所有配置都和wt用户的一致,不能个性化。修改一个,其他用户的也会变。
如果要个性化,可以用

sudo cp -r /home/wt/.oh-my-zsh    /root
sudo cp -r /home/wt/.zshrc    /root

如果这篇文章对你有帮助,不妨点个赞哦 (˙˘˙)ᓂ--♡

    原文作者:db923c979487
    原文地址: https://www.jianshu.com/p/2c9cc1eb2548
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞