From 8ecf459d35c724b298b8f677a8d973b342a32bf6 Mon Sep 17 00:00:00 2001 From: Sascha Wildner Date: Sat, 29 Oct 2005 12:05:27 +0000 Subject: [PATCH] - include - remove register keywords - remove (void) casts before function calls - ANSI function declarations - proper variable initialization - constify strings where necessary - remove prototype macro - style(9) issues - bump WARNS to 6 (no longer override bin/Makefile.inc) Submitted-by: sephe --- bin/mined/Makefile | 3 +- bin/mined/mined.h | 278 +++++++++++++++---------------- bin/mined/mined1.c | 380 ++++++++++++++++++++---------------------- bin/mined/mined2.c | 406 ++++++++++++++++++++++++--------------------- 4 files changed, 537 insertions(+), 530 deletions(-) diff --git a/bin/mined/Makefile b/bin/mined/Makefile index feec8b1e30..17da6e74d3 100644 --- a/bin/mined/Makefile +++ b/bin/mined/Makefile @@ -1,8 +1,7 @@ -# $DragonFly: src/bin/mined/Makefile,v 1.1 2005/03/15 01:56:24 dillon Exp $ +# $DragonFly: src/bin/mined/Makefile,v 1.2 2005/10/29 12:05:27 swildner Exp $ # PROG= mined SRCS= mined1.c mined2.c -WARNS=0 .include diff --git a/bin/mined/mined.h b/bin/mined/mined.h index 511d8040b0..bc5d6a81e6 100644 --- a/bin/mined/mined.h +++ b/bin/mined/mined.h @@ -33,13 +33,12 @@ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * [original code from minix codebase] - * $DragonFly: src/bin/mined/mined.h,v 1.4 2005/03/15 02:32:57 dillon Exp $* + * $DragonFly: src/bin/mined/mined.h,v 1.5 2005/10/29 12:05:27 swildner Exp $* */ /*========================================================================* * Mined.h * *========================================================================*/ -#define _PROTOTYPE(a, b) a b #define INTEL 1 #define CHIP INTEL #define ASSUME_CONS25 @@ -63,11 +62,11 @@ extern char *CE, *VS, *SO, *SE, *CL, *AL, *CM; #else #define YMAX 24 /* Maximum y coordinate starting at 0 */ /* Escape sequences. */ -extern char *enter_string; /* String printed on entering mined */ -extern char *rev_video; /* String for starting reverse video */ -extern char *normal_video; /* String for leaving reverse video */ -extern char *rev_scroll; /* String for reverse scrolling */ -extern char *pos_string; /* Absolute cursor positioning */ +extern const char *enter_string; /* String printed on entering mined */ +extern const char *rev_video; /* String for starting reverse video */ +extern const char *normal_video; /* String for leaving reverse video */ +extern const char *rev_scroll; /* String for reverse scrolling */ +extern const char *pos_string; /* Absolute cursor positioning */ #define X_PLUS ' ' /* To be added to x for cursor sequence */ #define Y_PLUS ' ' /* To be added to y for cursor sequence */ #endif /* UNIX */ @@ -159,7 +158,7 @@ typedef struct Line LINE; */ struct regex { union { - char *err_mess; + const char *err_mess; int *expression; } result; char status; @@ -201,7 +200,7 @@ extern FLAG loading; /* Set if we're loading a file */ extern int out_count; /* Index in output buffer */ extern char file_name[LINE_LEN]; /* Name of file in use */ extern char text_buffer[MAX_CHARS]; /* Buffer for modifying text */ -extern char *blank_line; /* Clear line to end */ +extern const char *blank_line; /* Clear line to end */ extern char yank_file[]; /* Temp file for buffer */ extern FLAG yank_status; /* Status of yank_file */ @@ -215,7 +214,7 @@ extern long chars_saved; /* Nr of chars saved in buffer */ /* * Print character on terminal */ -#define putchar(c) (void) write_char(STD_OUT, (c)) +#define putchar(c) write_char(STD_OUT, (c)) /* * Ring bell on terminal @@ -225,12 +224,12 @@ extern long chars_saved; /* Nr of chars saved in buffer */ /* * Print string on terminal */ -#define string_print(str) (void) writeline(STD_OUT, (str)) +#define string_print(str) writeline(STD_OUT, (str)) /* * Flush output buffer */ -#define flush() (void) flush_buffer(STD_OUT) +#define flush() flush_buffer(STD_OUT) /* * Convert cnt to nearest tab position @@ -262,13 +261,11 @@ extern long chars_saved; /* Nr of chars saved in buffer */ /* * Functions handling status_line. ON means in reverse video. */ -#define status_line(str1, str2) (void) bottom_line(ON, (str1), \ - (str2), NIL_PTR, FALSE) -#define error(str1, str2) (void) bottom_line(ON, (str1), \ - (str2), NIL_PTR, FALSE) +#define status_line(str1, str2) bottom_line(ON, (str1), (str2), NIL_PTR, FALSE) +#define error(str1, str2) bottom_line(ON, (str1), (str2), NIL_PTR, FALSE) #define get_string(str1,str2, fl) bottom_line(ON, (str1), NIL_PTR, (str2), fl) -#define clear_status() (void) bottom_line(OFF, NIL_PTR, NIL_PTR, \ - NIL_PTR, FALSE) +#define clear_status() bottom_line(OFF, NIL_PTR, NIL_PTR, \ + NIL_PTR, FALSE) /* * Print info about current file and buffer. @@ -285,133 +282,124 @@ extern long chars_saved; /* Nr of chars saved in buffer */ /* mined1.c */ -_PROTOTYPE(void FS, (void)); -_PROTOTYPE(void VI, (void)); -_PROTOTYPE(int WT, (void)); -_PROTOTYPE(void XWT, (void)); -_PROTOTYPE(void SH, (void)); -_PROTOTYPE(LINE *proceed, (LINE *line, int count )); -_PROTOTYPE(int bottom_line, (FLAG revfl, char *s1, char *s2, char *inbuf, FLAG statfl )); -_PROTOTYPE(int count_chars, (LINE *line )); -_PROTOTYPE(void move, (int new_x, char *new_address, int new_y )); -_PROTOTYPE(int find_x, (LINE *line, char *address )); -_PROTOTYPE(char *find_address, (LINE *line, int x_coord, int *old_x )); -_PROTOTYPE(int length_of, (char *string )); -_PROTOTYPE(void copy_string, (char *to, char *from )); -_PROTOTYPE(void reset, (LINE *head_line, int screen_y )); -_PROTOTYPE(void set_cursor, (int nx, int ny )); -_PROTOTYPE(void open_device, (void)); -_PROTOTYPE(int getchar, (void)); -_PROTOTYPE(void display, (int x_coord, int y_coord, LINE *line, int count )); -_PROTOTYPE(int write_char, (int fd, int c )); -_PROTOTYPE(int writeline, (int fd, char *text )); -_PROTOTYPE(void put_line, (LINE *line, int offset, FLAG clear_line )); -_PROTOTYPE(int flush_buffer, (int fd )); -_PROTOTYPE(void bad_write, (int fd )); -_PROTOTYPE(void catch, (int sig )); -_PROTOTYPE(void abort_mined, (void)); -_PROTOTYPE(void raw_mode, (FLAG state )); -_PROTOTYPE(void panic, (char *message )); -_PROTOTYPE(char *alloc, (int bytes )); -_PROTOTYPE(void free_space, (char *p )); -/* -#ifdef UNIX -_PROTOTYPE(void (*key_map [128]), (void)); -#else -_PROTOTYPE(void (*key_map [256]), (void)); -#endif -*/ -_PROTOTYPE(void initialize, (void)); -_PROTOTYPE(char *basename, (char *path )); -_PROTOTYPE(void load_file, (char *file )); -_PROTOTYPE(int get_line, (int fd, char *buffer )); -_PROTOTYPE(LINE *install_line, (char *buffer, int length )); -_PROTOTYPE(int main, (int argc, char *argv [])); -_PROTOTYPE(void RD, (void)); -_PROTOTYPE(void I, (void)); -_PROTOTYPE(void XT, (void)); -_PROTOTYPE(void ESC, (void)); -_PROTOTYPE(int ask_save, (void)); -_PROTOTYPE(int line_number, (void)); -_PROTOTYPE(void file_status, (char *message, long count, char *file, int lines, - FLAG writefl, FLAG changed )); -#if __STDC__ -void build_string(char *buf, char *fmt, ...); -#else -void build_string(); -#endif -_PROTOTYPE(char *num_out, (long number )); -_PROTOTYPE(int get_number, (char *message, int *result )); -_PROTOTYPE(int input, (char *inbuf, FLAG clearfl )); -_PROTOTYPE(int get_file, (char *message, char *file )); -_PROTOTYPE(int _getchar, (void)); -_PROTOTYPE(void _flush, (void)); -_PROTOTYPE(void _putchar, (int c )); -_PROTOTYPE(void get_term, (void)); +void FS(int); +void VI(int); +int WT(void); +void XWT(int); +void SH(int); +LINE *proceed(LINE *line, int count); +int bottom_line(FLAG revfl, const char *s1, const char *s2, char *inbuf, FLAG statfl); +int count_chars(LINE *line); +void move(int new_x, char *new_address, int new_y); +int find_x(LINE *line, char *address); +char *find_address(LINE *line, int x_coord, int *old_x); +int length_of(char *string); +void copy_string(char *to, const char *from); +void reset(LINE *head_line, int screen_y); +void set_cursor(int nx, int ny); +void open_device(void); +int getchar(void); +void display(int x_coord, int y_coord, LINE *line, int count); +int write_char(int fd, char c); +int writeline(int fd, const char *text); +void put_line(LINE *line, int offset, FLAG clear_line); +int flush_buffer(int fd); +void bad_write(int fd); +void catch(int sig); +void abort_mined(void); +void raw_mode(FLAG state); +void panic(const char *message); +char *alloc(int bytes); +void free_space(char *p); +void initialize(void); +char *basename(char *path); +void load_file(const char *file); +int get_line(int fd, char *buffer); +LINE *install_line(const char *buffer, int length); +void RD(int); +void I(int); +void XT(int); +void ESC(int); +int ask_save(void); +int line_number(void); +void file_status(const char *message, long count, char *file, int lines, + FLAG writefl, FLAG changed); +void build_string(char *buf, const char *fmt, ...); +char *num_out(long number); +int get_number(const char *message, int *result); +int input(char *inbuf, FLAG clearfl); +int get_file(const char *message, char *file); +int _getchar(void); +void _flush(void); +void _putchar(int c); +void get_term(void); /* mined2.c */ -_PROTOTYPE(void UP, (void)); -_PROTOTYPE(void DN, (void)); -_PROTOTYPE(void LF, (void)); -_PROTOTYPE(void RT, (void)); -_PROTOTYPE(void HIGH, (void)); -_PROTOTYPE(void LOW, (void)); -_PROTOTYPE(void BL, (void)); -_PROTOTYPE(void EL, (void)); -_PROTOTYPE(void GOTO, (void)); -_PROTOTYPE(void HLP, (void)); -_PROTOTYPE(void ST, (void)); -_PROTOTYPE(void PD, (void)); -_PROTOTYPE(void PU, (void)); -_PROTOTYPE(void HO, (void)); -_PROTOTYPE(void EF, (void)); -_PROTOTYPE(void SU, (void)); -_PROTOTYPE(void SD, (void)); -_PROTOTYPE(int forward_scroll, (void)); -_PROTOTYPE(int reverse_scroll, (void)); -_PROTOTYPE(void MP, (void)); -_PROTOTYPE(void move_previous_word, (FLAG remove )); -_PROTOTYPE(void MN, (void)); -_PROTOTYPE(void move_next_word, (FLAG remove )); -_PROTOTYPE(void DCC, (void)); -_PROTOTYPE(void DPC, (void)); -_PROTOTYPE(void DLN, (void)); -_PROTOTYPE(void DNW, (void)); -_PROTOTYPE(void DPW, (void)); -_PROTOTYPE(void S, (int character )); -_PROTOTYPE(void CTL, (void)); -_PROTOTYPE(void LIB, (void)); -_PROTOTYPE(LINE *line_insert, (LINE *line, char *string, int len )); -_PROTOTYPE(int insert, (LINE *line, char *location, char *string )); -_PROTOTYPE(LINE *line_delete, (LINE *line )); -_PROTOTYPE(void delete, (LINE *start_line, char *start_textp, LINE *end_line, char *end_textp )); -_PROTOTYPE(void PT, (void)); -_PROTOTYPE(void IF, (void)); -_PROTOTYPE(void file_insert, (int fd, FLAG old_pos )); -_PROTOTYPE(void WB, (void)); -_PROTOTYPE(void MA, (void)); -_PROTOTYPE(void YA, (void)); -_PROTOTYPE(void DT, (void)); -_PROTOTYPE(void set_up, (FLAG remove )); -_PROTOTYPE(FLAG checkmark, (void)); -_PROTOTYPE(int legal, (void)); -_PROTOTYPE(void yank, (LINE *start_line, char *start_textp, LINE *end_line, char *end_textp, FLAG remove )); -_PROTOTYPE(int scratch_file, (FLAG mode )); -_PROTOTYPE(void SF, (void)); -_PROTOTYPE(void SR, (void)); -_PROTOTYPE(REGEX *get_expression, (char *message )); -_PROTOTYPE(void GR, (void)); -_PROTOTYPE(void LR, (void)); -_PROTOTYPE(void change, (char *message, FLAG file )); -_PROTOTYPE(char *substitute, (LINE *line, REGEX *program, char *replacement )); -_PROTOTYPE(void search, (char *message, FLAG method )); -_PROTOTYPE(int find_y, (LINE *match_line )); -_PROTOTYPE(void finished, (REGEX *program, int *last_exp )); -_PROTOTYPE(void compile, (char *pattern, REGEX *program )); -_PROTOTYPE(LINE *match, (REGEX *program, char *string, FLAG method )); -_PROTOTYPE(int line_check, (REGEX *program, char *string, FLAG method )); -_PROTOTYPE(int check_string, (REGEX *program, char *string, int *expression )); -_PROTOTYPE(int star, (REGEX *program, char *end_position, char *string, int *expression )); -_PROTOTYPE(int in_list, (int *list, int c, int list_length, int opcode )); -_PROTOTYPE(void dummy_line, (void)); +void UP(int); +void DN(int); +void LF(int); +void RT(int); +void HIGH(int); +void LOW(int); +void BL(int); +void EL(int); +void GOTO(int); +void HLP(int); +void ST(int); +void PD(int); +void PU(int); +void HO(int); +void EF(int); +void SU(int); +void SD(int); +int forward_scroll(void); +int reverse_scroll(void); +void MP(int); +void move_previous_word(FLAG remove); +void MN(int); +void move_next_word(FLAG remove); +void DCC(int); +void DPC(int); +void DLN(int); +void DNW(int); +void DPW(int); +void S(int character); +void CTL(int); +void LIB(int); +LINE *line_insert(LINE *line, const char *string, int len); +int insert(LINE *line, char *location, char *string); +LINE *line_delete(LINE *line); +void delete(LINE *start_line, char *start_textp, + LINE *end_line, char *end_textp); +void PT(int); +void IF(int); +void file_insert(int fd, FLAG old_pos); +void WB(int); +void MA(int); +void YA(int); +void DT(int); +void set_up(FLAG remove); +FLAG checkmark(void); +int legal(void); +void yank(LINE *start_line, char *start_textp, + LINE *end_line, char *end_textp, FLAG remove); +int scratch_file(FLAG mode); +void SF(int); +void SR(int); +REGEX *get_expression(const char *message); +void GR(int); +void LR(int); +void change(const char *message, FLAG file); +char *substitute(LINE *line, REGEX *program, char *replacement); +void search(const char *message, FLAG method); +int find_y(LINE *match_line); +void finished(REGEX *program, int *last_exp); +void compile(char *pattern, REGEX *program); +LINE *match(REGEX *program, char *string, FLAG method); +int line_check(REGEX *program, char *string, FLAG method); +int check_string(REGEX *program, char *string, int *expression); +int star(REGEX *program, char *end_position, char *string, + int *expression); +int in_list(int *list, char c, int list_length, int opcode); +void dummy_line(void); diff --git a/bin/mined/mined1.c b/bin/mined/mined1.c index 2c43234d6b..f41480f2b7 100644 --- a/bin/mined/mined1.c +++ b/bin/mined/mined1.c @@ -33,7 +33,7 @@ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * [original code from minix codebase] - * $DragonFly: src/bin/mined/mined1.c,v 1.6 2005/04/29 09:14:50 joerg Exp $* + * $DragonFly: src/bin/mined/mined1.c,v 1.7 2005/10/29 12:05:27 swildner Exp $* */ /* * Part one of the mined editor. @@ -454,11 +454,8 @@ #include #include #include -#if __STDC__ #include -#else -#include -#endif +#include int ymax = YMAX; int screenmax = SCREENMAX; @@ -467,7 +464,8 @@ int screenmax = SCREENMAX; /* * Print file status. */ -void FS() +void +FS(int u __unused) { fstatus(file_name[0] ? "" : "[buffer]", -1L); } @@ -476,7 +474,8 @@ void FS() * Visit (edit) another file. If the file has been modified, ask the user if * he wants to save it. */ -void VI() +void +VI(int u __unused) { char new_file[LINE_LEN]; /* Buffer to hold new file name */ @@ -500,10 +499,11 @@ void VI() /* * Write file in core to disc. */ -int WT() +int +WT(void) { - register LINE *line; - register long count = 0L; /* Nr of chars written */ + LINE *line; + long count = 0L; /* Nr of chars written */ char file[LINE_LEN]; /* Buffer for new file name */ int fd; /* Filedescriptor of file */ @@ -558,9 +558,10 @@ int WT() } /* Call WT and discard value returned. */ -void XWT() +void +XWT(int u __unused) { - (void) WT(); + WT(); } @@ -568,11 +569,12 @@ void XWT() /* * Call an interactive shell. */ -void SH() +void +SH(int u __unused) { - register int w; + int w; int pid, status; - char *shell; + const char *shell; if ((shell = getenv("SHELL")) == NIL_PTR) shell = "/bin/sh"; @@ -601,7 +603,7 @@ void SH() } raw_mode(ON); - RD(); + RD(0); if ((status >> 8) == 127) /* Child died with 127 */ error("Cannot exec ", shell); @@ -614,9 +616,8 @@ void SH() * it returns the count'th line before `line'. When the next (previous) * line is the tail (header) indicating EOF (tof) it stops. */ -LINE *proceed(line, count) -register LINE *line; -register int count; +LINE * +proceed(LINE *line, int count) { if (count < 0) while (count++ < 0 && line != header) @@ -632,22 +633,20 @@ register int count; * If revfl is TRUE, turn on reverse video on both strings. Set stat_visible * only if bottom_line is visible. */ -int bottom_line(revfl, s1, s2, inbuf, statfl) -FLAG revfl; -char *s1, *s2; -char *inbuf; -FLAG statfl; +int +bottom_line(FLAG revfl, const char *s1, const char *s2, char *inbuf, + FLAG statfl) { int ret = FINE; char buf[LINE_LEN]; - register char *p = buf; + char *p = buf; *p++ = ' '; if (s1 != NIL_PTR) - while (*p = *s1++) + while ((*p = *s1++) != NULL) p++; if (s2 != NIL_PTR) - while (*p = *s2++) + while ((*p = *s2++) != NULL) p++; *p++ = ' '; *p++ = 0; @@ -693,11 +692,11 @@ FLAG statfl; * Count_chars() count the number of chars that the line would occupy on the * screen. Counting starts at the real x-coordinate of the line. */ -int count_chars(line) -LINE *line; +int +count_chars(LINE *line) { - register int cnt = get_shift(line->shift_count) * -SHIFT_SIZE; - register char *textp = line->text; + int cnt = get_shift(line->shift_count) * -SHIFT_SIZE; + char *textp = line->text; /* Find begin of line on screen */ while (cnt < 0) { @@ -728,12 +727,10 @@ LINE *line; * If we're moving to the same x coordinate, try to move the the x-coordinate * used on the other previous call. */ -void move(new_x, new_address, new_y) -register int new_x; -int new_y; -char *new_address; +void +move(int new_x, char *new_address, int new_y) { - register LINE *line = cur_line; /* For building new cur_line */ + LINE *line = cur_line; /* For building new cur_line */ int shift = 0; /* How many shifts to make */ static int rel_x = 0; /* Remember relative x position */ int tx = x; @@ -807,12 +804,11 @@ char *new_address; * Find_x() returns the x coordinate belonging to address. * (Tabs are expanded). */ -int find_x(line, address) -LINE *line; -char *address; +int +find_x(LINE *line, char *address) { - register char *textp = line->text; - register int nx = get_shift(line->shift_count) * -SHIFT_SIZE; + char *textp = line->text; + int nx = get_shift(line->shift_count) * -SHIFT_SIZE; while (textp != address && *textp != '\0') { if (is_tab(*textp++)) /* Expand tabs */ @@ -827,13 +823,11 @@ char *address; * Find_address() returns the pointer in the line with offset x_coord. * (Tabs are expanded). */ -char *find_address(line, x_coord, old_x) -LINE *line; -int x_coord; -int *old_x; +char * +find_address(LINE *line, int x_coord, int *old_x) { - register char *textp = line->text; - register int tx = get_shift(line->shift_count) * -SHIFT_SIZE; + char *textp = line->text; + int tx = get_shift(line->shift_count) * -SHIFT_SIZE; while (tx < x_coord && *textp != '\n') { if (is_tab(*textp)) { @@ -855,10 +849,10 @@ int *old_x; * Length_of() returns the number of characters int the string `string' * excluding the '\0'. */ -int length_of(string) -register char *string; +int +length_of(char *string) { - register int count = 0; + int count = 0; if (string != NIL_PTR) { while (*string++ != '\0') @@ -871,11 +865,10 @@ register char *string; * Copy_string() copies the string `from' into the string `to'. `To' must be * long enough to hold `from'. */ -void copy_string(to, from) -register char *to; -register char *from; +void +copy_string(char *to, const char *from) { - while (*to++ = *from++) + while ((*to++ = *from++) != NULL) ; } @@ -884,11 +877,10 @@ register char *from; * which must be the first line of the screen, and an y-coordinate, * which will be the current y-coordinate (if it isn't larger than last_y) */ -void reset(head_line, screen_y) -LINE *head_line; -int screen_y; +void +reset(LINE *head_line, int screen_y) { - register LINE *line; + LINE *line; top_line = line = head_line; @@ -907,25 +899,24 @@ int screen_y; /* * Set cursor at coordinates x, y. */ -void set_cursor(nx, ny) -int nx, ny; +void +set_cursor(int nx, int ny) { #ifdef UNIX - extern char *tgoto(); - tputs(tgoto(CM, nx, ny), 0, _putchar); #else - char text_buffer[10]; + char text_buf[10]; - build_string(text_buffer, pos_string, ny+1, nx+1); - string_print(text_buffer); + build_string(text_buf, pos_string, ny+1, nx+1); + string_print(text_buf); #endif /* UNIX */ } /* * Routine to open terminal when mined is used in a pipeline. */ -void open_device() +void +open_device(void) { if ((input_fd = open("/dev/tty", 0)) < 0) panic("Cannot open /dev/tty for read"); @@ -935,7 +926,8 @@ void open_device() * Getchar() reads one character from the terminal. The character must be * masked with 0377 to avoid sign extension. */ -int getchar() +int +getchar(void) { #ifdef UNIX return (_getchar() & 0377); @@ -955,10 +947,8 @@ int getchar() * rest of the screen with blank_line's. * When count is negative, a backwards print from `line' will be done. */ -void display(x_coord, y_coord, line, count) -int x_coord, y_coord; -register LINE *line; -register int count; +void +display(int x_coord, int y_coord, LINE *line, int count) { set_cursor(x_coord, y_coord); @@ -991,9 +981,8 @@ register int count; /* * Write_char does a buffered output. */ -int write_char(fd, c) -int fd; -char c; +int +write_char(int fd, char c) { screen [out_count++] = c; if (out_count == SCREEN_SIZE) /* Flush on SCREEN_SIZE chars */ @@ -1004,9 +993,8 @@ char c; /* * Writeline writes the given string on the given filedescriptor. */ -int writeline(fd, text) -register int fd; -register char *text; +int +writeline(int fd, const char *text) { while(*text) if (write_char(fd, *text++) == ERRORS) @@ -1019,14 +1007,17 @@ register char *text; * printing will start at that x-coordinate. If the FLAG clear_line is TRUE, * then (screen) line will be cleared when the end of the line has been * reached. + * + * parameter + * line: Line to print + * offset: Offset to start + * clear_line: Clear to eoln if TRUE */ -void put_line(line, offset, clear_line) -LINE *line; /* Line to print */ -int offset; /* Offset to start */ -FLAG clear_line; /* Clear to eoln if TRUE */ +void +put_line(LINE *line, int offset, FLAG clear_line) { - register char *textp = line->text; - register int count = get_shift(line->shift_count) * -SHIFT_SIZE; + char *textp = line->text; + int count = get_shift(line->shift_count) * -SHIFT_SIZE; int tab_count; /* Used in tab expansion */ /* Skip all chars as indicated by the offset and the shift_count field */ @@ -1084,8 +1075,8 @@ FLAG clear_line; /* Clear to eoln if TRUE */ /* * Flush the I/O buffer on filedescriptor fd. */ -int flush_buffer(fd) -int fd; +int +flush_buffer(int fd) { if (out_count <= 0) /* There is nothing to flush */ return FINE; @@ -1107,8 +1098,8 @@ int fd; /* * Bad_write() is called when a write failed. Notify the user. */ -void bad_write(fd) -int fd; +void +bad_write(int fd) { if (fd == STD_OUT) /* Cannot write to terminal? */ exit(1); @@ -1123,8 +1114,8 @@ int fd; /* * Catch the SIGQUIT signal (^\) send to mined. It turns on the quitflag. */ -void catch(sig) -int sig; +void +catch(int sig __unused) { /* Reset the signal */ signal(SIGQUIT, catch); @@ -1134,7 +1125,8 @@ int sig; /* * Abort_mined() will leave mined. Confirmation is asked first. */ -void abort_mined() +void +abort_mined(void) { quit = FALSE; @@ -1163,8 +1155,8 @@ void abort_mined() * Set and reset tty into CBREAK or old mode according to argument `state'. It * also sets all signal characters (except for ^\) to UNDEF. ^\ is caught. */ -void raw_mode(state) -FLAG state; +void +raw_mode(FLAG state) { static struct termios old_tty; static struct termios new_tty; @@ -1196,23 +1188,21 @@ FLAG state; * It writes the message to the terminal, resets the tty and exits. * Ask the user if he wants to save his file. */ -void panic(message) -register char *message; +void +panic(const char *message) { - extern char yank_file[]; - #ifdef UNIX tputs(CL, 0, _putchar); build_string(text_buffer, "%s\nError code %d\n", message, errno); #else build_string(text_buffer, "%s%s\nError code %d\n", enter_string, message, errno); #endif /* UNIX */ - (void) write(STD_OUT, text_buffer, length_of(text_buffer)); + write(STD_OUT, text_buffer, length_of(text_buffer)); if (loading == FALSE) - XT(); /* Check if file can be saved */ + XT(0); /* Check if file can be saved */ else - (void) unlink(yank_file); + unlink(yank_file); raw_mode(OFF); #ifdef UNIX @@ -1222,8 +1212,8 @@ register char *message; #endif /* UNIX */ } -char *alloc(bytes) -int bytes; +char * +alloc(int bytes) { char *p; @@ -1236,8 +1226,8 @@ int bytes; return(p); } -void free_space(p) -char *p; +void +free_space(char *p) { free(p); } @@ -1248,7 +1238,7 @@ char *p; /* The mapping between input codes and functions. */ -void (*key_map[256])() = { /* map ASCII characters to functions */ +void (*key_map[256])(int) = { /* map ASCII characters to functions */ /* 000-017 */ MA, BL, MP, YA, SD, EL, MN, IF, DPC, S, S, DT, RD, S, DNW,LIB, /* 020-037 */ DPW, WB, GR, SH, DLN, SU, VI, XWT, XT, PT, ST, ESC, I, GOTO, HIGH, LOW, @@ -1294,12 +1284,12 @@ char text_buffer[MAX_CHARS]; /* Buffer for modifying text */ #ifdef UNIX char *CE, *VS, *SO, *SE, *CL, *AL, *CM; #else -char *enter_string = "\033[H\033[J"; /* String printed on entering mined */ -char *pos_string = "\033[%d;%dH"; /* Absolute cursor position */ -char *rev_scroll = "\033M"; /* String for reverse scrolling */ -char *rev_video = "\033[7m"; /* String for starting reverse video */ -char *normal_video = "\033[m"; /* String for leaving reverse video */ -char *blank_line = "\033[K"; /* Clear line to end */ +const char *enter_string = "\033[H\033[J"; /* String printed on entering mined */ +const char *pos_string = "\033[%d;%dH"; /* Absolute cursor position */ +const char *rev_scroll = "\033M"; /* String for reverse scrolling */ +const char *rev_video = "\033[7m"; /* String for starting reverse video */ +const char *normal_video = "\033[m"; /* String for leaving reverse video */ +const char *blank_line = "\033[K"; /* Clear line to end */ #endif /* UNIX */ /* @@ -1313,9 +1303,10 @@ long chars_saved; /* Nr of chars in buffer */ * Initialize is called when a another file is edited. It free's the allocated * space and sets modified back to FALSE and fixes the header/tail pointer. */ -void initialize() +void +initialize(void) { - register LINE *line, *next_line; + LINE *line, *next_line; /* Delete the whole list */ for (line = header->next; line != tail; line = next_line) { @@ -1333,11 +1324,11 @@ void initialize() /* * Basename() finds the absolute name of the file out of a given path_name. */ -char *basename(path) -char *path; +char * +basename(char *path) { - register char *ptr = path; - register char *last = NIL_PTR; + char *ptr = path; + char *last = NIL_PTR; while (*ptr != '\0') { if (*ptr == '/') @@ -1358,11 +1349,11 @@ char *path; * couldn't be opened, just some initializations are done, and a line consisting * of a `\n' is installed. */ -void load_file(file) -char *file; +void +load_file(const char *file) { - register LINE *line = header; - register int len; + LINE *line = header; + int len; long nr_of_chars = 0L; int fd = -1; /* Filedescriptor for file */ @@ -1403,10 +1394,10 @@ char *file; clear_buffer(); /* Clear output buffer */ cur_line = header->next; fstatus("Read", nr_of_chars); - (void) close(fd); /* Close file */ + close(fd); /* Close file */ } else /* Just install a "\n" */ - (void) line_insert(line, "\n", 1); + line_insert(line, "\n", 1); reset(header->next, 0); /* Initialize pointers */ @@ -1422,14 +1413,13 @@ char *file; * Get_line reads one line from filedescriptor fd. If EOF is reached on fd, * get_line() returns ERRORS, else it returns the length of the string. */ -int get_line(fd, buffer) -int fd; -register char *buffer; +int +get_line(int fd, char *buffer) { static char *last = NIL_PTR; static char *current = NIL_PTR; static int read_chars; - register char *cur_pos = current; + char *cur_pos = current; char *begin = buffer; do { @@ -1447,13 +1437,14 @@ register char *buffer; if (read_chars <= 0) { if (buffer == begin) return ERRORS; - if (*(buffer - 1) != '\n') + if (*(buffer - 1) != '\n') { if (loading == TRUE) /* Add '\n' to last line of file */ *buffer++ = '\n'; else { *buffer = '\0'; return NO_LINE; } + } } *buffer = '\0'; @@ -1464,11 +1455,10 @@ register char *buffer; * Install_line installs the buffer into a LINE structure It returns a pointer * to the allocated structure. */ -LINE *install_line(buffer, length) -char *buffer; -int length; +LINE * +install_line(const char *buffer, int length) { - register LINE *new_line = (LINE *) alloc(sizeof(LINE)); + LINE *new_line = (LINE *) alloc(sizeof(LINE)); new_line->text = alloc(length + 1); new_line->shift_count = 0; @@ -1478,13 +1468,11 @@ int length; } int -main(argc, argv) -int argc; -char *argv[]; +main(int argc, char *argv[]) { /* mined is the Minix editor. */ - register int index; /* Index in key table */ + int index; /* Index in key table */ struct winsize winsize; #ifdef UNIX @@ -1519,7 +1507,7 @@ char *argv[]; if (argc < 2) load_file(NIL_PTR); else { - (void) get_file(NIL_PTR, argv[1]); /* Truncate filename */ + get_file(NIL_PTR, argv[1]); /* Truncate filename */ load_file(argv[1]); } @@ -1547,7 +1535,8 @@ char *argv[]; /* * Redraw the screen */ -void RD() +void +RD(int u __unused) { /* Clear screen */ #ifdef UNIX @@ -1573,14 +1562,16 @@ void RD() /* * Ignore this keystroke. */ -void I() +void +I(int u __unused) { } /* * Leave editor. If the file has changed, ask if the user wants to save it. */ -void XT() +void +XT(int u __unused) { if (modified == TRUE && ask_save() == ERRORS) return; @@ -1589,12 +1580,12 @@ void XT() set_cursor(0, ymax); putchar('\n'); flush(); - (void) unlink(yank_file); /* Might not be necessary */ + unlink(yank_file); /* Might not be necessary */ exit(0); } -void (*escfunc(c))() -int c; +static void +(*escfunc(int c))(int) { #if (CHIP == M68000) #ifndef COMPAT @@ -1629,8 +1620,8 @@ int c; case '1': switch (ch) { case '~': return(SF); - case '7': (void) getchar(); return(MA); - case '8': (void) getchar(); return(CTL); + case '7': getchar(); return(MA); + case '8': getchar(); return(CTL); } case '2': return(SR); case '3': return(PD); @@ -1709,10 +1700,11 @@ int c; * command count times. If a ^\ is given during repeating, stop looping and * return to main loop. */ -void ESC() +void +ESC(int u __unused) { - register int count = 0; - register void (*func)(); + int count = 0; + void (*func)(int); int index; index = getchar(); @@ -1749,9 +1741,10 @@ void ESC() /* * Ask the user if he wants to save his file or not. */ -int ask_save() +int +ask_save(void) { - register int c; + int c; status_line(file_name[0] ? basename(file_name) : "[buffer]" , " has been modified. Save? (y/n)"); @@ -1776,10 +1769,11 @@ int ask_save() /* * Line_number() finds the line number we're on. */ -int line_number() +int +line_number(void) { - register LINE *line = header->next; - register int count = 1; + LINE *line = header->next; + int count = 1; while (line != cur_line) { count++; @@ -1792,15 +1786,15 @@ int line_number() /* * Display a line telling how many chars and lines the file contains. Also tell * whether the file is readonly and/or modified. + * + * parameter + * count: Contains number of characters in file */ -void file_status(message, count, file, lines, writefl, changed) -char *message; -register long count; /* Contains number of characters in file */ -char *file; -int lines; -FLAG writefl, changed; +void +file_status(const char *message, long count, char *file, int lines, + FLAG writefl, FLAG changed) { - register LINE *line; + LINE *line; char msg[LINE_LEN + 40];/* Buffer to hold line */ char yank_msg[LINE_LEN];/* Buffer for msg of yank_file */ @@ -1833,23 +1827,13 @@ FLAG writefl, changed; * Build_string() prints the arguments as described in fmt, into the buffer. * %s indicates an argument string, %d indicated an argument number. */ -#if __STDC__ -void build_string(char *buf, char *fmt, ...) +void +build_string(char *buf, const char *fmt, ...) { -#else -void build_string(buf, fmt, va_alist) -char *buf, *fmt; -va_dcl -{ -#endif va_list argptr; - char *scanp; + const char *scanp; -#if __STDC__ va_start(argptr, fmt); -#else - va_start(argptr); -#endif while (*fmt) { if (*fmt == '%') { @@ -1867,7 +1851,7 @@ va_dcl default : scanp = ""; } - while (*buf++ = *scanp++) + while ((*buf++ = *scanp++) != NULL) ; buf--; } @@ -1882,12 +1866,12 @@ va_dcl * Output an (unsigned) long in a 10 digit field without leading zeros. * It returns a pointer to the first digit in the buffer. */ -char *num_out(number) -long number; +char * +num_out(long number) { static char num_buf[11]; /* Buffer to build number */ - register long digit; /* Next digit of number */ - register long pow = 1000000000L; /* Highest ten power of long */ + long digit; /* Next digit of number */ + long pow = 1000000000L; /* Highest ten power of long */ FLAG digit_seen = FALSE; int i; @@ -1912,12 +1896,11 @@ long number; * returned. ERRORS is returned on a bad number. The resulting number is put * into the integer the arguments points to. */ -int get_number(message, result) -char *message; -int *result; +int +get_number(const char *message, int *result) { - register int index; - register int count = 0; + int index; + int count = 0; status_line(message, NIL_PTR); @@ -1947,12 +1930,11 @@ int *result; * Input() reads a string from the terminal. When the KILL character is typed, * it returns ERRORS. */ -int input(inbuf, clearfl) -char *inbuf; -FLAG clearfl; +int +input(char *inbuf, FLAG clearfl) { - register char *ptr; - register char c; /* Character read */ + char *ptr; + char c; /* Character read */ ptr = inbuf; @@ -2008,11 +1990,11 @@ FLAG clearfl; * Get_file() reads a filename from the terminal. Filenames longer than * FILE_LENGHT chars are truncated. */ -int get_file(message, file) -char *message, *file; +int +get_file(const char *message, char *file) { char *ptr; - int ret; + int ret = FINE; if (message == NIL_PTR || (ret = get_string(message, file, TRUE)) == FINE) { if (length_of((ptr = basename(file))) > NAME_MAX) @@ -2028,7 +2010,8 @@ char *message, *file; #ifdef UNIX #undef putchar -int _getchar() +int +_getchar(void) { char c; @@ -2037,21 +2020,22 @@ int _getchar() return c & 0377; } -void _flush() +void +_flush(void) { - (void) fflush(stdout); + fflush(stdout); } -void _putchar(c) -char c; +void +_putchar(char c) { - (void) write_char(STD_OUT, c); + write_char(STD_OUT, c); } -void get_term() +void +get_term(void) { static char termbuf[50]; - extern char *tgetstr(), *getenv(); char *loc = termbuf; char entry[1024]; diff --git a/bin/mined/mined2.c b/bin/mined/mined2.c index 1acf8b4140..1c49ddde31 100644 --- a/bin/mined/mined2.c +++ b/bin/mined/mined2.c @@ -33,7 +33,7 @@ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * [original code from minix codebase] - * $DragonFly: src/bin/mined/mined2.c,v 1.4 2005/06/30 21:12:55 corecode Exp $* + * $DragonFly: src/bin/mined/mined2.c,v 1.5 2005/10/29 12:05:27 swildner Exp $* */ /* * Part 2 of the mined editor. @@ -50,17 +50,18 @@ /* * Move one line up. */ -void UP() +void +UP(int u __unused) { if (y == 0) { /* Top line of screen. Scroll one line */ - (void) reverse_scroll(); + reverse_scroll(); move_to(x, y); } else /* Move to previous line */ move_to(x, y - 1); } -static char *help_string= +static const char *help_string= " Mined (Minix Editor), DragonFly version.\n" "------------------------+-------------------------------+---------------------\n" " CURSOR MOTION | EDITING | MISC\n" @@ -88,7 +89,8 @@ static char *help_string= /* * Help */ -void HLP() +void +HLP(int u __unused) { char c; @@ -96,31 +98,33 @@ void HLP() string_print(help_string); flush(); c=getchar(); - RD(); + RD(0); return; } -void ST() +void +ST(int u __unused) { raw_mode(OFF); kill(getpid(), SIGTSTP); raw_mode(ON); - RD(); + RD(0); } /* * Move one line down. */ -void DN() +void +DN(int u __unused) { if (y == last_y) { /* Last line of screen. Scroll one line */ if (bot_line->next == tail && bot_line->text[0] != '\n') { dummy_line(); /* Create new empty line */ - DN(); + DN(0); return; } else { - (void) forward_scroll(); + forward_scroll(); move_to(x, y); } } @@ -131,11 +135,12 @@ void DN() /* * Move left one position. */ -void LF() +void +LF(int u __unused) { if (x == 0 && get_shift(cur_line->shift_count) == 0) {/* Begin of line */ if (cur_line->prev != header) { - UP(); /* Move one line up */ + UP(0); /* Move one line up */ move_to(LINE_END, y); } } @@ -146,11 +151,12 @@ void LF() /* * Move right one position. */ -void RT() +void +RT(int u __unused) { if (*cur_text == '\n') { if (cur_line->next != tail) { /* Last char of file */ - DN(); /* Move one line down */ + DN(0); /* Move one line down */ move_to(LINE_START, y); } } @@ -161,7 +167,8 @@ void RT() /* * Move to coordinates [0, 0] on screen. */ -void HIGH() +void +HIGH(int u __unused) { move_to(0, 0); } @@ -169,7 +176,8 @@ void HIGH() /* * Move to coordinates [0, YMAX] on screen. */ -void LOW() +void +LOW(int u __unused) { move_to(0, last_y); } @@ -177,7 +185,8 @@ void LOW() /* * Move to begin of line. */ -void BL() +void +BL(int u __unused) { move_to(LINE_START, y); } @@ -185,7 +194,8 @@ void BL() /* * Move to end of line. */ -void EL() +void +EL(int u __unused) { move_to(LINE_END, y); } @@ -193,7 +203,8 @@ void EL() /* * GOTO() prompts for a linenumber and moves to that line. */ -void GOTO() +void +GOTO(int u __unused) { int number; LINE *line; @@ -212,9 +223,10 @@ void GOTO() * top_line of display.) Try to leave the cursor on the same line. If this is * not possible, leave cursor on the line halfway the page. */ -void PD() +void +PD(int u __unused) { - register int i; + int i; for (i = 0; i < screenmax; i++) if (forward_scroll() == ERRORS) @@ -232,9 +244,10 @@ void PD() * Try to leave the cursor on the same line. If this is not possible, leave * cursor on the line halfway the page. */ -void PU() +void +PU(int u __unused) { - register int i; + int i; for (i = 0; i < screenmax; i++) if (reverse_scroll() == ERRORS) @@ -254,13 +267,14 @@ void PU() /* * Go to top of file, scrolling if possible, else redrawing screen. */ -void HO() +void +HO(int u __unused) { if (proceed(top_line, -screenmax) == header) - PU(); /* It fits. Let PU do it */ + PU(0); /* It fits. Let PU do it */ else { reset(header->next, 0);/* Reset top_line, etc. */ - RD(); /* Display full page */ + RD(0); /* Display full page */ } move_to(LINE_START, 0); } @@ -268,15 +282,16 @@ void HO() /* * Go to last line of file, scrolling if possible, else redrawing screen */ -void EF() +void +EF(int u __unused) { if (tail->prev->text[0] != '\n') dummy_line(); if (proceed(bot_line, screenmax) == tail) - PD(); /* It fits. Let PD do it */ + PD(0); /* It fits. Let PD do it */ else { reset(proceed(tail->prev, -screenmax), screenmax); - RD(); /* Display full page */ + RD(0); /* Display full page */ } move_to(LINE_START, last_y); } @@ -284,12 +299,13 @@ void EF() /* * Scroll one line up. Leave the cursor on the same line (if possible). */ -void SU() +void +SU(int u __unused) { if (top_line->prev == header) /* Top of file. Can't scroll */ return; - (void) reverse_scroll(); + reverse_scroll(); set_cursor(0, ymax); /* Erase very bottom line */ #ifdef UNIX tputs(CE, 0, _putchar); @@ -302,7 +318,8 @@ void SU() /* * Scroll one line down. Leave the cursor on the same line (if possible). */ -void SD() +void +SD(int u __unused) { if (forward_scroll() != ERRORS) move_to(x, (y == 0) ? 0 : y - 1); @@ -314,7 +331,8 @@ void SD() * Perform a forward scroll. It returns ERRORS if we're at the last line of the * file. */ -int forward_scroll() +int +forward_scroll(void) { if (bot_line->next == tail) /* Last line of file. No dice */ return ERRORS; @@ -331,7 +349,8 @@ int forward_scroll() * Perform a backwards scroll. It returns ERRORS if we're at the first line * of the file. */ -int reverse_scroll() +int +reverse_scroll(void) { if (top_line->prev == header) return ERRORS; /* Top of file. Can't scroll */ @@ -365,16 +384,17 @@ int reverse_scroll() * MP() moves to the start of the previous word. A word is defined as a * number of non-blank characters separated by tabs spaces or linefeeds. */ -void MP() +void +MP(int u __unused) { move_previous_word(NO_DELETE); } -void move_previous_word(remove) -FLAG remove; +void +move_previous_word(FLAG remove) { - register char *begin_line; - register char *textp; + char *begin_line; + char *textp; char start_char = *cur_text; char *start_pos = cur_text; @@ -385,7 +405,7 @@ FLAG remove; start_char = '\0'; } - LF(); + LF(0); begin_line = cur_line->text; textp = cur_text; @@ -415,15 +435,16 @@ FLAG remove; * non-blank characters separated by tabs spaces or linefeeds. Always keep in * mind that the pointer shouldn't pass the '\n'. */ -void MN() +void +MN(int u __unused) { move_next_word(NO_DELETE); } -void move_next_word(remove) -FLAG remove; +void +move_next_word(FLAG remove) { - register char *textp = cur_text; + char *textp = cur_text; /* Move to the end of the current word. */ while (*textp != '\n' && alpha(*textp)) @@ -440,7 +461,7 @@ FLAG remove; /* If we're at end of line. move to the first word on the next line. */ if (*textp == '\n' && cur_line->next != tail) { - DN(); + DN(0); move_to(LINE_START, y); textp = cur_text; while (*textp != '\n' && white_space(*textp)) @@ -459,7 +480,8 @@ FLAG remove; * If this character is the only character of the line, the current line will * be deleted. */ -void DCC() +void +DCC(int u __unused) { if (*cur_text == '\n') delete(cur_line,cur_text, cur_line->next,cur_line->next->text); @@ -472,23 +494,25 @@ void DCC() * at the beginning of the line, the last character if the previous line is * deleted. */ -void DPC() +void +DPC(int u __unused) { if (x == 0 && cur_line->prev == header) return; /* Top of file */ - LF(); /* Move one left */ - DCC(); /* Delete character under cursor */ + LF(0); /* Move one left */ + DCC(0); /* Delete character under cursor */ } /* * DLN deletes all characters until the end of the line. If the current * character is a '\n', then delete that char. */ -void DLN() +void +DLN(int u __unused) { if (*cur_text == '\n') - DCC(); + DCC(0); else delete(cur_line, cur_text, cur_line, cur_text + length_of(cur_text) -1); } @@ -496,10 +520,11 @@ void DLN() /* * DNW() deletes the next word (as described in MN()) */ -void DNW() +void +DNW(int u __unused) { if (*cur_text == '\n') - DCC(); + DCC(0); else move_next_word(DELETE); } @@ -507,10 +532,11 @@ void DNW() /* * DPW() deletes the next word (as described in MP()) */ -void DPW() +void +DPW(int u __unused) { if (cur_text == cur_line->text) - DPC(); + DPC(0); else move_previous_word(DELETE); } @@ -518,8 +544,8 @@ void DPW() /* * Insert character `character' at current location. */ -void S(character) -register char character; +void +S(int character) { static char buffer[2]; @@ -533,7 +559,7 @@ register char character; set_cursor(0, y); if (y == screenmax) { /* Can't use display */ line_print(cur_line); - (void) forward_scroll(); + forward_scroll(); } else { reset(top_line, y); /* Reset pointers */ @@ -553,9 +579,10 @@ register char character; * CTL inserts a control-char at the current location. A message that this * function is called is displayed at the status line. */ -void CTL() +void +CTL(int u __unused) { - register char ctrl; + char ctrl; status_line("Enter control character.", NIL_PTR); if ((ctrl = getchar()) >= '\01' && ctrl <= '\037') { @@ -570,10 +597,11 @@ void CTL() * LIB insert a line at the current position and moves back to the end of * the previous line. */ -void LIB() +void +LIB(int u __unused) { S('\n'); /* Insert the line */ - UP(); /* Move one line up */ + UP(0); /* Move one line up */ move_to(LINE_END, y); /* Move to end of this line */ } @@ -581,12 +609,10 @@ void LIB() * Line_insert() inserts a new line with text pointed to by `string'. * It returns the address of the new line. */ -LINE *line_insert(line, string, len) -register LINE *line; -char *string; -int len; +LINE * +line_insert(LINE *line, const char *string, int len) { - register LINE *new_line; + LINE *new_line; /* Allocate space for LINE structure and text */ new_line = install_line(string, len); @@ -606,12 +632,11 @@ int len; /* * Insert() insert the string `string' at the given line and location. */ -int insert(line, location, string) -register LINE *line; -char *location, *string; +int +insert(LINE *line, char *location, char *string) { - register char *bufp = text_buffer; /* Buffer for building line */ - register char *textp = line->text; + char *bufp = text_buffer; /* Buffer for building line */ + char *textp = line->text; if (length_of(textp) + length_of(string) >= MAX_CHARS) { error("Line too long", NIL_PTR); @@ -646,10 +671,10 @@ char *location, *string; * Line_delete() deletes the argument line out of the line list. The pointer to * the next line is returned. */ -LINE *line_delete(line) -register LINE *line; +LINE * +line_delete(LINE *line) { - register LINE *next_line = line->next; + LINE *next_line = line->next; /* Delete the line */ line->prev->next = line->next; @@ -670,13 +695,12 @@ register LINE *line; * startposition and endposition and fixes the screen accordingly. It * returns the number of lines deleted. */ -void delete(start_line, start_textp, end_line, end_textp) -register LINE *start_line; -LINE *end_line; -char *start_textp, *end_textp; +void +delete(LINE *start_line, char *start_textp, + LINE *end_line, char *end_textp) { - register char *textp = start_line->text; - register char *bufp = text_buffer; /* Storage for new line->text */ + char *textp = start_line->text; + char *bufp = text_buffer; /* Storage for new line->text */ LINE *line, *stop; int line_cnt = 0; /* Nr of lines deleted */ int count = 0; @@ -711,7 +735,7 @@ char *start_textp, *end_textp; /* Check if last line of file should be deleted */ if (end_textp == NIL_PTR && length_of(start_line->text) == 1 && nlines > 1) { start_line = start_line->prev; - (void) line_delete(start_line->next); + line_delete(start_line->next); line_cnt++; } else { /* Install new text */ @@ -762,9 +786,10 @@ int lines_saved; /* Nr of lines in buffer */ /* * PT() inserts the buffer at the current location. */ -void PT() +void +PT(int u __unused) { - register int fd; /* File descriptor for buffer */ + int fd; /* File descriptor for buffer */ if ((fd = scratch_file(READ)) == ERRORS) error("Buffer is empty.", NIL_PTR); @@ -778,9 +803,10 @@ void PT() * IF() prompt for a filename and inserts the file at the current location * in the file. */ -void IF() +void +IF(int u __unused) { - register int fd; /* File descriptor of file */ + int fd; /* File descriptor of file */ char name[LINE_LEN]; /* Buffer for file name */ /* Get the file name */ @@ -799,13 +825,12 @@ void IF() * File_insert() inserts a an opened file (as given by filedescriptor fd) * at the current location. */ -void file_insert(fd, old_pos) -int fd; -FLAG old_pos; +void +file_insert(int fd, FLAG old_pos) { char line_buffer[MAX_CHARS]; /* Buffer for next line */ - register LINE *line = cur_line; - register int line_count = nlines; /* Nr of lines inserted */ + LINE *line = cur_line; + int line_count = nlines; /* Nr of lines inserted */ LINE *page = cur_line; int ret = ERRORS; @@ -858,11 +883,12 @@ FLAG old_pos; * WB() writes the buffer (yank_file) into another file, which * is prompted for. */ -void WB() +void +WB(int u __unused) { - register int new_fd; /* Filedescriptor to copy file */ + int new_fd; /* Filedescriptor to copy file */ int yank_fd; /* Filedescriptor to buffer */ - register int cnt; /* Count check for read/write */ + int cnt; /* Count check for read/write */ int ret = 0; /* Error check for write */ char file[LINE_LEN]; /* Output file */ @@ -893,8 +919,8 @@ void WB() } /* Clean up open files and status_line */ - (void) close(new_fd); - (void) close(yank_fd); + close(new_fd); + close(yank_fd); if (ret != ERRORS) /* Bad write */ file_status("Wrote", chars_saved, file, lines_saved, TRUE, FALSE); @@ -903,7 +929,8 @@ void WB() /* * MA sets mark_line (mark_text) to the current line (text pointer). */ -void MA() +void +MA(int u __unused) { mark_line = cur_line; mark_text = cur_text; @@ -914,7 +941,8 @@ void MA() * YA() puts the text between the marked position and the current * in the buffer. */ -void YA() +void +YA(int u __unused) { set_up(NO_DELETE); } @@ -922,7 +950,8 @@ void YA() /* * DT() is essentially the same as YA(), but in DT() the text is deleted. */ -void DT() +void +DT(int u __unused) { set_up(DELETE); } @@ -931,9 +960,12 @@ void DT() * Set_up is an interface to the actual yank. It calls checkmark () to check * if the marked position is still valid. If it is, yank is called with the * arguments in the right order. + * + * parameter + * remove: DELETE if text should be deleted */ -void set_up(remove) -FLAG remove; /* DELETE if text should be deleted */ +void +set_up(FLAG remove) { switch (checkmark()) { case NOT_VALID : @@ -960,9 +992,10 @@ FLAG remove; /* DELETE if text should be deleted */ * NOT_VALID is returned when mark_line and/or mark_text are no longer valid. * Legal() checks if mark_text is valid on the mark_line. */ -FLAG checkmark() +FLAG +checkmark(void) { - register LINE *line; + LINE *line; FLAG cur_seen = FALSE; /* Special case: check is mark_line and cur_line are the same. */ @@ -993,9 +1026,10 @@ FLAG checkmark() /* * Legal() checks if mark_text is still a valid pointer. */ -int legal() +int +legal(void) { - register char *textp = mark_line->text; + char *textp = mark_line->text; /* Locate mark_text on mark_line */ while (textp != mark_text && *textp++ != '\0') @@ -1008,14 +1042,16 @@ int legal() * the buffer. * The caller must check that the arguments to yank() are valid. (E.g. in * the right order) + * + * parameter + * remove: DELETE if text should be deleted */ -void yank(start_line, start_textp, end_line, end_textp, remove) -LINE *start_line, *end_line; -char *start_textp, *end_textp; -FLAG remove; /* DELETE if text should be deleted */ +void +yank(LINE *start_line, char *start_textp, LINE *end_line, char *end_textp, + FLAG remove) { - register LINE *line = start_line; - register char *textp = start_textp; + LINE *line = start_line; + char *textp = start_textp; int fd; /* Creat file to hold buffer */ @@ -1029,7 +1065,7 @@ FLAG remove; /* DELETE if text should be deleted */ /* Keep writing chars until the end_location is reached. */ while (textp != end_textp) { if (write_char(fd, *textp) == ERRORS) { - (void) close(fd); + close(fd); return; } if (*textp++ == '\n') { /* Move to the next line */ @@ -1042,10 +1078,10 @@ FLAG remove; /* DELETE if text should be deleted */ /* Flush the I/O buffer and close file */ if (flush_buffer(fd) == ERRORS) { - (void) close(fd); + close(fd); return; } - (void) close(fd); + close(fd); yank_status = VALID; /* @@ -1072,12 +1108,16 @@ FLAG remove; /* DELETE if text should be deleted */ #define MAXTRAILS 26 -int scratch_file(mode) -FLAG mode; /* Can be READ or WRITE permission */ +/* + * parameter + * mode: Can be READ or WRITE permission + */ +int +scratch_file(FLAG mode) { static int trials = 0; /* Keep track of trails */ - register char *y_ptr, *n_ptr; - int fd; /* Filedescriptor to buffer */ + char *y_ptr, *n_ptr; + int fd = ERRORS; /* Filedescriptor to buffer */ /* If yank_status == NOT_VALID, scratch_file is called for the first time */ if (yank_status == NOT_VALID && mode == WRITE) { /* Create new file */ @@ -1135,7 +1175,8 @@ char typed_expression[LINE_LEN]; /* Holds previous expr. */ /* * SF searches forward for an expression. */ -void SF() +void +SF(int u __unused) { search("Search forward:", FORWARD); } @@ -1143,7 +1184,8 @@ void SF() /* * SF searches backwards for an expression. */ -void SR() +void +SR(int u __unused) { search("Search reverse:", REVERSE); } @@ -1155,8 +1197,8 @@ void SR() * The save flag indicates whether the expression should be appended at the * message pointer. */ -REGEX *get_expression(message) -char *message; +REGEX * +get_expression(const char *message) { static REGEX program; /* Program of expression */ char exp_buf[LINE_LEN]; /* Buffer for new expr. */ @@ -1185,7 +1227,8 @@ char *message; * GR() a replaces all matches from the current position until the end * of the file. */ -void GR() +void +GR(int u __unused) { change("Global replace:", VALID); } @@ -1193,7 +1236,8 @@ void GR() /* * LR() replaces all matches on the current line. */ -void LR() +void +LR(int u __unused) { change("Line replace:", NOT_VALID); } @@ -1203,16 +1247,18 @@ void LR() * all matches of the expression into the substitution. change() start looking * for expressions at the current line and continues until the end of the file * if the FLAG file is VALID. + * + * parameter + * message: Message to prompt for expression */ -void change(message, file) -char *message; /* Message to prompt for expression */ -FLAG file; +void +change(const char *message, FLAG file) { char mess_buf[LINE_LEN]; /* Buffer to hold message */ char replacement[LINE_LEN]; /* Buffer to hold subst. pattern */ REGEX *program; /* Program resulting from compilation */ - register LINE *line = cur_line; - register char *textp; + LINE *line = cur_line; + char *textp; long lines = 0L; /* Nr of lines on which subs occurred */ long subs = 0L; /* Nr of subs made */ int page = y; /* Index to check if line is on screen*/ @@ -1273,14 +1319,15 @@ FLAG file; * Substitute() replaces the match on this line by the substitute pattern * as indicated by the program. Every '&' in the replacement is replaced by * the original match. A \ in the replacement escapes the next character. + * + * parameter + * replacement: Contains replacement pattern */ -char *substitute(line, program, replacement) -LINE *line; -REGEX *program; -char *replacement; /* Contains replacement pattern */ +char * +substitute(LINE *line, REGEX *program, char *replacement) { - register char *textp = text_buffer; - register char *subp = replacement; + char *textp = text_buffer; + char *subp = replacement; char *linep = line->text; char *amp; @@ -1332,12 +1379,11 @@ char *replacement; /* Contains replacement pattern */ * Find_x() and find_y() display the right page on the screen, and return * the right coordinates for x and y. These coordinates are passed to move_to() */ -void search(message, method) -char *message; -FLAG method; +void +search(const char *message, FLAG method) { - register REGEX *program; - register LINE *match_line; + REGEX *program; + LINE *match_line; /* Get the expression */ if ((program = get_expression(message)) == NIL_REG) @@ -1363,11 +1409,11 @@ FLAG method; * returns the new y coordinate, else it displays the correct page with the * matched line in the middle and returns the new y value; */ -int find_y(match_line) -LINE *match_line; +int +find_y(LINE *match_line) { - register LINE *line; - register int count = 0; + LINE *line; + int count = 0; /* Check if match_line is on the same page as currently displayed. */ for (line = top_line; line != match_line && line != bot_line->next; @@ -1389,7 +1435,7 @@ LINE *match_line; /* Reset pointers and redraw the screen */ reset(line, 0); - RD(); + RD(0); return count; } @@ -1414,7 +1460,7 @@ LINE *match_line; int exp_buffer[BLOCK_SIZE]; /* Errors often used */ -char *too_long = "Regular expression too long"; +static const char *too_long = "Regular expression too long"; /* * Reg_error() is called by compile() is something went wrong. It set the @@ -1427,11 +1473,10 @@ char *too_long = "Regular expression too long"; * allocates space for the expression, and copies the expression buffer into * this field. */ -void finished(program, last_exp) -register REGEX *program; -int *last_exp; +void +finished(REGEX *program, int *last_exp) { - register int length = (last_exp - exp_buffer) * sizeof(int); + int length = (last_exp - exp_buffer) * sizeof(int); /* Allocate space */ program->result.expression = (int *) alloc(length); @@ -1445,14 +1490,16 @@ int *last_exp; * is set to REG_ERROR and an error message is set into the err_mess field of * the union. If all went well the expression is saved and the expression * pointer is set to the saved (and compiled) expression. + * + * parameter + * pattern: Pointer to pattern */ -void compile(pattern, program) -register char *pattern; /* Pointer to pattern */ -REGEX *program; +void +compile(char *pattern, REGEX *program) { - register int *expression = exp_buffer; + int *expression = exp_buffer; int *prev_char; /* Pointer to previous compiled atom */ - int *acct_field; /* Pointer to last BRACKET start */ + int *acct_field = NULL; /* Pointer to last BRACKET start */ FLAG negate; /* Negate flag for BRACKET */ char low_char; /* Index for chars in BRACKET */ char c; @@ -1587,12 +1634,10 @@ REGEX *program; * Match() will look through the whole file until a match is found. * NIL_LINE is returned if no match could be found. */ -LINE *match(program, string, method) -REGEX *program; -char *string; -register FLAG method; +LINE * +match(REGEX *program, char *string, FLAG method) { - register LINE *line = cur_line; + LINE *line = cur_line; char old_char; /* For saving chars */ /* Corrupted program */ @@ -1634,12 +1679,10 @@ register FLAG method; * indicates FORWARD or REVERSE search. It scans through the whole string * until a match is found, or the end of the string is reached. */ -int line_check(program, string, method) -register REGEX *program; -char *string; -FLAG method; +int +line_check(REGEX *program, char *string, FLAG method) { - register char *textp = string; + char *textp = string; /* Assign start_ptr field. We might find a match right away! */ program->start_ptr = textp; @@ -1682,14 +1725,12 @@ FLAG method; * (and expression). Check() return MATCH for a match, NO_MATCH is the string * couldn't be matched or REG_ERROR for an illegal opcode in expression. */ -int check_string(program, string, expression) -REGEX *program; -register char *string; -int *expression; +int +check_string(REGEX *program, char *string, int *expression) { - register int opcode; /* Holds opcode of next expr. atom */ + int opcode; /* Holds opcode of next expr. atom */ char c; /* Char that must be matched */ - char *mark; /* For marking position */ + char *mark = NULL; /* For marking position */ int star_fl; /* A star has been born */ if (expression == NIL_INT) @@ -1700,7 +1741,7 @@ int *expression; *string != '\0' && *string != '\n') { c = *expression & LOW_BYTE; /* Extract match char */ opcode = *expression & HIGH_BYTE; /* Extract opcode */ - if (star_fl = (opcode & STAR)) { /* Check star occurrence */ + if ((star_fl = (opcode & STAR)) != 0) { /* Check star occurrence */ opcode &= ~STAR; /* Strip opcode */ mark = string; /* Mark current position */ } @@ -1758,11 +1799,8 @@ int *expression; * It searches backwards until the (in check_string()) marked position * is reached, or a match is found. */ -int star(program, end_position, string, expression) -REGEX *program; -register char *end_position; -register char *string; -int *expression; +int +star(REGEX *program, char *end_position, char *string, int *expression) { do { string--; @@ -1778,11 +1816,8 @@ int *expression; * it returns MATCH. if it isn't it returns NO_MATCH. These returns values * are reversed when the NEGATE field in the opcode is present. */ -int in_list(list, c, list_length, opcode) -register int *list; -char c; -register int list_length; -int opcode; +int +in_list(int *list, char c, int list_length, int opcode) { if (c == '\0' || c == '\n') /* End of string, never matches */ return NO_MATCH; @@ -1799,9 +1834,10 @@ int opcode; * useful in combination with the EF and DN command in combination with the * Yank command set. */ -void dummy_line() +void +dummy_line(void) { - (void) line_insert(tail->prev, "\n", 1); + line_insert(tail->prev, "\n", 1); tail->prev->shift_count = DUMMY; if (last_y != screenmax) { last_y++; -- 2.41.0