我正在努力使我的应用程序可编写脚本。我与“谁的”过滤子句斗争。
我想让这项工作,但虽然name
可以使用,但country
不能:
tell application "myapp"
get every city whose name is "Berlin" -- works
get every city whose country is "Germany" -- error -1700 (Can’t make country into type specifier)
end tell
sdef 的相关部分如下所示:
<class name="application" code="capp">
<cocoa class="NSApplication"/>
<element type="city">
<cocoa key="allCities"/>
<accessor style="index"/>
</element>
<class name="city" code="Citi" plural="cities">
<cocoa class="ScriptableCity"/>
<property name="name" code="pnam" type="text" access="r">
<cocoa key="name"/>
</property>
<property name="country" code="Ctry" type="text" access="r">
<cocoa key="country"/>
</property>
</class>
我必须怎么做才能country
与“谁的”一起工作?显然,“谁”子句需要一个类型说明符,而不是属性名称,但我无法理解这一点。
我已经实现indicesOfObjectsByEvaluatingObjectSpecifier:
了,但这只是被要求name
,而不是country
。