我找到了AppleScriptObjC的方法,并找到了Shane Stanley的Everyday AppleScriptObjC帮助。但我仍然很难知道从哪里开始NSPasteboard
。
这是我到目前为止所拥有的:
use AppleScript version "2.4"
use framework "Foundation"
use framework "AppKit"
use scripting additions
on readClipboard(theClipboard)
set theClipboard to current application's NSPasteboard
return theClipboard as text
end readClipboard
set theContents to missing value
its readClipboard(theContents)
当然这不起作用。但似乎确实在做某事。
它返回:
error "Can’t make «class ocid» id «data optr000000002852F974FF7F0000» into type text." number -1700 from «class ocid» id «data optr000000002852F974FF7F0000» to text
任何指针都会非常感激。
答案 0 :(得分:0)
NSPasteboard
是一个能容纳不同种类的不同物品的容器。有一些标准粘贴板定义为NSGeneralPboard
,NSRulerPboard
或NSDragPboard
。对于复制和粘贴操作,使用常规粘贴板
存储在普通粘贴板内的项目也可能不同。可以在粘贴板中存储public.rtf
,public.jpeg
等。
总而言之,我们得到了这个解决方案:
set theClipboard to current application's NSPasteboard's generalPasteboard's stringForType:(current application's NSPasteboardTypeString)
玩得开心,迈克尔/汉堡