Using multiple different shells/subsystems on Windows

Shells to be used:

All of the above are managed through one shell manager - ConEmu.

First install all the shells, then ConEmu.

Easy installation of useful dev tools

Use scoop to install basic utilities and languages. Install from powershell (without admin rights):

Set-ExecutionPolicy RemoteSigned -scope CurrentUser
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')

Using command scoop export you can get an importable list of all installed packages. Here’s mine currently: scoop-export.txt.

Tweaks to shells

cmd.exe

To get auto-completion support similar to what you get in bash, install clink.

ConEmu

Win + Alt + P to open Properties. Startup -> Tasks and set shortcuts for shells you’ll be using.

  • Alt + C for cmd.exe
  • Alt + Shift + C for elevated cmd.exe
  • Alt + W for MINGW from git
  • Alt + Y for Cygwin

The full config is here, can be imported at installation time.

Cygwin

Basic packages to install throught setup.exe:

  • wget
  • curl
  • lynx
  • zip
  • unzip

There is little known package manager that can be used from inside cygwin without having to run setup.exe all the time: apt-cyg.

Installation:

lynx -source rawgit.com/transcode-open/apt-cyg/master/apt-cyg > apt-cyg
install apt-cyg /bin

Related