GM log: Difference between revisions

From GreaseSpot Wiki
Jump to navigationJump to search
m Text replace - "top | back'' " to ""
Line 13: Line 13:
#namespace/myScript: Hello World!
#namespace/myScript: Hello World!
</pre>
</pre>
[[#Examples|Examples]] | [[#GM_log_and_Firebug|GM_log and Firebug]] | [[#Notes|Notes]]


== Syntax ==
== Syntax ==

Revision as of 21:46, 3 February 2010


Description

This API method allows script authors simple access to logging informational messages in the Error Console.

If you aren't seeing your messages, make sure you navigate to about:config, and change the values of javascript.options.showInConsole and javascript.options.strict to true. This can be helpful for debugging.

The output produces the namespace, the name of the script, and the string.

For example:

#namespace/myScript: Hello World!

Syntax

GM_log( message )

Value: Function
Returns: undefined
Compatibility: Greasemonkey 0.3b+
Parameters
Properties
message
  • All properties are optional except message.

Properties


message

Value: String, Integer[1] or Boolean[1]
Usage: message = "ARGHHH!";
  • Message to send to the JavaScript error console.
  • [1] While the value may be a non-string, it will convert the argument to a string. There may also be some instances of visual clipping on large numerical values during conversion. This is a feature present in Mozilla based JavaScript console logging.

Examples

Template:Samp

Template:Samp

GM_log and Firebug

Since Firebug 1.0, extensions.firebug.showChromeMessages must be set to true for GM_log messages to show up in the Firebug console.

It is also recommended to enable extensions.firebug.showChromeErrors, as doing so will reveal syntax errors and script breaks.

This can be done from about:config, or from the Firebug GUI. Go to the "Console" tab, then click the arrow next to the tab's name, and ensure that "Show Chrome Errors" and "Show Chrome Messages" are checked.

However, one should note that since GM_log converts any passed parameter to a string, and works from the Chrome, it would be more advisable to simply use console.log, which will allow you to take advantage of Firebug's DOM Inspector on the logged objects.