Menu

Skip to content
AppleScriptの穴
  • Home
  • Products
  • Books
  • Docs
  • Events
  • Forum
  • About This Blog
  • License
  • 仕事依頼

AppleScriptの穴

Useful & Practical AppleScript archive. Click '★Click Here to Open This Script' Link to download each AppleScript

カテゴリー: news

新発売:AppleScript基礎テクニック集(19)リモートコントロール

Posted on 7月 11, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第19巻、「リモートコントロール」です。PDF 37ページ、付録AppleScriptのZipアーカイブを添付。

→ 販売ページ

AppleScriptは、リモートコントロールを行うために作られた言語です。1台のコンピュータ上でスクリプトの実行環境と、操作対象のアプリケーションという別々のプロセスの間でメッセージを送り合って、制御を行います。その姿は、あたかも電話をかけて出前の注文をお願いしているかのようです。

1台のコンピュータ上ですら「通信」しているのですから、ネットワーク、主にLAN上で通信して他のコンピュータ上で起動しているアプリケーションとの間で通信して操作するのも同様に「通信」でできます。これがリモートApple Eventsです。

柔軟に通信を行って、イベントを投げ合うのがAppleScriptの本来の姿ではあるのですが、昨今のセキュリティ問題の高まりにより、あまり野放図に柔軟な処理ができないようにいろいろな制約が設けられるようになった……はずだったのですが、なぜかmacOS 10.13あたりからふたたび制限が緩和され、ネットワークごしのリモート・アプリケーション操作機能が復活しました。

いろいろ注意すべき点はありますが、使いこなすと便利で楽しいリモートコントロール。詳しく分かりやすく、誰も教えてくれない内容について、1冊まとめて説明いたします。

macOS 12.5 beta 5の不具合でAppleScriptはおろかドラッグ&ドロップでファイルのオープンができなくなるわ、Finderのtoolbarに登録したアイコンのクリックも3回目以降は効かなくなるわで、最悪の作業環境の中、LAN上の他のOSバージョンのマシンにリモートコントロールで作業を依頼していろいろ作っていました。

目次

■リモートコントロール入門

リモートコントロールのための言語
AppleScript実行時のリモートコントロールの詳細
通常のリモートコントロールのイメージ
同一マシン上のリモートコントロールのイメージ
リモートマシンのリモートコントロール
リモートAppleEventsの歴史

■ローカルマシン上の常駐アプレットをリモートコントロール

AppleScriptと常駐アプレットの間で通信する
アプリケーション操作と同じ呼び出しも可能

■ローカル・マシン上の他のユーザ・アカウントで動作中の常駐アプレットをリモートコントロール

他のユーザの常駐アプレットをリモートコントロール
他のユーザに切り替えて常駐アプレットを実行
同一マシン上の他のユーザのプロセスを指定

■他のマシン上の常駐アプレットをリモートコントロール

操作対象となるコンピュータの名前を調べる
コンピュータ名/Bonjour名は編集可能
対象マシンのユーザ名を確認
例:macOS 10.15以降のユーザ名制限解除
ネットワーク上の他のマシン上のアプレット操作
リモート・マシンの指定方法
リモートApple Events操作時の注意点

■他のマシン上のアプリケーションをリモートコントロール

他のマシン上のアプリケーションのリモートコントロール
リモートコントロールを行うべきか、べきでないのか?
対象マシン上のアプリケーションをコントロール

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(18)グラフ表示ダイアログ

Posted on 7月 6, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第18巻、「グラフ表示ダイアログ」です。PDF 37ページ、付録AppleScriptのZipアーカイブを添付。

→ 販売ページ

地味で控え目なAppleScriptにおいて、ダイアログ上でアニメーション表示可能なグラフを表示できるようになったのは、ごくささいな小さな発見があったためです。

macOS 10.10以降ですべての実行環境でサポートされるようになったCocoa呼び出し機能。当然WebViewも生成して表示可能なことはわかっていました。ところが、標準的なNSWindowの上にWkWebViewを配置して初期設定を行なっただけでは、WkWebView上のイベント回しが効かず、アニメーション表示は行えませんでした。

ところが、そんな状況を打破したのはNSAlertダイアログ。ごくごく限られたUIを乗せて利用するようにメーカー側から指導されてきた、誰も見向きもしなかった間に合せのダイアログ表示インタフェースです。

ところが、このNSAlert上でWkWebViewを表示すると、Webコンテンツのイベント回しをきちんと処理して、グラフ表示アニメーションやマウスによる操作、マウスカーソル移動のマウスオーバーのイベントにも反応することがわかりました。

ここから、さまざまなJavaScript製グラフ表示ライブラリを試行錯誤し、今日ではテキストエディタ上の選択範囲のテキストの文字種別を円グラフでアニメーション表示するといった、きわめて身近で日常的な用途に手軽にグラフ表示ダイアログが利用されるようになりました。

このやり方について、基礎的なところから詳細に解説を行い、実際に動くコードを提示し、macOS上のさまざまな実行環境での状況をご紹介しています。

■グラフ表示ライブラリでダイアログ上にグラフ表示

グラフ表示ダイアログの全体像
グラフ表示ダイアログの構成技術
組み立てるWeb系データの構造
CDN上のグラフ表示ライブラリを呼ぶ
Web表示部品をダイアログ上に表示
JavaScriptで扱えるデータを組み立てる
AppleScriptのバンドル中からhtmlを読み込む
HTMLテンプレートファイルを準備

■Webダイアログ表示ライブラリを呼び出し

HTMLテンプレートをまとめる作業
JavaScript書き換え例
Webダイアログで
さまざまなグラフを表示
AMCharts:円グラフ
AMCharts:棒グラフ
AMCharts:ワードクラウド
AMCharts:世界地図+国選択
AMCharts:世界地図(ドリルダウン)+国選択

■さまざまなランタイム環境でWebダイアログ表示を実行

特殊なAS実行環境ではさらなる変更も必要
Automator環境では、表示されない
ショートカット環境では、表示されない
Switch Control環境では表示OK!
Service Station環境で動作
Stream Deck環境で動作
FileMaker Pro環境では動く
Visual Studio Code環境で表示OK(一応)

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(17)リスト(配列)

Posted on 7月 1, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第17巻、「リスト(配列)」です。PDF 35ページ、付録AppleScriptのZipアーカイブを添付。

→ 販売ページ

AppleScriptにも配列変数はあります。その名も「リスト型変数」、一般的には「リスト」と呼ばれています。

AppleScriptのリストに対して、他のプログラミング言語と比べて「配列の要素が1から始まるなんて信じられない!」という意見も見かけますが、0で始まる(0-based index)か、1で始まる(1-based index)かの違いだけです。

リスト(配列)を使った基礎的な処理、要素の取り出しやループ、削除、しぼりこみ、ソートなどの定番をご紹介。 PDF 35ページ、サンプルScriptのZipアーカイブつき

目次

■リスト型変数=配列〜超基礎編

AppleScriptの配列=リスト型変数
リストの名前の付け方
リストの要素指定①
リストの要素指定②
リストに入れられるデータ

■リスト型変数=配列〜よくある処理

リストの内容でループ
複数の配列を同時にループ
指定要素を削除
指定アイテムを指定アイテム番号に挿入
配列の添字っぽい書き方でアクセス

■リスト型変数=配列〜しぼりこみ

2次元リストから要素の内容を部分一致で抽出①
2次元リストから要素の内容を部分一致で抽出②

■1次元リスト型変数〜ソート

1次元リスト、数値ソート(昇順)
1次元リスト、数値ソート(降順)
1次元リスト、数値ソート(昇順/降順)
1次元リスト、カスタムソート順でソート

■2次元リスト型変数〜複数キー指定ソート

2次元リスト、数値ソート(昇順)(1/3)
2次元リスト、数値ソート(昇順)(2/3)
2次元リスト、数値ソート(昇順)(3/3)
1次元リスト、数値ソート(昇順/降順)

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(16)スクリプトエディタの使い方

Posted on 6月 28, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第16巻、「スクリプトエディタの使い方」です。PDF 38ページ、付録AppleScriptのZipアーカイブを添付。

→ 販売ページ

スクリプトエディタは、Classic Mac OSのスクリプト編集プログラムをAppleがMac OS Xに移植したものです。

初期にはCarbonベースで書かれ、v10.4でCocoa&Universal Binary化、v10.6で64bit化。v11でApple Silicon/Intel 64のUniversal Binary化と、Mac上のすべての移行を経験してきた猛者です。

原始時代のスクリプト編集プログラムには、検索機能すら実装されておらず、Script Debuggerとの差は明白でした(仕事で使うならScript Debuggerが必要、という状況はいまでも変わりません)。

そんなスクリプトエディタも、Mac OS X 10.4で32Kバイト以上のスクリプトが編集可能になり、AppleScriptからのコントロールが行えるようになったことで、「使える道具」になってきました。

同時にURLイベントに対応したことで、筆者のBlog「AppleScriptの穴」掲載の、リンクのクリックで内容が転送されるプログラムリストをWeb上で共有できるようにもなりました。

本書を通してご覧になると、「これは拾い物!」「こんなの知らなかった!」というスクリプトエディタの機能が見つかることでしょう。

本書付録には、スクリプトエディタのコンテクストメニューから起動するスクリプト記述支援AppleScript集「Piyomaru Script Assistant v2.1」、各種macOS標準搭載アプリケーション用のテンプレートAppleScript集を添付。

さまざまな角度から、スクリプト記述のための生産性を向上させる仕組みを提供しています。

目次:

■編集環境としてのスクリプトエディタ

スクリプトエディタの機能一覧
スクリプト新規作成/テンプレートからの作成
ユーザー用Scriptテンプレートの追加方法
Cocoa-AppleScriptアプレットの新規作成
URLイベント受信
短縮入力の展開
「説明」欄の編集
構文書式設定
コンパイル(構文確認)
バンドル内ファイル編集
Info.plist編集
スクリプトアシスタント入力
ヘルプの閲覧
AppleScriptからの操作
新規作成スクリプトのデフォルトウィンドウ指定
その他の機能

■実行・デバッグ環境としてのスクリプトエディタ

AppleScriptの実行環境における位置付け
実行/強制メインスレッド実行
ログ表示/履歴管理
スクリプトメニューの有効化/無効化

■用語辞書閲覧環境としてのスクリプトエディタ

用語辞書の閲覧
ライブラリ管理

■保存、書き出し環境としてのスクリプトエディタ

スクリプト保存
スクリプト書き出し/コード署名

Posted in Books news | Tagged 10.15savvy 11.0savvy 12.0savvy Script Editor | Leave a comment

新発売:AppleScript高速化テクニック

Posted on 6月 20, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。「AppleScript高速化テクニック」です。PDF 86ページ、サンプルAppleScriptのZipアーカイブを添付。

→ 販売ページ

本書は、高速なAppleScriptを書くための実践的なノウハウをまとめた、おそらく世界で初めての、現時点では唯一の書籍です。

AppleScript自体はインタプリタ型の処理系であるため、実行速度はSwiftやObjective-Cなどで書かれたプログラムにスピード面では遠く及びません。

ただし、処理系そのものや周辺環境に対する十分な理解をともなわずに書かれたScriptは、本来期待されるレベルを大きく下回るスピードしか出せません。大変残念なことです。AppleScriptはプログラミング言語というよりも、OSに対するシェルであるとか、一種のアプリケーションとしての性格が強いものです。そこには、明確な「使いこなし」のノウハウが存在しますし、癖もあります。

残念な状態に書かれたAppleScriptのプログラムは、自動車でいえば整備不良、ガス欠で、洗車も行われずに野ざらしになっている状態です。

本書は、いわばそうした残念な状態の自動車に対しての、整備、ガソリン補給、オイル交換や洗車についてご提案するものです。

実機で実際にAppleScriptのプログラムを動かし、実行時間を計測。どの程度速くなるか、そのメリットを数値でご理解いただけることでしょう。

目次

■AppleScriptは遅いのか?

書き方によって速度差が出やすいAppleScript
①大規模データ操作時の固有ノウハウ
②GUIアプリ操作の固有ノウハウ
③各アプリ固有の操作ノウハウ
④適材適所
⑤連携運用できるプログラムなどへの知識
まとめ:AppleScriptは遅いのか?

■遅いScriptを実際に高速化

とても遅くて下手なScriptのサンプル
素人Scriptからの高速化:さまざまな方向から
Script高速化の第一歩は「時間計測」
下手なScriptは、少ないデータ件数では目立たない
高速化ポイント1:一括取得
高速化ポイント1:一括取得
高速化ポイント2:受け取ったデータの保持
高速化ポイント3:受信データの変換
高速化ポイント4:rangeの変換処理を自前で
素人Scriptを高速化①:データ保持方法を変える
素人Scriptを高速化②:通信頻度を減らす

■高速化しやすい処理の傾向

AppleScriptの処理で高速化しやすい箇所
Finderをファイル処理に使わない①
Finderをファイル処理に使わない②
1次元リスト(配列)のソート
1D Listのソート
1D Listのソート
2次元リスト(配列)のソート
2D Listのソート(1/2)
2D Listのソート(2/2)
2D Listのソート
アプリケーションのオブジェクトへのアクセス
画面部品を強引に動かすGUI Scripting
指定の値をクリップボードに入れる
遅くなりがちな処理を避ける
漠然と「遅い」と言われた処理の傾向
スクリプトエディタとAppleScript間の通信①
スクリプトエディタとAppleScript間の通信②

■データ量と処理内容のバランスを取る

複数アクセス方法すべてで実行速度を計測
リスト(配列)データの要素数によって変わる選択肢
1000〜3万件文字列追加+時間計測
まとめて操作できるデータを個別操作
要素が連続する部分をリスト上で検出
まとめて書式設定(1/2)
まとめて書式設定(2/2)
RTF読み取りライブラリ(1/2)
RTF読み取りライブラリ(2/2)
RTF読み取りライブラリ(rtfToDict)の結果
非同期実行モードの利用
Numbersの表のセルを100個埋めるテスト
処理対象に応じて因数分解を行う部品を変更

■処理内容を見直す &使用部品を変える

AppleScriptの速いバージョンのmacOSを選択
処理に使用する部品を変更(乱数生成)
処理に使用する部品と方式を変更
処理モジュールを一体化
使用するマシン構成を変更:複数のマシンで分散処理
使用するマシンを変更:本当に速いマシンを使う

■ランタイム環境の選択

AppleScriptのさまざまな実行環境
AppleScript実行環境の名称を取得する方法
エディタ①
エディタ②
エディタ③
アプレット,ドロップレット①
アプレット,ドロップレット②
メニュー実行①
メニュー実行②
メニュー実行③
その他実行プログラム①
その他実行プログラム②
その他実行プログラム③
アプリケーション内蔵メニュー①
アプリケーション内蔵メニュー②

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(15)フォルダアクション

Posted on 6月 13, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第15巻、「フォルダアクション」です。PDF 33ページ、サンプルAppleScriptのZipアーカイブを添付。

→ 販売ページ

フォルダアクションは、任意のフォルダにAppleScriptを添付して、ユーザーがファイルを入れたり削除したり、フォルダをオープンしたりクローズすると指定のAppleScriptが実行されます。

実際には、共有フォルダに対してフォルダアクションを設定、多くのユーザーが所定のファイルをフォルダに入れることで、提出処理を簡略化したり、時間のかかる処理を集約してサーバー機で行わせる、所定の処理を確実に所定のパラメータや手順で行わせるといったシステムが使われてきました。

本書では、Macの便利で強力な機能である本フォルダアクションについて、ローカルのMac上に設定する方法について、基礎的な内容をご説明しています。

目次:

■フォルダアクションの歴史と仕組み

フォルダアクションとは?
フォルダアクション運用例
Classic Mac OS時代から続く伝統の機能
フォルダアクション関連ツール、ファイル
フォルダアクションScript中で利用可能な技術

■フォルダアクションの設定方法

フォルダアクション設定の使い方①
フォルダアクション設定の使い方②
フォルダアクション設定の注意点①
フォルダアクション設定の注意点②

■フォルダアクション自体のAppleScriptからの操作

Script側から行えるフォルダアクション操作①
Script側から行えるフォルダアクション操作②
Script側から行えるフォルダアクション操作③
Script側から行えるフォルダアクション操作④

■フォルダアクションの種類と書き方

イベントハンドラのパラメータ内容①
イベントハンドラのパラメータ内容②
実例1:入ってきたフォルダ中のPDFを大きさで分類①
実例1:入ってきたフォルダ中のPDFを大きさで分類②
実例1:入ってきたフォルダ中のPDFを大きさで分類③
実例2:指定フォルダのウィンドウ操作を受信

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(14)ファイルサーバーのマウント

Posted on 6月 6, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第14巻、「ファイル処理」です。PDF 32ページ、サンプルAppleScriptのZipアーカイブを添付。

→ 販売ページ

サーバー上の任意のマウント対象フォルダの情報を確認する方法がそっけなくて(地味で)、知らないと手も足も出ないという状況でもあります。

サーバー上の特定のフォルダをドライブとしてマウントする、という些細な処理ではあるものの、知っておくべき要点が多いのでまとめてみました。

続刊として予定しているeppc(リモートAppleEvent)について、このファイルサーバーのマウントの延長線上にあるため、eppcを使いたい人にはマスターしておくべきテーマといえるでしょう。

目次:

■macOSのファイル共有の仕組み

ファイル・サーバーとクライアントの関係
macOSのバージョンとファイル共有機能の変化
資料:ファイル共有プロトコルの歴史
共有する側(サーバー)の共有設定
共有する側(サーバー)の共有設定
共有URLの確認①
共有URLの確認②
共有URLの確認③

■サーバー・マシン名の確認

サーバー名の確認
サーバーURLの表記方法

■LAN上のサーバーの存在確認

LAN内のサーバー・プロトコル
指定プロトコルのサーバー一覧の取得①
指定プロトコルのサーバー一覧の取得②
指定プロトコルのサーバー一覧の取得③
指定プロトコルのサーバー一覧の取得④

■AppleScriptのmount volumeコマンド

mount volumeコマンド
指定のサーバー/フォルダをマウント
ファイルサーバーちょっといいノウハウ

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(13)ファイル処理

Posted on 6月 1, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第13巻、「ファイル処理」です。PDF 33ページ、サンプルAppleScriptのZipアーカイブを添付。

→ 販売ページ

AppleScriptによるファイル処理は、MacBook AirからはじまったSSD標準採用、macOS 10.10以降のCocoa Scriptingの標準化、高速なApple Siliconへの移行なども相まって、非常に高速なものとなってきました。とくに、NSFileManager経由で処理をしたときの速度がすさまじく高速です。最新のOS、最新のマシンの組み合わせで必携の一冊!

目次:

最近のmacOSのファイル処理事情

AppleScriptのファイル処理には3通り
フルディスクアクセスの設定を
64ビット化されてFinderは遅くなった
どこで差がつく? ファイル処理
複数の条件をつけてFinderでファイル取得

条件抽出

ファイル情報の抽出
Finderラベルによる抽出

リネーム(名称変更)

ファイルの名称変更=リネーム
フォルダの名称変更=リネーム

コピー(複製)

ファイルのコピー
フォルダのコピー

移動

ファイルの移動
フォルダの移動

削除

ゴミ箱への移動を行うだけの「ファイル削除」
ファイルの完全削除
ゴミ箱への移動を行うだけの「フォルダ削除」
フォルダの完全削除

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

人類史上初、魔導書の観点から書かれたAppleScript入門書「7つの宝珠」シリーズ開始?!

Posted on 5月 30, 2022 by Takaaki Naganoya

いつものようにコードレス糸電話(FaceTime Audio)で企画会議を行なっていたら、「プログラミングを魔導書の形式で書くことが可能なのではないか?」というアイデアが登場。その場でアイデアスケッチを行い、あれよあれよという間に、実物ができてしまいました。

→ 販売ページ

ノリと勢いだけで作ってしまった1冊ですが、ビジュアル要素多めでまとめられました。ただ、宗教的なアレとかナニとかを完全に無視して作ったものなので、日本国内でしか流通させないほうがよいでしょう。

本書は、プログラミングという魔法について、「魔導書」の観点から記した人類最初の書物である。

難解なプログラミングを、なじみ深い魔導書の観点から説明すると親しみやすくなるのだろうか、という1つの魔術モルモット実験でもある。

本書で扱う内容はごくごく簡単で基礎的な内容だが、このぐらいにしぼって解説すれば難しく見えないという7テーマ、七宝珠である。

「習うより慣れろ」ということわざがあるように、難解な魔術であっても苦手意識を持たずに「慣れる」ことは重要である。 本書をもってしても、真の魔道士を育成することは難しい。だが、「だいたいこんなかんじ」という感覚をつかむためには、このぐらいの分量に抑えることが肝要だろう。

PDF 31ページ

目次

■魔導書「7つの宝珠」

神(Computer)との対話を行う人の子の書
失われし魔法の7つの宝珠を求めて
変数と代入文という最初の宝珠
if文〜条件分岐という宝珠
繰り返しループ 体力を削らせない宝珠
配列変数 詠唱呪文の機能を高める宝珠
コメント文 失われた知恵の宝珠
ログ表示 簡単に変数の中身を確認する宝珠
終了 そこで呪文実行を止める宝珠

■第1の宝珠 変数と代入文

神の言葉から人の子の言葉への移行
巻物で満ち溢れる人の子の世
牛飼いを羊飼いに変える変数
変数に牛や羊を入れるのが「代入」
変数の中に何がある?

■最短詠唱呪文集

魔術入門〜最短詠唱呪文
警告音を鳴らす魔術「beep」
現在の日付を知る魔法「current date」
クリップボードの内容を調べる魔法
時間待ちを行う魔法「delay」
ゆうしゃ(=あなた)のステータス

Posted in Books news | Tagged 10.13savvy 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(12)Unix shell commandの利用

Posted on 5月 26, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第12巻、「Unix shell commandの利用」です。PDF 34ページ、サンプルAppleScriptのZipアーカイブを添付。

→ 販売ページ

Unix shell commandの利用といったときに、「AppleScriptからdo shell scriptコマンドでshell commandを呼び出す」話と、「shell commandやshell scriptの中でAppleScriptで書いたプログラムを呼び出す」という、まったく価値観の異なる別の話が含まれています。

本書は、これらのまったく別な話に含まれている概念やノウハウを整理し、わかりやすく具体的にその方法や制限についてご紹介する本です。

目次

■Terminal環境とdo shell script環境の違い

shell scriptをAppleScriptと組み合わせるために
ターミナルに書類のパスを入力する方法
Terminalからプロセスの確認と終了を
Terminalとdo shell sciptの環境変数
Terminal.appをAppleScriptで操作できる①
Terminal.appをAppleScriptで操作できる②

AppleScriptからshell scriptを呼び出す

do shell scriptコマンド
パス形式変換
Terminal.app上と同じ環境変数を使用するには
参考資料:新規インストールしたユーザーの環境変数
パラメータの与え方について
do shell scriptコマンドちょっといいノウハウ
コマンドライン呼び出しプログラムをScriptに同梱

shell scriptからAppleScriptを呼び出す

AppleScript関連のshell command
shell scriptからAppleScriptを呼び出す方法①
shell scriptからAppleScriptを呼び出す方法②
パラメータ指定できるAppleScriptの書き方
AppleScriptライブラリを呼び出せる?
パイプで指定した内容を受信できる?
GUI Scriptingを利用できる?
ホームディレクトリ下のFrameworkを呼べる?

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

Pages v12に謎のバグ。書類上に11枚しか画像を配置できない→解決

Posted on 5月 23, 2022 by Takaaki Naganoya

Pages v12に謎のバグを見つけました。Pagesでは書類上に任意の画像を配置できるわけですが、11枚目までは配置できるものの、12枚目を配置できません。実際には120枚ほど画像を用意してテストしていたので、12枚目が配置できればそれでOKかと言われれば、ぜんぜん不十分です。

→ OSの再起動を含む、追試を何回か行ってみたところ、その後このままでは画像の貼り込みができなくなっていました。そして、画像ファイル貼り込み前にパスの文字列をaliasにcastしたところ、問題なく120枚貼り込めました。

–> Watch Movie

以前にも、Keynoteに「特定サイズ以上の表を作るとエラーになる」とかいったバグが発生していましたが、この12個目を配置するとエラーになるというのも、内部で何か不可思議なリミッターを設けているように見えます。

スクリプトエディタ、Script Debuggerの両方で発生しています。おそらく、ランタイム環境が何であるかはこの問題に影響を与えていません。

macOS 10.12以降で、日本語環境限定で発生しているバグで有名なものに、「日本語入力Input Method経由でファイル名を入力している最中に、不必要な不可視文字が入力されてしまい、これがファイル処理を妨げる危険性がある」というものがありますが、これらの画像のファイル名をチェックしたところ、そうした危険な不可視文字は混入していませんでした。

# こうした、複数チームの担当製品の間で発生しているバグは、どこが担当してバグを調査するということはないようです。組織の細分化にともない、こうした組織境界面でバグが発生するととたんに無責任になるのがいまのAppleです(組織の構造上の問題です)

ちなみに、GUI経由で画像をPages書類上に配置してみたところ、12枚以上配置できました。Pagesにそのような上限が存在しているわけではないようです。

Pages書類(バンドル書類)内で何かファイル名の重複のようなものが発生したのかと考え、別の画像を(番号をずらして)指定してみましたが、同様の枚数を配置した時点でエラーになりました。

内部で発生している(していた)別のエラーを発生させないように、謎のリミッターをかけていた可能性もありますが、その必然性がよくわかりません。

AppleScript名:指定の画像をPagesに順次貼り込む(12枚で止まってしまう!).scpt
set baseName to "book24_"
set baseFol to (choose folder) as string

set pMax to 10

(*
tell application "Pages"
  –set newDoc to make new document
  
  tell front document
    set dCount to count every page
    
    repeat with i from (dCount + 1) to pMax
      make new page
    end repeat
    
    set newDCount to count every page
  end tell
end tell
*)

repeat with i from 1 to 120
  set aFN to baseFol & baseName & makeFN(i, 4) of me & ".jpg"
  
tell application "Pages"
    tell front document
      tell page i
        set newItem to make new image with properties {file:aFN}
        
tell newItem
          set position of it to {0, 0}
          
set height of it to 843
          
–set position of it to {-1, 0}
          
set locked to true
        end tell
      end tell
    end tell
  end tell
end repeat

on makeFN(aNum, aDigit)
  set aText to "00000000000" & (aNum as text)
  
set aLen to length of aText
  
set aRes to text (aLen – aDigit + 1) thru -1 of aText
  
return aRes
end makeFN

★Click Here to Open This Script 

Posted in Bug news | Tagged 10.15savvy 11.0savvy 12.0savvy Pages | Leave a comment

iWorkアプリケーションv12に共通のバグ? 新規ファイルの保存ができない

Posted on 5月 23, 2022 by Takaaki Naganoya

Apple iWorkアプリケーション(Keynote、Pages、Numbers)の最新バージョンv12.0において、共通のバグがあるのではないか? と見ています。もちろん、見ているだけでなくAppleにバグレポートもしています。

症状は、新規作成した書類を「保存できない」というものです。

以前にも、PDFをexportできないという致命的なバグが発生していましたが、今回のも同様のメカニズムで発生しているものと見ています。つまり、「Appleが自社OSに設定したセキュリティ機能によって、自社アプリであるKeynote、Pages、Numbersが自家中毒を起こしている」という状態です。

自分の勘違いだとよいのですが….

あとは、Numbersのsaveコマンドをよく見てみると、書類フォーマットに「as Numbers」というenumがあるのですが、これはAppleScriptの処理系では「number」の複数形として認識されてしまうので、この予約語自体に無理があります。ここは、「as Numbers format」といった予約語に変えるべきです。

AppleScript名:Keynoteで新規書類作成して指定名称で新規保存.scpt
set dtPath to (path to documents folder) as string
set uuidStr to (do shell script "uuidgen") & ".key"
set savePath to dtPath & uuidStr

tell application "Keynote"
  set nDoc to make new document with properties {document theme:theme id "Application/21_BasicWhite/Standard", width:1024, height:768}
  
save nDoc in file savePath as Keynote
end tell

★Click Here to Open This Script 

AppleScript名:Pagesで新規書類を作成して指定名称で新規保存.scpt
set dtPath to (path to documents folder) as string
set uuidStr to (do shell script "uuidgen") & ".pages"
set savePath to dtPath & uuidStr

tell application "Pages"
  set nDoc to make new document with properties {document template:template id "Application/Blank/ISO"}
  
save nDoc in file savePath as Pages Format
end tell

★Click Here to Open This Script 

AppleScript名:Numbersで新規書類作成して指定名称で新規保存.scpt
set dtPath to (path to documents folder) as string
set uuidStr to (do shell script "uuidgen") & ".numbers"
set savePath to dtPath & uuidStr

tell application "Numbers"
  set nDoc to make new document
  
save nDoc in file savePath as numbers –change "Numbers" word into "numbers format" because "numbers" is alredy registered as "list of number" or "every number"
end tell

★Click Here to Open This Script 

Posted in Bug news | Tagged 10.15savvy 11.0savvy 12.0savvy Keynote Numbers Pages | Leave a comment

新発売:AppleScript基礎テクニック集(11)AppleScriptアプレットとドロップレット

Posted on 5月 20, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第11巻、「AppleScriptアプレットとドロップレット」です。PDF 41ページ、サンプルAppleScriptのZipアーカイブを添付。

→ 販売ページ

本シリーズも、着手した頃には「そんなに細切れのテーマで書けるのか?」「そんな作り方で作れるはずがない」といった意見が集まっていたものですが(チーム内の打ち合わせ時には割と批判的です)、実際に作り出したらトンでもなく「書くべきこと」があって、書けば書くほど新たなテーマが見つかるという恐るべき状態。

今回の「アプレット」「ドロップレット」については、あまり振り返ったことがなかったのですが、いざ書いてみると尋常でないほどの情報が溜まっていました。

スクリプトエディタとScript Debuggerという2つの開発環境のちがい、アプレット、ドロップレット、Cocoa-AppleScriptアプレット、Script Debuggerの拡張ドロップレットなどなど。常駐タイプのアプレットに、タイマー割り込み処理のアプレット。アプレットのアイコンのカスタマイズに、アプレット内にAppleScriptライブラリを同梱する方法、Cocoa Frameworkを入れて呼び出す方法など、盛りだくさんな内容をお送りしています。

目次

■アプレット

AppleScriptをアプリケーション形式で書き出し
AppleScriptアプレットの種類
AppleScriptアプレットの作成方法
AppleScriptアプレットのオプション指定
常駐型AppleScriptアプレットの作成方法
常駐型AppleScriptアプレットの記述
アプレットの「初期画面」を指定
「初期画面」に画像をペーストした場合の動作
アプレット/ドロップレットのユーザーインタフェース
資料:スクリプト/アプレットのバンドル構造
資料:アプレットのカスタマイズ①
資料:アプレットのカスタマイズ②
資料:アプレットのカスタマイズ③

■Cocoa-AppleScriptアプレット

Cocoa-AppleScriptアプレットの作成方法
参考資料:Delegateスクリプトの内容確認方法
参考資料:Delegateスクリプトのヘッダー内容
参考資料:Delegateスクリプトのハンドラ

■Script Debuggerのアプレット/拡張アプレット

AppleScriptアプレット(SD)の作成方法
AppleScript拡張アプレット(SD)の作成方法
AppleScript拡張アプレット(SD)の作成方法

■ドロップレット

AppleScriptドロップレットの作成方法
AppleScriptドロップレットの作成方法
ドロップレットによるファイルの受信
macOS 10.12以降の問題への対策ドロップレット
macOS 12.4上でドロップレット処理を実験

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(10)ループ処理

Posted on 5月 13, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第10巻、「ループ処理」です。PDF 33ページ、サンプルAppleScriptのZipアーカイブを添付。

→ 販売ページ

ループ処理について、さまざまなrepeat文のバリエーションをまんべんなくすべて知って理解するよりも「間違いなく必要な場所で使える」ことが重要です。

repeat文にもいくつか書き方はあるものの、おおよそ2パターンぐらいでだいたい足ります。

それでも、複数の配列を同時にループしなくてはならないとか、ステップ値を想定の値に合わせるための調整とか、ノウハウらしきものはいろいろあります。

また、参照値をそのまま使うとエラーになる例もあるため、「contents of」でオブジェクトを取り出す必要があるといったささいなノウハウが必要なものでもあります。

目次

■ループによる繰り返し処理

AppleScriptの制御構文
繰り返しループ
repeat文①
repeat文②
repeat文③
repeat文④
repeat文⑤
repeat文⑥
exit repeat
多重ループ+exit repeat

■アプリケーションから取得したオブジェクトでループ

アプリケーションのオブジェクトを処理
Photos上の選択中の写真から情報を取得
Keynoteで選択中のオブジェクトを位置でソート
Numbersで表のセルが連結されていたら分離
targetが重複しているFinder Windowをクローズする
ミュージック.appで選択中のtrackの情報取得
大量のオブジェクト受信に備える

■高度な処理を簡潔に記述

複数の配列の同時ループ
ページ分け
再帰処理

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(9)ダイアログ表示

Posted on 5月 6, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第9巻、「ダイアログ表示」です。PDF 43ページ、サンプルScript、AppleScriptライブラリのZipアーカイブを添付。

→ 販売ページ

ダイアログ表示については、たいへん基礎的な内容でありながらも数多くの機能が盛り込まれています。サードパーティ側でさまざまなダイアログを作れるようになってきて、「みんなが思っているよりも、けっこう便利」な環境ができています。

利用するかしないかは、皆様の判断によると思いますが、実際に利用した方は割と便利で手放せなくなるようです。

目次

ダイアログ表示

標準搭載のさまざまなダイアログ表示機能
メッセージ表示系ダイアログ
メッセージ表示系ダイアログ
ファイル選択ダイアログ
フォルダ選択ダイアログ
ファイル名選択ダイアログ
多項目選択系ダイアログ
色選択ダイアログ
LAN内のリモート資源の選択
ローカルのアプリケーションの選択
リモート・アプリケーションの選択

AppleScriptライブラリを利用したダイアログ表示

AppleScriptライブラリの用語辞書の確認方法
筆者のライブラリにはサンプルScript掲載
iPhoneやiPad、MacとAirDrop通信
チェックボックス選択ダイアログを表示
日付選択ダイアログを表示
場所選択ダイアログを表示
複数ポップアップ選択ダイアログを表示
指定のRTF書類から抽出した書式を選択するダイアログ
指定の場所を異なる拡大倍率で地図表示
表形式のデータをダイアログ表示
ラベルつきテキストフィールドを表示/データ修正
指定色の一覧選択ポップアップメニューを表示
Scriptでカスタマイズ可能な複雑なダイアログ

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(8)環境整備

Posted on 4月 28, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第8巻、「環境整備」です。PDF 42ページ、スクリプトエディタ上にAppleScriptのスニペットを入力する開発支援用Script集「Piyomaru Script Assistant v2.0」つき。

→ 販売ページ

AppleScriptの開発に必要なツールはmacOSに最初から入っています。整備も何も、追加で揃える必要がありそうなのは、Late Night SoftwareのScript Debuggerのお試し版ぐらいのものです。情報として伝えるなら100文字以内で終わってしまいそうなお話です。

それでも「難しい」と感じる方がいるとすれば、それはノウハウが分散していて、どれを使うとかどれをどう設定しておくといった話がまとめられていないから、ということなんでしょう。ここに、AppleScriptの開発環境がどういうものか、詳細にご紹介いたします。

環境整備〜超基礎編

自分でマシンの管理を行えることが必要
AppleScriptの開発環境〜安定動作の平均的な環境
キーボード/マウスの選択
プリンタは?
ネット接続
複数台あったほうが便利
iPhoneと共通のiCloud設定
Apple Developper Account

環境整備〜構築編

スクリプトエディタ:編集、実行、書き出し
アクティビティモニタ:プロセス監視、終了
Script Debugger:統合開発環境
作業手順をまとめておく:Keynote
各種AppleScriptライブラリ
Piyomaru Script Assistant
各種AppleScript対応アプリケーション

環境整備〜設定編

スクリプトエディタ:構文フォーマット設定
スクリプトエディタ:ライブラリ設定
スクリプトメニュー
Finderの拡張子設定を使用環境で統一
システム環境設定
システム環境設定

環境整備〜メンテナンス編

定期的な再起動
定期的なディスクメンテナンス
異常プロセスの監視

Posted in Books news | Tagged 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(7)条件分岐(if文)

Posted on 4月 26, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第7巻、「条件分岐(if文)」です。PDF 34ページ、掲載Scriptアーカイブつき。

→ 販売ページ

if文が書けないとプログラムを書けないも同然。自転車でいえば、カーブで曲がれ ないとか、水たまりを避けられない走り方しかできない状態です。if文で華麗なコー ナリングを決められたら、初心者レベルは超えられたことでしょう。

if文とは?

条件分岐ってなに?
if文による条件分岐
if文による条件分岐
if文による条件分岐
if文で気をつけるべき点

比較演算とは?

比較演算ってなに?(数値)〜同一比較
比較演算ってなに?(数値)〜大小比較
参考資料:比較演算の演算子
文字の大小比較演算
特別な文字比較を行えるオプション
特別な文字比較のサンプル
複数の条件をリストにして、is inで照合
文字を含む、始まる、終わる演算
論理の反転
参考資料:is in演算子のはたらき
参考資料:「計算機」で16→10進数変換

より高度な条件分岐

UnicodeのNormalizeを強制して文字比較
アプリケーションのオブジェクト同士の照合
異なるアプリケーションのオブジェクト同士の照合

Posted in Books news | Tagged 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(6)フィルタ参照

Posted on 4月 24, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第6巻、「フィルタ参照」です。PDF 41ページ、掲載Scriptアーカイブつき。

→ 販売ページ

「フィルタ参照」はAppleScript独特の概念であり、「膨大なデータから正規表現で絞り込む」といった他の環境でありがちな方法とは異なります。

データのしぼりこみができないものと誤解されたり、説明しておく必要性をとても感じるものです。本書が好評を得られるかといった話は度外視してでも、書かないとダメという存在です。

フィルタ参照

条件に合うものを抽出するフィルタ参照①
条件に合うものを抽出するフィルタ参照②
条件に合うものを抽出するフィルタ参照③
フィルタ参照に使われる予約語
フィルタ参照の書き方
フィルタ参照の書き方
フィルタ参照の書き方
オブジェクトの各属性を指定して抽出
とくに指定しにくい属性値
フィルタ参照の傾向と対策
フィルタ参照の注意点

より高度なフィルタ参照

複数条件でしぼりこむ
開始日、終了日を指定
まとめて設定(無条件フィルタリング)
任意の項目をランダムで抽出

ひかえめなフィルタ参照

直接指定できない場合に、間接指定的に使う①
直接指定できない場合に、間接指定的に使う②

アプリケーションのフィルタ参照例紹介

メール(Mail)
リマインダー(Reminders)
メモ(Notes)
連絡先(Contacts)
ミュージック(Music)
Keynote
Pages
Pages:ページ中の指定サイズの文字のテキスト
Numbers

Posted in Books news | Leave a comment

PFiddlesoft UI Browserが製品終了に

Posted on 4月 23, 2022 by Takaaki Naganoya

AppleScriptの環境を構成する大きな要素部品である「PFiddlesoft UI Browser」が、開発者のBill Cheesemanのリタイアに伴い、製品終了になることが2022/4/17に表明されました。

GUI Scriptingの登場と同時に、この技術を完全にカバーし、生産性を格段に向上させるツールとしてUI Browserが登場しました。これを持っているかどうかでGUI ScriptingによるScript記述は天と地ほども差が出ます。

AppleScriptを書くのであれば、まず必携といっても過言ではないというツールであったわけです。

Script DebuggerとUI Browserを柱として、AppleScript系の開発環境が構築されてきたわけで、たいへんに重要なパーツであったことは誰にも否定できないことでしょう。

Bill Cheesemanの動向は定期的にウォッチしていたのですが、「引退した法律家からプログラマに転身」「いいかげん、けっこう高齢」といった認識は持っていたものの、「PreFab Software」から改名した「PFiddlesoft」というユニット名を使っていたあたりで「誰かに引き継ぎを考えているんだろう」と(勝手に)思っていました。

ただ、C++でゴリゴリにmacOSの深いところを叩きまくるようなアクセシビリティ系のプログラムを組むことはストレスが大きかったことでしょう。Cocoaの上からAppleScriptでOSのサービスを叩いていても「またバグが」「勝手な仕様変更が」などと苛立たしいことこの上ないわけで、もっと深い部分で叩いていたら、よりストレスは大きなものとなっていたことでしょう。

正直、このあたりの技術について同等の理解と技術力を有している人間といわれると、世界でも6人ぐらいしかいないことでしょう。Shane、Mark、Sal、Has、あとはAppleの現役エンジニア(世間せまっ!)。

その割にユーザーサポートの負担なども重圧となっていたことでしょうし、Billが続けられないという英断をしたことについては尊重すべきだと考えます。

とはいえ、その大きすぎる「穴」をどうやって埋めていくかというテーマを抱えてしまっているわけです。LateNight Softwareが継承する、とかいった話は(技術的な)可能性としてありそうではあるものの、(マーケティング的かつ費用的な意味では)ちょっとわかりません。

UI Browserの代替技術、代替製品という意味では「Piyomaru Dynamic Menu Clicker」があります。メニューについていえば、「このアプリケーションのこのメニューのこの項目」と指定すると、それを強制的にクリックするような仕組みをすでに作れています。

ただ、Webブラウザ上のコンテンツをGUI Scriptingを用いて操作するような用途では、ちょっと代替手段を持っていません。

UI Browserの基礎的な部品を各種Frameworkとして提供しているものの、ちょっとAppleScriptから気軽に叩いて機能を呼び出すというのは難しそうだと思われました。

UI Browser自体、販売終了するということなので、必要な人はすぐに購入すべきでしょう。そして、Webサイトも閉じる予定とのことなので、必要な資料などをPFiddlesoftのWebサイトからダウンロードしてバックアップしておくべきでしょう。

Posted in GUI Scripting news | Tagged 12.0savvy | Leave a comment

新発売:AppleScript基礎テクニック集(5)〜変数、プロパティ名

Posted on 4月 20, 2022 by Takaaki Naganoya

電子書籍の新刊を発売しました。新シリーズ「AppleScript基礎テクニック集」の第5巻、「変数、プロパティ名」です。PDF 31ページ、掲載Scriptアーカイブつき。

→ 販売ページ

変数名の決め方……自分がそこで困ったり悩んだり苦しんだりしたことはないのですが、いろいろ聞いてみると意外なほど困っている様子。え、そこなの????

長い変数名、短い変数名、プロパティとグローバル変数はどこが違うの? といった聞きたいけど聞く相手がいないといった「素朴な疑問」をなるべくあぶり出して、明確になるようまとめてみました。PDF 31ページ、掲載ScriptのZipアーカイブを添付。

変数/プロパティとは?

変数ってなに?
変数に入れられるものは?
ローカル変数とグローバル変数
変数の型ってあるの?
変数の型の確認方法は?
propertyと変数の違い(1/2)
propertyと変数の違い(2/2)
暗黙のrunハンドラ
暗黙のrunハンドラ内の変数
propertyの有効範囲=スコープ
propertyの有効範囲を超える
暗黙のrunハンドラ内の変数と各ローカル変数との衝突?

変数/プロパティの名前の決め方

変数名の命名ルール
「予約語」と衝突しない命名を
「予約語」と衝突しない命名を
アプリケーションの予約語
AppleScriptの単語が何として認識されているか
かんたんな変数名/プロパティ名の付け方
変数/プロパティの運用の要点

Posted in Books news | Tagged 10.14savvy 10.15savvy 11.0savvy 12.0savvy | Leave a comment

Post navigation

  • Older posts
  • Newer posts

電子書籍(PDF)をオンラインストアで販売中!

Google Search

Popular posts

  • 開発機としてM2 Mac miniが来たのでガチレビュー
  • macOS 15, Sequoia
  • Pages本執筆中に、2つの書類モード切り替えに気がついた
  • Numbersで選択範囲のセルの前後の空白を削除
  • メキシカンハットの描画
  • Pixelmator Pro v3.6.4でAppleScriptからの操作時の挙動に違和感が
  • AppleScriptによる並列処理
  • Safariで「プロファイル」機能を使うとAppleScriptの処理に影響
  • macOS 15でも変化したText to Speech環境
  • AppleScript入門③AppleScriptを使った「自動化」とは?
  • デフォルトインストールされたフォント名を取得するAppleScript
  • macOS 15 リモートApple Eventsにバグ?
  • 【続報】macOS 15.5で特定ファイル名パターンのfileをaliasにcastすると100%クラッシュするバグ
  • AppleScript入門① AppleScriptってなんだろう?
  • Script Debuggerの開発と販売が2025年に終了
  • macOS 14で変更になったOSバージョン取得APIの返り値
  • NSObjectのクラス名を取得 v2.1
  • 有害ではなくなっていたSpaces
  • macOS 15:スクリプトエディタのAppleScript用語辞書を確認できない
  • Xcode上のAppleScriptObjCのプログラムから、Xcodeのログ欄へのメッセージ出力を実行

Tags

10.11savvy (1101) 10.12savvy (1242) 10.13savvy (1391) 10.14savvy (587) 10.15savvy (438) 11.0savvy (283) 12.0savvy (212) 13.0savvy (194) 14.0savvy (147) 15.0savvy (135) CotEditor (66) Finder (51) iTunes (19) Keynote (119) NSAlert (61) NSArray (51) NSBitmapImageRep (20) NSBundle (20) NSButton (34) NSColor (53) NSDictionary (28) NSFileManager (23) NSFont (21) NSImage (41) NSJSONSerialization (21) NSMutableArray (63) NSMutableDictionary (22) NSPredicate (36) NSRunningApplication (56) NSScreen (30) NSScrollView (22) NSString (119) NSURL (98) NSURLRequest (23) NSUTF8StringEncoding (30) NSView (33) NSWorkspace (20) Numbers (76) Pages (55) Safari (44) Script Editor (27) WKUserContentController (21) WKUserScript (20) WKWebView (23) WKWebViewConfiguration (22)

カテゴリー

  • 2D Bin Packing
  • 3D
  • AirDrop
  • AirPlay
  • Animation
  • AppleScript Application on Xcode
  • Beginner
  • Benchmark
  • beta
  • Bluetooth
  • Books
  • boolean
  • bounds
  • Bug
  • Calendar
  • call by reference
  • check sum
  • Clipboard
  • Cocoa-AppleScript Applet
  • Code Sign
  • Color
  • Custom Class
  • date
  • dialog
  • diff
  • drive
  • Droplet
  • exif
  • file
  • File path
  • filter
  • folder
  • Font
  • Font
  • GAME
  • geolocation
  • GUI
  • GUI Scripting
  • Hex
  • History
  • How To
  • iCloud
  • Icon
  • Image
  • Input Method
  • Internet
  • iOS App
  • JavaScript
  • JSON
  • JXA
  • Keychain
  • Keychain
  • Language
  • Library
  • list
  • Locale
  • Localize
  • Machine Learning
  • Map
  • Markdown
  • Menu
  • Metadata
  • MIDI
  • MIME
  • Natural Language Processing
  • Network
  • news
  • Noification
  • Notarization
  • Number
  • Object control
  • OCR
  • OSA
  • parallel processing
  • PDF
  • Peripheral
  • process
  • PRODUCTS
  • QR Code
  • Raw AppleEvent Code
  • Record
  • rectangle
  • recursive call
  • regexp
  • Release
  • Remote Control
  • Require Control-Command-R to run
  • REST API
  • Review
  • RTF
  • Sandbox
  • Screen Saver
  • Script Libraries
  • sdef
  • search
  • Security
  • selection
  • shell script
  • Shortcuts Workflow
  • Sort
  • Sound
  • Spellchecker
  • Spotlight
  • SVG
  • System
  • Tag
  • Telephony
  • Text
  • Text to Speech
  • timezone
  • Tools
  • Update
  • URL
  • UTI
  • Web Contents Control
  • WiFi
  • XML
  • XML-RPC
  • イベント(Event)
  • 未分類

アーカイブ

  • 2025年6月
  • 2025年5月
  • 2025年4月
  • 2025年3月
  • 2025年2月
  • 2025年1月
  • 2024年12月
  • 2024年11月
  • 2024年10月
  • 2024年9月
  • 2024年8月
  • 2024年7月
  • 2024年6月
  • 2024年5月
  • 2024年4月
  • 2024年3月
  • 2024年2月
  • 2024年1月
  • 2023年12月
  • 2023年11月
  • 2023年10月
  • 2023年9月
  • 2023年8月
  • 2023年7月
  • 2023年6月
  • 2023年5月
  • 2023年4月
  • 2023年3月
  • 2023年2月
  • 2023年1月
  • 2022年12月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年8月
  • 2022年7月
  • 2022年6月
  • 2022年5月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年7月
  • 2021年6月
  • 2021年5月
  • 2021年4月
  • 2021年3月
  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年6月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年12月
  • 2019年11月
  • 2019年10月
  • 2019年9月
  • 2019年8月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月
  • 2018年2月

https://piyomarusoft.booth.pm/items/301502

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org

Forum Posts

  • 人気のトピック
  • 返信がないトピック

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
Proudly powered by WordPress
Theme: Flint by Star Verte LLC