iandol / bookends-tools

Alfred Workflow to Integrate with Bookends, an academic reference manager/bibliography tool for macOS
MIT License
96 stars 9 forks source link

betobibtex: nil object error #1

Closed ghost closed 7 years ago

ghost commented 7 years ago

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
iandol commented 7 years ago

Which version of Bookends, and how big is the database? I've noticed that on my machine using the Applescript events interface to bookends can cause WindowServer to grow its Virtual memory space, and have reported this to Jon. He has said he will have a look at optimising the code but doesn't think Bookends is responsible, this is a macOS error.

But your crash is different (though also due to Apple events), I think if it is reproducible, send Sonny Software the crash logs. Does it only happen with one database?

ghost commented 7 years ago

BE 12.8.3. The database is large (12.5k references). But I was only trying to run betobibtex on a static group containing two references.

I just created a new empty BE file, and imported the same two references from my regular (large) database. The script worked fine.

I've email Jon at Sonny Software with the crash logs.

Let me know if there is anything I can do on my end. I only ever keep one main BE file/database, and use smart and static groups to organise my reference collection for writing projects. I'd love to get the betobibtex workflow working, as it (alongside the becite workflow) would be my primary uses of your excellent collection and of Alfred itself.

On 16 Sep 2017, at 07:25, Ian notifications@github.com wrote:

Which version of Bookends, and how big is the database? I've noticed that on my machine using the Applescript events interface to bookends can cause WindowServer to grow its Virtual memory space, and have reported this to Jon. He has said he will have a look at optimising the code but doesn't think Bookends is responsible, this is a macOS error.

But your crash is different (though also due to Apple events), I think if it is reproducible, send Sonny Software the crash logs. Does it only happen with one database?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/iandol/bookends-tools/issues/1#issuecomment-329949482, or mute the thread https://github.com/notifications/unsubscribe-auth/AMslyhBh8oFR-Gfipt-ZeL_16xWgnMbZks5si2nsgaJpZM4PZhCf.

ghost commented 7 years ago

I might also note that the bebib workflow needed a small tweak to get it to work as described. When pressing alt, it would search for the chosen author name in Finder's search, instead of pasting a pandoc formatted reference into the text editor. It was trivial to modify the workflow by copying the existing cmd script which produces a bibkey, but just thought to mention it here.

iandol commented 7 years ago

I hope that Jon is going to try to tweak to the automatic bibtex export. I suspect your crash if fixable by Jon as it sounds like something stored in the database (not the size). You could try to rebuild your database and see if that helps?

Thanks for the bug report on the bebib, I'll have a look into it...

iandol commented 7 years ago

Actually there is no alt key trigger, what would you like it to do, i.e. copies the multimarkdown style citation as a vancouver to a footnote, but I don't know what y aou think formatted pandoc citation should look like? Perhaps I can add a variable so the user can enter their preferred output format?

ghost commented 7 years ago

I think what you've done is fine. I believe I misunderstood the original intent of the function and its wording (I could have sworn it said something about pandoc, but never mind). But alt was, strangely, triggering a search of that author's name in Finder. Anyhow, all is now well. Thank you again for these workflows.

iandol commented 7 years ago

I did make a new update (V1.0.5) that does use ⌥ to paste a reference as a pandoc formatted footnote. Also you can now customise the reference style in the environment variables.

becite is the tool which uses ⌥ to paste a pandoc temporary citation (which I use much more than bebib)...

iandol commented 7 years ago

@talazem did you get any feedback from Jon about the error?

ghost commented 7 years ago

Yes, we were in touch just today. Basically, it appears to have been something with my database, not with with the references. I ended up having to create a new .bdb file, export the references out in batches (testing your script at each batch), then recreate my static and smart groups (testing the script after each one). The new database is now complete, and your script is working fine.

Neither Jon nor I know what was the cause, but I am happy to report it is all working.

iandol commented 7 years ago

Good to know!