There seems to a lot of Windows applications which will display certain information to your screen, but they are either chock-full of eye candy (widgets?) or are limited by the programmer to what
they want to display; I wanted something a little more flexible. One of my favorite apps on OS X is
GeekTool which is program that takes the output from a process and, in essence, writes it to your desktop. I figured it wouldn't be that difficult of an app to replicate for Windows users so I decided to do just that. And I stole their name, too, which is pretty lame, but I couldn't think up anything as catchy as "BugZapper".
Originally I used
SysInternals' excellent command-line
PsList (part of the also excellent
PsTools) to output a continuously updated list of processes onto my desktop, but many other command-line applications should work just fine. In fact I wrote a brand new (ha!) clone of
ps because I found all of the versions floating around the net so underwhelming. I also wrote a bare-bones mini-app to grab content from a website, which I then parse with regex and display on my desktop (think a really hacky/rudimentary RSS feed... although an RSS feed parser would be a good thing to write as well). And in my third form I display output from a tail of a log file, which I use the
unxutil's port of tail for. I am sure there are other command-line utilities that could also generate some great content for your desktop.
One of the things that I thought would also be helpful is the ability to use regular expressions to only display the content that I actually wanted to see, so the ability is there. Note, however, that if you don't know how to write regex, you don't need to. The default is to just show all of the output from the process.
Note: You will need to take a look at the XML file that stores all of the settings for this application to work for you. It's not hard to figure it out, though, so just take a peak.
This program is still alpha software so beware and have caution. There is a known issue: shutting down seems to send off a flurry of dialogue boxes asking to close whatever process GeekTool is attempting to start up. I am looking for a solution, but haven't found one, yet. To grab the latest from SVN, have a look at the code.google.com site setup for
GeekTool. For some more insight to how the code works visit the CodeProject
article.
Download the latest
source to see what is going on.
0.5.2
- Code cleanup and refactor.
- Post-build task to automatically generate the executable and source zip files.
- Fixed a bug where if an instance was locked it would disappear when a mouse clicked and dragged over it.
- Moved general code into a common asssembly that is automatically integrated into the regular executable.
- Handle the case where a process takes longer to execute than the timeout to call the process again.
- Explicitedly set the floor for the timerInterval to 2 seconds to also mitigate the above from happening.
- Add GPL license and update the Readme file.
0.5
- Disable the GeekTool icons when a user is ALT-TABing.
- Case-sensitivity option for regex.
0.4
- Multiple instances of GeekTool windows with one executable.
0.3
-Regex to only display interested content.
-Templates with explicit groups for greater flexibility.
0.2
- Negative coordinates.
- Transparancy.
- Lock the position.
- Opacity.
- Error handling for unspecified settings.
0.1
- Initial version that just output the entire result from the process to the screen.
- Set color, font, size, location.