Xchange and TSL

How to configure Xchange at its best with Task Sequencing Language

Task Sequencing Language, or simply TSL, is a scripting language scarcely known.
It is part of the XChange package, an old software however still widely used mainly because of lack of alternatives.
Xchange is rarely exploited at its best possibilities. Often it is used as office package with Quill, Abacus Archive and Easel
while Xchange offers many additional features. One of these is the configuration flexibility, which thank to TSL allows to have a very powerful system.

Let’s proceed with order

First of all let’s analyze some of the configuration options of Xchange which are useful to interface with TSL.
If we try to configure xchange with Menuconfig or equivalent software we realize we have to different available menu: Xchange and Xchange defaults.
The second one allows to execute a string of characters at the software start. If the characters correspond to commands we can instruct Xchange to perform many tasks. In principle it is possible at start-up to read e TSL file and let it execute. Inside the TSL file we can insert our instructions: every time we want to change something it will be sufficient to modify the TSL file. Furthermore we can execute a different command string depending of the filename extension whichi is passed as parameter.
This means that launching Xchange passing as parameter a Quill file the programm wil perform some tasks. If the parameter is an Abacus other tasks will be performed. In general one might suppose, when a file has _doc extension to open it with Quill or Abacus for _aba but we can also think to different activities. For instance we can directly print out a quill file and then export it as an ASCII file. Or we can set the default directory depending on the loaded file, there are endless possibilities.
Xchange is able to manage all xchange extensions (including _tsl) and has separate management for all extension. Matching these configuration capabilities with the flexibility of the TSL language we can really exploit at its best all the capabilities of the Xchange suite.

(Trnslated by Davide Santachiara)