Function: TeX-insert-dollar-electric-region

TeX-insert-dollar-electric-region is a byte-compiled function defined in tex.el.

Signature

(TeX-insert-dollar-electric-region)

Documentation

Perform electric math delimiter insertion on a region.

See TeX-electric-math.

Source Code

;; Defined in ~/.emacs.d/elpa/auctex-14.1.2/tex.el
(defun TeX-insert-dollar-electric-region ()
  "Perform electric math delimiter insertion on a region.
See `TeX-electric-math'."
  (when (> (point) (mark))
    (exchange-point-and-mark))
  (cond
   ;; Strip \[...\] or $$...$$
   ((and (eq last-command #'TeX-insert-dollar)
         (or (re-search-forward "\\=\\\\\\[\\([^z-a]*\\)\\\\\\]" (mark) t)
             (re-search-forward "\\=\\$\\$\\([^z-a]*\\)\\$\\$" (mark) t)))
    (replace-match "\\1" t)
    (set-mark (match-beginning 0)))
   ;; $...$ to $$...$$ or \[...\] dep. on mode:
   ((and (eq last-command #'TeX-insert-dollar)
         (re-search-forward "\\=\\$\\([^z-a]*\\)\\$" (mark) t))
    (replace-match (if (derived-mode-p 'LaTeX-mode)
                       "\\\\[\\1\\\\]"
                     "$$\\1$$")
                   t)
    (set-mark (match-beginning 0)))
   ;; \(...\) to \[...\]
   ((and (eq last-command #'TeX-insert-dollar)
         (re-search-forward "\\=\\\\(\\([^z-a]*\\)\\\\)" (mark) t))
    (replace-match "\\\\[\\1\\\\]" t)
    (set-mark (match-beginning 0)))
   (t
    ;; We use `save-excursion' because point must be situated
    ;; before opening symbol.
    (save-excursion (insert (car TeX-electric-math)))
    (exchange-point-and-mark)
    (insert (cdr TeX-electric-math))))
  (TeX-activate-region))