2

Я использую потрясающий плагин NrrwRgn . Я часто редактирую XML-файлы с помощью PHP в разделах CDATA, поэтому в суженном буфере я получаю следующее:

<![CDATA[                        
$foo='bar';
doSomething($foo);
            ]]>

Как можно определить суженную область как PHP, если это PHP, и как XML или что-то еще, когда это что-то еще? Обратите внимание, что даже в этом примере, выбрав раздел PHP с помощью vit\nr теги CDATA все еще присутствуют, так что технически это не правильно сформированный XML, а не PHP.

2 ответа2

1

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

Создайте файл ~/.vim/after/ftplugin/php.vim (создайте несуществующие каталоги, в Windows это будет $VIM/vimfiles/after/ftplugin/php.vim , где $ VIM - это любой каталог, который vim сообщает вам. , при выдаче :echo $VIM) и положить в него:

let g:nrrw_custom_options={}
let g:nrrw_custom_options['filetype']='php'

И в вашем .vimrc вы положили это:

let b:nrrw_aucmd_close= "unlet! g:nrrw_custom_options"

Это должно быть все, что нужно настроить, и тогда, когда вы сузите что-то из файла php, для него автоматически будет установлен тип файла php.

Убедитесь, что плагины файловых типов включены (сделайте это, вставив что-то вроде filetype plugin on в ваш .vimrc .

1

Я не мог найти решение этой проблемы, поэтому я остановился на

nnoremap <leader>js set ft=javascript

Мне тоже любопытно найти решение.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .