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

月: 2026年2月

ignoring時の超高速化にともなう処理内容の信頼性低下のその後

Posted on 2月 4 by Takaaki Naganoya

重要な内容なのですが、話が入り組んでいるので、順に説明します。

AppleScriptの非同期実行モード

AppleScriptでアプリケーションを操作する場合には、コマンド発行、アプリ側の処理待ち、処理結果を返す、という動作が行われます。いわゆる同期実行で行われます。

一方で、処理内容の結果はいらないからコマンド実行だけ高速に行わせてくれという「非同期実行」モードもAppleScriptの登場初期から用意されており、これがignoring application responses〜end ignoring節です。

shell scriptやCocoa呼び出しでは意味がありませんが、macOS上のGUIアプリを操作する場合には、非同期実行で行えばおおよそ半分以下の処理時間で済みます。

非同期実行モードは、書類上に大量のオブジェクトを作成するような操作を行うときに便利で、事前に何度も確認を行なっておいて、まあ多分大丈夫でしょう、という確信が持てた場合に、処理速度向上のために部分的に導入しています。

処理結果を取得したいとか、確実に終了したことを確認したい場合には使用できませんが、それでも導入できる「部分もある」のです。

Numbers v14.x+macOS 15.xの組み合わせで起こる 問題現象

この非同期実行が、Numbers v14.xとmacOS 15.xの組み合わせで実行したときに問題現象を起こしています。

電子書籍「AppleScript最新リファレンス v2.8対応」でも詳しく言及しているのですが、この環境で非同期実行を行うと、腰が抜けるほど高速な反面、処理が完結しない(勝手に途中で処理を打ち切ってしまう)という問題動作が見られました。

つまり、処理速度を重視してignoringで非同期実行すると、勝手に途中で処理が打ち切られます。Numbers上で5万個のセルを選択して、連続値で埋めるというAppleScriptを実行すると、2〜3万セルぐらいで処理が中断されます(macOS 15.7.4+Numbers 14.5で28880セルで打ち切り)。

知っていて使う分には「1万セルずつ処理しようか?」という話にはなるのですが、知らずに処理して「セルが埋まっていなかった」だとダメージが大きすぎです。

非同期実行モードの処理速度が異様に速くなっていたので、「どうせ何か副作用があるんだろう」と思って検証してみたら、予想通りこのトンでもない欠陥が見つかったというわけです(Appleのエンジニアにありがち)。詳細にバグレポートし、動向を見守ることにしました。

Numbers Creator Studio v15.1で修正

このNumbersのヤバい動作が新たな「Numbers Creator Studio」(v15.1)でどうなっているのか、macOS 26.3β環境で確認してみたところ、なんと修正されていました。うれしい誤算です。

Screenshot

5万セル選択してテストAppleScriptを実行すると、5万セルがきちんと連続値で埋められていました。

処理時間は以前よりもかかるようになったのですが、それでも「勝手に放り出さなくなった」というのは大いに評価できます。

これが、10万セルだとどうなのかとか、macOS 15.7.4+Numbers Creator Studio v15.1の組み合わせで問題はないのかとか、少々気になるところではありますが、その点は未検証であるということを明記しておきます。興味がある方はお試しください。

Posted in Bug | Tagged 15.0savvy 26.0savvy Numbers Numbers Creator Studio | Leave a comment

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

Google Search

Popular posts

  • macOS 26, Tahoe
  • Script Debuggerの開発と販売が2025年に終了
  • 【続報】macOS 15.5で特定ファイル名パターンのfileをaliasにcastすると100%クラッシュするバグ
  • NSObjectのクラス名を取得 v2.1
  • Xcode上のAppleScriptObjCのプログラムから、Xcodeのログ欄へのメッセージ出力を実行
  • Script Debuggerがフリーダウンロードで提供されることに
  • AppleScript Dropletのバグっぽい動作が「復活」(macOS 15.5β)
  • macOS 26, 15.5でShortcuts.app「AppleScriptを実行」アクションのバグが修正される
  • Appleに買収されたPixelmator ProがAppleとしての初アップデート
  • Dock Menu
  • Applicationのactivateを記録する v2
  • 執筆中:AppleScript最新リファレンスver2.8対応(macOS 15対応アップデート)
  • Claris FileMaker Pro 2025(v22)がリリースされた
  • Numbersで選択範囲のdateの年を+1する
  • macOS 15.5beta5(24F74)でaliasのキャスティングバグが修正された???
  • シンプルな文字置換
  • 複数の重複検出ルーチンを順次速度計測
  • NaturalLanguage.frameworkを用いて日本語テキストの形態素解析を行う
  • AS書類を書式で分解して再構成
  • macOS 15.7.2 スクリプトメニューから実行できなくなった地図系ライブラリ?

Tags

10.11savvy (1101) 10.12savvy (1242) 10.13savvy (1391) 10.14savvy (587) 10.15savvy (438) 11.0savvy (283) 12.0savvy (212) 13.0savvy (204) 14.0savvy (159) 15.0savvy (167) 26.0savvy (37) CotEditor (67) Finder (53) Keynote (122) 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 (79) Pages (58) 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
  • Newt On Project
  • 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
  • Scripting Additions
  • 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)
  • 未分類

アーカイブ

  • 2026年2月
  • 2026年1月
  • 2025年12月
  • 2025年11月
  • 2025年10月
  • 2025年9月
  • 2025年8月
  • 2025年7月
  • 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