aboutsummaryrefslogtreecommitdiffstats
path: root/src/edit.h
blob: b3b5a502b045d641c54a3eb798e39d343ddf623c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/* public things from edit.c */

#ifndef _EDIT_H_
#define _EDIT_H_

typedef struct {
  char *name;
  function_str funct;
} edit_function;

extern edit_function internal_functions[];

/*
 * GH: completion list, stolen from cancan 2.6.3a
 *
 *     words[wordindex] is where the next word will go (always empty)
 *     words[wordindex].prev is last (least interesting)
 *     words[wordindex].next is 2nd (first to search for completion)
 */
#define WORD_UNIQUE	1		/* word is unique in list */
typedef struct {
    char *word;
    int  next, prev;
    char flags;
} wordnode;

extern char *hist[MAX_HIST];
extern int curline;
extern int pickline;

extern wordnode words[MAX_WORDS];
extern int wordindex;

/*         public function declarations         */
void edit_bootstrap(void);

int  lookup_edit_name(char *name, char **arg);
int  lookup_edit_function(function_str funct);
void draw_prompt(void);
void clear_input_line(int deleteprompt);
void draw_input_line(void);
void redraw_line(char *dummy);
void redraw_line_noprompt(char *dummy);
void transpose_words(char *dummy);
void transpose_chars(char *dummy);
void kill_to_eol(char *dummy);
void end_of_line(char *dummy);
void begin_of_line(char *dummy);
void del_char_right(char *dummy);
void del_char_left(char *dummy);
void to_history(char *dummy);
void put_history(char *str);
void complete_word(char *dummy);
void complete_line(char *dummy);
void put_word(char *s);
void put_static_word(char *s);
void set_custom_delimeters(char *s);
void to_input_line(char *str);
void clear_line(char *dummy);
void enter_line(char *dummy);
void putbackcursor(void);
void insert_char(char c);
void next_word(char *dummy);
void prev_word(char *dummy);
void del_word_right(char *dummy);
void del_word_left(char *dummy);
void upcase_word(char *dummy);
void downcase_word(char *dummy);
void prev_line(char *dummy);
void next_line(char *dummy);
void prev_char(char *dummy);
void next_char(char *dummy);
void key_run_command(char *cmd);

#endif /* _EDIT_H_ */