> On 2 May 2019, at 18:55, Christiaan Hofman <cmhof...@gmail.com> wrote:
> 
> 
> 
>> On 2 May 2019, at 18:12, Christiaan Hofman <cmhof...@gmail.com 
>> <mailto:cmhof...@gmail.com>> wrote:
>> 
>> 
>> 
>>> On 2 May 2019, at 17:22, Mahmood Shafeie Zargar <m...@msn.com 
>>> <mailto:m...@msn.com>> wrote:
>>> 
>>> Hi,
>>> 
>>> I would like to know where I can find an example of a script hook written 
>>> in JavaScript. 
>>> 
>>> I have tried things like this to no avail:
>>> 
>>> functionperformBibDeskActionWithPublications(pubs, scriptHook) {
>>> 
>>> }
>>> 
>>> The function code runs, but no value is loaded in the parameters.
>>> 
>>> Thanks,
>>> Mah
>> 
>> 
>> I haven’t tried using JXA script hooks, but I think they should work. Though 
>> it could be JXA hangs BibDesk, because of bugs with JXA (that Apple says 
>> aren’t bugs but just how it works), that will be fixed in the next release.
>> 
>> I am not an expert on JS, but shouldn’t it be:
>> 
>> function performBibDeskActionWithPublications(pubs, 
>> {forScriptHook:scriptHook}) {
>>      
>> }
>> 
>> Christiaan
> 
> 
> Here is the JXA version for the sample script hook:
> 
> function performBibDeskActionWithPublications(thePubs, { forScriptHook : 
> theScriptHook }) {
>       var theName = theScriptHook.name();
>       var theID = theScriptHook.id <http://thescripthook.id/>();
>       var theField = theScriptHook.fieldName();
>       var oldValues = theScriptHook.oldValues();
>       var newValues = theScriptHook.newValues();
>       var theKeys = [];
>       for (var aPub in thePubs) {
>               theKeys.push(aPub.citeKey);
>       }
>       var app = Application.currentApplication();
>       app.includeStandardAdditions = true;
>       app.displayDialog("Name: " + theName + "\n" + "ID: " + theID + "\n" + 
> "Cite Keys: " + theKeys + "\n" + "Field name: " + theField + "\n" + "Old 
> values: " + oldValues + "\n" + "New values: " + newValues, { buttons : 
> ["OK"], defaultButton : 1 });
> }
> 
> It works for me, at least with the current nightly.
> 
> Christiaan
> 


I’ve added some sample JXA script hooks on the Wiki.

Christiaan

_______________________________________________
Bibdesk-users mailing list
Bibdesk-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bibdesk-users

Reply via email to