rah/mtxpc

Textpattern CMS 插件安装器编译器

0.9.1 2022-04-16 15:06 UTC

This package is auto-updated.

Last update: 2024-09-18 12:54:28 UTC


README

Coverage Quality Gate Status

mtxpcTextpattern CMS 插件源代码编译成安装包。支持多文件结构和 JSON 清单文件。

安装

使用 Composer

$ composer require rah/mtxpc --dev

用法

作为库

use Rah\Mtxpc\Compiler;

$compiler = new Compiler();

$plugin = $compiler->compile('path/to/plugin/source/directory');

echo $plugin->getInstaller();

通过命令行

$ vendor/bin/mtxpc [[-h|--help][-c|--compress][--outdir=<path>]] <file>

示例

$ vendor/bin/mtxpc path/to/abc_plugin > abc_plugin_v0.1.0.txt
$ vendor/bin/mtxpc -c path/to/abc_plugin > abc_plugin_v0.1.0_zip.txt
$ vendor/bin/mtxpc -c --outdir=dist/ .

示例插件模板

查看 abc_plugin 存储库以获取示例模板。

GitHub Action

提供 GitHub action,可以将插件编译集成到自动化构建链中。

插件模板

与 Textpattern 的标准插件模板相比,主要区别在于插件的结构。Textpattern 的官方模板将所有内容放在一个文件中,而 mtxpc 将源代码分割成独立的文件;翻译、README、清单和源代码。

翻译

Textpacks,Textpattern 的插件本地化文件,可以存储在一个文件中,也可以作为独立的文件,每个文件存储不同的语言。编译器会从名为 textpacks 的目录中搜索 .textpack 文件。

Textpattern 提供了一种设置默认语言的方式,当插件没有包含用户的语言时,该默认语言用作后备。默认语言的选择基于 #@language 关键字,或者没有。未定义语言的 Textpack 文件被视为默认后备。比较 abc_plugin 的 en-gb.texpackfi-fi.textpack 文件。没有定义语言代码的 en-gb 被设置为默认值。

清单

清单文件 manifest.json 包含所有插件元数据。这是插件包含的其他内容,包括插件的 版本 号、作者url、特殊 标志类型 和推荐加载 顺序

帮助文件

清单文件也可以用于指定帮助文件的位置。默认情况下,期望帮助文件命名为 help,并带有任何扩展名,但可以通过文件选项选择不同的位置。

{
    "help": {
        "file": ["./README.textile"]
    }
}

在帮助文件中可以使用 Textile 标记。如果帮助文件的文件名以 .textile 扩展名结尾,或者文件内容以 h1. 标签开头,则该文件被视为包含 Textile 标记。

开发

查看 CONTRIBUTING.md