PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zeilenumbruch bei Gedichten



alexraasch
26-02-2008, 19:23
Hallo,

ich suche eine Möglichkeit, Gedichte zu setzen, wobei ein Zeilenumbruch im Quelltext in die Ausgabe übernommen wird. Ich möchte nicht jedes Mal \\ eingeben. Es gibt den Befehl \obeycr, der genau das tut, aber sobald zwei Umbrüche aufeinander folgen, erhalte ich eine Fehlermeldung: There is no line to end here. Außerdem kann man den Befehl nicht zurücknehmen. Oder?

Das ganze soll also etwa so aussehen:



\begin{gedicht}
Faust: ...
...
...
Mephisto: ...
...
...
\end{gedicht}

cookie170
27-02-2008, 15:05
Hallo,

es ist natürlich eine Blamage für dieses Forum, dass Deine Frage solange unbeantwortet geblieben ist. Die Leute haben möglicherweise "Gedicht" gelesen und nicht mehr weitergedacht.

Programmcode und Gedichte haben offensichtlich etwas gemeinsam: es kommt auf den Zeilenumbruch an. Wahrscheinlich kannst Du alle gängigen Programme zur Darstellung von Code verwenden, z.B. listings. Ich -- Jurist -- kenne mich da leider überhaupt nicht aus.

Außerdem gibt es eine Reihe von Paketen für Dramatiker, nachzulesen im thematischen Katalog (http://texcatalogue.sarovar.org/bytopic.html#literature) der Latex-Pakete.

Schau' Dir das mal an und melde Dich mit konkreten Fragen,

Gruß,
Alexander

alexraasch
29-02-2008, 17:11
Hallo,

vielen Dank für Deine Antwort. Ich hatte mir die Pakete für "Poetry and Drama" im Themenkatalog bereits angeschaut vor dem ersten Post. Im Paket verse gibt es die alltt-Umgebung, die genau das macht, was ich brauche. Allerdings muss man nach jeder Strophe eine neue Umgebung hinschreiben, was etwas umständlich ist, aber verkraftbar. Ansonsten definieren die anderen Pakete das Aussehen des ganzen Dokuments neu, was mir nicht so gefällt.

Also ich mache es jetzt damit (verse.sty).

alexraasch
25-05-2008, 16:56
Also, ich habe jetzt etwas zusammengehackt, dass irgendwie funktioniert:



\newcount\lastwaspar\lastwaspar=0
\begin{verses}%
\makeatletter\catcode`\^^M=\active%
\def^^M{\@ifnextchar^^M{\lastwaspar=1\par}{%
\ifnum\lastwaspar=1\lastwaspar=0\else\hfil\break\f i}}\makeatother%
Im traurigen Monath November war's,
Die Tage wurden trüber,
Der Wind riß von den Bäumen das Laub,
Da reist ich nach Deutschland hinüber.

Und als ich an die Grenze kam,
Da fühlt ich ein stärkeres Klopfen
In meiner Brust, ich glaube sogar
Die Augen begunnen zu tropfen.
...
\end{verses}


Die Definition von verses ist bisher leer.

\newenvironment{verses}{}{}

Ich wollte die Zeilen 3--5 in die Definition der Umgebung hineinschreiben, da bekomme ich aber den Fehler:



File ended while scanning use of \@newenv.


Hat jemand eine Idee?

cookie170
27-05-2008, 13:55
Hallo,

bevor ich nun mit rumprobieren anfange: Hättest Du nicht sowieso ein kleines, aber lauffähiges Beispiel auf dem Rechner? Oder was meinst Du mit "funktioniert irgendwie"?

Gruß,
Alexander

alexraasch
27-05-2008, 18:11
Hallo,

Ich habe meine Beispieldatei hochgeladen:

http://www.alexraasch.de/Wintermährchen.tex

Sie ist 77 KB groß, in UTF-8 codiert mit UNIX-Zeilenumbrüchen. Es basiert auf KOMA-Script und läuft einwandfrei durch, wenn Du Zeile 18 auskommentierst. Ansonsten gibt es besagten Fehler. In Zeile 45 steht derselbe Code direkt nach dem Öffnen der verses-Umgebung wie im Extrakt aus meinem obigen Post. Dort funktioniert alles.

cookie170
27-05-2008, 21:59
404, sagt mir Firefox


--------------------------

Edit:
Aber von der Hauptseite kommt man dran, ich werd's mal testen...