Main.java: new actins available
[fanfix.git] / src / be / nikiroo / fanfix / bundles / StringId.java
CommitLineData
08fe2e33
NR
1package be.nikiroo.fanfix.bundles;
2
3import java.io.IOException;
4import java.io.Writer;
5
6import be.nikiroo.utils.resources.Meta;
7import be.nikiroo.utils.resources.bundles.Bundle;
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 */
18public 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};