texlive[75031] Master/texmf-dist: tikzquests (26apr25)
commits+karl at tug.org
commits+karl at tug.org
Sat Apr 26 22:08:29 CEST 2025
Revision: 75031
https://tug.org/svn/texlive?view=revision&revision=75031
Author: karl
Date: 2025-04-26 22:08:29 +0200 (Sat, 26 Apr 2025)
Log Message:
-----------
tikzquests (26apr25)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/tikzquests/README.md
trunk/Master/texmf-dist/doc/latex/tikzquests/tikzquests.pdf
trunk/Master/texmf-dist/doc/latex/tikzquests/tikzquests.tex
trunk/Master/texmf-dist/tex/latex/tikzquests/tikzquests.sty
Modified: trunk/Master/texmf-dist/doc/latex/tikzquests/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikzquests/README.md 2025-04-26 20:08:20 UTC (rev 75030)
+++ trunk/Master/texmf-dist/doc/latex/tikzquests/README.md 2025-04-26 20:08:29 UTC (rev 75031)
@@ -67,7 +67,10 @@
- documentation in PDF format
-------------
-* Version 1.2 (this)
+* Version 1.3 (this)
+ - Added an optional parameter to \defQuestionAlias allowing to "copy" questions from one repository into another. see documentation.
+
+* Version 1.2
- Added the concept of 'sub-repositories' (relevant when listing the questions of a repository). see documentation.
* Version 1.1
Modified: trunk/Master/texmf-dist/doc/latex/tikzquests/tikzquests.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/tikzquests/tikzquests.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikzquests/tikzquests.tex 2025-04-26 20:08:20 UTC (rev 75030)
+++ trunk/Master/texmf-dist/doc/latex/tikzquests/tikzquests.tex 2025-04-26 20:08:29 UTC (rev 75031)
@@ -1,5 +1,10 @@
+%%%==============================================================================
+% WinEdt pragmas
+% !Mode:: "TeX:EN"
+% Default Compile engines:
% !TEX program = pdflatex
-% !TEX ext = --interaction=nonstopmode --enable-etex --enable-write18
+% !PDFTeXify ext = --enable-etex --restrict-write18
+% !PDFLaTeX ext = --enable-etex --restrict-write18
% !BIB program = none
%%%==============================================================================
%% Copyright 2023 by Alceu Frigeri
@@ -15,7 +20,7 @@
%%
%% The Current Maintainer of this work is Alceu Frigeri
%%
-%% This is version {1.2} {2025/01/09}
+%% This is version {1.3} {2025/04/25}
%%
%% The list of files that compose this work can be found in the README.md file at
%% https://ctan.org/pkg/tikzquests
@@ -69,7 +74,7 @@
\section{Repositories}\label{repositories}
Questions are stored in a set of repositories. Per default there is one such repository, named \tsobj[option]{default}. A repository can have an ``unlimited'' set of questions.
-\begin{codedescribe}{\defNewRepository,\selectRepository}
+\begin{codedescribe}{\defNewRepository,\SelectRepository}
\begin{codesyntax}%
\tsmacro{\defNewRepository*}{new-repository}
\tsmacro{\SelectRepository}{repository}
@@ -117,18 +122,23 @@
\end{tsremark}
-\begin{codedescribe}{\defQuestionAlias}
+\begin{codedescribe}[code,update={2025-04-25}]{\defQuestionAlias}
\begin{codesyntax}%
-\tsobj{\defQuestionAlias*}\tsargs[oarg]{repository}\tsargs[marg]{quest-alias,quest-name}
+\tsobj{\defQuestionAlias*}\tsargs[oarg]{dst-repository}\tsargs[marg]{quest-alias}\tsargs[oarg]{org-repository}\tsargs[marg]{quest-name}
\end{codesyntax}
-\tsobj{\defQuestionAlias} creates an alias, \tsobj[marg]{quest-alias} for a given question, \tsobj[marg]{quest-name}. As for \tsobj{\defQuestion}, the ``starred one'' regards text code ones and the ``non starred one'' regards the graphical ones.
+\tsobj{\defQuestionAlias} creates an alias, \tsobj[marg]{quest-alias} (at \tsobj[oarg]{dst-repository}) for a given question, \tsobj[marg]{quest-name} (from \tsobj[oarg]{org-repository}). The current active repository is used if none is specified. If only \tsobj[oarg]{dst-repository} is specified, the same repository is used for \tsobj[oarg]{org-repository}. As with \tsobj{\defQuestion}, the ``starred one'' regards text code ones and the ``non starred one'' regards the graphical ones.
\end{codedescribe}
+
\begin{tsremark}
-An error is raised if \tsobj[marg]{repository} or \tsobj[marg]{quest-name} doesn't exist.
+Be aware that this will copy the question definition at the alias creation point.
\end{tsremark}
+\begin{tsremark}
+An error is raised if \tsobj[marg,sep=or]{dst-repository,org-repository,quest-name} doesn't exist.
+\end{tsremark}
+
\subsection{Using a Question}\label{question use}
\begin{codedescribe}{\ftikzQuestion,\tikzQuestion,\rawtikzQuestion}
\begin{codesyntax}%
@@ -168,7 +178,7 @@
\end{tsremark}
\begin{tsremark}
-An error is raised if a repository in \tsobj[marg]{repositories list} doesn't exist. To reduce the clutter (and number of questions listed) one should consider the use of the option \tsobj[option]{no alias}.
+An error is raised if a repository in \tsobj[marg]{repositories list} doesn't exist. To reduce the clutter (and number of questions listed) one should consider the use of the \tsobj[option]{no alias} option.
\end{tsremark}
\section{Parameters as pgfkeys and auxiliary macros.}\label{parameters}
Modified: trunk/Master/texmf-dist/tex/latex/tikzquests/tikzquests.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzquests/tikzquests.sty 2025-04-26 20:08:20 UTC (rev 75030)
+++ trunk/Master/texmf-dist/tex/latex/tikzquests/tikzquests.sty 2025-04-26 20:08:29 UTC (rev 75031)
@@ -12,7 +12,7 @@
%%
%% The Current Maintainer of this work is Alceu Frigeri
%%
-%% This is version {1.2} {2025/01/09}
+%% This is version {1.3} {2025/04/25}
%%
%% The list of files that compose this work can be found in the README.md file at
%% https://ctan.org/pkg/tikzquests
@@ -27,8 +27,8 @@
\ProvidesExplPackage
{tikzquests}
- {2025/01/09}
- {1.2}
+ {2025/04/25}
+ {1.3}
{A Simple Framework for (tikz/text) Parametric Questions}
\ExplSyntaxOn
@@ -42,8 +42,8 @@
{
name .code:n = {tikzquests} ,
prefix .code:n = {tikzquests} ,
- date .code:n = {2025/01/09},
- version .code:n = {1.2} ,
+ date .code:n = {2025/04/25},
+ version .code:n = {1.3} ,
description .code:n = {A Simple Framework for (tikz/text) Parametric Questions}
}
\cs_if_exist:NF \PkgInfo
@@ -200,37 +200,51 @@
}
}
-\NewDocumentCommand{\defQuestionAlias}{sO{\l__tikzquests_active_repository_tl}mm}
+
+\NewDocumentCommand{\defQuestionAlias}{sO{\l__tikzquests_active_repository_tl}mO{}m}
{
- \prop_if_exist:cTF {l__tikzquests_ #2 _tikzrepo_prop}
+ \tl_if_blank:nTF {#4}
+ { \tl_set:Nn \l_tmpa_tl {#2} }
+ { \tl_set:Nn \l_tmpa_tl {#4} }
+ \bool_lazy_and:nnTF { \prop_if_exist_p:c {l__tikzquests_ #2 _tikzrepo_prop} } { \prop_if_exist_p:c {l__tikzquests_ \l_tmpa_tl _tikzrepo_prop} }
{
\bool_if:NF \l__tikzquests_noalias_bool
{
\bool_if:nTF {#1}
{
- \prop_get:cnNTF {l__tikzquests_ #2 _textrepo_prop}{#4} \l_tmpa_tl
+ \prop_get:cnNTF {l__tikzquests_ \l_tmpa_tl _textrepo_prop}{#5} \l_tmpb_tl
{
- \prop_put:cnn {l__tikzquests_ #2 _textrepo_prop}{#3}{\prop_item:cn {l__tikzquests_ #2 _textrepo_prop}{#4}}
- \prop_put:cnn {l__tikzquests_ #2 _textrepo_remarks_prop}{#3}{\prop_item:cn {l__tikzquests_ #2 _textrepo_remarks_prop}{#4}}
+ \prop_put:cnV {l__tikzquests_ #2 _textrepo_prop}{#3} \l_tmpb_tl
+ \prop_get:cnNTF {l__tikzquests_ \l_tmpa_tl _textrepo_remarks_prop}{#5} \l_tmpb_tl
+ { \prop_put:cnV {l__tikzquests_ #2 _textrepo_remarks_prop}{#3} \l_tmpb_tl }
+ { \prop_put:cnn {l__tikzquests_ #2 _textrepo_remarks_prop}{#3}{} }
}
- {
- \msg_error:nnnn {tikzquests}{invalid question}{alias~01}{#4}
+ {
+ \msg_error:nnnn {tikzquests}{invalid question}{alias~01}{#5}
}
}
{
- \prop_get:cnNTF {l__tikzquests_ #2 _tikzrepo_prop}{#4} \l_tmpa_tl
+ \prop_get:cnNTF {l__tikzquests_ \l_tmpa_tl _tikzrepo_prop}{#5} \l_tmpb_tl
{
- \prop_put:cnn {l__tikzquests_ #2 _tikzrepo_prop}{#3}{\prop_item:cn {l__tikzquests_ #2 _tikzrepo_prop}{#4}}
- \prop_put:cnn {l__tikzquests_ #2 _tikzrepo_remarks_prop}{#3}{\prop_item:cn {l__tikzquests_ #2 _tikzrepo_remarks_prop}{#4}}
+ \prop_put:cnV {l__tikzquests_ #2 _tikzrepo_prop}{#3} \l_tmpb_tl
+ \prop_get:cnNTF {l__tikzquests_ \l_tmpa_tl _tikzrepo_remarks_prop}{#5} \l_tmpb_tl
+ { \prop_put:cnV {l__tikzquests_ #2 _tikzrepo_remarks_prop}{#3} \l_tmpb_tl }
+ { \prop_put:cnn {l__tikzquests_ #2 _tikzrepo_remarks_prop}{#3}{} }
}
- {
- \msg_error:nnnn {tikzquests}{invalid question}{alias~02}{#4}
+ {
+ \msg_error:nnnn {tikzquests}{invalid question}{alias~02}{#5}
}
}
}
}
{
- \msg_error:nnne {tikzquests}{invalid repository}{alias~03}{#2}
+ \tl_if_blank:nTF {#4}
+ {
+ \msg_error:nnne {tikzquests}{invalid repository}{alias~04}{<#2>}
+ }
+ {
+ \msg_error:nnne {tikzquests}{invalid repository}{alias~04}{<#2> - <#4>}
+ }
}
}
More information about the tex-live-commits
mailing list.