PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Latex und Pfade: oberste Ebene ansteueren



StephanM
09-10-2011, 19:27
Hallo,

gibt es eine Möglichkeit, die oberste Ebene des Datenträgers auf dem das aktuelle Dokument liegt, direkt anzusteuern. Analog zu "cd /"?

Ich weiß, dass ich durch "../" jeweils eine Ebene höher komme.

Grund: Ich arbeite mit Latex (genauer XeLaTeX) auf einem USB-Stick und möchte die verwendete Schriftart nicht bei jedem Dokument ablegen müssen, sondern einmal zentral auf der obersten Ebene.

Absolute Pfade möchte ich nicht verwenden, falls sich der Laufwerksbuchstabe ändern sollte.

Gibt es für diesen Zweck ein Paket oder eine sonstige Erweiterung?

Grüße,
Sven R.

Schweinebacke
10-10-2011, 05:47
Pfade, die mit einem Slash beginnen, sind relativ zum Wurzelverzeichnis des aktuellen Dateisystems. Wenn Du also auf U:\Ich\sollte\mal\Windows\lernen\ den Font foo.otf hast und U:\Hippie Dein Arbeitsverzeichnis ist, dann ist der Font auch als /Ich/sollte/mal/Windows/lernen/foo.otf zu erreichen (unter TeX verwendet man Slash, statt Backslash, wobei Windows intern ohnehin auch mit dem Slash arbeitet, das nur schon seit COMMAND.COM kaum jemand weiß).

StephanM
12-10-2011, 20:49
Hallo,

das war mir soweit klar. Mir geht es darum, die oberste Ebene direkt anzusteuren, d.h. ohne den gesamten relativen Pfad anzugeben.

Hintergrund: Auf der obersten Ebene liegt eine Datei, die den gesamten Vorspann einer tex-Datei enthält, dieser ist für alle Dokumente auf dem Stick gleich, d.h. er wird in aller TeX-Dateien mit Input eingefügt. Das klappt soweit, wenn ich nun aber eine Tex-Datei verschiebe, z.B. von /test/Ordner/Unterordner nach /test/Ordner, so stimmt der relative Pfad nicht mehr.

Hätte ich einen Befehl, wie "cd /", also Wechsel in die oberste Verzeichnisebene, egal wo man sich gerade befindet, könnte ich meine tex-Dateien beliebig verschieben, da der Pfad des Vorspanns ja relativ zur obersten Ebene definiert wird.

Ich vermute, dass Tex das nicht selbst kann. Wäre es möglich, ein kleines Programm zu schreiben, welches diese Arbeit erledigt?

Grüße Sven

ctansearch
13-10-2011, 01:01
Da bräuchte man etwas mehr Info.
Wo ist Dein Tex-System gespeichert? Auf dem USB-Stick?
Oder sind da nur Dateien, die Du einbinden willst?

Wenn sich der Laufwerksbuchstabe ändert und Verknüpfungen nicht funktionieren, könntest Du auf jedem System, das Du benutzt, eine Datei "pfad.tex" ablegen, die Du in jedes Dokument einbindest. (\input pfad). Auf diese greifen dann alle Dateien zu.

In diese mußt Du dann nur jeweils beim Start einmal den aktuellen Pfad "H:\datei.tex" eintragen, vermutlich bloß den Laufwerksbuchstaben verändern, dann sollte es gehen.
Mit dem Befehl

echo "\input H:\datei">pfad.tex

kannst Du das in der Console schnell erledigen.

rstuby
13-10-2011, 05:44
Ist mit der "obersten Ebene" das Wurzelverzeichnis gemeint? Und direkt darin, ohne einen Ordner, liegt der Vorspann?
Wenn ja, dann würde ich mal versuchen, gemäß Schweinebackes Erklärung einfach mit einem Slash davor den Dateinamen zu schreiben, so nach der Art

input /vorspann.tex