From 9af2a171f5c49a435ca19a996583f6130ec1dee8 Mon Sep 17 00:00:00 2001 From: Andrea Diamantini Date: Sun, 29 Mar 2009 00:21:38 +0100 Subject: imported Avaddon clone (just some bits) --- po/CMakeLists.txt | 34 +++ po/rekonq.pot | 277 +++++++++---------- po/rekonq_ru.po | 750 ++++++++++++++++++++++++++++++++++++++++++++++++++++ scripts/Messages.sh | 42 ++- 4 files changed, 966 insertions(+), 137 deletions(-) create mode 100644 po/CMakeLists.txt create mode 100644 po/rekonq_ru.po diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt new file mode 100644 index 00000000..261e9e4c --- /dev/null +++ b/po/CMakeLists.txt @@ -0,0 +1,34 @@ +FIND_PROGRAM(GETTEXT_MSGFMT_EXECUTABLE msgfmt) + +IF(NOT GETTEXT_MSGFMT_EXECUTABLE) + MESSAGE( +"------ + NOTE: msgfmt not found. Translations will *not* be installed +------") +ELSE(NOT GETTEXT_MSGFMT_EXECUTABLE) + + SET(catalogname rekonq) + + ADD_CUSTOM_TARGET(translations ALL) + + FILE(GLOB PO_FILES ${catalogname}*.po) + + FOREACH(_poFile ${PO_FILES}) + GET_FILENAME_COMPONENT(_poFileName ${_poFile} NAME) + STRING(REGEX REPLACE "^${catalogname}_?" "" _langCode ${_poFileName} ) + STRING(REGEX REPLACE "\\.po$" "" _langCode ${_langCode} ) + + IF( _langCode ) + GET_FILENAME_COMPONENT(_lang ${_poFile} NAME_WE) + SET(_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo) + + ADD_CUSTOM_COMMAND(TARGET translations + COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} --check -o ${_gmoFile} ${_poFile} + DEPENDS ${_poFile}) + INSTALL(FILES ${_gmoFile} DESTINATION ${LOCALE_INSTALL_DIR}/${_langCode}/LC_MESSAGES/ RENAME ${catalogname}.mo) + ENDIF( _langCode ) + + ENDFOREACH(_poFile ${PO_FILES}) + +ENDIF(NOT GETTEXT_MSGFMT_EXECUTABLE) + diff --git a/po/rekonq.pot b/po/rekonq.pot index 9ce50dd8..74d1ce5c 100644 --- a/po/rekonq.pot +++ b/po/rekonq.pot @@ -7,9 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: http://sourceforge.net/tracker/?" -"group_id=252277&atid=1126949\n" -"POT-Creation-Date: 2009-03-25 01:44+0100\n" +"Report-Msgid-Bugs-To: http://sourceforge.net/tracker/?\n" +"POT-Creation-Date: 2009-03-28 23:04+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,85 +16,85 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: cookiejar.cpp:469 cookiejar.cpp:638 +#: cookiejar.cpp:472 cookiejar.cpp:651 msgid "Website" msgstr "" -#: cookiejar.cpp:471 +#: cookiejar.cpp:474 msgid "Name" msgstr "" -#: cookiejar.cpp:473 +#: cookiejar.cpp:476 msgid "Path" msgstr "" -#: cookiejar.cpp:475 +#: cookiejar.cpp:478 msgid "Secure" msgstr "" -#: cookiejar.cpp:477 +#: cookiejar.cpp:480 msgid "Expires" msgstr "" -#: cookiejar.cpp:479 +#: cookiejar.cpp:482 msgid "Contents" msgstr "" -#: cookiejar.cpp:640 +#: cookiejar.cpp:653 msgid "Status" msgstr "" #. i18n: file: cookiesexceptions.ui:77 #. i18n: ectx: property (text), widget (QPushButton, allowButton) -#: cookiejar.cpp:661 rc.cpp:27 +#: cookiejar.cpp:678 rc.cpp:18 msgid "Allow" msgstr "" #. i18n: file: cookiesexceptions.ui:57 #. i18n: ectx: property (text), widget (QPushButton, blockButton) -#: cookiejar.cpp:670 rc.cpp:21 +#: cookiejar.cpp:689 rc.cpp:12 msgid "Block" msgstr "" #. i18n: file: cookiesexceptions.ui:67 #. i18n: ectx: property (text), widget (QPushButton, allowForSessionButton) -#: cookiejar.cpp:679 rc.cpp:24 +#: cookiejar.cpp:700 rc.cpp:15 msgid "Allow For Session" msgstr "" -#: history.cpp:416 +#: history.cpp:422 msgid "Title" msgstr "" -#: history.cpp:417 +#: history.cpp:423 msgid "Address" msgstr "" -#: history.cpp:657 +#: history.cpp:680 msgid "Show All History" msgstr "" -#: history.cpp:661 +#: history.cpp:684 msgid "Clear History" msgstr "" -#: history.cpp:739 +#: history.cpp:765 msgid "Open" msgstr "" -#: history.cpp:741 +#: history.cpp:767 msgid "Copy" msgstr "" -#: history.cpp:743 +#: history.cpp:769 msgid "Delete" msgstr "" -#: history.cpp:1111 +#: history.cpp:1152 msgid "Earlier Today" msgstr "" -#: history.cpp:1115 +#: history.cpp:1157 msgid " items" msgstr "" @@ -119,70 +118,70 @@ msgstr "" msgid "Location to open" msgstr "" -#: mainview.cpp:76 +#: mainview.cpp:77 msgid "Recently Closed Tabs" msgstr "" -#: mainview.cpp:368 mainview.cpp:392 +#: mainview.cpp:370 mainview.cpp:395 msgid "(Untitled)" msgstr "" -#: mainview.cpp:488 +#: mainview.cpp:491 msgid "" "You have modified this page and when closing it you would lose the " "modification.\n" "Do you really want to close this page?\n" msgstr "" -#: mainview.cpp:490 +#: mainview.cpp:493 msgid "Do you really want to close this page?" msgstr "" -#: mainwindow.cpp:114 +#: mainwindow.cpp:113 msgid "B&ookmarks" msgstr "" -#: mainwindow.cpp:191 +#: mainwindow.cpp:190 msgid "&Stop" msgstr "" -#: mainwindow.cpp:197 +#: mainwindow.cpp:196 msgid "reload" msgstr "" -#: mainwindow.cpp:201 +#: mainwindow.cpp:200 msgid "Open Location" msgstr "" -#: mainwindow.cpp:205 +#: mainwindow.cpp:204 msgid "Private &Browsing..." msgstr "" -#: mainwindow.cpp:207 +#: mainwindow.cpp:206 msgid "private browsing" msgstr "" -#: mainwindow.cpp:210 +#: mainwindow.cpp:209 msgid "&Enlarge Font" msgstr "" -#: mainwindow.cpp:215 +#: mainwindow.cpp:214 msgid "&Normal Font" msgstr "" -#: mainwindow.cpp:220 +#: mainwindow.cpp:219 msgid "&Shrink Font" msgstr "" -#: mainwindow.cpp:225 +#: mainwindow.cpp:224 msgid "Page S&ource" msgstr "" -#: mainwindow.cpp:229 +#: mainwindow.cpp:228 msgid "Enable Web &Inspector" msgstr "" -#: mainwindow.cpp:235 +#: mainwindow.cpp:234 msgid "Back" msgstr "" @@ -240,54 +239,54 @@ msgstr "" msgid " not found." msgstr "" -#: mainwindow.cpp:644 +#: mainwindow.cpp:654 msgid "Page Source of " msgstr "" -#: mainwindow.cpp:663 +#: mainwindow.cpp:673 msgid "" "The web inspector will only work correctly for pages that were loaded after " "enabling.\n" "Do you want to reload all pages?" msgstr "" -#: mainwindow.cpp:665 +#: mainwindow.cpp:675 msgid "Web Inspector" msgstr "" -#: mainwindow.cpp:709 +#: mainwindow.cpp:719 msgid "Stop loading the current page" msgstr "" -#: mainwindow.cpp:710 +#: mainwindow.cpp:720 msgid "Stop" msgstr "" -#: mainwindow.cpp:717 +#: mainwindow.cpp:727 msgid "Reload the current page" msgstr "" -#: mainwindow.cpp:718 +#: mainwindow.cpp:728 msgid "Reload" msgstr "" -#: networkaccessmanager.cpp:103 +#: networkaccessmanager.cpp:116 msgid "Enter username and password for " msgstr "" -#: networkaccessmanager.cpp:104 +#: networkaccessmanager.cpp:117 msgid " at " msgstr "" -#: networkaccessmanager.cpp:128 +#: networkaccessmanager.cpp:141 msgid "Connect to proxy " msgstr "" -#: networkaccessmanager.cpp:128 +#: networkaccessmanager.cpp:141 msgid " using:" msgstr "" -#: networkaccessmanager.cpp:148 +#: networkaccessmanager.cpp:161 msgid "" "SSL Errors:\n" "\n" @@ -299,29 +298,33 @@ msgstr "" #. i18n: file: settings_general.ui:14 #. i18n: ectx: property (windowTitle), widget (QWidget, general) -#: settings.cpp:78 rc.cpp:111 +#: settings.cpp:80 rc.cpp:111 msgid "General" msgstr "" #. i18n: file: settings_fonts.ui:20 #. i18n: ectx: property (title), widget (QGroupBox, groupBox) -#: settings.cpp:84 rc.cpp:96 +#: settings.cpp:86 rc.cpp:96 msgid "Fonts" msgstr "" #. i18n: file: settings_privacy.ui:14 #. i18n: ectx: property (windowTitle), widget (QWidget, privacy) -#: settings.cpp:90 rc.cpp:141 +#: settings.cpp:92 rc.cpp:135 msgid "Privacy" msgstr "" #. i18n: file: settings_proxy.ui:13 #. i18n: ectx: property (windowTitle), widget (QWidget, proxy) -#: settings.cpp:96 rc.cpp:201 +#: settings.cpp:98 rc.cpp:195 msgid "Proxy" msgstr "" -#: settings.cpp:109 +#: settings.cpp:104 +msgid "Interface" +msgstr "" + +#: settings.cpp:117 msgid "rekonfig.." msgstr "" @@ -341,75 +344,75 @@ msgstr "" msgid "Reload All Tabs" msgstr "" -#: webview.cpp:162 +#: webview.cpp:163 msgid "Error loading page: " msgstr "" -#: webview.cpp:220 +#: webview.cpp:221 msgid "Open in New Tab" msgstr "" -#. i18n: file: cookies.ui:14 -#. i18n: ectx: property (windowTitle), widget (QDialog, CookiesDialog) -#. i18n: file: settings_privacy.ui:73 -#. i18n: ectx: property (title), widget (QGroupBox, cookiesGroupBox) -#: rc.cpp:3 rc.cpp:168 -msgid "Cookies" -msgstr "" - -#. i18n: file: cookies.ui:41 -#. i18n: ectx: property (text), widget (QPushButton, removeButton) -#. i18n: file: cookiesexceptions.ui:114 -#. i18n: ectx: property (text), widget (QPushButton, removeButton) -#. i18n: file: history.ui:40 -#. i18n: ectx: property (text), widget (QPushButton, removeButton) -#: rc.cpp:6 rc.cpp:33 rc.cpp:42 -msgid "&Remove" -msgstr "" - -#. i18n: file: cookies.ui:48 -#. i18n: ectx: property (text), widget (QPushButton, removeAllButton) -#: rc.cpp:9 -msgid "Remove &All Cookies" -msgstr "" - #. i18n: file: cookiesexceptions.ui:13 #. i18n: ectx: property (windowTitle), widget (QDialog, CookiesExceptionsDialog) -#: rc.cpp:12 +#: rc.cpp:3 msgid "Cookie Exceptions" msgstr "" #. i18n: file: cookiesexceptions.ui:19 #. i18n: ectx: property (title), widget (QGroupBox, newExceptionGroupBox) -#: rc.cpp:15 +#: rc.cpp:6 msgid "New Exception" msgstr "" #. i18n: file: cookiesexceptions.ui:27 #. i18n: ectx: property (text), widget (QLabel, label) -#: rc.cpp:18 +#: rc.cpp:9 msgid "Domain:" msgstr "" #. i18n: file: cookiesexceptions.ui:89 #. i18n: ectx: property (title), widget (QGroupBox, ExceptionsGroupBox) -#: rc.cpp:30 +#: rc.cpp:21 msgid "Exceptions" msgstr "" +#. i18n: file: cookiesexceptions.ui:114 +#. i18n: ectx: property (text), widget (QPushButton, removeButton) +#. i18n: file: cookies.ui:41 +#. i18n: ectx: property (text), widget (QPushButton, removeButton) +#. i18n: file: history.ui:40 +#. i18n: ectx: property (text), widget (QPushButton, removeButton) +#: rc.cpp:24 rc.cpp:33 rc.cpp:42 +msgid "&Remove" +msgstr "" + #. i18n: file: cookiesexceptions.ui:121 #. i18n: ectx: property (text), widget (QPushButton, removeAllButton) #. i18n: file: history.ui:47 #. i18n: ectx: property (text), widget (QPushButton, removeAllButton) -#: rc.cpp:36 rc.cpp:45 +#: rc.cpp:27 rc.cpp:45 msgid "Remove &All" msgstr "" +#. i18n: file: cookies.ui:14 +#. i18n: ectx: property (windowTitle), widget (QDialog, CookiesDialog) +#. i18n: file: settings_privacy.ui:73 +#. i18n: ectx: property (title), widget (QGroupBox, cookiesGroupBox) +#: rc.cpp:30 rc.cpp:162 +msgid "Cookies" +msgstr "" + +#. i18n: file: cookies.ui:48 +#. i18n: ectx: property (text), widget (QPushButton, removeAllButton) +#: rc.cpp:36 +msgid "Remove &All Cookies" +msgstr "" + #. i18n: file: history.ui:13 #. i18n: ectx: property (windowTitle), widget (QDialog, HistoryDialog) #. i18n: file: settings_privacy.ui:20 #. i18n: ectx: property (title), widget (QGroupBox, groupBox_2) -#: rc.cpp:39 rc.cpp:144 +#: rc.cpp:39 rc.cpp:138 msgid "History" msgstr "" @@ -445,7 +448,7 @@ msgstr "" #. i18n: ectx: property (text), widget (QLabel, passwordLabel) #. i18n: file: settings_proxy.ui:115 #. i18n: ectx: property (text), widget (QLabel, label_13) -#: rc.cpp:60 rc.cpp:75 rc.cpp:228 +#: rc.cpp:60 rc.cpp:75 rc.cpp:222 msgid "Password:" msgstr "" @@ -499,9 +502,7 @@ msgstr "" #. i18n: file: settings_fonts.ui:14 #. i18n: ectx: property (windowTitle), widget (QWidget, fonts) -#. i18n: file: settings_general.ui:86 -#. i18n: ectx: property (title), widget (QGroupBox, groupBox_3) -#: rc.cpp:93 rc.cpp:126 +#: rc.cpp:93 msgid "Appearance" msgstr "" @@ -553,186 +554,194 @@ msgstr "" msgid "Save downloads to:" msgstr "" -#. i18n: file: settings_general.ui:92 -#. i18n: ectx: property (text), widget (QCheckBox, kcfg_alwaysShowTabBar) -#: rc.cpp:129 -msgid "Always show TabBar" -msgstr "" - -#. i18n: file: settings_general.ui:102 +#. i18n: file: settings_general.ui:86 #. i18n: ectx: property (title), widget (QGroupBox, groupBox_2) -#: rc.cpp:132 +#: rc.cpp:126 msgid "Web Content" msgstr "" -#. i18n: file: settings_general.ui:108 +#. i18n: file: settings_general.ui:92 #. i18n: ectx: property (text), widget (QCheckBox, kcfg_enablePlugins) -#: rc.cpp:135 +#: rc.cpp:129 msgid "Enable Plugins" msgstr "" -#. i18n: file: settings_general.ui:118 +#. i18n: file: settings_general.ui:102 #. i18n: ectx: property (text), widget (QCheckBox, kcfg_enableJavascript) -#: rc.cpp:138 +#: rc.cpp:132 msgid "Enable Javascript" msgstr "" #. i18n: file: settings_privacy.ui:26 #. i18n: ectx: property (text), widget (QLabel, label_4) -#: rc.cpp:147 +#: rc.cpp:141 msgid "Remove history items:" msgstr "" #. i18n: file: settings_privacy.ui:37 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) -#: rc.cpp:150 +#: rc.cpp:144 msgid "After one day" msgstr "" #. i18n: file: settings_privacy.ui:42 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) -#: rc.cpp:153 +#: rc.cpp:147 msgid "After one week" msgstr "" #. i18n: file: settings_privacy.ui:47 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) -#: rc.cpp:156 +#: rc.cpp:150 msgid "After two weeks" msgstr "" #. i18n: file: settings_privacy.ui:52 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) -#: rc.cpp:159 +#: rc.cpp:153 msgid "After one month" msgstr "" #. i18n: file: settings_privacy.ui:57 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) -#: rc.cpp:162 +#: rc.cpp:156 msgid "After one year" msgstr "" #. i18n: file: settings_privacy.ui:62 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) -#: rc.cpp:165 +#: rc.cpp:159 msgid "Manually" msgstr "" #. i18n: file: settings_privacy.ui:79 #. i18n: ectx: property (text), widget (QLabel, label_2) -#: rc.cpp:171 +#: rc.cpp:165 msgid "Accept Cookies:" msgstr "" #. i18n: file: settings_privacy.ui:90 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_acceptCookies) -#: rc.cpp:174 +#: rc.cpp:168 msgid "Always" msgstr "" #. i18n: file: settings_privacy.ui:95 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_acceptCookies) -#: rc.cpp:177 +#: rc.cpp:171 msgid "Never" msgstr "" #. i18n: file: settings_privacy.ui:100 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_acceptCookies) -#: rc.cpp:180 +#: rc.cpp:174 msgid "Only from sites you navigate to" msgstr "" #. i18n: file: settings_privacy.ui:108 #. i18n: ectx: property (text), widget (QPushButton, exceptionsButton) -#: rc.cpp:183 +#: rc.cpp:177 msgid "Exceptions..." msgstr "" #. i18n: file: settings_privacy.ui:115 #. i18n: ectx: property (text), widget (QLabel, label) -#: rc.cpp:186 +#: rc.cpp:180 msgid "Keep until:" msgstr "" #. i18n: file: settings_privacy.ui:126 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_keepCookiesUntil) -#: rc.cpp:189 +#: rc.cpp:183 msgid "They expire" msgstr "" #. i18n: file: settings_privacy.ui:131 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_keepCookiesUntil) -#: rc.cpp:192 +#: rc.cpp:186 msgid "I exit the application" msgstr "" #. i18n: file: settings_privacy.ui:136 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_keepCookiesUntil) -#: rc.cpp:195 +#: rc.cpp:189 msgid "At most 90 days" msgstr "" #. i18n: file: settings_privacy.ui:144 #. i18n: ectx: property (text), widget (QPushButton, cookiesButton) -#: rc.cpp:198 +#: rc.cpp:192 msgid "Cookies..." msgstr "" #. i18n: file: settings_proxy.ui:19 #. i18n: ectx: property (text), widget (QCheckBox, kcfg_isProxyEnabled) -#: rc.cpp:204 +#: rc.cpp:198 msgid "enable proxy" msgstr "" #. i18n: file: settings_proxy.ui:26 #. i18n: ectx: property (title), widget (QGroupBox, groupBox) -#: rc.cpp:207 +#: rc.cpp:201 msgid "Proxy Settings" msgstr "" #. i18n: file: settings_proxy.ui:32 #. i18n: ectx: property (text), widget (QLabel, label_9) -#: rc.cpp:210 +#: rc.cpp:204 msgid "Type:" msgstr "" #. i18n: file: settings_proxy.ui:43 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_proxyType) -#: rc.cpp:213 +#: rc.cpp:207 msgid "Socks5" msgstr "" #. i18n: file: settings_proxy.ui:48 #. i18n: ectx: property (text), item, widget (QComboBox, kcfg_proxyType) -#: rc.cpp:216 +#: rc.cpp:210 msgid "Http" msgstr "" #. i18n: file: settings_proxy.ui:56 #. i18n: ectx: property (text), widget (QLabel, label_10) -#: rc.cpp:219 +#: rc.cpp:213 msgid "Host:" msgstr "" #. i18n: file: settings_proxy.ui:69 #. i18n: ectx: property (text), widget (QLabel, label_11) -#: rc.cpp:222 +#: rc.cpp:216 msgid "Port:" msgstr "" #. i18n: file: settings_proxy.ui:102 #. i18n: ectx: property (text), widget (QLabel, label_12) -#: rc.cpp:225 +#: rc.cpp:219 msgid "User Name:" msgstr "" -#: rc.cpp:229 -msgctxt "NAME OF TRANSLATORS" -msgid "Andrea Diamantini" +#. i18n: file: settings_ui.ui:14 +#. i18n: ectx: property (windowTitle), widget (QWidget, ui) +#: rc.cpp:225 +msgid "Ui" msgstr "" -#: rc.cpp:230 -msgctxt "EMAIL OF TRANSLATORS" -msgid "adjam7@gmail.com" +#. i18n: file: settings_ui.ui:20 +#. i18n: ectx: property (text), widget (QCheckBox, kcfg_enableLocationbarProgressIndicator) +#: rc.cpp:228 +msgid "Enable location bar progress indication" +msgstr "" + +#. i18n: file: settings_ui.ui:34 +#. i18n: ectx: property (text), widget (QCheckBox, kcfg_closeWithLastTab) +#: rc.cpp:231 +msgid "Exit rekonq if last tab closed" +msgstr "" + +#. i18n: file: settings_ui.ui:41 +#. i18n: ectx: property (text), widget (QCheckBox, kcfg_alwaysShowTabBar) +#: rc.cpp:234 +msgid "Always show TabBar" msgstr "" diff --git a/po/rekonq_ru.po b/po/rekonq_ru.po new file mode 100644 index 00000000..4e9c5873 --- /dev/null +++ b/po/rekonq_ru.po @@ -0,0 +1,750 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the rekonq package. +# FIRST AUTHOR Domrachev Alexandr , 2009. +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: http://sourceforge.net/tracker/?\n" +"POT-Creation-Date: 2009-03-28 23:04+0300\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator:Domrachev Alexandr \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Language: ru_RU\n" + +#: cookiejar.cpp:472 cookiejar.cpp:651 +msgid "Website" +msgstr "" + +#: cookiejar.cpp:474 +msgid "Name" +msgstr "" + +#: cookiejar.cpp:476 +msgid "Path" +msgstr "" + +#: cookiejar.cpp:478 +msgid "Secure" +msgstr "" + +#: cookiejar.cpp:480 +msgid "Expires" +msgstr "" + +#: cookiejar.cpp:482 +msgid "Contents" +msgstr "" + +#: cookiejar.cpp:653 +msgid "Status" +msgstr "" + +#. i18n: file: cookiesexceptions.ui:77 +#. i18n: ectx: property (text), widget (QPushButton, allowButton) +#: cookiejar.cpp:678 rc.cpp:18 +msgid "Allow" +msgstr "" + +#. i18n: file: cookiesexceptions.ui:57 +#. i18n: ectx: property (text), widget (QPushButton, blockButton) +#: cookiejar.cpp:689 rc.cpp:12 +msgid "Block" +msgstr "" + +#. i18n: file: cookiesexceptions.ui:67 +#. i18n: ectx: property (text), widget (QPushButton, allowForSessionButton) +#: cookiejar.cpp:700 rc.cpp:15 +msgid "Allow For Session" +msgstr "" + +#: history.cpp:422 +msgid "Title" +msgstr "" + +#: history.cpp:423 +msgid "Address" +msgstr "" + +#: history.cpp:680 +msgid "Show All History" +msgstr "" + +#: history.cpp:684 +msgid "Clear History" +msgstr "Очистить журнал" + +#: history.cpp:765 +msgid "Open" +msgstr "Открыть" + +#: history.cpp:767 +msgid "Copy" +msgstr "Копировать" + +#: history.cpp:769 +msgid "Delete" +msgstr "Удалить" + +#: history.cpp:1152 +msgid "Earlier Today" +msgstr "" + +#: history.cpp:1157 +msgid " items" +msgstr "" + +#: main.cpp:29 +msgid "KDE Browser Webkit Based" +msgstr "" + +#: main.cpp:39 +msgid "rekonq" +msgstr "" + +#: main.cpp:43 +msgid "(C) 2008 Andrea Diamantini" +msgstr "" + +#: main.cpp:49 +msgid "Andrea Diamantini" +msgstr "" + +#: main.cpp:57 +msgid "Location to open" +msgstr "" + +#: mainview.cpp:77 +msgid "Recently Closed Tabs" +msgstr "Недавно закрытые вкладки" + +#: mainview.cpp:370 mainview.cpp:395 +msgid "(Untitled)" +msgstr "" + +#: mainview.cpp:491 +msgid "" +"You have modified this page and when closing it you would lose the " +"modification.\n" +"Do you really want to close this page?\n" +msgstr "" + +#: mainview.cpp:493 +msgid "Do you really want to close this page?" +msgstr "Вы действительно хотите закрыть эту страницу?" + +#: mainwindow.cpp:113 +msgid "B&ookmarks" +msgstr "&Закладки" + +#: mainwindow.cpp:190 +#, fuzzy +msgid "&Stop" +msgstr "&Стоп" + +#: mainwindow.cpp:196 +msgid "reload" +msgstr "" + +#: mainwindow.cpp:200 +msgid "Open Location" +msgstr "" + +#: mainwindow.cpp:204 +msgid "Private &Browsing..." +msgstr "" + +#: mainwindow.cpp:206 +msgid "private browsing" +msgstr "" + +#: mainwindow.cpp:209 +msgid "&Enlarge Font" +msgstr "У&величить шрифт" + +#: mainwindow.cpp:214 +msgid "&Normal Font" +msgstr "&Нормальный шрифт" + +#: mainwindow.cpp:219 +msgid "&Shrink Font" +msgstr "У&меньшить шрифт" + +#: mainwindow.cpp:224 +msgid "Page S&ource" +msgstr "" + +#: mainwindow.cpp:228 +msgid "Enable Web &Inspector" +msgstr "" + +#: mainwindow.cpp:234 +msgid "Back" +msgstr "" + +#: mainwindow.cpp:243 +msgid "Forward" +msgstr "" + +#: mainwindow.cpp:248 tabbar.cpp:101 +msgid "New &Tab" +msgstr "Новая &вкладка" + +#: mainwindow.cpp:253 tabbar.cpp:109 +msgid "&Close Tab" +msgstr "&Закрыть вкладку" + +#: mainwindow.cpp:258 +msgid "Show Next Tab" +msgstr "Открыть следующую вкладку" + +#: mainwindow.cpp:263 +msgid "Show Previous Tab" +msgstr "" + +#: mainwindow.cpp:293 +#, fuzzy +msgid "&History" +msgstr "Журнал" + +#: mainwindow.cpp:476 +msgid "Web Resources (*.html *.htm *.svg *.png *.gif *.svgz);;All files (*.*)" +msgstr "" + +#: mainwindow.cpp:478 +msgid "Open Web Resource" +msgstr "" + +#: mainwindow.cpp:510 +msgid "Print Document" +msgstr "" + +#: mainwindow.cpp:523 +msgid "Are you sure you want to turn on private browsing?" +msgstr "Вы действительно хотите включить режим конфиденциальности?" + +#: mainwindow.cpp:524 +msgid "" +"

When private browsing in turned on, webpages are not added to " +"the history, items are automatically removed from the Downloads window, new " +"cookies are not stored, current cookies can't be accessed, site icons wont " +"be stored, session wont be saved, and searches are not addded to the pop-up " +"menu in the Google search box. Until you close the window, you can still " +"click the Back and Forward buttons to return to the webpages you have opened." +msgstr "" + +#: mainwindow.cpp:590 mainwindow.cpp:601 +#, fuzzy +msgid " not found." +msgstr "не найдено." + +#: mainwindow.cpp:654 +msgid "Page Source of " +msgstr "" + +#: mainwindow.cpp:673 +msgid "" +"The web inspector will only work correctly for pages that were loaded after " +"enabling.\n" +"Do you want to reload all pages?" +msgstr "" + +#: mainwindow.cpp:675 +msgid "Web Inspector" +msgstr "" + +#: mainwindow.cpp:719 +msgid "Stop loading the current page" +msgstr "Остановить загрузку страницы" + +#: mainwindow.cpp:720 +msgid "Stop" +msgstr "" + +#: mainwindow.cpp:727 +msgid "Reload the current page" +msgstr "Обновить страницу" + +#: mainwindow.cpp:728 +msgid "Reload" +msgstr "Обновить" + +#: networkaccessmanager.cpp:116 +msgid "Enter username and password for " +msgstr "Введите имя пользователя и пароль для " + +#: networkaccessmanager.cpp:117 +msgid " at " +msgstr "" + +#: networkaccessmanager.cpp:141 +msgid "Connect to proxy " +msgstr "" + +#: networkaccessmanager.cpp:141 +msgid " using:" +msgstr "" + +#: networkaccessmanager.cpp:161 +msgid "" +"SSL Errors:\n" +"\n" +msgstr "" + +#: searchbar.cpp:55 +msgid "Search.." +msgstr "Поиск..." + +#. i18n: file: settings_general.ui:14 +#. i18n: ectx: property (windowTitle), widget (QWidget, general) +#: settings.cpp:80 rc.cpp:111 +msgid "General" +msgstr "" + +#. i18n: file: settings_fonts.ui:20 +#. i18n: ectx: property (title), widget (QGroupBox, groupBox) +#: settings.cpp:86 rc.cpp:96 +msgid "Fonts" +msgstr "Шрифты" + +#. i18n: file: settings_privacy.ui:14 +#. i18n: ectx: property (windowTitle), widget (QWidget, privacy) +#: settings.cpp:92 rc.cpp:135 +msgid "Privacy" +msgstr "" + +#. i18n: file: settings_proxy.ui:13 +#. i18n: ectx: property (windowTitle), widget (QWidget, proxy) +#: settings.cpp:98 rc.cpp:195 +msgid "Proxy" +msgstr "" + +#: settings.cpp:104 +msgid "Interface" +msgstr "Интерфейс" + +#: settings.cpp:117 +msgid "rekonfig.." +msgstr "" + +#: tabbar.cpp:107 +msgid "Clone Tab" +msgstr "" + +#: tabbar.cpp:110 +msgid "Close &Other Tabs" +msgstr "" + +#: tabbar.cpp:112 +msgid "Reload Tab" +msgstr "Обновить вкладку" + +#: tabbar.cpp:118 +msgid "Reload All Tabs" +msgstr "Обновить все вкладки" + +#: webview.cpp:163 +msgid "Error loading page: " +msgstr "" + +#: webview.cpp:221 +msgid "Open in New Tab" +msgstr "Открыть в новой вкладке" + +#. i18n: file: cookiesexceptions.ui:13 +#. i18n: ectx: property (windowTitle), widget (QDialog, CookiesExceptionsDialog) +#: rc.cpp:3 +msgid "Cookie Exceptions" +msgstr "" + +#. i18n: file: cookiesexceptions.ui:19 +#. i18n: ectx: property (title), widget (QGroupBox, newExceptionGroupBox) +#: rc.cpp:6 +msgid "New Exception" +msgstr "" + +#. i18n: file: cookiesexceptions.ui:27 +#. i18n: ectx: property (text), widget (QLabel, label) +#: rc.cpp:9 +msgid "Domain:" +msgstr "" + +#. i18n: file: cookiesexceptions.ui:89 +#. i18n: ectx: property (title), widget (QGroupBox, ExceptionsGroupBox) +#: rc.cpp:21 +msgid "Exceptions" +msgstr "" + +#. i18n: file: cookiesexceptions.ui:114 +#. i18n: ectx: property (text), widget (QPushButton, removeButton) +#. i18n: file: cookies.ui:41 +#. i18n: ectx: property (text), widget (QPushButton, removeButton) +#. i18n: file: history.ui:40 +#. i18n: ectx: property (text), widget (QPushButton, removeButton) +#: rc.cpp:24 rc.cpp:33 rc.cpp:42 +msgid "&Remove" +msgstr "" + +#. i18n: file: cookiesexceptions.ui:121 +#. i18n: ectx: property (text), widget (QPushButton, removeAllButton) +#. i18n: file: history.ui:47 +#. i18n: ectx: property (text), widget (QPushButton, removeAllButton) +#: rc.cpp:27 rc.cpp:45 +msgid "Remove &All" +msgstr "" + +#. i18n: file: cookies.ui:14 +#. i18n: ectx: property (windowTitle), widget (QDialog, CookiesDialog) +#. i18n: file: settings_privacy.ui:73 +#. i18n: ectx: property (title), widget (QGroupBox, cookiesGroupBox) +#: rc.cpp:30 rc.cpp:162 +msgid "Cookies" +msgstr "" + +#. i18n: file: cookies.ui:48 +#. i18n: ectx: property (text), widget (QPushButton, removeAllButton) +#: rc.cpp:36 +msgid "Remove &All Cookies" +msgstr "" + +#. i18n: file: history.ui:13 +#. i18n: ectx: property (windowTitle), widget (QDialog, HistoryDialog) +#. i18n: file: settings_privacy.ui:20 +#. i18n: ectx: property (title), widget (QGroupBox, groupBox_2) +#: rc.cpp:39 rc.cpp:138 +msgid "History" +msgstr "Журнал" + +#. i18n: file: passworddialog.ui:13 +#. i18n: ectx: property (windowTitle), widget (QDialog, PasswordDialog) +#: rc.cpp:48 +msgid "Authentication Required" +msgstr "" + +#. i18n: file: passworddialog.ui:21 +#. i18n: ectx: property (text), widget (QLabel, iconLabel) +#: rc.cpp:51 +msgid "DUMMY ICON" +msgstr "" + +#. i18n: file: passworddialog.ui:34 +#. i18n: ectx: property (text), widget (QLabel, introLabel) +#: rc.cpp:54 +msgid "INTRO TEXT DUMMY" +msgstr "" + +#. i18n: file: passworddialog.ui:43 +#. i18n: ectx: property (text), widget (QLabel, label) +#. i18n: file: proxy.ui:36 +#. i18n: ectx: property (text), widget (QLabel, usernameLabel) +#: rc.cpp:57 rc.cpp:72 +msgid "Username:" +msgstr "" + +#. i18n: file: passworddialog.ui:53 +#. i18n: ectx: property (text), widget (QLabel, lblPassword) +#. i18n: file: proxy.ui:46 +#. i18n: ectx: property (text), widget (QLabel, passwordLabel) +#. i18n: file: settings_proxy.ui:115 +#. i18n: ectx: property (text), widget (QLabel, label_13) +#: rc.cpp:60 rc.cpp:75 rc.cpp:222 +msgid "Password:" +msgstr "" + +#. i18n: file: proxy.ui:13 +#. i18n: ectx: property (windowTitle), widget (QDialog, ProxyDialog) +#: rc.cpp:63 +msgid "Proxy Authentication" +msgstr "" + +#. i18n: file: proxy.ui:19 +#. i18n: ectx: property (text), widget (QLabel, iconLabel) +#: rc.cpp:66 +msgid "ICON" +msgstr "" + +#. i18n: file: proxy.ui:26 +#. i18n: ectx: property (text), widget (QLabel, introLabel) +#: rc.cpp:69 +msgid "Connect to proxy" +msgstr "" + +#. i18n: file: rekonqui.rc:8 +#. i18n: ectx: Menu (file) +#: rc.cpp:78 +msgid "&File" +msgstr "&Файл" + +#. i18n: file: rekonqui.rc:27 +#. i18n: ectx: Menu (edit) +#: rc.cpp:81 +msgid "&Edit" +msgstr "&Правка" + +#. i18n: file: rekonqui.rc:41 +#. i18n: ectx: Menu (view) +#: rc.cpp:84 +msgid "&View" +msgstr "&Вид" + +#. i18n: file: rekonqui.rc:71 +#. i18n: ectx: ToolBar (mainToolBar) +#: rc.cpp:87 +msgid "Main Toolbar" +msgstr "Панель инструментов" + +#. i18n: file: rekonqui.rc:80 +#. i18n: ectx: ToolBar (bookmarksToolBar) +#: rc.cpp:90 +msgid "Bookmark Toolbar" +msgstr "Панель закладок" + +#. i18n: file: settings_fonts.ui:14 +#. i18n: ectx: property (windowTitle), widget (QWidget, fonts) +#: rc.cpp:93 +msgid "Appearance" +msgstr "" + +#. i18n: file: settings_fonts.ui:28 +#. i18n: ectx: property (text), widget (QLabel, label) +#: rc.cpp:99 +msgid "Standard Font" +msgstr "Стандартный шрифт" + +#. i18n: file: settings_fonts.ui:35 +#. i18n: ectx: property (text), widget (QLabel, label_2) +#: rc.cpp:102 +msgid "Fixed Font" +msgstr "Моноширинный шрифт" + +#. i18n: file: settings_fonts.ui:53 +#. i18n: ectx: property (title), widget (QGroupBox, groupBox_2) +#: rc.cpp:105 +msgid "Dimension" +msgstr "" + +#. i18n: file: settings_fonts.ui:61 +#. i18n: ectx: property (text), widget (QLabel, label_3) +#: rc.cpp:108 +msgid "Font Size" +msgstr "" + +#. i18n: file: settings_general.ui:20 +#. i18n: ectx: property (title), widget (QGroupBox, groupBox) +#: rc.cpp:114 +msgid "Places" +msgstr "" + +#. i18n: file: settings_general.ui:26 +#. i18n: ectx: property (text), widget (QLabel, label_3) +#: rc.cpp:117 +msgid "Home:" +msgstr "" + +#. i18n: file: settings_general.ui:48 +#. i18n: ectx: property (text), widget (QPushButton, setHomeToCurrentPageButton) +#: rc.cpp:120 +msgid "Set to current page" +msgstr "Использовать текущую страницу" + +#. i18n: file: settings_general.ui:73 +#. i18n: ectx: property (text), widget (QLabel, label_7) +#: rc.cpp:123 +msgid "Save downloads to:" +msgstr "Загружать файлы в:" + +#. i18n: file: settings_general.ui:86 +#. i18n: ectx: property (title), widget (QGroupBox, groupBox_2) +#: rc.cpp:126 +msgid "Web Content" +msgstr "" + +#. i18n: file: settings_general.ui:92 +#. i18n: ectx: property (text), widget (QCheckBox, kcfg_enablePlugins) +#: rc.cpp:129 +msgid "Enable Plugins" +msgstr "Включить плагины" + +#. i18n: file: settings_general.ui:102 +#. i18n: ectx: property (text), widget (QCheckBox, kcfg_enableJavascript) +#: rc.cpp:132 +msgid "Enable Javascript" +msgstr "Включить Javascript" + +#. i18n: file: settings_privacy.ui:26 +#. i18n: ectx: property (text), widget (QLabel, label_4) +#: rc.cpp:141 +msgid "Remove history items:" +msgstr "" + +#. i18n: file: settings_privacy.ui:37 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) +#: rc.cpp:144 +msgid "After one day" +msgstr "" + +#. i18n: file: settings_privacy.ui:42 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) +#: rc.cpp:147 +msgid "After one week" +msgstr "" + +#. i18n: file: settings_privacy.ui:47 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) +#: rc.cpp:150 +msgid "After two weeks" +msgstr "" + +#. i18n: file: settings_privacy.ui:52 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) +#: rc.cpp:153 +msgid "After one month" +msgstr "" + +#. i18n: file: settings_privacy.ui:57 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) +#: rc.cpp:156 +msgid "After one year" +msgstr "" + +#. i18n: file: settings_privacy.ui:62 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_expireHistory) +#: rc.cpp:159 +msgid "Manually" +msgstr "" + +#. i18n: file: settings_privacy.ui:79 +#. i18n: ectx: property (text), widget (QLabel, label_2) +#: rc.cpp:165 +msgid "Accept Cookies:" +msgstr "" + +#. i18n: file: settings_privacy.ui:90 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_acceptCookies) +#: rc.cpp:168 +msgid "Always" +msgstr "" + +#. i18n: file: settings_privacy.ui:95 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_acceptCookies) +#: rc.cpp:171 +msgid "Never" +msgstr "" + +#. i18n: file: settings_privacy.ui:100 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_acceptCookies) +#: rc.cpp:174 +msgid "Only from sites you navigate to" +msgstr "" + +#. i18n: file: settings_privacy.ui:108 +#. i18n: ectx: property (text), widget (QPushButton, exceptionsButton) +#: rc.cpp:177 +msgid "Exceptions..." +msgstr "" + +#. i18n: file: settings_privacy.ui:115 +#. i18n: ectx: property (text), widget (QLabel, label) +#: rc.cpp:180 +msgid "Keep until:" +msgstr "" + +#. i18n: file: settings_privacy.ui:126 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_keepCookiesUntil) +#: rc.cpp:183 +msgid "They expire" +msgstr "" + +#. i18n: file: settings_privacy.ui:131 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_keepCookiesUntil) +#: rc.cpp:186 +msgid "I exit the application" +msgstr "" + +#. i18n: file: settings_privacy.ui:136 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_keepCookiesUntil) +#: rc.cpp:189 +msgid "At most 90 days" +msgstr "" + +#. i18n: file: settings_privacy.ui:144 +#. i18n: ectx: property (text), widget (QPushButton, cookiesButton) +#: rc.cpp:192 +msgid "Cookies..." +msgstr "" + +#. i18n: file: settings_proxy.ui:19 +#. i18n: ectx: property (text), widget (QCheckBox, kcfg_isProxyEnabled) +#: rc.cpp:198 +msgid "enable proxy" +msgstr "" + +#. i18n: file: settings_proxy.ui:26 +#. i18n: ectx: property (title), widget (QGroupBox, groupBox) +#: rc.cpp:201 +msgid "Proxy Settings" +msgstr "Нстройки proxy" + +#. i18n: file: settings_proxy.ui:32 +#. i18n: ectx: property (text), widget (QLabel, label_9) +#: rc.cpp:204 +msgid "Type:" +msgstr "" + +#. i18n: file: settings_proxy.ui:43 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_proxyType) +#: rc.cpp:207 +msgid "Socks5" +msgstr "" + +#. i18n: file: settings_proxy.ui:48 +#. i18n: ectx: property (text), item, widget (QComboBox, kcfg_proxyType) +#: rc.cpp:210 +msgid "Http" +msgstr "" + +#. i18n: file: settings_proxy.ui:56 +#. i18n: ectx: property (text), widget (QLabel, label_10) +#: rc.cpp:213 +msgid "Host:" +msgstr "" + +#. i18n: file: settings_proxy.ui:69 +#. i18n: ectx: property (text), widget (QLabel, label_11) +#: rc.cpp:216 +msgid "Port:" +msgstr "" + +#. i18n: file: settings_proxy.ui:102 +#. i18n: ectx: property (text), widget (QLabel, label_12) +#: rc.cpp:219 +msgid "User Name:" +msgstr "" + +#. i18n: file: settings_ui.ui:14 +#. i18n: ectx: property (windowTitle), widget (QWidget, ui) +#: rc.cpp:225 +msgid "Ui" +msgstr "" + +#. i18n: file: settings_ui.ui:20 +#. i18n: ectx: property (text), widget (QCheckBox, kcfg_enableLocationbarProgressIndicator) +#: rc.cpp:228 +msgid "Enable location bar progress indication" +msgstr "Показывать индикатор загрузки страницы в адресной строке" + +#. i18n: file: settings_ui.ui:34 +#. i18n: ectx: property (text), widget (QCheckBox, kcfg_closeWithLastTab) +#: rc.cpp:231 +msgid "Exit rekonq if last tab closed" +msgstr "Выходить из rekonq при закрытии последней вкладки" + +#. i18n: file: settings_ui.ui:41 +#. i18n: ectx: property (text), widget (QCheckBox, kcfg_alwaysShowTabBar) +#: rc.cpp:234 +msgid "Always show TabBar" +msgstr "Всегда показывать панель вкладок" diff --git a/scripts/Messages.sh b/scripts/Messages.sh index 09ce1214..e9b5444d 100755 --- a/scripts/Messages.sh +++ b/scripts/Messages.sh @@ -1,5 +1,41 @@ -# FIXME #! /usr/bin/env bash -$EXTRACTRC `find . -name \*.ui -o -name \*.rc -o -name \*.kcfg` >> rc.cpp -$XGETTEXT `find . -name \*.cpp` -o $podir/rekonq.pot + +BASEDIR="../src/" +PROJECT="rekonq" +BUGADDR="http://sourceforge.net/tracker/?group_id=252277&atid=1126949" +WDIR="../po/" + +cd ${BASEDIR} +echo "Preparing rc files" +find . -name '*.rc' -o -name '*.ui' -o -name '*.kcfg' | sort > ${WDIR}/rcfiles.list +xargs --arg-file=${WDIR}/rcfiles.list extractrc > ${WDIR}/rc.cpp +cd ${WDIR} +echo "Done preparing rc files" + +echo "Extracting messages" +cd ${BASEDIR} +find . -name '*.cpp' -o -name '*.h' -o -name '*.c' | sort > ${WDIR}/infiles.list +echo "rc.cpp" >> ${WDIR}/infiles.list +cd ${WDIR} +xgettext --from-code=UTF-8 -C -kde -ci18n -ki18n:1 -ki18nc:1c,2 -ki18np:1,2 -ki18ncp:1c,2,3 -ktr2i18n:1 \ + -kI18N_NOOP:1 -kI18N_NOOP2:1c,2 -kaliasLocale -kki18n:1 -kki18nc:1c,2 -kki18np:1,2 -kki18ncp:1c,2,3 \ + --msgid-bugs-address="${BUGADDR}" \ + --files-from=infiles.list -D ${BASEDIR} -D ${WDIR} -o ${PROJECT}.pot || { echo "error while calling xgettext. aborting."; exit 1; } +echo "Done extracting messages" + +echo "Merging translations" +catalogs=`find . -name '*.po'` +for cat in $catalogs; do + echo $cat + msgmerge -o $cat.new $cat ${PROJECT}.pot + mv $cat.new $cat +done +echo "Done merging translations" + +echo "Cleaning up" +cd ${WDIR} +rm rcfiles.list +rm infiles.list +rm rc.cpp +echo "Done" -- cgit v1.2.1