Installieren von Paketen in meinem privaten Baum aus einer INS-Datei

Installieren von Paketen in meinem privaten Baum aus einer INS-Datei

Ich habe vor kurzem eine Dokumentklasse erstellt und sie gerade in eine DTX-Datei verpackt. Ich habe eine Installationsdatei, die so aussieht:

%% 
%% Licence info
%% 

\input docstrip.tex
\keepsilent

\usedir{tex/latex/bil-CV}

\preamble

This is a generated file licenced under the MIT License:
The MIT License (MIT)…blah blah blah...

\endpreamble

\generate{\file{bil-CV.cls}{\from{bil-CV.dtx}{class}}}


\obeyspaces
\Msg{*********************************************************}
\Msg{*}
\Msg{* To finish the installation you have to move the}
\Msg{* following file into a directory searched by TeX:}
\Msg{*}
\Msg{* \space\space bil-CV.cls}
\Msg{*}
\Msg{* To produce the documentation run the file bil-CV.dtx} 
\Msg{* through LaTeX.}
\Msg{*}
\Msg{* Happy TeXing!} 
\Msg{*********************************************************}

\endbatchfile

Ich führe dies mit aus latex bil-CV.insund erhalte die folgende Ausgabe:

This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2014) (preloaded format=latex)
 restricted \write18 enabled.
entering extended mode
(./bil-CV.ins
LaTeX2e <2014/05/01>
Babel <3.9k> and hyphenation patterns for 78 languages loaded.
(/usr/local/texlive/2014/texmf-dist/tex/latex/base/docstrip.tex
Utility: `docstrip' 2.5d <2005/07/29>
English documentation    <2014/04/19>

**********************************************************
* This program converts documented macro-files into fast *
* loadable files by stripping off (nearly) all comments! *
**********************************************************

********************************************************
* No Configuration file found, using default settings. *
********************************************************

)

Generating file(s) ./bil-CV.cls 

Processing file bil-CV.dtx (class) -> bil-CV.cls
Lines  processed: 407
Comments removed: 262
Comments  passed: 9
Codelines passed: 130

*********************************************************
*
* To finish the installation you have to move the
* following file into a directory searched by TeX:
*
*    bil-CV.cls
*
* To produce the documentation run the file bil-CV.dtx
* through LaTeX.
*
* Happy TeXing!
*********************************************************
 )
No pages of output.
Transcript written on bil-CV.log.

Warum wird nach der Angabe \usedir{tex/latex/bil-CV}die Klassendatei im CWD generiert und nicht ~/Library/texmf/tex/latex/bil-CVwie in und angegeben in /usr/local/texlive/2014/texmf.cnfder INS-Datei?

Antwort1

Wie im Einzelnen in derDocStrip-Handbuch, das Design von DocStrip ist so, dass Sie Folgendes festlegen müssen \BaseDirectory(da TeX nicht wissen kann, wohin Sie installieren möchten) und \UseTDS(um die Zuordnung Ihrer \usedirZeilen zur TDS-Struktur zu aktivieren). Diese Zeilen sollen höchstwahrscheinlich in eine docstrip.cfgDatei und nicht in die .insDatei(en) selbst eingefügt werden.

Wie in den Kommentaren erwähnt, erlauben moderne TeX-Systeme aus Sicherheitsgründen nicht das Schreiben in ein Verzeichnis über dem aktuellen. (Dies kann geändert werden, wird aber überhaupt nicht empfohlen.) TeX und damit auch DocStrip können keine Verzeichnisse erstellen, daher muss die Struktur auch bereits vorhanden sein. Daher sollte die Funktion „Nach TDS extrahieren“ von DocStrip am besten als historische Idee betrachtet und nicht für die heutige Verwendung verwendet werden. Anstatt DocStrip zum Auffüllen eines lokalen Baums zu verwenden, ist es sinnvoller, eine Zip-Datei im TDS-Stil zu erstellen und diese zu verwenden. Es stehen verschiedene Skripte zur Verfügung, die bei diesem Vorgang helfen.

verwandte Informationen