diff --git a/legacy/efreet/po/cs.po b/legacy/efreet/po/cs.po index f191784a45..9c4db3db0a 100644 --- a/legacy/efreet/po/cs.po +++ b/legacy/efreet/po/cs.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/Plocha" +msgid "Desktop" +msgstr "Plocha" diff --git a/legacy/efreet/po/de.po b/legacy/efreet/po/de.po index 3df97f5de4..0a7f791082 100644 --- a/legacy/efreet/po/de.po +++ b/legacy/efreet/po/de.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/Arbeitsfläche" +msgid "Desktop" +msgstr "Arbeitsfläche" diff --git a/legacy/efreet/po/efreet.pot b/legacy/efreet/po/efreet.pot index 093ea02927..c333d88baa 100644 --- a/legacy/efreet/po/efreet.pot +++ b/legacy/efreet/po/efreet.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: efreet 1.2.99.72784\n" +"Project-Id-Version: efreet 1.2.99.72956\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/legacy/efreet/po/el.po b/legacy/efreet/po/el.po index 585321c3ab..054378cef5 100644 --- a/legacy/efreet/po/el.po +++ b/legacy/efreet/po/el.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/Επιφάνεια εργασίας" +msgid "Desktop" +msgstr "Επιφάνεια εργασίας" diff --git a/legacy/efreet/po/es.po b/legacy/efreet/po/es.po index 85ccdc7330..459c7d99d0 100644 --- a/legacy/efreet/po/es.po +++ b/legacy/efreet/po/es.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/Escritorio" +msgid "Desktop" +msgstr "Escritorio" diff --git a/legacy/efreet/po/fr.po b/legacy/efreet/po/fr.po index 203b1e4298..3f94bda09f 100644 --- a/legacy/efreet/po/fr.po +++ b/legacy/efreet/po/fr.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/Bureau" +msgid "Desktop" +msgstr "Bureau" diff --git a/legacy/efreet/po/it.po b/legacy/efreet/po/it.po index 7f36e1ed04..002a221f2e 100644 --- a/legacy/efreet/po/it.po +++ b/legacy/efreet/po/it.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/Scrivania" +msgid "Desktop" +msgstr "Scrivania" diff --git a/legacy/efreet/po/ja.po b/legacy/efreet/po/ja.po index 2ac4cf256c..96fc3ef646 100644 --- a/legacy/efreet/po/ja.po +++ b/legacy/efreet/po/ja.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/デスクトップ" +msgid "Desktop" +msgstr "デスクトップ" diff --git a/legacy/efreet/po/ko.po b/legacy/efreet/po/ko.po index 077bca7453..d8d55c648d 100644 --- a/legacy/efreet/po/ko.po +++ b/legacy/efreet/po/ko.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/바탕화면" +msgid "Desktop" +msgstr "바탕화면" diff --git a/legacy/efreet/po/nl.po b/legacy/efreet/po/nl.po index 17961b39ed..ff8f275067 100644 --- a/legacy/efreet/po/nl.po +++ b/legacy/efreet/po/nl.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/Bureaublad" +msgid "Desktop" +msgstr "Bureaublad" diff --git a/legacy/efreet/po/pt.po b/legacy/efreet/po/pt.po index c1f6899016..8f90ddfc64 100644 --- a/legacy/efreet/po/pt.po +++ b/legacy/efreet/po/pt.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/Área de Trabalho" +msgid "Desktop" +msgstr "Área de Trabalho" diff --git a/legacy/efreet/po/ru.po b/legacy/efreet/po/ru.po index 1c0742e95e..81551e7cd7 100644 --- a/legacy/efreet/po/ru.po +++ b/legacy/efreet/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/Рабочий стол" +msgid "Desktop" +msgstr "Рабочий стол" diff --git a/legacy/efreet/po/sl.po b/legacy/efreet/po/sl.po index 6571dabc95..92eaebb011 100644 --- a/legacy/efreet/po/sl.po +++ b/legacy/efreet/po/sl.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Efreet\n" "Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-25 17:14+0900\n" +"POT-Creation-Date: 2012-06-29 21:41+0200\n" "PO-Revision-Date: 2012-06-24 17:10+0900\n" "Last-Translator: Jerome Pinot \n" "Language-Team: Enlightenment Team\n" @@ -16,5 +16,5 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: src/lib/efreet_base.c:122 -msgid "/Desktop" -msgstr "/Namizje" +msgid "Desktop" +msgstr "Namizje" diff --git a/legacy/efreet/src/lib/efreet_base.c b/legacy/efreet/src/lib/efreet_base.c index 5fbc916baf..4cea7f31ae 100644 --- a/legacy/efreet/src/lib/efreet_base.c +++ b/legacy/efreet/src/lib/efreet_base.c @@ -50,6 +50,7 @@ static const char *hostname = NULL; static const char *efreet_dir_get(const char *key, const char *fallback); static Eina_List *efreet_dirs_get(const char *key, const char *fallback); +static const char *efreet_user_dir_get(const char *key, const char *fallback); /** * @internal @@ -119,7 +120,7 @@ EAPI const char * efreet_desktop_dir_get(void) { if (xdg_desktop_dir) return xdg_desktop_dir; - xdg_desktop_dir = efreet_dir_get("XDG_DESKTOP_DIR", _("/Desktop")); + xdg_desktop_dir = efreet_user_dir_get("XDG_DESKTOP_DIR", _("Desktop")); return xdg_desktop_dir; } @@ -277,3 +278,61 @@ efreet_dirs_get(const char *key, const char *fallback) return dirs; } + +/** + * @internal + * @param key The user-dirs key to lookup + * @param fallback The fallback value to use + * @return Returns the directory related to the given key or the fallback + * @brief This tries to determine the correct directory name given the + * user-dirs key @a key and fallbacks @a fallback. + */ +static const char * +efreet_user_dir_get(const char *key, const char *fallback) +{ + Eina_File *file = NULL; + Eina_File_Lines *line; + Eina_Iterator *it = NULL; + const char *config_home; + char path[PATH_MAX]; + char *ret = NULL; + + config_home = efreet_config_home_get(); + snprintf(path, sizeof(path), "%s/user-dirs.dirs", config_home); + + file = eina_file_open(path, EINA_FALSE); + if (!file) goto fallback; + it = eina_file_map_lines(file); + if (!it) goto fallback; + EINA_ITERATOR_FOREACH(it, line) + { + const char *eq, *end; + + if (line->length < 3) continue; + if (line->line.start[0] == '#') continue; + if (strncmp(line->line.start, "XDG", 3)) continue; + eq = memchr(line->line.start, '=', line->length); + if (!eq) continue; + if (strncmp(key, line->line.start, eq - line->line.start)) continue; + if (++eq >= line->line.end) continue; + if (*eq != '"') continue; + if (++eq >= line->line.end) continue; + end = memchr(eq, '"', line->line.end - eq); + if (!end) continue; + ret = alloca(end - eq + 1); + memcpy(ret, eq, end - eq); + ret[end - eq] = '\0'; + break; + } +fallback: + if (it) eina_iterator_free(it); + if (file) eina_file_close(file); + if (!ret) + { + const char *home; + home = efreet_home_dir_get(); + ret = alloca(strlen(home) + strlen(fallback) + 2); + sprintf(ret, "%s/%s", home, fallback); + } + return eina_stringshare_add(ret); +}