Explicitly constify a bunch of static data declarations which were
[sgt/halibut] / help.c
1 /*
2 * help.c: usage instructions
3 */
4
5 #include <stdio.h>
6 #include "halibut.h"
7
8 static const char *const helptext[] = {
9 "usage: halibut [options] files",
10 "options: --text[=filename] generate plain text output",
11 " --html[=filename] generate XHTML output",
12 " --winhelp[=filename] generate Windows Help output",
13 " --man[=filename] generate man page output",
14 " --info[=filename] generate GNU info output",
15 " --ps[=filename] generate PostScript output",
16 " --pdf[=filename] generate PDF output",
17 " -Cfoo:bar:baz append \\cfg{foo}{bar}{baz} to input",
18 " --input-charset=cs change default input file charset",
19 " --list-charsets display supported character set names",
20 " --precise report column numbers in error messages",
21 " --help display this text",
22 " --version display version number",
23 " --licence display licence text",
24 NULL
25 };
26
27 static const char *const usagetext[] = {
28 "usage: halibut [--format[=filename]] [options] file.but [file.but...]",
29 NULL
30 };
31
32 void help(void) {
33 const char *const *p;
34 for (p = helptext; *p; p++)
35 puts(*p);
36 }
37
38 void usage(void) {
39 const char *const *p;
40 for (p = usagetext; *p; p++)
41 puts(*p);
42 }
43
44 void showversion(void) {
45 printf("Halibut, %s\n", version);
46 }
47
48 void listcharsets(void) {
49 int i = 0, c;
50 do {
51 c = charset_localenc_nth(i);
52 if (c == CS_NONE) break;
53 printf("%s\n", charset_to_localenc(c));
54 i++;
55 } while (1);
56 }