-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbuffer.h
More file actions
61 lines (41 loc) · 1.17 KB
/
Copy pathbuffer.h
File metadata and controls
61 lines (41 loc) · 1.17 KB
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
#ifndef BUFFER_H
#define BUFFER_H
/*debugging FUNCTION-MACRO*/
#define INFO printf("\nline %d : %s : %s\n", __LINE__, __FILE__, __func__)
/*
* increase the value to your screen width as shown on
* devtext start screen for full width experience
*/
#define LINEMAX 180
#define TRUE 1
#define FALSE 0
typedef struct buffer{
struct buffer *next;
struct buffer *prev;
int cur_line;
int num_chars;
int curX;
char *line;
}buffer;
void bufInit(buffer *bf);
void bufDestroy(buffer *bf);
void bufSave(int fd, buffer *bf);
void bufLoad(int fd, buffer *bf);
void bufCreateNext(buffer *bf);
void bufInsert(buffer *bf);
void bufCpy(buffer *source, buffer *dest);
void bufSearch(buffer *bf, char *search);
void bufReplace(buffer *bf, char *search, char *replace);
void bufPrintAll(buffer *bf);
void lineInsert(buffer *bf, int loc, char ch);
buffer* lineRemove(buffer *bf, int y, int x);
int lineSearch(char *search);
int lineReplace(char *search, char *replace);
void lineInit(buffer *bf);
void linePrint(buffer *bf);
int lineFull(buffer *bf);
int lineEmpty(buffer *bf);
void bufIncr(buffer *bf, int val);
void bufDecr(buffer *bf, int val);
int fileexist(char const *filename);
#endif