Applescript schließt alle Tabs

F

francwalter

Aktives Mitglied
Thread Starter
Dabei seit
25.04.2008
Beiträge
950
Reaktionspunkte
39
Hallo
Habe folgendes winziges Apple Script für Spark erstellt:

if application "BBEdit" is running then
tell application "BBEdit" to set the clipboard to (get text of document 1)
tell application "System Events"
tell process "BBEdit"
set visible to true
set frontmost to true
keystroke "w" using command down
delay 0.5
keystroke "d" using command down
set visible to false
end tell
end tell
end if


Damit will ich nur eines der existierenden Fenster von BBEdit schließen, nämlich das gerade vorne ist. Vorher wird der Inhalt in die Zwischenablage kopiert. Ich verwende das für ClipMenu, dem ein Editor für die Clips fehlt.
BBEdit ist ein Multiwindow Editor, also ich kann viele verschiedene Dateien gleichzeitig öffnen.
Führe ich das Skript aus, werden aber alle Fenster geschlossen, nicht nur das gerade aktive.
Was mache ich falsch?

Eine andere Frage: gibt es einen Referenzlink, wo man alle Apple Script Befehle (möglichst mit Beispielen) nachschlagen kann?
EDIT: doch was gefunden, das hatte ich sogar schon als Lesezeichen (peinlich eigentlich):
Eine Einführung von apple: https://developer.apple.com/library...eScriptLangGuide/introduction/ASLR_intro.html
und die Befehlsreferenz
Danke

franc

PS.: ich finde im neuen Editor keinen Code-Tag mehr.
EDIT: Eckige Klammer auf+CODE+Eckige Klammer zu, wie überall. Könnte man eigentlich in einem solchen Forum durchaus als Button hinterlegen, das wäre praktisch.
 
Zuletzt bearbeitet:
Hallo,

set visible to false blended natürlich BBEdit aus. Ansonsten ist das Programm ja selber skriptfähig:
Code:
tell app "BBEdit"
close document 1
--
open Open File by Name window
end tell

Gruß
 
Zuletzt bearbeitet:
Tja, fehlt halt das automatische Schließen, in der "Skriptfähigkeit", hilft mir dann leider nicht.
Da muss ich ja auf jeden Fall auf die System Events zurückgreifen um ein cmd+D einzugeben.
Ich habe es dann halt so gemacht:
Code:
if application "BBEdit" is running then
   tell application "BBEdit" to set the clipboard to (get text of document 1)
   tell application "System Events"
     tell process "BBEdit"
       set visible to true
       set frontmost to true
       keystroke "w" using command down
       delay 0.5
       keystroke "d" using command down
       delay 0.5
       keystroke "m" using command down
       -- set visible to false
     end tell
   end tell
end if
Kopieren, Schließen-Tastenkombination, Bestätigen-Tastenkombination und Minimieren-Tastenkombination.
Geht.
Vielleicht gibt es ja noch einen eleganteren Weg, aber den finde ich vermutlich erst, wenn ich mich ein paar Tage ausgiebig mit dem Kram befasste.
 
Zurück
Oben Unten