Introducing Kate GDB Plugin

Have you, like me, had to switch to an external debugger or run raw gdb in the terminal plugin to debug the C/C++ application you develop with Kate? That might not be necessary any more. There is now a “GDB Plugin” in trunk that gives you the power of raw GDB with some QAction candy for the most common actions.

I have always been a bit frustrated with not having a debugger directly in Kate, but too lazy/busy to start a debugger plugin project. Fortunately Ian Wakeling started this GDB plugin and got it off the ground. When I got introduced to it at Akademy, it triggered an itch in me to get this plugin into kdesdk and to add some features for the more point and click type of persons. As it seemed I had a bit more free time to spend on the plugin, Ian let me take over as maintainer.

Main features of the plugin:
- Jump to the corresponding file and line whenever gdb stops.
- Insert and remove breakpoints.
- Tool-bar buttons for the most often used actions like step into/over/out. Those actions can of course also be assigned to keyboard shortcuts.
- Execution markers and breakpoint markers on the icon border.
- A call stack tab for point and click navigation of the call stack.
- Optional IO redirection to a separate tab.
- Printing the value of the currently selected variable or expression. QStrings and friends are not supported (yet?).
- And last but not least. A GDB console for the full power of GDB.

And now the screen-shots

GDB Console, execution marker and a breakpoint marker.


The current call stack.


Settings tab.


Redirected IO.


The selected variable and the GDB value output.


The debug menu.

Kate Tree View Plugin Update

It’s me again. Given how much people seem to like the plugin, and that some would like to see this plugin replace the existing simple list view, I’ve put in a bit of work to make it so the tree view plugin replaces as much functionality of the original file list as possible.

There’s now a list mode (which was surprisingly easy to do), as well as the tree mode and I’ve extended the sorting support to include all but the “custom sort order” option of the original file list (it’ll take a bit more work to support that, if its something people actually use, I just haven’t felt like doing the work to get drag and drop to work, and before now it didn’t make much sense to add). While I was at it I also added a Settings Dialog Page for the plugin.

One improvement (imo) over the old file list, is that all tree view settings are session specific. Each session saves its own sorting, view mode, and item highlighting color settings.

Now for some gratuitous screen shots:

Here we see the new sort order context menu items, pretty dull so far.

Now it starts to get a little more interesting. The view mode context menu!

Ooh, and now we can see it displaying in list mode!

Again in list mode, but sorted by the document’s path, rather than just by document name.

And here’s the new config page. Nothing much to look at, but it works :)

I still have a couple more things I want to add, like a fancy way to filter and eventually, if everyone’s agreeable, I’ll thief the back/forward actions, and the “Go” menu from the main file list.

Before I go, I was wondering if people would be willing to help me with some distro packages, I might be able to manage some Debian packages, but I’m not sure when I’ll get to it so if anyone is willing and capable, have at it.

Thats all for now. Thanks for reading :)

Tree View plugin introduction

Kate has been my favorite editor for some time now. And only recently has it not been able to do something I asked it do to. I was working on a rather large project in Perl when things started getting confusing. The classic file list had 50+ files in it, some of them have the same file name, so would have (1) or (2) or even (4) after the file name, and while thats handy, it gets confusing pretty quickly.
Continue reading