ubuntu 安裝 zsh 和常用插件

ubuntu 安裝 zsh 和常用插件

爲什麼要寫這文章?因爲我踩到了人家沒遇到的坑!

第一部分,先安裝吧

# 安裝zsh。這是基礎
sudo apt install zsh

# 將終端設置爲 zsh
chsh -s /bin/zsh

也可以通過修改 /etc/passwd 文件查看

注意看我的 jio就是當前等你的用戶名的哪一行,最後用的是 bin/zsh。這就說明已經改成功了。
passwd 的第一行是root用戶。
所以看自己的需求來改,我的是個人電腦,所以我改常用的 jio 賬號就行
改完了註銷/重啓下電腦才生效。這裏不要偷懶,我在這裏徘徊了很久。。。
在這裏插入圖片描述


安裝oh-my-zsh

重啓完後打開終端,使用

# 查看當前終端類型
echo $SHELL

# 看到這樣的輸出就對了。
$ echo $SHELL                             
/bin/zsh

這時候的終端非常的單調。那麼下面就開始安裝 oh-my-zsh

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

# 方式2
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh  | sh

#2種方式都一樣,我用方式2一直請求不到內容,可能方式一會快一點。任君選擇。也可以選擇到github把這個install.sh下載下來自己執行

更換字體

oh-my-zsh 對字體有一定的要求,需要等寬字體,不然部分字符可能顯示的是亂碼,而我用的是Fira Code。還挺好的,開發中也一直在用,鏈接的話可以上github找找,或者私聊我給你字體的包(我找不到鏈接了)。


豐富的插件

git

git我就不多說了吧。程序員都懂

sudo apt-get install git

已經裝過的就不管他了


autojump

第一個登場的就是autojump插件

在這裏插入圖片描述

功能大概就是這樣。你cd過的目錄,最後只需要用 j 對應的目錄就可以直接跳過去了,所以這個插件你用的越久,他就越智能

#安裝
sudo apt-get install autojump

# 然後編輯 zsh的配置文件
vim ~/.zshrc
# 找到 `plugins` .默認應該是 plugins=(git) 改爲
plugins=(git autojump)

# 保存,執行文件
source ~/.zshrc
坑1:

有可能這樣之後,還是不能使用這個插件,這樣的話使用下面這句命令:

echo "source /usr/share/autojump/autojump.zsh" >> ~/.zshrc && source ~/.zshrc'

自動補全 zsh-autosuggestions

這是個神器,也是坑好多的地方!

他會記錄你以前用過的命令,並且會給出相應的提示,像下圖的淺灰色字體就是自動的提示,按下右箭頭就可以把這一串路徑打完,節省了很多時間
在這裏插入圖片描述

# 先安裝,按照文檔的來是這樣的
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

# 然後也是改配置文件,把這個插件添加進去
vim ~/.zshrc

# 找到 `plugins` .默認應該是 plugins=(git) 改爲
plugins=(git autojump zsh-autosuggestions)

# 保存,執行文件
source ~/.zshrc

如果運行沒輸出(報錯),那恭喜你成功了。

坑1:如果提示說某個文件找不到:

/home/jio/.oh-my-zsh/custom/plugins/zsh-autosuggestions/zsh-autosuggestions.plugin.zsh:source:1: 沒有那文件或者目錄/home/jio/.oh-my-zsh/custom/plugins/zsh-autosuggestions/zsh-autosuggestions.plugin.zsh^M

可是這個文件的確是存在的,那就是因爲git的換行符的問題!
因爲window上的換行符和linux的不太一樣,所以纔會導致這個問題

解決也很簡單(jio是我本地電腦的名稱,你們根據自己的報錯來修改):

vim /home/jio/.oh-my-zsh/custom/plugins/zsh-autosuggestions/zsh-autosuggestions.plugin.zsh
# 打開編輯器後
`esc` 輸入 `:set ff=unix` 。然後保存退出。這樣就能修改文件的換行格式了
# 再次執行。應該就可以成功了
source ~/.zshrc

命令語法高亮 zsh-syntax-highlighting

# 安裝一樣很簡單
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

# 然後也是改配置文件,把這個插件添加進去
vim ~/.zshrc

# 找到 `plugins` .默認應該是 plugins=(git) 改爲
plugins=(git autojump zsh-autosuggestions zsh-syntax-highlighting)

# 保存,執行文件
source ~/.zshrc
坑的地方。估計也是報文件找不到~

解決方式我就不多寫一次了,詳細可以看上面的 zsh-autosuggestions 的坑。通常看到結尾是 ^M的報錯,都是因爲文件格式的問題,影響了換行符

這裏還隱藏一個更大的問題。如果關閉終端重新打開會有幾行報錯,那仔細看完下面的在進行操作!!!

關閉終端,重新打開。然後還是看到這個插件提示有幾個文件執行到 20多 30行的時候執行有誤 ^M。emmm…報錯都解決了就沒得貼圖了。這時候不要急着改!!因爲一開始報錯只是報了2個文件,如果你只把2個文件的格式改了,那會引發後面好多文件的報錯,到時候終端直接都運行不了。

這時候因爲插件的文件實在太多,那我們只能通過腳本來實現批量吧 CRLF 轉換爲 LF 的格式。

這裏的腳本是直接寫到了指定的目錄去了。和上面說的其實一個道理。你們也是改成對應的你們自己的文件路徑

#!/bin/bash
for file in `find /home/jio/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/`
do
vi +':w ++ff=unix' +':q' ${file}
done
如果你不幸,終端一直報錯

那其實還可以用vscode,修改一下默認終端,找到其他類型的終端操作完在切換回來


ubuntu 安裝 zch 和插件就完成了,其實最多的坑還是下載下來的插件的換行符的問題。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章