emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] 16/299: * latex.el (LaTeX-pagestyle-list): New variable. (TeX-ar


From: Stefan Monnier
Subject: [elpa] 16/299: * latex.el (LaTeX-pagestyle-list): New variable. (TeX-arg-pagestyle): Use it. * style/imakeidx.el: New style by Mosè Giordano <address@hidden>.
Date: Sun, 02 Nov 2014 03:09:54 +0000

monnier pushed a commit to branch externals/auctex
in repository elpa.

commit a80621cde5cc695cb2f5521f9346bb4569124a26
Author: Tassilo Horn <address@hidden>
Date:   Sun Dec 30 17:05:47 2012 +0000

    * latex.el (LaTeX-pagestyle-list): New variable.
    (TeX-arg-pagestyle): Use it.
    * style/imakeidx.el: New style by Mosè Giordano <address@hidden>.
---
 ChangeLog         |    8 ++++
 latex.el          |    9 ++++-
 style/imakeidx.el |  101 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 117 insertions(+), 1 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index e42a36a..199443d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2012-12-30  Mos� Giordano  <address@hidden>
+
+        * latex.el (LaTeX-pagestyle-list): New variable.
+       (TeX-arg-pagestyle): Use it.
+
+        * style/imakeidx.el: New style by Mos� Giordano
+       <address@hidden>.
+
 2012-12-29  Ikumi Keita <address@hidden>
 
        * doc/tex-ref.tex: Fix apparent errors and add keybind entries for
diff --git a/latex.el b/latex.el
index 3245888..4f94cbf 100644
--- a/latex.el
+++ b/latex.el
@@ -1900,6 +1900,13 @@ string."
                    nil t)
    optional))
 
+(defcustom LaTeX-pagestyle-list
+  '(("plain") ("empty") ("headings") ("myheadings"))
+  "A list of available pagestyles."
+  :group 'LaTeX
+  :type '(repeat (list (string))))
+(make-variable-buffer-local 'LaTeX-pagestyle-list)
+
 (defun TeX-arg-pagestyle (optional &optional prompt)
   "Prompt for a LaTeX pagestyle with completion.
 If OPTIONAL is non-nil, insert the resulting value as an optional
@@ -1907,7 +1914,7 @@ argument, otherwise as a mandatory one.  Use PROMPT as 
the prompt
 string."
   (TeX-argument-insert
    (completing-read (TeX-argument-prompt optional prompt "Pagestyle")
-                   '(("plain") ("empty") ("headings") ("myheadings")))
+                   LaTeX-pagestyle-list)
    optional))
 
 (defcustom LaTeX-default-verb-delimiter ?|
diff --git a/style/imakeidx.el b/style/imakeidx.el
new file mode 100644
index 0000000..566300b
--- /dev/null
+++ b/style/imakeidx.el
@@ -0,0 +1,101 @@
+;;; imakeidx.el --- AUCTeX style for `imakeidx.sty'.
+
+;; Copyright (C) 2012 Free Software Foundation, Inc.
+
+;; Maintainer: address@hidden
+;; Author: Mosè Giordano <address@hidden>
+;; 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 `imakeidx.sty'.
+
+;;; Code:
+
+(defvar LaTeX-imakeidx-makeindex-options
+  '(("name")
+    ("title")
+    ("program" ("makeindex" "xindy" "texindy" "truexindy"))
+    ("options")
+    ("noautomatic" ("true" "false"))
+    ("intoc" ("true" "false"))
+    ("columns")
+    ("columnsep")
+    ("columnseprule" ("true" "false")))
+  "Key=value options for makeindex macro of the imakeidx package.")
+
+(defvar LaTeX-imakeidx-indexsetup-options
+  '(("level")
+    ("toclevel")
+    ("noclearpage" ("true" "false"))
+    ("othercode"))
+  "Key=value options for indexsetup macro of the imakeidx package.")
+(make-variable-buffer-local 'LaTeX-imakeidx-indexsetup-options)
+
+;; `firstpagestyle' and `headers' options for `indexsetup' macro are
+;; available only if `fancyhdr' is not loaded.  The following code
+;; works only if `imakeidx' is loaded before `fancyhdr'
+(unless (member "fancyhdr" TeX-active-styles)
+  ;; `firstpagestyle' key takes as value one of the available
+  ;; pagestyles.  `LaTeX-pagestyle-list' is a list of lists of
+  ;; strings, we need a list of strings
+  (setq LaTeX-imakeidx-indexsetup-options
+       (append LaTeX-imakeidx-indexsetup-options
+                `(("firstpagestyle" ,(mapcar #'car LaTeX-pagestyle-list)))
+               '(("headers")))))
+
+(TeX-add-style-hook "imakeidx"
+ (lambda ()
+   (TeX-add-symbols
+    '("makeindex" [ (TeX-arg-key-val LaTeX-imakeidx-makeindex-options) ])
+    '("indexsetup" (TeX-arg-key-val LaTeX-imakeidx-indexsetup-options))
+    '("splitindexoptions" "Command line option")
+    '("index" [ "Index name" ] TeX-arg-index)
+    '("indexprologue" [ "Spacing" ] "Text")
+    '("printindex" [ "Index name" ])
+    '("seealso" 2)
+    '("see" 2)
+    "seename"
+    "alsoname"
+    "indexname")
+
+   (TeX-run-style-hooks
+    "multicol"
+    "xpatch"
+    "pdftexcmds"
+    "ifluatex"
+    "ifxetex"
+    "xkeyval")
+
+   ;; Completion for the |see macro and RefTeX support taken from
+   ;; `makeidx.el'
+   (setq TeX-complete-list
+        (append
+         '(("|see{\\([^{}\n\r]*\\)" 1 LaTeX-index-entry-list))
+         TeX-complete-list))
+   (and (fboundp 'reftex-add-index-macros)
+       (reftex-add-index-macros '(default)))))
+
+(defvar LaTeX-imakeidx-package-options
+  '("makeindex" "xindy" "texindy" "truexindy" "noautomatic" "nonewpage" "quiet"
+    "original" "splitindex")
+  "Package options for the imakeidx package.")
+
+;; imakeidx.el ends here



reply via email to

[Prev in Thread] Current Thread [Next in Thread]