Обнаружение типов файлов не работает

3

Я использую то же самое vimrcна двух отдельных компьютерах, оба MacBook используют (MacVim). Один правильно определяет тип файла после запуска файла из терминала. Другой заставляет меня печатать вручную.

:set filetype=php

Любые другие любопытные наблюдения о том, какие настройки в vimrc управляют этим поведением, приветствуются.

Эрик Лещинский
источник
Кстати, не имеет значения, какой тип файла мне нужен. То же самое происходит с любым файлом.
Я так понимаю, вы решили проблему, обновив MacVim?
Джозеф Холстен

Ответы:

7

попробуйте добавить строку: filetype offпередfiletype plugin indent on

РФЭС
источник
Вы спасли день. Спасибо. Кстати, вы знаете, почему это? Почему я должен явно выключить, а затем включить.
user14416
3

Первое, что я хотел бы проверить - на сломанной машине отредактируйте ваш vimrc и убедитесь, что set filetype onон где-то там.

Другие вещи, чтобы проверить на сломанной машине:

  1. $ VIMRUNTIME / filetype.vim существует
  2. Что :filetypeотображается, когда вы редактируете файл? (Должен сказать, что плагин обнаружения и отступ включены.)
  3. Появляется ли set syntax offв вашем vimrc где-нибудь?

Несколько вещей из просмотра вашего файла:

Строки 70-72:

Типы файлов также используются для подсветки синтаксиса. Если используется :syntax onкоманда, также устанавливается определение типа файла. Там нет необходимости делать :filetype onпосле :syntax on.

Если вы собираетесь использовать filetype plugin indent on, то вам не нужно filetype onпрямо перед этим. Вот как работают различные команды:

отступ модуля плагина команды ~  
: тип файла включен без изменений без изменений  
: тип файла выключен, без изменений, без изменений  
: плагин filetype включен без изменений  
: плагин filetype выключен без изменений выключен без изменений  
: отступ для типа файла включен без изменений  
: тип файла отступ отключен без изменений отключен  
: отступ для плагина filetype включен on on  
: отступ для плагина filetype выключен без изменений выключен  

Строка 170: отключить отключение NERD. Вы получаете жалобы на использование файлов?

Другие мысли:

Возможно ли, что файл на нерабочем компьютере имеет измененный filetypes.vim? Различайте файлы. Они точно такие же? Разрешения одинаковы?

DaveParillo
источник
1. Да 2. Определение типа файла: Плагин ON: Отступ ON: ON 3. Нет
0

Последние версии vim не выполняют автоматическое определение типов файлов при запуске, потому что вы можете устанавливать команды в .vimrc, которые влияют на обнаружение типов файлов.

Поместите следующий код в конец вашего .vimrc, и вы снова получите определение типа файла

filetype on
filetype plugin on
filetype indent on
Кен Блум
источник
к сожалению, это не сработало
0

Мало вещей. Поскольку на одном из этих двух ваш vimrc «работает», это означает, что проблема в другом (я полагаю, на первом все работает удовлетворительно).

Vim может загружать файлы конфигурации из разных каталогов, имеющих разные приоритеты загрузки (одна перезаписывает другую). Смотрите ": помогите vimfiles", чтобы увидеть, какие из них.

Во-вторых, попробуйте ": echo $ myvimrc", чтобы увидеть, откуда загружается ваш "последний" vimrc. Это тот, на который вы сейчас ссылаетесь?

В-третьих, как уже указывал Дэйв, у вас есть файл в каталоге vim, называемый filetype.vim, и у вас есть подходящий файл типа файла?

Если ни один из этих способов не помог вам, сообщите нам также, какую версию vim / gvim вы используете.

ладья
источник
: echo $ myvimrc показывает мне ~ / Users / joe / .vimrc это то, что я ожидал. MacVim Snapshot 47 работает отлично. MacVim 7.2 стабильный 1.2 (33.3) не работает нормально. Хорошо, я думаю, что мне следует обновить MacVim! Спасибо за внимание, ребята.