Hi Jon, Not to distract from Rob's property list suggestion, but you can do multiple things in a single AppleScript. Interestingly each script actually supports multiple actions, which the caller can use at different times.
QS already takes advantage of this because it calls the "get types" action at startup (so it knows when to make the action available) and then calls the "open files" action when the action is actually used. More info here - http://qsapp.com/wiki/AppleScript_Actions. I am suggesting a third action type "get catalog" which would be called each time QS does a catalog scan. So there would actually be three different ways the script is called, all within the same AppleScript. d On Mon, Jan 13, 2014 at 9:27 AM, Jon Stovell <[email protected]> wrote: > I'm not a coder so much as a power-user, so I may be wrong, but I am > pretty sure that trying to define things to add to the catalog inside of an > AppleScript that is meant to be run as an action in QS's second pane > wouldn't make sense. QS's logic starts with the catalog, not the actions. > First the user must bring up an item in the first pane, and then on that > basis QS goes and finds all the applicable actions to offer. So the items > that the script applies to have to be in the catalog (or at least, in the > first pane, since you can get things in there by various methods besides > having them already in the catalog) *before* the script will ever be > called. > > That's not to deny that it could be very useful to have an > AppleScript-based method for adding catalog items. It's just that adding > items to the catalog is an entirely different function from executing > actions on items brought up in the command window, so you'd need to use two > separate scripts that were run at two separate times to do that. > Specifically, you'd want to run your Add Items To Catalog script whenever > it was time to update the catalog, and your action script whenever the user > choose to run it. > > > On Sunday, January 12, 2014 5:49:19 PM UTC-5, David Rees wrote: >> >> Yes, that is really what I would like to do. Better script support could >> open up QS to a much wider range of developers. While optimally I would >> like to have ruby/python/bash, really just better AppleScript would be a >> great step since developers can then use it as a bridge to other languages. >> >> The other thing I would like is the ability to add an object tree to QS >> from a script. For example, I can easily write a script to walk headers in >> google docs, word, orgmode, etc. What I am missing is an easy way to add >> these object/links into the QS catalog. Essentially I'm talking about a >> catalog entry type that allows you to bulk add objects. The most >> flexible would be an applescript that has a "get catalog" action that just >> returns them. That would allow bunding the catalog and "open" handlers in >> the same script file which would be very useful for sharing. >> >> You could then combine that with the existing Pane 2 scripts >> functionality to do all kinds of things. Even without having to introduce a >> new object type. For example, in a single script file using the "get >> catalog" action and an "open" action I could add the ability to navigate >> through all my orgmode headers and do refile/move/print/delete actions on >> them. >> >> If you go one step further and say that the "get catalog" action or the >> catalog file can indicate what types the objects it returns are, then you >> can narrow the "open" actions to only show up for those object types using >> "get direct/indirect types" action. Still all within a single script file. >> >> A less flexible, but perhaps simpler approach to get custom objects into >> the catalog would be a catalog source that points to a file of >> objects/links (perhaps with object types as well). It sounds like Defaults >> Reader may be a specialized example of this, but I can't find any doc on >> how to use it. >> >> d >> > -- > You received this message because you are subscribed to a topic in the > Google Groups "Quicksilver" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/blacktree-quicksilver/lUmYHXEaGvs/unsubscribe > . > To unsubscribe from this group and all its topics, send an email to > [email protected]. > To post to this group, send email to > [email protected]. > Visit this group at http://groups.google.com/group/blacktree-quicksilver. > For more options, visit https://groups.google.com/groups/opt_out. > -- You received this message because you are subscribed to the Google Groups "Quicksilver" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/blacktree-quicksilver. For more options, visit https://groups.google.com/groups/opt_out.
