2014-01-18 3 views
0

У меня возникла проблема с складыванием Vim при использовании двигателя шаблонов лезвий. Он отображает на странице сворачивающиеся маркеры. Таким образом, после освежающего окна браузера я вижу /{{{/vim складной с laravel blade templating engine

Мой складной установлен на маркер - это единственный параметр складывание в моей .vimrc.

Кто-нибудь знает, как это исправить? Спасибо.

Ok здесь обновление:

После ввода команды в многословные Vim вот что я получил:

:verbose set fdm → foldmethod=marker 
:verbose set frm? → foldmarker = {{{,}}} 
:verbose set fdt? → foldtext=foldtext() 

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

+0

Ваша структура, вероятно, дроссели на foldmarkers Не могли бы вы опубликовать пример – romainl

+0

Пожалуйста, пост некоторые примеры кода и тому вывод ': verbose set fdm? fdt? fmr?'. – benjifisher

ответ

1

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

Вам необходимо встроить их в комментарии, например. HTML: <!-- {{{1 -->. Vim может помочь вам с этим (на zf - создать складку) через опцию 'commentstring'.

Отметьте, что foldmarkers в основном используются только для персональных текстовых файлов (там, где вы хотите создать структуру сгибания без правильного синтаксиса или другой формальной структуры). Для языков программирования вы скорее используете либо syntax, expr, либо indent foldmethods. Это проще, чем управлять сгибами самостоятельно, и это не мутирует код с конкретным редактором мусором, который там не принадлежит (или ваши коллеги, не участвующие в Vim!)

В случае, если ваш шаблонный движок основан на HTML, это (если положить в ~/.vim/after/syntax/html.vim вместе с :setlocal foldmethod=syntax должны дать вам складывание:.?

:syntax region htmlFold start="<\z(p\|h\d\|table\|colgroup\|thead\|tfoot\|tbody\|t[dhr]\|pre\|[diou]l\|li\|span\|div\|head\|script\|style\|blockquote\|form\)\%(\_s*\_[^/]\?>\|\_s\_[^>]*\_[^>/]>\)" end="</\z1\_s*>" fold transparent keepend extend containedin=htmlHead,htmlH\d 
Смежные вопросы