Commit Graph

1335 Commits

Author SHA1 Message Date
Kirill Chibisov d76bb0c697 Update dependencies 2019-10-23 21:17:09 +02:00
Kohki Miki 9e0b9d5de1 Fix unused import warning on macOS/Windows 2019-10-22 17:42:07 +02:00
cyclopsian 8a26341457 Fix XEmbed compilation error on 32-bit platforms 2019-10-20 14:30:59 +02:00
Dustin a75e949344 Fix window title not filled by default
In the config, if `window` is undefined, the derived `Default` for the
String `title` is used, which is an empty String. This was unintended,
and causes issues in gnome-shell (e.g. in the alt-tab dialog) when the
window title is an empty string.

This commit adds a manually implemented default for the `WindowConfig`,
it's the same as the derived `Default`, except for the `title`, which
will now always be "Alacritty" as originally intended.
2019-10-17 21:24:21 +02:00
Ckat f1f51d3c02 Remove terminfo from deb package
Fixes #2685.
2019-10-16 21:31:12 +02:00
Kirill Chibisov 7b814c3be7 Bump winit version
Fixes cursor icon managing with `hide_when_typing: true` on Wayland.
2019-10-16 21:20:38 +02:00
Christian Duerr 28cf90d130
Revert "Disable depth and stencil buffers"
This reverts commit 3475e44987.
2019-10-16 02:53:36 +02:00
Christian Duerr 1538f09e0c
Print launch command name on failure 2019-10-15 22:53:25 +02:00
Aleksey Kuznetsov 49380bffd2 Add support for alternate scroll escape
Fixes #2727.
2019-10-15 21:13:58 +02:00
Kirill Chibisov 124e98e94e Fix logged config path separators on Windows
It was discovered that we were logging path with `\\` instead of `\` as
separators on Windows due to use of Debug formatting instead of Display
for paths.
2019-10-14 22:34:54 +02:00
Dustin 401c2aab96 Add support for title stack escape sequences
This commit adds the concept of a "title stack" to the terminal. Some programs
(e.g. vim) send control sequences `CSI 22 ; 0` (push title) and `CSI 23 ; 0`
(pop title).

The title stack is just a history of previous titles.  Applications can push
the current title onto the stack, and pop it back off (setting the window title
in the process).

Fixes #2840.
2019-10-14 19:50:58 +02:00
Jasper Mattsson 3475e44987 Disable depth and stencil buffers
Disable allocation of depth and stencil buffers. This reduces active
GPU memory consumption by almost a third, at least on Linux.
2019-10-11 22:16:13 +02:00
Christian Duerr 2f83f2dd2e
Add libxcb-xfixes0-dev as travis dependency
Currently on Linux the CI is not building since it cannot fint xcb for
linking. Installing it in the pre-install hook should make sure it's
available when linking.
2019-10-10 01:19:11 +02:00
Valentin Ignatev 4cb5566a9c Add --hold CLI flag
This implements --hold flag which keeps Alacritty open after
its child process exits.

Fixes #1165.
2019-10-09 23:37:48 +02:00
Kirill Chibisov 24651a6144 Remove automatic config generation
Fixes #2818.
2019-10-06 12:47:20 +02:00
Christian Duerr 729eef0c93
Update to winit/glutin EventLoop 2.0
This takes the latest glutin master to port Alacritty to the EventLoop
2.0 rework.

This changes a big part of the event loop handling by pushing the event
loop in a separate thread from the renderer and running both in
parallel.

Fixes #2796.
Fixes #2694.
Fixes #2643.
Fixes #2625.
Fixes #2618.
Fixes #2601.
Fixes #2564.
Fixes #2456.
Fixes #2438.
Fixes #2334.
Fixes #2254.
Fixes #2217.
Fixes #1789.
Fixes #1750.
Fixes #1125.
2019-10-05 02:29:26 +02:00
Clément L b0c6fdff76 Update VirtualKeyCode url in alacritty.yml 2019-10-04 12:27:06 +02:00
wayne f6f444bc2d Add live config reload for font size 2019-10-02 20:49:19 +02:00
Paolo Capriotti 3e82aa2830 Concatenate parameters of title OSC
A semicolon in a title OSC should be interpreted literally, not as a parameter
separator, but the OSC parser is very simple and does not know about arities of
commands.

Therefore, this patch takes all the parameters returned by the OSC parser and
reconstructs the original string by interspersing semicolons. Now an OSC like
'\e]2;hello;world' will set the title to 'hello;world' and not 'hello' like
before.
2019-09-28 18:59:27 +02:00
zsugabubus fe6f1760b4 Add `ReceiveChar` action for passing key's text 2019-09-28 02:37:22 +02:00
Christian Duerr 87cf14a4b7
Fix selection not inverting terminal background
Fixes a regression introduced in
9a0555bbba where the terminal background
would not get inverted when selected.
2019-09-26 20:55:30 +02:00
Kirill Chibisov 9a0555bbba Fix cell opacity when color matches terminal bg
Commit e964af8 introduced a regression, where if cell's bg color was
equal to NamedColor::Background rgb color it was rendered with transparent
background. However the correct behavior is to render bg transparent
only when bg color is actually a NamedColor::Background.

Fixes #2814.
2019-09-26 16:10:54 +02:00
Kirill Chibisov ad24485cdb Fix overflow on wrong scroll region setting
Fixes #2822.
2019-09-26 14:44:59 +02:00
mkosem c1f089970f Add Xembed support
Fixes #631.
2019-09-24 19:43:54 +02:00
Christian Duerr 856cddc873
Remove outdated TODO/FIXME comments 2019-09-21 19:54:32 +02:00
Christian Duerr 71a818cb8f
Initialize only visible characters
This fixes an off-by-two error in the renderer which initializes
characters 32 until 128 (inclusive) for each font whenever it is loaded.
The ascii visible range however just goes from 32 until 126 (inclusive).
2019-09-19 23:15:06 +02:00
Kirill Chibisov 9a14ca42d3 Rework default bindings
This commit removes all bindings which are sending escapes from
the default configuration file, adds bindings for F13-F24, adds bindings
for ScrollToTop/ScrollToBottom actions, removes bindings for Super + F1-F12,
fixes bindings for Alt + F1-F12.

Fixes #2688.
2019-09-18 21:21:01 +02:00
Christian Duerr 52fecd71b9
Remove code for setting _NET_WM_PID
This code is no longer necessary since winit now does this for us.
2019-09-16 17:10:12 +02:00
Christian Duerr c42df41332
Fix bindings incorrectly getting replaced
Fixes #2794.
2019-09-16 17:02:29 +02:00
Christian Duerr fb37a9cb55
Fix empty block selection detection
Fixes #2789.
2019-09-13 23:51:14 +00:00
Matthias Krüger 1067fa609b Replace uninitialized with MaybeUninit 2019-09-10 16:08:01 +00:00
Christian Duerr 8aa406b98b
Bump minimum Rust version to 1.36.0 2019-09-09 21:40:48 +00:00
Nathan Lilienthal 86ffa181b3 Reset the Mouse Cursor While Selecting
This change disabled the mouse cursor and URL highlight (underline)
while a selection is in progress. A click to clear the selection doesn't
trigger a URL action, but will re-enable the URL highlighting to
indicate the next click will trigger the launcher.
2019-09-09 20:39:39 +00:00
Bastien Orivel 20846ef925 Update and dedupe parking_lot to 0.9 2019-09-06 19:35:28 +00:00
Kirill Chibisov db63c31554 Fix Wayland selection clipboard not storing text when stopping outside of window 2019-09-03 15:42:24 +00:00
Christian Duerr 2f93fb34b1
Fix legacy xparsecolor regression 2019-08-28 19:21:25 +00:00
Christian Duerr b6c5f6918c
Fix url highlight not showing with required modifiers 2019-08-28 16:13:49 +00:00
Christian Duerr 4ccda1aaa5
Fix legacy xparsecolor regression
The legacy xparsecolor implementation assumed that the \007 ending would
be passed to the parser, however it never is. This caused colors in the
format #rrggbb to be interpreted as #rrggb, leading to incorrect colors
showing up in Alacritty.

Fixes #2759.
2019-08-28 18:12:10 +02:00
Christian Duerr 5f7fb4c3e2
Fix url highlight not showing with required modifiers 2019-08-26 18:11:36 +02:00
Christian Duerr 06e52a6266
Fix style issues in zsh completions 2019-08-25 12:46:53 +00:00
Christian Duerr a7cf053c88
Add bold italic font support
If the terminal escape sequences for bold and italic text are active,
the text should be rendered as bold and italic. However, due to missing
support in Alacritty, it would always render this text in bold.

This adds support for combining the bold and italic escapes to render
text in both styles and allows users to override the font for this
scenario using the `font.bold_italic` configuration option.
2019-08-25 12:35:19 +00:00
Chris Morgan e69f259d0e
Add bold italic font support
If the terminal escape sequences for bold and italic text are active,
the text should be rendered as bold and italic. However, due to missing
support in Alacritty, it would always render this text in bold.

This adds support for combining the bold and italic escapes to render
text in both styles and allows users to override the font for this
scenario using the `font.bold_italic` configuration option.
2019-08-25 14:30:42 +02:00
Oliver Kiddle d86eff6f14 Follow zsh conventions in zsh completion
Declaring curcontext etc local is superfluous as _arguments states are
not used. It is also superfluous to include an outer function definition
syntax in zsh autoloadable functions. Zsh convention is not to
capitalize descriptions. It is also better to use the imperative mood
verb form for descriptions as this allows them to start with the
shortest form of the verb - e.g. "reduce" instead of "reduces" and
results in better grammar in the absence of a sentence subject. I'd
recommend this in the --help output too. Using _guard for the position
and dimensions was unnecessary given that the values are not mixed with
other matches.
2019-08-25 02:45:48 +02:00
John Sullivan ad0365219f Show text cursor when pressing shift in mouse mode
Fixes #2550.
2019-08-24 23:18:50 +00:00
rbong 629ea247cd Follow xparsecolor spec in escape sequences
Escape sequences in xterm are parsed according to xparsecolor.
xparsecolor supports 1, 2, 3, and 4 digit hex colors.
Previously, only 2 digits were supported.

This also fixes a bug where "fX" was parsed as "0xf", where X is an invalid character.

The response to a request for fg/bg must be a valid escape sequence.
The current response uses 4-digit hex, which was previously invalid.
2019-08-19 19:56:27 +00:00
Bastien Orivel a8692983f5 Update depedencies 2019-08-18 02:46:29 +00:00
Christian Duerr d9d698614c
Fix clippy issues 2019-08-16 01:33:49 +02:00
Kirill Chibisov 1da986ae2b
Fix smithay-clipboard integration
Fixes: #2574
2019-08-16 01:33:37 +02:00
Christian Duerr 5cf77bf250
Format code 2019-08-08 23:30:10 +02:00
Koichi Murase 33cfc52909 Ignore unsupported CSI sequences
Instead of ignoring unexpected intermediates in CSI escape sequences,
the intermediates are now explicitly checked and the escape sequence is
rejected when an unexpected intermediate is found.

Fixes #2171.
2019-08-06 22:59:16 +00:00