Last active
June 27, 2024 19:35
-
-
Save acsr/7fced5d3f238dc6180fcdb76c9f82803 to your computer and use it in GitHub Desktop.
This code was moved to a regular repo. See last comment. – Enhanced eta-template to export multiple Zotero items for pasting into Logseq including title, url, creators, tags, select link, abstractNote, multiple notes, multiple relations and the rights. Code completely rewritten after support by Emiliano Heyns and his update of the code of his Zo…
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<%- for (const item of it.items) { | |
const [ , kind, lib, key ] = item.uri.match(/^https?:\/\/zotero\.org\/(users|groups)\/((?:local\/)?[^/]+)\/items\/(.+)/) | |
const select = (kind === 'users') ? `zotero://select/library/items/${key}` : `zotero://select/groups/${lib}/items/${key}` | |
const relations = [] | |
if (item.relations) { | |
for (const [kind, rels] of Object.entries(item.relations)) { | |
for (const rel of rels) { | |
relations.push(rel) | |
} | |
} | |
} | |
-%> | |
- ### <%= item.title %> | |
<%- if (item.creators.length) { -%> | |
<%= "\n" %>creators:: <% item.creators.forEach((creator, i) => { %><%= creator.creatorType %>: <%= creator.name || `${creator.firstName || ''} ${creator.lastName || ''}`.trim() %><% if (i < item.creators.length - 1) { %>, <% } %><% }) %> | |
<%- } -%> | |
<%- if (item.url) { -%> | |
<%= "\n" %>url:: <%= item.url %> | |
<%- } -%> | |
<%- if (item.tags.length) { -%> | |
<%= "\n" %>tags:: <% item.tags.forEach((tag, i) => { %>#[[<%= tag.tag %>]]<% if (i < item.tags.length - 1){%>, <%}%><% }) %> | |
<%- } -%> | |
<%- if (item.citationKey) { -%> | |
<%= "\n" %>zotero:: [@<%= item.citationKey %>](<%= select %>) | |
<%- } -%> | |
<%= "\n" %> | |
<%- if (item.abstractNote) { -%> | |
<%= "\r" %> - #### abstractNote | |
<%="\r"%><%=item.abstractNote%> | |
<%- } -%> | |
<%- if (item.notes.length) { -%> | |
<%= "\r" %> - #### Notes | |
<%- for (const note of item.notes) { -%> | |
<%= "\r" %> - ##### Note [<%= note.key %>](<%= note.uri %> "URI Link") | |
<%~ note.note %> | |
<%- } -%> | |
<%- } -%> | |
<%- if (relations.length) { -%> | |
<%= "\r" %> - #### Relations | |
<%="\r"%> collapsed:: true | |
<%- for (const rel of relations) { -%> | |
<%= "\r" %> - <%= rel %> | |
<%- } -%> | |
<%- } -%> | |
<%- if (item.rights) { -%> | |
<%= "\r" %> - #### Rights | |
<%= "\r" %> - <%= item.rights %> | |
<%- } -%> | |
<% } %> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This gist was experimentally cloned and I moved the revision states until and including revision 11 of this gist to a new public full fledged repo at https://github.com/acsr/Zotero-BetterBibTeX-QuickCopy-eta-template .
I am trying to preserve the comments in the new repo by migrating the comments from this gist to a discussion in the new repo. I successfully exported all the former comments as JSOn via the
Github API
and usingGithub CLI
Why? I want to allow to manage the further development and even migration to another approach by an dedicated Issue Tracking workflow in this repo. Also the Wiki allows to add some illustrated examples and explain the use cases and limitation of this tool for others.