以前、マークファイルの内容をクリップボードにコピーするclipmarkfile.jsを作ったのだが、s-jisしか読み込めなかった。そこでutf-8版を作成。
_autodetect_allを使えば自動判別するらしいのだが、僕の環境だとうまく判別してくれないので、s-jis版とutf-8版に分けて運用したいと思う。
climparkfileU.js
//!*script // マークファイルの内容をutf-8で読み込みクリップボードに保存 if (PPx.EntryFirstMark == 0){ var f = PPx.Extract("%FCD"); var s = readFile(f, "utf-8"); PPx.Clipboard = s; } else { strLine = "" while(true){ var dir = PPx.Extract('%1'); var entryName = PPx.EntryName; var f = dir + "\\" + entryName; var s = readFile(f, "utf-8"); strLine=strLine+s+"\n"; if(PPx.EntryNextMark == 0) break; } PPx.Clipboard = strLine } // ファイルの読込み function readFile(fname, charset) { if (charset == undefined) { charset = "_autodetect_all"; } var adTypeBinary = 1, adTypeText = 2; var adReadAll = -1, adReadLine = -2; var s = new ActiveXObject("ADODB.Stream"); s.Type = adTypeText; s.charset = charset; s.Open(); s.LoadFromFile(fname); var text = s.ReadText(adReadAll); s.Close(); return text; }
0 件のコメント:
コメントを投稿