InDesign:等間隔で分布のプリセット的なスクリプト

現場からのリクエスト物ですけど。

整列パネルの「等間隔に分布」に定型の「間隔を指定」してけっこうかなりすごく使うんだけど、
いちいち数値の出し入れがめんどい。ごもっとも。ごもっとも。
でスクリプト書きました。


id_distribute_=_0mm.jsx

Yosemite + CS6で動作確認
たぶんNintendo Switchとかでも動きます

2017.09.22 ver_c キーオブジェクト未指定だった場合の挙動を改善しました
2017.11.13 ver_d 水平分布時の記述ミスを修正

あそびかた

ファイル名のルールはこの通り。


(日)垂直方向なら半角イコール(=)、水平方向なら半角アマダレを2本(!!)入れてください。
2017.06.27:当初「||」でしたが、Windows環境で無理とのことで変更しました。すーません
(月)間隔を入れます。単位つき可。単位省略の場合は定規の単位に依存します。0.5mmを「.5mm」と書いてもおっけーです。
(火)お飾りです。お好きな言葉に書き換えても影響ありません。アレとか。
(水)拡張子とアンダースコアはデリケートな部分なのでそっとしておいてください。

という感じでーですね、
毎回わざわざ間隔を入力しなくても、毎回わざわざスクリプトのファイル名を変えるだけで簡単に間隔を指定できちゃうんですねえ。
じゃなくて、
スクリプトファイルを複製して名前をつけて使い分けるかんじです。ショートカットも登録できるし。

引数(適用値)をファイル名で指定する案は、けーっこう前から脳内で「いつか、そのうち、できれば、なるべく」
ってずーっと思ってたんですけど、なかなかやらんですね。

今回もおーけー流星号したんですがバカンス中のようで、
さんに教えていただきました。
スクリプトが書けるからといって決してオブジェクトモデルに明るくないのがウチです。


現状の注意点(あとでなおします) なおし(てもらい)ました 2017.06.23 14:00

・整列パネル上で「間隔を指定」にチェックが入っていないとエラー
・選択オブジェクト群にキーオブジェクトが指定されているとエラー

 

Facebooktwittergoogle_plus

InDesign / Illustrator:インデント値を字数で入力したい

 

ことってありますよね。問答無用で。
まあ、級/歯を脳内でミリ換算できて当たり前の業界ではあるんですが、
ウチはもう10Qと12Qしか愛せないっ。
「11Qの2w落ち」とかで既に電卓ラブです。理屈だけわかってればいいんです。…たぶん。
で、現場に、どっかから摘んできた野生のスクリプトがあったので、
そこから着想だけいただいて自分なりに突貫で書いてみました。
自分で拾った物でもなく、コード内にクレジットがないのでほんとにどなたの物やら。でもいいなあこれ。


id_indentSetter.jsx

Yosemite、InDesignCS6で動作確認済み
たぶんCS3でも動きます。たぶん。


ai_indentSetter.jsx

Yosemite、IllustratorCS6で以下略
たぶんCS3ぜんぶで動きますたぶん


あそびかた

原稿です。手近なウェットティッシュの注意書きを書き写しました。
華麗なブラインドタッチで。

テキストフレームをひとつ、もしくはテキストを一部選択してスクリプトを実行。
選択ハニーに絡む段落群が処理対象となります。

実行すると、かわいいダイアログが出ます。
一見、豆腐屋さんのようですが
各入力欄は、InDesignの段落パネル内のレイアウトにならっています。

必要な欄に、数値だけ入力します。空欄は無視されます。
(このため、既存インデント値とのバッティングにはご注意
数値は、段落先頭文字の何文字分、という値を入れます。単位はいりません。
段落前後のアキは、行送り値の単位を数字だけ入力します。
入力が終わったらプリーズボタンをカチ。リターンキーでも大丈夫です。

段落ごとにインデントがかかり終了。
インデント量は段落ごとに先頭文字サイズで計算してます。意味あるかわかりませんが…

ほか、単位つき入力の受け入れとか、現状から相対値で増減とか
いろいろ付けようと思ったんですけども。
一旦最小限でお出ししますっす。
オリジナルの段落パネルと使い分けてやってくだされば。


2017.06.21

で、ちょっとの書き換えでイラスターでも動いたのでそうしました。
・最終行インデントがない
・段落前後アキは元から行送り値の単位と合致しているので割愛
・処理するテキストフレームは1つだけ(めんどい)、もしくはてきとうに文字列を選択して実行
という差異があります。


というわけで、仕事をさっさと済ませて、1本早い電車で帰りましょう(3〜4分?)。
コード内のapp.scriptPreferences.measurementUnitプロパティについては、
あるふぁ(仮)さんより教えていただきました。いつもありがとうございますー。

Facebooktwittergoogle_plus

InDesign:文字コードをシフトするやつ

ひさびさひさびさひさ。
箇条書き機能を使ってない連番が増減しちゃう修正指示でウワーメンドクセーとかありませんか。ありますね。
過去に選択ハニー中の半角数字をシフトするやつは作ったんですが
しかし丸数字やローマ数字などの時はお手上げでした。

今回は文字コードでそれをやろうってわけです。
文字コードが何なのかわかってない人はおかあさんに聞いてください。


id_charCodeShifter.jsx

YosemiteでCS6で動作確認。CS3以降ならたぶんおっけーです


あそびかた

スクリプトをカチカチすると雑なパレットが出ます。

上欄に、処理対象文字を探すための正規表現を入力します。
このとき、検索結果が1文字だけになるよう留意してください。
?とか+とか*とかを使うな、ということです。
正規表現が何なのかわかってない人はおとうさんに聞いてください。
※ドキュメント上の選択文字列が1文字の場合に限り、空欄でも動作します。

下欄に、増減値を入力します。
すべて半角で、プラスかマイナスに続けて自然数を入れます。
「+02」など、余計なゼロをつけた場合はエラーとなります。

処理対象を選択しておき、いつものプリーズボタンを押すと対象文字が増減され、
処理点数が表示されます。
雑な作りなのでグループごとの選択などにはキッパリ対応しておりません。

とくに数字に限らず、なんでも文字コードを増減できます。
あ→い、い→う などもできるという意味ですが、
ア行の場合は拗促音が挟まるため、この場合+2で期待した結果が得られますね。
拗促音が何なのかわかってない人はおぼうさんに聞いてください。

あのー、漢数字やイロハのことは忘れましょう
あと、老害からパレットの中に「GREP」と入れてしまったんですが、
これCS3だけの表記だったらしいです。ばっちり老害。
ではでは。

Facebooktwittergoogle_plus

InDesign:あっちこっちに同じ文字を何度も何度も何度も何度も打つ時にすごい便利なやつ

というわけで、新カテゴリ追加しました。
ここのところ、人のお世話になりっぱなしで。
困る→誰かが助けてくださる(スクリプト提供)→助かる
という流れが多く、ご本人のスペースで公開されてない場合もたまにあり。
今回はTenせんせーが新拠点で記事をアップされてるので、そちらへの誘導だけです。

さて今回直面した厄介作業は、
英文ゲラにカンマを入れる指示がどーっさりあるヤツ。
目と手を心がつらい。ラクしたい。ラクできたい。

これ、ExtendScriptでは普通に太刀打ちかなわんやつや、と思ってたんですが
TenせんせーがExtendScriptだけで解決してくださいました。見事すぎる!!


idleTaskで自動入力

CC Labo


注意点というか、
環境によっては公開されているコードが一部欠落してしまうようで、
ウチは職場でも自宅でもちょっと、そのままペーストしたらエラーが出たので、いちおうフォローというか。

5行目と14行目の2箇所、

'insertCharacterleep:250

となっていたら、

'insertCharacter', sleep:250

に直すと動きます。 これ、本気でものすごいはかどります。。Tenせんせー、恐ろしい子!
感謝感謝。


 

…その後紆余曲折を経て、おもち先生がエクステンションパネルをこしらえてくださいました。
おそろしいぐらい多機能になってます。スクリプトのとっかえひっかえもできちゃう。
でも上級向けかなー。ウチは今はこっち使わせてもらってます。ほんと助かります。

JsxTimerForCS6

ぜひみなさまも。ぜひ。

Facebooktwittergoogle_plus