LINUX.ORG.RU

[Emacs] Форматирование XML

 


0

1

Добрый день.

Необходимо отформатировать XML документ с ограничением длины строки.

Вызывая функцию sgml-pretty-print при nXML + Auto-Fill модах emacs надолго «задумывается» даже над сравнительно маленьким регионом.

Существует ли способ выполнить эту задачу эффективнее без использования сторонних форматтеров?

sgml-pretty-print - функция из пакета sgml-mode, который крайне не быстр. я бы написал небольшую функцию, которая сначала бы сделала indent для буфера, а потом бы прошелся циклом вызывая nxml-forward-single-paragraph и выполняя fill-paragraph...

ott ★★★★★
()
Ответ на: комментарий от ott

примерно вот так:

(defun format-xml-buffer ()
  (interactive)
  (save-excursion
    (indent-region (point-min) (point-max))
    (goto-char (point-min))
    (while (nxml-forward-single-paragraph)
      (fill-paragraph))))

ott ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.