Mercurial > emacs
changeset 98309:01cf1247cab6
(latex-find-indent): ... and don't change original position when
it fails.
author | Martin Rudalics <rudalics@gmx.at> |
---|---|
date | Tue, 23 Sep 2008 06:35:31 +0000 |
parents | 9062732fe4b3 |
children | 49fd9d409f65 |
files | lisp/textmodes/tex-mode.el |
diffstat | 1 files changed, 12 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/textmodes/tex-mode.el Tue Sep 23 06:15:52 2008 +0000 +++ b/lisp/textmodes/tex-mode.el Tue Sep 23 06:35:31 2008 +0000 @@ -2586,15 +2586,18 @@ (member (match-string 2) tex-verbatim-environments) 0) ;; Put leading close-paren where the matching open paren would be. - (and (or (eq (latex-syntax-after) ?\)) - ;; Try to handle escaped close parens. - (and (looking-at "\\\\\\([])}]\\)") - (goto-char (match-beginning 1)))) - (ignore-errors - (save-excursion - (latex-skip-close-parens) - (latex-backward-sexp-1) - (latex-find-indent 'virtual)))) + (and (let (escaped) + (or (eq (latex-syntax-after) ?\)) + ;; Try to handle escaped close parens but keep original + ;; position if it doesn't work out. + (setq escaped (looking-at "\\\\\\([])}]\\)"))) + (ignore-errors + (save-excursion + (when escaped + (goto-char (match-beginning 1))) + (latex-skip-close-parens) + (latex-backward-sexp-1) + (latex-find-indent 'virtual))))) ;; Default (maybe an argument) (let ((pos (point)) ;; Outdent \item if necessary.