|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjline.ConsoleReader
A reader for console applications. It supports custom tab-completion,
saveable command history, and command line editing. On some
platforms, platform-specific commands will need to be
issued before the reader will function properly. See
Terminal.initializeTerminal()
for convenience methods for
issuing platform-specific setup commands.
Field Summary | |
(package private) CursorBuffer |
buf
|
(package private) java.util.List |
completors
|
static java.lang.String |
CR
|
(package private) static java.io.PrintWriter |
debugger
|
(package private) History |
history
|
(package private) java.io.InputStream |
in
|
static java.util.SortedMap |
KEYMAP_NAMES
Map that contains the operation name to keymay operation mapping. |
(package private) java.io.Writer |
out
|
(package private) java.lang.String |
prompt
|
Constructor Summary | |
ConsoleReader()
Create a new reader using FileDescriptor.in for input
and System.out for output. |
|
ConsoleReader(java.io.InputStream in,
java.io.Writer out)
Create a new reader using the specified InputStream
for input and the specific writer for output, using the
default keybindings resource. |
|
ConsoleReader(java.io.InputStream in,
java.io.Writer out,
java.io.InputStream bindings)
|
|
ConsoleReader(java.io.InputStream in,
java.io.Writer out,
java.io.InputStream bindings,
Terminal term)
Create a new reader. |
Method Summary | |
boolean |
addCompletor(Completor completor)
Add the specified Completor to the list of handlers
for tab-completion. |
boolean |
backspace()
Issue a backspace. |
void |
beep()
Issue an audible keyboard bell, if getBellEnabled() return true. |
(package private) int |
clearEcho(int c)
Clear the echoed characters for the specified character code. |
boolean |
clearScreen()
Clear the screen by issuing the ANSI "clear screen" code. |
(package private) int |
countEchoCharacters(char c)
|
static void |
debug(java.lang.String str)
debug. |
void |
drawLine()
Output put the prompt + the current buffer |
(package private) java.lang.String |
finishBuffer()
Clear the buffer and add its contents to the history. |
void |
flushConsole()
Flush the console output stream. |
int |
getAutoprintThreshhold()
|
boolean |
getBellEnabled()
|
CompletionHandler |
getCompletionHandler()
|
java.util.Collection |
getCompletors()
Returns an unmodifiable list of all the completors. |
CursorBuffer |
getCursorBuffer()
|
(package private) int |
getCursorPosition()
|
java.lang.Character |
getEchoCharacter()
Returns the echo character. |
History |
getHistory()
|
java.io.InputStream |
getInput()
Returns the stream used for console input. |
(package private) int |
getKeyForAction(short logicalAction)
|
(package private) java.lang.StringBuffer |
getPrintableCharacters(char ch)
Return the number of characters that will be printed when the specified character is echoed to the screen. |
int |
getTermheight()
Query the terminal to find the current width; |
Terminal |
getTerminal()
|
int |
getTermwidth()
Query the terminal to find the current width; |
boolean |
killLine()
Kill the buffer ahead of the current cursor position. |
boolean |
paste()
Paste the contents of the clipboard into the console buffer |
void |
printColumns(java.util.Collection stuff)
Output the specified Collection in proper columns. |
void |
printNewline()
Output a platform-dependant newline. |
void |
printString(java.lang.String str)
Output the specified string to the output stream (but not the buffer). |
void |
putString(java.lang.String str)
Write out the specified string to the buffer and the output stream. |
int |
readCharacter(char[] allowed)
|
java.lang.String |
readLine()
Read the next line and return the contents of the buffer. |
java.lang.String |
readLine(java.lang.Character mask)
Read the next line with the specified character mask. |
java.lang.String |
readLine(java.lang.String prompt)
|
java.lang.String |
readLine(java.lang.String prompt,
java.lang.Character mask)
Read a line from the in InputStream , and
return the line (without any trailing newlines). |
int |
readVirtualKey()
Read a character from the console. |
void |
redrawLine()
Clear the line and redraw it. |
boolean |
removeCompletor(Completor completor)
Remove the specified Completor from the list of handlers
for tab-completion. |
(package private) boolean |
resetLine()
Erase the current line. |
void |
setAutoprintThreshhold(int autoprintThreshhold)
|
void |
setBellEnabled(boolean bellEnabled)
|
void |
setCompletionHandler(CompletionHandler completionHandler)
|
boolean |
setCursorPosition(int position)
Move the cursor position to the specified absolute index. |
void |
setDebug(java.io.PrintWriter debugger)
Set the stream for debugging. |
void |
setEchoCharacter(java.lang.Character echoCharacter)
Set the echo character. |
void |
setHistory(History history)
|
void |
setInput(java.io.InputStream in)
Set the stream to be used for console input. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
java.lang.String prompt
public static final java.lang.String CR
public static java.util.SortedMap KEYMAP_NAMES
java.io.InputStream in
final java.io.Writer out
final CursorBuffer buf
static java.io.PrintWriter debugger
History history
final java.util.List completors
Constructor Detail |
public ConsoleReader() throws java.io.IOException
FileDescriptor.in
for input
and System.out
for output. FileDescriptor.in
is
used because it has a better chance of being unbuffered.
public ConsoleReader(java.io.InputStream in, java.io.Writer out) throws java.io.IOException
InputStream
for input and the specific writer for output, using the
default keybindings resource.
public ConsoleReader(java.io.InputStream in, java.io.Writer out, java.io.InputStream bindings) throws java.io.IOException
public ConsoleReader(java.io.InputStream in, java.io.Writer out, java.io.InputStream bindings, Terminal term) throws java.io.IOException
in
- the inputout
- the outputbindings
- the key bindings to useterm
- the terminal to useMethod Detail |
public Terminal getTerminal()
public void setDebug(java.io.PrintWriter debugger)
public void setInput(java.io.InputStream in)
public java.io.InputStream getInput()
public java.lang.String readLine() throws java.io.IOException
java.io.IOException
public java.lang.String readLine(java.lang.Character mask) throws java.io.IOException
java.io.IOException
public void setBellEnabled(boolean bellEnabled)
bellEnabled
- if true, enable audible keyboard bells if
an alert is required.public boolean getBellEnabled()
public int getTermwidth()
Terminal.getTerminalWidth()
public int getTermheight()
Terminal.getTerminalHeight()
public void setAutoprintThreshhold(int autoprintThreshhold)
autoprintThreshhold
- the number of candidates to print
without issuing a warning.public int getAutoprintThreshhold()
int getKeyForAction(short logicalAction)
int clearEcho(int c) throws java.io.IOException
java.io.IOException
int countEchoCharacters(char c)
java.lang.StringBuffer getPrintableCharacters(char ch)
int getCursorPosition()
public java.lang.String readLine(java.lang.String prompt) throws java.io.IOException
java.io.IOException
public java.lang.String readLine(java.lang.String prompt, java.lang.Character mask) throws java.io.IOException
InputStream
, and
return the line (without any trailing newlines).
prompt
- the prompt to issue to the console, may be null.
java.io.IOException
public boolean paste() throws java.io.IOException
java.io.IOException
public boolean killLine() throws java.io.IOException
java.io.IOException
public boolean clearScreen() throws java.io.IOException
java.io.IOException
public CursorBuffer getCursorBuffer()
public void printColumns(java.util.Collection stuff) throws java.io.IOException
Collection
in proper columns.
stuff
- the stuff to print
java.io.IOException
public boolean addCompletor(Completor completor)
Completor
to the list of handlers
for tab-completion.
completor
- the Completor
to add
public boolean removeCompletor(Completor completor)
Completor
from the list of handlers
for tab-completion.
completor
- the Completor
to remove
public java.util.Collection getCompletors()
final boolean resetLine() throws java.io.IOException
java.io.IOException
public final boolean setCursorPosition(int position) throws java.io.IOException
java.io.IOException
public final void redrawLine() throws java.io.IOException
java.io.IOException
public final void drawLine() throws java.io.IOException
java.io.IOException
public final void printNewline() throws java.io.IOException
java.io.IOException
final java.lang.String finishBuffer()
public final void putString(java.lang.String str) throws java.io.IOException
java.io.IOException
public final void printString(java.lang.String str) throws java.io.IOException
java.io.IOException
public final void beep() throws java.io.IOException
getBellEnabled()
return true.
java.io.IOException
public final void flushConsole() throws java.io.IOException
java.io.IOException
public final boolean backspace() throws java.io.IOException
java.io.IOException
public static void debug(java.lang.String str)
str
- the message to issue.public final int readVirtualKey() throws java.io.IOException
java.io.IOException
public final int readCharacter(char[] allowed) throws java.io.IOException
java.io.IOException
public void setHistory(History history)
public History getHistory()
public void setCompletionHandler(CompletionHandler completionHandler)
public CompletionHandler getCompletionHandler()
public void setEchoCharacter(java.lang.Character echoCharacter)
Set the echo character. For example, to have "*" entered when a password is typed:
myConsoleReader.setEchoCharacter (new Character ('*'));
Setting the character to
nullwill restore normal character echoing. Setting the character to
new Character (0)will cause nothing to be echoed.
echoCharacter
- the character to echo to the console in
place of the typed character.public java.lang.Character getEchoCharacter()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |