From f0e7d16276301498d0a2cc337e86a16daa98940c Mon Sep 17 00:00:00 2001 From: Dan Elkouby Date: Thu, 14 Jun 2018 19:20:41 +0000 Subject: [PATCH] Move aesthetics functionality into markdown --- stdplugins/aesthetics.py | 26 -------------------------- stdplugins/markdown.py | 14 ++++++++++++++ 2 files changed, 14 insertions(+), 26 deletions(-) delete mode 100644 stdplugins/aesthetics.py diff --git a/stdplugins/aesthetics.py b/stdplugins/aesthetics.py deleted file mode 100644 index 0495c5d..0000000 --- a/stdplugins/aesthetics.py +++ /dev/null @@ -1,26 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -from telethon import events - -PRINTABLE_ASCII = range(0x21, 0x7f) - - -def aesthetify(string): - for c in string: - c = ord(c) - if c in PRINTABLE_ASCII: - c += 0xFF00 - 0x20 - elif c == ord(" "): - c = 0x3000 - yield chr(c) - - -@borg.on(events.NewMessage(pattern=r'\.ae\s+(.+)', outgoing=True)) -@borg.on(events.MessageEdited(pattern=r'\.ae\s+(.+)', outgoing=True)) -async def _(event): - text = event.pattern_match.group(1) - text = "".join(aesthetify(text)) - await event.edit(text=text, parse_mode=None, link_preview=False) - raise events.StopPropagation diff --git a/stdplugins/markdown.py b/stdplugins/markdown.py index bee0372..0c8d3df 100644 --- a/stdplugins/markdown.py +++ b/stdplugins/markdown.py @@ -32,6 +32,19 @@ def get_tag_parser(tag, entity): return re.compile(tag + r'(.+?)' + tag, re.DOTALL), tag_parser +PRINTABLE_ASCII = range(0x21, 0x7f) +def parse_aesthetics(m): + def aesthetify(string): + for c in string: + c = ord(c) + if c in PRINTABLE_ASCII: + c += 0xFF00 - 0x20 + elif c == ord(" "): + c = 0x3000 + yield chr(c) + return "".join(aesthetify(m[1])), None + + def parse_subreddit(m): text = '/' + m.group(3) entity = MessageEntityTextUrl( @@ -65,6 +78,7 @@ MATCHERS = [ (get_tag_parser('__', MessageEntityItalic)), (get_tag_parser('```', partial(MessageEntityPre, language=''))), (get_tag_parser('`', MessageEntityCode)), + (re.compile(r'\+\+(.+?)\+\+'), parse_aesthetics), (re.compile(r'([^/\w]|^)(/?(r/\w+))'), parse_subreddit), (re.compile(r'(!\w+)'), parse_snip) ]