Alacritty - A fast, cross-platform, OpenGL terminal emulator

Overview

Alacritty Logo

Alacritty - A fast, cross-platform, OpenGL terminal emulator

Alacritty - A fast, cross-platform, OpenGL terminal emulator

About

Alacritty is a modern terminal emulator that comes with sensible defaults, but allows for extensive configuration. By integrating with other applications, rather than reimplementing their functionality, it manages to provide a flexible set of features with high performance. The supported platforms currently consist of BSD, Linux, macOS and Windows.

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.

Features

You can find an overview over the features available in Alacritty here.

Further information

Installation

Alacritty can be installed by using various package managers on Linux, BSD, macOS and Windows.

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

For everyone else, the detailed instructions to install Alacritty can be found here.

Requirements

  • OpenGL 3.3 or higher
  • [Windows] ConPTY support (Windows 10 version 1809 or higher)

Configuration

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

Alacritty doesn't create the config file for you, but it looks for one in the following locations:

  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 should be located at:

%APPDATA%\alacritty\alacritty.yml

Contributing

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

FAQ

Is it really the fastest terminal emulator?

Benchmarking terminal emulators is complicated. Alacritty uses vtebench to quantify terminal emulator throughput and manages to consistently score better than the competition using it. If you have found an example where this is not the case, please report a bug.

Other aspects like latency or framerate and frame consistency are more difficult to quantify. Some terminal emulators also intentionally slow down to save resources, which might be preferred by some users.

If you have doubts about Alacritty's performance or usability, the best way to quantify terminal emulators is always to test them with your specific usecases.

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.

IRC

Alacritty discussions can be found in #alacritty on freenode.

License

Alacritty is released under the Apache License, Version 2.0.

Comments
  • Glutin 0.18 upgrade

    Glutin 0.18 upgrade

    Fixes #1756 Fixes #1525 Fixes #1509 Fixes #1428 Fixes #1414 Fixes #1382 Fixes #1358 Fixes #1345 Fixes #1257 Fixes #1146 Fixes #964 Fixes #952 Fixes #210 Fixes #71

    This compiles and after reviewing looks sane enough. However I am running into an issue where the text output of the terminal only shows up on the lower left quadrant of the whole window.

    I figured I could go ahead and open this up as a work in progress to get some feedback and suggestions for what could have gone wrong.

    opened by mkeeler 226
  • Update to winit/glutin EventLoop 2.0

    Update to winit/glutin EventLoop 2.0

    This takes the latest glutin master to port Alacritty to the EventLoop 2.0 rework.

    This changes a big part of the event loop handling by pushing the event loop in a separate thread from the renderer and running both in parallel.

    TODO:

    • [x] Resize issues (https://github.com/jwilm/alacritty/pull/2438#issuecomment-505518232)
    • [x] run_return support for macOS (https://github.com/rust-windowing/winit/issues/1005)
    • [x] Resizing extremely slow
    • [x] Font size change not updating pty size
    • [x] Message bar does not update PTY size properly
    • [x] Incorrect window dimensions when moving Alacritty between different DPI monitors
    • [x] Font size not updating when moving Alacritty between different DPI monitors
    • [x] Clean up code / resolve remaining TODOs
    • [x] Incorrect startup DPI on X11 (https://github.com/rust-windowing/winit/issues/998) -> ~~:zap: Still broken when spawning a floating window in i3~~ -> Workaround implemented
    • [x] Make sure before merging all the linked issues have change log entries
    • [x] Clear errors on message bar reload

    Fixes #2796. Fixes #2694. Fixes #2643. Fixes #2625. Fixes #2618. Fixes #2601. Fixes #2564. Fixes #2456. Fixes #2438. Fixes #2334. Fixes #2254. Fixes #2217. Fixes #1789. Fixes #1750. Fixes #1125.

    C - waiting on author 
    opened by chrisduerr 200
  • Support multiple windows

    Support multiple windows

    I use a window manager instead of tmux. With other terminal emulators when I want a new terminal instance, I simply open a new window. As far as I can tell, the only way to accomplish this with Alacritty is to open a new instance of the application. This is inferior for three reasons:

    1. Load times when opening a new instance of Alacritty are subpar. For a program that prides itself on being the fastest, opening new terminals should be no exception. (Loading a new instance of Alacritty lasts about 1 second for me vs instant when opening a new window in iTerm.)

    2. On macOS opening multiple instances of Alacritty fills up the Dock and Application Switcher.

    3. Currently, such behavior must be implemented manually by the user.

    From what I can tell from other issues, using window managers as a replacement for tmux is within Alacritty's scope. Even when using tmux, it can be desirable to open a second tmux instance for an unrelated session without detaching from the current session. I think multiple windows should be supported natively by Alacritty.

    enhancement help wanted 
    opened by net 152
  • Implementation of scrollback

    Implementation of scrollback

    The Grid<T> is now a view into a region (I called it the 'active region') of a VecDeque. When new lines are added, they are pushed onto the back of the queue, and once the scrollback buffer is considered 'full', then old lines are popped off the front of the queue. This seems to work rather well since, unlike a Vec, elements don't need to be reshuffled around very often.

    Of course, as discussed in #124 there are a few things that need to be fixed before I'd consider this 'ready':

    • [x] configurable max scrollback length
    • [ ] write new tests
    • [x] fix existing ref tests
    • [ ] measure performance impact (it seems fine but some numbers would be more reassuring)
    • [x] fix out of bounds errors on resize
    opened by neon64 124
  • Support GPUs without OpenGL 3.3+ drivers

    Support GPUs without OpenGL 3.3+ drivers

    I've been looking for an extremely fast terminal emulator for many years. xterm has unfixed rendering bugs and is slower than molasses. I don't like urxvt's lack of memory management. st uses more memory than xterm (yep!).

    Just saw Alacritty on HN and was determined to try it out.

    What are your plans for older hardware? I'm currently using a couple of laptops from 2007-2008: a ThinkPad T43 and a ThinkPad T60. Unfortunately the Rust nightly you're currently using is broken on i686 (#126) so I can't test Alacritty on the T43, but it reported the error in the title on my T60 (which has a slightly better GPU, FWIW).

    T43 specs:

    OpenGL vendor string: X.Org R300 Project
    OpenGL renderer string: Gallium 0.4 on ATI RV370
    OpenGL version string: 2.1 Mesa 11.0.2
    OpenGL shading language version string: 1.20
    
    01:00.0 VGA compatible controller: AMD/ATI [Advanced Micro Devices, Inc.] RV370/M22 [Mobility Radeon X300]
    

    T60 specs:

    Extended renderer info (GLX_MESA_query_renderer):
        Vendor: X.Org R300 Project (0x1002)
        Device: ATI RV515 (0x7145)
        Version: 11.2.2
        Accelerated: yes
        Video memory: 128MB
    
    01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] RV515/M54 [Mobility Radeon X1400]
    

    Yep, I realize these are kind of the "oh wow" of GPU land :) but I'm genuinely wondering what the best approach would be to support GPUs like these - I've been pondering making my own terminal emulator for a little while (as well as a 2D engine too, actually), but have absolutely no knowledge of OpenGL, Vulkan, etc.

    "It would be impossible" is completely understandable; "it would require a nontrivial architecture redesign" also wouldn't be too surprising.

    enhancement help wanted S - render 
    opened by i336 118
  • Tabs support in the terminal

    Tabs support in the terminal

    For bug reports, the following information can help speed up the process. Please describe the bug that you have found and what you would expect to happen instead.

    System

    OS: Linux/BSD/macOS/Windows Version: alacritty --version output Linux/BSD: X11/Wayland, DE or Compositor and WM Windows: WinPTY/ConPTY (see alacritty -v output)

    Logs

    Crashes: STDERR, STDOUT Font/Terminal size: alacritty -vv Keyboard and bindings: alacritty --print-events

    F - wontfix 
    opened by narain1 115
  • no method named `set_urgent` found for type `window::Window` in the current scope

    no method named `set_urgent` found for type `window::Window` in the current scope

    Which operating system does the issue occur on?

    • NetBSD 8.99.48 NetBSD 8.99.48 (GENERIC) amd64
    • Using X11 from base

    While running cargo build in the checkout at commit 84aca672964e29b5b4503b7da7bc34fc395f08ab, I get this error:

       Compiling copypasta v0.6.0 (/home/ng0/code/re-src/rust_crates/alacritty/copypasta)
    error[E0599]: no method named `set_urgent` found for type `window::Window` in the current scope
       --> alacritty_terminal/src/display.rs:493:29
        |
    493 |                 self.window.set_urgent(is_urgent);
        |                             ^^^^^^^^^^
        | 
       ::: alacritty_terminal/src/window.rs:59:1
        |
    59  | pub struct Window {
        | ----------------- method `set_urgent` not found for this
        |
        = help: items from traits can only be used if the trait is implemented and in scope
        = note: the following trait defines an item `set_urgent`, perhaps you need to implement it:
                candidate #1: `winit::os::unix::WindowExt`
    
    error: aborting due to previous error
    
    For more information about this error, try `rustc --explain E0599`.
    error: Could not compile `alacritty_terminal`.
    
    To learn more, run the command again with --verbose.
    
    C - waiting on author B - build failure H - bsd 
    opened by ghost 84
  • Track and report damage to compatible compositors

    Track and report damage to compatible compositors

    Implement damage tracking and reporting.

    This allows compositors to only process damaged (that is, updated) regions of our window buffer, which for larger window sizes (think 4k) should significantly reduce compositing workload under compositors that support/honor it, which is good for performance and battery life.

    On Wayland, clients are expected to report always report correct damage, so this makes us a good (or at least, better) citizen there. It can also aid remote desktop (waypipe, RDP, VNC, ...) and other types of screencopy by having damage bubble up correctly.

    Damage tracking has been implemented in a somewhat naïve fashion, but I believe it is a fair start.

    Note that this currently depends on a fork of glutin where support has been added.

    Fixes #3186.

    C - waiting on author 
    opened by kennylevinsen 75
  • Significant startup time

    Significant startup time

    Linux, X11. Using eb231b3e70b87875df4bdd1974d5e94704024d70, release build (the AUR one).

    Starting up alacritty takes a significant amount of time. Simply doing time alacritty -e false reports about 390ms. Other terminal emulators, such as urxvt or termite start much faster, at about 160ms for both. It's also not just a matter of this simple benchmark, in normal usage it also feels slower to start.

    enhancement B - performance 
    opened by occivink 70
  • Implement scrollback

    Implement scrollback

    Since you got so much pushback on the scrollback support, and mentioned possibly implementing it, I'm opening this as a tracking issue.

    (ps: I also really want scrollback w/o tmux).

    enhancement S - terminal 
    opened by theduke 69
  • Redraw randomly hangs until a keypress

    Redraw randomly hangs until a keypress

    Using Alacritty (commit 6916537858d12e02478d618339d1b9f0e73a677a) on Ubuntu 16.04 with X11.

    It is better described with the following screencast. Here I'm repeatedly opening and closing tig, so the output should be the same in each iteration. The screen often stays in a partially redrawed state (marked by mouse cursor movement). Then it finishes redraw correctly when I'm pressing a key.

    screencast

    B - bug P - high S - I/O and PTY DS - X11 
    opened by valff 68
  • Wayland/Sway terminal stops being redrawn while running termdown

    Wayland/Sway terminal stops being redrawn while running termdown

    System

    OS: Arch Linux x86_64 Version: alacritty 0.11.0 (8dbaa0bb) Wayland, Sway 1.7

    Details

    This issue started recently, and as Sway version haven't changed since January 2022, I believe the issue is with recent updates of Alacritty.

    Termdown is a countdown program, and recently I noticed that most of the time the screen stops being updated until I make any input (mouse movement or keyboard press). If I make the input, the terminal will update for a few seconds (or minutes if lucky) and stop again.

    I debugged with alacritty -o debug.highlight_damage=true and recorded a video with the issue happening.

    1. Run termdown -B 2m && notify-send 'Finish'
    2. The terminal stopped being updated at 1m 58s.
    3. After 2 minutes the notification is shown, but Alacritty screen is still stopped
    4. I move my mouse cursor and Alacritty updates the screen

    alacritty_update_bug.webm

    opened by Yutsuten 10
  • Use sRGB color space for NSWindow on macOS

    Use sRGB color space for NSWindow on macOS

    This is the same change as https://github.com/kovidgoyal/kitty/commit/368bc91eed446daf9c32dfbce8aec718ebb1201d (also relevant: https://github.com/kovidgoyal/kitty/issues/4686) I confirmed that now the rendered color is exactly the same as Kitty.

    I think it makes sense to make the default color space sRGB since other popular terminals are using sRGB by default including Kitty and iTerm. Also showing the same color as web browser, which is using sRGB, is beneficial for several apps such as nvim-colorizer.lua while doing web development.

    Closes https://github.com/alacritty/alacritty/issues/4939

    Verification on MacBook

    I tested on MacBook Pro 14 inch, 2021 with pastel

    • master (2bd26fbeb0c51cd8a98ae31d58ea105d1274387a)

      • We see that digital color meter (sRGB) is "out of range"
      • master
    • this PR

      • We see the color is different from master and digital color meter (sRGB) is showing the "correct" value, which was the same value as the one shown on Kitty / iTerm (tested with the same pastel command) and Apple Safari (tested with <div style="background-color: #398810;">X</div>)
      • fixed

    Concerns

    Although I am personally happy with this patch since I am familiar with sRGB more than other color space (had no idea about P3 initially), this will be "breaking change" and some of macOS users will be unhappy due to changed colors for their colorscheme although changed one should be more consistent with other terminals. Actually it looks like Kitty made this configurable via macos_colorspace option so that people can still choose other color space such as P3 via configuration option.

    Before merging this patch, we might need more discussions / considerations. (cf. https://github.com/kovidgoyal/kitty/issues/4686)

    opened by naruaway 1
  • Wayland launch failure on NVIDIA 3070 via optimus

    Wayland launch failure on NVIDIA 3070 via optimus

    Linux: 6.0.8 kernel Fedora 38 rawhide Deskto: KDE Plasma (wayland)

    #launched on nvidia 3070 via optimus env switch
    #launching on igu amd 680m 6800hs has no issue
     __NV_PRIME_RENDER_OFFLOAD=1  /home/diego/.cargo/bin/alacritty -vv
    
    #confirmed alacritty is bound to nvidia gpu
    (base) [diego@MiWiFi-RB06-srv ~]$ nvidia-smi
    Tue Jan  3 12:28:15 2023       
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 525.60.11    Driver Version: 525.60.11    CUDA Version: 12.0     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  NVIDIA GeForce ...  Off  | 00000000:01:00.0 Off |                  N/A |
    | N/A   48C    P8    12W /  N/A |      5MiB /  8192MiB |      0%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
                                                                                   
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |    0   N/A  N/A     46750      G   ...iego/.cargo/bin/alacritty        4MiB |
    
    [0.000001743s] [INFO ] [alacritty] Welcome to Alacritty
    [0.000067847s] [INFO ] [alacritty] Version 0.11.0
    [0.000088776s] [INFO ] [alacritty] Running on Wayland
    [0.000234178s] [INFO ] [alacritty_config_derive] No config file found; using default
    [0.000570638s] [DEBUG] [alacritty] Loading "monospace" font
    [0.007372359s] [DEBUG] [crossfont] Loaded Face Face { ft_face: Font Face: Regular, load_flags: TARGET_LIGHT, render_mode: "Lcd", lcd_filter: 1 }
    [0.008381909s] [DEBUG] [crossfont] Loaded Face Face { ft_face: Font Face: Bold, load_flags: TARGET_LIGHT, render_mode: "Lcd", lcd_filter: 1 }
    [0.009362214s] [DEBUG] [crossfont] Loaded Face Face { ft_face: Font Face: Regular, load_flags: NO_BITMAP | TARGET_LIGHT, render_mode: "Lcd", lcd_filter: 1 }
    [0.010330316s] [DEBUG] [crossfont] Loaded Face Face { ft_face: Font Face: Bold, load_flags: NO_BITMAP | TARGET_LIGHT, render_mode: "Lcd", lcd_filter: 1 }
    [0.011090949s] [DEBUG] [alacritty] Estimated scaling factor: 1
    [0.011099205s] [DEBUG] [alacritty] Estimated window size: None
    [0.011102321s] [DEBUG] [alacritty] Estimated cell size: 9 x 21
    [0.011964615s] [DEBUG] [crossfont] Loaded Face Face { ft_face: Font Face: Regular, load_flags: TARGET_LIGHT, render_mode: "Lcd", lcd_filter: 1 }
    [0.046511418s] [INFO ] [alacritty] Running on NVIDIA GeForce RTX 3070 Ti Laptop GPU/PCIe/SSE2
    [0.046530384s] [INFO ] [alacritty] Using OpenGL ES 2.0 renderer
    [0.046586318s] [INFO ] [alacritty] Using dual source blending
    [0.047482075s] [INFO ] [alacritty] Display scale factor: 1
    [0.047492324s] [DEBUG] [alacritty] Filling glyph cache with common glyphs
    [0.049876026s] [INFO ] [alacritty] Cell size: 9 x 21
    [0.049889441s] [INFO ] [alacritty] Padding: 0 x 0
    [0.049892577s] [INFO ] [alacritty] Width: 800, Height: 600
    [0.050028070s] [INFO ] [alacritty] PTY dimensions: 28 x 88
    [0.051589483s] [INFO ] [alacritty] Initialisation complete
    [destroyed object]: error 7: importing the supplied dmabufs failed
    thread 'main' panicked at 'failed to dispatch wayland event queue: Os { code: 71, kind: Uncategorized, message: "Protocol error" }', /home/diego/.cargo/registry/src/github.com-1ecc6299db9ec823/alacritty-0.11.0/src/event.rs:1438:30
    note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
    
    opened by diegomontoya 2
  • Extending alacritty terminal over two monitors

    Extending alacritty terminal over two monitors

    System

    OS: Ubuntu 20.04 Version: alacritty 0.11.0 (8dbaa0bb) Linux/BSD: gnome shell

    I have been able to span alacritty terminal (v 0.10.1) over two monitors using the config file : window:

      # Window dimensions (changes require restart)
      dimensions:
        columns: 274
        lines: 126
                                                                                                                                                                                                                                                                                  
      # Window position (changes require restart)
      position:
        x: 0
        y: 0
    
      # Window decorations
      decorations: none
    

    This is not possible anymore with the newest release. Can this be fixed?

    Logs

    alacritty -vv

    Created log file at "/tmp/Alacritty-71569.log" [0.000001697s] [INFO ] [alacritty] Welcome to Alacritty [0.000104586s] [INFO ] [alacritty] Version 0.11.0 (8dbaa0bb) [0.000132015s] [INFO ] [alacritty] Running on X11 [0.001332102s] [INFO ] [alacritty] Configuration files loaded from: "/home/aatish/.config/alacritty/alacritty.yml" [0.003945800s] [DEBUG] [alacritty] Loading "Source Code Pro" font [0.022063609s] [DEBUG] [crossfont] Loaded Face Face { ft_face: Font Face: Regular, load_flags: TARGET_LIGHT, render_mode: "Normal", lcd_filter: 1 } [0.026005632s] [DEBUG] [crossfont] Loaded Face Face { ft_face: Font Face: Bold, load_flags: TARGET_LIGHT, render_mode: "Normal", lcd_filter: 1 } [0.029302422s] [DEBUG] [crossfont] Loaded Face Face { ft_face: Font Face: Italic, load_flags: TARGET_LIGHT, render_mode: "Normal", lcd_filter: 1 } [0.032308939s] [DEBUG] [crossfont] Loaded Face Face { ft_face: Font Face: Bold Italic, load_flags: TARGET_LIGHT, render_mode: "Normal", lcd_filter: 1 } [0.033544357s] [DEBUG] [alacritty] Estimated scaling factor: 2 [0.033565283s] [DEBUG] [alacritty] Estimated window size: Some(PhysicalSize { width: 3836, height: 3906 }) [0.033581164s] [DEBUG] [alacritty] Estimated cell size: 14 x 31 [0.118235157s] [INFO ] [alacritty] Running on Quadro GV100/PCIe/SSE2 [0.118286810s] [INFO ] [alacritty] Using OpenGL 3.3 renderer [0.120133658s] [INFO ] [alacritty] Display scale factor: 2 [0.120159579s] [DEBUG] [alacritty] Filling glyph cache with common glyphs [0.124427152s] [INFO ] [alacritty] Cell size: 14 x 31 [0.124452307s] [INFO ] [alacritty] Padding: 0 x 0 [0.124461538s] [INFO ] [alacritty] Width: 3836, Height: 3906 [0.142254784s] [INFO ] [alacritty] PTY dimensions: 126 x 274 [0.146125841s] [INFO ] [alacritty] Initialisation complete [0.225511510s] [DEBUG] [alacritty_terminal] Term::resize dimensions unchanged [0.225558148s] [INFO ] [alacritty] Padding: 0 x 0 [0.225573511s] [INFO ] [alacritty] Width: 3836, Height: 3906 [0.293181580s] [DEBUG] [alacritty_terminal] New num_cols is 274 and num_lines is 67 [0.300103594s] [INFO ] [alacritty] Padding: 0 x 0 [0.300133413s] [INFO ] [alacritty] Width: 3840, Height: 2106 [2.984823147s] [INFO ] [alacritty] Goodbye Deleted log file at "/tmp/Alacritty-71569.log"

    opened by kaatish 4
  • Switch to TOML for configuration file

    Switch to TOML for configuration file

    I'm quite honestly tired of looking at YAML files with broken indentation. While YAML is an awful format even for experienced users, clearly it's completely impossible for inexperienced ones to grasp its concept. And the documentation of our configuration file with everything commented out by default probably doesn't help.

    Since as far as I know all previous issues with TOML have been fixed and escape sequences can be easily specified in TOML strings now, I think it would make sense to switch to TOML as our default format.

    In a transitory period we could probably get away with just loading existing YAML files and writing them out as TOML, to allow for backward compatibility. This will probably produce somewhat messy TOML files, but I can't imagine an auto-generated TOML file would be much worse than a YAML file.

    The only major drawbacks I see is that this is a rather big change that will no doubt annoy a bunch of people and some more advanced features of YAML (like anchors) are not supported in TOML. But nobody really needs anchors and I kinda like annoying people.

    @kchibisov You proposed this a while ago on IRC, do you think this is a bad idea?

    See https://github.com/alacritty/alacritty/issues/1217 for prior discussions.

    opened by chrisduerr 1
  • Cannot use ctrl + / in alacritty on Windows

    Cannot use ctrl + / in alacritty on Windows

    Pressing Ctrl + / does nothing.

    For whatever it's worth: Pressing Ctrl + v pastes whatever is in the clipboard.

    So i can't bind C-_ for commenting/uncommenting in neovim.

    System

    OS: Windows 11 Version: alacritty 0.11.0 (d23330a) Shell: PowerShell 7.3.1

    Logs

    Crashes: STDERR, STDOUT Font/Terminal size: alacritty -vv Keyboard and bindings: alacritty --print-events

    [37.859271800s] [INFO ] [alacritty] glutin event: MainEventsCleared
    [37.859429400s] [INFO ] [alacritty] glutin event: RedrawEventsCleared
    [37.978542200s] [INFO ] [alacritty] glutin event: NewEvents(WaitCancelled { start: Instant { t: 209698.4448825s }, requested_resume: None })
    [37.978888300s] [INFO ] [alacritty] glutin event: WindowEvent { window_id: WindowId(WindowId(2099080)), event: KeyboardInput { device_id: DeviceId(DeviceId(0)), input: KeyboardInput { scancode: 53, state: Released, virtual_keycode: Some(Slash), modifiers: CTRL }, is_synthetic: false } }
    [37.979271300s] [INFO ] [alacritty] glutin event: MainEventsCleared
    [37.979413400s] [INFO ] [alacritty] glutin event: RedrawEventsCleared
    [38.234473100s] [INFO ] [alacritty] glutin event: NewEvents(WaitCancelled { start: Instant { t: 209698.5649091s }, requested_resume: None })
    [38.234748400s] [INFO ] [alacritty] glutin event: WindowEvent { window_id: WindowId(WindowId(2099080)), event: KeyboardInput { device_id: DeviceId(DeviceId(0)), input: KeyboardInput { scancode: 53, state: Pressed, virtual_keycode: Some(Slash), modifiers: CTRL }, is_synthetic: false } }
    [38.235074700s] [INFO ] [alacritty] glutin event: MainEventsCleared
    [38.235285500s] [INFO ] [alacritty] glutin event: RedrawEventsCleared
    [38.347000700s] [INFO ] [alacritty] glutin event: NewEvents(WaitCancelled { start: Instant { t: 209698.8207637s }, requested_resume: None })
    [38.347350500s] [INFO ] [alacritty] glutin event: WindowEvent { window_id: WindowId(WindowId(2099080)), event: KeyboardInput { device_id: DeviceId(DeviceId(0)), input: KeyboardInput { scancode: 53, state: Released, virtual_keycode: Some(Slash), modifiers: CTRL }, is_synthetic: false } }
    [38.347761500s] [INFO ] [alacritty] glutin event: MainEventsCleared
    [38.347943900s] [INFO ] [alacritty] glutin event: RedrawEventsCleared
    [38.611652900s] [INFO ] [alacritty] glutin event: NewEvents(WaitCancelled { start: Instant { t: 209698.9334393s }, requested_resume: None })
    [39.394845700s] [INFO ] [alacritty] glutin event: NewEvents(WaitCancelled { start: Instant { t: 209699.9011342s }, requested_resume: None })
    [39.395189000s] [INFO ] [alacritty] glutin event: WindowEvent { window_id: WindowId(WindowId(2099080)), event: KeyboardInput { device_id: DeviceId(DeviceId(0)), input: KeyboardInput { scancode: 53, state: Released, virtual_keycode: Some(Slash), modifiers: CTRL }, is_synthetic: false } }
    [39.395459400s] [INFO ] [alacritty] glutin event: MainEventsCleared
    [39.395608200s] [INFO ] [alacritty] glutin event: RedrawEventsCleared
    [39.409893600s] [INFO ] [alacritty] glutin event: NewEvents(WaitCancelled { start: Instant { t: 209699.9810826s }, requested_resume: None })
    [39.410080900s] [INFO ] [alacritty] glutin event: WindowEvent { window_id: WindowId(WindowId(2099080)), event: ModifiersChanged((empty)) }
    [39.410257600s] [INFO ] [alacritty] glutin event: WindowEvent { window_id: WindowId(WindowId(2099080)), event: KeyboardInput { device_id: DeviceId(DeviceId(0)), input: KeyboardInput { scancode: 29, state: Released, virtual_keycode: Some(LControl), modifiers: (empty) }, is_synthetic: false } }
    
    opened by airtonix 1
Releases(v0.11.0)
Owner
Alacritty
Alacritty
Termite - Termite is obsoleted by Alacritty

Termite was a keyboard-centric VTE-based terminal, aimed at use within a window manager with tiling and/or tabbing support.

Daniel Micay 2.8k Dec 29, 2022
Cross-platform Rust library for coloring and formatting terminal output

Coloring terminal output Documentation term-painter is a cross-platform (i.e. also non-ANSI terminals) Rust library for coloring and formatting termin

Lukas Kalbertodt 75 Jul 28, 2022
Cross platform terminal library rust

Cross-platform Terminal Manipulation Library Crossterm is a pure-rust, terminal manipulation library that makes it possible to write cross-platform te

crossterm-rs 2.1k Jan 2, 2023
Cross-platform terminal screen clearing library

ClearScreen Cross-platform terminal screen clearing library. API documentation. Dual-licensed with Apache 2.0 and MIT. Uses Caretaker Maintainership.

null 23 Dec 30, 2022
Cross-platform terminal program to download IEEE journals

IEEE Journal Downloader A cross-platform terminal program which tries to download every article in a specified journal and merge the documents into on

Fong Chien Yoong 18 Jul 23, 2022
Native cross-platform full feature terminal-based sequence editor for git interactive rebase.

Native cross-platform full feature terminal-based sequence editor for git interactive rebase.

Tim Oram 1.2k Jan 2, 2023
Simple macros to write colored and formatted text to a terminal. Based on `termcolor`, thus also cross-platform.

Bunt: simple macro-based terminal colors and styles bunt offers macros to easily print colored and formatted text to a terminal. It is just a convenie

Lukas Kalbertodt 202 Dec 22, 2022
glicol cli: cross-platform music live coding in terminal

glicol-cli What's this? It's a command line interface that you can use for music live coding with Glicol. It watches a file changes and then update th

Glicol 70 Apr 14, 2023
🔥 📝 (fwdt) "few word do trick" is a cross platform manual fast logger

Few Word Do Trick (fwdt) Few Word Do Trick (fwdt) is a cross-platform general purpose fast logger for humans that supports incomplete csvs for a bette

Alex Hallam 15 Feb 3, 2023
Rusty fast cross-platform 2D drawing library

Bly Rusty fast cross-platform 2D graphics library Concept Easy to use Bly is easy to use and yet can be called from various windowing libraries using

null 4 Feb 27, 2023
My terminal emulator

Miro A GPU-accelerated terminal emulator written in Rust. miro -t pika miro -t kirby miro -t mario miro -t sonic Building from source

Ossama Hjaji 283 Dec 3, 2022
A blazingly fast rust-based bionic reader for blazingly fast reading within a terminal console 🦀

This Rust-based CLI tool reads text and returns it back in bionic reading format for blazingly fast loading and even faster reading! Bionic reading is

Ismet Handzic 5 Aug 5, 2023
A fast, efficient emulator for the osu! Bancho protocol written in Rust

rosu. A fast, efficient emulator for the osu! Bancho protocol written in Rust. Setup Git clone rosu, setup your nginx (example config is in the ext fo

James 2 Sep 19, 2022
A cross platform minimalistic text user interface

titik Titik is a crossplatform TUI widget library with the goal of being able to interact intuitively on these widgets. It uses crossterm as the under

Jovansonlee Cesar 113 Dec 31, 2022
A cross-platform graphical process/system monitor with a customizable interface and a multitude of features

A cross-platform graphical process/system monitor with a customizable interface and a multitude of features. Supports Linux, macOS, and Windows. Inspired by both gtop and gotop.

Clement Tsang 5.8k Jan 8, 2023
📺(tv) Tidy Viewer is a cross-platform CLI csv pretty printer that uses column styling to maximize viewer enjoyment.

??(tv) Tidy Viewer is a cross-platform CLI csv pretty printer that uses column styling to maximize viewer enjoyment.

Alex Hallam 1.8k Jan 2, 2023
Cross-platform Rust rewrite of the GNU coreutils

Cross-platform Rust rewrite of the GNU coreutils

null 13k Jan 8, 2023
Rust-battery - Rust crate providing cross-platform information about the notebook batteries.

battery Rust crate providing cross-platform information about the notebook batteries. Table of contents Overview Supported platforms Install Examples

svartalf 326 Dec 21, 2022
Cross-platform CLI Rimworld Mod manager. Still under development

rwm Inspired by Spoons rmm. This is a cross-platform Mod Manager for RimWorld intended to work with macOS, linux and Windows Up to now, you must have

Alejandro O 7 Sep 5, 2022