- case 0x3f: return @"Fn";
- case 0x36: return NSLocalizedString(@"Right ⌘", @"keyboard key");
- case 0x37: return NSLocalizedString(@"Left ⌘", @"keyboard key");
- case 0x38: return NSLocalizedString(@"Left ⇧", @"keyboard key");
- case 0x39: return @"⇪";
- case 0x3a: return NSLocalizedString(@"Left ⌥", @"keyboard key");
- case 0x3b: return NSLocalizedString(@"Left ⌃", @"keyboard key");
- case 0x3c: return NSLocalizedString(@"Right ⇧", @"keyboard key");
- case 0x3d: return NSLocalizedString(@"Right ⌃", @"keyboard key");
- case 0x3e: return NSLocalizedString(@"Right ⌥", @"keyboard key");
+ case kVK_Home: return @"↖";
+ case kVK_PageUp: return @"⇞";
+ case kVK_End: return @"↘";
+ case kVK_PageDown: return @"⇟";
+
+ case kVK_ForwardDelete: return @"⌦";
+ case kVK_Delete: return @"⌫";
+
+ case kVK_Tab: return @"⇥";
+ case kVK_Return: return @"↩";
+ case kVK_Space: return @"␣";
+
+ case kVK_ANSI_A: return @"A";
+ case kVK_ANSI_B: return @"B";
+ case kVK_ANSI_C: return @"C";
+ case kVK_ANSI_D: return @"D";
+ case kVK_ANSI_E: return @"E";
+ case kVK_ANSI_F: return @"F";
+ case kVK_ANSI_G: return @"G";
+ case kVK_ANSI_H: return @"H";
+ case kVK_ANSI_I: return @"I";
+ case kVK_ANSI_J: return @"J";
+ case kVK_ANSI_K: return @"K";
+ case kVK_ANSI_L: return @"L";
+ case kVK_ANSI_M: return @"M";
+ case kVK_ANSI_N: return @"N";
+ case kVK_ANSI_O: return @"O";
+ case kVK_ANSI_P: return @"P";
+ case kVK_ANSI_Q: return @"Q";
+ case kVK_ANSI_R: return @"R";
+ case kVK_ANSI_S: return @"S";
+ case kVK_ANSI_T: return @"T";
+ case kVK_ANSI_U: return @"U";
+ case kVK_ANSI_V: return @"V";
+ case kVK_ANSI_W: return @"W";
+ case kVK_ANSI_X: return @"X";
+ case kVK_ANSI_Y: return @"Y";
+ case kVK_ANSI_Z: return @"Z";
+ case kVK_ANSI_LeftBracket: return @"[";
+ case kVK_ANSI_RightBracket: return @"]";
+ case kVK_ANSI_Backslash: return @"\\";
+ case kVK_ANSI_Semicolon: return @";";
+ case kVK_ANSI_Quote: return @"'";
+ case kVK_ANSI_Comma: return @",";
+ case kVK_ANSI_Period: return @".";
+ case kVK_ANSI_Slash: return @"/";