summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/clojure-pamphlet
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-08-23 22:51:26 +0000
committerKarl Berry <karl@freefriends.org>2019-08-23 22:51:26 +0000
commitbbed3d7c3f9fe94ee6e609e703386eab311d94d1 (patch)
tree09de8c3b1caf63b592895acc48b10db806a60c16 /Master/texmf-dist/tex/latex/clojure-pamphlet
parent47c569e42dbc9e097d71c904b50282d64090e336 (diff)
clojure-pamphlet (24aug19)
git-svn-id: svn://tug.org/texlive/trunk@51944 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/clojure-pamphlet')
-rw-r--r--Master/texmf-dist/tex/latex/clojure-pamphlet/clojure-pamphlet.sty98
1 files changed, 98 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/clojure-pamphlet/clojure-pamphlet.sty b/Master/texmf-dist/tex/latex/clojure-pamphlet/clojure-pamphlet.sty
new file mode 100644
index 00000000000..9355c50b9f0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/clojure-pamphlet/clojure-pamphlet.sty
@@ -0,0 +1,98 @@
+%%
+%% This is file `clojure-pamphlet.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% clojure-pamphlet.dtx (with options: `package')
+%% This is a generated file.
+%%
+%% Copyright (C) 2019 by Lanchares Sanchez, Ernesto
+%%
+%% This file 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.
+\NeedsTeXFormat{LaTeX2e}[2005/12/01]
+\ProvidesPackage{clojure-pamphlet}[2019/07/08 v1.o .dtx clojure pamphlet file]
+\RequirePackage{listings}
+\RequirePackage{hyperref}
+\@input{\jobname.pam}
+\newcount\pam@references
+\edef\wbgroup{\iftrue\string{\else}\fi}
+\edef\wegroup{\iffalse{\else\string}\fi}
+\def\pam@storetext#1{%
+ \expandafter\if\string#1\wegroup%
+ \getchunk{\pam@text}%
+ #1%
+ \else%
+ \edef\pam@text{\pam@text#1}%
+ \expandafter\pam@storetext% This expandafter is so the input of
+ % \pam@storetext is not \fi
+ \fi%
+}
+\newenvironment{pam@getchunkenv}{\def\pam@text{}%
+\expandafter\pam@storetext}{}
+\lstnewenvironment{chunk}[1]{%
+ \hypertarget{#1}%
+ {\ }\newline\noindent%
+ \hbox{\hskip 2.0cm}{\bf --- #1 ---}%
+ \edef\@currentlabelname{#1}%
+ \lstset{alsodigit={.-},alsoletter={\\}}%
+ \lstset{escapebegin=\begin{pam@getchunkenv}}%
+ \lstset{escapeend=\end{pam@getchunkenv}}%
+ \lstset{escapeinside={\\getchunk\{}{\}}}%
+}{
+ {\ }\newline\noindent%
+ \hbox{\hskip 2.0cm}%
+ {\it ---\csname referenced#1\endcsname---}%
+}
+\newcommand{\getchunk}[1]{%
+ {\big<}\hyperlink{#1}{#1}{\big>}%
+ \edef\pam@label{reference-\the\pam@references}%
+ \label{\pam@label}%
+ \ifcsname used#1\endcsname\else%
+ \expandafter\def\csname used#1\endcsname{Used by}%
+ \fi%
+ \edef\pam@tmp{\unexpanded\expandafter\expandafter%
+ \expandafter{\csname used#1\endcsname}}%
+\expandafter\xdef\csname used#1\expandafter\endcsname\expandafter{%
+ \expandafter\unexpanded\expandafter{\pam@tmp},%
+ \ \unexpanded\expandafter{\expandafter\nameref\expandafter{\pam@label}}%
+}%
+\global\advance\pam@references 1\relax%
+\ifdefined\pam@chunks%
+ \xdef\pam@chunks{\pam@chunks,#1}%
+\else%
+ \xdef\pam@chunks{#1}%
+\fi%
+}
+\AtEndDocument{%
+ \ifdefined\pam@chunks%
+ \newwrite\@pamfile%
+ \immediate\openout\@pamfile=\jobname.pam%
+\@for\next:=\pam@chunks\do{%
+ \ifcsname lstel@\next\endcsname%
+ \else%
+ \expandafter\let\csname lstel@\next\endcsname\@empty%
+ \immediate\write\@pamfile{%
+ \unexpanded{\expandafter\def\csname }%
+ referenced\next\unexpanded{\endcsname}%
+ \wbgroup%
+ \unexpanded\expandafter\expandafter\expandafter%
+ {\csname used\next\endcsname}%
+ \wegroup%
+ }%
+ \fi%
+}%
+ \immediate\closeout\@pamfile%
+ \fi%
+}
+\endinput
+%%
+%% End of file `clojure-pamphlet.sty'.