Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
This commit adds support for inline IME handling. It also makes the
search bar use underline cursor instead of using '_' character.
Fixes #1613.
|
|
This commit swaps the order of `general` and `instance` arguments
and also sets `instance` to `general` when only one argument was
provided. This should make this option behave like in other terminals
on X11, since they set either both or general by default, but
not instance like Alacritty.
Fixes #6279.
|
|
|
|
This should prevent rendering on macOS and X11 to invisible
windows.
|
|
Fixes #6239.
Fixes #5975.
Fixes #5876.
Fixes #5767.
Fixes #4484.
Fixes #3139.
|
|
Co-authored-by: Christian Duerr <contact@christianduerr.com>
|
|
Unless the `shell` config is specified, launch the user's shell with:
```sh
login -flp $USER /bin/sh -c "exec -a -shell /path/to/shell"
```
On macOS, just running a shell prefixed by `-` is not sufficient to be
registered as a login session for things like `w` and `logname`.
However, using the `login` command changes the directory to `$HOME`
before running the program by default, which is not desired. The `-l`
flag disables this behavior, but also skips prepending `-` to the
executed program, so shells will not run as login shells. Instead we
just do this part ourselves with `exec -a`. The result is login shells
that run in the intended directory and are registered as tty sessions.
Fixes #3420.
|
|
Remove the `font.use_thin_strokes` config, which only did anything on
macOS and only prior to Big Sur. Instead, we will enable or disable
"font smoothing" on macOS based on the `AppleFontSmoothing` user
default.
These changes let users get the "thin strokes" behavior by setting
`AppleFontSmoothing` to 0 with:
```sh
$ defaults write -g AppleFontSmoothing -int 0
```
(Or replace `-g` with `org.alacritty` to apply this setting only to
Alacritty.app, rather than the whole system.)
Add a `removed` config attribute to show helpful warnings to users
who are using config options that don't do anything anymore, and apply
this attribute to `font.use_thin_strokes`.
Bump `crossfont` to 0.5.0 to pick up the new font smoothing behavior.
This release also includes a fix for a crash when trying to load a
disabled font.
Fixes #4616.
Fixes #6108.
|
|
The common naming is reverse DNS, and given that alacritty is using
alacritty.org it makes more sense to use org.alacritty instead of
old io.alacritty.
|
|
This commit adds support for hyperlink escape sequence
`OSC 8 ; params ; URI ST`. The configuration option responsible for
those is `hints.enabled.hyperlinks`.
Fixes #922.
|
|
|
|
This option should prevent extensive power usage due to cursor blinking
when there's no user activity being performed.
Fixes #5992.
|
|
Closes #6145.
|
|
When using `--config-file /dev/null` with `live_config_reload`, each
write to `/dev/null` was forcing alacritty to reload its configuration.
This commit makes alacritty ignore special files for live config reload.
Co-authored-by: Christian Duerr <contact@christianduerr.com>
|
|
This also applies all non-breaking semver updates.
|
|
|
|
This also fixes an issue of windows not being rendered while resizing.
Fixes #6069.
|
|
This patch resolves some mapping issues with the line drawing character
set where characters like linefeed were incorrectly mapped to their
proper character representation rather than the codepoint of their
identification glpyh.
Co-authored-by: Christian Duerr <contact@christianduerr.com>
|
|
Fixes #6060.
|
|
|
|
Builtin box drawing glyphs in range from '\u{2580}' to `\u{2587}`
could have gap due to missing rounding. Previously height was rounded,
however not the `y` offset. This commit fixes it.
|
|
To prevent the current selection clipboard from being overwritten right
before pasting, text is no longer copied solely because the user
scrolled the scrollback buffer.
The selection also isn't copied when a mouse button other than LMB/RMB
are released, since these are the only ones capable of modifying the
selection range.
This should prevent issues where the selection of the user gets
unexpectedly overwritten, especially in scenarios where the user is
currently in the process of pasting something into Alacritty.
Signed-off-by: Julian Orth <ju.orth@gmail.com>
|
|
This leads to issues on macOS, since if we store clipboard at the same
time it could error out. Also, on e.g. Wayland the clipboard store for
unfocused window won't work anyway.
|
|
The Vi cursor is used as the current match indicator, however when
it's blinking during search jumps the current match is invisible.
Fixes #5934.
|
|
This commit persists OpenGL context creation flags from previous window
build attempts saving time in multiwindow context.
It also creates window as srgb by default, since it's what Alacritty is
rendering in. For reference [1] and [2]. Moreover the fallback for 10
bit colors is also added.
[1] - https://github.com/alacritty/alacritty/issues/4939 and
[2] - https://github.com/alacritty/alacritty/issues/3756.
Fixes #4703.
|
|
This commit adds support for colored underline and refines the dynamic
extra storage. The extra storage now is using `Arc` making cloning it way
faster compared to `Box` approach which scales really well when it comes
to cloning in `Term::write_at_cursor`, since cloning `Arc` is constant
time.
Fixes #4142.
|
|
Fixes #5944.
|
|
This fixes a crash which occurs when the terminal is reset while
searching, due to the vi mode cursor being outside of the visible area.
This also fixes an issue where the search state reset would incorrectly
clamp the vi mode cursor to the grid, rather than the absolute viewport
position.
While this fix does resolve all crashes when searching while running
`cat /dev/urandom`, it does raise the question if manually clamping the
vi mode cursor in every location where it is modified is the right
choice.
A follow-up to provide a safer API which guarantees correct modification
of the vi mode cursor location is probably a good idea.
Fixes #5942.
|
|
Currently Alacritty only works on hardware which supports OpenGL 3.3 or
more, which can become problematic with older devices. This patch adds a
new GLES2 renderer, since it is much more widely supported, especially
on weaker hardware like phones or a Raspberry Pi.
While the GLES2 renderer is slower than the OpenGL 3.3+ version, it is
still significantly faster than software rendering. However because of
this performance difference it is only used when necessary and there
should be no difference for machines supporting OpenGL 3.3+.
The two renderers are largely independent and separated in the
`renderer/text/glsl3` and `renderer/text/gles2` modules. Separate
shaders are also required for text rendering. The rectangle rendering
for underlines and the visual bell works identically for both versions,
but does have some version-specific shader code.
Fixes #128.
Co-authored-by: Christian Duerr <contact@christianduerr.com>
|
|
|
|
|
|
If WAYLAND_DISPLAY contains a '/', we have to replace with with another
character before using WAYLAND_DISPLAY as a path component.
|
|
This finishes implementation of underline styles provided by
`CSI 4 : [1-5] m` escape sequence.
|
|
The alpha is expected to be premultiplied from the text shader, so
we should apply it to the background color.
|
|
Fixes #1628.
|
|
This adds a codesign step to our makefile build which should
automatically sign the application and resolve the issues on M1 macs
where Alacritty constantly requests permissions.
Since self-signing does still seem to fix this issue after sharing the
resulting `Alacritty.app` with other M1 macs, the binary produced by our
release build should also be fixed automatically.
Fixes #5840.
|
|
This allows compositors to only process damaged (that is, updated)
regions of our window buffer, which for larger window sizes (think 4k)
should significantly reduce compositing workload under compositors that
support/honor it, which is good for performance, battery life and lower
latency over remote connections like VNC.
On Wayland, clients are expected to always report correct damage, so
this makes us a good citizen there. It can also aid remote desktop
(waypipe, rdp, vnc, ...) and other types of screencopy by having damage
bubble up correctly.
Fixes #3186.
|
|
While using underline thickness could sound logical to draw other
lines most fonts don't make underlines thick compared to cell bounding
box if you increase font size. So instead we're using cell width to
scale builtin font nicely.
This commit also adjusts arcs drawing and alignment.
Fixes #5826.
Fixes #5821.
|
|
This commit takes into account `font.offset` and `font.glyph_offset`
when generating built-in font.
|
|
This commit adds the config `font.builtin_box_drawing` option to
control built-in font, which is enabled by default.
|
|
|
|
This fixes a bug where using OSC 104 without parameters but
with a trailling semicolon (e.g. '\e]104;\e\\') would not be handled.
Fixes #5542.
|
|
|
|
In 7398e9f a regression was introduced which causes Alacritty to crash
on startup since wayland has a keyboard repeat rate thread started
before our logger is initialized.
Since the latest version of time was rather inconvenient to use anyway
and there is no nice solution for this issue other than downgrading the
`time` version again, the time since startup is now logged instead of
the local time.
This should still provide all the relevant information, while getting
rid of an unnecessary dependency. While it would be possible to also
print the delta between log messages, this can be trivially computed so
it has been omitted to skip adding another `Mutex` to the `Logger`
struct.
|
|
This resolves an issue where the regex search could loop indefinitely
when the end point was defined in a location containing a fullwidth
character, thus skipping over the end before termination.
Fixes #5753.
|
|
This commit adds hand rolled drawing of unicode box drawing[1] and
block elements[2] from ranges U+2500 up to U+259f. While using system
font for such characters will look better most of the time, the
characters tend to overlap or not align, so providing builtin font is
the lesser evil here.
[1] - https://www.unicode.org/charts/PDF/U2500.pdf
[2] - https://www.unicode.org/charts/PDF/U2580.pdf
Fixes #5485.
|