title: python line editing telnet server
body: <p>I am creating a server in python (what it is doing is irrelevant), but I would like it to accept telnet connections and provide a command line interface with line editing capabilities (tabcompletion, emacs/vi-mode, etc) and history per session. I have successfully created the telnet session, disabled line mode and enabled server echo.</p>
  
  <p>My initial thoughts were using readline but the python readline module seems to only work for a single session on stdin; and examining the underlying readline library that seems to be the way it works.</p>
  
  <p>What I would like to do however is to create an instance (call it state if you like) for each client, and as characters (bytes) are received feed to the state. Once a complete line has been generated it would pass it to the server which may parse it.</p>
  
  <p>So my question is if there is a library which handles this kind of thing, even a c-library would be sufficient.</p>
  
  <p><strong>EDIT</strong>: To clarify, I've got a fully functional server already, but I want the telnet interface as an add on to reconfigure, get information, etc.</p>