texlive[42774] Master: scsnowman (22dec16)
commits+karl at tug.org
commits+karl at tug.org
Thu Dec 22 23:56:28 CET 2016
Revision: 42774
http://tug.org/svn/texlive?view=revision&revision=42774
Author: karl
Date: 2016-12-22 23:56:28 +0100 (Thu, 22 Dec 2016)
Log Message:
-----------
scsnowman (22dec16)
Modified Paths:
--------------
trunk/Master/tlpkg/bin/tlpkg-ctan-check
trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc
Added Paths:
-----------
trunk/Master/texmf-dist/doc/latex/scsnowman/
trunk/Master/texmf-dist/doc/latex/scsnowman/LICENSE
trunk/Master/texmf-dist/doc/latex/scsnowman/README.md
trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman-sample.pdf
trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman-sample.tex
trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman.pdf
trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman.tex
trunk/Master/texmf-dist/tex/latex/scsnowman/
trunk/Master/texmf-dist/tex/latex/scsnowman/scsnowman-normal.def
trunk/Master/texmf-dist/tex/latex/scsnowman/scsnowman.sty
trunk/Master/texmf-dist/tex/latex/scsnowman/sctkzsym-base.sty
trunk/Master/tlpkg/tlpsrc/scsnowman.tlpsrc
Added: trunk/Master/texmf-dist/doc/latex/scsnowman/LICENSE
===================================================================
--- trunk/Master/texmf-dist/doc/latex/scsnowman/LICENSE (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/scsnowman/LICENSE 2016-12-22 22:56:28 UTC (rev 42774)
@@ -0,0 +1,25 @@
+(The BSD 2-Clause License)
+
+Copyright (c) 2015-2016 Hironobu Yamashita
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Added: trunk/Master/texmf-dist/doc/latex/scsnowman/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/scsnowman/README.md (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/scsnowman/README.md 2016-12-22 22:56:28 UTC (rev 42774)
@@ -0,0 +1,31 @@
+# scsnowman
+
+This LaTeX package provides a command `\scsnowman`, which can display many
+variants of snowman ("yukidaruma" in Japanese).
+This package utilizes TikZ for drawing snowman.
+
+The package is maintained on GitHub:
+https://github.com/aminophen/scsnowman
+
+## Requirements
+
+This package requires "tikz" package.
+
+## Installation
+
+Deploy the files in an appropriate place under the TEXMF tree.
+
+ * scsnowman.sty, sctkzsym-base.sty, scsnowman-normal.def
+ => $TEXMF/tex/latex/scsnowman
+ * scsnowman.{tex,pdf}, scsnowman-sample.{tex,pdf}
+ => $TEXMF/doc/latex/scsnowman
+
+Then, execute mktexlsr.
+
+## License
+
+This package is distributed under the BSD 2-Clause License.
+See [LICENSE](./LICENSE).
+
+Copyright (c) 2015-2016 Hironobu Yamashita
+http://acetaminophen.hatenablog.com/
Added: trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman-sample.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman-sample.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman-sample.pdf 2016-12-22 22:55:10 UTC (rev 42773)
+++ trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman-sample.pdf 2016-12-22 22:56:28 UTC (rev 42774)
Property changes on: trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman-sample.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman-sample.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman-sample.tex (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman-sample.tex 2016-12-22 22:56:28 UTC (rev 42774)
@@ -0,0 +1,131 @@
+%%
+%% This is file `scsnowman-sample.tex', part of scsnowman package.
+%% Maintained on GitHub:
+%% https://github.com/aminophen/scsnowman
+%%
+%% Copyright (c) 2015-2016 Hironobu Yamashita
+%% Email : h.y.acetaminophen[a t]gmail.com
+%% GitHub : https://github.com/aminophen
+%% Blog : http://acetaminophen.hatenablog.com/
+%% Twitter : @aminophen
+%%
+% platex + dvipdfmx
+\documentclass[dvipdfmx,twocolumn]{jsarticle}
+\usepackage[margin=21truemm]{geometry}
+\usepackage[svgnames]{xcolor}
+\usepackage{scsnowman}
+\title{\textsf{scsnowman}パッケージの実用例}
+\author{アセトアミノフェン}
+\begin{document}
+\maketitle
+
+% ふつうのゆきだるま
+これはゆきだるま\scsnowman です。
+
+% 雪ありゆきだるま
+今日の天気は\scsnowman[snow]です。
+
+% 帽子をかぶったゆきだるま
+ゆきだるま\scsnowman[hat]が帽子をかぶりました。
+
+% 帽子をかぶったゆきだるま(帽子の色は青)
+私は青い帽子をかぶった\scsnowman[hat=blue]が大好きです。
+
+% 帽子とマフラー付(マフラーの色は赤)
+マフラー\scsnowman[hat=true,muffler=red]を付けてあげましょう。
+
+% 腕あり
+腕も作って\scsnowman[hat=true,muffler=red,arms=true]あげましょう。
+
+% サイズ変更
+小\scsnowman、
+中\scsnowman[scale=3]、
+大\scsnowman[scale=5]。
+
+% ゆきだるま三兄弟
+\begin{table}[htb]
+ \begin{tabular}{ccc}
+ \texttt{U+2603} & \texttt{U+26C4} & \texttt{U+26C7} \\
+ \texttt{SNOWMAN} & \texttt{SNOWMAN WITHOUT SNOW} & \texttt{BLACK SNOWMAN} \\
+ \scsnowman[scale=5,body=false,snow=true] & \scsnowman[scale=5,body=false,snow=false] & \scsnowman[scale=5,body=true,snow=true]
+ \end{tabular}
+\end{table}
+
+\begin{table}[htb]
+ \begin{tabular}{ccc}
+ \texttt{U+2603} & \texttt{U+26C4} & \texttt{U+26C7} \\
+ \texttt{SNOWMAN} & \texttt{SNOWMAN WITHOUT SNOW} & \texttt{BLACK SNOWMAN} \\
+ \scsnowman[scale=5,body=false,snow=true,muffler=true] & \scsnowman[scale=5,body=false,snow=false,muffler=true] & \scsnowman[scale=5,body=true,snow=true,muffler=true]
+ \end{tabular}
+\end{table}
+
+\begin{table}[htb]
+ \begin{tabular}{ccc}
+ \texttt{U+2603} & \texttt{U+26C4} & \texttt{U+26C7} \\
+ \texttt{SNOWMAN} & \texttt{SNOWMAN WITHOUT SNOW} & \texttt{BLACK SNOWMAN} \\
+ \scsnowman[scale=5,body=false,snow=true,hat=true,arms=true] & \scsnowman[scale=5,body=false,snow=false,hat=true,arms=true] & \scsnowman[scale=5,body=true,snow=true,hat=true,arms=true]
+ \end{tabular}
+\end{table}
+
+\begin{table}[htb]
+ \begin{tabular}{ccc}
+ \texttt{U+????} & \texttt{U+????} & \texttt{U+????} \\
+ \texttt{RED SNOWMAN} & \texttt{BLUE SNOWMAN} & \texttt{GREEN SNOWMAN} \\
+ \scsnowman[scale=5,body=red,snow=red,hat=red] & \scsnowman[scale=5,body=blue,hat=blue,arms=blue,muffler=blue] & \scsnowman[scale=5,body=green,snow=green,arms=green]
+ \end{tabular}
+\end{table}
+
+\newpage
+
+\scsnowmandefault{body,hat,snow,muffler}%
+私、黒\scsnowman 大輔は、1950年に黒\scsnowman 太郎の長男として
+誕生しました。その後、黒\scsnowman 家には…
+
+\scsnowmandefault{hat,snow,arms}%
+お隣には白\scsnowman さんが住んでいました。白\scsnowman さんは、
+宛名の文字を「\scsnowman」でなく「\scsnowman[arms=false,muffler]」
+と書いてしまうとお手紙を読まずに食べてしまうような変わった方でした。
+ただし、\scsnowman[hat=red]のように帽子に色が付いた宛名を見ると、
+白\scsnowman さんは喜んでいました。
+
+% buttons で「ボタン」(マフラーの有無で微妙に位置が変わる)
+\scsnowmandefault{scale=5,hat=Green,arms=Brown,snow=SkyBlue}
+\scsnowman[buttons=RoyalBlue,muffler=Red]
+\scsnowman[buttons=RoyalBlue]
+
+% mouthshape で「口の形」
+\scsnowmandefault{scale=5,hat,muffler=Red}
+\scsnowman[mouthshape=smile]% にっこり
+\scsnowman[mouthshape=frown]% しかめっ面
+\scsnowman[mouthshape=tight]% 真一文字
+
+% sweat で「汗」
+\scsnowmandefault{scale=5,hat}
+\scsnowman[mouthshape=tight,arms,buttons,sweat]
+
+ゆきだるまで箇条書き:
+\makeitemsnowman
+\begin{itemize}
+ \item 動物
+ \begin{itemize}
+ \item 哺乳類
+ \item 鳥類
+ \item …
+ \end{itemize}
+ \item 植物
+ \begin{itemize}
+ \item 裸子植物
+ \item 被子植物
+ \begin{itemize}
+ \item 単子葉類
+ \item 双子葉類
+ \begin{itemize}
+ \item 合弁花類
+ \item 離弁花類
+ \end{itemize}
+ \end{itemize}
+ \end{itemize}
+\end{itemize}
+\makeitemother
+
+\end{document}
Added: trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman.pdf 2016-12-22 22:55:10 UTC (rev 42773)
+++ trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman.pdf 2016-12-22 22:56:28 UTC (rev 42774)
Property changes on: trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman.tex (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/scsnowman/scsnowman.tex 2016-12-22 22:56:28 UTC (rev 42774)
@@ -0,0 +1,246 @@
+%%
+%% This is the documentation of scsnowman package.
+%% (Last Update: 2016/12/22)
+%% Maintained on GitHub:
+%% https://github.com/aminophen/scsnowman
+%%
+%% Copyright (c) 2015-2016 Hironobu Yamashita
+%% Email : h.y.acetaminophen[a t]gmail.com
+%% GitHub : https://github.com/aminophen
+%% Blog : http://acetaminophen.hatenablog.com/
+%% Twitter : @aminophen
+%%
+\documentclass[a4paper]{article}
+\usepackage{doc}
+\usepackage[svgnames]{xcolor}
+\usepackage{scsnowman}
+\GetFileInfo{scsnowman.sty}
+\usepackage{array}
+\usepackage{luatexja}
+\usepackage{luatexja-fontspec}
+\def\BigSnowman#1{\fontsize{60pt}{60pt}\selectfont\symbol{"#1}}
+\newjfontfamily\fipam{IPAexMincho}
+\newjfontfamily\fhrgnm{HiraMinProN-W3}
+\newjfontfamily\fkozm{KozMinPr6N-Regular}
+\newjfontfamily\fmsmin{MS-Mincho}
+\newjfontfamily\fvlgo{VLGothic}
+\usepackage{hyperref}
+% misc
+\def\Lpack#1{\textsf{#1}}
+\def\Lopt#1{\texttt{#1}}
+% scsnowman in title
+\def\scsnowmanleft{%
+ \raisebox{-1ex}{\scsnowman[scale=2,hat=Green,arms=Brown,snow=SkyBlue,buttons=RoyalBlue,muffler=Red]}}
+\def\scsnowmanright{%
+ \raisebox{-1ex}{\scsnowman[scale=2,hat=Green,arms=Brown,snow=SkyBlue,buttons=RoyalBlue]}}
+\title{\scsnowmanleft\ The \Lpack{scsnowman} package \fileversion\ \scsnowmanright}
+\author{Hironobu Yamashita}
+\date{\filedate}
+\begin{document}
+
+\maketitle
+
+The \LaTeX\ package \Lpack{scsnowman} provides a command \verb+\scsnowman+, which can display
+many variants of snowman. This package utilizes Ti\emph{k}Z for drawing snowman.
+\begin{figure}[htb]\centering
+\scsnowman[scale=3,hat,snow,arms]\scsnowman[scale=3,hat=RoyalBlue,muffler=Green]
+\scsnowman\scsnowman[scale=3]\scsnowman[scale=5]\par
+\scsnowmandefault{scale=5,hat,muffler=Red}
+\scsnowman[mouthshape=smile]
+\scsnowman[mouthshape=frown]
+\scsnowman[mouthshape=tight]
+\scsnowman[mouthshape=tight,arms,buttons,sweat]\\[2ex]
+\scsnowmandefault{scale=5}
+\begin{tabular}{ccc}
+ \texttt{U+2603} & \texttt{U+26C4} & \texttt{U+26C7} \\
+ \texttt{SNOWMAN} & \texttt{SNOWMAN WITHOUT SNOW} & \texttt{BLACK SNOWMAN} \\
+ \scsnowman[body=false,snow=true] & \scsnowman[body=false,snow=false] & \scsnowman[body=true,snow=true]
+\end{tabular}
+\end{figure}
+
+The package is maintained on GitHub:
+\begin{itemize}
+\item \url{https://github.com/aminophen/scsnowman}
+\end{itemize}
+
+\tableofcontents\clearpage
+
+\section{The History of Snowman in Unicode}
+
+In October 1991, the first volume of the Unicode standard was published. Since then,
+there was a code point assigned to a character ``snowman''; \verb:U+2603:.
+\begin{quote}
+ \verb:U+2603 SNOWMAN:\\
+ = snowy weather
+\end{quote}
+It seems that the shape of its reference glyph in Unicode 1.0.0 was taken from ``Ryumin'',
+which was developed by Morisawa (a famous font vendor in Japan).
+\begin{figure}
+%\includegraphics[width=0.3\textwidth]{}
+\end{figure}
+A few years later, the reference glyph has sometimes been changed to another; however,
+there had been only one ``snowman'' in Unicode until 2009.
+\begin{figure}
+%\includegraphics[width=0.3\textwidth]{}
+\end{figure}
+
+In October 2009, Unicode 5.2 was published. In this volume, two ``snowman'' code points
+were added; \verb:U+26C4: and \verb:U+26C7:.
+\begin{quote}
+ \verb:U+26C4 SNOWMAN WITHOUT SNOW:\\
+ = light snow\\
+ \verb:U+26C7 BLACK SNOWMAN:\\
+ = heavy snow
+\end{quote}
+According to the code chart, the origin of these two characters is ARIB STD-B24
+(Data Coding and Transmission Specification for Digital Broadcasting;\footnote{%
+\url{http://www.arib.or.jp/tyosakenkyu/kikaku_hoso/hoso_std-b024.html}; Abstract in PDF format
+(both \href{http://www.arib.or.jp/tyosakenkyu/kikaku_sample/sample-std-b24-1-6.3.pdf}{Japanese}
+and \href{http://www.arib.or.jp/english/html/overview/doc/6-STD-B24v5_2-1p3-E1.pdf}{English}) are
+available.}), which was established by Association of Radio Industries and Business in
+Japan. Since then, it can be said that the old code point \verb:U+2603: has been given
+an implicit meaning of ``\verb:SNOWMAN WITH SNOW:''. The reference glyphs were also changed
+at that time.
+\begin{figure}
+%\includegraphics[width=0.3\textwidth]{}
+\end{figure}
+
+\section{Variation of Snowman among Actual Fonts}
+
+Since the shapes of the reference glyphs used in the Unicode code charts are not
+prescriptive, the actual fonts have a wide variety of glyph designs. However, when it
+comes to snowman, the variation between fonts is enormous. This variation is very
+interesting, however, on the other hand, problematic.
+
+Table \ref{table:actualfonts} shows the variety of ``snowman'' in actual fonts.
+\begin{table}[tbp]
+\caption{The variety of ``snowman'' in actual fonts}\label{table:actualfonts}
+\setlength{\extrarowheight}{50pt}%
+\centering
+\begin{tabular}{cccc}
+\hline
+ & \raisebox{2ex}{\Large\texttt{U+2603}} & \raisebox{2ex}{\Large\texttt{U+26C4}} & \raisebox{2ex}{\Large\texttt{U+26C7}} \\ \hline
+\raisebox{4ex}{\fipam IPAex明朝} & {\fipam \BigSnowman{2603}} & & \\
+\raisebox{4ex}{\fmsmin MS 明朝} & {\fmsmin \BigSnowman{2603}} & & \\
+\raisebox{4ex}{\fkozm 小塚明朝 Pr6N Regular} & {\fkozm \BigSnowman{2603}} & & \\
+\raisebox{4ex}{\fhrgnm ヒラギノ明朝 ProN W3} & {\fhrgnm \BigSnowman{2603}} & & \\
+\raisebox{4ex}{\fvlgo VLゴシック} & {\fvlgo \BigSnowman{2603}} & {\fvlgo \BigSnowman{26C4}} & {\fvlgo \BigSnowman{26C7}} \\
+\hline
+\end{tabular}
+\end{table}
+The snowman in ``IPA Mincho (IPA明朝)'' from Information-technology Promotion Agency is very similar
+to the one in ``Ryumin (リュウミン)'' from Morisawa. However, in ``MS Mincho (MS 明朝)'' from Microsoft,
+the snowman wears a black hat instead of white one. In ``Kozuka Mincho (小塚明朝)'' from Adobe Systems Inc.,
+he/she wears a muffler instead of a hat. Moreover, it doesn't snow in ``Hiragino Mincho (ヒラギノ明朝)'' from
+SCREEN Graphic and Precision Solutions Co., Ltd. It is natural that some fonts developed before 2009 have
+a ``snowman without snow'' glyph in the code point \verb:U+2603:, however, it can be a problem when we
+have to transfer the exact information to others.
+
+\section{Introduction to \Lpack{scsnowman} Package}
+
+The \LaTeX\ package \Lpack{scsnowman} provides a command \verb+\scsnowman+, which can
+display many variants of snowman. This package depends on Ti\emph{k}Z package for drawing
+snowman images.
+
+To use this package, load it in preamble:
+\begin{quote}\begin{verbatim}
+\usepackage{scsnowman}
+\end{verbatim}\end{quote}
+In the main document, use \verb+\scsnowman+ command to print snowman: \scsnowman.
+By default, the snowman is ``plain'' style, without any decoration such as snow, a hat or
+a muffler.
+
+\section{Command Options}
+
+You can customize the style of snowman using the optional argument. The syntax is
+\begin{quote}
+\verb+\scsnowman[+\emph{$\langle$key-value list$\rangle$}\verb+]+
+\end{quote}
+Following \emph{key}s take a \emph{value} which specifies color. When the \emph{value} is omitted,
+the default color, black or white, will be used:
+\begin{quote}
+ \Lopt{body}, \Lopt{eyes}, \Lopt{mouth}, \Lopt{sweat},
+ \Lopt{hat}, \Lopt{arms}, \Lopt{muffler}, \Lopt{buttons}, \Lopt{snow}
+\end{quote}
+Other \emph{key}s require one specific \emph{value}:
+\begin{quote}
+ \Lopt{mouthshape}, \Lopt{scale}
+\end{quote}
+The key \Lopt{mouthshape} takes one of the followings: \Lopt{smile}, \Lopt{tight} or \Lopt{frown}.
+The key \Lopt{scale} takes a scale factor.
+
+Here is some examples:\\[1ex]
+\begin{minipage}{.7\textwidth}\begin{verbatim}
+ \scsnowman[scale=2,body,hat=red,muffler=blue]
+ \scsnowman[scale=3,hat,snow,arms,buttons]
+ \scsnowman[scale=3,mouthshape=tight,muffler=red]
+ \scsnowman[scale=3,mouthshape=frown,hat=green]
+\end{verbatim}\end{minipage}
+\begin{minipage}{.25\textwidth}
+ \scsnowman[scale=2,body,hat=red,muffler=blue]
+ \scsnowman[scale=3,hat,snow,arms,buttons]
+ \scsnowman[scale=2,mouthshape=tight,muffler=red]
+ \scsnowman[scale=2,mouthshape=frown,hat=green]
+\end{minipage}
+
+\section{Changing the Default}
+
+The package default is the ``plain'' style snowman. This default can be changed by using
+\verb+\scsnowmandefault+ command. The syntax is
+\begin{quote}
+\verb+\scsnowmandefault{+\emph{$\langle$key-value list$\rangle$}\verb+}+
+\end{quote}
+The available \emph{key}s are the same as those in \verb+\scsnowman+.
+
+Here is some examples:\\[1ex]
+\begin{minipage}{.65\textwidth}\begin{verbatim}
+ \scsnowmandefault{scale=3,hat=red}
+ \scsnowman
+ \scsnowman[body,hat=red,muffler=blue]
+ \scsnowman[hat=green,snow]
+\end{verbatim}\end{minipage}
+\begin{minipage}{.3\textwidth}
+ \scsnowmandefault{scale=5,hat=red}
+ \scsnowman
+ \scsnowman[body,hat=red,muffler=blue]
+ \scsnowman[hat=green,snow]
+\end{minipage}
+
+\section*{Version History}
+
+This is the summary of changes. For more detail, see GitHub repository.
+\begin{table}[h]
+\centering
+\begin{tabular}{lll}
+Version 0.1 & 2015-12-13 & First public version on GitHub \\
+Version 0.8 & 2016-08-08 & Second public version on GitHub: \\
+ & & new variants \Lopt{buttons}, \Lopt{mouthshape}, \Lopt{sweat} are added \\
+Version 1.0 & 2016-12-22 & First CTAN release
+\end{tabular}
+\end{table}
+
+\begin{thebibliography}{9}
+\bibitem{NAOI1}
+\href{http://d.hatena.ne.jp/NAOI/20080623/1214211959}{雪だるまの親子関係}
+ -- Mac OS Xの文字コード問題に関するメモ
+\bibitem{NAOI2}
+\href{http://d.hatena.ne.jp/NAOI/20110707/1310031226}{ヒラギノの雪だるまは、なぜ寂しそうなのか}
+ -- Mac OS Xの文字コード問題に関するメモ
+\bibitem{DORA1}
+\href{http://doratex.hatenablog.jp/entry/20140327/1395878814}{いろいろなゆきだるま}
+ -- TeX Alchemist Online
+\bibitem{ACE1}
+\href{http://acetaminophen.hatenablog.com/entry/2014/09/05/090313}{「\TeX{}でゆきだるま」をもっとたくさん}
+ -- Acetaminophen's diary
+\bibitem{ZR1}
+\href{http://d.hatena.ne.jp/zrbabbler/20140911/1410439004}{Unicode の例の雪だるまは多分アレ}
+ -- マクロツイーター
+\bibitem{ACE2}
+\href{http://acetaminophen.hatenablog.com/entry/2015/12/13/080226}{\TeX{}でゆきだるまを“もっともっと”たくさん}
+ -- Acetaminophen's diary
+\bibitem{ACE3}
+\href{http://acetaminophen.hatenablog.com/entry/2016/08/08/080800}{夏といえば、やっぱり「ゆきだるま」!}
+ -- Acetaminophen's diary
+\end{thebibliography}
+
+\end{document}
Added: trunk/Master/texmf-dist/tex/latex/scsnowman/scsnowman-normal.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/scsnowman/scsnowman-normal.def (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/scsnowman/scsnowman-normal.def 2016-12-22 22:56:28 UTC (rev 42774)
@@ -0,0 +1,115 @@
+%%
+%% This is file `scsnowman-normal.def', part of scsnowman package.
+%% Maintained on GitHub:
+%% https://github.com/aminophen/scsnowman
+%%
+%% Copyright (c) 2015-2016 Hironobu Yamashita
+%% Email : h.y.acetaminophen[a t]gmail.com
+%% GitHub : https://github.com/aminophen
+%% Blog : http://acetaminophen.hatenablog.com/
+%% Twitter : @aminophen
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{scsnowman-normal.def}[2016/12/22 v1.0 scsnowman definition (normal)]
+\def\sctkzsym at snowman@normal{%
+ \begin{tikzpicture}[x=1.8ex,y=1.8ex,line width=0.025ex*\sctkzsym at coord@scl,line join=round,line cap=round,scale=\sctkzsym at snowman@scale]
+ \useasboundingbox(0,0) rectangle (1,1);
+ \sctkzsym at snowman@bodypath % body (IPA-like)
+ (0.5,0.72) .. controls (0.64,0.72) and (0.76,0.65) ..
+ (0.76,0.55) .. controls (0.76,0.51) and (0.72,0.47) ..
+ (0.67,0.44) .. controls (0.79,0.41) and (0.84,0.32) ..
+ (0.84,0.25) .. controls (0.84,0.13) and (0.75,0.08) ..
+ (0.68,0.08) --
+ (0.32,0.08) .. controls (0.25,0.08) and (0.16,0.13) ..
+ (0.16,0.25) .. controls (0.16,0.32) and (0.21,0.41) ..
+ (0.33,0.44) .. controls (0.28,0.47) and (0.24,0.51) ..
+ (0.24,0.55) .. controls (0.24,0.65) and (0.36,0.72) ..
+ (0.5,0.72) --
+ cycle;
+ \ifsctkzsym at snowman@eyes
+ \sctkzsym at snowman@eyepath (0.40,0.56) circle (0.02 and 0.03);
+ \sctkzsym at snowman@eyepath (0.60,0.56) circle (0.02 and 0.03);
+ \fi
+ \ifsctkzsym at snowman@mouth
+ \expandafter\ifnum\csname sctkzsym at snowman@mouthshape at c\endcsname=\thr@@
+ \sctkzsym at snowman@mouthpath (0.40,0.47) -- (0.60,0.47);
+ \else\expandafter\ifnum\csname sctkzsym at snowman@mouthshape at c\endcsname=\tw@
+ \sctkzsym at snowman@mouthpath (0.40,0.46) .. controls (0.45,0.49) and (0.55,0.49) .. (0.60,0.46);
+ \else
+ \sctkzsym at snowman@mouthpath (0.40,0.48) .. controls (0.45,0.45) and (0.55,0.45) .. (0.60,0.48);
+ \fi\fi
+ \fi
+ \ifsctkzsym at snowman@sweat
+ \sctkzsym at snowman@sweatpath (0.70,0.56) .. controls (0.64,0.46) and (0.75,0.46) .. (0.70,0.56) -- cycle;
+ \fi
+ \ifsctkzsym at snowman@hat
+ \sctkzsym at snowman@hatpath % hat
+ (0.58,0.90) --
+ (0.77,0.81) --
+ (0.74,0.61) .. controls (0.66,0.60) and (0.50,0.66) ..
+ (0.46,0.72) --
+ (0.58,0.90) --
+ cycle;
+ \fi
+ \ifsctkzsym at snowman@arms
+ \sctkzsym at snowman@armspath % right arm (SourceHanSans-like)
+ (0.20,0.31) .. controls (0.19,0.33) and (0.14,0.41) ..
+ (0.13,0.42) .. controls (0.12,0.43) and (0.10,0.43) ..
+ (0.07,0.44) .. controls (0.04,0.46) and (0.06,0.46) ..
+ (0.08,0.46) .. controls (0.09,0.46) and (0.11,0.44) ..
+ (0.12,0.44) .. controls (0.14,0.46) and (0.14,0.47) ..
+ (0.15,0.49) .. controls (0.16,0.51) and (0.16,0.49) ..
+ (0.16,0.48) .. controls (0.16,0.46) and (0.14,0.44) ..
+ (0.15,0.43) .. controls (0.16,0.42) and (0.21,0.35) ..
+ (0.22,0.33) .. controls (0.23,0.31) and (0.21,0.30) ..
+ (0.20,0.31) --
+ cycle;
+ \sctkzsym at snowman@armspath % left arm (SourceHanSans-like)
+ (0.80,0.31) .. controls (0.81,0.33) and (0.86,0.41) ..
+ (0.87,0.42) .. controls (0.88,0.43) and (0.90,0.43) ..
+ (0.93,0.44) .. controls (0.96,0.46) and (0.94,0.46) ..
+ (0.92,0.46) .. controls (0.91,0.46) and (0.89,0.44) ..
+ (0.88,0.44) .. controls (0.86,0.46) and (0.86,0.47) ..
+ (0.85,0.49) .. controls (0.84,0.51) and (0.84,0.49) ..
+ (0.84,0.48) .. controls (0.84,0.46) and (0.86,0.44) ..
+ (0.85,0.43) .. controls (0.84,0.42) and (0.79,0.35) ..
+ (0.78,0.33) .. controls (0.77,0.31) and (0.79,0.30) ..
+ (0.80,0.31) --
+ cycle;
+ \fi
+ \ifsctkzsym at snowman@muffler
+ \sctkzsym at snowman@mufflerpath % muffler (SourceHanSans-like)
+ (0.27,0.48) .. controls (0.42,0.38) and (0.58,0.38) ..
+ (0.73,0.48) .. controls (0.75,0.46) and (0.76,0.44) ..
+ (0.77,0.41) .. controls (0.77,0.39) and (0.75,0.37) ..
+ (0.73,0.36) .. controls (0.74,0.33) and (0.74,0.31) ..
+ (0.76,0.26) .. controls (0.75,0.25) and (0.72,0.24) ..
+ (0.66,0.23) .. controls (0.66,0.27) and (0.65,0.30) ..
+ (0.63,0.34) .. controls (0.42,0.30) and (0.32,0.35) ..
+ (0.24,0.41) .. controls (0.25,0.45) and (0.26,0.47) ..
+ (0.27,0.48) --
+ cycle;
+ \fi
+ \ifsctkzsym at snowman@buttons\ifsctkzsym at snowman@muffler
+ \sctkzsym at snowman@buttonpath (0.50,0.16) circle (0.03);
+ \sctkzsym at snowman@buttonpath (0.50,0.26) circle (0.03);
+ \else
+ \sctkzsym at snowman@buttonpath (0.50,0.17) circle (0.03);
+ \sctkzsym at snowman@buttonpath (0.50,0.29) circle (0.03);
+ \fi\fi
+ \ifsctkzsym at snowman@snow
+ \sctkzsym at snowman@snowpath (0.07,0.28) circle (0.04);
+ \sctkzsym at snowman@snowpath (0.08,0.68) circle (0.04);
+ \sctkzsym at snowman@snowpath (0.13,0.55) circle (0.04);
+ \sctkzsym at snowman@snowpath (0.23,0.76) circle (0.04);
+ \sctkzsym at snowman@snowpath (0.42,0.89) circle (0.04);
+ \sctkzsym at snowman@snowpath (0.74,0.89) circle (0.04);
+ \sctkzsym at snowman@snowpath (0.88,0.73) circle (0.04);
+ \sctkzsym at snowman@snowpath (0.92,0.53) circle (0.04);
+ \sctkzsym at snowman@snowpath (0.94,0.23) circle (0.04);
+ \fi
+ \end{tikzpicture}%
+}
+\endinput
+%%
+%% End of file `scsnowman-normal.def'.
Added: trunk/Master/texmf-dist/tex/latex/scsnowman/scsnowman.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/scsnowman/scsnowman.sty (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/scsnowman/scsnowman.sty 2016-12-22 22:56:28 UTC (rev 42774)
@@ -0,0 +1,247 @@
+%%
+%% This is file `scsnowman.sty', part of scsnowman package.
+%% Maintained on GitHub:
+%% https://github.com/aminophen/scsnowman
+%%
+%% Copyright (c) 2015-2016 Hironobu Yamashita
+%% Email : h.y.acetaminophen[a t]gmail.com
+%% GitHub : https://github.com/aminophen
+%% Blog : http://acetaminophen.hatenablog.com/
+%% Twitter : @aminophen
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{scsnowman}[2016/12/22 v1.0 Snowman variants using TikZ]
+\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{sctkzsym-base}}
+\ProcessOptions\relax
+\RequirePackage{sctkzsym-base}[2016/08/08]
+%
+% make document snowman (joke)
+\ifsctkzsym at document
+\def\makedocumentsnowman{%
+ \ifx\documentclass\@notprerr
+ % Already after \begin{document}, throw an error
+ \def\sctkzsym at documentsnowman{%
+ \PackageError{scsnowman}{%
+ Use of \noexpand\makedocumentsnowman too late!\MessageBreak
+ Try using before \string\begin{document}}{%
+ I'll try to stop processing, but
+ this attempt can fail.\MessageBreak\@ehc}%
+ % If the above error is ignored, there's no way to
+ % exit successfully in all cases. So, try to continue
+ % processing by ignoring all LaTeX errors.
+ % TeX errors still remain; therefore, \makedocumentsnowman
+ % in internal vertical mode or math mode will fail.
+ \let\@latex at error\@gobbletwo\par
+ \scsnowman[init,scale=14,hat,muffler,buttons,snow]%
+ \scsnowman[init,scale=14,hat,muffler,buttons,arms]%
+ \scsnowman[init,scale=14,body,hat,muffler,buttons,snow]%
+ \end{document}}%
+ \else\ifx\documentclass\@twoclasseserror
+ \ifx\AtBeginDocument\@firstofone
+ % In preamble, inside \AtBeginDocument; avoid infinite loop
+ \def\sctkzsym at documentsnowman{%
+ \centering
+ \scsnowman[init,scale=14,hat,muffler,buttons,snow]%
+ \scsnowman[init,scale=14,hat,muffler,buttons,arms]%
+ \scsnowman[init,scale=14,body,hat,muffler,buttons,snow]%
+ \end{document}}%
+ \else
+ % In preamble; start document
+ \def\sctkzsym at documentsnowman{%
+ \pagestyle{empty}%
+ \begin{document}%
+ \centering
+ \scsnowman[init,scale=14,hat,muffler,buttons,snow]%
+ \scsnowman[init,scale=14,hat,muffler,buttons,arms]%
+ \scsnowman[init,scale=14,body,hat,muffler,buttons,snow]%
+ \end{document}}%
+ \fi
+ \else
+ % Before \documentclass{...}; load class and start document
+ \def\sctkzsym at documentsnowman{%
+ \documentclass{minimal}%
+ \begin{document}%
+ \centering
+ \scsnowman[init,scale=18,hat,muffler,buttons,snow]%
+ \scsnowman[init,scale=18,hat,muffler,buttons,arms]%
+ \scsnowman[init,scale=18,body,hat,muffler,buttons,snow]%
+ \end{document}}%
+ \fi\fi
+ \sctkzsym at documentsnowman
+}
+\fi
+%
+% change QED symbol (joke)
+\ifsctkzsym at qed
+ \def\sctkzsym at snowman@qedsymbol{\scsnowman[init,hat=true,muffler=red]}
+ \newcommand{\makeqedsnowman}{%
+ \ifx\qedsymbol\sctkzsym at snowman@qedsymbol\else
+ \let\sctkzsym at saved@qedsymbol\qedsymbol
+ \let\qedsymbol\sctkzsym at snowman@qedsymbol
+ \fi
+ }
+\fi
+%
+% change item label (joke)
+\ifsctkzsym at item
+ \def\sctkzsym at snowman@labelitemi{\scsnowman[init,hat=true,muffler=red]}
+ \def\sctkzsym at snowman@labelitemii{\scsnowman[init,hat=true,muffler=blue]}
+ \def\sctkzsym at snowman@labelitemiii{\scsnowman[init,hat=true,muffler=green]}
+ \def\sctkzsym at snowman@labelitemiv{\scsnowman[init,hat=true,muffler=yellow]}
+ \newcommand{\makeitemsnowman}{%
+ \ifx\labelitemi\sctkzsym at snowman@labelitemi\else
+ \let\sctkzsym at saved@labelitemi\labelitemi
+ \let\sctkzsym at saved@labelitemii\labelitemii
+ \let\sctkzsym at saved@labelitemiii\labelitemiii
+ \let\sctkzsym at saved@labelitemiv\labelitemiv
+ \let\labelitemi\sctkzsym at snowman@labelitemi
+ \let\labelitemii\sctkzsym at snowman@labelitemii
+ \let\labelitemiii\sctkzsym at snowman@labelitemiii
+ \let\labelitemiv\sctkzsym at snowman@labelitemiv
+ \fi
+ }
+\fi
+%
+% key initialization
+\newcommand\sctkzsym at snowman@initkeys{%
+ \def\sctkzsym at snowman@init{false}%
+ \def\sctkzsym at snowman@scale{1}%
+ \def\sctkzsym at snowman@body{false}%
+ \def\sctkzsym at snowman@eyes{true}% default on
+ \def\sctkzsym at snowman@mouthshape{smile}%
+ \def\sctkzsym at snowman@mouth{true}% default on
+ \def\sctkzsym at snowman@sweat{false}%
+ \def\sctkzsym at snowman@hat{false}%
+ \def\sctkzsym at snowman@arms{false}%
+ \def\sctkzsym at snowman@muffler{false}%
+ \def\sctkzsym at snowman@buttons{false}%
+ \def\sctkzsym at snowman@snow{false}%
+}
+\newcommand{\sctkzsym at snowman@defaultkeys}{%
+ \sctkzsym at snowman@initkeys
+}
+\sctkzsym at snowman@defaultkeys
+%
+% key definitions
+\sctkzsym at define@key at withbool{snowman}{init}
+\sctkzsym at define@key at wodefault{snowman}{scale}
+\sctkzsym at define@key at withbool{snowman}{body}
+\sctkzsym at define@key at withbool{snowman}{eyes}
+\sctkzsym at define@key at wodefault{snowman}{mouthshape}
+\sctkzsym at define@key at withbool{snowman}{mouth}
+\sctkzsym at define@key at withbool{snowman}{sweat}
+\sctkzsym at define@key at withbool{snowman}{hat}
+\sctkzsym at define@key at withbool{snowman}{arms}
+\sctkzsym at define@key at withbool{snowman}{muffler}
+\sctkzsym at define@key at withbool{snowman}{buttons}
+\sctkzsym at define@key at withbool{snowman}{snow}
+%
+% count definitions for \sctkzsym at hndl@key at wodefault
+\newcount\sctkzsym at snowman@mouthshape at c
+%
+% definition of \scsnowman[...]
+\DeclareRobustCommand\scsnowman[1][]{%
+ % key initialization using default
+ \sctkzsym at snowman@defaultkeys
+ % read <key>=<value>
+ \setkeys{sctkzsym at snowman}{#1}%
+ % check init; if init=true, initialize and read keys again
+ \sctkzsym at hndl@key at onlybool{snowman}{init}%
+ \ifsctkzsym at snowman@init
+ \sctkzsym at snowman@initkeys
+ \setkeys{sctkzsym at snowman}{#1,init=false}%
+ \fi
+ %
+ % check body; determine whether "black snowman" or "white snowman"
+ \sctkzsym at hndl@key at withbool{snowman}{body}%
+ \ifsctkzsym at snowman@body % "black snowman"; black snow; white eyes/mouth/stroke
+ \def\sctkzsym at snowman@bodystroke{\sctkzsym at snowman@body}%
+ \def\sctkzsym at snowman@bodyfill{\sctkzsym at snowman@body}%
+ \def\sctkzsym at snowman@bodypath{\path[draw=\sctkzsym at snowman@bodystroke,fill=\sctkzsym at snowman@bodyfill]}%
+ \def\sctkzsym at snowman@snowstroke{\sctkzsym at snowman@snow}%
+ \def\sctkzsym at snowman@snowfill{\sctkzsym at snowman@snow}%
+ \def\sctkzsym at snowman@snowpath{\path[draw=\sctkzsym at snowman@snowstroke,fill=\sctkzsym at snowman@snowfill]}%
+ \def\sctkzsym at snowman@eyefill{\sctkzsym at defaultanticolor}%
+ \def\sctkzsym at snowman@mouthstroke{\sctkzsym at defaultanticolor}%
+ \def\sctkzsym at snowman@sweatstroke{\sctkzsym at defaultanticolor}%
+ \def\sctkzsym at snowman@sweatfill{\sctkzsym at snowman@sweat}%
+ \def\sctkzsym at snowman@mufflerstroke{\sctkzsym at defaultanticolor}%
+ \def\sctkzsym at snowman@mufflerfill{\sctkzsym at snowman@muffler}%
+ \def\sctkzsym at snowman@buttonstroke{\sctkzsym at defaultanticolor}%
+ \def\sctkzsym at snowman@buttonfill{\sctkzsym at snowman@buttons}%
+ \else % "white snowman"; white snow; black eyes/mouth/stroke; bodystroke should be there
+ \def\sctkzsym at snowman@bodystroke{\sctkzsym at defaultcolor}%
+ \def\sctkzsym at snowman@bodyfill{}%
+ \def\sctkzsym at snowman@bodypath{\path[draw=\sctkzsym at snowman@bodystroke]}%
+ \def\sctkzsym at snowman@snowstroke{\sctkzsym at snowman@snow}%
+ \def\sctkzsym at snowman@snowfill{}%
+ \def\sctkzsym at snowman@snowpath{\path[draw=\sctkzsym at snowman@snowstroke]}%
+ \def\sctkzsym at snowman@eyefill{\sctkzsym at defaultcolor}%
+ \def\sctkzsym at snowman@mouthstroke{\sctkzsym at defaultcolor}%
+ \def\sctkzsym at snowman@sweatstroke{\sctkzsym at snowman@sweat}%
+ \def\sctkzsym at snowman@sweatfill{\sctkzsym at defaultanticolor}%
+ \def\sctkzsym at snowman@mufflerstroke{\sctkzsym at snowman@muffler}%
+ \def\sctkzsym at snowman@mufflerfill{\sctkzsym at snowman@muffler}%
+ \def\sctkzsym at snowman@buttonstroke{\sctkzsym at snowman@buttons}%
+ \def\sctkzsym at snowman@buttonfill{\sctkzsym at snowman@buttons}%
+ \fi
+ % check eyes (currently eyes=<color> not supported; falling back to default-(anti)color)
+ \sctkzsym at hndl@key at withbool{snowman}{eyes}%
+ \def\sctkzsym at snowman@eyepath{\path[fill=\sctkzsym at snowman@eyefill]}%
+ % check mouth (currently mouth=<color> not supported; falling back to default-(anti)color)
+ \sctkzsym at hndl@key at wodefault{snowman}{mouthshape}{smile}{frown}{tight}%
+ \sctkzsym at hndl@key at withbool{snowman}{mouth}%
+ \def\sctkzsym at snowman@mouthpath{\path[draw=\sctkzsym at snowman@mouthstroke]}%
+ % check sweat
+ \sctkzsym at hndl@key at withbool{snowman}{sweat}%
+ \def\sctkzsym at snowman@sweatpath{\path[draw=\sctkzsym at snowman@sweatstroke,fill=\sctkzsym at snowman@sweatfill]}%
+ % check hat
+ \sctkzsym at hndl@key at withbool{snowman}{hat}%
+ \def\sctkzsym at snowman@hatstroke{\sctkzsym at snowman@hat}%
+ \def\sctkzsym at snowman@hatfill{\sctkzsym at snowman@hat}%
+ \def\sctkzsym at snowman@hatpath{\path[draw=\sctkzsym at snowman@hatstroke,fill=\sctkzsym at snowman@hatfill]}%
+ % check arms
+ \sctkzsym at hndl@key at withbool{snowman}{arms}%
+ \def\sctkzsym at snowman@armsstroke{\sctkzsym at snowman@arms}%
+ \def\sctkzsym at snowman@armsfill{\sctkzsym at snowman@arms}%
+ \def\sctkzsym at snowman@armspath{\path[draw=\sctkzsym at snowman@armsstroke,fill=\sctkzsym at snowman@armsfill]}%
+ % check muffler
+ \sctkzsym at hndl@key at withbool{snowman}{muffler}%
+ \def\sctkzsym at snowman@mufflerpath{\path[draw=\sctkzsym at snowman@mufflerstroke,fill=\sctkzsym at snowman@mufflerfill]}%
+ % check buttons
+ \sctkzsym at hndl@key at withbool{snowman}{buttons}%
+ \def\sctkzsym at snowman@buttonpath{\path[draw=\sctkzsym at snowman@buttonstroke,fill=\sctkzsym at snowman@buttonfill]}%
+ % check snow
+ \sctkzsym at hndl@key at withbool{snowman}{snow}%
+ %
+ % drawing snowman
+ \set at sctkzsym@coord at scl{\sctkzsym at snowman@scale}%
+ \ifdim\sctkzsym at coord@scl<0pt\set at sctkzsym@coord at scl{-\sctkzsym at snowman@scale}\fi%
+ %
+ %%%%% input from def file
+ %
+ \sctkzsym at snowman@normal
+ %
+ %%%%%
+ %
+ % key initialization using default
+ \sctkzsym at snowman@defaultkeys
+}
+%
+% definition of \scsnowmandefault{...}
+\newcommand{\scsnowmandefault}[1]{%
+ \renewcommand{\sctkzsym at snowman@defaultkeys}{%
+ % key initialization
+ \sctkzsym at snowman@initkeys
+ % read <key>=<value> (init=true is silently ignored)
+ \setkeys{sctkzsym at snowman}{#1,init=false}%
+ }%
+ \sctkzsym at snowman@defaultkeys
+}
+%
+% load shape definitions
+\input{scsnowman-normal.def}
+%
+\endinput
+%%
+%% End of file `scsnowman.sty'.
Added: trunk/Master/texmf-dist/tex/latex/scsnowman/sctkzsym-base.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/scsnowman/sctkzsym-base.sty (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/scsnowman/sctkzsym-base.sty 2016-12-22 22:56:28 UTC (rev 42774)
@@ -0,0 +1,120 @@
+%%
+%% This is file `sctkzsym-base.sty', part of scsnowman package.
+%% Maintained on GitHub:
+%% https://github.com/aminophen/scsnowman
+%%
+%% Copyright (c) 2015-2016 Hironobu Yamashita
+%% Email : h.y.acetaminophen[a t]gmail.com
+%% GitHub : https://github.com/aminophen
+%% Blog : http://acetaminophen.hatenablog.com/
+%% Twitter : @aminophen
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{sctkzsym-base}[2016/12/22 v1.0 Base for emoji variants using TikZ]
+\RequirePackage{tikz}
+\RequirePackage{keyval}
+%
+% prepare for options
+\newif\ifsctkzsym at document
+\newif\ifsctkzsym at qed
+\newif\ifsctkzsym at item
+%
+% options
+\DeclareOption{documentX}{\sctkzsym at documenttrue}
+\DeclareOption{nodocumentX}{\sctkzsym at documentfalse}
+\DeclareOption{qedX}{\sctkzsym at qedtrue}
+\DeclareOption{noqedX}{\sctkzsym at qedfalse}
+\DeclareOption{itemX}{\sctkzsym at itemtrue}
+\DeclareOption{noitemX}{\sctkzsym at itemfalse}
+\ExecuteOptions{documentX,qedX,itemX}
+\ProcessOptions\relax
+%
+% save QED symbol before change (joke)
+\ifsctkzsym at qed
+ \RequirePackage{amsthm}
+ \ifx\sctkzsym at saved@qedsymbol\@undefined
+ \let\sctkzsym at saved@qedsymbol\qedsymbol
+ \fi
+ \newcommand{\makeqedother}{%
+ \let\qedsymbol\sctkzsym at saved@qedsymbol
+ }
+\fi
+%
+% save item label before change (joke)
+\ifsctkzsym at item
+ \let\sctkzsym at saved@labelitemi\labelitemi
+ \let\sctkzsym at saved@labelitemii\labelitemii
+ \let\sctkzsym at saved@labelitemiii\labelitemiii
+ \let\sctkzsym at saved@labelitemiv\labelitemiv
+ \newcommand{\makeitemother}{%
+ \let\labelitemi\sctkzsym at saved@labelitemi
+ \let\labelitemii\sctkzsym at saved@labelitemii
+ \let\labelitemiii\sctkzsym at saved@labelitemiii
+ \let\labelitemiv\sctkzsym at saved@labelitemiv
+ }
+\fi
+%
+% key definitions
+\newcommand{\sctkzsym at define@key at withbool}[2]{%
+ \define at key{sctkzsym@#1}{#2}[true]{\expandafter\def\csname sctkzsym@#1@#2\endcsname{##1}}%
+ \expandafter\newif\csname ifsctkzsym@#1@#2\endcsname
+}
+\newcommand{\sctkzsym at define@key at wodefault}[2]{%
+ \define at key{sctkzsym@#1}{#2}{\expandafter\def\csname sctkzsym@#1@#2\endcsname{##1}}%
+}
+%
+% key handling
+\def\sctkzsym at true{true} % for strcmp
+\def\sctkzsym at false{false} % for strcmp
+\newcommand{\sctkzsym at hndl@key at withbool}[2]{%
+ \expandafter\ifx\csname sctkzsym@#1@#2\endcsname\sctkzsym at false\relax
+ \csname sctkzsym@#1@#2false\endcsname % <key>=false
+ \else
+ \csname sctkzsym@#1@#2true\endcsname % <key>=true/<color>
+ \expandafter\ifx\csname sctkzsym@#1@#2\endcsname\sctkzsym at true\relax
+ % <key>=true; <default-color>
+ \expandafter\def\csname sctkzsym@#1@#2\endcsname{\sctkzsym at defaultcolor}%
+ \fi
+ \fi
+}
+\newcommand{\sctkzsym at hndl@key at onlybool}[2]{%
+ \expandafter\ifx\csname sctkzsym@#1@#2\endcsname\sctkzsym at false\relax
+ \csname sctkzsym@#1@#2false\endcsname % <key>=false
+ \else
+ \expandafter\ifx\csname sctkzsym@#1@#2\endcsname\sctkzsym at true\relax
+ \csname sctkzsym@#1@#2true\endcsname % <key>=true
+ \else
+ \PackageError{sctkzsym-base}{Only true/false allowed for key `#2'}\@ehc
+ \csname sctkzsym@#1@#2false\endcsname % <key>=false
+ \fi
+ \fi
+}
+\newcommand{\sctkzsym at hndl@key at wodefault}[5]{%
+ \def\@tempa{#3}%
+ \expandafter\ifx\csname sctkzsym@#1@#2\endcsname\@tempa\relax
+ \csname sctkzsym@#1@#2 at c\endcsname\@ne
+ \else
+ \def\@tempa{#4}%
+ \expandafter\ifx\csname sctkzsym@#1@#2\endcsname\@tempa\relax
+ \csname sctkzsym@#1@#2 at c\endcsname\tw@
+ \else
+ \def\@tempa{#5}%
+ \expandafter\ifx\csname sctkzsym@#1@#2\endcsname\@tempa\relax
+ \csname sctkzsym@#1@#2 at c\endcsname\thr@@
+ \else
+ \PackageError{sctkzsym-base}{Unsupported value `\csname sctkzsym@#1@#2\endcsname' for #2}\@ehc
+ \csname sctkzsym@#1@#2 at c\endcsname\z@
+ \fi
+ \fi
+ \fi
+}
+%
+% setup for tikzpicture
+\newlength{\sctkzsym at coord@scl}
+\newcommand*{\set at sctkzsym@coord at scl}[1]{\pgfmathsetlength{\sctkzsym at coord@scl}{#1pt}}
+\newcommand{\sctkzsym at defaultcolor}{black}
+\newcommand{\sctkzsym at defaultanticolor}{white}
+%
+\endinput
+%%
+%% End of file `sctkzsym-base.sty'.
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check 2016-12-22 22:55:10 UTC (rev 42773)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check 2016-12-22 22:56:28 UTC (rev 42774)
@@ -527,7 +527,7 @@
sauter sauterfonts savefnmark savesym savetrees
scale scalebar scalerel scanpages
schemabloc schemata sclang-prettifier schule schulschriften schwalbe-chess
- sciposter screenplay screenplay-pkg scrjrnl scrlttr2copy
+ sciposter screenplay screenplay-pkg scrjrnl scrlttr2copy scsnowman
sdrt sduthesis
secdot section sectionbox sectsty seealso
selectp selnolig semantic semantic-markup semaphor
Modified: trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc 2016-12-22 22:55:10 UTC (rev 42773)
+++ trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc 2016-12-22 22:56:28 UTC (rev 42774)
@@ -103,6 +103,7 @@
depend rviewport
depend sa-tikz
depend schemabloc
+depend scsnowman
depend setdeck
depend signchart
depend smartdiagram
Added: trunk/Master/tlpkg/tlpsrc/scsnowman.tlpsrc
===================================================================
More information about the tex-live-commits
mailing list