From 8bb985021b2f40fd3c9ef24653decafda35a3592 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Tue, 30 Jun 2020 21:21:36 +0000 Subject: cloze (30jun20) git-svn-id: svn://tug.org/texlive/trunk@55704 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/lualatex/cloze/cloze.sty | 273 ------------------------- Master/texmf-dist/tex/luatex/cloze/cloze.sty | 220 ++++++++++++++++++++ 2 files changed, 220 insertions(+), 273 deletions(-) delete mode 100644 Master/texmf-dist/tex/lualatex/cloze/cloze.sty create mode 100644 Master/texmf-dist/tex/luatex/cloze/cloze.sty (limited to 'Master/texmf-dist/tex') diff --git a/Master/texmf-dist/tex/lualatex/cloze/cloze.sty b/Master/texmf-dist/tex/lualatex/cloze/cloze.sty deleted file mode 100644 index a7f604dbbc0..00000000000 --- a/Master/texmf-dist/tex/lualatex/cloze/cloze.sty +++ /dev/null @@ -1,273 +0,0 @@ -%% -%% This is file `cloze.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% cloze.dtx (with options: `package') -%% -%% This is a generated file. -%% -%% Copyright (C) 2015-2020 by Josef Friedrich -%% ---------------------------------------------------------------------- -%% This work may be distributed and/or modified under the conditions of -%% the LaTeX Project Public License, either version 1.3c 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.3c or later is part of all distributions of LaTeX -%% version 2008/05/05 or later. -%% -\NeedsTeXFormat{LaTeX2e}[1999/12/01] -\ProvidesPackage{cloze} - [2020/05/27 v1.5 Package to typeset cloze worksheets or cloze tests] -\RequirePackage{fontspec} -\RequirePackage{luatexbase-mcb} -\RequirePackage{kvoptions} -\RequirePackage{setspace} -\RequirePackage{xcolor} -\RequirePackage{xparse} -\RequirePackage{stackengine} -\RequirePackage{ulem} -\normalem -\RequirePackage{transparent} -\directlua{ - cloze = require('cloze') -} -\newif\ifclozeshow\clozeshowtrue -\def\cloze@set@to@global{% - \directlua{cloze.set_is_global(true)}% -} -\def\cloze@set@to@local{% - \directlua{ - cloze.unset_local_options() - cloze.set_is_global(false) - }% -} -\def\cloze@set@option[#1]#2{% - \directlua{cloze.set_option('#1', '#2')}% -} -\def\cloze@color#1{\csname\string\color@#1\endcsname} -\def\cloze@set@local@options#1{% - \cloze@set@to@local% - \kvsetkeys{CLZ}{#1}% -} -\def\cloze@start@marker#1{% - \strut\directlua{ - cloze.register('#1') - cloze.marker('#1', 'start') - }% -} -\def\cloze@stop@marker#1{% - \strut\directlua{ - cloze.marker('#1', 'stop') - }% -} -\def\cloze@margin#1{% - \directlua{cloze.margin()}% - #1% - \directlua{cloze.margin()}% -} -\cloze@set@to@global -\SetupKeyvalOptions{ - family=CLZ, - prefix=CLZ@ -} -\DeclareStringOption{align} -\define@key{CLZ}{align}[]{\cloze@set@option[align]{#1}} -\DeclareStringOption{boxheight} -\define@key{CLZ}{boxheight}[]{\cloze@set@option[boxheight]{#1}} -\DeclareStringOption{boxwidth} -\define@key{CLZ}{boxwidth}[]{\cloze@set@option[boxwidth]{#1}} -\DeclareStringOption{distance} -\define@key{CLZ}{distance}[]{\cloze@set@option[distance]{#1}} -\DeclareVoidOption{hide}{% - \clozeshowfalse% - \cloze@set@option[hide]{true}% - \cloze@set@option[show]{false}% -} -\DeclareStringOption{linecolor} -\define@key{CLZ}{linecolor}[]{% - \cloze@set@option[linecolor]{\cloze@color{#1}}% - \cloze@set@option[linecolor_name]{#1}% -} -\DeclareStringOption{margin} -\define@key{CLZ}{margin}[]{\cloze@set@option[margin]{#1}} -\DeclareVoidOption{show}{% - \clozeshowtrue% - \cloze@set@option[show]{true}% - \cloze@set@option[hide]{false}% -} -\DeclareStringOption{spacing} -\define@key{CLZ}{spacing}[]{\cloze@set@option[spacing]{#1}} -\DeclareStringOption{textcolor} -\define@key{CLZ}{textcolor}[]{% - \cloze@set@option[textcolor]{\cloze@color{#1}}% - \cloze@set@option[textcolor_name]{#1}% -} -\DeclareStringOption{thickness} -\define@key{CLZ}{thickness}[]{\cloze@set@option[thickness]{#1}} -\DeclareStringOption{width} -\define@key{CLZ}{width}[]{\cloze@set@option[width]{#1}} -\ProcessKeyvalOptions{CLZ} -\newcommand{\clozeset}[1]{% - \cloze@set@to@global% - \kvsetkeys{CLZ}{#1}% -} -\newcommand{\clozereset}{% - \directlua{cloze.reset()} -} -\newcommand{\clozeshow}{% - \clozeset{show} -} -\newcommand{\clozehide}{% - \clozeset{hide} -} -\newcommand{\clozefont}{\itshape} -\newcommand{\clozesetfont}[1]{% - \renewcommand{\clozefont}[1]{% - #1% - }% -} -\newcommand{\cloze}[2][]{% - \cloze@set@local@options{#1}% - \cloze@start@marker{basic}% - {% - \clozefont\relax% - \cloze@margin{#2}% - }% - \cloze@stop@marker{basic}% -} -\newcommand{\clozefix}[2][]{% - \cloze@set@local@options{#1}% - \cloze@start@marker{fix}% - {% - \clozefont\relax% - \cloze@margin{#2}% - }% - \cloze@stop@marker{fix}% -} -\newcommand{\clozenol}[2][]{% - {% - \cloze@set@local@options{#1}% - \clozefont\relax% - \ifclozeshow% - \color{\directlua{tex.print(cloze.get_value('textcolor_name'))}}% - \else% - \color{white}% - \fi% - #2% - }% -} -\newenvironment{clozepar}[1][]% -{% - \par% - \cloze@set@local@options{#1}% - \cloze@start@marker{par}% - \clozefont\relax% -}% -{% - \cloze@stop@marker{par}% - \par% - \directlua{cloze.unregister('par')}% -} -\newcommand{\cloze@get@value}[1]{% - \directlua{ - tex.print(cloze.get_value('#1')) - }% -} -\newsavebox{\cloze@box} -\NewDocumentEnvironment{clozebox}{ s O{} +b}{% - \cloze@set@local@options{#2}% - \noindent% - \begin{lrbox}{\cloze@box}% - \directlua{ - local boxheight = cloze.get_value('boxheight') - local boxwidth = cloze.get_value('boxwidth') - if boxheight then - tex.print('\\begin{minipage}[t][' .. boxheight .. '][t]{' .. boxwidth .. '}') - else - tex.print('\\begin{minipage}[t]{' .. boxwidth .. '}') - end - } - \clozefont\relax% - \ifclozeshow% - \color{\directlua{tex.print(cloze.get_value('textcolor_name'))}}#3% - \else% - \color{white}#3% - \fi% - \end{minipage}% - \end{lrbox}% - \IfBooleanTF{#1}% - {\usebox{\cloze@box}}% - {\fbox{\usebox{\cloze@box}}}% -}{} -\newenvironment{clozespace}[1][]% -{% - \cloze@set@local@options{#1}% - \begin{spacing}{\directlua{tex.print(cloze.get_value('spacing'))}}% -}{\end{spacing}} -\newcommand{\clozefil}[2][]{% - \cloze[#1]{#2}\clozelinefil[#1]% -} -\newcommand{\clozeextend}[1][1]{% - \directlua{ - local loop = #1 - for variable = 1, loop do - tex.print(' \string\\hspace{1em} \string\\strut') - end - } -} -\newcommand{\clozeline}[1][]{% - \cloze@set@local@options{#1}% - \directlua{cloze.line()}% -} -\newcommand{\clozelinefil}[1][]{% - \cloze@set@local@options{#1}% - \strut% - \directlua{cloze.linefil()}% - \strut% -} -\newcommand{\cloze@text@color}[1]{% - \textcolor% - {\directlua{tex.print(cloze.get_value('textcolor_name'))}}% - {#1}% -} -\newcommand\cloze@strike@line{% - \bgroup% - \markoverwith{% - \cloze@text@color{% - \rule[0.5ex]{2pt}{1pt}% - }% - }% - \ULon% -} -\newcommand{\clozestrike}[3][]{% - \cloze@set@local@options{#1}% - \ifclozeshow% - \stackengine% - {\Sstackgap}% \Sstackgap or \Lstackgap or \stackgap or stacklength - {\cloze@strike@line{#2}}% anchor - {\cloze@text@color{\clozefont{}#3}}% item - {O}% O or U - {c}% \stackalignment or l or c or r - {\quietstack}% \quietstack or T or F - {T}% \useanchorwidth or T or F - {\stacktype}% \stacktype or S or L - \else% - \stackengine% - {\Sstackgap}% \Sstackgap or \Lstackgap or \stackgap or stacklength - {#2}% anchor - {\texttransparent{0}{\clozefont{}#3}}% item - {O}% O or U - {c}% \stackalignment or l or c or r - {\quietstack}% \quietstack or T or F - {T}% \useanchorwidth or T or F - {\stacktype}% \stacktype or S or L - \fi% -} -\endinput -%% -%% End of file `cloze.sty'. diff --git a/Master/texmf-dist/tex/luatex/cloze/cloze.sty b/Master/texmf-dist/tex/luatex/cloze/cloze.sty new file mode 100644 index 00000000000..4c67c66a55a --- /dev/null +++ b/Master/texmf-dist/tex/luatex/cloze/cloze.sty @@ -0,0 +1,220 @@ +%% +%% This is file `cloze.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% cloze.dtx (with options: `latex') +%% +%% This is a generated file. +%% +%% Copyright (C) 2015-2020 by Josef Friedrich +%% ---------------------------------------------------------------------- +%% This work may be distributed and/or modified under the conditions of +%% the LaTeX Project Public License, either version 1.3c 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.3c or later is part of all distributions of LaTeX +%% version 2008/05/05 or later. +%% +\NeedsTeXFormat{LaTeX2e}[1999/12/01] +\ProvidesPackage{cloze} + [2020/06/60 v1.6 Package to typeset cloze worksheets or cloze tests] +\input{cloze.tex} +\RequirePackage{fontspec} +\RequirePackage{luatexbase-mcb} +\RequirePackage{kvoptions} +\RequirePackage{setspace} +\RequirePackage{xcolor} +\RequirePackage{xparse} +\RequirePackage{stackengine} +\RequirePackage{ulem} +\normalem +\RequirePackage{transparent} +\let\clozesetoption=\undefined +\newcommand{\clozesetoption}[2]{% + \directlua{cloze.set_option('#1', '#2')}% +} +\def\ClozeSetLocalOptions#1{% + \ClozeSetToLocal% + \kvsetkeys{CLZ}{#1}% +} +\ClozeSetToGlobal +\SetupKeyvalOptions{ + family=CLZ, + prefix=CLZ@ +} +\DeclareStringOption{align} +\define@key{CLZ}{align}[]{\clozesetoption{align}{#1}} +\DeclareStringOption{boxheight} +\define@key{CLZ}{boxheight}[]{\clozesetoption{boxheight}{#1}} +\DeclareStringOption{boxwidth} +\define@key{CLZ}{boxwidth}[]{\clozesetoption{boxwidth}{#1}} +\DeclareStringOption{distance} +\define@key{CLZ}{distance}[]{\clozesetoption{distance}{#1}} +\DeclareVoidOption{hide}{% + \clozeshowfalse% + \clozesetoption{hide}{true}% + \clozesetoption{show}{false}% +} +\DeclareStringOption{linecolor} +\define@key{CLZ}{linecolor}[]{% + \clozesetoption{linecolor}{\ClozeColor{#1}}% + \clozesetoption{linecolor_name}{#1}% +} +\DeclareStringOption{margin} +\define@key{CLZ}{margin}[]{\clozesetoption{margin}{#1}} +\DeclareVoidOption{show}{% + \clozeshowtrue% + \clozesetoption{show}{true}% + \clozesetoption{hide}{false}% +} +\DeclareStringOption{spacing} +\define@key{CLZ}{spacing}[]{\clozesetoption{spacing}{#1}} +\DeclareStringOption{textcolor} +\define@key{CLZ}{textcolor}[]{% + \clozesetoption{textcolor}{\ClozeColor{#1}}% + \clozesetoption{textcolor_name}{#1}% +} +\DeclareStringOption{thickness} +\define@key{CLZ}{thickness}[]{\clozesetoption{thickness}{#1}} +\DeclareStringOption{width} +\define@key{CLZ}{width}[]{\clozesetoption{width}{#1}} +\ProcessKeyvalOptions{CLZ} +\newcommand{\clozeset}[1]{% + \ClozeSetToGlobal% + \kvsetkeys{CLZ}{#1}% +} +\let\clozeshow=\undefined +\newcommand{\clozeshow}{% + \clozeset{show} +} +\let\clozehide=\undefined +\newcommand{\clozehide}{% + \clozeset{hide} +} +\let\clozeplain=\cloze +\let\cloze=\undefined +\newcommand{\cloze}[2][]{% + \ClozeSetLocalOptions{#1}% + \clozeplain{#2}% +} +\let\clozefixplain=\clozefix +\let\clozefix=\undefined +\newcommand{\clozefix}[2][]{% + \ClozeSetLocalOptions{#1}% + \clozefixplain{#2}% +} +\let\clozenolplain=\clozenol +\let\clozenol=\undefined +\newcommand{\clozenol}[2][]{% + \ClozeSetLocalOptions{#1}% + \clozenolplain{#2}% +} +\newenvironment{clozepar}[1][]% +{% + \par% + \ClozeSetLocalOptions{#1}% + \ClozeStartMarker{par}% + \clozefont\relax% +}% +{% + \ClozeStopMarker{par}% + \par% + \directlua{cloze.unregister('par')}% +} +\newsavebox{\ClozeBox}% +\NewDocumentEnvironment{clozebox}{ s O{} +b}{% + \ClozeSetLocalOptions{#2}% + \noindent% + \begin{lrbox}{\ClozeBox}% + \directlua{ + local boxheight = cloze.get_value('boxheight') + local boxwidth = cloze.get_value('boxwidth') + if boxheight then + tex.print('\\begin{minipage}[t][' .. boxheight .. '][t]{' .. boxwidth .. '}') + else + tex.print('\\begin{minipage}[t]{' .. boxwidth .. '}') + end + }% + \setlength{\parindent}{0pt}% + \clozenol[margin=0pt]{#3}% + \end{minipage}% + \end{lrbox}% + \IfBooleanTF{#1}% + {\usebox{\ClozeBox}}% + {\fbox{\usebox{\ClozeBox}}}% +}{} +\newenvironment{clozespace}[1][]% +{% + \ClozeSetLocalOptions{#1}% + \begin{spacing}{\directlua{tex.print(cloze.get_value('spacing'))}}% +}{\end{spacing}} +\let\clozelineplain=\clozeline +\let\clozeline=\undefined +\newcommand{\clozeline}[1][]{% + \ClozeSetLocalOptions{#1}% + \clozelineplain% +} +\let\clozelinefilplain=\clozelinefil +\let\clozelinefil=\undefined +\newcommand{\clozelinefil}[1][]{% + \ClozeSetLocalOptions{#1}% + \clozelinefilplain% +} +\let\clozefil=\undefined +\newcommand{\clozefil}[2][]{% + \cloze[#1]{#2}\clozelinefil[#1]% +} +\newcommand{\clozeextend}[1][1]{% + \directlua{ + local loop = #1 + for variable = 1, loop do + tex.print(' \string\\hspace{1em} \string\\strut') + end + } +} +\newcommand{\ClozeTextColor}[1]{% + \textcolor% + {\directlua{tex.print(cloze.get_value('textcolor_name'))}}% + {#1}% +} +\newcommand\ClozeStrikeLine{% + \bgroup% + \markoverwith{% + \ClozeTextColor{% + \rule[0.5ex]{2pt}{1pt}% + }% + }% + \ULon% +} +\newcommand{\clozestrike}[3][]{% + \ClozeSetLocalOptions{#1}% + \ifclozeshow% + \stackengine% + {\Sstackgap}% \Sstackgap or \Lstackgap or \stackgap or stacklength + {\ClozeStrikeLine{#2}}% anchor + {\ClozeTextColor{\clozefont{}#3}}% item + {O}% O or U + {c}% \stackalignment or l or c or r + {\quietstack}% \quietstack or T or F + {T}% \useanchorwidth or T or F + {\stacktype}% \stacktype or S or L + \else% + \stackengine% + {\Sstackgap}% \Sstackgap or \Lstackgap or \stackgap or stacklength + {#2}% anchor + {\texttransparent{0}{\clozefont{}#3}}% item + {O}% O or U + {c}% \stackalignment or l or c or r + {\quietstack}% \quietstack or T or F + {T}% \useanchorwidth or T or F + {\stacktype}% \stacktype or S or L + \fi% +} +\endinput +%% +%% End of file `cloze.sty'. -- cgit v1.2.3