Патоген не распознает файлы синтаксиса связок

Я пытаюсь выяснить, как заставить подсветку синтаксиса или заставить цветовую схему в моем.vimrc работать с моим текущим экземпляром VIM версии 7.4.335, установленным через Homebrew. Я использовал Pathogen для загрузки многих плагинов, и я могу сказать, что он работает с некоторыми из них, например с Syntastic и NERDTree, но когда я открываю, скажем, файл GO, я не получаю никакой подсветки синтаксиса.

Я довольно новичок в VIM и Pathogen, но я бы предпочел остаться с VIM вместо MacVim, я использую его для быстрого создания сценариев и создания прототипов, и скорость запуска является основной причиной, по которой я хочу продолжать использовать его вместо ожидания графического интерфейса загрузить. Вот что у меня в.vimrc

set runtimepath+=~/.vim_runtime
set mouse=a
set term=xterm

source ~/.vim_runtime/vimrcs/basic.vim
source ~/.vim_runtime/vimrcs/filetypes.vim
source ~/.vim_runtime/vimrcs/plugins_confic.vim
source ~/.vim_runtime/vimrcs/extened.vim

try
    source ~/.vim_runtime/my_configs.vim
catch
endtry

set nocompatible
call pathogen#infect()
syntax on
filetype plugin indent on
colorscheme solarized
let g:soloarized_termcolors=256

"ack
let g:ack_autofold_results = 1

"syntastic
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 1
let g:syntastic_enable_signs = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_error_symbol = "X"
let g:syntastic_style_error_symbol = ">"
let g:syntastic_warning_symbol = "1"
let g:syntastic_sytle_warning_symbol = ">"

Я проверил эти посты, но они, похоже, не решают мою проблему:

Почему Pathogen "волшебным образом" решает проблемы выделения синтаксиса Vim?

Vim: Не могу получить патоген для загрузки связок

Соляризованная цветовая схема Vim: Должен ли я установить `call pathogen#infect()` в моем.vimrc для правильной работы подсветки синтаксиса?

Подсветка синтаксиса в терминале vim, но не в gVIM

Заранее спасибо!

2 ответа

Решение

Я не думаю, что вы использовали Pathogen, чтобы "скачать много плагинов".

Тем не мение…

set runtimepath+=~/.vim_runtime

Эта строка бессмысленна: ваши плагины, схемы цветов и тому подобное должны войти в ~/.vim/ и больше нигде.

set term=xterm

Эта строка бесполезна: Vim достаточно умен, чтобы знать, в каком типе терминала он выполняется.

source ~/.vim_runtime/vimrcs/basic.vim
source ~/.vim_runtime/vimrcs/filetypes.vim
source ~/.vim_runtime/vimrcs/plugins_confic.vim
source ~/.vim_runtime/vimrcs/extened.vim

Опять же, положи свои вещи в ~/.vim/ и нет никакого смысла так разбивать ваш конфиг, особенно если вы новичок. Кстати, на 4-й строке есть опечатка.

Кроме того, весь смысл runtimepath… линия в верхней части вашего ~/.vimrc сказать Vim, где искать скрипты vim с помощью :runtime команда так, даже используя :sourceвот, это неправильно.

try
    source ~/.vim_runtime/my_configs.vim
catch
endtry

Вы могли бы также try/catch четыре других. Опять же, просто положите все это в свой ~/.vimrc,

set nocompatible

nocompatible устанавливается, когда Vim находит ~/.vimrc файл или ~/.vim/vimrc файл, так что эта строка тоже бесполезна.

call pathogen#infect()

Эта строка должна быть execute pathogen#infect()согласно README Патогена.

colorscheme solarized
let g:soloarized_termcolors=256

let… линия действует как опция для этой цветовой схемы, она должна предшествовать colorscheme… линия и... это опечатка.

Также, set term=xterm заставляет Vim работать в 8/16 цветах, в то время как ваш вариант с соляризацией говорит соляризовать, а Vim принимает 256 цветов. Прими решение.

В основном, ваш ~/.vimrc это беспорядок... давайте исправим это, не так ли?

execute pathogen#infect()

syntax on
filetype plugin indent on

set mouse=a

" here comes all the stuff from your other `vimrcs`

let g:solarized_termcolors=256
colorscheme solarized

let g:ack_autofold_results = 1

let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 1
let g:syntastic_enable_signs = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_error_symbol = "X"
let g:syntastic_style_error_symbol = ">"
let g:syntastic_warning_symbol = "1"
let g:syntastic_sytle_warning_symbol = ">"

Так что это проблема с iTerm, подсветка синтаксиса прекрасно работает через обычный терминал.

Спасибо за помощь. Если я пойму, как заставить iTerm работать с подсветкой синтаксиса VIM, я опубликую его здесь.

Другие вопросы по тегам