0

This is my first SE question. I am trying to learn LaTeX. This forum helped me in many ways. I am very thankful to TeX SE community especially @cgnieder for wonderful package XSIM. I want XSIM questions with normal numerals. I tried but I am not getting proper indentation. How can I get proper indentation as shown in next image. I can get by using exam class but I want it using XSIM. Thanks in advance.

This is my output This is my output

This is what I expect This is what I expect

My MWE

\documentclass[a4paper,12pt]{article}
\usepackage{xsim}
\usepackage{tasks}
\usepackage{needspace}

\DeclareExerciseEnvironmentTemplate{custom}
  {%
    \par\vspace{\baselineskip}
    \noindent
    {\GetExerciseProperty{counter}.~}%
    \IfInsideSolutionF{%
      \GetExercisePropertyT{points}{%
        \marginpar{%
          [\printgoal{\PropertyValue}%
          \GetExercisePropertyT{bonus-points}{+\printgoal{\PropertyValue}}]%
        }%
      }%
    }%
  }
  {}

  \NewTasksEnvironment[
    label = (\theexercise.\arabic*) ,
    % label-format = \bfseries ,
    label-width = 35pt,
    item-indent=55pt
  ]{parts}[\part]

  \xsimsetup{
    exercise/template = custom ,
    solution/template = custom
  }

\usepackage{lipsum}

\begin{document}

\begin{exercise}[points=4]
  \lipsum[1]
\end{exercise}
\begin{solution}
  \lipsum[1]
\end{solution}

\begin{exercise}
  Answer the following questions.
  \begin{parts}
    \part \lipsum[1] 
    \part question 
  \end{parts}
\end{exercise}


\begin{exercise}
  \lipsum[1]
\end{exercise}
\begin{solution}
  \lipsum[1]
\end{solution}

\printsolutions

\end{document}
0

1 Answer 1

3

One way is to use a description list environment, where each question (or solution) is an item. The description list can be easily configured to do hanging indentation using the package enumitem.

b

Compile twice. <<<

\documentclass[a4paper,12pt]{article}
\usepackage{xsim}
\usepackage{tasks}
\usepackage{needspace}

\usepackage{enumitem}% added<<<<<<<<<<<<<
\usepackage{marginnote}% added<<<<<<<<<<<<<

\NewTasksEnvironment[
label = (\theexercise.\arabic*) ,
% label-format = \bfseries ,
label-width = 5ex,
item-indent=6ex
]{parts}[\part]

\DeclareExerciseEnvironmentTemplate{custom}% changed <<<<<<<<<<<<<<
{\item[\normalfont\GetExerciseProperty{counter}.]\IfInsideSolutionF{%
        \GetExercisePropertyT{points}{%
            \marginnote{%
                [\printgoal{\PropertyValue}\GetExercisePropertyT{bonus-points}{+\printgoal{\PropertyValue}}]%
    }}} 
}{}     

\xsimsetup{
    exercise/template = custom,
    solution/template = custom
}

\newenvironment{exercises}{% added <<<<<<<<<<<<
    \begin{description}[labelwidth= 3ex, leftmargin=!]}{\end{description}}

\newenvironment{solutions}{% added <<<<<<<<<<<<
    \begin{description}[labelwidth= 3ex, leftmargin=!]}{\end{description}}

\usepackage{lipsum}
    
\begin{document}        
    
    \begin{exercises} % added <<<<<<<<<<<<<<<
    
    \begin{exercise}[points=4]
        \lipsum[1]
    \end{exercise}
    \begin{solution}
        \lipsum[1]
    \end{solution}
    
    \begin{exercise}
        Answer the following questions.
        \begin{parts}
            \part \lipsum[1] 
            \part question.
        \end{parts}
    \end{exercise}
            
    \begin{exercise}
        \lipsum[1]
    \end{exercise}
    \begin{solution}
        \lipsum[1]
    \end{solution}
\end{exercises} %<<<<<<<<<<<<<<<<
    
\begin{solutions}% added <<<<<<<<<<<<<<<
    \printsolutions
\end{solutions}%<<<<<<<<<<<<<<<
    
\end{document}
10
  • Thank you for your answer. But I am getting error that "missing \item". When I place \item before \printsolutions then I am getting output. I don't know why?
    – Krishna
    Dec 11, 2022 at 10:25
  • @Krishna You get the error running the code of my answer or your code? You should write \begin{solutions}\printsolutions \end{solutions} otherwise you will get the error missing \item Dec 11, 2022 at 13:16
  • I am getting error running your code.
    – Krishna
    Dec 11, 2022 at 18:46
  • @Krishna What error? Check your log file. I am using Package: xsim 2022/02/12 v0.21 eXercise Sheets IMproved and Package: tasks 2022/01/08 v1.4a Dec 11, 2022 at 19:12
  • I am having same version of xsim and tasks. I am getting error "LaTeX Error: Something's wrong--perhaps a missing \item." Package xsim Warning: Exercise properties may have changed. Return to get them synchronised. LaTeX warning: Label(s) may have changed. Return to get cross-references right.
    – Krishna
    Dec 12, 2022 at 2:02

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .