mintty – Cygwin terminal emulator
mintty [OPTION]... [ - | PROGRAM [ARG]... ]
Mintty is a terminal emulator for Cygwin with a native Windows user interface and minimalist design. Its terminal emulation is largely compatible with xterm, but it does not require an X server.
If a program name is supplied on the command line, this is executed with any additional arguments given. Otherwise, mintty looks for a shell to execute in the SHELL environment variable. If that is not set, it reads the user’s default shell setting from /etc/passwd. As a last resort, it falls back to /bin/sh. If a single dash is specified instead of a program name, the shell is invoked as a login shell.
The standard
GNU option formats are accepted, with single dashes
introducing short options and double dashes introducing long
options.
-c, --config FILENAME
Read settings from the specified configuration file, in addition to /etc/minttyrc and ~/.minttyrc. Configuration changes are saved to the last file thus specified and not read-only at the time of loading.
-C, --loadconfig FILENAME
Read settings from the specified configuration file, in addition to /etc/minttyrc and ~/.minttyrc. The file is not taken into account for saving configuration changes. This is useful to mix-in partial configuration variants, particularly colour schemes.
-e, --exec PROGRAM [ARG ...]
Execute the specified program in the terminal session and pass on any additional arguments.
This option is present for compatibility with other terminal emulators only. It can be omitted, in which case the first non-option argument, if any, is taken as the name of the program to execute.
-h, --hold never|start|error|always
Determine whether to keep the terminal window open when the command has finished and no more processes are connected to the terminal. The argument can be abbreviated to a single letter.
By default, the window is closed immediately, except if the child process has exited with status 255, which is used to indicate failure to execute the shell command. (Exit status 255 is also used by ssh to indicate connection errors.)
Alternatively, the window can be set to never stay open, to always stay open, or to stay open only if the child process terminates with an error, i.e. with a non-zero exit status or due to a signal indicating a runtime error.
-i, --icon FILE[,INDEX]
Load the window icon from an executable, DLL, or icon file. The optional comma-separated index can be used to select a particular icon in a file with multiple icons.
Note: About interaction problems of icon, shortcut, and the Windows taskbar: In a Windows desktop shortcut, to achieve consistent icon behaviour, the same icon should be specified in the shortcut properties (Change Icon...) and the mintty command line (Target:).
-l, --log FILE|-
Copy all output into the specified log file, or standard output if a dash is given instead of a file name. (See also script(1) for a more flexible logging tool.)
-o, --option NAME=VALUE
Override the named config file option with the given value, e.g. -o ScrollbackLines=1000.
-p, --position X,Y
Open the window with its top left corner at the specified coordinates. Instead of coordinates, "centre" or "center" can be specified to place the window in the screen centre, and "right" or "bottom" can be specified to align the right or bottom window border with the right or bottom screen border (together with another option -p to specify an offset).
Option value "@N" where N is a number places the window on monitor N.
Multiple -p
options can be combined; coordinates have a different
meaning depending on other options:
– With "left", "top", or
"@N", related coordinates are relative to the
monitor.
– With "right" or "bottom",
related coordinates adjust the right or bottom window border
relative to the monitor.
– Otherwise, coordinates are absolute and address the
common multi-monitor address space as provided by
Windows.
Note: For another option to select the monitor for a new mintty window, see the description of Alt+F2.
-s, --size COLS,ROWS
Set the default size of the window in character columns and rows. (The xterm-like syntax COLSxROWS is accepted too.) Instead of coordinates, "maxwidth" or "maxheight" can be specified; this can be combined with another parameter -s for the other dimension. The dimension for which "max" is applied is ignored in further -s or -p parameters. For example, mintty -s maxwidth -p 0,0 -s 0,10 will start a window at full screen width, positioned at the top of the screen, with 10 lines.
-t, --title TITLE
Use TITLE as the initial window title. By default, the title is set to the executed command.
-T, --Title TITLE
Use TITLE as the permanent window title. The title is not changeable by control sequences. This feature is only available on the command line.
-B, --Border frame|void
Suppress window title, display only a frame or no border. This feature is only available on the command line.
-u, --utmp
Create a utmp entry.
-w, --window normal|min|max|full|hide
Set the initial window state: normal, minimised, maximised, full screen, or hidden.
--class CLASS
Use CLASS as the window class name of the main window. This allows scripting tools to distinguish different mintty instances. The default is "mintty".
-d, --nodaemon
Do not apply "daemonizing". By default, mintty tries to detach itself from the invoking terminal in order to avoid disabled signal reception, and when cloning the window (Alt+F2) in order to avoid a remaining zombie process.
-R, --Reportpos mode
Report position and size of window before mintty exits. This can be used to manage last window positions and reopen mintty windows accordingly. Mode is "s" or "o" to choose short or long option syntax. The restored (i.e. neither maximised nor minimised) geometry is reported and min/max/fullscreen information is added.
--store-taskbar-properties
Enable persistent storage of Windows taskbar properties together with options AppName and AppLaunchCmd.
--nopin
Prevent pinning of the mintty window to the Windows taskbar.
-H, --help
Display a brief help message and exit.
-V, --version
Print version information and exit.
Mintty tries to adhere to both Windows and Unix usage conventions. Where they conflict, an option is usually provided. This section primarily describes the default configuration; see the CONFIGURATION section on how it can be customised.
Menus
The context menu can be opened by right-clicking the mouse
or by pressing the Menu key that is normally located
next to the right Ctrl key.
Mintty also adds a couple of items to the window menu, which can be accessed by clicking on the program icon or pressing Alt+Space.
Both menus have an entry that leads to the options dialog for changing mintty’s configuration.
Copy &
paste
Screen contents can be selected by holding down the left
mouse button and dragging the mouse. If Alt is held down
before the left mouse button, a rectangular block instead of
whole lines will be selected. The selection can be extended
by holding down Shift while left-clicking.
Double-clicking or triple-clicking selects a whole word or
line, whereby word selection includes special characters
that commonly appear in file names and URLs.
By default, selected text is automatically copied to the clipboard. This can be disabled on the Mouse page of the options dialog. Selected text can also be copied manually using either the Copy menu command, the Ctrl+Ins keyboard shortcut, or the middle mouse button combined with Shift.
The selected region is copied as "rich text" as well as normal text, which means it can be pasted with colours and formatting into applications that support it, e.g. word processors.
The window title can be copied using the Copy Title command in the window menu.
The clipboard contents can be pasted using either the Paste menu command, the Shift+Ins keyboard shortcut, or the middle mouse button. Not only text but also files and directories can be pasted, whereby the latter are inserted as Cygwin file names. Shell quoting is added to file names that contain spaces or special characters.
Drag &
drop
Text, files and directories can be dropped into the mintty
window. They are inserted in the same way as if they were
pasted from the clipboard.
Opening
files, directories and URLs
Files, directories and URLs can be opened either by holding
Ctrl while left-clicking on them, or by selecting
them and choosing the Open command from the context
menu. Please note that opening a file or directory with a
relative path only works correctly if the path refers to the
current working directory of the process invoked by
mintty.
Font
zoom
The font size can be increased or decreased using the
keyboard shortcuts Ctrl+(keypad-)plus and
Ctrl+(keypad-)minus, or by holding Ctrl while
rolling the mousewheel. Ctrl+zero or
Ctrl+middle-mouse click returns the font size to the
default.
Shift-coupled window-with-font zooming: If Shift is also
held while zooming, the window will be resized to scale
together with the font, keeping the terminal character size
if possible. This is not applied to the shifted numeric
keypad "0" (which has other meaning) and to the
shifted normal (non-keypad) "-" and "+"
keys (because the shifted key could have a valid mapping,
e.g. Ctrl+_, or the "+" key could be shifted
itself already).
Zooming by keyboard or mouse can be disabled, respectively,
with options ZoomShortcuts=no or ZoomMouse=no.
Drag
resize
The usual windows function to drag on the window border
resizes the terminal.
Shift-coupled font-with-window zooming: If Shift is also
held while resizing, the font will be scaled along with the
resizing, unless disabled with ZoomFontWithWindow=false
(which would help to avoid interference with certain shifted
hotkeys configured to resize the window).
Note that due to the different height/width factors, coupled
font zooming is not a precise operation.
DPI
change
When DPI setting changes (by reconfiguration of display
properties "what’s on your screen ...
smaller/medium/larger" or moving the mintty window
between monitors with different DPI settings), mintty adapts
its screen size to avoid Windows blurred auto-adaptation. If
Shift is also held during the change, the font will be
scaled too, roughly maintaining the screen dimensions.
Full
screen
Full screen mode can be toggled using either the Full
Screen command in the menu or either of the
Alt+Enter and Alt+F11 keyboard shortcuts, or
the generic window title functions.
Default
size
If the window has been resized, it can be returned to the
default size set in the Window pane of the options using the
Default size command in the menu or the
Alt+F10 shortcut.
Reset
Sometimes a faulty application or printing a binary file
will leave the terminal in an unusable state. In that case,
resetting the terminal’s state via the Reset
command in the menu or the Alt+F8 keyboard shortcut
may help.
Scrolling
Mintty has a scrollback buffer that can hold up to 10000
lines in the default configuration. It can be accessed using
the scrollbar, the mouse wheel, or the keyboard. Hold the
Shift key while pressing the Up and
Down arrow keys to scroll line-by-line or the
PageUp and PageDown keys to scroll
page-by-page.
Searching in
the text and scrollback buffer
Alt-F3 opens a search bar with an input field for a search
string. Matches are highlighted in the scrollback buffer.
Enter/Shift+Enter find the next/previous position of the
match and scrolls the scrollback buffer accordingly. The
appearance of the search bar and the matching highlight
colours can be customized.
Flip
screen
Applications such as editors and file viewers normally use a
terminal feature called the alternate screen, which is a
second screen buffer without scrollback. When they exit,
they switch back to the primary screen to restore the
command line as it was before invoking the application.
The Flip Screen menu command and Alt+F12 shortcut allow looking at the primary screen while the alternate screen is active, and vice versa. For example, this allows to refer to past commands while editing a file.
Switching
session
The Ctrl+Tab and Ctrl+Shift+Tab shortcuts can
be used to switch between mintty windows. Minimised windows
are skipped.
Closing a
session
Clicking the window’s close button, pressing
Alt+F4, or choosing Close from the window menu
sends a SIGHUP signal to the process running in
mintty, which normally causes it to exit.
That signal can be ignored, though, in which case the program might have to be forced to terminate by sending a SIGKILL signal instead. This can be done by holding down Shift when using the close button, shortcut or menu item.
Mouse
tracking
When an application activates mouse tracking, mouse events
are sent to the application rather than being treated as
window events. This is indicated by the mouse pointer
changing from an I shape to an arrow. Holding down
Shift overrides mouse tracking mode and sends mouse
events to the window instead, so that e.g. text can be
selected and the context menu can be accessed.
Alt
codes
The Windows Alt+Numpad method for entering character codes
is supported, whereby the Alt key has to be held while
entering the character code. Only the first key has to be on
the numpad; subsequent digits can be entered both on the
numpad or the main part of the keyboard.
If the first key is the ’+’ on the numpad, the code is interpreted as hexadecimal, whereby digits A through F can be entered using the letter keys. If the first key is a zero, the code is interpreted as octal. If the first key is any other digit from 1 to 9, the code is interpreted as decimal.
For UTF-8 and other Unicode encodings such as GB18030, the entered code is interpreted as a Unicode codepoint and encoded accordingly before it is sent. For other encodings, the entered code is sent as is. If it doesn’t fit into one byte, it is sent as multiple bytes, with the the most significant non-zero byte first.
Shortcuts
An overview of all the keyboard shortcuts.
Scrollback
– Shift+Up: Line
up
– Shift+Down: Line down
– Shift+PgUp: Page up
– Shift+PgDn: Page down
– Shift+Home: Top
– Shift+End: Bottom
– Alt+F3: Search
Copy and paste
– Ctrl+Ins: Copy
– Shift+Ins: Paste
– Ctrl+Shift+Ins: Copy and paste
Window commands
– Alt+F2: New
(clone); see notes below
– Alt+F3: Search (in scrollback buffer)
– Alt+F4: Close
– Alt+F8: Reset
– Alt+F10: Default terminal size (rows/columns)
– Alt+F11 or Alt+Enter: Toggle full
screen
– Shift+Alt+F11 or Shift+Alt+Enter:
Toggle full screen and zoom font (Note that due to the
different height/width factors, this is not a precise
operation)
– Alt+F12: Flip screen
– Alt+Space: Window menu
– Ctrl+Tab: Next window
– Ctrl+Shift+Tab: Previous window
Multi-monitor
selection support: Alt+F2 will only spawn a new window after
F2 has been released. While F2 is being held, the target
monitor can be selected with a sequence of numeric keypad
keys:
– cursor-up/down/left/right (8/2/4/6) navigate the
target focus to the respective neighbour in the monitor
grid;
– the diagonal keys (7/9/1/3) combine two directions
respectively;
– the central key (5) sets the target focus to the
Windows "primary" monitor;
– the Ins key (0) or Del resets the focus to the
current monitor.
These navigation controls can be applied repeatedly to
select a monitor further away.
Note that a heuristic algorithm is used, based on the size of the smallest monitor attached to the system, so the target may not always be selected as expected if multiple monitors of different size are available or monitors are not arranged in a regular grid.
Font zoom
–
Ctrl+(keypad-)plus: Zoom font in
– Ctrl+(keypad-)minus: Zoom font out
– Ctrl+Shift+(keypad-)plus: Zoom font and
window in
– Ctrl+Shift+(keypad-)minus: Zoom font and
window out
– Ctrl+zero: Back to configured font size
Ctrl+Shift+letter shortcuts
An alternative
set of shortcuts for clipboard and window commands using
Ctrl+Shift+letter combinations is available. These
can be enabled on the Keys pane of the options dialog.
– Ctrl+Shift+C: Copy
– Ctrl+Shift+V: Paste
– Ctrl+Shift+N: New
– Ctrl+Shift+H: Search scrollback buffer
– Ctrl+Shift+W: Close
– Ctrl+Shift+R: Reset
– Ctrl+Shift+D: Default terminal size
(rows/columns)
– Ctrl+Shift+F: Full screen (not zooming font
despite Shift)
– Ctrl+Shift+S: Flip screen
Mintty has a
graphical options dialog that can be reached via the context
menu or the window menu. It has the following action
buttons:
– Cancel: discards changes.
– Save: applies and saves changes and closes
the dialog.
– Apply: applies changes to the current
instance of mintty
but does not save them to the configuration file. So using
Apply
then Cancel, local changes can be applied without
affecting further
instances of mintty.
In configuration files, settings are stored as NAME=VALUE pairs, with one per line. By default, they are read from /etc/minttyrc and ~/.minttyrc. Additional configuration files can be specified using the -c/--config or -C/--loadconfig command line options. These are read in order, with settings in later files overriding those in earlier ones. Configuration changes are saved to the last writable file specified with -c/--config, or ~/.minttyrc if none is given. Individual settings can also be specified on the command line using the -o/--option.
Be careful when running multiple instances of mintty. If options are saved from different instances, obviously they can overwrite each other; if different mintty versions are run (e.g. from cygwin and msys sharing the same home directory), options may even get dropped from the configuration file.
The following sections explain the settings on each pane of the options dialog, followed by settings that do not appear in the dialog. For each setting, its name in the config file is shown in parentheses, along with its default value.
If there is only a name in parentheses, there is currently no GUI configuration facility for that option (see also Hidden settings below).
Looks
Settings affecting mintty’s appearance.
Colours
Clicking on one of the buttons
here opens the colour selection dialog. In the settings,
colours are represented as comma-separated RGB triples with
decimal 8-bit values ranging from 0 to 255. X-style
hexadecimal colour specifications such as #RRGGBB or
rgb:RR/GG/BB can be used as well. Also X11 color names are
supported.
– Foreground (ForegroundColour=191,191,191)
– Background (BackgroundColour=0,0,0)
– Cursor (CursorColour=191,191,191)
Transparency (Transparency=off)
Window transparency level, with
the following choices:
– Off
– Low
– Medium
– High
– Glass
The Glass option is only available on Vista and above with desktop compositing enabled. To make this reasonably usable, the glass colour needs to be set to be as dark as possible in the Windows control panel: choose Personalize from the desktop context menu, click on Window Color, turn the colour intensity up to the maximum, show the colour mixer, and turn the brightness down to black.
Numeric transparency values ranging from 4 to 254 can be specified in config files or on the command line. (Values below 4 are multiplied by 16, for backward compatibility reasons.)
Opaque when focused (OpaqueWhenFocused=no)
Enable to make the window opaque when it is active (to avoid background distractions when working in it).
Cursor (CursorType=line)
The following cursor types are
available:
– Line
– Block
– Underscore
The line cursor is displayed with the width set in the Accessibility Options control panel.
Cursor blink (CursorBlinks=yes)
If enabled, the cursor blinks at the rate set in the Keyboard control panel.
Text
Settings controlling text display.
Font selection
Clicking on the Select
button opens a dialog where the font and its properties can
be chosen. Font styles other than Bold are ignored.
In the config file, this corresponds to the following
entries:
– Font (Font=Lucida Console)
– Style (FontIsBold=no)
– Size (FontHeight=9)
Show bold as font (BoldAsFont=no)
When this option is enabled, the ANSI bold (or ’intense’) text attribute is shown as a bold-style font. Where a bold variant of the selected font that has the same width as the base font is available, that is used; otherwise, the bolding is simulated by rendering the text twice with a one-pixel offset.
Show bold as colour (BoldAsColour=yes)
By default, text with the ANSI bold attribute set is displayed with a different colour, usually with increased brightness. This can be disabled here.
Note that when BoldAsFont is enabled, only bold text in one of the eight ANSI colours has its colour changed, i.e. bold text without an explicitly spefified colour is shown with a bold font only. This matches xterm behaviour.
This option also controls how the ’half-bright’ (or ’dim’) text attribute is displayed: if it is on, half-bright text is shown with halved foreground colour brightness; otherwise, it is shown by blending the foreground colour with the background colour.
Allow blinking (AllowBlinking=no)
When text blinking is disabled, as it is by default, the blink attribute is displayed as a bold background colour instead.
Font smoothing (FontSmoothing=default)
Select the amount of font
smoothing from the following choices:
– Default: Use Windows setting.
– None: With all the jaggies.
– Partial: Greyscale anti-aliasing.
– Full: Subpixel anti-aliasing
("ClearType").
Locale (Locale=)
The locale setting consists of a lowercase two-letter or three-letter language code followed by a two-letter country code, for instance en_US or zh_CN. The Windows default system and user locales are shown in the drop-down list for this setting. Alternatively, the language-neutral "C" locale can be selected.
If no locale is set here, which is the default, mintty uses the locale and character set specified via the environment variables LC_ALL, LC_CTYPE or LANG.
If the locale option is set, however, it will override any environment variable setting: LC_ALL and the LC_* variables for specific locale categories are cleared, while LANG is set according to the selected locale and character set.
Character set (Charset=)
The character set to be used for encoding input and decoding output. If no locale is set, this setting is ignored.
While changing the character set takes effect immediately for text input and ouput, it does not affect the processes already running in mintty. This is because the environment variables of a running process cannot be changed from outside that process. Therefore mintty needs to be restarted for a character set change to take full effect.
Keys
Settings controlling keyboard behaviour.
Backspace sends ^H (BackspaceSendsBS=no)
By default, mintty sends ^? (ASCII DEL) as the keycode for the backspace key. If this option is enabled, ^H is sent instead. This also changes the Ctrl+Backspace code from ^_ to ^?. (Corresponds to the xterm BackarrowKey resource.)
(DeleteSendsDEL=no)
By default, mintty sends VT100 Remove as the keycode for the keypad Del key. If this option is enabled, ^? (ASCII DEL) is sent instead. (Corresponds to the xterm DeleteIsDEL resource.)
Ctrl+LeftAlt is AltGr (CtrlAltIsAltGr=no)
The AltGr key on non-US Windows systems is a strange beast: pressing it is synonymous with pressing the left Ctrl key and the right Alt key at the same time, and Windows programs usually treat any Ctrl+Alt combination as AltGr.
Some programs, however, chief among them Microsoft’s very own Office, do not treat Ctrl+LeftAlt as AltGr, so that Ctrl+LeftAlt combinations can be used in command shortcuts even when a key has an AltGr character binding.
By default, mintty follows Office’s approach, because a number of terminal programs make use of Ctrl+Alt shortcuts. The "standard" Windows behaviour can be restored by ticking the checkbox here.
The setting makes no difference for keys without AltGr key bindings (e.g. any key on the standard US layout).
Copy and Paste shortcuts (ClipShortcuts=yes)
Checkbox for enabling the clipboard shortcuts Ctrl+Ins for copying and Shift+Ins for pasting.
Menu and Full Screen shortcuts (WindowShortcuts=yes)
Checkbox for enabling the Alt+Space and Alt+Enter shortcuts for showing the window menu and toggling full screen mode.
Switch window shortcuts (SwitchShortcuts=yes)
Checkbox for enabling the Ctrl+Tab and Ctrl+Shift+Tab shortcuts for switching between mintty windows.
Zoom shortcuts (ZoomShortcuts=yes)
Checkbox for enabling the font zooming shortcuts Ctrl+plus/minus/zero.
Alt+Fn shortcuts (AltFnShortcuts=yes)
Checkbox for enabling the use of combinations of Alt and functions keys as shortcuts, for example Alt+F4 for closing the window or Alt+F11 fortoggling full screen mode. Disable to have Alt+Fn combinations sent to applications instead.
Ctrl+Shift+letter shortcuts (CtrlShiftShortcuts=no)
Checkbox for enabling alternative clipboard and window command shortcuts using Ctrl+Shift+letter combinations such as Ctrl+Shift+V for paste or Ctrl+Shift+N for starting a new session.
These can replace the Ctrl/Shift+Ins and Alt+Fn shortcuts, whereby they show up in menus only if the corresponding default shortcuts are disabled.
See the shortcuts section above for the list of shortcuts controlled by this option. When it is disabled, Ctrl+Shift+letter combinations are sent to applications as C1 control characters instead.
Mouse
Settings controlling mouse support.
Copy on select (CopyOnSelect=yes)
If enabled, the region selected with the mouse is copied to the clipboard as soon as the mouse button is released, thus emulating X Window behaviour.
Copy as rich text (CopyAsRTF=yes)
If this option is enabled, which it is by default, text is copied to the clipboard in rich text format (RTF) in addition to plain text format. RTF preserves colours and styles when pasting text into applications that support it, e.g. word processors.
Clicks place command line cursor (ClicksPlaceCursor=no)
If enabled, the command line cursor can be placed by pressing the left mouse button. This works by sending the number of cursor keycodes needed to get to the destination.
(MiddleClickAction=paste)
Action to take when the middle
mouse button is pressed.
– Paste: Paste the clipboard contents.
– Extend: Extend the selected region.
– Enter: Simulate Enter/Return
key.
– Void: Do nothing.
Right click action (RightClickAction=menu)
Action to take when the right
mouse button is pressed.
– Paste: Paste the clipboard contents.
– Extend: Extend the selected region.
– Enter: Simulate Enter/Return
key.
– Menu: Show the context menu.
If this is set to Paste, the middle button extends the selected region instead of pasting the clipboard. If it is set to Extend, a left click with Shift pressed pastes the clipboard instead of extending the selection.
Mouse zooming (ZoomMouse=yes)
Enabling font zooming with Ctrl+mouse-wheel/middle-mouse-click.
Default click target (ClicksTargetApp=yes)
This applies to application
mouse mode, i.e. when the application activates xterm-style
mouse reporting. In that mode, mouse clicks can be sent
either to the application to process as it sees fit, or to
the window for the usual actions such as select and paste.
– Window
– Application
Modifier key for overriding default (ClickTargetMod=shift)
The modifier key selected here can be used to override the click target in application mouse mode. With the default settings, clicks are sent to the application and Shift needs to be held to trigger window actions instead.
The Off
setting disables overriding.
– Shift
– Ctrl
– Alt
– Off
(HideMouse=on)
By default, mintty automatically hides the cross-hair mouse cursor when keyboard input is being entered. Setting this option =false keeps the cursor.
Window
Window properties.
Columns (Columns=80)
Default width of the window, in character cells.
Rows (Rows=24)
Default height of the window, in character cells.
(RowSpacing=0)
Additional row padding; RowSpacing=-1 works nicely with the Consolas fonts.
(ColSpacing=0)
Additional column padding; ColSpacing=1 can avoid boldened glyphs being clipped.
Current size
Pressing this button sets the default width and height to the window’s current size.
Scrollback lines (ScrollbackLines=10000)
The maximum number of lines to keep in the scrollback buffer.
Scrollbar (Scrollbar=right)
The scrollbar can be shown on
either side of the window or just hidden. By default, it is
shown on the right-hand side.
– Left
– None
– Right
Modifier for scrolling (ScrollMod=shift)
The modifier key that needs to
be pressed together with the arrow up/down, PgUp/PgDn, or
Home/End keys to access the scrollback buffer. The default
is Shift. The Off setting disables scrolling
with keyboard shortcuts.
– Shift
– Ctrl
– Alt
– Off
PgUp and PgDn scroll without modifier (PgUpDnScroll=no)
If this is enabled, the scrollback buffer can be accessed by just pressing PgUp or PgDn, without the ’modifier for scrolling’ selected above. If the modifier is pressed anyway, plain PgUp/PgDn keycodes are sent to the application. This option does not affect the arrow keys or Home/End keys.
Terminal
Terminal emulation settings.
Type (Term=xterm)
The terminal type. This determines the setting of the TERM environment variable at mintty startup. Choices available from the dropdown list are xterm, xterm-256color, xterm-vt220, vt220, and vt100.
If the setting contains "vt220", xterm VT220-style function key mode is enabled instead of the default PC-style function key mode. (This can otherwise be set with the DECSET 1061 control sequence.)
Apart from that, this setting has no effect on mintty’s terminal emulation, i.e. all the features are always available. However, the TERM setting does tell applications what features they can use.
The xterm-256color setting enables 256-color mode in some applications, but may not be recognised at all by others, which is why plain xterm is the default.
Answerback (Answerback=)
The answerback string is sent in response to the ^E (ENQ) character. By default, this is empty.
Bell |
The three checkboxes here determine what effects the bell character ^G has. Only taskbar highlighting is enabled by default. |
– Sound
(BellSound=no): Play the system’s default beep sound.
– Flash (BellFlash=no): Briefly invert the
foreground and background colours.
– Highlight in taskbar (BellTaskbar=yes):
Change the colour of mintty’s taskbar entry if the
mintty window is not active.
Further
configuration options are currently available for
/etc/minttyrc and ~/.minttyrc or as -o
command line option only:
– (BellType=0): Preferred system sound, values:
1 : Default Beep
2 : Critical Stop
3 : Question
4 : Exclamation
5 : Asterisk
– (BellFreq=0): Beep
sound frequency (overrides system sounds).
– (BellLen=400): Beep sound length (applies to
frequency beep).
Printer (Printer=)
The ANSI standard defines control sequences for sending text to a printer, which are used by some terminal applications such as the mail reader pine. The Windows printer to send such text to can be selected here. By default, printing is disabled.
Prompt about running processes on close (ConfirmExit=yes)
If enabled, ask for confirmation when the close button or Alt+F4 is pressed and the command invoked by mintty still has child processes. This is intended to help avoid closing programs accidentally. If possible, mintty also displays a list of running child processes, using the procps command if installed, or the ps command.
Command
line
The settings here are config file versions of command line
options described in the OPTIONS section. They do not appear
in the options dialog.
Holding the window open (Hold=start)
The Hold setting
determines whether to keep the terminal window open when the
command has finished and no more processes are connected to
the terminal. It takes the following values:
– never: Don’t keep the window open.
– start: Only keep the window open if the
command exited with status 255, which is used to indicate
failure to start the command. This is the default.
– error: Keep the window open if the command
exited with a non-zero status or it was terminated by a
signal indicating a runtime error.
– always: Always keep the window open.
Window icon (Icon=)
The Icon setting with format FILE[,INDEX] allows to load the window icon from an executable, DLL, or icon file. The optional comma-separated index can be used to select a particular icon in a file with multiple icons. If the setting is empty, as it is by default, mintty’s program icon is used.
For interaction problems of icon, shortcut, and the Windows taskbar, see the note for the -i option above.
Log file (Log=)
The Log setting can be used to specify a log file that all output is copied into. If it is empty, as it is by default, no logging is done. See also the script(1) utility for a more flexible logging solution.
Window title (Title=)
The Title setting can be used to determine the initial window title. If it is empty, as it is by default, the title is set to the command being run.
Utmp record (Utmp=no)
If enabled, an entry for the session is written into the system’s utmp file for recording logins, so that the session appears for example in the output of the who(1) utility.
Initial window state (Window=normal)
This setting determines how the
terminal window should be shown at startup:
– normal (default)
– min (minimised)
– max (maximised)
– full (full screen)
– hide (invisible)
Window position (X=, Y=)
X and Y are integer settings that can be used to determine the initial coordinates of the top left corner of the terminal window. By default, these are unset, which means that the position suggested by the window manager is used.
Window class name (Class=mintty)
The Class setting determines the name of the window class of the terminal window. This can be used to help Windows scripting tools such as AutoHotKey to distinguish different mintty windows. The name defaults to "mintty".
Hidden
settings
The following settings appear neither in the options dialog
nor as command line options, which means they can only be
set in config files or using the --option command
line option.
Application ID (AppID=)
Windows 7 and above use the application ID for grouping taskbar items. By default this setting is empty, in which case Windows groups taskbar items automatically based on their icon and command line. This can be overridden by setting the AppID to a custom string, in which case windows with the same AppID are grouped together.
Warning: Using this option in a Windows desktop shortcut may cause trouble with taskbar grouping behaviour. If you need to do that, the shortcut itself should also get attached with the same AppId.
Explanation: Note that Windows shortcut files have their own AppID. Hence, if an AppID is specified in the mintty settings, but not on a taskbar-pinned shortcut for invoking mintty, clicking the pinned shortcut will result in a separate taskbar item for the new mintty window, rather than being grouped with the shortcut. To avoid this, the shortcut’s AppID has to be set to the same string, which can be done using the win7appid utility available from http://win7appid.googlecode.com.
Application Taskbar Shortcut Title (AppName=)
The title of the Windows 7 taskbar shortcut. If the shortcut is pinned, the title is kept only if it was made persistent as described for AppLaunchCmd.
Application Taskbar Shortcut Launch CommandTitle (AppLaunchCmd=)
The command to use if a shortcut pinned to the Windows 7 taskbar is invoked. This is only effective if combined with an AppName option and the command-line option --store-taskbar-properties to make it persistent. It should also be combined with an explicit AppID (mintty will otherwise generate an AppID but that may not be desired).
Note: The command must be given in Windows pathname syntax (e.g. AppLaunchCmd=’C:\cygwin\bin\mintty -T mytitle -’).
Note: An explicit icon supplied with the -i option can also be stored with the persistent properties; note, however, that for this purpose, it must be given in Windows pathname syntax and it must include a resource index; also, for consistent appearance, another -i option referring to the same icon should be included in the AppLaunchCmd.
Example: mintty -o AppID=Mintty.Pintest.1 -o AppName=Mintty.Pintest -o AppLaunchCmd="C:\cygwin\bin\mintty -i /cygdrive/c/Windows/System32/calc.exe -" -i C:\Windows\System32\calc.exe,0 --store-taskbar-properties -
Warning: Once made persistent, the stored properties associated with a specific AppID cannot be removed or even modified again with normal means.
Word selection characters (WordChars=)
By default, this string setting is empty, in which case double-click word selection uses the default algorithm that is geared towards picking out file names and URLs.
If a string is specified here, word selection only picks out characters in the string along with alphanumeric characters. For example, specifying just the underscore character (WordChars=_) would allow selecting identifiers in many programming languages.
Word selection exclusion characters (WordCharsExcl=)
This string can list characters that are to be excluded from word selection.
Break key remapping (Break=)
This option can attach a specific string to the Break key. If the string is a number, a corresponding Escape sequence will be generated, applying Shift/Ctrl/Alt modifiers as to function and keypad keys. For example, Break=2 would effectively turn the Break key into an Insert key.
Pause key remapping (Pause=)
This option can attach a specific string to the Pause key. See Break key remapping.
Use system colours (UseSystemColours=no)
If this is set, the Windows-wide colour settings are used instead of the foreground, background, and cursor colours chosen on the Looks page of the options dialog.
IME cursor colour (IMECursorColour=)
The cursor colour can be set to change when the Input Method Editor (IME) for entering characters not available directly on the keyboard is active. The setting is a RGB triplet such as 255,0,0 for bright red.
By default, this is unset, which means that the cursor colour does not change. The colour can also be changed using xterm’s OSC 4 control sequence with colour number 262.
ANSI colours
These are the 16 ANSI colour
settings along with their default values. Colours are
represented as comma-separated RGB triples with decimal
8-bit values ranging from 0 to 255. X-style hexadecimal
colour specifications such as #RRGGBB or rgb:RR/GG/BB can be
used as well. Also X11 color names are supported.
– Black=0,0,0
– Red=191,0,0
– Green=0,191,0
– Yellow=191,191,0
– Blue=0,0,191
– Magenta=191,0,191
– Cyan=0,191,191
– White=191,191,191
– BoldBlack=64,64,64
– BoldRed=255,64,64
– BoldGreen=64,255,64
– BoldYellow=255,255,64
– BoldBlue=96,96,255
– BoldMagenta=255,64,255
– BoldCyan=64,255,255
– BoldWhite=255,255,255
Bold substitution colour (BoldColour=)
The colour to be used instead of the bold attribute can be configured. The bold substitution colour is only applied if option BoldAsFont is false and option BoldAsColour is true. The default is none, meaning that a brightened colour derived from the effective foreground colour is used. The bold substitution colour can also be set and reset with the respective xterm OSC control sequences.
Scrollback search colours
The highlighting colours of
search matches can be configured.
– SearchForegroundColour=black
– SearchBackgroundColour=light yellow
– SearchCurrentColour=bright yellow
Scrollback search bar (SearchBar=)
This string option can customize the order of items in the search bar. Use x (close button), </> (previous/next buttons), s (search string) to select the order of these fields in the search bar; missing fields will be appended in a default order.
Write if exited (ExitWrite=no)
Together with a hold option that keeps the terminal open after its child process terminated, this option always writes an exit indication to the screen. By default, only an error exit code is displayed.
Change title if exited (ExitTitle=)
Together with a hold option that keeps the terminal open after its child process terminated, this option prefixes the window title with its string, for example -o ExitTitle="TERMINATED: " or (in minttyrc) ExitTitle=TERMINATED: .
Disable Shift-coupled implicit font zooming (ZoomFontWithWindow=yes)
If this option is set to false, implicit font zooming coupled with window zooming by the Shift key is disabled, except for the keyboard zoom functions Shift+Alt+Enter/F11 and the Shift+menu function.
Console
issue
Mintty is not a full replacement for the Windows console
window that Cygwin uses by default. Like xterm and rxvt,
mintty communicates with the child process through a pseudo
terminal device, which Cygwin emulates using Windows pipes.
This means that native Windows command line programs started
in mintty see a pipe rather than a console device. As a
consequence, such programs often disable interactive input.
Also, direct calls to low-level Win32 console functions will
fail. Programs that access the console as a file should be
fine though.
Termcap/terminfo
Mintty does not have its own termcap or
terminfo entries; instead, it simply pretends to be
an xterm.
Missing
xterm features
Mintty is nowhere near as configurable as xterm. Of
xterm’s keyboard modes, only the default PC-style and
VT220-style are available. 8-bit control characters are not
supported, nor are ISO2022 character sets. There is no
Tektronix 4014 emulation. Mouse highlighting mode is not
implemented.
The majority of xterm’s many control sequences is implemented, but quite a few are missing. Significant omissions should be reported as bugs.
Additional information can be found on the wiki on the mintty project page https://github.com/mintty/mintty/wiki.
Copyright (C) 2013 Andy Koppe (C) 2015 Thomas Wolff
Mintty is released under the terms of the the GNU General Public License version 3 or later. See http://gnu.org/licenses/gpl/html for the license text.
There is NO WARRANTY, to the extent permitted by law.
Please report bugs or suggest enhancements via the issue tracker at https://github.com/mintty/mintty/issues. Questions can be sent to the Cygwin mailing list at cygwin@cygwin.com.