mirror of
https://github.com/alacritty/alacritty.git
synced 2024-11-25 14:05:41 -05:00
497 lines
22 KiB
Markdown
497 lines
22 KiB
Markdown
# Changelog
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
## 0.4.0-rc1
|
|
|
|
### Packaging
|
|
|
|
- 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
|
|
|
|
### Added
|
|
|
|
- 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`)
|
|
|
|
### Changed
|
|
|
|
- On Windows, query DirectWrite for recommended anti-aliasing settings
|
|
- Scroll lines out of the visible region instead of deleting them when clearing the screen
|
|
|
|
### Fixed
|
|
|
|
- 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 teriminal 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 wrong `Ps`
|
|
- Ignore `ESC` escapes with invalid intermediates
|
|
|
|
### Removed
|
|
|
|
- Bindings for Super/Command + F1-F12
|
|
- Automatic config generation
|
|
- Deprecated `scrolling.faux_multiplier`, the alternate scroll escape can now be used to disable it
|
|
and `scrolling.multiplier` controls the number of scrolled lines
|
|
|
|
## 0.3.3
|
|
|
|
### Packaging
|
|
|
|
- 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
|
|
|
|
- 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` and `window.class`
|
|
- Config option `working_directory`
|
|
- Config group `debug` with the options `debug.log_level`, `debug.print_events`
|
|
and `debug.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
|
|
|
|
### Changed
|
|
|
|
- On Windows, Alacritty will now use the native DirectWrite font API
|
|
- The `start_maximized` window option is now `startup_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` and `persistent_logging` to the `debug` group
|
|
- When the cursor is in the selection, it will be inverted again, making it visible
|
|
|
|
### Fixed
|
|
|
|
- Double-width characters in URLs only being highlit 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`)
|
|
|
|
### Removed
|
|
|
|
- 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
|
|
|
|
## Version 0.3.2
|
|
|
|
### Fixed
|
|
|
|
- Panic on startup when using Conpty on Windows
|
|
|
|
## Version 0.3.1
|
|
|
|
### Added
|
|
|
|
- Added ScrollLineUp and ScrollLineDown actions for scrolling line by line
|
|
- Native clipboard support on X11 and Wayland
|
|
|
|
### Changed
|
|
|
|
- Alacritty now has a fixed minimum supported Rust version of 1.31.0
|
|
|
|
### Fixed
|
|
|
|
- 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`
|
|
|
|
## Version 0.3.0
|
|
|
|
### Packaging
|
|
|
|
- On Linux, the .desktop file now uses `Alacritty` as icon name, which can be
|
|
found at `extra/logo/alacritty-term.svg`
|
|
|
|
### Added
|
|
|
|
- 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
|
|
|
|
### Changed
|
|
|
|
- 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
|
|
|
|
### Fixed
|
|
|
|
- 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
|
|
|
|
## Version 0.2.9
|
|
|
|
### Changed
|
|
|
|
- Accept fonts which are smaller in width or height than a single pixel
|
|
|
|
### Fixed
|
|
|
|
- Incorrect font spacing after moving Alacritty between displays
|
|
|
|
## Version 0.2.8
|
|
|
|
### Added
|
|
|
|
- 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
|
|
|
|
### Changed
|
|
|
|
- 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
|
|
|
|
### Fixed
|
|
|
|
- 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` to `None`
|
|
- 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
|
|
|
|
### Removed
|
|
|
|
- `clear` doesn't remove error/warning messages anymore
|
|
|
|
## Version 0.2.7
|
|
|
|
### Fixed
|
|
|
|
- Crash when trying to start Alacritty on Windows
|
|
|
|
## Version 0.2.6
|
|
|
|
### Added
|
|
|
|
- New `alt_send_esc` option for controlling if alt key should send escape sequences
|
|
|
|
### Changed
|
|
|
|
- All options in the configuration file are now optional
|
|
|
|
### Removed
|
|
|
|
- Windows and macOS configuration files (`alacritty.yml` is now platform independent)
|
|
|
|
### Fixed
|
|
|
|
- Replaced `Command` with `Super` 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
|
|
|
|
## Version 0.2.5
|
|
|
|
### Added
|
|
|
|
- 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
|
|
|
|
### Changed
|
|
|
|
- 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
|
|
|
|
### Fixed
|
|
|
|
- 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](https://github.com/jwilm/alacritty/issues/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)
|
|
|
|
## Version 0.2.4
|
|
|
|
### Added
|
|
|
|
- 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
|
|
|
|
### Changed
|
|
|
|
- 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
|
|
|
|
- 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
|
|
|
|
## Version 0.2.3
|
|
|
|
### Fixed
|
|
|
|
- Mouse cursor alignment issues and truncated last line caused by incorrect padding calculations
|
|
|
|
## Version 0.2.2
|
|
|
|
### Added
|
|
|
|
- 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`
|
|
|
|
### Changed
|
|
|
|
- The `colors.cursor.text` and `colors.cursor.cursor` fields are optional now
|
|
- Moved `cursor_style` to `cursor.style`
|
|
- Moved `unfocused_hollow_cursor` to `cursor.unfocused_hollow`
|
|
- Moved `hide_cursor_when_typing` to `mouse.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 of `usr/local/bin`
|
|
|
|
### Removed
|
|
|
|
- The `custom_cursor_colors` config field was deleted, remove the `colors.cursor.*` options
|
|
to achieve the same behavior as setting it to `false`
|
|
- The `scale_with_dpi` configuration value has been removed, on Linux the env
|
|
variable `WINIT_HIDPI_FACTOR=1` can be set instead to disable DPI scaling
|
|
|
|
### Fixed
|
|
|
|
- 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
|
|
|
|
## Version 0.2.1
|
|
|
|
### Added
|
|
|
|
- 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`)
|
|
|
|
### Changed
|
|
|
|
- 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 the `xterm` definition to be
|
|
present on the system
|
|
- The default `TERM` value is no longer static; the `alacritty` entry is used if
|
|
available, otherwise the `xterm-256color` entry is used instead
|
|
|
|
### Removed
|
|
|
|
- The terminfo entry `alacritty-256color`. It is replaced by the `alacritty`
|
|
entry (which also advertises 256 colors)
|
|
|
|
### Fixed
|
|
|
|
- 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
|
|
|
|
### Deprecated
|
|
|
|
- The config option `window.decorations` should now use `full` or `none` instead
|
|
of `true` or `false`, respectively.
|
|
|
|
### Security
|
|
|
|
- Bracketed paste mode now filters escape sequences beginning with \x1b
|
|
|
|
## Version 0.2.0
|
|
|
|
### Added
|
|
|
|
- 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 the `Erase 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
|
|
|
|
### Changed
|
|
|
|
- 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)
|
|
|
|
### Fixed
|
|
|
|
- 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
|