From 63d118ba305b2ce65523a11941cec11728fdaf34 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Fri, 3 Jul 2009 17:42:25 +0100 Subject: [PATCH] keyboard shortcuts for set match context --- pctb/TODO | 1 - pctb/dictionary-manager | 31 +++++++++++++++++++++++-------- 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/pctb/TODO b/pctb/TODO index 17c14b1..3324436 100644 --- a/pctb/TODO +++ b/pctb/TODO @@ -1,7 +1,6 @@ add UI option to dictionary-manager to make user specify which dictionary to add multi-context entries to - need to test that it actually works - - add keyboard shortcuts for specifying context install/test dictionary upload/approval write real uploader diff --git a/pctb/dictionary-manager b/pctb/dictionary-manager index cfb4a69..fe79442 100755 --- a/pctb/dictionary-manager +++ b/pctb/dictionary-manager @@ -739,11 +739,25 @@ proc recursor/0 {} { recursor//01 0 } proc recursor/1 {} { recursor//01 1 } proc recursor//01 {z1} { global mul rhsmost_max cols glyphsdone cur_0 cur_1 + global all_contexts upvar #0 cur_$z1 cur .d.csr.csr.l configure -text {adjust} place .d.csr.csr -x [expr {$cur*$mul - 7}] - char_exactly_selctxts [char_get_definition_contexts] + set okctxts [char_get_definition_contexts] + char_exactly_selctxts $okctxts + + foreach ctx [lsort [array names all_contexts]] { + set key [string range $ctx 0 0] + if {[lsearch -exact $okctxts $ctx] >= 0} { + bind_key [string tolower $key] [list set new_context $ctx] + } else { + bind_key [string tolower $key] {} + } + lappend context_help $key + } + set context_help [list [join $context_help " "] \ + {Set match context for new glyph.}] bind_key space { othercursor } bind_leftright_q cur_$z1 0 [expr {$cols-1}] @@ -755,13 +769,14 @@ proc recursor//01 {z1} { bind_key Return { char_start_define_text } - helptext { - {{<- ->} {move cursor, adjusting area to define}} - {Space {switch to moving other cursor}} - {Return {confirm location, enter letter(s)}} - {Backspace {switch to correcting earlier ocr}} - {Q {quit and abandon OCR run}} - } + helptext [list \ + {{<- ->} {move cursor, adjusting area to define}} \ + {Space {switch to moving other cursor}} \ + {Return {confirm location, enter letter(s)}} \ + {Backspace {switch to correcting earlier ocr}} \ + {Q {quit and abandon OCR run}} \ + $context_help \ + ] } proc othercursor {} { global cur_mode -- 2.30.2