10 ms·
Foot – A fast, lightweight and minimalistic Wayland terminal emulator
- jeffbee 3y agoI appreciate that their benchmarks are executed in a peak-optimized build. But, it leaves open the question of whether anyone actually enjoys that peak performance, because all the users install it from unoptimized distro packages.
- Arnavion 3y agohttps://gitlab.archlinux.org/archlinux/packaging/packages/foot/-/blob/17f06b09df7a15161bf7acf75f641c3c0ecfacaf/PKGBUILD#L34-39 https://gitlab.archlinux.org/archlinux/packaging/packages/fo... https://gitlab.alpinelinux.org/alpine/aports/-/blob/e587354487f68064e0fdcbd59e95cb3d253c7a4c/community/foot/APKBUILD#L55 https://gitlab.alpinelinux.org/alpine/aports/-/blob/e5873544... https://salsa.debian.org/birger/foot/-/blob/13017bc992f66cc5c3d9cd4443655f006bb41451/debian/rules#L16 https://salsa.debian.org/birger/foot/-/blob/13017bc992f66cc5...
- jeffbee 3y agoVery cool. It must be a credit to the developer for contributing an easy-to-use PGO target.
- deleted 3y ago[deleted]
- qudat 3y agoBeen using `foot` for a year plus at this point. No issues, works great, very happy!
- ta988 3y agoSame here works well, but I am eyeing others for image support at some point.
- ireallywantthat 3y agoUse kitty. Works great for me.
- ta988 3y agoSo i lokked a bit more and the sixel support seems to be decently good in foot (and i need something that works in tmux) you can even play doom or videos at 30fps https://codeberg.org/dnkl/foot/issues/481 https://codeberg.org/dnkl/foot/issues/481
- kitotik 3y agoFoot has sixel[0] support. Is there more robust image support in Kitty and others? [0] https://en.m.wikipedia.org/wiki/Sixel https://en.m.wikipedia.org/wiki/Sixel
- fbdab103 3y agoWhat is your workflow where you use images in the terminal?
- ta988 3y agoImages in vim org notes with neoorg.
- walteweiss 3y agoIs it some replica of org-mode? Could get it after a brief exploration, there is nothing about .org files, only .norg
- ta988 3y agoThey have their own format yes.
- lordgrenville 3y agoThis made me curious about image support in the emulator I use (iTerm2), and I learned that it has these cool utilities[0] that (inter alia) add aliases for imgcat and imgls, which are exactly what they sound like. [0]https://iterm2.com/documentation-utilities.html https://iterm2.com/documentation-utilities.html
- eddythompson80 3y agoTbh, I never ventured outside of Konsole. Never felt I was missing something or was limited by performance or anything beyond what the stock Konsole offered.
- mxuribe 3y agoI feel the same...and often, when i feel that, then maybe i'm not the target audience for said tool/app.? (Which is not bad either way, simply that as good as the tool/app. might be, its just not for me.)
- zokier 3y agoKonsole is decent if you are running kde, but I'd guess majority of people don't
- eddythompson80 3y agoThat makes me sad :/ Though now that you mention it, I recall running Tilix back when I used to run gnome. It’s been quite a few years.
- grayhatter 3y agoit makes you sad that different people do things differently from you?
- eddythompson80 3y agoNo, it makes me sad that I wish more people learned about how awesome kde is.
- stouset 3y agoI used KDE and absolutely loathed it. Admittedly this was fifteen years ago, but I was blown away by the developers’ inability to make any actual design decisions, instead punting literally everything to a mountain of configuration options. Case in point, the taskbar system clock. There were no fewer than six full tabs of options to customize its behavior, including the ability to use Swatch Internet Time. Everything else bought into this philosophy too, to the point where I have to believe its users spend more time configuring it than actually doing anything useful or productive. Hard pass.
- souvlakee 3y agoLast opening for me was Rio terminal, faster then WezTerm.
- dizhn 3y agoRio looks decent. Far fewer features than wezterm though. Although unlike foot, it does have tabs. wez also supports x11.
- throwaway02y 3y agoI'd love to use Wayland all the time, and we are almost there, but just so many quirks everywhere (especially with outdated Electron apps).
- bravetraveler 3y agoIt really is nice once managed - it's hard to explain, but everything is very smooth. I would guess the display synchronization/mixed refresh rate support is to thank. Some Electron-based things and Steam are the main holdouts I've noticed. I suspect the Electron things at-large will be sorted out before Steam... they simply need to rebase while Valve has to modernize their libraries (ie: vgui)
- c-hendricks 3y agoSteam recently underwent a large GUI refresh, vgui has officially been retired.
- bravetraveler 3y agoThat's just one I could name from memory - if you run 'xlsclients' you'll still see Steam isn't Wayland. I was very hopeful that the redesign would be sufficient; it was not. Thank you for the information, though - important to be current
- anotherhue 3y agoI enjoy foot very much in conjunction with sway.
- ta988 3y agoThere was this comment in another submission today that is worth a read on why some terminals are faster on some tasks and not others https://news.ycombinator.com/item?id=37623669 https://news.ycombinator.com/item?id=37623669
- aquova 3y agoI've been using Foot for a while now, having switched to it from Alacritty. I like it. I don't really require much from my terminal other than for it to "feel" snappy and to have some cosmetic customization, and from my own playing around, it does both well.
- SamuelAdams 3y agoI tried it for a week or so on Ashai. It was super fast. However the lack of tab support ended up being a dealbreaker. Multiple instances are ok, but I prefer tabs at the top of my application.
- SushiHippie 3y agoI suppose foot works best with a tiling window manager, it's also very often the default with swaywm
- walteweiss 3y agoWhich allows you to do tabs (with wm). So it has tabs if you really need them. Also foot can be used as a server and client, which I use all the time. It allowes for instant start and less memory consumption, when you need many terminal windows open.
- all2 3y agoIt depends on what you want to manage your tabs. For example, a good tiling window manager will handle tabbing for you. In i3 Meta-w will swap into tabbed mode.
- aorth 3y agoI use tmux (and before that, screen). Same paradigm as tabs, with a few benefits. Might work for you unless you are really set on actual tabs.
- teo_zero 3y agoI've never understood the love for tabs. They stop you from seeing two terminals simultaneously. I mean, we invented windows exactly for that, didn't we?
- Piraty 3y agohere's a good read about terminal emulators, including speed benchmarks and discussing security aspects: https://lwn.net/Articles/749992/ https://lwn.net/Articles/749992/ https://lwn.net/Articles/751763/ https://lwn.net/Articles/751763/
- chrsw 3y agoIt's minimalistic but it supports animated gifs?
- ploum 3y agoThis is sixel. It’s kind of a standard and supported by a growing number of terminals, including xterm (but you need the VT-340 profile). This is also really useful. I use it in Offpunk to display pictures when browsing the web.
- ignorethefacts 3y agoFoot has an opt-in server mode so that if you are used to running multiple terminals at once, you can save a little memory. Great for a low-end device. Of course, if the server is closed/crashes, you lose all the client terminals which can be annoying.
- WhyNotHugo 3y agoDoes the server ever crash? I’ve been using foot in the “normal” mode and I don’t recall it ever having crashed.
- walteweiss 3y agoI use it this server-client mode for a couple of months at least, and I never experienced any crashes. Not that I see a huge difference, just it fits my workflow better. I do have many many terminal windows open at the same time, but most of them aren’t busy doing something. They are either some kind of app (e.g. ranger) or a space I usually come up to do something specific (e.g. this workspace I use for sshing that server and that workspace to do things locally).
- nikp123 3y agoUnfortunately it tends to do so randomly (was using foot for like 3 or so years by now). And in the end you'll only ever end up saving single digits of RAM. I suggest using server mode *only* on a RAM constrained device like a SBC or a embedded device (Tablet running Linux). PS: i am issue number 3 hueh
- cout 3y agoAs someone who has dabbled in terminal emulation (I was the maintainer of Console Telnet for Win32 twenty years ago), I have respect for someone who takes the time to optimize a terminal emulator by building a fast parser and being careful with screen updates. That used to be the only way to make a graphical program fast, but these days hardware is so fast you can render an entire scene before the next screen refresh and still have cycles to spare. As long as you initiate rendering early enough, it's hard to go much faster. I'm curious how foot compares to older fast terminal emulators such as Eterm, xterm, and rxvt. I think libvte is neat (anyone can write a terminal app now) but is it resulted in terribly slow programs like gnome terminal. Before that terminal emulators tended to be much faster -- they had to be, because hardware was so much more limited.
- doublepg23 3y agoIt’s interesting you call out GNOME Terminal, it’s always been my favorite terminal.
- jampekka 3y agoI don't think I've ever encountered a problem where terminal emulation would be too slow. What I do have encountered are terminal emulators that go bonkers and require some arcane configuration magic to figure out what to emulate. GNOME terminal works and looks pleasant to boot. In fact it works so well that I almost never think of it although I use it all the time.
- jeffbee 3y ago> I don't think I've ever encountered a problem where terminal emulation would be too slow. You don't notice it until you get into a situation where the terminal (emulator) insists on showing you everything flying by, instead of just skipping to the end, in which situation you may be waiting a really long time. Some emulators also cannot deal with, say, 1 million lines of scrollback and searching.
- jampekka 3y agoThat I've encountered a few times but tail or less deals with it fine.
- ayoisaiah 3y agoThis certainly looks interesting. I've been using Kitty for a while and it works great and supports so many features. It would be nice to see how it compares to Foot in terms of speed. I'm also curios about Ghostty, the in-progress (but currently private) terminal from Mitchell Hashimoto. https://mitchellh.com/ghostty https://mitchellh.com/ghostty
- WD-42 3y agoUnfortunately there is no support for ligatures. A good programming font like fira or source code pro makes for such a quality of life improvement. At least easier on the eyes. It seems that many terminal emulators can’t or won’t support them, because they are hard to render properly. Sticking to wezterm for now.
- pkulak 3y agoIn the age of Vim being a full IDE, these kinds of things only become more important.
- maccard 3y agoVim is a not an ide. Intellij with java is worlds apart from any vim setup I've ever seen in the wild.
- deleted 3y ago[deleted]
- WD-42 3y agoThat’s because writing Java all but requires a giant, heavy ide. Like IntelliJ, eclipse or netbeans, and always has. Vim + lsp for basically any other sane language is good enough.
- ris58h 3y agoIf a text editor is enough for some programming languages it doesn't mean that the editor is an IDE.
- 5e92cb50239222b 3y agoYou can keep telling yourself that, it doesn't change the fact that IDEA beats any plain text editor for working with code in any language I've ever seriously tried. It's not just Java. I used vim/neovim for about a decade on and off, and then went all in on neovim for about a year (because I honestly wanted to see what's on the other side), forcing myself to believe that lie in spite of my experience screaming the opposite the whole way, but eventually came back to IDEA because it's not “good enough” if you know both of them well. One works with code on the AST level, understands the whole project at once, and is developed as a monolithic project (not really — IDEA is very modular and is built as separate components, but they integrate so well you don't feel it). The other works with text in currently open files and has smart features tacked on the side through language servers of varying quality (the best of which have 10% of functionality supported by a comparable IDE). The difference in how they behave and what you can accomplish (I repeat, if you know both of them well) is considerable. There are lots of things to criticize in JetBrains' tools (terrible performance, well known bugs go unfixed for decades), but it's not just a glorified text editor. Also, Java does not "require a giant IDE" any more than other languages do. The language — because of its static typing and good support for reflection — lends itself to writing excellent autocompletion and refactoring tools. Same for C#, F#, Kotlin. Most other languages simply don't have them, not that they don't need them — they just generally cannot have them because of heavy reliance on runtime “magic”, or small user base, or exceedingly complicated analysis (even JetBrains “failed” here — CLion is a quite poor experience compared to Rider/IDEA), or other reasons.
- dundarious 3y agoWhen I used a Raspberry Pi 4 with 64bit kernel+userspace and Wayland (sway), foot was the only native terminal that didn't eat up lots of CPU. I presume some kind of OpenGL vs OpenGL ES issue.
- 3np 3y agoSimilar setup, I recall apart from foot wezterm was also fine.
- Topgamer7 3y agoMy only complaint is that double clicking links only selects up until the //
- znpy 3y agoHonest question: as somebody using the terminal mostly for things like ssh, screen and emacs in screen… why should i care about terminal speed?
- stonogo 3y agoSetting aside the fact that it's no fun waiting around when you accidentally cat a gigabyte log file to stdout, a more efficient terminal has two main advantages: it runs better on low-end hardware, and it uses less power to do the same job. If you have a fast computer and don't care about battery life, there's no real reason to switch.
- GuB-42 3y agoA faster terminal feels better. It is the kind of things that are hard to point out but enough to feel the difference side by side. I definitely noticed it when I switched from terminator to kitty. Now the race of which one will cat a large file the fastest is a bit pointless, but it should be fast enough not to add more than a frame of latency for regular use.
- gjvc 3y agothese sort of questions are best answered by trying first-hand, not pondering.
- NooneAtAll3 3y ago> if you pronounce the foo part of foot the same way you pronounce foobar, then foot sounds a lot like the Swedish word fot wait... foo in foobar isn't pronounced like foo in foot??
- seanthemon 3y agoIt is. Surely it is, right?
- AndyKluger 3y agoNot in New York, at least. Foo rhymes with Blue and Flu, while Foot rhymes with Soot and Put (same vowel sound as Book, Look, Cook, etc.).
- Hemospectrum 3y agoIn most English dialects, <foot> is pronounced /fʊt/, not /fut/. I’m not aware of any specific examples where <foo> and <foot> have the same vowel.
- lambda 3y agoWhat is your native language, and if English, what dialect? For me, the "foo" in "foobar" has the same vowel as "toot", which is different than "foot". Do "toot" and "foot" rhyme for you. I speak American English, from Boston/New England but without a strong Boston accent.
- 3836293648 3y agoFoo is ooo like in ooze Foot is fuht, like good
- kookamamie 3y ago> I'm bad at names. Lame excuse. Try at least.
- skyfaller 3y agoI was very impressed with Foot on my MNT Reform, where I was having trouble getting Alacritty to work (hardware issues too difficult to overcome, and I say that as someone who was able to apply a patch to make Alacritty run on my Pinebook Pro before the mainline version supported the hardware). Foot installed and ran like a breeze, and never felt slow even with pretty minimal hardware.
- WhyNotHugo 3y agoA big upside of foot is it not being GPU accelerated. It works in situations were hardware support is missing. Back when I used alacrity I kept foot installed for emergencies where I’d broken hardware acceleration.
- BaculumMeumEst 3y agoI love this terminal but it had a lot of flickering issues when I would run it on sway with nvidia drivers. Ended up just going back to xorg, I use kitty there.
- deleted 3y ago[deleted]
- p4bl0 3y agoHow do TUI software like nano or tmux that support mouse input behave under Wayland? Do mouse inputs work as they should? Has someone here who's using Wayland give it a try? I have no idea how ncurses (I guess) interacts with the mouse through the terminal so I don't know if it relies on X11.
- probotect0r 3y agoI use Wayland and haven't noticed any problems with mouse input in tmux while using the Kitty terminal.
- p4bl0 3y agoThanks for your answer :) !
- sammko128 3y agoWell, all the terminal emulator needs for this is the cursor position inside the window, which Wayland provides. Nothing X11 specific here. Ncurses and similar just ask the terminal emulator to provide mouse click Escape codes.
- p4bl0 3y agoThanks for the explanation! :)
- naruhodo 3y agoIt's a bit meh, IMO. Doesn't honour my dark theme settings. Doesn't support horizontal or vertical splitting, or even tabs. I'll stick with my very non-minimalistic Terminator.
- kilolima 3y agoI'm limited to choice of terminal emulator due to having a hard requirement for quake style one-keypress dropdown. Unfortunately, in pursuit of cross-platform compatibility the *critties feel like this is a desktop environment problem, and the last gen of console apps that can do this are getting a little long in the tooth and starting to break in things.
- WhyNotHugo 3y agoProbably any terminal emulator works fine for this, but you need compositor support so that the compositor can do the sliding down part.
- gjvc 3y agoneeds panes like tilix
- tamimio 3y agoIt’s refreshing ti see an open source project hosted on a git other than github!