mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2025-04-16 15:53:14 +00:00
feat: allow wiki pretty link to have id
This commit is contained in:
parent
18236b547f
commit
d5e9d2a71b
@ -23,8 +23,8 @@ exports.types = {inline: true};
|
||||
|
||||
exports.init = function(parser) {
|
||||
this.parser = parser;
|
||||
// Regexp to match
|
||||
this.matchRegExp = /\[\[(.*?)(?:\|(.*?))?\]\]/mg;
|
||||
// Regexp to match `[[Title^blockId|Alias]]`, the `^blockId` and `|Alias` are optional.
|
||||
this.matchRegExp = /\[\[(.*?)(?:\^([^|\s^]+))?(?:\|(.*?))?\]\]/mg;
|
||||
};
|
||||
|
||||
exports.parse = function() {
|
||||
@ -32,8 +32,13 @@ exports.parse = function() {
|
||||
this.parser.pos = this.matchRegExp.lastIndex;
|
||||
// Process the link
|
||||
var text = this.match[1],
|
||||
link = this.match[2] || text;
|
||||
blockId = this.match[2] || "",
|
||||
link = this.match[3] || text;
|
||||
if($tw.utils.isLinkExternal(link)) {
|
||||
// add back the part after `^` to the ext link, if it happen to has one.
|
||||
if(blockId) {
|
||||
link = link + "^" + blockId;
|
||||
}
|
||||
return [{
|
||||
type: "element",
|
||||
tag: "a",
|
||||
@ -51,7 +56,8 @@ exports.parse = function() {
|
||||
return [{
|
||||
type: "link",
|
||||
attributes: {
|
||||
to: {type: "string", value: link}
|
||||
to: {type: "string", value: link},
|
||||
id: {type: "string", value: blockId},
|
||||
},
|
||||
children: [{
|
||||
type: "text", text: text
|
||||
|
Loading…
x
Reference in New Issue
Block a user