diff options
| author | mattkae <mattkae@protonmail.com> | 2022-05-17 07:07:37 -0400 | 
|---|---|---|
| committer | mattkae <mattkae@protonmail.com> | 2022-05-17 07:07:37 -0400 | 
| commit | becff06c71d277647eda4378203d03ab36e141eb (patch) | |
| tree | a1f73bba3676f34e0faf76764f5de963321f5576 /elpa/auctex-13.1.3/style/scrbase.el | |
| parent | 3f4a0d5370ae6c34afe180df96add3b8522f4af1 (diff) | |
Evil mode and latex support
Diffstat (limited to 'elpa/auctex-13.1.3/style/scrbase.el')
| -rw-r--r-- | elpa/auctex-13.1.3/style/scrbase.el | 228 | 
1 files changed, 228 insertions, 0 deletions
| diff --git a/elpa/auctex-13.1.3/style/scrbase.el b/elpa/auctex-13.1.3/style/scrbase.el new file mode 100644 index 0000000..e5cc853 --- /dev/null +++ b/elpa/auctex-13.1.3/style/scrbase.el @@ -0,0 +1,228 @@ +;;; scrbase.el --- AUCTeX style for the KOMA-Script bundle.  -*- lexical-binding: t; -*- + +;; Copyright (C) 2002, 2004, 2005, 2007, 2014, 2018-2021 Free Software Foundation, Inc. + +;; Author: Mark Trettin <Mark.Trettin@gmx.de> +;; Created: 2002-09-26 +;; Keywords: tex + +;; This file is part of AUCTeX. + +;; AUCTeX is free software; you can redistribute it and/or modify it +;; under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 3, or (at your option) +;; any later version. + +;; AUCTeX is distributed in the hope that it will be useful, but +;; WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU +;; General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with AUCTeX; see the file COPYING.  If not, write to the Free +;; Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA +;; 02110-1301, USA. + +;;; Commentary: + +;; This file adds support for the KOMA-Script bundle.  This file +;; contains the base definitions that work with all KOMA-Script +;; classes (scrarctl.cls, scrreprt.cls, scrbook.cls and scrlttr2.cls). +;; You need this file since it's loaded from the class-styles. + +;;; Code: + +(require 'tex) +(require 'latex) + +;; Silence the compiler: +(declare-function font-latex-add-keywords +                  "font-latex" +                  (keywords class)) + +(TeX-add-style-hook "scrbase" +                    (lambda () +                      (TeX-add-symbols +                       "appendixmore" +                       "autodot" +                       '("addtokomafont" TeX-arg-KOMA-fontelements t) +                       '("areaset" [ "BCOR" ] "Width" "Height") +                       '("captionabove" [ "Lof entry" ] "Caption") +                       '("captionbelow" [ "Lof entry" ] "Caption") +                       '("cleardoubleemptypage") +                       '("cleardoubleplainpage") +                       '("cleardoublestandardpage") +                       '("dedication" t) +                       '("deffootnote" [ "Mark width" ] "Indent" "Parindent" "Definition") +                       '("deffootnotemark" "Definition") +                       '("extratitle" t) +                       '("ifpdfoutput" t nil) +                       '("ifthispageodd" t nil) +                       '("lowertitleback" t) +                       '("maketitle" [ "Pagenumber" ]) +                       '("marginline" t) +                       '("publishers" "Publishers") +                       '("setbibpreamble" "Preamble") +                       '("setcaphanging") +                       '("setcapindent" "Indent") +                       '("setcapindent*" "X-Indent") +                       '("setcapmargin" [ "Margin left" ] "Margin") +                       '("setcapmargin*" [ "Margin inside" ] "Margin") +                       '("setcapwidth" [ TeX-arg-KOMA-capjust ] "Width") +                       '("setindexpreamble" "Preamble") +                       '("setkomafont" TeX-arg-KOMA-fontelements t) +                       '("subject" "Subject") +                       '("thanks" "Footnote") +                       '("thefootnotemark") +                       '("titlehead" t) +                       '("uppertitleback" t) +                       '("usekomafont" TeX-arg-KOMA-fontelements)) +                      (LaTeX-add-environments +                       '("labeling" (lambda (env &rest ignore) +                                      (LaTeX-insert-environment +                                       env +                                       (let ((delim (TeX-read-string "(Optional) Delimiter: ")) +                                             (width (TeX-read-string "Longest item: "))) +                                         (concat +                                          (if (not (zerop (length delim))) +                                              (format "[%s]" delim)) +                                          (format "{%s}" width)))) +                                      (LaTeX-find-matching-begin) +                                      (end-of-line 1) +                                      (LaTeX-insert-item))) +                       '("addmargin" (lambda (env &rest ignore) +                                       (LaTeX-insert-environment +                                        env +                                        (let ((leftin (TeX-read-string "(Optional) Left Indentation: ")) +                                              (indent (TeX-read-string "Indentation: "))) +                                          (concat +                                           (if (not (zerop (length leftin))) +                                               (format "[%s]" leftin)) +                                           (format "{%s}" indent)))))) +                       '("addmargin*" (lambda (env &rest ignore) +                                        (LaTeX-insert-environment +                                         env +                                         (let ((innin (TeX-read-string "(Optional) Inner Indentation: ")) +                                               (indent (TeX-read-string "Indentation: "))) +                                           (concat +                                            (if (not (zerop (length innin))) +                                                (format "[%s]" innin)) +                                            (format "{%s}" indent)))))) +                       '("captionbeside" (lambda (env &rest ignore) +                                           (LaTeX-insert-environment +                                            env +                                            (let ((lofent (TeX-read-string "(Optional) Lof Entry: ")) +                                                  (title (TeX-read-string "Caption: ")) +                                                  (place (TeX-read-string "(Optional) Placement (l,r,o,i): ")) +                                                  (width (TeX-read-string "(Optional) Width: ")) +                                                  (offset (TeX-read-string "(Optional) Offset: "))) +                                              (concat +                                               (if (not (zerop (length lofent))) +                                                   (format "[%s]" lofent)) +                                               (format "{%s}" title) +                                               (if (not (zerop (length place))) +                                                   (format "[%s]" place)) +                                               (if (not (zerop (length width))) +                                                   (format "[%s]" width)) +                                               (and +                                                (not (zerop (length place))) +                                                (not (zerop (length offset))) +                                                (format "[%s]%s" offset +                                                        (if (y-or-n-p "Starred? ") +                                                            "*" ""))))))))) +                      (LaTeX-section-list-add-locally '(("addpart" 0) +                                                        ("addsec" 2) +                                                        ("minisec" 7))) +                      ;; This doesn't work. Maybe it's RefTeX's label insertion? +                      (make-local-variable 'LaTeX-section-label) +                      (setq LaTeX-section-label (append +                                                 LaTeX-section-label +                                                 '(("addpart" . nil) +                                                   ("addsec" . nil) +                                                   ("minisec" . nil)))) +                      ;; Fill \minisec{...} like normal sectioning commands +                      (LaTeX-paragraph-commands-add-locally "minisec") +                      ;; Fontification +                      (when (and (featurep 'font-latex) +                                 (eq TeX-install-font-lock 'font-latex-setup)) +                        ;; Textual keywords +                        (font-latex-add-keywords '(("captionabove" "[{") +                                                   ("captionbelow" "[{") +                                                   ("dedication" "{") +                                                   ("extratitle" "{") +                                                   ("lowertitleback" "{") +                                                   ("maketitle" "[") +                                                   ("marginline" "{") +                                                   ("publishers" "{") +                                                   ("subject" "{") +                                                   ("setbibpreamble" "{") +                                                   ("setindexpreamble" "{") +                                                   ("titlehead" "{") +                                                   ("uppertitleback" "{")) +                                                 'textual) +                        ;; Function keywords +                        (font-latex-add-keywords '(("deffootnote" "[{{{") +                                                   ("deffootnotemark" "{") +                                                   ("ifpdfoutput" "{{") +                                                   ("ifthispageodd" "{{")) +                                                 'function) +                        ;; Variable keywords +                        (font-latex-add-keywords '(("addtokomafont" "{{") +                                                   ("areaset" "[{{") +                                                   ("setcaphanging" "") +                                                   ("setcapindent" "{") +                                                   ("setcapmargin" "*[{") +                                                   ("setcapwidth" "[{") +                                                   ("setkomafont" "{{") +                                                   ("typearea" "[{") +                                                   ("usekomafont" "{")) +                                                 'variable) +                        ;; Warning keywords +                        (font-latex-add-keywords '("cleardoublestandardpage" +                                                   "cleardoubleplainpage" +                                                   "cleardoubleemptypage") +                                                 'warning) +                        ;; Sectioning keywords +                        (font-latex-add-keywords '(("addpart" "[{")) 'sectioning-1) +                        (font-latex-add-keywords '(("addsec" "[{")) 'sectioning-2) +                        (font-latex-add-keywords '(("minisec" "[{")) 'sectioning-4))) +                    TeX-dialect) + +(defun TeX-arg-KOMA-setpreamble (optional &optional prompt) +  "Prompt for KOMA-Script's \\set*preamble position with completion." +  (TeX-argument-insert +   (completing-read +    (TeX-argument-prompt optional prompt "Position") +    '(("") ("l") ("r") ("c") ("o") ("u") +      ("lo") ("lu") ("ro") ("ru") ("co") ("cu")) +    nil t) +   optional)) + +(defun TeX-arg-KOMA-capjust (optional &optional prompt) +  "Prompt for KOMA-Script's \\setcapwidth justification with completion." +  (TeX-argument-insert +   (completing-read +    (TeX-argument-prompt optional prompt "Justification") +    '(("") ("l") ("r") ("c") ("i") ("o")) +    nil t) +   optional)) + +(defun TeX-arg-KOMA-fontelements (optional &optional prompt) +  "Prompt for KOMA-Script's fontelements with completion." +  (TeX-argument-insert +   (completing-read +    (TeX-argument-prompt optional prompt "Element") +    '(("") +      ("caption") ("captionlabel") +      ("descriptionlabel") ("dictum") ("dictumauthor") ("dictumtext") +      ("footnote") ("footnotelabel") ("footnotereference") +      ("pagefoot") ("pagehead") ("pagenumber") ("pagination") +      ("sectioning") ("part") ("partnumber") ("chapter") ("section") +      ("subsection") ("subsubsection") ("paragraph") ("subparagraph") +      ("title") ("disposition") ("minisec")) +    nil t) +   optional)) +  +(add-to-list 'LaTeX-item-list '("labeling" . LaTeX-item-argument)) + +;;; scrbase.el ends here | 
