If you follow me on Twitter you may of noticed I’ve been using a custom URL shortener lately, I did this because I purchased matt.mx and got tiered of waiting for bitly.pro. After looking round I found YOURLS a set of PHP scripts that do most of the functions of bitly.pro and of course has the ability to create really short links without the 6 character hash. I might review this at a later date.
Now I did have a LaunchBar action to create bit.ly links that will work perfectly fine with bitly.pro however now I use YOURLS I needed to make a few modifications to support a new API and here is the new AppleScript for you to enjoy (download here).
on handle_string(theURL)
-- add scheme prefix if missing
set _firstColon to offset of ":" in theURL
set _firstSlash to offset of "/" in theURL
if (_firstColon = 0 or _firstSlash < _firstColon) then
set theURL to "http://" & theURL
end if
-- Process and encode URL
set theURL to do shell script "/usr/bin/python -c 'import sys, urllib; print urllib.quote(sys.argv[1])' " & quoted form of
theURL
-- Create YOURLS
set login to "YOURURSERNAME"
set apiKey to "YOURPASSWORD"
set bitlyURL to "http://YOURDOMAIN/yourls-api.php?action=shorturl&format=simple&username=" & login & "&password=" & apiKey &
"&url=" & theURL & ""
set results to do shell script "curl " & quoted form of bitlyURL
-- Copy to clipboard and display
tell application "LaunchBar"
perform action "Copy" with string results
display in large type results
end tell
end handle_string
You will need to make 3 changes to allow this to work, firstly change YOURUSERNAME and YOURPASSWORD to your own username and password for your YOURLS install and secondly change YOURDOMAIN to point to the path of you yourls-api.php file.
Put the file in ~/Library/Application Support/LaunchBar and rename it to whatever you want the script to be activated by in LaunchBar.
Stay tuned to this page for update’s to this script as YOURLS grows
2 Responses to LaunchBar Action: Create Short URL with YOURLS
Freek January 12, 2011
Hi,
thanks for sharing!
I copied the downloaded applescript to ~/Library/Application Support/LaunchBar. When I activate Launchbar and type the script’s name the action is there but when I activate it, it doesn’t ask for a url.
How do I make the custom action ask for a url?
Matt January 12, 2011
Hi Freek,
once you’ve typed the scripts name in LaunchBar press the space bar and enter the URL you want to be shortened then press enter. The script will then do it’s stuff and copy the short URL to the clipboard.