Dre4m Shell
Server IP : 85.214.239.14  /  Your IP : 18.222.116.93
Web Server : Apache/2.4.62 (Debian)
System : Linux h2886529.stratoserver.net 4.9.0 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.18
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /proc/3/task/3/root/proc/3/root/lib/python3/dist-packages/markdown_it/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /proc/3/task/3/root/proc/3/root/lib/python3/dist-packages/markdown_it//utils.py
from __future__ import annotations

from collections.abc import Callable
from pathlib import Path


class OptionsDict(dict):
    """A dictionary, with attribute access to core markdownit configuration options."""

    @property
    def maxNesting(self) -> int:
        """Internal protection, recursion limit."""
        return self["maxNesting"]

    @maxNesting.setter
    def maxNesting(self, value: int):
        self["maxNesting"] = value

    @property
    def html(self) -> bool:
        """Enable HTML tags in source."""
        return self["html"]

    @html.setter
    def html(self, value: bool):
        self["html"] = value

    @property
    def linkify(self) -> bool:
        """Enable autoconversion of URL-like texts to links."""
        return self["linkify"]

    @linkify.setter
    def linkify(self, value: bool):
        self["linkify"] = value

    @property
    def typographer(self) -> bool:
        """Enable smartquotes and replacements."""
        return self["typographer"]

    @typographer.setter
    def typographer(self, value: bool):
        self["typographer"] = value

    @property
    def quotes(self) -> str:
        """Quote characters."""
        return self["quotes"]

    @quotes.setter
    def quotes(self, value: str):
        self["quotes"] = value

    @property
    def xhtmlOut(self) -> bool:
        """Use '/' to close single tags (<br />)."""
        return self["xhtmlOut"]

    @xhtmlOut.setter
    def xhtmlOut(self, value: bool):
        self["xhtmlOut"] = value

    @property
    def breaks(self) -> bool:
        """Convert newlines in paragraphs into <br>."""
        return self["breaks"]

    @breaks.setter
    def breaks(self, value: bool):
        self["breaks"] = value

    @property
    def langPrefix(self) -> str:
        """CSS language prefix for fenced blocks."""
        return self["langPrefix"]

    @langPrefix.setter
    def langPrefix(self, value: str):
        self["langPrefix"] = value

    @property
    def highlight(self) -> Callable[[str, str, str], str] | None:
        """Highlighter function: (content, langName, langAttrs) -> escaped HTML."""
        return self["highlight"]

    @highlight.setter
    def highlight(self, value: Callable[[str, str, str], str] | None):
        self["highlight"] = value


def read_fixture_file(path: str | Path) -> list[list]:
    text = Path(path).read_text(encoding="utf-8")
    tests = []
    section = 0
    last_pos = 0
    lines = text.splitlines(keepends=True)
    for i in range(len(lines)):
        if lines[i].rstrip() == ".":
            if section == 0:
                tests.append([i, lines[i - 1].strip()])
                section = 1
            elif section == 1:
                tests[-1].append("".join(lines[last_pos + 1 : i]))
                section = 2
            elif section == 2:
                tests[-1].append("".join(lines[last_pos + 1 : i]))
                section = 0

            last_pos = i
    return tests


def _removesuffix(string: str, suffix: str) -> str:
    """Remove a suffix from a string.

    Replace this with str.removesuffix() from stdlib when minimum Python
    version is 3.9.
    """
    if suffix and string.endswith(suffix):
        return string[: -len(suffix)]
    return string

Anon7 - 2022
AnonSec Team