Something of the form [[foo]]
.
Allowed formats:
[[Wikilink]]
[[Wikilink/Bar]]
[[Wikilink#foo]]
[[Wikilink/Bar#foo]]
[[title|Wikilink]]
[[title|Wikilink/Bar]]
[[title|Wikilink/Bar#foo]]
markdown :: TokenWikiLink :: defaultinit
markdown $ TokenWikiLink :: SELF
Type of this instance, automatically specialized in every classcore :: Object :: class_factory
Implementation used byget_class
to create the specific class.
markdown :: TokenLink :: defaultinit
markdown :: TokenWikiLink :: defaultinit
core :: Object :: defaultinit
markdown :: Token :: defaultinit
MarkdownEmitter::decorator
.
markdown :: TokenLinkOrImage :: is_abbrev
Is the link construct an abbreviation?markdown :: TokenLinkOrImage :: is_abbrev=
Is the link construct an abbreviation?core :: Object :: is_same_instance
Return true ifself
and other
are the same instance (i.e. same identity).
core :: Object :: is_same_serialized
Isself
the same as other
in a serialization context?
core :: Object :: is_same_type
Return true ifself
and other
have the same dynamic type.
self
in the original input.
markdown :: Token :: location=
Location ofself
in the original input.
core :: Object :: output_class_name
Display class name on stdout (debug only).
# A NitiWiki link token.
#
# Something of the form `[[foo]]`.
#
# Allowed formats:
#
# * `[[Wikilink]]`
# * `[[Wikilink/Bar]]`
# * `[[Wikilink#foo]]`
# * `[[Wikilink/Bar#foo]]`
# * `[[title|Wikilink]]`
# * `[[title|Wikilink/Bar]]`
# * `[[title|Wikilink/Bar#foo]]`
class TokenWikiLink
super TokenLink
redef fun emit_hyper(v) do
v.decorator.add_wikilink(v, self)
end
redef fun check_link(v, out, start, token) do
var md = v.current_text
if md == null then return -1
var pos = start + 2
var tmp = new FlatBuffer
pos = md.read_md_link_id(tmp, pos)
if pos < start then return -1
var name = tmp.write_to_string
if name.has("|") then
var parts = name.split_once_on("|")
self.name = parts.first
self.link = parts[1]
else
self.name = null
self.link = name
end
pos += 1
pos = md.skip_spaces(pos)
if pos < start then return -1
return pos
end
end
lib/markdown/wikilinks.nit:53,1--94,3