Skip to content

Commit

Permalink
Created German translation (WIP)
Browse files Browse the repository at this point in the history
  • Loading branch information
spixi committed Jun 8, 2014
1 parent 91b1f35 commit f8df706
Show file tree
Hide file tree
Showing 27 changed files with 195 additions and 188 deletions.
4 changes: 3 additions & 1 deletion src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,10 @@ IF(LINK_GIO_STATIC)
ENDIF(WIN32)
ENDIF(LINK_GIO_STATIC)

SET(GETTEXT_CFLAGS "-DGETTEXT_PACKAGE=\\\"venom\\\"")

# add cflags and cflags_other of all dependencies to our cflags
SET(CMAKE_C_FLAGS ${CMAKE_C_FLAGS}
SET(CMAKE_C_FLAGS ${CMAKE_C_FLAGS} ${GETTEXT_CFLAGS}
${GTK_CFLAGS} ${GTK_CFLAGS_OTHER}
${GIO_CFLAGS} ${GIO_CFLAGS_OTHER}
${GLIB_CFLAGS} ${GLIB_CFLAGS_OTHER}
Expand Down
15 changes: 10 additions & 5 deletions src/Main.vala
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
* You should have received a copy of the GNU General Public License
* along with Venom. If not, see <http://www.gnu.org/licenses/>.
*/
const string GETTEXT_PACKAGE = "venom";

namespace Venom {

Expand All @@ -35,14 +36,18 @@ public class Main : GLib.Object {
};

public static int main (string[] args) {
GLib.Intl.setlocale(GLib.LocaleCategory.MESSAGES, "");
GLib.Intl.textdomain(GETTEXT_PACKAGE);
GLib.Intl.bind_textdomain_codeset(GETTEXT_PACKAGE, "utf-8");
GLib.Intl.bindtextdomain(GETTEXT_PACKAGE, "../locale");
try {
GLib.OptionContext option_context = new GLib.OptionContext("");
option_context.set_help_enabled(true);
option_context.add_main_entries(options, null);
option_context.parse(ref args);
} catch (GLib.OptionError e) {
stdout.printf("error: %s\n", e.message);
stdout.printf("Run '%s --help' to see a full list of available command line options.\n", args[0]);
stdout.printf(_("error: %s\n"), e.message);
stdout.printf(_("Run '%s --help' to see a full list of available command line options.\n"), args[0]);
return -1;
}

Expand All @@ -52,17 +57,17 @@ public class Main : GLib.Object {
}

if(datafile != null) {
stdout.printf("Using data file \"%s\"\n", datafile);
stdout.printf(_("Using data file \"%s\"\n"), datafile);
ResourceFactory.instance.data_filename = datafile;
}

if(textview) {
stdout.printf("Using Gtk.TextView to display messages\n");
stdout.printf(_("Using Gtk.TextView to display messages\n"));
ResourceFactory.instance.textview_mode = true;
}

if(offline) {
stdout.printf("Starting in offline mode\n");
stdout.printf(_("Starting in offline mode\n"));
ResourceFactory.instance.offline_mode = true;
}

Expand Down
14 changes: 7 additions & 7 deletions src/core/Contact.vala
Original file line number Diff line number Diff line change
Expand Up @@ -66,10 +66,10 @@ namespace Venom {
if(alias == "") {
return name;
} else {
return "%s <i>(%s)</i>".printf(Markup.escape_text(name), Markup.escape_text(alias));
return _("%s <i>(%s)</i>").printf(Markup.escape_text(name), Markup.escape_text(alias));
}
} else if (alias != "") {
return "<i>%s</i>".printf(Markup.escape_text(alias));
return _("<i>%s</i>").printf(Markup.escape_text(alias));
} else {
return Tools.bin_to_hexstring(public_key);
}
Expand All @@ -80,10 +80,10 @@ namespace Venom {
if(alias == "") {
return name;
} else {
return "%s <i>(%s)</i>".printf(Tools.markup_uris(name), Tools.markup_uris(alias));
return _("%s <i>(%s)</i>").printf(Tools.markup_uris(name), Tools.markup_uris(alias));
}
} else if (alias != "") {
return "<i>%s</i>".printf(Tools.markup_uris(alias));
return _("<i>%s</i>").printf(Tools.markup_uris(alias));
} else {
return Tools.bin_to_hexstring(public_key);
}
Expand All @@ -95,7 +95,7 @@ namespace Venom {
} else if (last_seen != null) {
return get_last_seen_string();
} else {
return "Offline";
return _("Offline");
}
}

Expand All @@ -105,7 +105,7 @@ namespace Venom {
} else if (last_seen != null) {
return get_last_seen_string();
} else {
return "Offline";
return _("Offline");
}
}

Expand All @@ -114,7 +114,7 @@ namespace Venom {
}

public string get_last_seen_string() {
return last_seen != null ? "Last seen: %s".printf(last_seen.format("%c")) : "";
return last_seen != null ? _("Last seen: %s").printf(last_seen.format("%c")) : "";
}

public string get_tooltip_string() {
Expand Down
8 changes: 4 additions & 4 deletions src/core/ContactStorage.vala
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ namespace Venom {
SqliteTools.put_int (insert_statement, TABLE_ISBLOCKED, c.is_blocked ? 1 : 0);
SqliteTools.put_text(insert_statement, TABLE_GROUP, c.group);
} catch (SqliteStatementError e) {
stderr.printf("Error writing contact to sqlite database: %s\n", e.message);
stderr.printf(_("Error writing contact to sqlite database: %s\n"), e.message);
return;
}

Expand All @@ -100,17 +100,17 @@ namespace Venom {

//create table and index if needed
if(db.exec (QUERY_TABLE_CONTACTS, null, out errmsg) != Sqlite.OK) {
throw new SqliteDbError.QUERY("Error creating contacts table: %s\n", errmsg);
throw new SqliteDbError.QUERY(_("Error creating contacts table: %s\n"), errmsg);
}

//prepare insert statement for adding new history messages
if(db.prepare_v2 (STATEMENT_INSERT_CONTACTS, STATEMENT_INSERT_CONTACTS.length, out insert_statement) != Sqlite.OK) {
throw new SqliteDbError.QUERY("Error creating contacts insert statement: %d: %s\n", db.errcode (), db.errmsg());
throw new SqliteDbError.QUERY(_("Error creating contacts insert statement: %d: %s\n"), db.errcode (), db.errmsg());
}

//prepare select statement to get history. Will execute on indexed data
if(db.prepare_v2 (STATEMENT_SELECT_CONTACTS, STATEMENT_SELECT_CONTACTS.length, out select_statement) != Sqlite.OK) {
throw new SqliteDbError.QUERY("Error creating contacts select statement: %d: %s\n", db.errcode (), db.errmsg());
throw new SqliteDbError.QUERY(_("Error creating contacts select statement: %d: %s\n"), db.errcode (), db.errmsg());
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/core/DhtNode.vala
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ namespace Venom {
this.is_ipv6 = true;
}
public string to_string() {
return "%s:%u%s %s".printf(host, port, is_ipv6 ? " (ipv6)" : "", Tools.bin_to_hexstring(pub_key));
return _("%s:%u%s %s").printf(host, port, is_ipv6 ? _(" (ipv6)") : "", Tools.bin_to_hexstring(pub_key));
}
}
}
6 changes: 3 additions & 3 deletions src/core/DhtNodeStorage.vala
Original file line number Diff line number Diff line change
Expand Up @@ -169,17 +169,17 @@ namespace Venom {

//create table and index if needed
if(db.exec (QUERY_TABLE_NODES, null, out errmsg) != Sqlite.OK) {
throw new SqliteDbError.QUERY("Error creating dht nodes table: %s\n", errmsg);
throw new SqliteDbError.QUERY(_("Error creating dht nodes table: %s\n"), errmsg);
}

//prepare insert statement for adding new history messages
if(db.prepare_v2 (STATEMENT_INSERT_NODES, STATEMENT_INSERT_NODES.length, out insert_statement) != Sqlite.OK) {
throw new SqliteDbError.QUERY("Error creating dht nodes insert statement: %d: %s\n", db.errcode (), db.errmsg());
throw new SqliteDbError.QUERY(_("Error creating dht nodes insert statement: %d: %s\n"), db.errcode (), db.errmsg());
}

//prepare select statement to get history. Will execute on indexed data
if(db.prepare_v2 (STATEMENT_SELECT_NODES, STATEMENT_SELECT_NODES.length, out select_statement) != Sqlite.OK) {
throw new SqliteDbError.QUERY("Error creating dht nodes select statement: %d: %s\n", db.errcode (), db.errmsg());
throw new SqliteDbError.QUERY(_("Error creating dht nodes select statement: %d: %s\n"), db.errcode (), db.errmsg());
}
}
}
Expand Down
8 changes: 4 additions & 4 deletions src/core/GroupChat.vala
Original file line number Diff line number Diff line change
Expand Up @@ -42,18 +42,18 @@ namespace Venom {
}

public string get_name_string() {
return local_name == "" ? "Groupchat #%i".printf(group_id) : Markup.escape_text(local_name);
return local_name == "" ? _("Groupchat #%i").printf(group_id) : Markup.escape_text(local_name);
}
public string get_name_string_with_hyperlinks() {
return get_name_string();
}
public string get_status_string() {
if(peer_count > 1) {
return "%i people connected".printf(peer_count);
return _("%i people connected").printf(peer_count);
} else if(peer_count > 0) {
return "%i person connected".printf(peer_count);
return _("%i person connected").printf(peer_count);
} else {
return "no one connected";
return _("no one connected");
}
}
public string get_status_string_with_hyperlinks() {
Expand Down
2 changes: 1 addition & 1 deletion src/core/GroupChatContact.vala
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ namespace Venom {
this.name = name;
}

public string get_status_string() { return "Online"; }
public string get_status_string() { return _("Online"); }
public string get_status_string_with_hyperlinks() { return get_status_string(); }
public string get_status_string_alt() { return get_status_string(); }
public string get_last_seen_string() { return ""; }
Expand Down
6 changes: 3 additions & 3 deletions src/core/Message.vala
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ namespace Venom {
* Get plain time string
*/
public virtual string get_time_plain() {
return timestamp.format("%R:%S");
return timestamp.format(_("%R:%S"));
}

/*
Expand Down Expand Up @@ -149,7 +149,7 @@ namespace Venom {
if(this.message_direction == MessageDirection.OUTGOING) {
return User.instance.name;
}
return from_contact.name != null ? from_contact.name : "<unknown>";
return from_contact.name != null ? from_contact.name : _("<unknown>");
}
}
public virtual string get_message_plain() {
Expand Down Expand Up @@ -188,7 +188,7 @@ namespace Venom {
public override string get_message_plain() {
string name_string;
if(message_direction == MessageDirection.INCOMING) {
name_string = from_contact.name != null ? from_contact.name : "<unknown>";
name_string = from_contact.name != null ? from_contact.name : _("<unknown>");
} else {
name_string = User.instance.name;
}
Expand Down
16 changes: 8 additions & 8 deletions src/core/MessageLog.vala
Original file line number Diff line number Diff line change
Expand Up @@ -79,11 +79,11 @@ namespace Venom {
public SqliteMessageLog(Sqlite.Database db) {
this.db = db;
init_db ();
stdout.printf ("SQLite database created.\n");
stdout.printf (_("SQLite database created.\n"));
}

~LocalStorage() {
stdout.printf ("SQLite database closed.\n");
stdout.printf (_("SQLite database closed.\n"));
}

public void connect_to(ToxSession session) {
Expand Down Expand Up @@ -115,7 +115,7 @@ namespace Venom {
SqliteTools.put_int64(insert_statement, TABLE_TIME, nowTime.to_unix());
SqliteTools.put_int(insert_statement, TABLE_SENDER, issender ? 1 : 0);
} catch (SqliteStatementError e) {
stderr.printf("Error writing message to sqlite database: %s\n", e.message);
stderr.printf(_("Error writing message to sqlite database: %s\n"), e.message);
return;
}

Expand All @@ -132,7 +132,7 @@ namespace Venom {
SqliteTools.put_text(select_statement , TABLE_CONTACT, cId);
SqliteTools.put_int64(select_statement, TABLE_OLDEST, earliestTime.to_unix());
} catch (SqliteStatementError e) {
stderr.printf("Error retrieving logs from sqlite database: %s\n", e.message);
stderr.printf(_("Error retrieving logs from sqlite database: %s\n"), e.message);
return null;
}

Expand Down Expand Up @@ -166,7 +166,7 @@ namespace Venom {
//create table and index if needed
int ec = db.exec (QUERY_TABLE_HISTORY, null, out errmsg);
if (ec != Sqlite.OK) {
stderr.printf ("Error: %s\n", errmsg);
stderr.printf (_("Error: %s\n"), errmsg);
return -1;
}

Expand All @@ -176,21 +176,21 @@ namespace Venom {

ec = db.exec (index_query, null, out errmsg);
if (ec != Sqlite.OK) {
stderr.printf ("Error: %s\n", errmsg);
stderr.printf (_("Error: %s\n"), errmsg);
return -1;
}

//prepare insert statement for adding new history messages
ec = db.prepare_v2 (STATEMENT_INSERT_HISTORY, STATEMENT_INSERT_HISTORY.length, out insert_statement);
if (ec != Sqlite.OK) {
stderr.printf ("Error: %d: %s\n", db.errcode (), db.errmsg ());
stderr.printf (_("Error: %d: %s\n"), db.errcode (), db.errmsg ());
return -1;
}

//prepare select statement to get history. Will execute on indexed data
ec = db.prepare_v2 (STATEMENT_SELECT_HISTORY, STATEMENT_SELECT_HISTORY.length, out select_statement);
if (ec != Sqlite.OK) {
stderr.printf ("Error: %d: %s\n", db.errcode (), db.errmsg ());
stderr.printf (_("Error: %d: %s\n"), db.errcode (), db.errmsg ());
return -1;
}
return 0;
Expand Down
8 changes: 4 additions & 4 deletions src/core/ResourceFactory.vala
Original file line number Diff line number Diff line change
Expand Up @@ -74,9 +74,9 @@ namespace Venom {
db_filename = Path.build_filename(tox_config_dir, "tox.db");
config_filename = Path.build_filename(tox_config_dir, "config.json");

default_add_contact_message = "Please let me add you to my contact list.";
default_username = "Tox User";
default_statusmessage = "Toxing on Venom v.%s".printf(Config.VERSION);
default_add_contact_message = _("Please let me add you to my contact list.");
default_username = _("Tox User");
default_statusmessage = _("Toxing on Venom v.%s").printf(Config.VERSION);
}

public Gdk.Pixbuf ok {get; private set;}
Expand Down Expand Up @@ -125,7 +125,7 @@ namespace Venom {
try {
buf = new Gdk.Pixbuf.from_resource( resourcename );
} catch (Error e) {
stderr.printf("Error while loading image from \"%s\":%s\n", resourcename, e.message );
stderr.printf(_("Error while loading image from \"%s\":%s\n"), resourcename, e.message );
}
return buf;
}
Expand Down
6 changes: 3 additions & 3 deletions src/core/Settings.vala
Original file line number Diff line number Diff line change
Expand Up @@ -96,10 +96,10 @@ namespace Venom {
DataOutputStream os = new DataOutputStream(file.replace(null, false, FileCreateFlags.PRIVATE | FileCreateFlags.REPLACE_DESTINATION ));
generator.to_stream(os);
} catch (Error e) {
stderr.printf("Error saving configs:%s\n", e.message);
stderr.printf(_("Error saving configs:%s\n"), e.message);
return;
}
stdout.printf("Settings saved.\n");
stdout.printf(_("Settings saved.\n"));
}

public static Settings? load_settings(string path) {
Expand All @@ -109,7 +109,7 @@ namespace Venom {
parser.load_from_file(path);
node = parser.get_root();
} catch (Error e) {
stderr.printf("Error reading configs:%s\n",e.message);
stderr.printf(_("Error reading configs:%s\n"),e.message);
return null;
}
return Json.gobject_deserialize (typeof (Settings), node) as Settings;
Expand Down
14 changes: 7 additions & 7 deletions src/core/SqliteTools.vala
Original file line number Diff line number Diff line change
Expand Up @@ -34,30 +34,30 @@ namespace Venom {
public static void put_int(Sqlite.Statement statement, string name, int value) throws SqliteStatementError {
int index = statement.bind_parameter_index(name);
if(index == 0) {
throw new SqliteStatementError.INDEX(@"Index for \"$(name)\" not found.");
throw new SqliteStatementError.INDEX(_("Index for %s not found.").printf(name));
}
if(statement.bind_int(index, value) != Sqlite.OK) {
throw new SqliteStatementError.BIND(@"Could not bind int to \"$(name)\".");
throw new SqliteStatementError.BIND(_("Could not bind int to %s.").printf(name));
}
}

public static void put_int64(Sqlite.Statement statement, string name, int64 value) throws SqliteStatementError {
int index = statement.bind_parameter_index(name);
if(index == 0) {
throw new SqliteStatementError.INDEX(@"Index for \"$(name)\" not found.");
throw new SqliteStatementError.INDEX(_("Index for %s not found.").printf(name));
}
if(statement.bind_int64(index, value) != Sqlite.OK) {
throw new SqliteStatementError.BIND(@"Could not bind int64 to \"$(name)\".");
throw new SqliteStatementError.BIND(_("Could not bind int64 to %s.").printf(name));
}
}

public static void put_text(Sqlite.Statement statement, string name, string value) throws SqliteStatementError {
int index = statement.bind_parameter_index(name);
if(index == 0) {
throw new SqliteStatementError.INDEX(@"Index for \"$(name)\" not found.");
throw new SqliteStatementError.INDEX(_("Index for %s not found.").printf(name));
}
if(statement.bind_text(index, value) != Sqlite.OK) {
throw new SqliteStatementError.BIND(@"Could not bind text to \"$(name)\".");
throw new SqliteStatementError.BIND(_("Could not bind text to %s").printf(name));
}
}

Expand All @@ -72,7 +72,7 @@ namespace Venom {
}

if(Sqlite.Database.open (filepath, out db) != Sqlite.OK) {
throw new SqliteDbError.OPEN("Can't open database: %d: %s\n", db.errcode (), db.errmsg ());
throw new SqliteDbError.OPEN(_("Can't open database: %d: %s\n"), db.errcode (), db.errmsg ());
}
}
}
Expand Down

0 comments on commit f8df706

Please sign in to comment.