Archive for the ‘my software’ Category

LeMMA 0.8 alpha release

LeMMA 0.8 is now available as an alpha version. A more ‘contemporary’ look-and-feel has been adopted for this version. I’ve also added various usability improvements (e.g. keyboard navigation using arrow keys), and some attempts at supporting the Mac platform better. A new .ini-like configuration file format is used, using the built-in Python config file parsing library, replacing the previous Pickled file format.

If there are any Mac python programmers using this, I’m interested in learning what’s the proper way to package a Mac python application, and any other advice you can give me.

Here’s a screenshot of the new GUI:

Get it from the usual place.


Read Full Post »

Minor enhancement: I finally added an install script for Linux users, and support the saving of settings in ~/.lemma, so you can finally install it into /usr or /usr/local. And along with that, a simple Debian package. I use checkinstall to generate it. I can’t seem to specify Python as a pre-requisite using checkinstall, but the package installs and removes just fine. Go get it now.

Read Full Post »

LeMMA 0.7 is out

One year after my last LeMMA release, here’s version 0.7. It’s a little embarrassing actually, because the last version contained some stupid bugs, especially on the Windows platform, and it was out there for one full year. So version 0.7 is largely a bug fix and “bulletproofing” (I added debug mode and codes for error handling) release. I did squeeze in some minor enhancements though.

Lately I got a couple of emails from folks who got the impression that LeMMA can open any MMA file, in particular the ones that are bundled with MMA. Sorry to disappoint, but that’s not what LeMMA is. LeMMA is meant to just provide an easy way to generate chord progressions. I’m also not certain that it is feasible, or even possible, to create a full-fledged GUI interface to MMA.

Anyway, I hope this release works for all of you, and thanks for the interest!

Read Full Post »

chordcalc.py 0.3

A number of changes for chordcalc 0.3, plus one stupid bug fixed:

  • New: AUTO_REDUCE filter option. If no fingerings can be found, try to progressively omit 5th, omit root, and omit 3rd until fingerings are found. This is useful for instruments with fewer strings playing larger chords.
  • New: NO_OPEN filter option. Reject fingerings with open strings.
  • Fixed: filter options not passed in since version 0.1.
  • Added spaces between strings in fingering, to cater for fingerings with 10th fret and above.
  • Added display of chord structure beside the chord name
  • Added descriptive help text for filter options
  • Restructured core functions to be independent of NOTES, TUNINGS, CHORDTYPE dictionaries (no change to command-line interface)

Read Full Post »

chordcalc.py 0.2

Updated version 0.2 of chordcalc.py available. Changes below:

  • Corrections for some chord definitions
  • Minor changes to error messages
  • Default span values for various instruments
  • Options –position and –span now issue warning and set to default values instead of exiting
  • Option -v now just prints the version and exits. All other options are ignored.
  • Fixed bug with chord name parsing
  • No longer exits when invalid chords are encountered. Proceed to next chord if available.
  • Display the chord notes for each fingering.
  • Chord notes are also displayed for each chord type for –help-chords.

Read Full Post »

chordcalc.py – initial release

I finally wrote that program to generate chord fingerings for any fretted instrument. It’s written in Python and meant to be run at the command-line. It’s quite a pleasure writing this in Python – I was surprised to finish writing the core algorithm in just one morning.

Why another chord generation program when there are so many of them on the web already? Well, a variety of reasons: there doesn’t seem to one in Python yet, I want a command-line version (it’s more efficient in some ways), and I want to be able to fine-tune the algorithms. I can slap on a GUI later. Python’s list manipulation capabilities means that I can support instruments of any number of strings, and in any tuning.

I wrote it on my Ubuntu box, but it should work for any platform that Python runs on. It’s written in Python 2.5. I’m still unsure about moving on to Python 3.0.

Interested folks can download the initial release here: chordcalc.py

Let me know if you find any errors e.g. in the chord definitions.

Read Full Post »

Fixed a problem with LeMMA 0.6 and causes it to incorrectly determine the latest MMA 1.3 as version 1.0 (which has a different command-line switch than the later versions). And since so far no one has sent me any emails complaining that something is broken *touches wood*, I will now remove the alpha status. So go get LeMMA 0.6a now.

Read Full Post »

Older Posts »