[BACK]Return to wsksymdef.h CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / dev / wscons

Annotation of src/sys/dev/wscons/wsksymdef.h, Revision 1.59

1.59    ! jmcneill    1: /*     $NetBSD: wsksymdef.h,v 1.58 2007/04/04 14:50:21 mishka Exp $ */
1.2       hannken     2:
                      3: /*-
                      4:  * Copyright (c) 1997 The NetBSD Foundation, Inc.
                      5:  * All rights reserved.
                      6:  *
                      7:  * This code is derived from software contributed to The NetBSD Foundation
                      8:  * by Juergen Hannken-Illjes.
                      9:  *
                     10:  * Redistribution and use in source and binary forms, with or without
                     11:  * modification, are permitted provided that the following conditions
                     12:  * are met:
                     13:  * 1. Redistributions of source code must retain the above copyright
                     14:  *    notice, this list of conditions and the following disclaimer.
                     15:  * 2. Redistributions in binary form must reproduce the above copyright
                     16:  *    notice, this list of conditions and the following disclaimer in the
                     17:  *    documentation and/or other materials provided with the distribution.
                     18:  * 3. All advertising materials mentioning features or use of this software
                     19:  *    must display the following acknowledgement:
                     20:  *     This product includes software developed by the NetBSD
                     21:  *     Foundation, Inc. and its contributors.
                     22:  * 4. Neither the name of The NetBSD Foundation nor the names of its
                     23:  *    contributors may be used to endorse or promote products derived
                     24:  *    from this software without specific prior written permission.
                     25:  *
                     26:  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
                     27:  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
                     28:  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
                     29:  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
                     30:  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
                     31:  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
                     32:  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
                     33:  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
                     34:  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
                     35:  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
                     36:  * POSSIBILITY OF SUCH DAMAGE.
                     37:  */
                     38:
1.1       hannken    39: #ifndef _DEV_WSCONS_WSKSYMDEF_H_
                     40: #define _DEV_WSCONS_WSKSYMDEF_H_
                     41:
                     42: /*
                     43:  * Keysymbols encoded as 16-bit Unicode. Special symbols
                     44:  * are encoded in the private area (0xe000 - 0xf8ff).
                     45:  * Currently only ISO Latin-1 subset is supported.
1.13      hannken    46:  *
                     47:  * This file is parsed from userland. Encode keysyms as:
                     48:  *
                     49:  *     #define KS_[^ \t]* 0x[0-9a-f]*
                     50:  *
                     51:  * and don't modify the border comments.
1.1       hannken    52:  */
                     53:
1.13      hannken    54:
                     55: /*BEGINKEYSYMDECL*/
                     56:
1.1       hannken    57: /*
                     58:  * Group Ascii (ISO Latin1) character in low byte
                     59:  */
                     60:
                     61: #define        KS_BackSpace            0x08
                     62: #define        KS_Tab                  0x09
                     63: #define        KS_Linefeed             0x0a
                     64: #define        KS_Clear                0x0b
                     65: #define        KS_Return               0x0d
                     66: #define        KS_Escape               0x1b
                     67: #define        KS_space                0x20
                     68: #define        KS_exclam               0x21
                     69: #define        KS_quotedbl             0x22
                     70: #define        KS_numbersign           0x23
                     71: #define        KS_dollar               0x24
                     72: #define        KS_percent              0x25
                     73: #define        KS_ampersand            0x26
                     74: #define        KS_apostrophe           0x27
                     75: #define        KS_parenleft            0x28
                     76: #define        KS_parenright           0x29
                     77: #define        KS_asterisk             0x2a
                     78: #define        KS_plus                 0x2b
                     79: #define        KS_comma                0x2c
                     80: #define        KS_minus                0x2d
                     81: #define        KS_period               0x2e
                     82: #define        KS_slash                0x2f
                     83: #define        KS_0                    0x30
                     84: #define        KS_1                    0x31
                     85: #define        KS_2                    0x32
                     86: #define        KS_3                    0x33
                     87: #define        KS_4                    0x34
                     88: #define        KS_5                    0x35
                     89: #define        KS_6                    0x36
                     90: #define        KS_7                    0x37
                     91: #define        KS_8                    0x38
                     92: #define        KS_9                    0x39
                     93: #define        KS_colon                0x3a
                     94: #define        KS_semicolon            0x3b
                     95: #define        KS_less                 0x3c
                     96: #define        KS_equal                0x3d
                     97: #define        KS_greater              0x3e
                     98: #define        KS_question             0x3f
                     99: #define        KS_at                   0x40
                    100: #define        KS_A                    0x41
                    101: #define        KS_B                    0x42
                    102: #define        KS_C                    0x43
                    103: #define        KS_D                    0x44
                    104: #define        KS_E                    0x45
                    105: #define        KS_F                    0x46
                    106: #define        KS_G                    0x47
                    107: #define        KS_H                    0x48
                    108: #define        KS_I                    0x49
                    109: #define        KS_J                    0x4a
                    110: #define        KS_K                    0x4b
                    111: #define        KS_L                    0x4c
                    112: #define        KS_M                    0x4d
                    113: #define        KS_N                    0x4e
                    114: #define        KS_O                    0x4f
                    115: #define        KS_P                    0x50
                    116: #define        KS_Q                    0x51
                    117: #define        KS_R                    0x52
                    118: #define        KS_S                    0x53
                    119: #define        KS_T                    0x54
                    120: #define        KS_U                    0x55
                    121: #define        KS_V                    0x56
                    122: #define        KS_W                    0x57
                    123: #define        KS_X                    0x58
                    124: #define        KS_Y                    0x59
                    125: #define        KS_Z                    0x5a
                    126: #define        KS_bracketleft          0x5b
                    127: #define        KS_backslash            0x5c
                    128: #define        KS_bracketright         0x5d
                    129: #define        KS_asciicircum          0x5e
                    130: #define        KS_underscore           0x5f
                    131: #define        KS_grave                0x60
                    132: #define        KS_a                    0x61
                    133: #define        KS_b                    0x62
                    134: #define        KS_c                    0x63
                    135: #define        KS_d                    0x64
                    136: #define        KS_e                    0x65
                    137: #define        KS_f                    0x66
                    138: #define        KS_g                    0x67
                    139: #define        KS_h                    0x68
                    140: #define        KS_i                    0x69
                    141: #define        KS_j                    0x6a
                    142: #define        KS_k                    0x6b
                    143: #define        KS_l                    0x6c
                    144: #define        KS_m                    0x6d
                    145: #define        KS_n                    0x6e
                    146: #define        KS_o                    0x6f
                    147: #define        KS_p                    0x70
                    148: #define        KS_q                    0x71
                    149: #define        KS_r                    0x72
                    150: #define        KS_s                    0x73
                    151: #define        KS_t                    0x74
                    152: #define        KS_u                    0x75
                    153: #define        KS_v                    0x76
                    154: #define        KS_w                    0x77
                    155: #define        KS_x                    0x78
                    156: #define        KS_y                    0x79
                    157: #define        KS_z                    0x7a
                    158: #define        KS_braceleft            0x7b
                    159: #define        KS_bar                  0x7c
                    160: #define        KS_braceright           0x7d
                    161: #define        KS_asciitilde           0x7e
                    162: #define        KS_Delete               0x7f
                    163:
                    164: #define        KS_nobreakspace         0xa0
                    165: #define        KS_exclamdown           0xa1
                    166: #define        KS_cent                 0xa2
                    167: #define        KS_sterling             0xa3
                    168: #define        KS_currency             0xa4
                    169: #define        KS_yen                  0xa5
                    170: #define        KS_brokenbar            0xa6
                    171: #define        KS_section              0xa7
                    172: #define        KS_diaeresis            0xa8
                    173: #define        KS_copyright            0xa9
                    174: #define        KS_ordfeminine          0xaa
                    175: #define        KS_guillemotleft        0xab
                    176: #define        KS_notsign              0xac
                    177: #define        KS_hyphen               0xad
                    178: #define        KS_registered           0xae
                    179: #define        KS_macron               0xaf
                    180: #define        KS_degree               0xb0
                    181: #define        KS_plusminus            0xb1
                    182: #define        KS_twosuperior          0xb2
                    183: #define        KS_threesuperior        0xb3
                    184: #define        KS_acute                0xb4
                    185: #define        KS_mu                   0xb5
                    186: #define        KS_paragraph            0xb6
                    187: #define        KS_periodcentered       0xb7
                    188: #define        KS_cedilla              0xb8
                    189: #define        KS_onesuperior          0xb9
                    190: #define        KS_masculine            0xba
                    191: #define        KS_guillemotright       0xbb
                    192: #define        KS_onequarter           0xbc
                    193: #define        KS_onehalf              0xbd
                    194: #define        KS_threequarters        0xbe
                    195: #define        KS_questiondown         0xbf
                    196: #define        KS_Agrave               0xc0
                    197: #define        KS_Aacute               0xc1
                    198: #define        KS_Acircumflex          0xc2
                    199: #define        KS_Atilde               0xc3
                    200: #define        KS_Adiaeresis           0xc4
                    201: #define        KS_Aring                0xc5
                    202: #define        KS_AE                   0xc6
                    203: #define        KS_Ccedilla             0xc7
                    204: #define        KS_Egrave               0xc8
                    205: #define        KS_Eacute               0xc9
                    206: #define        KS_Ecircumflex          0xca
                    207: #define        KS_Ediaeresis           0xcb
                    208: #define        KS_Igrave               0xcc
                    209: #define        KS_Iacute               0xcd
                    210: #define        KS_Icircumflex          0xce
                    211: #define        KS_Idiaeresis           0xcf
                    212: #define        KS_ETH                  0xd0
                    213: #define        KS_Ntilde               0xd1
                    214: #define        KS_Ograve               0xd2
                    215: #define        KS_Oacute               0xd3
                    216: #define        KS_Ocircumflex          0xd4
                    217: #define        KS_Otilde               0xd5
                    218: #define        KS_Odiaeresis           0xd6
                    219: #define        KS_multiply             0xd7
                    220: #define        KS_Ooblique             0xd8
                    221: #define        KS_Ugrave               0xd9
                    222: #define        KS_Uacute               0xda
                    223: #define        KS_Ucircumflex          0xdb
                    224: #define        KS_Udiaeresis           0xdc
                    225: #define        KS_Yacute               0xdd
                    226: #define        KS_THORN                0xde
                    227: #define        KS_ssharp               0xdf
                    228: #define        KS_agrave               0xe0
                    229: #define        KS_aacute               0xe1
                    230: #define        KS_acircumflex          0xe2
                    231: #define        KS_atilde               0xe3
                    232: #define        KS_adiaeresis           0xe4
                    233: #define        KS_aring                0xe5
                    234: #define        KS_ae                   0xe6
                    235: #define        KS_ccedilla             0xe7
                    236: #define        KS_egrave               0xe8
                    237: #define        KS_eacute               0xe9
                    238: #define        KS_ecircumflex          0xea
                    239: #define        KS_ediaeresis           0xeb
                    240: #define        KS_igrave               0xec
                    241: #define        KS_iacute               0xed
                    242: #define        KS_icircumflex          0xee
                    243: #define        KS_idiaeresis           0xef
                    244: #define        KS_eth                  0xf0
                    245: #define        KS_ntilde               0xf1
                    246: #define        KS_ograve               0xf2
                    247: #define        KS_oacute               0xf3
                    248: #define        KS_ocircumflex          0xf4
                    249: #define        KS_otilde               0xf5
                    250: #define        KS_odiaeresis           0xf6
                    251: #define        KS_division             0xf7
                    252: #define        KS_oslash               0xf8
                    253: #define        KS_ugrave               0xf9
                    254: #define        KS_uacute               0xfa
                    255: #define        KS_ucircumflex          0xfb
                    256: #define        KS_udiaeresis           0xfc
                    257: #define        KS_yacute               0xfd
                    258: #define        KS_thorn                0xfe
                    259: #define        KS_ydiaeresis           0xff
                    260:
1.39      drochner  261: #define KS_Odoubleacute        0x150
                    262: #define KS_odoubleacute        0x151
                    263: #define KS_Udoubleacute        0x170
                    264: #define KS_udoubleacute        0x171
                    265:
1.1       hannken   266: /*
                    267:  * Group Dead (dead accents)
                    268:  */
                    269:
                    270: #define        KS_dead_grave           0x0300
                    271: #define        KS_dead_acute           0x0301
                    272: #define        KS_dead_circumflex      0x0302
                    273: #define        KS_dead_tilde           0x0303
                    274: #define        KS_dead_diaeresis       0x0308
                    275: #define        KS_dead_abovering       0x030a
                    276: #define        KS_dead_cedilla         0x0327
1.56      christos  277: #define        KS_dead_semi            0x0328
                    278: #define        KS_dead_colon           0x0329
                    279:
                    280: /*
                    281:  * Group Greek
                    282:  */
                    283:
                    284: #define KS_gr_At               0xb6
                    285: #define KS_gr_Et               0xb8
                    286: #define KS_gr_Ht               0xb9
                    287: #define KS_gr_It               0xba
                    288: #define KS_gr_Ot               0xbc
                    289: #define KS_gr_Yt               0xbe
                    290: #define KS_gr_Vt               0xbf
                    291: #define KS_gr_itd              0xc0
                    292: #define KS_gr_A                0xc1
                    293: #define KS_gr_B                0xc2
                    294: #define KS_gr_G                0xc3
                    295: #define KS_gr_D                0xc4
                    296: #define KS_gr_E                0xc5
                    297: #define KS_gr_Z                0xc6
                    298: #define KS_gr_H                0xc7
                    299: #define KS_gr_U                0xc8
                    300: #define KS_gr_I                0xc9
                    301: #define KS_gr_K                0xca
                    302: #define KS_gr_L                0xcb
                    303: #define KS_gr_M                0xcc
                    304: #define KS_gr_N                0xcd
                    305: #define KS_gr_J                0xce
                    306: #define KS_gr_O                0xcf
                    307: #define KS_gr_P                0xd0
                    308: #define KS_gr_R                0xd1
                    309: #define KS_gr_S                0xd3
                    310: #define KS_gr_T                0xd4
                    311: #define KS_gr_Y                0xd5
                    312: #define KS_gr_F                0xd6
                    313: #define KS_gr_X                0xd7
                    314: #define KS_gr_C                0xd8
                    315: #define KS_gr_V                0xd9
                    316: #define KS_gr_Id               0xda
                    317: #define KS_gr_Yd               0xdb
                    318: #define KS_gr_at               0xdc
                    319: #define KS_gr_et               0xdd
                    320: #define KS_gr_ht               0xde
                    321: #define KS_gr_it               0xdf
                    322: #define KS_gr_ytd              0xe0
                    323: #define KS_gr_a                0xe1
                    324: #define KS_gr_b                0xe2
                    325: #define KS_gr_g                0xe3
                    326: #define KS_gr_d                0xe4
                    327: #define KS_gr_e                0xe5
                    328: #define KS_gr_z                0xe6
                    329: #define KS_gr_h                0xe7
                    330: #define KS_gr_u                0xe8
                    331: #define KS_gr_i                0xe9
                    332: #define KS_gr_k                0xea
                    333: #define KS_gr_l                0xeb
                    334: #define KS_gr_m                0xec
                    335: #define KS_gr_n                0xed
                    336: #define KS_gr_j                0xee
                    337: #define KS_gr_o                0xef
                    338: #define KS_gr_p                0xf0
                    339: #define KS_gr_r                0xf1
                    340: #define KS_gr_teliko_s         0xf2
                    341: #define KS_gr_s                0xf3
                    342: #define KS_gr_t                0xf4
                    343: #define KS_gr_y                0xf5
                    344: #define KS_gr_f                0xf6
                    345: #define KS_gr_x                0xf7
                    346: #define KS_gr_c                0xf8
                    347: #define KS_gr_v                0xf9
                    348: #define KS_gr_id               0xfa
                    349: #define KS_gr_yd               0xfb
                    350: #define KS_gr_ot               0xfc
                    351: #define KS_gr_yt               0xfd
                    352: #define KS_gr_vt               0xfe
1.1       hannken   353:
                    354: /*
                    355:  * Group 1 (modifiers)
                    356:  */
                    357:
                    358: #define        KS_Shift_L              0xf101
                    359: #define        KS_Shift_R              0xf102
                    360: #define        KS_Control_L            0xf103
                    361: #define        KS_Control_R            0xf104
                    362: #define        KS_Caps_Lock            0xf105
                    363: #define        KS_Shift_Lock           0xf106
                    364: #define        KS_Alt_L                0xf107
                    365: #define        KS_Alt_R                0xf108
                    366: #define        KS_Multi_key            0xf109
                    367: #define        KS_Mode_switch          0xf10a
                    368: #define        KS_Num_Lock             0xf10b
                    369: #define KS_Hold_Screen         0xf10c
                    370: #define KS_Cmd                 0xf10d
                    371: #define KS_Cmd1                        0xf10e
                    372: #define KS_Cmd2                        0xf10f
1.18      augustss  373: #define KS_Meta_L              0xf110
                    374: #define KS_Meta_R              0xf111
1.22      drochner  375: #define KS_Zenkaku_Hankaku     0xf112  /* Zenkaku/Hankaku toggle */
                    376: #define KS_Hiragana_Katakana   0xf113  /* Hiragana/Katakana toggle */
                    377: #define KS_Henkan_Mode         0xf114  /* Start/Stop Conversion */
                    378: #define KS_Henkan              0xf115  /* Alias for Henkan_Mode */
                    379: #define KS_Muhenkan            0xf116  /* Cancel Conversion */
1.1       hannken   380:
                    381: /*
                    382:  * Group 2 (keypad) character in low byte
                    383:  */
                    384:
                    385: #define        KS_KP_F1                0xf291
                    386: #define        KS_KP_F2                0xf292
                    387: #define        KS_KP_F3                0xf293
                    388: #define        KS_KP_F4                0xf294
                    389: #define        KS_KP_Home              0xf295
                    390: #define        KS_KP_Left              0xf296
                    391: #define        KS_KP_Up                0xf297
                    392: #define        KS_KP_Right             0xf298
                    393: #define        KS_KP_Down              0xf299
                    394: #define        KS_KP_Prior             0xf29a
                    395: #define        KS_KP_Next              0xf29b
                    396: #define        KS_KP_End               0xf29c
                    397: #define        KS_KP_Begin             0xf29d
                    398: #define        KS_KP_Insert            0xf29e
                    399: #define        KS_KP_Delete            0xf29f
                    400:
                    401: #define        KS_KP_Space             0xf220
                    402: #define        KS_KP_Tab               0xf209
                    403: #define        KS_KP_Enter             0xf20d
                    404: #define        KS_KP_Equal             0xf23d
1.32      bjh21     405: #define        KS_KP_Numbersign        0xf223
1.1       hannken   406: #define        KS_KP_Multiply          0xf22a
                    407: #define        KS_KP_Add               0xf22b
                    408: #define        KS_KP_Separator         0xf22c
                    409: #define        KS_KP_Subtract          0xf22d
                    410: #define        KS_KP_Decimal           0xf22e
                    411: #define        KS_KP_Divide            0xf22f
                    412: #define        KS_KP_0                 0xf230
                    413: #define        KS_KP_1                 0xf231
                    414: #define        KS_KP_2                 0xf232
                    415: #define        KS_KP_3                 0xf233
                    416: #define        KS_KP_4                 0xf234
                    417: #define        KS_KP_5                 0xf235
                    418: #define        KS_KP_6                 0xf236
                    419: #define        KS_KP_7                 0xf237
                    420: #define        KS_KP_8                 0xf238
                    421: #define        KS_KP_9                 0xf239
                    422:
                    423: /*
                    424:  * Group 3 (function)
                    425:  */
                    426:
                    427: #define KS_f1                  0xf300
                    428: #define KS_f2                  0xf301
                    429: #define KS_f3                  0xf302
                    430: #define KS_f4                  0xf303
                    431: #define KS_f5                  0xf304
                    432: #define KS_f6                  0xf305
                    433: #define KS_f7                  0xf306
                    434: #define KS_f8                  0xf307
                    435: #define KS_f9                  0xf308
                    436: #define KS_f10                 0xf309
                    437: #define KS_f11                 0xf30a
                    438: #define KS_f12                 0xf30b
                    439: #define KS_f13                 0xf30c
                    440: #define KS_f14                 0xf30d
                    441: #define KS_f15                 0xf30e
                    442: #define KS_f16                 0xf30f
                    443: #define KS_f17                 0xf310
                    444: #define KS_f18                 0xf311
                    445: #define KS_f19                 0xf312
                    446: #define KS_f20                 0xf313
                    447:
                    448: #define KS_F1                  0xf340
                    449: #define KS_F2                  0xf341
                    450: #define KS_F3                  0xf342
                    451: #define KS_F4                  0xf343
                    452: #define KS_F5                  0xf344
                    453: #define KS_F6                  0xf345
                    454: #define KS_F7                  0xf346
                    455: #define KS_F8                  0xf347
                    456: #define KS_F9                  0xf348
                    457: #define KS_F10                 0xf349
                    458: #define KS_F11                 0xf34a
                    459: #define KS_F12                 0xf34b
                    460: #define KS_F13                 0xf34c
                    461: #define KS_F14                 0xf34d
                    462: #define KS_F15                 0xf34e
                    463: #define KS_F16                 0xf34f
                    464: #define KS_F17                 0xf350
                    465: #define KS_F18                 0xf351
                    466: #define KS_F19                 0xf352
                    467: #define KS_F20                 0xf353
                    468:
1.54      martin    469: #define KS_Power               0xf36d
                    470:
1.1       hannken   471: #define KS_Home                        0xf381
                    472: #define KS_Prior               0xf382
                    473: #define KS_Next                        0xf383
                    474: #define KS_Up                  0xf384
                    475: #define KS_Down                        0xf385
                    476: #define KS_Left                        0xf386
                    477: #define KS_Right               0xf387
                    478: #define KS_End                 0xf388
                    479: #define KS_Insert              0xf389
1.7       drochner  480: #define KS_Help                        0xf38a
                    481: #define KS_Execute             0xf38b
                    482: #define KS_Find                        0xf38c
                    483: #define KS_Select              0xf38d
1.46      martin    484: #define KS_Again                0xf38e
                    485: #define KS_Props                0xf38f
                    486: #define KS_Undo                 0xf390
                    487: #define KS_Front                0xf391
                    488: #define KS_Copy                 0xf392
                    489: #define KS_Open                 0xf393
                    490: #define KS_Paste                0xf394
                    491: #define KS_Cut                  0xf395
1.16      augustss  492:
                    493: #define KS_Menu                        0xf3c0
1.17      augustss  494: #define KS_Pause               0xf3c1
                    495: #define KS_Print_Screen                0xf3c2
1.1       hannken   496:
                    497: /*
                    498:  * Group 4 (command)
                    499:  */
                    500:
                    501: #define KS_Cmd_Screen0         0xf400
                    502: #define KS_Cmd_Screen1         0xf401
                    503: #define KS_Cmd_Screen2         0xf402
                    504: #define KS_Cmd_Screen3         0xf403
                    505: #define KS_Cmd_Screen4         0xf404
                    506: #define KS_Cmd_Screen5         0xf405
                    507: #define KS_Cmd_Screen6         0xf406
                    508: #define KS_Cmd_Screen7         0xf407
                    509: #define KS_Cmd_Screen8         0xf408
                    510: #define KS_Cmd_Screen9         0xf409
                    511: #define KS_Cmd_Debugger                0xf420
1.19      drochner  512: #define KS_Cmd_ResetEmul       0xf421
1.21      drochner  513: #define KS_Cmd_ResetClose      0xf422
1.36      takemura  514: #define KS_Cmd_BacklightOn     0xf423
                    515: #define KS_Cmd_BacklightOff    0xf424
                    516: #define KS_Cmd_BacklightToggle 0xf425
                    517: #define KS_Cmd_BrightnessUp    0xf426
                    518: #define KS_Cmd_BrightnessDown  0xf427
                    519: #define KS_Cmd_BrightnessRotate        0xf428
                    520: #define KS_Cmd_ContrastUp      0xf429
                    521: #define KS_Cmd_ContrastDown    0xf42a
                    522: #define KS_Cmd_ContrastRotate  0xf42b
1.49      christos  523: #define KS_Cmd_ScrollFastUp    0xf42c
                    524: #define KS_Cmd_ScrollFastDown  0xf42d
                    525: #define KS_Cmd_ScrollSlowUp    0xf42e
                    526: #define KS_Cmd_ScrollSlowDown  0xf42f
1.59    ! jmcneill  527: #define KS_Cmd_VolumeUp                0xf430
        !           528: #define KS_Cmd_VolumeDown      0xf431
        !           529: #define KS_Cmd_VolumeToggle    0xf432
1.1       hannken   530:
                    531: /*
                    532:  * Group 5 (internal)
                    533:  */
                    534:
                    535: #define KS_voidSymbol          0xf500
                    536:
1.13      hannken   537: /*ENDKEYSYMDECL*/
                    538:
1.1       hannken   539: /*
                    540:  * keysym groups
                    541:  */
                    542:
1.47      fvdl      543: #define KS_GROUP_Mod           0xf100U
                    544: #define KS_GROUP_Keypad                0xf200U
                    545: #define KS_GROUP_Function      0xf300U
                    546: #define KS_GROUP_Command       0xf400U
                    547: #define KS_GROUP_Internal      0xf500U
                    548: #define KS_GROUP_Dead          0xf801U         /* not encoded in keysym */
                    549: #define KS_GROUP_Ascii         0xf802U         /* not encoded in keysym */
                    550: #define KS_GROUP_Keycode       0xf803U         /* not encoded in keysym */
1.6       hannken   551:
1.13      hannken   552: #define KS_NUMKEYCODES 0x1000
                    553: #define KS_KEYCODE(v)  ((v) | 0xe000)
                    554:
1.6       hannken   555: #define KS_GROUP(k)    ((k) >= 0x0300 && (k) < 0x0370 ? KS_GROUP_Dead : \
                    556:                            (((k) & 0xf000) == 0xe000 ? KS_GROUP_Keycode : \
                    557:                              (((k) & 0xf800) == 0xf000 ? ((k) & 0xff00) : \
                    558:                                KS_GROUP_Ascii)))
1.1       hannken   559:
                    560: #define KS_VALUE(k)    (((k) & 0xf000) == 0xe000 ? ((k) & 0x0fff) : \
1.6       hannken   561:                            (((k) & 0xf800) == 0xf000 ? ((k) & 0x00ff) : (k)))
1.1       hannken   562:
                    563: /*
1.35      hannken   564:  * Keyboard types: 8bit encoding, 24bit variant
1.1       hannken   565:  */
                    566:
1.35      hannken   567: #define KB_ENCODING(e)         ((e) & 0x0000ff00)
                    568: #define KB_VARIANT(e)          ((e) & 0xffff00ff)
1.1       hannken   569:
                    570: #define KB_NODEAD              0x0001
1.9       drochner  571: #define KB_DECLK               0x0002  /* DEC LKnnn layout */
1.11      drochner  572: #define KB_LK401               0x0004  /* DEC LK401 instead LK201 */
1.30      tsarna    573: #define KB_SWAPCTRLCAPS                0x0008  /* Swap Left-Control and Caps-Lock */
1.25      drochner  574: #define KB_DVORAK              0x0010  /* Dvorak layout */
1.27      drochner  575: #define KB_METAESC             0x0020  /* generate ESC prefix on ALT-key */
1.31      tsarna    576: #define KB_IOPENER             0x0040  /* f1-f12 -> ESC,f1-f11 */
1.36      takemura  577: #define KB_MACHDEP             0x0080  /* machine dependent */
1.1       hannken   578:
1.51      dsl       579: /*
                    580:  * Define keyboard type and texts all in one table.
                    581:  * Include default variants (and their text form) for sysinst.
                    582:  * Sort (loosely) by country name.
                    583:  */
                    584: #define KB_ENC_FUN(action) \
                    585: action(KB_USER,        0,      0x0100, "user", ,       "User-defined") \
                    586: action(KB_US,  0,      0x0200, "us",   ,       "US-English")   \
                    587: action(KB_UK,  0,      0x0700, "uk",   ,       "UK-English")   \
                    588: action(KB_BE,  0,      0x1300, "be",   ,       "Belgian")      \
                    589: action(KB_DK,  0,      0x0400, "dk",   ,       "Danish")       \
1.52      martti    590: action(KB_FI,  0,      0x0900, "fi",   ,       "Finnish")      \
1.51      dsl       591: action(KB_FR,  0,      0x0600, "fr",   ,       "French")       \
                    592: action(KB_DE, KB_NODEAD,0x0300,        "de",".nodead", "German")       \
1.56      christos  593: action(KB_GR,  0,      0x1400, "gr",   ,       "Greek")        \
1.51      dsl       594: action(KB_HU,  0,      0x0c00, "hu",   ,       "Hungarian")    \
                    595: action(KB_IT,  0,      0x0500, "it",   ,       "Italian")      \
                    596: action(KB_JP,  0,      0x0800, "jp",   ,       "Japanese")     \
                    597: action(KB_NO,  0,      0x0a00, "no",   ,       "Norwegian")    \
                    598: action(KB_PL,  0,      0x0d00, "pl",   ,       "Polish")       \
                    599: action(KB_PT,  0,      0x1100, "pt",   ,       "Portugese")    \
                    600: action(KB_RU,  0,      0x0e00, "ru",   ,       "Russian")      \
                    601: action(KB_ES,  0,      0x0b00, "es",   ,       "Spanish")      \
                    602: action(KB_SV,  0,      0x0900, "sv",   ,       "Swedish")      \
                    603: action(KB_SF,  0,      0x1000, "sf",   ,       "Swiss French") \
                    604: action(KB_SG,  0,      0x0f00, "sg",   ,       "Swiss German") \
                    605: action(KB_UA,  0,      0x1200, "ua",   ,       "Ukrainian")
1.53      augustss  606: #define KB_NONE 0x0000
1.51      dsl       607:
                    608: /* Define all the KB_xx numeric values using above table */
                    609: #define KBF_ENUM(tag, tagf, value, cc, ccf, country) tag=value,
1.56      christos  610: enum { KB_ENC_FUN(KBF_ENUM) KB_NEXT=0x1500 };
1.51      dsl       611:
                    612: /* Define list of KB_xxx and country codes for array initialisation */
                    613: #define KBF_ENCTAB(tag, tagf, value, cc, ccf, country) { tag, cc },
                    614: #define KB_ENCTAB KB_ENC_FUN(KBF_ENCTAB)
1.26      drochner  615:
                    616: #define KB_VARTAB \
1.8       drochner  617:        { KB_NODEAD,    "nodead" }, \
1.11      drochner  618:        { KB_DECLK,     "declk" }, \
1.15      drochner  619:        { KB_LK401,     "lk401" }, \
1.25      drochner  620:        { KB_SWAPCTRLCAPS, "swapctrlcaps" }, \
1.27      drochner  621:        { KB_DVORAK,    "dvorak" }, \
1.31      tsarna    622:        { KB_METAESC,   "metaesc" }, \
1.36      takemura  623:        { KB_IOPENER,   "iopener" }, \
                    624:        { KB_MACHDEP,   "machdep" }
1.1       hannken   625:
                    626: #endif /* !_DEV_WSCONS_WSKSYMDEF_H_ */

CVSweb <webmaster@jp.NetBSD.org>