adventures logo
adventures in linux programming


microterminal (FPGA)
KeenView driver
Tiny Cobol


TcheLinux 2009
C básico
Linux sob medida
tclslides talk
tclslides talk 2
FSL(P.Alegre) 2003
Forum linux I
Real Time Linux
Americano Batista Linux


GDI printers
SOS Linux
gimp tutorial
hardware projects
free photos
short commands
brazilian keyboard
personal info
html editing
favorite places (links)


Chapeuzinho Vermelho
Linux Pernambuco
Why Linux?
Day after

What's new

November 22, 2009 -- Bibliotheca

Bibliotheca have its own page now, with instructions and tips on its usage. Please read it at the links column (this page at the left side). If you need to manage a large collection of books to fast recall of which book you want, organized in bookshelves, this is the program you were looking for. Its installation is very easy (just copy to anywhere in your path), and ready to organize a bunch of pdfs, chms, postscripts, and dejaview files into a useful virtual library.

November 16, 2009 -- TcheLinux 2009 Presentation Slides

I have been busy the last few days, attending to TcheLinux 2009. My presentation slides are available now.

There is also my program bibliotheca, which is a tcl starkit (you will need tclkit to use it), to organize your virtual library of books in pdf, chm, dejavu, or other formats. In a few days I'll create its own page and post some screenshots, but you will find details about it on the slides above.

November 7, 2009 -- TkCon support for XOTclIDE

I like very much XOTclIDE to browse my XOTcl objects or classes, but TkCon is already part of my development toolset, and XOTclIDE's workspace is no substitute for it. So, here is xotkcon.tcl , a loader for both TkCon and XOTclIDE in one shot. There is an "Extra" menu with "Component Browser" to popup the component browser, of course! You will have to edit this script and replace its first lines with the path to your tkcon.tcl script and the directory where your xotclide was installed.

November 19, 2008 -- Tone exerciser

If you intend to develop "absolute pitch" skills, here is a training program which can play random notes in 1, 2 or 3 octaves, associating each tone with a color (so you will remember and associate in your brain the color with the tone too). The program is a very simple 130 line tcl script. You need Tcl (of course), the Jack sound server (better with qjackctl), Vkeybd (Virtual Keyboard) which is a simple keyboard widget in Tcl too, and FluidSynth. Look for them elsewhere, please. The script uses also Alsa's aconnect utility to connect to the synthesizer and generate tones.

The interface have 3 buttons: "view" to view/hide the piano keys and colors, "play" to start/stop playing random tones, and "exit" to exit, of course! A scale widget allows one to change the speed the tones are changed. There is also, a colored label which changes with the tone played, and you may also play at the piano keys manually, to see its color change. The code is so simple, even a tcl beginner may change it to adopt to his needs. As always, suggestions and contributions are welcomed.

August 14, 2008 -- Brazilian internet restricted!!!

Unfortunatelly, I can't maintain this site anymore, at least not in my own domain, because our government decided to do censorship in our network. I will try to find another way to continue distributing my software, articles, and so on. Please, write to me telling me your suggestions. My currently working e-mail is "rpragana at" (no spam, please!).

August 27, 2007 -- EasyRunner, release 1.02.

A small improvement for EasyRunner, allow us to edit the argument list by choosing the items in comboboxes. Go download the new release first selecting the easyrunner project on the left column of this page.

August 17, 2007 -- EasyRunner, a bugfix release.

If you use Windows, the EasyRunner starkit released yesterday don't show the embedded documentation as it should. The problem is with the native file browser (called by tk_getOpenFile) under Windows. This new release fix the problem by using the same tcl script as the Unix/Linux version for browsing the documentation. Here is the new starkit.

BTW, thank you all that downloaded and tested this program, just one day after the annoucement in I sincerely hope it becomes useful for you. And, if there is something I could do to improve it, please, drop me an e-mail asking what you want.

August 16, 2007 -- EasyRunner, a program launcher.

EasyRunner is a simple program laucher written in tcl/tk, distributed as a starkit. You will need the tclkit executable for your platform. Get it at the TclKit download page at Equi4 Software, by Jean-Claude Wippler.

The documentation, README and LICENSE files, are embedded in the kit itself, as is the full source of the scripts, and configuration file. The easyrunner.kit file must be made writable, or the program will reuse to run, because it stores in itself the configuration. If you want separate configurations, copy the kit with any other name. Here is the EasyRunner starkit. Enjoy!

April 25, 2007 -- Vkeyb generating chords.

My music experiments continues. I like the virtual keyboard by Takashi Iwai (or look in his Alsa page), but there is a simple patch to make it even better, generate chords with a single key. This allows my dead, multimedia keys (found on most $10, keyboards) to good use. Here is the patched script, and below my modified .Xmodmap, which may or may not be suitable for you. In any case, a simple run of xev and press those "exceeding" keys to find its keycodes, and you may do the same. You will need also a keyboard map for the vkeybd program itself.
The new syntax (for chords), is almost the same. You enter the keycode followed not by a single note, but by a comma-separated list (no spaces inside, please). Here are some examples:

{XF86Launch1 0,5,9}
{XF86Launch2 0,4,7}
{XF86Launch3 2,7,11}


Part of my .Xmodmap

de 235 = XF86Launch0
keycode 236 = XF86Launch1
keycode 234 = XF86Launch2
keycode 178 = XF86Launch3
keycode 233 = XF86Launch4
keycode 229 = XF86Launch5
keycode 232 = XF86Launch6
keycode 231 = XF86Launch7
keycode 237 = XF86Launch8
keycode 162 = XF86Launch9
keycode 164 = XF86LaunchA
keycode 144 = XF86LaunchB
keycode 153 = XF86LaunchC
keycode 174 = XF86LaunchD
keycode 176 = XF86LaunchE

!!! Teclas Sleep/Wake/Power
keycode 223 = XF86ZoomIn
keycode 227 = XF86ZoomOut
keycode 222 = XF86Away

April 24, 2007 -- Tclmidi modified.

While trying to experiment with tclmidi, I found that the package available don't compile because of many changes in the g++ compiler and stdc++ libraries. It required many changes in the source to make it compile again, so here it is the modified package. There is nothing new about that, only that now it compiles!

Jul 14, 2006 -- ECLfe slightly improved.

Here is another ECLfe (see previous news item) release: eclfe-0.0.2.tar.gz (7Kb). Please see the enclosed README text file for more info.

I'm doing this as a helper to experiment with ECL, as I'm trying to learn a little more of Lisp. I used to write small tools with xlisp (AutoCad's embedded lisp), some years ago. But this time I decided to try the full power of a Common Lisp, including CLOS, so I installed most free Lisps I found around: SBCL, GCL, Clisp, and of course ECL. What I like more about ECL is its suitability to embed in a C program and its small footprint. I think it would be interesting to have something like "critcl" also for compiling small lisp utilities as a tcl proc... If you think Lisp is nuts, think again. This stuff is very powerfull, much more than most other programming languages, and it is not low level as you may think.

Jul 13, 2006 -- A simple ECL Common Lisp console

Here is a simple ECL Common Lisp console: eclfe.tar.gz (6Kb), written in tcl/tk. It is nice for experimenting with this handy lisp compiler/interpreter, if you don't want to try the same under a cumbersome Slime/Emacs environment. Your input is black, ECL's output is maroon. To repeat some text, select (with the mouse, or with tk's text widget bindings. See "man n text".) and use standard Control-c/Control-v to copy/paste. Start ./eclfe in the same directory as controller.tcl. You will need a preinstalled ECL, or at least the in your library path. You may want to recompile eclfe with the command ./build.

BTW, this software is released on public domain.

May 21, 2006 -- C/Unix course sample code

I'm making available a tar.gz file with sample code which were used on my unix/linux C programming course. The corresponding slides may be found at the left column. Enjoy!

August 8, 2005 -- Article on debugging TinyCobol programs

I have written a short tutorial on how to debug cobol programs, compiled with TinyCobol, by means of the nice DDD, Data Display Debugger, a gdb frontend. Grab it (in portuguese only now) from our cobol compiler development page.

April 29, 2005 -- viscomp for TinyCobol

Maybe you remember my viscomp, a nice frontend to gdb which allows it to debug the TinyCobol compiler parser and code generator. After many hands (and brains) modified the compiler, it became broken. Well, I ressurected it now (simply because I need it!) and it is more beautiful and usable yet. To avoid someone else breaking again the compiler ability to be debugged, I will retain strict control on the cvs updates, in my cvs server of course. (Click on the image to see a full-sized screenshot) If you want to try it, you will require tcl/tk 8.4 or higher installed. The script is at the "utils" directory in TinyCobol tree.

If you don't know how to get my TinyCobol development tree, here are the quick instructions:

cvs login  (leave password blank)
cvs co development

And voilá. Enjoy it!

March 18, 2005 -- tdesk page

tdesk has its own page now, with a new release. The window manager which was handled by two processes now it is a single process, and everything is fast as it should.

(tdesk news removed, see its own page...)

February 13, 2005 -- My desktop of choice

Before anything else, a small benchmark between the most popular desktop alternatives, with the same hardware (an Athlon, 2.2MHz, with 640GB RAM, hard disk SAMSUNG SPI1203N, 120GB). The results follows:
kde 3.225s
gnome 2.815s
xfce 4.25s
As we can see, the clear winner is xfce. But with the adition of the ROX Filler, an interesting file manager that doubles as a desktop manager, and with nice support for drag-and-drop, following the same concepts of unix (small components for doing well specific functions), we have the dream desktop. Well, this is what I have installed now, after many years dedicated to the venerable fvwm2. And this is my suggestion for you!

If you found interesting my backdrop image, it is from Leonardo Da Vinci, and may be retrieved from the Posner library, CMU, inside the book Leonardo da Vinci, technologist; three essays by Ladislao Reti and Bern Dibner. Its an interesting reading by itself, besides featuring many illustrations from the great florentine inventor, painter, and wise man.

January 28, 2005 -- Shaped (and managed) Tk windows

Here is a starkit with sources included for creating non-rectangular toplevels in tk, but allowing the window manager see (manage) your window as well. The alternative, to use the shape extension and "wm overrideredirect" is not very friendly. If you are going to write something like Xmms in tk, this is the ultimate solution of your problems. You only need to have a image supported by tk or the Img extension, with transparent areas as required. It is not needed to create any other bitmap, as the command "setXwinshape" will extract the mask for you and use it to set the shape. Yes, it is really simple!

January 4, 2005 -- UDP experiment

Our next tcl-guide issue is about a simple udp experiment you can do with tcludp. Read it here.

November 29, 2004 -- help browser

Here is a tiny web browser with embedded manual pages of several tcl/tk extensions, based on the TkHtml widget by Richard Hipp, a little enhanced, packaged as a Starpack (for Linux), but may be repackaged for Windows easily.
The browser supports anti-aliased fonts (use a magnifier tool to see), and is able to navigate regular web sites, or look at the source code inside the starpack. Right-click to see html source or to save any embedded file into your filesystem. You may click in images too, to display them, but be careful to not click in binary files, as some may crash the program (I have filtered some, but not all). It was modified from "thelp" by Jean C. Whippler with several additions of mine: thelp.gz (right-click and save as...). Just gunzip it, chmod, and run. No need to install.
Merry Christmas and Happy 2005 to all!

November 1, 2004 -- Simple TclMagick build

TclMagick is the tcl interface to the admirable Wand API of ImageMagick. Unfortunatelly, its build process is troublesome and more complex than really needed, and the resulting library is larger, because it links to almost everything already available from the standard Magick libraries. So here is my take on this subject, along with a small bug fix on TclMagick.c source, and a very simple compile script, just one line, instead of the several autoconf/automake (buggy) scripts found in the original package. There is also included a simple test script that show how to avoid the (also buggy) TkMagick library. You don't need this other library, as the original API have everything needed to convert images from magick format to Tk's in both ways (by using "readblob" and "writeblob" API calls). This is linux-only, but easy to do the same under Windows, in case you need it.

October 18, 2004 -- A Xft enabled tclkit

When trying Knoppix for preparing a demo to some friends, I found that almost all fonts are available only thru Xft API calls. Which means that most of my fine tcl/tk GUIs display only old crappy fonts. Time to correct the situation! I have built a new tclkit, by backporting the new font stuff from tcl8.5 (which do not build into a tclkit for now), and my programs show fine now, with anti-aliased fonts (the same as Firefox, for instance) and everyting else!

Here is the gzipped binary for Linux. (please, click and "save as...", about 1MB)

BTW, Knoppix also have the classical problem "X server is insecure", that don't allow us to use tkinspect or a tkcon connected to other running applications. I have fixed this also. If you are interested in the patches (for Knoppix to allow tk's "send" command to work), and also if you need the sources of the modified tk for build yourself the new tclkit, please drop me a line. Please, notice this is not the official distributions of tclkit. In that case, please go to Equi4, Jean Claude Whippler's site. I'm just a happy hacker, too much Tcl addicted :-)

October 14, 2004 -- Tcl/tk GUIs for TinyCobol

The latest release of tctcl (library for interfacing TC with tcl/tk) is available in our cobol section. It was ready since last April, but only today we are delivering it, because of the release of a tutorial (in portuguese only) by Fernando Wuthstrack about its usage, in the ClubeCobol site.

August 18, 2004 -- More tcltk course slides

You will find in our tcltk section new slides, from a course I presented online (with our VebKlaso system). The slides are in portuguese only (but with plenty of pictures).

June 23, 2004 -- Printer driver from Switzerland

I became surprised to receive a message from Belfaux (a nice small town in Switzerland, see image), telling me a new printer driver is born. Yes, Nicolas Boichat was able to tame this other monster, a Canon LBP-660 winprinter. I'm also glad because my articles on winprinters reverse engineering have found such a good use.
Keep up the good work, Nicolas, and congratulations!

March 24, 2004 -- Interfacing TinyCobol with tcl/tk

If you are a cobol programmer and uses our TinyCobol compiler this is the easiest way to get a nice GUI (graphical interface) in your programs. Get this small package and design your GUIs by using Visual Tcl, or most of the others tcl/tk visual builders.

February 5, 2004 -- Tcl/tk online course

I will be presenting a 30 hour Tcl/tk course online, in portuguese. You will learn how to improve your productivity by ten fold, by using this nice language. And with our VebKlaso technology, you will listen to the teacher, while seeing images, animations, and several other effects in real time, even it your net connection is a low-speed one (modem).

See more information at Tcl/tk course annoucement (portuguese only, sorry).

December 29, 2003 -- My Christmas/New Year gift

All right, dear reader. I'm late with my Christmas gift this year, so please accept my apologies. Here it is: a package for drawing beautiful skins in tcl/tk. Happy New Year!

December 23, 2003 -- VebKlaso stable, with many features

My live presentation system VebKlaso became much better now, It is easy to use and I've been writing some documentation for it (with many pictures). The player now support skins, the kind of "place where you want, whatever form, round, ireegular, or square" buttons and other widgets. The synchronization of audio with images is fully automatic. The teacher, or presenter's GUI became easier and more intuitive, far better than it used to be a couple months ago. I'm planning to present some for free short courses on things like C, tcl, or even systems administration, just to make people aware of this nice product I have. Unfortunatelly, I do not feel confident in giving a presentation in english, so this offer is mostly for brazilians (and maybe other portuguese speakers), as we can give a presentation everywhere with this tool. Are you interested?

Aug 28, 2003 -- the future

After a long time I decided my Adventures site need to be completelly remade. I have been looking around for a suitable CMS (Content Management System), such as Zope, Postnuke, and several others. The first candidate would be Zope, probably with Plone (a Zope CMS "product"), but then I discovered my old Pentium-100 with 64MB RAM would not be enough even for 1% of the traffic I already receive daily.

What is really amazing is that a tcl guy like me didn't never noticed the availability of OpenACS and related tools. It is a "tcl to the rescue" solution, that will allow my old machine to fly high!
Wait a little more, and you'll see a revamped Adventures with much more content and facilities, under this marvellous software.

Before the Java fans will suggest me their favorite slow horse, here is a short story of ArsDigita, which created the basis for OpenACS:

The OpenACS is an outgrowth of the ArsDigita Community System. The project began originally to make the ACS work with Postgres, so that the entire stack (AOLserver, Tcl, and database server) could be built using Open Source tools. After ArsDigita went from being a profitable company to taking upon millions in VC funding, and the new management decided to discontinue their Tcl product in favor of a (then) yet-to-be-developed Java version, the OpenACS community took over active development of both the Oracle and Postgres versions. Since then, OpenACS has made numerous advances while ArsDigita imploded in late 2001 and it's remaining assets sold to Red Hat in February of 2002.
R.I.P. ArsDigita, very welcome OpenACS and friends!

Jul 15, 2003 -- Pentax printer 1.0.0 released

After a long time with no more bugs found, it is time to release the Pentax printer driver (thanks Rob Roy, a Pentax engineer, and a good friend, for pointing me that!). Get your full source, under GPL license in my GDI Printers page,

june 8, 2003 -- TinyCobol at FISL-2003

I just arrived from the Fórum Internacional de Software Livre (International Forum of Free Software), 2003 edition, that happened in Porto Alegre - RS, Brazil. I have presented there a talk on current TinyCobol status and the road to the future. See the presentation slides.

Older news




tcl curso flyer



Last updated: 2012/02/29 19:05:37