Commit | Line | Data |
---|---|---|
08fe2e33 NR |
1 | package be.nikiroo.fanfix.bundles; |
2 | ||
3 | import java.io.IOException; | |
4 | import java.io.Writer; | |
5 | ||
948637bc | 6 | import be.nikiroo.utils.resources.Bundle; |
08fe2e33 | 7 | import be.nikiroo.utils.resources.Meta; |
08fe2e33 NR |
8 | |
9 | /** | |
10 | * The {@link Enum} representing textual information to be translated to the | |
11 | * user as a key. | |
12 | * | |
13 | * Note that each key that should be translated <b>must</b> be annotated with a | |
14 | * {@link Meta} annotation. | |
15 | * | |
16 | * @author niki | |
17 | */ | |
18 | public enum StringId { | |
19 | /** | |
20 | * A special key used for technical reasons only, without annotations so it | |
21 | * is not visible in <tt>.properties</tt> files. | |
22 | * <p> | |
23 | * Use it when you need NO translation. | |
24 | */ | |
25 | NULL, // | |
26 | /** | |
27 | * A special key used for technical reasons only, without annotations so it | |
28 | * is not visible in <tt>.properties</tt> files. | |
29 | * <p> | |
30 | * Use it when you need a real translation but still don't have a key. | |
31 | */ | |
32 | DUMMY, // | |
d0114000 NR |
33 | @Meta(what = "help message", where = "cli", format = "%s = supported input, %s = supported output", info = "help message for the syntax") |
34 | HELP_SYNTAX, // | |
35 | @Meta(what = "error message", where = "cli", format = "", info = "syntax error message") | |
08fe2e33 NR |
36 | ERR_SYNTAX, // |
37 | @Meta(what = "error message", where = "cli", format = "%s = support name, %s = support desc", info = "an input or output support type description") | |
38 | ERR_SYNTAX_TYPE, // | |
39 | @Meta(what = "error message", where = "cli", format = "%s = input string", info = "Error when retrieving data") | |
40 | ERR_LOADING, // | |
41 | @Meta(what = "error message", where = "cli", format = "%s = save target", info = "Error when saving to given target") | |
42 | ERR_SAVING, // | |
43 | @Meta(what = "error message", where = "cli", format = "%s = bad output format", info = "Error when unknown output format") | |
44 | ERR_BAD_OUTPUT_TYPE, // | |
45 | @Meta(what = "error message", where = "cli", format = "%s = input string", info = "Error when converting input to URL/File") | |
46 | ERR_BAD_URL, // | |
47 | @Meta(what = "error message", where = "cli", format = "%s = input url", info = "URL/File not supported") | |
48 | ERR_NOT_SUPPORTED, // | |
49 | @Meta(what = "error message", where = "BasicSupport", format = "%s = cover URL", info = "Failed to download cover : %s") | |
50 | ERR_BS_NO_COVER, // | |
51 | @Meta(what = "char", where = "LaTeX/BasicSupport", format = "single char", info = "Canonical OPEN SINGLE QUOTE char (for instance: `)") | |
52 | OPEN_SINGLE_QUOTE, // | |
53 | @Meta(what = "char", where = "LaTeX/BasicSupport", format = "single char", info = "Canonical CLOSE SINGLE QUOTE char (for instance: ‘)") | |
54 | CLOSE_SINGLE_QUOTE, // | |
55 | @Meta(what = "char", where = "LaTeX/BasicSupport", format = "single char", info = "Canonical OPEN DOUBLE QUOTE char (for instance: “)") | |
56 | OPEN_DOUBLE_QUOTE, // | |
57 | @Meta(what = "char", where = "LaTeX/BasicSupport", format = "single char", info = "Canonical CLOSE DOUBLE QUOTE char (for instance: ”)") | |
58 | CLOSE_DOUBLE_QUOTE, // | |
59 | @Meta(what = "chapter name", where = "BasicSupport", format = "", info = "Name of the description fake chapter") | |
60 | DESCRIPTION, // | |
61 | @Meta(what = "chapter name", where = "", format = "%d = number, %s = name", info = "Name of a chapter with a name") | |
62 | CHAPTER_NAMED, // | |
63 | @Meta(what = "chapter name", where = "", format = "%d = number, %s = name", info = "Name of a chapter without name") | |
64 | CHAPTER_UNNAMED, // | |
65 | @Meta(what = "input format description", where = "SupportType", format = "%s = type", info = "Default description when the type is not known by i18n") | |
66 | INPUT_DESC, // | |
67 | @Meta(what = "input format description", where = "SupportType", format = "", info = "Description of this input type") | |
68 | INPUT_DESC_EPUB, // | |
69 | @Meta(what = "input format description", where = "SupportType", format = "", info = "Description of this input type") | |
70 | INPUT_DESC_TEXT, // | |
71 | @Meta(what = "input format description", where = "SupportType", format = "", info = "Description of this input type") | |
72 | INPUT_DESC_INFO_TEXT, // | |
73 | @Meta(what = "input format description", where = "SupportType", format = "", info = "Description of this input type") | |
74 | INPUT_DESC_FANFICTION, // | |
75 | @Meta(what = "input format description", where = "SupportType", format = "", info = "Description of this input type") | |
76 | INPUT_DESC_FIMFICTION, // | |
77 | @Meta(what = "input format description", where = "SupportType", format = "", info = "Description of this input type") | |
78 | INPUT_DESC_MANGAFOX, // | |
79 | @Meta(what = "input format description", where = "SupportType", format = "", info = "Description of this input type") | |
80 | INPUT_DESC_E621, // | |
81 | @Meta(what = "output format description", where = "OutputType", format = "%s = type", info = "Default description when the type is not known by i18n") | |
82 | OUTPUT_DESC, // | |
83 | @Meta(what = "output format description", where = "OutputType", format = "", info = "Description of this output type") | |
84 | OUTPUT_DESC_EPUB, // | |
85 | @Meta(what = "output format description", where = "OutputType", format = "", info = "Description of this output type") | |
86 | OUTPUT_DESC_TEXT, // | |
87 | @Meta(what = "output format description", where = "OutputType", format = "", info = "Description of this output type") | |
88 | OUTPUT_DESC_INFO_TEXT, // | |
89 | @Meta(what = "output format description", where = "OutputType", format = "", info = "Description of this output type") | |
90 | OUTPUT_DESC_CBZ, // | |
91 | @Meta(what = "output format description", where = "OutputType", format = "", info = "Description of this output type") | |
92 | OUTPUT_DESC_LATEX, // | |
93 | @Meta(what = "output format description", where = "OutputType", format = "", info = "Description of this output type") | |
94 | OUTPUT_DESC_SYSOUT, // | |
95 | @Meta(what = "error message", where = "LaTeX", format = "%s = the unknown 2-code language", info = "Error message for unknown 2-letter LaTeX language code") | |
96 | LATEX_LANG_UNKNOWN, // | |
97 | @Meta(what = "'by' prefix before author name", where = "", format = "", info = "used to output the author, make sure it is covered by Config.BYS for input detection") | |
98 | BY, // | |
99 | ||
100 | ; | |
101 | ||
102 | /** | |
103 | * Write the header found in the configuration <tt>.properties</tt> file of | |
104 | * this {@link Bundle}. | |
105 | * | |
106 | * @param writer | |
107 | * the {@link Writer} to write the header in | |
108 | * @param name | |
109 | * the file name | |
110 | * | |
111 | * @throws IOException | |
112 | * in case of IO error | |
113 | */ | |
114 | static public void writeHeader(Writer writer, String name) | |
115 | throws IOException { | |
116 | writer.write("# " + name + " translation file (UTF-8)\n"); | |
117 | writer.write("# \n"); | |
118 | writer.write("# Note that any key can be doubled with a _NOUTF suffix\n"); | |
119 | writer.write("# to use when the NOUTF env variable is set to 1\n"); | |
120 | writer.write("# \n"); | |
121 | writer.write("# Also, the comments always refer to the key below them.\n"); | |
122 | writer.write("# \n"); | |
123 | } | |
124 | }; |