From: Karl Fogel Date: Sat, 26 Nov 2016 05:44:48 +0000 (-0600) Subject: Handle TeX comments when making new paragraph X-Git-Tag: emacs-25.1.90~10 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=93c0f51;p=emacs.git Handle TeX comments when making new paragraph * lisp/textmodes/tex-mode.el (tex-handle-newline): New function. Handle comment case directly, and dispatch to `tex-terminate-paragraph' for original behavior in non-comment case. (tex-mode-map): Bind above to C-j, replacing `tex-terminate-paragraph'. --- diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el index 8545a09fa59..ea7fbf8d4c2 100644 --- a/lisp/textmodes/tex-mode.el +++ b/lisp/textmodes/tex-mode.el @@ -869,7 +869,7 @@ START is the position of the \\ and DELIM is the delimiter char." (set-keymap-parent map text-mode-map) (tex-define-common-keys map) (define-key map "\"" 'tex-insert-quote) - (define-key map "\n" 'tex-terminate-paragraph) + (define-key map "\n" 'tex-handle-newline) (define-key map "\M-\r" 'latex-insert-item) (define-key map "\C-c}" 'up-list) (define-key map "\C-c{" 'tex-insert-braces) @@ -1459,6 +1459,17 @@ area if a mismatch is found." (if failure-point (goto-char failure-point)) (not failure-point))) +(defun tex-handle-newline (inhibit-validation) + "Break a TeX paragraph with two newlines, or continue a comment. +If not in a comment, insert two newlines, breaking a paragraph for TeX, +and check for mismatched braces or $s in the paragraph being terminated +unless prefix arg INHIBIT-VALIDATION is non-nil to inhibit the checking. +Otherwise (in a comment), just insert a single continued comment line." + (interactive "*P") + (if (nth 4 (syntax-ppss)) ; non-nil if point is in a TeX comment + (comment-indent-new-line) + (tex-terminate-paragraph inhibit-validation))) + (defun tex-terminate-paragraph (inhibit-validation) "Insert two newlines, breaking a paragraph for TeX. Check for mismatched braces or $s in paragraph being terminated.