aplsimple's home page

Tcl/Tk


Tcl/Tk color picker

The native Tcl/Tk color picker (tk_chooseColor) is used in Unix platforms as they have no default color picker, while Windows and Mac OS have.

The proposed changes to tk_chooseColor are the following:

  • The resizing of window is locked (supposedly the resizing makes no sense, at least in the current version of tk_chooseColor).
  • The default sizes of Tcl/Tk color picker are changed a little for more usability.
  • The 'Move all' checkbox is added allowing to move all (R, G, B) selectors simultaneously.
  • The 'Tone moves' checkbox is added allowing to implement the toning feature for a current color.
  • The RGBCMY and their tones are added, in separate color boxes.
  • The -moveall (0 by defauls) and -tonemoves (1 by default) options are added.
  • The chooser is themed now. The themed choosers of font and color are shown beside on the above screenshot.
  • A stand-alone Tk color chooser is available (see its screenshot above). Invoked with: tclsh tkclr.tcl.

Further details:
    Description of tk_chooseColor


Mulster

This little thing provides multi-line replacements in text files. Also, it provides in-memory replacements, on a list of strings.

Although there are tons of similar utilities, maybe the mulster has its own goods.

It would be useful when you need:

  1. replace periodically some bunches of strings in some texts;
  2. modify periodically a snapshot of some software without its forking;
  3. share your little modifications with your colleagues, without resorting to those great GIT, MERCURIAL, FOSSIL etc.;
  4. use multi-line replacement functions in your software.

Further details:
    Description of mulster


Doctest

The doctest software allows you to doctest Tcl scripts.

To say shortly, the doctests are special comments inserted directly into a Tcl code. The doctest blocks are closely related to the code of module and used for testing and documenting it. You run this doctest on them and get the results of testing (OK or FAILED). Just so simple.

This allows you to keep your code in a working state each time you modify it.

Further details:
    Description of doctest


APave

The apave software provides a sort of geometry management for Tcl/Tk.

The apave isn't designed to replace the existing Tk geometry managers (place, pack, grid). Rather the apave tries to simplify the window layout by using their best, by means of:

  • joining the power of grid and pack
  • uniting the creation of widgets with their layout (and mostly their configuration)
  • minimizing a coder's efforts at creating / modifying / removing widgets
  • setting a natural tab order of widgets
  • theming both ttk and non-ttk widgets
  • providing 'mega-widgets'

Further details:
    Description of apave
    test2pave-14.mp4, sort of demo.


Menu system for editor

The e_menu software provides a menu system bound to an edit session.

A text editor with plugin or context facilities allows to use e_menu as "a plugin of plugins" that raises a whole environment of commands & menus around the editor.

By now e_menu is implemented for TKE editor, Geany IDE, Wing Python IDE and PyCharm IDE. Though the usage of e_menu is mostly independent on an editor / IDE, a few demonstrative details for TKE, Geany, Wing and PyCharm are described.

Also, e_menu can be used in file managers that provide scripting facilities.

Further details:
    Description of e_menu
    demo of e_menu v1.41
    demo of e_menu v1.42






Booksum

The booksum allows to make summaries of Tcl code snippets cut from books.

You might want to save such snippets in a summary file, in order to review them afterwards for refreshing your memory ... or to test ... or to play ... or even to publish your own code samples.

Most certainly, you'd like to save the code snippets along with their output.

Further details:
    Description of booksum


Plugins for TKE

I've made a batch of plugins for TKE editor. The editor and its plugins are all written in Tcl/Tk.

Further details:
    add_shortcut
    doctest
    edit_utils
    e_menu
    highlight_matches
    open_glob



Miscellaneous


How to chisel at chiselapp.com

It's a little talk about Fossil SCM and ChiselApp.com.

The excellent Fossil SCM is so distinguished against the general background (most often for the better) that it is incomprehensible why this system is still underestimated in the IT community.

Many Fossil fans are looking for a place to apply their fossil skills and often find it at chiselapp.com - a hosting service that is good in almost all respects - where, however, you don’t find a word about “how to chisel at chiselapp.com”.

Further details:
    How to chisel at chiselapp.com


Minimum Mercurial history of binary files

All of VCS including Mercurial SCM have a common problem with binary files of repository, namely:
If the files were being changed, their versions (even mistaken or stale) are all present in VCS history - nearly 'as is', with minimal packing if any.

In the course of time, this accumulation of binaries would involve the terrific size of remote repository and its local clones.

A method proposed below allows to minimize the binary overheads for a bitbucket site managed by Mercurial SCM.

Further details:
    How to minimize the Mercurial SCM history of binary files


FVords program

FVords is a language learning program. It's free of charge and designed mostly for Russians who learn English and, partially, vice versa.

An Englishman (believe it or not) found it very good for learning Russian.

Other languages are also present in FVords, but not so good in their contents and learning modes. The program interface can be chosen between English, Russian and Ukrainian.

The program runs with MS Windows and, with some restrictions, can be used under Linux's Wine. It is 32-bit and need Windows-1251 charset coding.

FVords installer is available through this link:
     FVords+English-base-v1.14.exe
You might get an antivirus warning - be not afraid, it's rather standard warning for downloaded '.exe' files.

For details, see a demo sort of documentation available in "Help" menu of FVords.


APLinkee program

APLinkee is an archivist and a launcher of links to various resources. It can be also used as a small organizer that keeps scheduled affairs. The program is freeware.

APLinkee provides a standard set of actions to do with a tree of records, i.e. adding records and groups, changing, deleting, mouse moving etc.

Other features:

  • calling not only Internet pages, but nearly all you can run in MS Windows or Linux;
  • calling a group of links;
  • calling links at MS Windows or APLinkee startup;
  • viewing a list of last runs and re-running them;
  • searching links in the tree, including word-by-word searching of key words;
  • executing a batch commands that are stored in APLinkee database;
  • calling links for assigned time with subsequent break ('curriculum' for weekdays);
  • reminding of events in date intervals;
  • minimizing to the tray;
  • saving and restoring the program options, window sizes, last link's selection etc.;
  • three languages of interface (English, Русский, Українська);
  • using many files of links independent on re-installations of OS (presuming you backup the files more often than installing OS);
  • fine work under Linux's Wine
  • it is 32-bit and need Windows-1251 charset coding.

The APLinkee installer is available through this link:
    arlsetup138.exe
You might get an antivirus warning - be not afraid, it's rather standard warning for downloaded '.exe' files.

For details, click  ?  in APLinkee's menubar.


Eng-Rus dictionary

It's an English-Russian and Russian-English dictionary.

Features:

  • ~87000 words in English-Russian part
  • ~45000 words in Russian-English part
  • runs under MS Windows and Linux's Wine
  • is 32-bit and need Windows-1251 charset coding

Its installer is available through this link:
    fvdictsetup.exe

You might get an antivirus warning - be not afraid, it's rather standard warning for downloaded '.exe' files.

For details, see fvdict.txt in the installation directory.