mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2024-12-01 22:03:46 +03:00
Add markdown and html properties to Message
This commit is contained in:
parent
9b4808a558
commit
8df66c0b47
|
@ -639,12 +639,6 @@ The message sender no longer is the channel when no sender is provided by Telegr
|
||||||
to patch this value for channels to be the same as the chat, but now it will be faithful to
|
to patch this value for channels to be the same as the chat, but now it will be faithful to
|
||||||
Telegram's value.
|
Telegram's value.
|
||||||
|
|
||||||
In order to avoid breaking more code than strictly necessary, ``.raw_text`` will remain a synonym
|
|
||||||
of ``.message``, and ``.text`` will still be the text formatted through the ``client.parse_mode``.
|
|
||||||
However, you're encouraged to change uses of ``.raw_text`` with ``.message``, and ``.text`` with
|
|
||||||
either ``.md_text`` or ``.html_text`` as needed. This is because both ``.text`` and ``.raw_text``
|
|
||||||
may disappear in future versions, and their behaviour is not immediately obvious.
|
|
||||||
|
|
||||||
// TODO actually provide the things mentioned here
|
// TODO actually provide the things mentioned here
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ from .file import File
|
||||||
from .inputfile import InputFile
|
from .inputfile import InputFile
|
||||||
from .inputmessage import InputMessage
|
from .inputmessage import InputMessage
|
||||||
from .button import build_reply_markup
|
from .button import build_reply_markup
|
||||||
from ..._misc import utils, helpers, tlobject
|
from ..._misc import utils, helpers, tlobject, markdown, html
|
||||||
from ... import _tl, _misc
|
from ... import _tl, _misc
|
||||||
|
|
||||||
|
|
||||||
|
@ -435,7 +435,6 @@ class Message(ChatGetter, SenderGetter):
|
||||||
self._message = message
|
self._message = message
|
||||||
|
|
||||||
# Convenient storage for custom functions
|
# Convenient storage for custom functions
|
||||||
self._text = None
|
|
||||||
self._file = None
|
self._file = None
|
||||||
self._reply_message = None
|
self._reply_message = None
|
||||||
self._buttons = None
|
self._buttons = None
|
||||||
|
@ -533,8 +532,8 @@ class Message(ChatGetter, SenderGetter):
|
||||||
@property
|
@property
|
||||||
def text(self):
|
def text(self):
|
||||||
"""
|
"""
|
||||||
The message text, formatted using the client's default
|
The message text, formatted using the default parse mode.
|
||||||
parse mode. Will be `None` for :tl:`MessageService`.
|
Will be `None` for :tl:`MessageService`.
|
||||||
"""
|
"""
|
||||||
return InputMessage._default_parse_mode[1](self.message, self.entities)
|
return InputMessage._default_parse_mode[1](self.message, self.entities)
|
||||||
|
|
||||||
|
@ -545,11 +544,9 @@ class Message(ChatGetter, SenderGetter):
|
||||||
@property
|
@property
|
||||||
def raw_text(self):
|
def raw_text(self):
|
||||||
"""
|
"""
|
||||||
The raw message text, ignoring any formatting.
|
The plain message text, ignoring any formatting. Will be `None` for :tl:`MessageService`.
|
||||||
Will be `None` for :tl:`MessageService`.
|
|
||||||
|
|
||||||
Setting a value to this field will erase the
|
Setting a value to this field will erase the `entities`, unlike changing the `message` member.
|
||||||
`entities`, unlike changing the `message` member.
|
|
||||||
"""
|
"""
|
||||||
return self.message
|
return self.message
|
||||||
|
|
||||||
|
@ -557,7 +554,28 @@ class Message(ChatGetter, SenderGetter):
|
||||||
def raw_text(self, value):
|
def raw_text(self, value):
|
||||||
self.message = value
|
self.message = value
|
||||||
self.entities = []
|
self.entities = []
|
||||||
self._text = None
|
|
||||||
|
@property
|
||||||
|
def markdown(self):
|
||||||
|
"""
|
||||||
|
The message text, formatted using markdown. Will be `None` for :tl:`MessageService`.
|
||||||
|
"""
|
||||||
|
return markdown.unparse(self.message, self.entities)
|
||||||
|
|
||||||
|
@markdown.setter
|
||||||
|
def markdown(self, value):
|
||||||
|
self.message, self.entities = markdown.parse(value)
|
||||||
|
|
||||||
|
@property
|
||||||
|
def html(self):
|
||||||
|
"""
|
||||||
|
The message text, formatted using HTML. Will be `None` for :tl:`MessageService`.
|
||||||
|
"""
|
||||||
|
return html.unparse(self.message, self.entities)
|
||||||
|
|
||||||
|
@html.setter
|
||||||
|
def html(self, value):
|
||||||
|
self.message, self.entities = html.parse(value)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def is_reply(self):
|
def is_reply(self):
|
||||||
|
|
Loading…
Reference in New Issue
Block a user