February 25, 2005

A Couple iTunes Scripts

Because I’m an Apple whore and I now have an iPod Shuffle (which rocks, by the way) I have had to write a couple scripts to correct shit. The first thing I fixed is the underscores in Justin’s track info (he’s scared of spaces):

The second thing I wrote was to correct the genre mistakes on an artist-by-artist basis. Both of these scripts rip off the “Make Playlist From Artist” script that comes in the iTunes collection.

My apologies that they seem to be delivered as text. I can modify the .htaccess file as soon as I know what it should read. Let me know if you like ‘em or use ‘em. :)

Posted by FusionGyro at 12:36 AM | Comments (0) | TrackBack

June 28, 2004

Slashdot Viewer for Mac OS

To learn REALbasic, the software used at MatterForm where I hopefully will be working, I downloaded the demo version and implemented the famous Slashdot Story viewer. The result is available here though you will need REALbasic to use it, which means you either need a Mac or Windows copy of the compiler. I may compile it and distribute a nicer version of it later on as I'm getting to know REALbasic, we shall see.

Linguistically, there isn't much special about REALbasic. It's a strongly-typed, single-inheritance OO language. It has both builtin types and objects. The builtin types are Integer, String, Float, Object, and Color, but I might be leaving out a few numeric types. I think having color as a builtin is interesting, but only something a GUI-oriented language would do. I find it strange to have to declare all my variables in BASIC, too. Apart from that, the API seems well-designed though I wish documentation came in a better format than some kind of huge PDF. HTML would be nice. I have been spoiled by Python's nice documentation, particularly the Library Reference. The compiler apparently targets Windows, Mac OS 9/X and Linux though there is no version of the software for Linux (leading me to believe it isn't self-hosting ;). Oh, and it has the g-d-forsaken “New” operator.

I had intended to also write this program in Apple's XCode IDE in Objective-C, a sensible if disgusting language which should be preferred over C++ by all right-thinking people. Unfortunately, I simply didn't have enough time this weekend to do them both; rest assured it is also on the platter. So enjoy this version if you can, I may provide a binary if I get to install REALbasic on my laptop because of my job, we shall see.

Posted by FusionGyro at 07:29 AM

June 21, 2004

PUtils: Image Management Software

It's a well-known fact that I have an impressive porn archive on my computer. People often ask me, “Hey Dan! You have an impressive porn archive on your computer! How do you keep it so well-organized?”

The answer, my friends, (and I'm sure you can see this coming) is software! And lots of it! Well, the most recently written batch I created for the sole purpose of keeping my directories in order and my file names consistent. That software, the P-Utils is finally rated safe for public consumption. Let me know if you use it or find it useful. If you have any questions about the finer points of porn management, I would be more than happy to lend my expertise in the matter, whether you have traditional home porn management problems, or enterprise-class IBM e-Server-level porn issues. I am sure I can help. :)

Posted by FusionGyro at 04:55 AM

June 20, 2004

B3M: Background Menu Generator for Blackbox

B3M is basically done pending bug removal (if anyone finds any). Feel free to download it and let me know if you like it or use it.

All it does is parse an image directory and its subdirectories and produce a menu which mirrors the structure (and does a small amount of name beautification).

Here is a sample run of it on my box, by executing b3m.py ~/wallpaper.

[submenu] (Wallpaper)
  [exec] (Agni1600) {Esetroot -f '/home/fusion/wallpaper/agni1600.jpg'}
  [exec] (Alpine1280) {Esetroot -f '/home/fusion/wallpaper/alpine1280.jpg'}
  [exec] (Arctica1280) {Esetroot -f '/home/fusion/wallpaper/arctica1280.jpg'}
  [exec] (Binary1280) {Esetroot -f '/home/fusion/wallpaper/binary1280.jpg'}
  [exec] (Core1600) {Esetroot -f '/home/fusion/wallpaper/core1600.jpg'}
  [exec] (Default) {Esetroot -f '/home/fusion/wallpaper/default.jpg'}
  [exec] (Eventide1280) {Esetroot -f '/home/fusion/wallpaper/eventide1280.jpg'}
  [exec] (Grotto) {Esetroot -f '/home/fusion/wallpaper/grotto.jpg'}
  [exec] (Grotto1600) {Esetroot -f '/home/fusion/wallpaper/grotto1600.jpg'}
  [exec] (Locus1600) {Esetroot -f '/home/fusion/wallpaper/locus1600.jpg'}
  [exec] (Nuclear) {Esetroot -f '/home/fusion/wallpaper/nuclear.png'}
  [exec] (Satori1280) {Esetroot -f '/home/fusion/wallpaper/satori1280.jpg'}
  [exec] (Solus1280) {Esetroot -f '/home/fusion/wallpaper/solus1280.jpg'}
  [exec] (Source1280) {Esetroot -f '/home/fusion/wallpaper/source1280.jpg'}

Posted by FusionGyro at 06:39 PM