version 1.33, 2003/09/14 21:55:39 |
version 1.34, 2003/09/14 22:15:23 |
Line 92 int rl_attempted_completion_over = 0; |
|
Line 92 int rl_attempted_completion_over = 0; |
|
char *rl_basic_word_break_characters = break_chars; |
char *rl_basic_word_break_characters = break_chars; |
char *rl_completer_word_break_characters = NULL; |
char *rl_completer_word_break_characters = NULL; |
char *rl_completer_quote_characters = NULL; |
char *rl_completer_quote_characters = NULL; |
CPFunction *rl_completion_entry_function = NULL; |
Function *rl_completion_entry_function = NULL; |
CPPFunction *rl_attempted_completion_function = NULL; |
CPPFunction *rl_attempted_completion_function = NULL; |
Function *rl_pre_input_hook = NULL; |
Function *rl_pre_input_hook = NULL; |
Function *rl_startup1_hook = NULL; |
Function *rl_startup1_hook = NULL; |
Line 103 int rl_filename_completion_desired = 0; |
|
Line 103 int rl_filename_completion_desired = 0; |
|
int rl_ignore_completion_duplicates = 0; |
int rl_ignore_completion_duplicates = 0; |
VFunction *rl_redisplay_function = NULL; |
VFunction *rl_redisplay_function = NULL; |
Function *rl_startup_hook = NULL; |
Function *rl_startup_hook = NULL; |
Function *rl_completion_display_matches_hook = NULL; |
VFunction *rl_completion_display_matches_hook = NULL; |
VFunction *rl_prep_term_function = NULL; |
VFunction *rl_prep_term_function = NULL; |
VFunction *rl_deprep_term_function = NULL; |
VFunction *rl_deprep_term_function = NULL; |
|
|
Line 1577 rl_display_match_list (matches, len, max |
|
Line 1577 rl_display_match_list (matches, len, max |
|
static int |
static int |
rl_complete_internal(int what_to_do) |
rl_complete_internal(int what_to_do) |
{ |
{ |
CPFunction *complet_func; |
Function *complet_func; |
const LineInfo *li; |
const LineInfo *li; |
char *temp, **matches; |
char *temp, **matches; |
const char *ctemp; |
const char *ctemp; |
Line 1590 rl_complete_internal(int what_to_do) |
|
Line 1590 rl_complete_internal(int what_to_do) |
|
|
|
complet_func = rl_completion_entry_function; |
complet_func = rl_completion_entry_function; |
if (!complet_func) |
if (!complet_func) |
complet_func = filename_completion_function; |
complet_func = (Function *)(void *)filename_completion_function; |
|
|
/* We now look backwards for the start of a filename/variable word */ |
/* We now look backwards for the start of a filename/variable word */ |
li = el_line(e); |
li = el_line(e); |
Line 1612 rl_complete_internal(int what_to_do) |
|
Line 1612 rl_complete_internal(int what_to_do) |
|
rl_end = li->lastchar - li->buffer; |
rl_end = li->lastchar - li->buffer; |
|
|
if (!rl_attempted_completion_function) |
if (!rl_attempted_completion_function) |
matches = completion_matches(temp, complet_func); |
matches = completion_matches(temp, (CPFunction *)complet_func); |
else { |
else { |
int end = li->cursor - li->buffer; |
int end = li->cursor - li->buffer; |
matches = (*rl_attempted_completion_function) (temp, (int) |
matches = (*rl_attempted_completion_function) (temp, (int) |
Line 1642 rl_complete_internal(int what_to_do) |
|
Line 1642 rl_complete_internal(int what_to_do) |
|
* object is a directory. |
* object is a directory. |
*/ |
*/ |
size_t alen = strlen(matches[0]); |
size_t alen = strlen(matches[0]); |
if ((complet_func != filename_completion_function |
if ((complet_func != |
|
(Function *)filename_completion_function |
|| (alen > 0 && (matches[0])[alen - 1] != '/')) |
|| (alen > 0 && (matches[0])[alen - 1] != '/')) |
&& rl_completion_append_character) { |
&& rl_completion_append_character) { |
char buf[2]; |
char buf[2]; |