fix treatment of caps lock in keymap%
Somewhere along the way --- probably in porting the editor classes to Racket --- the caps-lock specification in a keymap string was treated the same as other modifiers, but it is supposed to be neutral when the key string starts with ":". Closes PR 5486, 10347, 10993, 12184 original commit: d3cbea068ad6e64453b5ddd4f12b461aeef54844
This commit is contained in:
parent
2916ffce08
commit
5c61b1f216
|
@ -272,6 +272,8 @@
|
||||||
(if (ctrl . < . 0) "~c:" "")
|
(if (ctrl . < . 0) "~c:" "")
|
||||||
(if (shift . > . 0) "s:" "")
|
(if (shift . > . 0) "s:" "")
|
||||||
(if (shift . < . 0) "~s:" "")
|
(if (shift . < . 0) "~s:" "")
|
||||||
|
(if (caps . > . 0) "l:" "")
|
||||||
|
(if (caps . < . 0) "~l:" "")
|
||||||
(or (hash-ref rev-keylist code)
|
(or (hash-ref rev-keylist code)
|
||||||
(format "~c" code)))])
|
(format "~c" code)))])
|
||||||
(error (method-name 'keymap% 'map-function)
|
(error (method-name 'keymap% 'map-function)
|
||||||
|
@ -384,7 +386,7 @@
|
||||||
(values downs code)])
|
(values downs code)])
|
||||||
(values downs code))])
|
(values downs code))])
|
||||||
(let ([newkey
|
(let ([newkey
|
||||||
(let ([modval (lambda (c)
|
(let ([modval (lambda (c [default-off? default-off?])
|
||||||
(cond
|
(cond
|
||||||
[(memq c downs) 1]
|
[(memq c downs) 1]
|
||||||
[(memq c ups) -1]
|
[(memq c ups) -1]
|
||||||
|
@ -395,7 +397,7 @@
|
||||||
(modval #\a)
|
(modval #\a)
|
||||||
(modval #\m)
|
(modval #\m)
|
||||||
(modval #\d)
|
(modval #\d)
|
||||||
(modval #\l)
|
(modval #\l #f)
|
||||||
others?
|
others?
|
||||||
fname
|
fname
|
||||||
prev-key
|
prev-key
|
||||||
|
|
Loading…
Reference in New Issue
Block a user