aboutsummaryrefslogtreecommitdiff
path: root/alacritty_terminal/src
Commit message (Collapse)AuthorAge
* Add alacritty extension script support.rahm2Josh Rahm2024-08-14
| | | | | | | | | This allows an escape code to invoke user-defined extensions found in /home/rahm/.local/bin/alacritty-ext.sh. The terminal passes to this script the escape-code arguments. This allows things like opening links in the browser even through an ssh connection.
* Fix spelling errorsJosh Soref2024-08-14
|
* Fix IO safety violation from consequent dropping `OwnedFd`Jakob Hellermann2024-08-14
| | | | This was not a _real_ violation and was _expected_, though for rust to not complain clone FD properly...
* Fix FD leak after closing child windowsChristian Duerr2024-08-14
| | | | | | | | 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.
* Ignore shell RCs for macOS zsh wrapperNathan Lilienthal2024-08-14
| | | Closes #7886.
* Add `from_file_descriptors()` to `tty::unix`Owen Law2024-08-14
|
* Fix window being focused by defaultKirill Chibisov2024-08-14
| | | | | | | | | 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.
* Allow setting terminal env vars via PTY optionsKirill Bulatov2024-08-14
| | | Closes #7778.
* Fix hint `Select` action for hyperlink escapeChristian Duerr2024-08-14
| | | | | | | | | | | | This fixes an issue where the `Select` action for hyperlink escape text would select the entire line, instead of selecting only the hyperlink itself. It also changes the way hyperlinks with the same ID are highlighted, removing the restriction of being on consecutive lines and instead highlighting all visible cells that correspond to the matching hyperlink. Closes #7766.
* Set PTY's pixel size on startupKirill Chibisov2024-08-14
| | | | | 117719b3 removed the extra call for TIOCSWINSZ, however the initial `openpty` call itself did not set the pixel size, which caused issues with some clients.
* Send exit code events on child process exitKirill Bulatov2024-08-14
| | | | Fixes #7753.
* Expose more process info on WindowsSmall White2024-08-14
|
* Fix log typoshuajin tong2024-08-14
|
* Fix feature = "cargo-clippy" deprecationDimitris Apostolou2024-08-14
|
* Fix regional scrolling leaking into historyChristian Duerr2024-02-14
| | | | | This fixes an issue where a scrolling region that does not start at the top of the screen would still rotate lines into history when scrolling the content "upwards".
* Fix row indexing with inclusive rangesAlexandru Placinta2024-02-11
|
* Remove extra TIOCSWINSZ ioctl on startupKirill Chibisov2024-02-08
| | | | The openpty call already performs it, thus no need to call it one more with the exact same size since it confuses some applications.
* Fix unnecessary explicit panic in PTY Conrad Irwin2024-02-02
| | | Closes #7680.
* Fix invalid bounds in selection range conversionMohammad AlSaleh2024-01-27
|
* Fix inline search expanding across newlinesChristian Duerr2024-01-14
| | | Closes #7587.
* Fix serde tests without default featuresChristian Duerr2024-01-06
| | | Authored-by: James McCoy <jamessan@jamessan.com>
* Passthrough potential errors for `EventLoopSender`Hyper2023-12-30
|
* Derive `Clone` for `EventLoopSender`Hyper2023-12-28
|
* Implement kitty's keyboard protocolKirill Chibisov2023-12-06
| | | | | | | | The protocol enables robust key reporting for the applications, so they could bind more keys and the user won't have collisions with the normal control keys. Links: https://sw.kovidgoyal.net/kitty/keyboard-protocol Fixes #6378.
* Fix DECRPM reportingKirill Chibisov2023-11-29
| | | | | The DECRQM uses `p` to query, but the reply uses `y`. Fixes #7397.
* Damage only terminal inside `alacritty_terminal`Kirill Chibisov2023-11-23
| | | | | | | | | | | | The damage tracking was including selection and vi_cursor which were rendering viewport related, however all the damage tracking inside the `alacritty_terminal` was _terminal viewport_ related, meaning that it should be affected by `display_offset`. Refactor the damage tracking so `alacritty_terminal` is only tracking actual terminal updates and properly applying display offset to them, while `alacritty` pulls this damage into its own UI damage state. Fixes #7111.
* Add support for DECRPM/DECRQMKirill Chibisov2023-11-23
|
* Update VTE to 0.13.0Kirill Chibisov2023-11-23
|
* Remove `alacritty_config` from alacritty_terminalKirill Chibisov2023-11-10
| | | | | There's no need to force alacritty's user configuration on other users of the crate, thus provide the options actually used by alacritty_terminal itself.
* Fix clippy warningsPavel Roskin2023-10-29
|
* Fix typosPavel Roskin2023-10-25
|
* Add inline vi mode searchChristian Duerr2023-10-20
| | | | | | This patch adds inline search to vi mode using `f`/`F` and `t`/`T` as default bindings. The behavior matches that of vim. Fixes #7203.
* Use openpty-rustix instead of nixKirill Chibisov2023-10-11
| | | | | | Follow upstream libraries and use rustix to reduce the amount of dependencies in the future. Co-authored-by: Christian Duerr <contact@christianduerr.com>
* Fix regex patterns allowing for empty stringsChristian Duerr2023-10-09
| | | | | | | | | | | This patch changes the mode we search for patterns which allow an empty string, by anchoring all searches. As a result we will match the longest possible match when multiple patterns are present (like `;*|rust`), instead of using the leftmost pattern only. This is only possible with empty matches since our parser is reset on every byte anyway, so anchoring the search makes no difference. Fixes #7276.
* Fix regex matches ending on multilineChristian Duerr2023-10-08
| | | | | | | | | | This fixes an issue where the reverse search for the regex start would truncate a character when ending on a newline, since it was omitting the EOI check in that case. This also fixes a separate issue which caused regexes which capture empty strings (e.g.: `.*`) to always report a match. This is a regression introduced in 73276b6.
* Fix PTY being closed on creationKirill Chibisov2023-10-08
| | | | | The PTY got closed because `OwnedFd` automatically closed it. Fixes: 59c63d37 (Update dependencies)
* Update dependenciesChristian Duerr2023-10-08
| | | | This patch applies all breaking and non-breaking dependency updates and bumps MSRV to 1.70.0.
* Port from mio to pollingJohn Nunley2023-10-07
| | | | | | | | | This patch replaces the mio crate with the polling. Now that smol-rs/polling#96 has been merged, we should be at full feature parity with mio v0.6 now. Fixes #7104. Fixes #6486.
* Fix regex memory usageChristian Duerr2023-09-17
| | | | | | | | | | | | | | | | | | This fixes an issue where regexes with a large number of possible states would consume excessive memory, since the entire DFA was compiled ahead of time. To solve this, the DFA is now built at runtime using `regex-automata`'s hybrid DFA. There are however still some checks performed ahead of time, causing errors with obscenely large regexes (`[0-9A-Za-z]{999999999}`), which shouldn't cause any issues. A regex which is large, but not large enough to fail the NFA construction (like `[0-9A-Za-z]{999999}`) will cause a long search of the entire grid, but will complete and show the match. Closes #7097.
* Fix crash with anchored searchesChristian Duerr2023-08-31
| | | | While this does **not** enable the use of anchors (`^`) in user regexes, it does prevent Alacritty from crashing when attempting to do so.
* Update regex-automata to v0.3.6Christian Duerr2023-08-27
| | | This seems like a sensible first step before looking into #7097.
* Add `terminal` config section to control OSCs Kirill Chibisov2023-07-22
| | | | | | | | | | | | | | Some environments demand certain OSC sequences to be disabled or some escape sequence could require handling which is out of scope of alacritty, but could be done by external script (OSC 777). Added section for now just handles the `OSC 52` sequence and changes its default to be `OnlyCopy`, which is handy for remote copy, but `Paste` is redundant because normal `Paste` hotkey could be used as well. Fixes #3386. Co-authored-by: Christian Duerr <contact@christianduerr.com>
* Remove unnecessary mutable referencesPavel Roskin2023-07-18
|
* Mention all the actions in the man pageKirill Chibisov2023-07-16
| | | | | | | | | | A lot of actions were left without a notice, so the only way to figure out some of them was to browse source code. An example of such actions were `Maximize` and `Minimize`, since we don't have a binding for them, so they were left even in alacritty-bindings(5). Explicitly list all the bindings we have. The search bindings were also not accurately restricted, since we allow them to be executed inside regardless of mode.
* Unset `XDG_ACTIVATION_TOKEN` in alacritty_terminalKirill Chibisov2023-07-13
| | | This variable is what being used for Wayland's activation stuff.
* Update wix on the release CIKirill Chibisov2023-06-26
| | | Fixes #6939.
* Add support for loading conpty.dllPavel Roskin2023-06-19
| | | | Co-Authored-By: @fredizzimo Co-Authored-By: @grueslayer
* Fix the crash when shrinking scrolled terminalKirill Chibisov2023-06-17
| | | | | | | display_offset was adjusted unconditionally, thus it could go beyound the history limits, so clamp it to history like we do in grow_colums. Fixes #6862.
* Add errors for deserializing with unknown fieldsChristian Duerr2023-06-17
| | | | | | | | | Currently there are still some places where `Deserialize` is used rather than `ConfigDeserialize`, which means that the built-in warning for unused fields is not emitted automatically. To ensure users don't have invalid configurations, the `#[serde(deny_unknown_fields)]` annotation has been added to these structs, making it a hard error when an unknown field is present.
* Fix `alacritty msg config` toml replacementChristian Duerr2023-06-15
| | | | | | | | | | This fixes a regression introduced in bd49067 which broke the override of configuration file variables using `alacritty msg config`. To fix this the `replace` functionality was rewritten to behave more like the `serde_utils::merge` where entire values are inserted into the existing structure rather than separating the keys from the values. Fixes: bd49067 (Switch to TOML configuration format)