Finish restore of link parser
This commit is contained in:
@@ -7,8 +7,8 @@ import fp/[
|
|||||||
]
|
]
|
||||||
import ./org_types
|
import ./org_types
|
||||||
import ./org_builder_api
|
import ./org_builder_api
|
||||||
|
import ./org_builder_link.nim
|
||||||
import ../parser/parser
|
import ../parser/parser
|
||||||
# import ./org_text_link
|
|
||||||
|
|
||||||
# -- Parsers
|
# -- Parsers
|
||||||
|
|
||||||
@@ -37,7 +37,7 @@ let styledTextTokenizers = @[
|
|||||||
(verbatimParser, verbatimTokenizer),
|
(verbatimParser, verbatimTokenizer),
|
||||||
(codeParser, codeTokenizer),
|
(codeParser, codeTokenizer),
|
||||||
(strikeThroughParser, strikeThroughTokenizer),
|
(strikeThroughParser, strikeThroughTokenizer),
|
||||||
# (linkParser, linkTokenizerSeq),
|
(linkParser, linkTokenizer),
|
||||||
]
|
]
|
||||||
|
|
||||||
proc tryTokenizeRawText(tokens: seq[ParserToken]): seq[OrgInlineBuilderT] =
|
proc tryTokenizeRawText(tokens: seq[ParserToken]): seq[OrgInlineBuilderT] =
|
||||||
|
|||||||
@@ -55,14 +55,14 @@ let linkParser* = proc(parser: Parser): ParserResult {.closure.} =
|
|||||||
|
|
||||||
# -- Tokenizers
|
# -- Tokenizers
|
||||||
|
|
||||||
proc linkStringifier*(linkUrl: string, linkDescription: Option[string]): string =
|
func linkStringifier*(linkUrl: string, linkDescription: Option[string]): string =
|
||||||
case (linkUrl, linkDescription):
|
case (linkUrl, linkDescription):
|
||||||
of (@linkUrl, Some(@linkDescription)):
|
of (@linkUrl, Some(@linkDescription)):
|
||||||
return &"[[{linkUrl}][{linkDescription}]]"
|
return &"[[{linkUrl}][{linkDescription}]]"
|
||||||
of (@linkUrl, None()):
|
of (@linkUrl, None()):
|
||||||
return &"[[{linkUrl}]]"
|
return &"[[{linkUrl}]]"
|
||||||
|
|
||||||
proc linkTokenizer*(parserTokens: seq[ParserToken]): seq[OrgInlineBuilderT] =
|
let linkTokenizer* = func(parserTokens: seq[ParserToken]): seq[OrgInlineBuilderT] {.closure.} =
|
||||||
[@linkUrl, @linkDescription] := parserTokens.map(toString)
|
[@linkUrl, @linkDescription] := parserTokens.map(toString)
|
||||||
let linkDescriptionOption = linkDescription.some().notEmpty()
|
let linkDescriptionOption = linkDescription.some().notEmpty()
|
||||||
return @[
|
return @[
|
||||||
|
|||||||
Reference in New Issue
Block a user