All notable changes to Alacritty are documented in this file.
The sections should follow the order Packaging
, Added
, Changed
, Fixed
and Removed
.
The format is based on Keep a Changelog.
Notable changes to the alacritty_terminal
crate are documented in its
CHANGELOG.
- Minimum Rust version has been bumped to 1.74.0
- Support relative path imports from config files
- Pressing
Alt
with unicode input will now addESC
like for ASCII input - Decorations use opaque style and system window background on macOS
- No longer source
~/.zshenv
on macOS
- Crash when trying to create a new tab without decorations enabled
- New window being treated as focused when it's not on Wayland
- IME preview blending into text below it
- Dynamic title disabled for new windows when initial one has title as CLI option
- While terminal in mouse mode, mouse bindings that used the shift modifier and had multiple actions only performed the first action
- Leaking FDs when closing windows on Unix systems
- Config emitting errors for nonexistent import paths
- Kitty keyboard protocol reporting shifted key codes
- Broken search with words broken across line boundary on the first character
- Config import changes not being live reloaded
- Cursor color requests with default cursor colors
- Fullwidth semantic escape characters
- Windows app icon now displays properly in old alt+tab on Windows
- Default
Home
/End
bindings in Vi mode mapped toFirst
/Last
respectively
- CLI env variables clearing configuration file variables
- Vi inline search/semantic selection expanding across newlines
- C0 and C1 codes being emitted in associated text when using kitty keyboard
- Occasional hang on startup with some Wayland compositors
- Missing key for
NumpadDecimal
in key bindings - Scrolling content upwards moving lines into history when it shouldn't
- Sticky keys not working sometimes on X11
- Modifiers occasionally getting desynced on X11
- Autokey no longer working with alacritty on X11
- Freeze when moving window between monitors on Xfwm
- Mouse cursor not changing on Wayland when cursor theme uses legacy cursor icon names
- Config keys are available under proper names
- Build failure when compiling with x11 feature on NetBSD
- Hint
Select
action selecting the entire line for URL escapes - Kitty encoding used for regular keys when they don't carry text
- No unused-key warnings will be emitted for OS-specific config keys
- Use built-in font for sextant symbols from
U+1FB00
toU+1FB3B
- Kitty encoding is not used anymore for uncommon keys unless the protocol enabled
- Support for pasting in Vi + Search mode
alacritty migrate
will ignore null values in yaml instead of erroring out
alacritty migrate
failing with nonexistent importsAlt
bindings requiring composed key rather than pre-composed one on macOSAlt + Control
bindings not working on Windowschars = "\u000A"
action in bindings inserting\n
- Alternate keys not sent for
Shift + <number>
when using kitty protocol - Alternative keys being swapped in kitty protocol implementation
- Powerline glyphs being cut for narrow fonts
- Xmodmap not working on X11
- Occasional slow startup on some X11 window managers
- Blurry window when using
window.dimensions
on some Wayland compositors - IME input lagging behind on X11
- xdotool modifiers input not working correctly on X11
- Parsing numbers fails for mouse bindings
- Some config options overriding each other in CLI/IPC
- Numpad
Left
used for numpadUp
- Minimum Rust version has been bumped to 1.70.0
- Manpages are now generated using
scdoc
(seeINSTALL.md
)
- Warnings for unused configuration file options
- Config option
persist
inhints
config section - Support for dynamically loading conpty.dll on Windows
- Support for keybindings with dead keys
Back
/Forward
mouse buttons support in bindings- Copy global IPC options (
-w -1
) for new windows - Bindings to create and navigate tabs on macOS
- Support startup notify protocol to raise initial window on Wayland/X11
- Debug option
prefer_egl
to prioritize EGL over other display APIs - Inline vi-mode search using
f
/F
/t
/T
window.blur
config option to request blur for transparent windows--option
argument foralacritty msg create-window
- Support for
DECRQM
/DECRPM
escape sequences - Support for kitty's keyboard protocol
- Mode-specific bindings can now be bound in any mode for easier macros
--help
output is more compact now and uses more neutral palette- Configuration file now uses TOML instead of YAML
Run
alacritty migrate
to automatically convert all configuration files - Deprecated config option
draw_bold_text_with_bright_colors
, usecolors.draw_bold_text_with_bright_colors
- Deprecated config option
key_bindings
, usekeyboard.bindings
- Deprecated config option
mouse_bindings
, usemouse.bindings
- The default colorscheme is now based on base16 classic dark
- IME popup now tries to not obscure the current cursor line
- The double click threshold was raised to
400ms
- OSC 52 paste ability is now disabled by default; use
terminal.osc52
to adjust it - Apply
colors.transparent_background_colors
for selections, hints, and search matches - Underline full hint during keyboard selection
- Synchronized updates now use
CSI 2026
instead of legacyDCS
variant - In mouse mode with
Shift
pressed, mouse bindings withoutShift
are only triggered if no exact binding (i.e. one withShift
) is found. - Use built-in font for powerline symbols from
U+E0B0
toU+E0B3
- Default
bell.animation
is nowLinear
IncreaseFontSize/DecreaseFontSize
step is now 1pxfont.size
precision was raised to 6 floating point digits- Default font size to
11.25
matching 15px Xft.dpi
is now reloaded when xsettingd change its value on X11
- Unconditional query of xdg-portal settings on Wayland
Maximized
startup mode not filling the screen properly on GNOME WaylandOptionAsAlt
withOnlyLeft
/OnlyRight
settings not working properly on macOS- Default Vi key bindings for
Last
/First
actions not working on X11/Wayland - Cut off wide characters in preedit string
- Scrolling on touchscreens
- Double clicking on CSD titlebar not always maximizing a window on Wayland
- Excessive memory usage when using regexes with a large number of possible states
window.decorations_theme_variant
not live reloading- Copy/Paste being truncated to 64KiB on Wayland
- X11 clipboard lagging behind sometimes
- High wakeup count on Wayland due to clipboard polling
- Blocking paste freezing alacritty on Wayland
Command
modifier persisting afterCmd + Tab
on macOS- Crash on exit when using NVIDIA binary drivers on Wayland
window.startup_mode
applied to window again when creating new tab- Crash when leaving search after resize
- Cursor being hidden after reaching cursor blinking timeout
- Message bar content getting stuck after closing with multiple messages on Wayland
- Vi cursor position not redrawn on PageUp/PageDown without scrollback
- Cursor not updating when blinking and viewport is scrolled
- Failure to start with recent version of mesa's i915 driver
- Error when using
chars
inside the mouse bindings
- Config option
background_opacity
, usewindow.background_opacity
- Config option
colors.search.bar
, usecolors.footer_bar
instead - Config option
mouse.url
, use thehints
config section - Config options
mouse.double_click
andmouse.triple_click
- Crash on macOS Sonoma due to change in macOS resize handling
- Crash when Wayland compositor advertises
wl_compositor@v5
interface
- Hyperlink preview not being shown when the terminal has exactly 2 lines
- Crash on Windows when changing display scale factor
- Freeze with some drivers when using GLX
- Crash when shrinking the terminal scrolled into the history
- Character
;
inside theURI
inOSC 8
sequence breaking the URI - Selection on last line not updating correctly on resize
- Keyboard input not working on macOS with some IMEs like Fig.io
- Very long startup times on Wayland systems with broken xdg-portal setup.
- Error on startup with
GLX
when using old mesa platforms
- Uppercase
-T
short form for--title
- Support for horizontal scrolling in mouse mode and alternative scrolling modes
- Support for fractional scaling on Wayland with wp-fractional-scale protocol
- Support for running on GLES context
- Touchscreen input for click/scroll/select/zoom
window.resize_increments
config option, disabled by default
- Always use sRGB color space on macOS
- Erase in line after the last column will no longer clear the last column
- Open new windows by default with macOS
Cmd
+N
binding - The hint about window transparency is now properly issued on Wayland and macOS
window.decorations_theme_variant
could now control theme on macOS and Windows- The IME purpose is now set to
Terminal
which could help with OSK window.decorations_theme_variant
is now usingDark
,Light
, andNone
values- Resize increments are now set on macOS and X11 to resize by cell sizes
--help
output for--class
does not match man pages- Cursor and underlines always being black on very old hardware
- Crash when using very low negative
font.offset
- Startup failure on macOS with default config when system
/bin/sh
isdash
- Artifacts in corners for maximized window with CSD on Wayland
- Dotted underline not shown on macOS
- Underline on macOS always being at the bottom of the cell
- Crash with
OT-SVG
fonts on Linux/BSD - Crash during text compose on old GNOME under Wayland
- Mouse cursor staying hidden after window regains focus on macOS Ventura
- Blurry fonts when changing padding size at runtime
- Crash while typing on Wayland
- Multi-line semantic bracket selection
- Reduced GPU memory usage
- Low frame rate when multiple windows render at the same time
- Redraw hanging until a keypress on X11 in rare cases
- Window clipping when maximizing a window without decorations on Windows
- Quadrants not aligned with half blocks with built-in font
- EOT (
\x03
) escaping bracketed paste mode - Drag & Drop not working for the search bar
- Simple-fullscreened window not resized when moving between monitors on macOS
window.gtk_theme_variant
config field; usewindow.decorations_theme_variant
insteadalt_send_esc
is now always set totrue
- Minimum Rust version has been bumped to 1.60.0
- Minimum Rust version has been bumped to 1.57.0
- Renamed
io.alacritty.Alacritty.appdata.xml
toorg.alacritty.Alacritty.appdata.xml
- Renamed
io.alacritty
toorg.alacritty
forAlacritty.app
- Add keybinding to open "Emoji & Symbols" input dialog on macOS
- Track and report surface damage information to Wayland compositors
- Escape sequence for undercurl, dotted and dashed underlines (
CSI 4 : [3-5] m
) ToggleMaximized
key binding action to (un-)maximize the active window, not bound by default- Support for OpenGL ES 2.0
- Escape sequence to set underline color (
CSI 58 : 2 : Ps : Ps : Ps m
/CSI 58 : 5 : Ps m
) - Escape sequence to reset underline color (
CSI 59 m
) - Vi mode keybinding (z) to center view around vi mode cursor
- Accept hexadecimal values starting with
0x
for--embed
- Config option
cursor.blink_timeout
to timeout cursor blinking after inactivity - Escape sequence to set hyperlinks (
OSC 8 ; params ; URI ST
) - Config
hints.enabled.hyperlinks
for hyperlink escape sequence hint highlight window.decorations_theme_variant
to control both Wayland CSD and GTK theme variant on X11- Support for inline input method
- No longer renders to macos and x11 windows that are fully occluded / not directly visible
- The
--help
output was reworked with a new colorful syntax - OSC 52 is now disabled on unfocused windows
SpawnNewInstance
no longer inherits initial--command
- Blinking cursor will timeout after
5
seconds by default - Deprecated
colors.search.bar
, usecolors.footer_bar
instead - On macOS, Alacritty now reads
AppleFontSmoothing
from user defaults to control font smoothing - Warn when either
columns
orlines
is non-zero, but not both - Client side decorations should have proper text rendering now on Wayland
- Config option
window.gtk_theme_variant
, you should usewindow.decorations_theme_variant
instead --class
now sets both class part of WM_CLASS property and instance--class
'sgeneral
andinstance
options were swapped- Search bar is now respecting cursor thickness
- On X11 the IME popup window is stuck at the bottom of the window due to Xlib limitations
- IME no longer works in Vi mode when moving around
- Creating the IPC socket failing if
WAYLAND_DISPLAY
contains an absolute path - Crash when resetting the terminal while in vi mode
font.glyph_offset
not live reloading- Failure when running on 10-bit color system
- The colors being slightly different when using srgb displays on macOS
- Vi cursor blinking not reset when navigating in search
- Scrolling and middle-clicking modifying the primary selection
- Bottom gap for certain builtin box drawing characters
- Incorrect built-in glyphs for
U+2567
andU+2568
- Character mappings in the DEC special graphics character set (line drawing)
- Window flickering on resize on Wayland
- Unnecessary config reload when using
/dev/null
as a config file - Windows
Open Alacritty Here
on root of drive displaying error - On macOS,
font.use_thin_strokes
did not work since Big Sur - On macOS, trying to load a disabled font would crash
- On macOS, Alacritty sessions did not appear in the list of tty sessions for
w
andwho
- Cursor not hiding on GNOME Wayland
- Font having different scale factor after monitor powering off/on on X11
- Viewport not updating after opening a new tabbed window on macOS
- Terminal not exiting sometimes after closing all windows on macOS
- CPU usage spikes due to mouse movements for unfocused windows on X11/Windows
- First window on macOS not tabbed with system prefer tabs setting
- Window being treated as focused by default on Wayland
font.use_thin_strokes
config field; to use thin strokes on macOS, setAppleFontSmoothing
to 0 with$ defaults write -g AppleFontSmoothing -int 0
- Option
font.builtin_box_drawing
to disable the built-in font for drawing box characters
- Builtin font thickness is now based on cell width instead of underline thickness
- OSC 4 not handling
?
?
in OSC strings reporting default colors instead of modified ones- OSC 104 not clearing colors when second parameter is empty
- Builtin font lines not contiguous when
font.offset
is used font.glyph_offset
is no longer applied on builtin font- Built-in font arcs alignment
- Repeated permission prompts on M1 macs
- Colors being slightly off when using
colors.transparent_background_colors
- New
extra/alacritty-msg.man
manpage for thealacritty msg
subcommand - Minimum Rust version has been bumped to 1.53.0
- Option
colors.transparent_background_colors
to allow applying opacity to all background colors - Support for running multiple windows from a single Alacritty instance (see docs/features.md)
- Urgency support on Wayland via
xdg_activation_v1
ExpandSelection
is now a configurable mouse binding action- Config option
background_opacity
, you should usewindow.opacity
instead - Reload configuration files when their symbolic link is replaced
- Strip trailing whitespaces when yanking from a block selection
- Display area keeps history position when viewport is cleared
- Commands spawn from the current directory of the foreground shell in Unix-like systems
- Remove trailing newline from strings taken from hints or simple/semantic selections
- Builtin font is now used for box drawing characters from
U+2500
toU+259f
- Logs now print the time since startup instead of the local time
- Line indicator obstructing vi mode cursor when scrolled into history
- Vi mode search starting in the line below the vi cursor
- Invisible cursor with matching foreground/background colors
- Crash when hovering over a match emptied by post-processing
- Crash when the vi cursor is on the scrollback and viewport clear is invoked
- Freeze when the vi cursor is on the scrollback and scrollback clear is invoked
- Vi cursor on topmost of the display moving downward when scrolled into history with active output
- Input lag on Wayland with Nvidia binary driver
- Crash when hovering the mouse over fullwidth characters
- Do not create logfile if the file already exists
- Wayland client side decorations were simplified
- Minimum Rust version has been bumped to 1.46.0
- Support for
ipfs
/ipns
URLs - Mode field for regex hint bindings
- Regression in rendering performance with dense grids since 0.6.0
- Crash/Freezes with partially visible fullwidth characters due to alt screen resize
- Incorrect vi cursor position after invoking
ScrollPage*
action - Slow PTY read performance with extremely dense grids
- Crash when resizing during vi mode
- Unintentional text selection range change after leaving vi mode
- Deadlock on Windows during high frequency output
- Search without vi mode not starting at the correct location when scrolled into history
- Crash when starting a vi mode search from the bottommost line
- Original scroll position not restored after canceling search
- Clipboard copy skipping non-empty cells when encountering an interrupted tab character
- Vi mode cursor moving downward when scrolled in history with active output
- Crash when moving fullwidth characters off the side of the terminal in insert mode
- Broken bitmap font rendering with FreeType 2.11+
- Crash with non-utf8 font paths on Linux
- Newly installed fonts not rendering until Alacritty restart
- Minimum Rust version has been bumped to 1.45.0
- Updated shell completions
- Added ARM executable to prebuilt macOS binaries
- IME composition preview not appearing on Windows
- Synchronized terminal updates using
DCS = 1 s ST
/DCS = 2 s ST
- Regex terminal hints (see features.md)
- macOS keybinding (cmd+alt+H) hiding all windows other than Alacritty
- Support for
magnet
URLs
- The vi mode cursor is now created in the top-left if the terminal cursor is invisible
- Focused search match will use cell instead of match colors for CellForeground/CellBackground
- URL highlighting has moved from
mouse.url
to thehints
config section
- Alacritty failing to start on X11 with invalid DPI reported by XRandr
- Text selected after search without any match
- Incorrect vi cursor position after leaving search
- Clicking on URLs on Windows incorrectly opens File Explorer
- Incorrect underline cursor thickness on wide cell
- Viewport moving around when resizing while scrolled into history
- Block cursor not expanding across fullwidth characters when on the right side of it
- Overwriting fullwidth characters only clearing one of the involved cells
- Config field
visual_bell
, you should usebell
instead
- Updated shell completions
- Crash due to assertion failure on 32-bit architectures
- Segmentation fault on shutdown with Wayland
- Incorrect estimated DPR with Wayland
- Consecutive clipboard stores dropped on Wayland until the application is refocused
- Jumping between matches in backward vi search
- Support for
~/
at the beginning of configuration file imports - New
cursor.style.blinking
option to set the default blinking state - New
cursor.blink_interval
option to configure the blinking frequency - Support for cursor blinking escapes (
CSI ? 12 h
,CSI ? 12 l
andCSI Ps SP q
) - IME support on Windows
- Urgency support on Windows
- Customizable keybindings for search
- History for search mode, bound to ^P/^N/Up/Down by default
- Default binding to cancel search on Ctrl+C
- History position indicator for search and vi mode
- Nonexistent config imports are ignored instead of raising an error
- Value for disabling logging with
config.log_level
isOff
instead ofNone
- Missing glyph symbols are no longer drawn for zerowidth characters
- Wide characters sometimes being cut off
- Preserve vi mode across terminal
reset
- Escapes
CSI Ps b
andCSI Ps Z
with large parameters locking up Alacritty - Dimming colors which use the indexed
CSI 38 : 5 : Ps m
notation - Slow rendering performance with a lot of cells with underline/strikeout attributes
- Performance of scrolling regions with offset from the bottom
- Extra mouse buttons are no longer ignored on Wayland
- Numpad arrow keys are now properly recognized on Wayland
- Compilation when targeting aarch64-apple-darwin
- Window not being completely opaque on Windows
- Window being always on top during alt-tab on Windows
- Cursor position not reported to apps when mouse is moved with button held outside of window
- No live config update when starting Alacritty with a broken configuration file
- PTY not drained to the end with the
--hold
flag enabled - High CPU usage on BSD with live config reload enabled
- Alacritty not discarding invalid escape sequences starting with ESC
- Crash due to clipboard not being properly released on Wayland
- Shadow artifacts when resizing transparent windows on macOS
- Missing glyph symbols not being rendered for missing glyphs on macOS and Windows
- Underline cursor being obscured by underline
- Cursor not being rendered with a lot of unicode glyphs visible
- IME input swallowed after triggering a key binding
- Crash on Wayland due to non-standard fontconfig configuration
- Search without vi mode not jumping properly between all matches
- The following CLI arguments have been removed in favor of the
--option
flag:--persistent-logging
--live-config-reload
--no-live-config-reload
--dimensions
--position
live-shader-reload
feature- Config option
dynamic_title
, you should usewindow.dynamic_title
instead - Config option
scrolling.faux_multiplier
, which was replaced by escapeCSI ? 1007 h/l
- WinPTY support on Windows
- Minimum Rust version has been bumped to 1.43.0
- The snapcraft.yaml file has been removed
- Updated
setab
/setaf
capabilities inalacritty-direct
to use colons - WinPTY is now enabled only when targeting MSVC
- Deprecated the WinPTY backend feature, disabling it by default
- Secondary device attributes escape (
CSI > 0 c
) - Support for colon separated SGR 38/48
- New Ctrl+C binding to cancel search and leave vi mode
- Escapes for double underlines (
CSI 4 : 2 m
) and underline reset (CSI 4 : 0 m
) - Configuration file option for sourcing other files (
import
) - CLI parameter
--option
/-o
to override any configuration field - Escape sequences to report text area size in pixels (
CSI 14 t
) and in characters (CSI 18 t
) - Support for single line terminals dimensions
- Right clicking on Wayland's client side decorations will show application menu
- Escape sequences to enable and disable window urgency hints (
CSI ? 1042 h
,CSI ? 1042 l
)
- Cursors are now inverted when their fixed color is similar to the cell's background
- Use the working directory of the terminal foreground process, instead of the shell's working
directory, for
SpawnNewInstance
action - Fallback to normal underline for unsupported underline types in
CSI 4 : ? m
escapes - The user's background color is now used as the foreground for the render timer
- Use yellow/red from the config for error and warning messages instead of fixed colors
- Existing CLI parameters are now passed to instances spawned using
SpawnNewInstance
- Wayland's Client side decorations now use the search bar colors
- Reduce memory usage by up to at least 30% with a full scrollback buffer
- The number of zerowidth characters per cell is no longer limited to 5
SpawnNewInstance
is now using the working directory of the terminal foreground process on macOS
- Incorrect window location with negative
window.position
config options - Slow rendering performance with HiDPI displays, especially on macOS
- Keys swallowed during search when pressing them right before releasing backspace
- Crash when a wrapped line is rotated into the last line
- Selection wrapping to the top when selecting below the error/warning bar
- Pasting into clients only supporting
UTF8_STRING
mime type on Wayland - Crash when copying/pasting with neither pointer nor keyboard focus on Wayland
- Crash due to fd leak on Wayland
- IME window position with fullwidth characters in the search bar
- Selection expanding over 2 characters when scrolled in history with fullwidth characters in use
- Selection scrolling not starting when mouse is over the message bar
- Incorrect text width calculation in message bar when the message contains multibyte characters
- Remapped caps lock to escape not triggering escape bindings on Wayland
- Crash when setting overly long title on Wayland
- Switching in and out of various window states, like Fullscreen, not persisting window size on Wayland
- Crash when providing 0 for
XCURSOR_SIZE
on Wayland - Gap between window and server side decorations on KWIN Wayland
- Wayland's client side decorations not working after tty switch
Fullscreen
startup mode not working on Wayland- Window not being rescaled when changing DPR of the current monitor on Wayland
- Crash in some cases when pointer isn't presented upon startup on Wayland
- IME not working on Wayland
- Crash on startup on GNOME since its 3.37.90 version on Wayland
- Touchpad scrolling scrolled less than it should on macOS/Wayland on scaled outputs
- Incorrect modifiers at startup on X11
Add
andSubtract
keys are now namedNumpadAdd
andNumpadSubtract
respectively- Feature checking when cross compiling between different operating systems
- Crash when writing to the clipboard fails on Wayland
- Crash with large negative
font.offset.x/y
- Visual bell getting stuck on the first frame
- Zerowidth characters in the last column of the line
- Minimum Rust version has been bumped to 1.41.0
- Prebuilt Linux binaries have been removed
- Added manpage, terminfo, and completions to macOS application bundle
- On Linux/BSD the build will fail without Fontconfig installed, instead of building it from source
- Minimum FreeType version has been bumped to 2.8 on Linux/BSD
- Default Command+N keybinding for SpawnNewInstance on macOS
- Vi mode for regex search, copying text, and opening links
CopySelection
action which copies into selection buffer on Linux/BSD- Option
cursor.thickness
to set terminal cursor thickness - Font fallback on Windows
- Support for Fontconfig embolden and matrix options
- Opt-out compilation flag
winpty
to disable WinPTY support - Scrolling during selection when mouse is at top/bottom of window
- Expanding existing selections using single, double and triple click with the right mouse button
- Support for
gopher
andgemini
URLs - Unicode 13 support
- Option to run command on bell which can be set in
bell.command
- Fallback to program specified in
$SHELL
variable on Linux/BSD if it is present - Ability to make selections while search is active
- Block cursor is no longer inverted at the start/end of a selection
- Preserve selection on non-LMB or mouse mode clicks
- Wayland client side decorations are now based on config colorscheme
- Low resolution window decoration icon on Windows
- Mouse bindings for additional buttons need to be specified as a number not a string
- Don't hide cursor on modifier press with
mouse.hide_when_typing
enabled Shift + Backspace
now sends^?
instead of^H
- Default color scheme is now
Tomorrow Night
with the bright colors ofTomorrow Night Bright
- Set IUTF8 termios flag for improved UTF8 input support
- Dragging files into terminal now adds a space after each path
- Default binding replacement conditions
- Adjusted selection clearing granularity to more accurately match content
- To use the cell's text color for selection with a modified background, the
color.selection.text
variable must now be set toCellForeground
instead of omitting it - URLs are no longer highlighted without a clearly delimited scheme
- Renamed config option
visual_bell
tobell
- Moved config option
dynamic_title
towindow.dynamic_title
- When searching without vi mode, matches are only selected once search is cancelled
- Selection not cleared when switching between main and alt grid
- Freeze when application is invisible on Wayland
- Paste from some apps on Wayland
- Slow startup with Nvidia binary drivers on some X11 systems
- Display not scrolling when printing new lines while scrolled in history
- Regression in font rendering on macOS
- Scroll down escape (
CSI Ps T
) incorrectly pulling lines from history - Dim escape (
CSI 2 m
) support for truecolor text - Incorrectly deleted lines when increasing width with a prompt wrapped using spaces
- Documentation for class in
--help
missing information on setting general class - Linewrap tracking when switching between primary and alternate screen buffer
- Preservation of the alternate screen's saved cursor when swapping to primary screen and back
- Reflow of cursor during resize
- Cursor color escape ignored when its color is set to inverted in the config
- Fontconfig's
autohint
andhinting
options being ignored - Ignoring of default FreeType properties
- Alacritty crashing at startup when the configured font does not exist
- Font size rounding error
- Opening URLs while search is active
- Environment variable
RUST_LOG
for selecting the log level - Deprecated
window.start_maximized
config field - Deprecated
render_timer
config field - Deprecated
persistent_logging
config field
- Tabstops not being reset with
reset
- Fallback to
LC_CTYPE=UTF-8
on macOS without valid system locale - Resize lag on launch under some X11 wms
- Increased input latency due to vsync behavior on X11
- Emoji colors blending with terminal background
- Fix escapes prematurely terminated by terminators in unicode glyphs
- Incorrect location when clicking inside an unfocused window on macOS
- Startup mode
Maximized
on Windows - Crash when writing a fullwidth character in the last column with auto-wrap mode disabled
- Crashing at startup on Windows
- Minimum Rust version has been bumped to 1.37.0
- Added Rust features
x11
andwayland
to pick backends, with both enabled by default - Capitalized the Alacritty.desktop file
- Live config reload for
window.title
- Pressing additional modifiers for mouse bindings will no longer trigger them
- Renamed
WINIT_HIDPI_FACTOR
environment variable toWINIT_X11_SCALE_FACTOR
- Print an error instead of crashing, when startup working directory is invalid
- Line selection will now expand across wrapped lines
- The default value for
draw_bold_text_with_bright_colors
is nowfalse
- Mirror OSC query terminators instead of always using BEL
- Increased Beam, Underline, and Hollow Block cursors' line widths
- Dynamic title is not disabled anymore when
window.title
is set in config
- Incorrect default config path in
--help
on Windows and macOS - Semantic selection stopping at full-width glyphs
- Full-width glyphs cut off in last column
- Crash when starting on some X11 systems
- Font size resetting when Alacritty is moved between screens
- Limited payload length in clipboard escape (used for Tmux copy/paste)
- Alacritty not ignoring keyboard events for changing WM focus on X11
- Regression which added a UNC path prefix to the working directory on Windows
- CLI parameters discarded when config is reload
- Blurred icons in KDE task switcher (alacritty.ico is now high-res)
- Consecutive builds failing on macOS due to preexisting
/Application
symlink - Block selection starting from first column after beginning leaves the scrollback
- Incorrect selection status of the first cell when selection is off screen
- Backwards bracket selection
- Stack overflow when printing shader creation error
- Underline position for bitmap fonts
- Selection rotating outside of scrolling region
- Throughput performance problems caused by excessive font metric queries
- Unicode throughput performance on Linux/BSD
- Resize of bitmap fonts
- Crash when using bitmap font with
embeddedbitmap
set tofalse
- Inconsistent fontconfig fallback
- Handling of OpenType variable fonts
- Expansion of block-selection on partially selected full-width glyphs
- Minimize action only works with decorations on macOS
- Window permanently vanishing after hiding on macOS
- Handling of URLs with single quotes
- Parser reset between DCS escapes
- Parser stopping at unknown DEC private modes/SGR character attributes
- Block selection appending duplicate newlines when last column is selected
- Bitmap fonts being a bit smaller than they should be in some cases
- Config reload creating alternate screen history instead of updating scrollback
- Crash on Wayland compositors supporting
wl_seat
version 7+ - Message bar not hiding after fixing wrong color value in config
- Tabstops cleared on resize
- Tabstops not breaking across lines
- Crash when parsing DCS escape with more than 16 parameters
- Ignoring of slow touchpad scrolling
- Selection invisible when starting above viewport and ending below it
- Clipboard not working after TTY switch on Wayland
- Crash when pasting non UTF-8 string advertised as UTF-8 string on Wayland
- Incorrect modifiers tracking on X11 and macOS, leading to 'sticky' modifiers
- Crash when starting on Windows with missing dark mode support
- Variables
XCURSOR_THEME
andXCURSOR_SIZE
ignored on Wayland - Low resolution mouse cursor and decorations on HiDPI Wayland outputs
- Decorations visible when in fullscreen on Wayland
- Window size not persisted correctly after fullscreening on macOS
- Crash on startup with some locales on X11
- Shrinking terminal height in alt screen deleting primary screen content
- Config option
auto_scroll
, which is now always disabled - Config option
tabspaces
, which is now fixed at8
- Added compatibility logo variants for environments which can't render the default SVG
- Terminal escape bindings with combined modifiers for Delete and Insert
- /Applications symlink into OS X DMG for easier installation
- Colored emojis on Linux/BSD
- Value
randr
forWINIT_HIDPI_FACTOR
, to ignoreXft.dpi
and scale based on screen dimensions Minimize
key binding action, bound tocmd + m
on macOS
- On Windows, the ConPTY backend will now be used by default if available
- The
enable_experimental_conpty_backend
config option has been replaced withwinpty_backend
- URLs not truncated with non-matching single quote
- Absolute file URLs (
file:///home
) not recognized because of leading/
- Clipboard escape
OSC 52
not working with empty clipboard parameter - Direct escape input on Windows using alt
- Incorrect window size on X11 when waking up from suspend
- Width of Unicode 11/12 emojis
- Minimize on windows causing layout issues
- Performance bottleneck when clearing colored rows
- Vague startup crash messages on Windows with WinPTY backend
- Deadlock on Windows when closing Alacritty using the title bar "X" button (ConPTY backend)
- Crash on
clear
when scrolled up in history - Entire screen getting underlined/stroke out when running
clear
- Slow startup on some Wayland compositors
- Padding not consistently visible on macOS
- Decorations ignoring Windows dark theme
- Crash on macOS when starting maximized without decorations
- Resize cursor not showing up on Wayland
- Maximized windows spawning behind system panel on Gnome Wayland
- Support for 8-bit C1 escape sequences
- Minimum Rust version has been bumped to 1.36.0
- Config is not generated anymore, please consider distributing the alacritty.yml as documentation
- Removed Alacritty terminfo from .deb in favor of ncurses provided one
- Block selection mode when Control is held while starting a selection
- Allow setting general window class on X11 using CLI or config (
window.class.general
) - Config option
window.gtk_theme_variant
to set GTK theme variant - Completions for
--class
and-t
(short title) - Change the mouse cursor when hovering over the message bar and its close button
- Support combined bold and italic text (with
font.bold_italic
to customize it) - Extra bindings for F13-F20
- Terminal escape bindings with combined modifiers
- Bindings for ScrollToTop and ScrollToBottom actions
ReceiveChar
key binding action to insert the key's text character- New CLI flag
--hold
for keeping Alacritty opened after its child process exits - Escape sequence to save and restore window title from stack
- Alternate scroll escape sequence (
CSI ? 1007 h
/CSI ? 1007 l
) - Print name of launch command if Alacritty failed to execute it
- Live reload font settings from config
- UTF-8 mouse mode escape sequence (
CSI ? 1005 h
/CSI ? 1005 l
) - Escape for reading clipboard (
OSC 52 ; <s / p / c> ; ? BEL
) - Set selection clipboard (
OSC 52 ; <s / p> ; <BASE64> BEL
)
- On Windows, query DirectWrite for recommended anti-aliasing settings
- Scroll lines out of the visible region instead of deleting them when clearing the screen
- GUI programs launched by Alacritty starting in the background on X11
- Text Cursor position when scrolling
- Performance issues while resizing Alacritty
- First unfullscreen action ignored on window launched in fullscreen mode
- The window is now filled with the background color before displaying
- Cells sometimes not getting cleared correctly
- X11 clipboard hanging when mime type is set
- On macOS, Alacritty will now fallback to Menlo if a font specified in the config cannot be loaded
- Debug ref tests are now written to disk regardless of shutdown method
- Cursor color setting with escape sequence
- Override default bindings with subset terminal mode match
- On Linux, respect fontconfig's
embeddedbitmap
configuration option - Selecting trailing tab with semantic expansion
- URL parser incorrectly handling Markdown URLs and angled brackets
- Intermediate bytes of CSI sequences not checked
- Wayland clipboard integration
- Use text mouse cursor when mouse mode is temporarily disabled with shift
- Wayland primary selection clipboard not storing text when selection is stopped outside of the window
- Block URL highlight while a selection is active
- Bindings for Alt + F1-F12
- Discard scrolling region escape with bottom above top
- Opacity always applying to cells with their background color matching the terminal background
- Allow semicolons when setting titles using an OSC
- Background always opaque on X11
- Skipping redraws on PTY update
- Not redrawing while resizing on Windows/macOS
- Decorations
none
launching an invisible window on Windows - Alacritty turning transparent when opening another window on macOS with chunkwm
- Startup mode
Maximized
having no effect on Windows - Inserting Emojis using
Super+.
or compose sequences on Windows - Change mouse cursor depending on mode with Wayland
- Hide mouse cursor when typing if the
mouse.hide_when_typing
option is set on Wayland - Glitches when DPI changes on Windows
- Crash when resuming after suspension
- Crash when trying to start on X11 with a Wayland compositor running
- Crash with a virtual display connected on X11
- Use
\
instead of\\
as path separators on Windows for logging config file location - Underline/strikeout drawn above visual bell
- Terminal going transparent during visual bell
- Selection not being cleared when sending chars through a binding
- Mouse protocols/encodings not being mutually exclusive within themselves
- Escape
CSI Ps M
deleting lines above cursor when at the bottom of the viewport - Cell reset not clearing underline, strikeout and foreground color
- Escape
CSI Ps c
honored with a wrongPs
- Ignore
ESC
escapes with invalid intermediates - Blank lines after each line when pasting from GTK apps on Wayland
- Bindings for Super/Command + F1-F12
- Automatic config generation
- Deprecated
scrolling.faux_multiplier
, the alternate scroll escape can now be used to disable it andscrolling.multiplier
controls the number of scrolled lines
- Add appstream metadata, located at /extra/linux/io.alacritty.Alacritty.xml
- The xclip dependency has been removed
- On macOS, Alacritty now requests NSSystemAdministrationUsageDescription to avoid permission failures
- Minimum Rust version has been bumped to 1.32.0
- Added ToggleFullscreen action
- On macOS, there's a ToggleSimpleFullscreen action which allows switching to fullscreen without occupying another space
- A new window option
window.startup_mode
which controls how the window is created _NET_WM_ICON
property is set on X11 now, allowing for WMs to show icons in titlebars- Current Git commit hash to
alacritty --version
- Config options
window.title
andwindow.class
- Config option
working_directory
- Config group
debug
with the optionsdebug.log_level
,debug.print_events
anddebug.ref_test
- Select until next matching bracket when double-clicking a bracket
- Added foreground/background escape code request sequences
- Escape sequences now support 1, 3, and 4 digit hex colors
- On Windows, Alacritty will now use the native DirectWrite font API
- The
start_maximized
window option is nowstartup_mode: Maximized
- Cells with identical foreground and background will now show their text upon selection/inversion
- Default Window padding to 0x0
- Moved config option
render_timer
andpersistent_logging
to thedebug
group - When the cursor is in the selection, it will be inverted again, making it visible
- Double-width characters in URLs only being highlighted on the left half
- PTY size not getting updated when message bar is shown
- Text Cursor disappearing
- Incorrect positioning of zero-width characters over double-width characters
- Mouse mode generating events when the cell has not changed
- Selections not automatically expanding across double-width characters
- On macOS, automatic graphics switching has been enabled again
- Text getting recognized as URLs without slashes separating the scheme
- URL parser dropping trailing slashes from valid URLs
- UTF-8 BOM skipped when reading config file
- Terminfo backspace escape sequence (
kbs
)
- Deprecated
mouse.faux_scrollback_lines
config field - Deprecated
custom_cursor_colors
config field - Deprecated
hide_cursor_when_typing
config field - Deprecated
cursor_style
config field - Deprecated
unfocused_hollow_cursor
config field - Deprecated
dimensions
config field
- Panic on startup when using Conpty on Windows
- Added ScrollLineUp and ScrollLineDown actions for scrolling line by line
- Native clipboard support on X11 and Wayland
- Alacritty now has a fixed minimum supported Rust version of 1.31.0
- Reset scrolling region when the RIS escape sequence is received
- Subprocess spawning on macos
- Unnecessary resize at startup
- Text getting blurry after live-reloading shaders with padding active
- Resize events are not send to the shell anymore if dimensions haven't changed
- Minor performance issues with underline and strikeout checks
- Rare bug which would extend underline and strikeout beyond the end of line
- Cursors not spanning two lines when over double-width characters
- Incorrect cursor dimensions if the font offset isn't
0
- On Linux, the .desktop file now uses
Alacritty
as icon name, which can be found atextra/logo/alacritty-term.svg
- MSI installer for Windows is now available
- New default key bindings Alt+Home, Alt+End, Alt+PageUp and Alt+PageDown
- Dynamic title support on Windows
- Ability to specify starting position with the
--position
flag - New configuration field
window.position
allows specifying the starting position - Added the ability to change the selection color
- Text will reflow instead of truncating when resizing Alacritty
- Underline text and change cursor when hovering over URLs with required modifiers pressed
- Clicking on non-alphabetical characters in front of URLs will no longer open them
- Command keybindings on Windows will no longer open new cmd.exe console windows
- On macOS, automatic graphics switching has been temporarily disabled due to a macos bug
- Fix panic which could occur when quitting Alacritty on Windows if using the Conpty backend
- Automatic copying of selection to clipboard when mouse is released outside of Alacritty
- Scrollback history live reload only working when shrinking lines
- Crash when decreasing scrollback history in config while scrolled in history
- Resetting the terminal while in the alt screen will no longer disable scrollback
- Cursor jumping around when leaving alt screen while not in the alt screen
- Text lingering around when resetting while scrolled up in the history
- Terminfo support for extended capabilities
- Allow mouse presses and beginning of mouse selection in padding
- Windows: Conpty backend could close immediately on startup in certain situations
- FreeBSD: SpawnNewInstance will now open new instances in the shell's current
working directory as long as linprocfs(5) is mounted on
/compat/linux/proc
- Fix lingering Alacritty window after child process has exited
- Growing the terminal while scrolled up will no longer move the content down
- Support for alternate keyboard layouts on macOS
- Slow startup time on some X11 systems
- The AltGr key no longer sends escapes (like Alt)
- Fixes increase/decrease font-size keybindings on international keyboards
- On Wayland, the
--title
flag will set the Window title now - Parsing issues with URLs starting in the first or ending in the last column
- URLs stopping at double-width characters
- Fix
start_maximized
option on X11 - Error when parsing URLs ending with Unicode outside of the ascii range
- On Windows, focusing a Window will no longer start a selection
- Accept fonts which are smaller in width or height than a single pixel
- Incorrect font spacing after moving Alacritty between displays
- Window class on Wayland is set to
Alacritty
by default - Log file location is stored in the
ALACRITTY_LOG
environment variable - Close button has been added to the error/warning messages
- Improve scrolling accuracy with devices sending fractional updates (like touchpads)
scrolling.multiplier
now affects normal scrolling with touchpads- Error/Warning bar doesn't overwrite the terminal anymore
- Full error/warning messages are displayed
- Config error messages are automatically removed when the config is fixed
- Scroll history on Shift+PgUp/PgDown when scrollback history is available
- Resolved off-by-one issue with erasing characters in the last column
- Excessive polling every 100ms with
live_config_reload
enabled - Unicode characters at the beginning of URLs are now properly ignored
- Remove error message when reloading an empty config
- Allow disabling URL launching by setting the value of
mouse.url.launcher
toNone
- Corrected the
window.decorations
config documentation for macOS - Fix IME position on HiDPI displays
- URLs not opening while terminal is scrolled
- Reliably remove log file when Alacritty is closed and persistent logging is disabled
- Remove selections when clearing the screen partially (scrolling horizontally in less)
- Crash/Freeze when shrinking the font size too far
- Documentation of the
--dimensions
flag have been updated to display the correct default
clear
doesn't remove error/warning messages anymore
- Crash when trying to start Alacritty on Windows
- New
alt_send_esc
option for controlling if alt key should send escape sequences
- All options in the configuration file are now optional
- Replaced
Command
withSuper
in the Linux and Windows config documentation - Prevent semantic and line selection from starting with the right or middle mouse button
- Prevent Alacritty from crashing when started on a system without any free space
- Resolve issue with high CPU usage after moving Alacritty between displays
- Characters will no longer be deleted when using ncurses with the hard tab optimization
- Crash on non-linux operating systems when using the
SpawnNewInstance
action
- Windows and macOS configuration files (
alacritty.yml
is now platform independent)
- New configuration field
visual_bell.color
allows changing the visual bell color - Crashes on Windows are now also reported with a popup in addition to stderr
- Windows: New configuration field
enable_experimental_conpty_backend
which enables support for the Pseudoconsole API (ConPTY) added in Windows 10 October 2018 (1809) update - New mouse and key action
SpawnNewInstance
for launching another instance of Alacritty
- Log messages are now consistent in style, and some have been removed
- Windows configuration location has been moved from %USERPROFILE%\alacritty.yml to %APPDATA%\alacritty\alacritty.yml
- Windows default shell is now PowerShell instead of cmd
- URL schemes have been limited to http, https, mailto, news, file, git, ssh and ftp
- Fix color issue in ncurses programs by updating terminfo pairs from 0x10000 to 0x7FFF
- Fix panic after quitting Alacritty on macOS
- Tabs are no longer replaced by spaces when copying them to the clipboard
- Alt modifier is no longer sent separately from the modified key
- Various Windows issues, like color support and performance, through the new ConPTY
- Fixed rendering non default mouse cursors in terminal mouse mode (linux)
- Fix the
Copy
mouse_bindings
action (#1963) - URLs are only launched when left-clicking
- Removal of extra characters (like
,
) at the end of URLs has been improved - Single quotes (
'
) are removed from URLs when there is no matching opening quote - Precompiled binaries now work with macOS versions before 10.13 (10.11 and above)
- Option for evenly spreading extra padding around the terminal (
window.dynamic_padding
) - Option for maximizing alacritty on start (
window.start_maximized
) - Display notice about errors and warnings inside Alacritty
- Log all messages to both stderr and a log file in the system's temporary directory
- New configuration option
persistent_logging
and CLI flag--persistent-logging
, for keeping the log file after closing Alacritty ClearLogNotice
action for removing the warning and error message- Terminal bells on macOS will now request the user's attention in the window
- Alacritty now requests privacy permissions on macOS
- Extra padding is not evenly spread around the terminal by default anymore
- When the config file is empty, Alacritty now logs an info instead of an error message
- Fixed a bad type conversion which could cause underflow on a window resize
- Alacritty now spawns a login shell on macOS, as with Terminal.app and iTerm2
- Fixed zombie processes sticking around after launching URLs
- Zero-width characters are now properly rendered without progressing the cursor
- Mouse cursor alignment issues and truncated last line caused by incorrect padding calculations
- Add support for Windows
- Add terminfo capabilities advertising support for changing the window title
- Allow using scancodes in the key_bindings section
- When
mouse.url.launcher
is set, clicking on URLs will now open them with the specified program - New
mouse.url.modifiers
option to specify keyboard modifiers for opening URLs on click - Binaries for macOS, Windows and Debian-based systems are now published with GitHub releases
- The keys F16-F24 have been added as options for key bindings
- DEB file adds Alacritty as option to
update-alternatives --config x-terminal-emulator
- The
colors.cursor.text
andcolors.cursor.cursor
fields are optional now - Moved
cursor_style
tocursor.style
- Moved
unfocused_hollow_cursor
tocursor.unfocused_hollow
- Moved
hide_cursor_when_typing
tomouse.hide_when_typing
- Mouse bindings now ignore additional modifiers
- Extra padding is now spread evenly around the terminal grid
- DEB file installs to
usr/bin
instead ofusr/local/bin
- Fixed erroneous results when using the
indexed_colors
config option - Fixed rendering cursors other than rectangular with the RustType backend
- Selection memory leak and glitches in the alternate screen buffer
- Invalid default configuration on macOS and Linux
- Middle mouse pasting if mouse mode is enabled
- Selections now properly update as you scroll the scrollback buffer while selecting
- NUL character at the end of window titles
- DPI Scaling when moving windows across monitors
- On macOS, issues with Command-[KEY] and Control-Tab keybindings have been fixed
- Incorrect number of columns/lines when using the
window.dimensions
option - On Wayland, windows will no longer be spawned outside of the visible region
- Resizing of windows without decorations
- On Wayland, key repetition works again
- On macOS, Alacritty will now use the integrated GPU again when available
- On Linux, the
WINIT_HIDPI_FACTOR
environment variable can be set from the config now
- The
custom_cursor_colors
config field was deleted, remove thecolors.cursor.*
options to achieve the same behavior as setting it tofalse
- The
scale_with_dpi
configuration value has been removed, on Linux the env variableWINIT_HIDPI_FACTOR=1
can be set instead to disable DPI scaling
- Implement the
hidden
escape sequence (echo -e "\e[8mTEST"
) - Add support for macOS systemwide dark mode
- Set the environment variable
COLORTERM="truecolor"
to advertise 24-bit color support - On macOS, there are two new values for the config option
window.decorations
:transparent
- This makes the title bar transparent and allows the viewport to extend to the top of the window.buttonless
- Similar to transparent but also removed the buttons.
- Add support for changing the colors from 16 to 256 in the
indexed_colors
config section - Add
save_to_clipboard
configuration option for copying selected text to the system clipboard - New terminfo entry,
alacritty-direct
, that advertises 24-bit color support - Add support for CSI sequences Cursor Next Line (
\e[nE
) and Cursor Previous Line (\e[nF
)
- Inverse/Selection color is now modelled after XTerm/VTE instead of URxvt to improve consistency
- First click on unfocused Alacritty windows is no longer ignored on platforms other than macOS
- Reduce memory usage significantly by only initializing part of the scrollback buffer at startup
- The
alacritty
terminfo entry no longer requires thexterm
definition to be present on the system - The default
TERM
value is no longer static; thealacritty
entry is used if available, otherwise thexterm-256color
entry is used instead - The values
true
andfalse
for the config optionwindow.decorations
have been replaced withfull
andnone
- Rendering now occurs without the terminal locked which improves performance
- Clear screen properly before rendering of content to prevent various graphical glitches
- Fix build failure on 32-bit systems
- Windows started as unfocused now show the hollow cursor if the setting is enabled
- Empty lines in selections are now properly copied to the clipboard
- Selection start point lagging behind initial cursor position
- Rendering of selections which start above the visible area and end below it
- Bracketed paste mode now filters escape sequences beginning with \x1b
- The terminfo entry
alacritty-256color
. It is replaced by thealacritty
entry (which also advertises 256 colors)
- Add a scrollback history buffer (10_000 lines by default)
- CHANGELOG has been added for documenting relevant user-facing changes
- Add
ClearHistory
key binding action and theErase Saved Lines
control sequence - When growing the window height, Alacritty will now try to load additional lines out of the scrollback history
- Support the dim foreground color (
echo -e '\033[2mDimmed Text'
) - Add support for the LCD-V pixel mode (vertical screens)
- Pressing enter on the numpad should now insert a newline
- The mouse bindings now support keyboard modifiers (shift/ctrl/alt/super)
- Add support for the bright foreground color
- Support for setting foreground, background colors in one escape sequence
- Multiple key/mouse bindings for a single key will now all be executed instead of picking one and ignoring the rest
- Improve text scrolling performance (affects applications like
yes
, not scrolling the history)
- Clear the visible region when the RIS escape sequence (
echo -ne '\033c'
) is received - Prevent logger from crashing Alacritty when stdout/stderr is not available
- Fix a crash when sending the IL escape sequence with a large number of lines