Description
Currently Helix assumes that if a terminal supports the first level “Disambiguate escape codes”, then it also supports the second one, namely “Report alternate keys”. This unfortunately results in some bindings not working in some terminal emulators/multiplexers such as Zellij. See zellij-org/zellij#3789 (comment) for a comment by Zellij’s maintainer on the issue.
It would be nice if Helix could query the supported subset of the protocol by the terminal and act accordingly. From what I understand, Helix uses crossterm
for this, which only returns a boolean. An issue was also opened on their repo for a more granular query function, which Helix could then use (see crossterm-rs/crossterm#952). In the meantime, could Helix maybe do the query itself?