| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
| |
As this is practically the same as deleting the file it should be
treated the same and ignored.
Moving a file from somewhere to the config file is not ignored and the config
will reload as normal.
|
| |
|
|
|
|
|
|
|
|
|
| |
This adds a new `escape_args` option to `tty::Options` on Windows, which
can be used to automatically escape all arguments passed to the shell.
While useful to automatically make most arguments work on Windows, there
are some scenarios where it is not possible for users to properly
specify arguments with this option enabled (e.g.: `cmd /c`). An option
should always be present to disable this option when used.
The implementation is based on the `Command` code in Rust's STD lib.
|
| | |
|
| |
|
| |
Co-authored-by: Christian Duerr <contact@christianduerr.com>
|
| | |
|
| |
|
|
|
| |
Also apply clippy changes while at it.
Closes #8002.
|
| |
|
|
| |
Previously opacity was not clamping during reading it from the config
or via IPC.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds a new `alacritty msg get-config` subcommand which can
retrieve the current config from any Alacritty window using the IPC
socket.
The command will always print the full configuration file in JSON,
without the ability to filter which values are returned, leaning on
tools like `jq` instead of adding this complexity to Alacritty.
Contrary to deserialization, this relies heavily on the default
serialization implementations to reduce the necessary changes. Key and
Mouse bindings are omitted entirely since their structure is very
complex and they tend to just bloat the message size without having an
obvious usecase.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes an issue where changes made to the bindings of a hint through
IPC were completely ignored, since the hint key bindings were only
generated on config load without regeneration on IPC config override.
While it would be possible to just filter out remove hint key bindings
based on their action and then repopulate them on IPC config reload,
this solution would be quite hacky.
To have a better distinction between traditional and hint key bindings,
the two have been entirely separated and hint bindings are just
converted to key bindings on demand. This allows easily replacing the
entire hint array without any post-processing, making it simpler to
maintain for future changes.
Closes #8568.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This patch adds Vi's semantic search and paragraph motion.
The semantic search uses either the selection or the semantic word under
the cursor and jumps to the next match in the desired direction.
Paragraph motion jumps to just above or below the current paragraph.
Closes #7961.
Co-authored-by: Fletcher Gornick <fletcher@gornick.dev>
|
| |
|
|
| |
The keys were not disambiguated, but they should be. Was just an
oversight.
|
| |
|
|
| |
This adds the `\` character to the list of characters which will
terminate matches in Alacritty's default hint for URL recognition.
|
| |
|
|
|
| |
This patch removes the `hold` option on `alacritty_terminal` in favor of
a `drain_on_exit` option, which will drain the PTY before shutdown. The
hold logic is instead handled in `alacritty`.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
| | |
|
| |
|
|
|
|
|
| |
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.
|
| |
|
| |
Co-authored-by: Christian Duerr <contact@christianduerr.com>
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
| |
This implements a coordinated shutdown of the config monitor by sending
an event to its thread and waiting for the thread to terminate.
|
| | |
|
| |
|
| |
Closes #7778.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| | |
|
| |
|
| |
Fixes #7665.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Originally kitty defined that functional keys, which are not encoded
by default, like `Pause` should be encoded with `CSI u`. However
the specification was clarified and now it says that terminal
may ignore that part. Given that Alacritty tries to follow xterm/urxvt
when it comes to bindings, CSI u bindings are not send for consistency
reasons.
This also brings back F13-F20 bindings used by Alacritty in 0.12.3, as
well as explicitly defines `NumpadEnter` like it was before.
Closes #7623.
|
| |
|
| |
Closes #7592.
|
| |
|
|
|
|
|
| |
Patch 5685ce8bf changed the allowed values of the `debug.renderer` enum,
prohibiting the usage of `_` in the `Gles2Pure` variant. This patch
updates the documentation to correct for that.
Co-authored-by: Kirill Chibisov <contact@kchibisov.com>
|
| |
|
|
| |
This should help with broken YAML configurations by throwing nulls
away, which are not representable in toml.
|
| |
|
| |
Closes #7511.
|
| |
|
|
|
|
|
| |
This fixes an issue with the default `SerdeReplace` implementation where
it would never recurse through options but always replace the entire
option with the new value.
Closes #7518.
|
| |
|
|
|
|
|
| |
The toml migration introduced a regression which stopped numbered key
binding's from working. This patch implements the required number type
to make things work again.
Fixes #7527.
|
| |
|
| |
Fixes #7438.
|
| | |
|
| |
|
|
|
|
|
|
| |
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.
|
| |
|
| |
Fixes #7413.
|
| | |
|
| |
|
| |
We have the same policy with Shift for numbers.
|
| |
|
|
| |
The default animation feels really choppy, but it's just how its
function looks.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This patch adds a new CLI parameter to the `create-window` subcommand,
matching the existing `--option` parameter when creating a new Alacritty
instance.
This parameter allows setting up the initial window configuration from
the CLI without having to call `alacritty msg config`, making sure that
all options are set appropriately right from the start.
Closes #6238.
|
| |
|
|
|
|
|
|
|
| |
This patch changes the way the `-o` config option works when specified
at startup to function the same way as the IPC mechanism.
While this should technically perform the exact same way, it should
hopefully make it a little easier to understand how CLI config
replacement works.
|
| |
|
|
|
| |
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.
|
| |
|
| |
Fixes #972.
|
| | |
|