用于python的base16配色方案生成器

pybase16-builder的Python项目详细描述


https://travis-ci.org/InspectorMustache/base16-builder-python.svg?branch=master

Base16生成器python

最后,一个base16构建器不需要我安装任何新的东西。

安装

测试是使用Python3.4以上的版本完成的。旧版本也可以工作,但Python2不行。

pip install pybase16-builder

如果您不想让您的计算机变得杂乱无章,只需使用一次您就可以克隆这个存储库并使用提供的pybase16.py文件

使用量

有三种操作模式:

pybase16 update
pybase16 build
pybase16 inject

基本用法

如果只想构建所有base16配色方案,然后选择所需的配色方案,只需运行:

pybase16 update
pybase16 build

完成此过程后,可以在当前工作目录中名为output的文件夹中找到所有配色方案。

有关各个命令的更详细说明,请继续阅读。

更新

将所有base16方案和模板下载到当前工作目录。 默认情况下,还会更新源文件,即指向方案和模板存储库的文件(请参见builder.md)。如果要使用这些文件的自己版本(例如,排除特定存储库),可以使用-c/--custom选项阻止生成器更新源文件。

构建

为所有方案和模板生成base16配色方案这要求由更新操作创建的目录结构和文件存在于工作目录中。此操作接受三个参数:

  • -s/--scheme将建筑限制为特定方案

    可以指定多次。每个参数必须与方案匹配。通配符可以使用,但必须正确转义,这样它们就不会被shell解释。

  • -t/--template将生成限制为特定模板

    可以指定多次。每个参数都必须对应于模板目录中的文件夹名。

  • -o/--output指定将放置生成的配色方案的路径

    如果未指定此选项,则将在当前工作目录中创建并使用“输出”文件夹。

示例:

pybase16 build -t dunst -s atelier-heath-light -o /tmp/output

注射

此操作提供了一种更简单的方法,可以将特定的配色方案快速插入到一个或多个配置文件中。它接受两个参数:

  • -s/--scheme指定要注入的方案

    指应插入的方案。您可以使用通配符和与“更新应用”相同的限制。匹配多个方案的模式将导致错误。

  • -f/--file指定要将方案插入的文件

    可以指定多次。必须将每个参数指定为具有正确注入标记的配置文件的路径(请参见下文)。

您需要准备配置文件,以便脚本知道在哪里插入配色方案。这是通过在文件中包含两行来完成的

# %%base16_template: TEMPLATE_NAME##SUBTEMPLATE_NAME %%

Everything in-between these two lines will be replaced with the colorscheme.

# %%base16_template_end%%

这两行都可以在前两个百分比符号之前显示任意字符这是为了适应不同的评论风格。然而,这两行代码都需要完全按照上面的演示结束。例外是“模板名”和“子模板名”。将template_name替换为要插入的模板的名称,例如“gnome terminal”。如上所述,这必须对应于模板目录中的文件夹将SUBTEMPLATE_NAME替换为在模板的config.yaml文件的顶层定义的子模板的名称(有关详细信息,请参见file.md),例如“default-256”如果省略子模板名称(但不要省略“35;”,则假定为“默认”。

以这种方式准备的i3配置文件的示例可以找到here

通过指向带有-s选项的yaml文件,提供要注入的配色方案的路径。对要将方案注入的每个文件使用-f选项。

例如,我使用以下命令在所有支持该命令的应用程序中全局更改颜色方案:

pybase16 inject -s schemes/default/ocean.yaml -f ~/.gtkrc-2.0.mine -f ~/.config/dunst/dunstrc -f ~/.config/i3/config -f ~/.config/termite/config -f ~/.config/zathura/zathurarc

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

推荐PyPI第三方库


热门话题
如何使用Java中的扫描仪读取文本文件中的特定字符?   java如果我们在hibernate中开始事务但不提交它,会发生什么?   Azure CosmosDB Java Springboot中的无服务器帐户不支持spring boot设置提供吞吐量或容器自动导航   附加到新对象的Java注释?   java如何将自定义文本视图添加到。在Kotlin中添加通知操作   java Shibboleth添加_OpenSAMLcookies,导致HTTP头大小>8k   分布式传感器数据(~40Hz)的高效Java观测器设计   java如何在while循环外声明数组,但在while循环中初始化它?   用@XmlElementRef注释的java元素没有显示在JAXB编组字符串中?   java替换二维数组的值   java如何在任务栏上创建Windows7加载栏   java如何在组件注释bean中使用会话或RequestScope bean?   java netbeans freermarker插件错误:在实现版本中请求netbeans桥的插件Lexer   java谷歌地图方向。加载失败,返回服务器错误   java当我试图递归地计算两个值之间的整数之和时,为什么结果返回一个奇怪的值?   java如何通过html文件的用户获取运行时输入,以使用Jsoup进行解析?