├── .gitignore ├── Fill according to DOI ├── Fill according to DOI.applescript ├── LICENSE └── README.md ├── Find DOI ├── Find DOI.applescript ├── LICENSE └── README.md ├── Import .bib files from folder ├── .gitignore ├── HazelRules.png ├── Import bib files from folder.applescript └── README.md ├── Import items from import folder ├── Import items for import folder.applescript ├── LICENSE └── README.md ├── Import pdfs from folder ├── .gitignore ├── HazelRules.png ├── Import PDFs from folder.applescript ├── LICENSE └── README.md ├── LICENSE └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | *.DS_Store 2 | .AppleDouble 3 | .LSOverride 4 | 5 | # Icon must end with two \r 6 | Icon 7 | 8 | 9 | # Thumbnails 10 | ._* 11 | 12 | # Files that might appear in the root of a volume 13 | .DocumentRevisions-V100 14 | .fseventsd 15 | .Spotlight-V100 16 | .TemporaryItems 17 | .Trashes 18 | .VolumeIcon.icns 19 | .com.apple.timemachine.donotpresent 20 | 21 | # Directories potentially created on remote AFP share 22 | .AppleDB 23 | .AppleDesktop 24 | Network Trash Folder 25 | Temporary Items 26 | .apdisk -------------------------------------------------------------------------------- /Fill according to DOI/Fill according to DOI.applescript: -------------------------------------------------------------------------------- 1 | use BibDesk : application "BibDesk" 2 | use scripting additions 3 | 4 | tell BibDesk 5 | set theDoc to get first document 6 | set originalPub to selection of theDoc 7 | set originalPub to item 1 of originalPub 8 | set theDoi to value of originalPub's field "DOI" 9 | if theDoi = "" then 10 | display notification "There is no DOI there." 11 | return 12 | end if 13 | 14 | set tempPub to (import theDoc from theDoi) 15 | 16 | if length of tempPub = 1 then 17 | set tempPub to item 1 of tempPub 18 | else 19 | display notification "Umm, I didn't find anything at that DOI. Bummer." 20 | return 21 | end if 22 | 23 | set theNewFields to every field of tempPub 24 | repeat with theField in every field of tempPub 25 | set fieldName to name of theField 26 | set value of field fieldName of originalPub to (get value of field fieldName of tempPub) 27 | end repeat 28 | delete tempPub 29 | 30 | set originalPub's cite key to originalPub's generated cite key 31 | if linked file of originalPub is not {} then auto file originalPub 32 | 33 | select originalPub -- So it appears nicely at the top of the window 34 | end tell 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /Fill according to DOI/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Glenn Hoetker 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Fill according to DOI/README.md: -------------------------------------------------------------------------------- 1 | # DESCRIPTION AND USE # 2 | 3 | Filling in the rest of a bibliographic entry given a DOI. 4 | 5 | * Select a record containing a DOI 6 | * Run this script. 7 | * To the degree possible, the fields in the original record will be filled according to the DOI 8 | 9 | I will often fill in part of the Author and Title fields (perhaps copying from a PDF I've imported) and then run my "Find DOI" script. Assuming it finds a DOI, I will then run this script. Viola -- a full entry with minimal typing. 10 | 11 | # LIMITATIONS # 12 | 13 | This script uses BibDesk's own importing functionality (I think it is essentially what you would get if you had the DOI in your clipboard and selected the Publication/New Publication from Clipboard menu item). This may fail if the entry being returned is malformed (from BibDesk's perspective). 14 | 15 | 16 | # CAUTIONS # 17 | 18 | * This script will destructively overwrite all fields in the original record. For my purposes, this is good behavior. If it isn't for you, you'll need to edit the code. 19 | * The code assumes you have set preferences to allow the autogeneration of cite keys and the auto filing of publications. I have no idea what will happen if you have not. If you don't find the behavior desired, change as desired. 20 | 21 | 22 | -------------------------------------------------------------------------------- /Find DOI/Find DOI.applescript: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghoetker/BibDeskAppleScripts/7b6ec3179d71fc83e35947b01e25cfc4d193b8a2/Find DOI/Find DOI.applescript -------------------------------------------------------------------------------- /Find DOI/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Glenn Hoetker 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Find DOI/README.md: -------------------------------------------------------------------------------- 1 | # DESCRIPTION AND USE # 2 | 3 | Used for finding DOI entries. 4 | 5 | * Select a record containing an author and/or title. 6 | * Run this script. 7 | * You will get up to 3 dialogs listing potential matches. 8 | * If you accept one, it’s corresponding DOI will be included into your record. 9 | * If you skip all three potential matches, the script ends without adding any DOI. 10 | 11 | I will often fill in part of the Author and Title fields (perhaps copying from a PDF I've imported) and then run this script. Assuming it finds a DOI, I will then run my "Fill according to DOI" script. Viola -- a full entry with minimal typing. 12 | 13 | # REQUIREMENTS 14 | 15 | * JSON Helper for AppleScript 16 | * Satimage.osax 17 | 18 | Also, of course, you'll need to edit paths to reflect wherever you've stored your bibliography.bib file. 19 | 20 | Many thanks to everyone else who has written Applescripts. Actually seeing something in practice makes all the difference when it comes to writing scripts. 21 | -------------------------------------------------------------------------------- /Import .bib files from folder/.gitignore: -------------------------------------------------------------------------------- 1 | *.DS_Store 2 | .AppleDouble 3 | .LSOverride 4 | 5 | # Icon must end with two \r 6 | Icon 7 | 8 | 9 | # Thumbnails 10 | ._* 11 | 12 | # Files that might appear in the root of a volume 13 | .DocumentRevisions-V100 14 | .fseventsd 15 | .Spotlight-V100 16 | .TemporaryItems 17 | .Trashes 18 | .VolumeIcon.icns 19 | .com.apple.timemachine.donotpresent 20 | 21 | # Directories potentially created on remote AFP share 22 | .AppleDB 23 | .AppleDesktop 24 | Network Trash Folder 25 | Temporary Items 26 | .apdisk -------------------------------------------------------------------------------- /Import .bib files from folder/HazelRules.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghoetker/BibDeskAppleScripts/7b6ec3179d71fc83e35947b01e25cfc4d193b8a2/Import .bib files from folder/HazelRules.png -------------------------------------------------------------------------------- /Import .bib files from folder/Import bib files from folder.applescript: -------------------------------------------------------------------------------- 1 | (* 2 | MIT License 3 | 4 | Copyright (c) 2017 Glenn Hoetker 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in all 14 | copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | SOFTWARE. 23 | 24 | *) 25 | 26 | ***************** DESCRIPTION AND USE ***************** 27 | 28 | * Leverages Hazel (https://www.noodlesoft.com) to import bib files from a watched folder into a pre-specified BibDesk file 29 | * Could probably be modified to work with Folder Actions 30 | * Because Hazel triggers on individual files, the script is not set up for importing multiples files at once. One could do so. 31 | 32 | 33 | -- SETTINGS -- 34 | 35 | -- Yes, I know these would be cleaner as properties. However, Hazel seems to not tolerate properties in embedded scripts 36 | 37 | set bibDeskFile to "/path/to/bibliography.bib" 38 | set setCiteKeyTF to "true" -- if set to "true", the original cite key will be replaced with an auto-generated one. May act unpredictably if an auto cite key pattern hasn't been set in BibDesk. 39 | 40 | -- MAIN -- 41 | 42 | tell application "BibDesk" 43 | open bibDeskFile 44 | set theDoc to get first document 45 | tell theDoc 46 | set newRec to first item of (import from theFile) 47 | if setCiteKeyTF is "true" then set newRec's cite key to newRec's generated cite key 48 | end tell 49 | end tell -------------------------------------------------------------------------------- /Import .bib files from folder/README.md: -------------------------------------------------------------------------------- 1 | # DESCRIPTION AND USE 2 | 3 | * Leverages Hazel (https://www.noodlesoft.com) to import bib files from a watched folder into the frontmost BibDesk file 4 | * Could probably be modified to work with Folder Actions 5 | * Because Hazel triggers on individual files, the script is not set up for importing multiples files at once. One could modify it to do so. 6 | * In Hazel, I have this action set to trigger on files 7 | 8 | ![Hazel rules](HazelRules.png?raw=true) 9 | 10 | The embedded script in the conditions is a one-liner: 11 | 12 | ```Applescript 13 | if application "BibDesk" is running then return true 14 | ``` 15 | 16 | I include that condition because my ``Import to BibDesk'' folder is actually synced from Dropbox and I don't want to trigger BibDesk to open if I saved something to that folder while I am away from the computer. That would create too great a chance of corrupting the bib file. Hazel's triggering behavior isn't totally clear to me; you may need to manually trigger the rules to run. 17 | 18 | The second embedded script is the included `Import bib files from folder.applescript.` Either included it as an embedded script in Hazel or save it elsewhere and have Hazel run it as an action. 19 | 20 | The "Move" step is totally optional. I like it because I can manually inspect bib files I'd sent to import in the event of error. -------------------------------------------------------------------------------- /Import items from import folder/Import items for import folder.applescript: -------------------------------------------------------------------------------- 1 | use Finder : application "Finder" 2 | use BibDesk : application "BibDesk" 3 | use scripting additions 4 | 5 | tell BibDesk to set theDoc to get first document 6 | 7 | tell application "Finder" to set myPDFs to every file of folder "Path:To:Folder to import from" whose name extension is "pdf" 8 | 9 | tell application "Finder" to set myBibs to every file of folder "Path:To:Folder to import from" whose name extension is "bib" 10 | 11 | repeat with eachFile in myPDFs 12 | set eachFileAlias to eachFile as alias 13 | tell application "BibDesk" 14 | tell theDoc 15 | set justImported to first item of (import with eachFileAlias) 16 | end tell 17 | -- Now autofile, after checking there is enough information 18 | if value of field "author" of justImported is "" then set value of field "author" of justImported to "00Fixme" 19 | if value of field "title" of justImported is "" then set value of field "title" of justImported to "00Fixme" 20 | if value of field "year" of justImported is "" then set value of field "year" of justImported to "9999" 21 | set justImported's cite key to justImported's generated cite key 22 | auto file justImported 23 | end tell 24 | end repeat 25 | 26 | repeat with eachFile in myBibs 27 | set eachFileAlias to eachFile as alias 28 | tell application "BibDesk" 29 | tell theDoc 30 | set newRec to first item of (import from eachFileAlias) 31 | set newRec's cite key to newRec's generated cite key 32 | end tell 33 | end tell 34 | end repeat -------------------------------------------------------------------------------- /Import items from import folder/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Glenn Hoetker 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Import items from import folder/README.md: -------------------------------------------------------------------------------- 1 | # DESCRIPTION AND USE 2 | 3 | * Imports PDFs and .bib files from a pre-designated folder. I use this because I've set up my automatic import scripts (elsewhere on this Github archive) to only run if BibDesk is running when they first trigger. Given how Hazel (which I use to trigger auto-import) works, import will not automatically trigger when I next launch BibDesk. Running this script takes care of imports. 4 | 5 | # REQUIREMENTS # 6 | 7 | * You must replace both appearances of "Path:To:Folder to import from" with the desired path. (Note that, unlike in some of my other scripts, I used Apple's colon-infused path notation here instead of treating things as POSIX files. No idea why. Shouldn't be a problem unless you got on a roll and didn't notice the difference.) 8 | 9 | # CAUTIONS # 10 | 11 | * This script assumes you've set up preferences to auto-generate citekeys and autofile documents. I don't know what will happen if you've not done so. 12 | 13 | 14 | -------------------------------------------------------------------------------- /Import pdfs from folder/.gitignore: -------------------------------------------------------------------------------- 1 | *.DS_Store 2 | .AppleDouble 3 | .LSOverride 4 | 5 | # Icon must end with two \r 6 | Icon 7 | 8 | 9 | # Thumbnails 10 | ._* 11 | 12 | # Files that might appear in the root of a volume 13 | .DocumentRevisions-V100 14 | .fseventsd 15 | .Spotlight-V100 16 | .TemporaryItems 17 | .Trashes 18 | .VolumeIcon.icns 19 | .com.apple.timemachine.donotpresent 20 | 21 | # Directories potentially created on remote AFP share 22 | .AppleDB 23 | .AppleDesktop 24 | Network Trash Folder 25 | Temporary Items 26 | .apdisk -------------------------------------------------------------------------------- /Import pdfs from folder/HazelRules.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghoetker/BibDeskAppleScripts/7b6ec3179d71fc83e35947b01e25cfc4d193b8a2/Import pdfs from folder/HazelRules.png -------------------------------------------------------------------------------- /Import pdfs from folder/Import PDFs from folder.applescript: -------------------------------------------------------------------------------- 1 | (* 2 | MIT License 3 | 4 | Copyright (c) 2017 Glenn Hoetker 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in all 14 | copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | SOFTWARE. 23 | 24 | *) 25 | 26 | ***************** DESCRIPTION AND USE ***************** 27 | 28 | * Leverages Hazel (https://www.noodlesoft.com) to import PDFs files from a watched folder into a pre-specified BibDesk file 29 | * Could probably be modified to work with Folder Actions 30 | * Relies on having auto file set up in BibDesk as well as a rule to auto generate a cite key. 31 | 32 | 33 | tell application "Finder" to set eachFileAlias to theFile as alias 34 | tell application "BibDesk" 35 | open "/path/to/yourbibliography.bib" 36 | set theDoc to get first document 37 | tell theDoc 38 | import with eachFileAlias 39 | 40 | -- Now autofile, after checking there is enough information. If there is not, put in easy to find artificial data. 41 | set justImported to last item of (publications of theDoc's last import group) -- Could be done more cleanly 42 | if value of field "author" of justImported is "" then set value of field "author" of justImported to "00FixMe" 43 | if value of field "title" of justImported is "" then set value of field "title" of justImported to "00Fixme" 44 | if value of field "year" of justImported is "" then set value of field "year" of justImported to "9999" 45 | set justImported's cite key to justImported's generated cite key 46 | auto file justImported 47 | end tell 48 | end tell 49 | -------------------------------------------------------------------------------- /Import pdfs from folder/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Glenn Hoetker 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Import pdfs from folder/README.md: -------------------------------------------------------------------------------- 1 | # DESCRIPTION AND USE # 2 | 3 | * Leverages Hazel (https://www.noodlesoft.com) to import PDFs files from a watched folder into a pre-specified BibDesk file 4 | * Could probably be modified to work with Folder Actions 5 | * Relies on having auto file set up in BibDesk as well as a rule to auto generate a cite key. 6 | 7 | 8 | * In Hazel, I have this action set to trigger on files 9 | 10 | ![Hazel rules](HazelRules.png?raw=true) 11 | 12 | The embedded script in the conditions is a one-liner: 13 | 14 | ```Applescript 15 | if application "BibDesk" is running then return true 16 | ``` 17 | 18 | I include that condition because my ``Import to BibDesk'' folder is actually synced from Dropbox and I don't want to trigger BibDesk to open if I saved something to that folder while I am away from the computer. That would create too great a chance of corrupting the bib file. Hazel's triggering behavior isn't totally clear to me; you may need to manually trigger the rules to run. 19 | 20 | The second embedded script is the included `Import PDFs from folder.applescript.` Either included it as an embedded script in Hazel or save it elsewhere and have Hazel run it as an action. 21 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Glenn Hoetker 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | **_Unfortunately, changes made in Mojave have crippled access to the Satimage.osax, which is a dependency for most of these scripts. It is unclear when I'll have time to rewrite them. So, for the moment, they are probably unfunctional and you should have no expectation for when they'll fixed. Trust me, I'm as bummed as you are about this. Feel free to fork the project if you are so motivated._** 2 | 3 | 4 | # BibDeskAppleScripts 5 | A collection of Applescripts to assist with BibDesk. Some are meant to also work with Hazel . Some are dependent on how I have my BibDesk preferences set up, but I hope some people will find them helpful. 6 | 7 | Some of the scripts are also dependent on 8 | 9 | * JSON Helper for AppleScript 10 | * Satimage.osax 11 | 12 | Also, of course, you'll need to edit paths to reflect wherever you've stored your bibliography.bib file. 13 | 14 | Many thanks to everyone else who has written Applescripts. Actually seeing something in practice makes all the difference when it comes to writing scripts. 15 | 16 | # Included scripts 17 | 18 | Not so many yet, but I'll add more over time. 19 | 20 | ## Auto import from a watched folder. 21 | 22 | * Import PDFs from folder.applescript 23 | * Import bib files from folder.applescript 24 | * Import items from import folder (manually triggers the functionality of the two scripts above) 25 | 26 | ## Complete bibliographic information 27 | * Find DOI 28 | * Fill according to DOI 29 | --------------------------------------------------------------------------------