Я использую 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
ОК, похоже, мои плагины не были загружены в GitHub: -/Я не уверен, почему. Мне нужно выяснить, как загружать папки, которые сами являются git-репозиториями (например, они имеют .git-файл), после чего это решит проблему, с которой я столкнулся. – Integralist
Попробуйте переместить линию 118-120 в начало файла, * до * строки 1. – romainl