forked from CrossDark/CrossDown
1.9.4 代码块升级
This commit is contained in:
parent
9ef3a6669b
commit
60913d787d
@ -10,12 +10,13 @@ from markdown.blockprocessors import BlockProcessor
|
||||
from markdown import Markdown
|
||||
from typing import *
|
||||
import re
|
||||
import lxml
|
||||
import xml
|
||||
import emoji
|
||||
|
||||
|
||||
try: # 检测当前平台是否支持扩展语法
|
||||
from .Extra import *
|
||||
|
||||
EXTRA_ABLE = True
|
||||
except ModuleNotFoundError: # 不支持扩展语法
|
||||
EXTRA_ABLE = False
|
||||
@ -206,15 +207,15 @@ class CodeLine(Treeprocessor):
|
||||
self.variable = variable
|
||||
|
||||
def run(self, root):
|
||||
for elem in root.iter('p'): # 在所有段落中查找单行代码
|
||||
if elem.findall('code'): # 找到单行代码
|
||||
for code in elem:
|
||||
for code in root.findall('.//code'): # 在所有段落中查找单行代码
|
||||
if re.match(r'\$[^$]*\$', code.text): # 渲染Latex
|
||||
if isinstance(elem.text, str): # 这个段落还有其它内容
|
||||
code.text = fr'\({code.text[1:-1]}\)'
|
||||
code.tag = 'p'
|
||||
"""if isinstance(elem.text, str): # 这个段落还有其它内容
|
||||
elem.text += fr'\({code.text[1:-1]}\){code.tail}' # 插入latex
|
||||
else:
|
||||
elem.text = fr'\({code.text[1:-1]}\)' # latex是段落中唯一的内容
|
||||
elem.remove(code)
|
||||
elem.remove(code)"""
|
||||
elif re.match(r'¥[^$]*¥', code.text): # 是数学函数(单行)
|
||||
if EXTRA_ABLE: # 支持扩展语法
|
||||
expression, range_ = re.findall(r'¥([^$]*)¥(€[^$]*€)?', code.text)[0] # 分离表达式与范围(如果有)
|
||||
|
41
README.html
41
README.html
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user