增强Text2page:添加Markdown和代码块支持

这周我主要在我的LAB-3中使用git来管理单个项目中的多个同时更改,并使用git合并。 我创建了2个问题

问题-10:添加水平线支持(Markdown): Text2page项目可以帮助渲染Markdown规则。用户发现很难从文档中产生美观而结构良好的HTML。 以下是将Markdown文档转换为中文并删除一级标题的内容:

解决这个问题的第一步是找出Markdown中水平分隔线的模式。在Markdown中,水平分隔线通常由三个连字符、星号或下划线组成,之间用空格隔开。例如,---、***或___。

为了支持水平分隔线,我需要改进解析过程以识别Markdown中的水平分隔线模式。

代码片段:

下面是一个简化的代码片段,演示了在Text2page中实现水平分隔线支持的方法:

def create_html_from_markdown(input_file, output_dir, stylesheet_url=None):
    # ...(现有代码)

    # 将Markdown转换为HTML
    content = file.read()
    content_with_hr = parse_horizontal_rules(content)  # 自定义函数,用于识别和替换水平分隔线
    html_content = markdown2.markdown(content_with_hr)

    # ...(其余代码)

``` Text2page项目以前不支持显示使用围栏标记并在行内呈现的Markdown代码块。这个限制使用户难以高效地将代码片段添加到从Markdown文件创建的HTML文档中。
以下步骤构成了实施过程:
首先,确定代表代码片段的Markdown模式。Markdown通常使用单个反引号(`)表示行内代码,使用三个反引号(```)表示可能带有语言标识的围栏代码块。
下面是一个简化的代码片段,展示了在Text2page中实现行内代码块和围栏代码块支持的方法:

```python
def create_html_from_markdown(input_file, output_dir, stylesheet_url=None):
    # ...(现有代码)

    # 将Markdown转换为HTML
    content = file.read()
    content_with_cod e_blocks = parse_code_blocks(content)  # 自定义函数,用于识别和渲染代码块
    html_content = markdown2.markdown(content_with_code_blocks)

    # ... (剩下的代码)

进入全屏模式 退出全屏模式