2013-02-18 63 views
1

我不喜歡Vim中的Vimball文件,但越來越多的插件使用Vimball來安裝它們。如何在安裝插件時解決這些Vimball問題?

一個月前我安裝了一個64位的操作系統,並動了我的vimfiles目錄C:\用戶\「我的名」
沒問題。一切正常。

今天我想更新一個插件(現在在Vimball)。

採購插件(:so %)後
我收到了很多的錯誤:

Error detected while processing function vimball#Vimvall..vimball#VimballHome: 
E739: Cannot create directory C:/Progra~1/Vim/vimfiles 
Error detected while processing function vimball# Vimball..<SNR>119_ChgDir: 
E344: Can't find directory "C:\Progra~1\Vim\vimfiles in cdpath 
E472: Command failed 

...等一整頁這些樣的錯誤的更多。

發生了什麼,我該如何解決?

+3

':s/more/less'。 – romainl 2013-02-18 08:45:04

+2

「越來越多的插件使用Vimball自行安裝」?真?我發現我使用的大多數插件(可能都是)已經轉移到GitHub存儲庫,並且可以使用[** Pathogen **](https://github.com/tpope/vim-pathogen)輕鬆安裝。恐怕我忘記了曾經有關vimballs的任何信息(我曾在vim.org的時候提過一個,但也轉移到了基於GitHub的方法)。 – Johnsyweb 2013-02-18 08:45:09

+1

增加啓動的詳細程度可能會對您有所幫助。請參閱[':help debug-mode'](http://vimdoc.sourceforge.net/htmldoc/repeat.html#debug-mode)和[':help:verbose'](http://vimdoc.sourceforge.net /htmldoc/various.html#:verbose)。 – Johnsyweb 2013-02-18 08:50:15

回答

6

Vimballs被提取到'runtimepath'上的第一個現有目錄;根據您的輸出,看起來Vim不能識別您將vimfiles移動到的位置,而是默認爲系統範圍的C:/Progra~1/Vim/vimfiles位置,該位置可能受Windows權限保護,從而導致錯誤。

檢查:set runtimepath?的輸出;第一個組件應該是你的C:\Users\my-name\vimfiles;如果不是,則需要通過外部方式(例如,設置HOME環境變量)或直接在的~/.vimrc中使Vim包含它。詳情請參閱:help runtimepath

另外,檢查g:vimball_home;這個Vimball配置覆蓋默認邏輯。

作爲解決方法(不是解決方案),您可以將自定義安裝目錄傳遞給:UseVimball命令。

+0

set runtimepath的輸出? ==>'runtimepath =〜/ vimfiles,C:\ Program Files(x86)\ Vim/vimfiles,C:\ Program Files(x86)\ Vim \ vim73,C:Program Files(x86)\ Vim/vimfiles/〜/ vimfiles/after' echo $ HOME ==>'C:\ Users \「Myname」'當我在vimrc set runtimepath中添加'set runtimepath = $ HOME \ vimfiles'時?作爲輸出提供'runtimepath =〜\ vimfiles',但仍然是vimball錯誤:E492:不是編輯器命令:useVimball – Reman 2013-02-18 10:50:57

+0

發現它:在vimrc的末尾設置了一個vimball主目錄。 :) – Reman 2013-02-18 11:17:54

+1

你的意思是'g:vimball_home';是的,這解釋了它。 – 2013-02-18 11:34:18