I'm all for replacing readline. It's an ancient, very closely linked to the everyday experience of using the command line, and not very good. I want my REPLs to have things like syntax highlighting and decent tab completion UI, and readline has positioned itself to have a monopoly on the ability to implement these things but failed to deliver.<p>But this isn't addressing the real problem, which is that readline gets conjoined with the programs that use it. So if I want to write my own line editor, I have to significantly modify every program I want to use it in, which is enough of an obstacle that I won't do it (and neither will others). Nevermind more difficult architectural problems, like making editing local when on high-latency connections. Still, having a BSD-licensed line editor to start from may be helpful for whoever takes on that project some day.
there are a lot of forks of linenoise out there now.<p>this one looks good, but it's a big task to pick through all the divergent copies of the code and figure out which ones have genuine improvements and which ones are now rotting.<p>there's a rust one too which i recently added mingw/msvc support to. that's actually an example of how this splintering could be causing problems because we've just vendored some upstream version of the native c code and changes may be difficult to send back upstream.
Fork of linenoise in the TXR language:<p><a href="http://www.kylheku.com/cgit/txr/log/linenoise" rel="nofollow">http://www.kylheku.com/cgit/txr/log/linenoise</a><p>Doc:<p><a href="http://www.nongnu.org/txr/txr-manpage.html#N-025AAA27" rel="nofollow">http://www.nongnu.org/txr/txr-manpage.html#N-025AAA27</a><p>These changes are in a different direction. I don't have windows or UTF-8 support, though. I started a branch to convert it to use wchar_t. Maybe I can cherry pick some things out of NG.
How about predictive typing? It would be helpful if something modern learned what I frequently type.<p><a href="http://papersdb.cs.ualberta.ca/~papersdb/uploaded_files/712/paper_korvemaker00predicting.pdf" rel="nofollow">http://papersdb.cs.ualberta.ca/~papersdb/uploaded_files/712/...</a>