Didn't this use to work?

#1
I'm not sure, but I think the following used to work in some version before 17:
copy t:\<file>;a[TAB]
would add the next file in t:\ starting with "a" to the command line.
Now TCC just removes the ";" and cycles through the list of files.

Did I miss a change, or is my rememberance wrong?
 

gwgaston

Senior IT Security Consultant
May 28, 2008
40
1
SC
#2
I went back as far as v12 and the functionality is the same as it has been. As long as I include a character after the semi-colon, if there is a file that starts with that character (in your case an 'a') and I hit tab the filename is completed in the manner in which you remember. If no filename matches, I get a 'beep' but neither the character nor the semi-colon is removed.

However, if no character is typed after the semi-colon, the semi-colon is removed when I hit tab. I tested with changing a lot of the 'completion' type options/directives (alias, internal command, hidden files & directories, SFN, etc.) and cannot reproduce what you are observing. [EDIT: <--- 'What you thought you remembered observing' is I what I meant here]
 
Last edited:
#3
You're right. My description was wrong. It should have read:
copy t:\<existing_file>;[TAB]
In this case I observe the same behavior that you describe in the first sentence of your second paragraph; this should have been described in my initial question. I believe to remember that the semicolon caused TCC to enumerate the available files, adding them AFTER the semicolon. As you have access to older version, could you test that?
 

gwgaston

Senior IT Security Consultant
May 28, 2008
40
1
SC
#4
As i stated "I went back as far as v12 and the functionality is the same..." Meaning when you put nothing after the semi-colon and hit tab... the semi-colon is removed. This is the behavior since as far back as I recall. Just fired up v9 and same thing. The advantages of using such "include lists" with internal commands for me are exactly what is stated in the help file:


Include lists are similar to multiple filenames, but have three important differences.
  • First, you don't have to repeat the path to your files if you use an include list, because all of the included files must be in the same directory
  • Second, if you use include lists, you aren't as likely to accidentally overwrite files if you forget a destination path for commands like COPY, because the last name in the list will be part of the include list, and won't be seen as the destination file name. Include lists can only be used as the source parameter -- the location files are coming from -- for COPY and other similar commands. They cannot be used to specify a destination for files.
  • Third, multiple filenames and include lists are processed differently by the DIR and SELECT commands. If you use multiple filenames, all of the files matching the first filename are processed, then all of the files matching the second name, and so on. When you use an include list, all files that match any entry in the include list are processed together, and will appear together in the directory display or SELECT list. You can see this difference clearly if you experiment with both techniques and the DIR command.
 

gwgaston

Senior IT Security Consultant
May 28, 2008
40
1
SC
#5
There is a "trick' of using two semi-colons together and hitting tab/F9, and this will remove one semi-colon and then complete the first file in the directory, you can then hit tab again and get the next file, add another two semi-colons, and hit tab 3 times to get the third file, etc. Not sure how useful that would be to you.
 
Likes: Exolon