Ich möchte Befehle von TextWrangler (oder BBEdit) an das Terminal senden. Selbst wenn ich das gefunden habe , verstehe ich nicht, wie das funktioniert, da ich ganz neu bei Unix bin und Applescripts ausführe.
tell application "BBEdit"
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"
do script with command the_selection in window 1
end tell
Ich habe ein Applescript gespeichert, das so aussieht:
Nun, was ich denke, ist, das Skript in den TextWrangler-Skriptordner zu legen:
Sie müssen das Skript in dem "/Users/yourName/Library/Application Support/TextWrangler/Scripts"
Ordner ablegen
Nachdem:
Preview
Anwendung auf El Capitan , Menü " Extras " --> " Anmerken " --> " Pfeil ". Ziehen Sie dann einen der blauen Griffe, um den Pfeil zu verschieben oder seine Größe zu ändern, ziehen Sie den grünen Griff, um eine Kurve zu erstellen. Sie können den Formstil ändern, Sie können Text am Anfang oder am Ende des Pfeils hinzufügen.
-
-
Um ein AppleScript - Skript im Skript-Menü von TextWrangler zu verwenden, muss es (oder ein Link darauf) im Skript-Ordner von TextWrangler unter ~/Library/Application Support/TextWrangler/Scripts liegen , damit es im Menü erscheint. Hinweis: Das "~" in diesem Pfad ist Ihr Home-Ordner und der Bibliotheksordner ist möglicherweise nicht sichtbar. Sie können es über das Skript-Menü von TextWrangler, den Befehl „Skriptordner öffnen“ öffnen und das Skript platzieren oder auf das Skript verlinken, wo immer Sie es gespeichert haben.
Um diese Frage zu beantworten, habe ich ein AppleScript mit dem Namen Run Selected Line(s) in Terminal.scpt erstellt und im Script-Ordner von TextWrangler abgelegt und ist jetzt im Script-Menü in TextWrangle verfügbar, wie in der Abbildung unten gezeigt.
Das heißt, das Skript, das Sie haben, wie geschrieben, kann fehlschlagen, da Terminal etwas pingelig sein kann. Mit anderen Worten, wenn Terminal beim Ausführen des Skripts geschlossen ist, kann der geschriebene Code einen Fehler erzeugen, z. B.: „Ein Skriptfehler ist aufgetreten: Terminal hat einen Fehler: Fenster 1 kann nicht abgerufen werden.“
Selbst wenn Terminal aufgefordert wurde, es zu aktivieren, wurde kein Fenster geöffnet, wie es beim Öffnen von Terminal über die Dock-Kachel der Fall ist, die ich auf „Im Dock behalten“ eingestellt habe, und ich würde den oben genannten Fehler erhalten. Eine Google-Abfrage lieferte also viele nützliche Informationen. Also habe ich mit ein paar verschiedenen Lösungen experimentiert, die ich gesehen habe, und der Code , den ich verwende, ist unten gezeigt.
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
Beachten Sie, dass ich den delay
Befehl mit auskommentiert habe --
und möglicherweise erforderlich ist oder nicht, je nachdem, ob Terminal anfänglich geschlossen ist und/oder wie langsam Ihr System reagiert. Der Wert wird in Sekunden dezimal ausgedrückt. Sie können die Kommentare entfernen und bei Bedarf ändern.
Bild des Codes mit syntaktischer Hervorhebung:
Hinweis: Dies wurde unter OS X 10.8.5 und TextWrangler v4.5.9 (3390) getestet und kann in anderen Versionen von OS X und/oder TextWrangler anders reagieren.
M. Beausoleil