AllArgs plugin for Take Command / TCC / TCC/LE

Version 1.0.0     2021-10-08

Charles Dye

Purpose:

This plugin implements a new one hotkey, F3, which inserts the arguments from the last command (everything but the first word) into the current command line. It also provides one new command, ALLARGS, to display and change plugin settings.

This is essentially the same function that the F3 key has provided since MS-DOS days. However, it has never been very easy to use. F3 has traditionally copied text from the old command line to the current command line, starting at the current cursor position in both. It’s tricky to use unless the old command and the new command are the same length. This plugin makes F3 work the way I think it should have worked all along.

Installation:

To use this plugin, copy AllArgs.dll to some known location on your hard drive. (If you are still using the 32-bit version of Take Command, take AllArgs-x86.dll instead of AllArgs.dll.) Load the .DLL file with a PLUGIN /L command, for example:

plugin /l c:\bin\tcmd\test\allargs.dll

If you copy these files to a subdirectory named PlugIns within your Take Command program directory, the plugin will be loaded automatically when TCC starts.

Plugin Features:

New hotkey: F3

New command: ALLARGS

Syntax Note:

The syntax definitions in the following text use these conventions for clarity:

BOLD CODEindicates text which must be typed exactly as shown.
CODEindicates optional text, which may be typed as shown or omitted.
Bold italicnames a required argument; a value must be supplied.
Regular italicnames an optional argument.
ellipsis…after an argument means that more than one may be given.


New Hotkey:

F3 — Inserts all arguments from the last command (i.e. everything except the first word) into the current command line.


If the last command had no arguments, pressing the hotkey will make the plugin beep.

F3 is the default hotkey. You can change it to a different key with the ALLARGS command.



New Command:

ALLARGS — Display or change settings for this plugin.

Syntax:
ALLARGS /A:yn /B:yn /D /K:yn /L /O:yn /Q /R /S hotkey

/A:ynbreak at first unquoted slash (Y or N)Yes
/B:ynbeep on errors (Y or N)Yes
/Drestore the original plugin defaults
/K:ynkeep old arguments (Y or N)No
/Llists all supported hotkeys
/O:ynoverwrite any text to the right of the cursorNo
/Qquietly
/Rrestore saved settings from the registry
/Ssave settings to the registry as the new default
hotkeye.g. F3, Ctrl-Q, Alt-A, Shift-F10F3

/A: controls whether an unquoted slash is treated as the start of arguments. This is useful if you are in the habit of not spacing between a command and its arguments, e.g. DIR/A.

/B: controls whether the plugin beeps when an error is encountered. The default is Yes. The most likely error is that there are no prior arguments to insert.

/K: controls what the plugin does when a command with no arguments — a one-word command — is entered. The default behavior is to discard the arguments from the previous command. If you specify /K:Y then the plugin will instead retain the last set of arguments across any argless commands.

/O: controls what happens to any text to the right of the cursor when you press F3. The default is to insert the old arguments at the cursor, and push any remaining text right. If you use /O:Y, then any text to the right of the cursor will simply be lost.

If you save the current settings to the registry with /S, they will be used by default the next time the plugin is loaded.



Startup Message:

This plugin displays an informational line when it initializes. The message will be suppressed in transient or pipe shells. You can disable it for all shells by defining an environment variable named NOLOADMSG, for example:

set /e /u noloadmsg=1

Status and Licensing:

This plugin is © Copyright 2021, Charles Dye. Unaltered copies of the binary and documentation files may be freely distributed without restriction. I make no guarantee and give no warranty for its operation. If you find a problem, you can report it in the JP Software support forum.

Download:

You can download the current version of the plugin from http://prospero.unm.edu/dl/allargs.zip or ftp://prospero.unm.edu/allargs.zip.