Anzeige:
Ergebnis 1 bis 6 von 6

Thema: providecommand mit zeilenumbruch

  1. #1
    inigor
    Gast

    providecommand mit zeilenumbruch

    hallo,

    kann mir jemand mit dem folgenden problem helfen?

    \newenvironment{acronym}%
    {\begin{tabular}{l}
    \providecommand{\acro}[2]{%
    \acrodef{##1}{##2}%
    ##1 & ##2 \\}%
    }
    {\end{tabular}}

    dies funktioniert so nicht, wenn ich & und \\ aus providecommand wegnehme, gehts.
    wie kann ich die tabular umgebung in dieser art verwirklichen??

    danke
    igor

  2. #2
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Hallo Igor,
    also erstmal: \acrodef ist bei mir nur im acronym Paket definiert - in dem gibt's aber auch bereits eine Umgebung "acronym" (von \acro ganz zu schweigen), d.h. (aus meiner Sicht) entweder hast Du das Paket acronym geladen, dann mußt Du zumindest \renewenvironment{acronym}... benutzen (oder die Umgebung anders nennen) - oder Du hast acronym nicht geladen, dann kann ich mit \acrodef aber nichts anfangen.

    Was z.B. funktioniert:
    Code:
    \documentclass{scrartcl}
    \providecommand{\acro}[2]{#1 & #2\\}
    \newenvironment{acronym}{%
      \begin{tabular}{rl}% man beachte die zweite Spaltendefinition
    }{
      \end{tabular}
    }
    \begin{document}
    \begin{acronym}
    \acro{CPU}{Central Processing Unit}
    \acro{DVD}{Digital Versatile Disc}
    \end{acronym}
    \end{document}
    ich persönlich ziehe aber die acronym Umgebung von dem acronym Paket vor...
    MfG,
    Rainer
    There's nothing a good whack with a hammer won't fix!

  3. #3
    inigor
    Gast
    hi,
    der codeausschnitt ist aus acronym.sty.
    das problem an diesem packet ist, das es eine description umgebung nutzt, welches keine klaren spalten in der acronym umgebung erstellt.
    das sieht nicht schön aus.

    danke für die hilfe, probier es gleich mal aus

  4. #4
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Na dann vielleicht lieber gleich so etwas wie
    Code:
    \documentclass{scrartcl}
    \usepackage{acronym}
    \providecommand{\myac}[2]{%
    	\acrodef{#1}{#2}%
    	#1 & #2\\%
    	}
    \newenvironment{myacronym}[1][Abkz.]{%
    	\section{#1}
    	\begin{tabular}{rl}
    }{
    	\end{tabular}
    }
    \begin{document}
    Text \ac{CPU} bla bla\dots\par 
    \begin{myacronym}
    \myac{CPU}{Central Processing Unit}
    \myac{DVD}{Digital Versatile Disc}
    \end{myacronym}
    \end{document}
    Du willst ja sicherlich im Text auch wieder Bezug nehmen können
    Bedenke aber, daß Deine Liste nicht zu lang werden darf, da tabular keine Seitenumbrüche (anders als bei description) zuläßt - dann entsprechend longtable laden und verwenden...
    MfG,
    Rainer
    There's nothing a good whack with a hammer won't fix!

  5. #5
    inigor
    Gast
    ja, longtable hatte ich jetzt schon genutzt und hab es in einem acronym.sty von 1995 verändert:
    Code:
    \providecommand{\acro}[2]{ \acrodef{#1}{#2} #1 & #2 \\}
    \newenvironment{acronym}%
    {\begin{longtable}{ll}}
    {\end{longtable}}
    warum kann ich providecommand mit den zeichen & und \\ nicht innerhalb der newenvironment nutzen??

  6. #6
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Zitat Zitat von inigor
    ja, longtable hatte ich jetzt schon genutzt und hab es in einem acronym.sty von 1995 verändert:
    a) wo hast Du so eine alte Version noch her ?
    b) Du meinst hoffentlich so etwas wie "acronym.sty nach myacronm.sty kopiert und angepaßt"
    [ edit ]
    Aber warum willst Du unbedingt das Original verändern ? Das Beispiel funzt doch auch so...
    [ /edit ]
    Zitat Zitat von inigor
    warum kann ich providecommand mit den zeichen & und \\ nicht innerhalb der newenvironment nutzen??
    Wieso? Kann er doch... das lag vermutlich eher daran, daß in Deinem ersten Beispiel nur eine Spalte definiert war... bei mir läuft's auch innerhalb - hatte bloß umgestellt, weil ich nicht gern geschachtelte Definitionen benutze
    MfG,
    Geändert von rais (16-09-2005 um 21:51 Uhr)
    Rainer
    There's nothing a good whack with a hammer won't fix!

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •