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

applescript:// URL Linkの状況確認

Posted on 7月 15, 2022 by Takaaki Naganoya

本Blogに掲載しているプログラムリストは、すべてapplescript:// URLリンクを埋め込んであり、リスト末尾にあるリンクをクリックするだけで、スクリプトエディタに内容を転送できるようにしています。

ところが、macOS 12.5RCにおいてSafariで表示した本Blog内のコンテンツで、applescript:// URLリンクをクリックしたところ、

・プログラムリストが短いと内容はスクリプトエディタに転送される
・プログラムリストが一定基準よりも長くなると、スクリプトエディタに内容は転送されなくなる

といった現象が確認されています。知り合いにいろいろ確認してみたところ、

・macOS 12.5以前のOSであっても、上記のような現象を確認していた

という話です(「じゃあ教えてよ!」と心の中でツッコミを入れていましたが)。

macOS 10.15のときに、PDFView上のURL Link(applescript://)が一律で無視されたときには、不服申し立てを行い、最終的には、

・macOS標準添付のPreview.app上のPDFはapplescript:// URL Linkは無視される
・サードパーティのアプリケーション上のPDFViewのapplescript:// URL Linkの妨害はやめる

ということになったようです。いつ状況が変わるかわからないので、未来永劫この状況が維持されるかどうかは不明です。自分だけがAppleに文句を言っていたわけではないと思いますが、基本的にAppleとの歴史は戦いの積み重ねです。Appleのやらかしを指摘して、事実関係のみ述べ、修正されるまで執念深く追求するという戦いの繰り返しです。

→ 本件は私のやらかしかもしれません、、、、

現状の確認

本BlogへのAppleScriptのプログラム掲載に使用しているAppleScript→HTML変換プログラム「AS Publisher v18」の内容を再確認してみましたが、Cocoaの機能を用いて文字列をURLエンコードしているだけです(そんなに複雑な処理をしていません)。部品単品でエンコード/デコードを行って検証してみたものの、呼び出している部品に問題は見つかりませんでした。

→ この部品でURLエンコードする方法を間違っていたもよう。ただし、過去のmacOSでは「間違ったURLエンコードが飛んでくることがあるので、対処しとくか」という処理になっていたところが、「厳密に正しいものしか処理しないようにしよう」という方針に変わったことが原因?

次に、Safariで何らかの妨害をしている可能性について検証してみました。

Safariではなく、CotEditor上でURLエンコードしたAppleScriptのプログラムのHTMLコンテンツをオープンし、CotEditorの最前面の書類からURL部分をURL Event的にオープン。これもSafari同様の問題が発生していることを確認しました。

コンテンツ中のURL部分をData Detectorを用いて抽出→Openさせた場合、URL内容が一定以上の長さを超えると途中で切られてしまうという動作を確認。macOS全体で「長いURL」への応答を殺しているという現状を確認。こういう話は一切WWDCでやらずに、コソコソ変更するんですよねー。

→ 事実関係を確認すると、本件についてはとくに悪意はない模様

本Blog側の対応


本問題の確認直後、すぐにAppleにバグレポートを行いました。この後は、PDFViewのときと同様に、Appleと2・3年あまりも不毛なやりとりを続けることになるのでしょう。事実上の牛歩戦術ともいえます。

そのやりとりをしている2・3年の間、ぼーっとしているわけにも行かないので対応策を考えておかなければなりません。

確実で安全な対策は、Script Debuggerでapplescript:// URLリンクを受信するように、Script Debugger側で設定することです。これなら、途中でApple側の妨害や嫌がらせに遭うことなく、プログラムリストの内容を転送できます。

ただし、「AppleScriptを今日はじめました」という人がScript Debuggerをダウンロードしているはずがないので、そこには対策しておく必要があります。

少ない労力で対処するのであれば、掲載リストのZipアーカイブをダウンロードできるようにしておくぐらいでしょう。

プラス、本Blogの過去記事アーカイブの英訳版を企画中ですが、日本語版も出してもいいような気もします。

(Visited 47 times, 1 visits today)

More from my site

  • 2022年に書いた価値あるAppleScript2022年に書いた価値あるAppleScript
  • 新発売:CotEditor Scripting Book with AppleScript新発売:CotEditor Scripting Book with AppleScript
  • クリップボードに入った書式つきテキストをプレーン化する「PlainerText」クリップボードに入った書式つきテキストをプレーン化する「PlainerText」
  • Finderの隠し命令openVirtualLocationが発見されるFinderの隠し命令openVirtualLocationが発見される
  • UI Browserがgithub上でソース公開され、オープンソースにUI Browserがgithub上でソース公開され、オープンソースに
  • Keynoteでオープン中の書類をすべてデスクトップにPDF書き出しして最初のページをJPEG画像化Keynoteでオープン中の書類をすべてデスクトップにPDF書き出しして最初のページをJPEG画像化
Posted in URL | Tagged 12.0savvy | Leave a comment

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

  • AppleScriptによるWebブラウザ自動操縦ガイド
  • ドラッグ&ドロップ機能の未来?
  • macOS 13, Ventura(継続更新)
  • Intel MacとApple Silicon Macの速度差〜画像処理
  • macOS 12.x上のAppleScriptのトラブルまとめ
  • マウスの右クリックメニューをカスタマイズするService Station
  • macOS 12.3 beta 5、ASの障害が解消される(?)
  • CotEditorで選択範囲の行頭にある数字をリナンバーする v1
  • PFiddlesoft UI Browserが製品終了に
  • SF Symbolsを名称で指定してPNG画像化
  • 不可視プロセスで表示したNSAlertを最前面に表示
  • 与えられた自然言語テキストから言語を推測して、指定の性別で、TTSキャラクタを自動選択して読み上げ
  • macOS 12.3 beta4、まだ直らないASまわりの障害
  • 新刊発売:AppleScriptによるWebブラウザ自動操縦ガイド
  • Safariで表示中のYouTubeムービーのサムネイル画像を取得
  • macOS 12のスクリプトエディタで、Context Menu機能にバグ
  • macOS 12.3上でFinder上で選択中のファイルをそのままオープンできない件
  • Pixelmator Pro v2.4.1で新機能追加+AppleScriptコマンド追加
  • SafariでブックマークされたURL一覧を取得
  • SkimのAppleScriptサポート機能にバグ

Tags

10.11savvy (1102) 10.12savvy (1243) 10.13savvy (1391) 10.14savvy (586) 10.15savvy (434) 11.0savvy (274) 12.0savvy (165) 13.0savvy (20) CotEditor (60) Finder (47) iTunes (19) Keynote (97) NSAlert (60) NSArray (51) NSBezierPath (18) NSBitmapImageRep (21) NSBundle (20) NSButton (34) NSColor (51) NSDictionary (27) NSFileManager (23) NSFont (18) NSImage (42) NSJSONSerialization (21) NSMutableArray (62) NSMutableDictionary (21) NSPredicate (36) NSRunningApplication (56) NSScreen (30) NSScrollView (22) NSString (118) NSURL (97) NSURLRequest (23) NSUTF8StringEncoding (30) NSUUID (18) NSView (33) NSWorkspace (20) Numbers (55) Pages (35) Safari (40) Script Editor (20) WKUserContentController (21) WKUserScript (20) WKWebView (22) WKWebViewConfiguration (22)

カテゴリー

  • 2D Bin Packing
  • AirDrop
  • AirPlay
  • Animation
  • AppleScript Application on Xcode
  • beta
  • Bluetooth
  • Books
  • boolean
  • bounds
  • Bug
  • Calendar
  • call by reference
  • Clipboard
  • Code Sign
  • Color
  • Custom Class
  • dialog
  • drive
  • 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
  • Machine Learning
  • Map
  • Markdown
  • Menu
  • Metadata
  • MIDI
  • MIME
  • Natural Language Processing
  • Network
  • news
  • Noification
  • Notarization
  • Number
  • Object control
  • 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
  • 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)
  • 未分類

アーカイブ

  • 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