8.2 KiB
8.2 KiB
Template Usage
This documentation is for beginners.
If you want to customize your own template, see template doc. Post an issue if you need help.
You can find templates under the Workspace Tab/Window->Edit:

Add a template
Click the Edit Templates to open the editor.

Create a blank template, or from a note. Here are example templates for the test:
Copy The Name & template text to a new template and save it!
Template Name must include one of these keywords:
Custom Templates
These templates can have different names. The keyword must be incluede in the template name.
- Text: indicate it's a normal template
- Note: indicate it's a note template. Must select notes before inserting
- Item: indicate it's an item template. Must select items before inserting
System Templates
Only the template with specific name will be called.
- QuickInsert: Called when inserting a note link to main note.
- QuickBackLink: Called when inserting a note link to main note. The template will be inserted to the end of the sub-note and point to the main note by default.
- QuickImport: Called when importing a sub-note to main note.
- QuickNote: Called when creating a note from an annotation.
- ExportMDFileName: Called when exporting notes to markdown in batch/linked notes to markdown mode. The rendered template will be file name.
Template Examples
Welcome to share & contribute your template!
[Note] with meta-data
<p><span style="background-color: #ffd40080">Note: ${link}</span></p>
${topItem?`<p>Title: ${topItem.getField('title')}</p>
<p>Author: ${topItem.getField('firstCreator')}</p>
<p>Date: ${topItem.getField('date')}</p>`:''}
[Item] meta-data
<h2>Item Meta Data:</h2>
<p>Title: ${topItem.getField('title')}</p>
<p>Author: ${topItem.getField('firstCreator')}</p>
<p>Date: ${topItem.getField('date')}</p>
[Item] item-notes with metadata:
<h1>${topItem.getField('title')}</h1>
<h2 style="color:red; background-color: #efe3da;">💡 Meta Data</h2>
<table>
<tr>
<th style="background-color:#dbeedd;">
<p style="text-align: right">Title </p>
</th>
<td style="background-color:#dbeedd;">
${topItem.getField('title')}
</td>
</tr>
<tr>
<th style="background-color:#f3faf4;">
<p style="text-align: right">Journal </p>
</th>
<td style="background-color:#f3faf4;">
${topItem.getField('publicationTitle')}
</td>
</tr>
<tr>
<th style="background-color:#dbeedd;">
<p style="text-align: right">1<sup>st</sup> Author </p>
</th>
<td style="background-color:#dbeedd;">
${topItem.getField('firstCreator')}
</td>
</tr>
<tr>
<th style="background-color:#f3faf4;">
<p style="text-align: right">Authors </p>
</th>
<td style="background-color:#f3faf4;">
${topItem.getCreators().map((v)=>v.firstName+" "+v.lastName).join("; ")}
</td>
</tr>
<tr>
<th style="background-color:#dbeedd;">
<p style="text-align: right">Pub. date </p>
</th>
<td style="background-color:#dbeedd;">
${topItem.getField('date')}
</td>
</tr>
<tr>
<th style="background-color:#f3faf4;">
<p style="text-align: right">DOI </p>
</th>
<td style="background-color:#f3faf4;">
<a href="https://doi.org/${topItem.getField('DOI')}">${topItem.getField('DOI')}</a>
</td>
</tr>
<tr>
<th style="background-color:#dbeedd;">
<p style="text-align: right">Archive </p>
</th>
<td style="background-color:#dbeedd;">
${topItem.getField('archive')}
</td>
</tr>
<tr>
<th style="background-color:#f3faf4;">
<p style="text-align: right">Archive Location </p>
</th>
<td style="background-color:#f3faf4;">
${topItem.getField('archiveLocation')}
</td>
</tr>
<tr>
<th style="background-color:#dbeedd;">
<p style="text-align: right">Call No. </p>
</th>
<td style="background-color:#dbeedd;">
${topItem.getField('callNumber')}
</td>
</tr>
</table>
${itemNotes.map((noteItem)=>{
const noteLine = `<h2 style="color:red; background-color: #efe3da;">📜 Note: <a href="${Zotero.Knowledge4Zotero.knowledge.getNoteLink(noteItem)
}" rel="noopener noreferrer nofollow">${noteItem.key}</a></h2>
<blockquote>
${noteItem.getNote()}
<p style="background-color: pink;"><strong>Merge Date: </strong> ${new Date().toISOString().substr(0,10)+" "+ new Date().toTimeString()}</p>
</blockquote>
<p style="color:red; background-color: #efe3da;"><strong>📝 Comments</strong></p>
<blockquote>
<p>Make your comments</p>
<p></p>
</blockquote>`;
copyNoteImage(noteItem);
return noteLine;
}).join("\n")}
[Item] metadata for CS
Modified on the previous template. Auto-ajust metadata according to item type.

<h2>${topItem.getField('title')}</h2>
<table>
<tr>
<th style="background-color:#dbeedd;">
<p style="text-align: right">Title </p>
</th>
<td style="background-color:#dbeedd;">
${topItem.getField('title')}
</td>
</tr>
<tr>
<th style="background-color:#f3faf4;">
<p style="text-align: right">${(()=>{
if(topItem.itemType === "conferencePaper") return "Conference";
if(topItem.itemType === "journalArticle") return "Journal";
if(topItem.itemType === "report") return "Publisher";
return "Publisher";})()}</p>
</th>
<td style="background-color:#f3faf4;">${(()=>{
if(topItem.itemType === "conferencePaper") {
const res = topItem.getField("conferenceName");
return res?res:topItem.getField("proceedingsTitle");
};
if(topItem.itemType === "journalArticle") return topItem.getField("publicationTitle");
if(topItem.itemType === "report") return topItem.getField("institution");
return topItem.getField("publicationTitle");})()}
</td>
</tr>
<tr>
<th style="background-color:#dbeedd;">
<p style="text-align: right">Authors </p>
</th>
<td style="background-color:#dbeedd;">
${topItem.getCreators().map((v)=>v.firstName+" "+v.lastName).join("; ")}
</td>
</tr>
<tr>
<th style="background-color:#f3faf4;">
<p style="text-align: right">Pub. date </p>
</th>
<td style="background-color:#f3faf4;">
${topItem.getField('date')}
</td>
</tr>
<tr>
<th style="background-color:#dbeedd;">
<p style="text-align: right">DOI </p>
</th>
<td style="background-color:#dbeedd;">
<a href="https://doi.org/${topItem.getField('DOI')}">${topItem.getField('DOI')}</a>
</td>
</tr>
<tr>
<th style="background-color:#f3faf4;">
<p style="text-align: right">URL</p>
</th>
<td style="background-color:#f3faf4;">
${topItem.getField('url')}
</td>
</tr>
<tr>
<th style="background-color:#dbeedd;">
<p style="text-align: right">CitationKey</p>
</th>
<td style="background-color:#dbeedd;">
${topItem.citationKey?topItem.citationKey:''}
</td>
</tr>
</table>
[Text] today
<h1>TODO: ${new Date().toLocaleDateString()}</h1>
<h2>Tasks</h2>
<ul>
<li>
Read Paper 1
</li>
<li>
Do some experiments
</li>
</ul>
<blockquote>
<p>Insert more items with meta-data in workspace window->Edit</p>
</blockquote>
<p></p>
<h2>Done Tasks</h2>
<p></p>
<h2>Todo Tomorrow</h2>
<p></p>
</div>
