Задайте размер шрифта html в pygmentize, инструменте командной строки pygments.

Я пытаюсь преобразовать файл python в файл html, используя pygments через инструмент командной строки pygmentize с помощью следующей команды:

pygmentize -f html -O full -O linenos=1 out_file.html in_file.py

К сожалению, размер шрифта по умолчанию слишком мал, и я не знаю, как его увеличить. С помощью -O fontsize=16 не вызывает ошибки, но и не действует.

Вдобавок попробовал уродливый патч, вставив html *{font-size: 1.05em !important;} в часть css html-документа, но это нарушает структуру нумерации строк.

Я могу вызывать "пигменты" через терминал Python, но не знаю, как реализовать командную строку в коде Python.

1 ответ

Хорошо, я исправил проблему, используя следующий код Python:

from pygments import highlight
from pygments.lexers import get_lexer_by_name
from pygments.formatters import get_formatter_by_name

lexer = get_lexer_by_name('python')
formatter = get_formatter_by_name('html', linenos='inline', full=1)

with open("conver_me.py", 'r') as f_in:
    code = "".join(f_in.readlines())

with open("output.html", 'w') as f_out:
    highlight(code, lexer, formatter, f_out)

Затем я добавил строку

html *{font-size: 1.05em !important;}

в css-часть html-документа и адаптировал заполнение таблицы

span.lineno { background-color: #f0f0f0; padding: 0px 5px 5px 5px; }
Другие вопросы по тегам