diff options
| -rw-r--r-- | simple-opt.h | 40 | 
1 files changed, 27 insertions, 13 deletions
| diff --git a/simple-opt.h b/simple-opt.h index 736d8e0..16c7f6c 100644 --- a/simple-opt.h +++ b/simple-opt.h @@ -95,8 +95,12 @@ struct simple_opt_result {  static struct simple_opt_result simple_opt_parse(int argc, char **argv,  		struct simple_opt *options); -static void simple_opt_print_usage(FILE *f, unsigned width, char *usage_name, -		char *usage_options, char *usage_summary, struct simple_opt *options); +static void simple_opt_print_usage(FILE *f, unsigned width, char *command_name, +		char *command_options, char *command_summary, +		struct simple_opt *options); + +static void simple_opt_print_error(FILE *f, char *command_name, +		struct simple_opt *options);  /*  @@ -447,7 +451,8 @@ static int sub_simple_opt_wrap_print(FILE *f, unsigned width, unsigned col,  			word_end++;  		/* buffer up to line_start with spaces */ -		while (col < line_start + 2 * !first_line * (width > 40)) { +		while (col < line_start + 2 * (!first_line && width > 40 +					&& line_start > 5)) {  			fprintf(f, " ");  			col++;  		} @@ -459,7 +464,8 @@ static int sub_simple_opt_wrap_print(FILE *f, unsigned width, unsigned col,  			first_line = false;  			/* buffer up to line_start with spaces */  			col = 0; -			while (col < line_start + 2 * !first_line * (width > 40)) { +			while (col < line_start + 2 * (!first_line && width > 40 +						&& line_start > 5)) {  				fprintf(f, " ");  				col++;  			} @@ -487,7 +493,8 @@ static int sub_simple_opt_wrap_print(FILE *f, unsigned width, unsigned col,  				col = 0;  				fprintf(f, "\n");  				first_line = false; -				while (col < line_start + 2 * !first_line * (width > 40)) { +				while (col < line_start + 2 * (!first_line && width > 40 +							&& line_start > 5)) {  					fprintf(f, " ");  					col++;  				} @@ -507,8 +514,9 @@ static int sub_simple_opt_wrap_print(FILE *f, unsigned width, unsigned col,  	return col;  } -static void simple_opt_print_usage(FILE *f, unsigned width, char *usage_name, -		char *usage_options, char *usage_summary, struct simple_opt *options) +static void simple_opt_print_usage(FILE *f, unsigned width, char *command_name, +		char *command_options, char *command_summary, +		struct simple_opt *options)  {  	char print_buffer[SIMPLE_OPT_USAGE_PRINT_BUFFER_WIDTH];  	unsigned i, j, col, print_buffer_offset, desc_line_start; @@ -595,21 +603,21 @@ static void simple_opt_print_usage(FILE *f, unsigned width, char *usage_name,  	 */  	/* print "Usage: <exec> <options> */ -	if (usage_name != NULL && usage_options != NULL) { +	if (command_name != NULL && command_options != NULL) {  		col = sub_simple_opt_wrap_print(f, width, 0, 0, "Usage:"); -		col = sub_simple_opt_wrap_print(f, width, col, 7, usage_name); +		col = sub_simple_opt_wrap_print(f, width, col, 7, command_name); -		if (usage_options != NULL) +		if (command_options != NULL)  			sub_simple_opt_wrap_print(f, width, col, -					7 + strlen(usage_name) + 1, usage_options); +					7 + strlen(command_name) + 1, command_options);  		fprintf(f, "\n\n");  	}  	/* print summary line */ -	if (usage_summary != NULL) { -		sub_simple_opt_wrap_print(f, width, 0, 2, usage_summary); +	if (command_summary != NULL) { +		sub_simple_opt_wrap_print(f, width, 0, 2, command_summary);  		fprintf(f, "\n\n");  	} @@ -722,4 +730,10 @@ static void simple_opt_print_usage(FILE *f, unsigned width, char *usage_name,  	}  } +static void simple_opt_print_error(FILE *f, char *command_name, +		struct simple_opt *options) +{ + +} +  #endif | 
