文章目录
文档镇楼: AppleScript Language Guide
前言
笔者学习AppleScript的起因,是因为本人键盘修饰键的使用习惯和其他同事不同,笔者习惯于将"大小写修饰键"和"Ctrl键"互调位置,以至于习惯默认修饰键配置的同事在我的电脑上进行调试,总是忍不住感叹一声:
“这TM是人用的吗?”
相信了解iOS开发的小伙伴们都知道,Ctrl + Command + 上下,可以切换.h和.m文件,但是在笔者的键盘上,执行这一操作时,不但没有任何的效果,NM还会把键盘设置成了大写模式,在一次又一次,怒吼的咆哮后,笔者痛定思通,决心要解决这个问题,在如何不改变自己键盘使用习惯的前提下,让来调试代码的同事们也感到如使用自己键盘般的流畅和丝滑呢?于是,就有就有了这篇
聊一聊脚本语言:AppleScript
AppleScript的实践应用
实践:还原修饰键默认设置
本文下面比较详细地介绍了AppleScript基础知识,在学习它们之前,只需要简单了解AppleScript中常用的几个概念,就可以实现GUI Scripting的神奇功效,我们先来看看AppleScript中的常用概念
###AppleScript的常用概念
这是一个神奇的传送门☞脚本编辑器(本文所有代码均可直接在IDE中执行)
我们先了解下我们的IDE工具,打开脚本编辑器
点击图片中的按钮,可以看到上面除了"结果"选项外,还多出了"信息"、"事件"和"回复"三个选项,在这里面可以看到更为详细的打印信息!
AppleScript的必须掌握的命令:
- tell someone do something
AppleScript的语法十分接近自然语言,想要操作一个对象执行某些操作,只需要使用"tell命令 +对象类型 + 对象名",在之后执行end tell
,结束当前的回话
激活终端
tell application "Terminal"
activate -- 告诉 终端,执行激活命令
end tell
关闭终端
tell application "Terminal"
quit -- 告诉 终端,执行退出命令
end tell
System Events是系统应用,我们有时寄期望于在系统应用中找到某个正在执行的进程(Process)
tell application "System Events"
tell process "Terminal"
end tell
end tell
在执行这段代码后,你会发现,其实什么都没有执行,不用慌,这是因为你并没有告诉"终端"要做些什么,那么我们通过entire contents
命令获取Terminal内的所有UI元素
#执行下面代码前,先激活"终端"
tell application "System Events"
tell process "Terminal"
entire contents --获取区域内所有的UI元素
end tell
end tell
执行后,会得到"终端"内的所有UI元素的完整描述
选择日志中的一条进行分析
button 1 of window “终端 — -zsh — 80×24” of application process “Terminal” of application