Alacritty
GPU-accelerated cross-platform terminal focused on simplicity and performance.
Official WebsiteFeatures
Installation
brew install --cask alacrittypacman -S alacrittycargo install alacrittyWhy Use Alacritty?
Alacritty is a GPU-accelerated terminal developed with the goal of being "the fastest terminal emulator in the world." Written in Rust, it achieves both safety and performance. Prioritizing simplicity, tabs and split features are intentionally omitted, but usage with multiplexers like tmux or screen is recommended.
Blazing Fast Speed
GPU acceleration enables smooth rendering even with large text output. Handles massive log output via cat at high speed.
Cross-Platform
Use the same Configuration File across macOS, Linux, Windows, and BSD. Provides a consistent experience in any environment.
Simple Configuration
Manage all settings with a single TOML Configuration File. No GUI settings screen needed, and version control is easy.
Low Resource Consumption
Low memory usage and minimal CPU load. Runs efficiently even on battery-powered laptops.
Main Features
Vi Mode
Navigate, search, and select within scrollback using Vi-like keybindings. Copy text without using the mouse.
Hints Feature
Select and operate on URLs, file paths, line numbers, etc. with the keyboard. Custom hints can also be defined using regular expressions.
Search Function
Search text in scrollback with regular expressions. Supports incremental search.
True Color & Emoji Support
Full support for 24-bit True Color. Emoji and Nerd Fonts are displayed correctly.
Installation
macOS
# Install via Homebrew
brew install --cask alacritty
# Or download .dmg from official site
# https://github.com/alacritty/alacritty/releasesLinux
# Ubuntu/Debian
sudo add-apt-repository ppa:aslatter/ppa
sudo apt update
sudo apt install alacritty
# Arch Linux
sudo pacman -S alacritty
# Fedora
sudo dnf install alacritty
# Install via Cargo (common to all distributions)
cargo install alacrittyWindows
# Install via Scoop
scoop bucket add extras
scoop install alacritty
# Install via Chocolatey
choco install alacritty
# Install via winget
winget install Alacritty.AlacrittyConfiguration File
Place the Configuration File at the following paths (TOML format for v0.13 and later):
~/.config/alacritty/alacritty.toml(Linux/macOS)%APPDATA%\alacritty\alacritty.toml(Windows)
Basic Configuration Example
# Window settings
[window]
# Window opacity (0.0 - 1.0)
opacity = 0.95
# Padding
padding = { x = 10, y = 10 }
# Window decorations ("full" | "none" | "transparent" | "buttonless")
decorations = "full"
# Startup size
dimensions = { columns = 120, lines = 36 }
# Font settings
[font]
size = 14.0
[font.normal]
family = "JetBrains Mono"
style = "Regular"
[font.bold]
family = "JetBrains Mono"
style = "Bold"
[font.italic]
family = "JetBrains Mono"
style = "Italic"
# Cursor settings
[cursor]
style = { shape = "Block", blinking = "On" }
blink_interval = 750
unfocused_hollow = true
# Scrolling settings
[scrolling]
history = 10000
multiplier = 3
# Shell settings
[shell]
program = "/bin/zsh"
args = ["-l"]
# Environment variables
[env]
TERM = "xterm-256color"Color Scheme Example (Dracula)
# Dracula color scheme
[colors.primary]
background = "#282a36"
foreground = "#f8f8f2"
[colors.normal]
black = "#000000"
red = "#ff5555"
green = "#50fa7b"
yellow = "#f1fa8c"
blue = "#bd93f9"
magenta = "#ff79c6"
cyan = "#8be9fd"
white = "#bfbfbf"
[colors.bright]
black = "#4d4d4d"
red = "#ff6e67"
green = "#5af78e"
yellow = "#f4f99d"
blue = "#caa9fa"
magenta = "#ff92d0"
cyan = "#9aedfe"
white = "#e6e6e6"
[colors.selection]
text = "CellForeground"
background = "#44475a"Keybinding Configuration Example
# Keybinding settings
[[keyboard.bindings]]
key = "V"
mods = "Control|Shift"
action = "Paste"
[[keyboard.bindings]]
key = "C"
mods = "Control|Shift"
action = "Copy"
[[keyboard.bindings]]
key = "N"
mods = "Control|Shift"
action = "SpawnNewInstance"
[[keyboard.bindings]]
key = "F"
mods = "Control|Shift"
action = "SearchForward"
[[keyboard.bindings]]
key = "B"
mods = "Control|Shift"
action = "SearchBackward"
# Toggle Vi mode
[[keyboard.bindings]]
key = "Space"
mods = "Control|Shift"
action = "ToggleViMode"
# Change font size
[[keyboard.bindings]]
key = "Plus"
mods = "Control"
action = "IncreaseFontSize"
[[keyboard.bindings]]
key = "Minus"
mods = "Control"
action = "DecreaseFontSize"
[[keyboard.bindings]]
key = "Key0"
mods = "Control"
action = "ResetFontSize"Keyboard Shortcuts
Default Keyboard Shortcuts list (on macOS, read Ctrl as Cmd):
| Action | Keys (Linux/Windows) | Keys (macOS) |
|---|---|---|
| Copy | Ctrl + Shift + C | Cmd + C |
| Paste | Ctrl + Shift + V | Cmd + V |
| Increase Font Size | Ctrl + + | Cmd + + |
| Decrease Font Size | Ctrl + - | Cmd + - |
| Reset Font Size | Ctrl + 0 | Cmd + 0 |
| New Instance | Ctrl + Shift + N | Cmd + N |
| Search (Forward) | Ctrl + Shift + F | Cmd + F |
| Toggle Vi Mode | Ctrl + Shift + Space | Ctrl + Shift + Space |
| Select All | Ctrl + Shift + A | Cmd + A |
Vi Mode Keybindings
| Action | Keys |
|---|---|
| Move (up/down/left/right) | h / j / k / l |
| Move by word | w / b / e |
| Go to line start/end | 0 / $ |
| Go to top/bottom | gg / G |
| Visual selection | v |
| Line selection | V |
| Copy | y |
| Search | / or ? |
| Next search result | n / N |
Tips
Recommended to Use with tmux
Alacritty does not have tab or pane splitting features. Combine with terminal multiplexers like tmux or Zellij for a more efficient workflow.
Configuration File Hot Reload
Changes are automatically reflected when you save the Configuration File. No need to restart Alacritty.
Combining with Nerd Fonts
To display icons and symbols, we recommend using Nerd Fonts patched fonts (e.g., JetBrainsMono Nerd Font).
Configuration Validation
If there are errors in the Configuration File, warnings are displayed in the log at startup. Use the alacritty migrate command to migrate from old configuration format to new format.
Smooth Scrolling on macOS
On macOS, adjust scrolling.multiplier to optimize trackpad scrolling speed.