VIM實(shí)現(xiàn)文件快速跳轉(zhuǎn)插件詳解
前言
日常使用 VIM 的時(shí)候經(jīng)常有跳轉(zhuǎn)到特定目錄下某個(gè)文件的需求:
- 使用 vimwiki 記筆記時(shí)會(huì)默認(rèn)把所有筆記保存在目錄 ~/vimwiki 下, 當(dāng)我們想查看某個(gè)筆記時(shí)就打開(kāi)那個(gè)目錄下的某個(gè)文件;
- 我平時(shí)會(huì)寫(xiě)一些 shell 工具, 保存在 ~/bin 目錄下, 就會(huì)有在這個(gè)目錄下創(chuàng)建或者打開(kāi)文件的需求;
- 如果你用 ultisnip 之類(lèi)的插件的話, 就需要經(jīng)常編輯不同類(lèi)型文件對(duì)應(yīng)的 snippets 文件;
- …
根據(jù)我個(gè)人的使用經(jīng)驗(yàn), 在特定目錄下打開(kāi)某個(gè)文件 的需求還是很多的, 于是便寫(xiě)了插件 FileJumper 來(lái)實(shí)現(xiàn)這個(gè)需求.
這個(gè)插件提供了下面這些功能:
- 通過(guò)一行配置能快速定義和某個(gè)目錄綁定的 command;
- 通過(guò)執(zhí)行 command filename 能快速打開(kāi)對(duì)應(yīng)目錄下的某個(gè)文件, 能通過(guò) tab 鍵補(bǔ)全文件名;
- 能通過(guò)指定不同的 vim 命令以不同的模式打開(kāi)文件, 如 command filename vnew 等;
下面就會(huì)介紹如何安裝, 配置已經(jīng)使用這個(gè)插件.
安裝和配置
可以通過(guò) vim-plug 進(jìn)行安裝:
Plug 'https://github.com/hiberabyss/FileJumper'
安裝完成后通過(guò)配置變量 g:file_jumper_command 來(lái)定義不同的 command, 下面是插件默認(rèn)的配置:
let g:file_jumper_command = {
\ "Gbin": {'dir': expand("$HOME/bin"), 'extension': ''},
\ "Gwiki": {'dir': g:myvimwikidir, 'extension': '.wiki', 'keymap': '<Leader>wg'},
\ }
- Gbin 之類(lèi)的是命令名;
- dir 表示和這個(gè)命令綁定的目錄;
- extension 表示對(duì)應(yīng)目錄下的文件的默認(rèn)后綴名, 在打開(kāi)文件時(shí)會(huì)被自動(dòng)添加上去;
- keymap 表示給這個(gè)命令映射一個(gè)快捷鍵;
如何使用
執(zhí)行 Gbin pyserver 就會(huì)默認(rèn)通過(guò) tabnew ~/bin/pyserver 來(lái)打開(kāi)對(duì)應(yīng)的文件:

在上面的演示中, 我們只輸入了 py 然后按 tab 鍵就可以自動(dòng)補(bǔ)全文件名 pyserver.
我們也可以通過(guò)添加 vim 命令來(lái)決定文件的打開(kāi)方式:

從上面的演示中可以看出在使用了 vnew 或者 e 之后, vim 打開(kāi)文件的方式會(huì)和默認(rèn)的不一樣. 我們也可以使用 bot vnew 之類(lèi)的復(fù)合命令.
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
Linux之進(jìn)程間通信(共享內(nèi)存【mmap實(shí)現(xiàn)+系統(tǒng)V】)
這篇文章主要介紹了Linux之進(jìn)程間通信(共享內(nèi)存【mmap實(shí)現(xiàn)+系統(tǒng)V】),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03
在Linux中如何查看可用的網(wǎng)絡(luò)接口詳解
這篇文章主要給大家介紹了關(guān)于在Linux中如何查看可用的網(wǎng)絡(luò)接口的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Linux具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03
Linux云服務(wù)器搭建SFTP服務(wù)器圖片服務(wù)器的操作
這篇文章主要介紹了Linux云服務(wù)器搭建SFTP服務(wù)器圖片服務(wù)器的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07
解決VScode配置遠(yuǎn)程調(diào)試Linux程序的問(wèn)題
這篇文章主要介紹了VScode配置遠(yuǎn)程調(diào)試Linux程序及問(wèn)題解決辦法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08

