public function getOptionParser(): ConsoleOptionParser
    {
        $parser = parent::getOptionParser();

        $updateFromCatalogParser = parent::getOptionParser();
        $updateFromCatalogParser->addOption('domain', [
            'default' => 'default',
            'help' => 'The domain to use',
        ]);
        $updateFromCatalogParser->addOption('overwrite', [
            'default' => false,
            'help' => 'If set, there will be no interactive question whether to continue.',
            'boolean' => true,
        ]);
        $updateFromCatalogParser->addOption('strip-references', [
            'boolean' => true,
            'help' => 'Whether to remove file usage references from resulting po and mo files.',
        ]);

        return $parser
            ->setDescription([
                'CkTools Shell',
                '',
                'Utilities',
            ])
            ->addSubcommand('updateFromCatalog', [
                'help' => 'Updates the PO file from the given catalog',
                'parser' => $updateFromCatalogParser,
            ]);
    }