1
0
Fork 0
mirror of https://github.com/alacritty/alacritty.git synced 2025-11-06 22:44:18 -05:00
Commit graph

2461 commits

Author SHA1 Message Date
Kirill Chibisov
c2b75f293c
Try both robust and non-robust configs
It was suggest to try building both robust and non-robust as a fallback
due to 1.5 not mandating robustness, and also not mandating extension,
so the robustness can be supported, but without the extension present.

This reverts commit 7b33cbcbc2.
2025-11-05 09:50:43 +09:00
Laurence Tratt
fff942ac54
Add foreground CWD implementation for OpenBSD 2025-11-02 02:18:09 +00:00
Christian Duerr
1399545f48
Ignore touch gestures for enabling IME
Previously whenever the user would use touch gestures to make selections
or scroll the terminal, IME would automatically be enabled due to the
focus change and reduce the terminal height. This isn't ideal when the
goal is just scanning through the terminal history without making any
input.

This patch keeps track of pointer and touch focus and only enables IME
when either the pointer is within the window or a tap touch sequence was
performed to give the window 'touch focus'.

The initial touch tap sequence used to enable IME is still forwarded to
the terminal as a simulated click event, since otherwise touch devices
without virtual keyboard would be forced into a confusing additional tap
to make it work. This means that virtual keyboard users will not be able
to open the virtual keyboard without creating a click event, which
should still be preferable to the status quo.
2025-10-26 05:26:27 +00:00
Christian Duerr
52deae45bc
Remove undefined logo SVG gradient
This removes a gradient that apparently doesn't exist, which causes
issues with some SVG rasterizers.

Closes #8706.
2025-10-20 05:54:11 +00:00
Christian Duerr
7b33cbcbc2
Fix OpenGL robustness crash
This disables the OpenGL context's robustness feature since some GPUs
that advertise robustness support do not support sufficient capabilities
for our implementation.

Closes #8713.
2025-10-20 14:27:07 +09:00
Christian Duerr
08882d521d
Fix changelog entry for 0.16.0 release 2025-10-18 03:21:50 +00:00
Lulu
a513d13779
Ignore when config file is moved
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.
2025-10-16 06:37:33 +00:00
Christian Duerr
48e19ec3cb
Bump dependencies
This performs all non-breaking dependency updates, which includes
unicode-width 0.2.2 for Unicode 17 support.
2025-10-08 21:05:01 +09:00
Andy
fa36b3abb1
Disable NSAutoFillHeuristicController on macOS 2025-10-04 18:43:53 +00:00
Kirill Chibisov
a2334ff494
Bump winit to 0.30.12
That may still be needed for macOS 26 to not blow up.
2025-09-12 09:23:58 +09:00
skewb1k
97fde106c0
Fix hint highlighting when hovering with hidden mouse
When the mouse cursor was hidden with `hide_when_typing` enabled, hints
could still be highlighted under the hidden cursor. This typically
occurred when a hint moved underneath the stationary, hidden cursor.

This fix ensures hints are not highlighted by the mouse cursor while
it's hidden.
2025-09-01 17:11:21 +00:00
Christian Duerr
8e0327b3fb
Bump development version to 0.17.0-dev
This is only an update to the development version and does not represent
a stable release.
2025-08-30 04:37:53 +00:00
Pavel Roskin
985def87c7
Fix maximized startup with tabs on macOS
Closes #8664.
2025-08-21 20:59:18 +00:00
Lukas Fink
7201a6ae06
Add cooldown to bell command execution
Closes #8655.
2025-08-17 12:13:34 +00:00
feeiyu
84377a45a8
Add alacritty_terminal option to escape pty args
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.
2025-08-02 16:39:00 +00:00
Znarf
f07622e908
Improve builtin font ellipse rendering 2025-07-31 16:03:31 +00:00
Christian Duerr
9f8fed7c9e
Fix DECOM cursor motion
This fixes a missing `GOTO 0,0` when entering the terminal origin mode.

Closes #8636.
2025-07-25 08:57:22 +09:00
Christian Duerr
376cdb3700
Update to toml 0.9 2025-07-13 18:53:35 +00:00
Christian Duerr
bb02cb13f1
Migrate to 2024 edition 2025-07-13 06:15:02 +00:00
tidely
b0304431c4
Add size_hint to GridIterator
Co-authored-by: Christian Duerr <contact@christianduerr.com>
2025-07-13 05:27:34 +00:00
mBornand
f440cd4d6d
Add global config fallback
Co-authored-by: Christian Duerr <contact@christianduerr.com>
2025-07-07 21:44:55 +00:00
prime-run
fad5360bf0
Add yank to EOL vi mode binding 2025-07-07 19:37:09 +00:00
Christian Duerr
5168dada10
Add multi-sequence touch zoom support
This changes the way the touch zoom works by switching into a separate
mode when one of the touch slots is removed, allowing continuous zoom as
long as at least one slot is active.
2025-07-04 02:05:01 +00:00
Kirill Chibisov
2d79edab16
Remove cstr! macro in favor of literal notation
Also apply clippy changes while at it.

Closes #8002.
2025-07-01 23:52:08 +09:00
Kirill Chibisov
3ea13aeadc
Fix crash when AppleFontSmoothing is not present 2025-06-19 16:09:47 +09:00
Kirill Chibisov
80d87ed5db
Apply clamp for opacity
Previously opacity was not clamping during reading it from the config
or via IPC.
2025-05-31 10:29:24 +09:00
Kirill Chibisov
4ad5ba3630
Update alacritty-msg(1) for msg get-config entry
Follow up to a63c770be.
2025-05-30 22:40:19 +09:00
Christian Duerr
a63c770bef
Add IPC config retrieval subcommand
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.
2025-05-29 18:55:34 +00:00
Kirill Chibisov
9eb68039dc Bump all dependencies 2025-05-28 14:16:36 +09:00
Kirill Chibisov
ee48fad2cf Fix clippy warnings 2025-05-28 14:16:36 +09:00
Kirill Chibisov
1fb1fd225e Bump MSRV to 1.81.0
Also use workspace to specify that.
2025-05-28 14:16:36 +09:00
Christian Duerr
00a516abc7
Fix search for fullwidth chars in the last column
This fixes an issue for fullwidth characters where the `WRAPLINE` flag
would be checked for the cell containing the wide character, ignoring
the spacer after it.

To work around this, the wrapline character is now always checked based
on the cell *after* fullwidth expansion, instead of the original cell.

Closes #8586.
2025-05-26 17:58:59 +09:00
Christian Duerr
b02e4fce05
Add changelog entry for 71feeee 2025-05-21 15:34:10 +09:00
Christian Duerr
4db89382f6
Fix hint binding IPC overrides
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.
2025-05-21 00:51:48 +00:00
Christian Duerr
71feeeeccc
Add * # { } vi motions
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>
2025-05-20 23:53:03 +00:00
Derek V. Schmalenberger
2bc1bb49e9
Add missing build dependency to zypper docs 2025-05-20 23:38:45 +00:00
Rafael Ortega Estévez
cd2be6663e
Remove libfreetype6-dev from Debian build deps
Closes #8115.
2025-05-19 05:39:38 +00:00
Kirill Chibisov
def47a5dd5
Fix disambiguation for Enter/Tab/Backspace
The keys were not disambiguated, but they should be. Was just an
oversight.
2025-05-03 07:05:22 +09:00
Nathan Lilienthal
a0c4dfe962
Update yanked 0.5.13 crossbeam-channel version 2025-04-11 02:08:21 +00:00
Travis Harmon
d716fe4e83
Apply glyph offset to strikeout position 2025-04-08 00:07:29 +00:00
Kirill Chibisov
15f1278d69
Clamp offscreen damage
This could happen if the terminal is very small and cell is not entirely
visible, thus having bounds outside the terminal width/height.
2025-03-23 19:44:43 +03:00
frazou
5a68e98db0
Fix selection clearing in kitty keyboard mode
When Kitty's keyboard protocol is used and Report all keys as escape
codes flag (8) is enabled, modifier key escape codes trigger the usual
"write something to the terminal" code path, which clears the selection
/ scrolls down etc.

This behavior is mostly unexpected, and makes some actions more painful
to perform (for instance copying text becomes harder: hitting CTRL to
begin the CTRL+SHIFT+C sequence clears the selection).

This patch clears the selection only if the key event is not a modifier
key, which aligns with Alacritty's usual behavior.

Fixes #8509.
2025-03-15 22:14:35 +00:00
Mikayla Maki
03c2907b44
Hide macOS login message with ~/.hushlogin present
On macOS every shell is a login shell, which will always print
information about the last login when the terminal is started. The macOS
standard for disabling this is to place a `.hushlogin` file in the
user's home directory, but this did not work with Alacritty since
`login` only looks for this file in the current directory.

To ensure the login message is properly suppressed, Alacritty's default
shell will now check for the presence of the `.hushlogin` file in the
user's home directory and append `-q` to the `login` arguments if it is
present, which will behave as if a `.hushlogin` file was found by
`login`.

Co-authored-by: Thomas <thomas@zed.dev>
Co-authored-by: Anthony <anthony@zed.dev>
2025-02-20 02:12:29 +00:00
Christian Duerr
be911fead8
Add latest release to changelog
This is only an update to the development version and does not represent
a stable release.
2025-02-17 14:27:54 +00:00
Kirill Chibisov
6fefa78eaf
Don't report unshifted key when Shift was not pressed 2025-02-09 08:39:01 +03:00
Tycho Andersen
3c7a323ef5
Dont fail exec() on deleted directories
Use the `std::env::set_current_dir` from the `pre_exec` and ignore
error, since not changing working directory is a side effect which
shouldn't break spawning a program or block window creation.

Signed-off-by: Tycho Andersen <tycho@tycho.pizza>
Co-authored-by: Kirill Chibisov <contact@kchibisov.com>
Co-authored-by: Christian Duerr <contact@christianduerr.com>
2025-02-08 11:01:56 +03:00
Kirill Chibisov
441c9c6eb3
Bump winit to 0.30.9
Fixes #7916.
2025-02-06 20:37:40 +03:00
Kirill Chibisov
463a867984
Bump vte to 0.15.0 2025-02-04 18:23:07 +03:00
Kaylem Brown-Malone
5b189bca68
Add backslash to invalid characters for URL regex
This adds the `\` character to the list of characters which will
terminate matches in Alacritty's default hint for URL recognition.
2025-01-29 01:29:22 +00:00
Andrew Borg (Kashin)
5e78d20c70
Add option to drain PTY on shutdown
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`.
2025-01-16 15:04:21 +00:00