The Java-Readline Library, Version 0.8.1

org.gnu.readline
Class Readline

java.lang.Object
  extended by org.gnu.readline.Readline

public class Readline
extends java.lang.Object

This class implements basic functionality of the GNU-readline interface. It uses native method calls if available, otherwise it defaults to normal I/O using a BufferedReader.

A typical implementation could look like:

 try {
     Readline.load(ReadlineLibrary.GnuReadline);
 }
 catch (UnsatisfiedLinkError ignore_me) {
     System.err.println("couldn't load readline lib. Using simple stdin.");
 }

 Readline.initReadline("myapp");

 Runtime.getRuntime()                       // if your version supports
   .addShutdownHook(new Thread() {          // addShutdownHook (since 1.3)
      public void run() {
        Readline.cleanup();
      }
    });

 while (true) {
     try {
         line = Readline.readline("myprompt> ");
         if (line == null)
             System.out.println("no input");
         else
             processLine();
     } 
     catch (EOFException e) {
         break;
     } 
     catch (Exception e) {
         doSomething();
     }
 }
 Readline.cleanup();  // see note above about addShutdownHook

Version:
$Revision: 1.31 $
Author:
$Author: bablokb $

Field Summary
static org.gnu.readline.ReadlineConstInt HISTORY_BASE
          Constant to access history_base using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt HISTORY_LENGTH
          Constant to access history_length using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt HISTORY_MAX_ENTRIES
          Constant to access history_max_entries using getVar() or setVar().
static org.gnu.readline.ReadlineConstString HISTORY_NO_EXPAND_CHARS
          Constant to access history_no_expand_chars using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt HISTORY_QUOTES_EXPANSION
          Constant to access history_quotes_inhibit_expansion using getVar() or setVar().
static org.gnu.readline.ReadlineConstString HISTORY_SEARCH_DELIMITERS
          Constant to access history_search_delimiter_chars using getVar() or setVar().
static org.gnu.readline.ReadlineConstString HISTORY_WORD_DELIMITERS
          Constant to access history_word_delimiters using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_ALREADY_PROMPTED
          Constant to access rl_already_prompted using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_ATTEMPTED_COMPLETION_OVER
          Constant to access rl_attempted_completion_over using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_BASIC_QUOTE_CHARACTERS
          Constant to access rl_basic_quote_characters using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_BASIC_WORD_BREAK_CHARACTERS
          Constant to access rl_basic_word_break_characters using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_CATCH_SIGNALS
          Constant to access rl_catch_signals using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_CATCH_SIGWINCH
          Constant to access rl_catch_sigwinch using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_COMPLETER_QUOTE_CHARACTERS
          Constant to access rl_completer_quote_characters using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_COMPLETER_WORD_BREAK_CHARACTERS
          Constant to access rl_completer_word_break_characters using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_COMPLETION_APPEND_CHARACTER
          Constant to access rl_completion_append_character using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_COMPLETION_MARK_SYMLINK_DIRS
          Constant to access rl_completion_mark_symlink_dirs using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_COMPLETION_QUERY_ITEMS
          Constant to access rl_completion_query_items using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_COMPLETION_SUPPRESS_APPEND
          Constant to access rl_completion_suppress_append using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_COMPLETION_TYPE
          Constant to access rl_completion_type using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_DISPATCHING
          Constant to access rl_dispatching using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_DONE
          Constant to access rl_done using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_EDITING_MODE
          Constant to access rl_editing_mode using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_END
          Constant to access rl_end using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_ERASE_EMPTY_LINE
          Constant to access rl_erase_empty_line using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_EXECUTING_MACRO
          Constant to access rl_executing_macro using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_EXPLICIT_ARG
          Constant to access rl_explicit_arg using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_FILENAME_COMPLETION_DESIRED
          Constant to access rl_filename_completion_desired using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_FILENAME_QUOTE_CHARACTERS
          Constant to access rl_filename_quote_characters using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_FILENAME_QUOTING_DESIRED
          Constant to access rl_filename_quoting_desired using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_GNU_READLINE_P
          Constant to access rl_gnu_readline_p using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_IGNORE_COMPLETION_DUPLICATES
          Constant to access rl_ignore_completion_duplicates using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_INHIBIT_COMPLETION
          Constant to access rl_inhibit_completion using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_INSERT_MODE
          Constant to access rl_insert_mode using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_LIBRARY_VERSION
          Constant to access rl_library_version using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_LINE_BUFFER
          Constant to access rl_line_buffer using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_MARK
          Constant to access rl_mark using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_NUM_CHARS_TO_READ
          Constant to access rl_num_chars_to_read using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_NUMERIC_ARG
          Constant to access rl_numeric_arg using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_PENDING_INPUT
          Constant to access rl_pending_input using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_POINT
          Constant to access rl_point using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_PROMPT
          Constant to access rl_prompt using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_READLINE_NAME
          Constant to access rl_readline_name using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_READLINE_STATE
          Constant to access rl_readline_state using getVar() or setVar().
static org.gnu.readline.ReadlineConstInt RL_READLINE_VERSION
          Constant to access rl_readline_version using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_SPECIAL_PREFIXES
          Constant to access rl_special_prefixes using getVar() or setVar().
static org.gnu.readline.ReadlineConstString RL_TERMINAL_NAME
          Constant to access rl_terminal_name using getVar() or setVar().
 
Constructor Summary
Readline()
           
 
Method Summary
static void addToHistory(java.lang.String line)
          Add a line to the in-memory history.
static void cleanup()
          Reset the readline library and with it, the terminal.
static void clearHistory()
          Clear the history buffer.
static ReadlineCompleter getCompleter()
          Query current completer function.
static java.lang.String getEncoding()
          Query current encoding of fallback BufferedReader.
static void getHistory(java.util.Collection collection)
          Get the history buffer in a supplied Collection.
static java.lang.String getHistoryLine(int i)
          Get the specified entry from the history buffer.
static int getHistorySize()
          Get the size, in elements (lines), of the history buffer.
static java.lang.String getLineBuffer()
          Query the current line buffer.
static boolean getThrowExceptionOnUnsupportedMethod()
          Query behavior in case an unsupported method is called.
static int getVar(org.gnu.readline.ReadlineConstInt c)
          Query integer readline-variable.
static java.lang.String getVar(org.gnu.readline.ReadlineConstString c)
          Query string readline-variable.
static java.lang.String getWordBreakCharacters()
          Query word break characters.
static boolean hasTerminal()
          Return if we have a terminal.
static void initReadline(java.lang.String applicationName)
          Initialize the GNU-Readline library.
static void load(ReadlineLibrary lib)
          Load an implementing backing library.
static boolean parseAndBind(java.lang.String line)
          Parse argument string as if it had been read from `inputrc' file and perform key bindings and variable assignments found.
static void readHistoryFile(java.lang.String filename)
          Reads a history file into memory
static void readInitFile(java.lang.String filename)
          Read keybindings and variable assignments from a file.
static java.lang.String readline(java.lang.String prompt)
          Display a prompt on standard output and read a string from standard input.
static java.lang.String readline(java.lang.String prompt, boolean addToHist)
          Display a prompt on standard output and read a string from standard input.
static void setCompleter(ReadlineCompleter rlc)
          Set your completer implementation.
static void setEncoding(java.lang.String encoding)
          Set current encoding of fallback BufferedReader.
static void setThrowExceptionOnUnsupportedMethod(boolean flag)
          Configure behavior in case an unsupported method is called.
static int setVar(org.gnu.readline.ReadlineConstInt c, int value)
          Set integer readline-variable.
static java.lang.String setVar(org.gnu.readline.ReadlineConstString c, java.lang.String value)
          Set string readline-variable.
static void setWordBreakCharacters(java.lang.String wordBreakCharacters)
          Set word break characters.
static void writeHistoryFile(java.lang.String filename)
          Writes a history file to disc
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RL_LIBRARY_VERSION

public static final org.gnu.readline.ReadlineConstString RL_LIBRARY_VERSION
Constant to access rl_library_version using getVar() or setVar().

Supporting implementations:


RL_READLINE_NAME

public static final org.gnu.readline.ReadlineConstString RL_READLINE_NAME
Constant to access rl_readline_name using getVar() or setVar().

Supporting implementations:


RL_PROMPT

public static final org.gnu.readline.ReadlineConstString RL_PROMPT
Constant to access rl_prompt using getVar() or setVar().

Supporting implementations:


RL_LINE_BUFFER

public static final org.gnu.readline.ReadlineConstString RL_LINE_BUFFER
Constant to access rl_line_buffer using getVar() or setVar().

Supporting implementations:


RL_TERMINAL_NAME

public static final org.gnu.readline.ReadlineConstString RL_TERMINAL_NAME
Constant to access rl_terminal_name using getVar() or setVar().

Supporting implementations:


RL_EXECUTING_MACRO

public static final org.gnu.readline.ReadlineConstString RL_EXECUTING_MACRO
Constant to access rl_executing_macro using getVar() or setVar().

Supporting implementations:


RL_BASIC_WORD_BREAK_CHARACTERS

public static final org.gnu.readline.ReadlineConstString RL_BASIC_WORD_BREAK_CHARACTERS
Constant to access rl_basic_word_break_characters using getVar() or setVar().

Supporting implementations:


RL_COMPLETER_WORD_BREAK_CHARACTERS

public static final org.gnu.readline.ReadlineConstString RL_COMPLETER_WORD_BREAK_CHARACTERS
Constant to access rl_completer_word_break_characters using getVar() or setVar().

Supporting implementations:


RL_COMPLETER_QUOTE_CHARACTERS

public static final org.gnu.readline.ReadlineConstString RL_COMPLETER_QUOTE_CHARACTERS
Constant to access rl_completer_quote_characters using getVar() or setVar().

Supporting implementations:


RL_BASIC_QUOTE_CHARACTERS

public static final org.gnu.readline.ReadlineConstString RL_BASIC_QUOTE_CHARACTERS
Constant to access rl_basic_quote_characters using getVar() or setVar().

Supporting implementations:


RL_FILENAME_QUOTE_CHARACTERS

public static final org.gnu.readline.ReadlineConstString RL_FILENAME_QUOTE_CHARACTERS
Constant to access rl_filename_quote_characters using getVar() or setVar().

Supporting implementations:


RL_SPECIAL_PREFIXES

public static final org.gnu.readline.ReadlineConstString RL_SPECIAL_PREFIXES
Constant to access rl_special_prefixes using getVar() or setVar().

Supporting implementations:


HISTORY_WORD_DELIMITERS

public static final org.gnu.readline.ReadlineConstString HISTORY_WORD_DELIMITERS
Constant to access history_word_delimiters using getVar() or setVar().

Supporting implementations:


HISTORY_NO_EXPAND_CHARS

public static final org.gnu.readline.ReadlineConstString HISTORY_NO_EXPAND_CHARS
Constant to access history_no_expand_chars using getVar() or setVar().

Supporting implementations:


HISTORY_SEARCH_DELIMITERS

public static final org.gnu.readline.ReadlineConstString HISTORY_SEARCH_DELIMITERS
Constant to access history_search_delimiter_chars using getVar() or setVar().

Supporting implementations:


RL_READLINE_VERSION

public static final org.gnu.readline.ReadlineConstInt RL_READLINE_VERSION
Constant to access rl_readline_version using getVar() or setVar().

Supporting implementations:


RL_GNU_READLINE_P

public static final org.gnu.readline.ReadlineConstInt RL_GNU_READLINE_P
Constant to access rl_gnu_readline_p using getVar() or setVar().

Supporting implementations:


RL_READLINE_STATE

public static final org.gnu.readline.ReadlineConstInt RL_READLINE_STATE
Constant to access rl_readline_state using getVar() or setVar().

Supporting implementations:


RL_EDITING_MODE

public static final org.gnu.readline.ReadlineConstInt RL_EDITING_MODE
Constant to access rl_editing_mode using getVar() or setVar().

Supporting implementations:


RL_INSERT_MODE

public static final org.gnu.readline.ReadlineConstInt RL_INSERT_MODE
Constant to access rl_insert_mode using getVar() or setVar().

Supporting implementations:


RL_POINT

public static final org.gnu.readline.ReadlineConstInt RL_POINT
Constant to access rl_point using getVar() or setVar().

Supporting implementations:


RL_END

public static final org.gnu.readline.ReadlineConstInt RL_END
Constant to access rl_end using getVar() or setVar().

Supporting implementations:


RL_MARK

public static final org.gnu.readline.ReadlineConstInt RL_MARK
Constant to access rl_mark using getVar() or setVar().

Supporting implementations:


RL_DONE

public static final org.gnu.readline.ReadlineConstInt RL_DONE
Constant to access rl_done using getVar() or setVar().

Supporting implementations:


RL_PENDING_INPUT

public static final org.gnu.readline.ReadlineConstInt RL_PENDING_INPUT
Constant to access rl_pending_input using getVar() or setVar().

Supporting implementations:


RL_DISPATCHING

public static final org.gnu.readline.ReadlineConstInt RL_DISPATCHING
Constant to access rl_dispatching using getVar() or setVar().

Supporting implementations:


RL_EXPLICIT_ARG

public static final org.gnu.readline.ReadlineConstInt RL_EXPLICIT_ARG
Constant to access rl_explicit_arg using getVar() or setVar().

Supporting implementations:


RL_NUMERIC_ARG

public static final org.gnu.readline.ReadlineConstInt RL_NUMERIC_ARG
Constant to access rl_numeric_arg using getVar() or setVar().

Supporting implementations:


RL_ERASE_EMPTY_LINE

public static final org.gnu.readline.ReadlineConstInt RL_ERASE_EMPTY_LINE
Constant to access rl_erase_empty_line using getVar() or setVar().

Supporting implementations:


RL_ALREADY_PROMPTED

public static final org.gnu.readline.ReadlineConstInt RL_ALREADY_PROMPTED
Constant to access rl_already_prompted using getVar() or setVar().

Supporting implementations:


RL_NUM_CHARS_TO_READ

public static final org.gnu.readline.ReadlineConstInt RL_NUM_CHARS_TO_READ
Constant to access rl_num_chars_to_read using getVar() or setVar().

Supporting implementations:


RL_CATCH_SIGNALS

public static final org.gnu.readline.ReadlineConstInt RL_CATCH_SIGNALS
Constant to access rl_catch_signals using getVar() or setVar().

Supporting implementations:


RL_CATCH_SIGWINCH

public static final org.gnu.readline.ReadlineConstInt RL_CATCH_SIGWINCH
Constant to access rl_catch_sigwinch using getVar() or setVar().

Supporting implementations:


RL_FILENAME_COMPLETION_DESIRED

public static final org.gnu.readline.ReadlineConstInt RL_FILENAME_COMPLETION_DESIRED
Constant to access rl_filename_completion_desired using getVar() or setVar().

Supporting implementations:


RL_FILENAME_QUOTING_DESIRED

public static final org.gnu.readline.ReadlineConstInt RL_FILENAME_QUOTING_DESIRED
Constant to access rl_filename_quoting_desired using getVar() or setVar().

Supporting implementations:


RL_ATTEMPTED_COMPLETION_OVER

public static final org.gnu.readline.ReadlineConstInt RL_ATTEMPTED_COMPLETION_OVER
Constant to access rl_attempted_completion_over using getVar() or setVar().

Supporting implementations:


RL_COMPLETION_TYPE

public static final org.gnu.readline.ReadlineConstInt RL_COMPLETION_TYPE
Constant to access rl_completion_type using getVar() or setVar().

Supporting implementations:


RL_COMPLETION_APPEND_CHARACTER

public static final org.gnu.readline.ReadlineConstInt RL_COMPLETION_APPEND_CHARACTER
Constant to access rl_completion_append_character using getVar() or setVar().

Supporting implementations:


RL_COMPLETION_SUPPRESS_APPEND

public static final org.gnu.readline.ReadlineConstInt RL_COMPLETION_SUPPRESS_APPEND
Constant to access rl_completion_suppress_append using getVar() or setVar().

Supporting implementations:


RL_COMPLETION_QUERY_ITEMS

public static final org.gnu.readline.ReadlineConstInt RL_COMPLETION_QUERY_ITEMS
Constant to access rl_completion_query_items using getVar() or setVar().

Supporting implementations:


RL_COMPLETION_MARK_SYMLINK_DIRS

public static final org.gnu.readline.ReadlineConstInt RL_COMPLETION_MARK_SYMLINK_DIRS
Constant to access rl_completion_mark_symlink_dirs using getVar() or setVar().

Supporting implementations:


RL_IGNORE_COMPLETION_DUPLICATES

public static final org.gnu.readline.ReadlineConstInt RL_IGNORE_COMPLETION_DUPLICATES
Constant to access rl_ignore_completion_duplicates using getVar() or setVar().

Supporting implementations:


RL_INHIBIT_COMPLETION

public static final org.gnu.readline.ReadlineConstInt RL_INHIBIT_COMPLETION
Constant to access rl_inhibit_completion using getVar() or setVar().

Supporting implementations:


HISTORY_BASE

public static final org.gnu.readline.ReadlineConstInt HISTORY_BASE
Constant to access history_base using getVar() or setVar().

Supporting implementations:


HISTORY_LENGTH

public static final org.gnu.readline.ReadlineConstInt HISTORY_LENGTH
Constant to access history_length using getVar() or setVar().

Supporting implementations:


HISTORY_MAX_ENTRIES

public static final org.gnu.readline.ReadlineConstInt HISTORY_MAX_ENTRIES
Constant to access history_max_entries using getVar() or setVar().

Supporting implementations:


HISTORY_QUOTES_EXPANSION

public static final org.gnu.readline.ReadlineConstInt HISTORY_QUOTES_EXPANSION
Constant to access history_quotes_inhibit_expansion using getVar() or setVar().

Supporting implementations:

Constructor Detail

Readline

public Readline()
Method Detail

load

public static final void load(ReadlineLibrary lib)
                       throws java.lang.UnsatisfiedLinkError
Load an implementing backing library. This method might throw an UnsatisfiedLinkError in case the native libary is not found in the library path. If you want to have a portable program, just catch and ignore that error. JavaReadline will then just use the pure Java fallback solution.

Parameters:
lib - An object (constant) of type ReadlineLibrary
Throws:
java.lang.UnsatisfiedLinkError - if the shared library could not be found. Add it to your LD_LIBRARY_PATH.
See Also:
ReadlineLibrary

initReadline

public static void initReadline(java.lang.String applicationName)
Initialize the GNU-Readline library. This will also set the application name, which can be used in the initialization files of Readline (usually /etc/inputrc and ~/.inputrc) to define application specific keys. See the file ReadlineTest.java int the test subdir of the distribution for an example.

Supporting implementations:

Parameters:
applicationName - Name of application in initialization file

readline

public static java.lang.String readline(java.lang.String prompt)
                                 throws java.io.EOFException,
                                        java.io.IOException,
                                        java.io.UnsupportedEncodingException
Display a prompt on standard output and read a string from standard input. This method returns 'null', if there has been an empty input (user pressed just [RETURN]) and throws an EOFException on end-of-file (C-d). This versino of readline() automatically adds the line to the in-memory history; use the other version of readline() if you want explicit control over that feature.

Supporting implementations:

Parameters:
prompt - Prompt to display
Returns:
The string the user entered or 'null' if there was no input.
Throws:
java.io.EOFException - on end-of-file, i.e. CTRL-d input.
java.io.IOException
java.io.UnsupportedEncodingException
See Also:
readline(String,boolean), #addHistory()

readline

public static java.lang.String readline(java.lang.String prompt,
                                        boolean addToHist)
                                 throws java.io.EOFException,
                                        java.io.IOException,
                                        java.io.UnsupportedEncodingException
Display a prompt on standard output and read a string from standard input. This method returns 'null', if there has been an empty input (user pressed just [RETURN]) and throws an EOFException on end-of-file (C-d).

Parameters:
prompt - Prompt to display
addToHist - true to add the line to the history automatically; false to refrain from adding the line to the history. (You can manually add the line to the history by calling addHistory().)
Returns:
The string the user entered or 'null' if there was no input.
Throws:
java.io.EOFException - on end-of-file, i.e. CTRL-d input.
java.io.IOException
java.io.UnsupportedEncodingException
See Also:
readline(String), #addHistory()

addToHistory

public static void addToHistory(java.lang.String line)
Add a line to the in-memory history.

Supporting implementations:

Parameters:
line - The line to add to the history
Throws:
UnsupportOperationException - if underlying library doesn't support a history

getHistory

public static void getHistory(java.util.Collection collection)
Get the history buffer in a supplied Collection.

Supporting implementations:

Parameters:
collection - where to store the history
Throws:
UnsupportOperationException - if underlying library doesn't support a history

getHistorySize

public static int getHistorySize()
Get the size, in elements (lines), of the history buffer.

Supporting implementations:

Returns:
the number of lines in the history buffer

clearHistory

public static void clearHistory()
Clear the history buffer.

Supporting implementations:


getHistoryLine

public static java.lang.String getHistoryLine(int i)
Get the specified entry from the history buffer. History buffer entries are numbered from 0 through (getHistorySize() - 1), with the oldest entry at index 0.

Supporting implementations:

Parameters:
i - the index of the entry to return
Returns:
the line at the specified index in the history buffer
Throws:
java.lang.ArrayIndexOutOfBoundsException - index out of range

readInitFile

public static void readInitFile(java.lang.String filename)
                         throws java.io.IOException
Read keybindings and variable assignments from a file. This method is a wrapper to rl_read_init_file(char *filename). Throws IOException if something goes wrong.

Supporting implementations:

Parameters:
filename - Name of file to read bindings from
Throws:
java.io.IOException

parseAndBind

public static boolean parseAndBind(java.lang.String line)
Parse argument string as if it had been read from `inputrc' file and perform key bindings and variable assignments found.

Supporting implementations:

Parameters:
line - Simulated line from inputrc file
Returns:
boolean False in case of error

readHistoryFile

public static void readHistoryFile(java.lang.String filename)
                            throws java.io.EOFException,
                                   java.io.UnsupportedEncodingException
Reads a history file into memory

Supporting implementations:

Parameters:
filename - Name of history file to read
Throws:
java.io.EOFException
java.io.UnsupportedEncodingException

writeHistoryFile

public static void writeHistoryFile(java.lang.String filename)
                             throws java.io.EOFException,
                                    java.io.UnsupportedEncodingException
Writes a history file to disc

Supporting implementations:

Parameters:
filename - Name of history file to write
Throws:
java.io.EOFException
java.io.UnsupportedEncodingException

setCompleter

public static void setCompleter(ReadlineCompleter rlc)
Set your completer implementation. Setting this to null will result in the default behaviour of readline which is filename completion.

Supporting implementations:

Parameters:
rlc - An object implementing the ReadlineCompleter interface

getCompleter

public static ReadlineCompleter getCompleter()
Query current completer function.

Returns:
Current ReadlineCompleter object

cleanup

public static void cleanup()
Reset the readline library and with it, the terminal.

Supporting implementations:


hasTerminal

public static boolean hasTerminal()
Return if we have a terminal. This requires, that any of the native libraries have been loaded yet (so call Readline.load(ReadlineLibrary)()) first, otherwise this will always return true.

Supporting implementations:


setWordBreakCharacters

public static void setWordBreakCharacters(java.lang.String wordBreakCharacters)
                                   throws java.io.UnsupportedEncodingException
Set word break characters.

Supporting implementations:

Parameters:
wordBreakCharacters - A string of word break characters
Throws:
java.io.UnsupportedEncodingException

getWordBreakCharacters

public static java.lang.String getWordBreakCharacters()
Query word break characters.

Supporting implementations:


getLineBuffer

public static java.lang.String getLineBuffer()
Query the current line buffer. This returns the current content of the internal line buffer. You might need this in a ReadlineCompleter implementation to access the full text given so far.

Supporting implementations:


setThrowExceptionOnUnsupportedMethod

public static void setThrowExceptionOnUnsupportedMethod(boolean flag)
Configure behavior in case an unsupported method is called. If argument is true, unsupported methods throw an UnsupportedOperationException.

Parameters:
flag - configuration flag

getThrowExceptionOnUnsupportedMethod

public static boolean getThrowExceptionOnUnsupportedMethod()
Query behavior in case an unsupported method is called.

Returns:
configuration flag

setEncoding

public static void setEncoding(java.lang.String encoding)
Set current encoding of fallback BufferedReader.

Parameters:
encoding - encoding to use

getEncoding

public static java.lang.String getEncoding()
Query current encoding of fallback BufferedReader.

Returns:
current encoding

setVar

public static int setVar(org.gnu.readline.ReadlineConstInt c,
                         int value)
Set integer readline-variable.

Parameters:
c - symbolic constant of readline-variable
value - new value of readline-variable
Returns:
old value of readline-variable

getVar

public static int getVar(org.gnu.readline.ReadlineConstInt c)
Query integer readline-variable.

Parameters:
c - symbolic constant of readline-variable
Returns:
value of variable

setVar

public static java.lang.String setVar(org.gnu.readline.ReadlineConstString c,
                                      java.lang.String value)
                               throws java.io.UnsupportedEncodingException
Set string readline-variable.

Parameters:
c - symbolic constant of readline-variable
value - new value of readline-variable
Returns:
old value of readline-variable
Throws:
java.io.UnsupportedEncodingException

getVar

public static java.lang.String getVar(org.gnu.readline.ReadlineConstString c)
                               throws java.io.UnsupportedEncodingException
Query string readline-variable.

Parameters:
c - symbolic constant of readline-variable
Returns:
value of variable
Throws:
java.io.UnsupportedEncodingException

The Java-Readline Library, Version 0.8.1

Released under the LGPL, (c) Bernhard Bablok, Henner Zeller 1998-2002
Homepage: http://java-readline.sourceforge.net/