<dnkl>
sterni: yup, but since they're last, they can be completely omitted, and their default values will be used
Arnavion has joined #foot
yyp has joined #foot
yyp has quit [Remote host closed the connection]
yyp has joined #foot
yyp has quit [Remote host closed the connection]
yyp has joined #foot
<sterni>
dnkl: only skimmed over that but sounds like you're supposed to just remember the tolerance values via the color space ID?
<dnkl>
sterni: don't have that in my head...
<dnkl>
what are you working on?
yyp has quit [Remote host closed the connection]
<sterni>
dnkl: me and a friend are writing a terminal emulator prototype which is not cell grid based
<sterni>
so basically a TERM=dumb emulator which intentionally does not support TUI
<sterni>
me and him were kind of frustrated with the glyph width problem for different reasons and wanted to see how viable it is to just not support everything that causes problems regarding that
<ifreund>
that sounds like it might be useful for RTL languages
<ifreund>
or well, the flexibility that approach gives would be
<yyp>
Reminds me of Plan 9's terminal
<sterni>
ifreund: yeah the idea is to use gtk to have a reasonably correct font rendering and text editing implementation available
<sterni>
yyp: that's no coincidence :)
<dnkl>
sterni: interesting! what kind of escapes will you be supporting?
<sterni>
dnkl: I'm currently finishing an implementation of the SGR sequences for which I think we'll be able to support almost all of them (for some I'm waiting for Gtk 4 to make things easier for me)
<sterni>
then we'll probably want to have some OSC sequences like clipboard related stuff, window title etc. and bracketed paste
<sterni>
all the cursor operations are difficult: we definitely want to implemented carriage return and backspace
<sterni>
the former als already almost done
<sterni>
but the cursor positioning stuff won't work as its grid based
<sterni>
a development approach we have taken so far is to just go about our business with the terminal emulator and see what stuff doesn't work like we would like to and then implementing it
<sterni>
often this requires an ugly hack, for example we set the terminal size via termios because otherwise ls(1) is completely broken
<dnkl>
sterni: backspace alone can be "interesting" when multi-codepoints graphemes are involved...
<dnkl>
ls probably only needs the width?
<sterni>
the terminal size is of course an approximation which is only somewhat accurate for monospace fonts
<sterni>
dnkl: yep, pretty sure
<sterni>
dnkl: oh yeah, I think we'll just stick to Gtk.TextBuffer's notion of a “char“ for now
<sterni>
so backspace will delete one grapheme cluster
<dnkl>
sterni: that makes sense, given what you're trying to achieve
<dnkl>
(and it's also what foot 1.8.1 does with the default settings)
<sterni>
I wonder if there are any wild edge cases by now that using unicode characters or even emojis in progress indicators inclis has become more popular
<sterni>
I guess if they use carriage return its not really likely to cause any issues
<dnkl>
sterni: I'm sure there are applications out there that has implemented various workarounds to make things like that work. Wouldn't surprise me if they start breaking