applescript サンプルスクリプトから習い始める

Macを使い出して1年。初めて、applescriptをテキスト文字数を数えたい。(mac エディター)で使いました。これ、すごくいいと感じました。

使い方を覚えていきたい。と思っています。

applescriptは、MS-DOSのバッチファイルのとても高性能なものと、今は理解しています。スクリプトの文法・言語は英語に似ている様です。
詳しくは、鳶嶋工房 / AppleScript / Introductionが参考になるでしょう。では参考になるソースを見ながら、スクリプトを作っていくことにします。

スクリプトを学び始めるときには、ソースを見ることが効率よく学べます。これは今まで、PerlやPHP,Javascript,AccessVBA,ExcelVBAなどを身につけた経験からです。何かのスクリプトをいきなり書くことはできませんし、参考書を頭から読んでいっても、実際スクリプトコードを書くことはなかなかできません。英語を話すようになりたい場合も、実際に会話して、話して、聞いて、わからないところを調べるのが、上達の早道。これと似ていますね。コンピュータ作業を代わりにやってもらう。そのために、コンピュータと会話すること。これがスクリプトです。コンピュータの場合、「Year、作業します。」と「No、スクリプトが理解できないね。この行の意味わからないよ、あなたの書き方間違っていない?」の2種類しか返事がありませんが。

なので、早速に記事のスクリプトを見ていきます。

tell application “TextEdit”
set word_count to count words of document 1
set char_count to count characters of document 1
set show_words to (word_count as string) & ” 語 (” & (char_count as string) & ” 文字です)”
set dialog_title to “TextEdit Word Count”
display dialog show_words with icon 1 with title dialog_title buttons {“Ok”} default button “Ok”
end tell

MacFanより引用。

tell application “TextEdit”
「TextEdit」に接続してapplicationオブジェクトを指定する。(意訳:AppleScriptから「TextEdit」に接続し操作できるようにする。)

set word_count to count words of document 1
最前面のドキュメント(TextEditの中で)の単語数を数えて、その数を変数 ‘word_count’に、を代入する。

set char_count to count characters of document 1
最前面のドキュメント(TextEditの中で)の文字数を数えて、その数を変数 ‘char_count’に、を代入する

set show_words to (word_count as string) & ” 語 (” & (char_count as string) & ” 文字です)”
変数’word_count’を整数にし、変数 ‘char_count’を整数にし、「’word_count’語(’char_count’文字です)」を変数’show_words’に代入する。

set dialog_title to “TextEdit Word Count”
変数 ‘dialog_title’に”TextEdit Word Count”を代入する。

display dialog show_words with icon 1 with title dialog_title buttons {“Ok”}default button “Ok”
ダイアログを表示する。内容は以下の通り、変数’show_words’とOKボタンを選択状態にて表示する。

end tell
オブジェクト接続 解除。
(意訳:AppleScriptからの接続終了。)

以上です。

わかりやすい言語だし、腰を据えて使えるようになりたいと思いました。ネットの日本語情報も限られていました。一冊、参考書を買って、勉強だ。ところが、日本語の本が、無いんですよ。amazonで調べるんですが、ない。英語ならば、O’REILLYから出版されています。でも英語だしなー。迷います。やはり、英語はできたほうが情報多く手に入れられるのだと、感じました。


詳しい説明は以下の通り、時間を作って日本語に訳します。
参考:AppleScript ヘルプ
https://help.apple.com/applescript/mac/10.7/help/index.html
AppleScript Language Guide

講座 開催予定

この記事を書いた人