|
|
1.1 ! root 1: /*************************************************************************** ! 2: * This program is Copyright (C) 1986, 1987, 1988 by Jonathan Payne. JOVE * ! 3: * is provided to you without charge, and with no warranty. You may give * ! 4: * away copies of JOVE, including sources, provided that this notice is * ! 5: * included in all the files. * ! 6: ***************************************************************************/ ! 7: ! 8: #define NALTS 16 /* number of alternate search strings */ ! 9: #define COMPSIZE 256 ! 10: ! 11: /* kinds of regular expression compiles */ ! 12: #define NORM 0 /* nothing special */ ! 13: #define OKAY_RE 1 /* allow regular expressions */ ! 14: #define IN_CB 2 /* in curly brace; implies OKAY_RE */ ! 15: ! 16: struct RE_block { ! 17: char r_compbuf[COMPSIZE], ! 18: *r_alternates[NALTS], ! 19: r_lbuf[LBSIZE]; ! 20: int r_nparens, ! 21: r_firstc, ! 22: r_anchored; ! 23: }; ! 24: ! 25: extern char searchstr[128], ! 26: rep_search[128], /* replace search string */ ! 27: rep_str[128]; /* contains replacement string */ ! 28: ! 29: extern int REdirection, ! 30: REbom, /* beginning and end columns of match */ ! 31: REeom, ! 32: REdelta; /* increase in line length due to last re_dosub */ ! 33: ! 34: extern int okay_wrap; /* Do a wrap search ... not when we're ! 35: parsing errors ... */ ! 36: extern char ! 37: *getsearch proto((void)); ! 38: ! 39: extern int ! 40: LookingAt proto((char *pattern,char *buf,int offset)), ! 41: look_at proto((char *expr)), ! 42: re_lindex proto((struct line *line,int offset,struct RE_block *re_blk, int lbuf_okay, int crater)); ! 43: ! 44: extern Bufpos ! 45: *docompiled proto((int dir, struct RE_block *re_blk)), ! 46: *dosearch proto((char *pattern,int dir,int re)); ! 47: ! 48: extern void ! 49: REcompile proto((char *pattern,int re,struct RE_block *re_blk)), ! 50: find_tag proto((char *tag,int localp)), ! 51: putmatch proto((int which,char *buf,size_t size)), ! 52: re_dosub proto((struct RE_block *re_blk, char *tobuf, int delp)), ! 53: setsearch proto((char *str)), ! 54: RErecur proto((void));
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.