UNCでのフルパスコピーNo.08939
bochi さん 20/11/16 19:39
 
いつもお世話になっております。

掲題の内容ですが、機能追加の希望として
「編集」メニューの「パスをコピー」に「UNCでフルパスをコピー」を
追加していただけませんでしょうか。

Win3.1時代から使い続けていたFileViserに有った機能なのですが、
あちらが更新停止状態になって久しいので秀丸ファイラーに乗り換えてきました。
だいぶこちらにも慣れて操作に迷うこともなくなってきましたが、
職場ファイルサーバー上の特定ファイルを指定するにあたって、
この機能がやはり便利だったので、要望させていただきます。


[ ]
RE:08939 UNCでのフルパスコピーNo.08940
秀丸担当 さん 20/11/17 10:05
 

以前にそういうスクリプトを作ったことがあった気がして、調べたらありました。
ライブラリにもありますが、短いのでここにも書いておきます。

以下の内容を、例えばC:\Folder\Test.jsとして保存します。
ブックマークを追加して、パスの部分を「js:C:\Folder\Test.js」として、ブック
マークを選ぶと実行されます。
リンクバーを表示させておくとボタンにすることもできます。

//秀丸ファイラーClassic用スクリプト
//ネットワークドライブの場合UNCパスに変換してパスをコピー
var objNetwork = new ActiveXObject("WScript.Network");
var colDrives = objNetwork.EnumNetworkDrives();
var s="";
if(GetFocusTarget()==2){
  var sGet = GetDirectory();
  for( i = 0; i < colDrives.Count(); i += 2 ) {
    if( sGet.substring(0,2)==colDrives.Item(i)){
     sGet = colDrives.Item (i + 1) + "\\" + sGet.substring(3);
     break;
    }
  }
  s=s+sGet+"\r\n";
  SetClipboard(s);
} else {
  var iItem=GetNextItem(-1,2);
  if(iItem<0){
    Message("選択がありません");
  }else{
    while( iItem >= 0 ) {
      var sGet = GetItemPath(iItem);
      for( i = 0; i < colDrives.Count(); i += 2 ) {
        if( sGet.substring(0,2)==colDrives.Item(i)){
         sGet = colDrives.Item (i + 1) + "\\" + sGet.substring(3);
         break;
        }
      }
      s=s+sGet+"\r\n";
      iItem=GetNextItem(iItem,2);
    }
    SetClipboard(s);
    //Message( s );
  }
}

[ ]
RE:08940 UNCでのフルパスコピーNo.08945
bochi さん 20/11/18 17:44
 
回答ありがとうございます。
動作確認できました。これで十分です、ありがとうございます。

[ ]