标记扩展

muextensions的Python项目详细描述


多个扩展名

目录

  • 多个扩展
    • 概述
    • 用法
    • 先决条件
    • 鹈鹕
    • 气垫船!
    • 其他docutils项目
  • 开发
  • 贡献
  • 附录
  • 概述

    这个项目还在阿尔法。期望向后兼容性破坏 更改。

    重构文本添加 ditaa 指令,希望 未来降价 muextensions通过为 像气垫船这样的项目!和 鹈鹕 ,并简化 向其他项目注册指令

    它允许添加 structuredText 块,如下所示:

    ..ditaa-image::
    
        +---------------+                      /---------------------+
        | +-----------+ |    +------------+    |+---+  +----+   /---+|
        | | ..dita::  | +--->+muextensions+--->+|   +->+{io}+-> +   ||
        | |   ~~~~~~~ | |    |        {io}|    ||{d}|  +----+   |   ||
        | |   ~~~~~~~ | |    +------------+    |+---+           +---/|
        | +-----------+ |                      |                     |
        |            {d}|                      |                     |
        +---------------+                      +---------------------/
    

    并将其嵌入到以图像形式生成的文档中 简单DITAA示例

    plantuml 的情况下,类似于这样的块:

    ..plantuml-image::
    
      skinparam monochrome true
      skinparam shadowing false
    
      client -> front_end
      front_end -> back_end
      back_end -> front_end
      front_end -> client
    

    将呈现为:

    Simple PlantUML示例

    用法

    先决条件

    安装plantuml并有一个名为plantuml的包装脚本 执行安装在您路径中的 plantuml 支持。包装样品 脚本包含在 项目:

    对于 ditaa 支持,请按照 获取中的说明安装 DITAA 文档的部分。

    气垫船!

    支持气垫船!当前正在等待拉取请求 regebro/hovercraft 196 它将 --指令插件 参数添加到 气垫船 命令中。 介绍指令插件的源代码可以在 pedrohdz/hovercraft 指令的分支下。

    下面是一个快速示例,以查看 muextensions ,确保完成 首先是先决条件。我们将利用演示演示文稿 文档/示例/气垫船/

    cd docs/examples/hovercraft/
    python3.7 -m venv .venv
    source .venv/bin/activate
    pip install -U pip
    pip install muextensions \
        https://github.com/pedrohdz/hovercraft/archive/directives.zip
    hovercraft --directive-plugin muextensions.contrib.hovercraft demo.rst
    

    在Web浏览器中打开http://localhost:8000/" rel="nofollow">http://localhost:8000/以查看气垫船! 演示文稿。

    其他docutils项目

    可以将 muextensions structuredtext 指令添加到任何 docutils 通过中的 docutils 连接器进行项目 muextensions.connector.docutils

    frompathlibimportPathfrommuextensions.connector.docutilsimportplantuml,ditaaoutput_path=Path('.')plantuml.register(output_path)ditaa.register(output_path)

    中的 plantuml ditaa register() 函数 muextensions.connector.docutils 指令,如 注册指令中所述 文档的 文档 部分。

    开发

    开发设置:

    git clone git@github.com:pedrohdz/muextensions.git
    cd muextensions
    python3.5 -m venv .venv
    source .venv/bin/activate
    pip install -U pip
    pip install -e .[ci,test]

    通过运行 tox 确保您有一个良好的基线。执行毒性试验从 在 venv (python虚拟环境)中,将导致 pip 相关错误 在测试过程中,通过 deactivate 命令退出 venv ,或者 从一个新终端执行 tox

    deactivate
    tox
    source .venv/bin/activate
    

    执行单元测试:

    pytest
    

    执行并查看单元测试代码覆盖率:

    ..ditaa-image::
    
        +---------------+                      /---------------------+
        | +-----------+ |    +------------+    |+---+  +----+   /---+|
        | | ..dita::  | +--->+muextensions+--->+|   +->+{io}+-> +   ||
        | |   ~~~~~~~ | |    |        {io}|    ||{d}|  +----+   |   ||
        | |   ~~~~~~~ | |    +------------+    |+---+           +---/|
        | +-----------+ |                      |                     |
        |            {d}|                      |                     |
        +---------------+                      +---------------------/
    
    0

    要运行集成测试,假设 ditaa plantuml 都是 安装在系统上,使用 --运行集成选项。拯救 将集成测试的输出添加到 --将集成输出保存到选项:

    ..ditaa-image::
    
        +---------------+                      /---------------------+
        | +-----------+ |    +------------+    |+---+  +----+   /---+|
        | | ..dita::  | +--->+muextensions+--->+|   +->+{io}+-> +   ||
        | |   ~~~~~~~ | |    |        {io}|    ||{d}|  +----+   |   ||
        | |   ~~~~~~~ | |    +------------+    |+---+           +---/|
        | +-----------+ |                      |                     |
        |            {d}|                      |                     |
        +---------------+                      +---------------------/
    
    1

    贡献

    投稿时,请在提交请求前记住以下几点 要求:

    • 确保 毒性检查无故障完成。
    • 更改代码时,请添加相关的单元测试。
    • 如果修复错误,请尝试添加回归测试。以前应该失败的 修复程序将应用,并在之后应用pas。
    • 该项目符合语义版本控制2.0.0

    附录

    待办事项列表
    • [X]添加鹈鹕支持。
    • [X]添加DITAA支持。
    • [-]传播信息:
    • [-]完成向气垫船添加插件支持!( regebro/hovercraft 196 )。
    • []为以下各项添加GitHub票证。
    • []添加缓存。
    • []添加一个 plantUML文本 指令。这应该生成并嵌入ascii 通过 plantuml -ttxt 进行艺术创作
    • []添加一个DITAA文本指令。这应该在 指令内容直接作为代码块。
    • []添加 DITAA图和 plantUML图
    • []为执行人员添加rest调用程序,以加快速度。
    • []完成删除不推荐的 UML 指令。
    • []查看 https://pypi.org/project/pbr/
    • []添加降价支持。

    参考资料
    • 待办事项

    欢迎加入QQ群-->: 979659372 Python中文网_新手群

    推荐PyPI第三方库


    热门话题
    在ElasticSearch中将SearchHit转换为Java对象   第三方库类的java重写XmlAdapter   java如何使用动画类获得平滑的动画效果?   Java PDFBox如果文本内容超过PDF的第一页,如何添加新页面?   Java二叉搜索树u根到最近叶的距离   java什么是diff Scanner和BufferedReader   java如何设计不生成并行数组的程序   java多次声明变量会降低执行速度吗?   java如何使用JXLAPI读取下拉列表的值   多线程为什么自定义阻塞队列在Java中不是线程安全的   java在一个变量中每输入1000个单位,就从另一个变量中减去1?   java Mapstruct通用映射器   Java中的类能否确定它是否已被修改?   java如何在MogoOperations聚合函数中定义输出类型?