[PYTHON] LaTeX Automatisez le placement de vos propres fichiers de style

<! - Placement automatique des fichiers de style propres à LaTeX->

Aperçu

Les fichiers de style définis par l'utilisateur LaTeX enrichissent votre vie. On dit que vous serez peut-être un peu heureux si vous automatisez le travail de placement des fichiers de style dans un répertoire qui se trouve sur votre chemin.

supposition

Considérez la structure de répertoires suivante.

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

Les fichiers de style LaTeX sont stockés dans le répertoire avec le même nom comme celui-ci. C'est une bonne idée de mettre README etc. dans le répertoire.

la mise en oeuvre

Commencez par créer un fichier de paramètres utilize.json dans les styles.

utilize.json


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

from est une liste de noms de style et to est l'emplacement du fichier de style. Ensuite, créez également utility.py dans les styles.

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"""
Une fonction qui copie un package spécifique dans un répertoire
    """
    #Copie du répertoire
    #Chemin complet du package d'origine
    full_org_pkgpath = os.path.join(full_this_dirname, pkgname)
    #Créer un package
    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()

Si vous exécutez directement utilize.py, il lira le fichier de paramètres, copiera le répertoire et mktexlsr. Après cela, si vous le rendez exécutable avec chmod u + x utilize.py, vous pouvez utiliser le fichier de style avec. / Utilize.py. bonheur.

Recommended Posts

LaTeX Automatisez le placement de vos propres fichiers de style
Changer le style de matplotlib
L'histoire de l'affichage des fichiers multimédias dans Django
Extraire le tableau des fichiers image avec OneDrive et Python
Connaissez l'emplacement du fichier de définition de classe Python.
#Nous automatiserons l'agrégation des données de Wiire! partie 1
Comprendre les attributs des fichiers Linux (commande ls -l)