aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-02-13Update fish completion installationfish-completions-dir-updateChristian Duerr
2019-02-11Bump version to 0.2.9v0.2.9Christian Duerr
2019-02-11 Fix font spacing errorChristian Duerr
Fixes #2098.
2019-02-10Remove deployment script from clippy buildsChristian Duerr
2019-02-10Bump version to 0.2.8v0.2.8Christian Duerr
2019-02-10Fix dimensions CLI/manpage docsChristian Duerr
2019-02-09Change font size only when new metrics are validMartin Sucha
This prevents cell_width or cell_height being zero. Fixes #1693
2019-02-08Remove selections when clearing screen partiallyChristian Duerr
Automatically remove all selections when part of the screen is cleared. This fixes issues in applications like `less -S` where a selection would stay around after scrolling horizontally. XTerm and URxvt both choose to always remove the selection, even if it's outside of the cleared area, however VTE only clears the selection if any part of it is inside the cleared area. To keep things simple, Alacritty has adopted the behavior of XTerm and URxvt to always clear selections. This fixes #1644.
2019-02-08 Change shift+pgup/pgdown to scroll historyChristian Duerr
The default shift+pgup/pgdown buttons were sending the escape sequences specified by the official standard, however most terminal emulators like XTerm, URxvt and VTE make an exception for this special case and instead scroll the native history buffer. Both XTerm and URxvt do never send the escapes for Shift+PgUp/PgDown, however VTE does send them in the alternate screen. Since Alacritty already supports keybindings based on terminal mode and the binding to scroll the history is useless when in the alternate screen buffer, Alacritty is now following VTEs behavior here, allowing applications in the alt screen (like vim) to handle this escape. Fixes #1989.
2019-02-07Dynamically resize terminal for errors/warningsChristian Duerr
The warning and error messages now don't overwrite other terminal content anymore but instead resize the terminal to make sure that text can always be read. Instead of just showing that there is a new error and pointing to the log, errors will now be displayed fully in multiple lines of text, assuming that there is enough space left in the terminal. Explicit mouse click handling has also been added to the message bar, which made it possible to add a simple `close` button in the form of `[X]`. Alacritty's log file location is now stored in the `$ALACRITTY_LOG` environment variable which the shell inherits automatically. Previously there were some issues with the log file only being deleted when certain methods for closing Alacritty were used (like typing `exit`). This has been reworked and now Ctrl+D, exit and signals should all work properly. Before the config is reloaded, all current messages are now dropped. This should help with multiple terminals all getting clogged up at the same time when the config is broken. When one message is removed, all other duplicate messages are automatically removed too.
2019-02-07Fix unclickable URLs with scrolled viewportChristian Duerr
Since scrolling the terminal moves around the underlying data structure of the terminal, the URL selection would search for the URL at the position where the click would have been without any scrolling. By adding the viewport offset to the click position, the URL clicking now searches at the correct location. This fixes https://github.com/jwilm/alacritty/issues/2076.
2019-02-06Set window title on WaylandChristian Duerr
Fixes #1582. Fixes #1875.
2019-02-05Disable incremental for release buildsChristian Duerr
This fixes #1115.
2019-02-05Scale IME position by hidpi_factorDesuwa
Since the IME was positioned using physical coordinates, the location would be incorrect with monitors using a DPR other than 1.0. This has been resolved by converting the physical position to a logical position using the methods built into winit. Fixes #2056.
2019-02-04Remove library lockfiles from gitChristian Duerr
Following Rust's standard, the lockfiles for Alacritty's sub-libraries have been removed. One instance of the deprecated `ATOMIC_USIZE_INIT` has also been removed. This fixes #2040.
2019-02-04Simplify text shaderM. Stoeckl
2019-02-04Fix macOS config decorations docChristian Duerr
2019-02-03Remove unused coordinate from rect shaderM. Stoeckl
2019-02-03 Fix regression in the URL launcher config Christian Duerr
Due to the merging of configuration files on all platforms, it has been made impossible to completely disable URL launching without still executing some kind of program like `true`. Setting the launcher to `None` in the config, will now disable it completely. This fixes #2058.
2019-02-02Fix reloading with empty configChristian Duerr
When loading an empty configuration file, Alacritty only prints an info message and then proceeds to load the default config. However when reloading the configuration file it would throw a hard error. This has been fixed and a hard error is now only thrown when an error is returned during reload which isn't the empty file error.
2019-02-02Document that alacritty requires winpty-agent on windows Zac Pullar-Strecker
To make things easier to understand for Windows users, the relationship between Alacritty and the WinPTY agent has been clarified in the documentation. This also bundles the windows agent and exe together in a zip file to make distribution for windows easier on the user.
2019-01-28Trim unicode characters from the start of URLsSander van Harmelen
2019-01-28Add pkg-config to Debian dependenciesF. Eugene Aumson
2019-01-27Improve touchpad scrollingray851107
By scaling fractional scaling by scrolling multiplier before conversion to lines it is now possible to scroll much more accurately with touchpads. The `scrolling.multiplier` now also applies to touchpads.
2019-01-23Update dependenciesChristian Duerr
This resolves an issue with notify that caused excessive wake-ups when waiting for config updates. Fixes #2029.
2019-01-23 Move clippy tests to stableChristian Duerr
The clippy tests had to be run on nightly previously since it wasn't available with the stable compiler yet, however this had the potential to fail a lot since not all nightly builds offer clippy. Since clippy is now available for stable rust, moving clippy to a stable build should make sure that the failure rate of the CI job is cut down to a minimum. This fixes https://github.com/jwilm/alacritty/issues/2007.
2019-01-21Changed explicit script shebangs to use /usr/bin/envpraetorg
2019-01-21Fix off-by-one error in erase_charsAlexander Bulimov
2019-01-21Bump version to 0.2.7v0.2.7Christian Duerr
2019-01-20Fix crash on Windows (#2021)Christian Duerr
The rusttype backend did not properly support manually specifying font styles, but instead chose to panic when they are specified. The rusttype implementation now provides a proper implementation for handling `bold`, `italic` and `regular` font styles. This fixes #2020.
2019-01-19Remove Appveyor CI buildsChristian Duerr
This completely removes all Appveyor CI build jobs to move Alacritty to a singular CI provider for all platforms. To ensure that Windows is still properly tested, the allowed failure for the stable Windows build job on travis has been removed. This fixes #1679.
2019-01-19Bump version to 0.2.6v0.2.6Christian Duerr
2019-01-19Fix crash on macOS and BSD with SpawnNewInstance actionCarlos Tuñón
2019-01-17Add config option to send or not send ESC when ALT-key is pressedSimon Dahlberg
2019-01-17Make all configuration fields optionalChristian Duerr
All configuration fields now have fallback values which will be used if the field is not present. This includes mouse, key bindings and platform specific differences. The mouse and key bindings are now filled by default, if the user rebinds a default mapping, it will be overwritten. To unbind a default binding, it can be mapped to `chars: ""`. Since all platform differences can now be correctly handled by the `src/config/mod.rs` code, it's no longer necessary to maintain separate configuration files, so the `alacritty_macos.yml` and `alacritty_windows.yml` have been deleted. Fixes #40. Fixes #1923.
2019-01-13Fix tabs overwriting cells during movementChristian Duerr
When compiling ncurses with the `--enable-hard-tabs` option, it will make use of tabs to speed up cursor movement. These tabs can be set at positions which will overwrite existing characters. Since these are only for movement and not supposed to write anything to the terminal, it is now checked that a cell does not contain any character before writing a tab to it. This fixes #1933.
2019-01-12Add Solus install instructions to READMERobert Günzler
2019-01-11Fix config documentation typoMorton Fox
2019-01-09Fix CPU load when moving windows between monitorsChristian Duerr
2019-01-09Fix crash when starting Alacritty on full drivesChristian Duerr
Since the Alacritty configuration file is written to the filesystem at startup, this could create issues when the system does not have any free space left. To circumvent this problem, the default configuration is now returned even when the configuration file could not be created. Instead of crashing Alacritty, an error is now emitted. Fixes #1936.
2019-01-08Fix selection with right and middle mouseChristian Duerr
Since there was no check for the button state for semantic and line selection, it was possible to trigger selection using the middle and right mouse button. This has been resolved by explicitly checking for the pressed button before starting these selections. To further ensure that double and triple clicks are only triggered when the same button is pressed multiple times, the last pressed button is stored. This fixes #1915.
2019-01-08Fix macOS CI deployment scriptChristian Duerr
2019-01-07Fix minor issues in the config documentationChristian Duerr
2019-01-07Bump version to 0.2.5v0.2.5Christian Duerr
This bumps the version number to 0.2.5 and prepares everything for the next versioned release.
2019-01-07Normalize Log Message StringsNathan Lilienthal
The general style for errors, warnings and info messages is to start with a capitalized letter and end without a period. The main exception is when dealing with nouns that are clearer with special case handling, e.g. "macOS failed to work" or "ioctl is borked".
2019-01-06Set minimum macOS version to 10.11Christian Duerr
To make sure that CI builds produced by Travis work on all supported versions of macOS and building Alacritty works on all supported versions, the minimum macOS version has been set in the Makefile. This sets the minimum macOS version to `10.11` as a reasonable estimation based on other applications. If the exact version chosen turns out to cause some issues, it can be changed in the future.
2019-01-05Improve URL detection with special charactersChristian Duerr
Various special characters and character combinations were not handled correctly with URL detection. All these instances have been resolved and covered by various tests to prevent future regressions. Notable fixes include single quotes working more properly now (like `'https://example.org'`) and IPv6 URL support. Since URL detection is now more than just a few lines of code and it's mostly unrelated to the `Term`, it has also been extracted into the `src/url.rs` file together with all URL-related tests.
2019-01-05Limit number of URL schemesChristian Duerr
This limits the number of allowed schemes for the URL launcher, to reduce the number of false-positives. The accepted URL schemes are now: - http - https - mailto - news - file - git - ssh - ftp This fixes #1727.
2019-01-05Fix removal of trailing URL charactersChristian Duerr
Some characters were not correctly stripped from the end of URLs with the URL launching feature. The list of URL separator characters has been extended to include '<', '>', '"', ' ', '{', '}', '|', '\\', '^' and '`', following the URL specification defined here: https://tools.ietf.org/html/rfc3987#page-13 Additionally, a list of characters which are always stripped from the end of URLs has been setup to contain '.', ',', ';', ':', '?', '!', and '/'. This fixes #1753.
2019-01-05Launch URLs only when left-clickingChristian Duerr
This fixes #1903.