Posts

Showing posts with the label opensource

Choo choo, get on the Key-Train

Image
Well I've done it again, started another open source project . Renata and I want Victor to learn how to touch type, but these days, it's hard to find a school that teaches just that. So I looked at what available in open source and found KTouch .  It's pretty good however I found some issues with it: The lecture files aren't very obvious. It's not clear, for example, that it has already loaded the default lecture file. The keyboard is rather plain looking. The scrolling text area you type in is nifty, but gets in the way for advanced users.  My typing speed is limited to how fast it can scroll back.  Also, as you get near the end of the line it's becomes difficult to see what characters are coming up, slowing you down and creating additional errors. Like many other typing tutor programs, it shows only one line of text at a time, it's not obvious how many lines you have left to do. The first time I ran it I thought it was going to go on forever. It doe...

Keyboard Monitor is being used

I saw this week that Meet the Gimp is using my keyboard monitor program and gave me nice plug as well. It was thrill, but bittersweet, since key-mon still doesn't support the Wacom table (and I don't know how to fix it ). I also feel it could look a little better (at least that I can fix).

Additions to key-mon

Image
I've been busy and did lots of updates to key-mon , my keyboard status monitor. The big news is that it's now resizable! Normal size: Small size: Larger size: It can be scaled to any size not just three, here it is at 2x without the mouse and showing the meta (Windows) key: Heathenx is helping me get nicer looking images, especially at smaller sizes. For the really small sizes I needed to change the look a bit,  so now I have two sets of SVG files, one for the normal size and another for the smaller size. Creating the different sizes was a bit of a pain. GTK wants to read the svg from disk so any changes made to svg needs to be dumped to a temporary file.  Also GTK doesn't seem to have a parameter to load and resize, so I end up manipulating the svg so that it is scaled larger or smaller. The extra work was worth it, I think.  Some screencasts today are high resolution, so the key status monitor will be tiny.  Other screen casts are very small, ...

Created another open source utility key-mon

Image
This weekend I was watching screencasters.heathenx.org a video podcast about Inkscape with the  Miro player. Heathenx had to apologize that his key status monitor wasn't displaying mouse activity.  This wasn't the first time I've seen problems with this utility, earlier in the year Meet the Gimp also had some problems getting it to work. I downloaded the program  and put in on my machine, and sure enough the mouse wasn't working for me either. Looking at the output, it complained that I have more than one mouse and it was going to pick the last one.  It lied, I looked at the code and it actually picked the the first one. I changed the code so that it did pick the last mouse and it worked.  I thought of submitting a patch, but I realized that arbitrarily picking the last one might break the program for others for which it was working. To my delight the code was written in Python, using PyGTK . It wasn't even that much code, I could probably write a simil...

Update to clipboard-modifier

Image
Of my tools that I've written, the one I use most often is clipboard-modifier . I have it on my panel so that it's only one click away. I had longtime desire to make this tool more flexible, before I would have to always modify the code in order to have it do something different. Now each plugin can add wxPython widgets on the dialog, thus they can control their own state and parameters. Perhaps the most useful is the ability to send the clipbard (via stdin) to any program and then update the clipboard from the program's output. A good example is sorting the clipboard. Another is filtering it through grep, say. The program still needs more polish, but it's already very useful, for me.

I'm now a Vi user

Image
I've used my fair share of text editors including Emacs for 2 years and Eclipse several years. My favorite open source program has always been Scite , and I still have it on my launch panel. But now I'm a vi man. I tried to go back to Emacs , but it takes so long to get used to and there are too many funny keystrokes. Emacs users tend to get an Emacs Pinky from using the Ctrl key so much, which was not a problem I was looking forward to. Emacs also seems to have too many choices, too many cool downloads to get, each of which slows down the startup time. I liked Scite because the keyboard was setup similar to Visual Studviio, which I had used for years. It is also a solid program that is very customizable. Also, being open source is great, I even contributed some code to the project. But after reading this article I decided to give vim another try. What got me interested again was the suggestion to always be in 'normal' mode and to be in insert mode only for short...

And now, for something completely different

Image
I've launched another Python * open source program called mm2notes . I can sure pick those product names can't I: I've launched mm2s5 , xml2ddl , wxOptParse maybe I should work for HP so I can name their products like the "HP xw9300". In my defense, at least my names are easy to google. Anyway, the idea is to take notes during a meeting using the excellent FreeMind program, and my software will convert those notes into a nicely formatted "meeting minutes". The cool part is that even if you fill the nodes of the mind-map under different locations at different times, the program will unroll these nodes based on the time the node was created. I guess a picture will help out. Look at the FreeMind document which is a little hard to understand and the meeting notes, which is organized by time.

MyZones launched

Image
I've posted another open source Python program called MyZones . I basically had the desire to know what time it is in another timezone and feel confident that the answer is true. By using pytz , I feel much more confidant that I will always have the correct time for the various timezones. The program is simple and simply works, but I have some additional things I'd like to add. Right now you can change the time in any timezone shown and the clock will stop updating and all the other zones will be synchronized correctly. But changing the time is a little clumzy, maybe a dropdown of hours in 30 minute increments might be nicer. The program is a little plain, could use some sprucing up and wxPython has analog clocks and "digital" displays that I can use for that purpose. I think I've caught an OpenSource bug, I keep writing these little programs.