Code Monkey home page Code Monkey logo

xdebug-helper-for-chrome's Introduction

XDebug Helper for Google Chrome

Debugging, profiling and tracing PHP code with Xdebug is very powerful, but enabling Xdebug with cookies or adding POST/GET variables is way too hard. This extension will help you to enable/disable debugging, profiling and tracing of your PHP-code easily.

Hotkeys

Ctrl+Shift+X (Cmd+Shift+X on Mac) opens the popup.
Alt+Shift+X toggles the debugging state.

How to install this extension?

Stable version: Go to the Google Chrome Web Store and click "Add to Chrome".

Development version: Download the source from GitHub and load the extension into Chrome yourself!

How do I contribute?

A: Submit issues and ideas

B: Submit a pull request

  1. Fork this repo and create a branch
  2. Commit and push your changes to your branch
  3. When you're happy send us a pull request!

Pro-tip: Make sure to build upon the latest version of the code and keep pull request as small as possible. This makes your pull request easy to merge.

Cool, but I use Firefox?!

There is also Firefox version created by BrianGilbert that you could try.

License

The code of this project is licensed under the MIT license so you can use it in nearly every project you want to, commercial and non-commercial.

Special thanks

xdebug-helper-for-chrome's People

Contributors

burakcakirel avatar das-peter avatar jeroenvisser101 avatar kived avatar leksat avatar mac-cain13 avatar neochief avatar nstcactus avatar silverqx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

xdebug-helper-for-chrome's Issues

Clean options page code

There is some CSS in the HTML, and also the HTML/CSS/JS can use some updates in general to make it somewhat cleaner.

Setting to disable profiler/debugger/tracing if you only use one of these

Kaspars Sprogis: We are not using Profiler at all, but only Debugger togglere, therefore it is quite annoting when you want to disable Debugging, on first click it goes to Profiling state and only on next click disables xdebug helper.

It would be great if you could specify in Options, show Profiler state in extension icon or not.

Unclickable button (ladybug icon appears, but is not clickable)

The ladybug icon appears in the search bar but is grayed out and does not change when clicked.

Applicatieversie: 1.2.0
Clientversie: 5.0 (X11; Linux x86_64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17
Meldingsdatum: 15-1-13 16:23
Gemeld door: A Google User

GUI corrupted

Currently running Mac OSX Mavericks. The GUI for selecting xdebug-activation-type only appears like half of the time. Most of the time I barely see the debug-icon and I'm unable to activate it. After some clicking the GUI is presented correctly.

Popup when clicking the ladybug instead of cycling through options

I think it would be great if a popup was shown when clicking the ladybug instead of cycling through options. Now you sometimes have to click 3 times to get to the right mode, a popup with the options would be quite handy and gives us more room to add more modes/options.

This method should help to create a popup like this:
Popup

Being able to activate debugging on a XML page

Hi,

thank you for that great helper.
As a php developer i also have to create xml-file, but for these xdebug helper is inactive and i can't start debugging.
Could you please make it working for xml requests, too?
currently i have to break the xml, so a html answer is shown where i can activate xdebug helper.

thanks

Idea to easily enable/disable debugging

Most of the time I'm enabling/disabling the debugger and not switching on/off profiling and trace.
So would be real handy to have a hotkey to just enable debugger. Like ctrl-shift-d

Page won't load with debug "on" but with IDE not started

Hi,

I have a problem with the xdebug plugin:

When I go to a page, activate debugging WITHOUT starting my IDE (or listening to incoming debug sessions) the page will NEVER load. It will keep "loading" but nothing happens. I first need to start my IDE, activate the debug listener, load the page and than I can disable the xdebug helper!

Solution: Implement somekind of fix that if no "debug host" can be found just don't debug but continue load the page.

I don't know if it is possible to create somekind of log file for you?

Details:
Windows 8.1 64-bit (also occures on win 7 sp1 64-bit)
Chrome version: 31.0.1650.57 m
XDebug helper: 1.4.2

Upload extension to opera addon database

Would be great if you could add it as Opera extension.
It can be uploaded unmodified to Opera extensions. The extension works fine in Opera 15+ (WebKit/Blink edition)

Plugin doesn't work

Hi!
I found that plugin doesn'to work with Chrome 45.0.2453.0 dev-m (64-bit)

Implement arrowkey supprt

To navigate the popup, also support hotkeys, open popup press a key to select an option.

Could use keymaster for this.

xdebug newbie where do I see the output?

I have xdebug properly installed, and have confirmed this by viewing phpinfo() and seeing xdebug listed with all of its settings. I have configured the extension by entering my custom IDE Key and confirmed that it is saved and correct.

When I navigate to the page on the site I want to debug, I see the bug icon, in the url bar, and if I click it, it cycles through all of the options: Debugging enabled, Profiling enabled, Tracing enabled. If I click and make the bug green and reload the page, it then stays green on the page.

I assume I am missing something very obvious here, but where can I find the output of xdebug, I assumed it would be presented on the screen...

Any advice would be greatly appreciated.

Thanks for your time!

Errors in background.js (on v1.3 branch)

Error in event handler for 'undefined': Cannot read property 'status' of undefined TypeError: Cannot read property 'status' of undefined
at chrome-extension://khhlnkljlilgmacddehmnjkjejpohkok/background.js:41:24
at miscellaneous_bindings:281:11
at chrome.Event.dispatchToListener (event_bindings:387:21)
at chrome.Event.dispatch_ (event_bindings:373:27)
at chrome.Event.dispatch (event_bindings:393:17)
at Object.chromeHidden.Port.dispatchOnDisconnect (miscellaneous_bindings:239:27)

Chrome 49.0.2593.0 dev-m (64-bit)

Clicking on an option in the popup

extensions::uncaught_exception_handler:8 Error in response to runtime.getBackgroundPage: TypeError: Cannot read property 'status' of undefined
at chrome-extension://eadndfjplgieldjbigjakmdgkmoaaaoc/popup.js:45:41
at chrome-extension://eadndfjplgieldjbigjakmdgkmoaaaoc/popup.js:44:21

Can't set cookie if the url has a port number

When I add a port number to the url the Helper won't trigger the action selected because the cookie is not set. If I start the debug from the url without the port number and then I go to the url with the port number the Helper doesn't show the triggered action.

Enchanted icon for the extension

Would love to have a nicer and more exclusive icon for the extension. This is a free icon of a bug, but I'm seeing it a bit to often around the web. If someone could produce a great icon for this extension that would be amazing!

Manage IDE Key by domain

When I switch from one project to another with a different xdebug configuration, I have a to change the key manually. This bother me a lot and I wonder if it is plan/possible to add a feature to configure a key for specific domain filter.

Add an option to disable the profiling and tracing icons

Hello,

Would it be possible to add an option to only show the debugging icon and to to disable the profiling and tracing icons.

Everytime I debug I always have to click the icon multiple times to enable and disable debugging. Since I never use the profiling and tracing options i think it would be good if there was away to disable those features.

Thanks,
Gary

Helper switches to disabled when a request returns xml

If there is a call to a script which returns an xml structure, the helper gets disabled upon the response and cannot be enabled again.
If then calling another script in the same tab, which produces non-xml output, the helper gets enabled again.

On a host that has a redirect loop you are unable to select options in the popup

On a host that has a redirect loop you are unable to select options in the popup

extensions::uncaught_exception_handler:8 Error in response to runtime.getBackgroundPage: TypeError: Cannot read property 'status' of undefined
at chrome-extension://eadndfjplgieldjbigjakmdgkmoaaaoc/popup.js:45:41
at chrome-extension://eadndfjplgieldjbigjakmdgkmoaaaoc/popup.js:44:21

Debug only ajax requests (xhr)

What a nice feature would be if we can debug only xhr requests.
Currently i have a web project where a lot of elements start loading after layout loaded.
How i debug it now:

  1. Set breakpoint or 'debugger;' statement inside code
  2. Waiting when xhr breakpoint start debugger
  3. Turn on debug mode in xdebug helper
  4. Debug in my IDE

By the way breakpoint must be set before xhr actually send data!

This feature can be implemented with prototype property of xhr (setting callback before xhr starts)

Allow quick toggle of the debug state

Ideally something like double-clicking the icon would toggle state between disabled and debug. Do you like this idea? If so I can work up a PR.

Looking into the Chrome docs it looks like if you use a popup you get no events triggered on the icon, leading to a couple ideas:

  1. Save the time of the last popup opening and if it's less than ~250ms, toggle the state and close the popup.
  2. Change to a manual popup (dunno how hard this is) using the icon onClicked.

How to do with eclipse?

Hello, In phpstorm I can insert the cookie at any time and start debugging, but with eclipse PDT it always start a new tab on browser. someone had success setting up eclipse?

Thank you all

No, this is not an issue. But I have to say a couple of things and I could not find another way to tell this; so I put it here.

This small software is something I have been using since about an year now and I have tried similar stuff from Google Chrome Webstore as well and nothing is as simple intuitive and functional as much as little beautiful stuff here.

It makes a lot of things easy and that counts. It's like being apple - they do not just mash together some technology, they find out the easiest and the most beautiful way to put it to use. This little extension here is the 'Apple' of all debugging extensions.

Thank you both for creating it :)

Cheers :)

idekey still undefined

The variable idekey is undefined in chrome (v23) under win7:

console.error("Error in event handler for '" + this.eventName_ +
Error in event handler for 'undefined': idekey is not defined ReferenceError: idekey is not defined
at xdebugCheckStatus (chrome-extension://[...]/content.js:25:43)
at chrome-extension://[...]/content.js:12:14
at chrome.Event.dispatchToListener (event_bindings:387:21)
at chrome.Event.dispatch_ (event_bindings:373:27)
at chrome.Event.dispatch (event_bindings:393:17)
at miscellaneous_bindings:163:26
at chrome.Event.dispatchToListener (event_bindings:387:21)
at chrome.Event.dispatch_ (event_bindings:373:27)
at chrome.Event.dispatch (event_bindings:393:17)
at Object.chromeHidden.Port.dispatchOnMessage (miscellaneous_bindings:253:22)

I've forked the repository, and made some changes, that seem to fix the error

Error in event handler for 'undefined': idekey is not defined

Error in event handler for 'undefined': idekey is not defined ReferenceError: idekey is not defined
at xdebugCheckStatus (chrome-extension://eadndfjplgieldjbigjakmdgkmoaaaoc/content.js:25:43)
at chrome-extension://eadndfjplgieldjbigjakmdgkmoaaaoc/content.js:12:14
at chrome.Event.dispatchToListener (event_bindings:387:21)
at chrome.Event.dispatch_ (event_bindings:373:27)
at chrome.Event.dispatch (event_bindings:393:17)
at miscellaneous_bindings:164:26
at chrome.Event.dispatchToListener (event_bindings:387:21)
at chrome.Event.dispatch_ (event_bindings:373:27)
at chrome.Event.dispatch (event_bindings:393:17)
at Object.chromeHidden.Port.dispatchOnMessage (miscellaneous_bindings:254:22) event_bindings:377
chrome.Event.dispatch_ event_bindings:377
chrome.Event.dispatch event_bindings:393
(anonymous function) miscellaneous_bindings:164
chrome.Event.dispatchToListener event_bindings:387
chrome.Event.dispatch_ event_bindings:373
chrome.Event.dispatch event_bindings:393
chromeHidden.Port.dispatchOnMessage miscellaneous_bindings:254
Error in event handler for 'undefined': idekey is not defined ReferenceError: idekey is not defined

Allow XDEBUG_TRACE as well for function traces

Matt Zuba: Love this extension, it's been a life saver over using var_dump or print_r. I modified it to allow XDEBUG_TRACE as well for function traces and it's even better! Highly recommend the author add the trace functionality. I used the magnifier.png icon from the silk icon pack and it's seem-less.

Doesn't work with Chromium 29 on Ubuntu 13.10

The menu appears when the bug icon is clicked, but clicking the labels in the menu does nothing at all. It doesn't even close when clicked.

Version 29.0.1547.65 Ubuntu 13.10 (29.0.1547.65-0ubuntu2)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.