iandol / bookends-tools Goto Github PK
View Code? Open in Web Editor NEWAlfred Workflow to Integrate with Bookends, an academic reference manager/bibliography tool for macOS
License: MIT License
Alfred Workflow to Integrate with Bookends, an academic reference manager/bibliography tool for macOS
License: MIT License
Sometimes when I use betobib export the exported bibfile does not contain valid bibtex but rather simply the list of entries in the form of their PDF title (e.g. citekey_title-with-no-spaces). This will be true even if I have the default format set to Bibtex. Do you have any idea why this would be?
Thanks again for these great tools.
Hi. Is it possible to open the PDF associated with a reference? I know I can use shift with becite to see a preview, but I would like to be able to open the pdf directly. Perhaps a bepdf, which searches the library and for the selected reference in the menu displays the pdf in the default viewer? Thanks much. Bookends-Tools is super!
Is there a way to use Bookends Tools to search for a reference and get the hyperlink to it in Text format (i.e., bookends://sonnysoftware.com/6503 )?
The first is more of a request, the second is an issue I'm running into:
Thanks!
Thanks so much for this wonderful set of tools!
I use this along with your scrivomatic/pandocomatic workflow.
It's fantastic!
I'm running into some trouble with the exporting of the BibTex file to JSON. It works with the smaller groups in
my library like a charm. But when I try to export the larger 1500+ references to a large JSON file, I get the following error:
"An error has occurred: SQL Error line 1:42: unexpected end of file"
I wrote to Jon at Sonny who said to contact you. I rebuilt the library, so it's not this.
And I'm trying to go through the bib entries to see if there is something malformed.
Do you have any thoughts as to what I might try? It might make sense to export a BibTex file and see if that is properly formatted. But I'm hoping that you have another suggestion before I start my weeding.
Maurice
I ran into an issue of the betobibtex creating a blank JSON. If I set BibTeXtoJSON to false, I would then get a .bib file that was not properly formatted for pandoc-citeproc to read (the error stated that there was a "," and whitespace was expected). However, the issue appears to have arisen from the lack of an author in one of the citations or an incomplete citation generally. Once the offending citation was removed from the group, the JSON was created normally.
Does it work for smart groups as well?
I tried both on Smart groups and static ones. I get no result.
I am using the latest BE, and Alfred, if that matters.
is it possible to add Editors as option to the authors?
When I run bookends-tools, for any command that search the bookends db I get things like this:
ERROR: Bookends Tools[Script Filter] Code 1: /Users/roambot/Dropbox/Personal/Alfred/Alfred.alfredpreferences/workflows/user.workflow.F5BD40AB-DC91-4498-B088-6E70D00D7F15/findReferencesAll.rb:167:in `block in returnResults': undefined method `+' for nil:NilClass (NoMethodError)
Any idea what is happening here?
QL does support multiple items, but not sure if Alfred does, need to investigate...
Hi Ian,
there is something I been meaning to ask.
The findReferencesAll.rb
script returns authors
and date
as the title of the json string and title of the work
as the subtitle. Could you point me out in the right direction so that I could add editor and/or translator as well? I gave it a try, but I am ruby illiterate.
Thanks!
I'm getting an error when running betobibtex. It reads: ‘An error has occurred: nil object’. It then offers the opportunity to send error details to SonnySoftware by email, which read:
----------------------------------------------------------------
Diagnostic Information
----------------------------------------------------------------
Error message: nil object
Trace:
RaiseNilObjectException
HitsAndGroupWindow.HitsAndGroupWindow.getGroupNameList%s%o<HitsAndGroupWindow.HitsAndGroupWindow>b
HitsAndGroupWindow.HitsAndGroupWindow.returnGroupNamesAppleEvent%%o<HitsAndGroupWindow.HitsAndGroupWindow>o<AppleEvent>
App.Event_HandleAppleEvent%b%o<App>o<AppleEvent>ss
XojoFramework$1288
_Z20aeDispatchAppleEventPK6AEDescPS_mPh
_ZL25dispatchEventAndSendReplyPK6AEDescPS_
aeProcessAppleEvent
AEProcessAppleEvent
_DPSNextEvent
-[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:]
-[NSApplication(NSEvent) nextEventMatchingMask:untilDate:inMode:dequeue:]
XojoFramework$1294
XojoFramework$1295
Delegate.Invoke%%
Application._CallFunctionWithExceptionHandling%%o<Application>p
XojoFramework$9814
XojoFramework$1294
-[NSApplication run]
XojoFramework$9816
RuntimeRun
_Main
main
start
Thanks very much for this very useful tool! I recently found that if my evernote is open, I cannot use the quickadd function to import DOI directly to Bookends. The DOI is still copied to the clipboard but left in the evernote instead of being sent to Bookends. Please could you look into this issue? Much appreciated!
Hi iandol, first of all thank you very much for taking care of this great toolbox!
I use the toBibTeX workflow quite often. My problem is that it doesn't export the references in BibTeX markup, which means that all formatting (italics, superscripts etc.) are lost.
With the dictionary-based scripting methods it has now become possible to export with proper BibTeX markup. I made some corresponding changes to the code. It's not done in the most elegant way, and I was also not able to get the "repeat while" loop running. For larger groups it is considerably slower than your version.
Nevertheless, you may want to have a look at it and find a better way to integrate the changes.
Cheers,
Hannes
The first script used user1 for inserting references. It required minimal modification to use it for bibtex citation.
#!/usr/bin/osascript
-------------------------------------------------------------------------
-- SCRIPT FOR SETTING CITATION USING {AUTHOR, DATE #UID}
-------------------------------------------------------------------------
on run argv
set refItem to argv as text
tell application "Bookends"
-- Extract the Citekey
set rBib to («event ToySRFLD» refItem given string:"user1")
set refBib to text items of rBib
set AppleScript's text item delimiters to {"'"}
set AppleScript's text item delimiters to {""}
-- Set citation
set refCitation to "\\cite[]" & "{" & refBib & "}"
set the clipboard to {Unicode text:refCitation}
end tell
end run
Now, it dropped user1 to construct things from the author and unique ID.
The unique ID is good for scanning. So is the User1. I don't know why you want to move to the unique ID system. The unique is problematic for the latex usage (without scanning).
#!/usr/bin/osascript
-------------------------------------------------------------------------
-- SCRIPT FOR SETTING CITATION USING {AUTHOR, DATE #UID}
-------------------------------------------------------------------------
on run argv
set refItem to argv as text
tell application "Bookends"
-- Extract first Author
set refAuthorList to («event ToySRFLD» refItem given string:"authors")
set AppleScript's text item delimiters to {","}
set refAuthors to text items of refAuthorList
set AppleScript's text item delimiters to {"'"}
set refAuthor to first item of refAuthors
set AppleScript's text item delimiters to {""}
-- Extract date
set refDateRaw to («event ToySRFLD» refItem given string:"thedate")
set cmd to "echo '" & refDateRaw & "' | sed 's/\\([0-9]*\\)\\(.*\\)/\\1/g'"
set refDate to (do shell script cmd)
-- Set citation
set refCitation to "{" & refAuthor & ", " & refDate & ", #" & refItem & "}"
set the clipboard to {Unicode text:refCitation}
end tell
end run
Hi
becite would be even better if we could input modifiers ie page numbers, a prefix and a suffix, omit author, so that the user (me!) doesn't have to remember the necessary syntax.
TIA
Graeme
Hiya,
Thank you for the workflow.
Is there a simple way to have the paper/book title feature in the result text field and the author/year in the subtext field? i.e. swap them around.
Cheers,
First of all, thank you for these amazing tools. I noticed that you are also the author of scrivomatic which I have been using with Scrivener and these bookends tools to make reference managing a breeze.
The issue that I am having with toBibTeX and the subsequent conversion to JSON is at the JSON conversion step. I had a different issue with this back in 2020 (#8), but none of the cite keys are empty and I have even gone through the keys to make sure that none of them were duplicates. The attached screenshot is the error that I am getting. I narrowed down the cause and it appears to have been caused by special characters in the abstract field (see second screenshot). Not sure how to put that special character in a SQL search, but I thought that I would bring it to your attention in case anyone else has a similar issue.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.