[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] elpa 3e93869 43/51: Add new style/xcolor.el
From: |
Tassilo Horn |
Subject: |
[elpa] elpa 3e93869 43/51: Add new style/xcolor.el |
Date: |
Sun, 22 May 2016 07:22:50 +0000 (UTC) |
branch: elpa
commit 3e93869a445ab3cdcd98d01715bd549dcaad561d
Author: Arash Esbati <address@hidden>
Commit: Mosè Giordano <address@hidden>
Add new style/xcolor.el
* Makefile.in (STYLESRC): Add new style xcolor.el.
* style/xcolor.el: Add new file.
Signed-off-by: Mosè Giordano <address@hidden>
---
Makefile.in | 2 +-
style/xcolor.el | 628 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 629 insertions(+), 1 deletion(-)
diff --git a/Makefile.in b/Makefile.in
index b390c66..23bf4a5 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -154,7 +154,7 @@ STYLESRC = style/prosper.el \
style/fontenc.el style/Alegreya.el style/gloss-italian.el \
style/newfloat.el style/subcaption.el style/AlegreyaSans.el \
style/hologo.el style/theorem.el style/ntheorem.el \
- style/splitidx.el style/tikz.el
+ style/splitidx.el style/tikz.el style/xcolor.el
STYLEELC = $(STYLESRC:.el=.elc)
diff --git a/style/xcolor.el b/style/xcolor.el
new file mode 100644
index 0000000..2466b12
--- /dev/null
+++ b/style/xcolor.el
@@ -0,0 +1,628 @@
+;; xcolor.el --- AUCTeX style for `xcolor.sty' (v2.12)
+
+;; Copyright (C) 2016 Free Software Foundation, Inc.
+
+;; Author: Arash Esbati <esbati'at'gmx.de>
+;; Maintainer: address@hidden
+;; Created: 2015-07-04
+;; 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 `xcolor.sty' (v2.12) from 2016/05/11.
+;; `xcolor.sty' is part of TeXLive.
+
+;; `xcolor.sty' and `color.sty' share many command namens, but the
+;; number of arguments is not always identical -- `xcolor.sty'
+;; commands take more arguments. In order to make the commands and
+;; font-locking work correctly, we follow this strategy: If
+;; `xcolor.sty' is loaded after `color.sty', everything works fine.
+;; For the way around, we guard the definitions in `color.sty' with:
+;;
+;; (unless (member "xcolor" (TeX-TeX-style-list))
+;; (<define stuff from color.sty<))
+;;
+;; to make sure that we define stuff `color.sty' only if `xcolor.sty'
+;; is not already loaded.
+
+;;; Code:
+
+(defvar LaTeX-xcolor-core-color-models
+ '("rgb" "cmy" "cmyk" "hsb" "gray")
+ "List of core color models provided by xcolor.sty.")
+
+(defvar LaTeX-xcolor-num-color-models
+ '("RGB" "HTML" "HSB" "Gray" "HsB" "tHsB" "wave")
+ "List of integer and decimal color models provided by xcolor.sty.")
+
+(defvar LaTeX-xcolor-pseudo-color-models
+ '("named")
+ "List of pseudo color models provided by xcolor.sty.")
+
+(defvar LaTeX-xcolor-type-color-models
+ '("named" "ps")
+ "List of type color models provided by xcolor.sty.")
+
+(defvar LaTeX-xcolor-base-colors
+ '("red" "green" "blue" "cyan" "magenta" "yellow" "black"
+ "gray" "white" "darkgray" "lightgray" "brown" "lime" "olive"
+ "orange" "pink" "purple" "teal" "violet")
+ "List of colors defined and always available from xcolor.sty.")
+
+(defvar LaTeX-xcolor-dvipsnames-colors
+ '("Apricot" "Aquamarine" "Bittersweet" "Black"
+ "Blue" "BlueGreen" "BlueViolet" "BrickRed"
+ "Brown" "BurntOrange" "CadetBlue" "CarnationPink"
+ "Cerulean" "CornflowerBlue" "Cyan" "Dandelion"
+ "DarkOrchid" "Emerald" "ForestGreen" "Fuchsia"
+ "Goldenrod" "Gray" "Green" "GreenYellow"
+ "JungleGreen" "Lavender" "LimeGreen" "Magenta"
+ "Mahogany" "Maroon" "Melon" "MidnightBlue"
+ "Mulberry" "NavyBlue" "OliveGreen" "Orange"
+ "OrangeRed" "Orchid" "Peach" "Periwinkle"
+ "PineGreen" "Plum" "ProcessBlue" "Purple"
+ "RawSienna" "Red" "RedOrange" "RedViolet"
+ "Rhodamine" "RoyalBlue" "RoyalPurple" "RubineRed"
+ "Salmon" "SeaGreen" "Sepia" "SkyBlue"
+ "SpringGreen" "Tan" "TealBlue" "Thistle"
+ "Turquoise" "Violet" "VioletRed" "White"
+ "WildStrawberry" "Yellow" "YellowGreen" "YellowOrange")
+ "List of colors defined by package option dvipsnames from xcolor.sty.")
+
+(defvar LaTeX-xcolor-svgnames-colors
+ '("AliceBlue" "DarkTurquoise" "LightSalmon" "PaleVioletRed"
+ "AntiqueWhite" "DarkViolet" "LightSeaGreen" "PapayaWhip"
+ "Aqua" "DeepPink" "LightSkyBlue" "PeachPuff"
+ "Aquamarine" "DeepSkyBlue" "LightSlateBlue" "Peru"
+ "Azure" "DimGray" "LightSlateGray" "Pink"
+ "Beige" "DimGrey" "LightSlateGrey" "Plum"
+ "Bisque" "DodgerBlue" "LightSteelBlue" "PowderBlue"
+ "Black" "FireBrick" "LightYellow" "Purple"
+ "BlanchedAlmond" "FloralWhite" "Lime" "Red"
+ "Blue" "ForestGreen" "LimeGreen" "RosyBrown"
+ "BlueViolet" "Fuchsia" "Linen" "RoyalBlue"
+ "Brown" "Gainsboro" "Magenta" "SaddleBrown"
+ "BurlyWood" "GhostWhite" "Maroon" "Salmon"
+ "CadetBlue" "Gold" "MediumAquamarine" "SandyBrown"
+ "Chartreuse" "Goldenrod" "MediumBlue" "SeaGreen"
+ "Chocolate" "Gray" "MediumOrchid" "Seashell"
+ "Coral" "Green" "MediumPurple" "Sienna"
+ "CornflowerBlue" "GreenYellow" "MediumSeaGreen" "Silver"
+ "Cornsilk" "Grey" "MediumSlateBlue" "SkyBlue"
+ "Crimson" "Honeydew" "MediumSpringGreen" "SlateBlue"
+ "Cyan" "HotPink" "MediumTurquoise" "SlateGray"
+ "DarkBlue" "IndianRed" "MediumVioletRed" "SlateGrey"
+ "DarkCyan" "Indigo" "MidnightBlue" "Snow"
+ "DarkGoldenrod" "Ivory" "MintCream" "SpringGreen"
+ "DarkGray" "Khaki" "MistyRose" "SteelBlue"
+ "DarkGreen" "Lavender" "Moccasin" "Tan"
+ "DarkGrey" "LavenderBlush" "NavajoWhite" "Teal"
+ "DarkKhaki" "LawnGreen" "Navy" "Thistle"
+ "DarkMagenta" "LemonChiffon" "NavyBlue" "Tomato"
+ "DarkOliveGreen" "LightBlue" "OldLace" "Turquoise"
+ "DarkOrange" "LightCoral" "Olive" "Violet"
+ "DarkOrchid" "LightCyan" "OliveDrab" "VioletRed"
+ "DarkRed" "LightGoldenrod" "Orange" "Wheat"
+ "DarkSalmon" "LightGoldenrodYellow" "OrangeRed" "White"
+ "DarkSeaGreen" "LightGray" "Orchid" "WhiteSmoke"
+ "DarkSlateBlue" "LightGreen" "PaleGoldenrod" "Yellow"
+ "DarkSlateGray" "LightGrey" "PaleGreen" "YellowGreen"
+ "DarkSlateGrey" "LightPink" "PaleTurquoise")
+ "List of colors defined by package option svgnames from xcolor.sty.")
+
+(defvar LaTeX-xcolor-x11names-colors
+ '("AntiqueWhite1" "DeepSkyBlue1" "LightYellow1" "RoyalBlue1"
+ "AntiqueWhite2" "DeepSkyBlue2" "LightYellow2" "RoyalBlue2"
+ "AntiqueWhite3" "DeepSkyBlue3" "LightYellow3" "RoyalBlue3"
+ "AntiqueWhite4" "DeepSkyBlue4" "LightYellow4" "RoyalBlue4"
+ "Aquamarine1" "DodgerBlue1" "Magenta1" "Salmon1"
+ "Aquamarine2" "DodgerBlue2" "Magenta2" "Salmon2"
+ "Aquamarine3" "DodgerBlue3" "Magenta3" "Salmon3"
+ "Aquamarine4" "DodgerBlue4" "Magenta4" "Salmon4"
+ "Azure1" "Firebrick1" "Maroon1" "SeaGreen1"
+ "Azure2" "Firebrick2" "Maroon2" "SeaGreen2"
+ "Azure3" "Firebrick3" "Maroon3" "SeaGreen3"
+ "Azure4" "Firebrick4" "Maroon4" "SeaGreen4"
+ "Bisque1" "Gold1" "MediumOrchid1" "Seashell1"
+ "Bisque2" "Gold2" "MediumOrchid2" "Seashell2"
+ "Bisque3" "Gold3" "MediumOrchid3" "Seashell3"
+ "Bisque4" "Gold4" "MediumOrchid4" "Seashell4"
+ "Blue1" "Goldenrod1" "MediumPurple1" "Sienna1"
+ "Blue2" "Goldenrod2" "MediumPurple2" "Sienna2"
+ "Blue3" "Goldenrod3" "MediumPurple3" "Sienna3"
+ "Blue4" "Goldenrod4" "MediumPurple4" "Sienna4"
+ "Brown1" "Green1" "MistyRose1" "SkyBlue1"
+ "Brown2" "Green2" "MistyRose2" "SkyBlue2"
+ "Brown3" "Green3" "MistyRose3" "SkyBlue3"
+ "Brown4" "Green4" "MistyRose4" "SkyBlue4"
+ "Burlywood1" "Honeydew1" "NavajoWhite1" "SlateBlue1"
+ "Burlywood2" "Honeydew2" "NavajoWhite2" "SlateBlue2"
+ "Burlywood3" "Honeydew3" "NavajoWhite3" "SlateBlue3"
+ "Burlywood4" "Honeydew4" "NavajoWhite4" "SlateBlue4"
+ "CadetBlue1" "HotPink1" "OliveDrab1" "SlateGray1"
+ "CadetBlue2" "HotPink2" "OliveDrab2" "SlateGray2"
+ "CadetBlue3" "HotPink3" "OliveDrab3" "SlateGray3"
+ "CadetBlue4" "HotPink4" "OliveDrab4" "SlateGray4"
+ "Chartreuse1" "IndianRed1" "Orange1" "Snow1"
+ "Chartreuse2" "IndianRed2" "Orange2" "Snow2"
+ "Chartreuse3" "IndianRed3" "Orange3" "Snow3"
+ "Chartreuse4" "IndianRed4" "Orange4" "Snow4"
+ "Chocolate1" "Ivory1" "OrangeRed1" "SpringGreen1"
+ "Chocolate2" "Ivory2" "OrangeRed2" "SpringGreen2"
+ "Chocolate3" "Ivory3" "OrangeRed3" "SpringGreen3"
+ "Chocolate4" "Ivory4" "OrangeRed4" "SpringGreen4"
+ "Coral1" "Khaki1" "Orchid1" "SteelBlue1"
+ "Coral2" "Khaki2" "Orchid2" "SteelBlue2"
+ "Coral3" "Khaki3" "Orchid3" "SteelBlue3"
+ "Coral4" "Khaki4" "Orchid4" "SteelBlue4"
+ "Cornsilk1" "LavenderBlush1" "PaleGreen1" "Tan1"
+ "Cornsilk2" "LavenderBlush2" "PaleGreen2" "Tan2"
+ "Cornsilk3" "LavenderBlush3" "PaleGreen3" "Tan3"
+ "Cornsilk4" "LavenderBlush4" "PaleGreen4" "Tan4"
+ "Cyan1" "LemonChiffon1" "PaleTurquoise1" "Thistle1"
+ "Cyan2" "LemonChiffon2" "PaleTurquoise2" "Thistle2"
+ "Cyan3" "LemonChiffon3" "PaleTurquoise3" "Thistle3"
+ "Cyan4" "LemonChiffon4" "PaleTurquoise4" "Thistle4"
+ "DarkGoldenrod1" "LightBlue1" "PaleVioletRed1" "Tomato1"
+ "DarkGoldenrod2" "LightBlue2" "PaleVioletRed2" "Tomato2"
+ "DarkGoldenrod3" "LightBlue3" "PaleVioletRed3" "Tomato3"
+ "DarkGoldenrod4" "LightBlue4" "PaleVioletRed4" "Tomato4"
+ "DarkOliveGreen1" "LightCyan1" "PeachPuff1" "Turquoise1"
+ "DarkOliveGreen2" "LightCyan2" "PeachPuff2" "Turquoise2"
+ "DarkOliveGreen3" "LightCyan3" "PeachPuff3" "Turquoise3"
+ "DarkOliveGreen4" "LightCyan4" "PeachPuff4" "Turquoise4"
+ "DarkOrange1" "LightGoldenrod1" "Pink1" "VioletRed1"
+ "DarkOrange2" "LightGoldenrod2" "Pink2" "VioletRed2"
+ "DarkOrange3" "LightGoldenrod3" "Pink3" "VioletRed3"
+ "DarkOrange4" "LightGoldenrod4" "Pink4" "VioletRed4"
+ "DarkOrchid1" "LightPink1" "Plum1" "Wheat1"
+ "DarkOrchid2" "LightPink2" "Plum2" "Wheat2"
+ "DarkOrchid3" "LightPink3" "Plum3" "Wheat3"
+ "DarkOrchid4" "LightPink4" "Plum4" "Wheat4"
+ "DarkSeaGreen1" "LightSalmon1" "Purple1" "Yellow1"
+ "DarkSeaGreen2" "LightSalmon2" "Purple2" "Yellow2"
+ "DarkSeaGreen3" "LightSalmon3" "Purple3" "Yellow3"
+ "DarkSeaGreen4" "LightSalmon4" "Purple4" "Yellow4"
+ "DarkSlateGray1" "LightSkyBlue1" "Red1" "Gray0"
+ "DarkSlateGray2" "LightSkyBlue2" "Red2" "Green0"
+ "DarkSlateGray3" "LightSkyBlue3" "Red3" "Grey0"
+ "DarkSlateGray4" "LightSkyBlue4" "Red4" "Maroon0"
+ "DeepPink1" "LightSteelBlue1" "RosyBrown1" "Purple0"
+ "DeepPink2" "LightSteelBlue2" "RosyBrown2"
+ "DeepPink3" "LightSteelBlue3" "RosyBrown3"
+ "DeepPink4" "LightSteelBlue4" "RosyBrown4")
+ "List of colors defined by package option x11names from xcolor.sty.")
+
+(defvar LaTeX-xcolor-color-models
+ (append LaTeX-xcolor-core-color-models
+ LaTeX-xcolor-num-color-models
+ LaTeX-xcolor-pseudo-color-models)
+ "Combine three variables `LaTeX-xcolor-core-color-models',
+`LaTeX-xcolor-num-color-models' and `LaTeX-xcolor-pseudo-color-models'.")
+
+(defun LaTeX-xcolor-color-models (&optional no-named)
+ "Return the value of variable `LaTeX-xcolor-color-models'.
+If NO-NAMED is non-nil, remove \"named\" and return the
+remainder."
+ (if no-named
+ (remove "named" LaTeX-xcolor-color-models)
+ (symbol-value 'LaTeX-xcolor-color-models)))
+
+;; Needed for auto-parsing.
+(require 'tex)
+
+;; Setup AUCTeX parser for \definecolor(set):
+(TeX-auto-add-type "xcolor-definecolor" "LaTeX")
+(TeX-auto-add-type "xcolor-definecolorset" "LaTeX")
+
+(defvar LaTeX-xcolor-definecolor-regexp
+ `(,(concat "\\\\\\(?:define\\|provide\\|prepare\\)?"
+ "color"
+ "\\(?:let\\)?"
+ "\\(?:\\[\\(?:[^]]*\\)\\]\\)?{\\([^}]+\\)}")
+ 1 LaTeX-auto-xcolor-definecolor)
+ "Match the argument of various color defining macros from
+xcolor package.")
+
+(defvar LaTeX-xcolor-definecolorset-regexp
+ `(,(concat "\\\\\\(?:define\\|provide\\|prepare\\)"
+ "colorset"
+ "\\(?:\\[\\(?:[^]]*\\)\\]\\)?"
+ "{\\(?:[^}]+\\)}"
+ "{\\([^}]+\\)}"
+ "{\\([^}]+\\)}"
+ "{\\([^}]+\\)}")
+ (1 2 3) LaTeX-auto-xcolor-definecolorset)
+ "Match the argument of various color-set defining macros from
+xcolor package.")
+
+(defun LaTeX-xcolor-auto-prepare ()
+ "Clear `LaTeX-auto-xcolor-definecolor' before parsing."
+ (setq LaTeX-auto-xcolor-definecolor nil))
+
+(defun LaTeX-xcolor-auto-cleanup ()
+ "Process the parsed elements from `LaTeX-auto-xcolor-definecolorset'."
+ (dolist (colset (LaTeX-xcolor-definecolorset-list))
+ (let ((head (car colset))
+ (tail (cadr colset))
+ (cols (split-string
+ (replace-regexp-in-string "[ %\n\r\t]*" "" (nth 2 colset))
+ "\\(,[^;]+;\\|,[^;]+$\\)" t)))
+ (dolist (color cols)
+ (LaTeX-add-xcolor-definecolors (concat head color tail))))))
+
+(add-hook 'TeX-auto-prepare-hook #'LaTeX-xcolor-auto-prepare t)
+(add-hook 'TeX-auto-cleanup-hook #'LaTeX-xcolor-auto-cleanup t)
+(add-hook 'TeX-update-style-hook #'TeX-auto-parse t)
+
+(defun TeX-arg-xcolor-definecolor (optional)
+ "Insert arguments of \\definecolor and similar macros from
+xcolor.sty."
+ ;; \definecolor[<type>]{<name>}{<model-list>}{<spec-list>}
+ (let* ((xcoltype (completing-read
+ (TeX-argument-prompt t nil "Type")
+ LaTeX-xcolor-type-color-models))
+ (xcolname (TeX-read-string
+ (TeX-argument-prompt optional nil "Color name")))
+ (xcolmodel (completing-read
+ (TeX-argument-prompt optional nil "Model (list)")
+ (if (string= xcoltype "named")
+ (LaTeX-xcolor-color-models t)
+ LaTeX-xcolor-color-models)))
+ (xcolspec (if (string= xcolmodel "named")
+ (completing-read
+ (TeX-argument-prompt optional nil "Color")
+ (LaTeX-xcolor-definecolor-list))
+ (TeX-read-string
+ (TeX-argument-prompt optional nil (concat xcolmodel "
spec (list)"))))))
+ (when (and xcoltype (not (string= xcoltype "")))
+ (insert (format "[%s]" xcoltype)))
+ (TeX-argument-insert xcolname optional)
+ (LaTeX-add-xcolor-definecolors xcolname)
+ (TeX-argument-insert xcolmodel optional)
+ (TeX-argument-insert xcolspec optional)))
+
+(defun TeX-arg-xcolor-definecolorset (optional)
+ "Insert arguments of \\definecolorset and similar macros from
+xcolor.sty."
+ (let ((xcoltype (completing-read
+ (TeX-argument-prompt t nil "Type")
+ LaTeX-xcolor-type-color-models))
+ (xcolmodel (completing-read
+ (TeX-argument-prompt optional nil "Model")
+ (LaTeX-xcolor-color-models t))))
+ (when (and xcoltype (not (string= xcoltype "")))
+ (insert (format "[%s]" xcoltype)))
+ (TeX-argument-insert xcolmodel optional)))
+
+(defun TeX-arg-xcolor (optional)
+ "Insert arguments of various color commands from xcolor.sty."
+ ;; \color{<name>} or \color[<model-list>]{<spec-list>}
+ (let* ((xcolmodel (completing-read
+ (TeX-argument-prompt t nil "Model (list)")
+ (LaTeX-xcolor-color-models t)))
+ (xcolor (if (and xcolmodel (not (string= xcolmodel "")))
+ (TeX-read-string
+ (TeX-argument-prompt optional nil (concat xcolmodel "
spec (list)")))
+ (completing-read
+ (TeX-argument-prompt optional nil "Color")
+ (LaTeX-xcolor-definecolor-list)))))
+ (when (and xcolmodel (not (string= xcolmodel "")))
+ (insert (format "[%s]" xcolmodel)))
+ (TeX-argument-insert xcolor optional)))
+
+(defun TeX-arg-xcolor-fcolorbox (optional)
+ "Insert arguments of \\fcolorbox from xcolor.sty."
+ ;;\fcolorbox[<frame model>]{<frame spec>}[<background model>]{<background
spec>}{<text>}
+ (let* ((xfrmodel (completing-read
+ (TeX-argument-prompt t nil "(Frame) Color model")
+ LaTeX-xcolor-color-models))
+ (xfrspec (if (or (string= xfrmodel "")
+ (string= xfrmodel "named"))
+ (completing-read
+ (TeX-argument-prompt optional nil "Frame color spec")
+ (LaTeX-xcolor-definecolor-list))
+ (TeX-read-string
+ (TeX-argument-prompt optional nil "Frame color spec"))))
+ (xbgmodel (completing-read
+ (TeX-argument-prompt t nil "Background Color model")
+ LaTeX-xcolor-color-models))
+ (xbgspec (if (or (string= xfrmodel "")
+ (string= xfrmodel "named")
+ (string= xbgmodel "")
+ (string= xbgmodel "named"))
+ (completing-read
+ (TeX-argument-prompt optional nil "Background color
spec")
+ (LaTeX-xcolor-definecolor-list))
+ (TeX-read-string
+ (TeX-argument-prompt optional nil "Background color
spec")))))
+ (when (and xfrmodel (not (string= xfrmodel "")))
+ (insert (format "[%s]" xfrmodel)))
+ (TeX-argument-insert xfrspec optional)
+ (when (and xbgmodel (not (string= xbgmodel "")))
+ (insert (format "[%s]" xbgmodel)))
+ (TeX-argument-insert xbgspec optional)))
+
+
+(TeX-add-style-hook
+ "xcolor"
+ (lambda ()
+ ;; Add color to the parser.
+ (TeX-auto-add-regexp LaTeX-xcolor-definecolor-regexp)
+ (TeX-auto-add-regexp LaTeX-xcolor-definecolorset-regexp)
+
+ ;; Add list of colors which are always available.
+ (apply #'LaTeX-add-xcolor-definecolors LaTeX-xcolor-base-colors)
+
+ ;; Add dvips colors in conjunction with `dvipsnames*?'.
+ (when (or (LaTeX-provided-package-options-member "xcolor" "dvipsnames")
+ (LaTeX-provided-package-options-member "xcolor" "dvipsnames*"))
+ (apply #'LaTeX-add-xcolor-definecolors LaTeX-xcolor-dvipsnames-colors))
+
+ ;; For `svgnames*?'
+ (when (or (LaTeX-provided-package-options-member "xcolor" "svgnames")
+ (LaTeX-provided-package-options-member "xcolor" "svgnames*"))
+ (apply #'LaTeX-add-xcolor-definecolors LaTeX-xcolor-svgnames-colors))
+
+ ;; For `x11ames*?'
+ (when (or (LaTeX-provided-package-options-member "xcolor" "x11names")
+ (LaTeX-provided-package-options-member "xcolor" "x11names*"))
+ (apply #'LaTeX-add-xcolor-definecolors LaTeX-xcolor-x11names-colors))
+
+ (TeX-add-symbols
+ ;; 2.5.2 Color definition in xcolor
+ ;; \definecolor[<type>]{<name>}{<model-list>}{<spec-list>}
+ '("definecolor" TeX-arg-xcolor-definecolor)
+
+ ;; \providecolor[<type>]{<name>}{<model-list>}{<spec-list>}
+ '("providecolor" TeX-arg-xcolor-definecolor)
+
+ ;; \colorlet[<type>]{<name>}{<num model>}{<color>}
+ '("colorlet"
+ [ TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Type")
+ LaTeX-xcolor-type-color-models ]
+ (TeX-arg-eval
+ (lambda ()
+ (let ((xcolor (TeX-read-string
+ (TeX-argument-prompt optional nil "Color"))))
+ (LaTeX-add-xcolor-definecolors xcolor)
+ (format "%s" xcolor))))
+ [ TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Model")
+ (LaTeX-xcolor-color-models t) ]
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Color")
+ (LaTeX-xcolor-definecolor-list)))
+
+ ;; 2.5.3 Defining sets of colors
+ ;; \definecolorset[<type>]{<model-list>}{<head>}{<tail>}{<set spec>}
+ '("definecolorset" TeX-arg-xcolor-definecolorset "Head" "Tail" t)
+
+ ;; \providecolorset[<type>]{<model-list>}{<head>}{<tail>}{<set spec>}
+ '("providecolorset" TeX-arg-xcolor-definecolorset "Head" "Tail" t)
+
+ ;; 2.5.4 Immediate and deferred definitions
+ ;; \preparecolor[<type>]{<name>}{<model-list>}{<spec-list>}
+ '("preparecolor" TeX-arg-xcolor-definecolor)
+
+ ;; \preparecolorset[<type>]{<model-list>}{<head>}{<tail>}{<set spec>}
+ '("preparecolorset" TeX-arg-xcolor-definecolorset "Head" "Tail" t)
+
+ ;; \definecolors{<id-list>}
+ '("definecolors" t)
+
+ ;; \providecolors{<id-list>}
+ '("providecolors" t)
+
+ ;; 2.6 Color application
+ ;; 2.6.1 Standard color commands
+
+ ;; \color{<name>} or \color[<model>]{<color spec>}
+ '("color" TeX-arg-xcolor)
+
+ ;; \textcolor{<name>}{<text>} or
+ ;; \textcolor[<model>]{<color spec>}{<text>}
+ '("textcolor" TeX-arg-xcolor "Text")
+
+ ;; \pagecolor{<name>} or
+ ;; \pagecolor[<model>]{<color spec>}
+ '("pagecolor" TeX-arg-xcolor)
+
+ ;; \nopagecolor
+ '("nopagecolor" 0)
+
+ ;; 2.6.2 Colored boxes
+ ;; \colorbox{<name>}{<text>} or
+ ;; \colorbox[<model>]{<color spec>}{<text>}
+ '("colorbox" TeX-arg-xcolor "Text")
+
+ ;; \fcolorbox{<frame color>}{<box color>}{<text>} or
+ ;; \fcolorbox[<model>]{<frame spec>}{<background spec>}{<text>} or
+ ;; \fcolorbox[<frame model>]{<frame spec>}[<background model>]{<background
spec>}{<text>}
+ '("fcolorbox" TeX-arg-xcolor-fcolorbox "Text")
+
+ ;; 2.6.4 Color testing
+ ;; \testcolor{<name>} or
+ ;; \testcolor[<model>]{<color spec>}
+ '("testcolor" TeX-arg-xcolor)
+
+ ;; 2.7 Color blending
+ '("blendcolors"
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Mix expr")
+ (LaTeX-xcolor-definecolor-list)))
+ '("blendcolors*"
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Mix expr")
+ (LaTeX-xcolor-definecolor-list)))
+
+ ;; 2.8 Color masks and separation
+ '("maskcolors"
+ [ TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Model")
+ (LaTeX-xcolor-color-models t) ]
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Color")
+ (LaTeX-xcolor-definecolor-list)))
+
+ ;; 2.9 Color series
+ '("definecolorseries"
+ "Name"
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Core model")
+ LaTeX-xcolor-core-color-models)
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Method")
+ '("step" "grad" "last"))
+ [ t ] nil [ nil ] nil)
+
+ '("resetcolorseries" [ "Div." ] "Name")
+
+ ;; 2.13 Color information
+ ;; \extractcolorspec{<color>}{<cmd>}
+ '("extractcolorspec"
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Color")
+ (LaTeX-xcolor-definecolor-list))
+ (TeX-arg-define-macro "Command: \\"))
+
+ ;; \extractcolorspecs{<color>}{<model-cmd>{<color-cmd>}
+ '("extractcolorspecs"
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Color")
+ (LaTeX-xcolor-definecolor-list))
+ (TeX-arg-define-macro "Model command: \\")
+ (TeX-arg-define-macro "Color command: \\"))
+
+ ;; \tracingcolors = <integer>
+ '("tracingcolors"
+ (TeX-arg-literal "="))
+
+ ;; 2.14 Color conversion
+ ;; \convertcolorspec{<model>}{<spec>}{<target model>}{cmd>}
+ '("convertcolorspec"
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Model")
+ (LaTeX-xcolor-color-models))
+ (TeX-arg-eval TeX-read-string
+ (TeX-argument-prompt optional nil "Spec"))
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Model")
+ (LaTeX-xcolor-color-models t))
+ (TeX-arg-define-macro "Macro: \\")) ) ; close TeX-add-symbols
+
+ ;; 2.12 Color in tables
+ ;; These commands are available with `table' package option
+ (when (LaTeX-provided-package-options-member "xcolor" "table")
+ ;; Run style hook to colortbl.sty
+ (TeX-run-style-hooks "colortbl")
+
+ ;; Add additional commands:
+ (TeX-add-symbols
+ ;; \rowcolors[<commands>]{<row>}{<odd-row color>}{<even-row color>}
+ '("rowcolors"
+ (TeX-arg-conditional (y-or-n-p "With optional commands? ")
+ ( [ t ] )
+ (ignore))
+ "Row"
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Odd-row color")
+ (LaTeX-xcolor-definecolor-list))
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Even-row color")
+ (LaTeX-xcolor-definecolor-list)))
+ '("rowcolors*"
+ (TeX-arg-conditional (y-or-n-p "With optional commands? ")
+ ( [ t ] )
+ (ignore))
+ "Row"
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Odd-row color")
+ (LaTeX-xcolor-definecolor-list))
+ (TeX-arg-eval completing-read
+ (TeX-argument-prompt optional nil "Even-row color")
+ (LaTeX-xcolor-definecolor-list)))
+ '("showrowcolors" 0)
+ '("hiderowcolors" 0))
+ (LaTeX-add-counters "rownum"))
+
+ ;; 2.6.4 Color testing
+ (LaTeX-add-environments
+ '("testcolors" LaTeX-env-args
+ [ TeX-arg-eval mapconcat #'identity
+ (TeX-completing-read-multiple
+ (TeX-argument-prompt optional nil "Color models")
+ (LaTeX-xcolor-color-models t))
+ "," ] ))
+
+ ;; Fontification
+ (when (and (featurep 'font-latex)
+ (eq TeX-install-font-lock 'font-latex-setup))
+ (font-latex-add-keywords '(("color" "[{")
+ ("pagecolor" "[{"))
+ 'type-declaration)
+ (font-latex-add-keywords '(("textcolor" "[{{")
+ ("colorbox" "[{{" )
+ ("fcolorbox" "[{[{{"))
+ 'type-command)
+ (font-latex-add-keywords '(("definecolor" "[{{{")
+ ("providecolor" "[{{{")
+ ("colorlet" "[{[{")
+ ("definecolorset" "[{{{{")
+ ("providecolorset" "[{{{{")
+ ("preparecolor" "[{{{")
+ ("preparecolorset" "[{{{{")
+ ("definecolors" "{")
+ ("providecolors" "{")
+ ("testcolor" "[{")
+ ("blendcolors" "*{")
+ ("maskcolors" "[{")
+ ("definecolorseries" "{{{[{[{")
+ ("resetcolorseries" "[{")
+ ("extractcolorspec" "{{")
+ ("extractcolorspecs" "{{{")
+ ("convertcolorspec" "{{{{")
+ ("rowcolors" "*[{{{"))
+ 'function)))
+ LaTeX-dialect)
+
+(defvar LaTeX-xcolor-package-options
+ '(;; options that determine the color driver
+ "dvips" "xdvi" "dvipdf" "dvipdfm" "dvipdfmx" "pdftex" "dvipsone"
+ "dviwindo" "emtex" "dviwin" "oztex" "textures" "pctexps" "pctexwin"
+ "pctexhp" "pctex32" "truetex" "tcidvi" "vtex" "xetex"
+
+ ;; options that determine the target color model
+ "natural" "rgb" "cmy" "cmyk" "hsb" "gray" "RGB" "HTML"
+ "HSB" "Gray" "monochrome"
+
+ ;; options that control predefined colors loading
+ "dvipsnames" "dvipsnames*" "svgnames" "svgnames*" "x11names" "x11names*"
+
+ ;; options that determine which other packages to load
+ "table" "fixpdftex" "hyperref"
+
+ ;; options that influence the behaviour of other commands
+ "prologue" "kernelfbox" "xcdraw" "noxcdraw" "fixinclude"
+ "showerrors" "hideerrors")
+ "Package options for the xcolor package.")
+
+;;; xcolor.el ends here
- [elpa] elpa c032063 19/51: Auto save `TeX-command-extra-options'., (continued)
- [elpa] elpa c032063 19/51: Auto save `TeX-command-extra-options'., Tassilo Horn, 2016/05/22
- [elpa] elpa 56c1afd 28/51: Call TeX-newline-function interactively, Tassilo Horn, 2016/05/22
- [elpa] elpa eb9986d 46/51: Respect both "xcolor" and "color" for query to "shadecolor", Tassilo Horn, 2016/05/22
- [elpa] elpa 40c2c26 32/51: Allow for negative offsets in region backward search, Tassilo Horn, 2016/05/22
- [elpa] elpa 9613bdd 36/51: Check TeX engine only once, Tassilo Horn, 2016/05/22
- [elpa] elpa d9910d4 21/51: Fix small errors in doc string and comment, Tassilo Horn, 2016/05/22
- [elpa] elpa 6eb95e6 14/51: Integrate viewer support between tex.el and tex-jp.el, Tassilo Horn, 2016/05/22
- [elpa] elpa e90e050 34/51: Insert braces after some macros and \relax after \ProcessOptions, Tassilo Horn, 2016/05/22
- [elpa] elpa 0a3632e 45/51: Adjust query commands for loading by xcolor.el, Tassilo Horn, 2016/05/22
- [elpa] elpa adf998c 25/51: Replace TeX-PDF-via-dvips-ps2pdf with TeX-PDF-from-DVI, Tassilo Horn, 2016/05/22
- [elpa] elpa 3e93869 43/51: Add new style/xcolor.el,
Tassilo Horn <=
- [elpa] elpa ae6ed8b 06/51: TikZ: make `TeX-TikZ-single-macro-arg' prompt required., Tassilo Horn, 2016/05/22
- [elpa] elpa d83900b 09/51: TikZ: Make '+' and '++' prefixes apply to TikZ points, Tassilo Horn, 2016/05/22
- [elpa] elpa ae6cb79 26/51: Reword documentation of TeX-PDF-from-DVI, Tassilo Horn, 2016/05/22
- [elpa] elpa 1c397d5 29/51: Fix TeX-error-overview-make-entries, Tassilo Horn, 2016/05/22
- [elpa] elpa e092f72 35/51: Use commit date to determine package date, Tassilo Horn, 2016/05/22
- [elpa] elpa 7b41d77 38/51: Adapt for upLaTeX, Tassilo Horn, 2016/05/22
- [elpa] elpa d6b107e 33/51: Improve style/doc.el, Tassilo Horn, 2016/05/22
- [elpa] elpa cf54f7d 49/51: Make ChangeLog UTF-8, Tassilo Horn, 2016/05/22
- [elpa] elpa ebf4b8a 51/51: Release GNU AUCTeX 11.89.4, Tassilo Horn, 2016/05/22
- [elpa] elpa 8c6f901 48/51: Append environment indentation rules to LaTeX-indent-environment-list, Tassilo Horn, 2016/05/22