Zeilen nur bei Bedarf setzen

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

Markdown is OFF

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Zeilen nur bei Bedarf setzen

Re: Zeilen nur bei Bedarf setzen

von gast » Fr 11. Sep 2020, 12:27

Ohne Minimalbeispiel weiß ich nicht, was genau du gemacht hast, und kann deshalb nur eine sehr allgemeine Antwort auf Basis einer Vermutung geben. Ich wäre dir daher verbunden und es ist auch in deinem Interesse immer ein vollständiges Minimalbeispiel anzugeben.

\newif sollte unbedingt außerhalb irgendwelcher anderer Befehle oder Verzweigungen verwendet werden. Es geht also beispielsweise häufig nicht:

Code: Alles auswählen

\setkomavar{firsthead}{%
  \newif\ifFOO\FOOtrue
  \ifFOO … \else … \fi
}

Stattdessen muss es schon

Code: Alles auswählen

\newif\ifFOO\FOOtrue
\setkomavar{firsthead}{%
  \ifFOO … \else … \fi
}

sein. Selbstverständlich kann man \FOOtrue und \FOOfalse an beliebiger Stelle verwenden.

Außerdem gibt es keinen Sicherungsmechanismus, dass \ifFOO nicht bereits anderweitig definiert ist. Man muss also schon selbst aufpassen, dass man für FOO Namen verwendet, die unkritisch sind.

Re: Zeilen nur bei Bedarf setzen

von Joerg66 » Fr 11. Sep 2020, 08:20

Ich habe jetzt diesen Code probiert:

Code: Alles auswählen

\newif\ifname\nametrue
\ifname
\usekomavar*{frombank}:~\usekomavar{frombank} \hfill 
\usekomavar{bank}}
\fi

Die Bankangaben werden geschrieben, aber ich bekomme bei \fi die Meldung:

Code: Alles auswählen

Extra \fi.
I'm ignoring this, it doesn't match any \if.

Ändere ich nach \namefalse wird nur noch in der Kopfzeile der Absender angegeben, der Rest der Seite ist leer.
Geht \if an dieser Stelle überhaupt oder muß das nach \begin{document} kommen?

Re: Zeilen nur bei Bedarf setzen

von Joerg66 » Do 10. Sep 2020, 19:28

Ah, vielen Dank, das werde ich mir ansehen.
Schön wäre ein google-Tool, das einem passende Suchbegriffe zu einem Problem heraussucht :lol:
Ich war mit "if" am suchen, habe einiges gefunden, aber nichts das funktionierte. Deine Ansätze waren übrigens nicht dabei.

Re: Zeilen nur bei Bedarf setzen

von gast » Do 10. Sep 2020, 14:16

Da gibt es verschiedene Möglichkeiten. In der KOMA-Script-Anleitung im Kapitel zu scrbase wird beispielsweise erklärt, wie man sich eine eigene Familie für die key-value-Schnittstelle definieren kann, so dass man dann per \FamilyOptions{Familie}{IBAN} und einen Schalter \ifIBAN…\else…\fi arbeiten könnte. Man kann aber auch direkt mit \newif (siehe LaTeX-Anleitung) oder stattdessen mit denn Boolschen-Schaltern von etoolbox arbeiten.

Zeilen nur bei Bedarf setzen

von Joerg66 » Do 10. Sep 2020, 12:53

Hallo,
was gibt es für (schöne) Möglichkeiten manche an/aus zu schalten?
Ich möchte in meinem Brief z.B. die IBAN und Bank nicht immer angeben, aber auch nicht löschen oder mit Kommentaren arbeiten. Irgendwas mit "if iban drucken Y/N" wäre cool.
Für Hilfe wäre ich sehr dankbar
Gruß Jörg

Code: Alles auswählen

\documentclass[11pt,ngerman,paper=A4]{scrlttr2}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
% ##### Briefkörper bündig am Briefkopf ausrichten #####
\setlength{\oddsidemargin}{\useplength{toaddrhpos}}
\addtolength{\oddsidemargin}{-1in}
\setlength{\textwidth}{\useplength{firstheadwidth}}
% ######################################################
\setkomavar {fromname}      {Donald Duck}
\setkomavar {fromaddress}   {Am Geldspeicher 1 \\ 12345 Entenhausen}
\setkomavar {fromphone}     {+49 5043 10 20 30}
\setkomavar {frommobilephone}     {+49 173 10 24 236}
\setkomavar {fromemail}    {myEMail@provider.de}

\setplength{locvpos}{135pt}     % Abstand Absenderergänzung von oben
\setplength{locwidth}{155pt}    % Breite Absenderergänzung
\setkomavar{location}{
    \raggedright    \\
                    \usekomavar*{fromphone}\usekomavar{fromphone} \\
                    \usekomavar*{frommobilephone}\usekomavar{frommobilephone} \\
                    \usekomavar*{fromemail}\usekomavar{fromemail}
}
\setkomavar{frombank}[IBAN]{DE98160500007512013019}
\newkomavar[Bank]{bank}
\setkomavar{bank}{Volksbank Hameln-Stadthagen e.G.}
\setkomavar{firstfoot}{%
\hrule\vspace*{0.5em}\noindent%

\usekomavar*{frombank}:~\usekomavar{frombank} \hfill 
\usekomavar{bank}}

\setkomavar{toname}{Max Mustermann}
\setkomavar{toaddress}{Musterweg 1 \\ 98765 Musterstadt}

\setkomavar {yourref}   {}         % Ihr Zeichen
\setkomavar {myref}     {}             % Unser Zeichen
\setkomavar {yourmail}  {03.03.2020}        % Ihr Schreiben vom
\setkomavar {customer}  {}         % Kundennummer
\setkomavar {invoice}   {}         % Rechnungsnummer
\setkomavar {subject}   {Betreff}         % Betreff

\newkomavar[Anrede]{anrede}
\setkomavar{anrede}{Sehr geehrter Herr}

\newkomavar[Gruss]{gruss}
\setkomavar{gruss}{Mit freundlichen Grüßen}

\setkomavar{firsthead}{ \\
    \usekomavar{fromname} \\
    \usekomavar{fromaddress} \\
    \rule[1ex]{\textwidth}{.4pt}
}

\begin{document}
\noindent
    \begin{letter}{}
        \opening{\usekomavar{anrede}}
    \closing{\usekomavar{gruss}}
    \end{letter}
\end{document}

Nach oben