xref: /plugin/dev/skel/cli.php (revision fe060d0d4c4c42403a614910f1d8cdcd8d360b96)
1<?php
2
3use splitbrain\phpcli\Options;
4
5/**
6 * DokuWiki Plugin @@PLUGIN_NAME@@ (CLI Component)
7 *
8 * @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html
9 * @author  @@AUTHOR_NAME@@ <@@AUTHOR_MAIL@@>
10 */
11class @@PLUGIN_COMPONENT_NAME@@ extends \dokuwiki\Extension\CLIPlugin
12{
13    /** @inheritDoc */
14    protected function setup(Options $options)
15    {
16        $options->setHelp('FIXME: What does this CLI do?');
17
18        // main arguments
19        $options->registerArgument('FIXME:argumentName', 'FIXME:argument description', 'FIXME:required? true|false');
20
21        // options
22        // $options->registerOption(
23        //     'FIXME:longOptionName',
24        //     'FIXME: helptext for option',
25        //     'FIXME: optional shortkey',
26        //     'FIXME:needs argument? true|false',
27        //     'FIXME:if applies only to subcommand: subcommandName'
28        // );
29
30        // sub-commands and their arguments
31        // $options->registerCommand('FIXME:subcommandName', 'FIXME:subcommand description');
32        // $options->registerArgument(
33        //     'FIXME:subcommandArgumentName',
34        //     'FIXME:subcommand-argument description',
35        //     'FIXME:required? true|false',
36        //     'FIXME:subcommandName'
37        // );
38    }
39
40    /** @inheritDoc */
41    protected function main(Options $options)
42    {
43        // $command = $options->getCmd()
44        // $arguments = $options->getArgs()
45    }
46}
47