Package: emacs;
Reported by: Ergus <spacibba <at> aol.com>
Date: Mon, 16 Jun 2025 15:42:02 UTC
Severity: normal
Found in version 31.0.50
To reply to this bug, email your comments to 78807 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#78807
; Package emacs
.
(Mon, 16 Jun 2025 15:42:02 GMT) Full text and rfc822 format available.Ergus <spacibba <at> aol.com>
:bug-gnu-emacs <at> gnu.org
.
(Mon, 16 Jun 2025 15:42:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Ergus <spacibba <at> aol.com> To: bug-gnu-emacs <at> gnu.org Subject: 31.0.50; Wave underline set wrongly Date: Mon, 16 Jun 2025 17:41:18 +0200
Hi: I am using emacs on tmux, which does not support wave underline (it prints it as normal text) echo -e "\e[4:3mThis is normal text in tmux\e[0m" When I try (display-supports-face-attributes-p '(:underline (:style wave))) it returns t, which for tmux it seems like it shouldn't. So this makes that faces like `flyspell-incorrect` look like normal text and no highlight is visible at all. Best, Ergus In GNU Emacs 31.0.50 (build 16, x86_64-pc-linux-gnu, GTK+ Version 3.24.49, cairo version 1.18.4) of 2025-06-15 built on RTX Repository revision: f3ea559eeebd368cca1900a7e670d3ddbbd00da7 Repository branch: project System Description: Arch Linux Configured using: 'configure --prefix=/home/ergo/.local/ --with-mailutils --with-pgtk --with-modules --with-cairo --with-harfbuzz --with-native-compilation=aot '--program-transform-name=s/^ctags$/ctags.emacs/'' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG LCMS2 LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM GTK3 ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Lisp Interaction Minor modes in effect: global-auto-revert-mode: t recentf-mode: t electric-pair-mode: t whitespace-mode: t flyspell-mode: t completion-preview-mode: t diff-hl-margin-mode: t global-corfu-mode: t corfu-mode: t fancy-compilation-mode: t winner-mode: t project-multi-mode: t gtags-mode: t repeat-mode: t xterm-mouse-mode: t tty-tip-mode: t xclip-mode: t override-global-mode: t save-place-mode: t delete-selection-mode: t savehist-mode: t global-display-fill-column-indicator-mode: t display-fill-column-indicator-mode: t global-display-line-numbers-mode: t display-line-numbers-mode: t which-key-mode: t tooltip-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t context-menu-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t minibuffer-regexp-mode: t size-indication-mode: t column-number-mode: t line-number-mode: t indent-tabs-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /mnt/casa/gits/emacs_clones/gtags-mode/gtags-mode hides /home/ergo/.config/emacs/elpa/gtags-mode-1.9.2/gtags-mode Features: (shadow sort mail-extr emacsbug lisp-mnt tramp-cache time-stamp tramp-sh tramp trampver tramp-integration tramp-message tramp-compat shell pcomplete parse-time iso8601 format-spec tramp-loaddefs autorevert filenotify recentf tree-widget ffap thingatpt elec-pair whitespace flyspell-correct flyspell ispell completion-preview diff-hl-margin diff-hl-dired diff-hl log-view log-edit message sendmail yank-media puny dired-x dired dired-loaddefs rfc822 mml mml-sec epa derived epg rfc6068 epg-config gnus-util time-date mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader add-log pcvs-util vc-dir ewoc vc vc-dispatcher diff-mode track-changes corfu fancy-compilation compile text-property-search comint ansi-osc ansi-color comp-run comp-common winner cus-edit pp cus-start cus-load wid-edit project-multi-mode gtags-mode files-x xref project ring term/tmux term/xterm xterm init rx repeat cape compat use-package-ensure package browse-url xdg url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse auth-source eieio eieio-core cl-macs icons password-cache json subr-x map url-vars use-package-diminish xt-mouse tty-tip xclip edmacro kmacro byte-opt use-package-bind-key bind-key cl-extra help-mode simple-16-theme saveplace delsel savehist easy-mmode display-fill-column-indicator display-line-numbers diminish which-key cl-seq use-package-core cl-loaddefs cl-lib bytecomp byte-compile gv disp-table info arduino-cli-mode-autoloads auctex-autoloads tex-site avy-zap-autoloads avy-autoloads benchmark-init-autoloads bufferlo-autoloads caml-autoloads cape-autoloads clang-format-autoloads cobol-mode-autoloads compile-multi-autoloads compiler-explorer-autoloads corfu-autoloads crdt-autoloads csv-mode-autoloads d-mode-autoloads dape-autoloads deadgrep-autoloads debbugs-autoloads diff-hl-autoloads diminish-autoloads dired-sidebar-autoloads dired-subtree-autoloads dired-hacks-utils-autoloads dumb-jump-autoloads e2ansi-autoloads eglot-booster-autoloads emamux-autoloads eshell-toggle-autoloads esup-autoloads evil-collection-autoloads annalist-autoloads evil-leader-autoloads evil-autoloads face-explorer-autoloads fancy-compilation-autoloads flx-autoloads flymake-nasm-autoloads flymake-quickdef-autoloads flyspell-correct-autoloads git-commit-ts-mode-autoloads git-modes-autoloads git-timemachine-autoloads gnuplot-autoloads goto-chg-autoloads groovy-mode-autoloads gtags-mode-autoloads haskell-mode-autoloads highlight-indent-guides-autoloads i3wm-config-mode-autoloads ibuffer-sidebar-autoloads iedit-autoloads imenu-list-autoloads julia-ts-mode-autoloads julia-mode-autoloads languagetool-autoloads lice-autoloads lorem-ipsum-autoloads lua-mode-autoloads magit-autoloads magit-section-autoloads llama-autoloads move-dup-autoloads multiple-cursors-autoloads mutt-mode-autoloads nasm-mode-autoloads neotree-autoloads nftables-mode-autoloads nginx-mode-autoloads notmuch-autoloads objed-autoloads phi-search-autoloads pkgbuild-mode-autoloads plz-autoloads popup-autoloads protobuf-ts-mode-autoloads scopeline-autoloads shell-command+-autoloads slime-autoloads macrostep-autoloads sphinx-mode-autoloads f-autoloads s-autoloads dash-autoloads spinner-autoloads ssh-config-mode-autoloads string-inflection-autoloads sudo-edit-autoloads switch-window-autoloads systemd-autoloads tmux-mode-autoloads urgrep-autoloads vdiff-autoloads hydra-autoloads lv-autoloads vterm-toggle-autoloads vterm-autoloads vundo-autoloads with-editor-autoloads xclip-autoloads yasnippet-snippets-autoloads yasnippet-autoloads early-init rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win term/common-win touch-screen pgtk-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify dynamic-setting system-font-setting font-render-setting cairo gtk pgtk lcms2 multi-tty move-toolbar make-network-process tty-child-frames native-compile emacs) Memory information: ((conses 16 257146 109827) (symbols 48 18252 10) (strings 32 74188 21602) (string-bytes 1 2343404) (vectors 16 24695) (vector-slots 8 281624 53185) (floats 8 122 281) (intervals 56 1382 163) (buffers 1064 12))
bug-gnu-emacs <at> gnu.org
:bug#78807
; Package emacs
.
(Mon, 16 Jun 2025 16:18:01 GMT) Full text and rfc822 format available.Message #8 received at 78807 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Ergus <spacibba <at> aol.com> Cc: 78807 <at> debbugs.gnu.org Subject: Re: bug#78807: 31.0.50; Wave underline set wrongly Date: Mon, 16 Jun 2025 19:17:01 +0300
> Date: Mon, 16 Jun 2025 17:41:18 +0200 > From: Ergus via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org> > > I am using emacs on tmux, which does not support wave underline (it > prints it as normal text) > > echo -e "\e[4:3mThis is normal text in tmux\e[0m" > > When I try > > (display-supports-face-attributes-p '(:underline (:style wave))) > > it returns t, which for tmux it seems like it shouldn't. > > So this makes that faces like `flyspell-incorrect` look like normal text > and no highlight is visible at all. I suggest to report this to the developers of tmux: they should make sure the terminfo entry correctly reflects the actual capabilities they support. As you can see in tty_capable_p, Emacs just looks at the capabilities reported by terminfo.
bug-gnu-emacs <at> gnu.org
:bug#78807
; Package emacs
.
(Sun, 22 Jun 2025 01:45:02 GMT) Full text and rfc822 format available.Message #11 received at 78807 <at> debbugs.gnu.org (full text, mbox):
From: Ergus <spacibba <at> aol.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: "78807 <at> debbugs.gnu.org" <78807 <at> debbugs.gnu.org> Subject: Re: bug#78807: 31.0.50; Wave underline set wrongly Date: Sun, 22 Jun 2025 01:44:39 +0000 (UTC)
[Message part 1 (text/plain, inline)]
Hi Eli: As far as I know the check for wave underline in terminfo may look for Smulx I tried: `infocmp -1 | grep -E 'Smulx|Su|cul'` and: `tigetstr("Smulx")` in a C snippet and none of them return positive. The function mentions that it uses some heuristics and that may be the problem? this is my infocmp output in case it helps: ```# Reconstructed via infocmp from file: /usr/share/terminfo/t/tmux-256colortmux-256color|tmux with 256 colors,am, hs, km, mir, msgr, xenl,colors#0x100, cols#80, it#8, lines#24, pairs#0x10000,acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,clear=\E[H\E[J, cnorm=\E[34h\E[?25h, cr=\r,csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,dl=\E[%p1%dM, dl1=\E[M, dsl=\E]0;\007, ed=\E[J, el=\E[K,el1=\E[1K, enacs=\E(B\E)0, flash=\Eg, fsl=^G, home=\E[H,hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d@,il=\E[%p1%dL, il1=\E[L, ind=\n, indn=\E[%p1%dS,invis=\E[8m, is2=\E)0, kDC=\E[3;2~, kEND=\E[1;2F,kHOM=\E[1;2H, kIC=\E[2;2~, kLFT=\E[1;2D, kNXT=\E[6;2~,kPRV=\E[5;2~, kRIT=\E[1;2C, kbs=^?, kcbt=\E[Z, kcub1=\EOD,kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~,kend=\E[4~, kf1=\EOP, kf10=\E[21~, kf11=\E[23~,kf12=\E[24~, kf13=\E[1;2P, kf14=\E[1;2Q, kf15=\E[1;2R,kf16=\E[1;2S, kf17=\E[15;2~, kf18=\E[17;2~,kf19=\E[18;2~, kf2=\EOQ, kf20=\E[19;2~, kf21=\E[20;2~,kf22=\E[21;2~, kf23=\E[23;2~, kf24=\E[24;2~,kf25=\E[1;5P, kf26=\E[1;5Q, kf27=\E[1;5R, kf28=\E[1;5S,kf29=\E[15;5~, kf3=\EOR, kf30=\E[17;5~, kf31=\E[18;5~,kf32=\E[19;5~, kf33=\E[20;5~, kf34=\E[21;5~,kf35=\E[23;5~, kf36=\E[24;5~, kf37=\E[1;6P, kf38=\E[1;6Q,kf39=\E[1;6R, kf4=\EOS, kf40=\E[1;6S, kf41=\E[15;6~,kf42=\E[17;6~, kf43=\E[18;6~, kf44=\E[19;6~,kf45=\E[20;6~, kf46=\E[21;6~, kf47=\E[23;6~,kf48=\E[24;6~, kf49=\E[1;3P, kf5=\E[15~, kf50=\E[1;3Q,kf51=\E[1;3R, kf52=\E[1;3S, kf53=\E[15;3~, kf54=\E[17;3~,kf55=\E[18;3~, kf56=\E[19;3~, kf57=\E[20;3~,kf58=\E[21;3~, kf59=\E[23;3~, kf6=\E[17~, kf60=\E[24;3~,kf61=\E[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R, kf7=\E[18~,kf8=\E[19~, kf9=\E[20~, khome=\E[1~, kich1=\E[2~,kind=\E[1;2B, kmous=\E[M, knp=\E[6~, kpp=\E[5~,kri=\E[1;2A, nel=\EE, op=\E[39;49m, rc=\E8, rev=\E[7m,ri=\EM, rin=\E[%p1%dT, ritm=\E[23m, rmacs=^O,rmcup=\E[?1049l, rmir=\E[4l, rmkx=\E[?1l\E>, rmso=\E[27m,rmul=\E[24m, rs2=\Ec\E[?1000l\E[?25h, sc=\E7,setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m,setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m,sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m%?%p9%t\016%e\017%;,sgr0=\E[m\017, sitm=\E[3m, smacs=^N, smcup=\E[?1049h,smir=\E[4h, smkx=\E[?1h\E=, smso=\E[7m, smul=\E[4m,tbc=\E[3g, tsl=\E]0;, u6=\E[%i%d;%dR, u7=\E[6n,u8=\E[?1;2c, u9=\E[c, vpa=\E[%i%p1%dd,``` Best,Ergus On Monday, June 16, 2025 at 06:17:26 PM GMT+2, Eli Zaretskii <eliz <at> gnu.org> wrote: > Date: Mon, 16 Jun 2025 17:41:18 +0200 > From: Ergus via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org> > > I am using emacs on tmux, which does not support wave underline (it > prints it as normal text) > > echo -e "\e[4:3mThis is normal text in tmux\e[0m" > > When I try > > (display-supports-face-attributes-p '(:underline (:style wave))) > > it returns t, which for tmux it seems like it shouldn't. > > So this makes that faces like `flyspell-incorrect` look like normal text > and no highlight is visible at all. I suggest to report this to the developers of tmux: they should make sure the terminfo entry correctly reflects the actual capabilities they support. As you can see in tty_capable_p, Emacs just looks at the capabilities reported by terminfo.
[Message part 2 (text/html, inline)]
bug-gnu-emacs <at> gnu.org
:bug#78807
; Package emacs
.
(Sun, 22 Jun 2025 05:34:02 GMT) Full text and rfc822 format available.Message #14 received at 78807 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Ergus <spacibba <at> aol.com> Cc: 78807 <at> debbugs.gnu.org Subject: Re: bug#78807: 31.0.50; Wave underline set wrongly Date: Sun, 22 Jun 2025 08:33:50 +0300
> Date: Sun, 22 Jun 2025 01:44:39 +0000 (UTC) > From: Ergus <spacibba <at> aol.com> > Cc: "78807 <at> debbugs.gnu.org" <78807 <at> debbugs.gnu.org> > > As far as I know the check for wave underline in terminfo may look for Smulx > > I tried: `infocmp -1 | grep -E 'Smulx|Su|cul'` > > and: `tigetstr("Smulx")` in a C snippet > > and none of them return positive. > > The function mentions that it uses some heuristics and that may be the problem? This is what we do: /* Styled underlines. Support for this is provided either by the escape sequence in Smulx or the Su flag. The latter results in a common default escape sequence and is not recommended. */ #ifdef TERMINFO tty->TF_set_underline_style = tigetstr ("Smulx"); if (tty->TF_set_underline_style == (char *) (intptr_t) -1) tty->TF_set_underline_style = NULL; #else tty->TF_set_underline_style = tgetstr ("Smulx", address); #endif if (!tty->TF_set_underline_style && tgetflag ("Su")) /* Default to the kitty escape sequence. See https://sw.kovidgoyal.net/kitty/underlines/. */ tty->TF_set_underline_style = "\x1b[4:%p1%dm"; if (tty->TF_set_underline_style) /* Standard escape sequence to set the underline color. Requires a single parameter, the color index. */ tty->TF_set_underline_color = "\x1b[58:2::%p1%{65536}%/%d:%p1%{256}%/%{255}%&%d:%p1%{255}%&%dm"; If tmux doesn't support this (again, please ask the tmux developers), then we need a way to detect tmux and avoid the above. But I'm surprised that no one has reported this till now. Perhaps you need to upgrade your tmux?
bug-gnu-emacs <at> gnu.org
:bug#78807
; Package emacs
.
(Sun, 22 Jun 2025 16:14:02 GMT) Full text and rfc822 format available.Message #17 received at 78807 <at> debbugs.gnu.org (full text, mbox):
From: Ergus <spacibba <at> aol.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 78807 <at> debbugs.gnu.org Subject: Re: bug#78807: 31.0.50; Wave underline set wrongly Date: Sun, 22 Jun 2025 18:13:01 +0200
Hi again Eli: On Sun, Jun 22, 2025 at 08:33:50AM +0300, Eli Zaretskii wrote: >> Date: Sun, 22 Jun 2025 01:44:39 +0000 (UTC) >> From: Ergus <spacibba <at> aol.com> >> Cc: "78807 <at> debbugs.gnu.org" <78807 <at> debbugs.gnu.org> >> >> As far as I know the check for wave underline in terminfo may look for Smulx >> >> I tried: `infocmp -1 | grep -E 'Smulx|Su|cul'` >> >> and: `tigetstr("Smulx")` in a C snippet >> >> and none of them return positive. >> >> The function mentions that it uses some heuristics and that may be the problem? > >This is what we do: > > /* Styled underlines. Support for this is provided either by the > escape sequence in Smulx or the Su flag. The latter results in a > common default escape sequence and is not recommended. */ > #ifdef TERMINFO > tty->TF_set_underline_style = tigetstr ("Smulx"); > if (tty->TF_set_underline_style == (char *) (intptr_t) -1) > tty->TF_set_underline_style = NULL; > #else > tty->TF_set_underline_style = tgetstr ("Smulx", address); > #endif > if (!tty->TF_set_underline_style && tgetflag ("Su")) > /* Default to the kitty escape sequence. See > https://sw.kovidgoyal.net/kitty/underlines/. */ > tty->TF_set_underline_style = "\x1b[4:%p1%dm"; > > if (tty->TF_set_underline_style) > /* Standard escape sequence to set the underline color. > Requires a single parameter, the color index. */ > tty->TF_set_underline_color = "\x1b[58:2::%p1%{65536}%/%d:%p1%{256}%/%{255}%&%d:%p1%{255}%&%dm"; > As you can see in the line command I shared before: infocmp -1 | grep -E 'Smulx|Su|cul' I already ckeck for the Su, Smulx and tmux is not returning a fake possitive it is actually not returning anything. Which means that underline styles are not supported. >If tmux doesn't support this (again, please ask the tmux developers), >then we need a way to detect tmux and avoid the above. But I think that tmux is working fine, see bellow. >But I'm surprised that no one has reported this till now. Maybe because the issue is just a missing wave underscore only set in a few faces. And some themes already overrides those faces to use normal underline. Plus most users these days use emacs gui not -nw. > Perhaps you need to upgrade your tmux? Just tested the tmux master branch and it is the same. This code: ``` #include <stdio.h> #include <stdlib.h> #include <curses.h> #include <term.h> #include <unistd.h> int main(void) { // Setup terminfo for the terminal from $TERM int errret; if (setupterm(NULL, STDOUT_FILENO, &errret) != OK) { fprintf(stderr, "Error: Could not initialize terminfo (code %d)\n", errret); return 1; } // Standard underline enter/exit char *smul = tigetstr("smul"); // start underline char *rmul = tigetstr("rmul"); // end underline // Extended underline mode (not standard, but defined in newer terminfo entries) char *smulx = tigetstr("Smulx"); // start underline with extended attributes int Su = tgetflag ("Su"); printf("smul (start underline): %s\n", (smul == (char *)-1 || smul == NULL) ? "Not available" : "Available"); printf("rmul (end underline) : %s\n", (rmul == (char *)-1 || rmul == NULL) ? "Not available" : "Available"); printf("Smulx (extended underline): %s\n", (smulx == (char *)-1 || smulx == NULL) ? "Not available" : "Available"); printf("Su: %s\n", Su); return 0; } ``` Outputs: ``` smul (start underline): Available rmul (end underline) : Available Smulx (extended underline): Not available Su: (null) ``` I could have something missing in the setupterm call, but this seems correctly reporting NOT extended underline support. So, maybe the issue is somewhere else? Why is emacs reporting wave support? Best, Ergus
bug-gnu-emacs <at> gnu.org
:bug#78807
; Package emacs
.
(Mon, 23 Jun 2025 11:03:02 GMT) Full text and rfc822 format available.Message #20 received at 78807 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Ergus <spacibba <at> aol.com> Cc: 78807 <at> debbugs.gnu.org Subject: Re: bug#78807: 31.0.50; Wave underline set wrongly Date: Mon, 23 Jun 2025 14:02:22 +0300
> Date: Sun, 22 Jun 2025 18:13:01 +0200 > From: Ergus <spacibba <at> aol.com> > Cc: 78807 <at> debbugs.gnu.org > > >If tmux doesn't support this (again, please ask the tmux developers), > >then we need a way to detect tmux and avoid the above. > > But I think that tmux is working fine, see bellow. I meant if tmux doesn't support the kitty escape sequences we assume should work. And if it doesn't, we need a way to detect that the terminal is displaying on tmux. Does anyone know how to do that? > So, maybe the issue is somewhere else? Why is emacs reporting wave > support? Because, according to my reading of the code I show above, we assume that every terminal supports wave: if Smulx is not present, we assume the kitty escape sequence will work.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.