2014-09-22 2 views
1

Я использую Vagrant и VirtualBox для настройки и предоставления машины Ubuntu Trusty. На этапе подготовки я загружаю свои точечные файлы (в том числе мои файлы и .tmux.conf, а также мою папку .vim).Невозможно загрузить плагины Vim на Ubuntu trusty64

Мои .tmux.conf работает нормально, но я обнаружил, что мой .vimrc был не в состоянии загрузить свои плагины (я использую менеджер Возбудитель плагин), и поэтому, когда я начинаю Vim я вижу ошибки относительно некоторых цветовых схем не найдены (поскольку конкретной цветовой схемы загружается через плагин), а также некоторые другие параметры, связанные с плагинами в моем .vimrc, вызывают ошибки.

Ниже мой Vagrantfile (не то, что это отношение, но в случае, если вам интересно, что окно, я использую, чтобы до экземпляра Linux с):

VAGRANTFILE_API_VERSION = "2" 

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| 
    config.vm.box = "ubuntu/trusty64" 
    config.vm.network :private_network, ip: "172.17.8.100" 
    config.vm.synced_folder "./Application", "/www", create: true 

    config.vm.provision "shell" do |s| 
    s.privileged = true 
    s.path = "provision.sh" 
    end 

    config.ssh.forward_agent = true 
    config.ssh.forward_x11 = true 
end 

Полный сценарий инициализации можно посмотреть здесь: https://github.com/Integralist/Linux-and-Docker-Development-Environment/blob/master/provision.sh но важный раздел (то есть мерзавца клонирование моих и проверки составляют скрытые за соответствующий linux филиала) выглядит следующим образом:

dotfiles_location=/home/vagrant/dotfiles 
git clone https://github.com/Integralist/dotfiles.git $dotfiles_location 
cd $dotfiles_location && git fetch && git checkout linux 
shopt -s extglob 
mv !(.|..|.git|README.md) .. 

В приведенном выше фрагменте кода я двигаюсь все точечные файлы (т.е. .vimrc, .vim и .tmux.conf) в /home/vagrant/ (обратите внимание: файлы, указанные в круглых скобках, не перемещаются, например, в папку .git).

Когда я исполняю vim я получаю следующее сообщение об ошибке:

Error detected while processing /home/vagrant/.vimrc: 
line 125: 
E185: Cannot find color scheme 'Tomorrow-Night' 

, а затем в Vim ошибок еще раз:

Error detected while processing VimEnter Auto commands for "*": 
E492: Not an editor command: RainbowParenthesesToggle 

Я посмотрел на другие вопросы, связанные Linux на патогена репо, но Я не могу определить, откуда эта проблема?

Исполнительные :scriptnames возвращается:

1: /usr/share/vim/vimrc 
    2: /usr/share/vim/vim74/debian.vim 
    3: /usr/share/vim/vim74/syntax/syntax.vim 
    4: /usr/share/vim/vim74/syntax/synload.vim 
    5: /usr/share/vim/vim74/syntax/syncolor.vim 
    6: /usr/share/vim/vim74/filetype.vim 
    7: ~/.vimrc 
    8: /usr/share/vim/vim74/syntax/nosyntax.vim 
    9: ~/.vim/autoload/pathogen.vim 
10: /usr/share/vim/vim74/ftoff.vim 
11: /usr/share/vim/vim74/ftplugin.vim 
12: /usr/share/vim/vim74/indent.vim 
13: ~/.vim/plugin/BufOnly.vim 
14: ~/.vim/plugin/scratch.vim 
15: ~/.vim/bundle/ZoomWin/plugin/ZoomWinPlugin.vim 
16: /usr/share/vim/vim74/plugin/getscriptPlugin.vim 
17: /usr/share/vim/vim74/plugin/gzip.vim 
18: /usr/share/vim/vim74/plugin/matchparen.vim 
19: /usr/share/vim/vim74/plugin/netrwPlugin.vim 
20: /usr/share/vim/vim74/plugin/rrhelper.vim 
21: /usr/share/vim/vim74/plugin/spellfile.vim 
22: /usr/share/vim/vim74/plugin/tarPlugin.vim 
23: /usr/share/vim/vim74/plugin/tohtml.vim 
24: /usr/share/vim/vim74/plugin/vimballPlugin.vim 
25: /usr/share/vim/vim74/plugin/zipPlugin.vim 

Исполнительные :set rtp возвращается:

runtimepath= 
~/.vim, 
/var/lib/vim/addons, 
/usr/share/vim/vimfiles, 
/usr/share/vim/vim74, 
/usr/share/vim/vimfiles/after, 
/var/lib/vim/addons/after, 
~/.vim/after 

Выполнение :set compatible? возвращает nocompatible

Выполнение :set loadplugins? возвращает loadplugins

Глядя на вывод :scriptnames, кажется, что .vimrc загружается перед файлом патогена? Но если это так, я не уверен, как это решить, поэтому он всегда загружается первым? Я говорил с Тимом Папе (автор Возбудитель) на GitHub об этом, и он предложил:

"It's your vimrc's job to load pathogen.vim so the ordering is correct. Confirm how you're invoking pathogen and the directory structure of your Vim directory"

Я тогда ответил следующее разъяснение (Примечание: я ничего не слышал назад, поэтому я сейчас здесь нужна помощь) ...

Моей полной точной структурой можно ознакомиться здесь: https://github.com/Integralist/dotfiles (технически это linux).

В частности я это называю здесь: https://github.com/Integralist/dotfiles/blob/linux/.vimrc#L119-L120

Примечание: эти работают отлично точечных файлов на моем Mac, и это только с момента загрузки их на машине Linux я заметил проблемы с плагинами не нагружены Возбудитель.

Структура верхнего уровня дерева можно увидеть ниже ...

. 
├── .agignore 
├── .bashrc 
├── .gitconfig 
├── .gitignore_global 
├── .irssi 
├── .tmux.conf 
├── .vim 
│   ├── .netrwhist 
│   ├── autoload 
│   │   └── pathogen.vim 
│   ├── bundle 
│   │   ├── CSApprox 
│   │   ├── Dockerfile.vim 
│   │   ├── Gist.vim 
│   │   ├── Tabmerge 
│   │   ├── ZoomWin 
│   │   ├── ack.vim 
│   │   ├── camelcasemotion 
│   │   ├── ctrlp.vim 
│   │   ├── emmet-vim 
│   │   ├── gruvbox 
│   │   ├── html5.vim 
│   │   ├── nerdtree 
│   │   ├── rainbow_parentheses.vim 
│   │   ├── supertab 
│   │   ├── syntastic 
│   │   ├── tabular 
│   │   ├── targets.vim 
│   │   ├── textutil.vim 
│   │   ├── tomorrow-night-vim 
│   │   ├── vim-airline 
│   │   ├── vim-bookmarks 
│   │   ├── vim-choosewin 
│   │   ├── vim-clojure-highlight 
│   │   ├── vim-clojure-static 
│   │   ├── vim-colors-pencil 
│   │   ├── vim-commentary 
│   │   ├── vim-cucumber 
│   │   ├── vim-dispatch 
│   │   ├── vim-endwise 
│   │   ├── vim-fireplace 
│   │   ├── vim-fugitive 
│   │   ├── vim-gitgutter 
│   │   ├── vim-haml 
│   │   ├── vim-leiningen 
│   │   ├── vim-localrc 
│   │   ├── vim-markdown 
│   │   ├── vim-node 
│   │   ├── vim-polyglot 
│   │   ├── vim-repeat 
│   │   ├── vim-ruby 
│   │   ├── vim-sexp 
│   │   ├── vim-sexp-mappings-for-regular-people 
│   │   ├── vim-surround 
│   │   ├── vim-tbone 
│   │   ├── webapi-vim 
│   │   └── wildfire.vim 
│   ├── colors 
│   │   ├── Tomorrow-Solarized.vim 
│   │   ├── badwolf.vim 
│   │   ├── blazer.vim 
│   │   ├── flatland.vim 
│   │   ├── github.vim 
│   │   ├── gruvbox.vim 
│   │   ├── kellys.vim 
│   │   ├── vividchalk.vim 
│   │   └── whitebox.vim 
│   └── plugin 
│    ├── BufOnly.vim 
│    └── scratch.vim 
├── .vimrc 

Я так пытался удалить все плагины из каталога bundle и положить обратно в папку tomorrow-night-vim плагин, но все еще Vim не может найти плагин, поэтому, когда я выполняю :colorscheme Tomorrow, он не может найти этот файл (это было в надежде, что, возможно, появился другой плагин, который вызывал проблему, и прекратил загрузку всех других плагинов -> сжимал соломинку на том, что я знаю).

Следующий вывод из работы :scriptnames на аналогичную настройке на моем Mac:

~/.vimrc 
    2: /usr/local/Cellar/vim/7.4.335/share/vim/vim74/syntax/syntax.vim 
    3: /usr/local/Cellar/vim/7.4.335/share/vim/vim74/syntax/synload.vim 
    4: /usr/local/Cellar/vim/7.4.335/share/vim/vim74/syntax/syncolor.vim 
    5: /usr/local/Cellar/vim/7.4.335/share/vim/vim74/filetype.vim 
    6: ~/.vim/autoload/pathogen.vim 
    7: /usr/local/Cellar/vim/7.4.335/share/vim/vim74/ftoff.vim 
    8: ~/.vim/bundle/Dockerfile.vim/ftdetect/Dockerfile.vim 
    9: ~/.vim/bundle/vim-clojure-static/ftdetect/clojure.vim 
10: ~/.vim/bundle/vim-cucumber/ftdetect/cucumber.vim 
11: ~/.vim/bundle/vim-haml/ftdetect/haml.vim 
12: ~/.vim/bundle/vim-markdown/ftdetect/markdown.vim 
13: ~/.vim/bundle/vim-node/ftdetect/node.vim 
14: ~/.vim/bundle/vim-polyglot/ftdetect/polyglot.vim 
15: ~/.vim/bundle/vim-ruby/ftdetect/ruby.vim 
16: ~/.vim/bundle/vim-polyglot/after/ftdetect/rspec.vim 
17: /usr/local/Cellar/vim/7.4.335/share/vim/vim74/ftplugin.vim 
18: /usr/local/Cellar/vim/7.4.335/share/vim/vim74/indent.vim 
19: ~/.vim/bundle/tomorrow-night-vim/colors/Tomorrow-Night.vim 
20: ~/.vim/plugin/BufOnly.vim 
21: ~/.vim/plugin/scratch.vim 
22: ~/.vim/bundle/ack.vim/plugin/ack.vim 
23: ~/.vim/bundle/camelcasemotion/plugin/camelcasemotion.vim 
24: ~/.vim/bundle/CSApprox/plugin/CSApprox.vim 
25: ~/.vim/bundle/ctrlp.vim/plugin/ctrlp.vim 
26: ~/.vim/bundle/ctrlp.vim/autoload/ctrlp/mrufiles.vim 
27: ~/.vim/bundle/emmet-vim/plugin/emmet.vim 
28: ~/.vim/bundle/Gist.vim/plugin/gist.vim 
29: ~/.vim/bundle/nerdtree/plugin/NERD_tree.vim 
30: ~/.vim/bundle/nerdtree/autoload/nerdtree.vim 
31: ~/.vim/bundle/nerdtree/lib/nerdtree/path.vim 
32: ~/.vim/bundle/nerdtree/lib/nerdtree/menu_controller.vim 
+0

ОК, похоже, мои плагины не были загружены в GitHub: -/Я не уверен, почему. Мне нужно выяснить, как загружать папки, которые сами являются git-репозиториями (например, они имеют .git-файл), после чего это решит проблему, с которой я столкнулся. – Integralist

+0

Попробуйте переместить линию 118-120 в начало файла, * до * строки 1. – romainl

ответ

0

Так что, кажется, проблема была не патоген, но с Git и не совершать мои подмодули. По-видимому, есть способ обойти эту проблему, используя .gitmodules файл, но у меня не было времени, чтобы исследовать его дальше, так что я решил эту проблему, используя некоторые основные Unix команды:

find . -type d -name '.git' | xargs rm -rf

Я тогда был в состоянии зафиксировать содержимое подмодульных папок

Смежные вопросы