スクリプトの例(Ver1.04対応版)


全て選択してコピー
js:SelectAll();Copy();


指定コマンドの実行
js:Command("タブの分割方向切り替え");


特殊なカラムを指定してソート
(「SVN リビジョン」というカラムがある場合)
js:Sort("SVN リビジョン",1);


C:\folderを開くブックマーク相当
(JScriptの場合)
js:Open("C:\\folder");
(VBScriptの場合)
vbs:Open "C:\folder"


C:\folderを開いて表示方法とソートを決めるブックマーク(その1)
js:Open("C:\\folder");SetView(1);Sort("name",1);


C:\folderを開いて表示方法とソートを決めるブックマーク(その2)
js:Open("C:\\folder");SetView(2);Sort("date",2);


複数のフォルダを一度に開くブックマーク
vbs:CloseOtherTab:Open "C:\folder1":Open "C:\folder2",1


フィルタ
js:Open("*.jpg;*.gif");


フィルタ解除
js:Open("");


Configオブジェクトによる設定の変更
js:Config.CheckBox = !Config.CheckBox;


複数選択された項目のパスをクリップボードにコピー
js:C:\folder\test.js

test.jsの内容
  //test.js
  var s="";
  var iItem=GetNextItem(-1,2);
  if(iItem<0){
    Message("選択がありません");
  }else{
    while( iItem >= 0 ) {
      s=s+GetItemPath(iItem)+"\r\n";
      iItem=GetNextItem(iItem,2);
    }
    SetClipboard(s);
  }


複数選択された項目のリスト上の表示名をクリップボードにコピー
js:C:\folder\test.js

test.jsの内容
  //test.js
  var s="";
  var iItem=GetNextItem(-1,2);
  if(iItem<0){
    Message("選択がありません");
  }else{
    while( iItem >= 0 ) {
      s=s+GetItemText(iItem)+"\r\n";
      iItem=GetNextItem(iItem,2);
    }
    SetClipboard(s);
  }


選択された最初の項目をメモ帳で開く(最初の1つの選択のみ)
js:C:\folder\test.js

test.jsの内容
  //test.js
  var iItem=GetNextItem(-1,2);
  if(iItem<0){
    Message("選択がありません");
  } else {
    var objShell = new ActiveXObject("WScript.Shell");
    objShell.Run( "notepad.exe " + GetItemPath(iItem) );
    objShell = null;
  }


詳細表示をTSV化してクリップボードにコピー
js:C:\folder\test.js

test.jsの内容
  //test.js
  var s="";
  var cItem=GetItemCount();
  var cCol=GetColumnCount();
  for(iCol=0;iCol<cCol;iCol++){
    s=s+GetColumnText(iCol);
    if(iCol<cCol-1)s=s+"\t";
  }
  s=s+"\r\n";
  for(iItem=0;iItem<cItem;iItem++){
    for(iCol=0;iCol<cCol;iCol++){
      s=s+GetItemText(iItem,iCol);
      if(iCol<cCol-1)s=s+"\t";
    }
    s=s+"\r\n";
  }
  SetClipboard(s);


フォーカスのある項目と同じ拡張子でフィルタ
js:C:\folder\test.js

test.jsの内容
  //test.js
  var iItem=GetNextItem(-1,1);
  if(iItem>=0){
    var obj = new ActiveXObject("Scripting.FileSystemObject");
    var strPath = GetItemPath(iItem);
    var strExt = obj.GetExtensionName( strPath );
    Open("*." + strExt);
    obj = null;
  }


他のオブジェクトを使う例(vbs)
WScript.CreateObjectは使えませんが、グローバルなCreateObjectは使えます。
WScript.Echoは使えませんが、VBScriptのMsgBoxは使えます。

vbs:C:\folder\test.vbs

test.vbsの内容
  'test.vbs
  Set objFSO = CreateObject("Scripting.FileSystemObject")
  strPath = "C:\folder\file.txt"
  MsgBox strPath & vbCrLf _
    & objFSO.GetDriveName(strPath) & vbCrLf _
    & objFSO.GetFileName(strPath) & vbCrLf _
    & objFSO.GetBaseName(strPath) & vbCrLf _
    & objFSO.GetExtensionName(strPath) & vbCrLf _
    & objFSO.GetParentFolderName(strPath) 
  Set objFSO = Nothing


他のオブジェクトを使う例(js)
WScript.CreateObjectは使えませんが、new ActiveXObjectは使えます。
WScript.Echoは使えませんが、秀丸ファイラー固有のMessageメソッドは使えます。

js:C:\folder\test.js

test.jsの内容
  //test.js
  var objFSO = new ActiveXObject("Scripting.FileSystemObject");
  strPath = "C:\\folder\\file.txt";
  Message( strPath + "\n"
    + objFSO.GetDriveName(strPath) + "\n"
    + objFSO.GetFileName(strPath) + "\n"
    + objFSO.GetBaseName(strPath) + "\n"
    + objFSO.GetExtensionName(strPath) + "\n"
    + objFSO.GetParentFolderName(strPath) );
  objFSO = null;


戻る