emacs/code/elpa/auctex-13.1.3/style/fontaxes.el

117 lines
4.0 KiB
EmacsLisp

;;; fontaxes.el --- AUCTeX style for `fontaxes.sty' version v1.0d -*- lexical-binding: t; -*-
;; Copyright (C) 2014, 2018, 2020 Free Software Foundation, Inc.
;; Author: Arash Esbati <arash@gnu.org>
;; Maintainer: auctex-devel@gnu.org
;; Created: 2014-10-12
;; 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 `fontaxes.sty' version v1.0d from
;; 2014/03/23. `fontaxes.sty' is part of TeXLive.
;; Thanks to Mosè Giordano for his perceptive comments on
;; implementation of "figureversion".
;;; Code:
(require 'tex)
;; Silence the compiler:
(declare-function font-latex-add-keywords
"font-latex"
(keywords class))
(TeX-add-style-hook
"fontaxes"
(lambda ()
(TeX-add-symbols
;; Various font shapes:
;; These macros are now part of LaTeX kernel 2020-02-02
;; '("swshape" -1) ; swash shape
;; '("sscshape" -1) ; spaced small caps
;; '("swdefault" 0)
;; '("sscdefault" 0)
;; '("ulcdefault" 0)
'("fontprimaryshape" t)
'("fontsecondaryshape" t)
;; Figure versions
'("figureversion"
(TeX-arg-eval mapconcat #'identity
(TeX-completing-read-multiple
"Style, alignment: "
'(("text") ("osf")
("lining") ("lf")
("tabular") ("tab")
("proportional") ("prop"))) ","))
'("txfigures" -1) ; style: text figures (osf)
'("lnfigures" -1) ; style: lining figures
'("tbfigures" -1) ; alignment: tabular figures
'("prfigures" -1) ; alignment: proportional figures
'("fontfigurestyle"
(TeX-arg-eval completing-read "Style: "
'(("text") ("lining"))))
'("fontfigurealignment"
(TeX-arg-eval completing-read "Alignment: "
'(("tabular") ("proportional"))))
'("fontbasefamily" t)
;; Math versions
'("boldmath" -1) ; math weight
'("unboldmath" -1) ;
'("tabularmath" -1) ; math figure alignment
'("proportionalmath" -1) ;
'("mathweight"
(TeX-arg-eval completing-read "Math weight: "
'(("bold") ("normal"))))
'("mathfigurealignment"
(TeX-arg-eval completing-read "Math figure alignment: "
'(("tabular") ("proportional"))))
;; Additional commands
;; These macros are now part of LaTeX kernel 2020-02-02
;; '("textsw" t)
;; '("textssc" t)
;; '("textulc" t)
'("textfigures" t)
'("liningfigures" t)
'("tabularfigures" t)
'("proportionalfigures" t))
;; Fontification
(when (and (featurep 'font-latex)
(eq TeX-install-font-lock 'font-latex-setup))
(font-latex-add-keywords '(("textfigures" "{")
("liningfigures" "{")
("tabularfigures" "{")
("proportionalfigures" "{"))
'type-command)
(font-latex-add-keywords '(("figureversion" "{"))
'variable)))
TeX-dialect)
(defvar LaTeX-fontaxes-package-options nil
"Package options for the fontaxes package.")
;;; fontaxes.el ends here