Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
parse_link_label.py45 linesDownload Raw Back to helpers
1"""2Parse link label3 4this function assumes that first character ("[") already matches5returns the end of the label6 7"""8 9from markdown_it.rules_inline import StateInline10 11 12def parseLinkLabel(state: StateInline, start: int, disableNested: bool = False) -> int:13    labelEnd = -114    oldPos = state.pos15    found = False16 17    state.pos = start + 118    level = 119 20    while state.pos < state.posMax:21        marker = state.src[state.pos]22        if marker == "]":23            level -= 124            if level == 0:25                found = True26                break27 28        prevPos = state.pos29        state.md.inline.skipToken(state)30        if marker == "[":31            if prevPos == state.pos - 1:32                # increase level if we find text `[`,33                # which is not a part of any token34                level += 135            elif disableNested:36                state.pos = oldPos37                return -138    if found:39        labelEnd = state.pos40 41    # restore old state42    state.pos = oldPos43 44    return labelEnd45 
codekingpro/portable-devtools · Team Ai