prenagha / launchbar Goto Github PK
View Code? Open in Web Editor NEWLaunchBar Actions
Home Page: https://renaghan.com/launchbar/
License: Apache License 2.0
LaunchBar Actions
Home Page: https://renaghan.com/launchbar/
License: Apache License 2.0
Automatic downloading seems imposing, and possibly problematic for actions that have a) no direct-download link or b) are part of a larger repository of actions.
Without a download link, the action doesn't know what to do. And if I use the github "download zip" link, File.readData will get hit several times for the same file, and potentially File.writeData, depending on how it handles filename collisions.
Suggestions:
\.(zip|tar(\.gz)?|lbaction)
or an url (in which case, open the browser maybe?)The Generate Password action seemingly outputs a password even if hsxkpasswd is not installed. In what way is having hsxkpasswd installed preferable?
Can help to check on the link: https://s3.amazonaws.com/public-launchbar-download/Switch%20Audio.lbaction?
Thanks!
Getting the error below when I try to use SwitchAudio. It was working fine until recently.
Error
SyntaxError: JSON Parse error: Unterminated string
I couldn't get this to work and discovered that the Command-C desktop app now requires the UUID of the iPhone/iPad, not the name.
I adjusted the url to `var url = 'command-c://x-callback-url/copyText?deviceUUID=' + encodeURIComponent(Action.preferences.device) + '&text=' + encodeURIComponent(text);' and put my UUID in the plist file. Works great now, just wanted to let you know.
Thanks for putting this together!
Would like to get feedback from Objective Development and experienced LaunchBar custom action developers on a general approach for action updating.
Custom actions are great, but painful to keep up to date. Rather than all of us individually build updating mechanisms, and clutter our actions with update related UI and pinging, I thought it would be useful to have a general approach that we could all use.
To that end I have built a prototype action that checks each custom action a user has installed and figures out if a newer version exists. It reports on results and provides options for user
LBWebsite
LBChangelog
LBDownload
(trigger browser open URL)The trick is for all custom actions to include the /LBDescription/LBUpdate
key in their Info.plist
as a string URL reference to a remote server of the Info.plist
of most recent version
Optional keys to enable changelog and download link features:
/LBDescription/LBChangelog
- string changelog text to display to user/LBDescription/LBDownload
- string URL reference to remote server where most recent action package can be downloadedFor more info:
Would be great if folks would review the above and see if we can all agree on the Info.plist
keys to use. Once we agree on that, we all update our actions accordingly and anyone can implement an action version checker themselves, or use mine. Hopefully one day LaunchBar will have native support for this and can leverage the keys we have all standardized on.
ping: @nbjahan @mlinzner @facetheheat @Ptujec @Zettt @gillibrand @aristidesfl @ttscoff @itspriddle @Duhemm @kkiani @jasonrudolph @hlissner @Nosrac @marcomasser @heikowitte
Hey man,
first of all thanks for sharing your actions. Already using the Things action daily ;)
Can't get the Forecast action to to find international locations, though. anything i'm missing?
forecast.io definitely supports international locations, searching on their website gives me data for Berlin, Germany for example. But the forecast action only returns "No locations found"
any idea why?
Just wondering if there is an alternate way of obtaining the necessary API to get the forecast action to work properly?
There seems to be a problem with Updates.lbaction (Line 39 in updates.js) when the LaunchBar Action dir is symlinked via "mackup".
tl;dr: it appears that macOS may allow trailing spaces in audio device names. ๐คฆโโ These are inadvertently stripped in this action, breaking the ability to select these ill-named devices.
Example:
>> bash ./audio.sh
{
"currentInput": "MacBook Pro Microphone",
"currentOutput": "USB Sound Device ",
"inputs": [ "CalDigit Thunderbolt 3 Audio", "LG UltraFine Display Audio", "MacBook Pro Microphone" ],
"outputs": [ "USB Sound Device", "CalDigit Thunderbolt 3 Audio", "LG UltraFine Display Audio", "MacBook Pro Speakers" ]
}
Note that currentOutput
has the correct string with trailing spaces, but that item in outputs
does not. The actual device is a Matrix Audio USB audio interface, which IIRC should just be using the USB audio class driver. System Information also clearly shows the trailing spaces in its audio device list:
USB Sound Device :
where no other device has spaces between the name and the colon, e.g.:
MacBook Pro Speakers:
This isn't really an issue, more of a feature request. The Timer script is great and I use it a fair amount but very often the reminder will appear and then immediately disappear because I'm typing or using my mouse. Could the script be modified to use a system notification instead?
I was going to try to add that but figured I'd see if you'd already tried it.
Also thinking about adding anonymous action usage reporting to my action update checker.
Will make it easy to disable for folks that don't want to report.
For those that let it report it would basically http post the following to a web hook that I will collect up and periodically publish:
(remember: each user will be able to easily see that it is turned on, and easily turn it off)
Does this sound reasonable or are folks vehemently against it?
Not sure if this is true for all, but I think it might be the default scenario on Mac OS 11:
I needed to adjust line 2 to read:
CMD=/opt/homebrew/bin/SwitchAudioSource
Default paths seem to have changed.
(also, thanks for making this)
Happens on first-run.
Console shows:
2015-09-11 9:58:29.879 PM LaunchBar[593]: Action Updates (com.renaghan.launchbar.Updates): Download dir /Users/hlissner/Downloads
2015-09-11 9:58:29.880 PM LaunchBar[593]: Action Updates (com.renaghan.launchbar.Updates): Checking actions in /Users/hlissner/Library/Application Support/LaunchBar/Actions
2015-09-11 9:58:29.882 PM LaunchBar[593]: Action Updates (com.renaghan.launchbar.Updates): Unhandled Exception in script "updates.js": TypeError: undefined is not a function (evaluating 'actionPackage.endsWith(".lbaction")') {
column = 30;
line = 83;
}
Running Updates 1.0 with LB 6.4.1 on Yosemite 10.10.5.
I'll do some more debugging in the morning.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.