Anzeige:
Ergebnis 1 bis 4 von 4

Thema: Datei aus localtexmf in Projektordner kopieren

  1. #1
    Registrierter Benutzer
    Registriert seit
    26.07.2008
    Ort
    Dresden
    Beiträge
    136

    Datei aus localtexmf in Projektordner kopieren

    Ich habe meine Frage bereits bei der tex-gruppe gestellt, aber dort noch keine Antwort bekommen:
    https://groups.google.com/group/de.c...f6d63104?hl=de

    Vielleicht weiß ja hier jemand Rat:

    Problem: Ich habe ein Paket namens "mypackage" im localtexmf. Dieser Datei wird langfristig immer etwas abgeändert. Im aktuellen Projektordner steht in der Hauptdatei
    Code:
    \usepackage{mypackage}
    Beim ersten Kompilieren würde ich gern automatisch die Datei mypackage.sty in aktuellen den Projektordner kopieren, damit latex zukünftig auf die nun im Projektordner fixierte mypackage.sty im zugreift.

    Kann man da irgendetwas in der Art:
    Code:
    \begin{filecontents}{mypackage.sty}
    \inputmyfile{mypackage.sty}
    \end{filecontents}
    basteln, ohne die Pfadangabe von mypackage zu benutzen?
    Mit embedfile geht das ja auch, um Dateien an das pdf anzuhängen.
    Geändert von rafael (01-02-2012 um 07:01 Uhr) Grund: fehler

  2. #2
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Moin moin,
    Zitat Zitat von rafael Beitrag anzeigen
    Kann man da irgendetwas in der Art:
    Code:
    \begin{filecontents}{mypackage.sty}
    \inputmyfile{mypackage.sty}
    \end{filecontents
    basteln, ohne die Pfadangabe von mypackage zu benutzen?
    mag sein, aber warum willst Du das via LaTeX angehen? Wäre ein Script nicht geeigneter für sowas? Etwa
    Code:
    #!/bin/bash
    X=`kpsewhich $1`
    if [ -z "$X" ]; then
      echo "Datei $1 nicht gefunden."
    else
      if [ "$X" == "./$1" ]; then
        echo "Datei $1 bereits im Arbeitsverzeichnis vorhanden."
      else
        cp $X .
      fi
    fi
    Wenn Du unbedingt willst, kannst Du das Teil ja per \write18 aufrufen (-shell-enable nicht vergessen)

    MfG
    Rainer
    There's nothing a good whack with a hammer won't fix!

  3. #3
    Registrierter Benutzer
    Registriert seit
    26.07.2008
    Ort
    Dresden
    Beiträge
    136
    Zitat Zitat von rais Beitrag anzeigen
    warum willst Du das via LaTeX angehen? Wäre ein Script nicht geeigneter für sowas? Etwa
    ich kenne mich mit Scripten bislang überhaupt nicht aus. Aber wäre wohl eine Möglichkeit, die ich in Betracht ziehen sollte. Ist der Aufruf des Scriptes denn mit Latex möglich, oder muss ich das separat über die Kommandozeile machen? Da gibt es sicherlich wieder Abhängigkeiten zu Betriebssystem und Editor oder?

    Vielen Dank.

  4. #4
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Zitat Zitat von rafael Beitrag anzeigen
    Ist der Aufruf des Scriptes denn mit Latex möglich, oder muss ich das separat über die Kommandozeile machen?
    Um ein Skript -- oder sonstige Befehle, die über die Kommandozeile ausführbar wären -- aus LaTeX aufzurufen, gibt es den \write18{..}-Befehl.
    Um \write18{..} zu erlauben, gibt es eine Option -shell-escape (TeXLive) bzw. -enable-write18 (MikTeX), wobei mir die Schreibweise unter MikTeX nicht klar ist, weil von mir nicht verwendet.
    Code:
    latex --help
    sollte Dir anzeigen, welche Optionen von Deinem LaTeX-Programm unterstützt werden.
    Zitat Zitat von rafael Beitrag anzeigen
    Da gibt es sicherlich wieder Abhängigkeiten zu Betriebssystem
    Sicher, nicht alle Skriptsprachen sind auf jedem Betriebssystem verfügbar. Die, die ich hier verwendet habe, steht hinter dem #! in der ersten Zeile.
    Wenn Du mit möglichst vielen Plattformen klarkommen willst, schau Dir Sprachen wie Perl an (makeglossaries des glossaries-Pakets basiert da glaub ich auch drauf).
    Zitat Zitat von rafael Beitrag anzeigen
    und Editor oder?
    Mir ist keine Abhängigkeit irgend eines Editors von irgend einer Skriptsprache (bzw. wenn denn ein Editor von irgend einer Skriptsprache abhängig ist, besitzt Du diese Skriptsprache bereits, so fraglicher Editor bei Dir läuft) -- oder umgekehrt -- bekannt. Die meisten Skriptsprachen nutzen schlicht _Text_ und können mit jedem x-beliebigen Texteditor erstellt/verändert werden.

    BTW: und ist es wirklich eine so gute Idee, so viele [1] Kopien Deiner mypackage.sty in ebenso vielen Projektordnern zu halten?

    [1] `viele', weil ich davon ausgehe, daß Du das nicht nur für zwei, drei Projekte haben willst -- da wäre ein entsprechender Kopierbefehl imho noch völlig ausreichend.

    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
  •