

## keyFunctionMakeBinding --
# 
# Exemple (à personnaliser) d'une macro permettant de personnaliser
# les touches de fonction
# 
proc keyFunctionMakeBinding {  } {
    
    # clavier standard
    # set keyCarList [list \
    #     F1 F2 F3 F4    F5 F6 F7 F8    F9 F10 F11 F12     F13 F14 F15 F16  \
    #      .  .  .  .     .  .  .  .    \[  \{   (   ~     |   )   \}   \]  \
    # ]                                                                     
    # clavier de portables (moins de touches de fonction)
    set keyCarList [list \
        F1 F2   F3  F4     F5  F6  F7 F8   F9 F10 F11 F12   \
         ~  |    #   @     \[  \{  \}  \]   .   .   .   .   \
    ]                                                                     
    
    set nbKey [expr {[llength $keyCarList] / 2}]
    for {set i 0} {$i < $nbKey} {incr i} {
        set key [lindex  $keyCarList $i]
        set car [lindex  $keyCarList [expr {$i+$nbKey}]]
        if {$car eq "."} continue
        # puts "$key => $car"
        set binding "<Key-$key>"
        bind XText <Key-$key> {}
        bind XText "$binding" [list xtext_insert %W -push 0 -string $car]
    }
}
keyFunctionMakeBinding
#./