当前位置: 首页 > 文档资料 > Dokuwiki 中文教程 >

Dokuwiki 语法插件开发

优质
小牛编辑
130浏览
2023-12-01

Dokuwiki 语法插件开发

对语法标签的匹配采用PHP preg函数进行。

插件类需要实现以下方法:

  • getType() 返回此插件定义的模式类型。比如标签内部是纯文本等。
  • getSort() 返回此插件的优先级。数字越小,优先级越高。比如:需要替换系统的<code>标签。
  • connectTo($mode) 用来向词法分析器Lexer注册模式匹配的正则表达式。
  • postConnect() 当在connectTo()中注册的是起始正则表达式,则需要实现此函数,注册中止正则表达式。
  • handle($match, $state, $pos, Doku_Handler &$handler) 处理匹配出的内容,返回在渲染器中使用的内容。
  • render($mode, Doku_Renderer &$renderer, $data) 渲染内容。

当需要的时候,可以重载以下方法:

  • getPType() 返回生成内容的段落的形式。
  • getAllowedTypes() 返回允许内联的模式。(默认array())
  • accepts($mode) 返回是否允许内联自己的模式。

参考:devel:syntax_plugins devel:parser