Para poder utilizar un script de AppleScript en el menú Script de TextWrangler's, éste (o un enlace) debe estar en la carpeta Script de TextWrangler ubicada en, ~ / Library / Application Support / TextWrangler / Scripts para que aparezca en el menú. Nota: el "~" en esa ruta es su carpeta de inicio y la carpeta de la biblioteca puede no estar visible. Puede abrirlo desde el menú Script de TextWrangler, el comando Abrir carpeta de scripts y colocar el script o un enlace al script desde donde lo guardó.
Para responder a esta pregunta, creé un AppleScript llamado Ejecutar línea (s) seleccionada (s) en Terminal.scpt y lo coloqué en la carpeta Script de TextWrangler y ahora está disponible en el menú Script en TextWrangle como mostrar en la imagen de abajo.
Dichoesto,elscriptquetiene,comoestáescrito,puedefallar,yaqueTerminalpuedeserunpocometiculoso.Enotraspalabras,silaTerminalsecierraalejecutarelscript,entonceselcódigotalcomoestáescritopuedeproducirunerror,porejemplo:"Se produjo un error en la secuencia de comandos: la Terminal obtuvo un error : No se puede obtener la ventana 1. "
Incluso cuando le dije a Terminal que activara no abría una ventana como lo hace al abrir Terminal desde el Dock Tile, me puse "Mantener en Dock" y obtendré el error mencionado anteriormente. Así que una consulta de Google dio mucha información útil. Así que experimenté con algunas soluciones diferentes que vi y el código que estoy usando se muestra a continuación.
tell application "TextWrangler"
activate
set the_selection to (selection of front window as string)
if (the_selection) is "" then
set the_selection to line (get startLine of selection) of front window as string
end if
end tell
tell application "Terminal"
if not (exists window 1) then reopen
activate
-- delay 0.5
do script with command the_selection in front window
end tell
Tenga en cuenta que he comentado el comando delay
con --
y puede o no ser necesario dependiendo de si el Terminal está inicialmente cerrado y de la lentitud con que responde su sistema. El valor está en segundos expresado de manera decimal. Puede descomentar y modificar si es necesario.
Imagen del código que muestra el resaltado sintáctico:
Nota: Esto se probó en OS X 10.8.5 y TextWrangler v4.5.9 (3390) y puede reaccionar de manera diferente en otras versiones de OS X y / o TextWrangler.