変換したいファイルにマークして実行することで、カレントディレクトリにhowmファイルを新規作成する。
こういうテキストファイルが
こんな感じに。
やり方
以下をScriptフォルダに保存。
txt2howm.js
//!*script // マークしたtxtファイルからhowmファイルを新規作成 var currentDir = PPx.Extract('%1'); var EntryObj = PPx.Entry;0 var RetCD = EntryObj.FirstMark; var objFileSys = PPx.CreateObject("Scripting.FileSystemObject"); var nowdate = PPx.Extract("%*nowdatetime(Y-N-D)"); var nowtime = parseInt(PPx.Extract("%*nowdatetime(HMS)")); if (RetCD != 1){ // マークがないときはカーソル下のファイルを処理 if (!PPx.EntryName.match(/.txt$/i)) { // txtファイルでなければ終了 PPx.Echo("拡張子がtxtではありません"); PPx.Quit(); } var objItem = currentDir + "\\" + PPx.EntryName; var outputfile = PPx.Extract("%*nowdatetime(Y-N-D-HMS)")+".howm"; // ファイルの内容を取得しhowm形式に変換 objInFile = objFileSys.OpenTextFile(objItem, 1); var str = "= " + objInFile.ReadAll() + "\n\n[" + PPx.Extract("%*nowdatetime(Y-N-D H:M)") +"]"; objInFile.Close(); // カレントディレクトリにhowmファイルを作成 strCreateFile = objFileSys.BuildPath(currentDir,outputfile); objFileSys.CreateTextFile(strCreateFile); // howmファイルに書き込み objOutFile = objFileSys.OpenTextFile(strCreateFile, 2); objOutFile.Write(str); objOutFile.Close(); } else { //マークがあるときは順番に処理 i = 0 while(true){ var entryName = EntryObj.Name; var hoge = nowtime + i // ファイル名の重複を避けるための処理 var objItem = currentDir + "\\" + entryName; var outputfile = nowdate + "-" + hoge +".howm"; if (!entryName.match(/.txt$/i)){ // 拡張子がtxtでなければスキップ } else { // ファイルの内容を取得しhowm形式に objInFile = objFileSys.OpenTextFile(objItem, 1); var str = "= " + objInFile.ReadAll() + "\n\n[" + PPx.Extract("%*nowdatetime(Y-N-D H:M)") +"]"; objInFile.Close(); // カレントディレクトリにhowmファイルを作成 strCreateFile = objFileSys.BuildPath(currentDir,outputfile); objFileSys.CreateTextFile(strCreateFile); // howmファイルに書き込み objOutFile = objFileSys.OpenTextFile(strCreateFile, 2); objOutFile.Write(str); objOutFile.Close(); i = i+1; } if(EntryObj.NextMark != 1) break; // 最後のマークなら終了 } }
変換したいテキストファイルにマークしてから
以下を実行。
*script %0\Script\txt2howm.js
カレントディレクトリにhowmファイルが新規作成される。
作った理由
僕は、たまにポメラでメモをとっている。それをhowm形式に直すとき、今までは一々手作業でコピペをしていた(SETZERのFIFOモードを起動し、一時コマンド+ClipFile.jsでコピー。あとは、howmの新規作成→ペーストを繰り返す)。
ファイル数が少ないうちはそれでも別に良かったのだが、今回30くらいメモを作ったので、もうこれ面倒だな!と思って作りました(こなみかん)