
Quote: Originally Posted by
Neutrino
Subject says it all really. If I use an environment variable on the commandline in a path it apppears to stop path completion from working correctly. In the example below on the last line I hit TAB after typing "dir %userprofile%\do" and instead of the path completion acting on the expanded %userprofile% variable and coming up with Documents it instead just retrieved the first hit for "do" from the root (current) directory.
Is there a fix or workaround for this as the inability to use environment variables and path completion together is really annoying?
Code:
C:\>echo %userprofile%
C:\Users\MyName
C:\>dir %userprofile%
Volume in drive C has no label.
Volume Serial Number is ACA3-CBF7
Directory of C:\Users\MyName
06/08/2010 12:39 <DIR> .
06/08/2010 12:39 <DIR> ..
01/07/2010 09:27 <DIR> Contacts
06/08/2010 15:09 <DIR> Desktop
07/08/2010 10:45 <DIR> Documents
07/08/2010 10:48 <DIR> Downloads
01/07/2010 09:27 <DIR> Favorites
01/07/2010 09:27 <DIR> Links
07/08/2010 10:46 <DIR> Music
07/08/2010 10:46 <DIR> Pictures
01/07/2010 09:27 <DIR> Searches
07/08/2010 10:46 <DIR> Videos
1 File(s) 85 bytes
16 Dir(s) 43,400,957,952 bytes free
C:\>dir %userprofile%"\Documents and Settings" The reason why you get "Document and Settings" when you press <TAB> to activate code completion is because you're in the root of the drive. I've just tested this, and got two different results. I highlighted what I typed before pressing <TAB>:
Code:
Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\Peter Dzomlija>dir Documents
Volume in drive C has no label.
Volume Serial Number is 365F-53AD
Directory of C:\Users\Peter Dzomlija\Documents
07/08/2010 08:10 <DIR> My PSP Files
0 File(s) 0 bytes
1 Dir(s) 22,641,709,056 bytes free
C:\Users\Peter Dzomlija>cd\
C:\>dir "Documents and Settings"
Volume in drive C has no label.
Volume Serial Number is 365F-53AD
Directory of C:\Documents and Settings
File Not Found
C:\> Code completion works on the current contents of a folder only, and does not reparse subfolders, nor does it expand environment variables. The EV expansion only comes into play when the command/s is executed.