K烤饼用工具

scons-tool-kpsewhich的Python项目详细描述


PyPi package versionTravis CI build statushttps://ci.appveyor.com/api/projects/status/github/ptomulik/scons-tool-kpsewhich?svg=true

此工具为SCons提供与kpswhich实用程序的接口。关键人物 程序是kpathsea库的一部分,而库又是tex live的一部分。 分配。其目的是在TeX directory structure中搜索 (TDS)用于文件,如tex类、样式、bibtex数据库、字体等 更多信息请参见kpathsea manualTeX directory structure(tds)信息。

此工具将新方法附加到scons环境。它没有提供任何 构建器,而是用调用 kpsewhich程序在sconscript读取阶段。这个工具没有 生成任何文件,它被认为是获取文本的扩展 来自外部程序的信息。

安装

为您的项目安装此工具的方法很少。

来自pypi

如果在virtualenv下构建项目,则此方法可能更可取。到 从pypi添加kpsewhich工具,键入(在您的wirtualenv中):

pip install scons-tool-loader scons-tool-kpsewhich

或者,如果您的项目使用pipenv

pipenv install --dev scons-tool-loader scons-tool-kpsewhich

或者,您可以将其添加到您的Pipfile

[dev-packages]
scons-tool-loader = "*"
scons-tool-kpsewhich = "*"

该工具将作为命名空间包^{tt3}安装$ 在项目的虚拟环境中。您可以进一步使用scons-tool-loader 加载工具。

作为git子模块

  1. 创建新的git存储库:

    mkdir /tmp/prj &&cd /tmp/prj
    touch README.rst
    git init
    
  2. scons-tool-kpsewhich作为子模块添加:

    git submodule add git://github.com/ptomulik/scons-tool-kpsewhich.git site_scons/site_tools/kpsewhich
    
  3. 对于python 2.x,在site_tools目录中创建__init__.py

    touch site_scons/site_tools/__init__.py
    

    这将允许直接导入site_tools.kpsewhich(这可能是其他工具所必需的)。

用法示例

查找由latex

使用的文件article.clsamsmath.sty
env=Environment(tools=['tex','kpsewhich'])files=env.KPSFindFiles(['article.cls','amsmath.sty'],progname='$LATEX')

查找TDS中出现的所有^{TT10}$文件:

env=Environment(tools=['kpsewhich'])files=env.KPSFindAllFiles('unicode.sty')

其他函数(直接对应于kpsewhich函数选项):

texmf=env.KPSExpandBraces('a{b,c}d')# kpsewhich -expand-braces 'a{b,c}d'texmf=env.KPSExpandPath('$TEXMF')# kpsewhich -expand-path '$TEXMF'texmf=env.KPSExpandVar('$TEXMF')# kpsewhich -expand-var '$TEXMF'texpath=env.KPSShowPath('tex')# kpsewhich -show-path 'tex'home=env.KPSVarValue('TEXMFHOME')# kpsewhich -var-value 'TEXMFHOME'

构造变量

以下构造变量可用于配置kpsewhich 工具它们也可以作为KPSXxx()方法的关键字参数提供。

VariableDescription
^{tt14}$the ^{tt1}$ executable
^{tt16}$additional flags to ^{tt1}$
^{tt18}$(re)define variables for ^{tt1}$

KPSVARIABLES必须是形式为{ NAME : VALUE }的词典, 例如:

KPSVARIABLES={"TEXMFHOME":"/home/ptomulik/texmf"}

参数

一些KPSXxx()方法接受这些参数。所有方法都接受 progname。所有其他参数都被KPSFindFilesKPSFindAllFiles

VariableDescription
^{tt26}$corresponds to ^{tt27}$ flag,
^{tt28}$corresponds to ^{tt29}$ flag,
^{tt30}$corresponds to ^{tt31}$ flag
^{tt23}$corresponds to ^{tt33}$ flag
^{tt34}$corresponds to ^{tt35}$ flag

许可证

版权所有(c)2013-2018 Pawel Tomulik

兹免费准许任何人取得副本 本软件和相关文档文件(“软件”)的 在软件中不受限制,包括但不限于 使用、复制、修改、合并、发布、分发、再授权和/或出售 软件的副本,并允许软件的用户 在满足以下条件的情况下,可以这样做:

上述版权公告及本许可公告须包括在 软件的拷贝或大部分。

本软件按“原样”提供,无任何形式的保证,明示或 默示的,包括但不限于适销性保证, 适合特定目的和不侵权。在任何情况下 作者或版权所有者应对任何索赔、损害或其他 责任,无论是在合同诉讼、侵权诉讼或其他诉讼中, 不属于或与本软件有关,或使用或与本软件的其他交易有关。 软件

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java ParsePushReceiver参数   java如何从设备读取完整数据?   java将java_设置为home,但忽略错误   java如何从歌曲中对专辑进行排序?   java libnaude+windows 10 x64+Eclipse   java如何将maven目标更改为如图所示的想法中的quickicon?   java swing布局中心面板,可滚动显示多个窗口窗格   使用MOSQUITO代理的mqtt中的java SSL   java如何通过属性值获取XML字符串   java在服务器每次启动时停止GWT编译   java如何让javac搜索类路径的子目录?   可以比较java中的两个不同类吗?   JAVAAndroid活动内部类中的lang.NoClassDefFoundError   java HttpServletRequest获取请求头参数块   C++socket与java客户端的连接   java如何在Apache commons http客户端上使用SSL客户端证书   使用预编译正则表达式模式提高java速度   JavaRhino将两个已编译脚本合并为一个脚本