Please enable JavaScript to view this site.

Navigation: What's New in Version 36

What's New in Version 35

Scroll Prev Top Next More

TCC:

 

Many performance and security optimizations.

 

Added Regular Expression support for Unicode property notation (\pL etc.).

 

Removed the ActiveScript Perl support, because ActiveState no longer distributes or supports it. This means no more internal / embedded Perl support in TCC, because the Perl distributions unfortunately have a number of serious / fatal bugs when embedded in Windows apps.

 

TCC now includes Everything Search 1.5. See EVERYTHING (below) for details.

 

F1 in the command history, directory history, and filename completion popup windows now displays help for those windows (instead of generic TCMD / TCC help).

 

If you have SettingChange=YES in your TCMD.INI, and TCC receives a WM_SETTINGCHANGE message with a PATH update, TCC will clear the executable file mapping (see MAPEXE).

 

 

IDE / Batch Debugger:

 

Many performance and security optimizations.

 

The IDE is using a new version of the GUI framework.

 

The Scintilla editor has been updated to version 5.5.6.

 

The Lexilla lexer has been updated to version 5.4.5.

 

Improved the text drawing speed.

 

Updated to Unicode 15.1.

 

The IDE now displays the menu in the title bar, to save a little screen space.

 

The IDE now uses IDE.INI to read / write its configuration data instead of the Windows Registry. This should simplify updating to new versions and running from removable drives.

 

The minimum horizontal scrollbar width has been reduced from 2000 pixels to 1000 pixels. If a line on the page is wider, the scrollbar will be (re)drawn to that width. (The scrollbar width will not be reduced in size for subsequent pages with shorter lines.)

 

The IDE now lets you change the font for the status bar. You can select from the "Options / Font" submenu.

 

The context menu (right mouse click) for the tab labels now includes options for moving to/from horizontal and vertical tab groups.

 

The selection (if any) will be saved and restored when an undo or redo is performed.

 

If you have multiple selections, a paste will now replace all of the selections with the clipboard text.

 

If you have multiple selections, typing will affect all selections simultaneously.

 

There is a new SingleInstance entry in the Options menu. If it is enabled then calling the IDE will open a new tab window in an existing IDE instance (if any), or open the IDE if there is no existing instance. SingleInstance defaults to disabled.

 

There are some new IDE startup options:

 

/N - Open a new IDE instance (even if SingleInstance is checked).

 

/T - Open a tab in an existing IDE instance (if one doesn't exist, the IDE will be started).

 

Help:

 

The help viewer (eViewer.exe) has been updated to version 5.3.2.

 

 

PLUGINS:

 

If a plugin variable returns -1, TCC will abort the command.

 

 

New TCMD.INI Directives:

 

MapExe=[YES | no] - Enables or disables the TCC executable file mapping.

 

 

Updated Variable Functions:

 

@PERL - Removed because ActiveState no longer supports or distributes PerlScript.

 

 

Updated Commands:

 

ATTRIB

 

+B | -B - Added support for the SMR blob attribute.

 

CLS

 

A CLS with no arguments when ANSI is enabled will now use ANSI escape sequences to clear the screen and home the cursor. This should resolve a problem with unexpected fg / bg colors when you do a CLS and your ANSI colors do not match your StdColor and/or your default console color attribute.

 

DIR

 

/+ - Display the file sizes as 3 digits, followed by the size specifier:

 

b - bytes

k - kilobytes (* 1000)

m - megabytes (* 1000000)

g - gigabytes (* 1000000000)

t - terabytes (* 1000000000000)

 

ESET

 

If you edit the PATH, TCC will clear the executable file mapping (see MAPEXE).

 

 

FOLDERMONITOR

 

When querying existing folder monitoring, FOLDERMONITOR will display any include and/or exclude filespecs (/I"file" and /E"file") at the end of the line.

 

FSEARCH

 

The FSEARCH dialog font is a little larger.

 

FSEARCH is a little faster.

 

You can increase the font size in the results window by either the View / Zoom In / Zoom Out menu, pressing Ctrl and either the + or - numpad keys, or Ctrl+Mousewheel.

 

Added Regular Expression support for Unicode property notation (\pL etc.).

 

If you press Enter (or double left mouse click) with the focus on the results window, FSEARCH will display the selected file in the default editor for that file type. You can select multiple files with Ctrl-LeftClick and an Enter will open all of the files in their default editor.

 

The F1 key will display the FSEARCH help.

 

IFTP

 

IFTP now supports directory aliases for the server name.

 

LOG

 

/Unicode=[UTF-16LE | UTF-8 | ASCII] - specify the encoding for the specified log (command, history, error, or output). This value will override the current output encoding type (set in TCMD.INI or with the redirection flags).

 

PATH

 

If you modify the PATH, TCC will clear the executable file mapping.

 

PDIR

 

/+ - Display the file sizes as 3 digits, followed by the size specifier:

 

b - bytes

k - kilobytes (* 1000)

m - megabytes (* 1000000)

g - gigabytes (* 1000000000)

t - terabytes (* 1000000000000)

 

PEE

 

/Unicode=[UTF-16LE | UTF-8 | ASCII][, UTF-16LE | UTF-8 | ASCII] - specify the input and optionally the output encoding. If you don't specify an input encoding type, input will default to the current TCC output encoding. If you don't specify an output encoding type, output will default to the current TCC output encoding.

 

PIPEVIEW

 

/Unicode=[UTF-16LE | UTF-8 | ASCII][, UTF-16LE | UTF-8 | ASCII] - specify the input and optionally the output encoding.  If you don't specify an input encoding type, input will default to the current TCC output encoding. If you don't specify an output encoding type, output will default to the current TCC output encoding.

 

SET

 

If you set the PATH, TCC will clear the executable file mapping (see MAPEXE).

 

START

 

Removed the /Monitor=n option because Microsoft removed the API support. You can still position a window on another monitor with the /POS=x,y option.

 

/Nochild - The new process will not be able to launch child processes.

 

/Untrusted - The command line is untrusted. The application should disable potentially dangerous features such as macros, downloaded content, and automatic printing.

 

TEE

 

/Unicode=[UTF-16LE | UTF-8 | ASCII][, UTF-16LE | UTF-8 | ASCII] - specify the input and optionally the output encoding. If you don't specify an input encoding type, input will default to the current TCC output encoding. If you don't specify an output encoding type, output will default to the current TCC output encoding.

 

TREE

 

/+ - Display the file sizes as 3 digits, followed by the size specifier:

 

b - bytes

k - kilobytes (* 1000)

m - megabytes (* 1000000)

g - gigabytes (* 1000000000)

t - terabytes (* 1000000000000)

 

TS

 

/Unicode=[UTF-16LE | UTF-8 | ASCII][, UTF-16LE | UTF-8 | ASCII] - specify the input and optionally the output encoding. If you don't specify an input encoding type, input will default to the current TCC output encoding. If you don't specify an output encoding type, output will default to the current TCC output encoding.

 

XSORT

 

Added support for UTF-16BE, UTF-32LE, and UTF32BE files.

 

If you don't specify the /Unicode=input,output option, XSORT will try to determine the file encoding. If it's UTF-16 or UTF32 (either LE or BE) XSORT will write the output using the same encoding. Note that it is not always possible to determine the encoding, so if you know it you should specify it.

 

/N - Don't write a BOM if the output file is UTF-16 or UTF-32.

 

Y

 

/Unicode=[UTF-16LE | UTF-8 | ASCII][, UTF-16LE | UTF-8 | ASCII] - specify the input and optionally the output encoding. If you don't specify an input encoding type, input will default to the current TCC output encoding. If you don't specify an output encoding type, output will default to the current TCC output encoding.

 

 

New Commands:

 

SPLIT

 

Split a file into multiple smaller files. You can split at a given size, at a given character, or at a given number of lines. SPLIT supports ASCII, UTF-8, UTF-16LE, UTF-16BE, UTF32LE, and UTF-32BE files.

 

The syntax is:

 

SPLIT [/= /L[=n] /B=n /C=char,position,count /from=format /S=n] inputfile [outputfile]

 

/= - Display the SPLIT command dialog.

 

inputfile - The file to split. You can read from CLIP:, and ysou can read from a pipe by specifying CON: as the input file name.

 

outputfile - The name to give to each output split file. SPLIT will append a "%3.3d" format specifier to the name; i.e. outputfile of "foo.txt" will generate output files named "foo.txt.000", "foo.txt.001", etc. If you don't specify outputfile, SPLIT will use inputfile as the base.

 

/L - Split at the specified number of lines (default 1000). Also supports k (* 1,000), K (* 1024), m (* 1,000,000) and M (* 1,048,576) suffixes. The maximum split lines is 2G.

 

/B - Split at the specified number of bytes. Also supports k (* 1,000), K (* 1024), m (* 1,000,000) and M (* 1,048,576) suffixes. The maximum split size is 2Gb.

 

/C - Split at the specified character, position, and count.

 

char can be a literal character, a hex value (0xnnn), or a special character in single quotes (for example, '|', '<', '>', '&', etc.). If you want to use a whitespace character (space, tab, return, linefeed) you need to use the hex value format.

 

position can be:

 

0 - Split before the character (it goes in the next file)

1 - Split after the character (it remains in the first file).

2 - Split on top of the character (the character is removed)

 

position will default to 1.

 

count - The number of times to see the split character before splitting. count will default to 1.

 

/S - The number of the first file (default is 0).

 

/from - Specify the input file type. The possible values for type are:

 

* (auto detect)

UTF-16LE

UTF-16BE

UTF-32LE

UTF-32BE

UTF-8

ANSI

ASCII

CPnnn, where nnn is a Windows code page.

 

UTF-16 and UTF-32 files will be converted to UTF-8 when the files are split. If you want to convert the split files back to UTF-16 / UTF-32 you will need to loop through them and change the encoding (see UNICODE below).

 

You must specify one of /L, /B, or /C.

 

UNICODE

 

Copy a file to a new encoding type. The syntax is:

 

UNICODE [/=] [/N] /From=type /To=type inputfile outputfile

 

/= - Display the UNICODE command dialog.

 

/N - Don't write a UTF-16 / UTF-32 BOM to the output file

 

/From - Encoding for the input file. If you use * for the type, TCC will try to determine the file encoding - this is not 100% accurate for UTF-8 and UTF-16, and TCC can't tell the difference between ANSI, ASCII, and the various code pages (see below).

 

/To - Encoding for the output file.

 

The possible values for type are:

 

UTF-16LE

UTF-16BE

UTF-32LE

UTF-32BE

UTF-8

ANSI

ASCII

CPnnn, where nnn is a Windows code page.

 

VOLINFO

 

Display system information about the disk drives in the file system. The syntax is:

 

VOLINFO [/F /P c:\ ...]

 

/F - Display a description for each of the flags that are enabled

 

/P - Pause after displaying each page and wait for keyboard input.

 

c:\ - Only display information for matching mount paths (usually C:\, D:\, etc.).

 

The size information will be affected by quotas, if they are enabled for the current user.