FancyKeyboard 2.01

November 2, 2000
Daniel Wesslén

Installation

  1. Move the FancyKeyboard file to anywhere you like.
  2. Copy FancyKeyFilter to /boot/home/config/add-ons/input_server/filters/ (link provided)
  3. Select an appropriate AT_Keyboard_Info... file from the Keyboards directory, rename it to AT_Keyboard_Info (no suffix) and copy it to /boot/home/config/settings/ (link provided)
  4. Run FancyKeyboard once so that BeOS knows that it exists.
  5. Restart the input server. (Reboot your computer or type /system/servers/input_server -q in a terminal.)
  6. Thats it.

Usage

FancyKeyboard responds to keystrokes. To use it you should have a keyboard with at least some of the keys Mute, Volume Down, Volume Up, Play/Pause, Stop, Eject, Next Track, and Previous Track.
If you don't have these keys on your keyboard but would like to use FancyKeyboard anyway you will need a way to send BMessages to it. The program 'hey' or SpicyKeys will do.

FunctionKey(s)BMessage
Mute Mute 'mute'
Volume Up Volume Up 'volu'
Volume DownVolume Down 'vold'
Play/Pause Play/Pause 'play'
Stop Stop 'stop'
Next Track Next Track 'next'
Previous TrackPrevious Track 'prev'
First Track Shift-Previous Track'frst'
Last Track Shift-Next Track 'last'
Play SelectionShift-Play 'psel'
Add Selection To PlaylistControl-Play 'asel'
Shuffle PlaylistWindow-Play 'rand'
Empty PlaylistEject / Shift-Stop'ejct'

"Play Selection" will add the selected files in the currently active Tracker window to the playlist and start playing. (So will "Play" when the playlist is empty.)

Troubleshooting

USB keyboards do not work.
If you have a keyboard with the required keys that is not listed as supported, first try using the AT_Keyboard_Info files for other keyboards. If that doesn't work, read http://www.be.com/developers/bmessage/issue10.html#ei for instructions on how to make your own AT_Keyboard_Info. Use the keycodes found in the Common Keycodes file. If you do this I would really appreciate it if you send the file to me so it can be included in the next release of FancyKeyboard.

Warning

Launching hundreds of files "in one go" from Tracker is never a good idea, it will take a long time and possible crash the app_server.
If you want to play your entire collection of audio files, don't just select them and press enter.
Empty FancyKeyboard's playlist (press Eject / Shift-Stop), select the files and then press Play (or simply press Shift-Play). This way you can load thusands of files without problems.
Tip: If you really want to load all your audio files, make a query to find them and then open the query with FancyKeyboard.

License

FancyKeyboard is freeware, do anything you feel like with it. As usual I will not be held responsible if it crashes your computer, eats your hamster, or anything else.

Version History

2.01 Added AT_Keyboard_Info for Trust Direct Access Keyboard, thanks to Gornauth.
2.0 Interface improvements.
Queries can be used as playlists.
Playlists don't have to be loaded as the only file.
Playlists of playlists are allowed.
Now consumes zero CPU time when paused.
Many invisible improvements.
The no name keyboard have been identified as HP One-Touch Internet Keyboard, thanks to Andreas Johansson.
1.12 No longer crashes when you try to play a non-audio file.
1.11 Fixed a bug in FancyKeyFilter that made the input_server crash for some people.
Player only quits automatically when launched from the input_server add-on.
Now supports the unified SoundPlay/CL-Amp playlist signature.
1.1 Added support for SoundPlay and CL-Amp playlists.
Added support for the Eject key.
Made the player quit automatically if it hasn't been used for a while.
Standardized common keycodes.
1.03 Included AT_Keyboard_Info for LiteOn and Packard Bell Multimedia keyboards, thanks to Almar van Merwijk and Elias Johansson.
1.02 Included AT_Keyboard_Info for one kind of no name keyboard, thanks to Samuel Holst.
1.01 Fixed the "Did not find system mixer" problem.
Included AT_Keyboard_Info for EagleTouch Media Pro, Yahoo! keyboards. Thanks to Serkan Onuran and Marco Nelissen.
1.0 First public release.