1
0
Fork 0
mirror of https://github.com/alacritty/alacritty.git synced 2024-11-11 13:51:01 -05:00
A cross-platform, OpenGL terminal emulator.
Find a file
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
.copr Add RPM spec for building in COPR 2019-06-09 16:30:42 +00:00
.github Add issue template 2017-08-29 08:32:14 -07:00
alacritty Add support for title stack escape sequences 2019-10-14 19:50:58 +02:00
alacritty_terminal Add support for title stack escape sequences 2019-10-14 19:50:58 +02:00
ci Fix ubuntu deployment 2019-06-17 21:22:10 +00:00
copypasta Fix clippy issues 2019-08-16 01:33:49 +02:00
docs starting not staring (#1074) 2018-02-11 09:50:52 -08:00
extra Add --hold CLI flag 2019-10-09 23:37:48 +02:00
font Update to winit/glutin EventLoop 2.0 2019-10-05 02:29:26 +02:00
res Fix warning about inconsistent types in shader 2019-04-06 22:36:49 +02:00
scripts Fix spelling mistakes 2019-04-28 21:42:43 +00:00
servo-freetype-proxy Bump fontconfig dependencies 2018-09-30 20:44:14 +00:00
winpty Remove reqwest dependency on Windows 2019-06-13 21:18:01 +00:00
.agignore
.gitignore Add MSI installer for Windows 2019-03-02 18:31:14 +00:00
.travis.yml Add libxcb-xfixes0-dev as travis dependency 2019-10-10 01:19:11 +02:00
alacritty.yml Remove automatic config generation 2019-10-06 12:47:20 +02:00
Cargo.lock Update to winit/glutin EventLoop 2.0 2019-10-05 02:29:26 +02:00
Cargo.toml Add wayland primary selection clipboard support 2019-06-09 11:46:31 +00:00
CHANGELOG.md Add support for title stack escape sequences 2019-10-14 19:50:58 +02:00
CONTRIBUTING.md Bump minimum Rust version to 1.36.0 2019-09-09 21:40:48 +00:00
INSTALL.md Suggest installing fish completions per-user 2019-06-30 16:04:09 +00:00
LICENSE-APACHE
Makefile Add official logo 2019-04-01 22:41:20 +00:00
README.md Remove automatic config generation 2019-10-06 12:47:20 +02:00
rustfmt.toml Fix clippy issues 2019-08-16 01:33:49 +02:00

Alacritty

Alacritty Logo

Alacritty is the fastest terminal emulator in existence. Using the GPU for rendering enables optimizations that simply aren't possible without it. Alacritty currently supports macOS, Linux, BSD, and Windows.

Alacritty running vim inside tmux

About

Alacritty is a terminal emulator with a strong focus on simplicity and performance. With such a strong focus on performance, included features are carefully considered and you can always expect Alacritty to be blazingly fast. By making sane choices for defaults, Alacritty requires no additional setup. However, it does allow configuration of many aspects of the terminal.

The software is considered to be at a beta level of readiness -- there are a few missing features and bugs to be fixed, but it is already used by many as a daily driver.

Precompiled binaries are available from the GitHub releases page.

Further information

Installation

Some operating systems already provide binaries for Alacritty, for everyone else the instructions to build Alacritty from source can be found here.

Arch Linux

pacman -S alacritty

Fedora

Unofficial builds of stable tags can be found in Fedora Copr: pschyska/alacritty.

dnf copr enable pschyska/alacritty
dnf install alacritty

If you want to help test pre-releases, you can additionally enable pschyska/alacritty-testing.

Gentoo Linux

emerge x11-terms/alacritty

Mageia

urpmi alacritty

NixOS

nix-env -iA nixos.alacritty

openSUSE Tumbleweed

zypper in alacritty

Pop!_OS / Ubuntu

If you're not running Pop!_OS, you'll have to add a third party repository first:

add-apt-repository ppa:mmstick76/alacritty
apt install alacritty

Solus

eopkg install alacritty

Void Linux

xbps-install alacritty

FreeBSD

pkg install alacritty

macOS

brew cask install alacritty

Once the cask is installed, it is recommended to setup the manual page, shell completions, and terminfo definitions.

Windows

Via Chocolatey

choco install alacritty

Via Scoop

scoop bucket add extras
scoop install alacritty

Other

Prebuilt binaries for Linux, macOS, and Windows can be downloaded from the GitHub releases page.

To work properly on Windows, Alacritty requires winpty to emulate UNIX's PTY API. The agent is a single binary (winpty-agent.exe) which must be in the same directory as the Alacritty executable and is available through the GitHub releases page.

On Windows, Alacritty also requires Microsoft's VC++ redistributable to work properly.

Configuration

You can find the default configuration file with documentation for all available fields on the GitHub releases page for each release.

Alacritty looks for the configuration file at the following paths:

  1. $XDG_CONFIG_HOME/alacritty/alacritty.yml
  2. $XDG_CONFIG_HOME/alacritty.yml
  3. $HOME/.config/alacritty/alacritty.yml
  4. $HOME/.alacritty.yml

Windows

On Windows the config file is located at:

%APPDATA%\alacritty\alacritty.yml

Contributing

A full guideline about contributing to Alacritty can be found in the CONTRIBUTING.md file.

Issues (known, unknown, feature requests, etc.)

If you run into a problem with Alacritty, please file an issue. If you've got a feature request, feel free to ask about it. Please just keep in mind Alacritty is focused on simplicity and performance, and not all features are in line with that goal.

Before opening a new issue, please check if it has already been reported. There's a chance someone else has already reported it, and you can subscribe to that issue to keep up on the latest developments.

FAQ

Is it really the fastest terminal emulator?

In the terminals we've benchmarked, Alacritty is either faster or way faster than the others. If you've found a case where this isn't true, please report a bug.

Why isn't feature X implemented?

Alacritty has many great features, but not every feature from every other terminal. This could be for a number of reasons, but sometimes it's just not a good fit for Alacritty. This means you won't find things like tabs or splits (which are best left to a window manager or terminal multiplexer) nor niceties like a GUI config editor.

macOS + tmux + vim is slow! I thought this was supposed to be fast!

This appears to be an issue outside of terminal emulators; either macOS has an IPC performance issue, or either tmux or vim (or both) have a bug. This same issue can be seen in iTerm2 and Terminal.app. I've found that if tmux is running on another machine which is connected to Alacritty via SSH, this issue disappears. Actual throughput and rendering performance are still better in Alacritty.

My arrow keys don't work.

It sounds like you deleted some key bindings from your config file. Please reference the default config file to restore them.

IRC

Alacritty discussion can be found in #alacritty on freenode.

Wayland

Wayland is used by default on systems that support it. Using XWayland may circumvent Wayland specific issues and can be enabled through:

env WINIT_UNIX_BACKEND=x11 alacritty

License

Alacritty is released under the Apache License, Version 2.0.