Server IP : 15.235.198.142 / Your IP : 216.73.216.225 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ballsack 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /lib/python3/dist-packages/markdown_it/rules_inline/ |
Upload File : |
"""Proceess '\n'.""" from ..common.utils import charStrAt, isStrSpace from .state_inline import StateInline def newline(state: StateInline, silent: bool) -> bool: pos = state.pos if state.src[pos] != "\n": return False pmax = len(state.pending) - 1 maximum = state.posMax # ' \n' -> hardbreak # Lookup in pending chars is bad practice! Don't copy to other rules! # Pending string is stored in concat mode, indexed lookups will cause # conversion to flat mode. if not silent: if pmax >= 0 and charStrAt(state.pending, pmax) == " ": if pmax >= 1 and charStrAt(state.pending, pmax - 1) == " ": # Find whitespaces tail of pending chars. ws = pmax - 1 while ws >= 1 and charStrAt(state.pending, ws - 1) == " ": ws -= 1 state.pending = state.pending[:ws] state.push("hardbreak", "br", 0) else: state.pending = state.pending[:-1] state.push("softbreak", "br", 0) else: state.push("softbreak", "br", 0) pos += 1 # skip heading spaces for next line while pos < maximum and isStrSpace(state.src[pos]): pos += 1 state.pos = pos return True