33 lines
2.3 KiB
Python
33 lines
2.3 KiB
Python
#!/usr/bin/env python2.7
|
||
# -*- coding: utf-8 -*-
|
||
|
||
import sys
|
||
import re
|
||
import base64
|
||
import types
|
||
# from EMT import EMTypograph
|
||
import EMT
|
||
import json
|
||
|
||
|
||
def main():
|
||
emt = EMT.EMTypograph()
|
||
txt = '"Эдиториум.ру" - сайт, созданный по материалам сборника "О редактировании и редакторах" Аркадия Эммануиловича Мильчина, который с 1944 года коллекционировал выдержки из статей, рассказов, фельетонов, пародий, писем и книг, где так или иначе затрагивается тема редакторской работы. Эта коллекция легла в основу обширной антологии, представляющей историю и природу редактирования в первоисточниках. \n\n'\
|
||
'Кажется, вам просто нужно добавить отступ к байтам перед декодированием. На этот вопрос есть много других ответов, но я хочу указать, что (по крайней мере, в Python 3.x) base64.b64decodeлюбые дополнительные отступы будут обрезаны, если их достаточно.\n\n\n\n\n' \
|
||
'Итак, что-то вроде: <kbd>b\'abc=\' </kbd> работает так же хорошо, как b\'abc==\'(как b\'abc=====\').\n\n' \
|
||
'Это означает 100000 руб., что вы можете просто добавить максимальное количество символов заполнения, ' \
|
||
'которое вам когда-либо понадобится, а это три ( b\'===\'), и base64 обрежет все ненужные.\n\n' \
|
||
'Это позволяет вам писать:\n' \
|
||
'<code>base64.b64decode(s + b\'===\')\n' \
|
||
'base64.b64decode(s + b\'=\' * (-len(s) % 4))\'\n</code>\n'
|
||
emt.set_text(txt)
|
||
# emt.set_tag_layout(layout=EMT.LAYOUT_CLASS)
|
||
# rules = {'Text.paragraphs': 'on'}
|
||
result = emt.apply()
|
||
print(result)
|
||
print(emt.get_all_safe_blocks())
|
||
|
||
|
||
if __name__ == "__main__":
|
||
main()
|