wiki:plugin:note
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| wiki:plugin:note [2025/01/13 15:28] – [Файл для загрузки] vladpolskiy | wiki:plugin:note [2025/02/08 19:29] (текущий) – vladpolskiy | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | ======Note для «ДокуВики»====== | + | ======Note для «ДокуВики»====== |
| - | {{:wiki:plugin:dwplugin.png? | + | ---- plugin |
| + | description: Этот плагин позволяет вам создавать на страницах | ||
| + | author | ||
| + | email : contrib@anael.eu | ||
| + | type : syntax | ||
| + | lastupdate : 2024-04-15 | ||
| + | compatible : Hogfather, Igor, Jack Jackrum, Kaos | ||
| + | depends | ||
| + | conflicts | ||
| + | similar | ||
| + | tags : boxes, icons, toolbar | ||
| - | + | downloadurl: https:// | |
| - | * **Релиз:** 2024-04-15. | + | bugtracker |
| - | * **Репозиторий:**https:// | + | sourcerepo |
| - | * **Совместимость с «Докувики»:** 06.02.2024 «Каос» | + | donationurl : |
| - | + | ||
| - | =====Совместимость===== | + | screenshot_img : https:// |
| - | * 2024-02-06 " | + | ---- |
| - | * 2023-04-04 "Jack Jackrum" | + | |
| - | * 2022-07-31 " | + | |
| - | * 2020-07-29 " | + | |
| ===Примечания=== | ===Примечания=== | ||
| Строка 46: | Строка 53: | ||
| </ | </ | ||
| {{: | {{: | ||
| + | \\ | ||
| Вы можете использовать ключевые слова примечаний importantи warning. tipИли некоторые французские синонимы: | Вы можете использовать ключевые слова примечаний importantи warning. tipИли некоторые французские синонимы: | ||
| ===== Ограничения ===== | ===== Ограничения ===== | ||
| Строка 65: | Строка 73: | ||
| </ | </ | ||
| + | =====Модификация===== | ||
| + | Основной файл внешнего вида плагина, | ||
| + | Отредактированно: | ||
| + | * Количество заметок увеличенно до 9 шт. | ||
| + | * Убраны иконки. | ||
| + | * Добавленна цветовая полоса слева. | ||
| + | * Уменьшино скругление углов. | ||
| + | * Увеличена ширена на длину страницы. | ||
| + | <code php style.php> | ||
| + | .plugin_note { | ||
| + | margin: 2em auto; / | ||
| + | max-width: 100%; /* Максимальная ширина страницы в процентах */ | ||
| + | min-height: 10px; /* Минимальная высота */ | ||
| + | text-align: justify; / | ||
| + | vertical-align: | ||
| + | border-collapse: | ||
| + | padding: 12px 17px 12px 27px; / | ||
| + | / | ||
| + | background-repeat: | ||
| + | Устанавливает одно фоновое изображение)*/ | ||
| + | -moz-border-radius: | ||
| + | -khtml-border-radius: | ||
| + | border-radius: | ||
| + | color: black; | ||
| + | overflow: hidden; | ||
| + | } | ||
| + | |||
| + | .plugin_note .li { | ||
| + | color: black !important; | ||
| + | } | ||
| + | |||
| + | .noteclassic { | ||
| + | / | ||
| + | / | ||
| + | background: linear-gradient( | ||
| + | to right, | ||
| + | #708090 0%, | ||
| + | #708090 1%, | ||
| + | #dcdcdc 1%, | ||
| + | #dcdcdc 100% | ||
| + | ); | ||
| + | |||
| + | } | ||
| + | |||
| + | .noteblue { | ||
| + | / | ||
| + | / | ||
| + | background: linear-gradient( | ||
| + | to right, | ||
| + | blue 0%, | ||
| + | blue 1%, | ||
| + | #eeeeff 1%, | ||
| + | #eeeeff 100% | ||
| + | ); | ||
| + | } | ||
| + | |||
| + | .noteyellow { | ||
| + | / | ||
| + | / | ||
| + | background: linear-gradient( | ||
| + | to right, | ||
| + | #ffff00 0%, | ||
| + | #ffff00 1%, | ||
| + | #ffffcc 1%, | ||
| + | #ffffcc 100% | ||
| + | ); | ||
| + | } | ||
| + | |||
| + | .notegreen { | ||
| + | / | ||
| + | / | ||
| + | background: linear-gradient( | ||
| + | to right, | ||
| + | #008000 0%, | ||
| + | #008000 1%, | ||
| + | #ddffdd 1%, | ||
| + | #ddffdd 100% | ||
| + | ); | ||
| + | } | ||
| + | |||
| + | .notered { | ||
| + | / | ||
| + | / | ||
| + | background: linear-gradient( | ||
| + | to right, | ||
| + | #ff0000 0%, | ||
| + | #ff0000 1%, | ||
| + | #ffdddd 1%, | ||
| + | #ffdddd 100% | ||
| + | ); | ||
| + | } | ||
| + | |||
| + | .noteorange { | ||
| + | / | ||
| + | / | ||
| + | background: linear-gradient( | ||
| + | to right, | ||
| + | #ff8c00 0%, | ||
| + | #ff8c00 1%, | ||
| + | #ffe2bd 1%, | ||
| + | #ffe2bd 100% | ||
| + | ); | ||
| + | } | ||
| + | |||
| + | .notepurple { | ||
| + | / | ||
| + | / | ||
| + | background: linear-gradient( | ||
| + | to right, | ||
| + | #800080 0%, | ||
| + | #800080 1%, | ||
| + | #ebc7eb 1%, | ||
| + | #ebc7eb 100% | ||
| + | ); | ||
| + | } | ||
| + | |||
| + | .notebrown { | ||
| + | / | ||
| + | / | ||
| + | background: linear-gradient( | ||
| + | to right, | ||
| + | #805c38 0%, | ||
| + | #805c38 1%, | ||
| + | #f0d698 1%, | ||
| + | #f0d698 100% | ||
| + | ); | ||
| + | } | ||
| + | |||
| + | .noteblack { | ||
| + | / | ||
| + | / | ||
| + | background: linear-gradient( | ||
| + | to right, | ||
| + | black 0%, | ||
| + | black 1%, | ||
| + | #d3d3d3 1%, | ||
| + | #d3d3d3 100% | ||
| + | ); | ||
| + | } | ||
| + | |||
| + | |||
| + | / | ||
| + | / | ||
| + | / | ||
| + | / | ||
| + | / | ||
| + | / | ||
| + | / | ||
| + | / | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | Основной файл меню выбора заметок | ||
| + | Отредактированно: | ||
| + | * Количество кнопок заметок увеличенно до 9 шт. | ||
| + | * Заменены иконки кнопок по цветовой схеме. | ||
| + | |||
| + | <code php action.php> | ||
| + | <?php | ||
| + | /** | ||
| + | * @license | ||
| + | */ | ||
| + | |||
| + | class action_plugin_note extends DokuWiki_Action_Plugin | ||
| + | { | ||
| + | |||
| + | /** | ||
| + | * register the eventhandlers | ||
| + | * | ||
| + | * @author Andreas Gohr < | ||
| + | */ | ||
| + | function register(Doku_Event_Handler $controller) | ||
| + | { | ||
| + | $controller-> | ||
| + | } | ||
| + | |||
| + | function handle_toolbar(& | ||
| + | { | ||
| + | $event-> | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | array( | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ), | ||
| + | array( | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ), | ||
| + | array( | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ), | ||
| + | array( | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ), | ||
| + | array( | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ), | ||
| + | array( | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ), | ||
| + | array( | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ), | ||
| + | array( | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ), | ||
| + | array( | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ), | ||
| + | ) | ||
| + | ); | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | {{: | ||
| + | |||
| + | Основной файл исполняемого кода, это syntax.php. | ||
| + | Отредактированно (стр.40-50): | ||
| + | * Количество заметок увеличенно до 9 шт. | ||
| + | * Заменены названия заметок по цветовой схеме. | ||
| + | |||
| + | <code php syntax.php> | ||
| + | <?php | ||
| + | /** | ||
| + | * Add Note capability to dokuwiki | ||
| + | * | ||
| + | * < | ||
| + | * <note classic> | ||
| + | * <note important> | ||
| + | * <note warning> | ||
| + | * <note tip>This is a tip</ | ||
| + | * | ||
| + | * by Olivier Cortès < | ||
| + | * under the terms of the GNU GPL v2. | ||
| + | * | ||
| + | * Originaly derived from the work of : | ||
| + | * Stephane Chamberland < | ||
| + | * Carl-Christian Salvesen < | ||
| + | * | ||
| + | * Contributions by Eric Hameleers <alien [at] slackware [dot] com> : | ||
| + | | ||
| + | | ||
| + | | ||
| + | * | ||
| + | * Contributed by Christopher Smith <chris [at] jalakai [dot] co [dot] uk> | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | * | ||
| + | * Contributed by Aurélien Bompard < | ||
| + | | ||
| + | * | ||
| + | * @license | ||
| + | * @author | ||
| + | */ | ||
| + | |||
| + | class syntax_plugin_note extends DokuWiki_Syntax_Plugin | ||
| + | { | ||
| + | |||
| + | protected $notes = array( | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ); | ||
| + | |||
| + | protected $default = ' | ||
| + | |||
| + | function getType() | ||
| + | { | ||
| + | return ' | ||
| + | } | ||
| + | |||
| + | function getPType() | ||
| + | { | ||
| + | return ' | ||
| + | } | ||
| + | |||
| + | function getAllowedTypes() | ||
| + | { | ||
| + | return array(' | ||
| + | } | ||
| + | |||
| + | function getSort() | ||
| + | { | ||
| + | return 195; | ||
| + | } | ||
| + | |||
| + | // override default accepts() method to allow nesting | ||
| + | // - ie, to get the plugin accepts its own entry syntax | ||
| + | function accepts($mode) | ||
| + | { | ||
| + | if ($mode == substr(get_class($this), | ||
| + | return true; | ||
| + | } | ||
| + | return parent:: | ||
| + | } | ||
| + | |||
| + | function connectTo($mode) | ||
| + | { | ||
| + | $this-> | ||
| + | } | ||
| + | |||
| + | function postConnect() | ||
| + | { | ||
| + | $this-> | ||
| + | } | ||
| + | |||
| + | function handle($match, | ||
| + | { | ||
| + | switch ($state) { | ||
| + | case DOKU_LEXER_ENTER: | ||
| + | $note = strtolower(trim(substr($match, | ||
| + | |||
| + | foreach ($this-> | ||
| + | if (in_array($note, | ||
| + | return array($state, | ||
| + | } | ||
| + | } | ||
| + | return array($state, | ||
| + | |||
| + | case DOKU_LEXER_UNMATCHED: | ||
| + | return array($state, | ||
| + | |||
| + | default: | ||
| + | return array($state, | ||
| + | } | ||
| + | } | ||
| + | |||
| + | function render($format, | ||
| + | { | ||
| + | if ($format == ' | ||
| + | list($state, | ||
| + | |||
| + | switch ($state) { | ||
| + | case DOKU_LEXER_ENTER : | ||
| + | $renderer-> | ||
| + | break; | ||
| + | |||
| + | case DOKU_LEXER_UNMATCHED : | ||
| + | $renderer-> | ||
| + | break; | ||
| + | |||
| + | case DOKU_LEXER_EXIT : | ||
| + | $renderer-> | ||
| + | break; | ||
| + | } | ||
| + | return true; | ||
| + | } elseif ($format == ' | ||
| + | list($state, | ||
| + | |||
| + | $this-> | ||
| + | return true; | ||
| + | } | ||
| + | |||
| + | // unsupported $mode | ||
| + | return false; | ||
| + | } | ||
| + | |||
| + | protected function render_odt($renderer, | ||
| + | { | ||
| + | static $first = true; | ||
| + | static $new; | ||
| + | |||
| + | if ($first == true) { | ||
| + | $new = method_exists($renderer, | ||
| + | $first = false; | ||
| + | } | ||
| + | |||
| + | if (!$new) { | ||
| + | // Render with older ODT plugin version. | ||
| + | $this-> | ||
| + | } else { | ||
| + | // Render with newer ODT plugin version. | ||
| + | $this-> | ||
| + | } | ||
| + | } | ||
| + | |||
| + | protected function render_odt_old($renderer, | ||
| + | { | ||
| + | switch ($state) { | ||
| + | case DOKU_LEXER_ENTER: | ||
| + | $type = substr($data, | ||
| + | if ($type == ' | ||
| + | // The icon for classic notes is named note.png | ||
| + | $type = ' | ||
| + | } | ||
| + | $colors = array(' | ||
| + | |||
| + | // Content | ||
| + | $properties = array(); | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $renderer-> | ||
| + | |||
| + | $properties = array(); | ||
| + | $properties [' | ||
| + | $renderer-> | ||
| + | |||
| + | $properties = array(); | ||
| + | $properties [' | ||
| + | $renderer-> | ||
| + | |||
| + | $renderer-> | ||
| + | |||
| + | $properties = array(); | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $renderer-> | ||
| + | |||
| + | $src = DOKU_PLUGIN . ' | ||
| + | $renderer-> | ||
| + | |||
| + | $renderer-> | ||
| + | |||
| + | $properties = array(); | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $renderer-> | ||
| + | break; | ||
| + | |||
| + | case DOKU_LEXER_UNMATCHED : | ||
| + | $renderer-> | ||
| + | break; | ||
| + | |||
| + | case DOKU_LEXER_EXIT : | ||
| + | $renderer-> | ||
| + | $renderer-> | ||
| + | $renderer-> | ||
| + | $renderer-> | ||
| + | break; | ||
| + | } | ||
| + | } | ||
| + | |||
| + | /** | ||
| + | * ODT rendering for new versions of the ODT plugin. | ||
| + | * | ||
| + | * @param $renderer the renderer to use | ||
| + | * @param $state | ||
| + | * @param $data data from handle() | ||
| + | * @author LarsDW223 | ||
| + | */ | ||
| + | protected function render_odt_new($renderer, | ||
| + | { | ||
| + | switch ($state) { | ||
| + | case DOKU_LEXER_ENTER: | ||
| + | $css_properties = array(); | ||
| + | |||
| + | // Get CSS properties for ODT export. | ||
| + | $renderer-> | ||
| + | |||
| + | // Create Content | ||
| + | // (We only use the CSS parameters that are meaningful for creating the ODT table) | ||
| + | $properties = array(); | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $renderer-> | ||
| + | |||
| + | $properties = array(); | ||
| + | $properties [' | ||
| + | $renderer-> | ||
| + | |||
| + | $properties = array(); | ||
| + | $properties [' | ||
| + | $renderer-> | ||
| + | |||
| + | $renderer-> | ||
| + | |||
| + | $properties = array(); | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $renderer-> | ||
| + | |||
| + | if ($css_properties [' | ||
| + | $renderer-> | ||
| + | } | ||
| + | |||
| + | $renderer-> | ||
| + | |||
| + | $properties = array(); | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $properties [' | ||
| + | $renderer-> | ||
| + | break; | ||
| + | |||
| + | case DOKU_LEXER_UNMATCHED : | ||
| + | $renderer-> | ||
| + | break; | ||
| + | |||
| + | case DOKU_LEXER_EXIT : | ||
| + | $renderer-> | ||
| + | $renderer-> | ||
| + | $renderer-> | ||
| + | $renderer-> | ||
| + | break; | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | Основной файл перевода, | ||
| + | Отредактированно : | ||
| + | * Файл " | ||
| + | * Файл " | ||
| + | * Файл " | ||
| + | * Количество заметок увеличенно до 9 шт. | ||
| + | * Заменены названия заметок по цветовой схеме. | ||
| + | |||
| + | <code php lang.php> | ||
| + | <?php | ||
| + | /** | ||
| + | * English language file | ||
| + | */ | ||
| + | |||
| + | $lang[' | ||
| + | |||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | </ | ||
| + | <code php lang.php> | ||
| + | <?php | ||
| + | /** | ||
| + | * Russian language file | ||
| + | */ | ||
| + | |||
| + | $lang[' | ||
| + | |||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | $lang[' | ||
| + | </ | ||
| + | Пример № 1 отображения ссылок отредактированного плагина в русской локализации | ||
| + | <note blue> | ||
| + | С CSS у вас есть полный контроль над полями. Существуют свойства для установки полей для каждой стороны элемента (сверху, | ||
| + | <note yellow> | ||
| + | С CSS у вас есть полный контроль над полями. Существуют свойства для установки полей для каждой стороны элемента (сверху, | ||
| + | <note green> | ||
| + | С CSS у вас есть полный контроль над полями. Существуют свойства для установки полей для каждой стороны элемента (сверху, | ||
| + | <note red> | ||
| + | С CSS у вас есть полный контроль над полями. Существуют свойства для установки полей для каждой стороны элемента (сверху, | ||
| + | <note orange> | ||
| + | С CSS у вас есть полный контроль над полями. Существуют свойства для установки полей для каждой стороны элемента (сверху, | ||
| + | <note purple> | ||
| + | С CSS у вас есть полный контроль над полями. Существуют свойства для установки полей для каждой стороны элемента (сверху, | ||
| + | <note brown> | ||
| + | С CSS у вас есть полный контроль над полями. Существуют свойства для установки полей для каждой стороны элемента (сверху, | ||
| + | <note black> | ||
| + | С CSS у вас есть полный контроль над полями. Существуют свойства для установки полей для каждой стороны элемента (сверху, | ||
| + | Пример № 2 отображения ссылок отредактированного плагина в русской локализации | ||
| + | <note green> | ||
| + | <note orange> | ||
| + | < | ||
| + | С CSS у вас есть полный контроль над полями. Существуют свойства для установки полей для каждой стороны элемента (сверху, | ||
| + | Пример № 3 отображения ссылок отредактированного плагина в английской локализации | ||
| + | {{: | ||
| + | <note yellow> | ||
| + | <note orange> | ||
| + | <note black> | ||
| + | Ссылка на {{: | ||
| =====Обновление===== | =====Обновление===== | ||
| Для обновления удалите исходную папку lib/ | Для обновления удалите исходную папку lib/ | ||
| =====Файл для загрузки===== | =====Файл для загрузки===== | ||
| - | {{ : | + | * {{ : |
| - | {{ : | + | |
| =====Лицензия===== | =====Лицензия===== | ||
| * **Author:** [[contrib@anael.eu|Anael Mobilia]] | * **Author:** [[contrib@anael.eu|Anael Mobilia]] | ||
wiki/plugin/note.1736771313.txt.gz · Последнее изменение: — vladpolskiy
