add: backlink template

resolve: #42
This commit is contained in:
xiangyu 2022-06-10 22:34:58 +08:00
parent 8f2bae9ceb
commit b88f826e34
3 changed files with 24 additions and 3 deletions

View File

@ -59,7 +59,7 @@ class AddonExport extends AddonBase {
}
this.doUpdate();
}
doUpdate(event: XULEvent) {
doUpdate() {
(
this._window.document.getElementById(
"Knowledge4Zotero-export-embedLink"

View File

@ -415,16 +415,32 @@ class Knowledge extends AddonBase {
const link = this.getNoteLink(linkedNote);
const linkText = linkedNote.getNoteTitle().trim();
let _newLine: string = "";
const templateText = this._Addon.template.getTemplateText("[QuickInsert]");
const insertTemplateText =
this._Addon.template.getTemplateText("[QuickInsert]");
try {
_newLine = new Function(
"link, subNoteItem, noteItem",
"return `" + templateText + "`"
"return `" + insertTemplateText + "`"
)(link, linkedNote, targetNote);
} catch (e) {
alert(e);
}
this.addLineToNote(targetNote, _newLine, lineIndex, true);
const backLinkTemplateText =
this._Addon.template.getTemplateText("[QuickBackLink]");
if (backLinkTemplateText) {
try {
_newLine = new Function(
"subNoteItem, noteItem",
"return `" + backLinkTemplateText + "`"
)(linkedNote, targetNote);
} catch (e) {
alert(e);
}
this.addLineToNote(linkedNote, _newLine, -1, true);
}
this._Addon.views.showProgressWindow(
"Better Notes",
"Link is added to workspace"

View File

@ -11,6 +11,11 @@ class AddonTemplate extends AddonBase {
text: '<a href="${link}" rel="noopener noreferrer nofollow">${subNoteItem.getNoteTitle().trim() ? subNoteItem.getNoteTitle().trim() : link}</a>',
disabled: false,
},
{
name: "[QuickBackLink]",
text: '<p>Referred in <a href="${Zotero.Knowledge4Zotero.knowledge.getNoteLink(noteItem)}" rel="noopener noreferrer nofollow">${noteItem.getNoteTitle().trim() ? noteItem.getNoteTitle().trim() : "Main Note"}</a></p>',
disabled: false,
},
{
name: "[QuickImport]",
text: '<blockquote>\n<p><strong>Linked Note:</strong></p>\n${subNoteLines.join("")}\n</blockquote>',