Более простой способ работы с {% tags%} в шаблонах Django / Jinja с Emacs? - PullRequest
0 голосов
/ 15 сентября 2011

Я пишу много шаблонов Django / Jinja в Emacs.Я уже использую nXhtml , который отлично справляется с отступом.

Я ищу что-то, что:

  1. Вставляет закрытие %} приЯ набираю {% или позволяю мне нажать клавишу, чтобы вставить {% ▊ %} (где - курсор)
  2. Упрощает создание {% if %} / {% else %} / {% endif %}блоки
  3. Может быть, автоматически добавляет {% endfoo %} для любых {% foo %} тегов

Предложения?

Ответы [ 2 ]

2 голосов
/ 15 сентября 2011

Установите yasnippet и добавьте свои фрагменты в режим nxml, например

#name : {% %}
# --
{% $0 %}

#name : {% for %}
# --
{% for $1 in $2 %}
   $0
{% endfor %}


#name : {% if %}
# --
{% if $0 %}
{% else %}
{% endif %}

Сохранить их в файлах % , % для и %, если соответственно.

Затем вы просто набираете% после вкладки, и он вставит {%%} с курсором между символами процента. Аналогичный тип% if для if конструкции и% for для цикла.

1 голос
/ 12 января 2019

К 2018 году многое изменилось.Я полагаю, что многие пользователи Emacs теперь используют web-mode вместо nXhtml, который больше не разрабатывается с 2012 года .

Поддержка автоматического сопряжения в веб-режиме (например, {%…%}).Когда вы открываете любой HTML-шаблон, вы можете указать, какой движок вы хотите использовать (Mx web-mode-set-engine), или веб-режим определит механизм для вас.

Теперь вы не можетедля этого нужно положиться на Ясниппет

...