1# Changelog 2 3All notable changes to Alacritty are documented in this file. 4The sections should follow the order `Packaging`, `Added`, `Changed`, `Fixed` and `Removed`. 5 6The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). 7 8## 0.9.0 9 10### Packaging 11 12- Minimum Rust version has been bumped to 1.46.0 13 14### Added 15 16- Support for `ipfs`/`ipns` URLs 17- Mode field for regex hint bindings 18 19### Fixed 20 21- Regression in rendering performance with dense grids since 0.6.0 22- Crash/Freezes with partially visible fullwidth characters due to alt screen resize 23- Incorrect vi cursor position after invoking `ScrollPage*` action 24- Slow PTY read performance with extremely dense grids 25- Crash when resizing during vi mode 26- Unintentional text selection range change after leaving vi mode 27- Deadlock on Windows during high frequency output 28- Search without vi mode not starting at the correct location when scrolled into history 29- Crash when starting a vi mode search from the bottommost line 30- Original scroll position not restored after canceling search 31- Clipboard copy skipping non-empty cells when encountering an interrupted tab character 32- Vi mode cursor moving downward when scrolled in history with active output 33- Crash when moving fullwidth characters off the side of the terminal in insert mode 34- Broken bitmap font rendering with FreeType 2.11+ 35- Crash with non-utf8 font paths on Linux 36- Newly installed fonts not rendering until Alacritty restart 37 38## 0.8.0 39 40### Packaging 41 42- Minimum Rust version has been bumped to 1.45.0 43 44### Added 45 46- IME composition preview not appearing on Windows 47- Synchronized terminal updates using `DCS = 1 s ST`/`DCS = 2 s ST` 48- Regex terminal hints ([see features.md](./docs/features.md#hints)) 49- macOS keybinding (cmd+alt+H) hiding all windows other than Alacritty 50- Support for `magnet` URLs 51 52### Changed 53 54- The vi mode cursor is now created in the top-left if the terminal cursor is invisible 55- Focused search match will use cell instead of match colors for CellForeground/CellBackground 56- URL highlighting has moved from `mouse.url` to the `hints` config section 57 58### Fixed 59 60- Alacritty failing to start on X11 with invalid DPI reported by XRandr 61- Text selected after search without any match 62- Incorrect vi cursor position after leaving search 63- Clicking on URLs on Windows incorrectly opens File Explorer 64- Incorrect underline cursor thickness on wide cell 65- Viewport moving around when resizing while scrolled into history 66- Block cursor not expanding across fullwidth characters when on the right side of it 67- Overwriting fullwidth characters only clearing one of the involved cells 68 69### Removed 70 71- Config field `visual_bell`, you should use `bell` instead 72 73## 0.7.2 74 75### Packaging 76 77- Updated shell completions 78 79### Fixed 80 81- Crash due to assertion failure on 32-bit architectures 82- Segmentation fault on shutdown with Wayland 83- Incorrect estimated DPR with Wayland 84- Consecutive clipboard stores dropped on Wayland until the application is refocused 85 86## 0.7.1 87 88### Fixed 89 90- Jumping between matches in backward vi search 91 92## 0.7.0 93 94### Added 95 96- Support for `~/` at the beginning of configuration file imports 97- New `cursor.style.blinking` option to set the default blinking state 98- New `cursor.blink_interval` option to configure the blinking frequency 99- Support for cursor blinking escapes (`CSI ? 12 h`, `CSI ? 12 l` and `CSI Ps SP q`) 100- IME support on Windows 101- Urgency support on Windows 102- Customizable keybindings for search 103- History for search mode, bound to ^P/^N/Up/Down by default 104- Default binding to cancel search on Ctrl+C 105- History position indicator for search and vi mode 106 107### Changed 108 109- Nonexistent config imports are ignored instead of raising an error 110- Value for disabling logging with `config.log_level` is `Off` instead of `None` 111- Missing glyph symbols are no longer drawn for zerowidth characters 112 113### Fixed 114 115- Wide characters sometimes being cut off 116- Preserve vi mode across terminal `reset` 117- Escapes `CSI Ps b` and `CSI Ps Z` with large parameters locking up Alacritty 118- Dimming colors which use the indexed `CSI 38 : 5 : Ps m` notation 119- Slow rendering performance with a lot of cells with underline/strikeout attributes 120- Performance of scrolling regions with offset from the bottom 121- Extra mouse buttons are no longer ignored on Wayland 122- Numpad arrow keys are now properly recognized on Wayland 123- Compilation when targetting aarch64-apple-darwin 124- Window not being completely opaque on Windows 125- Window being always on top during alt-tab on Windows 126- Cursor position not reported to apps when mouse is moved with button held outside of window 127- No live config update when starting Alacritty with a broken configuration file 128- PTY not drained to the end with the `--hold` flag enabled 129- High CPU usage on BSD with live config reload enabled 130- Alacritty not discarding invalid escape sequences starting with ESC 131- Crash due to clipboard not being properly released on Wayland 132- Shadow artifacts when resizing transparent windows on macOS 133- Missing glyph symbols not being rendered for missing glyphs on macOS and Windows 134- Underline cursor being obscured by underline 135- Cursor not being rendered with a lot of unicode glyphs visible 136- IME input swallowed after triggering a key binding 137- Crash on Wayland due to non-standard fontconfig configuration 138- Search without vi mode not jumping properly between all matches 139 140### Removed 141 142- The following CLI arguments have been removed in favor of the `--option` flag: 143 * `--persistent-logging` 144 * `--live-config-reload` 145 * `--no-live-config-reload` 146 * `--dimensions` 147 * `--position` 148- `live-shader-reload` feature 149- Config option `dynamic_title`, you should use `window.dynamic_title` instead 150- Config option `scrolling.faux_multiplier`, which was replaced by escape `CSI ? 1007 h/l` 151- WinPTY support on Windows 152 153## 0.6.0 154 155### Packaging 156 157- Minimum Rust version has been bumped to 1.43.0 158- The snapcraft.yaml file has been removed 159- Updated `setab`/`setaf` capabilities in `alacritty-direct` to use colons 160- WinPTY is now enabled only when targeting MSVC 161- Deprecated the WinPTY backend feature, disabling it by default 162 163### Added 164 165- Secondary device attributes escape (`CSI > 0 c`) 166- Support for colon separated SGR 38/48 167- New Ctrl+C binding to cancel search and leave vi mode 168- Escapes for double underlines (`CSI 4 : 2 m`) and underline reset (`CSI 4 : 0 m`) 169- Configuration file option for sourcing other files (`import`) 170- CLI parameter `--option`/`-o` to override any configuration field 171- Escape sequences to report text area size in pixels (`CSI 14 t`) and in characters (`CSI 18 t`) 172- Support for single line terminals dimensions 173- Right clicking on Wayland's client side decorations will show application menu 174- Escape sequences to enable and disable window urgency hints (`CSI ? 1042 h`, `CSI ? 1042 l`) 175 176### Changed 177 178- Cursors are now inverted when their fixed color is similar to the cell's background 179- Use the working directory of the terminal foreground process, instead of the shell's working 180 directory, for `SpawnNewInstance` action 181- Fallback to normal underline for unsupported underline types in `CSI 4 : ? m` escapes 182- The user's background color is now used as the foreground for the render timer 183- Use yellow/red from the config for error and warning messages instead of fixed colors 184- Existing CLI parameters are now passed to instances spawned using `SpawnNewInstance` 185- Wayland's Client side decorations now use the search bar colors 186- Reduce memory usage by up to at least 30% with a full scrollback buffer 187- The number of zerowidth characters per cell is no longer limited to 5 188- `SpawnNewInstance` is now using the working directory of the terminal foreground process on macOS 189 190### Fixed 191 192- Incorrect window location with negative `window.position` config options 193- Slow rendering performance with HiDPI displays, especially on macOS 194- Keys swallowed during search when pressing them right before releasing backspace 195- Crash when a wrapped line is rotated into the last line 196- Selection wrapping to the top when selecting below the error/warning bar 197- Pasting into clients only supporting `UTF8_STRING` mime type on Wayland 198- Crash when copying/pasting with neither pointer nor keyboard focus on Wayland 199- Crash due to fd leak on Wayland 200- IME window position with fullwidth characters in the search bar 201- Selection expanding over 2 characters when scrolled in history with fullwidth characters in use 202- Selection scrolling not starting when mouse is over the message bar 203- Incorrect text width calculation in message bar when the message contains multibyte characters 204- Remapped caps lock to escape not triggering escape bindings on Wayland 205- Crash when setting overly long title on Wayland 206- Switching in and out of various window states, like Fullscreen, not persisting window size on Wayland 207- Crash when providing 0 for `XCURSOR_SIZE` on Wayland 208- Gap between window and server side decorations on KWIN Wayland 209- Wayland's client side decorations not working after tty switch 210- `Fullscreen` startup mode not working on Wayland 211- Window not being rescaled when changing DPR of the current monitor on Wayland 212- Crash in some cases when pointer isn't presented upon startup on Wayland 213- IME not working on Wayland 214- Crash on startup on GNOME since its 3.37.90 version on Wayland 215- Touchpad scrolling scrolled less than it should on macOS/Wayland on scaled outputs 216- Incorrect modifiers at startup on X11 217- `Add` and `Subtract` keys are now named `NumpadAdd` and `NumpadSubtract` respectively 218- Feature checking when cross compiling between different operating systems 219- Crash when writing to the clipboard fails on Wayland 220- Crash with large negative `font.offset.x/y` 221- Visual bell getting stuck on the first frame 222- Zerowidth characters in the last column of the line 223 224## 0.5.0 225 226### Packaging 227 228- Minimum Rust version has been bumped to 1.41.0 229- Prebuilt Linux binaries have been removed 230- Added manpage, terminfo, and completions to macOS application bundle 231- On Linux/BSD the build will fail without Fontconfig installed, instead of building it from source 232- Minimum FreeType version has been bumped to 2.8 on Linux/BSD 233 234### Added 235 236- Default Command+N keybinding for SpawnNewInstance on macOS 237- Vi mode for regex search, copying text, and opening links 238- `CopySelection` action which copies into selection buffer on Linux/BSD 239- Option `cursor.thickness` to set terminal cursor thickness 240- Font fallback on Windows 241- Support for Fontconfig embolden and matrix options 242- Opt-out compilation flag `winpty` to disable WinPTY support 243- Scrolling during selection when mouse is at top/bottom of window 244- Expanding existing selections using single, double and triple click with the right mouse button 245- Support for `gopher` and `gemini` URLs 246- Unicode 13 support 247- Option to run command on bell which can be set in `bell.command` 248- Fallback to program specified in `$SHELL` variable on Linux/BSD if it is present 249- Ability to make selections while search is active 250 251### Changed 252 253- Block cursor is no longer inverted at the start/end of a selection 254- Preserve selection on non-LMB or mouse mode clicks 255- Wayland client side decorations are now based on config colorscheme 256- Low resolution window decoration icon on Windows 257- Mouse bindings for additional buttons need to be specified as a number not a string 258- Don't hide cursor on modifier press with `mouse.hide_when_typing` enabled 259- `Shift + Backspace` now sends `^?` instead of `^H` 260- Default color scheme is now `Tomorrow Night` with the bright colors of `Tomorrow Night Bright` 261- Set IUTF8 termios flag for improved UTF8 input support 262- Dragging files into terminal now adds a space after each path 263- Default binding replacement conditions 264- Adjusted selection clearing granularity to more accurately match content 265- To use the cell's text color for selection with a modified background, the `color.selection.text` 266 variable must now be set to `CellForeground` instead of omitting it 267- URLs are no longer highlighted without a clearly delimited scheme 268- Renamed config option `visual_bell` to `bell` 269- Moved config option `dynamic_title` to `window.dynamic_title` 270- When searching without vi mode, matches are only selected once search is cancelled 271 272### Fixed 273 274- Selection not cleared when switching between main and alt grid 275- Freeze when application is invisible on Wayland 276- Paste from some apps on Wayland 277- Slow startup with Nvidia binary drivers on some X11 systems 278- Display not scrolling when printing new lines while scrolled in history 279- Regression in font rendering on macOS 280- Scroll down escape (`CSI Ps T`) incorrectly pulling lines from history 281- Dim escape (`CSI 2 m`) support for truecolor text 282- Incorrectly deleted lines when increasing width with a prompt wrapped using spaces 283- Documentation for class in `--help` missing information on setting general class 284- Linewrap tracking when switching between primary and alternate screen buffer 285- Preservation of the alternate screen's saved cursor when swapping to primary screen and back 286- Reflow of cursor during resize 287- Cursor color escape ignored when its color is set to inverted in the config 288- Fontconfig's `autohint` and `hinting` options being ignored 289- Ingoring of default FreeType properties 290- Alacritty crashing at startup when the configured font does not exist 291- Font size rounding error 292- Opening URLs while search is active 293 294### Removed 295 296- Environment variable `RUST_LOG` for selecting the log level 297- Deprecated `window.start_maximized` config field 298- Deprecated `render_timer` config field 299- Deprecated `persistent_logging` config field 300 301## 0.4.3 302 303### Fixed 304 305- Tabstops not being reset with `reset` 306- Fallback to `LC_CTYPE=UTF-8` on macOS without valid system locale 307- Resize lag on launch under some X11 wms 308- Increased input latency due to vsync behavior on X11 309- Emoji colors blending with terminal background 310- Fix escapes prematurely terminated by terminators in unicode glyphs 311- Incorrect location when clicking inside an unfocused window on macOS 312- Startup mode `Maximized` on Windows 313- Crash when writing a fullwidth character in the last column with auto-wrap mode disabled 314- Crashing at startup on Windows 315 316## 0.4.2 317 318### Packaging 319 320- Minimum Rust version has been bumped to 1.37.0 321- Added Rust features `x11` and `wayland` to pick backends, with both enabled by default 322- Capitalized the Alacritty.desktop file 323 324### Added 325 326- Live config reload for `window.title` 327 328### Changed 329 330- Pressing additional modifiers for mouse bindings will no longer trigger them 331- Renamed `WINIT_HIDPI_FACTOR` environment variable to `WINIT_X11_SCALE_FACTOR` 332- Print an error instead of crashing, when startup working directory is invalid 333- Line selection will now expand across wrapped lines 334- The default value for `draw_bold_text_with_bright_colors` is now `false` 335- Mirror OSC query terminators instead of always using BEL 336- Increased Beam, Underline, and Hollow Block cursors' line widths 337- Dynamic title is not disabled anymore when `window.title` is set in config 338 339### Fixed 340 341- Incorrect default config path in `--help` on Windows and macOS 342- Semantic selection stopping at full-width glyphs 343- Full-width glyphs cut off in last column 344- Crash when starting on some X11 systems 345- Font size resetting when Alacritty is moved between screens 346- Limited payload length in clipboard escape (used for Tmux copy/paste) 347- Alacritty not ignoring keyboard events for changing WM focus on X11 348- Regression which added a UNC path prefix to the working directory on Windows 349- CLI parameters discarded when config is reload 350- Blurred icons in KDE task switcher (alacritty.ico is now high-res) 351- Consecutive builds failing on macOS due to preexisting `/Application` symlink 352- Block selection starting from first column after beginning leaves the scrollback 353- Incorrect selection status of the first cell when selection is off screen 354- Backwards bracket selection 355- Stack overflow when printing shader creation error 356- Underline position for bitmap fonts 357- Selection rotating outside of scrolling region 358- Throughput performance problems caused by excessive font metric queries 359- Unicode throughput performance on Linux/BSD 360- Resize of bitmap fonts 361- Crash when using bitmap font with `embeddedbitmap` set to `false` 362- Inconsistent fontconfig fallback 363- Handling of OpenType variable fonts 364- Expansion of block-selection on partially selected full-width glyphs 365- Minimize action only works with decorations on macOS 366- Window permanently vanishing after hiding on macOS 367- Handling of URLs with single quotes 368- Parser reset between DCS escapes 369- Parser stopping at unknown DEC private modes/SGR character attributes 370- Block selection appending duplicate newlines when last column is selected 371- Bitmap fonts being a bit smaller than they should be in some cases 372- Config reload creating alternate screen history instead of updating scrollback 373- Crash on Wayland compositors supporting `wl_seat` version 7+ 374- Message bar not hiding after fixing wrong color value in config 375- Tabstops cleared on resize 376- Tabstops not breaking across lines 377- Crash when parsing DCS escape with more than 16 parameters 378- Ignoring of slow touchpad scrolling 379- Selection invisible when starting above viewport and ending below it 380- Clipboard not working after TTY switch on Wayland 381- Crash when pasting non UTF-8 string advertised as UTF-8 string on Wayland 382- Incorrect modifiers tracking on X11 and macOS, leading to 'sticky' modifiers 383- Crash when starting on Windows with missing dark mode support 384- Variables `XCURSOR_THEME` and `XCURSOR_SIZE` ignored on Wayland 385- Low resolution mouse cursor and decorations on HiDPI Wayland outputs 386- Decorations visible when in fullscreen on Wayland 387- Window size not persisted correctly after fullscreening on macOS 388- Crash on startup with some locales on X11 389- Shrinking terminal height in alt screen deleting primary screen content 390 391### Removed 392 393- Config option `auto_scroll`, which is now always disabled 394- Config option `tabspaces`, which is now fixed at `8` 395 396## 0.4.1 397 398### Packaging 399 400- Added compatibility logo variants for environments which can't render the default SVG 401 402### Added 403 404- Terminal escape bindings with combined modifiers for Delete and Insert 405- /Applications symlink into OS X DMG for easier installation 406- Colored emojis on Linux/BSD 407- Value `randr` for `WINIT_HIDPI_FACTOR`, to ignore `Xft.dpi` and scale based on screen dimensions 408- `Minimize` key binding action, bound to `cmd + m` on macOS 409 410### Changed 411 412- On Windows, the ConPTY backend will now be used by default if available 413- The `enable_experimental_conpty_backend` config option has been replaced with `winpty_backend` 414 415### Fixed 416 417- URLs not truncated with non-matching single quote 418- Absolute file URLs (`file:///home`) not recognized because of leading `/` 419- Clipboard escape `OSC 52` not working with empty clipboard parameter 420- Direct escape input on Windows using alt 421- Incorrect window size on X11 when waking up from suspend 422- Width of Unicode 11/12 emojis 423- Minimize on windows causing layout issues 424- Performance bottleneck when clearing colored rows 425- Vague startup crash messages on Windows with WinPTY backend 426- Deadlock on Windows when closing Alacritty using the title bar "X" button (ConPTY backend) 427- Crash on `clear` when scrolled up in history 428- Entire screen getting underlined/stroke out when running `clear` 429- Slow startup on some Wayland compositors 430- Padding not consistently visible on macOS 431- Decorations ignoring Windows dark theme 432- Crash on macOS when starting maximized without decorations 433- Resize cursor not showing up on Wayland 434- Maximized windows spawning behind system panel on Gnome Wayland 435 436### Removed 437 438- Support for 8-bit C1 escape sequences 439 440## 0.4.0 441 442### Packaging 443 444- Minimum Rust version has been bumped to 1.36.0 445- Config is not generated anymore, please consider distributing the alacritty.yml as documentation 446- Removed Alacritty terminfo from .deb in favor of ncurses provided one 447 448### Added 449 450- Block selection mode when Control is held while starting a selection 451- Allow setting general window class on X11 using CLI or config (`window.class.general`) 452- Config option `window.gtk_theme_variant` to set GTK theme variant 453- Completions for `--class` and `-t` (short title) 454- Change the mouse cursor when hovering over the message bar and its close button 455- Support combined bold and italic text (with `font.bold_italic` to customize it) 456- Extra bindings for F13-F20 457- Terminal escape bindings with combined modifiers 458- Bindings for ScrollToTop and ScrollToBottom actions 459- `ReceiveChar` key binding action to insert the key's text character 460- New CLI flag `--hold` for keeping Alacritty opened after its child process exits 461- Escape sequence to save and restore window title from stack 462- Alternate scroll escape sequence (`CSI ? 1007 h` / `CSI ? 1007 l`) 463- Print name of launch command if Alacritty failed to execute it 464- Live reload font settings from config 465- UTF-8 mouse mode escape sequence (`CSI ? 1005 h` / `CSI ? 1005 l`) 466- Escape for reading clipboard (`OSC 52 ; <s / p / c> ; ? BEL`) 467- Set selection clipboard (`OSC 52 ; <s / p> ; <BASE64> BEL`) 468 469### Changed 470 471- On Windows, query DirectWrite for recommended anti-aliasing settings 472- Scroll lines out of the visible region instead of deleting them when clearing the screen 473 474### Fixed 475 476- GUI programs launched by Alacritty starting in the background on X11 477- Text Cursor position when scrolling 478- Performance issues while resizing Alacritty 479- First unfullscreen action ignored on window launched in fullscreen mode 480- The window is now filled with the background color before displaying 481- Cells sometimes not getting cleared correctly 482- X11 clipboard hanging when mime type is set 483- On macOS, Alacritty will now fallback to Menlo if a font specified in the config cannot be loaded 484- Debug ref tests are now written to disk regardless of shutdown method 485- Cursor color setting with escape sequence 486- Override default bindings with subset terminal mode match 487- On Linux, respect fontconfig's `embeddedbitmap` configuration option 488- Selecting trailing tab with semantic expansion 489- URL parser incorrectly handling Markdown URLs and angled brackets 490- Intermediate bytes of CSI sequences not checked 491- Wayland clipboard integration 492- Use text mouse cursor when mouse mode is temporarily disabled with shift 493- Wayland primary selection clipboard not storing text when selection is stopped outside of the window 494- Block URL highlight while a selection is active 495- Bindings for Alt + F1-F12 496- Discard scrolling region escape with bottom above top 497- Opacity always applying to cells with their background color matching the teriminal background 498- Allow semicolons when setting titles using an OSC 499- Background always opaque on X11 500- Skipping redraws on PTY update 501- Not redrawing while resizing on Windows/macOS 502- Decorations `none` launching an invisible window on Windows 503- Alacritty turning transparent when opening another window on macOS with chunkwm 504- Startup mode `Maximized` having no effect on Windows 505- Inserting Emojis using `Super+.` or compose sequences on Windows 506- Change mouse cursor depending on mode with Wayland 507- Hide mouse cursor when typing if the `mouse.hide_when_typing` option is set on Wayland 508- Glitches when DPI changes on Windows 509- Crash when resuming after suspension 510- Crash when trying to start on X11 with a Wayland compositor running 511- Crash with a virtual display connected on X11 512- Use `\` instead of `\\` as path separators on Windows for logging config file location 513- Underline/strikeout drawn above visual bell 514- Terminal going transparent during visual bell 515- Selection not being cleared when sending chars through a binding 516- Mouse protocols/encodings not being mutually exclusive within themselves 517- Escape `CSI Ps M` deleting lines above cursor when at the bottom of the viewport 518- Cell reset not clearing underline, strikeout and foreground color 519- Escape `CSI Ps c` honored with a wrong `Ps` 520- Ignore `ESC` escapes with invalid intermediates 521- Blank lines after each line when pasting from GTK apps on Wayland 522 523### Removed 524 525- Bindings for Super/Command + F1-F12 526- Automatic config generation 527- Deprecated `scrolling.faux_multiplier`, the alternate scroll escape can now be used to disable it 528 and `scrolling.multiplier` controls the number of scrolled lines 529 530## 0.3.3 531 532### Packaging 533 534- Add appstream metadata, located at /extra/linux/io.alacritty.Alacritty.xml 535- The xclip dependency has been removed 536- On macOS, Alacritty now requests NSSystemAdministrationUsageDescription to 537 avoid permission failures 538- Minimum Rust version has been bumped to 1.32.0 539 540### Added 541 542- Added ToggleFullscreen action 543- On macOS, there's a ToggleSimpleFullscreen action which allows switching to 544 fullscreen without occupying another space 545- A new window option `window.startup_mode` which controls how the window is created 546- `_NET_WM_ICON` property is set on X11 now, allowing for WMs to show icons in titlebars 547- Current Git commit hash to `alacritty --version` 548- Config options `window.title` and `window.class` 549- Config option `working_directory` 550- Config group `debug` with the options `debug.log_level`, `debug.print_events` 551 and `debug.ref_test` 552- Select until next matching bracket when double-clicking a bracket 553- Added foreground/background escape code request sequences 554- Escape sequences now support 1, 3, and 4 digit hex colors 555 556### Changed 557 558- On Windows, Alacritty will now use the native DirectWrite font API 559- The `start_maximized` window option is now `startup_mode: Maximized` 560- Cells with identical foreground and background will now show their text upon selection/inversion 561- Default Window padding to 0x0 562- Moved config option `render_timer` and `persistent_logging` to the `debug` group 563- When the cursor is in the selection, it will be inverted again, making it visible 564 565### Fixed 566 567- Double-width characters in URLs only being highlit on the left half 568- PTY size not getting updated when message bar is shown 569- Text Cursor disappearing 570- Incorrect positioning of zero-width characters over double-width characters 571- Mouse mode generating events when the cell has not changed 572- Selections not automatically expanding across double-width characters 573- On macOS, automatic graphics switching has been enabled again 574- Text getting recognized as URLs without slashes separating the scheme 575- URL parser dropping trailing slashes from valid URLs 576- UTF-8 BOM skipped when reading config file 577- Terminfo backspace escape sequence (`kbs`) 578 579### Removed 580 581- Deprecated `mouse.faux_scrollback_lines` config field 582- Deprecated `custom_cursor_colors` config field 583- Deprecated `hide_cursor_when_typing` config field 584- Deprecated `cursor_style` config field 585- Deprecated `unfocused_hollow_cursor` config field 586- Deprecated `dimensions` config field 587 588## Version 0.3.2 589 590### Fixed 591 592- Panic on startup when using Conpty on Windows 593 594## Version 0.3.1 595 596### Added 597 598- Added ScrollLineUp and ScrollLineDown actions for scrolling line by line 599- Native clipboard support on X11 and Wayland 600 601### Changed 602 603- Alacritty now has a fixed minimum supported Rust version of 1.31.0 604 605### Fixed 606 607- Reset scrolling region when the RIS escape sequence is received 608- Subprocess spawning on macos 609- Unnecessary resize at startup 610- Text getting blurry after live-reloading shaders with padding active 611- Resize events are not send to the shell anymore if dimensions haven't changed 612- Minor performance issues with underline and strikeout checks 613- Rare bug which would extend underline and strikeout beyond the end of line 614- Cursors not spanning two lines when over double-width characters 615- Incorrect cursor dimensions if the font offset isn't `0` 616 617## Version 0.3.0 618 619### Packaging 620 621- On Linux, the .desktop file now uses `Alacritty` as icon name, which can be 622 found at `extra/logo/alacritty-term.svg` 623 624### Added 625 626- MSI installer for Windows is now available 627- New default key bindings Alt+Home, Alt+End, Alt+PageUp and Alt+PageDown 628- Dynamic title support on Windows 629- Ability to specify starting position with the `--position` flag 630- New configuration field `window.position` allows specifying the starting position 631- Added the ability to change the selection color 632- Text will reflow instead of truncating when resizing Alacritty 633- Underline text and change cursor when hovering over URLs with required modifiers pressed 634 635### Changed 636 637- Clicking on non-alphabetical characters in front of URLs will no longer open them 638- Command keybindings on Windows will no longer open new cmd.exe console windows 639- On macOS, automatic graphics switching has been temporarily disabled due to a macos bug 640 641### Fixed 642 643- Fix panic which could occur when quitting Alacritty on Windows if using the Conpty backend 644- Automatic copying of selection to clipboard when mouse is released outside of Alacritty 645- Scrollback history live reload only working when shrinking lines 646- Crash when decreasing scrollback history in config while scrolled in history 647- Resetting the terminal while in the alt screen will no longer disable scrollback 648- Cursor jumping around when leaving alt screen while not in the alt screen 649- Text lingering around when resetting while scrolled up in the history 650- Terminfo support for extended capabilities 651- Allow mouse presses and beginning of mouse selection in padding 652- Windows: Conpty backend could close immediately on startup in certain situations 653- FreeBSD: SpawnNewInstance will now open new instances in the shell's current 654 working directory as long as linprocfs(5) is mounted on `/compat/linux/proc` 655- Fix lingering Alacritty window after child process has exited 656- Growing the terminal while scrolled up will no longer move the content down 657- Support for alternate keyboard layouts on macOS 658- Slow startup time on some X11 systems 659- The AltGr key no longer sends escapes (like Alt) 660- Fixes increase/decrease font-size keybindings on international keyboards 661- On Wayland, the `--title` flag will set the Window title now 662- Parsing issues with URLs starting in the first or ending in the last column 663- URLs stopping at double-width characters 664- Fix `start_maximized` option on X11 665- Error when parsing URLs ending with Unicode outside of the ascii range 666- On Windows, focusing a Window will no longer start a selection 667 668## Version 0.2.9 669 670### Changed 671 672- Accept fonts which are smaller in width or height than a single pixel 673 674### Fixed 675 676- Incorrect font spacing after moving Alacritty between displays 677 678## Version 0.2.8 679 680### Added 681 682- Window class on Wayland is set to `Alacritty` by default 683- Log file location is stored in the `ALACRITTY_LOG` environment variable 684- Close button has been added to the error/warning messages 685 686### Changed 687 688- Improve scrolling accuracy with devices sending fractional updates (like touchpads) 689- `scrolling.multiplier` now affects normal scrolling with touchpads 690- Error/Warning bar doesn't overwrite the terminal anymore 691- Full error/warning messages are displayed 692- Config error messages are automatically removed when the config is fixed 693- Scroll history on Shift+PgUp/PgDown when scrollback history is available 694 695### Fixed 696 697- Resolved off-by-one issue with erasing characters in the last column 698- Excessive polling every 100ms with `live_config_reload` enabled 699- Unicode characters at the beginning of URLs are now properly ignored 700- Remove error message when reloading an empty config 701- Allow disabling URL launching by setting the value of `mouse.url.launcher` to `None` 702- Corrected the `window.decorations` config documentation for macOS 703- Fix IME position on HiDPI displays 704- URLs not opening while terminal is scrolled 705- Reliably remove log file when Alacritty is closed and persistent logging is disabled 706- Remove selections when clearing the screen partially (scrolling horizontally in less) 707- Crash/Freeze when shrinking the font size too far 708- Documentation of the `--dimensions` flag have been updated to display the correct default 709 710### Removed 711 712- `clear` doesn't remove error/warning messages anymore 713 714## Version 0.2.7 715 716### Fixed 717 718- Crash when trying to start Alacritty on Windows 719 720## Version 0.2.6 721 722### Added 723 724- New `alt_send_esc` option for controlling if alt key should send escape sequences 725 726### Changed 727 728- All options in the configuration file are now optional 729 730### Fixed 731 732- Replaced `Command` with `Super` in the Linux and Windows config documentation 733- Prevent semantic and line selection from starting with the right or middle mouse button 734- Prevent Alacritty from crashing when started on a system without any free space 735- Resolve issue with high CPU usage after moving Alacritty between displays 736- Characters will no longer be deleted when using ncurses with the hard tab optimization 737- Crash on non-linux operating systems when using the `SpawnNewInstance` action 738 739### Removed 740 741- Windows and macOS configuration files (`alacritty.yml` is now platform independent) 742 743## Version 0.2.5 744 745### Added 746 747- New configuration field `visual_bell.color` allows changing the visual bell color 748- Crashes on Windows are now also reported with a popup in addition to stderr 749- Windows: New configuration field `enable_experimental_conpty_backend` which enables support 750 for the Pseudoconsole API (ConPTY) added in Windows 10 October 2018 (1809) update 751- New mouse and key action `SpawnNewInstance` for launching another instance of Alacritty 752 753### Changed 754 755- Log messages are now consistent in style, and some have been removed 756- Windows configuration location has been moved from %USERPROFILE%\alacritty.yml 757 to %APPDATA%\alacritty\alacritty.yml 758- Windows default shell is now PowerShell instead of cmd 759- URL schemes have been limited to http, https, mailto, news, file, git, ssh and ftp 760 761### Fixed 762 763- Fix color issue in ncurses programs by updating terminfo pairs from 0x10000 to 0x7FFF 764- Fix panic after quitting Alacritty on macOS 765- Tabs are no longer replaced by spaces when copying them to the clipboard 766- Alt modifier is no longer sent separately from the modified key 767- Various Windows issues, like color support and performance, through the new ConPTY 768- Fixed rendering non default mouse cursors in terminal mouse mode (linux) 769- Fix the `Copy` `mouse_bindings` action ([#1963](https://github.com/alacritty/alacritty/issues/1963)) 770- URLs are only launched when left-clicking 771- Removal of extra characters (like `,`) at the end of URLs has been improved 772- Single quotes (`'`) are removed from URLs when there is no matching opening quote 773- Precompiled binaries now work with macOS versions before 10.13 (10.11 and above) 774 775## Version 0.2.4 776 777### Added 778 779- Option for evenly spreading extra padding around the terminal (`window.dynamic_padding`) 780- Option for maximizing alacritty on start (`window.start_maximized`) 781- Display notice about errors and warnings inside Alacritty 782- Log all messages to both stderr and a log file in the system's temporary directory 783- New configuration option `persistent_logging` and CLI flag `--persistent-logging`, 784 for keeping the log file after closing Alacritty 785- `ClearLogNotice` action for removing the warning and error message 786- Terminal bells on macOS will now request the user's attention in the window 787- Alacritty now requests privacy permissions on macOS 788 789### Changed 790 791- Extra padding is not evenly spread around the terminal by default anymore 792- When the config file is empty, Alacritty now logs an info instead of an error message 793 794### Fixed 795 796- Fixed a bad type conversion which could cause underflow on a window resize 797- Alacritty now spawns a login shell on macOS, as with Terminal.app and iTerm2 798- Fixed zombie processes sticking around after launching URLs 799- Zero-width characters are now properly rendered without progressing the cursor 800 801## Version 0.2.3 802 803### Fixed 804 805- Mouse cursor alignment issues and truncated last line caused by incorrect padding calculations 806 807## Version 0.2.2 808 809### Added 810 811- Add support for Windows 812- Add terminfo capabilities advertising support for changing the window title 813- Allow using scancodes in the key_bindings section 814- When `mouse.url.launcher` is set, clicking on URLs will now open them with the specified program 815- New `mouse.url.modifiers` option to specify keyboard modifiers for opening URLs on click 816- Binaries for macOS, Windows and Debian-based systems are now published with GitHub releases 817- The keys F16-F24 have been added as options for key bindings 818- DEB file adds Alacritty as option to `update-alternatives --config x-terminal-emulator` 819 820### Changed 821 822- The `colors.cursor.text` and `colors.cursor.cursor` fields are optional now 823- Moved `cursor_style` to `cursor.style` 824- Moved `unfocused_hollow_cursor` to `cursor.unfocused_hollow` 825- Moved `hide_cursor_when_typing` to `mouse.hide_when_typing` 826- Mouse bindings now ignore additional modifiers 827- Extra padding is now spread evenly around the terminal grid 828- DEB file installs to `usr/bin` instead of `usr/local/bin` 829 830### Fixed 831 832- Fixed erroneous results when using the `indexed_colors` config option 833- Fixed rendering cursors other than rectangular with the RustType backend 834- Selection memory leak and glitches in the alternate screen buffer 835- Invalid default configuration on macOS and Linux 836- Middle mouse pasting if mouse mode is enabled 837- Selections now properly update as you scroll the scrollback buffer while selecting 838- NUL character at the end of window titles 839- DPI Scaling when moving windows across monitors 840- On macOS, issues with Command-[KEY] and Control-Tab keybindings have been fixed 841- Incorrect number of columns/lines when using the `window.dimensions` option 842- On Wayland, windows will no longer be spawned outside of the visible region 843- Resizing of windows without decorations 844- On Wayland, key repetition works again 845- On macOS, Alacritty will now use the integrated GPU again when available 846- On Linux, the `WINIT_HIDPI_FACTOR` environment variable can be set from the config now 847 848### Removed 849 850- The `custom_cursor_colors` config field was deleted, remove the `colors.cursor.*` options 851 to achieve the same behavior as setting it to `false` 852- The `scale_with_dpi` configuration value has been removed, on Linux the env 853 variable `WINIT_HIDPI_FACTOR=1` can be set instead to disable DPI scaling 854 855## Version 0.2.1 856 857### Added 858 859- Implement the `hidden` escape sequence (`echo -e "\e[8mTEST"`) 860- Add support for macOS systemwide dark mode 861- Set the environment variable `COLORTERM="truecolor"` to advertise 24-bit color support 862- On macOS, there are two new values for the config option `window.decorations`: 863 - `transparent` - This makes the title bar transparent and allows the 864 viewport to extend to the top of the window. 865 - `buttonless` - Similar to transparent but also removed the buttons. 866- Add support for changing the colors from 16 to 256 in the `indexed_colors` config section 867- Add `save_to_clipboard` configuration option for copying selected text to the system clipboard 868- New terminfo entry, `alacritty-direct`, that advertises 24-bit color support 869- Add support for CSI sequences Cursor Next Line (`\e[nE`) and Cursor Previous Line (`\e[nF`) 870 871### Changed 872 873- Inverse/Selection color is now modelled after XTerm/VTE instead of URxvt to improve consistency 874- First click on unfocused Alacritty windows is no longer ignored on platforms other than macOS 875- Reduce memory usage significantly by only initializing part of the scrollback buffer at startup 876- The `alacritty` terminfo entry no longer requires the `xterm` definition to be 877 present on the system 878- The default `TERM` value is no longer static; the `alacritty` entry is used if 879 available, otherwise the `xterm-256color` entry is used instead 880- The values `true` and `false` for the config option `window.decorations` have been replaced with 881 `full` and `none` 882 883### Fixed 884 885- Rendering now occurs without the terminal locked which improves performance 886- Clear screen properly before rendering of content to prevent various graphical glitches 887- Fix build failure on 32-bit systems 888- Windows started as unfocused now show the hollow cursor if the setting is enabled 889- Empty lines in selections are now properly copied to the clipboard 890- Selection start point lagging behind initial cursor position 891- Rendering of selections which start above the visible area and end below it 892- Bracketed paste mode now filters escape sequences beginning with \x1b 893 894### Removed 895 896- The terminfo entry `alacritty-256color`. It is replaced by the `alacritty` 897 entry (which also advertises 256 colors) 898 899## Version 0.2.0 900 901### Added 902 903- Add a scrollback history buffer (10_000 lines by default) 904- CHANGELOG has been added for documenting relevant user-facing changes 905- Add `ClearHistory` key binding action and the `Erase Saved Lines` control sequence 906- When growing the window height, Alacritty will now try to load additional lines out of the 907 scrollback history 908- Support the dim foreground color (`echo -e '\033[2mDimmed Text'`) 909- Add support for the LCD-V pixel mode (vertical screens) 910- Pressing enter on the numpad should now insert a newline 911- The mouse bindings now support keyboard modifiers (shift/ctrl/alt/super) 912- Add support for the bright foreground color 913- Support for setting foreground, background colors in one escape sequence 914 915### Changed 916 917- Multiple key/mouse bindings for a single key will now all be executed instead of picking one and 918 ignoring the rest 919- Improve text scrolling performance (affects applications like `yes`, not scrolling the history) 920 921### Fixed 922 923- Clear the visible region when the RIS escape sequence (`echo -ne '\033c'`) is received 924- Prevent logger from crashing Alacritty when stdout/stderr is not available 925- Fix a crash when sending the IL escape sequence with a large number of lines 926