Skip to content

Commit

Permalink
v0.12
Browse files Browse the repository at this point in the history
  • Loading branch information
cgnieder committed Sep 30, 2019
1 parent 8574137 commit fad6514
Show file tree
Hide file tree
Showing 28 changed files with 204 additions and 131 deletions.
9 changes: 5 additions & 4 deletions README
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
--------------------------------------------------------------------------
XSIM 2018/02/12 v0.11
XSIM 2019/09/30 v0.12

eXercise Sheets IMproved

Expand All @@ -8,7 +8,7 @@ Clemens Niederberger
Web: https://github.com/cgnieder/xsim
E-Mail: [email protected]
--------------------------------------------------------------------------
Copyright 2017--2018 Clemens Niederberger
Copyright 2017--2019 Clemens Niederberger

This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either version 1.3
Expand All @@ -25,6 +25,7 @@ The Current Maintainer of this work is Clemens Niederberger.
The xsim package consists of the code files:
xsim.sty
xsimverb.sty
xsim.auxfile.code.tex
xsim.base.code.tex
xsim.blanks.code.tex
xsim.collections.code.tex
Expand All @@ -34,11 +35,11 @@ The xsim package consists of the code files:
xsim.goals.code.tex
xsim.grades.code.tex
xsim.interface.code.tex
xsim.layouts.code.tex
xsim.modules.code.tex
xsim.properties.code.tex
xsim.random.code.tex
xsim.solutions.code.tex
xsim.style.layouts.code.tex
xsim.tags.code.tex
xsim.templates.code.tex
xsim.translations.code.tex
Expand All @@ -63,8 +64,8 @@ The xsim package consists of the example files:
xsim.grade-distribution.tex, xsim.grade-distribution.pdf
xsim.hints.tex, xsim.hints.pdf
xsim.listings.tex, xsim.listings.pdf
xsim.multiplechoice.tex, xsim.multiplechoice.pdf
xsim.listofexercises.tex, xsim.listofexercises.pdf
xsim.multiplechoice.tex, xsim.multiplechoice.pdf
xsim.pointsums.tex, xsim.pointsums.pdf
xsim.randomexercises.tex, xsim.randomexercises.pdf
xsim.various.tex, xsim.various.pdf
Expand Down
2 changes: 1 addition & 1 deletion code/xsim.auxfile.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand Down
4 changes: 3 additions & 1 deletion code/xsim.base.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand Down Expand Up @@ -57,6 +57,8 @@
\cs_generate_variant:Nn \tl_set_rescan:Nnn {Nnn}
\cs_generate_variant:Nn \iow_now:Nn {NV}
\cs_generate_variant:Nn \str_if_eq:nnT {x}
\cs_generate_variant:Nn \str_if_eq:nnF {xx}
\cs_generate_variant:Nn \str_if_eq_p:nn {e}
\cs_generate_variant:Nn \iow_now:Nn {NV}
\cs_generate_variant:Nn \prg_new_protected_conditional:Npnn {c}

Expand Down
2 changes: 1 addition & 1 deletion code/xsim.blanks.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand Down
4 changes: 2 additions & 2 deletions code/xsim.collections.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand Down Expand Up @@ -353,7 +353,7 @@
{
\bool_if:nTF
{
!\str_if_eq_x_p:nn {#1} {all~ exercises} &&
!\str_if_eq_p:en {#1} {all~ exercises} &&
\prop_item:Nn \g__xsim_collections_prop {#1}
}
{ \prg_return_true: }
Expand Down
87 changes: 56 additions & 31 deletions code/xsim.definitions.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand All @@ -34,6 +34,8 @@
\DeclareExerciseParameter*!{solution-env}
\DeclareExerciseParameter !{exercise-name}
\DeclareExerciseParameter !{solution-name}
\DeclareExerciseParameter {exercises-name}
\DeclareExerciseParameter {solutions-name}
\DeclareExerciseParameter !{exercise-template}
\DeclareExerciseParameter !{solution-template}
\DeclareExerciseParameter* {counter}
Expand Down Expand Up @@ -75,7 +77,7 @@
\DeclareExerciseTagging {tags}
\DeclareExerciseTagging {topics}

\xsimsetup{tags/ingore-untagged=false}
\xsimsetup{tags/ignore-untagged=false}

% ----------------------------------------------------------------------------

Expand Down Expand Up @@ -160,7 +162,9 @@
exercise-env = exercise ,
solution-env = solution ,
exercise-name = \XSIMtranslate {exercise} ,
exercises-name = \XSIMtranslate {exercises} ,
solution-name = \XSIMtranslate {solution} ,
solutions-name = \XSIMtranslate {solutions} ,
exercise-template = default ,
solution-template = default
}
Expand Down Expand Up @@ -339,20 +343,41 @@
German = \"Ubung
}

\DeclareExerciseTranslations {exercises} {
Fallback = exercises ,
English = exercises ,
French = exercices ,
German = \"Ubungen
}

\DeclareExerciseTranslations {question} {
Fallback = question ,
English = question ,
French = question ,
German = Aufgabe
}

\DeclareExerciseTranslations {questions} {
Fallback = questions ,
English = questions ,
French = questions ,
German = Aufgaben
}

\DeclareExerciseTranslations {solution} {
Fallback = solution ,
English = solution ,
French = solution ,
German = L\"osung
}

\DeclareExerciseTranslations {solutions} {
Fallback = solutions ,
English = solutions ,
French = solutions ,
German = L\"osungen
}

\DeclareExerciseTranslations {point-abbr} {
Fallback = p. ,
English = p. ,
Expand Down Expand Up @@ -389,54 +414,54 @@
}

\DeclareExerciseTranslations {default-heading} {
Fallback = \XSIMmixedcase { \GetExerciseParameter {solution-name} s }~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercise-name} s} ,
English = \XSIMmixedcase { \GetExerciseParameter {solution-name} s }~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercise-name} s} ,
French = \XSIMmixedcase { \GetExerciseParameter {solution-name} s~
des~ \GetExerciseParameter {exercise-name} s} ,
German = \XSIMmixedcase { \GetExerciseParameter {solution-name} en }~
zu~ den~ \XSIMmixedcase { \GetExerciseParameter {exercise-name} n}
Fallback = \XSIMmixedcase { \GetExerciseParameter {solutions-name} }~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercises-name} } ,
English = \XSIMmixedcase { \GetExerciseParameter {solutions-name} }~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercises-name} } ,
French = \XSIMmixedcase { \GetExerciseParameter {solutions-name} ~
des~ \GetExerciseParameter {exercises-name} } ,
German = \XSIMmixedcase { \GetExerciseParameter {solutions-name} }~
zu~ den~ \XSIMmixedcase { \GetExerciseParameter {exercises-name} }
}

\DeclareExerciseTranslations {collection-heading} {
Fallback = \XSIMmixedcase { \GetExerciseParameter {exercise-name} s } ,
English = \XSIMmixedcase { \GetExerciseParameter {exercise-name} s } ,
French = \XSIMmixedcase { \GetExerciseParameter {exercise-name} s } ,
German = \XSIMmixedcase { \GetExerciseParameter {exercise-name} n }
Fallback = \XSIMmixedcase { \GetExerciseParameter {exercises-name} } ,
English = \XSIMmixedcase { \GetExerciseParameter {exercises-name} } ,
French = \XSIMmixedcase { \GetExerciseParameter {exercises-name} } ,
German = \XSIMmixedcase { \GetExerciseParameter {exercises-name} }
}

\DeclareExerciseTranslations {per-section-heading} {
Fallback = \XSIMmixedcase { \GetExerciseParameter {solution-name} s }~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercise-name} s}~
Fallback = \XSIMmixedcase { \GetExerciseParameter {solutions-name} } ~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercises-name} } ~
of~ Section \nobreakspace \ExerciseSection ,
English = \XSIMmixedcase { \GetExerciseParameter {solution-name} s }~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercise-name} s}~
English = \XSIMmixedcase { \GetExerciseParameter {solutions-name} } ~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercises-name} } ~
of~ Section \nobreakspace \ExerciseSection ,
French = \XSIMmixedcase { \GetExerciseParameter {solution-name} s~
des~ \GetExerciseParameter {exercise-name} s~ de~ la~
French = \XSIMmixedcase { \GetExerciseParameter {solutions-name} ~
des~ \GetExerciseParameter {exercises-name} ~ de~ la~
section \nobreakspace \ExerciseSection } ,
German = \XSIMmixedcase { \GetExerciseParameter {solution-name} en }~
zu~ den~ \XSIMmixedcase { \GetExerciseParameter {exercise-name} n}~
German = \XSIMmixedcase { \GetExerciseParameter {solutions-name} } ~
zu~ den~ \XSIMmixedcase { \GetExerciseParameter {exercises-name} }~
in~ Abschnitt \nobreakspace \ExerciseSection
}

\DeclareExerciseTranslations {per-chapter-heading} {
Fallback = \XSIMmixedcase { \GetExerciseParameter {solution-name} s }~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercise-name} s}~
Fallback = \XSIMmixedcase { \GetExerciseParameter {solutions-name} } ~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercises-name} } ~
of~ Chapter \nobreakspace \ExerciseChapter ,
English = \XSIMmixedcase { \GetExerciseParameter {solution-name} s }~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercise-name} s}~
English = \XSIMmixedcase { \GetExerciseParameter {solutions-name} } ~
to~ the~ \XSIMmixedcase { \GetExerciseParameter {exercises-name} } ~
of~ Chapter \nobreakspace \ExerciseChapter ,
French = \XSIMmixedcase { \GetExerciseParameter {solution-name} s~
des~ \GetExerciseParameter {exercise-name} s~
French = \XSIMmixedcase { \GetExerciseParameter {solutions-name} ~
des~ \GetExerciseParameter {exercises-name} ~
du~ chapitre \nobreakspace \ExerciseChapter } ,
German = \XSIMmixedcase { \GetExerciseParameter {solution-name} en }~
zu~ den~ \XSIMmixedcase { \GetExerciseParameter {exercise-name} n}~
German = \XSIMmixedcase { \GetExerciseParameter {solutions-name} } ~
zu~ den~ \XSIMmixedcase { \GetExerciseParameter {exercises-name} } ~
in~ Kapitel \nobreakspace \ExerciseChapter
}

% ----------------------------------------------------------------------------
\file_input_stop:

2019/02/17 fixed error in German translations
2019/02/17 fixed error in German translations (issue 39)
2 changes: 1 addition & 1 deletion code/xsim.environments.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand Down
12 changes: 11 additions & 1 deletion code/xsim.exercises.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand Down Expand Up @@ -317,6 +317,16 @@
\xsim_set_parameter:nnx {#1} {number}
{ number of \xsim_get_parameter:nn {#1} {exercise-env} s }
\xsim_check_mandatory_parameters:n {#1}
\xsim_if_parameter_set:nnF {#1} {exercises-name}
{
\xsim_set_parameters:nn {#1}
{ exercises-name = \xsim_get_parameter:nn {#1} {exercise-name} s }
}
\xsim_if_parameter_set:nnF {#1} {solutions-name}
{
\xsim_set_parameters:nn {#1}
{ solutions-name = \xsim_get_parameter:nn {#1} {solution-name} s }
}
\xsim_if_parameter_set:nnF {#1} {counter}
{
\xsim_set_parameters:nx {#1}
Expand Down
2 changes: 1 addition & 1 deletion code/xsim.grades.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand Down
8 changes: 4 additions & 4 deletions code/xsim.interface.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand Down Expand Up @@ -227,14 +227,14 @@

\NewDocumentCommand \DeclareExerciseParameter {st!m}
{
\IfBooleanTF {#1}
\IfBooleanTF {#1} % fixed
{
\IfBooleanTF {#2}
\IfBooleanTF {#2} % mandatory
{ \xsim_declare_parameter:nnn {true} {true} {#3} }
{ \xsim_declare_parameter:nnn {true} {false} {#3} }
}
{
\IfBooleanTF {#2}
\IfBooleanTF {#2} % mandatory
{ \xsim_declare_parameter:nnn {false} {true} {#3} }
{ \xsim_declare_parameter:nnn {false} {false} {#3} }
}
Expand Down
10 changes: 6 additions & 4 deletions code/xsim.modules.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand Down Expand Up @@ -66,7 +66,7 @@
\cs_new_protected:Npn \xsim_load_module:n #1
{
\tl_set:Nx \l_tmpa_tl { \tl_trim_spaces:n {#1} }
\str_if_eq_x:nnTF { \l_tmpa_tl } {modules}
\str_if_eq:VnTF \l_tmpa_tl {modules}
{ \msg_error:nn {xsim} {forbidden-module} }
{ \__xsim_load_module:V \l_tmpa_tl }
}
Expand Down Expand Up @@ -162,12 +162,14 @@
\tl_set:Nx \l__xsim_module_date_tl {\c_xsim_date_tl}
\tl_set:Nx \l__xsim_module_version_tl {\c_xsim_version_tl}
}


\cs_generate_variant:Nn \str_if_eq:nnF {xx}

\cs_new_protected:Npn \__xsim_module:nn #1#2
{
\seq_gput_right:Nn \g__xsim_loaded_modules_seq {#1}
\prop_gput:Nnn \g__xsim_loaded_modules_prop {#1} {#2}
\str_if_eq_x:nnF
\str_if_eq:xxF
{\c__xsim_module_prefix_tl.#1.\c__xsim_module_extension_tl}
{\@currname.\@currext}
{
Expand Down
4 changes: 2 additions & 2 deletions code/xsim.properties.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand Down Expand Up @@ -182,7 +182,7 @@

\cs_new_protected:Npn \__xsim_set_boolean_property:nnnn #1#2#3#4
{
\str_case_x:nnTF { \str_lower_case:n {#4} }
\str_case_e:nnTF { \str_lower_case:n {#4} }
{
{} {}
{true} {}
Expand Down
2 changes: 1 addition & 1 deletion code/xsim.random.code.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
% Web: https://github.com/cgnieder/xsim
% E-Mail: [email protected]
% ----------------------------------------------------------------------------
% Copyright 2017--2018 Clemens Niederberger
% Copyright 2017--2019 Clemens Niederberger
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
Expand Down
Loading

0 comments on commit fad6514

Please sign in to comment.