2
1

Ich habe folgenden Code schon geschrieben:

Open in writeLaTeX
\documentclass[addpoints, 12pt]{exam}
\usepackage{geometry}
\geometry{a4paper, top=25mm, left=15mm, right=15mm, bottom=20mm, headsep=10mm, footskip=15mm}

\pointsdroppedatright
\marginpointname{ \points}\pointname{}\pointformat{/\thepoints}
\renewcommand{\partshook}{\setlength{\leftmargin}{0pt}} % Einzug bei part
\parindent0pt
\usepackage[ngerman]{babel}%deutsche Silbentrennung:

\usepackage{tabularx}
\begin{document}
\begin{questions}
\begin{tabularx}{\textwidth}{|p{2cm}|X|p{2cm}|}\hline
Sz, Gr&\question[3] Warum zum Henker tut es nicht was es soll?\droppoints
\begin{parts}
\part[1] ich bin auch nur ein test\droppoints
\part[2] genau wie ich\droppoints
\end{parts}&\\\hline
\end{tabularx}
\end{questions}
\end{document}

Jetzt hab ich ein zwei Fragen: 1. Warum schreibt er die Nummerierung in die erste Spalte und wie bekomme ich die Aufzählung in die zweite Spalte? 2. Kann man den Platz vor und nach der Frage verändern?

Danke

gefragt 11 Mai '14, 12:12

Astrina's gravatar image

Astrina
37171925
Akzeptiert-Rate: 50%

bearbeitet 16 Mai '14, 10:54

esdd's gravatar image

esdd
17.7k254256


Alternativvorschlag ohne Tabelle:

Wenn Du auf die vertikalen Linie verzichten kannst und der Inhalt der ersten Spalte nicht länger als die zugehörige Frage ist, dann braucht man keine Tabelle. Den Platz für die Punkte kann man über eine addmargin Umgebung (braucht das Paket scrextend) bereitstellen. Den Inhalt der ersten Spalte kann man über das Aufgabenlabel mit ausgeben lassen:

alt text

Open in writeLaTeX
\documentclass[addpoints,12pt]{exam}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}%deutsche Silbentrennung
\usepackage{geometry}
\geometry{
  a4paper,
  top=25mm, left=15mm, right=15mm, bottom=20mm,
  headsep=10mm, footskip=15mm
}
\usepackage{microtype}

\usepackage{scrextend}% für die addmargin Umgebung

\newcommand\myquestion[2][]{%
  \renewcommand\questionlabel{%
    \smash{\parbox[t]{2cm}{\raggedright #2}}\quad \thequestion.}%
  \question[#1]%
}

    \pointsdroppedatright
    \pointname{\,P.}
    \pointformat{/\thepoints}
    \renewcommand{\partshook}{
      \setlength\leftmargin{0pt}% kein Einzug bei part
      \setlength\topsep{\itemsep}% gleicher Abstand vor part wie zwischen parts
    } 
    \setlength{\rightpointsmargin}{3ex}

\renewcommand{\questionshook}{%
  \setlength\topsep{.5ex}%
  \setlength\itemsep{.5ex}%
  \setlength\parsep{0pt}%
  \addtolength\labelwidth{\dimexpr2cm+1ex\relax}%
  \setlength\leftmargin{\dimexpr\labelwidth+\labelsep\relax}%
  }

\newcommand\trennung{% Trennung zwischen Aufgaben
  \vspace{-\baselineskip}\fullwidth{\hrulefill}% Linie 
  %\bigskip% Alternative: Abstand
}

\usepackage{blindtext}% für Fülltext
%\usepackage{showframe}% Seitenaufteilung anzeigen
\begin{document}
\blindtext

\medskip
\begin{addmargin}[0cm]{2cm}
\trennung
\begin{questions}%
\myquestion[3]{Sz, Gr} Warum zum Henker tut es nicht was es soll?\droppoints
\begin{parts}
\part[1] ich bin auch nur ein test\blindtext\droppoints
\part[2] genau wie ich\droppoints
\end{parts}
\trennung
\myquestion[3]{Ein etwas längerer Text über mehr als eine Zeile} Warum zum Henker tut es nicht was es soll?\droppoints
\begin{parts}
\part[1] ich bin auch nur ein test\blindtext\droppoints
\part[2] genau wie ich\droppoints
\end{parts}
\trennung
\myquestion[3]{Sz, Gr} Warum zum Henker tut es nicht was es soll?\droppoints
\begin{parts}
\part[1] ich bin auch nur ein test\blindtext\droppoints
\part[2] genau wie ich\droppoints
\end{parts}
\trennung
\myquestion[3]{Sz, Gr} Warum zum Henker tut es nicht was es soll?\droppoints
\begin{parts}
\part[1] ich bin auch nur ein test\blindtext\droppoints
\part[2] genau wie ich\droppoints
\end{parts}
\trennung
\end{questions}
\end{addmargin}
\blindtext
\end{document}
Permanenter link

beantwortet 11 Mai '14, 20:46

esdd's gravatar image

esdd
17.7k254256
Akzeptiert-Rate: 62%

bearbeitet 11 Mai '14, 21:35

Tolle Lösung, wenn meine Kollegin nicht gerne auch die senkrechten Linien hätten. Schüler tendieren dazu, sonst überall hinzuschreiben!

(14 Mai '14, 12:48) Astrina

Wäre es dann nicht pädagogisch sinnvoller ihnen das abzugewöhnen, statt sich an das Verhalten anzupassen?

(14 Mai '14, 13:19) esdd

Sollen die Schüler bei so einem Layout nicht sowieso auf einem extra Blatt Papier schreiben? Ich hab dieses Layout übrigens aus Spaß (fast) mit exsheets nachgebastelt... da es die Frage nicht beantwortet, verschwindet es wohl im Nirvana. Oder ich mach einen Blogpost daraus...

(14 Mai '14, 13:25) cgnieder

@Clemens Stell das doch als Alternative trotzdem rein. Hier schauen ja auch andere vorbei du für die passt eine Lösung mit einem anderen Paket vielleicht besser.

(14 Mai '14, 15:18) esdd

@esdd: Bestimmt, aber manche Kollegen kleben eben am Bekannten, werde sie aber nochmal bearbeiten, ich finde es ohne die senkrechten Linien zehnmal schicker. Eigentlich auch ohne die waagrechten, aber was solls. @clemens: jein, normalerweise sind da unter den Fragen noch Linien, auf die sie schreiben sollen. Vielen dank auf jeden Fall für das Beispiel mit exsheets, werde mir da die Dokumentation gleich noch anschauen.

(01 Jun '14, 16:13) Astrina

@Astrina da ich sowas geahnt hatte, habe ich bei meinem Vorschlag ja auch die leeren Kästen hinzugefügt. Linien zum drauf Schreiben könnte man ebenso leicht einbauen. exsheets hat dafür den \blank-Befehl.

(01 Jun '14, 16:17) cgnieder

@clemens: das Exsheet-package sieht auch gut aus, ich werde aber beim exam bleiben, da ich da schon sehr viel erstellt habe. für kariert und liniert hab ich mir Befehle geschrieben (oder gesucht?), die funktionieren ganz fa-bel-haft!

(01 Jun '14, 16:22) Astrina
Ergebnis 5 von 7 show 2 more comments

Diese Antwort beantwortet die Frage nicht. Ich poste sie nur auf Anregung von @esdd (siehe Kommentare zu ihrem Alternativvorschlag).

Der folgende Code baut @esdd's Alternativvorschlag mehr oder weniger mit exsheets nach -- vielleicht interessiert es ja den einen oder anderen:

Open in writeLaTeX
\documentclass{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}%deutsche Silbentrennung
\usepackage{geometry}
\geometry{
  a4paper,
  top=25mm, left=15mm, right=15mm, bottom=20mm,
  headsep=10mm, footskip=15mm
}
% \usepackage{microtype} verschiebt den Punkt der `\partspoints in den Rand
% wenn man das nicht möchte, aber nicht auf `microtype' verzichten will, kann
% man sie entweder manuell zuückschieben oder die Protrusionwerte für Punkte
% ändern

\usepackage{exsheets}

% the additional margin to the left /and/ right:
\newlength\mymargin
\setlength\mymargin{4em}

% the vertical offset of the question titles below the horizontal rule:
\newlength\myvoffset
\setlength\myvoffset{1ex}

\newcommand*\subtitlebox[1]{\parbox{\mymargin}{\raggedright#1}}

\DeclareInstance{exsheets-heading}{ruled}{default}{
  pre-code      =
    % a horizontal rule overlapping the margin to the left and right:
    \rlap{%
      \hspace*{\dimexpr-\tabcolsep-\mymargin\relax}%
      \rule{\dimexpr\linewidth+2\tabcolsep+2\mymargin\relax}{1pt}%
    }
    \vspace{\myvoffset} ,
  points-format = \bfseries ,
  subtitle-pre-code = \subtitlebox ,
  join          = {
    number[r,B]title[l,B](.333em,0pt) ;
    main[l,t]number[l,t](0pt,-\myvoffset)
  } ,
  attach        = {
    main[l,t]subtitle[r,t](-\tabcolsep,-\myvoffset) ;
    main[r,t]points[r,t](\mymargin+\tabcolsep,-\myvoffset)
  }
}

% formatting of the points and other setups:
\newcommand*\preslash[1]{/#1}
\SetupExSheets{
  question/type = exam ,
  points/format = \preslash
}

% a `parts' environment:
\NewTasks[counter-format=(tsk[a]),label-width=2em]{parts}[\part]

% a kind of `subpoints':
\usepackage{marginnote}
\newcommand*\partpoints[1]{%
  \marginnote{%
    \llap{%
      \parbox{\dimexpr\mymargin+\tabcolsep\relax}{\hfill\points{#1}}%
      \hspace*{\dimexpr\marginparsep\relax}% plus 2.5pt wenn man microtype verwendet, siehe oben
    }%
  }%
}

% boxes with answerspace:
\usepackage{mdframed}
\newmdenv{answer@space}

\newcommand\answerspace[1][3cm]{%
  \begin{answer@space}
    \vspace*{#1}
  \end{answer@space}%
}

% wrap around the `question environment' in order to get the additional margin
% to the left and right and use the new heading type for questions:
\RenewQuSolPair{question}[][headings=ruled]{solution}
\newenvironment{problem}
  {\addmargin{\dimexpr\mymargin+\tabcolsep\relax}\question}
  {\endquestion\endaddmargin}

\usepackage{blindtext}

\begin{document}

\begin{problem}[subtitle={Sz, Gr}]{3}
  Warum zum Henker tut es nicht was es soll?
  \begin{parts}
    \part ich bin auch nur ein test \blindtext\partpoints{1}
    \part genau wie ich\partpoints{2}
      % \answerspace
  \end{parts}
\end{problem}

\begin{problem}[subtitle={Ein etwas längerer Text über mehr als eine Zeile}]{3}
  Warum zum Henker tut es nicht was es soll?
  \begin{parts}
    \part ich bin auch nur ein test\partpoints{1}
      \answerspace
    \part genau wie ich\partpoints{2}
      \answerspace
  \end{parts}
\end{problem}

\end{document}

alt text

Permanenter link

beantwortet 15 Mai '14, 20:33

cgnieder's gravatar image

cgnieder
22.1k243463
Akzeptiert-Rate: 60%

bearbeitet 16 Mai '14, 11:00

Mit der exam Klasse habe ich bisher keine Erfahrung, aber die questions Umgebung scheint einen linken Einzug zu verwenden, in den sie dann die Aufgabennummern setzen möchte.

Werden die \question Befehle dann in eine Tabellenspalte gepackt, dann werden die Aufgabennummern eben links von dieser Spalte gesetzt. Behelfen kann man sich, in dem man eine weitere ausreichend breite Spalte ohne vertikale Linie vor der Aufgabenspalte einfügt. Der vermutlich unerwünschte linke Einzug vor der Tabelle lässt sich rückgängig machen, in dem man die gesamte Tabelle in eine EnvFullwidth Umgebung setzt.

Da der \question Befehl eine Liste ist, kann man den Zeilenvorschub in der Tabelle mit dem "minipage-Trick" verhindern. Den Abstand nach der Aufgabe konnte ich aber nur über ein negatives \vspace verringern.

Open in writeLaTeX
\documentclass[addpoints,12pt]{exam}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}%deutsche Silbentrennung
\usepackage{geometry}
\geometry{
  a4paper,
  top=25mm, left=15mm, right=15mm, bottom=20mm,
  headsep=10mm, footskip=15mm
}
\usepackage{microtype}

\pointsdroppedatright
\pointname{}
\pointformat{/\thepoints}
\renewcommand{\partshook}{
  \setlength\leftmargin{0pt}% kein Einzug bei part
  \setlength\topsep{\itemsep}% gleicher Abstand vor part wie zwischen parts
} 
\setlength{\rightpointsmargin}{1em}

\makeatletter
  \newcommand\minipagetrue{\@minipagetrue}
\makeatother

\usepackage{tabularx}
\renewcommand\arraystretch{1.25}

\usepackage{blindtext}% für Fülltext
%\usepackage{showframe}% Seitenaufteilung anzeigen

\begin{document}
\blindtext
\begin{questions}
  \begin{EnvFullwidth}% Einzug der questions Umgebung verhindern
    \begin{tabularx}{\textwidth}
      {|p{2cm}|p{1em}>{\minipagetrue}X<{\vspace{-\baselineskip}}|p{2cm}|}
      \hline
      Sz, Gr&&\question[3] Warum zum Henker tut es nicht was es soll?\droppoints
      \begin{parts}
      \part[1] ich bin auch nur ein test\droppoints
      \part[2] genau wie ich\droppoints
      \end{parts}&\\
      \hline
      Sz, Gr&&\question[3] \blindtext\droppoints
      \begin{parts}
      \part[1] \blindtext\droppoints
      \part[2] genau wie ich\droppoints
      \end{parts}&\\
      \hline
    \end{tabularx}
  \end{EnvFullwidth}
    \clearpage % manueller Seitenumbruch
  \begin{EnvFullwidth}
    \begin{tabularx}{\textwidth}
      {|p{2cm}|p{1em}>{\minipagetrue}X<{\vspace{-\baselineskip}}|p{2cm}|}
      \hline
            Sz, Gr&&\question[3] \blindtext\droppoints
      \begin{parts}
      \part[1] \blindtext\droppoints
      \part[2] genau wie ich\droppoints
      \end{parts}&\\
      \hline
    \end{tabularx}
  \end{EnvFullwidth}
\end{questions}
\end{document}

alt text

Schön finde ich den Vorschlag nicht, sondern eher irgendwie hingebogen. Darüber hinaus bringt die Tabelle noch andere Probleme mit sich: innerhalb der EnvFullwidth Umgebung ist auch bei Verwendung von longtable oder ähnlichem kein Seitenumbruch möglich. Die Seitenumbrüche müssen deshalb von Hand eingearbeitet werden, in dem die Tabelle und die EnvFullwidth Umgebung beendet wird, ein manueller Seitenumbruch gesetzt wird und anschließend eine neue EnvFullwidth mit samt Tabelle begonnen wird.

Permanenter link

beantwortet 11 Mai '14, 19:13

esdd's gravatar image

esdd
17.7k254256
Akzeptiert-Rate: 62%

bearbeitet 14 Mai '14, 13:15

sieht genauso aus, wie ich es bzw. meine Kollegin es gerne hätte, das mit dem fehlenden Zeilenumbruch wäre kein Problem, aber er bricht die Tabelle ja gar nicht um, auch nicht wenn eine neue Tabellenzeile beginnt, kann das sein?

(14 Mai '14, 12:47) Astrina

@Astrina Ja, ich hab vergessen, dass in einer normalen Tabelle sowieso kein Seitenumbruch erfolgt. Und auch in der EnvFullwidth Umgebung scheint kein Umbruch möglich zu sein. Die Seitenumbrüche sind bei der Variante also nur manuell möglich. Die Antwort habe ich entsprechend geändert.

(14 Mai '14, 13:17) esdd
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×254
×49
×32
×3

gestellte Frage: 11 Mai '14, 12:12

Frage wurde gesehen: 13,979 Mal

zuletzt geändert: 01 Jun '14, 16:22