指定名称のアプリケーションのヘルプブック内で指定キーワードを検索するAppleScriptです。
HelpBookを表示するOS標準搭載アプリケーション「HelpViewer」は一応AppleScript対応のスクリプタブルなアプリケーションなので、AppleScriptからコントロールできるのですが、経験上あまり信頼性がない(コマンドを無視して、表示しないことがある)ので、Cocoa経由で検索・表示を行わせてみました。
Cocoa経由でもすぐに応答は返ってこないのですが、(HelpViewerの起動を含めて)数秒待たされて結果が表示される感じです。
AppleScript名:指定アプリケーションのヘルプブック内で指定キーワードを検索する |
— Created 2017-04-18 by Takaaki Naganoya — 2017 Piyomaru Software use AppleScript version "2.4" use scripting additions use framework "Foundation" use framework "AppKit" set anAppName to "Script Editor" set aTargString to "用語説明" –"Script Dictionary" in Japanese set hRes to searchHelpBook(anAppName, aTargString) of me –指定アプリケーションのヘルプブックで、指定アンカーを表示する on searchHelpBook(anAppName, aTargString) set locBookName to getHelpBook(anAppName) of me if locBookName = false then return false current application’s NSHelpManager’s sharedHelpManager()’s findString:aTargString inBook:locBookName end searchHelpBook –指定アプリケーションのヘルプブック名称を取得する on getHelpBook(anAppName) set aWorkspace to current application’s NSWorkspace’s sharedWorkspace() set appPath to aWorkspace’s fullPathForApplication:anAppName if appPath is equal to missing value then return false set locBookName to (current application’s NSBundle’s bundleWithPath:appPath)’s objectForInfoDictionaryKey:"CFBundleHelpBookName" if locBookName is equal to missing value then return false –> "com.apple.ScriptEditor.help" return locBookName end getHelpBook |
▼AppleScript経由でHelpViewerにコマンドを発行してキーワード検索させたところ。検索が実行されない。
AppleScript名:HelpViewerで検索する?(コマンドを実行しても検索結果が表示されない) |
tell application "HelpViewer" activate search looking for "用語説明" end tell |
More from my site
(Visited 46 times, 1 visits today)