Yes, there's nothing at all stored in the macro relative to customizations—it's all in the database.
-rob.
Yes, there's nothing at all stored in the macro relative to customizations—it's all in the database.
-rob.
I quite like the concept of this Macro but on giving it a spin I prefer to keep using Custom Search Templates in LaunchBar. Given it uses a database what's the best way to uninstall it @griffman?
Delete the macro, and then delete the database file in the location you specified in the macro.
-rob.
Version 1.6 is out (linked in the first post here, and current users should receive an update notification). A minor release with a couple bug fixes and a change in the way notifications of updates to the macro are handled.
-rob.
Hello Rob
I’ve installed the Macro on a Mac of a friend - downloaded from the OP above.
I wasn’t able to get through the Setup process though - there were at least two links to other depending Macros broken in the Main Macro.
I haven’t got the time to look for every link - but this is something you should definitely fix I think
Just an idea and a suggestion for a feature request…
What if you would build a Routine into this macro that checks for broken links and repairs them ?!
Greetings from Germany
Tobias
I just downloaded 1.6 from the link in this thread, and installed it on a new user's KM on my Mac, and it worked absolutely fine. Can you please message me with the actual errors messages recorded in the log file? Or if there's nothing there, I need to know where it's breaking for you, and using the debug tool is probably the only way to do that.
Not quite sure I understand: Checks for broken links to other macros, or check the web shortcuts to see if they all work?
If the former, I have absolutely no idea how that would work. I can trap for the errors (if you can tell me where you're seeing them and I can replicate), but even then, I can't automatically fix a broken path in a call to activate a macro.
I could replace all the macro calls with Open URL actions using Keyboard Maestro's URL trigger, but that's got its own set of issues (namely that no two macros anywhere in the collection have their own names. But I should at least try to add some error capturing around the macro calls, to make for a better user experience.
-rob.
Hmm … I have no clue what was going wrong on his Mac. Unfortunately I can’t get into the his engine log file because I am at home now. But I can tell you that I was stuck in a loop for defining the Path for the Macro Files.
And I am actually having the same issue on my iMac at home. I see if I can get any messages from the engine log. But as I mentioned earlier there are definitely some broken Macro Links.
Yes, the former …
I’ll try to put something together to not only explain you how it could be done - but it can maybe take some time …
Greetings from Germany
Tobias
Hey Rob (@griffman) it’s me again.
I’ve got a message after talking to my friend where this screenshot was sent to me
He also told me that this error occurred when executing the Shellscript for the db refresh routine called from the main macro during my earlier described setup process of this Macro.
I’ve looked into my engine log file and can absolutely confirm that… it’s the same error from even the same action during the same task.
I hope this helps…
Greetings from Germany
Tobias
I did some testing, and the problem I see is that it's impossible to see which macro failed to run. I can check the ActionResult and see that something didn't run, but that's all it can tell me: A macro wasn't found so it wasn't run. Beyond that, I'd have to probably try setting a flag variable within the macro, then check its value after the macro is supposed to have run to see if it got set or not.
But honestly, for a hobby macro that I make no money on and seems to work fine for most everyone, that's a ton of effort to add to all 20+ macros that are called probably 100+ times throughout the code, and I just don't have the time for that.
I'm much more interested in figuring out why it's failing for you and your friend, but working fine for myself and seemingly most others who've installed it. Something must be different between the systems (US vs non-US?), but I have no idea what it might be. And because I can't replicate the problem here, it's impossible for me to troubleshoot it from this end.
What I'd recommend is deleting any global that starts with rg_
and then trying again. That will insure it's installed as a fresh install. When specifying the folder, remember that you're selecting the folder that will hold the data, so that folder must be writable by your user. Beyond that, I don't have any additional thoughts at the moment.
-rob.
I searched my 200+ global Variables for anyone starting like you’ve mentioned but there isn’t anyone created.
I also double checked that the Folder is writable and also not locked … but everything is as it should be ..
I still have this loop where I get the success Message for setting up the folder and then being prompted to choose the location again.
I’ll delete the whole thing and download a fresh copy tomorrow… have a bowling date this evening…
Greetings from Germany
Tobias
If you want to, feel free to record a screen movie of the process and message me a link to it. Maybe I can spot something in the run through (though I doubt it).
-rob.
Hello Rob (@griffman)
I’ll encountered the same issues as before but I thought to play with the situation a bit while being on a loop of installing and uninstalling with rebooting the Mac and so on …
After some time I figured out that one of the first Prompt was staying too long on my Screen and I didn’t realize that before… after that I got the info that the database file was created successfully but I encountered the error that the file couldn’t be opened…
Okay there was the reason it all failed because there was no file … I catched up oon that dialog to close it as quickly as possible and used my mouse to click on that dialog - not on the button of it having the window open with the destination folder - success…
The file was installed and I can still use it since then without any issues…
Maybe you should look at the installation process… this prompt kind of freezing thing is not a good thing …
Maybe it is something you can look after ..
Besides that .. and speaking of the other thing with the broken Macro Links. Have you ever thought about building an installer Macro that gets downloaded from your updater, installed in the same group, enabled and executed ?!
It would be one Macro single Macro that scans the group for the Macro Names and uses them to get the UUIDs for the linking part and then it deletes everything inside each Macro and rebuilds everything from scratch and makes Shure everything is linked properly.
This way you don’t have to worry about checking for the linking every time ..
Is only an idea … and I think it is a good one to maybe consider for such complex Macros. like this one.
You could also build something into it that allows the use to manually execute the installer at the time he or she wants to to it.
Again … only an idea
Have a great day
Many thanks for building such a great Macro. It is so damn useful…
Greetings from Germany
Tobias
Do you have any idea which dialog it was? Without knowing, it's very hard for me to investigate, as I've never had an issue with a dialog sitting onscreen in that macro.
This would take me months (at least!) to build, and would have to be updated every time the macro was updated. I just don't have the time do even begin thinking about a project like that, nor do I want to get tied into the cycle of having to update not just the macro but the installer any time I add or remove an individual macro.
Updating is really incredibly simple: (1) Rename old macro and disable, (2) Install updated macro and enable, (3) Test, and if the test works, then (4) delete old macro. Because everything is contained within the macro group, that's all it should ever require.
Doing anything more complicated with the installer is not something I have the time to tackle. It'd be different if this were my job and I made any money doing it, but it's a hobby I have to fit in on the side of my actual job.
-rob.
Hey Rob (@griffman)
Sorry, I forgot which one it was …
I’ll try to replicate that issue in the next few days … even if it doesn’t happen again I’ll then be able to tell you …
The only thing you would have to do is copy each Macro‘s Actions XML to the Clipboard after you’ve done your work on the macros one after another and create a quoted form of the XML per Macro by defining each linked Macro which is called from that particular one as AppleScript Variable and replace the UUID‘s of the linked Macros with the particular Variable.
After that you can use the AppleScript Command to create a Macro using the prepared XML.
After you’ve done that with every Macro you can build the Installer from that. Simplest method is then in the process for the installer to just paste the right Actions XML into the right
Macro after deleting the old Actions XML.
If you don’t like the AppleScript version then you could build a Set of Set Variable to Text - Actions for each Macro and do this all with just KM Actions without any line of code and use KM Variables instead of AppleScript Variables fur the UUID‘s.
I don’t see there any hassle of months of work unless you try to recreate every single action and check if it was created correctly.
This should normally do the job …
But it’s up to you …
Again for the issue during the installation process I’ll write you back in the next days when I have a little free time for that.
Greetings from Germany
Tobias
Here's how hard this project would be for me: I have only the vaguest notion of the process you're describing there. So yes, for me, it would be months of work, because I'd have to figure out more about XML and AppleScript and UUIDs than I ever wanted to know.
The only time I touch XML or AppleScript is if it turns out that I have to do so in order to make my macro do what I want it to do. So my knowledge of both is very limited, and I'm fine with that—I have no interest in learning more about them just to write an installer for my macro.
I share macros here because some people have found my macros useful, and I learn a lot and have fun when I write each one. But that's the only reason I do this: for fun. There's no money in it, and if a topic doesn't interest me, then it's not something I'm going to spend any of my free time doing.
But you are more than welcome to fork the macro yourself and include a full-blown installer—it would be a better macro for sharing, no doubt. I don't care, in any way, if the code gets modified and redistributed. I'm all for it, in fact, but it's not something I'll be tackling.
-rob.