<! - Placement automatique des fichiers de style propres à LaTeX->
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.
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.
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