[PYTHON] LaTeX Automatisieren Sie die Platzierung Ihrer eigenen Stildateien

<! - Automatische Platzierung von LaTeX-eigenen Stildateien->

Überblick

Benutzerdefinierte LaTeX-Stildateien bereichern Ihr Leben. Es wird gesagt, dass Sie ein wenig glücklich sein können, wenn Sie die Arbeit des Platzierens von Stildateien in einem Verzeichnis automatisieren, das sich in Ihrem Pfad befindet.

Annahme

Betrachten Sie die folgende Verzeichnisstruktur.

styles
|-- hoge -- hoge.sty
|-- piyo -- piyo.sty

Dateien im LaTeX-Stil werden in dem gleichnamigen Verzeichnis gespeichert. Es ist eine gute Idee, README etc. in das Verzeichnis zu stellen.

Implementierung

Erstellen Sie zunächst eine Einstellungsdatei util.json in Stilen.

utilize.json


{
    "from": [
        "hoge",
        "piyo"
    ],
    "to": "/home/fuga/texmf/tex/latex"
}

from ist eine Liste von Stilnamen und to ist der Speicherort der Stildatei. Erstellen Sie als Nächstes die Datei util.py auch in Stilen.

utilize.py


#!/usr/bin/env python
# -*- coding: utf-8 -*-

import os
import sys
import subprocess
import json

full_this_dirname = os.path.dirname(os.path.abspath(__file__))
config_file = "utilize.json"

def copy(pkgname, to_dirname):
    u"""
Eine Funktion, die ein bestimmtes Paket in ein Verzeichnis kopiert
    """
    #Verzeichniskopie
    #Vollständiger Pfad des Originalpakets
    full_org_pkgpath = os.path.join(full_this_dirname, pkgname)
    #Paket erstellen
    subprocess.call('sh -c "sudo cp -r {pkgname} {to_dirname}"'.format(pkgname=full_org_pkgpath, to_dirname=to_dirname), shell=True)

def main():
    with open(config_file) as fin:
        config = json.load(fin)
    for pkgname in config["from"]:
        copy(pkgname, config["to"])
    subprocess.call('sh -c "sudo mktexlsr"', shell=True)

if __name__ == "__main__":
    main()

Wenn Sie util.py direkt ausführen, wird die Einstellungsdatei gelesen, das Verzeichnis kopiert und mktexlsr. Wenn Sie es danach mit chmod u + x util.py ausführbar machen, können Sie die Style-Datei mit. / Util.py verwenden. Glück.

Recommended Posts

LaTeX Automatisieren Sie die Platzierung Ihrer eigenen Stildateien
Ändern Sie den Stil von matplotlib
Die Geschichte der Anzeige von Mediendateien in Django
Extrahieren Sie die Tabelle der Bilddateien mit OneDrive & Python
Kennen Sie den Speicherort der Python-Klassendefinitionsdatei.
#Wir automatisieren die Datenaggregation von Wiire! Teil 1
Verstehen Sie die Attribute von Linux-Dateien (Befehl ls -l)