ファイルの内容をコピーするスクリプト
カーソル上のファイルの内容を読み出し、クリップボードにコピーするスクリプトです。
ClipFile.js
//!*script
var objItem = PPx.Extract("%FCD");
var objFileSys = new ActiveXObject("Scripting.FileSystemObject");
objInFile = objFileSys.OpenTextFile(objItem, 1);
PPx.Clipboard = objInFile.ReadAll();
objInFile.Close();
ファイルの内容を追加コピーするスクリプト
カーソル上のファイルの内容を読み出し、クリップボードに追加コピーするスクリプトです。
ClipFileAdd.js
//!*script
var objItem = PPx.Extract("%FCD");
var objFileSys = new ActiveXObject("Scripting.FileSystemObject");
objInFile = objFileSys.OpenTextFile(objItem, 1);
PPx.Clipboard = PPx.Clipboard + "\n" + objInFile.ReadAll();
objInFile.Close();
マークしたファイルの内容をコピーするスクリプト
マークした順番に、マークしたファイルの内容をクリップボードにコピーします。ClipMarkFile.js
//!*script
if (PPx.EntryFirstMark == 0){
var objItem = PPx.Extract("%FCD");
var objFileSys = new ActiveXObject("Scripting.FileSystemObject");
objInFile = objFileSys.OpenTextFile(objItem, 1);
PPx.Clipboard = objInFile.ReadAll();
objInFile.Close();
} else {
strLine = ""
while(true){
var dir = PPx.Extract('%1');
var entryName = PPx.EntryName;
var objItem = dir + "\\" + entryName;
var objFileSys = new ActiveXObject("Scripting.FileSystemObject");
objInFile = objFileSys.OpenTextFile(objItem, 1);
strLine = strLine + objInFile.ReadAll() + "\n";
objInFile.Close();
if(PPx.EntryNextMark == 0) break;
}
PPx.Clipboard = strLine
}
メニュー形式で登録してみる
パスのコピーなどとあわせて、メニュー形式で登録してます。僕はShift+Nに割り振っています。
KC_main = { ; PPcメイン窓
\N ,%M_ClipPath,C
}
M_ClipPath = { ** comment **
CopyFileName = *cliptext %R
Copy&DirName = *cliptext %1
Copy&FileName(拡張子無し) = *cliptext %Y
CopyFilePath = *cliptext %FCD
ファイルの内容をクリップボードにコピー = *script %0\Script\ClipFile.js
ファイルの内容をクリップボードに追加コピー = *script %0\Script\ClipFileAdd.js
マークしたファイルの内容をクリップボードにコピー = *script %0\Script\ClipMarkFile.js
}


