Annotation of GNUtools/debug/gdb/readline/readline.h, revision 1.1

1.1     ! root        1: /* Readline.h -- the names of functions callable from within readline. */
        !             2: 
        !             3: #if !defined (_READLINE_H_)
        !             4: #define _READLINE_H_
        !             5: 
        !             6: #include "keymaps.h"
        !             7: 
        !             8: #if !defined (__FUNCTION_DEF)
        !             9: typedef int Function ();
        !            10: #define __FUNCTION_DEF
        !            11: #endif /* __FUNCTION_DEF */
        !            12: 
        !            13: /* The functions for manipulating the text of the line within readline.
        !            14: Most of these functions are bound to keys by default. */
        !            15: extern int
        !            16:   rl_beg_of_line (), rl_backward (), rl_delete (), rl_end_of_line (),
        !            17:   rl_forward (), ding (), rl_backward (), rl_newline (), rl_kill_line (),
        !            18:   rl_clear_screen (), rl_get_next_history (), rl_get_previous_history (),
        !            19:   rl_quoted_insert (), rl_reverse_search_history (), rl_transpose_chars (),
        !            20:   rl_unix_line_discard (), rl_quoted_insert (), rl_unix_word_rubout (),
        !            21:   rl_yank (), rl_rubout (), rl_backward_word (), rl_kill_word (),
        !            22:   rl_forward_word (), rl_tab_insert (), rl_yank_pop (), rl_yank_nth_arg (),
        !            23:   rl_backward_kill_word (), rl_backward_kill_line (), rl_transpose_words (),
        !            24:   rl_complete (), rl_possible_completions (), rl_do_lowercase_version (),
        !            25:   rl_digit_argument (), rl_universal_argument (), rl_abort (),
        !            26:   rl_undo_command (), rl_revert_line (), rl_beginning_of_history (),
        !            27:   rl_end_of_history (), rl_forward_search_history (), rl_insert (),
        !            28:   rl_upcase_word (), rl_downcase_word (), rl_capitalize_word (),
        !            29:   rl_restart_output (), rl_re_read_init_file (), rl_dump_functions ();
        !            30: 
        !            31: /* These are *both* defined even when VI_MODE is not. */
        !            32: extern int rl_vi_editing_mode (), rl_emacs_editing_mode ();
        !            33: 
        !            34: #if defined (VI_MODE)
        !            35: /* Things for vi mode. */
        !            36: extern int
        !            37:   rl_vi_movement_mode (), rl_vi_insertion_mode (), rl_vi_arg_digit (),
        !            38:   rl_vi_prev_word (), rl_vi_next_word (), rl_vi_char_search (),
        !            39:   rl_vi_eof_maybe (), rl_vi_append_mode (), rl_vi_put (),
        !            40:   rl_vi_append_eol (), rl_vi_insert_beg (), rl_vi_delete (), rl_vi_comment (),
        !            41:   rl_vi_first_print (), rl_vi_fword (), rl_vi_fWord (), rl_vi_bword (),
        !            42:   rl_vi_bWord (), rl_vi_eword (), rl_vi_eWord (), rl_vi_end_word (),
        !            43:   rl_vi_change_case (), rl_vi_match (), rl_vi_bracktype (),
        !            44:   rl_vi_change_char (), rl_vi_yank_arg (), rl_vi_search (),
        !            45:   rl_vi_search_again (), rl_vi_dosearch (), rl_vi_subst (),
        !            46:   rl_vi_overstrike (), rl_vi_overstrike_delete (), rl_vi_replace(),
        !            47:   rl_vi_column (), rl_vi_delete_to (), rl_vi_change_to (), rl_vi_yank_to (),
        !            48:   rl_vi_complete (), rl_vi_fetch_history ();
        !            49: #endif /* VI_MODE */
        !            50: 
        !            51: /* Keyboard macro commands. */
        !            52: extern int
        !            53: rl_start_kbd_macro (), rl_end_kbd_macro (), rl_call_last_kbd_macro ();
        !            54: 
        !            55: extern int rl_arrow_keys(), rl_refresh_line ();
        !            56: 
        !            57: /* Maintaining the state of undo.  We remember individual deletes and inserts
        !            58:    on a chain of things to do. */
        !            59: 
        !            60: /* The actions that undo knows how to undo.  Notice that UNDO_DELETE means
        !            61:    to insert some text, and UNDO_INSERT means to delete some text.   I.e.,
        !            62:    the code tells undo what to undo, not how to undo it. */
        !            63: enum undo_code { UNDO_DELETE, UNDO_INSERT, UNDO_BEGIN, UNDO_END };
        !            64: 
        !            65: /* What an element of THE_UNDO_LIST looks like. */
        !            66: typedef struct undo_list {
        !            67:   struct undo_list *next;
        !            68:   int start, end;              /* Where the change took place. */
        !            69:   char *text;                  /* The text to insert, if undoing a delete. */
        !            70:   enum undo_code what;         /* Delete, Insert, Begin, End. */
        !            71: } UNDO_LIST;
        !            72: 
        !            73: /* The current undo list for RL_LINE_BUFFER. */
        !            74: extern UNDO_LIST *rl_undo_list;
        !            75: 
        !            76: /* The data structure for mapping textual names to code addresses. */
        !            77: typedef struct {
        !            78:   char *name;
        !            79:   Function *function;
        !            80: } FUNMAP;
        !            81: 
        !            82: extern FUNMAP **funmap;
        !            83: 
        !            84: /* **************************************************************** */
        !            85: /*                                                                 */
        !            86: /*                     Well Published Variables                    */
        !            87: /*                                                                 */
        !            88: /* **************************************************************** */
        !            89: 
        !            90: /* The name of the calling program.  You should initialize this to
        !            91:    whatever was in argv[0].  It is used when parsing conditionals. */
        !            92: extern char *rl_readline_name;
        !            93: 
        !            94: /* The line buffer that is in use. */
        !            95: extern char *rl_line_buffer;
        !            96: 
        !            97: /* The location of point, and end. */
        !            98: extern int rl_point, rl_end;
        !            99: 
        !           100: /* The name of the terminal to use. */
        !           101: extern char *rl_terminal_name;
        !           102: 
        !           103: /* The input and output streams. */
        !           104: extern FILE *rl_instream, *rl_outstream;
        !           105: 
        !           106: /* The basic list of characters that signal a break between words for the
        !           107:    completer routine.  The initial contents of this variable is what
        !           108:    breaks words in the shell, i.e. "n\"\\'`@$>". */
        !           109: extern char *rl_basic_word_break_characters;
        !           110: 
        !           111: /* The list of characters that signal a break between words for
        !           112:    rl_complete_internal.  The default list is the contents of
        !           113:    rl_basic_word_break_characters.  */
        !           114: extern char *rl_completer_word_break_characters;
        !           115: 
        !           116: /* List of characters which are used to quote a substring of the command
        !           117:    line, upon which completion is to be performed for the entire substring.
        !           118:    Within quoted substrings, rl_completer_word_break_characters are treated
        !           119:    as normal characters, unless they also appear in this list. */
        !           120: extern char *rl_completer_quote_characters;
        !           121: 
        !           122: /* List of characters that are word break characters, but should be left
        !           123:    in TEXT when it is passed to the completion function.  The shell uses
        !           124:    this to help determine what kind of completing to do. */
        !           125: extern char *rl_special_prefixes;
        !           126: 
        !           127: /* Pointer to the generator function for completion_matches ().
        !           128:    NULL means to use filename_entry_function (), the default filename
        !           129:    completer. */
        !           130: extern Function *rl_completion_entry_function;
        !           131: 
        !           132: /* If rl_ignore_some_completions_function is non-NULL it is the address
        !           133:    of a function to call after all of the possible matches have been
        !           134:    generated, but before the actual completion is done to the input line.
        !           135:    The function is called with one argument; a NULL terminated array
        !           136:    of (char *).  If your function removes any of the elements, they
        !           137:    must be free()'ed. */
        !           138: extern Function *rl_ignore_some_completions_function;
        !           139: 
        !           140: /* Pointer to alternative function to create matches.
        !           141:    Function is called with TEXT, START, and END.
        !           142:    START and END are indices in RL_LINE_BUFFER saying what the boundaries
        !           143:    of TEXT are.
        !           144:    If this function exists and returns NULL then call the value of
        !           145:    rl_completion_entry_function to try to match, otherwise use the
        !           146:    array of strings returned. */
        !           147: extern Function *rl_attempted_completion_function;
        !           148: 
        !           149: /* If non-zero, then this is the address of a function to call just
        !           150:    before readline_internal () prints the first prompt. */
        !           151: extern Function *rl_startup_hook;
        !           152: 
        !           153: /* If non-zero, then this is the address of a function to call when
        !           154:    completing on a directory name.  The function is called with
        !           155:    the address of a string (the current directory name) as an arg. */
        !           156: extern Function *rl_symbolic_link_hook;
        !           157: 
        !           158: /* If non-zero then this is the address of a function you want called
        !           159:    while Readline is waiting for character input.     */
        !           160: extern Function *rl_event_hook;
        !           161: 
        !           162: /* Non-zero means that modified history lines are preceded
        !           163:    with an asterisk. */
        !           164: extern int rl_show_star;
        !           165: 
        !           166: 
        !           167: /* **************************************************************** */
        !           168: /*                                                                  */
        !           169: /*             Tilde Variables That Can be Externally Set           */
        !           170: /*                                                                  */
        !           171: /* **************************************************************** */
        !           172: 
        !           173: /* If non-null, this contains the address of a function to call if the
        !           174:    standard meaning for expanding a tilde fails.  The function is called
        !           175:    with the text (sans tilde, as in "foo"), and returns a malloc()'ed string
        !           176:    which is the expansion, or a NULL pointer if there is no expansion. */
        !           177: extern Function *tilde_expansion_failure_hook;
        !           178: 
        !           179: /* When non-null, this is a NULL terminated array of strings which
        !           180:    are duplicates for a tilde prefix.  Bash uses this to expand
        !           181:    `=~' and `:~'. */
        !           182: extern char **tilde_additional_prefixes;
        !           183: 
        !           184: /* When non-null, this is a NULL terminated array of strings which match
        !           185:    the end of a username, instead of just "/".  Bash sets this to
        !           186:    `/' and `:'. */
        !           187: extern char **tilde_additional_suffixes;
        !           188: 
        !           189: /* **************************************************************** */
        !           190: /*                                                                 */
        !           191: /*                     Well Published Functions                    */
        !           192: /*                                                                 */
        !           193: /* **************************************************************** */
        !           194: 
        !           195: /* Read a line of input.  Prompt with PROMPT.  A NULL PROMPT means none. */
        !           196: extern char *readline ();
        !           197: 
        !           198: /* Return an array of strings which are the result of repeatadly calling
        !           199:    FUNC with TEXT. */
        !           200: extern char **completion_matches ();
        !           201: 
        !           202: /* rl_add_defun (char *name, Function *function, int key)
        !           203:    Add NAME to the list of named functions.  Make FUNCTION
        !           204:    be the function that gets called.
        !           205:    If KEY is not -1, then bind it. */
        !           206: extern int rl_add_defun ();
        !           207: 
        !           208: #endif /* _READLINE_H_ */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.