專為 Fuchsia 開發的 Vim 工具

功能

fuchsia.vim 指令碼會設定 Vim 執行 包括:

  • 設定路徑,讓 :findgf 瞭解如何尋找檔案。
  • 啟用 FIDL 語法醒目顯示功能 (使用 /tools/fidl/editors/vim/)。
  • 整合基本建構系統,讓 :make 建構並填入 「QuickFix」視窗。
  • 設定 YouCompleteMe (YCM) 提供錯誤檢查、程式碼完成和原始碼導覽功能 紫紅色樹。

安裝

步驟如下:

  1. 更新登入指令碼
  2. 執行 fx set 指令
  3. 更新 Vim 啟動檔案
  4. 重新啟動 Vim 以設定 YouCompleteMe
  5. 建構編譯資料庫

更新登入指令碼

在開機指令碼中加入下列程式碼 (通常是 ~/.bashrc):

export FUCHSIA_DIR=<your_fuchsia_source_directory>

執行 fx set 指令

這個指令使用以下格式:fx set [PRODUCT].[BOARD]。例如:

fx set core.x64

更新 Vim 啟動檔案

如果 ~/.vimrc 檔案中有下列這行文字,請將其移除:

filetype plugin indent on

然後在 ~/.vimrc 中新增下列幾行內容:

if $FUCHSIA_DIR != ""
  source $FUCHSIA_DIR/scripts/vim/fuchsia.vim
endif
filetype plugin indent on

重新啟動 Vim 以設定 YouCompleteMe

如要設定 YouCompleteMe (YCM),您必須將 fuchsia.vim 檔案。

重新啟動 Vim 來執行 source $FUCHSIA_DIR/scripts/vim/fuchsia.vim ~/.vimrc 檔案中的指令 (請參閱 更新 Vim 啟動檔案)。

如要驗證 YCM 是否正常運作,請將遊標移到 .cc 中的 ID 上,或是 Vim 中的 .h 檔案,然後按下 Ctrl+] 鍵,即可前往 或 ID。

自動格式化

Google 的 vim-codefmt 可以自動將格式 省下大把時間這個套件可透過以下套件管理員安裝: Vundlevim-plug

現已推出可醒目顯示 GN 檔案格式和語法的 GN 檔案 下列範例 .vimrc 示範如何開啟 GN 的自動格式化功能 採用 Vim-plug 和 Fuchsia 預先建構的 GN:

call plug#begin('~/.vim/plugged')
Plug 'google/vim-maktaba'
Plug 'google/vim-glaive'
Plug 'google/vim-codefmt'
Plug 'https://gn.googlesource.com/gn', { 'rtp': 'misc/vim' }
call plug#end()
call glaive#Install()

" Set gn path to the Fuchsia prebuilt.
let g:gn_path = systemlist('source ' . g:fuchsia_dir . '/tools/devshell/lib/vars.sh && echo $PREBUILT_GN')[0]
execute ':Glaive codefmt gn_executable="' . g:gn_path . '"'

augroup autoformat_gn
  autocmd!
  autocmd FileType gn AutoFormatBuffer gn
augroup END

如需醒目顯示 Rust,請參閱特定語言的說明 指南