InDesign:選択した画像のリンク元ファイルに赤タグつけるやつ

すっごい昔に書いたスクリプトが動かなくて、
困ってしまって教えてもらって直ってしまったのでメモ。

経緯

案件はInDesignで、
1年ちょっとぶりに初校戻しがきて(どうなんだそれは)、
配置済みの画像が大量に差し替えになって。
ふるい画像をレイアウト上で削除するのは簡単なんだけど、同時に不要になったファイルをLinksフォルダから移動したくて。
本来はパッケージで収集しなおすのが筋なんでしょうけど、
理由をかっこよく言うと「だって、したくないんだもん」です。
ちゃんとこまかく言うと、
いちど明示的にリンク切れ状態を作ってから、確実に差し替えを行うため。

で、ファイルを移動するスクリプトを書いてしまうと、移動先の名前重複など厄介が多いのと
リネームしたくない場合があることなどもふまえ。
で、ふと「レイアウト上で選択した画像のリンク元ファイルにFinderでタグ(昔でいうラベル)をつけるスクリプト」というのを過去に書いた記憶がよみがえって。
外付SSDに保管してある旧OS環境を調べてみたら、まんまと見つかったんですよ。
あのー、13年前のjsxファイルが。

問題が浮上

で、わーいって喜んで(ほんとに「わーい」言った。職場で)
実行したら、エラー。
要約すると「System Eventsにお願いする権限がありません」と言われた。
Finder操作が絡むため、そこの処理だけピンポイントでdoScript()でAppleScriptを使ってて。
この10年ちょっとでファイルアクセスの類に関してはずいぶんと厳しくなっているので、
そのへんのあれなんだろうなあ、と、わかったようなことを思いつつ、結局わかってなくて。

これはmacOS Montereyのシステム環境設定 > セキュリティとプライバシーのスクショ。

だいたいは、ここの「フルディスクアクセス」にアプリケーションを追加しておけば動いてたんですな。
でもいま動いてないじゃんすかー。

解決

そんでまあ、Twitterという名のメンター群に助けを求めてみました。

https://x.com/sttk3com/status/1849278046857273691
したたか企画さんからズバリの回答いただきました。彼もAdobe Community Expertやってます。

「オートメーション」を確認しろ、と。
前のスクショで見切れてたぐらい、存在を認識してすらいなかった項目。
こんな状態になってました。

チェックがついていないFinderにチェックを入れたら、やっと動きました。
ばんざいすぎる。なんというばんざい。
ほんとに助かりました。いつもいつもありがとうございます。

余録

そんなところで、今回思ったのは、今後はスクリプトの公開・配布の際、macOS各バージョンすべてに応じたセキュリティまわりの対処法を添書きしないとだめだな、ということ。
しかしアプリケーションならまだしも、OSの全バージョンを網羅するというのは個人では実際だいぶ厳しいですね。
なので、誰かいい感じにまとまった記事を書いてくれたやつをリンクして済ませたいです(レンタルふんどし)。

おまけ

そのスクリプト、ついでなので置いておk……おこうと思ったんですが
いくらなんでも昔すぎて、自分で見てもあまりに稚拙なので書きなおしました。
13年前って、ムス子が幼稚園、自分もまだ12歳ぐらいですよ※
よかったらどうぞ。

ダウンロード

解答すると日本語名のjsxがでてきます。macOSだけで動きます。
雑に選択 → 実行 → リンク元ファイルに赤タグがつく → 選択解除されて完了 です。
リンク切れなど何らかの事由でタグ付けができなかった物は選択状態で完了するので参考にしてください。

てなかんじです。

ことえりの句読点の種類を切り替えるやつ、アプリにしてみた

app作ったの初めてなの

macOS標準の日本語入力を使っている人向けの話題です。
以前は「ことえり」っていうかわいい名前がついていた、あいつですよ。

いま職場ではまだMontereyなんですが、
扱う案件によって本文で使う句読点が「 、。」だったり「 ,。」だったり「 ,.」だったりしてて。
ちょっとならoptionキー併用で済ませるんですが。ちょっとじゃないなら切り替えてしまいたいじゃない。

いざ切り替えたいとなると、「システム環境設定」を開いて、
「キーボード」を開いて、「入力ソース」を開いて、「日本語-ローマ字入力」を開いて、
ずーっと下にスクロールして、「句読点の種類」をプルダウン選択するんですよ。
なんてめんどうなんだ、と思いながら、かれこれ20年以上やってますねえ。

…などと書いているうち、たった今、メニューバーからわりとすんなりアクセスできることに気付いてしまい、ものすごく呆然してます。

ていうか、勢いで切り替えるメニューバーアプリ作ってしまってました。
どうしよう。すごい無駄足だ。。まあ勉強にはなった。
まあ、作ってしまったので公開しときます。
自己責任になりますが、よかったらどうぞ。


ダウンロード

先に謝っておきますが、これしきの内容なのに50MBちょっとあります。
なんだかもうほんとにわからないままです。
(後述のリサイズ作業により20MB切りました)

SetPunctuation.dmg

macOS Monterey12.7.6 で作成、動作確認。他でもたぶん運がよければ動きます。

参考にさせてもら(というか、コードをぱく)ったサイト:
サポミク:macOSでCLIで日本語入力の句読点を切替
https://tech.sup39.dev/jp-punctuation/

NIFTY engineering:超簡単にメニューバーアプリを作りたい(macOS)
https://engineering.nifty.co.jp/blog/22146


いれかた

今さらですが、dmgファイルを開いて、マウントされたボリュームを開いて、アプリ本体をいい場所にコピーするだけです。
初回の起動時、もし何かセキュリティ的なことを言われたら、ものかのさんのGlow関連の説明を参考に右クリックで開いてみてください。いわゆる野良アプリなのでご了承のほど。
https://tama-san.com/app-page/unnotarized.html


つかいかた

起動するとメニューバーにアイコンが追加されます。
使うやつを選びましょう。操作直後の入力開始があまりにも早いと、切り替え完了前に半角英数が入力されてしまう場合があります。なんだかなあだけど、どんまい。

常駐させておきたい場合は、システム環境設定 > ユーザーとグループ > ログイン項目 に追加するとよいんでないですかね。
最近のOSを知らないので表現が古かったらすまんごめんです。

以上、大半のATOKを愛用してる人にはまったく関係のない話です。。


後日談:軽くなりましたよ(2025.05.08)

ChatGPTさん様に相談して、無用なライブラリを除外しまくり、なんとか17MBちょっとまでおさめました。
当時IntelMacで作ってたのがApple Siliconに移行しちゃってた影響でイロイロと大変だったけど。
ノリを合わせてくるねえ…

というわけで、再ダウンロードするといいです。機能はおなじです。

InDesign:「変形を再実行」とその仲間たちの挙動をすこし詳しく

はじめに

すごく詳しく…はないです。

いきさつ

はむこせんせいが悩んでらしてまして。


オブジェクトメニューの、ここですね。

なるかん(なるべく簡潔)で説明したんですが

違いがわかりやすいように検証操作を録画してみてるうち、なんかちょっと引っかかってしまったので、
少し追いかけてみたです。


じゅんび

えー検証材料。

使い回しのらくがき(兄)。こう見えて25%ボディの持ち主。

と(妹・ふたご)。つつましい20%。

以上のメンバーでお送りします。

かいつまんで説明する…までもなく、大まかには有名どころのサイトを参照してもらったほうが早いです。
InDesignの「変形シーケンス」は、インスタントなアクション:DTP Transitさん
※文中の「変形シーケンス」は用語の浸透がいまいちだったのか、近年バージョンのInDesignでは「一連の変形」に変更されています。


サイズ入力を試す

まず、(兄)の幅(W)を20mmにしてみました。

これを(妹たち)に「変形を再実行」してみますと。
2人あわせて幅20mmになります。立ち位置も影響します。

要は選択範囲全体のバウンディングボックスが再実行対象となるわけですが、
まずここで留意しておきたいのは、さわった要素だけが反映されたという点です。
(兄)の幅、つまりW欄しかさわっていないので、(妹たち)も幅しか変わっていません。

取り消しで(妹たち)をいったん戻し、こんどは「変形を個別に再実行」。
ひとりあたりの幅が(兄)といっしょの20mmになりました。
個別か個別じゃないかの違いはこういうこと。

以下スクショありませんが、試しに(兄)の幅の値に「+4mm」などと追記する形で変形してみても、
(妹たち)の元の幅に4mm追加されるなんて器用な結果にはなりません。


スケール入力を試す

次に、スケール(%)欄への入力で同じことをしてみました。
(兄)の高さを25% → 10%に。
どうなると思う〜?(うざい)

(妹たち)への「変形を再実行」の結果は、20% → 10%となりました。


25を10にする40%ぶんの縮小ではなく、画像のスケール%がそのまま使われたわけです。
「変形を個別に再実行」のほうも結果は見えているので割愛。


座標入力を試す

どうも、指定値がそのまま反映されるような検証が続いたので、座標はどうなのって思って。

(兄)のX座標を30mmに。

(妹)もX:30mmになったらいやだなあと思っていたけど大丈夫でした。さすがは座標さんだぜ。


追試その1:グラフィックフレーム

(兄)の幅を25% → 15%としました。

こんどは(妹たち)を画像ではなく親フレーム選択で「変形を再実行」。
まあこういう選択。

こうなりました。

実行前の状態でスケールが100%と出ているため、これもこれまで同様15%縮小となった理屈かと。
ただ、高さも影響を受けてしまいました。この挙動は覚えておいて意識的に使い分けしていきたいですねえ。
※記憶の限りではCS2以前はフレームやグループも%値を保持する仕様があり、アタリ画像の差し替え時くそほどややこしかったです。
※上記操作結果、電卓をはじいたら謎の誤差が出たのですが見なかったことにしてます


追試その2:マウスドラッグはどっちの挙動になるの

ここまでは変形パネルだけでやってきたですが、マウスでてきとうにドラッグした場合はどうなるのか。
これ、むしろ最初にやるべきだったのでは…

(兄)をバウンディングボックス左上つまんで変形。

(妹)は、相対比率で同様に縮小されました。まあ…これはそうでなくては困りますよなあ。


追試その3:任意の基準点は生きるの死ぬの

Illustrator(以下、イラスター)の「変形の繰り返し」では、元の変形で使われた基準点のアートボード上の座標が繰り返し時でもおなじく基準点となります。これは便利な時と不便な時があるんですが、選択肢としてはぜひ欲しい。
というわけで。

(兄)を基準点フリー指定で変形。

(妹)で「変形を再実行」。おーかわいいやつ。
変形パネルで指定した基準点(上)が見えているけど変形自体は(兄)のときの座標で行われましたな。


まとめ

・「変形を再実行」4種の大まかな違いはweb検索しよう
(でも自信満々で大嘘っこきしてるサイトもあるので要注意。特に経験年数とか書いてるやつはまじでうさんくさいので注意)
・幅・高さ、スケールいずれかを入力した場合は元オブジェクトの最終状態と同じ値になる
・座標入力は元座標との相対差で反映される
・基準点を任意に設定した変形は、元操作の基準点座標が再実行先にも適用される
・電気料金の値上げがこわい

いかがでしたか?(← うさんくさくなるからやめろw)
ちょっとでも参考になれば。
どこか間違えてたらこっそり教えてください。