Top Related Projects
The new Windows Terminal and the original Windows console host, all in the same place!
A cross-platform, OpenGL terminal emulator.
iTerm2 is a terminal emulator for Mac OS X that does amazing things.
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
A terminal built on web technologies
Cross-platform, fast, feature-rich, GPU based terminal
Quick Overview
Cmder is a software package that provides a powerful command-line interface for Windows. It combines popular console emulator ConEmu with enhanced command-line tools, offering a Unix-like terminal experience on Windows systems. Cmder includes features like Git integration, custom aliases, and a rich set of utilities.
Pros
- Provides a Unix-like terminal experience on Windows
- Includes Git integration out of the box
- Offers customizable aliases and keyboard shortcuts
- Portable version available, allowing for easy transfer between systems
Cons
- Can be resource-intensive compared to the default Windows command prompt
- Learning curve for users unfamiliar with Unix-like terminals
- Some features may require additional configuration for optimal use
- Occasional compatibility issues with certain Windows environments
Getting Started
- Download Cmder from the official GitHub repository: https://github.com/cmderdev/cmder/releases
- Choose between the full version (with Git) or the mini version (without Git)
- Extract the downloaded ZIP file to your desired location
- Run
Cmder.exe
to start the console emulator - (Optional) Add Cmder to the Windows context menu by running
.\cmder.exe /REGISTER ALL
from an elevated prompt
To customize Cmder:
- Open the settings by pressing
Win + Alt + P
- Explore the various tabs to adjust appearance, keyboard shortcuts, and startup options
- Create custom aliases by editing the
user_aliases.cmd
file in the Cmder config directory
For more advanced usage and configuration options, refer to the official documentation on the GitHub repository.
Competitor Comparisons
The new Windows Terminal and the original Windows console host, all in the same place!
Pros of Terminal
- Native Windows integration with seamless support for Windows features and APIs
- More active development with frequent updates and new features
- Supports multiple tabs and panes within a single window
Cons of Terminal
- Larger installation size and system resource usage
- Steeper learning curve for customization and advanced features
- Limited cross-platform compatibility (primarily Windows-focused)
Code Comparison
Terminal (JSON configuration):
{
"defaultProfile": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
"profiles": {
"list": [
{
"guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
"name": "Windows PowerShell",
"commandline": "powershell.exe"
}
]
}
}
Cmder (ConEmu.xml configuration):
<key name="Tasks" modified="2021-03-01 12:00:00" build="210101">
<value name="Commands" type="string" data="powershell.exe"/>
<value name="Name" type="string" data="{Powershell}"/>
</key>
Both Terminal and Cmder offer powerful terminal experiences for Windows users. Terminal excels in native Windows integration and active development, while Cmder provides a more lightweight and portable solution. The choice between them depends on individual needs and preferences for features, customization, and system resource usage.
A cross-platform, OpenGL terminal emulator.
Pros of Alacritty
- Faster performance due to GPU acceleration
- Cross-platform support (Windows, macOS, Linux)
- Minimal resource usage and lightweight design
Cons of Alacritty
- Limited built-in features compared to Cmder's extensive toolset
- Steeper learning curve for configuration (YAML-based)
- Lacks integrated package management for extensions
Code Comparison
Alacritty configuration (YAML):
window:
dimensions:
columns: 80
lines: 24
padding:
x: 2
y: 2
Cmder configuration (XML):
<key name="Window">
<value name="Columns" type="dword" data="00000050"/>
<value name="Rows" type="dword" data="00000018"/>
<value name="WindowPadding" type="dword" data="00000002"/>
</key>
Summary
Alacritty is a fast, GPU-accelerated terminal emulator focusing on performance and minimalism. It offers cross-platform support but requires more manual configuration. Cmder, on the other hand, provides a feature-rich environment with integrated tools and easier customization, but may be less performant on lower-end systems. The choice between them depends on whether you prioritize speed and simplicity (Alacritty) or a comprehensive out-of-the-box experience (Cmder).
iTerm2 is a terminal emulator for Mac OS X that does amazing things.
Pros of iTerm2
- Native macOS application with deep system integration
- Extensive customization options, including split panes and profiles
- Advanced features like search, autocomplete, and command history
Cons of iTerm2
- Limited to macOS, not cross-platform
- Steeper learning curve for advanced features
- Requires more system resources compared to simpler terminals
Code Comparison
iTerm2 (Objective-C):
- (void)setSessionTitle:(NSString *)title
{
[_delegate_ setTitle:title];
[self setDirty];
}
Cmder (Batch):
@echo off
SET CMDER_ROOT=%~dp0
"%CMDER_ROOT%\vendor\init.bat"
Summary
iTerm2 is a powerful, feature-rich terminal emulator for macOS, offering extensive customization and advanced functionality. It excels in providing a native macOS experience with deep system integration. However, it's limited to macOS and may have a steeper learning curve for some users.
Cmder, on the other hand, is a Windows-based console emulator that aims to provide a Unix-like experience on Windows. It's more lightweight and portable, making it easier to set up and use across different Windows systems. However, it may lack some of the advanced features and polish of iTerm2.
The code comparison shows the difference in implementation languages and approaches, with iTerm2 using Objective-C for its macOS-native application, while Cmder relies on batch scripts for its Windows-based functionality.
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
Pros of WezTerm
- Cross-platform support (Windows, macOS, Linux)
- GPU-accelerated rendering for improved performance
- Extensive customization options through Lua configuration
Cons of WezTerm
- Steeper learning curve due to Lua configuration
- Larger installation size compared to Cmder
Code Comparison
WezTerm configuration (Lua):
return {
font = wezterm.font("JetBrains Mono"),
color_scheme = "Dracula",
default_prog = {"pwsh.exe", "-NoLogo"},
}
Cmder configuration (ConEmu.xml):
<key name="Font">
<value name="Name" type="string" data="Consolas"/>
<value name="Size" type="dword" data="00000010"/>
</key>
Summary
WezTerm offers a more modern and feature-rich terminal experience with cross-platform support and GPU acceleration. It provides extensive customization through Lua scripting, allowing for complex configurations. However, this can lead to a steeper learning curve compared to Cmder's simpler setup.
Cmder, on the other hand, is more lightweight and easier to set up, making it a good choice for users who prefer a simpler, Windows-focused terminal solution. It may be more suitable for those who don't require advanced features or cross-platform compatibility.
Both projects aim to enhance the terminal experience, but they cater to different user preferences and requirements.
A terminal built on web technologies
Pros of Hyper
- Built on web technologies (HTML, CSS, JavaScript), allowing for easy customization and theming
- Extensible plugin system for adding new features and functionality
- Cross-platform support (Windows, macOS, Linux) with consistent experience
Cons of Hyper
- Can be resource-intensive due to Electron framework
- May have slower startup times compared to native terminal emulators
- Limited built-in features, requiring plugins for advanced functionality
Code Comparison
Cmder configuration (ConEmu.xml):
<key name="Tasks" modified="2023-04-01 12:00:00" build="180626">
<value name="{cmd::Cmder}" modified="2023-04-01 12:00:00" build="180626">
<value name="Commands" type="string" data="cmd /k "%ConEmuDir%\..\init.bat" -new_console:d:%USERPROFILE%"/>
</value>
</key>
Hyper configuration (.hyper.js):
module.exports = {
config: {
shell: 'C:\\Windows\\System32\\cmd.exe',
shellArgs: ['--login'],
env: {},
bell: 'SOUND',
},
};
Cross-platform, fast, feature-rich, GPU based terminal
Pros of Kitty
- Cross-platform support (Linux, macOS, BSD)
- GPU-accelerated rendering for improved performance
- Extensive customization options and scripting capabilities
Cons of Kitty
- Steeper learning curve for configuration
- Limited Windows support (requires WSL)
- May require more system resources compared to simpler terminals
Code Comparison
Kitty configuration example:
font_family Fira Code
font_size 12.0
cursor_shape beam
background_opacity 0.9
Cmder configuration example:
set CMDER_ROOT=C:\cmder
set PATH=%CMDER_ROOT%\bin;%PATH%
alias ls=ls --show-control-chars -F --color $*
Summary
Kitty is a feature-rich, cross-platform terminal emulator with GPU acceleration and extensive customization options. It excels in performance and flexibility but may require more setup time. Cmder, on the other hand, is a Windows-focused console emulator that provides a Unix-like experience with easier setup but fewer advanced features. The choice between them depends on the user's operating system, desired features, and willingness to invest time in configuration.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Cmder
Cmder is a software package created out of pure frustration over absence of usable console emulator on Windows. It is based on ConEmu with major config overhaul, comes with a Monokai color scheme, amazing clink (further enhanced by clink-completions) and a custom prompt layout.
Why use it
The main advantage of Cmder is portability. It is designed to be totally self-contained with no external dependencies, which makes it great for USB Sticks or cloud storage. So you can carry your console, aliases and binaries (like wget
, curl
and git
) with you anywhere.
The Cmder's user interface is also designed to be more eye pleasing, and you can compare the main differences between Cmder and ConEmu here.
Installation
Single User Portable Config
- Download the latest release
- Extract the archive. Note: This path should not be
C:\Program Files
or anywhere else that would require Administrator access for modifying configuration files - (optional) Place your own executable files into the
%cmder_root%\bin
folder to be injected into your PATH. - Run
Cmder.exe
Shared Cmder install with Non-Portable Individual User Config
- Download the latest release
- Extract the archive to a shared location.
- (optional) Place your own executable files and custom app folders into the
%cmder_root%\bin
. See: bin/README.md- This folder to be injected into your PATH by default.
- See
/max_depth [1-5]
in 'Command Line Arguments forinit.bat
' table to add subdirectories recursively.
- (optional) Place your own custom app folders into the
%cmder_root%\opt
. See: opt/README.md- This folder will NOT be injected into your PATH so you have total control of what gets added.
- Run
Cmder.exe
with/C
command line argument. Example:cmder.exe /C %userprofile%\cmder_config
-
This will create the following directory structure if it is missing.
c:\users\[username]\cmder_config ââââbin ââââconfig â ââââprofile.d ââââopt
-
- (optional) Place your own executable files and custom app folders into
%userprofile%\cmder_config\bin
.- This folder to be injected into your PATH by default.
- See
/max_depth [1-5]
in 'Command Line Arguments forinit.bat
' table to add subdirectories recursively.
- (optional) Place your own custom app folders into the
%user_profile%\cmder_config\opt
.- This folder will NOT be injected into your PATH so you have total control of what gets added.
- Both the shared install and the individual user config locations can contain a full set of init and profile.d scripts enabling shared config with user overrides. See below.
Cmder.exe Command Line Arguments
Argument | Description |
---|---|
/C [user_root_path] | Individual user Cmder root folder. Example: %userprofile%\cmder_config |
/M | Use conemu-%computername%.xml for ConEmu settings storage instead of user_conemu.xml |
/REGISTER [ALL, USER] | Register a Windows Shell Menu shortcut. |
/UNREGISTER [ALL, USER] | Un-register a Windows Shell Menu shortcut. |
/SINGLE | Start Cmder in single mode. |
/START [start_path] | Folder path to start in. |
/TASK [task_name] | Task to start after launch. |
/X [ConEmu extras pars] | Forwards parameters to ConEmu |
Context Menu Integration
So you've experimented with Cmder a little and want to give it a shot in a more permanent home;
Shortcut to open Cmder in a chosen folder
- Open a terminal as an Administrator
- Navigate to the directory you have placed Cmder
- Execute
.\cmder.exe /REGISTER ALL
If you get an "Access Denied" message, make sure you are executing the command in an Administrator prompt.
In a file explorer window right click in or on a directory to see "Cmder Here" in the context menu.
Keyboard shortcuts
Tab manipulation
- Ctrl + T : New tab dialog (maybe you want to open cmd as admin?)
- Ctrl + W : Close tab
- Ctrl + D : Close tab (if pressed on empty command)
- Shift + Alt + #Number : Fast new tab: 1 - CMD, 2 - PowerShell
- Ctrl + Tab : Switch to next tab
- Ctrl + Shift + Tab : Switch to previous tab
- Ctrl + #Number : Switch to tab #Number
- Alt + Enter: Fullscreen
Shell
- Ctrl + Alt + U : Traverse up in directory structure (lovely feature!)
- End, Home, Ctrl : Traversing text with as usual on Windows
- Ctrl + R : History search
- Shift + Mouse : Select and copy text from buffer
(Some shortcuts are not yet documented, though they exist - please document them here)
Features
Access to multiple shells in one window using tabs
You can open multiple tabs each containing one of the following shells:
Task | Shell | Description |
---|---|---|
Cmder | cmd.exe | Windows cmd.exe shell enhanced with Git, Git aware prompt, Clink (GNU Readline), and Aliases. |
Cmder as Admin | cmd.exe | Administrative Windows cmd.exe Cmder shell. |
PowerShell | powershell.exe | Windows PowerShell enhanced with Git and Git aware prompt . |
PowerShell as Admin | powershell.exe | Administrative Windows powershell.exe Cmder shell. |
Bash | bash.exe | Unix/Linux like bash shell running on Windows. |
Bash as Admin | bash.exe | Administrative Unix/Linux like bash shell running on Windows. |
Mintty | bash.exe | Unix/Linux like bash shell running on Windows. See below for Mintty configuration differences |
Mintty as Admin | bash.exe | Administrative Unix/Linux like bash shell running on Windows. See below for Mintty configuration differences |
Cmder, PowerShell, and Bash tabs all run on top of the Windows Console API and work as you might expect in Cmder with access to use ConEmu's color schemes, key bindings and other settings defined in the ConEmu Settings dialog.
â Note: Only the full edition of Cmder comes with a pre-installed bash, using a vendored git-for-windows installation. The pre-configured Bash tabs may not work on Cmder mini edition without additional configuration.
You may however, choose to use an external installation of bash, such as Microsoft's Subsystem for Linux (called WSL) or the Cygwin project which provides POSIX support on windows.
â Note: Mintty tabs use a program called 'mintty' as the terminal emulator that is not based on the Windows Console API, rather it's rendered graphically by ConEmu. Mintty differs from the other tabs in that it supports xterm/xterm-256color TERM types, and does not work with ConEmu settings like color schemes and key bindings. As such, some differences in functionality are to be expected, such as Cmder not being able to apply a system-wide configuration to it.
As a result mintty specific config is done via the [%USERPROFILE%|$HOME]/.minttyrc
file. You may read more about Mintty and its config file here.
An example of setting Cmder portable terminal colors for mintty:
From a bash/mintty shell:
cd $CMDER_ROOT/vendor
git clone https://github.com/karlin/mintty-colors-solarized.git
cd mintty-colors-solarized/
echo source \$CMDER_ROOT/vendor/mintty-colors-solarized/mintty-solarized-dark.sh>>$CMDER_ROOT/config/user_profile.sh
You may find some Monokai color schemes for mintty to match Cmder here.
Changing Cmder Default cmd.exe
Prompt Config File
The default Cmder shell cmd::Cmder
prompt is customized using Clink
and is configured by editing a config file that exists in one of two locations:
- Single User Portable Config
%CMDER_ROOT%\config\cmder_prompt_config.lua
- Shared Cmder install with Non-Portable Individual User Config
%CMDER_USER_CONFIG%\cmder_prompt_config.lua
If your Cmder setup does not have this file create it from %CMDER_ROOT%\vendor\cmder_prompt_config.lua.default
Customizations include:
- Colors.
- Single/Multi-line.
- Full path/Folder only.
[user]@[host]
to the beginning of the prompt.~
for home directory.λ
symbol
Documentation is in the file for each setting.
Changing Cmder Default cmd.exe
Shell Startup Behaviour Using Task Arguments
- Press Win + Alt + T
- Click either:
1. {cmd::Cmder as Admin}
2. {cmd::Cmder}
- Add command line arguments where specified below:
Note: Pay attention to the quotes!
cmd /s /k ""%ConEmuDir%\..\init.bat" [ADD ARGS HERE]"
Command Line Arguments for init.bat
Argument | Description | Default |
---|---|---|
/c [user cmder root] | Enables user bin and config folders for 'Cmder as admin' sessions due to non-shared environment. | not set |
/d | Enables debug output. | not set |
/f | Enables Cmder Fast Init Mode. This disables some features, see pull request #1492 for more details. | not set |
/t | Enables Cmder Timed Init Mode. This displays the time taken run init scripts | not set |
/git_install_root [file path] | User specified Git installation root path. | %CMDER_ROOT%\vendor\Git-for-Windows |
/home [home folder] | User specified folder path to set %HOME% environment variable. | %userprofile% |
/max_depth [1-5] | Define max recurse depth when adding to the path for %cmder_root%\bin and %cmder_user_bin% | 1 |
/nix_tools [0-2] | Define how *nix tools are added to the path. Prefer Windows Tools: 1, Prefer *nix Tools: 2, No /usr/bin in %PATH% : 0 | 1 |
/svn_ssh [path to ssh.exe] | Define %SVN_SSH% so we can use git svn with ssh svn repositories. | %GIT_INSTALL_ROOT%\bin\ssh.exe |
/user_aliases [file path] | File path pointing to user aliases. | %CMDER_ROOT%\config\user_aliases.cmd |
/v | Enables verbose output. | not set |
(custom arguments) | User defined arguments processed by cexec . Type cexec /? for more usage. | not set |
Cmder Shell User Config
Single user portable configuration is possible using the Cmder specific shell config files. Edit the below files to add your own configuration:
Shell | Cmder Portable User Config |
---|---|
Cmder | %CMDER_ROOT%\config\user_profile.cmd |
PowerShell | $ENV:CMDER_ROOT\config\user_profile.ps1 |
Bash/Mintty | $CMDER_ROOT/config/user_profile.sh |
Note: Bash and Mintty sessions will also source the $HOME/.bashrc
file if it exists after it sources $CMDER_ROOT/config/user_profile.sh
.
You can write *.cmd|*.bat
, *.ps1
, and *.sh
scripts and just drop them in the %CMDER_ROOT%\config\profile.d
folder to add startup config to Cmder.
Shell | Cmder Profile.d Scripts |
---|---|
Cmder | %CMDER_ROOT%\config\profile.d\*.bat and *.cmd |
PowerShell | $ENV:CMDER_ROOT\config\profile.d\*.ps1 |
Bash/Mintty | $CMDER_ROOT/config/profile.d/*.sh |
Git Status Opt-Out
To disable Cmder prompt git status globally add the following to ~/.gitconfig
or locally for a single repo [repo]/.git/config
and start a new session.
Note: This configuration is not portable
[cmder]
status = false # Opt out of Git status for 'ALL' Cmder supported shells.
cmdstatus = false # Opt out of Git status for 'Cmd.exe' shells.
psstatus = false # Opt out of Git status for 'Powershell.exe and 'Pwsh.exe' shells.
shstatus = false # Opt out of Git status for 'bash.exe' shells.
Aliases
Cmder(Cmd.exe
) Aliases
You can define simple aliases for cmd.exe
sessions with a command like alias name=command
. Cmd.exe aliases support optional parameters through the $1-9
or the $*
special characters so the alias vi=vim.exe $*
typed as vi [filename]
will open [filename]
in vim.exe
.
Cmd.exe aliases can also be more complex. See: DOSKEY.EXE documentation for additional details on complex aliases/macros for cmd.exe
Aliases defined using the alias.bat
command will automatically be saved in the %CMDER_ROOT%\config\user_aliases.cmd
file
To make an alias and/or any other profile settings permanent add it to one of the following:
Note: These are loaded in this order by $CMDER_ROOT/vendor/init.bat
. Anything stored in %CMDER_ROOT%
will be a portable setting and will follow Cmder to another machine.
%CMDER_ROOT%\config\profile.d\*.cmd
and\*.bat
%CMDER_ROOT%\config\user_aliases.cmd
%CMDER_ROOT%\config\user_profile.cmd
Bash.exe|Mintty.exe Aliases
Bash shells support simple and complex aliases with optional parameters natively so they work a little different. Typing alias name=command
will create an alias only for the current running session.
To make an alias and/or any other profile settings permanent add it to one of the following:
Note: These are loaded in this order by $CMDER_ROOT/vendor/git-for-windows/etc/profile.d/cmder.sh
. Anything stored in $CMDER_ROOT
will be a portable setting and will follow Cmder to another machine.
$CMDER_ROOT/config/profile.d/*.sh
$CMDER_ROOT/config/user_profile.sh
$HOME/.bashrc
If you add bash aliases to $CMDER_ROOT/config/user_profile.sh
they will be portable and follow your Cmder folder if you copy it to another machine. $HOME/.bashrc
defined aliases are not portable.
PowerShell.exe Aliases
PowerShell has native simple alias support, for example [new-alias | set-alias] alias command
, so complex aliases with optional parameters are not supported in PowerShell sessions. Type get-help [new-alias|set-alias] -full
for help on PowerShell aliases.
To make an alias and/or any other profile settings permanent add it to one of the following:
Note: These are loaded in this order by $ENV:CMDER_ROOT\vendor\user_profile.ps1
. Anything stored in $ENV:CMDER_ROOT
will be a portable setting and will follow Cmder to another machine.
$ENV:CMDER_ROOT\config\profile.d\*.ps1
$ENV:CMDER_ROOT\config\user_profile.ps1
SSH Agent
To start the vendored SSH agent simply call start-ssh-agent
, which is in the vendor/git-for-windows/cmd
folder.
If you want to run SSH agent on startup, include the line @call "%GIT_INSTALL_ROOT%/cmd/start-ssh-agent.cmd"
in %CMDER_ROOT%/config/user_profile.cmd
(usually just uncomment it).
Vendored Git
Cmder is by default shipped with a vendored Git installation. On each instance of launching Cmder, an attempt is made to locate any other user provided Git binaries. Upon finding a git.exe
binary, Cmder further compares its version against the vendored one by executing it. The vendored git.exe
binary is only used when it is more recent than the user-installed one.
You may use your favorite version of Git by including its path in the %PATH%
environment variable. Moreover, the Mini edition of Cmder (found on the downloads page) excludes any vendored Git binaries.
Using external Cygwin/Babun, MSys2, WSL, or Git for Windows SDK with Cmder.
You may run bash (the default shell used on Linux, macOS and GNU/Hurd) externally on Cmder, using the following instructions:
- Setup a new task by pressing Win +Alt + T.
- Click the
+
button to add a task. - Name the new task in the top text box.
- Provide task parameters, this is optional.
- Add
cmd /c "[path_to_external_env]\bin\bash --login -i" -new_console
to theCommands
text box.
Recommended Optional Steps:
Copy the vendor/cmder_exinit
file to the Cygwin/Babun, MSys2, or Git for Windows SDK environments /etc/profile.d/
folder to use portable settings in the $CMDER_ROOT/config
folder.
Note: MinGW could work if the init scripts include profile.d
but this has not been tested.
The destination file extension depends on the shell you use in that environment. For example:
- bash - Copy to
/etc/profile.d/cmder_exinit.sh
- zsh - Copy to
/etc/profile.d/cmder_exinit.zsh
Uncomment and edit the line below in the script to use Cmder config even when launched from outside Cmder.
# CMDER_ROOT=${USERPROFILE}/cmder # This is not required if launched from Cmder.
Customizing user sessions using init.bat
custom arguments.
You can pass custom arguments to init.bat
and use cexec.cmd
in your user_profile.cmd
to evaluate these
arguments then execute commands based on a particular flag being detected or not.
init.bat
creates two shortcuts for using cexec.cmd
in your profile scripts.
%ccall%
- Evaluates flags, runs commands if found, and returns to the calling script and continues.
ccall=call C:\Users\user\cmderdev\vendor\bin\cexec.cmd
Example: %ccall% /startnotepad start notepad.exe
%cexec%
- Evaluates flags, runs commands if found, and does not return to the calling script.
cexec=C:\Users\user\cmderdev\vendor\bin\cexec.cmd
Example: %cexec% /startnotepad start notepad.exe
It is useful when you have multiple tasks to execute cmder
and need it to initialize
the session differently depending on the task chosen.
To conditionally start notepad.exe
when you start a specific cmder
task:
-
Press win+alt+t
-
Click
+
to add a new task. -
Add the below to the
Commands
block:cmd.exe /k ""%ConEmuDir%\..\init.bat" /startnotepad"
-
Add the below to your
%cmder_root%\config\user_profile.cmd
%ccall% "/startNotepad" "start" "notepad.exe"`
To see detailed usage of cexec
, type cexec /?
in Cmder.
Integrating Cmder with Windows Terminal, VS Code, and your favorite IDEs
Cmder by default comes with a vendored ConEmu installation as the underlying terminal emulator, as stated here.
However, Cmder can in fact run in a variety of other terminal emulators, and even integrated IDEs. Assuming you have the latest version of Cmder, follow the following instructions to get Cmder working with your own terminal emulator.
For instructions on how to integrate Cmder with your IDE, please read our Wiki section.
Upgrading
The process of upgrading Cmder depends on the version/build you are currently running.
If you have a [cmder_root]/config/user[-|_]conemu.xml
, you are running a newer version of Cmder, follow the below process:
-
Exit all Cmder sessions and relaunch
[cmder_root]/cmder.exe
, this backs up your existing[cmder_root]/vendor/conemu-maximus5/conemu.xml
to[cmder_root]/config/user[-|_]conemu.xml
.- The
[cmder_root]/config/user[-|_]conemu.xml
contains any custom settings you have made using the 'Setup Tasks' settings dialog.
- The
-
Exit all Cmder sessions and backup any files you have manually edited under
[cmder_root]/vendor
.- Editing files under
[cmder_root]/vendor
is not recommended since you will need to re-apply these changes after any upgrade. All user customizations should go in[cmder_root]/config
folder.
- Editing files under
-
Delete the
[cmder_root]/vendor
folder. -
Extract the new
cmder.zip
orcmder_mini.zip
into[cmder_root]/
overwriting all files when prompted.
If you do not have a [cmder_root]/config/user[-|_]conemu.xml
, you are running an older version of cmder, follow the below process:
-
Exit all Cmder sessions and backup
[cmder_root]/vendor/conemu-maximus5/conemu.xml
to[cmder_root]/config/user[-|_]conemu.xml
. -
Backup any files you have manually edited under
[cmder_root]/vendor
.- Editing files under
[cmder_root]/vendor
is not recommended since you will need to re-apply these changes after any upgrade. All user customizations should go in[cmder_root]/config
folder.
- Editing files under
-
Delete the
[cmder_root]/vendor
folder. -
Extract the new
cmder.zip
orcmder_mini.zip
into[cmder_root]/
overwriting all files when prompted.
Current development builds
You can download builds of the current development branch by going to AppVeyor via the following link:
The latest download builds by GitHub Actions can be downloaded from the link below:
License
All software included is bundled with own license
The MIT License (MIT)
Copyright (c) 2016 Samuel Vasko
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Top Related Projects
The new Windows Terminal and the original Windows console host, all in the same place!
A cross-platform, OpenGL terminal emulator.
iTerm2 is a terminal emulator for Mac OS X that does amazing things.
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
A terminal built on web technologies
Cross-platform, fast, feature-rich, GPU based terminal
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot