Hey thanks for replying &amp; I hope my comments didn&#x27;t seem snooty. I&#x27;ve thought a lot about how to solve this problem and was disappointed by the way some past attempts have just ignored the infrastructure that ensconses current terminals. And its a real shame that so many tools just hard-emit ANSI escape codes - there are even some TUI frameworks that do it.<p>The problem I see is that you seem to have the terminal doing things like fuzzy matching input against PATH executables. But that&#x27;s the shell&#x27;s domain. The terminal should just expose commands for adding text items to a drop down under the cursor, and the shell should send the matches to the terminal. And capabilities like this should be clearly defined in a terminfo page (which you should definitely have, even if for non-custom capabilities it uses the same definitions as xterm), so that well-written apps can send this information if and only if those capabilities are defined.<p>Of course this is a huge challenge, because if you do it this way your terminal doesn&#x27;t do anything new until someone writes a program to run in it using its extended capabilities. So this creates a chicken and egg problem. But you can&#x27;t come up with nearly as many interesting things for your terminal to do with cursor dropdowns as everyone in the world can if you&#x27;re just exposing that in the same way the character grid is exposed.