Skip to main content

Import Zotero annotations with Dendron integration

Project description

Zendron

Version: 1.1.0

Introduction

  • This package was developed for porting Zotero annotations and metadata to markdown. These markdown notes are then brought into a Dendron hierarchy for integration with vault notes. We recommend using the package within Visual Studio Code.The end goal is to get a two way sync between notes in Zotero and notes in Dendron, but this has some difficulties and limitations that are taking some time to address. For now only a one way sync from Zotero to Dendron is supported.

Install Instructions

  • It is recommended to build a conda env for installation.
  • Install Dendron CLI.
    • npm install -g @dendronhq/dendron-cli@latest
  • Install the zendron
    • python -m pip install zendron

Zotero API key

  • Zotero API key
  • We recommend setting up you Zotero API key with the following settings to allow for full functionality. This key can then be copy pasted in the configuration file. You should add your key to .gitignore to prevent others from accessing your Zotoero database. If the key is lost you can always generate a new one.

Zotero and File Import Configuration

All zendron configuration is handled in config.yml.

library_id : 4932032 # Zotero library ID
library_type : group # [user, group] library
api_key : FoCauOvWMlNdYmpYuY5JplTw # Zotero API key
collection: null # Name of Zotero Collection, null for entire library
item_types: [journalArticle, book, preprint, conferencePaper, report] # List of item types according to [pyzotero](https://pyzotero.readthedocs.io/en/latest/)
local_image_path: /Users/<username>/Zotero/cache # Local path for importing annotated images
dendron_limb: zendron.import # Dendron import limb e.g. zendron.import.paper-title.annotations.md
zotero_comment_title: zendron comment # fixed for now... needed for eventual 2-way sync.
pod_path: zotero_pod # Name of dendron pod, removed after completion of import. We will later add configuration for this to remain. This will allow for non Dendron users to import markdown Zotero notes in a strucutred hierarchy.

Basic Usage

There are only two basic commands that work as of now.

  • zendron
    • This command should only be run in the root directory of the workspace.
    • This command imports notes according to a defined config.yml. Once the command is run the first time the user needs to modify their configuration ./conf/config.yaml according the Zotero library specifications and the Zotero API.
    • Notes are imported with a ## Time Created heading. This allows for stable reference from other notes, within the note vault. We autogenerate a *.comments.md that should be used for taking any additional notes within Dendron. Additional notes taken within the meta data file (notes/zendron.import.<paper-title>.md), or the *.annotations.md will be overwritten after running zendron for a second time.
  • zendron remove=true
    • This command removes all imported notes and associated links. We run a createMissingLinkedNotes following the deletion of Dendron notes to repopulate tags and users that will be removed on running zendron-remove.
    • There are more complicated removal's that could be desired so we plan to eventually change this from a bool to an str.

Miscellaneous

  • The zendron_cache is not currenlty in use. We do an entire relaod each time, so for large libraries performance will be poor.
    • You an feel free to delete the cache as you please.
  • If there are run that fail, sometimes a .hydra with the given configuraiton will be generated in the root dir. This isn't an issue but it contains the API information and should therefore be added to the .gitignore as a safeguard. In addition these files can be used to inspect the reason for the faiure.
  • __main__.log is generated after running a zendron, this can also be deleted as you please. It is also useful for inspecting an failures to import.

Troubleshooting

  • If you are having trouble with startup you can use this Zendron-Test template and try to reproduce your issues here. Simply click on Use this template, clone the repo and try to run zendron here. This will allow for us to catch things we overlooked for different user workspace configuration etc. Once you have tried to reproduce issues here please submit an issue on Zendron.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zendron-1.1.0.tar.gz (24.5 kB view details)

Uploaded Source

Built Distribution

zendron-1.1.0-py3-none-any.whl (28.8 kB view details)

Uploaded Python 3

File details

Details for the file zendron-1.1.0.tar.gz.

File metadata

  • Download URL: zendron-1.1.0.tar.gz
  • Upload date:
  • Size: 24.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for zendron-1.1.0.tar.gz
Algorithm Hash digest
SHA256 11a115037f514f0bd5e7b6263d1f58ad0aed6c3691c7adca0e12bcd869e5f01d
MD5 cf106536ea9d872283189dd3c1426fc1
BLAKE2b-256 5d6e82f58afec2129ed2c21400d938bd6cd21a385c6b61bb2064ecee2bffdf65

See more details on using hashes here.

File details

Details for the file zendron-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: zendron-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 28.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for zendron-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 acfdaa5de171e48bdef142ab081f621a741df49f78a3b25022f73cf641e086fd
MD5 505ac87d6363595261f84060e5458fe3
BLAKE2b-256 80fcb7608e90336a2133f9d8215b039cafbeeee3a1b2d5f673ce820187d3e3bd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page