minicli/command-stencil

A Minicli command to generate files based on minicli/stencil templates

0.1.0 2022-06-20 17:49 UTC

This package is auto-updated.

Last update: 2024-03-21 13:57:50 UTC


README

Command implementation of minicli/stencil. This command will generate files based on Stencil templates. It is useful for creating boilerplate files such as new classes and other documents that should follow a certain structure or template.

Usage

First, import this command with Composer:

composer require minicli/command-stencil

Then, edit your app's config to include @minicli/command-help within your app_path definitions. You'll also need to set the stencilDir config variable and point it to your Stencils directory. For instance:

$app = new App([
    'app_path' => [
            __DIR__ . '/app/Command',
            '@minicli/command-stencil'
        ],
    'stencilDir' => __DIR__ . '/stencils',
    'debug' => true
]);

You should now be able to run the ./minicli stencil command.

Testing templates

You can copy the example template from vendor/minicli/command-stencil/stencils/example.tpl to test it out:

cp ./vendor/minicli/command-stencil/stencils/example.tpl ./stencils

Then, run ./minicli stencil with the template set to example, providing the expected variable name:

./minicli stencil template=example name=YourName
Hello YourName!% 

Output content to a file

Include an output=full-path-to-file to save the parsed content to a file:

./minicli stencil template=example name=YourName output=test.txt
Hello YourName!% 

You should see a file named test.txt with the same output of the command. To suppress the command output, set debug to false in the app's configuration.