% -------------------------------------------------------------------------- % the EXSHEETS package % % Yet another package for the creation of exercise sheets % % -------------------------------------------------------------------------- % Clemens Niederberger % Web: https://bitbucket.org/cgnieder/exsheets/ % E-Mail: contact@mychemistry.eu % -------------------------------------------------------------------------- % Copyright 2011-2013 Clemens Niederberger % % This work 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. % % This work has the LPPL maintenance status `maintained'. % % The Current Maintainer of this work is Clemens Niederberger. % -------------------------------------------------------------------------- % The exsheets package consists of the files % - exsheets.sty, exsheets_headings.def, exsheets_headings.cfg, % exsheets_tasks.def, exsheets_tasks.cfg, exsheets_configurations.cfg, % - exsheets_en.tex, exsheets_en.pdf, % - README % -------------------------------------------------------------------------- % If you have any ideas, questions, suggestions or bugs to report, please % feel free to contact me. % -------------------------------------------------------------------------- % HEADINGS FOR QUESTIONS AND SOLUTIONS \ProvidesFile{exsheets_headings.cfg} [\exsheets@date\space v\exsheets@version\space ExSheets headings instances] % SIMPLE: \DeclareInstance { exsheets-heading } { simple } { default } { title-format = \normalsize , points-pre-code = ( , points-post-code = ) , attach = { main[l,t] number[l,t] (0pt,0pt) } , join = { number[r,b] title[l,b] (1ex,0pt) ; main[l,b] points[l,t] (1em,0pt) } } % BLOCK, REVERSED: \DeclareInstance { exsheets-heading } { block-rev } { default } { toc-reversed = true , join = { number[r,B] title[l,B] (1ex,0pt) } , attach = { main[l,vc] number[l,vc] (0pt,0pt) ; main[r,vc] points[l,vc] (\marginparsep,0pt) } } % BLOCK, POINTS WITH THE TITLE: \DeclareInstance { exsheets-heading } { block-wp } { default } { points-pre-code = ( , points-post-code = ) , join = { title[r,B] number[l,B] (1ex,0pt) ; title[r,B] points[l,B] (1ex,0pt) } , attach = { main[l,vc] title[l,vc] (0pt,0pt) } } % BLOCK, POINTS WITH THE TITLE, REVERSED: \DeclareInstance { exsheets-heading } { block-wp-rev } { default } { toc-reversed = true , points-pre-code = ( , points-post-code = ) , join = { number[r,B] title[l,B] (1ex,0pt) ; number[r,B] points[l,B] (1ex,0pt) } , attach = { main[l,vc] number[l,vc] (0pt,0pt) } } % BLOCK WITH NO TITLE: \DeclareInstance { exsheets-heading } { block-nr } { default } { attach = { main[l,vc] number[l,vc] (0pt,0pt) ; main[r,vc] points[l,vc] (\marginparsep,0pt) } } % BLOCK WITH NO TITLE, NUMBER WITH THE TITLE: \DeclareInstance { exsheets-heading } { block-nr-wp } { default } { points-pre-code = ( , points-post-code = ) , join = { number[r,vc] points[l,vc] (1ex,0pt) } , attach = { main[l,vc] number[l,vc] (0pt,0pt) } } % RUNIN, REVERSED: \DeclareInstance { exsheets-heading } { runin-rev } { default } { toc-reversed = true , runin = true , title-post-code = \c_space_tl , attach = { main[l,vc] points[l,vc] (\linewidth + \marginparsep,0pt) } , join = { main[r,vc] number[r,vc] (0pt,0pt) ; main[r,vc] title[l,vc] (1ex,0pt) } } % RUNIN, POINTS WITH THE TITLE: \DeclareInstance { exsheets-heading } { runin-wp } { default } { runin = true , points-pre-code = ( , points-post-code = ) \c_space_tl , join = { main[r,vc] title[r,vc] (0pt,0pt) ; main[r,vc] number[l,vc] (1ex,0pt) ; main[r,vc] points[l,vc] (1ex,0pt) } } % RUNIN, POINTS WITH THE TITLE, REVERSED: \DeclareInstance { exsheets-heading } { runin-wp-rev } { default } { toc-reversed = true , runin = true , points-pre-code = ( , points-post-code = ) \c_space_tl , join = { main[r,vc] number[r,vc] (0pt,0pt) ; main[r,vc] title[l,vc] (1ex,0pt) ; main[r,vc] points[l,vc] (1ex,0pt) } } % RUNIN WITH NO TITLE: \DeclareInstance { exsheets-heading } { runin-nr } { default } { runin = true , number-post-code = \c_space_tl , attach = { main[l,vc] points[l,vc] (\linewidth + \marginparsep,0pt) } , join = { main[r,vc] number[l,vc] (0pt,0pt) } } % RUNIN WITH NO TITLE, POINTS WITH THE TITLE: \DeclareInstance { exsheets-heading } { runin-nr-wp } { default } { runin = true , points-pre-code = ( , points-post-code = ) \c_space_tl , join = { main[r,vc] number[l,vc] (0pt,0pt) ; main[r,vc] points[l,vc] (1ex,0pt) } } % RUNIN WITH NO TITLE, FIXED WIDTH OF NUMBER \DeclareInstance { exsheets-heading } { runin-fixed-nr } { default } { runin = true , number-pre-code = \hbox to 2em \bgroup , number-post-code = \hfil\egroup , attach = { main[l,vc]points[l,vc](\linewidth+\marginparsep,0pt) } , join = { main[r,vc]number[l,vc](0pt,0pt) } } % INLINE \DeclareInstance { exsheets-heading } { inline } { default } { inline = true , number-pre-code = \c_space_tl , number-post-code = \c_space_tl , join = { main[r,vc] title[r,vc] (0pt,0pt) ; main[r,vc] number[l,vc] (0pt,0pt) } } % INLINE, POINTS WITH THE TITLE \DeclareInstance { exsheets-heading } { inline-wp } { default } { inline = true , number-pre-code = \c_space_tl , number-post-code = \c_space_tl , points-pre-code = ( , points-post-code = ) \c_space_tl , join = { main[r,vc] title[r,vc] (0pt,0pt) ; main[r,vc] number[l,vc] (0pt,0pt) ; main[r,vc] points[l,vc] (0pt,0pt) } } % INLINE WITH NO TITLE: \DeclareInstance { exsheets-heading } { inline-nr } { default } { inline = true , number-post-code = \c_space_tl , join = { main[r,vc] number[l,vc] (0pt,0pt) } } % CENTERED: \DeclareInstance { exsheets-heading } { centered } { default } { join = { title[r,B] number[l,B] (1ex,0pt) } , attach = { main[hc,vc] title[hc,vc] (0pt,0pt) ; main[r,vc] points[l,vc] (\marginparsep,0pt) } } % CENTERED, POINTS WITH THE TITLE: \DeclareInstance { exsheets-heading } { centered-wp } { default } { points-pre-code = ( , points-post-code = ) , join = { title[r,B] number[l,B] (1ex,0pt) ; title[r,B] points[l,B] (1ex,0pt) } , attach = { main[hc,vc] title[hc,vc] (0pt,0pt) } } % MARGIN: \DeclareInstance { exsheets-heading } { margin } { default } { runin = true , number-post-code = \c_space_tl , points-pre-code = ( , points-post-code = ) \c_space_tl , join = { title[r,b] number[l,b] (1ex,0pt) } , attach = { main[l,vc] title[r,vc] (0pt,0pt) ; main[l,b] points[r,t] (0pt,0pt) } } % MARGIN WITH NO TITLE \DeclareInstance { exsheets-heading } { margin-nr } { default } { runin = true , attach = { main[l,vc]number[r,vc](-1ex,0pt) ; main[r,vc]points[l,vc](\linewidth+\marginparsep,0pt) } } % RIGHT-ALIGNED: \DeclareInstance { exsheets-heading } { raggedleft } { default } { join = { title[r,B] number[l,B] (1ex,0pt) } , attach = { main[r,vc] title[r,vc] (0pt,0pt) ; main[r,vc] points[l,vc] (\marginparsep,0pt) } } % MIMICKING KOMA-SECTION: \DeclareInstance { exsheets-heading } { koma-section } { default } { vscale = 2 , title-format = \Large\bfseries\sffamily , join = { title[r,B] number[l,B] (1ex,0pt) } , attach = { main[l,vc] title[l,vc] (0pt,0pt) ; main[r,vc] points[l,vc] (\marginparsep,0pt) } } % FANCY: \DeclareInstance { exsheets-heading } { fancy } { default } { toc-reversed = true , indent-first = true , vscale = 2 , pre-code = \rule{\linewidth}{1pt} , post-code = \rule{\linewidth}{1pt} , title-format = \large\scshape\color{exsheetsred} , number-format = \large\bfseries\color{exsheetsblue} , points-format = \itshape , join = { number[r,B] title[l,B] (1ex,0pt) } , attach = { main[hc,vc] number[hc,vc] (0pt,0pt) ; main[l,vc] points[r,vc] (-\marginparsep,0pt) } } % FANCY, POINTS WITH THE TITLE: \DeclareInstance { exsheets-heading } { fancy-wp } { default } { toc-reversed = true , indent-first = true , vscale = 2 , pre-code = \rule{\linewidth}{1pt} , post-code = \rule{\linewidth}{1pt} , title-format = \large\scshape\color{exsheetsred} , number-format = \large\bfseries\color{exsheetsblue} , points-format = \itshape , points-pre-code = ( , points-post-code = ) , join = { number[r,B] title[l,B] (1ex,0pt) ; number[r,B] points[l,B] (1ex,0pt) } , attach = { main[hc,vc] number[hc,vc] (0pt,0pt) } } \tex_endinput:D