Anzeige:
Ergebnis 1 bis 11 von 11

Thema: Problem mit \newcommand und Leerzeichen

  1. #1
    Registrierter Benutzer
    Registriert seit
    19.10.2006
    Beiträge
    29

    Problem mit \newcommand und Leerzeichen

    Hallo,

    ich hab folgendes

    Code:
    \newcommand{\TextEinfuegen}[0]{%
        \textit{Konstanter Text}%
    }
    Mit dem oben definierten Befehl füge ich an verschiedenen Stellen in meinem Dokument den konstanten Text ein. Wenn nach dem Befehlsaufruf ein Leerzeichen kommt, dann wird das im PDF verschluckt.

    Bsp:

    In der Tex-Datei

    Mein wunderschöner Text .... bla bla \TextEinfuegen mit einem Leerzeichen ...

    In der PDF-Datei sieht es dann so aus

    Mein wunderschöner Text .... bla bla Konstanter Textmit einem Leerzeichen ...

    Also: immer wenn nach \TextEinfuegen direkt ein Leerzeichen kommt, dann wird das im PDF gelöscht.

    Wie kann ich das beheben, ohne manuell überall nach dem Befehlsaufruf ein Leerzeichen zu setzen???

    Grüße,
    Michael

  2. #2
    Registrierter Benutzer Avatar von bobmalaria
    Registriert seit
    28.11.2006
    Ort
    Düsseldorf
    Beiträge
    4.174
    hi,

    mach es doch so

    Code:
    \newcommand{\meintext}[1]{\textit{#1}}
    aufruf im dokument dann

    Code:
    \meintext{ich bin ein text mit leerzeichen}
    neulich kam schon mal so ne frage. da hab ich das hier gebastelt. mit farbbox und farbigem text
    Code:
    \newcommand{\farbbox}[1]{{\vspace{.5cm} \fcolorbox{black}{red}{\parbox{1\textwidth}{\textcolor{white}{#1}}}}\vspace{.5cm}}

    gruß
    Geändert von bobmalaria (10-02-2007 um 21:43 Uhr)
    Mein Ball ist umgefallen

  3. #3
    Registrierter Benutzer
    Registriert seit
    19.10.2006
    Beiträge
    29
    Hallo,

    danke für Deine Antwort, aber das Problem besteht weiterhin!

    Zitat Zitat von bobmalaria Beitrag anzeigen
    hi,
    mach es doch so
    Code:
    \newcommand{\meintext}[1]{\textit{#1}}
    aufruf im dokument dann
    Code:
    \meintext{ich bin ein text mit leerzeichen}
    Das möchte ich nicht, weil ich dann jedes mal den gleichen Text tippen muss - der Sinn von meinem Befehl ist ja genau, dass ich mir das spare.

    Grüße
    Michael

  4. #4
    Registrierter Benutzer Avatar von bobmalaria
    Registriert seit
    28.11.2006
    Ort
    Düsseldorf
    Beiträge
    4.174
    so geht's bei mir ohne probleme

    Code:
    \newcommand{\meintext}{\textit{hier ist mein standarttext}}
    Mein Ball ist umgefallen

  5. #5
    Registrierter Benutzer
    Registriert seit
    19.10.2006
    Beiträge
    29
    Sorry, bei aber überhaupt nicht. Ich hab immer noch das beschriebene Problem, dass Leerzeichen gelöscht werden. Weiß der Geier warum .... ok, der weiß es vermutlich auch nicht.


    Grüße,
    Michael

  6. #6
    Registrierter Benutzer Avatar von bobmalaria
    Registriert seit
    28.11.2006
    Ort
    Düsseldorf
    Beiträge
    4.174
    dann mach doch mal ein minimalbeispiel das das verhalten reproduziert.
    http://minimalbeispiel.de/

    und dann machen wir's wie der kaiser immer sagt: "schau' mer mal"

    gruß
    Mein Ball ist umgefallen

  7. #7
    Registrierter Benutzer
    Registriert seit
    19.10.2006
    Beiträge
    29

    - Minimalbeispiel ....

    Hallo,

    OK, hab meine Diplomarbeit (in der taucht das Problem auf) auf das minimalste heruntergekürzt - und der Fehler taucht immer noch auf

    Nachtrag: ich verwende die KOMA-Scripte als Basis

    Hier die Hauptdatei:

    Code:
    \documentclass[pdftex, a4paper, 
    							liststotoc,					% damit alle notwendigen Verzeichnisse im TOC erscheinen
    							bibtotoc,						% damit das Literaturverzeichnis im TOC erscheint
    							pointlessnumbers		% damit im Inhaltsverzeichnis kein abschließender Punkt hinter den Zahlen steht
    							]{scrartcl}
    \usepackage{typearea}
    \areaset[0cm]{15.3cm}{22cm}
    
    \usepackage{caption2}
    \onelinecaptionsfalse
    \captionstyle{hang+flushleft}
    
    \usepackage{setspace}	
    \onehalfspacing
    
    \usepackage{scrpage2}
    \pagestyle{scrheadings}
    \ofoot{\pagemark} % Seitenzahlen nach rechts schieben
    \cfoot[]{} % zentrierte Seitenzahlen löschen
    
    
    \usepackage[ngerman]{babel}
    \usepackage[latin1]{inputenc}
    \usepackage[T1]{fontenc}
    
    
    \input{HeaderInclude_Erweiterungen}
    
    \begin{document}
    
    This is just some text to fill this space here ... \ModellU This is just some text to fill this space here ... This is just some text to fill this space here ... 
    
    \end{document}
    Und hier die inkludierte Datei:

    Code:
    \newcommand{\ModellU}{\textit{CREATIV Möbel e. K.}}
    
    \newcommand{\UTopdesk}{TOPDESK}

    Im erzeugten PDF ist nach dem Ausdruck "CREATIV Möbel e. K." der Leeraum aus der Tex-Datei gelöscht...

    Danke+Grüße
    Michael

  8. #8
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Moin moin,
    Zitat Zitat von michaelr Beitrag anzeigen
    Code:
    \newcommand{\TextEinfuegen}[0]{%
        \textit{Konstanter Text}%
    }
    Mit dem oben definierten Befehl füge ich an verschiedenen Stellen in meinem Dokument den konstanten Text ein. Wenn nach dem Befehlsaufruf ein Leerzeichen kommt, dann wird das im PDF verschluckt.
    versuch mal \TextEinfuegen\ bla...
    oder \TextEinfuegen{} blubb
    oder {\TextEinfuegen} foo...
    oder schau Dir mal das xspace-Paket an.
    MfG,
    Rainer
    There's nothing a good whack with a hammer won't fix!

  9. #9
    Registrierter Benutzer Avatar von bobmalaria
    Registriert seit
    28.11.2006
    Ort
    Düsseldorf
    Beiträge
    4.174
    versuche es mal so, und alles sollte stimmen

    Code:
    \newcommand{\ModellU}{\textit{CREATIV Möbel e. K.} }
    wie bereits oben geschrieben, caption2 ist veraltet.

    gruß
    Mein Ball ist umgefallen

  10. #10
    Registrierter Benutzer
    Registriert seit
    19.10.2006
    Beiträge
    29
    Hi,

    also das xspace Paket tut nichts, keine Änderung zu vorher.

    Die Möglichkeit mit \Befehl{} scheint zu gehen, zumindest in dem Test gerade.

    Super danke!!

    Michael

  11. #11
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Nochmal moin,
    Zitat Zitat von michaelr Beitrag anzeigen
    also das xspace Paket tut nichts, keine Änderung zu vorher.
    also eigentlich hätte Dich der Vorschlag von bobmalaria auch schon weiterbringen können.
    xspace zu laden alleine reicht allerdings nicht...
    Code:
    \documentclass{scrartcl}
    \usepackage{xspace}
    \newcommand{\bla}{ein wenig Text\xspace}
    \begin{document}
    bla \bla blubb
    
    oder am Satzende:\bla.
    \end{document}
    man muß den Befehl \xspace dann auch verwenden
    Aber da Dein Text im selbstgebautem Befehl eh mit einem Punkt endet, wär' das vllt etwas übertrieben, hier mit xspace ranzuwollen.
    MfG,
    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
  •