A terminal emulator that I'm dogfooding daily.
Because it's cool and that makes me cool.
Honestly? Yeah mostly, but also because I got a HiDPI laptop and was dismayed to discover that every terminal emulator I found acceptable (didn't require me to build a bunch of stuff I didn't already have) wouldn't scale fonts based on the DPI of the current screen. Given that the couple of Qt applications I use like qutebrowser just worked, this seemed like a reasonable direction.
First off, this is a pet project. So, yeah, while I did look around a bit, I really just wanted something to hack away on. However, if you insist:
- Anything libvte based
- st would mean I'd have to maintain (or hope someone else did) a bunch of things I want as basic features. I did mock up a font scaling patch here.
- Anything QTermWidget based looked like I'd be mucking with a lot of stuff libvterm solves already.
- rxvt-unicode is massive and I don't even know where to start trying to patch in dpi scaling.
At this point, just taking less than 100% of an entire core and not littering artifacts all over the place is pretty sweet. But if we're going to get ambitious... Well, you should know I use vim.
Future:
- Visual mode for search and text selection.
- Position marks.
- Mouse double/triple click selection.
- Proper configuration of colors and what not using XDG_CONFIG_HOME.
Working-ish now:
- The stuff you'd expect from a basic terminal emulator.
- Behavior roughly equivalent to urxvt, st and pangoterm.
- Quick URL matching with copy to clipboard.
- Mouse scroll, selection and paste.
It's good enough for neovim and I think they'll be around for a while.
But you vendored it?
Yeah, I know. This will be one of the first things I'll get rid of if sff ever goes beyond a toy project.
git clone https://github.com/jsbronder/sff
cd sff
git submodule update --init
mkdir b
cd b
cmake ..
make
bin/sff