]> git.gir.st - VimFx.git/blob - bootstrap.coffee
firefox bootstrap extensions minimalist extension with console class for logging
[VimFx.git] / bootstrap.coffee
1 "use strict"
2
3 { classes: Cc, interfaces: Ci, utils: Cu } = Components
4
5 ((global) ->
6
7 tools = {}
8 Cu.import "resource://gre/modules/Services.jsm", tools
9 baseURI = tools.Services.io.newURI __SCRIPT_URI_SPEC__, null, null
10
11 modules = {}
12 global.require = (src) ->
13 if modules[src]
14 return modules[src]
15 else
16 scope =
17 require: global.require,
18 exports: {}
19
20 try
21 uri = tools.Services.io.newURI "packages/" + src + ".js", null, baseURI
22 tools.Services.scriptloader.loadSubScript uri.spec, scope
23 catch error
24 uri = tools.Services.io.newURI src, null, baseURI
25 tools.Services.scriptloader.loadSubScript uri.spec, scope
26
27 return modules[src] = scope.exports;
28
29 global.include = (src) ->
30 uri = tools.Services.io.newURI src, null, baseUri
31 tools.Services.scriptloader.loadSubScript uri.spec, global
32
33 Console = global.require("console").Console
34 global.console = new Console "vimroll"
35
36 )(this);
37
38 startup = (data, reason) ->
39
40 shutdown = (data, reason) ->
Imprint / Impressum