21 ms·
Alacritty – A fast, cross-platform, OpenGL terminal emulator
- jrgirvan 2y agoAs I broke away from windows a few years ago, I used the default terminal in popos, then got a Mac as my work machine. Then broke away from vscode to neovim and didn't like the default Mac terminal or iterm2, looked for a cross platform terminal, found alacritty and haven't looked back. Are there other non-gpu accelerated terminals that would work just as well? Probably, but alacritty is installed, configured and works well for me
- pasc1878 2y agoWhat reasons do you have for not liking iTerm and Terminal.app and what does alacrity do better?
- hawk01 2y agoInitially the only terminal which supported Wayland. Never looked back ever since
- swah 2y agoShout-out also for this smaller project: https://github.com/raphamorim/rio https://github.com/raphamorim/rio
- nathants 2y agodoes it suck less though?
- mactavish88 2y agoBeen using Alacritty daily for over a year now on Ubuntu for paid and unpaid (hobby) work and it’s exactly what I need: something that doesn’t get in my way, and it renders nicely. Performance on a ThinkPad with Nvidia graphics card is great. I primarily use it alongside tmux and NeoVim.
- paulcarroty 2y agoTwo main problems: - no ligatures - no sixel support So I was forced to remove it.
- Rogach 2y agoI moved to alacritty from gnome-terminal. Wasn't for latency or throughput - I didn't notice any difference in latency, and difference in throughput is only visible when cat'ing 3MB of text. However, for me the selling point was a text config file, which I can edit, backup, or store in git (unlike gnome-terminal, where customization was done either in GUI or in gconf, and while it's also text files somewhere they are difficult to work with).
- Piraty 2y agoA look at terminal emulators. https://lwn.net/Articles/749992/ https://lwn.net/Articles/749992/ https://lwn.net/Articles/751763/ https://lwn.net/Articles/751763/
- uggwar 2y agoNo AI?!
- siproprio 2y agoI prefer wezterm. It comes bundled with libssh, connecting through ssh to WSL instead of going through wsl.exe makes everything feels at least 100x faster, since it avoid going through conpty.
- naranyala 2y agotry the new alternatives [0] https://github.com/raphamorim/rio https://github.com/raphamorim/rio [1] https://github.com/contour-terminal/contour https://github.com/contour-terminal/contour
- kyriakos 2y agoI used to use it on windows until Microsoft released its Windows Terminal and switched over. Any reason to switch back? Windows terminal seems snappy enough.
- absoluteunit1 2y agoMoved to Alacritty from iTerm2 recently. The biggest plus was the simple text config. I actively make a lot of changes to my config (always experimenting with different shortcuts and other things) and updating configs on multiple machines (work and personal) became a headache. This solved that for me; can just commit any changes to the text file and pull on other machine.
- akaralar 2y agoyou can export and import iTerm settings as well. Or you can point iTerm to a look for config in a particular folder (dropbox etc)
- _blz2 2y agowezterm + ssh + zellij on remote machine has been working like a charm for me.
- satiated_grue 2y agoI don't understand why more of SecureCRT's features don't get implemented into FOSS terminal emulators. If nothing else, just being able to have clickable buttons that I can configure to paste text is IMMENSELY useful. Combine a few good click-to-paste-string buttons with a bash for loop and ssh, and you're a long way to a quick and dirty Ansible replacement for those multi-system tasks.
- lionkor 2y agoUsed it, its everything you need most likely. And it somehow managed to become popular and advertise itself without the "written in Rust" tagline. I like that. Ofc its written in Rust.
- eviks 2y agoOfc there was a tagline. Check the announcement post in the repo's readme, it's your typical "blazing fast Rust" > Alacritty is a blazing fast, GPU accelerated terminal emulator. It’s written in Rust and uses OpenGL https://jwilm.io/blog/announcing-alacritty/ https://jwilm.io/blog/announcing-alacritty/
- kahlonel 2y ago[dead]
- _lvbh 2y agoAlacritty doesn’t do well with modifier keys and a lot of keyboard shortcuts don’t work in neovim by default. I recommend using foot instead.
- yjftsjthsd-h 2y agoCan you give an example? I've never hit that, but I might not be using it that hard
- _lvbh 2y agoAny shortcuts with control/alt don’t work unless you add keybindings to the config with escape sequences. Some distros give you the config by default but that breaks other things such as jumping to the start of a command with ctrl+a
- Fluorescence 2y agoThat is not my experience: ctrl-a jumps to the start of a command. I've not seen any issues with Ubuntu, tmux and fish. All tmux and fish keyboard shortcuts have worked without any alacrity configuration (that I can recall). My tmux config adds shortcuts to behave like a conventional tabbed window without any issues e.g. ctrl-n (new tab), ctrl-w (close tab), ctrl-page-up/down to navigate tabs.
- hkwerf 2y agoI've been using both for a while and cannot remember having any issues like this.
- asdwar532grf 2y agoNever had any issues with alacritty/neovim, but foot is much faster. Sadly no ligature support though: https://codeberg.org/dnkl/foot/issues/57 https://codeberg.org/dnkl/foot/issues/57
- la_oveja 2y agoi do prefer kitty[0] if i want a modern terminal emulator [0] https://github.com/kovidgoyal/kitty https://github.com/kovidgoyal/kitty
- crizzlenizzle 2y agoNice, I like lightweight and modern terminal emulators. Just installed kitty and compared it in a sloppy way to foot [0] (by running `xxd /dev/urandom` side-by-side) and foot appears to be faster. [0] https://codeberg.org/dnkl/foot https://codeberg.org/dnkl/foot
- Ferret7446 2y agokitty is written in Python, which instantly lowers the ceiling for performance by an order of magnitude. I discarded it as an option in the past: the most important requirement for me is the terminal cannot crash, and I can't trust a Python program to do that.
- FireInsight 2y agoI like Kitty graphics protocol, but never used it. Didn't know Kitty was python, always assumed it was compiled due to the reported speed benefits. Maybe I'd benefit from switch to foot since my setup is mostly wayland nowadays, extra startup speed would be great. Foot seems to also have working terminal clipboard integration with `micro` too.
- lima 2y agoMuch of kitty is written in C, particularly the (very fast) rendering pipeline.
- majoe 2y agoFoot is really great. I often open terminals for executing single commands, so I appreciate its short startup time
- anticodon 2y agokitty is nice, but it has a problem with garbled unicode sequences (e.g. if you accidentally cat a binary file to standard output). It sometimes hangs up for a minute or two on seeing invalid unicode sequence. At least that was the case for several years, and so I switched to alacritty because it doesn't have this problem.
- perth 2y agoThis project looks very cool. Worth noting however that it doesn’t have tabs.
- karlshea 2y agoI just tried it and tabs are working at least on Mac.
- jabwd 2y agoIt has tabs on macOS at least, but it f alls in the classic pitfall of cross platform applications where they made the mistake of not using the OS to resolve keystrokes. So my keyboard layout doesn't work with the app at all. I've identified the issues but making a pull request for it and testing it all is a bit of work I haven't gotten round to yet.
- amne 2y agoI gave it a shot on windows with wsl2. I hit some weird config gotchas because they switched to toml but didn't think it through too much (not a good sign). Then I just could not get my shortcuts to work with tmux and nevim. I use M+pgup/pgdn for session nav and S-left/right for window nav and instead of trying to break my config to get them to work I just gave up. I didn't see any benefits so went back to Windows Terminal.
- asabla 2y agoHad similar issues as well. I use a Nordic layout for my keyboard (which includes åäö). These extra characters were a pain to bind certain key combinations to.
- evilroot 2y agoBeen using alacritty for few years but moved to wezterm recently.
- CowOfKrakatoa 2y agoWhy did you move?
- platzhirsch 2y agoSince it's the year of Wayland desktop I prefer foot https://codeberg.org/dnkl/foot https://codeberg.org/dnkl/foot Renders faster than Alacritty or kitty.
- Maledictus 2y agobut it is also the year of Rust, that's why I, in 2024, prefer Alacritty. ;)
- red2awn 2y agokitty is being rewritten in Rust from C.
- SushiHippie 2y agoSame and it also opens faster, which is important for me, as I use a tiling window manager and open/close terminals fairly often instead of using something like tmux.
- zokier 2y agoAlacritty, foot, wezterm, kitty form this block of "nextgen" terminal emulators. I do find them difficult to differentiate. I personally use foot as my daily driver, but that is just because alacritty happened to have some issues with nvidia drivers (bleh). But I chalk that up to nvidia, not alacritty.
- eviks 2y agowezterm is the most flexible with its lua config, big differentiator Then being x-platform is also an easy differentiator of the 2
- imbnwa 2y agoCan't live without Lua config
- d0mine 2y agoI haven't stumbled upon any issues with alacritty + nvidia (lucky, perhaps). Though, mostly, I use vterm in emacs (unmatched customization & integration)
- ploum 2y agoAss I use Offpunk to surf the web and Chafa to display picture, my main concern is displaying images using the sixel protocol (or, in the case of kitty, its own protocol). Last time I tried, Alacritty didn’t support sixel (while even xterm supports it)
- padthai 2y agoFoot is Linux only and lightweight, take it as a Wayland version of Xterm with good defaults and almost no emulation options. The rest works in all major OS. Alacrity is all about GPU rendering speed at the cost of everything else (at some point it did not have scrollbars/history). Kitty and Wezterm are packed with features and more difficult to differentiate. They are all good though.
- reyqn 2y ago
- botanical 2y agoDevelopment of features are a bit hindered in Alacritty; kitty and wezterm on the other hand, have useful features and have been really good. Personally, I'm using kitty for the past month.
- keyle 2y agoIf you're on a mac, wouldn't be best to adopt iTerm2 with its metal rendering? Isn't OpenGL deprecated on macOS?
- fathyb 2y agoAlacritty uses OpenGL ES 2.0 which is not deprecated. It's shipped OOB in macOS through the ANGLE project by Google, mainly because Safari depends on it to provide WebGL support (it's kind of OpenGL ES for JavaScript). ANGLE translates OpenGL ES so that it runs on top of Metal, D3D, or desktop OpenGL. OpenGL ES 2.0 is probably the most portable GPU rendering API there is, it pretty much runs anywhere. That said, using Metal or D3D should definitely bring noticeable improvements, especially when it comes to memory bandwidth (eg. on Metal no need to send pixels to the GPU memory for atlas-based text rendering).
- deleted 2y ago[deleted]
- roydivision 2y agoCurrently my terminal of choice on WSL, coupled with tmux. Works ok, a few bugs, doesn't work well with neovim, character artifacts remain sometimes. But on the whole steady and reliable.
- eternauta3k 2y agoOne day we'll have a perfect tabbed terminal without tmux bugs. I've been through a bunch of candidates already, Tabby seems to sort of work (mostly).
- karolist 2y agoI tried it for a few years a while back on macOS but it somehow felt off, I don't remember why, something to do with mouse selection. I went back to iTerm2 and that's that, you couldn't view images with feh and similar tools in macOS terminals for some reason so I had no reason to stay. Out of interest, why would I want anything faster than iTerm2 anyway? Never felt that my terminal is slow.
- jwells89 2y agoOn Mac, I have yet to find anything that can top the combo of Apple Terminal with the now-defunct Visor/TotalTerminal[0] haxie. Apple Terminal meets my needs well enough and TotalTerminal’s implementation of quake-style dropdown was the smoothest I’ve encountered on any platform. iTerm2 has a dropdown window that can be enabled, but it’s surprisingly much more janky than TotalTerminal’s was despite being a first-party feature instead of a hack. [0]: https://totalterminal.binaryage.com/ https://totalterminal.binaryage.com/
- ngcazz 2y agoInput and rendering latency are much better in Alacritty than iTerm. If you spend a lot of time editing large files in Vim it's certainly noticeable.
- jr-14 2y agoI've had the same issue with iTerm using neovim, rendering latency was just too much iTerm. However instead of Alacrity I've opted to use wezterm as it's nice to use Lua for both neovim and my terminal config.
- Myrmornis 2y agoThe main problem with iTerm2 is that the configuration is not via plain text and so it's impossible to keep track of your config in git. (I did try the dynamic profiles feature for a couples of years, but it's not the same). I use alacritty now, but I'm sure wezterm etc are also great.
- 2y ago
- dsincl12 2y agoMy shoutout to Ghostty (by Mitchell Hashimoto & community). Although still in beta, hands down the best terminal I've used on both Mac and Linux.
- swah 2y agoIs there anything "life changing" about it, or more like "out of my way" quality?
- YorickPeterse 2y agoIt's more the latter: Ghostty doesn't introduce any groundbreaking features, instead it's a bunch of incremental improvements/nice-to-have's.
- deadbolt 2y agoDo you know the dev, or is there a waitlist somewhere where I could possibly get access to try it out? I couldn't locate one on their site.
- wonger_ 2y agoThe closest thing is a Discord server linked in this post: https://mitchellh.com/writing/ghostty-devlog-003 https://mitchellh.com/writing/ghostty-devlog-003 Beta invites are nearly random, though.
- monsieurbanana 2y agoIt seems to be a private project that might one day be public, a bit of a non-starter if you can't get access to it.
- Veraticus 2y agoStill no ligature support. There are better alternatives out there — kitty is what I chose.
- executesorder66 2y agoWhy would you want ligatures? I would prefer to see text as it actually is, not combining multiple characters into one. I can't trust what I am seeing if I know the text might be something it is not.
- alpaca128 2y agoSome writing systems like the Arabic script require ligatures for correct text rendering. I think supporting the third most widely used language worldwide is reasonable. Also ligatures are optional, you aren't affected if you don't like the feature.
- executesorder66 2y agoI was not aware of that, thank you. I guess I'm surprised that such a crucial feature isn't standard in everything if you can't even properly display a common language like Arabic without it.
- eviks 2y agoThink you can still trust what you're seeing because the char width is different, so it's not hard to differentiate Some prefer text to be seen as it was meant to be, so that === ugliness that can't be fixed at the source due to bad unicode support can at least be fixed at the output
- intothemild 2y agoExactly the same terminal, and the same reason for why I use kitty.
- jhchabran 2y agoSame I love my ligatures to death. And there are some interesting goodies. I find the author take on `tmux` being unecessary interesting, albeit it's a quite divisive opinion. Nevertheless, it's refreshing to see the status quo being challenged. But on the other hand, while I totally understand why https://sw.kovidgoyal.net/kitty/faq/#i-get-errors-about-the-terminal-being-unknown-or-opening-the-terminal-failing-or-functional-keys-like-arrow-keys-don-t-work https://sw.kovidgoyal.net/kitty/faq/#i-get-errors-about-the-... exists, it's quite annoying to handle that, as we often take this bit for granted. It makes sense from a tech pov, but not from a product one. It's a choice and I respect that. It didn't prevent me to use Kitty for years.
- ctenb 2y agoI tried to use alacritty in the past, but moved to wezterm eventually, because of it's superior customizability and features.
- TheSmoke 2y agosame here. it's been around 2 years since I moved to wezterm. pretty happy with it.
- Sammi 2y agoWezterm gives you basic stuff like scrollbars that Alacritty refuses to do: https://github.com/alacritty/alacritty/issues/775 https://github.com/alacritty/alacritty/issues/775
- yoyohello13 2y agoI'm glad Alacritty is so conservative with adding features. There are plenty of options for "feature packed" terminals. I use tmux for scrollback, panes, tabs, etc. So I'm happy there is an option for a barebones GPU terminal.
- keefle 2y agoDid you experience any performance degradation when using alacritty + tmux vs alacritty alone?
- deleted 2y ago[deleted]
- enthus1ast 2y ago'terminator' anyone?
- h4kor 2y agoYes!
- platzhirsch 2y agoLoved that one! At least until I discovered tmux and then later on tiled window managers.
- weinzierl 2y agoAlacritty is cool and deserves the attention but I think wezterm totally underrated and does not get enough.
- CowOfKrakatoa 2y agoWhy? Did you try both and what did you think?
- weinzierl 2y agoYes, I did, but it's been a while and I don't remember off the top of my head the details why I settled with wezterm. What I can say is, that I find wezterm configuration quite pleasant. Overall I think they are in the same league but Alacrity gets a lot more attention and that's why I like to remind people that there is wezterm too.
- ikornaselur 2y agoI used Alacritty for couple of years, before switching to WezTerm almost a year ago. There were two reasons for my change, the Alacritty devs are really obsessed with speed, which is good, but.. means less features, even _optional_ features like ligatures. I like ligatures, and because they slow down the rendering slightly the alacritty devs do not want to include it[0] The other reason is that I wanted a way to have my terminal have two different colorschemes, light for the day and dark for the night. It seems that it might be supported now with alacritty[1]? But it does also seem like you need an external script still to do it.. I went with WezTerm because it supports both natively, everything else feels the same TBH, but the fact that WezTerm has more features that are optional, is what I liked. [0] https://github.com/alacritty/alacritty/issues/50 https://github.com/alacritty/alacritty/issues/50 [1] https://github.com/alacritty/alacritty/issues/6578 https://github.com/alacritty/alacritty/issues/6578
- bjoli 2y agoIt says to use a multiplexer for tabs and splits, but doesn't that negate some of the performance claims? Tmux and screen are pretty notorious for slowing things down.
- grawp 2y agoI use window manager for tabs as it should be. No need for some stinky multiplexer.
- Lio 2y agoI think it's unfair to label tmux "stinky". It is slower, that's true, but so many times I've had to restart my terminal or I've quit it accidentally and tmux has saved my bacon. Performance is adequate (for me), it's cross platform and gives me multiple cut/copy buffers.
- gorgoiler 2y agoOh that’s very interesting to hear about tmux increasing latency. I’ve not heard this before but now you mention it, it seems obvious. Could you elaborate?
- soraminazuki 2y agoTerminals emulators aren't aware of tmux panes, so it'd likely needs to redraw the whole thing if even a single pane changes.
- bjoli 2y agoTmux scans every character at least once.
- mry2048 2y ago[dead]
- Shorel 2y agoModern terminal emulators not being compatible with the TERM environment variable seems insane to me. Yes, it can be unreliable at first, when your software is new. This is expected, and it changes when people start using your software. But if you don't implement compatibility with this env variable, then you are the reason it will not be reliable in any point in the future.
- lupusreal 2y agoBut... Alacritty does support and use the TERM variable. What you talking about? TERM should be set to alacritty, which has been in terminfo for years.
- izoow 2y agoI've been using Konsole and I only relatively recently found out how powerful its tab/split management is. You can drag and drop tabs between different windows, and you can drag and drop panes between different tabs to create splits, which also works even between tabs in different windows.
- fr4nkr 2y agoI've grown dissatisfied with it, but I can't be assed to switched to anything else since it's the only terminal emulator that renders fonts well, at least on my machine.
- squigz 2y agoWhat problem is having a "fast" terminal solving? I've been using urxvt for years and have never really found it to be slow. Where might I notice a difference with these "modern" "GPU-accelerated" terminals?
- qwertox 2y agoI use Cygwin's mintty on Windows, and the result of `ls` is not instantaneously there. If the windows is resized to big and there are lots of files, I can see each filename get printed out one by one. In Alacritty it shows the entire result immediately. Also, you may have commands or scripts which print out a lot, like which file in a huge list is currently getting processed, where the entire execution time of the command depends mostly on how fast the terminal is able to print those messages.
- sim7c00 2y agoalo of gpu accelearted terminals are actuallly very slow. because they add silly features. basic text i/o is almost always slower. even on a good gpu! :/
- ordu 2y agoCompilation of a large project on a multiple cores can be slowed down by a terminal. Especially if the main language of the project is a fast compiling C. I'm not sure that urxvt can be a bottleneck, and if it can you'll not be able to notice the difference with alacritty without measurements, but with others it can be noticeable without any special equipment.
- predang 2y ago[flagged]
- grnakgi 2y agoWith stacktraces the size of a bible program execution actually slows down if my terminal isn't outputting it fast enough
- ubercore 2y ago
- rsp1984 2y agoAt the risk of missing something completely obvious: where's the "emulator" part in it? What is it emulating? It looks like a terminal (no emulator) to me. Not trolling, just trying to learn.
- paholg 2y agoLike all similar software, it's emulating a physical terminal: https://en.m.wikipedia.org/wiki/Computer_terminal https://en.m.wikipedia.org/wiki/Computer_terminal.
- Evidlo 2y ago"Terminal" used to refer to a dumb computer that would send user input to a remote mainframe and receive instructions for drawing to the screen.
- 5e92cb50239222b 2y agoIf you can get through this, I highly recommend it. https://www.linusakesson.net/programming/tty https://www.linusakesson.net/programming/tty
- pleasecalllater 2y agoThis is a terminal https://en.wikipedia.org/wiki/Computer_terminal#/media/File:Televideo925Terminal.jpg https://en.wikipedia.org/wiki/Computer_terminal#/media/File:... The software is just emulating the terminal behavior. https://en.wikipedia.org/wiki/Computer_terminal https://en.wikipedia.org/wiki/Computer_terminal
- KingOfCoders 2y agoCouldn't get it to nicely play with WSl, I now use Tabby
- XorNot 2y agoWhat's the energy use of these accelerated terminals like? Does using the GPU reduce power use on mobile?
- jmacc93 2y agoI use Alacritty and really like it :). I use it primarily for scripts and other cases where I want a terminal to open extremely fast. Some day I'll get around to finding a way to easily use tabs in it and I can replace Terminator (which I also really like and use, of course; but its a lot slower to open)
- serial_dev 2y agoI went with learning tmux, it's the industry standard, it has tabs (windows), you can customize it. Although the learning curve was a bit steeper than what I wanted just to have tabs, it works reliably unlike other things I found.