hmp3 : an ncurses mp3 player written in Haskell --------------------------------------------------- Dependencies: mpg321 http://mpg321.sourceforge.net/ Building: $ chmod +x configure Setup.hs $ ./Setup.hs configure --prefix=/home/dons $ ./Setup.hs build $ ./Setup.hs install This assumes you have Cabal installed. Cabal is installed by default with newer GHCs. If your Cabal version is too old (v1.0 that comes with GHC 6.4.1 is too old), or if you see: dist/build/hmp3-tmp/cbits/utils.o: No such file or directory errors, then you need to download a newer Cabal version first. Use: To populate a playlist, and start: $ hmp3 ~/mp3/dir/ or $ hmp3 a.mp3 b.mp3 From then on this playlist is saved in ~/.hmp3db, and is reloaded automatically, if you restart hmp3 with no arguments. $ hmp3 Type 'h' to display the help page. The other commands are explained on the help screen, which can be accessed by typing 'h'. Quit with 'q'. Configuration: Colours may be configured at runtime by editing the "~/.hmp3" file. An example would be: Config { hmp3_window = ("brightwhite", "black") , hmp3_helpscreen = ("black", "cyan") , hmp3_titlebar = ("green", "blue") , hmp3_selected = ("brightwhite", "black") , hmp3_cursors = ("black", "cyan") , hmp3_combined = ("black", "cyan") , hmp3_warnings = ("brightwhite", "red") , hmp3_blockcursor = ("black", "darkred") , hmp3_progress = ("cyan", "white") } After editing this file, hit 'l' to have the changes used by hmp3. The keymaps are configurable by adding your own bindings to Config.hs (as are the colours). Edit this file before compilation. Alternatively, you can switch between dark and light settings without recompiling. If you have a light xterm, set HMP_HAS_LIGHT_BG=true in your shell, and hmp3 will use the light color settings by default. Limitations: It only plays mp3 files (and variants supported by mpg{321,123}. So no ogg files for now. This is on the todo list though. It is possible to use mpg123, however it appears to be more error prone, and less stable than mpg321. Platforms and portability: hmp3 has been confirmed to work on: OpenBSD/x86 Linux/x86 FreeBSD/x86 Linux/ppc MacOSX/ppc Irix/mips64 * You need -threaded. * On platforms without a native code generator, you should remove the reference to -fasm in the hmp3.cabal file License: GPL Author: Don Stewart, Tue Jan 15 15:16:55 PST 2008 Contributors: Samuel Bronson Stefan Wehr Tomasz Zielonka David Himmelstrup