00001 /* rlprivate.h -- functions and variables global to the readline library, 00002 but not intended for use by applications. */ 00003 00004 /* Copyright (C) 1999-2004 Free Software Foundation, Inc. 00005 00006 This file is part of the GNU Readline Library, a library for 00007 reading lines of text with interactive input and history editing. 00008 00009 The GNU Readline Library is free software; you can redistribute it 00010 and/or modify it under the terms of the GNU General Public License 00011 as published by the Free Software Foundation; either version 2, or 00012 (at your option) any later version. 00013 00014 The GNU Readline Library is distributed in the hope that it will be 00015 useful, but WITHOUT ANY WARRANTY; without even the implied warranty 00016 of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00017 GNU General Public License for more details. 00018 00019 The GNU General Public License is often shipped with GNU software, and 00020 is generally kept in a file called COPYING or LICENSE. If you do not 00021 have a copy of the license, write to the Free Software Foundation, 00022 59 Temple Place, Suite 330, Boston, MA 02111 USA. */ 00023 00024 #if !defined (_RL_PRIVATE_H_) 00025 #define _RL_PRIVATE_H_ 00026 00027 #include "rlconf.h" /* for VISIBLE_STATS */ 00028 #include "rlstdc.h" 00029 #include "posixjmp.h" /* defines procenv_t */ 00030 00031 /************************************************************************* 00032 * * 00033 * Global functions undocumented in texinfo manual and not in readline.h * 00034 * * 00035 *************************************************************************/ 00036 00037 /************************************************************************* 00038 * * 00039 * Global variables undocumented in texinfo manual and not in readline.h * 00040 * * 00041 *************************************************************************/ 00042 00043 /* complete.c */ 00044 extern int rl_complete_with_tilde_expansion; 00045 #if defined (VISIBLE_STATS) 00046 extern int rl_visible_stats; 00047 #endif /* VISIBLE_STATS */ 00048 00049 /* readline.c */ 00050 extern int rl_line_buffer_len; 00051 extern int rl_arg_sign; 00052 extern int rl_visible_prompt_length; 00053 extern int readline_echoing_p; 00054 extern int rl_key_sequence_length; 00055 extern int rl_byte_oriented; 00056 00057 /* display.c */ 00058 extern int rl_display_fixed; 00059 00060 /* parens.c */ 00061 extern int rl_blink_matching_paren; 00062 00063 /************************************************************************* 00064 * * 00065 * Global functions and variables unsed and undocumented * 00066 * * 00067 *************************************************************************/ 00068 00069 /* kill.c */ 00070 extern int rl_set_retained_kills PARAMS((int)); 00071 00072 /* terminal.c */ 00073 extern void _rl_set_screen_size PARAMS((int, int)); 00074 00075 /* undo.c */ 00076 extern int _rl_fix_last_undo_of_type PARAMS((int, int, int)); 00077 00078 /* util.c */ 00079 extern char *_rl_savestring PARAMS((const char *)); 00080 00081 /************************************************************************* 00082 * * 00083 * Functions and variables private to the readline library * 00084 * * 00085 *************************************************************************/ 00086 00087 /* NOTE: Functions and variables prefixed with `_rl_' are 00088 pseudo-global: they are global so they can be shared 00089 between files in the readline library, but are not intended 00090 to be visible to readline callers. */ 00091 00092 /************************************************************************* 00093 * Undocumented private functions * 00094 *************************************************************************/ 00095 00096 #if defined(READLINE_CALLBACKS) 00097 00098 /* readline.c */ 00099 extern void readline_internal_setup PARAMS((void)); 00100 extern char *readline_internal_teardown PARAMS((int)); 00101 extern int readline_internal_char PARAMS((void)); 00102 00103 #endif /* READLINE_CALLBACKS */ 00104 00105 /* bind.c */ 00106 00107 /* complete.c */ 00108 extern char _rl_find_completion_word PARAMS((int *, int *)); 00109 extern void _rl_free_match_list PARAMS((char **)); 00110 00111 /* display.c */ 00112 extern char *_rl_strip_prompt PARAMS((char *)); 00113 extern void _rl_move_cursor_relative PARAMS((int, const char *)); 00114 extern void _rl_move_vert PARAMS((int)); 00115 extern void _rl_save_prompt PARAMS((void)); 00116 extern void _rl_restore_prompt PARAMS((void)); 00117 extern char *_rl_make_prompt_for_search PARAMS((int)); 00118 extern void _rl_erase_at_end_of_line PARAMS((int)); 00119 extern void _rl_clear_to_eol PARAMS((int)); 00120 extern void _rl_clear_screen PARAMS((void)); 00121 extern void _rl_update_final PARAMS((void)); 00122 extern void _rl_redisplay_after_sigwinch PARAMS((void)); 00123 extern void _rl_clean_up_for_exit PARAMS((void)); 00124 extern void _rl_erase_entire_line PARAMS((void)); 00125 extern int _rl_current_display_line PARAMS((void)); 00126 00127 /* input.c */ 00128 extern int _rl_any_typein PARAMS((void)); 00129 extern int _rl_input_available PARAMS((void)); 00130 extern int _rl_input_queued PARAMS((int)); 00131 extern void _rl_insert_typein PARAMS((int)); 00132 extern int _rl_unget_char PARAMS((int)); 00133 extern int _rl_pushed_input_available PARAMS((void)); 00134 00135 /* macro.c */ 00136 extern void _rl_with_macro_input PARAMS((char *)); 00137 extern int _rl_next_macro_key PARAMS((void)); 00138 extern void _rl_push_executing_macro PARAMS((void)); 00139 extern void _rl_pop_executing_macro PARAMS((void)); 00140 extern void _rl_add_macro_char PARAMS((int)); 00141 extern void _rl_kill_kbd_macro PARAMS((void)); 00142 00143 /* misc.c */ 00144 extern int _rl_init_argument PARAMS((void)); 00145 extern void _rl_start_using_history PARAMS((void)); 00146 extern int _rl_free_saved_history_line PARAMS((void)); 00147 extern void _rl_set_insert_mode PARAMS((int, int)); 00148 00149 /* nls.c */ 00150 extern int _rl_init_eightbit PARAMS((void)); 00151 00152 /* parens.c */ 00153 extern void _rl_enable_paren_matching PARAMS((int)); 00154 00155 /* readline.c */ 00156 extern void _rl_init_line_state PARAMS((void)); 00157 extern void _rl_set_the_line PARAMS((void)); 00158 extern int _rl_dispatch PARAMS((int, Keymap)); 00159 extern int _rl_dispatch_subseq PARAMS((int, Keymap, int)); 00160 00161 /* rltty.c */ 00162 extern int _rl_disable_tty_signals PARAMS((void)); 00163 extern int _rl_restore_tty_signals PARAMS((void)); 00164 00165 /* terminal.c */ 00166 extern void _rl_get_screen_size PARAMS((int, int)); 00167 extern int _rl_init_terminal_io PARAMS((const char *)); 00168 #ifdef _MINIX 00169 extern void _rl_output_character_function PARAMS((int)); 00170 #else 00171 extern int _rl_output_character_function PARAMS((int)); 00172 #endif 00173 extern void _rl_output_some_chars PARAMS((const char *, int)); 00174 extern int _rl_backspace PARAMS((int)); 00175 extern void _rl_enable_meta_key PARAMS((void)); 00176 extern void _rl_control_keypad PARAMS((int)); 00177 extern void _rl_set_cursor PARAMS((int, int)); 00178 00179 /* text.c */ 00180 extern void _rl_fix_point PARAMS((int)); 00181 extern int _rl_replace_text PARAMS((const char *, int, int)); 00182 extern int _rl_insert_char PARAMS((int, int)); 00183 extern int _rl_overwrite_char PARAMS((int, int)); 00184 extern int _rl_overwrite_rubout PARAMS((int, int)); 00185 extern int _rl_rubout_char PARAMS((int, int)); 00186 #if defined (HANDLE_MULTIBYTE) 00187 extern int _rl_char_search_internal PARAMS((int, int, char *, int)); 00188 #else 00189 extern int _rl_char_search_internal PARAMS((int, int, int)); 00190 #endif 00191 extern int _rl_set_mark_at_pos PARAMS((int)); 00192 00193 /* util.c */ 00194 extern int _rl_abort_internal PARAMS((void)); 00195 extern char *_rl_strindex PARAMS((const char *, const char *)); 00196 extern int _rl_qsort_string_compare PARAMS((char **, char **)); 00197 extern int (_rl_uppercase_p) PARAMS((int)); 00198 extern int (_rl_lowercase_p) PARAMS((int)); 00199 extern int (_rl_pure_alphabetic) PARAMS((int)); 00200 extern int (_rl_digit_p) PARAMS((int)); 00201 extern int (_rl_to_lower) PARAMS((int)); 00202 extern int (_rl_to_upper) PARAMS((int)); 00203 extern int (_rl_digit_value) PARAMS((int)); 00204 00205 /* vi_mode.c */ 00206 extern void _rl_vi_initialize_line PARAMS((void)); 00207 extern void _rl_vi_reset_last PARAMS((void)); 00208 extern void _rl_vi_set_last PARAMS((int, int, int)); 00209 extern int _rl_vi_textmod_command PARAMS((int)); 00210 extern void _rl_vi_done_inserting PARAMS((void)); 00211 00212 /************************************************************************* 00213 * Undocumented private variables * 00214 *************************************************************************/ 00215 00216 /* bind.c */ 00217 extern const char *_rl_possible_control_prefixes[]; 00218 extern const char *_rl_possible_meta_prefixes[]; 00219 00220 /* complete.c */ 00221 extern int _rl_complete_show_all; 00222 extern int _rl_complete_show_unmodified; 00223 extern int _rl_complete_mark_directories; 00224 extern int _rl_complete_mark_symlink_dirs; 00225 extern int _rl_print_completions_horizontally; 00226 extern int _rl_completion_case_fold; 00227 extern int _rl_match_hidden_files; 00228 extern int _rl_page_completions; 00229 00230 /* display.c */ 00231 extern int _rl_vis_botlin; 00232 extern int _rl_last_c_pos; 00233 extern int _rl_suppress_redisplay; 00234 extern char *rl_display_prompt; 00235 00236 /* isearch.c */ 00237 extern char *_rl_isearch_terminators; 00238 00239 /* macro.c */ 00240 extern char *_rl_executing_macro; 00241 00242 /* misc.c */ 00243 extern int _rl_history_preserve_point; 00244 extern int _rl_history_saved_point; 00245 00246 /* readline.c */ 00247 extern int _rl_horizontal_scroll_mode; 00248 extern int _rl_mark_modified_lines; 00249 extern int _rl_bell_preference; 00250 extern int _rl_meta_flag; 00251 extern int _rl_convert_meta_chars_to_ascii; 00252 extern int _rl_output_meta_chars; 00253 extern char *_rl_comment_begin; 00254 extern unsigned char _rl_parsing_conditionalized_out; 00255 extern Keymap _rl_keymap; 00256 extern FILE *_rl_in_stream; 00257 extern FILE *_rl_out_stream; 00258 extern int _rl_last_command_was_kill; 00259 extern int _rl_eof_char; 00260 extern procenv_t readline_top_level; 00261 00262 /* terminal.c */ 00263 extern int _rl_enable_keypad; 00264 extern int _rl_enable_meta; 00265 extern char *_rl_term_clreol; 00266 extern char *_rl_term_clrpag; 00267 extern char *_rl_term_im; 00268 extern char *_rl_term_ic; 00269 extern char *_rl_term_ei; 00270 extern char *_rl_term_DC; 00271 extern char *_rl_term_up; 00272 extern char *_rl_term_dc; 00273 extern char *_rl_term_cr; 00274 extern char *_rl_term_IC; 00275 extern int _rl_screenheight; 00276 extern int _rl_screenwidth; 00277 extern int _rl_screenchars; 00278 extern int _rl_terminal_can_insert; 00279 extern int _rl_term_autowrap; 00280 00281 /* undo.c */ 00282 extern int _rl_doing_an_undo; 00283 extern int _rl_undo_group_level; 00284 00285 /* vi_mode.c */ 00286 extern int _rl_vi_last_command; 00287 00288 #endif /* _RL_PRIVATE_H_ */
1.4.7

