Ms word 当粘贴到Word中时,AppleScript将Enter/NewLine添加到剪贴板

Ms word 当粘贴到Word中时,AppleScript将Enter/NewLine添加到剪贴板,ms-word,applescript,newline,clipboard,enter,Ms Word,Applescript,Newline,Clipboard,Enter,我目前正在尝试为我的Touchbar编写一个AppleScript,它会将一个预定义的变量复制到剪贴板中,然后粘贴到word文档中 嗯,它确实有效,但出于某种原因,除了粘贴变量文本外,它还向其中添加了Enter/换行符。 现在我已经做了一些测试,只是将纯文本直接分配到剪贴板,换行符仍然存在,所以它不是变量。我还测试了Cmd+V输出,而且当我只是在之后手动粘贴文本时,它仍然会使用enter键粘贴文本,所以看起来赋值有问题。但由于我对AppleScript还不熟悉,而且它的语言真的很奇怪,我真的不明

我目前正在尝试为我的Touchbar编写一个AppleScript,它会将一个预定义的变量复制到剪贴板中,然后粘贴到word文档中

嗯,它确实有效,但出于某种原因,除了粘贴变量文本外,它还向其中添加了Enter/换行符。 现在我已经做了一些测试,只是将纯文本直接分配到剪贴板,换行符仍然存在,所以它不是变量。我还测试了Cmd+V输出,而且当我只是在之后手动粘贴文本时,它仍然会使用enter键粘贴文本,所以看起来赋值有问题。但由于我对AppleScript还不熟悉,而且它的语言真的很奇怪,我真的不明白我在这里做错了什么。以下是重要的代码部分:

activate application "Microsoft Word" --I'm doing this, but you prolly don't need to.
set Donnerstag12 to "Anwendungsentwicklung"
set the clipboard to Donnerstag12
tell application "System Events" to keystroke "v" using {command down}

现在我注意到,当我让AppleScript粘贴到页面、文本编辑或直接粘贴到代码中时,它不包含换行符。有什么想法吗?

这一定是Word使用其“智能剪切粘贴”选项所做的事情,尽管我在Word 2011中没有看到这种行为。您可以在“高级设置”中更改该行为。粘贴到Word中时,您也可以修改脚本以删除段落标记

activate application "Microsoft Word" --I'm doing this, but you prolly don't need to.
set Donnerstag12 to "Anwendungsentwicklung"
set the clipboard to Donnerstag12
tell application "System Events"
    keystroke "v" using {command down}
    if name of (first process whose frontmost is true) is "Microsoft Word" then key code 51
end tell

这一定是Word使用其“智能剪切粘贴”选项所做的事情,尽管我在Word 2011中没有看到这种行为。您可以在“高级设置”中更改该行为。粘贴到Word中时,您也可以修改脚本以删除段落标记

activate application "Microsoft Word" --I'm doing this, but you prolly don't need to.
set Donnerstag12 to "Anwendungsentwicklung"
set the clipboard to Donnerstag12
tell application "System Events"
    keystroke "v" using {command down}
    if name of (first process whose frontmost is true) is "Microsoft Word" then key code 51
end tell

您可以使用Microsoft Word的
键入文本
命令

set Donnerstag12 to "Anwendungsentwicklung"
tell application "Microsoft Word" to type text selection text Donnerstag12

您可以使用Microsoft Word的
键入文本
命令

set Donnerstag12 to "Anwendungsentwicklung"
tell application "Microsoft Word" to type text selection text Donnerstag12

哇,这真是太疯狂了,我刚刚注意到Word对所有看起来像标题的东西都这么做。看看atm机上的选项,但我的希望很低。你说的“可能看起来像一个标题”是什么意思?您的意思是当您当前粘贴到标题样式中时?为什么我的变通方法不起作用?我的意思是,例如,只粘贴一个单词,而不是整个句子。另外,当只是粘贴一个Mac地址(仅用于测试)时,没有换行符。您的变通方法确实有效,是的,但我希望在没有变通方法的情况下解决它;)哇,这真是太疯狂了,我刚刚注意到Word对所有看起来像标题的东西都这么做。看看atm机上的选项,但我的希望很低。你说的“可能看起来像一个标题”是什么意思?您的意思是当您当前粘贴到标题样式中时?为什么我的变通方法不起作用?我的意思是,例如,只粘贴一个单词,而不是整个句子。另外,当只是粘贴一个Mac地址(仅用于测试)时,没有换行符。您的变通方法确实有效,是的,但我希望在没有变通方法的情况下解决它;)很好,有多少种输入文本的方法?击键、键代码和键入文本?我以前试过击键,但由于A是大写字母,出于某种原因,它也在之后用大写字母写了一些字母。但键入文本似乎效果不错。谢谢大家!
type text
是仅用于Word应用程序的命令,
keystroke
key code
是用于“系统事件”应用程序的流程套件的命令。有些应用程序AppleScriptable是在光标位置插入文本的命令,每个应用程序的此命令名称不同。很好,有多少种方法可以输入文本?击键、键代码和键入文本?我以前试过击键,但由于A是大写字母,出于某种原因,它也在之后用大写字母写了一些字母。但键入文本似乎效果不错。谢谢大家!
type text
是仅用于Word应用程序的命令,
keystroke
key code
是用于“系统事件”应用程序的流程套件的命令。某些应用程序AppleScriptable是用于在光标位置插入文本的命令,每个应用程序的此命令名称不同。