Discussion: BetterTouchTool Launcher / Spotlight Replacement (very much work in progress)

Can't believe this comment was already more than 3 years ago, but since then I have regularly been thinking about adding a launcher style feature to BetterTouchTool because it would allow for many easy interactions. For a while I had hoped Apple would make Spotlight extensible enough to make this obsolete, but they still have not done that today and with BTT's AI integration a customizable launcher style UI became even more important. So the last few days I finally started to put the various building blocks together and now have a very first version of BTT's own launcher.

Initial Feature set:

  1. launch apps and manage their windows
  2. clipboard manager integration
  3. apple tv remote integration (mostly to verify any BTT feature can be supported)
  4. floating menu integration (menus can be embedded below the prompt or displayed inside the launcher by opening an item)
  5. display arbitrary BetterTouchTool triggers inside of the launcher. You can either select single triggers or whole folders (most BTT triggers now have a "Launcher Config" section.
  6. simple built in calculator
  7. integration with BetterTouchTool's AI assistants
  8. dynamically generated items/submenu via BTT's scriptable simple json format
  9. set trigger keywords for any item in the launcher
  10. pin items to the top
  11. BTTLauncherLastPrompt variable that can be used by actions that need to process the prompt theirselves

There is a very first preview available in 6.387. I will now work on adding documentation for this feature.

Still a lot of open questions, I'm currently still figuring out what navigation patterns work best for me and there are also various performance improvements pending.

This is super extensible, I can easily add new features. You can even integrate your own native swiftui views (via floating menu plugins) and I have been thinking about adding support for third party launcher plugins like raycast (as they are open source).

6 Likes

I'm on BTT 6.392 and Sequoia 15.7.5

This new feature is amazing. I will follow the work in progress and try to help and collaborate.

I have an issue. I can't change the default ⌘P for the Launcher item actions shortcut. Every time I try to save a shortcut , the shoercut seems to be refused:

thanks for reporting, this should be resolved in 6.393 (which should also make the launcher much faster but might have some other issues, still very much work in progress :-))

Confirmed it is fixed in 6.393
Is there any difference between pressing TAB or the shortcut ⌘P for opening the item actions?

if an item has sub items tab will open the group
// 6.394 should now really improve speed (especially show up speed and scrolling)

don't understand what you mean. can you give me an example?

I am experiencing three issues:

  1. I have configured the launcher to be toggled with āŒƒā‡§F13. The launcher sometimes it is shown without pressing its trigger, after pressing another shortcut or after doing a left click. Restarting BTT fixes it until it happen again. Once I have removed the shortcut to check if the problem was my shortcut combination and the problem persists.

  2. Sometimes when I open the Launcher with my shortcut, the launcher doesn't get the keyboard focus, so I can't type nothing and also I can't close it with ESC. I have to go with the mouse and click in the text field to fix it.

  3. Sometimes, a floating menu that I have configured in the BTT section, appears with the Launcher (It is a red square with a plus):

at least 1 should be resolved in 6.395 (a focus issue that caused it to reappear once any of BTT's other windows gained focus). Could also be related to 2 and 3 but not sure about that

I have confirmed that issue 1 is fixed in version 6.396. Unfortunately, issues 2 and 3 still occur.

By the way, I still don't understand your answer to my question: Is there any difference between pressing TAB or the shortcut ⌘P to open the actions for the item?

Could you give me an example of what you mean by "if an item has sub-items, the tab will open the group"?

Weird, I'll try to reproduce on my Sequoia machine. How is your floating menu configured to show up? I guess it is related to focusing the BetterTouchTool process that makes the menu show because in general the launcher and floating menus are not wired together. Could you maybe export the menu and share it with me?

See this video for the difference of tab for groups:

Of course, this is the floating menu:

btt floating menu.zip (7.9 KB)

Thanks for the video, I understand it now.

EDIT: There is another issue. Everytime I click the dropdown menu of "Launcher Config" in any trigger, the upper buttons of "Save" and "Reset" appear, without any change done to the trigger.

Video of the buttons issue

I'll make it auto save (the open state of the group is changing)

6.399 (uploading) fixes many issues (e.g. some actions like pasting text didn't work well when called from the launcher), fixes navigation issues with subgroups, allows keyboard focus for floating menus shown in the launcher, adds support for the AI assistants to create native launcher plugins, adds a calendar item and prepares for various soon upcoming additions

6.403 installed recently. It seems that the issues 2 and 3 are fixed. Good job!

I don't know if I should love or hate you for releasing this right before the weekend :sweat_smile:

This looks cool and I am looking forward to replace Alfred with this solution. :heart_eyes:

I use Alfred heavily but only for few things:

  • Configurable Search-Keywords: e.g. I type "dict vokabel" into the launcher and it opens https://dict.leo.org/englisch-deutsch/vokabel
  • searching files on my machine or remote (Alfred enters file search by typing a space at first after opening the launcher and then you can just start typing)
  • starting apps, locking screen etc. is already possible with your solution

Keep up the amazing work Andreas and don't forget to enjoy your weekend :blush:

File search/navigation is coming next week!

Keyword url searching is already possible. I made it a bit easier to configure with 6.407:

  • The prompt is saved to variables BTTLauncherLastPrompt (full prompt), BTTLauncherLastPromptKeyword (first word) and BTTLauncherLastPromptAfterKeyword (remaining text)

So you can set it up like this:

You could even combine this with an embedded floating menu webview:

1 Like

I don’t think I would have predicted this feature, yet it makes so much sense and I’m looking forward to trying it out!

As a heavy LaunchBar user, one feature I rely on is Instant Send. I often invoke it from Finder to open files in a non-default application or from any app to trigger a web search with selected text. (I haven’t actually had a chance to play with this yet, so apologies if an equivalent is already available.)

I think that might already possible but requires some scripting, I'll give it a try later today and will make this stuff easier soon.

1 Like

6.409 adds a file search after hitting space (or typing "file"), it might be a bit slow right now though.

1 Like