Tk Library Source Code

Ticket Change Details
Bounty program for improvements to Tcl and certain Tcl packages.

Artifact ID: e8814280f545e303e9f3975c7fbb1f4c0d0be369d6a3cdf416d6daf34e6495e4
Ticket: 4e8fb9d55e39cad03c7f3cc6bba941fc54e941f1
Update ctext
User & Date: anonymous 2019-05-30 22:29:51

  1. Change assignee to "nobody"
  2. Change closer to "nobody"
  3. Change cmimetype to "text/html"
  4. Change comment to:

    Hello everybody,

    I use an updated ctext version for a Perl/Tcl::Tk application. Perhaps this is generally interesting for the Tcl community, too?

    The new features are:


    You can pass an array with option-values-pairs to all addHighlightClasses*. With this you can specifically set the tag configuration of a Highlight class. Especially it is possible to adjust not only the color of the tags/highlight classes, but also the font weight:

    e.g.: ::ctextAdvanced::addHighlightClassForRegexp path keywords {-foreground #cb319b -font "Helvetica 10 bold"} pattern


    Unfortunately using a bold weight or the lika crashes the linemap numbering. So I had to implement the linemap anew. The main inspiration came from the line number example of Bryan Oakley (see here


    Last but not least I added an additional option -linemap_font_select. With this you can change the font of the linemap if a number is pressed (so that you can display the number for example with bold weight if it is pressed)


    Perhaps a general option -linemap_font would be a good idea, too, so that the linemap and the text widget could have different fonts. But at the moment I have not implemented this...

    I don't know whether my patches could be an idea for an update of ctext. Because I am no Tcl/Tk expert, it would be great, if somebody more experienced could check the proposed update. I think the changes would be very important improvements and would make ctext to a yet powerful tool.

    The updated ctext version can be seen at github (Temporary I name the enhanced version ctextAdvanced, but to update ctext one has only to replace ctextAdvanced with ctext (see also the ctext.tcl.patch file))

    Best wishes,


  5. Change foundin to "3.3"
  6. Change is_private to "0"
  7. Change login to "anonymous"
  8. Change priority to "5 Medium"
  9. Change private_contact to "7ac9ad071e3834571a0dbc455674c4f9bfc15bf9"
  10. Change resolution to "None"
  11. Change severity to "Minor"
  12. Change status to "Open"
  13. Change submitter to "anonymous"
  14. Change subsystem to "tklib :: ctext"
  15. Change title to "Update ctext"
  16. Change type to "Patch"