aboutsummaryrefslogtreecommitdiff
path: root/CHANGELOG.md
AgeCommit message (Collapse)Author
2019-02-04Fix macOS config decorations docChristian Duerr
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-01-28Trim unicode characters from the start of URLsSander van Harmelen
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-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-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-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-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.
2019-01-05Add key/mouse action for spawning new Alacritty instancesCarlos Tuñón
2019-01-02Process Mouse Binding Actions EarlierNathan Lilienthal
To allow for a mouse binding to properly copy text, we should process the mouse binding actions before thee built-in functionality, which will clear the selection on right click, for example.
2019-01-02Change default Windows shell to PowerShellJason Shirk
Update the Windows shell settings and comments so they look familiar to Windows users, but comment out the shell settings for consistency with Linux and Mac. Stop checking COMSPEC when the configuration file does not specify which shell to use, and just default to PowerShell.
2019-01-02Use default cursor instead of arrow in mouse modeDarkDefender
2018-12-28Add support for Windows ConPTY APIv0.2.4-conptyDavid Hewitt
2018-12-28Fix Windows config location documontationChristian Duerr
The path `%APPDATA%` already includes the `Roaming` folder.
2018-12-27Make windows config location more sensibleZac Pullar-Strecker
2018-12-23Report Windows panics through MessageBoxMatt T. Proud
Alacritty is often spawned through the executable on Windows. Since this doesn't allow access to the stderr and crashes on startup are more common on Windows due to the agent, it can be hard to troubleshoot issues. This reports all Alacritty crashes through error popups on Windows, which should resolve the problem of crashing Alacritty instances without any error feedback.
2018-12-20Send alt key with actual key in one flushskliew
The delay between the alt key and the actual received key might cause certain key sequences to be missed, ex. when tmux has its escape-time set to 0.
2018-12-17Add color option to visual bellChristian Duerr
This adds the option to specify the color of the visual bell using the `visual_bell.color` configuration setting. This is done by rendering a big quad over the entire screen, which also opens up options to draw other arbitrary rectangles on the screen in the future.
2018-12-15Fixing tabs in copy-pasteSteve Blundy
This resolves issues with copy-pasting tabs by including them in the pasted string. Selection of tabs is still inconsistent with what might be expected based on other terminal emulators, however the behavior hasn't regressed. This fixes https://github.com/jwilm/alacritty/issues/219.
2018-12-14Ignore result on deregistering ptydm1try
Fixes #1897.
2018-12-12Fix color issues in ncurses programsKyle Rooker
Certain programs like `htop` have problems with the number of color pairs which are specified by the Alacritty terminfo file. By reducing the maximum number of color pairs to the value which is specified by xterm-256color, these issues are resolved. This fixes #1862.
2018-12-09Bump version to 0.2.4v0.2.4Christian Duerr
2018-12-09Fix rendering of zero-width charactersChristian Duerr
Instead of rendering zero-width characters as full characters, they are now properly rendered without advancing the cursor. Because of performance limitations, this implementation only supports up to 5 zero-width characters per cell. However, as a result of this limitation there should not be any performance impact. This fixes #1317, fixes #696 and closes #1318.
2018-12-08Change missing config log level to infoTezkerek
2018-12-06Detach Child process to avoid zombie processesVineeth Sagar
This makes use of the common double-fork behavior to prevent spawning zombie processes every time a URL is clicked.
2018-12-03Launch a login shell by default on macOSBjorn Neergaard
2018-12-02Request user attention when bell received in macOSBarret Rennie
We now request the user's attention in macOS when a visual bell character is received. This manifests as the window jumping up and down in the dock.
2018-12-02Add change log entries for macOS privacy requestsChristian Duerr
2018-11-25Fix for an underflow on some type conversions (#1715)Zac Pullar-Strecker
2018-11-19Add option for launching Alacritty maximizedJonathan Dahan
2018-11-19Changed path to standard /usr/bin/..., registered as an x-terminal-emulator ↵Ilya Epifanov
alternative
2018-11-19Add keybinding action for clearing warns/errorsChristian Duerr
Since running `clear` inside of tmux doesn't actually clear any part of the screen, but just resets the scrolling region, the warning and error notices can't be removed without quitting tmux or Alacritty. As a solution, a new action `ClearLogNotice` has been added which has been bound to Ctrl+L by default. As a result, Ctrl+L can be used inside of tmux to remove the messages, even though tmux doesn't clear the screen. This fixes #1811.
2018-11-17Display errors and warningsChristian Duerr
To make sure that all error and information reporting to the user is unified, all instances of `print!`, `eprint!`, `println!` and `eprintln!` have been removed and replaced by logging. When `RUST_LOG` is not specified, the default Alacritty logger now also prints to both the stderr and a log file. The log file is only created when a message is written to it and its name is printed to stdout the first time it is used. Whenever a warning or an error has been written to the log file/stderr, a message is now displayed in Alacritty which points to the log file where the full error is documented. The message is cleared whenever the screen is cleared using either the `clear` command or the `Ctrl+L` key binding. To make sure that log files created by root don't prevent normal users from interacting with them, the Alacritty log file is `/tmp/Alacritty-$PID.log`. Since it's still possible that the log file can't be created, the UI error/warning message now informs the user if the message was only written to stderr. The reason why it couldn't be created is then printed to stderr. To make sure the deletion of the log file at runtime doesn't create any issues, the file is re-created if a write is attempted without the file being present. To help with debugging Alacritty issues, a timestamp and the error level are printed in all log messages. All log messages now follow this format: [YYYY-MM-DD HH:MM] [LEVEL] Message Since it's not unusual to spawn a lot of different terminal emulators without restarting, Alacritty can create a ton of different log files. To combat this problem, logfiles are removed by default after Alacritty has been closed. If the user wants to persist the log of a single session, the `--persistent_logging` option can be used. For persisting all log files, the `persistent_logging` option can be set in the configuration file