Check-in [f1ee0d673f]

Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to tclconference@googlegroups.com
or submit via the online form by Sep 9.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Update of #532: change in manual of "bind" explained.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256:f1ee0d673f0ef7cc413937e79359ff37b0029993bcc41a516c63d4fe101b146a
User & Date: gcramer 2019-01-15 15:05:52
Context
2019-01-15
20:41
Fix fork check-in: c2d2bb250e user: fvogel tags: trunk
15:05
Update of #532: change in manual of "bind" explained. check-in: f1ee0d673f user: gcramer tags: trunk
2019-01-14
10:22
Minor fix in #532. check-in: 342b828704 user: gcramer tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to tip/532.md.

172
173
174
175
176
177
178






















179
180
181
182
Fix of issue (4) is not fully backwards compatible (more details in section **Rationale**).

Moreover fix of issue (5) is not backwards compatible, but here erroneous behavior has been
corrected.

Beside these two exceptions the revised implementation is fully backwards compatible, even
if the additional syntax style for motion bindings is enabled.























# Copyright

This document has been placed in the public domain.







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>




172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
Fix of issue (4) is not fully backwards compatible (more details in section **Rationale**).

Moreover fix of issue (5) is not backwards compatible, but here erroneous behavior has been
corrected.

Beside these two exceptions the revised implementation is fully backwards compatible, even
if the additional syntax style for motion bindings is enabled.

If constant <code>PREFER\_MOST\_SPECIALIZED\_EVENT=1</code> is defined (prefer most specific
binding in term of most high-ordered patterns), then the guidance in manual of **bind**,
how to choose the most specific binding, has to be changed:

> (a) An event pattern that specifies a specific button or key is more specific than one that
> does not.

> (b) A sequence with the most highest-ordered patterns (in term of highest
> repetition count) is more specific than a sequence with less highest-ordered patterns.

> (c) If the modifiers specified in one pattern are a subset of the modifiers in another pattern,
> then the pattern with more modifiers is more specific.

> (d) A virtual event whose physical pattern matches the sequence is less specific than the
> same physical pattern that is not associated with a virtual event.

> (e) Given a sequence that matches two or more virtual events, one  of  the  virtual  events
> will be chosen, but the order is undefined.

Rule (b) has been exchanged, because the old rule (a longer sequence is more specific than
a shorter sequence) is now obsolete.

# Copyright

This document has been placed in the public domain.