mirror of
https://github.com/zulip/zulip.git
synced 2025-11-07 23:43:43 +00:00
markdown: Fix imports for compatibility with typeshed stubs.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
@@ -33,6 +33,11 @@ import ahocorasick
|
|||||||
import dateutil.parser
|
import dateutil.parser
|
||||||
import dateutil.tz
|
import dateutil.tz
|
||||||
import markdown
|
import markdown
|
||||||
|
import markdown.blockprocessors
|
||||||
|
import markdown.inlinepatterns
|
||||||
|
import markdown.postprocessors
|
||||||
|
import markdown.treeprocessors
|
||||||
|
import markdown.util
|
||||||
import requests
|
import requests
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
|
|||||||
@@ -79,9 +79,11 @@ import re
|
|||||||
from typing import Any, Dict, Iterable, List, Mapping, MutableSequence, Optional
|
from typing import Any, Dict, Iterable, List, Mapping, MutableSequence, Optional
|
||||||
|
|
||||||
import lxml.html
|
import lxml.html
|
||||||
import markdown
|
|
||||||
from django.utils.html import escape
|
from django.utils.html import escape
|
||||||
|
from markdown import Markdown
|
||||||
|
from markdown.extensions import Extension
|
||||||
from markdown.extensions.codehilite import CodeHilite, CodeHiliteExtension
|
from markdown.extensions.codehilite import CodeHilite, CodeHiliteExtension
|
||||||
|
from markdown.preprocessors import Preprocessor
|
||||||
from pygments.lexers import get_lexer_by_name
|
from pygments.lexers import get_lexer_by_name
|
||||||
from pygments.util import ClassNotFound
|
from pygments.util import ClassNotFound
|
||||||
|
|
||||||
@@ -137,7 +139,7 @@ CODE_VALIDATORS = {
|
|||||||
'curl': validate_curl_content,
|
'curl': validate_curl_content,
|
||||||
}
|
}
|
||||||
|
|
||||||
class FencedCodeExtension(markdown.Extension):
|
class FencedCodeExtension(Extension):
|
||||||
def __init__(self, config: Mapping[str, Any] = {}) -> None:
|
def __init__(self, config: Mapping[str, Any] = {}) -> None:
|
||||||
self.config = {
|
self.config = {
|
||||||
'run_content_validators': [
|
'run_content_validators': [
|
||||||
@@ -149,7 +151,7 @@ class FencedCodeExtension(markdown.Extension):
|
|||||||
for key, value in config.items():
|
for key, value in config.items():
|
||||||
self.setConfig(key, value)
|
self.setConfig(key, value)
|
||||||
|
|
||||||
def extendMarkdown(self, md: markdown.Markdown) -> None:
|
def extendMarkdown(self, md: Markdown) -> None:
|
||||||
""" Add FencedBlockPreprocessor to the Markdown instance. """
|
""" Add FencedBlockPreprocessor to the Markdown instance. """
|
||||||
md.registerExtension(self)
|
md.registerExtension(self)
|
||||||
processor = FencedBlockPreprocessor(
|
processor = FencedBlockPreprocessor(
|
||||||
@@ -321,9 +323,9 @@ class TexHandler(BaseHandler):
|
|||||||
self.processor.pop()
|
self.processor.pop()
|
||||||
|
|
||||||
|
|
||||||
class FencedBlockPreprocessor(markdown.preprocessors.Preprocessor):
|
class FencedBlockPreprocessor(Preprocessor):
|
||||||
def __init__(self, md: markdown.Markdown, run_content_validators: bool=False) -> None:
|
def __init__(self, md: Markdown, run_content_validators: bool=False) -> None:
|
||||||
markdown.preprocessors.Preprocessor.__init__(self, md)
|
super().__init__(md)
|
||||||
|
|
||||||
self.checked_for_codehilite = False
|
self.checked_for_codehilite = False
|
||||||
self.run_content_validators = run_content_validators
|
self.run_content_validators = run_content_validators
|
||||||
|
|||||||
@@ -2,7 +2,8 @@ import re
|
|||||||
from typing import Any, List
|
from typing import Any, List
|
||||||
from typing.re import Match
|
from typing.re import Match
|
||||||
|
|
||||||
import markdown
|
from markdown import Markdown
|
||||||
|
from markdown.extensions import Extension
|
||||||
from markdown.preprocessors import Preprocessor
|
from markdown.preprocessors import Preprocessor
|
||||||
|
|
||||||
from zerver.lib.emoji import EMOTICON_CONVERSIONS, name_to_codepoint
|
from zerver.lib.emoji import EMOTICON_CONVERSIONS, name_to_codepoint
|
||||||
@@ -35,8 +36,8 @@ ROW_HTML = """\
|
|||||||
</tr>
|
</tr>
|
||||||
"""
|
"""
|
||||||
|
|
||||||
class EmoticonTranslationsHelpExtension(markdown.Extension):
|
class EmoticonTranslationsHelpExtension(Extension):
|
||||||
def extendMarkdown(self, md: markdown.Markdown) -> None:
|
def extendMarkdown(self, md: Markdown) -> None:
|
||||||
""" Add SettingHelpExtension to the Markdown instance. """
|
""" Add SettingHelpExtension to the Markdown instance. """
|
||||||
md.registerExtension(self)
|
md.registerExtension(self)
|
||||||
md.preprocessors.register(EmoticonTranslation(), 'emoticon_translations', -505)
|
md.preprocessors.register(EmoticonTranslation(), 'emoticon_translations', -505)
|
||||||
|
|||||||
@@ -2,7 +2,8 @@ import re
|
|||||||
from typing import Any, List, Optional
|
from typing import Any, List, Optional
|
||||||
from typing.re import Match
|
from typing.re import Match
|
||||||
|
|
||||||
import markdown
|
from markdown import Markdown
|
||||||
|
from markdown.extensions import Extension
|
||||||
from markdown.preprocessors import Preprocessor
|
from markdown.preprocessors import Preprocessor
|
||||||
|
|
||||||
# There is a lot of duplicated code between this file and
|
# There is a lot of duplicated code between this file and
|
||||||
@@ -66,8 +67,8 @@ LINK_TYPE_HANDLERS = {
|
|||||||
'stream': stream_handle_match,
|
'stream': stream_handle_match,
|
||||||
}
|
}
|
||||||
|
|
||||||
class RelativeLinksHelpExtension(markdown.Extension):
|
class RelativeLinksHelpExtension(Extension):
|
||||||
def extendMarkdown(self, md: markdown.Markdown) -> None:
|
def extendMarkdown(self, md: Markdown) -> None:
|
||||||
""" Add RelativeLinksHelpExtension to the Markdown instance. """
|
""" Add RelativeLinksHelpExtension to the Markdown instance. """
|
||||||
md.registerExtension(self)
|
md.registerExtension(self)
|
||||||
md.preprocessors.register(RelativeLinks(), 'help_relative_links', 520)
|
md.preprocessors.register(RelativeLinks(), 'help_relative_links', 520)
|
||||||
|
|||||||
@@ -2,7 +2,8 @@ import re
|
|||||||
from typing import Any, List, Optional
|
from typing import Any, List, Optional
|
||||||
from typing.re import Match
|
from typing.re import Match
|
||||||
|
|
||||||
import markdown
|
from markdown import Markdown
|
||||||
|
from markdown.extensions import Extension
|
||||||
from markdown.preprocessors import Preprocessor
|
from markdown.preprocessors import Preprocessor
|
||||||
|
|
||||||
# There is a lot of duplicated code between this file and
|
# There is a lot of duplicated code between this file and
|
||||||
@@ -62,8 +63,8 @@ settings_markdown = """
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
class SettingHelpExtension(markdown.Extension):
|
class SettingHelpExtension(Extension):
|
||||||
def extendMarkdown(self, md: markdown.Markdown) -> None:
|
def extendMarkdown(self, md: Markdown) -> None:
|
||||||
""" Add SettingHelpExtension to the Markdown instance. """
|
""" Add SettingHelpExtension to the Markdown instance. """
|
||||||
md.registerExtension(self)
|
md.registerExtension(self)
|
||||||
md.preprocessors.register(Setting(), 'setting', 515)
|
md.preprocessors.register(Setting(), 'setting', 515)
|
||||||
|
|||||||
Reference in New Issue
Block a user