Créer des commandes en utilisant l'Ardoise JavaScript requiert des privilèges chrome. Voir la documentation de l'ardoise pour des détails sur comment activer cette fonctionnalités.
Modèle de base de commande
La plus basique des commandes ressemble à ceci :
NDT : attention l'exemple ne fonctionne pas, l'import donne un 404
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; } });
Compatibilitée des modules complémentaires
Il est possible de faire des commande de telle sorte qu'elles soient facilement converties en modules complémentaires. Utilisez simplement le modèle suivant :
NDT : Comme le modèle précédent, une mise a jour est nécessaire. Si vous en avez vraiment besoin de ce code, essayez de contactez les gens qui travaillent sur GCLI ou sur l'Ardoise JavaScript (Scratchpad) sur IRC (un bon point de départ est la salle #devtools) .
A noter : la plupart des canaux IRC de Mozilla sont uniquement anglophones. Si vous ne pouvez absolument pas faire avec, demandez de l'aide sur #frenchmoz
Components.utils.import("resource://gre/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) { }