Komplette Neuling hier, also lass es mich wissen, wenn ich meine Frage klären oder anderweitig verbessern muss. Ich habe mehrere Male mit verschiedenen Keywords gesucht und konnte keine Lösung für mein Problem finden.Kann ich ein Applescript erstellen, das einen Web-Textclip mit Quellenattribut und einen Zeitstempel einfügt, während eingebettete Links beibehalten werden?
Ich möchte ein Skript (Applescript) erstellen, das es mir ermöglicht, einen Web-Textclip mit Quellenattribut und einem Zeitstempel einzufügen, ohne dabei mögliche eingebettete Links im ausgewählten Text zu verlieren.
Nicht so gut wie nichts wissen, weise Programmierung, konnte ich das folgende Skript (Applescript) nach ein paar Tagen von Web-Suche, um zusammenschustern.
-- clear the clipboard
tell application "Finder"
set the clipboard to " "
delay 0.1
end tell
-- copy selected text
tell application "Safari"
activate
tell application "System Events"
tell process "Safari"
keystroke "c" using {command down}
delay 0.1
end tell
end tell
end tell
-- open and paste web clip into specified TextEdit file
tell application "TextEdit"
activate
open "Macintosh HD:Users:Web:Documents:Web Text Clips:Web_Text_Clips.rtf"
delay 0.2
tell application "System Events"
tell process "TextEdit"
keystroke "v" using {command down}
delay 0.1
end tell
end tell
end tell
-- get, format and copy source info and timestamp
tell application "Safari"
activate
set theLongDate to current date
set theWindowName to the name of the front window
set theURL to the URL of the front document
set writeString to "- - - - - " & return & "From: " & theURL & return & "Page Title: " & theWindowName & return & "Date: " & theLongDate
set the clipboard to writeString
end tell
-- paste source info and timestamp into predefined position of the specified TextEdit file
tell application "TextEdit"
activate
tell application "System Events"
tell process "TextEdit"
keystroke (ASCII character 31) using command down
keystroke return
keystroke return
keystroke "v" using {command down}
delay 0.1
end tell
end tell
end tell
-- copy content of specified TextEdit file
tell application "TextEdit"
activate
tell application "System Events"
tell process "TextEdit"
keystroke "a" using {command down}
keystroke "c" using {command down}
delay 0.1
end tell
end tell
end tell
-- delete content of specified TextEdit file
tell application "TextEdit"
activate
tell application "System Events"
tell process "TextEdit"
keystroke "a" using {command down}
keystroke "x" using {command down}
delay 0.1
end tell
end tell
end tell
-- save specified TextEdit file and quit TextEdit
tell application "TextEdit"
save "Macintosh HD:Users:Web:Documents:Web Text Clips:Web_Text_Clips.rtf"
quit
end tell
Ich wurde in diese Problemumgehung gezwungen, denn wenn ich die „set“ die eingebetteten Links von dem ausgewählten Web-Text ausgelöscht wurden Befehl.
Während dieses Skript funktioniert, ist es ziemlich umständlich und langsam. Ich habe alle möglichen Dinge ausprobiert (einschließlich einiger Shell-Skriptbefehle), aber bis jetzt hat nichts anderes funktioniert.
Kann mir jemand bei der Erstellung eines eleganteren und schnelleren Skripts helfen, das die eingebetteten Links im ausgewählten Webtext noch enthält?
Danke,
ich MacOS Sierra leite (Version: 10.12.6)
Ihr Ansatz ist nicht schlecht, im Allgemeinen, obwohl viele der Skript Bedürfnisse aufgeräumt werden. Sie müssen die Zwischenablage verwenden, um formatierte Datenlink-Links zu übertragen. Frage: Was ist Ihr gewünschtes Endergebnis? Sind Link- und Quelldaten in der Zwischenablage, die irgendwo eingefügt werden können? Weil Sie es aus Ihrem TextEdit-Dokument löschen? – jweaks
@jweaks Danke für die Rückmeldung. Mein gewünschtes Endergebnis besteht darin, meinen ausgewählten Webtextclip, seine Quellinformationen und einen Zeitstempel in der Zwischenablage anzuordnen, um ihn als einen einzigen Eintrag in meine bevorzugte Notizenanwendung einzufügen. –
Der sauberste und schnellste Weg wäre, das Skript in die Notizen-App einzufügen, so dass Sie TextEdit vermeiden können. Was ist die App? Ist es skriptfähig? – jweaks