Anzeige:
Ergebnis 1 bis 10 von 10

Thema: G-Brief - Command \Telefon already defined

  1. #1
    Registrierter Benutzer
    Registriert seit
    11.05.2006
    Beiträge
    28

    G-Brief - Command \Telefon already defined

    Guten Tag,

    ich benutze das Bsp. der g-brief Klasse von http://www.nitidelo.de/g-brief/g-brief-neu.htm, allerdings fkt. latex2pdf nicht und gibt folgenden Fehler aus: Latex Error: Command \Telefon already defined. Wüsste jmd. wo der Fehler liegt. Der Fehler ist auch vorhanden wenn ich das Feld \Telefon {+49\ 000\ 00000} lösche.

    Mfg, Daniel

  2. #2
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Moin moin,
    Zitat Zitat von droog_22 Beitrag anzeigen
    ich benutze das Bsp. der g-brief Klasse von http://www.nitidelo.de/g-brief/g-brief-neu.htm, allerdings fkt. latex2pdf nicht und gibt folgenden Fehler aus: Latex Error: Command \Telefon already defined. Wüsste jmd. wo der Fehler liegt. Der Fehler ist auch vorhanden wenn ich das Feld \Telefon {+49\ 000\ 00000} lösche.
    also abgesehen davon, daß ich erst noch europs.sty installieren musste, läuft das hier angegebene Beispiel bei mir fehlerfrei durch.
    Wenn Du nichts dran verändert hast, stell mal \listfiles an den Anfang und poste die .log-Datei.
    MfG,
    Rainer
    There's nothing a good whack with a hammer won't fix!

  3. #3
    Registrierter Benutzer
    Registriert seit
    11.05.2006
    Beiträge
    28

    Log File

    Sorry für das lange Log-File, aber ich finde den Fehler einfach nicht.

    D.

  4. #4
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Zitat Zitat von droog_22 Beitrag anzeigen
    Sorry für das lange Log-File, aber ich finde den Fehler einfach nicht.

    D.
    Hmm, nun ja, das Paket marvosym definiert sich ein Symbol namens \Telefon - und bei Deiner Version [2006/05/11 v2.1] wird das mit \newcommand gemacht (bei meiner alten Version von 2000 noch mit \def, und der wird nicht geprüft)
    Eigentlich hätte ich bei Dir eher so etwas wie "Missing \begin{document}" als Fehlermeldung erwartet, solange Du den \Telefon{..} noch drin hattest.
    [ed]
    öhem, als zweiten Fehler, versteht sich
    [/ed]
    Vllt hilft Dir ja scrlttr2 weiter, siehe scrguide.
    MfG,
    Rainer
    There's nothing a good whack with a hammer won't fix!

  5. #5
    Registrierter Benutzer
    Registriert seit
    16.01.2005
    Beiträge
    124
    den Fehler habe ich auch - aber wenn man mit Enter weitergeht, paßt das Ergebnis trotzdem (sowohl mit als auch ohne Telefon)

  6. #6
    Registrierter Benutzer
    Registriert seit
    15.04.2007
    Beiträge
    8
    Hallo Forum!

    Seit kurzem tritt bei mir das gleiche Problem auf. Da ich von LaTeX und den LyX-Files keine Ahung habe, habe ich bisher auch die Finger davon gelassen. Ich habe also keine Datei manuell verändert. Die Vorlage lief bisher wunderbar, und tut es auch noch auf meinem Desktop-PC. Allerdings arbeite ich lieber mit meinem Laptop, und dort funktioniert sie eben seit kurzem nicht mehr! Ich muß mir also abhelfen, indem ich das File am Laptop schreibe, am Desktop in PDF ausgeben lassen, und dann das PDF wieder zurück kopiere. Das mit dem Enter-drücken habe ich auch schon ausprobiert, allerdings wird bei mir gar keine Ausgabe angezeigt.

    Mit den oben angegebenen Vorschlägen kann ich leider nichts anfangen, da ich wie gesagt keine Ahnung vom System an sich habe. Kann mir jemand für einen Laien verständlich machen, wie ich das Problem behebe?

    Vielen Dank schonmal im Voraus, und Cheers,
    Fyo

  7. #7
    Registrierter Benutzer
    Registriert seit
    15.04.2007
    Beiträge
    8
    @ rais (oder jemand, der mit dessen Antwort mehr anfangen kann als ich):

    Ich habe das File marvosym.sty gefunden, und dort steht auch der Befehl "\newcommand\Telefon{\mvchr{84}}" drin, den LyX bemängelt. Du sagst, daß bei einer älteren Datei das noch mit \dev gemacht wurde... kann ich das einfach manuell ändern? Oder verhalten sich die Befehle doch etwas anders? Wie kann ich das sauberer lösen?

    Und hat jemand eine Erklärung, warum das nicht mehr so funktioniert wie es soll, obwohl es vorher tat?!?

    Danke und Cheers,
    Fyo

  8. #8
    Registrierter Benutzer Avatar von countbela666
    Registriert seit
    15.04.2005
    Ort
    Berlin
    Beiträge
    2.317
    Hallo, Fyo,

    das Problem hier ist die Tatsache, dass der Befehl \Telefon von zwei verschiedenen Paketen definiert wird, die nichts voneinander wissen.

    Es gibt mehrere Möglichkeiten, einen solchen Befehl zu definieren. Wird dies mit \newcommand getan, gibt es einen Fehler falls ein gleichnamiger Befehl bereits existiert. Wird der Befehl mit \def definiert, gibt es keinen Fehler, da die Existenz eines gleichnamigen Befehls nicht überprüft und dieser somit überschrieben wird.

    Die alte Variante der marvosym.sty hat den Befehl \def benutzt und damit keinen Fehler erzeugt (was jedoch eigentlich schlechteren Stil darstellt), die neue Version hingegen verschluckt sich, da sie den Befehl nicht überschreiben will.

    Abhilfe: setze ein \let\Telefon\relax vor \usepackage{marvosym} um den Befehl vor der Neudefinition aufzuheben.

    Grüße
    Marcel

    Listen to me children of the night, beyond the doors of darkness you will find
    a thousand worlds for you to see here, take my hand and follow me...

  9. #9
    Registrierter Benutzer
    Registriert seit
    15.04.2007
    Beiträge
    8
    Vielen Dank für die Hilfe!

    Ich habe nur ein Problem: Ich nutze LyX (kann also den Code nicht selber schreiben und habe nur rudimentären Überblick), und in der von LyX erzeugten Datei wird das Paket marvosym nicht geladen. über mehrere Umwege habe ich herausgefunden, daß das File g-brief.cls im Folder C:\Programme\texmf\tex\latex\g-brief\ wohl etwas mit meinem Problem zu tun hat. Darin findet sich folgendes:

    Code:
    \IfFileExists{marvosym.sty}
      {\RequirePackage{marvosym}}
      {}
      \def\Telefon#1{\def\telefon{#1}} \def\telefon{}
    Der Befehl \usepackage taucht also gar nicht auf, und irgendwas wird mit dem Telefon-Dingsbums ja auch gemacht. Nur was, das verstehe ich nicht... ich bin Maschinenbauer, kein Informatiker . Kann ich dort trotzdem den relax-Befehl davor setzen?

  10. #10
    Registrierter Benutzer
    Registriert seit
    15.04.2007
    Beiträge
    8
    Das Problem wurde durch einen User im StudiVZ gelöst. Für Nachfolgende beschreibe ich hier die einfach und schnelle Lösung:

    Im File C:\Programme\texmf\tex\latex\g-brief\g-brief.cls (Programmpfad entsprechend anpassen) wird "Telefon" zweimal definiert. Das erste Mal in Zeile 201, das zweite Mal nach Aufruf des Pakets marvosym. Wird die erste Definition einfach auskommentiert, wird das Dokument ohne Warnungen oder Fehler korrekt erzeugt:

    Code:
    200
    201 %%\def\Telefon#1{\def\telefon{#1}} \def\telefon{} <-- auskommentiert
    202 \def\Telefax#1{\def\telefax{#1}} \def\telefax{}
    203 \def\Telex#1{\def\telex{#1}} \def\telex{}
    204 \def\EMail#1{\def\email{#1}} \def\email{}
    205 \def\HTTP#1{\def\http{#1}} \def\http{}
    206

Lesezeichen

Berechtigungen

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