Finish restore of link parser

This commit is contained in:
Florian Schroedl
2022-08-28 15:05:20 +02:00
parent 6058dc62b4
commit df2b2eb9f7
2 changed files with 4 additions and 4 deletions

View File

@@ -7,8 +7,8 @@ import fp/[
]
import ./org_types
import ./org_builder_api
import ./org_builder_link.nim
import ../parser/parser
# import ./org_text_link
# -- Parsers
@@ -37,7 +37,7 @@ let styledTextTokenizers = @[
(verbatimParser, verbatimTokenizer),
(codeParser, codeTokenizer),
(strikeThroughParser, strikeThroughTokenizer),
# (linkParser, linkTokenizerSeq),
(linkParser, linkTokenizer),
]
proc tryTokenizeRawText(tokens: seq[ParserToken]): seq[OrgInlineBuilderT] =

View File

@@ -55,14 +55,14 @@ let linkParser* = proc(parser: Parser): ParserResult {.closure.} =
# -- Tokenizers
proc linkStringifier*(linkUrl: string, linkDescription: Option[string]): string =
func linkStringifier*(linkUrl: string, linkDescription: Option[string]): string =
case (linkUrl, linkDescription):
of (@linkUrl, Some(@linkDescription)):
return &"[[{linkUrl}][{linkDescription}]]"
of (@linkUrl, None()):
return &"[[{linkUrl}]]"
proc linkTokenizer*(parserTokens: seq[ParserToken]): seq[OrgInlineBuilderT] =
let linkTokenizer* = func(parserTokens: seq[ParserToken]): seq[OrgInlineBuilderT] {.closure.} =
[@linkUrl, @linkDescription] := parserTokens.map(toString)
let linkDescriptionOption = linkDescription.some().notEmpty()
return @[