# Colorer-take5 Library Changes History

## take5.beta2, 12 September 2003

- New Ant's build model
- Multiline autodetection enabled. Now RE <firstline> can match multiple lines
- New html generator's feature - linking text tokens with HTML Anchors (using external data source file - doclinks). Parameter `-ls` is used to point to this file.
- Background parsing in BaseEditor (implemented in the FAR Manager plugin).
- HRC base improvements and new languages.
- Eclipse colorer can HTML-ize multiple source files at once now.
- HRC Base loading speed improvement (40-60%).

### Eclipse Colorer 0.5.0

- Makefiles for MacOS (thanks for tests and bugs to Marc-Antoine Parent)
- Linux native library is included (tested under gcc3.2/Mandrake9.0).
- Bold Rectangle mode for paired elements.
- File's type is now detected with several start lines analyze.
- User-friendly language's grouping in filetype's menu.
- HTML Generator improvements. Now it can handle multiple file selection.

### FarColorer-take5.beta2

- Partial background parsing while idle in editor
- Some minor fixes

## take5.beta1, 30 March 2003

- RegionHandler interface now receives a pointer to the currently parsed text line.
- HRCParser interface now can't load file types manually. This is done internally while requesting information about file's type (loadFileType method is deprecated).

- More languages now have their own outliners.
- HRC Language reference is extended and filled with documentation.

### Eclipse Colorer 0.4.0

- Powerful and flexible outliner for all common languages.
- Errors list is included into the outliner view.
- Shortcuts for pairs matching.
- New «Eclipse», «Navy» and «Neo» coloring schemas.
- Replace tabs with spaces option now works fine.
- Editor redraw operations is now works much faster, avoiding blinking.
- Colored sources generation into HTML files (Available in the navigator's context menu).

### FAR Manager Colorer beta1a

## take5.alpha3, 1 March 2003

### Class changes

- BaseEditor class becomes more independent. It is based on ParserFactory class and allows now to internally create and choose required RegionMapper classes. Also, there is no need now to load HRC FileType manually. If not yet loaded, any FileType class is loaded automatically, when passed to BaseEditor instance.
- Java language interface is now available. It uses Colorer through JNI calls. It defines mappings of BaseEditor and ParserFactory classes. Also simple Eclipse Platform plugin were written to demonstrate Colorer's abilities. It uses Eclipse's SWT API and can be used also as independent application.
- Keywords sorting algorithm is replaced with simple quicksort method. This makes good performance increase when keywords in HRC files were not sorted.
- Some changes in the internal handlers structure. LineSource class must pass now string pointer to parser, not DString object, as it was before. Also, now it defines formal requirements of the lifetime of the returned string. RegionHandler interface provides now references to currently parsed line of text. This makes easier installation and structure of external installed handlers.
- LineSource class has now two new methods - startJob and endJob. They are used to notify object about start and end of line requests blocks.

### HRC changes

- HRC Language Reference is started.
- Relax NG 1.0 schema is included.
- XSLT 2.0 Draft schema is included (needs fixes).
- `weight` attribute of `firstline` and `filename` RE matchers in prototype declaration has floating point type now. This makes type detection in some cases more flexible.
- Automatic outlines generation option from xml schemas. All standard languages were regenerated to include common outline regions indention.
- XHTML syntax uses `Strict` module by default and `Transitional` as alternative.
- DocBook now uses latest correct XSD descriptions version 1.0b1.

### Colorer.exe

- HTML output mode uses font style information and can format sources now with bold, italic, underline properties.

### FAR Plugin

- `clr:` prefix allows to use double quotes in file name.
- Much faster performance (x2) was achieved int FAR's editor because of previously used multiple requests of each FAR's line. This makes great leak of cpu usage. Also, effective method of line text requesting is used in all possible actions.
- Internal Library text lines requests has changed to make processing faster. Now, FAR plugin works faster because less lines data requests.
- Structured presentation of created outliner. All elements are displayed in tree, also, for each element, prefix-char is shown. You can collapse or extend tree with `Ctrl-Left/Right`.

## take5.alpha2, 16 February 2003

### Class changes

- Some classes renamed and moved into new locations.
- Region associations behaviour changed. Now, RegionDefine is abstract class, and it's subtypes inherits and extends color or other region information. LineRegion class knows nothing about real color information. Now it contains reference to RegionDefine subclass (instead of inheritance, as it was).

### HRC changes

- New style of file type detection is embedded. Each type is detected with passed file name and first line of file's content. But new behaviour takes into account filename matching and firstline matching in equal rights. Each matching token has it's own weight, and required type is selected as type with biggest summary weight. Optionally, weight of filename or firstline matching token could be changed.

### Colorer.exe

- New output mode - tokenizer (-ht option). With this mode colorer outputs target file with each token marked with specific style (equals to the name of it's HRC region).

### FAR Plugin

- New prototype parameters handling - default-fore, default-back. With this numeric properties you can change default text and background color in any file type.
- If exception is ocurred while text processing, colorer stops it's job and disables any further text coloring.
- Paired constructions are searched now on all the text.
- FAR command line prefix 'clr' allows to run internal colorer's viewer and to view files with syntax highlighting.
- Works with outlined text structure (functions and errors list at now).

## take5.alpha1, 30 January 2003

### Colorer.exe

- Console viewing with unicode characters (win32).
- Colorized HTML output from rgb HRD color schemas.
- Simple file forward with encoding conversion.
- HTML and file output into stdout or specified file.

### FAR Plugin

- Top level highlight caching, parse on request (FAR >= 1.70).
- File Encoding selection.
- Color schemes dialog selection.