From becff06c71d277647eda4378203d03ab36e141eb Mon Sep 17 00:00:00 2001 From: mattkae Date: Tue, 17 May 2022 07:07:37 -0400 Subject: Evil mode and latex support --- elpa/auctex-13.1.3/style/scrbase.el | 228 ++++++++++++++++++++++++++++++++++++ 1 file changed, 228 insertions(+) create mode 100644 elpa/auctex-13.1.3/style/scrbase.el (limited to 'elpa/auctex-13.1.3/style/scrbase.el') 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 +;; 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 -- cgit v1.2.1