scrlttr2: Absolute Pfadangabe für lco-Vorlage?

Klassen und Pakete zur einfachen Umsetzung individueller Vorstellungen


Hannes Hegel
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 53
Registriert: Mi 20. Jan 2016, 19:42

scrlttr2: Absolute Pfadangabe für lco-Vorlage?

Beitrag von Hannes Hegel »

Hallo!
Kann ich den Pfad für die absender.lco irgendwie absolut angeben?

Mit

Code: Alles auswählen

\documentclass[
    ~/Dokumente/Vorlagen/absender
]{scrlttr2}

Bekomme ich einen Fehler von scrbase.sty.


gast

Re: scrlttr2: Absolute Pfadangabe für lco-Vorlage?

Beitrag von gast »

Ohne vollständiges Minimalbeispiel würde ich darauf tippen, dass das mit \LoadLetterOption eher möglich ist. Die Anweisung wird in der Anleitung AFAIR ausdrücklich als Mittel der Wahl zum Laden von lco-Dateien empfohlen. Die Angabe einer lco-Datei als Klassenoption ist dagegen veraltet und wird von scrletter beispielsweise nicht unterstützt.

Trotzdem empfehle ich die Verwendung eines absoluten (oder relativen) Pfads hier so wenig wie für die Klasse oder ein Paket. Stattdessen sollten solche Dateien im TeX-Suchpfad liegen, also entweder im TEXMF-Baum der Distribution oder einem lokalen, systemweiten TEXMF-Baum oder einem privaten TEXMF-Baum oder eben im Dokumentverzeichnis. Absolute Pfade sind schon deshalb abzulehnen, weil man sich damit von einem ganz konkreten Ablageort abhängig macht.

Außerdem empfehle ich, bei Fragen immer ein vollständiges Minimalbeispiel anzugeben und Fehlermeldungen im Original als Code-Kopie aus der log-Datei zu zitieren.


Hannes Hegel
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 53
Registriert: Mi 20. Jan 2016, 19:42

Re: scrlttr2: Absolute Pfadangabe für lco-Vorlage?

Beitrag von Hannes Hegel »

Vielen Dank für den Hinweis auf \LoadLetterOption !

Stattdessen sollten solche Dateien im TeX-Suchpfad liegen, also entweder im TEXMF-Baum der Distribution oder einem lokalen, systemweiten TEXMF-Baum oder einem privaten TEXMF-Baum oder eben im Dokumentverzeichnis.

Das habe ich noch nicht ganz verstanden: Wo ist der Unterschied zwischen meinem Weg und der letztgenannten Variante? Und wie würde ich einen privaten TEXMF-Baum erzeugen?


Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2703
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Re: scrlttr2: Absolute Pfadangabe für lco-Vorlage?

Beitrag von KOMA »

Wenn die Datei im TeX-Suchpfad ist, dann braucht man keine Pfadangabe mehr. Auf einem anderen Rechner oder bei einem anderen Benutzer darf die Datei also auch in einem anderen Verzeichnis des Suchpfads liegen.

Bei TeX Live muss man den privaten TEXMF-Baum nur insofern erzeugen, dass man die Verzeichnisstruktur dafür anlegen muss. Bei Linux wäre das mit »mkdir -p ~/texmf/tex/latex/lco-files« erledigt. Im dem Verzeichnis legt man dann die eigenen lco-Dateien ab und fertig. Bei OSX und Windows, weiß ich nicht genau, wo der private TEXMF-Baum anzulegen ist. Einfach mal in der Konsole mit »kpsewhich -var-value=TEXMFHOME« TeX Live selbst fragen. Nach Dateien wird im privaten TEXMF-Baum automatisch gesucht (wenn sie im richtigen Verzeichnis liegen).

Bei MiKTeX existiert ebenfalls bereits ein privater TEXMF-Baum. Man kann aber über die MiKTeX Console auch beliebig neue anlegen (aber bitte nicht für eine einzelne LCO). Näheres ist der MiKTeX-Anleitung zu entnehmen.

Ich selbst verwende TeX Live unter Linux. Daher kann ich zu MacTeX oder TeX Live unter Windows oder OSX oder zu MiKTeX auch nicht viel mehr sagen als in der Anleitung steht.

Übrigens: Die Tilde ist normalerweise ein aktives Zeichen, gleichbedeutend einem Makro. Das ist bei Dateinamen nicht so ganz unkritisch. Sobald die Dateinamen in irgend einer Form expandiert werden, geht das in die Hose. Das optionale Argument von \documentclass und \usepackage ist sehr speziell. Da würde ich generell nicht damit rechnen, dass ~ funktioniert.


Hannes Hegel
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 53
Registriert: Mi 20. Jan 2016, 19:42

Re: scrlttr2: Absolute Pfadangabe für lco-Vorlage?

Beitrag von Hannes Hegel »

Super, vielen Dank! Wieder was gelernt.


Antworten