Intelligently Recommending Key Bindings on Physical Keyboards with - - PowerPoint PPT Presentation

intelligently recommending key bindings on physical
SMART_READER_LITE
LIVE PREVIEW

Intelligently Recommending Key Bindings on Physical Keyboards with - - PowerPoint PPT Presentation

Intelligently Recommending Key Bindings on Physical Keyboards with Demonstrations in Emacs Shudan Zhong 1 Hong Xu 2 sdz@berkeley.edu, hongx@usc.edu March 18, 2019 1 University of California, Berkeley 2 University of Southern California the 24th


slide-1
SLIDE 1

Intelligently Recommending Key Bindings on Physical Keyboards with Demonstrations in Emacs

Shudan Zhong1 Hong Xu2 sdz@berkeley.edu, hongx@usc.edu March 18, 2019

1University of California, Berkeley 2University of Southern California

the 24th International Conference on Intelligent User Interfaces (IUI) Marina del Ray, CA, USA

slide-2
SLIDE 2

Executive Summary

  • Key bindings are the main means to interact with a computer with a

physical keyboard.

  • Different key bindings can lead to drastically different user experience

and productivity.

  • Surprisingly, research on recommender systems for key bindings are

lacking.

  • We propose the fjrst (to the best of our knowledge) such

recommender system and demonstrate it in Emacs.

Zhong and Xu Recommending Key Bindings on Physical Keyboards 1 / 14

slide-3
SLIDE 3

Agenda

Key Bindings on Physical Keyboards The Emacs Key Binding Recommender System (EKBRS) as a Demonstration Details of the Emacs Key Binding Recommender System (EKBRS) Empirical Evaluation Conclusion

Zhong and Xu Recommending Key Bindings on Physical Keyboards 2 / 14

slide-4
SLIDE 4

Agenda

Key Bindings on Physical Keyboards The Emacs Key Binding Recommender System (EKBRS) as a Demonstration Details of the Emacs Key Binding Recommender System (EKBRS) Empirical Evaluation Conclusion

slide-5
SLIDE 5

What Are Key Bindings?

  • Key bindings defjne how users interact with computers via physical

keyboards.

  • (Classic) examples:
  • Copy: Ctrl +

c

  • Paste: Ctrl +

v

  • Save: Ctrl +

s

  • Applications defjne their own key bindings.

Zhong and Xu Recommending Key Bindings on Physical Keyboards 3 / 14

slide-6
SLIDE 6

Key Bindings Are Important

Key bindings play essential roles in many professional applications.

(a) Programming (b) Computer-Aided Design (c) Professional Gaming

Image sources: (a) http://blog.markpearl.co.za/Ultimate-Developer-Keyboard (b) https://allaboutcad.com/tutorial-create-a-command-alias-keyboard-shortcut/ (c) https://www.logitechg.com/en-us/products/gaming-mice/g600-mmo-gaming-mouse.html Zhong and Xu Recommending Key Bindings on Physical Keyboards 4 / 14

slide-7
SLIDE 7

Key Bindings Are Important

Different key bindings can lead to drastically different productivity and user experience.

  • An absurd example:

for moving down and for moving up.

Image source: https://i.redd.it/al15957ctaky.jpg Zhong and Xu Recommending Key Bindings on Physical Keyboards 5 / 14

slide-8
SLIDE 8

Key Bindings Are Important

Different key bindings can lead to drastically different user experience.

  • In browsers,

Space

is commonly used for scrolling one page down. Users can comfortably sit back and tap the spacious

Space

.

Image source: https: //softwarerecs.stackexchange.com/questions/19804/browser-plugin-to-change-the-amount-of-scroll-on-space-key Zhong and Xu Recommending Key Bindings on Physical Keyboards 6 / 14

slide-9
SLIDE 9

Key Bindings Are Important

Different key bindings can lead to drastically different productivity and user experience.

Caps Lock Shift Shift

(a) qwerty

Caps Lock Shift Shift

(b) Dvorak

Shift Shift

(c) Colemak

Ctrl + z , Ctrl + x , Ctrl + c , Ctrl + v

Image source: (a) https://commons.wikimedia.org/wiki/File:KB_United_States.svg (b) https://commons.wikimedia.org/wiki/File:KB_United_States_Dvorak.svg (c) https://commons.wikimedia.org/wiki/File:KB_US-Colemak.svg Zhong and Xu Recommending Key Bindings on Physical Keyboards 7 / 14

slide-10
SLIDE 10

Intelligently Recommending Key Bindings

  • Although key bindings are important, surprisingly, research on

applying recommender systems to key bindings on physical keyboards is lacking.

  • We propose the fjrst (to the best of our knowledge) recommender

system that recommends key bindings.

  • We demonstrate such the recommender system in Emacs.

Zhong and Xu Recommending Key Bindings on Physical Keyboards 8 / 14

slide-11
SLIDE 11

Agenda

Key Bindings on Physical Keyboards The Emacs Key Binding Recommender System (EKBRS) as a Demonstration Details of the Emacs Key Binding Recommender System (EKBRS) Empirical Evaluation Conclusion

slide-12
SLIDE 12

Why Demonstrate in Emacs?

  • Key bindings matter in Emacs: It heavily exploits key bindings in its

user interface.

  • Extensive customizability:
  • Emacs is a Lisp machine (Lisp interpreter + Lisp library + user interface).
  • Sequences of key strokes can be effectively bound to invoke virtually

any existing/user-defjned Lisp function.

  • It allows sophisticated sequence of key strokes in key bindings, e.g.,

Ctrl + u Ctrl + x s .

Zhong and Xu Recommending Key Bindings on Physical Keyboards 9 / 14

slide-13
SLIDE 13

Agenda

Key Bindings on Physical Keyboards The Emacs Key Binding Recommender System (EKBRS) as a Demonstration Details of the Emacs Key Binding Recommender System (EKBRS) Empirical Evaluation Conclusion

slide-14
SLIDE 14

Emacs Key Binding Recommender System (EKBRS)

Lisp function describe-variable function-function module word-suffjx module posterior-word-suffjx prior-word-suffjx Prefjx Suffjx

Ctrl + h v

combine recommends recommends recommends

Zhong and Xu Recommending Key Bindings on Physical Keyboards 10 / 14

slide-15
SLIDE 15

Emacs Key Binding Recommender System (EKBRS)

prior-word-suffjx posterior-word-suffjx function-function Exploit relation- ship between suffjces, English words suffjces, English words Lisp functions, Lisp functions Relationship derived from Prior knowledge Key binding database Key binding database Example next-line/previous-line is bound to Ctrl + n / Ctrl + p . Lisp functions with “buffer” in their names are often bound by a key sequence with

b .

Most help-related Lisp functions are bound by a key sequence with prefjx Ctrl + h .

Zhong and Xu Recommending Key Bindings on Physical Keyboards 11 / 14

slide-16
SLIDE 16

Agenda

Key Bindings on Physical Keyboards The Emacs Key Binding Recommender System (EKBRS) as a Demonstration Details of the Emacs Key Binding Recommender System (EKBRS) Empirical Evaluation Conclusion

slide-17
SLIDE 17

Setup

  • We used the default global key binding database in vanilla Emacs 26.1.
  • 391 key bindings after removing key bindings involving keys that are
  • utside the main area of a qwerty keyboard.
  • Evaluation:
  • Leave-one-out strategy: In each round, we temporarily remove one key

binding (for a Lisp function ℓ) from the key binding database.

  • We let EKBRS recommend n = 1 . . . 5 key bindings for ℓ. The key binding

is recovered if the removed key binding is among the recommended key bindings.

  • We use the percentage of recovery as an evaluation metric.

Zhong and Xu Recommending Key Bindings on Physical Keyboards 12 / 14

slide-18
SLIDE 18

Results

1 2 3 4 5

n

0.5 0.6 0.7 0.8 0.9 1.0

Percentage of Recovery

0.62 0.79 0.89 0.93 0.95 0.64 0.80 0.88 0.92 0.95 0.63 0.82 0.88 0.90 0.91 0.63 0.76 0.83 0.89 0.92

dice embedding-n embedding-s embedding-sd

(a) Prefjxes

1 2 3 4 5

n

0.0 0.2 0.4 0.6 0.8

Percentage of Recovery

0.21 0.38 0.48 0.49 0.49 0.22 0.34 0.39 0.43 0.44 0.29 0.48 0.62 0.65 0.67

prior-word-suffix posterior-word-suffix combined

(b) Suffjces

1 2 3 4 5

n

0.0 0.1 0.2 0.3 0.4 0.5

Percentage of Recovery

0.18 0.31 0.37 0.41 0.43 0.20 0.27 0.33 0.36 0.37 0.22 0.28 0.33 0.35 0.35 0.19 0.25 0.29 0.32 0.33

dice embedding-n embedding-s embedding-sd

(c) Key bindings

Zhong and Xu Recommending Key Bindings on Physical Keyboards 13 / 14

slide-19
SLIDE 19

Agenda

Key Bindings on Physical Keyboards The Emacs Key Binding Recommender System (EKBRS) as a Demonstration Details of the Emacs Key Binding Recommender System (EKBRS) Empirical Evaluation Conclusion

slide-20
SLIDE 20

Conclusion

  • Key bindings for physical keyboards often play critical roles in

productivity and user experience. We need recommender systems for key bindings.

  • We proposed the fjrst (to the best of our knowledge) recommender

system for key bindings, with a demonstration in Emacs.

  • Future work: Develop recommender systems for key bindings in other

contexts.

Zhong and Xu Recommending Key Bindings on Physical Keyboards 14 / 14