設定 vimrc 讓 Mac 內建的 Vim 更美觀好用

工欲善其事,必先利其器。Vim 號稱是 Linux 與 MacOS 內建的最強文字編輯器,但我第一次用時想要輸入文字卻發現只有游標在動來動去 XD 直到最近認真開始學才發現 Vim 的美好,以及其「偷懶」的地方。從 Sublime Text、到現在的愛用 VS Code,使用上其實有一個問題,就是手常常要離開鍵盤去摸觸控板、或者移動滑鼠,Macbook 觸控板相當好用是還好,但如果在 Windows 上這件事就變得非常麻煩(到底有多懶)。沒錯,於是編輯器之神 Vim 來了!

不過預設的 Vim 實在不怎麼美觀,所以今天就先來讓 Vim 變得賞心悅目吧!

配色主題

打 Code 要有個好心情,就要先來搭配個自己喜歡的 Syntax Highlighting 配色。自己很喜歡 Spacegray,他有 Sublime Text 版 也有 VS Code 版,不意外也可以找到 Vim 版的(都是從 base16 theme 改的),Windows 版的 gvim 我也有裝沒有問題,但是(人生就是這個但是)不知道為什麼設定在 Mac 內建的 Terminal 裡看起來就是不一樣啊!

# In Terminal.app
export TERM=xterm-256color

# In ~/.vimrc
set t_Co=256 "t_Co means terminal color

以上設定我通通試過了沒有用,有人是改下載 MacVim,但我不想要下載多餘的東西啊!最後決定從支援 Terminal 的主題下手自己改,終於!

vim screenshot

我把這個版本放上 Github 了,有需要可以自行取用。

基本介面設定

syntax on
set background=dark
set tabstop=4 softtabstop=4 shiftwidth=4
set guifont=Fira\ Code:h12
set lines=50 columns=135
set scrolloff=10
set list listchars=tab:\:\ ,trail:·,extends:»,precedes:«,nbsp:×

set ai
set nowrap
set number
set ruler
set hlsearch
set cursorline

syntax on 啟用 Syntax Highlighting 配色功能。

set background=dark 設定暗色背景(有些配色主題需要次設定)。

set tabstop=4 softtabstop=4 shiftwidth=4 把縮排跟 Tab 鍵預設的 8 格空白大小改成 4 格。

set guifont=Fira\ Code:h12 把預設的字體改成 Fira Code,字級大小 12。但這在 Mac 上沒有用,請直接修改 Terminal 的顯示字體。

set lines=50 columns=135 設定 Vim 打開時的預設視窗大小。

set scrolloff=10 設定游標能移動到視窗邊界的最小行數(如果行數允許)。

set list listchars=tab:\:\ ,trail:·,extends:»,precedes:«,nbsp:× 設定縮排的顯示符號,效果類似 Indent Guide,算是免外掛的解決方法,注意tab後面第二個反斜線緊接著一個空白。

set ai 設定換行時自動縮排。

set nowrap 設定單行文字不隨視窗大小折行。

set number 設定顯示行號。

set ruler 設定右下角顯示游標所在行數。

set hlsearch 設定反白顯示所有符合的搜尋字詞,欲取消可以輸入 :set noh,或者 :let @/=""

set cursorline 設定反白顯示目前游標所在的行。

Vim 操作

這幾個網站寫的很清楚,很容易入門。

  1. 大家來學VIM
  2. Vim 文字編輯器教學和常用按鍵與指令表

或者可以看這份官方文件,建議了解 Vim 基本操作邏輯後再來看,裡面有不同模式下的所有支援指令。