summaryrefslogtreecommitdiff
path: root/buff.h
blob: f97ed781a6d504b519b1a7e7be50fdbd4aa88acb (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
#ifndef __BUFF_H__
#define __BUFF_H__

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define E printf("?\n")
#define CHECKADDR  if (addr1 < addr2){ E; break;}


typedef struct line_t {
  char *c;
  unsigned int s;
  struct line_t *prev;
  struct line_t *next;
} line_t;


extern line_t *b_start;
extern line_t *b_end;
extern line_t *cur;
extern unsigned int num;
extern unsigned int pos;
extern int addr1, addr2;
extern char *fname;


int read_lines(FILE *);
void print_lines(char);
void print_cur_line(char);
int move_to_line(int, char);
void print_lineno();
void append_lines();
void insert_lines();
void delete_lines();
int write_lines();


#endif /* __BUFF_H__ */