diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/oberdiek/example-mycolorsetup.sty')
-rw-r--r-- | Master/texmf-dist/doc/latex/oberdiek/example-mycolorsetup.sty | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/oberdiek/example-mycolorsetup.sty b/Master/texmf-dist/doc/latex/oberdiek/example-mycolorsetup.sty new file mode 100644 index 00000000000..d4b117594c5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/example-mycolorsetup.sty @@ -0,0 +1,129 @@ +%% +%% This is file `example-mycolorsetup.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% kvoptions.dtx (with options: `example') +%% +%% This is a generated file. +%% +%% Copyright (C) 2004, 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de> +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of +%% LaTeX version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% This Current Maintainer of this work is Heiko Oberdiek. +%% +%% This work consists of the main source file kvoptions.dtx +%% and the derived files +%% kvoptions.sty, kvoptions.pdf, kvoptions.ins, kvoptions.drv, +%% example-mycolorsetup.sty. +%% +%% No we don't need the option 'color'. +%% With color support option 'emphcolor' will dynamically change +%% the color of \emph statements. + % Package identification + % ----------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{example-mycolorsetup}[2006/08/22 Managing my colors] + +\RequirePackage{ifpdf} +\RequirePackage{kvoptions} + + % Option declarations + % ------------------- + +\SetupKeyvalOptions{ + family=MCS, + prefix=MCS@ +} + % Use a shorter family name and prefix + + % Option print +\DeclareBoolOption{print} + % is the same as + % \DeclareBoolOption[false]{print} + + % Option driver +\ifpdf + \DeclareStringOption[pdftex]{driver} +\else + \DeclareStringOption[dvips]{driver} +\fi + + % Alternative interface for driver options +\DeclareVoidOption{dvips}{\SetupDriver} +\DeclareVoidOption{dvipdfm}{\SetupDriver} +\DeclareVoidOption{pdftex}{\SetupDriver} + % In \SetupDriver we take the current option \CurrentOption + % and pass it to the driver option. + % The \expandafter commands expand \CurrentOption at the + % time, when \SetupDriver is executed and \CurrentOption + % has the correct meaning. +\newcommand*{\SetupDriver}{% + \expandafter\@SetupDriver\expandafter{\CurrentOption}% +} +\newcommand*{\@SetupDriver}[1]{% + \setkeys{MCS}{driver={#1}}% +} + + % Option emph + % An empty value means, we want to have no color for \emph. + % If the user specifies option emph without value, the red is used. +\DeclareStringOption{emph}[red] + % is the same as + % \DeclareStringOption[]{emph}[red] + + % Default option rule +\DeclareDefaultOption{% + \ifx\CurrentOptionValue\relax + \PackageWarningNoLine{\@currname}{% + Unknown option `\CurrentOption'\MessageBreak + is passed to package `color'% + }% + % Pass the option to package color. + % Again it is better to expand \CurrentOption. + \expandafter\PassOptionsToPackage\expandafter{\CurrentOption}{color}% + \else + % Package color does not take options with values. + % We provide the standard LaTeX error. + \@unknownoptionerror + \fi +} + + % Process options + % --------------- +\ProcessKeyvalOptions* + + % Implementation depending on option values + % ----------------------------------------- + % Code for print mode +\ifMCS@print + \PassOptionsToPackage{monochrome}{color} + % tells package color to use black and white +\fi + +\RequirePackage[\MCS@driver]{color} + % load package color with the correct driver + + % \emph setup +\ifx\MCS@emph\@empty + % \@empty is a predefined macro with empty contents. + % the option value of option emph is empty, thus + % we do not want a redefinition of \emph. +\else + \renewcommand*{\emph}[1]{% + \textcolor{\MCS@emph}{#1}% + } +\fi +\endinput +%% +%% End of file `example-mycolorsetup.sty'. |