wiki:plugin:parserarray
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| wiki:plugin:parserarray [2025/01/17 14:27] – [CamelCase для «ДокуВики»] vladpolskiy | wiki:plugin:parserarray [2025/01/17 14:46] (текущий) – vladpolskiy | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | ======CamelCase | + | ======Parserarray |
| - | {{: | + | {{: |
| - | Этот плагин был разработан | + | Этот плагин был разработан |
| - | * **Релиз: | + | * **Релиз: |
| - | * **Правка: | + | * **Правка: |
| - | * **Репозиторий: | + | * **Репозиторий: |
| - | * **Совместимость с «Докувики»: | + | * **Совместимость с «Докувики»: |
| + | |||
| + | Этот плагин экспорта является инструментом разработки и полезен только для понимания[[wiki: | ||
| =====Совместимость===== | =====Совместимость===== | ||
| Строка 20: | Строка 22: | ||
| =====Примеры/ | =====Примеры/ | ||
| - | Этот плагин заменяет текущие обработчики DokuWiki для разметки CamelCase. Он создаст ссылку на страницу с подчеркиваниями между словами CamelCase. | ||
| - | |||
| - | например | ||
| - | |||
| - | <code php index.php> | ||
| - | CamelCase => camel_case | ||
| - | </ | ||
| - | |||
| - | Стандартное поведение DokuWiki заключается в создании ссылки на страницу с CamelCase, преобразованным в нижний регистр (например, | ||
| - | |||
| - | =====Синтаксис===== | ||
| - | |||
| - | [[wiki: | ||
| - | |||
| - | =====Подробности===== | ||
| - | ====PHP-источник==== | ||
| - | |||
| - | **'' | ||
| - | |||
| - | <code php> | ||
| - | <?php | ||
| - | /** | ||
| - | * CamelCase Plugin: replaces DokuWiki' | ||
| - | | ||
| - | * @license | ||
| - | * @author | ||
| - | */ | ||
| - | |||
| - | if(!defined(' | ||
| - | |||
| - | /** | ||
| - | * All DokuWiki plugins to extend the parser/ | ||
| - | * need to inherit from this class | ||
| - | */ | ||
| - | class syntax_plugin_camelcase extends DokuWiki_Syntax_Plugin { | ||
| - | |||
| - | | ||
| - | /** | ||
| - | * return some info | ||
| - | */ | ||
| - | function getInfo(){ | ||
| - | return array( | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ); | ||
| - | } | ||
| - | |||
| - | /** | ||
| - | * Syntax Type | ||
| - | * | ||
| - | * Needs to return one of the mode types defined in $PARSER_MODES in parser.php | ||
| - | */ | ||
| - | function getType(){ | ||
| - | return(' | ||
| - | } | ||
| - | | ||
| - | function connectTo($mode) { | ||
| - | $this-> | ||
| - | ' | ||
| - | ); | ||
| - | } | ||
| - | | ||
| - | function getSort() { | ||
| - | return 275; // needs to be lower than 290 | ||
| - | } | ||
| - | | + | Этот плагин экспортирует/показывает массив инструкций парсера для текущей страницы. Полезно для тех, кто хочет понять, как работает парсер DokuWiki, и читает |
| - | * Handler to prepare matched data for the rendering process | + | |
| - | */ | + | |
| - | function handle($match, $state, $pos, Doku_Handler $handler){ | + | |
| - | + | ||
| - | preg_match_all('/ | + | |
| - | $link = implode(' | + | |
| - | return array($link, | + | |
| - | } | + | |
| - | /** | + | Используется '' |
| - | * Handles the actual output creation. | + | |
| - | */ | + | |
| - | function render($format, | + | |
| - | $renderer-> | + | |
| - | } | + | |
| - | + | ||
| - | } | + | |
| - | //Setup VIM: ex: et ts=4 enc=utf-8 : | + | |
| - | </ | + | |
| =====Файл для загрузки===== | =====Файл для загрузки===== | ||
| - | {{ : | + | {{ : |
| =====Лицензия===== | =====Лицензия===== | ||
| - | * **Author:** [[chris@jalakai.co.uk|Christopher Smith]] | + | * **Author:** [[sandell.hakan@gmail.com|Håkan Sandell]] |
| * **License: | * **License: | ||
| * **Donate:** [[https:// | * **Donate:** [[https:// | ||
| - | Это не обязательно, | + | Это не обязательно, |
| + | * downloadurl: | ||
| + | * bugtracker : https:// | ||
| + | * sourcerepo : https:// | ||
wiki/plugin/parserarray.1737113242.txt.gz · Последнее изменение: — vladpolskiy
