texlive[51004] Master/texmf-dist: realhats (14apr19)

commits+karl at tug.org commits+karl at tug.org
Sun May 5 20:03:23 CEST 2019


Revision: 51004
          http://tug.org/svn/texlive?view=revision&revision=51004
Author:   karl
Date:     2019-05-05 20:03:23 +0200 (Sun, 05 May 2019)
Log Message:
-----------
realhats (14apr19)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/realhats/README.md
    trunk/Master/texmf-dist/doc/latex/realhats/realhats.pdf
    trunk/Master/texmf-dist/source/latex/realhats/realhats.dtx
    trunk/Master/texmf-dist/tex/latex/realhats/realhats.sty

Added Paths:
-----------
    trunk/Master/texmf-dist/tex/latex/realhats/hats/realhats-crown.png

Modified: trunk/Master/texmf-dist/doc/latex/realhats/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/realhats/README.md	2019-05-05 17:43:13 UTC (rev 51003)
+++ trunk/Master/texmf-dist/doc/latex/realhats/README.md	2019-05-05 18:03:23 UTC (rev 51004)
@@ -13,6 +13,9 @@
 ![Letters with hats on](readme_images/hats.png)
 
 ## Changelog
+### Version 3.0
+* Added optional parameters for `\hat` and `\usepackage` to control which hats are used.
+* Added crown
 ### Version 2.0
 * Replaced tikz with stackengine
 * Added top hat, make LaTeX great again hat, fez, cowboy hat

Modified: trunk/Master/texmf-dist/doc/latex/realhats/realhats.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/realhats/realhats.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/realhats/realhats.dtx	2019-05-05 17:43:13 UTC (rev 51003)
+++ trunk/Master/texmf-dist/source/latex/realhats/realhats.dtx	2019-05-05 18:03:23 UTC (rev 51004)
@@ -20,7 +20,8 @@
 %SOFTWARE.
 %\fi
 
-%\lstinline{realhats} is a package for \LaTeX{} that makes the \lstinline{\hat} put real hats on symbols.
+%\lstinline{realhats} is a package for \LaTeX{} that makes the \lstinline{\hat} command
+%put real hats on symbols.
 %For example, the input \lstinline@\hat{a}=\hat{b}@ will produce the output:
 %\[\hat{a}=\hat{b}\]
 %To make a vector with a hat, the input \lstinline@\hat{\mathbf{a}}@ produces:
@@ -34,18 +35,29 @@
 %\item \(\hatn{a}{3}\) - A sombrero
 %\item \(\hatn{a}{4}\) - A wizard's hat
 %\item \(\hatn{a}{5}\) - A top hat
+%\item \(\hatn{a}{6}\) - A make {\LaTeX} great again hat
+%\item \(\hatn{a}{7}\) - A fez
+%\item \(\hatn{a}{8}\) - A cowboy hat
+%\item \(\hatn{a}{9}\) - A crown
 %\end{itemize}
 %
-%Variables can be given a non-random hat, using the command \lstinline{\hatn}:
+%Variables can be given a non-random hat, using the command \lstinline{\hat} with an optional parameter:
 %\begin{itemize}
-%\item \lstinline@\hatn{a}{0}@ produces \(\hatn{a}{0}\)
-%\item \lstinline@\hatn{a}{1}@ produces \(\hatn{a}{1}\)
-%\item \lstinline@\hatn{a}{2}@ produces \(\hatn{a}{2}\)
-%\item \lstinline@\hatn{a}{3}@ produces \(\hatn{a}{3}\)
-%\item \lstinline@\hatn{a}{4}@ produces \(\hatn{a}{4}\)
-%\item \lstinline@\hatn{a}{5}@ produces \(\hatn{a}{5}\)
+%\item \lstinline@\hat[beret]{a}@ produces \(\hat[beret]{a}\)
+%\item \lstinline@\hat[santa]{a}@ produces \(\hat[santa]{a}\)
+%\item \lstinline@\hat[scottish]{a}@ produces \(\hat[scottish]{a}\)
+%\item \lstinline@\hat[sombrero]{a}@ produces \(\hat[sombrero]{a}\)
+%\item \lstinline@\hat[wizard]{a}@ produces \(\hat[wizard]{a}\)
+%\item \lstinline@\hat[tophat]{a}@ produces \(\hat[tophat]{a}\)
+%\item \lstinline@\hat[mlga]{a}@ produces \(\hat[mlga]{a}\)
+%\item \lstinline@\hat[fez]{a}@ produces \(\hat[fez]{a}\)
+%\item \lstinline@\hat[cowboy]{a}@ produces \(\hat[cowboy]{a}\)
+%\item \lstinline@\hat[crown]{a}@ produces \(\hat[crown]{a}\)
 %\end{itemize}
 %
+%You can also pass these same options when loading the package.
+%For example, \verb@\usepackage[mlga]{realhats}@ will cause the package to use make {\LaTeX} great again hats
+%everywhere (unless an different hat is given to the \verb@\hat@ command).
 %\iffalse
 %<*documentation>
 \documentclass{article}
@@ -65,7 +77,7 @@
 %\iffalse
 %<*realhats>
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{realhats}[2019/02/02 realhats]
+\ProvidesPackage{realhats}[2019/04/14 realhats]
 
 \RequirePackage{amsmath}
 \RequirePackage{graphicx}
@@ -78,8 +90,38 @@
 \newlength{\hshif} %horizontal shift
 \newlength{\vshif} %vertical shift
 
-\renewcommand{\hat}[1]{\rand\hatn{#1}{\arabic{rand}}}
+\global\def\hatused{-1}
+\DeclareOption{beret}{\global\def\hatused{0}}
+\DeclareOption{santa}{\global\def\hatused{1}}
+\DeclareOption{scottish}{\global\def\hatused{2}}
+\DeclareOption{sombrero}{\global\def\hatused{3}}
+\DeclareOption{witch}{\global\def\hatused{4}}
+\DeclareOption{tophat}{\global\def\hatused{5}}
+\DeclareOption{mlga}{\global\def\hatused{6}}
+\DeclareOption{fez}{\global\def\hatused{7}}
+\DeclareOption{cowboy}{\global\def\hatused{8}}
+\DeclareOption{crown}{\global\def\hatused{9}}
+\ProcessOptions\relax
 
+\renewcommand{\hat}[2][]{%
+    \ifthenelse{\equal{#1}{}}{%
+        \ifthenelse{\equal{\hatused}{-1}}%
+        {\rand\hatn{#2}{\arabic{rand}}}%
+        {\hatn{#2}{\hatused}}%
+    }{%
+        \ifthenelse{\equal{#1}{beret}}{\hatn{#2}{0}}{}%
+        \ifthenelse{\equal{#1}{santa}}{\hatn{#2}{1}}{}%
+        \ifthenelse{\equal{#1}{scottish}}{\hatn{#2}{2}}{}%
+        \ifthenelse{\equal{#1}{sombrero}}{\hatn{#2}{3}}{}%
+        \ifthenelse{\equal{#1}{witch}}{\hatn{#2}{4}}{}%
+        \ifthenelse{\equal{#1}{tophat}}{\hatn{#2}{5}}{}%
+        \ifthenelse{\equal{#1}{mlga}}{\hatn{#2}{6}}{}%
+        \ifthenelse{\equal{#1}{fez}}{\hatn{#2}{7}}{}%
+        \ifthenelse{\equal{#1}{cowboy}}{\hatn{#2}{8}}{}%
+        \ifthenelse{\equal{#1}{crown}}{\hatn{#2}{9}}{}%
+    }%
+}
+
 \newcommand{\hatn}[2]{\hatnoptions{#1}{#2}{0ex}{0ex}}
 
 \newcommand{\hatnoptions}[4]{%
@@ -93,6 +135,7 @@
 \ifthenelse{\equal{#2}{6}}{\renewcommand\myhat{hats/realhats-makelatexgreatagain}\setlength{\vshif}{-0.6ex} \addtolength{\hshif}{-1pt}}{}%
 \ifthenelse{\equal{#2}{7}}{\renewcommand\myhat{hats/realhats-fez}\setlength{\vshif}{-0.4ex} \addtolength{\hshif}{-1pt}}{}%
 \ifthenelse{\equal{#2}{8}}{\renewcommand\myhat{hats/realhats-cowboy}\setlength{\vshif}{-0.3ex} \setlength{\hshif}{0.2ex}}{}%
+\ifthenelse{\equal{#2}{9}}{\renewcommand\myhat{hats/realhats-crown}\setlength{\vshif}{-0.3ex} \setlength{\hshif}{0.2ex}}{}%
 \addtolength{\hshif}{#3}%
 \addtolength{\vshif}{#4}%
 \stackMath %

Added: trunk/Master/texmf-dist/tex/latex/realhats/hats/realhats-crown.png
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/tex/latex/realhats/hats/realhats-crown.png
===================================================================
--- trunk/Master/texmf-dist/tex/latex/realhats/hats/realhats-crown.png	2019-05-05 17:43:13 UTC (rev 51003)
+++ trunk/Master/texmf-dist/tex/latex/realhats/hats/realhats-crown.png	2019-05-05 18:03:23 UTC (rev 51004)

Property changes on: trunk/Master/texmf-dist/tex/latex/realhats/hats/realhats-crown.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/realhats/realhats.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/realhats/realhats.sty	2019-05-05 17:43:13 UTC (rev 51003)
+++ trunk/Master/texmf-dist/tex/latex/realhats/realhats.sty	2019-05-05 18:03:23 UTC (rev 51004)
@@ -28,7 +28,7 @@
 
 
 \NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{realhats}[2019/02/02 realhats]
+\ProvidesPackage{realhats}[2019/04/14 realhats]
 
 \RequirePackage{amsmath}
 \RequirePackage{graphicx}
@@ -41,8 +41,38 @@
 \newlength{\hshif} %horizontal shift
 \newlength{\vshif} %vertical shift
 
-\renewcommand{\hat}[1]{\rand\hatn{#1}{\arabic{rand}}}
+\global\def\hatused{-1}
+\DeclareOption{beret}{\global\def\hatused{0}}
+\DeclareOption{santa}{\global\def\hatused{1}}
+\DeclareOption{scottish}{\global\def\hatused{2}}
+\DeclareOption{sombrero}{\global\def\hatused{3}}
+\DeclareOption{witch}{\global\def\hatused{4}}
+\DeclareOption{tophat}{\global\def\hatused{5}}
+\DeclareOption{mlga}{\global\def\hatused{6}}
+\DeclareOption{fez}{\global\def\hatused{7}}
+\DeclareOption{cowboy}{\global\def\hatused{8}}
+\DeclareOption{crown}{\global\def\hatused{9}}
+\ProcessOptions\relax
 
+\renewcommand{\hat}[2][]{%
+    \ifthenelse{\equal{#1}{}}{%
+        \ifthenelse{\equal{\hatused}{-1}}%
+        {\rand\hatn{#2}{\arabic{rand}}}%
+        {\hatn{#2}{\hatused}}%
+    }{%
+        \ifthenelse{\equal{#1}{beret}}{\hatn{#2}{0}}{}%
+        \ifthenelse{\equal{#1}{santa}}{\hatn{#2}{1}}{}%
+        \ifthenelse{\equal{#1}{scottish}}{\hatn{#2}{2}}{}%
+        \ifthenelse{\equal{#1}{sombrero}}{\hatn{#2}{3}}{}%
+        \ifthenelse{\equal{#1}{witch}}{\hatn{#2}{4}}{}%
+        \ifthenelse{\equal{#1}{tophat}}{\hatn{#2}{5}}{}%
+        \ifthenelse{\equal{#1}{mlga}}{\hatn{#2}{6}}{}%
+        \ifthenelse{\equal{#1}{fez}}{\hatn{#2}{7}}{}%
+        \ifthenelse{\equal{#1}{cowboy}}{\hatn{#2}{8}}{}%
+        \ifthenelse{\equal{#1}{crown}}{\hatn{#2}{9}}{}%
+    }%
+}
+
 \newcommand{\hatn}[2]{\hatnoptions{#1}{#2}{0ex}{0ex}}
 
 \newcommand{\hatnoptions}[4]{%
@@ -56,6 +86,7 @@
 \ifthenelse{\equal{#2}{6}}{\renewcommand\myhat{hats/realhats-makelatexgreatagain}\setlength{\vshif}{-0.6ex} \addtolength{\hshif}{-1pt}}{}%
 \ifthenelse{\equal{#2}{7}}{\renewcommand\myhat{hats/realhats-fez}\setlength{\vshif}{-0.4ex} \addtolength{\hshif}{-1pt}}{}%
 \ifthenelse{\equal{#2}{8}}{\renewcommand\myhat{hats/realhats-cowboy}\setlength{\vshif}{-0.3ex} \setlength{\hshif}{0.2ex}}{}%
+\ifthenelse{\equal{#2}{9}}{\renewcommand\myhat{hats/realhats-crown}\setlength{\vshif}{-0.3ex} \setlength{\hshif}{0.2ex}}{}%
 \addtolength{\hshif}{#3}%
 \addtolength{\vshif}{#4}%
 \stackMath %



More information about the tex-live-commits mailing list