mozilla
Your Search Results

    Scratchpad

    スクラッチパッドを用いてコマンドを作成するには、chrome 権限が必要です。この機能を有効にする方法は、スクラッチパッドのドキュメントに記載しています。

    基本的なコマンドテンプレート

    もっともシンプルなコマンドは以下のようになります:

    Components.utils.import("resource:///modules/devtools/gcli.jsm");
    
    gcli.addCommand({
      name: 'hello',
      description: 'Show a message',
      params: [
        {
          name: 'name',
          type: 'string',
          description: 'Who to say hello to',
        }
      ],
      exec: function(args, context) {
        return 'Good morning, ' + args.name;
      }
    });
    
    上記を新規に開いた chrome 権限のスクラッチパッドに貼り付け、(スクラッチパッドのメニューで) 実行環境を "ブラウザ" に設定して実行 (CTRL+R) すると、コマンドラインに 'hello' コマンドが追加されます。

    アドオンの互換性

    簡単にアドオンへ変換できるようにコマンドを作成することができます。以下のテンプレートを使用してください:

    Components.utils.import("resource:///modules/devtools/gcli.jsm");
    
    var helloCommandSpec = {
      name: 'hello',
      description: 'Show a message',
      params: [
        {
          name: 'name',
          type: 'string',
          description: 'Who to say hello to',
        }
      ],
      exec: function(args, context) {
        return 'Good morning, ' + args.name;
      }
    }
    
    // The boiler plate below allows this module to be exported as a Firefox add-on
    // If you don't need add-on compatibility, you just need to call
    //   gcli.addCommand(helloCommandSpec);
    
    function startup(data, reason) {
      gcli.addCommand(helloCommandSpec);
    }
    
    function shutdown(data, reason) {
      // addCommand automatically removes any old commands, but to be tidy ...
      gcli.removeCommand(helloCommandSpec);
    }
    
    var __SCRATCHPAD__ = !(typeof(window) == "undefined");
    if (__SCRATCHPAD__ && (typeof(window.gBrowser) == "undefined")) {
      throw new Error("Must be run in a browser scratchpad.");
    }
    
    if (__SCRATCHPAD__) {
      shutdown();
      startup();
    }
    
    function install(data, reason) { }
    function uninstall(data, reason) { }
    

     

    ドキュメントのタグと貢献者

    Contributors to this page: yyss
    最終更新者: yyss,