Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I have a problem with the solution in this post if I don't want bold text for the items.

I changed the code as described below. But the text of the item (e.g. Animal1:) is now in the left margin of the document (I would like to have it at the left boarder like the normal text of the document). I have no idea why this happens, because with the bold text it works fine. Would be nice if someone has an idea.

% arara: pdflatex 

\documentclass{scrbook}
\usepackage{calc}
\makeatletter
\newcommand{\DESCRIPTION@original@item}{}
\let\DESCRIPTION@original@item\item
\newcommand*{\DESCRIPTION@envir}{DESCRIPTION}
\newlength{\DESCRIPTION@totalleftmargin}
\newlength{\DESCRIPTION@linewidth}
\newcommand{\DESCRIPTION@makelabel}[1]{\llap{#1}}%
\newcommand{\DESCRIPTION@item}[1][]{%
  \setlength{\@totalleftmargin}%
   {\DESCRIPTION@totalleftmargin+\widthof{#1}-\leftmargin}%
  \setlength{\linewidth}
   {\DESCRIPTION@linewidth-\widthof{#1}+\leftmargin}%
  \par\parshape \@ne \@totalleftmargin \linewidth
  \DESCRIPTION@original@item[#1]%
}
\newenvironment{DESCRIPTION}
  {\list{}{\setlength{\labelwidth}{0cm}%
       \let\makelabel\DESCRIPTION@makelabel}%
   \setlength{\DESCRIPTION@totalleftmargin}{\@totalleftmargin}%
   \setlength{\DESCRIPTION@linewidth}{\linewidth}%
   \renewcommand{\item}{\ifx\@currenvir\DESCRIPTION@envir
                           \expandafter\DESCRIPTION@item
                        \else
                           \expandafter\DESCRIPTION@original@item
                        \fi}}
  {\endlist}
\makeatother
\usepackage{blindtext}

\begin{document}
\begin{DESCRIPTION}
    \blindtext
    \item[Animal1:] \textbf{Lion}\\
    A lion is ... \blindtext
    \item[Animal2:] \textbf{Elephant}\\
        An elephant is ...
\end{DESCRIPTION}
\end{document}
share|improve this question
    
Are you aware of environment labeling provided by package scrbase? –  Johannes_B Jun 19 at 17:28
    
\documentclass{scrbook} \usepackage{blindtext} \usepackage{showframe} \setkomafont{labelinglabel}{\bfseries}%if you want it bold \newcommand{\animalname}[1]{\textbf{#1}} \begin{document} \begin{labeling}[:]{Animal112} \item[Animal1:] \animalname{Lion}\\ A lion is ... \blindtext \item[Animal2:] \animalname{Elephant}\\ An elephant is ... \blindtext \end{labeling} \end{document} You can find explanations in the KOMA-script documentation. –  Johannes_B Jun 19 at 17:40
    
It seems that I overlooked the labelling environment. That is really a nice and simple solution. Thank you! –  user2653422 Jun 19 at 18:14

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.