Please enable JavaScript to view this site.

Navigation: » No topics above this level «

Whats New in Version 35

Scroll Prev Top Next More

Take Command:

 

Many performance and security optimizations.

 

Take Command is using a new version of the GUI framework.

 

The selection (if any) will be saved and restored when an undo or redo is performed in the Command Input window.

 

The File / Folder combobox now supports nested directory aliases, home directory references (~), Windows Shell folders, VLFN's, relative paths, etc. (Note that if you use relative paths they are relative to the current Take Command working directory, not to the tab window working directory).

 

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

 

Improved the text drawing speed in the Command Prompt window.

 

Mouse selections in TCC tab windows are recognized in TCC when entering, pasting, or cutting text.

 

Updated to Unicode 15.1.

 

 

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

 

All of the command dialogs now support F1 for help (as well as the existing "Help" button).

 

 

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 up / down scrolling will try to keep 3 lines visible above / below the current line (if possible).

 

Doing a Find will keep at least 3 lines visible below the matching line.

 

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

 

 

TCEDIT:

 

Many performance and security optimizations.

 

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

 

TCEdit now displays its menu in the title bar, to save a little screen space.

 

TCEdit now uses TCEDIT.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.)

 

TCEdit 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 up / down scrolling will try to keep 3 lines visible above / below the current line (if possible).

 

Doing a Find will keep at least 3 lines visible below the matching line.

 

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 (the original default value) then calling TCEdit will open a new tab window in an existing TCEdit instance (if any), or open TCEdit if there is no existing instance.

 

There are some new TCEdit startup options:

 

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

 

/T - Open a tab in an existing TCEdit instance (if one doesn't exist, TCEdit 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.

 

OpenAIKey=key - Your OpenAI API key.

 

OpenAIModel=model - The model you wish to use (i.e., "gpt-4o", "gpt-3.5-turbo", etc.).

 

OpenAIURL=url - The URL to call for your queries. The default value is "https://api.openai.com/v1", but you can use any provider that supports the OpenAI APIs.

 

OpenAIDefaultRole - The default role (prompt). Take Command / TCC programmer and system administrator.

 

OpenAIShellRole - The shell role. Provide TCC commands for Windows without any description.

 

OpenAIDescriptionRole - The description role. Provide a single sentence description of the TCC command.

 

OpenAICodeRole - Provide only code as output without any description.

 

The OpenAIxxx directives can all be set in the OPTION / AI page.

 

 

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

 

EVERYTHING

 

Everything Search has been updated to version 1.5.

 

/A - Match diacritical marks.

 

/A:... - Search for files / folders that have the specified attribute(s) set. EVERYTHING does not support the TCC '+' (OR) operator.

 

/M=n - Only return a maximum of n files / directories

 

EVERYTHING supports the Everything 1.5 modifiers and functions (xxxx:) and will pass them on to Everything Search.

 

EVERYTHING will include all modifiers and functions up to the first filename and include them in the search. Arguments following a filename are assumed to be part of the next search.

 

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

 

OPTION

 

The Keyboard tab has a new category "XDIR" for setting the XDIR keys.

 

The new AI tab allows you to configure the LLM server, API key, model, and default prompts.

 

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

 

SREPLACE

 

The SREPLACE dialog font is a little larger.

 

SREPLACE 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.).

 

The F1 key will display the SREPLACE help.

 

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:

 

AI

 

A command-line interface to the ChatGPT large language models (LLMs). AI offers generation of TCC commands, code snippets, and documentation (as well as queries on other topics).

 

The syntax is:

 

AI [/F:n.n /I /M="model"  /Max=n /P=n.n /Role="role" /Tn.n /Top_n=n.n /V] ["query"]

 

/F=n.n - The Frequency penalty controls the frequency of certain words in the model's responses. A higher penalty value will decrease the likelihood of word repetitions, while a lower value will allow the model to use the same words more frequently. The default value is 0.3.

 

/I - Interactive mode. AI will prompt you ("AI> ") for input. After the response is displayed, AI displays another prompt "[R]un, [E]dit, [C]ontinue, [Q]uit: ".

 

R - Runs the command returned by ChatGPT. (This is probably only useful if you're using /Role=SHELL.)

 

E - Copies the response to the command line for editing.

 

C (or Enter) - Display the AI> prompt again and get another query.

 

Q - Exits AI interactive mode.

 

/L - List the available models in a JSON list. The model name is in the "id" field.

 

/M="model" - The ChatGPT model to use. The default value is "gpt-4o". Other options include "gpt-3.5-turbo" and "gpt-4-turbo".

 

/Max=n - The maximum number of tokens (default 2048).

 

/N=n - How many chat completion choices to generate for each query. The default value is 1.

 

/P=n.n - Presence penalty controls how much the model prefers to use words and phrases that are already present in the context. A higher value will increase the chances of using new words and phrases, while a lower value will allow the model to repeat words and phrases already mentioned. The default value is 0.3.

 

/Role=role - Sets the role description. This can be one of the predefined roles:

 

DEFAULT - A programmer / system administrator using Take Command and TCC.

SHELL - Only TCC commands and examples.

DESCRIPTION - Descriptions of TCC commands.

CODE - Output code with no descriptions.

"role" - A quoted string that describes the role. For example:

/Role="You are a programmer and system administrator. You manage Windows operating systems with JP Software Take Command and TCC shell."

 

/T=n.n - The “temperature” setting helps control the randomness of the ChatGPT responses.  The valid range is 0.0 to 1.0; the default value is 0.2. A higher temperature value (closer to 1) makes responses more random, while a lower value (closer to 0) makes responses more predictable and conservative.

 

/Top_p=n.n - Top_p is the probability with which the model selects the next token when generating text. A value of 1.0 means the model will consider all possible tokens for the next word, whereas a value close to 0 will make the model choose only the most likely tokens.

 

/V - Verbose output - TCC will display everything returned from the OpenAI query. This can be useful when debugging or optimizing prompts.

 

query - The natural language query. If you do not provide a query, AI will switch to interactive mode (see /I) and prompt you for input.

 

If you haven't set your OpenAI API key, AI will prompt you for the key before starting the conversation. The key is saved in the OpenAIKey directive in the [4NT] section in TCMD.INI. It can also be set from the OPTIONS dialog on the AI page. If you don't have an API key, you will need to create an account on OpenAPI and generate one here. The OpenAI API has free and paid options, please refer to the OpenAI pricing for more information.

 

AI will default to using OpenAI, but you can configure it to use any LLM that supports the OpenAI APIs. See the OPTION / AI page, and change the OpenAI URL to the desired server.

 

The AI command is not supported in TCC-RT.

 

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 you 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=type - 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).

 

/to=type - Specify the output file type.

 

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.

 

XDIR

 

XDIR is a combination of DIR, CDD, and a mini file manager. It displays a formatted list of directories / files with the desired fields (i.e., date / time, size, attributes, etc.) in a listbox that you can scroll through and perform various actions, including changing directories, viewing files, creating, renaming, or deleting files / directories, etc.

 

If you have enabled directory colorization, XDIR will display the listbox in the same colors as used in the TCC window. If directory colorization is off, XDIR will use the default foreground and background colors for your current theme (including light & dark modes).

 

XDIR is not supported in TCC-RT.

 

There are a number of keyboard actions available. The default keys can be changed / added in OPTION / Keyboard / Category / XDIR.

 

Esc - If the focus is in the listbox, quits XDIR. If the focus is in one of the edit controls, changes the focus back to the listbox.

 

? or i - Display a messagebox with file information (pathname, description, size, create / access / last write date & time).

 

Ctrl-C - Copy the selected directory / file name (fully expanded) to the clipboard.

 

Ctrl-Shift-C - Append the selected directory / file name (fully expanded) to the clipboard.

 

F2 - Rename the selected directory or file. (Also available in the right-click context menu.) An edit control will open over the current selection with the directory / file name to edit. An Enter will save the change; an Esc will discard any changes.

 

Ctrl-F - Moves the focus to the search edit control. An Enter will then look for the first matching name (starting at the current location). The search supports all TCC wildcards as well as regular expressions. (Regular expressions should be prefixed by two colons, i.e. ::expr .

 

F3 (or Down arrow button) - Find the next matching directory entry name.

 

F4 (or Up Arrow button) - Find the previous matching directory entry name.

 

Ctrl-S - Create a new subdirectory. (Also available in the right-click context menu.)

 

Ctrl-N - Create a new file. (Also available in the right-click context menu.)

 

Backspace - Display the parent directory. A Ctrl-Backspace will change the TCC default directory to the parent directory.

 

Enter (or Left-DblClk) - If the selection is a directory, XDIR will change the listbox to display the contents of that directory. A Ctrl-Enter will also change the TCC default directory to the selected directory. If the selection is a file, XDIR will execute the default Windows "Open" action for that file type.

 

Space - Display the selected file using VIEW.

 

Ctrl-E - Edit the selected file using TCEdit.

 

Ctrl-D - Delete the selected directory or file. TCC will display a messagebox to confirm the delete. A directory deletion is equivalent to a RD /S, so pay attention to the prompt!

 

XDIR supports most of the DIR options (except those that use multiple columns or multiple rows):

 

/=Display the XDIR command dialog to help you set the filename and command line options. The /= option can be anywhere on the line; additional options will set the appropriate fields in the command dialog.

 

/\Display directory names with a trailing \.

 

/32Show a » before 32-bit module names (EXE's and DLL's). Only supported with the default single column & full info display (i.e., no /B, /W, /2, etc.).

 

/A[:]Display only those files that have the specified attribute(s) set. See Attribute Switches for information on the attributes which can follow /A:.

 

/C Display per-file compression percentage on NTFS drives with compression enabled.

 

/DTemporarily disable directory color coding.

 

/EDisplay filenames in upper case.

 

/FDisplay each filename with its drive letter and path in a single column, without other information. If you use /F with /X, the "short" version of the entire path is displayed.

 

/G[:n]Display the allocated disk space instead of the actual size of each file. You can optionally specify the disk cluster size to be used by /G. (DIR will normally query the system for the cluster size on the specified drive, but you can override with /G:n if you know that the returned info is incorrect, or if you want to find the size required if the specified files were moved to another device with a different cluster size.)

 

/HSuppress the display of the "." and ".." directories.

 

/I"text"Select filenames by matching text in their descriptions. The text can include wildcards and extended wildcards. The search text must be enclosed in double quotes, and must follow the /I immediately, with no intervening spaces. You can select all filenames that have a description with /I"[?]*", or all filenames that do not have a description with /I"[]".

 

/JJustify (align) filename extensions and display them in the FAT format. If on an LFN drive, you must also specify the /X and /Z options.

 

/LDisplay file and directory names in lower case.

 

/NUse the long filename display format, even if the files are stored on a volume which does not support long filenames. See also /Z.

 

A /N with one of the following arguments has an alternate meaning:

 

eDon't display an error message if no files match
lDon't display the link name for symbolic links
m:nDisplay a maximum of n directory entries

 

/OSet the sorting order. You may use any combination of the sorting options below. If multiple options are used, the listing will be sorted with the first sort option as the primary key, the next as the secondary key, and so on:

 

nSort by filename and extension, unless e is explicitly included. This is the default.
-Reverse the sort order for the next sort key
aSort names and extensions in standard ASCII order, instead of numerically when numeric substrings are included in the name or extension.
cSort by compression ratio (the least compressed file in the list will be displayed first). For single-column directory displays in the short filename format, the compression ratios will be used as the basis of the sort and will also be displayed. For information on supported compression systems see /C above.
dSort by date and time (oldest first); also see /T:acw
eSort by extension
gGroup subdirectories first, then files
iSort by file description (ignored if /C or /O:c is also used)
oSort by owner
rReverse the sort order for all options
sSort by size
tSame as d
uUnsorted

 

/QDisplay the file or directory owner (NTFS and remote directories only).

 

/TDisplay the filenames and attributes in the format RHSADENTPCOIJ, regardless of volume type:

 

R

Read-only

A

Archive

H

Hidden

D

Subdirectory

S

System

C

Compressed

E

Encrypted

O

Offline

N

Normal

I

Not content-indexed

T

Temporary

L

Junction or symbolic link

P

Sparse file

 

 

 

Attributes which are set are represented by their letter, unset attributes by the _ (underscore) character.

 

/T:a|c|w[u] Specify which of the date and time fields on a drive which supports long filenames should be displayed and used for sorting:

 

aLast access date and time (on VFAT volumes access time is always midnight).
cCreation date and time.
wLast modification (write) date and time (default).

 

If you append a u after the field, XDIR will display the file time in UTC.

 

/XDisplay both the short name (8-character name plus 3-character extension) and the long name of each file on an LFN drive.

 

/ZDisplay filenames on LFN drives in the old-style format, with the filename on the left and the description (when available) on the right. Long names will be truncated to 12 characters unless /X is also used. If the name is longer than 12 characters, it will be followed by a è "right arrow" symbol to show that one or more characters have been truncated.