summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-10-14Add support for title stack escape sequencesDustin
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-11Disable depth and stencil buffersJasper Mattsson
Disable allocation of depth and stencil buffers. This reduces active GPU memory consumption by almost a third, at least on Linux.
2019-10-10Add libxcb-xfixes0-dev as travis dependencyChristian Duerr
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-09Add --hold CLI flagValentin Ignatev
This implements --hold flag which keeps Alacritty open after its child process exits. Fixes #1165.
2019-10-06Remove automatic config generationKirill Chibisov
Fixes #2818.
2019-10-05Update to winit/glutin EventLoop 2.0Christian Duerr
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-04Update VirtualKeyCode url in alacritty.ymlClément L
2019-10-02Add live config reload for font sizewayne
2019-09-28Concatenate parameters of title OSCPaolo Capriotti
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-28Add `ReceiveChar` action for passing key's textzsugabubus
2019-09-26Fix selection not inverting terminal backgroundChristian Duerr
Fixes a regression introduced in 9a0555bbba30c264f617ec9260ca00e0eab70870 where the terminal background would not get inverted when selected.
2019-09-26Fix cell opacity when color matches terminal bgKirill Chibisov
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-26Fix overflow on wrong scroll region settingKirill Chibisov
Fixes #2822.
2019-09-24Add Xembed supportmkosem
Fixes #631.
2019-09-21Remove outdated TODO/FIXME commentsChristian Duerr
2019-09-19Initialize only visible charactersChristian Duerr
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-18Rework default bindingsKirill Chibisov
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-16Remove code for setting _NET_WM_PIDChristian Duerr
This code is no longer necessary since winit now does this for us.
2019-09-16Fix bindings incorrectly getting replacedChristian Duerr
Fixes #2794.
2019-09-13Fix empty block selection detectionChristian Duerr
Fixes #2789.
2019-09-10Replace uninitialized with MaybeUninitMatthias Krüger
2019-09-09Bump minimum Rust version to 1.36.0Christian Duerr
2019-09-09Reset the Mouse Cursor While SelectingNathan Lilienthal
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-06Update and dedupe parking_lot to 0.9Bastien Orivel
2019-09-03Fix Wayland selection clipboard not storing text when stopping outside of windowKirill Chibisov
2019-08-28Fix legacy xparsecolor regressionChristian Duerr
2019-08-28Fix url highlight not showing with required modifiersChristian Duerr
2019-08-28Fix legacy xparsecolor regressionChristian Duerr
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-26Fix url highlight not showing with required modifiersChristian Duerr
2019-08-25Fix style issues in zsh completionsChristian Duerr
2019-08-25Add bold italic font supportChristian Duerr
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-25Add bold italic font supportChris Morgan
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-25Follow zsh conventions in zsh completionOliver Kiddle
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-24Show text cursor when pressing shift in mouse modeJohn Sullivan
Fixes #2550.
2019-08-19Follow xparsecolor spec in escape sequencesrbong
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-18Update depedenciesBastien Orivel
2019-08-16Fix clippy issuesChristian Duerr
2019-08-16Fix smithay-clipboard integrationKirill Chibisov
Fixes: #2574
2019-08-08Format codeChristian Duerr
2019-08-06Ignore unsupported CSI sequencesKoichi Murase
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-06Fix multiple underlines/strikeouts on the same lineKirill Chibisov
This commit fixes regression introduced in ddee14a.
2019-08-04Remove errno depedencyChristian Duerr
2019-08-04Fix lines in last line not rendered when scrolled upChristian Duerr
Instead of creating the rectangles for lines after the line is completed, the rectangle is now initialized as soon as it is started. Then when following cells also contain the same line type, the rectangle is updated. This resolves the problem of having to finish the last line when it ends in the last non-empty column in the last line, since the render iterator only returns non-empty cells and we never get the information that the underline has ended. Fixes #2680.
2019-08-04Fix crash when hovering over message barKirill Chibisov
This commit fixes a regression introduced in 9dddf64. Fixes #2699.
2019-08-03Move modifier check before URL searchChristian Duerr
This makes sure that the URL search is only initiated when all required modifiers are held down. This should improve performance with long URLs.
2019-08-01Switch to rfind_url for URL detectionChristian Duerr
This switches to rfind_url for detecting URLs inside the grid. Instead of expanding at the cursor position, the complete terminal is searched from the bottom until the visible region is left with no active URL. Instead of having the field `cur` publicly accessibly on the `DisplayIterator`, there are the two methods `DisplayIterator::point` and `DisplayIterator::cell` for accessing the current element of the iterator now. This allows accessing the current element right after creating the iterator. Fixes #2629. Fixes #2627.
2019-08-01Remove color from log outputChristian Duerr
Fixes #2474.
2019-08-01Organize Readme OS listAlex Touchet
2019-07-30Bump minimum supported Rust version to 1.34.0Christian Duerr
2019-07-28Fix cursor flickering on url hoverKirill Chibisov
This commit fixes the regression introduced in 84aca67 and also fixes url highlight bounds computation when url ends on a last column. Fixes #2665.