Преобразование дерева TexSoup обратно в LaTeX - PullRequest
0 голосов
/ 01 августа 2020

Я тестировал модуль Python под названием TexSoup, который я нашел очень полезным при анализе документов LaTeX. Это также может изменить их структуру и содержание. Однако мне не удалось преобразовать полученный объект TeXSoup обратно в строку, которую я могу вывести как документ LaTeX.

Скажем, у меня есть следующий сценарий Python, который удаляет пробелы из pagenotes :

from TexSoup import TexSoup
with open("input.tex") as f:
    tex_doc = f.read()
soup = TexSoup(tex_doc)
for n in soup.find_all(r'pagenote'):
    content = n.args[0].string
    n.args[0].string = content.strip()

Как мне записать soup обратно в файл? Это не работает:

with open("out.tex", "w") as f:
    f.write(soup)

, потому что soup - это TexNode, а не строка.

1 Ответ

0 голосов
/ 02 августа 2020

Разработчик TeXSoup ответил на этот вопрос в GitHub. Он сказал просто заключить объект TexSoup в str ():

with open("out.tex", "w") as f:
    f.write(str(soup))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...