diff options
Diffstat (limited to 'elpa/auctex-13.1.3/style/bicaption.el')
-rw-r--r-- | elpa/auctex-13.1.3/style/bicaption.el | 206 |
1 files changed, 0 insertions, 206 deletions
diff --git a/elpa/auctex-13.1.3/style/bicaption.el b/elpa/auctex-13.1.3/style/bicaption.el deleted file mode 100644 index 245b454..0000000 --- a/elpa/auctex-13.1.3/style/bicaption.el +++ /dev/null @@ -1,206 +0,0 @@ -;;; bicaption.el --- AUCTeX style for `bicaption.sty' (v1.1-158) -*- lexical-binding: t; -*- - -;; Copyright (C) 2016--2020 Free Software Foundation, Inc. - -;; Author: Arash Esbati <arash@gnu.org> -;; Maintainer: auctex-devel@gnu.org -;; Created: 2016-11-11 -;; 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 `bicaption.sty' (v1.1-158) from -;; 2016/03/27. `bicaption.sty' is part of TeXLive. - -;; If things do not work or when in doubt, press `C-c C-n'. Comments -;; for improvement are welcome. - -;;; Code: - -;; Needed for compiling `LaTeX-check-insert-macro-default-style': -(require 'latex) - -;; Silence the compiler: -(declare-function font-latex-add-keywords - "font-latex" - (keywords class)) - -(declare-function LaTeX-babel-active-languages "babel" ()) -(declare-function LaTeX-polyglossia-active-languages "polyglossia" ()) - -(defvar LaTeX-caption-supported-float-types) -(defvar LaTeX-caption-key-val-options) - -(defvar LaTeX-bicaption-key-val-options - '(("bi-lang" ("first" "second" "both")) - ("bi-singlelinecheck" ("false" "no" "off" "0" "true" "yes" "on" "1")) - ("bi-slc" ("false" "no" "off" "0" "true" "yes" "on" "1")) - ("bi-swap" ("false" "no" "off" "0" "true" "yes" "on" "1")) - ("listtype+")) - "Key=value options for bicaption macros.") - -(defun LaTeX-arg-bicaption-bicaption (optional &optional prompt star cap-box label-inside) - "Query for the arguments of \"\\bicaption\" incl. a label and insert them. -PROMPT replaces the standard one. If STAR is non-nil, then do -not query for a \\label and short captions, insert only captions. -If CAP-BOX is non-nil, also query and include optional arguments -for the box command. If LABEL-INSIDE is non-nil, insert \\label -inside the first mandatory argument, otherwise after all -arguments." - ;; \bicaption [<list entry #1>]{<heading #1>}[<list entry #2>]{<heading #2>} - ;; \bicaptionbox[<list entry #1>]{<heading #1>}[<list entry #2>]{<heading #2>} - ;; [<width>][<inner-pos>]{<contents>} - (let* (;; \bisubcaption needs an environment, "minipage" will be - ;; popular. If so, check next higher environment to find out - ;; where we are - (currenv (if (string= (LaTeX-current-environment) "minipage") - (LaTeX-current-environment 2) - (LaTeX-current-environment))) - (captionI (TeX-read-string - (TeX-argument-prompt - optional (when prompt - (concat "1. " prompt "bicaption")) - "1. bicaption"))) - (short-captionI - (when (and (not star) - (>= (length captionI) LaTeX-short-caption-prompt-length)) - (TeX-read-string - (TeX-argument-prompt t (when prompt - (concat "Short 1. " prompt "bicaption")) - "Short 1. bicaption")))) - (captionII (TeX-read-string - (TeX-argument-prompt - optional (when prompt - (concat "2. " prompt "bicaption")) - "2. bicaption"))) - (short-captionII - (when (and (not star) - (>= (length captionII) LaTeX-short-caption-prompt-length)) - (TeX-read-string - (TeX-argument-prompt t (when prompt - (concat "Short 2. " prompt "bicaption")) - "Short 2. bicaption"))))) - (indent-according-to-mode) - ;; Insert short & regular 1. caption - (when (and short-captionI (not (string= short-captionI ""))) - (insert LaTeX-optop short-captionI LaTeX-optcl)) - (insert TeX-grop captionI) - ;; For \bi(sub)?captionbox, the label must be inserted here - (when (and label-inside (not star)) - (LaTeX-label currenv 'environment)) - (insert TeX-grcl) - (when auto-fill-function (LaTeX-fill-paragraph)) - (LaTeX-newline) - (indent-according-to-mode) - ;; Insert short & regular 2. caption - (when (and short-captionII (not (string= short-captionII ""))) - (insert LaTeX-optop short-captionII LaTeX-optcl)) - (insert TeX-grop captionII TeX-grcl) - ;; Insert width & pos in case of captionbox macros: - (when cap-box - (let* ((TeX-arg-opening-brace "[") - (TeX-arg-closing-brace "]") - (TeX-last-optional-rejected nil) - (width (LaTeX-check-insert-macro-default-style - (completing-read (TeX-argument-prompt t nil "Width") - (mapcar (lambda (elt) (concat TeX-esc (car elt))) - (LaTeX-length-list))))) - (TeX-last-optional-rejected (or (not width) - (and width (string= width "")))) - (inpos (LaTeX-check-insert-macro-default-style - (if (and width (not (string-equal width ""))) - (completing-read (TeX-argument-prompt t nil "Inner position") - '("c" "l" "r" "s")) - "")))) - (and width (TeX-argument-insert width t)) - (and inpos (TeX-argument-insert inpos t)))) - (when auto-fill-function (LaTeX-fill-paragraph)) - ;; Insert label -- a new line is inserted only if label is there: - (when (and (not label-inside) (not star) - (save-excursion (LaTeX-label currenv 'environment))) - (LaTeX-newline) - (indent-according-to-mode) - (end-of-line)))) - -(defun LaTeX-arg-bicaption-captionsetup (optional) - "Query for 2 arguments for \"\\captionsetup\" with bicaption.sty loaded. -When OPTIONAL is non-nil, include both as optional arguments in -square brackets." - (let* ((flttype (completing-read (TeX-argument-prompt optional nil "Float type") - LaTeX-caption-supported-float-types)) - (biflt (if (and (not (or (string= flttype "bi") - (string= flttype "bi-first") - (string= flttype "bi-second"))) - flttype (not (string= flttype ""))) - (completing-read (TeX-argument-prompt optional nil "Bicaption type") - '("bi" "bi-first" "bi-second")) - ""))) - (TeX-argument-insert flttype optional) - (TeX-argument-insert biflt optional))) - -(TeX-add-style-hook - "bicaption" - (lambda () - - ;; Load caption.el: - (TeX-run-style-hooks "caption") - - ;; Macros - (TeX-add-symbols - '("bicaption" (LaTeX-arg-bicaption-bicaption)) - '("bicaption*" (LaTeX-arg-bicaption-bicaption nil t)) - '("bicaptionbox" (LaTeX-arg-bicaption-bicaption nil nil t t) t) - '("bicaptionbox*" (LaTeX-arg-bicaption-bicaption nil t t) t) - '("bisubcaption" (LaTeX-arg-bicaption-bicaption "sub-")) - '("bisubcaption*" (LaTeX-arg-bicaption-bicaption "sub-" t)) - '("bisubcaptionbox" (LaTeX-arg-bicaption-bicaption "sub-" nil t t) t) - '("bisubcaptionbox*" (LaTeX-arg-bicaption-bicaption "sub-" t t t) t)) - - ;; \bi(sub)?caption(box)? macros should get their own lines - (LaTeX-paragraph-commands-add-locally '("bicaption" "bicaptionbox" - "bisubcaption" "bisubcaptionbox")) - - ;; Fontification - (when (and (featurep 'font-latex) - (eq TeX-install-font-lock 'font-latex-setup)) - (font-latex-add-keywords '(("bicaption" "*[{[{") - ("bicaptionbox" "*[{[{[[") - ("bisubcaption" "*[{[{") - ("bisubcaptionbox" "*[{[{[[")) - 'textual))) - TeX-dialect) - -(defun LaTeX-bicaption-package-options () - "Prompt for package options for the bicaption package." - (TeX-load-style "caption") - (TeX-read-key-val t - (append - `(,(list "language" - (cond ((and (member "babel" (TeX-style-list)) - (LaTeX-babel-active-languages)) - (butlast (LaTeX-babel-active-languages))) - ((and (member "polyglossia" (TeX-style-list)) - (LaTeX-polyglossia-active-languages)) - (butlast (LaTeX-babel-active-languages))) - (t nil)))) - LaTeX-bicaption-key-val-options - LaTeX-caption-key-val-options))) - -;;; bicaption.el ends here |