/usr/share/common-lisp/source/clx/keysyms.lisp is in cl-clx-sbcl 0.7.4.20160323-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 | ;;; -*- Mode:Lisp; Package:XLIB; Syntax:COMMON-LISP; Base:10; Lowercase:YES -*-
;;; Define lisp character to keysym mappings
;;;
;;; TEXAS INSTRUMENTS INCORPORATED
;;; P.O. BOX 2909
;;; AUSTIN, TEXAS 78769
;;;
;;; Copyright (C) 1987 Texas Instruments Incorporated.
;;;
;;; Permission is granted to any individual or institution to use, copy, modify,
;;; and distribute this software, provided that this complete copyright and
;;; permission notice is maintained, intact, in all copies and supporting
;;; documentation.
;;;
;;; Texas Instruments Incorporated provides this software "as is" without
;;; express or implied warranty.
;;;
(in-package :xlib)
(define-keysym-set :latin-1 (keysym 0 0) (keysym 0 255))
(define-keysym-set :latin-2 (keysym 1 0) (keysym 1 255))
(define-keysym-set :latin-3 (keysym 2 0) (keysym 2 255))
(define-keysym-set :latin-4 (keysym 3 0) (keysym 3 255))
(define-keysym-set :kana (keysym 4 0) (keysym 4 255))
(define-keysym-set :arabic (keysym 5 0) (keysym 5 255))
(define-keysym-set :cyrillic (keysym 6 0) (keysym 6 255))
(define-keysym-set :greek (keysym 7 0) (keysym 7 255))
(define-keysym-set :tech (keysym 8 0) (keysym 8 255))
(define-keysym-set :special (keysym 9 0) (keysym 9 255))
(define-keysym-set :publish (keysym 10 0) (keysym 10 255))
(define-keysym-set :apl (keysym 11 0) (keysym 11 255))
(define-keysym-set :hebrew (keysym 12 0) (keysym 12 255))
(define-keysym-set :thai (keysym 13 0) (keysym 13 255))
(define-keysym-set :korean (keysym 14 0) (keysym 14 255))
(define-keysym-set :latin-5 (keysym 15 0) (keysym 15 255))
(define-keysym-set :latin-6 (keysym 16 0) (keysym 16 255))
(define-keysym-set :latin-7 (keysym 17 0) (keysym 17 255))
(define-keysym-set :latin-8 (keysym 18 0) (keysym 18 255))
(define-keysym-set :latin-9 (keysym 19 0) (keysym 19 255))
(define-keysym-set :currency (keysym 32 0) (keysym 32 255))
(define-keysym-set :|3270| (keysym 253 0) (keysym 253 255))
(define-keysym-set :xkb (keysym 254 0) (keysym 254 255))
(define-keysym-set :keyboard (keysym 255 0) (keysym 255 255))
(define-keysym :character-set-switch character-set-switch-keysym)
(define-keysym :left-shift left-shift-keysym)
(define-keysym :right-shift right-shift-keysym)
(define-keysym :left-control left-control-keysym)
(define-keysym :right-control right-control-keysym)
(define-keysym :caps-lock caps-lock-keysym)
(define-keysym :shift-lock shift-lock-keysym)
(define-keysym :left-meta left-meta-keysym)
(define-keysym :right-meta right-meta-keysym)
(define-keysym :left-alt left-alt-keysym)
(define-keysym :right-alt right-alt-keysym)
(define-keysym :left-super left-super-keysym)
(define-keysym :right-super right-super-keysym)
(define-keysym :left-hyper left-hyper-keysym)
(define-keysym :right-hyper right-hyper-keysym)
(define-keysym #\space 032)
(define-keysym #\! 033)
(define-keysym #\" 034)
(define-keysym #\# 035)
(define-keysym #\$ 036)
(define-keysym #\% 037)
(define-keysym #\& 038)
(define-keysym #\' 039)
(define-keysym #\( 040)
(define-keysym #\) 041)
(define-keysym #\* 042)
(define-keysym #\+ 043)
(define-keysym #\, 044)
(define-keysym #\- 045)
(define-keysym #\. 046)
(define-keysym #\/ 047)
(define-keysym #\0 048)
(define-keysym #\1 049)
(define-keysym #\2 050)
(define-keysym #\3 051)
(define-keysym #\4 052)
(define-keysym #\5 053)
(define-keysym #\6 054)
(define-keysym #\7 055)
(define-keysym #\8 056)
(define-keysym #\9 057)
(define-keysym #\: 058)
(define-keysym #\; 059)
(define-keysym #\< 060)
(define-keysym #\= 061)
(define-keysym #\> 062)
(define-keysym #\? 063)
(define-keysym #\@ 064)
(define-keysym #\A 065 :lowercase 097)
(define-keysym #\B 066 :lowercase 098)
(define-keysym #\C 067 :lowercase 099)
(define-keysym #\D 068 :lowercase 100)
(define-keysym #\E 069 :lowercase 101)
(define-keysym #\F 070 :lowercase 102)
(define-keysym #\G 071 :lowercase 103)
(define-keysym #\H 072 :lowercase 104)
(define-keysym #\I 073 :lowercase 105)
(define-keysym #\J 074 :lowercase 106)
(define-keysym #\K 075 :lowercase 107)
(define-keysym #\L 076 :lowercase 108)
(define-keysym #\M 077 :lowercase 109)
(define-keysym #\N 078 :lowercase 110)
(define-keysym #\O 079 :lowercase 111)
(define-keysym #\P 080 :lowercase 112)
(define-keysym #\Q 081 :lowercase 113)
(define-keysym #\R 082 :lowercase 114)
(define-keysym #\S 083 :lowercase 115)
(define-keysym #\T 084 :lowercase 116)
(define-keysym #\U 085 :lowercase 117)
(define-keysym #\V 086 :lowercase 118)
(define-keysym #\W 087 :lowercase 119)
(define-keysym #\X 088 :lowercase 120)
(define-keysym #\Y 089 :lowercase 121)
(define-keysym #\Z 090 :lowercase 122)
(define-keysym #\[ 091)
(define-keysym #\\ 092)
(define-keysym #\] 093)
(define-keysym #\^ 094)
(define-keysym #\_ 095)
(define-keysym #\` 096)
(define-keysym #\a 097)
(define-keysym #\b 098)
(define-keysym #\c 099)
(define-keysym #\d 100)
(define-keysym #\e 101)
(define-keysym #\f 102)
(define-keysym #\g 103)
(define-keysym #\h 104)
(define-keysym #\i 105)
(define-keysym #\j 106)
(define-keysym #\k 107)
(define-keysym #\l 108)
(define-keysym #\m 109)
(define-keysym #\n 110)
(define-keysym #\o 111)
(define-keysym #\p 112)
(define-keysym #\q 113)
(define-keysym #\r 114)
(define-keysym #\s 115)
(define-keysym #\t 116)
(define-keysym #\u 117)
(define-keysym #\v 118)
(define-keysym #\w 119)
(define-keysym #\x 120)
(define-keysym #\y 121)
(define-keysym #\z 122)
(define-keysym #\{ 123)
(define-keysym #\| 124)
(define-keysym #\} 125)
(define-keysym #\~ 126)
(progn ;; Semi-standard characters
(define-keysym #\rubout (keysym 255 255)) ; :tty
(define-keysym #\tab (keysym 255 009)) ; :tty
(define-keysym #\linefeed (keysym 255 010)) ; :tty
(define-keysym #\page (keysym 009 227)) ; :special
(define-keysym #\return (keysym 255 013)) ; :tty
(define-keysym #\backspace (keysym 255 008)) ; :tty
)
;;; these keysym definitions are only correct if the underlying lisp's
;;; definition of characters between 160 and 255 match latin1 exactly.
;;; If the characters are in some way locale-dependent (as, I believe,
;;; in Allegro8) or are treated as opaque without any notions of
;;; graphicness or case (as in cmucl and openmcl) then defining these
;;; keysyms is either not useful or wrong. -- CSR, 2006-03-14
#+sbcl
(progn
(do ((i 160 (+ i 1)))
((>= i 256))
(if (or (<= #xc0 i #xd6)
(<= #xd8 i #xde))
(define-keysym (code-char i) i :lowercase (+ i 32))
(define-keysym (code-char i) i))))
#+(or lispm excl)
(progn ;; Nonstandard characters
(define-keysym #\escape (keysym 255 027)) ; :tty
)
#+ti
(progn
(define-keysym #\Inverted-exclamation-mark 161)
(define-keysym #\american-cent-sign 162)
(define-keysym #\british-pound-sign 163)
(define-keysym #\Currency-sign 164)
(define-keysym #\Japanese-yen-sign 165)
(define-keysym #\Yen 165)
(define-keysym #\Broken-bar 166)
(define-keysym #\Section-symbol 167)
(define-keysym #\Section 167)
(define-keysym #\Diaresis 168)
(define-keysym #\Umlaut 168)
(define-keysym #\Copyright-sign 169)
(define-keysym #\Copyright 169)
(define-keysym #\Feminine-ordinal-indicator 170)
(define-keysym #\Angle-quotation-left 171)
(define-keysym #\Soft-hyphen 173)
(define-keysym #\Shy 173)
(define-keysym #\Registered-trademark 174)
(define-keysym #\Macron 175)
(define-keysym #\Degree-sign 176)
(define-keysym #\Ring 176)
(define-keysym #\Plus-minus-sign 177)
(define-keysym #\Superscript-2 178)
(define-keysym #\Superscript-3 179)
(define-keysym #\Acute-accent 180)
(define-keysym #\Greek-mu 181)
(define-keysym #\Paragraph-symbol 182)
(define-keysym #\Paragraph 182)
(define-keysym #\Pilcrow-sign 182)
(define-keysym #\Middle-dot 183)
(define-keysym #\Cedilla 184)
(define-keysym #\Superscript-1 185)
(define-keysym #\Masculine-ordinal-indicator 186)
(define-keysym #\Angle-quotation-right 187)
(define-keysym #\Fraction-1/4 188)
(define-keysym #\One-quarter 188)
(define-keysym #\Fraction-1/2 189)
(define-keysym #\One-half 189)
(define-keysym #\Fraction-3/4 190)
(define-keysym #\Three-quarters 190)
(define-keysym #\Inverted-question-mark 191)
(define-keysym #\Multiplication-sign 215)
(define-keysym #\Eszet 223)
(define-keysym #\Division-sign 247)
)
#+ti
(progn ;; There are no 7-bit ascii representations for the following
;; European characters, so use int-char to create them to ensure
;; nothing is lost while sending files through the mail.
(define-keysym (int-char 192) 192 :lowercase 224)
(define-keysym (int-char 193) 193 :lowercase 225)
(define-keysym (int-char 194) 194 :lowercase 226)
(define-keysym (int-char 195) 195 :lowercase 227)
(define-keysym (int-char 196) 196 :lowercase 228)
(define-keysym (int-char 197) 197 :lowercase 229)
(define-keysym (int-char 198) 198 :lowercase 230)
(define-keysym (int-char 199) 199 :lowercase 231)
(define-keysym (int-char 200) 200 :lowercase 232)
(define-keysym (int-char 201) 201 :lowercase 233)
(define-keysym (int-char 202) 202 :lowercase 234)
(define-keysym (int-char 203) 203 :lowercase 235)
(define-keysym (int-char 204) 204 :lowercase 236)
(define-keysym (int-char 205) 205 :lowercase 237)
(define-keysym (int-char 206) 206 :lowercase 238)
(define-keysym (int-char 207) 207 :lowercase 239)
(define-keysym (int-char 208) 208 :lowercase 240)
(define-keysym (int-char 209) 209 :lowercase 241)
(define-keysym (int-char 210) 210 :lowercase 242)
(define-keysym (int-char 211) 211 :lowercase 243)
(define-keysym (int-char 212) 212 :lowercase 244)
(define-keysym (int-char 213) 213 :lowercase 245)
(define-keysym (int-char 214) 214 :lowercase 246)
(define-keysym (int-char 215) 215)
(define-keysym (int-char 216) 216 :lowercase 248)
(define-keysym (int-char 217) 217 :lowercase 249)
(define-keysym (int-char 218) 218 :lowercase 250)
(define-keysym (int-char 219) 219 :lowercase 251)
(define-keysym (int-char 220) 220 :lowercase 252)
(define-keysym (int-char 221) 221 :lowercase 253)
(define-keysym (int-char 222) 222 :lowercase 254)
(define-keysym (int-char 223) 223)
(define-keysym (int-char 224) 224)
(define-keysym (int-char 225) 225)
(define-keysym (int-char 226) 226)
(define-keysym (int-char 227) 227)
(define-keysym (int-char 228) 228)
(define-keysym (int-char 229) 229)
(define-keysym (int-char 230) 230)
(define-keysym (int-char 231) 231)
(define-keysym (int-char 232) 232)
(define-keysym (int-char 233) 233)
(define-keysym (int-char 234) 234)
(define-keysym (int-char 235) 235)
(define-keysym (int-char 236) 236)
(define-keysym (int-char 237) 237)
(define-keysym (int-char 238) 238)
(define-keysym (int-char 239) 239)
(define-keysym (int-char 240) 240)
(define-keysym (int-char 241) 241)
(define-keysym (int-char 242) 242)
(define-keysym (int-char 243) 243)
(define-keysym (int-char 244) 244)
(define-keysym (int-char 245) 245)
(define-keysym (int-char 246) 246)
(define-keysym (int-char 247) 247)
(define-keysym (int-char 248) 248)
(define-keysym (int-char 249) 249)
(define-keysym (int-char 250) 250)
(define-keysym (int-char 251) 251)
(define-keysym (int-char 252) 252)
(define-keysym (int-char 253) 253)
(define-keysym (int-char 254) 254)
(define-keysym (int-char 255) 255)
)
#+lispm ;; Nonstandard characters
(progn
(define-keysym #\center-dot (keysym 183)) ; :latin-1
(define-keysym #\down-arrow (keysym 008 254)) ; :technical
(define-keysym #\alpha (keysym 007 225)) ; :greek
(define-keysym #\beta (keysym 007 226)) ; :greek
(define-keysym #\and-sign (keysym 008 222)) ; :technical
(define-keysym #\not-sign (keysym 172)) ; :latin-1
(define-keysym #\epsilon (keysym 007 229)) ; :greek
(define-keysym #\pi (keysym 007 240)) ; :greek
(define-keysym #\lambda (keysym 007 235)) ; :greek
(define-keysym #\gamma (keysym 007 227)) ; :greek
(define-keysym #\delta (keysym 007 228)) ; :greek
(define-keysym #\up-arrow (keysym 008 252)) ; :technical
(define-keysym #\plus-minus (keysym 177)) ; :latin-1
(define-keysym #\infinity (keysym 008 194)) ; :technical
(define-keysym #\partial-delta (keysym 008 239)) ; :technical
(define-keysym #\left-horseshoe (keysym 011 218)) ; :apl
(define-keysym #\right-horseshoe (keysym 011 216)) ; :apl
(define-keysym #\up-horseshoe (keysym 011 195)) ; :apl
(define-keysym #\down-horseshoe (keysym 011 214)) ; :apl
(define-keysym #\double-arrow (keysym 008 205)) ; :technical
(define-keysym #\left-arrow (keysym 008 251)) ; :technical
(define-keysym #\right-arrow (keysym 008 253)) ; :technical
(define-keysym #\not-equals (keysym 008 189)) ; :technical
(define-keysym #\less-or-equal (keysym 008 188)) ; :technical
(define-keysym #\greater-or-equal (keysym 008 190)) ; :technical
(define-keysym #\equivalence (keysym 008 207)) ; :technical
(define-keysym #\or-sign (keysym 008 223)) ; :technical
(define-keysym #\integral (keysym 008 191)) ; :technical
;; break isn't null
;; (define-keysym #\null (keysym 255 107)) ; :function
(define-keysym #\clear-input (keysym 255 011)) ; :tty
(define-keysym #\help (keysym 255 106)) ; :function
(define-keysym #\refresh (keysym 255 097)) ; :function
(define-keysym #\abort (keysym 255 105)) ; :function
(define-keysym #\resume (keysym 255 098)) ; :function
(define-keysym #\end (keysym 255 087)) ; :cursor
;;#\universal-quantifier
;;#\existential-quantifier
;;#\circle-plus
;;#\circle-cross same as #\circle-x
)
#+genera
(progn
;;#\network
;;#\symbol-help
(define-keysym #\lozenge (keysym 009 224)) ; :special
(define-keysym #\suspend (keysym 255 019)) ; :tty
(define-keysym #\function (keysym 255 032)) ; :function
(define-keysym #\square (keysym 010 231)) ; :publishing
(define-keysym #\circle (keysym 010 230)) ; :publishing
(define-keysym #\triangle (keysym 010 232)) ; :publishing
(define-keysym #\scroll (keysym 255 086)) ; :cursor
(define-keysym #\select (keysym 255 096)) ; :function
(define-keysym #\complete (keysym 255 104)) ; :function
)
#+ti
(progn
(define-keysym #\terminal (keysym 255 032)) ; :function
(define-keysym #\system (keysym 255 096)) ; :function
(define-keysym #\center-arrow (keysym 255 80))
(define-keysym #\left-arrow (keysym 255 081)) ; :cursor
(define-keysym #\up-arrow (keysym 255 082)) ; :cursor
(define-keysym #\right-arrow (keysym 255 083)) ; :cursor
(define-keysym #\down-arrow (keysym 255 084)) ; :cursor
(define-keysym #\end (keysym 255 087)) ; :cursor
(define-keysym #\undo (keysym 255 101)) ; :function
(define-keysym #\break (keysym 255 107))
(define-keysym #\keypad-space (keysym 255 128)) ; :keypad
(define-keysym #\keypad-tab (keysym 255 137)) ; :keypad
(define-keysym #\keypad-enter (keysym 255 141)) ; :keypad
(define-keysym #\f1 (keysym 255 145)) ; :keypad
(define-keysym #\f2 (keysym 255 146)) ; :keypad
(define-keysym #\f3 (keysym 255 147)) ; :keypad
(define-keysym #\f4 (keysym 255 148)) ; :keypad
(define-keysym #\f1 (keysym 255 190)) ; :keypad
(define-keysym #\f2 (keysym 255 191)) ; :keypad
(define-keysym #\f3 (keysym 255 192)) ; :keypad
(define-keysym #\f4 (keysym 255 193)) ; :keypad
(define-keysym #\keypad-plus (keysym 255 171)) ; :keypad
(define-keysym #\keypad-comma (keysym 255 172)) ; :keypad
(define-keysym #\keypad-minus (keysym 255 173)) ; :keypad
(define-keysym #\keypad-period (keysym 255 174)) ; :keypad
(define-keysym #\keypad-0 (keysym 255 176)) ; :keypad
(define-keysym #\keypad-1 (keysym 255 177)) ; :keypad
(define-keysym #\keypad-2 (keysym 255 178)) ; :keypad
(define-keysym #\keypad-3 (keysym 255 179)) ; :keypad
(define-keysym #\keypad-4 (keysym 255 180)) ; :keypad
(define-keysym #\keypad-5 (keysym 255 181)) ; :keypad
(define-keysym #\keypad-6 (keysym 255 182)) ; :keypad
(define-keysym #\keypad-7 (keysym 255 183)) ; :keypad
(define-keysym #\keypad-8 (keysym 255 184)) ; :keypad
(define-keysym #\keypad-9 (keysym 255 185)) ; :keypad
(define-keysym #\keypad-equal (keysym 255 189)) ; :keypad
(define-keysym #\f1 (keysym 255 192)) ; :function
(define-keysym #\f2 (keysym 255 193)) ; :function
(define-keysym #\f3 (keysym 255 194)) ; :function
(define-keysym #\f4 (keysym 255 195)) ; :function
(define-keysym #\network (keysym 255 214))
(define-keysym #\status (keysym 255 215))
(define-keysym #\clear-screen (keysym 255 217))
(define-keysym #\left (keysym 255 218))
(define-keysym #\middle (keysym 255 219))
(define-keysym #\right (keysym 255 220))
(define-keysym #\resume (keysym 255 221))
(define-keysym #\vt (keysym 009 233)) ; :special ;; same as #\delete
)
#+ti
(progn ;; Explorer specific characters
(define-keysym #\Call (keysym 131)) ; :latin-1
(define-keysym #\Macro (keysym 133)) ; :latin-1
(define-keysym #\Quote (keysym 142)) ; :latin-1
(define-keysym #\Hold-output (keysym 143)) ; :latin-1
(define-keysym #\Stop-output (keysym 144)) ; :latin-1
(define-keysym #\Center (keysym 156)) ; :latin-1
(define-keysym #\no-break-space (keysym 160)) ; :latin-1
(define-keysym #\circle-plus (keysym 13)) ; :latin-1
(define-keysym #\universal-quantifier (keysym 20)) ; :latin-1
(define-keysym #\existential-quantifier (keysym 21)) ; :latin-1
(define-keysym #\circle-cross (keysym 22)) ; :latin-1
)
|