JavaScript

InDesignのパネルメニューをJavaScriptから実行するときはパネルがvisibleな必要がある

タイトルで用は済んでるのですが、忘れないようにもう少しメモしておきます。 以下、OSX10.9 + CS6を前提に書いたものです。 直接DOMをいじるよりInDesignのメニューコマンドを叩いてしまうほうが処理が楽なことって結構ありますが、パネルメニューの場合は…

InDesignのDOMをprototypeで拡張するメモ2

昨日かいたやつがeveryItem()やitemByRange()で取得したオブジェクトに対応できてなかったことに気付きまして。twitterで騒いだところ、判別しないで対応すればいいじゃないと教えていただきました。https://twitter.com/peprintenpa/status/570915349459136…

InDesignのDOMをprototypeで拡張するメモ

自分で書かないと忘れるのでメモしておきます。たとえばParagraphに「指定した数値だけポイントサイズを下げる」ってメソッドを生やすとか。 (function(){ // Paragraph拡張 // 引数に指定した数値ずつサイズを下げる。単位は無視して数値しか見ない // 成功…

Adobe ExtendScriptのプリプロセッサディレクティブ

ExtendScriptって名前、検索しづらいにもほどがあると思います。どうもこんばんは。スクリプトをいくつかのファイルに分割したり、単機能のライブラリとして読み込んだりしたいとき、#includeディレクティブ(指示文)を記述するとインクルードすることがで…

InDesignの段落相互参照をJavaScriptで作る

はいこんばんは。 相互参照の作り方がけっこうめんどくさかったので自分用にメモ。ついでに実験。 10.9 + CS6でしか動かしてません。あと、テキストアンカーへの参照は別の作り方するはずです。調べてない。 必要なものは 参照先ドキュメント (A) 参照先マー…

PhotoshopドキュメントをJavaScriptで別名保存する

たまにはアプリケーションに特化したことを書こうのコーナーです(今考えた)。いわゆる「別名保存」はDocment.saveAs()メソッドを使うんだけど、オプション類をいちいち調べるのが嫌になったのでまとめます。 なお、以下はPhotoshop CS6 Javascript Scripti…

parseIntとparseFloatの覚え書き

前フリが思いつかない件について。 この記事の主旨は一言で言うと「parseIntには第2引数で基数を指定しよう」です。 基本 parseIntとparseFloatは、どちらも引数として渡された文字列をパースして数値に変換するグローバル関数。 parseIntは整数、parseFloat…

JavaScriptのArray.sort覚え書き

お蔵出しシリーズ3。いつだか忘れたけど昔書いて、2013年5月にリライトしたらしいものをほぼそのまま。どうでもいいけどこのシリーズ、タイトルを統一しようとする気持ちがまったく見受けられませんね。 基本 array.sort(比較関数); 配列arrayの要素を、比較…

JavaScriptのループ文まとめ

お蔵出しシリーズ2。2008年2月に書いたらしいものに加筆したら原型がなくなりました。 ループ文とは 通常は上から下に処理が進んでいくプログラムを、一定条件に当てはまるあいだだけ繰り返し処理する制御文。 for文 初期値、条件、増減式を設定して、条件が…

JavaScriptの条件演算子(三項演算子)

PCの中身を整理したので、お蔵出しシリーズと称して、昔自分のために書いた文章を供養していこうと思います。たぶんあんまり続かない。 今回は2008年2月に書いたらしいものに加筆修正しました。 基本(条件演算子の記法) if(条件式) { 条件式が真(true)の…

選択した文字列を索引項目に登録するJavaScript(読み仮名自動入力、CS3〜)

はいこんばんは。InDesignで索引項目を追加するときはソートのために読み仮名を入力しなくてはならないのですが、手打ちするのがあまりにもめんどくさいので自動的に取得するスクリプトを作りました。 読み仮名の取得にはみんな大好きYahoo!のテキスト解析We…

InDesignでスクリプトから挿入した索引マーカーの位置がずれる問題

ご無沙汰しております。 長々と前置きはしないことにして 淡々とInDesignの(たぶん)バグ報告します。 InDesignの索引作成時は見出し語の位置にマーカーを入れていくのですが、これをスクリプトからやろうとすると、ある条件下で挿入位置がずれるというバグ…

ライブラリのアイテムを自動で配置する(InDesign CS3〜)

とってもお久しぶりです。最近アウトプット減ってて*1インプットも滞っています。 スクリプトもまとまったものはあまり書いてないんですが、久しぶりに汎用っぽいのができたのでおすそわけ。すでに書いてる人がいたらすいません…… ライブラリの各アイテムを…

InDesignで配置実行前にデフォルトの文字スタイルを[なし]にする(CS3〜)

お久しぶりですこんばんは。主にやる気の問題でご無沙汰しておりました。 InDesignのタグ付きテキスト配置にありがちなこと タグ付きテキストを[配置]で流し込むとき、タグで指定していないはずのスタイルが適用されてしまうことがあります。デフォルト状…

DTP Booster 013の予習:スクリプト作成過程を実況してみた

注:この記事の内容は、アップの数日前(DTP Booster 013受講前)に書かれたものです。アップするかどうか受講後に悩みましたが、結局貧乏性(モッタイナイ)に負けて載せてしまうことにしました。参加予定のDTP Booster 013(Omotesando/100602)はスクリプ…

InDesignのスウォッチ色設定切り替えスクリプトをウィンドウにしてみる

こないだのスクリプトをちょっと改造してみました。 実行のたびにダイアログを生成するのではなく、一度実行したら(閉じない限り)InDesignを終了させるまでずっと表示されたままになるウィンドウを作ります。その他、ちらほら修正など。 例によって動作確…

InDesignで複数のスウォッチの色を一括で切り替えるJavaScript

たくさんあるスウォッチの色を頻繁に切り替えたいとき、手作業や別ドキュメントからの読み込みをするのがものすごく面倒になった*1ので作りました。 ScriptUIを触ってみたかったのでCS3/CS4のみ対応です(たぶん)。動作確認はWindows XP SP3 InDesign CS4(…

InDesignのセクションマーカーを一括登録するJavaScript(CS〜)

セクションマーカーを入力していく手間をちょっとだけ省きます。すでにセクションは作成されていることが前提です。 自分の作業で使うために作ったので汎用性は微妙ですが、あまりにブログを書いてないのでたまには更新しようと思い立った次第。実行するとこ…

(修正版)Illustrator 10で、正規表現にマッチする文字が連続してるときだけトラッキングをかけるJavaScript

まさかの2日連続投稿ですが、ただの続きです。昨日のスクリプトですが、せっかく正規表現を使っているのになぜか一文字ずつ検索していました。あほか。 一応動くとはいえ文字が多くなると激重だったので、勉強もかねて書き直したものが下です。パフォーマン…

Illustrator 10で、正規表現にマッチする文字が連続してるときだけトラッキングをかけるJavaScript

タイトル長い。★追記:激重だったので修正版作りました!どうにも入りきらないテキストをむりくりスペースに収めたいとき、かなの間だけ詰めたりすることがよくあります。それを自動でやろうっていうスクリプトです。俺得です。 Illustrator 10はダイアログ…

InDesignの索引をCSVに書き出す(CS2〜CS4)

駆け込み寺の掲示板でこんなスレがあって…… InDesign の索引作成について - DTP駆け込み寺 新掲示板 (リニューアル後のページにリンクしてます) 索引の生成時に、入力した読みがなを一緒に書き出せないかという要望でした。 ちょうど索引あたりをいじりま…

JavaScriptの条件付きコンパイル

コードの一部にIEでだけ実行する処理を入れたいときにちょっと便利っぽい「条件付きコンパイル」について覚えたので自分用にメモ。 Webでしか使えないのでさらっといきます。 基本 JavaScript内で「/* 〜〜 */」と書くとその部分はコメントになり、中になに…

livedoorクリップで元記事を引用するときに引用符をつけるブックマークレット

最終更新:2009/04/22私の愛用するソーシャルブックマークサービス、livedoorクリップ。コメントが1000文字までたっぷり書けるのが私にとって最大の魅力であります。 何をそんなにたくさん書くのかというと、(1)要約(検索用キーワードを含めるので長くなる…

[JavaScript]String.matchとRegExp.execと後方参照

Adobeのサポートデータベース関係のぐりもんを書いたり添削してもらったりした結果、新たに覚えたことがあるので、せっかくだからメモっておきます。 以下だらだらと続くけど、実はMozilla Developer Center見れば全部書いてあるので、そっち見たほうがいい…