JclDebug

If you are a Delphi Programmer like me, you surely know the problem with users reporting an exception here and there but you cannot reproduce it at your place. This can get even more dramatical if such exceptions are thrown within threads as this will lead to an immediate bluescreen in Windows 9x/ME and to a “visit” by Dr. Watson in the NT-based versions of windows.

Imagine you could get a detailed error-report containing a full callstack of where the error occured combined with information about file and line-number. This report could be generated directly on the users computer and be sent to you via email or directly via the internet, using a custom procedure – even directly creating entries in the bugtracking-tool you are using.

This and more is made possible by the Project JEDI – more accuratly, the JCL-Subproject with its JclDebug-Framework. When you have completed the installation of the package, a new Menu Option called “Inser JCL Debug Data” will be added to the Project-Menu of your Delphi-IDE.

Now you add an Exception-Dialog to the Application using “File, New, Other…” followed by “Dialog, Exception Dialog”.

The newly added Form can easily be customized to your likings.

Now make a complete build. The IDE-Plugins will create a MAP-File, compress it and add it to the .EXE-File of your Project. When an Exception is thrown, the new error-dialog will be used, displaying a complete callstack with filenames and linenumbers.

I’ve created a small CGI-Script for receiving such reports and automatically filing it into my phpBugTracker (a very nice “Bugzilla-Light” written in PHP). This has already helped me to track two stupid bugs down which I was never able to reproduce on my development system.

Oh and before I forget: The whole thing can be downloaded on it’s Webpage at Sourceforge.

Why I like jEdit

jEdit is a texteditor written in Java. Actually it’s not just a texteditor – it’s the texteditor. It combines the usage-guidelines known of other programs running under Windows or windows-like environements with the functionality (as an editor, not as a newsreader webbrowser filemanager «insert whatever else emacs can do) of Emacs.

When you download the current release (you can easily take the current 4.1pre-Release – even the CVS-Snapshot is stable enough for production use [at least for me]) and install it via the provided installer, you will get quite a simple looking UI. So the first thing to to is to load the PlugIn-Manager and to download and install whatever you need. Then restart the program and begin with the configuration-session…

On the screenshot, you can see many of the features I like about jEdit:

  • The cool look&feel (install the L&F-Plugin and chose the Metouia-Look to get mine).
  • The File-Browser always open on the left side. You have to select it under Global Options/Docking to get it sticking at the left side.
  • The search-bar which even supports regular expressions
  • The split-view. I am currently looking at the same file, but chaning this is a matter of selecting another tab (install the BufferTabs-Plugin to get those) in one of the views.
  • The color-scheme of the editfield. I really like having bright text on a dark background. It’s so much easier to read.
  • The yellow triangle marks in the gutter of the editfield are for folding the sourcecode. Click them and the associated block will be folded.

Please give jEdit a chance even though it’s written in Java: The thing is extremly feature-loaden and really fast. Trust me!