在clld应用程序中渲染CLDF markdown。
项目描述
clld-markdown-plugin
在clld应用程序中渲染CLDF markdown
使用方法
在您的应用程序的main
函数中包含(并配置插件)
def main(global_config, **settings):
settings['clld_markdown_plugin'] = {
'model_map': {'ValueTable': common.ValueSet},
'function_map': {}
}
config = Configurator(settings=settings)
config.include('clld.web.app')
...
config.include('clld_markdown_plugin')
然后您可以在模板中使用clld_markdown_plugin.markup
,如下所示
<%! from clld_markdown_plugin import markdown %>
${markdown(req, '[x](LanguageTable#cldf:abad1241)')|n}
默认情况下,CLDF数据集中的对象链接将渲染为指向clld应用程序中相应对象详情页面的HTML链接。
配置
可以通过以下四个配置选项配置插件
model_map
:将CLDF组件名称映射到为应用程序定义的DB模型类的dict
。这允许CLDF组件和clld DB类之间进行灵活映射。renderer_map
:详情见下文。extensions
:要激活的markdown扩展的列表,以点表示法,在调用markdown
函数时激活。keep_link_labels
:一个表示是否保留CLDF Markdown文本中链接标签的布尔值。默认情况下(False
),标签将使用链接对象的名称进行替换。
渲染器调用函数
为clld_markdown_plugin
配置选项的renderer_map
接受一个将CLDF组件名称映射到具有以下签名的Python可调用对象的字典
import clld.web.app
def renderer(req: clld.web.app.ClldRequest, objid: str, table, session: clld.db.meta.DBSession, ids=None) -> str:
"""
The returned `str` is interpreted as Markdown, so it may also include HTML.
"""
项目详情
下载文件
下载适用于您平台的文件。如果您不确定该选择哪个,请了解更多关于安装包的信息。
源代码分布
clld_markdown_plugin-0.5.0.tar.gz (9.5 kB 查看哈希值)
构建分布
关闭
clld_markdown_plugin-0.5.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 50af089a00cbfb0df6df06e710c950f1c5b6429b1a305ab63d13d4bc22465d2a |
|
MD5 | a0073421b95fad18eb7eaea7731a8d33 |
|
BLAKE2b-256 | 68bf98f8a88fd703744ec3ea2480d86730476d54eafdc42e599fdb9a60ca1062 |
关闭
clld_markdown_plugin-0.5.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e04eee754837ab1193baf5e430ebc1c7deda36dd9baef653bb1f5fd4334a8128 |
|
MD5 | 8fe8f4f70b842e0c8a1b16886300ca0b |
|
BLAKE2b-256 | ca7621e52008b8c56fc77bef41a3a2b88e6a36a544a319df6bd58d18f6495c3e |