There have been a lot of interesting developments in the JavaScript debugging front since my
last update, so let me give you a brief overview of the most important changes.
Let's begin with the eagerly awaited Firefox OS. Starting the debugger in Firefox OS has gotten way easier. There is a toggle in the settings app that will set or reset the
devtools.debugger.remote-enabled pref, so that you don't have to
mess with files and adb at all. At least for production builds that have marionette disabled by default. Developer builds will have to keep disabling marionette for a bit longer. You can find the Remote Debugging toggle in Settings -> Device Information -> More Information -> Developer. Note that you will have to reboot the device (or restart the b2g process) for the change to have effect. Also, as you can see in the screenshot, it's a good idea to disable out-of-process support while debugging, at least
until the debugger can support it.
While we are on the subject of debugging JavaScript on mobile, I shouldn't neglect to mention that
Mihai Sucan has landed
web console support for Firefox OS and Firefox for Android. There are still a few rough edges, particularly in the case of Firefox OS, but now you can connect your desktop Firefox to your mobile device and see the errors and logged messages, as well as evaluate JS code in the context of the mobile page.
Speaking of desktop Firefox, the amazing
Victor Porof has landed an obscene number of patches in the last few weeks, with many fixes and tweaks for the debugger frontend. Of those I'd like to highlight the new functionality to search for variables in the current scope chain while the debugger is paused. Prepend your search with a star to search in the variables view. When you deal with large objects with long scope chains, finding the variable you are looking for can be like searching for a needle in a haystack. Now it's a piece of cake.
|
Searching for variables |
And last, but certainly not least,
chrome debugging support has appeared in Nightly this past weekend! This will make debugging add-ons or Firefox itself way easier than ever before. You will need to enable remote debuging (
devtools.debugger.remote-enabled) and browser chrome debugging as well (
devtools.chrome.enabled, the same pref you switch to get Scratchpad to run against chrome).
|
Chrome debugging preferences |
This will get you a nice new Browser Debugger menu item in the Web Developer menu, which launches a separate debugger process to inspect your browser instance.
|
Browser Debugger menu item |
There has never been a better time to dive into Firefox internals and become a valued contributor. Take a look at
this bug, to see how simple debugging has just become. Help us make the web better, by improving the lives of more than 400 million users!
No comments:
Post a Comment