Mintty is a terminal emulator
Msys2, and derived projects,
and for WSL.
Terminal display features
Terminal input and interaction features
- Xterm-compatible terminal emulation, coverage of all DEC terminal series screen control features.
- 256 colours and True-Colour support, optional CMYK colour specification.
- Full Unicode support, comprehensive character encoding support and wide character handling.
- Bidirectional rendering, flexible bidi controls.
- Full character attributes support, including italic, underline styles and colours, overline, strikeout, rapid blinking.
- Extended character attributes support: shadowed, subscript, superscript (terminfo) and overstrike.
- Alternative fonts: simultaneous display of multiple fonts.
- Secondary fonts: script-specific alternative font usage.
- Reflow option on terminal resize (re-breaking of wrapped lines).
- Image display support.
- Sixel graphics support.
- Full emoji support, including all emoji sequences.
- Tektronix 4014 vector graphics emulation.
Window handling features and desktop integration
- Character composition with full Unicode support, using dead keys and Compose key.
- Windows IME support.
- Keyboard workarounds for certain buggy virtual keyboards.
- Support for all relevant mouse modes, including pixel-grained DEC locator mode.
- Text selection with mouse or keyboard.
- Easy copy & paste.
- Drag & drop of text, files and folders.
- Elastic mouse text selection.
- Ability to open files and URLs with Ctrl+click, explicit hyperlinks.
- Fast rendering and scrolling, fast keyboard feedback.
- HTML export and clipboard format support.
- Image screenshot export.
Configuration features and system support
- Colour schemes / Theme file support.
- Background texture and image support.
- Virtual Tabs / session switcher and launcher.
- Tabbar to switch virtual tabs for a tabbed window experience.
- Taskbar tasks (“jump list”) configuration. Task grouping configuration.
- Flexible fullscreen, fullsize and border options.
- Screen and scrollback buffer search.
- Window transparency.
- Multiple monitor support, high DPI and DPI change support.
- Native Windows user interface with a lean options dialog.
- User interface language localization support.
- User-defined key shortcuts and menu functions.
- Flexible configuration and resource folder options.
- Options stored in a text file. No registry entries.
- Switchable terminal logging, switchable character information.
- Runs in Cygwin, MSYS(2), midipix. Also hosting WSL.
- Runs on Windows 2000, Windows XP, Windows 7, Windows 10.
Mintty works on all Windows versions from Windows XP onwards.
Similarly to other Cygwin/MSYS terminals based on
pseudo terminal ("pty") devices.
Windows console input/output (as used by native Windows command-line programs)
has interworking problems with "pty" mode (most notably character set,
but also character-wise input and signal processing incompatibilities, see
Cygwin 3.1.0 compensates for this issue via the ConPTY API of Windows 10.
The Cygwin package ships with a manual page that can be accessed with
Invoking mintty with the
--help option shows a summary of available command line options.
See the Wiki
for information on keycodes, control sequences and other
Mintty settings can be given with its invocation as command-line options
or in a configuration file. Locations for configuration files as well as
settings with their default values are described in the
mintty manual page.
In Cygwin, it is installed as the default "Cygwin Terminal".
For MSYS (old), select the msys-mintty package in the installer.
(Or from MinGW, install the package with
mingw-get install mintty.)
For MSYS2, mintty is installed by default, or it can be installed later
with the command
pacman -S mintty.
In Git-for-Windows, mintty is installed by default and invoked as "Git Bash".
Building mintty on cygwin needs packages `gcc-core` and `make`.
To compile, go into subdirectory `src` and run `make`.
To install, copy `mintty.exe` from subdirectory `bin` to an appropriate place.
Repository and Download
The source code
The Release Archive
for older packages.
current snapshot download.
If you feel like you'd like to donate for appreciation of mintty,
the donation form offers an opportunity.
Bugs and Enhancements
Please report bugs or suggest enhancements via the issue tracker.
General Cygwin questions should be sent to the Cygwin mailing list,
preferably after subscribing the list.
Bugs that were reported to the previous repository at
before June, 2015, have been migrated here.
- Mind! Before reporting an issue about character interaction with an application,
please check the issue also with at least one other terminal (xterm, urxvt),
and maybe the Cygwin Console.
See also the hint in Compatibility above.
If you consider to suggest a patch or contribute to mintty otherwise,
discuss your proposal in an issue first, or on the Cygwin mailing list,
or with the maintainer.
- Repository policy: No unsolicited pull requests!
Mintty is based on code from PuTTY 0.60 by Simon Tatham and team.
The program icon comes from KDE's Konsole.
Mintty ties directly into Cygwin/MSYS and leaves out PuTTY's networking functionality,
which is provided by packages such as openssh and inetutils instead.
A number of PuTTY issues have been addressed (see Wiki).
People who have contributed significantly to mintty are mentioned on the Wiki
The new mintty default theme (since 3.6.0)
provides a colour scheme of well-balanced appearance and luminance;
see the comments in the theme file about its crafting principles.
Mintty showing help text in terminal. Options menu opened.
Mintty displaying Sixel graphics, used with gnuplot:
Mintty with tabbar for session switching:
Mintty displaying image file:
This uses the
Localized Options menu:
Fancy feature: distinct colour attributes for combining characters:
Fancy feature: alternative fonts as character attributes:
Background texture or image:
Tektronix 4014 vector graphics emulation: