Fireworksのスクリプトの実行、今日めんどいなあと思う作業があって調べてみたんですけど、便利すぎて衝撃的でした。今までどうして知らなかったんだろうという感じです。以下サイトでいくつか紹介されていますが、スライスに連番+一括名前設定は効率的すぎてやばいです。さっそく使わさせてもらっています。
■オリジナルツール / Fireworks用オリジナルコマンド(jsf)一覧 (PIXEL LAB)
http://www.pixelimage.jp/blog/2008/02/_fireworks.html
で、上記サイトを参考に僕もFireworksでスライス名を一括置換するスクリプトを書いてみました。以下スクリプトを拡張子「jsf」で保存、対象のスライスを選択して「コマンド」→「スクリプトの実行」→保存したスクリプトを読み込んでご利用いただけます。「C:\Documents and Settings\~ユーザー名~\Application Data\Adobe\Fireworks CS3\Commands
」に入れれば「コマンド」メニューに加わります。スライスを流用するのだけどそのままの名前では使えないときや、ガイドラインでハイフンは使用禁止でアンダースコアにしなきゃいけなくなったとか、なんにせよスライス名を置換したいシチュエーションってけっこうあるので覚え書きしておきます。
var dom = fw.getDocumentDOM() var le = fw.selection.length; var sliceArray = new Array(); for (var i=0;i<le;i++){if(fw.selection[i] =="[object SliceHotspot]")sliceArray.push(i);} var leng = sliceArray.length; var searchName = prompt('SEARCH',( fw.newName || "")); fw.searchName = searchName; var replaceStr = prompt('REPLACE',( fw.numberStr || "")); fw.replaceStr = replaceStr; for (var i=0;i<leng;i++){ var n = sliceArray[leng-i-1]; fw.selection[n].baseName = fw.selection[n].baseName.replace(fw.searchName,fw.replaceStr); }