Multimarkdown хорошо сконфигурированные данные заголовка

Привет, я пытаюсь получить верхнюю часть моего файла multimarkdown, чтобы он выглядел так:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml">
    <head><title>Test of markdown</title>
        <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
        <link rel="stylesheet" type="text/css" href="../main.css" />
    </head>

Я знаю, как добавить следующие метатеги:

Title: Test of markdown
CSS: ../main.css
Quotes language: english

что дает мне:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8"/>
        <title>Test of markdown</title>
        <link type="text/css" rel="stylesheet" href="../main.css"/>
    </head>

Но я не уверен, как добавить все остальное. Буду признателен за любую помощь. Спасибо

1 ответ

Решение

Я не могу найти ни одного родного markdown способ сделать это, но вы можете запустить небольшой скрипт через сгенерированный HTML, если вы действительно чувствуете, что должны это сделать.

Это простая опция Python 3, с которой можно начать. Это может быть улучшено многими способами, но мы хотим, чтобы все было просто. Очевидной идеей было бы дать ему папку и заставить ее обрабатывать каждый HTML-файл в папке. Но я надеюсь, что это дает идею.

Пример кода:

filepath = input('What is the full file path to the file? - ')

htmldoctype = ' '.join([
    '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"',
    '"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">',
    '\n'
])

htmlinfo = ('<html xmlns="http://www.w3.org/1999/xhtml">\n')

inlines = []

try:
    with open(filepath, mode='r', encoding='utf-8') as infile:
        for line in infile:
            if line.strip() == '<!DOCTYPE html>':
                inlines.append(htmldoctype)
            elif line.strip() == '<html>':
                inlines.append(htmlinfo)
            else:
                inlines.append(line)
except Exception:
    print('something went wrong in get')

try:
    with open(filepath, mode='w', encoding='utf-8') as outfile:
        for line in inlines:
            outfile.write(line)
except Exception:
    print('something went wrong in write')

Входные данные :

    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="utf-8"/>
        <title>Test of markdown</title>
        <link type="text/css" rel="stylesheet" href="../main.css"/>
      </head>
    <body>
        test
    </body>
    </html>

Выход:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta charset="utf-8"/>
        <title>Test of markdown</title>
        <link type="text/css" rel="stylesheet" href="../main.css"/>
    </head>
<body>
  test
</body>
</html>
Другие вопросы по тегам