aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-15Fix issue rendering double, zero width charswide-chars-fixJoe Wilm
This has an issue where many diacritics will not show up at all unless they are baked into a glyph and input as a single codepoint.
2017-03-06(fix) Associates .desktop file with running process in Linux desktop OSesBryce Fisher-Fleig
Addresses #455
2017-03-04Handle CSI command J3 (Clear saved lines)Aaron Hill
Xterm supports an extension to the CSI command `Erase in Display (ED)`, under the command number 3. This command is used to clear the scrollback buffer - e.g. anything not visible on the screen. Since scrollback is not part of alacritty, the handler for this command currently does nothing. If at some point scrollback is implemented, the corresponding `match` arm can be modified to properly handle this. For an example of a program which uses this command, run the `clear` command (using ncurses 6.0). In a supported terminal such as `gnome-terminal`, this will clear anything off of the screen from the scrollback buffer. Before this change, `alacritty` would generate an `Unhandled CSI` message.
2017-03-03Handle OSC command '1' (Set Icon Name)Aaron Hill
2017-03-02Fix bug parsing OSC stringsJoe Wilm
OSC strings with UTF-8 previously failed.
2017-03-02Add support for wide charactersJoe Wilm
2017-03-01font::fc: Remove unneeded cloneHarlan Lieberman-Berg
2017-03-01font::ft: misc style cleanup.Harlan Lieberman-Berg
2017-03-01Drop unnecessary unsafe on add_charsetHarlan Lieberman-Berg
2017-03-01Switch over to using font_match everywhere.Harlan Lieberman-Berg
2017-03-01Rework font cache to cache on pathsHarlan Lieberman-Berg
This is done in order to help prevent us from loading the same font face over and over again under separate keys. We still incur the performance hit of doing the fontconfig search each new glyph, but that's unavoidable without more extensive refactoring.
2017-03-01First pass of font fallback renderingHarlan Lieberman-Berg
2017-03-01Fix fc::Pattern::add_charsetJoe Wilm
The lifetime constraints didn't do what I thought, and such constraints turn out to be unnecessary anyhow.
2017-03-01PoC find font with glyphJoe Wilm
2017-03-01Fix #447 - yml: mention `showkey -a` to get x sequence from keyRonan Jouchet
Am not touching the -macos yaml, as I'm not sure this works under macOS.
2017-02-27Add ref test for tab background highlightingJoe Wilm
Generated with echo -e "\x1b[48;5;31m1\t2\n\n3\x1b[0;m"
2017-02-27Update cell to cursor template when adding a tab.Anders Rasmussen
2017-02-25Change cursor colors config to use text and cursorJoe Wilm
This changes the cursor color config to use the `text` and `cursor` properties instead of the current `foreground` and `background` properties. The latter names stop making sense when dealing with cursors like a vertical bar or underscore. In the new system, the block, underscore, or vertical bar would always take the color of `cursor`, and the text would take the color of `text` when using a block, or keep its normal color when using the underscore or vertical bar. A warning is now emitted on startup when the old form of cursor color config is used. This will be a hard error in the future.
2017-02-22hide mouse cursor mac osAnders Rasmussen
2017-02-22Lazily reset `start_time` in VisualBell's `completed` methodMark Andrus Roberts
Fixes #416. Here's what I think is happening: at short `duration`s, the VisualBell's [`completed` check](https://github.com/jwilm/alacritty/blob/3ce6e1e4b2924b0d432cbb3e62b4bbef88dd38ff/src/term/mod.rs#L377) is returning `true` before we've actually had a chance to draw the "normal" background color. I thought about driving this condition off of whether or not `intensity` returns 0.0, but we may still miss a draw, I think. Perhaps the best way to tackle this is to let `completed` lazily reset the VisualBell's `start_time` (something @jwilm asked about when this feature originally landed), and to only return `true` when the VisualBell's `start_time` is `None`. This should effectively delay the final draw until after the VisualBell completes.
2017-02-22Document hide cursor when typing behaviourTuomas Siipola
2017-02-22Fix cursor visibility when window lost focusTuomas Siipola
2017-02-22Set cursor only when its visibility changesTuomas Siipola
2017-02-22Add hide cursor when typing optionTuomas Siipola
2017-02-17Bump glutinJoe Wilm
Resolves #422
2017-02-17Updates Glutin to proper handle dead keysMichel Boaventura
Resolves #211.
2017-02-17use an empty cell as template when resizing gridsAnders Rasmussen
2017-02-15Implement workaround for Mesa issueJoe Wilm
This addresses the issue where systems running Mesa drivers would be an order of magnitude slower than other terminals. With this patch, performance is nearly as good as with proprietary drivers. There is one caveat where, since the cause of slowness hasn't been removed, there is less time available for rendering on Mesa systems. I've benchmarked this on my system (i5-3570 @ 3.4GHz, GTX 680) using `time find /usr` with the following results: * ~2.0 seconds average with proprietary driver * ~2.3 seconds average with Mesa driver cc #125
2017-02-14Add TERM config entryAnders Rasmussen
2017-02-13Add default Alt+Backspace keybindingJoe Wilm
Resolves #315.
2017-02-11Disable visual bell by defaultJoe Wilm
cc #406
2017-02-11Handle OSC for setting indexed color valuesJoe Wilm
Resolves #26.
2017-02-11Move color list to Term structJoe Wilm
The color list needs to be updated by the parser, and this isn't possible if it's on the config. This change makes sense semantically as well since it's really part of the terminal state. This is in preparation for OSC color parsing.
2017-02-11Fix issue with cat /dev/urandomJoe Wilm
2017-02-10Update serde_yaml to 0.6.1David Tolnay
This release reports better errors: > font.use_thin_strokes: invalid type: string "tru", expected a boolean at line 51 column 21
2017-02-10Print YAML errors using DisplayJoe Wilm
Much nicer error message than with Debug.
2017-02-10Improvements to default configJoe Wilm
* Dimensions default to 80x24 which is standard for terminals * Remove commented out Solarized color scheme * Enable visual bell by default * Add visual bell config to macos defaults * Fix default keybindings to match xterm terminfo on Ubuntu 16.04
2017-02-07Add visual bell supportMark Andrus Roberts
This commit adds support for a visual bell. Although the Handler in src/ansi.rs warns "Hopefully this is never implemented", I wanted to give it a try. A new config option is added, `visual_bell`, which sets the `duration` and `animation` function of the visual bell. The default `duration` is 150 ms, and the default `animation` is `EaseOutExpo`. To disable the visual bell, set its duration to 0. The visual bell is modeled by VisualBell in src/term/mod.rs. It has a method to ring the bell, `ring`, and another method, `intensity`. Both return the "intensity" of the bell, which ramps down from 1.0 to 0.0 at a rate set by `duration` and `animation`. Whether or not the Processor waits for events is now configurable in order to allow for smooth drawing of the visual bell.
2017-02-07Semantic SelectionXiaoyu Yin
Fix tests and add line select Refactor BidirectionalIter to remove if blocks Allow for cells tagged with WRAPLINE to continue expanding the selection Reorganize config into structs Add test coverage that callbacks are called Cleanup mouse config - Uses Duration type for ClickHandler::threshold - Removes `action` property from ClickHandler--this can be added in a backwards compatible way later on - Renames ClickState::DblClick to DoubleClick fixup! Cleanup mouse config
2017-02-07Add zsh tab completion ref testJoe Wilm
2017-02-07Implement clearing above cursorJoe Wilm
2017-02-07Fix zsh tab completionJoe Wilm
2017-02-06Configurable window dimensionsAnders Rasmussen
Adds a configuration option `dimensions` which will set initial window size by columns and lines. Changes to the config file will require restart. resolves #370
2017-02-06Render underline on empty cellsTuomas Siipola
This fixes rendering underlines spanning multiple words.
2017-02-06Send mouse wheel commands only if they're supportedTuomas Siipola
Fixes #48
2017-02-05Add "Quit" action to allow exit on a Cmd-W or Cmd-QBrandur
Adds a new "Quit" action and binds it to Cmd-W and Cmd-Q on Mac OS in an attempt to make Alacritty feel more like a "normal" citizen of the operating system. Alternatives like Ctrl-D are okay, but I usually want to leave my shells nested within Tmux open even if I exit my terminal. It's also largely selfish: I've built up muscle memory over the years that takes my fingers to Cmd-Q first (and I suspect I'm not the only one). The implementation for an exit is copied from `event.rs` which notably is already tagged with a FIXME. It seems that `tty.rs` contains a `process_should_exit` system to help handle a `SIGCHLD`, and it's possible that these two exit implementations should be merged together. I could probably tackle that as my next project. As mentioned in #218, Alacritty can't really spawn other windows right now, so I've tied in Cmd-W as simply another synonym for quitting until that's implemented. Fixes #218.
2017-02-03Fix bug with restore cursorJoe Wilm
The saved cursor position could previously end up outside of the grid if the terminal was resized to be smaller and then calling a restore. Restore now ensures the cursor line and column are within grid bounds.
2017-02-03readme: Remove stray lineDaniel M. Capella
No longer needed thanks to #382.
2017-02-03Alacritty now compiles on stable Rust :tada:Joe Wilm
2017-02-02Fix bug introduced with save/restore patchJoe Wilm
Switching between main and alt grids should no longer clear the main grid.