Tag Archives: generate

textprint: Visually impressive, in only 18K

You can get graphing and plotting functions in the console from a variety of sources. textprint is easily my favorite for simple data arrays, mostly because it can do this, with only 18K:

2015-04-16-6m47421-textprint-01 2015-04-16-6m47421-textprint-02 2015-04-16-6m47421-textprint-03

textprint takes a flat data file as input, and arranges it graphically to fit the terminal without distorting the image. From there, textprint goes from zero-to-60, in about two seconds.

Because on top of a rather bland plotting display, you have the option to pick between about four or five different graphs, including the bar and column charts you see above, and a couple others.

And then, you can shift those displays along the x or y axes, zoom the displays and even “print” the display to a text file that matches what you see on the screen. (I did see some corruption when trying to zoom in too “close,” though.)

So you have essentially a tool to convert data arrays into visual representations, adjust them to your liking, then “print” them in their new format. And all that in only 18K.

textprint is not without shortcomings, but truth be told, I could sift through anything and find small nits to pick at. Color options would be nice, and while it does have onboard help, there aren’t any flag options that I can see. If I could send commands to textprint and have it spit out a “printed” file without the interface, textprint would be doubly useful.

And to be honest, the title “textprint” is a slight misnomer. That’s going to get lost in the endless array of pdf converters, ASCII readers and document translators that already pepper the ‘web. It needs a more accurate, and more descriptive title.

It’s still exceptionally impressive though. And the fact that it has so many options in such a small space. And seeing that it’s a dozen years old and still working is noteworthy too.

Not in Arch/AUR or Debian that I could find. textprint is bundled with a precompiled binary, but it’s going to look for an ncurses library that didn’t exist on my Arch system. The command to compile it is in the readme.txt file.

starchart: In case you get lost

Before I even tried to build starchart, I checked the time stamps on the files in the source package. It wasn’t encouraging.

I honestly thought something stamped as far back as 15 years ago would hopelessly crash and burn at compile time. But you already know that wasn’t the case. After all, you’re reading this, aren’t you?

2014-05-09-6m47421-starchart-01 2014-05-09-6m47421-starchart-02 2014-05-09-6m47421-starchart-03

Quite right. With a little help from the gd graphics library, I got a program that shows the positions of heavenly objects, and something that will give me a map so I can find my way home.

The best part is, not only does it dump data straight to the screen in a table format, and not only does it generate a PNG file with star positions and constellation markings, but surprise! it also tries to meld those two and give you an ASCIIfied text version drawn in simple line characters.

Attention to detail. I like that. Sadly, and most likely on account of its age, starchart is not in Arch or Debian. So again, as was the case earlier today, you may be required to do a little work to get starchart … working. 🙄

Fair enough. Now all I need is a battery that will allow me to drag my 12-year-old laptop out into the back yard, fire up my 15-year-old star chart software, and wander around in circles wondering which dot is which. 😉

P.S.: I wonder how accurate the data would be for 15-year-old star chart software. … Hmmm. Maybe I’m better off not asking. 😐

ripit: For precise, exacting CD conversions

Among CD ripping tools, I have to say that ripit seems to have its stuff together.


Granted, like some other rippers for the console, ripit primarily relies on some underlying utilities. Depending on your preferences, you can relegate the actual ripping process to cdparanoia, cddda2wav or some other tools.

But ripit has a fantastic number of other options available to it, in addition to the flags passed through to the background utilities. I daresay if you really are keen on controlling the finer points of converting CDs to audio files, ripit might be one of the best choices.

The Arch version, as you can see above, found my optical drive without coaxing, and dashed off to cddb to check the title data.

I did notice that -o flag, which declares a target directory, requires an absolute path, or it assumes you’re ripping to the root directory. By default ripit will leave the target files in your $HOME.

At the end of the day I’m still stuck in an odd place though, in that I don’t have any CDs left and I don’t believe anyone around me still buys them. My homemade backup CD works great with ripit, but after that I’m out of test discs.

But I am sure the worldwide departure from CD-based audio is not over yet. 😉

rig: The random identity generator

I find rig terrifically amusing. I can’t tell you why; I just do.


I can’t wait for the next website that wants me to supply a name and address, probably while trapping me inside a lightbox effect, just to get an e-mail address or a 10 percent-off coupon.

The home page description is marvelously terse and you can learn everything there is to know about rig in a matter of minutes.

You can stick with male or female names, and demand a certain quantity beforehand. I’m not sure why the phone numbers are redacted, but that’s easy to barge through.

It’s a shame that rig, by default, only seems to handle addresses from America, but perhaps a quick look through /usr/share/rig/(whatever).idx will yield some ideas to get around that. Ideally, I’d love it if rig worked like polygen, and let you mold your own address rules.

No matter. rig is good for name generation, address generation and even city location. What you do with it is your business. :mrgreen:

polygen: Good clean grammatical fun

It took me quite a while to get a handle on polygen, but when I finally did, it was worth it.

You see, polygen proves that there’s no written passage so complex that it can’t be broken down into a series of rules and random choices. Here’s a sample of its genius:

The metaphor reveals something deep of the human life. Illustrating
subject matter to the viewer is not artist primary concern; at the same
time the work represents the ultimate symbol of the cycle of life,
it takes more than just visual or acoustic reception to understand
the works, for they are synaesthetic, appealing simultaneously to the
visual, acoustic and physical perceptions of the viewer and captivating
in their precision. This art immerses viewers into the magic by which
paint transforms itself into things being described and back again;
the artist fills seemingly simple images with light and air to evoke a
sense of purity and serenity.

That’s just fantastic. Logical, coherent writing? Yes and no. It sure sounds good. But it was belched forth from the guts of my heartless Thinkpad.

Not just grammar either. Here’s a list of boy band names.

'V Silk
Pick Them
Sideroad Kids
Packstrict Boyz
Take Ten
'P Ten
Five to Nine
Bring Those
Pull It
The Fives

Perfectly believable to me. Here’s more wonderfulness:

We either should better map the development of Information-retrieval
tecnologies, or have to handle ADSL-based engines. We can better release
freeware systems for configuring the development of ambients. We neither
should release the design of hardware servers, nor need to maximize
virtual services in order to test loosely-coupled engines. We either
could better reintegrate the design of artificial intelligence portals,
or will be able to define peer-to-peer controls for implementing the
development of AI.

I think I’m in love. One day you’ll poke hopefully at the button that brings you to this site, and all you’ll find is the name of a console program, a link to a home page and a few lines like this:

Marvellous. Such a tool has long been awaited since Publisher XP
times. Won't disappoint you. ... The utility everybody was so long
expecting. Rather terrific. Do not miss it. The ultimate solution to
all problems. Completely perfect. Such a product hasn't been seen since
Photoshop 1.8a.

See? I told you blogging was an empty-headed waste of time! 😈

For the record, the best way I could get polygen working was to copy the .grm files out of /usr/share/polygen/ and hammer away at them, like this:

polygen -X 10 genius.grm

Output is to STDOUT, but you have the option to redirect it into a file. Sometimes polygen’s grammar rules include HTML formatting, which is either a blessing or a curse, depending on your motives.

Now if you’ll excuse me, I plan to “escape from home and retire in the sea of northern Mexico along with a dog.” Brilliant. 😈

mp3report: We’re not even close to finished yet

The beat goes on. Among esoteric and erstwhile intriguing mp3 accessories is mp3report, which — again, as you might have divined — is really pretty cool.


Fully known as the MP3 Report Generator, this nifty little tool spits out a classy table in HTML, showing all the mp3s within its reach.

All very clever, you say, but I have over 3Tb of mixed and moshed audio files, arranged by genre, artist, album, release, edition, quality and embedded image data, through a series of 4000 folders.

Apparently not a problem, since mp3report can recurse through directories, and carries support for version 1 and 2 id3 tags.

All very clever, you say, but I would like to see more detail in a report.

In that case, I would suggest checking out the documentation, which allows you to customize the report results, adding or subtracting as much data as your little heart desires.

All very clever, you say, but it’s … it’s … it’s old.

Yes, well, it’s true, it technically dates back to 2000, but I could find no rough spots, except when I tried to force-feed it a few ogg files. 🙄

But considering it does most of its work in textmode and only outputs to a file, what exactly are you missing in terminal evolution over the last 14 years?

I found mp3report in the Debian-Ubuntu-Mint chain gang, but not in Arch or AUR. If it’s not in your distro I believe it could just be downloaded and run; I’m hopeless when it comes to perl, but it looks like it only needs mp3::info.

Next up, believe it or not … more mp3-related tools! 😯 🙄