buf_char
inline buf_char *ptr(struct edit_buffer *buf);
buf_char *data; /* == emacs buffer_text.p1+1 */
buf_char *_gap_start;
inline buf_char *gap_start()
buf_index tell(buf_char*);
inline buf_char *gap_end() { return data + gap_end_pos(); }
void move_gap (buf_char *pos) { move_gap(pos - data); }
int amount, buf_char *old_data);
extern buf_char * bstr_copy(struct edit_string *str, int *lenp);
inline buf_char *edit_mark::ptr(struct edit_buffer *buf)
buf_char *copy_bytes(int *lenp) const;
buf_char* current() { return is_reading() ? gptr() : pptr(); }
register buf_char *to, *from;
register buf_char *to, *from;
register buf_char *p1, *p2, *lim;
buf_char *old_data = data;
p1 = (buf_char *) realloc (data, s1 + size2() + k);
int amount, buf_char *old_data)
buf_char *str_end = str->end->ptr(buffer);
if ((buf_char*)gptr() == str_end)
buf_char *str_end = str->end->ptr(buffer);
if ((buf_char*)pptr() == str_end || inserting()) {
buf_index cur_pos = buffer->tell((buf_char*)current());;
buf_char *new_pos = buffer->data + offset;
buf_char* gap_start = buffer->gap_start();
buf_char* gap_end = buffer->gap_end();
buf_char *str_start = cookie->str->start->ptr(buffer);
str->buffer->delete_range(str->buffer->tell((buf_char*)pptr()),
data = (buf_char*)malloc(buf_size);
buf_char * edit_string::copy_bytes(int *lenp) const
buf_char *start1, *start2;
buf_char *new_str;
buf_index edit_buffer::tell(buf_char *ptr)