1 { classes: Cc, interfaces: Ci } = Components
4 cs = Cc['@mozilla.org/consoleservice;1'].getService(Ci.nsIConsoleService)
10 return '<toString() error>'
12 message = (level, args) ->
13 str = "VimFx - #{ level }: #{ Array.map(args, stringify).join(' ') }\n"
15 cs.logStringMessage(str)
18 if typeof(arg) == 'object'
21 str += "\n-\t#{ key }: #{ value }"
29 name = f.toString().split('(')[0]
30 args = Array.map(f.arguments, stringify).join(', ')
32 .concat(["#{ name } ( #{ args } )"])
35 return st2(arguments.callee.caller)
39 log: -> message('log', arguments)
40 info: -> message('info', arguments)
41 error: -> message('error', arguments)
42 warning: -> message('warning', arguments)
43 expand: -> message('expand', Array.map(arguments, expand))
44 stacktrace: -> message('stacktrace', stacktrace())
47 exports.console = console