kopia lustrzana https://github.com/miklobit/TiddlyWiki5
Fix problem with parsing text references
rodzic
b882a0dff1
commit
1f82ebc7c3
|
@ -461,7 +461,7 @@ Returns an object with the following fields, all optional:
|
|||
*/
|
||||
exports.parseTextReference = function(textRef) {
|
||||
// Separate out the title, field name and/or JSON indices
|
||||
var reTextRef = /^\s*([^!#]+)?(?:(?:!!([^\s]+))|(?:##(.+)))?\s*/mg,
|
||||
var reTextRef = /(?:(.*?)!!(.+))|(?:(.*?)##(.+))|(.*)/mg,
|
||||
match = reTextRef.exec(textRef),
|
||||
result = {};
|
||||
if(match && reTextRef.lastIndex === textRef.length) {
|
||||
|
@ -473,7 +473,13 @@ exports.parseTextReference = function(textRef) {
|
|||
result.field = match[2];
|
||||
}
|
||||
if(match[3]) {
|
||||
result.index = match[3];
|
||||
result.title = match[3];
|
||||
}
|
||||
if(match[4]) {
|
||||
result.index = match[4];
|
||||
}
|
||||
if(match[5]) {
|
||||
result.title = match[5];
|
||||
}
|
||||
} else {
|
||||
// If we couldn't parse it
|
||||
|
|
|
@ -39,8 +39,11 @@ describe("Utility tests", function() {
|
|||
expect(ptr("ti#tle##index")).toEqual(
|
||||
{ title : 'ti#tle', index : 'index' }
|
||||
);
|
||||
expect(ptr("ti!tle!!field")).toEqual(
|
||||
{ title : 'ti!tle', field : 'field' }
|
||||
);
|
||||
expect(ptr("title##index!!field")).toEqual(
|
||||
{ title : 'title', index : 'index!!field' }
|
||||
{ title : 'title##index', field : 'field' }
|
||||
);
|
||||
expect(ptr("title!!field##index")).toEqual(
|
||||
{ title : 'title', field : 'field##index' }
|
||||
|
|
Ładowanie…
Reference in New Issue