# Colorer-take5 Library Changes History

## take5.be5, 23-Nov 2006

- colorer.exe with -ht mode Region's name is now handled to eliminate all non-conformant symbols. They are replaced with '-' (dash).
- PHP executable dependencies were removed from build scripts.
- New -lt mode in console tools - lists internal HRC type names.
- Fixes in static C++ object allocations - for compatibility with GCC DLLs.
- ConsoleTools now uses few starting lines in text to detect file type.
- Fixes HRC internal packages error messages.
- New block/(start|end)/@match in HRC.
- _valid test set removed from distribution. Use SVN to fetch it.

### HRC syntaxes

- Some package regrouping
- Perl improvements
- PHP slow response fixes
- FAR packages fixes
- No dependencies on php binaries when building HRC base
- java policy simple syntax
- 4mirror: xsieve, wsdl,
- Pnuts(by Nate), AHDL syntaxes

### FAR Colorer plugin

- New menu entry "Find Function". Searches for a function in the current file using outline list.
- [ 1472737 ] Copy from Outliner - on pressing Ctrl-Enter

### Eclipse Colorer 0.7.2

- Memory leak with outliner is fixed.

### MC-Colorer 0.9

- Color style selection dialog from MCEdit menu.
- Outline dialog (Commands/Outline MCEdit menu).
- Syntax type selection dialog.
- Upmerge with latest CVS MC revision.

### Eclipse Colorer 0.7.1

- Scrolling performance degradation bug fixed.
- Problem with line number on windows and linux systems is fixed.

## take5.beta4, 28 April 2005

- General memory usage improvements in editor (BaseEditor class).
- JAR unpacking sharing - memory and performance improvements in HRC loading from JAR files.
- GCC 3 templates compilation issues fixed.
- VC6 compilation compatibility.
- New `inner-region` attribute in `block` allows to manage how scheme's background region interacts with its other block regions.
- colorer.exe now outputs all region's hierarchy as token's class value in tokenizing `-ht` mode(Wladimir Palant).

### HRC syntaxes

- External xml entities now has a .xml extension
- PHP/JSP/ASP inlining fixes.
- HRC regexp package fixes.
- SVG 1.0, PostScript, htc, parser, rdf, rss, xbl (Eugene Efremov).
- JavaCC (Giulio Piancastelli).
- Common packages regrouping.
- Basic ColdFusion support.
- Lisp fixes, outline (Mykolas Juraitis).
- FAR manager and Common RE schemes (Eugene Efremov).
- Sh, def, PHP, C, Perl fixes (Eugene Efremov).
- PHP functions regrouping (Alexey Kupershtokh).
- xhtml improvements (Eugene Efremov).
- C, C++ and Java types can now be customized to show as errors tabulations and spaces at end of lines. Feature can be enabled with HRC prototype parameters "tabs-as-errors" and "spaces-as-errors" accordingly.

### Eclipse Colorer 0.7.0

- Native library fails were fixed.
- Memory consumption reduced, some memory leaks were found.
- New View: HRC Region Tree, shows HRC syntax Regions hierarchy.
- New Outliner Mode: Parse Tree, allows to view lowlevel parse tree structure. Useful in HRC debugging.

### FarColorer-take5.beta4

- 4ever options for quick disabling of cross, pairs and syntax highlight features.
- Failure on configuration reload was fixed.
- New configuration option to enable classic outline view (4ever-like).

## take5.beta3, 28 September 2004

- `/hrc/prototype/parameters/param` can now be accessible from HRC scheme definitions using if/unless attributes. This allows to customize HRC base loading programmatically.
- New 'package' type - invisible type for internal purposes.
- HRC loading algorithm internal fixes (faster and more stable).
- New memory management system (dlmalloc). More than 30% loading speedup on win32 systems.
- HRC base changes: SVG 1.0, Lisp improvements
- Region with indices a-f were fixed (lowercase is required to use).
- HRC Language Reference changes and additions.
- New `-ln` console executable option - adds line numbers into colorized output.
- New `-p<n>` console option - runs parser in profile mode and reports result timing.
- If no input file is specified, or '-' is specified, than colorer.exe reads data from standard input.
- Security fixes in PHP codes.
- New internal xml parser. Usage of external and internal entities.
- Generated HRC code is separated and builded with ANT. Merge with Eugene Efremov's code.

### Eclipse Colorer 0.6.0

- New outline icons for html, xml and other languages
- New UI dialog for HTML code generation.

## 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.