Increase the size of the 'message' buffer, which is currently
[sgt/tweak] / tweak.h
CommitLineData
6e182d98 1#ifndef TWEAK_TWEAK_H
2#define TWEAK_TWEAK_H
3
11825bd4 4#ifndef NO_LARGE_FILES
5
6#ifndef _LARGEFILE_SOURCE
7#define _LARGEFILE_SOURCE
8#endif
9#ifndef _FILE_OFFSET_BITS
10#define _FILE_OFFSET_BITS 64
11#endif
12
13#endif
14
6e182d98 15#ifndef FALSE
16#define FALSE 0
17#endif
18#ifndef TRUE
19#define TRUE 1
20#endif
21
22#define EVER ;;
23
24#ifdef MSDOS
25#define ABORT 34 /* scan code for ^G */
26#else
27#define ABORT 7 /* character code for ^G */
28#endif
29
c856a9ab 30#ifndef VER
31#define VER ""
32#endif
6e182d98 33
34#define SEARCH_BLK 65536 /* so can this */
35#define SAVE_BLKSIZ 32768 /* and this too */
36
37#define COL_BUFFER 0 /* normal buffer colour */
38#define COL_SELECT 1 /* selected-area colour */
39#define COL_STATUS 2 /* status-line colour */
40#define COL_ESCAPE 3 /* escape sequences in minibuffer */
41#define COL_INVALID 4 /* invalid escape sequence in m/b */
42#define COL_MINIBUF COL_BUFFER /* these should be the same */
43
44#define NULL4 NULL, NULL, NULL, NULL
45#define NULL16 NULL4, NULL4, NULL4, NULL4
46#define NULL64 NULL16,NULL16,NULL16,NULL16
47#define NULL256 NULL64,NULL64,NULL64,NULL64
48
11825bd4 49#include <stdio.h>
50
51#ifdef NO_LARGE_FILES
52typedef int fileoffset_t; /* used for all file offsets */
53#define OFF
54#define ATOOFF atoi
55#define STRTOOFF strtol
56#define fseeko fseek
57#define ftello ftell
58#else
59typedef long long fileoffset_t; /* used for all file offsets */
60#define OFF "ll"
61#define ATOOFF atoll
62#define STRTOOFF strtoll
63#endif
64
6e182d98 65typedef int (*DFA)[256];
a63728c7 66typedef struct {
67 int len;
68 DFA forward, reverse;
69} Search;
70
6e182d98 71typedef void (*keyact) (void);
72
73typedef struct buffer buffer;
74
0c7480ac 75extern char toprint[256], hex[256][3], message[512];
6e182d98 76extern char decstatus[], hexstatus[], *statfmt;
77extern char last_char, *pname, *filename;
78extern buffer *filedata, *cutbuffer;
79extern int fix_mode, look_mode, insert_mode, edit_type, finished, marking;
11825bd4 80extern fileoffset_t file_size, top_pos, cur_pos, mark_point;
6e182d98 81extern int scrlines, modified, new_file;
11825bd4 82extern fileoffset_t width, offset, realoffset;
83extern int ascii_enabled;
6e182d98 84
85#ifdef unix
86extern volatile int safe_update, update_required;
87extern void update (void);
88#endif
89
90extern void fix_offset(void);
11825bd4 91extern fileoffset_t parse_num (char *buffer, int *error);
6e182d98 92
93extern void draw_scr (void);
94extern int backup_file (void);
95extern int save_file (void);
96
97extern void act_self_ins (void);
98extern keyact parse_action (char *);
99
100extern void proc_key (void);
101extern void bind_key (char *, int, keyact);
102
a63728c7 103extern Search *build_search (char *, int);
104void free_search(Search *s);
6e182d98 105
106extern int get_str (char *, char *, int);
107extern int parse_quoted (char *);
108extern void suspend (void);
109
110extern void read_rc (void);
111extern void write_default_rc (void);
112
113extern buffer *buf_new_empty(void);
114extern buffer *buf_new_from_file(FILE *fp);
115extern void buf_free(buffer *buf);
116
11825bd4 117extern void buf_insert_data(buffer *buf, void *data, int len,
118 fileoffset_t pos);
119extern void buf_fetch_data(buffer *buf, void *data, int len, fileoffset_t pos);
120extern void buf_overwrite_data(buffer *buf, void *data, int len,
121 fileoffset_t pos);
122extern void buf_delete(buffer *buf, fileoffset_t len, fileoffset_t pos);
123extern buffer *buf_cut(buffer *buf, fileoffset_t len, fileoffset_t pos);
124extern buffer *buf_copy(buffer *buf, fileoffset_t len, fileoffset_t pos);
125extern void buf_paste(buffer *buf, buffer *cutbuffer, fileoffset_t pos);
126extern fileoffset_t buf_length(buffer *buf);
6e182d98 127
128extern void display_setup(void);
129extern void display_cleanup(void);
130extern void display_beep(void);
131extern int display_rows, display_cols;
132extern void display_moveto(int y, int x);
133extern void display_refresh(void);
134extern void display_write_str(char *str);
135extern void display_write_chars(char *str, int len);
ef7de295 136extern void display_define_colour(int colour, int fg, int bg, int reverse);
6e182d98 137extern void display_set_colour(int colour);
138extern void display_clear_to_eol(void);
139extern int display_getkey(void);
140extern int display_input_to_flush(void);
141extern void display_post_error(void);
142extern void display_recheck_size(void);
143
d274205f 144#endif /* TWEAK_TWEAK_H */