1 件の投稿を表示中 (合計 1 個)
  • 作成者
    投稿
  • #10365
    takuya
    参加者

    EmEditor 本体にファイルをドロップしたときに、ファイルを開く替わりに,中身を挿入します.

    主な機能
    ・ドロップ時にパスを挿入
    ・ドロップ時にファイルの中身を挿入。
    ・そのまま新しいタブで開く

    を切り分けます。

    参考図
    http://cdn-ak.f.st-hatena.com/images/fotolife/t/takuya_1st/20110609/20110609171947.png?1307607628

    マクロを登録して,イベント実行でファイルドロップ時で実行します.

    //パスとして挿入
    //ファイルがドロップされたときにパスとして挿入する.

    var write_path = function (){
    files = new Enumerator( DroppedFiles );
    for( ; !files.atEnd(); files.moveNext() ){
    f = files.item()
    document.writeln(“file://” + f);
    }
    }
    var open_file = function (){
    files = new Enumerator( DroppedFiles );
    for( ; !files.atEnd(); files.moveNext() ){
    f = files.item()
    Editor.OpenFile(f,0,eeOpenAllowNewWindow);
    }
    }
    var read_file = function (){
    files = new Enumerator( DroppedFiles );
    for( ; !files.atEnd(); files.moveNext() ){
    f = files.item()
    fso = new ActiveXObject( “Scripting.FileSystemObject” );
    content = fso.OpenTextFile(f, 1).readAll();
    document.write(content);
    }
    }

    menu = CreatePopupMenu();
    submenu = CreatePopupMenu();
    menu.Add( “新しいタブで開く” , 0 );
    menu.Add( “パスを挿入” , 1 );
    menu.Add( “ファイルの中身を挿入”, 2 );
    result = menu.Track( 0 );
    switch(result){
    case 0:
    open_file();
    break;
    case 1:
    write_path();
    break;
    case 2:
    read_file();
    break;
    }

1 件の投稿を表示中 (合計 1 個)
  • このトピックに返信するにはログインしてください。