2010-11-24 2 views
5

어떻게 이맥스가 항상 sgml 태그 (C-c-C-t)를 닫을 수 있습니까?이맥스는 항상 html 태그를 닫습니다.

예 : div, h2 태그는 정상적으로 작동하지만 p 또는 li은 작동하지 않습니다. 기본적으로 나는 태그를 삽입 할 때 항상 xhtml을 사용하고 있음을 명시하는 방법을 찾고있다.

답변

6

당신은 sgml-xml-mode에 설정해야합니다

이 때 nil이 아닌, 태그 삽입 기능은 XML 호환됩니다.

sgml-mode 시도는 버퍼가 XHTML에 (그래서 자동으로 sgml-xml-mode 켜)이 문서 타입을보고 있는지 생각합니다. 함수 sgml-xml-guess을 참조하십시오. DTD 이름 어딘가에 문자열 "XHTML"이있을 것으로 예상됩니다.

sgml-xml-guess을 작동시키지 못하면 sgml-xml-mode을 명시 적으로 켤 수 있습니다. 아마도이 같은 :

(add-hook 'html-mode-hook #'(lambda nil (setq sgml-xml-mode t))) 
+0

이 상세한 답변을 주셔서 감사합니다,하지만 시간의 99 %는 내가 레일 템플릿 조회수 (RHTML) 또는 자신의 모드가 PHP 파일을 처리하기 때문에 명시 적으로 SGML 모드를 호출 할 수 없습니다 . – vise

+0

나는 당신이 명시 적으로'sgml-mode'를 호출하는 것을 제안하는 것이 아니라, HTML을 편집 할 때'sgml-xml-mode'를't'로 설정한다고 제안합니다. 'rhtml-mode'는'html-mode'에서 파생되었습니다. 그래서 제 훅이 당신을 위해 일해야합니다. –