Many times I want a quick back door into a Java application I've written. For various reasons, using JConsole isn't really an option, so I have a simple Console class that listens to connection attempts on a configured IP port, and then I use telnet to talk to the Console. The Console uses a Scanner to read the Socket's inputStream. Now, when I use Scanner with System.in, I automatically get simple command-line editing; I can backspace to delete characters and re-enter them. When I use the Scanner to read the Socket's inputStream, I get no command-line editing. Who supplies the command line editing feature? Is there any way to get it when using a Socket inputStream?