------------------------------------------------------------
revno: 1539
committer: Mark Sapiro <m...@msapiro.net>
branch nick: 2.1
timestamp: Tue 2015-02-10 15:34:07 -0800
message:
  Updates to Russian i18n by Danil Smirnov.
  Removed some 'prior translator' files from Russian templates directory.
removed:
  templates/ru/Makefile
  templates/ru/s2s.py
  templates/ru/status
added:
  templates/ru/adminaddrchgack.txt
modified:
  NEWS
  messages/ru/LC_MESSAGES/mailman.po
  templates/ru/admindbdetails.html


--
lp:mailman/2.1
https://code.launchpad.net/~mailman-coders/mailman/2.1

Your team Mailman Checkins is subscribed to branch lp:mailman/2.1.
To unsubscribe from this branch go to 
https://code.launchpad.net/~mailman-coders/mailman/2.1/+edit-subscription
=== modified file 'NEWS'
--- NEWS	2015-02-07 20:44:08 +0000
+++ NEWS	2015-02-10 23:34:07 +0000
@@ -60,7 +60,7 @@
       archive to emphasize that even if you got to the message from a
       subject, date or author index, previous and next are still by thread.
 
-2.1.19rc3 (07-Feb-2015)
+2.1.19 (xx-xxx-2015)
 
   New Features
 
@@ -143,7 +143,8 @@
       the keys) of dictionary attributes and the elements of list and tuple
       attributes.
 
-    - The Russian message catalog has been updated by Danil Smirnov.
+    - The Russian message catalog and templates have been further updated by
+      Danil Smirnov.
 
     - The Romanian message catalog has been updated.  (LP: #1415489)
 

=== modified file 'messages/ru/LC_MESSAGES/mailman.po'
--- messages/ru/LC_MESSAGES/mailman.po	2015-02-05 21:15:37 +0000
+++ messages/ru/LC_MESSAGES/mailman.po	2015-02-10 23:34:07 +0000
@@ -9,15 +9,15 @@
 msgstr ""
 "Project-Id-Version: mailman v2.1\n"
 "POT-Creation-Date: Tue Feb  3 20:49:32 2015\n"
-"PO-Revision-Date: 2015-02-04 14:16+0300\n"
+"PO-Revision-Date: 2015-02-10 14:56+0300\n"
 "Last-Translator: Danil Smirnov <da...@smirnov.la>\n"
 "Language-Team: Russian <da...@smirnov.la>\n"
 "Language: ru\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 "X-Generator: Virtaal 0.7.1\n"
 
 #: Mailman/Archiver/HyperArch.py:123
@@ -42,14 +42,12 @@
 msgstr " на "
 
 #: Mailman/Archiver/HyperArch.py:512
-#, fuzzy
 msgid "Previous message (by thread):"
-msgstr "Предыдущее сообщение:"
+msgstr "Предыдущее сообщение (в дискуссии):"
 
 #: Mailman/Archiver/HyperArch.py:534
-#, fuzzy
 msgid "Next message (by thread):"
-msgstr "Следующее сообщение:"
+msgstr "Следующее сообщение (в дискуссии):"
 
 #: Mailman/Archiver/HyperArch.py:707 Mailman/Archiver/HyperArch.py:743
 msgid "thread"
@@ -1397,7 +1395,6 @@
 msgstr "Строка подтверждения отсутствует."
 
 #: Mailman/Cgi/confirm.py:98
-#, fuzzy
 msgid ""
 "<b>Invalid confirmation string:</b>\n"
 "    %(safecookie)s.\n"
@@ -1414,9 +1411,12 @@
 "\n"
 "    <p>Имейте, пожалуйста, в виду, что строка подтверждения может быть "
 "использована\n"
-"    только в течении %(days)s дней после запроса на подписку.  Если ваш "
-"запрос был\n"
-"    отправлен раньше, пожалуйста, попробуйте повторно запросить подписку.\n"
+"    только в течении %(days)s дней после запроса на подписку. Она также "
+"становится\n"
+"    недействительной после обработки тем или иным образом.  Если Ваша "
+"строка\n"
+"    подтверждения устарела, пожалуйста, попробуйте повторно запросить "
+"подписку.\n"
 "    В противном случае попробуйте <a href=\"%(confirmurl)s\">ввести</a> "
 "строку подтверждения\n"
 "    еще раз."
@@ -2410,27 +2410,26 @@
 msgstr "Такого пользователя не существует: %(safeuser)s."
 
 #: Mailman/Cgi/options.py:180
-#, fuzzy
 msgid "If you are a list member, a confirmation email has been sent."
-msgstr "Сообщение с кодом подтверждения отправлено."
+msgstr ""
+"Если Вы подписчик списка рассылки, Вам было отправлено сообщение с кодом "
+"подтверждения."
 
 #: Mailman/Cgi/options.py:181
-#, fuzzy
 msgid ""
 "If you are a list member, your unsubscription request has been\n"
 "             forwarded to the list administrator for approval."
 msgstr ""
-"Ваш запрос на удаление подписки был переправлен модератору списка рассылки "
-"для обработки."
+"Если Вы подписчик списка рассылки, Ваш запрос на удаление подписки\n"
+"был отправлен модератору для обработки."
 
 #: Mailman/Cgi/options.py:220
-#, fuzzy
 msgid ""
 "If you are a list member,\n"
 "            your password has been emailed to you."
 msgstr ""
 "Если Вы подписчик списка рассылки,\n"
-"                          Вам было отправлено сообщение с Вашим паролем."
+"            Вам было отправлено сообщение с Вашим паролем."
 
 #: Mailman/Cgi/options.py:263
 msgid "Authentication failed."
@@ -3112,9 +3111,10 @@
 "        supplied by a mailback confirmation notice.\n"
 msgstr ""
 "\n"
-"    confirm <код-подтверждения>\n"
-"        Подтвердить действие. Код подтверждения необходим и должен\n"
-"        быть отправлен вам со специальным извещением.\n"
+"    confirm <строка-подтверждения>\n"
+"        Подтвердить действие. Строка подтверждения является обязательным "
+"параметром\n"
+"        и должна была быть отправлена Вам специальным сообщением.\n"
 
 #: Mailman/Commands/cmd_confirm.py:41 Mailman/Commands/cmd_lists.py:40
 #: Mailman/Commands/cmd_set.py:133 Mailman/Commands/cmd_subscribe.py:69
@@ -3123,17 +3123,17 @@
 msgstr "Запуск:"
 
 #: Mailman/Commands/cmd_confirm.py:50
-#, fuzzy
 msgid ""
 "Invalid confirmation string.  Note that confirmation strings expire\n"
 "approximately %(days)s days after the initial request.  They also expire if\n"
 "the request has already been handled in some way.  If your confirmation has\n"
 "expired, please try to re-submit your original request or message."
 msgstr ""
-"Некорректный код подтверждения. Срок действия кода подтверждения\n"
+"Некорректная строка подтверждения. Срок действия строки подтверждения\n"
 "истекает примерно через %(days)s дн. после отправки запроса на\n"
-"подписку. Если срок действия вашего кода истек, попробуйте отправить\n"
-"запрос заново."
+"подписку. Строка подтверждения также становится недействительной, если\n"
+"она уже была обработана тем или иным образом. Если срок действия\n"
+"Вашей строки подтверждения истек, попробуйте отправить запрос заново."
 
 #: Mailman/Commands/cmd_confirm.py:56
 msgid "Your request has been forwarded to the list moderator for approval."
@@ -6604,9 +6604,10 @@
 "List of addresses (or regexps) whose subscriptions do not\n"
 "             require approval."
 msgstr ""
+"Список адресов (или регулярных выражений), подписка которых\n"
+"не требует одобрения."
 
 #: Mailman/Gui/Privacy.py:120
-#, fuzzy
 msgid ""
 "When subscription requires approval, addresses in this list\n"
 "             are allowed to subscribe without administrator approval. Add\n"
@@ -6614,17 +6615,18 @@
 "character\n"
 "             to designate a (case insensitive) regular expression match."
 msgstr ""
-"Перечисленным здесь адресам подписка на данный список рассылки\n"
-"запрещена, от модератора предпринимать какие-либо действия не\n"
-"потребуется. Адреса должны начинаться с новой строки (по одному\n"
-"адресу в строке), если адрес будет начинаться с ^, это будет\n"
-"означать начало регулярного выражения."
+"Если подписка требует одобрения, то адреса из этого списка\n"
+"будут подписаны без одобрения модератора. Указываете по одному\n"
+"адресу в каждой строке. Если адрес начинается с символа \"^\", то он будет\n"
+"проинтерпретирован как регистронезависимое регулярное выражение."
 
 #: Mailman/Gui/Privacy.py:125
 msgid ""
 "You may also use the @listname notation to designate the\n"
 "             members of another list in this installation."
 msgstr ""
+"Вы можете также использовать формат @listname\n"
+"чтобы задать подписчиков другого списка рассылки этого сервера."
 
 #: Mailman/Gui/Privacy.py:129
 msgid ""
@@ -7027,6 +7029,11 @@
 "             separate text/plain MIME part preceding the original message\n"
 "             part in the wrapped message."
 msgstr ""
+"Если для параметра dmarc_moderation_action выбрано значение \"Вложить "
+"сообщение\",\n"
+"и здесь задан какой-либо текст, то он будет добавлен в виде отдельной MIME-"
+"секции\n"
+"формата text/plain перед началом оригинального сообщения."
 
 #: Mailman/Gui/Privacy.py:314
 msgid ""
@@ -7041,6 +7048,13 @@
 "if\n"
 "             none of the other parts are applicable."
 msgstr ""
+"Оригинальное сообщение будет вложено в сообщение типа multipart/mixed,\n"
+"состоящее из четырех секций: секции text/plain, содержащей msg_header,\n"
+"секции text/plain, содержащей dmarc_wrapped_message_text, секции\n"
+"message/rfc822, содержащей исходное сообщение и секции text/plain,\n"
+"содержащей msg_footer, либо же это будет только секция message/rfc822,\n"
+"содержащая исходное сообщение, если ни один из перечисленных параметров\n"
+"не задан."
 
 #: Mailman/Gui/Privacy.py:323
 msgid ""
@@ -7048,6 +7062,9 @@
 "               considered equivalent when checking if a post is from a list\n"
 "               member."
 msgstr ""
+"\"Двумерный\" список доменов email-адресов, которые будут считаться\n"
+"эквивалентными при проверке того, является ли отправитель сообщения\n"
+"подписчиком списка рассылки."
 
 #: Mailman/Gui/Privacy.py:327
 msgid ""
@@ -7077,6 +7094,29 @@
 "               will apply to the post, but other options such as 'ack' or\n"
 "               'not&nbsp;metoo' will not."
 msgstr ""
+"Если два адреса отправителя с одинаковой частью до \"@\" и разными доменами\n"
+"должны считаться эквивалентными при проверке того, является ли отправитель\n"
+"сообщения подписчиком списка рассылки, то это можно задать здесь. Формат\n"
+"списка представляет собой группы доменов, разделенные точкой с запятой,\n"
+"домены внутри которых перечислены через запятую. Пробелы игнорируются.\n"
+"<p>Например:<pre>\n"
+"example.com,mail.example.com;mac.com,me.com,icloud.com\n"
+"</pre>\n"
+"<p>В этом примере, если u...@example.com является подписчиком, то сообщения\n"
+"с адреса u...@mail.example.com будут рассматриваться, как если бы они были\n"
+"с адреса u...@example.com при проверке того, является ли адрес подписчиком\n"
+"или в случае модерации; а также если u...@me.com является подписчиком "
+"списка\n"
+"рассылки, то сообщения с адресов u...@mac.com и u...@icloud.com будут\n"
+"рассматриваться как сообщения с адреса u...@me.com.\n"
+"<p>Учтите, что адрес отправителя сначала проверяется на то,\n"
+"является ли он подписчиком списка рассылки, и только в случае "
+"отрицательного\n"
+"результата производятся проверки эквивалентных доменов.\n"
+"<p>Также учтите, что настройка эквивалентных доменов повлияет на модерацию\n"
+"сообщений с эквивалентных доменов, но не на другие опции подписки - такие "
+"как\n"
+"\"Отправлять подтверждения\" или \"Не отправлять копии своих сообщений\"."
 
 #: Mailman/Gui/Privacy.py:349
 msgid "Non-member filters"
@@ -8338,7 +8378,6 @@
 msgstr "Уведомление о фильтрации содержимого сообщения"
 
 #: Mailman/Handlers/Moderate.py:170
-#, fuzzy
 msgid ""
 "Your message has been rejected, probably because you are not subscribed to "
 "the\n"
@@ -8348,10 +8387,11 @@
 "the\n"
 "mailing list owner at %(listowner)s."
 msgstr ""
-"Вам не резрешено отправлять сообщения в этот список рассылки, и ваше "
-"сообщение\n"
-"было автоматически отклонено. Если вы считаете это ошибкой, обратитесь к\n"
-"администратору списка рассылки по адресу %(listowner)s."
+"Ваше сообщение было отклонено, вероятно потому что Вы не подписаны на этот "
+"список\n"
+"рассылки и его правила запрещают отправку подобных сообщений. Если Вы "
+"считаете это\n"
+"ошибкой, обратитесь к администратору списка рассылки по адресу %(listowner)s."
 
 #: Mailman/Handlers/Moderate.py:187
 msgid "Auto-discard notification"
@@ -8678,9 +8718,8 @@
 msgstr "уведомление об удалении подписки на список %(realname)s"
 
 #: Mailman/MailList.py:1226
-#, fuzzy
 msgid "%(realname)s address change notification"
-msgstr "уведомление об удалении подписки на список %(realname)s"
+msgstr "уведомление об изменении адреса подписчика %(realname)s"
 
 #: Mailman/MailList.py:1291
 msgid "subscriptions to %(name)s require administrator approval"
@@ -11077,7 +11116,6 @@
 msgstr "Возвратить сгенерированный вывод."
 
 #: bin/newlist:20
-#, fuzzy
 msgid ""
 "Create a new, unpopulated mailing list.\n"
 "\n"
@@ -11176,8 +11214,8 @@
 msgstr ""
 "Создать новый пустой список рассылки.\n"
 "\n"
-"Запуск:\n"
-"    %(PROGRAM)s [параметры] [имя_списка [адрес_администратора [пароль]]]\n"
+"Запуск: %(PROGRAM)s [параметры] [имя_списка_рассылки [адрес_администратора "
+"[пароль]]]\n"
 "\n"
 "Параметры:\n"
 "\n"
@@ -11196,9 +11234,19 @@
 "\n"
 "    -q/--quiet\n"
 "        Обычно администратор списка рассылки уведомляется о его создании\n"
-"        по электронной почте (после подтверждения). Этот параметр отменяет "
+"        по электронной почте (после запроса адреса). Этот параметр отменяет "
 "запрос\n"
-"        подтверждения и отправку уведомления.\n"
+"        адреса и отправку уведомления.\n"
+"\n"
+"    -a/--automate\n"
+"        Этот параметр отменяет запрос адреса для уведомления администратора\n"
+"        о создании списка рассылки, но сохраняет отправку уведомления. Это\n"
+"        позволяет сделать создание списка полностью автоматическим, но с\n"
+"        отправкой уведомления -- при условии того, что необходимые "
+"параметры\n"
+"        \"имя_списка_рассылки\", \"адрес_администратора\" и \"пароль\" "
+"указаны\n"
+"        в команде вызова сценария.\n"
 "\n"
 "    -h/--help\n"
 "        Напечатать эту подсказку и завершить работу.\n"
@@ -11249,8 +11297,8 @@
 "а также\n"
 "\"emailhost\", если последний не найден в таблице виртуальных хостов. Учтите "
 "что\n"
-"\"--urlhost\" и \"--emailhost\" имеют преимущество перед этой формой "
-"записи.\n"
+"\"--urlhost\" и \"--emailhost\" имеют преимущество перед этой формой записи."
+"\n"
 "\n"
 "Если вы задаете имя списка рассылки без указания имени домена, то имя "
 "почтового\n"

=== removed file 'templates/ru/Makefile'
--- templates/ru/Makefile	2003-01-02 05:25:50 +0000
+++ templates/ru/Makefile	1970-01-01 00:00:00 +0000
@@ -1,50 +0,0 @@
-# FILES=admindbpreamble.html adminsubscribeack.txt adminunsubscribeack.txt admlogin.html approve.txt article.html bounce.txt checkdbs.txt convert.txt cronpass.txt headfoot.html help.txt listinfo.html masthead.txt newlist.txt nopass.txt options.html postack.txt postauth.txt postheld.txt private.html reenable.txt refuse.txt roster.html subauth.txt subscribeack.txt subscribe.html unsub.txt userpass.txt verify.txt
-FILES=$(shell cat status | sed -e 's/ .*$$//')
-TARGET=/var/home/mailman/templates/ru/
-WEB=/var/www/mailman-ru
-WFILES_DIR=/var/www/mailman-ru/files
-
-TFILES=$(addprefix $(TARGET),$(FILES))
-WFILES=$(addprefix $(WEB),$(FILES))
-
-diff_args=-ub
-
-all:
-	@echo there is nothing to do
-
-diff-%: %
-	@-(cd ../en/ ; cvs -z6 diff $(diff_args) -r$(shell fgrep $< status | awk '{ print $$2; }') $<)
-
-check:
-	@(cd ../en/ ; cvs -z6 -q status ) | ./s2s.py
-
-todo:
-	@cat status | while read name version status rest; do [ "$$status" == "done" ] || echo $$name; done | sort
-
-done:
-	@cat status | while read name version status rest; do [ "$$status" == "done" ] && echo $$name; done | sort
-
-started:
-	@cat status | while read name version status rest; do [ "$$status" == "started" ] && echo $$name; done | sort
-
-status-%: %
-	@ cat status | grep "^$< "
-
-$(WEB)/%: %
-	cp $< $@
-
-#update: $(WFILES)
-update: update-files update-status
-
-update-files:
-	install -d $(WFILES_DIR)
-	@for file in $(FILES); do if [ ! -e $(WFILES_DIR)/$$file -o $$file -nt $(WFILES_DIR)/$$file ]; then cp -vf $$file $(WFILES_DIR)/$$file; fi; done
-
-update-status: $(WEB)/status.html
-
-$(WEB)/status.html: status s2h.py
-	./s2h.py > $@
-
-install:
-	sudo -u mailman install -d $(TARGET)
-	sudo -u mailman install $(FILES) $(TARGET)

=== added file 'templates/ru/adminaddrchgack.txt'
--- templates/ru/adminaddrchgack.txt	1970-01-01 00:00:00 +0000
+++ templates/ru/adminaddrchgack.txt	2015-02-10 23:34:07 +0000
@@ -0,0 +1,5 @@
+Адрес подписки на %(listname)s
+для %(name)s был успешно изменен
+с %(oldaddr)s на %(newaddr)s.
+
+

=== modified file 'templates/ru/admindbdetails.html'
--- templates/ru/admindbdetails.html	2015-02-05 21:15:37 +0000
+++ templates/ru/admindbdetails.html	2015-02-10 23:34:07 +0000
@@ -13,7 +13,8 @@
     действие, если вы хотите указанно сообжение переправить или сохранить (см.
     ниже).
 
-    <li><b>Одобрить</b> &mdash; переправить сообщение в список рассылки.
+    <li><b>Принять/Одобрить</b> &mdash; принять сообщение и переправить его
+    в список рассылки. Для запросов об изменении подписки, одобрить их.
 
     <li><b>Отказать</b> &mdash; отвергнуть сообщение, отправив отправителю
     уведомление, что его сообщение принято не было.  Само сообщение после

=== removed file 'templates/ru/s2s.py'
--- templates/ru/s2s.py	2009-12-14 22:41:45 +0000
+++ templates/ru/s2s.py	1970-01-01 00:00:00 +0000
@@ -1,66 +0,0 @@
-#! /usr/bin/python
-
-# A simple script to check the status of the translation.
-
-import sys, string
-from pprint import pprint
-
-def chop (line):
-    if line[-2:] == '\r\n':
-        line = line[:-2]
-
-    if line[-1:] == '\n':
-        line = line[:-1]
-
-    return line
-
-def cmprevision (a, b):
-    '''revisions are something delimited with dots'''
-
-    return cmp (map (lambda x: x.lower (), a.split ('.')), map (lambda x: x.lower (), b.split ('.')))
-
-name = None
-revision = None
-
-files = {}
-
-for line in sys.stdin.readlines ():
-    parts = string.split (chop (line))
-
-    if len (parts) > 0:
-        if parts[0] == 'File:':
-            name = parts[1]
-        elif parts[0] == 'Repository':
-            files[name] = parts[2]
-
-# pprint (files)
-
-action = 0
-
-for line in open ('status', 'r').readlines ():
-    parts = string.split (chop (line))
-
-    if len (parts) > 0:
-        if files.has_key (parts[0]):
-            pass    # check the version
-
-            relation = cmprevision (parts[1], files[parts[0]])
-
-            if relation < 0:
-                print 'Update: %s (%s -> %s)' % (parts[0], parts[1], files[parts[0]])
-                action = 1
-            elif relation > 0:
-                print 'Downgrade?: %s (%s -> %s)' % (parts[0], parts[1], files[parts[0]])
-                action = 1
-
-            del files[parts[0]] # delete the item
-        else:
-            print 'Delete:', parts[0]
-            action = 1
-
-for file in files.keys ():
-    print 'New:', file
-    action = 1
-
-if not action:
-    print 'You are translating the latest versions'

=== removed file 'templates/ru/status'
--- templates/ru/status	2005-04-08 20:50:26 +0000
+++ templates/ru/status	1970-01-01 00:00:00 +0000
@@ -1,44 +0,0 @@
-admindbdetails.html      2.1.2.1    done
-admindbpreamble.html     2.3    done
-adminsubscribeack.txt    2.0    done
-adminunsubscribeack.txt  2.0    done
-admlogin.html            2.0    done
-approve.txt              2.0    done
-article.html             2.2    done
-bounce.txt               2.1    done
-checkdbs.txt             2.0    done
-convert.txt              2.0    done
-cronpass.txt             2.0    done
-headfoot.html            2.1.2.1    done
-help.txt                 2.2    done
-invite.txt               2.0    done
-listinfo.html            2.4    done
-masthead.txt             2.0    done
-newlist.txt              2.1    done
-nomoretoday.txt          2.0    done
-options.html             2.10.2.3   started
-postack.txt              2.1    done
-postauth.txt             2.0    done
-postheld.txt             2.1    done
-private.html             2.1.2.1    done
-refuse.txt               2.0    done
-roster.html              2.0    done
-subauth.txt              2.1    done
-subscribeack.txt         2.1    done
-subscribe.html           2.1    done
-unsub.txt                2.1    done
-unsubauth.txt            2.0    done
-userpass.txt             2.1    done
-verify.txt               2.1.2.1    done
-emptyarchive.html        2.0    done
-admindbsummary.html      2.0    done
-disabled.txt             2.1    done
-archidxentry.html        1.1    done
-archidxfoot.html         1.1    done
-archidxhead.html         1.1    done
-archlistend.html         1.1    done
-archliststart.html       1.1    done
-archtocentry.html        1.1    done
-archtoc.html             1.2    done
-probe.txt                1.1.2.1 done
-archtocnombox.html       1.1.2.1 done

_______________________________________________
Mailman-checkins mailing list
Mailman-checkins@python.org
Unsubscribe: 
https://mail.python.org/mailman/options/mailman-checkins/archive%40jab.org

Reply via email to