monnier pushed a commit to branch externals/auctex
in repository elpa.
commit be7bc38e695826bd5c4825c49f67b719222ce2df
Author: Tassilo Horn <[email protected]>
Date: Thu Feb 14 07:14:52 2013 +0000
* Makefile.in (STYLESRC): Activate new style fancyhdr.el.
* style/fancyhdr.el: New style.
---
ChangeLog | 6 +++
Makefile.in | 2 +-
style/fancyhdr.el | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 118 insertions(+), 1 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 92edbc4..4b59e5c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2013-02-14 Mads Jensen <[email protected]>
+
+ * Makefile.in (STYLESRC): Activate new style fancyhdr.el.
+
+ * style/fancyhdr.el: New style.
+
2013-02-13 Mos� Giordano <[email protected]>
* doc/auctex.texi (Quotes): Document
diff --git a/Makefile.in b/Makefile.in
index f1d4154..45be16c 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -129,7 +129,7 @@ STYLESRC = style/prosper.el \
style/multirow.el style/imakeidx.el style/afterpage.el \
style/longtable.el style/lipsum.el style/kantlipsum.el \
style/memoir.el style/placeins.el style/nameref.el \
- style/fancynum.el style/filecontents.el
+ style/fancynum.el style/fancyhdr.el style/filecontents.el
STYLEELC = $(STYLESRC:.el=.elc)
CLEANFILES = $(AUCELC) $(STYLEELC) $(MULEELC)
diff --git a/style/fancyhdr.el b/style/fancyhdr.el
new file mode 100644
index 0000000..132855a
--- /dev/null
+++ b/style/fancyhdr.el
@@ -0,0 +1,111 @@
+;;; fancyhdr.el --- AUCTeX style for `fancyhdr.sty'
+
+;; Copyright (C) 2012, 2013 Free Software Foundation, Inc.
+
+;; Author: Mads Jensen <[email protected]>
+;; Maintainer: [email protected]
+;; 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 `fancyhdr.sty', version 3.2
+
+;;; Code:
+
+(TeX-add-style-hook
+ "fancyhdr"
+ (lambda ()
+ (TeX-add-symbols
+ '("lhead" t)
+ '("lfoot" t)
+ '("chead" t)
+ '("cfoot" t)
+ '("rhead" t)
+ '("rfoot" t)
+ '("nouppercase" t)
+ '("MakeUppercase" t)
+ '("fancyhead" [ TeX-arg-fancyhdr-position ] t)
+ '("fancyfoot" [ TeX-arg-fancyhdr-position ] t)
+ '("fancyheadoffset"
+ [ (TeX-arg-fancyhdr-position
+ "Position" ("LO" "LE" "L" "RE" "RO" "R" "0")) ] t)
+ '("fancyfootoffset"
+ [ (TeX-arg-fancyhdr-position
+ "Position" ("LO" "LE" "L" "RE" "RO" "R" "O")) ] t)
+ '("fancyhfoffset"
+ [ (TeX-arg-fancyhdr-position "Position" ("E" "O" "L" "R")) ] t)
+ '("fancypagestyle" TeX-arg-pagestyle t)
+
+ "headrulewidth" "footrulewidth" "plainfootrulewidth"
+ "plainheadrulewidth" "leftmark" "rightmark"
+ ;; the manual does not mention any subsubsectionmark (!)
+ "chaptermark" "sectionmark" "subsectionmark" "paragraphmark"
+ "subparagraphmark" "footrule" "headrule")
+
+ ;; `fancyhdr.sty' supplies these two pagestyles
+ (LaTeX-add-pagestyles "fancy" "fancyplain")
+
+ ;; Fontification
+ (when (and (featurep 'font-latex)
+ (eq TeX-install-font-lock 'font-latex-setup))
+ (font-latex-add-keywords '(("fancyhead" "[{")
+ ("fancyfoot" "[{")
+ ("lhead" "{")
+ ("lfoot" "{")
+ ("chead" "{")
+ ("cfoot" "{")
+ ("rhead" "{")
+ ("rfoot" "{")
+ ("fancyheadoffset" "[{")
+ ("fancyfootoffset" "[{")
+ ("fancypagestyle" "{{")) 'function)
+ (font-latex-add-keywords '(("headrulewidth" "")
+ ("footrulewidth" "")
+ ("plainheadrulewidth" "")
+ ("plainfootrulewidth" "")) 'variable)
+ ;; Tell font-lock about the update.
+ (setq font-lock-set-defaults nil)
+ (font-lock-set-defaults))))
+
+;; Because there can be many positions, `TeX-completing-read-multiple' is used
+;; instead of just `completing-read', and a `collection' argument is provided
as
+;; the list of positions differs between the macros
+(defun TeX-arg-fancyhdr-position (optional &optional prompt collection)
+ "Prompt for a fancyhdr position with completion.
+If non-nil, PROMPT is used as the prompt. If non-nil, COLLECTION
+is used as the completion list for the position."
+ (let* ((positions (if (not collection)
+ ;; Standard positions with no restrictions. Lower-case
+ ;; versions, and reverse versions (e.g., OC) are left
+ ;; out for simplicity.
+ '("LO" "LE" "L" "CO" "CE" "C" "RE" "RO" "R")
+ collection))
+ (arguments
+ (mapconcat 'identity
+ (TeX-completing-read-multiple
+ (TeX-argument-prompt optional prompt "Position")
+ (mapcar 'list positions)) ",")))
+ (TeX-argument-insert arguments optional)))
+
+(defvar LaTeX-fancyhdr-package-options nil
+ "Package options for fancyhdr.")
+
+;;; fancyhdr.el ends here
+