Hello, aerc (via the libexec colorize) uses the OSC 8 sequence to mark up URLs for the terminal emulator. This seems to be currently broken, I'm investigating with upstream to understand if this is an aerc or tcell-term bug or something else. However, for the time being I'd propose to just disable the OSC 8 sequence outputting.
It's broken on (at least) - xterm - urxvt - alacritty - gnome-terminal I never noticed before because i use cat(1) as filter for emails. volker@ noticed it. thoughts/ok? Index: Makefile =================================================================== RCS file: /home/cvs/ports/mail/aerc/Makefile,v retrieving revision 1.10 diff -u -p -r1.10 Makefile --- Makefile 5 Jun 2023 09:10:52 -0000 1.10 +++ Makefile 15 Aug 2023 15:21:41 -0000 @@ -5,7 +5,7 @@ MODGO_VERSION = v0.0.0-20230511091235-f1 V = 0.15.2 DISTNAME = aerc-$V -REVISION = 0 +REVISION = 1 CATEGORIES = mail Index: patches/patch-filters_colorize_c =================================================================== RCS file: patches/patch-filters_colorize_c diff -N patches/patch-filters_colorize_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-filters_colorize_c 15 Aug 2023 15:30:38 -0000 @@ -0,0 +1,27 @@ +disable OSC 8; tcell-term has issues with it. + +Index: filters/colorize.c +--- filters/colorize.c.orig ++++ filters/colorize.c +@@ -415,6 +415,7 @@ static inline size_t print_notabs(const char *in, size + } + + static void print_osc8(const char *url, size_t len, size_t id, bool email) { ++#if 0 + print("\x1b]8;"); + if (url != NULL) { + printf("id=colorize-%lu;", id); +@@ -427,6 +428,13 @@ static void print_osc8(const char *url, size_t len, si + print(";"); + } + print("\x1b\\"); ++#else ++ if (url != NULL) { ++ if (email) ++ print("mailto://"); ++ print_notabs(url, len); ++ } ++#endif + } + + static void diff_chunk(const char *in)