aboutsummaryrefslogtreecommitdiff
path: root/CHANGELOG.md
Commit message (Collapse)AuthorAge
* Add backslash to invalid characters for URL regexKaylem Brown-Malone2025-01-29
| | | | This adds the `\` character to the list of characters which will terminate matches in Alacritty's default hint for URL recognition.
* Fix OpenGL reset changelog entryChristian Duerr2025-01-14
|
* Error when failed to create socket with --daemonKirill Chibisov2025-01-14
| | | The daemon without socket is not that useful.
* Try to recover from GPU resetsKirill Chibisov2025-01-11
| | | | | Use context robustness to get notified about GPU resets and try to recover from them by rebuilding the rendering pipeline.
* Fix cut off wide characters in preedit stringKirill Chibisov2025-01-10
| | | | | The wide char spacers must not be drawn, like we do for regular wide characters.
* Bump development version to 0.16.0-devKirill Chibisov2025-01-06
| | | | | This is only an update to the development version and does not represent a stable release.
* Fix changelog entries being in past releaseKirill Chibisov2025-01-05
|
* Pass activation token in alacritty msg create-windowKirill Chibisov2025-01-04
| | | | Fixes #8337.
* Fix report of Enter/Tab/Backspace in kitty keyboardKirill Chibisov2025-01-04
| | | | | The behavior changed and now it actually makes sense. Fix #8385.
* Don't switch semantic/line selection when control is pressedKirill Chibisov2024-12-29
| | | | Changing block selection to regular semantic one doesn't feel intuitive, thus don't switch to it when user has control pressed.
* Add CSI Ps I supportKirill Chibisov2024-12-28
| | | The implementation is the same as CSI Ps Z, but forward.
* Fix window options for initial daemon windowChristian Duerr2024-12-22
| | | | | | | | This fixes an issue with daemon mode where the first spawned window would not use the window options passed to the `create-window` subcommand, but would instead use the options passed during creation of the original daemon. Closes #8371.
* Bump winit to 0.30.6Kirill Chibisov2024-12-21
| | | Fixes #8268.
* Always explicitly emit `1` without modifiers in kitty encodingKirill Chibisov2024-12-20
| | | | While this doesn't change much with how parsers are implemented, it improves consistency with how key release is handled.
* Don't error on nonexistent TOML imports in migrateKirill Chibisov2024-11-28
| | | | | | | YAML import migration was already properly ignoring nonexistent imports, it was only missed for TOML ones. Fixes #8330.
* Fix recursion limit not working for toml migrateKirill Chibisov2024-11-28
|
* Add `window.level` config optionDavid Horner2024-11-23
|
* Fix vi motion with wide semantic escape charsChristian Duerr2024-11-22
| | | | | | | This patch fixes an issue where the semantic vi motion commands `SemanticRight` and `SemanticLeft` were not behaving as expected when a fullwidth character was used as a semantic character. Closes #8314.
* Fix racing condition in hint triggeringChristian Duerr2024-11-02
| | | | | | | | | | | This fixes an issue with hints where it was possible that the terminal content of highlighted hints changed between the highlighted hint update and the activation of the hint. This patch always validates the hint's text content against the hint itself to ensure that the content is still valid for the original hint which triggered the highlight. Closes #8277.
* Focus new windows on macOSChris2024-11-02
|
* Fix hint highlight invalidationChristian Duerr2024-10-29
| | | | | | | This fixes a couple issues with hint highlight invalidation, which would cause hints to lose their underline highlight despite the terminal itself not having changed since the highlight started. Closes #8270.
* Bump development version to 0.15.0-devChristian Duerr2024-10-18
| | | | This is only an update to the development version and does not represent a stable release.
* Revert "Add unicode 16 support"Christian Duerr2024-10-18
| | | This reverts commit 5dca7a85e7d8e98f8e770c17af8efb442c2277d0.
* Add headless modeChristian Duerr2024-10-15
| | | | | | | | This patch adds a daemon mode to Alacritty which allows starting the Alacritty process without spawning an initial window. While this does not provide any significant advantage over the existing behavior of always spawning a window, it does integrate nicer with some setups and is a pretty trivial addition.
* Add IME support to inline searchChristian Duerr2024-10-15
| | | | | | | | | | | This changes the behavior of inline search from only accepting direct key inputs, to also accepting IME and paste. The additional characters are still being discarded, matching the existing behavior. This also fixes an issue where inline search wouldn't work for characters requiring modifiers, since the modifier press was interpreted as the search target instead. Closes #8208.
* Implement multi-char cursor highlightKirill Chibisov2024-10-15
| | | | | | | | Use `end` of the cursor to draw a `HollowBlock` from `start` to `end`. When cursor covers only a single character, use `Beam` cursor instead of `HollowBlock`. Fixes #8238. Fixes #7849.
* Add unicode 16 supportChristian Duerr2024-10-10
| | | | | | | | This fixes issues in width calculation for symbols added in Unicode version 16. Since the upstream unicode-width crate has not been updated yet, this makes use of the temporary unicode-width-16 version to support Unicode 16 with Alacritty 0.14.0.
* Change ctrl+shift+u to ctrl+shift+oKirill Chibisov2024-10-10
| | | | | Avoid collisions with IMEs by using ctrl+shift+o. ctrl+shift+u is bound to open unicode input in a lot of IMEs by default meaning that users won't ever see the url hints UI.
* Fix highlight invalidation on grid scrollChristian Duerr2024-10-07
| | | | | | | | | | | | | | | This fixes an issue where hints highlighted by vi or mouse cursor would produce an underline on the incorrect line since the highlights only store the initial match boundaries without accounting for new content scrolling the terminal. To accurately invalidate the hint highlights, we use existing damage information of the current frame. The existing logic to damage hints for the next frame to account for removal has been changed, since the hints would otherwise be cleared immediately. Instead we now mark the terminal as fully damaged for the upcoming frame whenever the hints are cleared. Closes #7737.
* Remove startup notify variables only for shellKirill Chibisov2024-10-03
| | | | | | This will prevent issues when `setup_env` from `alacritty_terminal` will remove potentially useful variables for users of the library. Fixes #8202.
* Add migration support for TOML config changesChristian Duerr2024-10-02
| | | | | | | | | | | | | | This patch allows running `alacritty migrate` to automatically apply configuration changes made to the TOML format, like moving `ipc_socket` to `general.ipc_socket`. This should reduce the friction of moving around individual options significantly, while also persisting the format of the existing TOML file thanks to `toml_edit`. The YAML migration has been simplified significantly to only switch the format of the file from YAML to TOML. The new TOML features are used for everything else.
* Move root config fields to `[general]` sectionChristian Duerr2024-10-02
| | | | | | | | | | | Some users struggle with TOML, since root options must always be at the top of the file, since they're otherwise associated with the last table. To avoid misunderstandings, all root-level fields have been removed. A new `general` section was added to allow housing configuration options that do not fit into any more specific groups. Closes #7906.
* Fix app icon in alt+tab view on WindowsNeil Stewart2024-09-30
|
* Fix fullwidth semantic escape charactersChristian Duerr2024-09-22
| | | | | | | | | | Semantic escape characters occupying two two grid cells were always skipped over, making it impossible to have functional fullwidth characters as part of semantic escape characters. This patch fixes this by only skipping over fullwidth spacer cells, rather than skipping those cells entirely. Closes #8188.
* Ignore cursor color request with default colorsChristian Duerr2024-09-22
| | | | | | | | | | | | Currently when the cursor colors are requested for the default cursor color, Alacritty always responds with #000000. Since this is most likely incorrect, this response is misleading. Realistically there's very little reason why any application would need to know the color of the (often dynamically changing) default cursor. So instead of always reporting an incorrect black value, this patch just stops reporting values unless the cursor color was explicitly changed. Closes #8169.
* Restart config monitor on import changeChristian Duerr2024-07-21
| | | | | | | This patch checks the hash of the import paths on every config change and restarts the config monitor whenever the current monitor's hash diverges from the updated config's list of imports. Closes #7981.
* Bump MSRV to 1.74.0Kirill Chibisov2024-07-17
|
* Fix search bug with wrapline on first characterChristian Duerr2024-07-05
| | | | | | | | This fixes an issue where an inline search in the left direction would incorrectly assume that the first cell searched would not contain the `WRAPLINE` flag, causing the second search for the match end to terminate prematurely. Fixes #8060.
* Support relative imports in config fileJoshua Cao2024-07-02
| | | Co-authored-by: Christian Duerr <contact@christianduerr.com>
* Fix spelling errorsJosh Soref2024-05-24
|
* Fix Kitty protocol reporting shifted keycodesjadedpasta2024-05-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The [kitty keyboard protocol][1] explicitly requires that the *un-shifted* version of the pressed key is used to report the primary code point in `CSI code-point;modifiers u` sequences. > Note that the codepoint used is always the lower-case (or more > technically, un-shifted) version of the key. If the user presses, for > example, ctrl+shift+a the escape code would be CSI 97;modifiers u. It > must not be CSI 65; modifiers u. Alacritty's current behavior is to report the shifted version when shift is pressed, and the un-shifted version otherwise: ```console # Note that you'll have to kill Alacritty after running this to get # control back! $ echo -ne '\x1b[>1u'; cat ^[[97;5u^[[65;6u ``` The above was generated by pressing `CTRL`+`a` followed by `CTRL`+`SHIFT`+`a` after running the command. Here `97` and `65` are the codepoints for `a` and `A` respectively. This change makes Alacritty match the protocol (and Kitty's) behavior. With this change applied, `97` is reported for both `CTRL`+`a` and `CTRL`+`SHIFT`+`a`. [1]: https://sw.kovidgoyal.net/kitty/keyboard-protocol/#key-codes
* Fix error with missing importsChristian Duerr2024-05-23
| | | | | | | | | | | | | | This fixes a regression, likely introduced in 5d173f6df, which changed the severity of missing imports from `info` back to `error`. The cause of this issue was a more complicated error handling mechanism, which explicitly translated IO errors to a separate enum variant without accounting for it in all scenarios. While retrospectively this seems completely unnecessary to me, it did mean shorter error messages in case the main config file was not found. To preserve the benefits of both approaches, explicit handling for the `NotFound` IO error has been added when loading the main configuration file.
* Fix FD leak after closing child windowsChristian Duerr2024-05-22
| | | | | | | | This patch fixes an issue with signal handling where Alacritty would permanently create one signal handling FD for each alacritty window created by an instance. This FD was never released, causing a leak of the FD. Closes #7983.
* Fix mouse mode bindings with multiple actionsEBADBEEF2024-05-16
| | | | | | | | | | | | | | | | The following config was broken: ``` [mouse] bindings = [ { mouse = "Right", mods = "Shift", action = "Copy" }, { mouse = "Right", mods = "Shift", action = "ClearSelection" }, ] ``` Only the first action was applied. Change to allow more than one exact match in mouse mode with shift held, but keep the logic to not allow fallback search if any exact match was found. Regression was introduced in 1a143d11.
* Ignore shell RCs for macOS zsh wrapperNathan Lilienthal2024-05-15
| | | Closes #7886.
* Bump winit to 0.30.0Kirill Chibisov2024-05-04
|
* Fix dynamic title override for multiple windowsChristian Duerr2024-04-23
| | | | | | | | | | | This fixes an issue where Windows spawned after the initial one through IPC or bindings would not update their title due to the initial window having its title set through the CLI. Title changes are still inhibited for additional windows when they are spawned through `alacritty msg create-window` with the `--title` CLI option added. Closes #6836.
* Fix IME preview overlapping textKirill Chibisov2024-04-21
| | | | | | | | | Fix incorrect usage of the `flags` when drawing the preedit resulting in setting the `flags`, but not actually reading the value back. The logic to skip things was also used incorrectly, because the renderer does that already based on the `WIDE_CHAR` flag on the cell. Fixes: 67a433ceed (Skip whitespaces for wide chars in preedit)
* Fix crash when trying to open a new tab on macOSWilliam Viktorsson2024-04-20
| | | | | | This fixes an issue where Alacritty would crash when trying to open a new tab on macOS while having decorations disabled. Co-authored-by: Christian Duerr <contact@christianduerr.com>
* Fix window being focused by defaultKirill Chibisov2024-04-18
| | | | | | | | | Winit explicitly states that the window is not focused by default and the `Focused` event will deliver the state later on. Also start adding notable changes to alacritty_terminal in its own CHANGELOG. Closes #7866.