This plugin integrates the macOS BibDesk application with the PDF++ plugin in Obsidian, enabling you to manage and open PDFs associated with BibDesk entries directly from Obsidian. It works with external BibTeX files, leveraging BibDesk’s bdsk-file-<NUMBER>
fields, which act as macOS bookmarks, allowing seamless file access even if files are renamed or moved.
- External Library Support: Your BibDesk library does not need to reside within your Obsidian vault, making it ideal for large libraries (several GBs).
- Optimized BibTeX Parser: A custom BibTeX parser, faster than alternatives available for TypeScript and even BibDesk's own parser. Parsing occurs on a separate thread, ensuring minimal latency for Obsidian.
- Integration with PDF++: Opens PDFs stored outside your Obsidian vault via the PDF++ plugin.
Fuzzy Search Modal for Paper Selection
To install the plugin manually, follow these steps:
-
Clone the Repository:
git clone https://github.com/alberti42/obsidian-bibdesk-integration.git
-
Install Node.js Packages:
npm install
-
Generate the Parser for BibTeX Files:
npm run grammar
-
Build the macOS Bookmark Resolver:
npm run bookmark_resolver
Ensure you have the
swiftc
compiler available via the command line. Refer to Xcode’s documentation if needed. -
Transpile the Plugin:
npm run build
-
Verify Output: Ensure that the
dist
folder containsstyles.css
,bookmark_resolver
,main.js
, andmanifest.json
. -
Copy or Link Plugin Files to Obsidian:
- Create the plugin folder in your vault:
mkdir -p <YOUR_VAULT_FOLDER>/.obsidian/plugins/bibdesk-integration
- Copy or create symbolic links from the
dist
folder to the plugin folder created in step 7. This is helpful if you plan to further develop the plugin.
- Create the plugin folder in your vault:
If you find this plugin helpful, consider supporting its development:
- Author: Andrea Alberti
- GitHub: alberti42
- Donations:
Please feel free to contribute or report any issues in the GitHub repository.