Command Prompt / Console / Windows Subsystem for Linux (WSL)

Greetings from the Windows Command-Line Teams, including the Windows Console and Windows Subsystem for Linux (WSL) teams!

We’re hear to learn about the features you’d like to see in the Windows Console (the terminal app itself), Cmd and PowerShell shells, and the Windows Subsystem for Linux (WSL) upon which several Linux distros now run!

Note: Please don’t file bugs & issues here: file issues on our GitHub repos instead:

Windows Console & WSL Teams.

$| > (thinking…) Enter your idea and we'll search to see if someone has already suggested it. If a similar idea already exists, you can support and comment on it. If it doesn't exist, you can post your idea so others can support it. Enter your idea and we'll search to see if someone has already suggested it. • Hot ideas • Top ideas • New ideas • My feedback 1. Let programs enable ANSI color support by setting CLICOLOR=1 Currently all my Python scripts contain this code block so that ANSI color escape codes also work on Windows: https://gist.github.com/jhasse/4566a83b40a08d7b4987444276e4dddc It would be great, if this could just be done in a one liner by setting an environment variable for example (nearly all languages have cross-platform support for that). macOS uses CLICOLOR to enable colored output for their command line utils so it might be a good idea to reuse that: https://bixense.com/clicolors 12 votes Sign in Check! (thinking…) Reset or sign in with Signed in as (Sign out) We’ll send you updates on this idea • Do not destroy all input to right of tab completion Currently, if you want to use tab completion to change one of the arguments to a prior-executed command, you have to hope it's the last argument on the command line. This is because tab completion wipes all characters to the "right" (en-US) of the cursor. I'll use robocopy.exe as an example, which has the following usage: ROBOCOPY source destination [file [file]...] [options] As a contrived example, with [] to designate cursor position when tab is pressed.... 1. standard tab completion: Robocopy.exe C:\windows\in[] 2. Tab completion at end of word, but middle of line: Robocopy.exe C:\windows\in[] C:\t\inf /S 3. Tab completion… 124 votes Sign in Check! (thinking…) Reset or sign in with Signed in as (Sign out) We’ll send you updates on this idea • Add "sudo" tool/command in cmd/PowerShell On *nix you can run a command from a non-root shell, which is the equivalent of a non-administrator Command Prompt, with administrative privileges, similar to what UAC does when it asks a user if they would like to give an application administrative privileges. To disable a network adapter, for example, you can run "sudo ifconfig eth0 down". The prefixed "sudo" command will run "ifconfig eth0 down" with what is essentially administrator privileges in Windows. Currently you have to do some long-winded (long-typed?) "runas", which requires that a username and password are provided. I don't necessarily need Command Prompt to always… 268 votes Sign in Check! (thinking…) Reset or sign in with Signed in as (Sign out) We’ll send you updates on this idea • Running CMD in system tray I would like an option to run the CMD (batches) in the system tray instead of minimized on the Taskbar. It can be started minimized by using 'start /min' command in a batch file, but it cannot be located in the system tray. 11 votes Sign in Check! (thinking…) Reset or sign in with Signed in as (Sign out) We’ll send you updates on this idea • make /d the default behavior for CD Today when I work in CMD after each cd I type /d, isn't better to include it by default? 4 votes Sign in Check! (thinking…) Reset or sign in with Signed in as (Sign out) We’ll send you updates on this idea • i think it good I want to help 1 vote Sign in Check! (thinking…) Reset or sign in with Signed in as (Sign out) We’ll send you updates on this idea • Please add left margin in the console. It's been so many years... It's been years. I mean YEARS. People still ask for this. Adding some left margin would greatly improve readability. I don't think it's hard to ask for some left margin or some padding... Someone on the dev team please track this issue and I mean actually track it and give the community some feedback. 4 votes Sign in Check! (thinking…) Reset or sign in with Signed in as (Sign out) We’ll send you updates on this idea • Let PROMPT honor regional settings For now PROMPT's$t variable do not takes into account regional setting "Show leading zeroes". Let's correct this :)

Check!
(thinking…)
Reset
Signed in as (Sign out)

We’ll send you updates on this idea

• Allow customizing the highlight color.

Right now, you can only customize the foreground, background, popup, and popup background colors. You should be allowed to also adjust the highlight (selection) foreground and background colors, as well as the cursor color.

Check!
(thinking…)
Reset
Signed in as (Sign out)

We’ll send you updates on this idea

• set 'enabledelayedexpansion' as a default behavior for Windows Command Prompt

In some cases, Windows Command Prompt work with (environment) variables in its own way, which differs from widespread. E.g. code:

set TEMPVAR=1
if "1"=="1" (
set TEMPVAR=2
echo TEMPVAR="%TEMPVAR%"
)

executed from batchfile, print "1", when most of other shells aor programming languages print "2". Of course, there is a workaround for a sample above (to use 'call echo...' or 'enabledelayedexpansion' commands). But this is redundantly and not "common practice".

From the other side, it's difficult to say, what is common between 'setlocal ... endlocal' and 'enabledelayedexpansion' options. Mean "setting local variables" and "enabling delayed expansion" is logically unrelated functionality.…

Check!
(thinking…)
Reset
Signed in as (Sign out)

We’ll send you updates on this idea

• Incompatible Error:Can not handle mouse right button drag-drop operation on my old console application!

Incompatible Error:Can not handle mouse right button drag-drop operation on my old console application!

Check!
(thinking…)
Reset
Signed in as (Sign out)

We’ll send you updates on this idea

• CMD Word wrapping during a command causes excessive additional spaces.

1. Open CMD
2. Run a command like ping 192.168.1.1
3. Resize the Window

Result: A lot of spaces are added, if you resize for long enough, this can continue to the point where the original text can no longer be scrolled to. This also applies to applications using their own CMD window for outputing errors warnings and information.

Expected result: I would expect positioning of characters to change for wrapping, without any change to the displayed strings themselves.

Check!
(thinking…)
Reset
Signed in as (Sign out)

We’ll send you updates on this idea

• Add slash character handling in the paths for the cmd-line commands (del, start).

Currently the output from git is unusable in cmd, for example there is no easy way to copy & paste path to a file so that it can be used with del as it uses slashes.

Check!
(thinking…)
Reset
Signed in as (Sign out)

We’ll send you updates on this idea

Note – moved this ask from Console to Cmd.

Alternative: Use PowerShell which does handle both / and \ as path separators.

• Intellisense support to DOS

1. Add Intellisense dropdown with suggestions to commands as user types.
2. Console app development framework added with enough API so developers can add Intellisense features to their console apps.

Check!
(thinking…)
Reset
Signed in as (Sign out)

We’ll send you updates on this idea

• Fix tab expansion of environment variables

Currently, tab expansion works fairly well. However, tab expansion fails when any part of a path uses an environment variable. Please fix this so tab completion (matching files / directories) expands environment variables as part of it's tab completion.

Working example:
1. In cmd.exe, type the following
cd C:\windows
2. Now hit 'tab' key twice
3. Update the cmd.exe line to the following:
cd %windir%\
4. Now hit 'tab' key many times

Results (as expected):
At step 2, the tab cycles through all directories that start with 'c:\windows'.
At step 4, the tab cycles through all subdirectories directly under c:\windows. …