Here is why: Excellent Handling of PDFs and Documents a book represents compressed knowledge in text form that is easily searchableĭEVONthink Pro has again become one of my main research tools for finding connections and gaps within topics. it is relatively easy to tell who is an expert and who is not. Books, academic papers, and in-depth articles are a mainstay of research because: Both for articles I write myself and as background for the areas I publish in. In the last few months, however, I have started a publishing company (Brilliantio) and have a lot of research material to process again. My professional career shifted to documentary feature directing, where buckets of detailed research were less important, and DEVONthink and TheBrain began to collect dust on my digital shelf. Even using Keyboard Maestro and the context menus. In recent years, I became increasingly reluctant to use DEVONthink because I found the user interface clunky and too full of various scripts and routines to work intuitively and quickly. My two favorite tools were TheBrain for mind mapping and DEVONthink for text analysis and repository. As an investigative documentary filmmaker, I had to process a huge amount of research material, trying to discover important connections and gaps in the story. I must confess that I have been an on-off user of DEVONthink Pro Office for many years. Which is accepted by JSON and doesn't seem to affect the functioning of the rest of your code.15 Cost of DEVONthink Confessions of a DEVONthink Prodigal Son The strategy is to escape the quote (") as (\") as required for JSON. Which is accepted by JSON and doesn't seem to affect the functioning of the rest of your think this works: However, using the modified code with "theEscapedName" gives: When I look at the JSON output, your original code using "theName" gives: To specify the required output means adding two backslashes, I think the first escapes the second! To add a single quote to a string in AppleScript already requires it be specified as \" The routine string parameters are actually "\"", and "\\\" I used that routine in your "addToGroups" to replace any quotes (") within "theName" to (\"). The following characters are reserved in JSON and must be properly escaped to be used in strings:Īll I did was introduce a "findAndReplaceInText" generic routine for replacing text in strings from the Mac Automation Scripting Guide which can then be used to escape the group name strings. Thanks again for providing this very useful workflow. In the meantime, I will remove the quotes (") from those group names. I don't know if you can encode the strings to protect the quote (") going into the jsonOutput or how this might affect the query side of your script. However, I did find that people are using backslashes to escape the quote (") in similar situations How to escape double quotes in JSON. I see how an extra quote would cause problems given the reliance of the quote (") in the JSON format itself. I manually insert a backslash (\) in front of the quote (") I then looked at that data with a JSON formatter and I get an error unless:Ģ. I then stepped through your script: dtp-list-groups.applescript (outside of Alfred) and captured the jsonOutput. I created a small test database containing a group with a quote (") in the name. I have looked at my databases and I do have some groups with a quote (") in the name, and that is causing the problem.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |