From 999b6c1b8dd030477a9b983d2723948a7d341581 Mon Sep 17 00:00:00 2001 From: Simon Lydell Date: Sat, 26 Oct 2013 11:36:07 +0200 Subject: [PATCH] Use Firefox 24+ native console API --- extension/bootstrap.coffee | 11 ++++------ extension/packages/console.coffee | 34 ------------------------------- 2 files changed, 4 insertions(+), 41 deletions(-) delete mode 100644 extension/packages/console.coffee diff --git a/extension/bootstrap.coffee b/extension/bootstrap.coffee index 21961fd..2999dcf 100644 --- a/extension/bootstrap.coffee +++ b/extension/bootstrap.coffee @@ -12,13 +12,10 @@ do (global = this) -> # Loaded packages cache packages = {} - # To be loaded in a bit - console = null - # Load and cache package require = (name) -> if packages[name] is undefined - scope = { console, require, exports: {} } + scope = { require, exports: {} } try path = Services.io.newURI("packages/#{ name }.js", null, baseURI).spec loader.loadSubScript(path, scope) @@ -29,9 +26,6 @@ do (global = this) -> return packages[name] - # Load up console that is defined above - { console } = require 'console' - # Unload all packages release = -> for path, scope in packages @@ -39,6 +33,9 @@ do (global = this) -> scope[name] = null packages = {} + # Load native console API + Cu.import("resource://gre/modules/devtools/Console.jsm") + # Firefox will call this method on startup/enabling global.startup = (data, reason) -> # Requires for startup/install diff --git a/extension/packages/console.coffee b/extension/packages/console.coffee deleted file mode 100644 index 63a9764..0000000 --- a/extension/packages/console.coffee +++ /dev/null @@ -1,34 +0,0 @@ -{ classes: Cc, interfaces: Ci } = Components - -console = do -> - cs = Cc['@mozilla.org/consoleservice;1'].getService(Ci.nsIConsoleService) - - stringify = (arg) -> - try - return String(arg) - catch error - return '' - - message = (level, args) -> - str = "VimFx - #{ level }: #{ Array.map(args, stringify).join(' ') }\n" - dump(str) - cs.logStringMessage(str) - - expand = (arg) -> - if typeof(arg) == 'object' - str = stringify(arg) - for key, value of arg - str += "\n-\t#{ key }: #{ value }" - return str - else - return arg - - return { - log: -> message('log', arguments) - info: -> message('info', arguments) - error: -> message('error', arguments) - warning: -> message('warning', arguments) - expand: -> message('expand', Array.map(arguments, expand)) - } - -exports.console = console -- 2.39.3