Keyboards

Doug Green

on

May 17, 2009

Keyboards

I've been using the Microsoft Ergonomic 4000 keyboard for about a week now, and decided it's not for me. The wrist rest is uncomfortable, and I've discovered that my right hand has been cheating on one particular vi key stroke (it's the "b" to go back a word), and I just can't undo 20 years of muscle memory.

I've spent the better part of a Sunday afternoon now, searching for what to try next, and I can't decide. Here are the options. What do you think?

<?php
  $node
= node_load(1443);

 
$edit = $_POST;
 
$choice = $edit['choice'];
 
$vote = $_POST['vote'];

  if (isset(
$choice) && isset($node->choice[$choice])) {
    if (
$node->allowvotes) {
     
// Record the vote by this user or host.
     
if ($user->uid) {
       
db_query('INSERT INTO {poll_votes} (nid, chorder, uid) VALUES (%d, %d, %d)', $node->nid, $choice, $user->uid);
      }
      else {
       
db_query("INSERT INTO {poll_votes} (nid, chorder, hostname) VALUES (%d, %d, '%s')", $node->nid, $choice, $_SERVER['REMOTE_ADDR']);
      }

     
// Add one to the votes.
     
db_query("UPDATE {poll_choices} SET chvotes = chvotes + 1 WHERE nid = %d AND chorder = %d", $node->nid, $choice);

     
$node->allowvotes = FALSE;
     
$node->choice[$choice]['chvotes']++;
     
cache_clear_all();
     
drupal_set_message(t('Your vote was recorded.'));
    }
    else {
     
drupal_set_message(t("You are not allowed to vote on this poll."), 'error');
    }
  }
  if (
$node->allowvotes) {
    if (
$_POST['op'] == t('Vote')) {
     
poll_vote($node);
    }
    print
preg_replace(
      array(
       
'/ThinkPad UltraNav/',
       
'/Apple Keyboard/',
       
'/Evoluent Ergonomic/',
       
'/Luxeed Dynamic Pixel LED Keyboard/',
       
'/Das Keyboard/',
      ),
      array(
       
'<a href="http://www-307.ibm.com/pc/support/site.wss/MIGR-45868.html">ThinkPad UltraNav</a> - I\'m accustomed to typing on the ThinkPad, but in a desktop, I\'d prefer to NOT have the touchpad',
       
'<a href="http://store.apple.com/us/product/MB110LL/A">Apple</a> - gets lots of rave reviews, but I\'m not a  Mac user',
       
'<a href="http://www.evoluent.com/kb1.html">Evoluent Ergonomic</a> - interesting design that lets righties get to the mouse easier',
       
'<a href="http://www.luxeed.com/product_01.php">Luxeed Dynamic Pixel LED Keyboard</a> - cool, but I\'m not really considering it, just thought I\'d throw it in so others could see it',
       
'<a href="http://daskeyboard.com">Das Keyboard</a> - would have to go with the "Ultimate" for the geek factor.',
      ),
     
drupal_get_form('poll_view_voting', $node, FALSE)
    );
  }
  else {
    print
poll_view_results($node, FALSE, FALSE, FALSE);

    if (isset(
$node->vote) && $node->vote > -1 && user_access('cancel own vote')) {
      print
drupal_get_form('poll_cancel_form', $node->nid);
    }
  }
?>

Voting results

Share it!

After using the Mac keyboard for a week, I'm sold on it and returning the Das (still within my 30 day trial period).  The Das was nice, but the keyboard not being full size was a deal breaker.  And I guess I've typed on laptops for soooo many years, that the Mac keyboard just feels right.

After 2.5 weeks of typing on the Das Keyboard, I'm trying the Mac Keyboard.  I found two problems with the Das keyboard.  First, it's not a full size keyboard, so I kept fat-fingering keys.  Second, one of my desires was to move the mouse closer to my typing, and I've discovered that my keyboard / mouse tray allows me to swing the mouse over the keyboard number pad, but since the Das keyboard is a regular keyboard, it's height was too close to the mouse pad, and I kept accidentally pushing the numeric keys while using the mouse.  Both these problems are solved by the Mac keyboard.

My very first try to use the Mac keyboard failed quickly.  But a later second attempt seems to be more successful.  To use the Mac keyboard on Ubuntu, there are three tweaks I wanted:

  1. The function keys didn't work out of the box.  Put this in /etc/rc.local:
    # enable function keys on the mac keyboard.
    lsusb | grep -i 'Apple Aluminum Keyboard' > /dev/null
    if [ $? -eq 0 ]; then
    echo -n 0x02 > /sys/module/hid/parameters/pb_fnmode
    fi
  2. The alt and command keys are swapped from what I'm used to.  You can control this in Gnome, see Swap Alt + Command Key Ubuntu.

    For the Windows computer, swap these keys using a Scancode Map of 0000 0000 0300 0000 5be0 3800 3800 5be0, this swaps the windows key (e05b) and the alt key (0038).

  3. The INSERT key is replaced by a Mac fn key.  I know there's a solution to this, but haven't figured it out yet.  I'll edit this update once I do.

See also:

There are conflicting reports about using the Mac keyboard with Windows and Ubuntu. Thanks for the input, I decided to go with the Das Keyboard. My wife said that if I get the one without keys, she'll never be able to use my computer ... not really a good thing, when you need her to look something up when away, so I opted for the Professional instead of the Ultimate. I'll report back here after using it for a bit.
After years of clunky hand-me-down external keyboards (like the original iMac keyboard - terrible) this year I sprung for Apple keyboard and haven't regretted it. But I do use a Mac - no experience on how well it works with non-Mac hardware or OS. If you're looking for an external mouse, I can recommend the Logitech MX revolution. If you hunt around you can get it for $75 which is a deal. The killer feature is a weightes flywheel that lets you zoom through very long pages - perfect for getting to the submit button in those looong Drupal forms!
Thanks! I've tried a bunch of the Logitech mouses and mouse-keyboard combo's and decided that the MX revolution just feels best!
i hope you don't have to pay extra to have no key markings on the Das! (the The?) i love the mac keyboards, but i haven't tried other ones. you might want to try it for a week, you can always return it. also, i like trackpads for the same reason that Evoluent moves the number keybad to the left: the mouse is closer.
same price, just geeky
I swear by apple's low profile keyboard, however keys and key placement would probably be a nuisance if you're not on OS X.