Hey Gary,
On Aug 28, 2011, at 14:42, Gary wrote:
> If I may ask one more question. I promise, my last.
Don't worry about asking questions; ask away. :)
> I was curious though. Something like Simplenote has a preference for a
> shortcut key. If I'm in Safari and press f11 Simplenote appears. I can then
> press f11 and its gone, with the focus returned to Safari... Is something
> like that possible with applescript and keyboard maestro or is that beyond
> their capabilities?
It's simpler to assign a 'last application' shortcut in Keyboard Maestro and
then use your global Scratchpad shortcut in combination with that.
However:
------------------------------------------------------------------------------------------------
property savedFrontAppName : ""
try
tell application "Finder"
set frontAppName to item 1 of (get name of processes whose frontmost is
true)
if frontAppName ≠ "BBEdit" then
set savedFrontAppName to frontAppName
tell application "BBEdit"
open scratchpad window
activate
end tell
else
if savedFrontAppName ≠ "" then
set procNameList to name of processes
if savedFrontAppName is in procNameList then
set frontmost of processes whose name is savedFrontAppName to true
set savedFrontAppName to ""
end if
else
if frontAppName = "BBEdit" then
tell application "BBEdit" to open scratchpad window
end if
end if
end if
end tell
on error errMsg number errNum
set sep to "=============================="
set e to sep & return & "Error: " & errMsg & return & sep & return ¬
& "Error Number: " & errNum & return & sep
beep
tell application "System Events" to display dialog e
end try
------------------------------------------------------------------------------------------------
This is a bit quick and dirty, but it works.
If you hit the Keyboard Maestro hotkey from an application other than BBEdit it
will activate BBEdit and open the Scratchpad window.
If you have previously done the above it will return you to the application you
started with. However if you switch out of BBEdit with some other means than
the hotkey it will bring you back to BBEdit's Scratchpad.
If you START in BBEdit it will simply open the Scratchpad window.
I decided to use the Finder rather than System Events, because SEV isn't always
running - so there can be a lag while it starts up. On the other hand if the
Finder is really busy there might be a lag.
Give it a try and see what you think.
I just looked and Keyboard Maestro v5 has a %CurrentApplication% property, so
it should be possible to bypass both the Finder and SEV to iron out any speed
irregularities. But I'm done for now. ;-)
I'm sort of ticked with the irregularities, so I'll probably rewrite the script
tomorrow.
--
Best Regards,
Chris
--
You received this message because you are subscribed to the
"BBEdit Talk" discussion group on Google Groups.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
<http://groups.google.com/group/bbedit?hl=en>
If you have a feature request or would like to report a problem,
please email "[email protected]" rather than posting to the group.
Follow @bbedit on Twitter: <http://www.twitter.com/bbedit>