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'm using the glossaries package to define my acronyms and print them out. I'm using this style:

\newglossarystyle{super3colleft}{%
  \renewenvironment{theglossary}%
    {\tablehead{}\tabletail{}%
     \begin{supertabular}{@{}>{\bfseries}lp{\glsdescwidth}p{\glspagelistwidth}}}%
    {\end{supertabular}}%
  \renewcommand*{\glossaryheader}{}%
  \renewcommand*{\glsgroupheading}[1]{}%
  \renewcommand*{\glossaryentryfield}[5]{%
    \glsentryitem{##1}\glstarget{##1}{##2} & ##3 & ##5\\}%
  \renewcommand*{\glossarysubentryfield}[6]{%
     &
     \glssubentryitem{##2}%
     \glstarget{##2}{\strut}##4 & ##6\\}%
  \renewcommand*{\glsgroupskip}{ & &\\}%
}

to print them out via

\printglossary[type=\acronymtype,style=super3colleft]

and to get some indentation of the acronyms, looks like this:

Is there any way to make the red one full of text instead of breaking the text, and to change th blue indentation-width and the height between two groups (purple color)? thanks a lot!

EDIT: This as a working minimal example?

\documentclass{scrbook}

\usepackage{glossaries}
\makeglossaries

\newglossaryentry{X}{type=\acronymtype, name={XY}, description={blablabla asdkjh asdkjh aksjdh kajsdha ksjdh as dkha sdh}}
\newglossaryentry{Xb}{type=\acronymtype, name={XY2}, description={basdasd sdh}}
\newglossaryentry{y}{type=\acronymtype, name={Y}, description={foobar}}
\newglossaryentry{yb}{type=\acronymtype, name={Y2}, description={foo asd asd asd asdbar}}
\newglossaryentry{z}{type=\acronymtype, name={Z}, description={foo asd asd asd asdbar}}

\newglossarystyle{super3colleft}{%
  \renewenvironment{theglossary}%
    {\tablehead{}\tabletail{}%
     \begin{supertabular}{@{}>{\bfseries}lp{\glsdescwidth}p{\glspagelistwidth}}}%
    {\end{supertabular}}%
  \renewcommand*{\glossaryheader}{}%
  \renewcommand*{\glsgroupheading}[1]{}%
  \renewcommand*{\glossaryentryfield}[5]{%
    \glsentryitem{##1}\glstarget{##1}{##2} & ##3 & ##5\\}%
  \renewcommand*{\glossarysubentryfield}[6]{%
     &
     \glssubentryitem{##2}%
     \glstarget{##2}{\strut}##4 & ##6\\}%
  \renewcommand*{\glsgroupskip}{ & &\\}%
}

\begin{document}
\printglossary[type=\acronymtype,style=super3colleft]
\end{document}
share|improve this question
add comment

2 Answers

up vote 2 down vote accepted

Please provide full minimal examples.

You create a new style by using supertabular with three columns. The first one is the short form, the second one is the description and the last is the page.

To modify the width you have to change the formating of the columns like a normal array-environment.

\usepackage{linegoal}
.....
 \newglossarystyle{super3colleft}{%
  \renewenvironment{theglossary}%
    {\tablehead{}\tabletail{}%
     \begin{supertabular}{@{}>{\bfseries}l@{\hspace*{3cm}p{\linegoal}@{}}}%
    {\end{supertabular}}%
  \renewcommand*{\glossaryheader}{}%
  \renewcommand*{\glsgroupheading}[1]{}%
  \renewcommand*{\glossaryentryfield}[5]{%
    \glsentryitem{##1}\glstarget{##1}{##2} & ##3 \\}%
  \renewcommand*{\glossarysubentryfield}[6]{%
     &
     \glssubentryitem{##2}%
     \glstarget{##2}{\strut}##4 \\}%
  \renewcommand*{\glsgroupskip}{ & \\}%
}
share|improve this answer
    
Marco thanks, I provided a minimal example above! –  tim Jun 30 '11 at 11:04
add comment

To turn off the larger vertical gaps between each alphabetic cluster, change:

\renewcommand*{\glsgroupskip}{ & &\\}%

to:

\renewcommand*{\glsgroupskip}{}% no extra line skip between clusters

You can then play with the vertical space between each entry by, for example, using \renewcommand{\arraystretch}{1.4} directly before calling \printglossary.

share|improve this answer
    
Welcome to TeX.sx! –  Kurt Nov 1 '12 at 14:00
add comment

Your Answer

 
discard

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.