По умолчанию, когда вы посещаете файл .html
в Emacs (22 или 23), он помещает вас в html-mode
. Это, вероятно, не то, что вы хотите. Вы, вероятно, хотите nxml-mode
, что серьезно. nxml-mode
, похоже, поставляется только с Emacs 23, хотя вы можете скачать его для более ранних версий emacs с веб-сайта nXML . Существует также пакет Debian и Ubuntu с именем nxml-mode
. Вы можете ввести nxml-mode
с помощью:
M-x nxml-mode
Вы можете просмотреть документацию в режиме nxml с помощью:
C-h i g (nxml-mode) RET
С учетом всего сказанного вам, вероятно, придется использовать что-то вроде Tidy , чтобы переформатировать пример xhtml. nxml-mode
получит вас от
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head></head>
<body>
<table>
<tr>
<td>blah</td></tr></table>
</body>
до
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head></head>
<body>
<table>
<tr>
<td>blah</td></tr></table>
</body>
</html>
но я не вижу более общего способа делать разрывы строк для некоторых тегов XML, как вы хотите. Обратите внимание, что C-j
вставит новую строку с правильным отступом, так что вы можете сделать быстрый макрос или взломать defun
, который будет выполнять ваши таблицы.