2017-09-06 167 views
0

我在寻找一个将光标置于消息应用程序文本字段中的脚本。我找了一个键盘快捷键来做到这一点,但找不到一个。任何人都可以提供脚本,或者我可以修改的类似脚本。将光标置于消息应用程序文本框中

NB我不是程序员,也不是非常熟悉AppleScript,但已经能够修改接近我需求的脚本。

我需要这个,因为我试图使用Mac OS中内置的听写功能控制邮件应用程序。我需要一个脚本,我可以分配给语音命令,将光标放在文本字段中,以便我可以指定一条消息。

非常感谢。

tell application "Messages" 
    activate 
    tell application "System Events" 
     set focused of text area 1 of scroll area 4 of splitter group 1 of window 1 of application process "Messages" to true 
    end tell 
end tell 

注:

回答

0

如果使用的是口授命令,在任何应用程序,所有你需要做的就是说出命令“显示数字”,你会看到:

enter image description here

然后你只需说出命令“二”,你想让它,这将使你的光标向右......在这种情况下,将文本字段


而且说的是命令‘显示命令对应的’将打开此窗口列出吨口述命令。

enter image description here

+0

由于某些莫名其妙的原因,除了标题按钮,show命令不适用于我的消息应用程序。但是,由于一些额外的莫名其妙的原因,当我刚刚尝试时,它现在可以工作。谢谢您的帮助。 – AndrewK

+0

我刚刚试过这个。出于某种原因,我并不总是将所有的字段都编号。这很奇怪。当我第一次打开邮件时,它的数字是正确的,但如果我移动窗口,它会漏掉一些数字。 – AndrewK

+0

然后说隐藏号码,然后说出显示号码 – wch1zpink

0

下进行了测试,并在OS X 10.8.5和消息7.0.1工程和可能需要的其他版本的OS X/MacOS的/信息来调整这个编码假设消息已经打开并打开一个窗口。根据需要和其他适当的形式,额外的编码将是必要的,其形式为try和或delay和或on error陈述


下面是如何我的代码,否则它作为一个例子,处理与否的消息是开放的,有它的窗口显示等

on setFocusToTextArea() 
    tell application "System Events" 
     if (count of windows of application process "Messages") is equal to 0 then 
      click UI element "Messages" of list 1 of application process "Dock" 
      delay 0.25 
     end if 
     try 
      set focused of text area 1 of scroll area 4 of splitter group 1 of window 1 of application process "Messages" to true 
     end try 
    end tell 
end setFocusToTextArea 

tell application "Messages" 
    if running then 
     my setFocusToTextArea() 
    else 
     activate 
     delay 2 
     my setFocusToTextArea() 
    end if 
    activate 
end tell 

注意:如果消息被关闭时,这个脚本运行,delay 2命令给出消息打开的时间,在其他代码运行之前打开。 delay命令可根据系统的速度进行适当调整。

+0

我测试了10.13(Beta)上的第一个脚本,它工作正常。谢谢!我应该说,我会一直用这个信息打开。 – AndrewK

+0

我也测试了第二个脚本,这也适用。 – AndrewK