Menu

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

AppleScriptの穴

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

macOS 11.0, Big Sur AppleScript関連の変更点

Posted on 11月 13, 2020 by Takaaki Naganoya

ついにmacOS 11.0, Big Surが正式リリースされました。これほどリリースが待ち遠しく、リリースを恐れていたOSバージョンもありません。機能的にはいいのに、見た目がアレな、ある意味「次世代のmacOSのPublic Beta」みたいな位置付けです。バージョン0.xから始まるのも初めてですし。1.0未満だと受け取っておきましょう。

→ その後、マイナーアップデート版が「11.1」であることが判明し、今後は「12.x」「13.x」とiOSライクなナンバリングが施されることがうかがわれます。

ハードウェア面では「M1搭載のファンレスのMacBook AirがCore i9のCPUを蹂躙する図」が展開されているなど絶好調ですが、ソフトウェア面ではいろいろ(見た目に)問題があります。

macOS 11.0.1について、AppleScript的には大きな違いはありません。大きな違いというのは、macOS 10.15からの大きな違いということです。10.15のあまりの不具合の多さに、β段階で「毒の沼」認定してメイン環境で利用することを放棄したため、個人的には11.0にすぐ移行したいところです(検証用のMac mini 2014しか対応ハードウェアがない問題)。

macOS 11.0搭載のAppleScriptはあいかわらずバージョン2.7。スクリプトエディタもビルドが少し変わったぐらいでバージョンは同じです。

スクリプトエディタのヘルプが、macOS 10.13、10.14、10.15と毎回更新されていましたが、今回はその余裕がなかったのか10.15, Catalinaのままです(あとでオンライン更新されるのかも???)。

毎回、OSのアップデートがあるたびに書き換えの必要があるScriptが出てきます。すべてのScriptが必要というわけではないはずですが、理由は大きく分けると以下のとおりです。

(1)Script専用補助アプリケーションやOS標準装備のアプリケーションの機能に変化が生じたり、名前が変わったり、統廃合されたりした
(2)AppleScriptの言語処理系、標準装備のScripting Additionsや標準命令に新たなバグが発生した
(3)OS自体の仕様変更、未知のバグが発生した
(4)GUI ScriptingでメニューなどのGUI部品を指定している箇所が、GUI修正などの理由によりそのままでは動かなくなった
(5)Cocoaの仕様変更により動かなくなったり修正が必要になった

スクリプトエディタのsdefの差分をチェックしてみたところ、macOS 10.14/10.15から変化はありません。つまり、今回は(1)(2)由来の発生の可能性は低いことが期待されます。(4)は当然そうなるものなので(些細な変更で発生するものなので)、必要最低限の箇所に使うべきものです。(5)は、Cocoa自体の仕様変更は割とひんぱんに発生しているので、なんともいえませんが、Cocoa自体に仕様変更やバグがなくてもScripting Bridge定義ファイルのバグや理不尽な変更(主にmacOS 10.13で発生した件。一切説明なし)によって影響を受ける可能性はあります。

カレンダー.appのバンドル内に同梱された大量のAppleScriptもβ時からそのままです。

(何か発見があったら追記)

アプレットのプロパティが保持されない件:理由=(3)

LateNight Software Blogに掲載された「BIG SUR: LOST PROPERTIES」をGoogle翻訳で読んでみました(ちょっと時間がないので)。

macOS 11.0, Big SurではスクリプトエディタでAppleScriptアプレット書き出しを行うと、

Arm 64/Intel 64のUniversal Binaryで書き出されます。

そして、アプレット書き出し時にCode Signが自動的に行われ(Run Localy)、Apple Developer IDを持っていなくても実行バイナリにCode Signされることになります(Notalizationはまた別)Code Signされるということは、アプレットの情報書き換えが保持されなくなるということであり、property文で設定値を維持しようとしても、実行ごとに内容がフラッシュされる(保持されない)ことになります。

このことはmacOS 10.10ごろから「そういう風になるんだろう」とわかっていたので、property文で設定値を保持するような書き方は一切してきませんでした。設定保存の必要があればUser Defaultsへ書き込み。

サードパーティのOSAX(Scripting Additions)が廃止されることはOS X 10.6の頃からわかっていましたし、OS X 10.10の頃からpropertyで値を保持してはいけないことはわかっていました。

AppleScript Studioランタイムがdeprecated扱いに:理由=(3)(5)

最新の「兆し」は、PowerPC→Intel→Apple Siliconと3世代にわたってメンテナンスされてきた「AppleScript Studioランタイム」(Automatorアクションでこれを使っているものがある)が、いよいよdeprecated扱いになったことです。

もともと、OS X 10.6のときにXcode上から開発用のテンプレートが削除されたためにAutomator Action作成時に積極的にAppleScript Studioの機能を使おうとも思わないのですが、これまで維持され続けてきたというわけです。あれだけの規模のものを、OSのGUI部品が変更され続けていく中メンテナンスしてARM対応まで行なって破棄するとは……自分がその仕事に携わっているならやり切れないものがありますが、既定路線ではあります。

今後、macOS上で実行できるAutomator ActionはAppleScriptObjCベースのものに一本化される、ということです。

ファイル共有のプロトコルがsmbに一本化:理由=(3)

この話が出てきたのが何回目だか覚えていませんが、ファイル共有のプロトコル「afp」が使えないようになりました。「smb」のみです。

LAN上の他のマシンやファイルサーバー、NASのボリウムをマウントする処理は割とありふれたものですが、そのためのサーバーの指定方式がsmbに一本化されたという「変化」があったということです。

ファイルサーバーのマウント処理を記述してあるScriptについては、macOS 11.x以降では書き換えの必要があります。

AppleScript書類(.scpt)アイコンがプレーンテキストを示すアイコンに変更:理由=(3)

なんなんでしょうね? これは、、、ミスなのか、意図があるのか。

System Eventsの機能変更:理由=(2)

これだけ機能が変わっていたらバージョン番号を変更してほしいところです。
→ 同じバージョン番号のまま大幅に機能が変更されたSystem Events

More from my site

  • 指定文字のシフトJIS内文字かのチェック指定文字のシフトJIS内文字かのチェック
  • 指定した文字で囲まれたキーワードの色を置換する指定した文字で囲まれたキーワードの色を置換する
  • AVFAudioでオーディオ再生のじっけんAVFAudioでオーディオ再生のじっけん
  • 構成要素を指定して漢字検索 v3構成要素を指定して漢字検索 v3
  • 部首で漢字検索部首で漢字検索
  • ページ範囲処理 v2ページ範囲処理 v2
Posted in news | Tagged 11.0savvy | 2 Comments

2 thoughts on “<span>macOS 11.0, Big Sur AppleScript関連の変更点</span>”

  1. 12/2/20
    10:09 PM
    2020年12月2日
    10:09 PM

    Reply

    西北洲 says:

    Big Sur の Finder でなんか違和感があるなと思ったら、スクリプトファイルのアイコンがテキストファイルのアイコンになっていました。
    スクリプトバンドル形式やテキスト形式のものはスクリプトのアイコンがついたものです。

    デフォルトアプリケーションを変更したり、LaunchServices を再構築したり、(ちょっと不具合が出たので)インストールし直したけれど変わらず。

    インターネットで検索したら Twitter でつぶやいている方がいたのでこんなものなのですね。

  2. 12/2/20
    10:31 PM
    2020年12月2日
    10:31 PM

    Reply

    Takaaki Naganoya says:

    手元にあるAppleScript書類の多くがバンドル形式(.scptd)なのでBeta段階で自分も気づきませんでした(間抜け)。
    Script Editorのバンドル中に通常形式書類(.scpt)のアイコンがないのは、何の冗談なんでしょうねぇ、、、、

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

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

Google Search

Popular Posts

  • Numbersで選択中の表のセルの範囲を背景色で頻度集計
  • mouseClickを用いて指定座標をクリック
  • 指定文字のシフトJIS内文字かのチェック
  • Numbersで選択範囲のセルのデータを取得して重複データを抽出
  • DSCaptureで画面キャプチャ
  • Automator Actionを実行
  • ファイルパスの変換(Alias→POSIX path→NSURL→POSIX path→file→Alias)
  • 配列の指定要素を検索する(テキスト)
  • 指定ファイルの拡張子を取得する
  • 画面上の指定座標にマウスカーソルを強制移動させてクリック
  • POSIX pathからファイル名と親フォルダを抽出
  • Numbers書類の表のフィルタ状態のトグル切り替え
  • ディスプレイの設定切り替えをAppleScriptでも行えるSwitchResX
  • 頭のいいタイマー割り込み実行
  • CotEditorのScript集、PowerPack & Basic Packをv2.0にアップデート
  • 【基礎】AppleScriptの実行を(操作により)中断する
  • Safariで表示中のWebページの最終更新日時を取得
  • Keynote書類のテキスト色を置換
  • Elgato Stream DeckをAppleScriptでフル活用
  • Markdown書類をメモ.appに新規エントリで登録する

Tags

10.11savvy (1109) 10.12savvy (1249) 10.13savvy (1388) 10.14savvy (513) 10.15savvy (304) 11.0savvy (113) CotEditor (48) Finder (43) iTunes (25) Keynote (61) NSAlert (59) NSAlertSecondButtonReturn (16) NSArray (50) NSBitmapImageRep (20) NSBundle (19) NSButton (33) NSColor (48) NSDictionary (26) NSFileManager (23) NSFont (18) NSImage (40) NSJSONSerialization (21) NSMutableArray (61) NSMutableDictionary (21) NSPredicate (36) NSRunningApplication (55) NSScreen (30) NSScrollView (22) NSString (114) NSURL (93) NSURLRequest (22) NSUTF8StringEncoding (30) NSUUID (18) NSView (33) NSWindow (17) NSWorkspace (19) Numbers (42) Pages (16) Safari (34) System Events (16) WKUserContentController (20) WKUserScript (19) WKUserScriptInjectionTimeAtDocumentEnd (17) WKWebView (21) WKWebViewConfiguration (21)

カテゴリー

  • AirDrop
  • AirPlay
  • Animation
  • AppleScript Application on Xcode
  • Bluetooth
  • boolean
  • Bug
  • Calendar
  • call by reference
  • Clipboard
  • Code Sign
  • Color
  • Custom Class
  • dialog
  • drive
  • exif
  • file
  • File path
  • filter
  • folder
  • Font
  • GAME
  • geolocation
  • GUI
  • GUI Scripting
  • History
  • How To
  • Icon
  • Image
  • Input Method
  • Internet
  • JavaScript
  • JSON
  • JXA
  • Keychain
  • Language
  • list
  • Locale
  • Machine Learning
  • Markdown
  • Menu
  • Metadata
  • MIDI
  • MIME
  • Natural Language Processing
  • Network
  • news
  • Noification
  • Notarization
  • Number
  • OCR
  • OSA
  • PDF
  • Peripheral
  • PRODUCTS
  • QR Code
  • Raw AppleEvent Code
  • Record
  • recursive call
  • regexp
  • Release
  • Remote Control
  • Require Control-Command-R to run
  • REST API
  • RTF
  • Sandbox
  • Screen Saver
  • Script Libraries
  • sdef
  • search
  • Security
  • shell script
  • 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)
  • 未分類

アーカイブ

  • 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
Proudly powered by WordPress
Theme: Flint by Star Verte LLC