[GastForen Programmierung/Entwicklung AppleScript

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste

Inhalt der Zwischenablage in Variable laden

Goar
Beiträge gesamt: 395

17. Jul 2023, 10:16
Bewertung:

gelesen: 4300

Beitrag als Lesezeichen
Hallo Klaus,

mit deinem Vorschlag hast du ins Schwarze getroffen!

Das ursprüngliche menu–click-Skript set_clipboard.scpt habe ich durch eine return-Zeile ergänzt und in einen on-run-Wickel gestellt:

Code
on run webText 
-- Text aus der offenen WebsSeite aufnehmen
tell application "Safari" to activate

menu_click({"Safari", "Bearbeiten", "Alles auswählen"})
menu_click({"Safari", "Bearbeiten", "Kopieren"})

set webText to (the clipboard) as Unicode text
return webText as text
end run

Die Wiedergabe der beiden menu_click-Handler habe ich mir hier ebenfalls gespart, s.o.

In einem neuen Skript, das auf der gleichen Ebene abgelegt ist, rufe ich das Skript set_clipboard.scpt zweimal auf:

Code
-- dieses Skript benutzt das Skriptmodul set_clipboard.scpt 

-- über den Eigenpfad dieses Skripts werden die benötigten Pfade ermittelt
activate
set ownPath to path to as string

set AppleScript's text item delimiters to ":"
set folderPath to (text items 1 thru -2 of ownPath) as string
-- der eigentliche Skriptinhalt ist ausgelagert:
set ascrFile to folderPath & ":" & "set_clipboard.scpt"
set AppleScript's text item delimiters to ""

set ascr to load script file ascrFile
set webText to (run script ascr)
(*
-- um das Ergebnis nach dem ersten Durchlauf zu testen
tell application "BBEdit"
activate
set contents of document 1 to webText
end tell
delay 5
*)
set webText to (run script ascr)

tell application "BBEdit"
activate
set contents of document 1 to webText
end tell

Den Test nach dem ersten Durchlauf habe ich schon auskommentiert.
So klappt es, wunderbar.

Es klappt übrigens nicht mit der keystroke-Version!
Aber dem nachzulaufen fehlt mir jetzt jegliche Motivation.

Vielen Dank

(Dieser Beitrag wurde von Goar am 17. Jul 2023, 10:18 geändert)
Änderungsverlauf:
Beitrag geändert von Goar (User) am 17. Jul 2023, 10:18