goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Direktlinks:
Zuletzt aktive Beiträge
Unbeantwortete Beiträge
[Erweitert]

Forenstatistik:
Beiträge: 98372
Top-Poster: Johannes_B (5059)

Wir begrüßen unseren neuesten Benutzer Loelle92.

Links:


Mit Unterstützung von DANTE e.V.: Deutschsprachige Anwendervereinigung TeX. Danke den Mitgliedern!





Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

scrlttr2: Umbrüche in Absenderadresse vermeiden/zulassen

 

michseif
Forum-Newbie
Forum-Newbie

Beiträge: 2
Anmeldedatum: 15.07.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.07.2011, 22:06     Titel: scrlttr2: Umbrüche in Absenderadresse vermeiden/zulassen
  Antworten mit Zitat      
Hallo allerseits,

bin gerade dabei, mich etwas mit scrlttr2 zu beschäftigen. Ich möchte nun gerne meinen eigenen Briefkopf definieren, bei dem die Umbrüche nicht nach jeder komavar erfolgen (so wie per default), sondern z. B. Name und Postadresse in einer Zeile stehen und in der zweiten Zeile Telefonnummer(n) und Mailadressen.

Prinzipiell geht das ja mit \setkomavar{firsthead}. Nun habe ich aber das Problem, dass fromaddress ja üblicherweise mit "Musterstraße 88 \\ 01234 Musterstadt" befüllt wird - da ist ja ein Umbruch drin, den will ich aber in meinem Briefkopf NICHT haben.

Offensichtlich gibt es ja eine Möglichkeit, das zu bewerkstelligen, denn im backaddress ist es ja per default auch so, dass die Anschrift nicht umgebrochen wird, sondern statt des Umbruchs ein Komma gesetzt wird. Im scrguide steht auch an einer Stelle, dass die \\ nicht in jedem Fall als Umbruch interpretiert werden - leider ohne weitere Erläuterungen, wie man das beeinflussen kann.

Ich habe auch schon mal einen Blick in die scrlltr2.cls geworfen, nur leider bin ich absolut nicht firm in low-level-TeX, weshalb ich da nicht wirklich was Hilfreiches draus gewinnen konnte...
Private Nachricht senden Benutzer-Profile anzeigen

skater
Forum-Guru
Forum-Guru

Beiträge: 357
Anmeldedatum: 12.03.09
Wohnort: Berlin
Version: vorne Kile und hinten openSuSE 12.3 plus local/ und src/
     Beitrag Verfasst am: 16.07.2011, 02:24     Titel:
  Antworten mit Zitat      
Code • Öffne in Overleaf
\setkomavar{firsthead}{%
   \raggedleft
   \usekomavar{fromname}
   \hspace{\fill}
   {\def\\{\usekomavar{backaddressseparator}}\usekomavar{fromaddress}} \\*
   \usekomavar{fromemail} \\*
   \usekomavar{frommobile}}

Und es ist wirklich nur ein Vorschlag.
Private Nachricht senden Benutzer-Profile anzeigen

KOMA
TeX-Entwickler
TeX-Entwickler


Beiträge: 2637
Anmeldedatum: 04.07.08
Wohnort: ---
Version: Ich bin hier nicht mehr zu erreichen!
     Beitrag Verfasst am: 16.07.2011, 08:59     Titel:
  Antworten mit Zitat      
Bei dem Vorschlag wird das optionale Argument von \\ nicht berücksichtigt. Außerdem sind die * überflüssig, da im Kopf ohnehin kein Seitenumbruch erfolgen kann:
Code • Öffne in Overleaf
\setkomavar{firsthead}{%
   \raggedleft
   \usekomavar{fromname}
   \hspace{\fill}
   {\renewcommand*\\[1][]{\usekomavar{backaddressseparator}}\usekomavar{fromaddress}} \\
   \usekomavar{fromemail} \\
   \usekomavar{frommobile}}

Durch die Verwendung von \renewcommand mit einem optionalen Argument, das ignoriert wird, wird das optionale Argument von \\ ggf. geschluckt. Was nicht berücksichtigt ist, ist ein \\*, aber der Stern ist ohnehin an der Stelle eher nutzlos und wird auch beim Setzen von backaddress nicht berücksichtigt.

BTW: Beim Setzen von backaddress wird das optionale Argument übrigens durch ein angehängtes \@ogobble entfernt. Könnte man oben auch machen, muss dann aber \makeatletter…\makeatother verwenden (siehe Wiki).
_________________

goLaTeX-Knigge (mit Themen Minimalbeispiel und So stellst Du Deine Frage richtig)
DE-TeX-FAQ, UK-FAQ, l2kurz, l2tabu, CTAN, The TeX Catalogue
KOMA-Script
Ich bin hier nicht mehr zu erreichen!
Private Nachricht senden Benutzer-Profile anzeigen

skater
Forum-Guru
Forum-Guru

Beiträge: 357
Anmeldedatum: 12.03.09
Wohnort: Berlin
Version: vorne Kile und hinten openSuSE 12.3 plus local/ und src/
     Beitrag Verfasst am: 16.07.2011, 09:29     Titel:
  Antworten mit Zitat      
KOMA hat Folgendes geschrieben:
BTW: Beim Setzen von backaddress wird das optionale Argument übrigens durch ein angehängtes \@ogobble entfernt. Könnte man oben auch machen, muss dann aber \makeatletter…\makeatother verwenden (siehe Wiki).


1. Danke für die – mal widder ausführlichen – Hinweise.

2. Das \@ogobble hatte ich auch gesehen, es allerdings nach einem kurzen Test einfach weggelassen. Was jetzt aber mit Deinen Anmerkungen zu der Frage führt: Watt macht datt eigentlich?


Edit: Er kann lesen – zumindest nach dem ersten Kaffee. Wink
Private Nachricht senden Benutzer-Profile anzeigen

michseif
Forum-Newbie
Forum-Newbie

Beiträge: 2
Anmeldedatum: 15.07.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2011, 10:29     Titel:
  Antworten mit Zitat      
Jaa das habe ich mich auch gefragt, aber es tut wohl im Prinzip nichts anderes. Ich definiere also (nur noch mal zum Verständnis) das "Makro" \\ um, sodass es etwas völlig anderes tut als umzubrechen - verblüffend einfach, wusste nur bisher nicht, dass man das mit \\ auch machen kann...

Allerdings noch zwei Fragen: Wozu dient der * nach dem renewcommand (wenn ich den weglasse, sehe ich keinen Unterschied)? Und (ganz prinzipiell): Woher kommt die "Konvention", oder wie auch immer man es nennen will, Makros mit @'s zu definieren? Ist das nur, damit man sie nicht aus Versehen (sprich ohne \makeatletter) umdefinieren kann? Ich würde ja auch nach einer Erklärung googlen, wenn ich wüsste, wonach ich da suchen sollte Wink

Dankeschön!
Private Nachricht senden Benutzer-Profile anzeigen

KOMA
TeX-Entwickler
TeX-Entwickler


Beiträge: 2637
Anmeldedatum: 04.07.08
Wohnort: ---
Version: Ich bin hier nicht mehr zu erreichen!
     Beitrag Verfasst am: 16.07.2011, 14:18     Titel:
  Antworten mit Zitat      
Makros mit @ im Namen sind interne Makros. Die sind nicht für die Verwendung durch Anwender gedacht. Klassen- und Paketautoren sollten sie streng genommen auch nur verwenden, wenn dokumentiert ist, dass sie von diesen verwendet werden dürfen. Deshalb habe ich in meiner Lösung auch darauf verzichtet.

Die *-Version von \newcommand etc. ist im clsguide erklärt. Da hier in Makro, das normalerweise nicht \long definiert ist, umdefiniert wird, sollte man das auch wieder nicht \long machen. Also habe ich den * gesetzt.
_________________

goLaTeX-Knigge (mit Themen Minimalbeispiel und So stellst Du Deine Frage richtig)
DE-TeX-FAQ, UK-FAQ, l2kurz, l2tabu, CTAN, The TeX Catalogue
KOMA-Script
Ich bin hier nicht mehr zu erreichen!
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2019 goLaTeX.de