Hi Markus and all developpers, >>>>> Markus Kohm writes: > The LaTeX package doc, that is usually used via class ltxdoc for the > documentation part of dtx-files, declares ^^A as comment character. > But auctex's doctex mode fails scanning for balanced {...} pairs, if > } is immediately followed by ^^A. You can test it, with this example file: The reason of this error is the syntax-table property put on the closing curly brace. In order to achieve different fontification on the docTeX documentation and the comment after ^^A, the function `font-latex-doctex-^^A' puts the "comment ender" syntax on the closing "}", which hides the proper syntax "closing paren paired with {" and thus leads to the reported error. Actually, `font-latex-doctex-^^A' is essentially just a copy of `doctex-font-lock-^^A' in `tex-mode.el', so the emacs built-in doctex-mode shares exactly the same problem with respect to the given test file at double-clicking. It was hard to me to resolve this problem keeping the closing "}" having "comment ender" syntax, so my proposal is to borrow an idea used at fontifying the verbatim-like environments. I.e, to shift the position of "comment ender" syntax 1 character rightward and put another "comment starter" syntax on the second, not the first, "^" of ^^A. The wrong fontification which the first "^" receives is overwrote afterwards by an additional entry in `font-latex-doctex-keywords'. See the attached patch. Strictly speaking, this patch sets the boundary of two different types of comments in "SOMETHING^^A" at wrong position, not between "G" and the first "^", but between the first and second "^". However, the treatment of comments of AUCTeX is rather regexp centric and slight in syntax, I expect this change doesn't bring serious bad side effects at editing docTeX documents such as filling and indenting. How do you think about this idea? Any comments are appreciated. Regards, Ikumi Keita > --- test.dtx --- > % \begin{macro}{\test}^^A This is an official dtx-comment > % This does not work. Try to double-click to the closing brace before the > % comment and you will get: |Scan error: "Unbalanced parantheses", 22, 22| > % \end{macro} > % > % \begin{macro}{\test}%^^A This is a workaround for an official dtx-comment > % This does work, but the \% after the closing brace is not wanted. > % \end{macro} > % \endinput > % Local Variables: > % mode: doctex > % TeX-master: t > % End: > --- end of file ---