diff options
author | dkf <donal.k.fellows@manchester.ac.uk> | 2010-01-06 18:37:35 (GMT) |
---|---|---|
committer | dkf <donal.k.fellows@manchester.ac.uk> | 2010-01-06 18:37:35 (GMT) |
commit | 078fd483b608ea19f2d47f36f5a6a8a3a1c04405 (patch) | |
tree | eb752269f6622bc209b2f65910151a86a2369d2a /library/tk.tcl | |
parent | 1a6ac30b077e52ba1da9ac22a8d38356ece00cec (diff) | |
download | tk-078fd483b608ea19f2d47f36f5a6a8a3a1c04405.zip tk-078fd483b608ea19f2d47f36f5a6a8a3a1c04405.tar.gz tk-078fd483b608ea19f2d47f36f5a6a8a3a1c04405.tar.bz2 |
Centralize the definitions of what keys do particular types of left and right
movements in entries and text widgets. They vary between platforms!
Diffstat (limited to 'library/tk.tcl')
-rw-r--r-- | library/tk.tcl | 45 |
1 files changed, 44 insertions, 1 deletions
diff --git a/library/tk.tcl b/library/tk.tcl index d80feb0..c73d110 100644 --- a/library/tk.tcl +++ b/library/tk.tcl @@ -3,7 +3,7 @@ # Initialization script normally executed in the interpreter for each Tk-based # application. Arranges class bindings for widgets. # -# RCS: @(#) $Id: tk.tcl,v 1.89 2010/01/04 01:36:14 patthoyts Exp $ +# RCS: @(#) $Id: tk.tcl,v 1.90 2010/01/06 18:37:37 dkf Exp $ # # Copyright (c) 1992-1994 The Regents of the University of California. # Copyright (c) 1994-1996 Sun Microsystems, Inc. @@ -374,6 +374,19 @@ switch -exact -- [tk windowingsystem] { event add <<ContextMenu>> <Button-2> } + event add <<NextChar>> <Right> + event add <<SelectNextChar>> <Shift-Right> + event add <<PrevChar>> <Left> + event add <<SelectPrevChar>> <Shift-Left> + event add <<NextWord>> <Control-Right> + event add <<SelectNextWord>> <Shift-Control-Right> + event add <<PrevWord>> <Control-Left> + event add <<SelectPrevWord>> <Shift-Control-Left> + event add <<LineStart>> <Home> + event add <<SelectLineStart>> <Shift-Home> + event add <<LineEnd>> <End> + event add <<SelectLineEnd>> <Shift-End> + # Some OS's define a goofy (as in, not <Shift-Tab>) keysym that is # returned when the user presses <Shift-Tab>. In order for tab # traversal to work, we have to add these keysyms to the PrevWindow @@ -401,6 +414,19 @@ switch -exact -- [tk windowingsystem] { event add <<Undo>> <Control-Key-z> <Control-Lock-Key-Z> event add <<Redo>> <Control-Key-y> <Control-Lock-Key-Y> event add <<ContextMenu>> <Button-3> + + event add <<NextChar>> <Right> + event add <<SelectNextChar>> <Shift-Right> + event add <<PrevChar>> <Left> + event add <<SelectPrevChar>> <Shift-Left> + event add <<NextWord>> <Control-Right> + event add <<SelectNextWord>> <Shift-Control-Right> + event add <<PrevWord>> <Control-Left> + event add <<SelectPrevWord>> <Shift-Control-Left> + event add <<LineStart>> <Home> + event add <<SelectLineStart>> <Shift-Home> + event add <<LineEnd>> <End> + event add <<SelectLineEnd>> <Shift-End> } "aqua" { event add <<Cut>> <Command-Key-x> <Key-F2> <Control-Lock-Key-X> @@ -411,6 +437,23 @@ switch -exact -- [tk windowingsystem] { event add <<Undo>> <Command-Key-z> <Control-Lock-Key-Z> event add <<Redo>> <Command-Key-y> <Control-Lock-Key-Y> event add <<ContextMenu>> <Button-2> + + # Official bindings + # See http://support.apple.com/kb/HT1343 + event add <<NextChar>> <Right> + event add <<SelectNextChar>> <Shift-Right> + event add <<PrevChar>> <Left> + event add <<SelectPrevChar>> <Shift-Left> + event add <<NextWord>> <Option-Right> + event add <<SelectNextWord>> <Shift-Option-Right> + event add <<PrevWord>> <Option-Left> + event add <<SelectPrevWord>> <Shift-Option-Left> + event add <<SelectLineStart>> <Shift-Home> <Shift-Command-Left> + event add <<SelectLineEnd>> <Shift-End> <Shift-Command-Right> + # Not official, but logical extensions of above. Also derived from + # bindings present in MS Word on OSX. + event add <<LineStart>> <Home> <Command-Left> + event add <<LineEnd>> <End> <Command-Right> } } |