summaryrefslogtreecommitdiffstats
path: root/thunderbird-l10n/ru
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
commit6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch)
treea68f146d7fa01f0134297619fbe7e33db084e0aa /thunderbird-l10n/ru
parentInitial commit. (diff)
downloadthunderbird-6bf0a5cb5034a7e684dcc3500e841785237ce2dd.tar.xz
thunderbird-6bf0a5cb5034a7e684dcc3500e841785237ce2dd.zip
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'thunderbird-l10n/ru')
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/branding/brand.dtd13
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/branding/brand.properties7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/pdfviewer/chrome.properties20
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/pdfviewer/viewer.properties302
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/alerts/alert.properties23
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/autoconfig/autoconfig.properties12
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-alarms.properties39
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog-attendees.properties15
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog.dtd418
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog.properties541
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-extract.properties294
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-invitations-dialog.dtd19
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-invitations-dialog.properties10
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-occurrence-prompt.dtd7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-occurrence-prompt.properties53
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar.dtd354
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar.properties696
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendarCreation.dtd51
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendarCreation.properties6
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/categories.properties7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/dateFormat.properties146
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/dialogs/calendar-event-dialog-reminder.dtd19
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/global.dtd54
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/menuOverlay.dtd50
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/migration.dtd9
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/migration.properties13
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/provider-uninstall.dtd12
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/timezones.properties497
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/accounts.dtd33
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/accounts.properties9
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/commands.properties27
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/contacts.properties8
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/conversations.properties80
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/facebook.properties6
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/imtooltip.properties12
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/irc.properties209
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/logger.properties7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/matrix.properties255
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/status.properties23
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/twitter.properties122
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/xmpp.properties281
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/chat/yahoo.properties5
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/communicator/utilityOverlay.dtd43
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/accessibility.properties314
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/animationinspector.properties182
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/boxmodel.properties48
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/changes.properties64
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/components.properties61
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/debugger.properties1159
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/device.properties21
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/dom.properties27
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/filterwidget.properties61
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/font-inspector.properties69
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/har.properties30
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/inspector.properties602
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/jsonview.properties45
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/layout.properties138
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/memory.properties434
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/menus.properties29
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/netmonitor.properties1699
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/network-throttling.properties27
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/responsive.properties182
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/shared.properties26
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/sourceeditor.properties117
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/startup.properties247
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/styleeditor.properties74
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/toolbox.properties267
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/webconsole.properties605
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/accessibility.properties142
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/debugger.properties67
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/eyedropper.properties14
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/screenshot.properties138
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/shared.properties6
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/styleinspector.properties267
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/accessible.properties71
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/intl.properties7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/platformKeys.properties33
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/accessible.properties21
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/intl.properties7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/platformKeys.properties33
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/accessible.properties21
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/intl.properties7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/platformKeys.properties33
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/aboutStudies.properties33
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/appstrings.properties37
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/autocomplete.properties9
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/browser.properties7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/commonDialogs.properties46
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/contentAreaCommands.properties28
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/css.properties52
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/dialog.properties12
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/dom/dom.properties478
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/extensions.properties26
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/fallbackMenubar.properties8
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/filepicker.properties20
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/global-strres.properties5
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/intl.css19
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/intl.properties43
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/keys.properties78
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/HtmlForm.properties35
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/MediaDocument.properties22
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/htmlparser.properties144
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/xmlparser.properties48
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout_errors.properties53
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/mathml/mathml.properties15
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/narrate.properties25
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/nsWebBrowserPersist.properties17
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/printdialog.properties52
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/printing.properties56
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/resetProfile.properties14
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/caps.properties9
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/csp.properties125
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/security.properties167
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/svg/svg.properties5
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/viewSource.properties16
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/wizard.properties8
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/xslt/xslt.properties39
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/global/xul.properties5
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning-toolbar.dtd51
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning.dtd114
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning.properties201
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-mapi/mapi.properties36
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/am-newsblog.dtd14
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/feed-subscriptions.dtd55
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/newsblog.properties93
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-region/region.properties13
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/certFetchingStatus.dtd9
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSMIMEOverlay.dtd16
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSecurityInfo.dtd18
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSecurityInfo.properties13
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgReadSMIMEOverlay.properties11
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgReadSecurityInfo.dtd17
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgSecurityInfo.properties36
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/AccountManager.dtd25
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/AccountWizard.dtd55
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/CustomHeaders.dtd11
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/FilterEditor.dtd66
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/FilterListDialog.dtd40
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/SearchDialog.dtd38
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutDownloads.dtd23
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutRights.properties6
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutSupportMail.properties15
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/accountCreationModel.properties21
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/accountCreationUtil.properties34
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/activity.dtd19
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/activity.properties99
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addbuddy.dtd7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abAddressBookNameDialog.dtd7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abContactsPanel.dtd49
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abMailListDialog.dtd22
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abMainWindow.dtd17
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abResultsPane.dtd38
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/addressBook.properties179
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/ldapAutoCompErrs.properties109
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/pref-directory-add.dtd45
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/pref-directory.dtd17
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/replicationProgress.properties20
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-addressing.dtd51
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-advanced.dtd30
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-archiveoptions.dtd25
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-copies.dtd52
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-e2e.properties5
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-identities-list.dtd15
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-identity-edit.dtd14
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-im.dtd16
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-junk.dtd31
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-main.dtd49
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-mdn.dtd33
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-mdn.properties6
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-offline.dtd57
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-server-advanced.dtd31
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-server-top.dtd89
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-serverwithnoidentities.dtd6
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-smime.dtd47
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-smime.properties39
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/appUpdate.properties40
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/appleMailImportMsgs.properties21
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/baseMenuOverlay.dtd35
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/beckyImportMsgs.properties19
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/charsetTitles.properties84
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/chat.dtd44
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/chat.properties110
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/configEditorOverlay.dtd5
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/converterDialog.dtd11
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/converterDialog.properties41
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/custom.properties5
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/customizeToolbar.dtd18
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/customizeToolbar.properties11
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/downloadheaders.dtd27
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/editContactOverlay.dtd20
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/editContactOverlay.properties14
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/fieldMapImport.dtd17
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/filter.properties109
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderProps.dtd70
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderWidgets.properties12
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderpane.dtd7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/gloda.properties175
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaComplete.properties19
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaFacetView.dtd29
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaFacetView.properties171
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imAccountWizard.dtd32
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imAccounts.properties63
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imapMsgs.properties266
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/importDialog.dtd56
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/importMsgs.properties304
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/joinChat.dtd10
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/junkLog.dtd10
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/localMsgs.properties140
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailEditorOverlay.dtd6
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailOverlay.dtd11
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailViewList.dtd8
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailViewSetup.dtd10
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailviews.properties13
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/markByDate.dtd9
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messenger.dtd920
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messenger.properties762
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdAdvancedEdit.dtd18
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdColorPicker.dtd22
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdConvertToTable.dtd15
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdDialogOverlay.dtd17
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdNamedAnchorProperties.dtd10
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorColorProperties.dtd28
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorHLineProperties.dtd27
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorImageProperties.dtd79
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertChars.dtd19
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertMath.dtd21
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertSource.dtd15
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertTOC.dtd16
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertTable.dtd18
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorLinkProperties.dtd6
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorListProperties.dtd20
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorPersonalDictionary.dtd18
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorReplace.dtd29
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorSpellCheck.dtd38
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorTableProperties.dtd75
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/composeMsgs.properties463
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/editor.properties208
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/editorOverlay.dtd303
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/mailComposeEditorOverlay.dtd9
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/messengercompose.dtd306
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/sendProgress.dtd8
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/sendProgress.properties21
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/migration/migration.dtd30
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/migration/migration.properties32
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mime.properties154
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mimeheader.properties35
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/morkImportMsgs.properties18
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgAccountCentral.dtd26
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgHdrViewOverlay.dtd114
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgSynchronize.dtd27
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgViewPickerOverlay.dtd22
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgmdn.properties18
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/multimessageview.dtd8
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/multimessageview.properties66
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/newFolderDialog.dtd16
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/news.properties56
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/newsError.dtd31
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/offline.properties28
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/offlineStartup.properties8
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/outlookImportMsgs.properties82
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/pgpmime.properties10
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/applicationManager.properties13
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/applications.properties13
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/messagestyle.properties13
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/preferences.properties100
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/prefs.properties90
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/profileDowngrade.dtd20
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/removeAccount.dtd22
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/removeAccount.properties5
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/renameFolderDialog.dtd9
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/sanitize.dtd36
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/seamonkeyImportMsgs.properties18
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search-attributes.properties45
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search-operators.properties31
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search.properties27
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/searchTermOverlay.dtd19
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/shutdownWindow.properties10
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/smime.properties13
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/smtpEditOverlay.dtd24
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/subscribe.dtd22
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/subscribe.properties13
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/tabmail.dtd9
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/taskbar.properties8
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/telemetry.properties13
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/templateUtils.properties7
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/textImportMsgs.properties53
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/vCardImportMsgs.properties26
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewLog.dtd12
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewSource.dtd84
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewSource.properties17
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewZoomOverlay.dtd30
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/virtualFolderListDialog.dtd10
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/virtualFolderProperties.dtd22
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/wmImportMsgs.properties76
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/downloads/downloads.properties6
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/downloads/unknownContentType.properties23
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/profile/profileSelection.properties55
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/update/updates.properties45
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/mozldap/ldap.properties272
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/necko/necko.properties100
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/passwordmgr/passwordmgr.properties79
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/pipnss/nsserrors.properties331
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/pipnss/pipnss.properties136
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/pippki/pippki.properties76
-rw-r--r--thunderbird-l10n/ru/chrome/ru/locale/ru/places/places.properties33
-rw-r--r--thunderbird-l10n/ru/localization/ru/branding/brand.ftl22
-rw-r--r--thunderbird-l10n/ru/localization/ru/browser/appExtensionFields.ftl16
-rw-r--r--thunderbird-l10n/ru/localization/ru/browser/branding/brandings.ftl18
-rw-r--r--thunderbird-l10n/ru/localization/ru/browser/components/mozFiveStar.ftl9
-rw-r--r--thunderbird-l10n/ru/localization/ru/browser/components/mozSupportLink.ftl5
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-context-menus.ftl10
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-delete-prompt.ftl41
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-editable-item.ftl30
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-event-dialog-reminder.ftl10
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-event-listing.ftl71
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-ics-file-dialog.ftl50
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-invitation-panel.ftl115
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-invitations-dialog.ftl10
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-itip-identity-dialog.ftl8
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-print.ftl17
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-recurrence-dialog.ftl8
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-summary-dialog.ftl17
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-uri-redirect-dialog.ftl12
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/calendar-widgets.ftl111
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/category-dialog.ftl7
-rw-r--r--thunderbird-l10n/ru/localization/ru/calendar/preferences.ftl192
-rw-r--r--thunderbird-l10n/ru/localization/ru/chat/matrix.ftl36
-rw-r--r--thunderbird-l10n/ru/localization/ru/crashreporter/aboutcrashes.ftl31
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/client/aboutdebugging.ftl400
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/client/accessibility.ftl100
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/client/application.ftl147
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/client/compatibility.ftl55
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/client/perftools.ftl162
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/client/storage.ftl109
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/client/styleeditor.ftl57
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/client/toolbox-options.ftl154
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/client/toolbox.ftl55
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/client/tooltips.ftl102
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/shared/debugger-paused-reasons.ftl87
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/shared/highlighters.ftl67
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/shared/webconsole-commands.ftl34
-rw-r--r--thunderbird-l10n/ru/localization/ru/devtools/startup/key-shortcuts.ftl38
-rw-r--r--thunderbird-l10n/ru/localization/ru/dom/XMLPrettyPrint.ftl5
-rw-r--r--thunderbird-l10n/ru/localization/ru/dom/media.ftl6
-rw-r--r--thunderbird-l10n/ru/localization/ru/locales-preview/aboutTranslations.ftl28
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/about3Pane.ftl426
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/aboutAddonsExtra.ftl12
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/aboutDialog.ftl48
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/aboutImport.ftl284
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/aboutProfilesExtra.ftl5
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/aboutRights.ftl30
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/aboutSupportCalendar.ftl33
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/aboutSupportChat.ftl11
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/aboutSupportMail.ftl31
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/accountCentral.ftl65
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/accountManager.ftl18
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/accountProvisioner.ftl79
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/accountcreation/accountHub.ftl83
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/accountcreation/accountSetup.ftl298
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/addonNotifications.ftl130
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/addressbook/abCardDAVDialog.ftl26
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/addressbook/abCardDAVProperties.ftl35
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/addressbook/aboutAddressBook.ftl278
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/addressbook/fieldMapImport.ftl12
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/addressbook/vcard.ftl138
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/appmenu.ftl210
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/chat-verifySession.ftl17
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/chat.ftl47
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/compactFoldersDialog.ftl20
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/exportDialog.ftl22
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/extensionPermissions.ftl27
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/extensions/popup.ftl14
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/extensionsUI.ftl9
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/firefoxAccounts.ftl32
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/flatpak.ftl24
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/folderprops.ftl10
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/importDialog.ftl30
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/mailWidgets.ftl15
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/menubar.ftl144
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/messageheader/headerFields.ftl49
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/messenger.ftl422
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/messengercompose/messengercompose.ftl434
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/migration.ftl15
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/multimessageview.ftl14
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/openpgp/backupKeyPassword.ftl17
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/openpgp/changeExpiryDlg.ftl22
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/openpgp/composeKeyStatus.ftl25
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/openpgp/keyAssistant.ftl130
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/openpgp/keyWizard.ftl141
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/openpgp/msgReadStatus.ftl86
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/openpgp/oneRecipientStatus.ftl52
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/openpgp/openpgp-frontend.ftl52
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/openpgp/openpgp.ftl787
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/otr/add-finger.ftl16
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/otr/am-im-otr.ftl23
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/otr/auth.ftl60
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/otr/chat.ftl19
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/otr/finger-sync.ftl12
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/otr/finger.ftl20
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/otr/otr.ftl97
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/otr/otrUI.ftl87
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/policies/aboutPolicies.ftl17
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/policies/policies-descriptions.ftl159
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/am-copies.ftl5
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/am-im.ftl23
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/application-manager.ftl10
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/attachment-reminder.ftl21
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/colors.ftl36
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/connection.ftl88
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/cookies.ftl44
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/dock-options.ftl23
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/fonts.ftl134
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/languages.ftl33
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/new-tag.ftl13
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/notifications.ftl29
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/offline.ftl43
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/passwordManager.ftl83
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/permissions.ftl43
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/preferences.ftl789
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/receipts.ftl39
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/sync-dialog.ftl11
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/preferences/system-integration.ftl39
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/shortcuts.ftl113
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/syncAccounts.ftl28
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/treeView.ftl65
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/troubleshootMode.ftl33
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/unifiedToolbar.ftl100
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/unifiedToolbarItems.ftl165
-rw-r--r--thunderbird-l10n/ru/localization/ru/messenger/viewSource.ftl19
-rw-r--r--thunderbird-l10n/ru/localization/ru/security/certificates/certManager.ftl228
-rw-r--r--thunderbird-l10n/ru/localization/ru/security/certificates/deviceManager.ftl133
-rw-r--r--thunderbird-l10n/ru/localization/ru/security/pippki/pippki.ftl106
-rw-r--r--thunderbird-l10n/ru/localization/ru/services/accounts.ftl8
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutAbout.ftl9
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutAddons.ftl500
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutCompat.ftl22
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutGlean.ftl105
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutHttpsOnlyError.ftl30
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutLogging.ftl69
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutMozilla.ftl11
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutNetworking.ftl68
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutPerformance.ftl65
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutPlugins.ftl43
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutProcesses.ftl192
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutProfiles.ftl74
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutReader.ftl53
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutRights.ftl36
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutServiceWorkers.ftl40
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutSupport.ftl431
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutTelemetry.ftl137
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutThirdParty.ftl72
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWebauthn.ftl131
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWebrtc.ftl332
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWindowsMessages.ftl20
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/abuseReports.ftl116
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/certviewer.ftl122
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/config.ftl55
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/about/url-classifier.ftl62
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/branding/accounts.ftl15
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/branding/brandings.ftl53
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/contentanalysis/contentanalysis.ftl31
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/downloads/downloadUI.ftl51
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/downloads/downloadUtils.ftl111
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/featuregates/features.ftl58
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/formautofill/formAutofill.ftl49
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/alert.ftl12
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/appPicker.ftl10
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/browser-utils.ftl11
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/commonDialog.ftl21
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/contextual-identity.ftl29
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/cookieBannerHandling.ftl5
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/createProfileWizard.ftl53
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/cspErrors.ftl32
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/datepicker.ftl50
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/datetimebox.ftl42
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/extensionPermissions.ftl33
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/extensions.ftl114
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/handlerDialog.ftl70
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/htmlForm.ftl15
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/mozCard.ftl3
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/mozFiveStar.ftl9
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/mozMessageBar.ftl15
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/mozSupportLink.ftl5
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/notification.ftl16
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/popupnotification.ftl10
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/processTypes.ftl61
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/profileDowngrade.ftl18
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/profileSelection.ftl38
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/resetProfile.ftl15
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/resistFingerPrinting.ftl6
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/run-from-dmg.ftl28
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/tabprompts.ftl13
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/textActions.ftl64
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/timepicker.ftl3
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/tree.ftl6
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/unknownContentType.ftl42
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/videocontrols.ftl71
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/global/wizard.ftl37
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/intl/languageNames.ftl215
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/intl/regionNames.ftl280
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/main-window/autocomplete.ftl23
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/main-window/findbar.ftl78
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/neterror/certError.ftl141
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/neterror/netError.ftl149
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/neterror/nsserrors.ftl344
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/passwordmgr/passwordmgr.ftl39
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/payments/payments.ftl51
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/pdfviewer/viewer.ftl386
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/pictureinpicture/pictureinpicture.ftl86
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/preferences/preferences.ftl39
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/printing/printDialogs.ftl112
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/printing/printPreview.ftl73
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/printing/printUI.ftl149
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/reportBrokenSite/reportBrokenSite.ftl3
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/updates/backgroundupdate.ftl5
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/updates/elevation.ftl14
-rw-r--r--thunderbird-l10n/ru/localization/ru/toolkit/updates/history.ftl29
-rw-r--r--thunderbird-l10n/ru/manifest.json56
518 files changed, 41370 insertions, 0 deletions
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/branding/brand.dtd b/thunderbird-l10n/ru/chrome/ru/locale/branding/brand.dtd
new file mode 100644
index 0000000000..5b5a8340e4
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/branding/brand.dtd
@@ -0,0 +1,13 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+<!ENTITY brandShortName "Thunderbird">
+<!ENTITY brandShorterName "Thunderbird">
+<!ENTITY brandFullName "Mozilla Thunderbird">
+<!-- LOCALIZATION NOTE (brandProductName):
+ This brand name can be used in messages where the product name needs to
+ remain unchanged across different versions (Daily, Beta, etc.). -->
+<!ENTITY brandProductName "Thunderbird">
+<!ENTITY vendorShortName "Mozilla">
+<!ENTITY trademarkInfo.part1 "Mozilla Thunderbird и логотипы Thunderbird
+ являются товарными знаками Mozilla Foundation.">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/branding/brand.properties b/thunderbird-l10n/ru/chrome/ru/locale/branding/brand.properties
new file mode 100644
index 0000000000..9dd5011219
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/branding/brand.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+brandShortName=Thunderbird
+brandShorterName=Thunderbird
+brandFullName=Mozilla Thunderbird
+vendorShortName=Mozilla
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/pdfviewer/chrome.properties b/thunderbird-l10n/ru/chrome/ru/locale/pdfviewer/chrome.properties
new file mode 100644
index 0000000000..c0a06aaa6d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/pdfviewer/chrome.properties
@@ -0,0 +1,20 @@
+# Copyright 2012 Mozilla Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Chrome notification bar messages and buttons
+unsupported_feature=Этот PDF-документ может отображаться неправильно.
+unsupported_feature_forms=Этот PDF-документ содержит формы. Заполнение полей форм не поддерживается.
+unsupported_feature_signatures=Этот PDF-документ содержит цифровые подписи. Проверка подписей не поддерживается.
+open_with_different_viewer=Открыть в другом просмотрщике
+open_with_different_viewer.accessKey=ы
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/pdfviewer/viewer.properties b/thunderbird-l10n/ru/chrome/ru/locale/pdfviewer/viewer.properties
new file mode 100644
index 0000000000..d5d91fa24c
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/pdfviewer/viewer.properties
@@ -0,0 +1,302 @@
+# Copyright 2012 Mozilla Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Main toolbar buttons (tooltips and alt text for images)
+previous.title=Предыдущая страница
+previous_label=Предыдущая
+next.title=Следующая страница
+next_label=Следующая
+
+# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input.
+page.title=Страница
+# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number
+# representing the total number of pages in the document.
+of_pages=из {{pagesCount}}
+# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}"
+# will be replaced by a number representing the currently visible page,
+# respectively a number representing the total number of pages in the document.
+page_of_pages=({{pageNumber}} из {{pagesCount}})
+
+zoom_out.title=Уменьшить
+zoom_out_label=Уменьшить
+zoom_in.title=Увеличить
+zoom_in_label=Увеличить
+zoom.title=Масштаб
+presentation_mode.title=Перейти в режим презентации
+presentation_mode_label=Режим презентации
+open_file.title=Открыть файл
+open_file_label=Открыть
+print.title=Печать
+print_label=Печать
+save.title=Сохранить
+save_label=Сохранить
+# LOCALIZATION NOTE (download_button.title): used in Firefox for Android as a tooltip for the download button (“download” is a verb).
+download_button.title=Загрузить
+# LOCALIZATION NOTE (download_button_label): used in Firefox for Android as a label for the download button (“download” is a verb).
+# Length of the translation matters since we are in a mobile context, with limited screen estate.
+download_button_label=Загрузить
+bookmark1.title=Текущая страница (просмотр URL-адреса с текущей страницы)
+bookmark1_label=Текущая страница
+# LOCALIZATION NOTE (open_in_app.title): This string is used in Firefox for Android.
+open_in_app.title=Открыть в приложении
+# LOCALIZATION NOTE (open_in_app_label): This string is used in Firefox for Android. Length of the translation matters since we are in a mobile context, with limited screen estate.
+open_in_app_label=Открыть в программе
+
+# Secondary toolbar and context menu
+tools.title=Инструменты
+tools_label=Инструменты
+first_page.title=Перейти на первую страницу
+first_page_label=Перейти на первую страницу
+last_page.title=Перейти на последнюю страницу
+last_page_label=Перейти на последнюю страницу
+page_rotate_cw.title=Повернуть по часовой стрелке
+page_rotate_cw_label=Повернуть по часовой стрелке
+page_rotate_ccw.title=Повернуть против часовой стрелки
+page_rotate_ccw_label=Повернуть против часовой стрелки
+
+cursor_text_select_tool.title=Включить Инструмент «Выделение текста»
+cursor_text_select_tool_label=Инструмент «Выделение текста»
+cursor_hand_tool.title=Включить Инструмент «Рука»
+cursor_hand_tool_label=Инструмент «Рука»
+
+scroll_page.title=Использовать прокрутку страниц
+scroll_page_label=Прокрутка страниц
+scroll_vertical.title=Использовать вертикальную прокрутку
+scroll_vertical_label=Вертикальная прокрутка
+scroll_horizontal.title=Использовать горизонтальную прокрутку
+scroll_horizontal_label=Горизонтальная прокрутка
+scroll_wrapped.title=Использовать масштабируемую прокрутку
+scroll_wrapped_label=Масштабируемая прокрутка
+
+spread_none.title=Не использовать режим разворотов страниц
+spread_none_label=Без разворотов страниц
+spread_odd.title=Развороты начинаются с нечётных номеров страниц
+spread_odd_label=Нечётные страницы слева
+spread_even.title=Развороты начинаются с чётных номеров страниц
+spread_even_label=Чётные страницы слева
+
+# Document properties dialog box
+document_properties.title=Свойства документа…
+document_properties_label=Свойства документа…
+document_properties_file_name=Имя файла:
+document_properties_file_size=Размер файла:
+# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}"
+# will be replaced by the PDF file size in kilobytes, respectively in bytes.
+document_properties_kb={{size_kb}} КБ ({{size_b}} байт)
+# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}"
+# will be replaced by the PDF file size in megabytes, respectively in bytes.
+document_properties_mb={{size_mb}} МБ ({{size_b}} байт)
+document_properties_title=Заголовок:
+document_properties_author=Автор:
+document_properties_subject=Тема:
+document_properties_keywords=Ключевые слова:
+document_properties_creation_date=Дата создания:
+document_properties_modification_date=Дата изменения:
+# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}"
+# will be replaced by the creation/modification date, and time, of the PDF file.
+document_properties_date_string={{date}}, {{time}}
+document_properties_creator=Приложение:
+document_properties_producer=Производитель PDF:
+document_properties_version=Версия PDF:
+document_properties_page_count=Число страниц:
+document_properties_page_size=Размер страницы:
+document_properties_page_size_unit_inches=дюймов
+document_properties_page_size_unit_millimeters=мм
+document_properties_page_size_orientation_portrait=книжная
+document_properties_page_size_orientation_landscape=альбомная
+document_properties_page_size_name_a3=A3
+document_properties_page_size_name_a4=A4
+document_properties_page_size_name_letter=Letter
+document_properties_page_size_name_legal=Legal
+# LOCALIZATION NOTE (document_properties_page_size_dimension_string):
+# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement and orientation, of the (current) page.
+document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}})
+# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string):
+# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement, name, and orientation, of the (current) page.
+document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}})
+# LOCALIZATION NOTE (document_properties_linearized): The linearization status of
+# the document; usually called "Fast Web View" in English locales of Adobe software.
+document_properties_linearized=Быстрый просмотр в Web:
+document_properties_linearized_yes=Да
+document_properties_linearized_no=Нет
+document_properties_close=Закрыть
+
+print_progress_message=Подготовка документа к печати…
+# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by
+# a numerical per cent value.
+print_progress_percent={{progress}}%
+print_progress_close=Отмена
+
+# Tooltips and alt text for side panel toolbar buttons
+# (the _label strings are alt text for the buttons, the .title strings are
+# tooltips)
+toggle_sidebar.title=Показать/скрыть боковую панель
+toggle_sidebar_notification2.title=Показать/скрыть боковую панель (документ имеет содержание/вложения/слои)
+toggle_sidebar_label=Показать/скрыть боковую панель
+document_outline.title=Показать содержание документа (двойной щелчок, чтобы развернуть/свернуть все элементы)
+document_outline_label=Содержание документа
+attachments.title=Показать вложения
+attachments_label=Вложения
+layers.title=Показать слои (дважды щёлкните, чтобы сбросить все слои к состоянию по умолчанию)
+layers_label=Слои
+thumbs.title=Показать миниатюры
+thumbs_label=Миниатюры
+current_outline_item.title=Найти текущий элемент структуры
+current_outline_item_label=Текущий элемент структуры
+findbar.title=Найти в документе
+findbar_label=Найти
+
+additional_layers=Дополнительные слои
+# LOCALIZATION NOTE (page_landmark): "{{page}}" will be replaced by the page number.
+page_landmark=Страница {{page}}
+# Thumbnails panel item (tooltip and alt text for images)
+# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page
+# number.
+thumb_page_title=Страница {{page}}
+# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page
+# number.
+thumb_page_canvas=Миниатюра страницы {{page}}
+
+# Find panel button title and messages
+find_input.title=Найти
+find_input.placeholder=Найти в документе…
+find_previous.title=Найти предыдущее вхождение фразы в текст
+find_previous_label=Назад
+find_next.title=Найти следующее вхождение фразы в текст
+find_next_label=Далее
+find_highlight=Подсветить все
+find_match_case_label=С учётом регистра
+find_match_diacritics_label=С учётом диакритических знаков
+find_entire_word_label=Слова целиком
+find_reached_top=Достигнут верх документа, продолжено снизу
+find_reached_bottom=Достигнут конец документа, продолжено сверху
+# LOCALIZATION NOTE (find_match_count): The supported plural forms are
+# [one|two|few|many|other], with [other] as the default value.
+# "{{current}}" and "{{total}}" will be replaced by a number representing the
+# index of the currently active find result, respectively a number representing
+# the total number of matches in the document.
+find_match_count={[ plural(total) ]}
+find_match_count[one]={{current}} из {{total}} совпадения
+find_match_count[two]={{current}} из {{total}} совпадений
+find_match_count[few]={{current}} из {{total}} совпадений
+find_match_count[many]={{current}} из {{total}} совпадений
+find_match_count[other]={{current}} из {{total}} совпадений
+# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are
+# [zero|one|two|few|many|other], with [other] as the default value.
+# "{{limit}}" will be replaced by a numerical value.
+find_match_count_limit={[ plural(limit) ]}
+find_match_count_limit[zero]=Более {{limit}} совпадений
+find_match_count_limit[one]=Более {{limit}} совпадения
+find_match_count_limit[two]=Более {{limit}} совпадений
+find_match_count_limit[few]=Более {{limit}} совпадений
+find_match_count_limit[many]=Более {{limit}} совпадений
+find_match_count_limit[other]=Более {{limit}} совпадений
+find_not_found=Фраза не найдена
+
+# Predefined zoom values
+page_scale_width=По ширине страницы
+page_scale_fit=По размеру страницы
+page_scale_auto=Автоматически
+page_scale_actual=Реальный размер
+# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a
+# numerical scale value.
+page_scale_percent={{scale}}%
+
+# Loading indicator messages
+loading_error=При загрузке PDF произошла ошибка.
+invalid_file_error=Некорректный или повреждённый PDF-файл.
+missing_file_error=PDF-файл отсутствует.
+unexpected_response_error=Неожиданный ответ сервера.
+rendering_error=При создании страницы произошла ошибка.
+
+# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be
+# replaced by the modification date, and time, of the annotation.
+annotation_date_string={{date}}, {{time}}
+
+# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip.
+# "{{type}}" will be replaced with an annotation type from a list defined in
+# the PDF spec (32000-1:2008 Table 169 – Annotation types).
+# Some common types are e.g.: "Check", "Text", "Comment", "Note"
+text_annotation_type.alt=[Аннотация {{type}}]
+password_label=Введите пароль, чтобы открыть этот PDF-файл.
+password_invalid=Неверный пароль. Пожалуйста, попробуйте снова.
+password_ok=OK
+password_cancel=Отмена
+
+printing_not_supported=Предупреждение: В этом браузере не полностью поддерживается печать.
+printing_not_ready=Предупреждение: PDF не полностью загружен для печати.
+web_fonts_disabled=Веб-шрифты отключены: не удалось задействовать встроенные PDF-шрифты.
+
+# Editor
+editor_free_text2.title=Текст
+editor_free_text2_label=Текст
+editor_ink2.title=Рисовать
+editor_ink2_label=Рисовать
+
+editor_stamp1.title=Добавить или изменить изображения
+editor_stamp1_label=Добавить или изменить изображения
+
+free_text2_default_content=Начните вводить…
+
+# Editor Parameters
+editor_free_text_color=Цвет
+editor_free_text_size=Размер
+editor_ink_color=Цвет
+editor_ink_thickness=Толщина
+editor_ink_opacity=Прозрачность
+
+editor_stamp_add_image_label=Добавить изображение
+editor_stamp_add_image.title=Добавить изображение
+
+# Editor aria
+editor_free_text2_aria_label=Текстовый редактор
+editor_ink2_aria_label=Редактор рисования
+editor_ink_canvas_aria_label=Созданное пользователем изображение
+
+# Alt-text dialog
+# LOCALIZATION NOTE (editor_alt_text_button_label): Alternative text (alt text) helps
+# when people can't see the image.
+editor_alt_text_button_label=Альтернативный текст
+editor_alt_text_edit_button_label=Изменить альтернативный текст
+editor_alt_text_dialog_label=Выберите вариант
+editor_alt_text_dialog_description=Альтернативный текст помогает, когда люди не видят изображение или оно не загружается.
+editor_alt_text_add_description_label=Добавить описание
+editor_alt_text_add_description_description=Старайтесь составлять 1–2 предложения, описывающих предмет, обстановку или действия.
+editor_alt_text_mark_decorative_label=Отметить как декоративное
+editor_alt_text_mark_decorative_description=Используется для декоративных изображений, таких как рамки или водяные знаки.
+editor_alt_text_cancel_button=Отменить
+editor_alt_text_save_button=Сохранить
+editor_alt_text_decorative_tooltip=Помечен как декоративный
+# This is a placeholder for the alt text input area
+editor_alt_text_textarea.placeholder=Например: «Молодой человек садится за стол, чтобы поесть»
+
+# Editor resizers
+# LOCALIZATION NOTE (editor_resizer_label_topLeft): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_topLeft=Левый верхний угол — изменить размер
+# LOCALIZATION NOTE (editor_resizer_label_topMiddle): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_topMiddle=Вверху посередине — изменить размер
+# LOCALIZATION NOTE (editor_resizer_label_topRight): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_topRight=Верхний правый угол — изменить размер
+# LOCALIZATION NOTE (editor_resizer_label_middleRight): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_middleRight=В центре справа — изменить размер
+# LOCALIZATION NOTE (editor_resizer_label_bottomRight): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_bottomRight=Нижний правый угол — изменить размер
+# LOCALIZATION NOTE (editor_resizer_label_bottomMiddle): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_bottomMiddle=Внизу посередине — изменить размер
+# LOCALIZATION NOTE (editor_resizer_label_bottomLeft): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_bottomLeft=Нижний левый угол — изменить размер
+# LOCALIZATION NOTE (editor_resizer_label_middleLeft): This is used in an aria label to help to understand the role of the resizer.
+editor_resizer_label_middleLeft=В центре слева — изменить размер
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/alerts/alert.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/alerts/alert.properties
new file mode 100644
index 0000000000..f76543ff18
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/alerts/alert.properties
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE(closeButton.title): Used as the close button text for web notifications on OS X.
+# This should ideally match the string that OS X uses for the close button on alert-type
+# notifications. OS X will truncate the value if it's too long.
+closeButton.title = Закрыть
+# LOCALIZATION NOTE(actionButton.label): Used as the button label to provide more actions on OS X notifications. OS X will truncate this if it's too long.
+actionButton.label = …
+# LOCALIZATION NOTE(webActions.disableForOrigin.label): %S is replaced
+# with the hostname origin of the notification.
+webActions.disableForOrigin.label = Отключить уведомления с %S
+
+# LOCALIZATION NOTE(source.label): Used to show the URL of the site that
+# sent the notification (e.g., "via mozilla.org"). "%1$S" is the source host
+# and port.
+source.label=через %1$S
+webActions.settings.label = Параметры уведомлений
+
+# LOCALIZATION NOTE(pauseNotifications.label): %S is replaced with the
+# brandShortName of the application.
+pauseNotifications.label = Отключить уведомления до перезапуска %S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/autoconfig/autoconfig.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/autoconfig/autoconfig.properties
new file mode 100644
index 0000000000..84834d09ea
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/autoconfig/autoconfig.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+readConfigTitle = Ошибка настройки
+readConfigMsg = Ошибка при чтении файла настроек. Обратитесь к системному администратору.
+
+autoConfigTitle = Предупреждение системы автонастройки
+autoConfigMsg = Ошибка системы автонастройки (Netscape.cfg). Обратитесь к системному администратору. \n Ошибка %S:
+
+emailPromptTitle = Электронная почта
+emailPromptMsg = Введите свой адрес электронной почты
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-alarms.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-alarms.properties
new file mode 100644
index 0000000000..5a5fa97f66
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-alarms.properties
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (reminderCustomTitle):
+# %1$S = unit, %2$S = reminderCustomOrigin
+# Example: "3 minutes" "before the task starts"
+reminderCustomTitle=%1$S %2$S
+reminderTitleAtStartEvent=Момент начала события
+reminderTitleAtStartTask=Момент начала задачи
+reminderTitleAtEndEvent=Момент окончания события
+reminderTitleAtEndTask=Момент завершения задачи
+
+# LOCALIZATION NOTE (reminderSnoozeOkA11y)
+# This string is not seen in the UI, it is read by screen readers when the user
+# focuses the "OK" button in the "Snooze for..." popup of the alarm dialog.
+# %1$S = any of unit*
+reminderSnoozeOkA11y=Отложить напоминание на %1$S
+
+reminderCustomOriginBeginBeforeEvent=перед началом события
+reminderCustomOriginBeginAfterEvent=после начала события
+reminderCustomOriginEndBeforeEvent=перед окончанием события
+reminderCustomOriginEndAfterEvent=после окончания события
+reminderCustomOriginBeginBeforeTask=перед началом задачи
+reminderCustomOriginBeginAfterTask=после начала задачи
+reminderCustomOriginEndBeforeTask=перед завершением задачи
+reminderCustomOriginEndAfterTask=после завершения задачи
+
+reminderErrorMaxCountReachedEvent=Выбранный календарь имеет ограничение в #1 напоминание на событие.;Выбранный календарь имеет ограничение в #1 напоминания на событие.;Выбранный календарь имеет ограничение в #1 напоминаний на событие.
+reminderErrorMaxCountReachedTask=Выбранный календарь имеет ограничение в #1 напоминание на задачу.;Выбранный календарь имеет ограничение в #1 напоминания на задачу.;Выбранный календарь имеет ограничение в #1 напоминаний на задачу.
+
+# LOCALIZATION NOTE (reminderReadonlyNotification)
+# This notification will be presented in the alarm dialog if reminders for not
+# writable items/calendars are displayed.
+# %1$S - localized value of calendar.alarm.snoozeallfor.label (defined in calendar.dtd)
+reminderReadonlyNotification=Напоминания для календарей, доступных только для чтения, не могут быть отложены, а только отклонены - кнопка «%1$S» будет откладывать напоминания только для календарей, доступных для записи.
+# LOCALIZATION NOTE (reminderDisabledSnoozeButtonTooltip)
+# This tooltip is only displayed, if the button is disabled
+reminderDisabledSnoozeButtonTooltip=Откладывание напоминаний не поддерживается для календарей, доступных только для чтения
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog-attendees.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog-attendees.properties
new file mode 100644
index 0000000000..d3536b7fad
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog-attendees.properties
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+event.attendee.role.required = Обязательный участник
+event.attendee.role.optional = Необязательный участник
+event.attendee.role.nonparticipant = Не участник
+event.attendee.role.chair = Организатор
+event.attendee.role.unknown = Неизвестный участник (%1$S)
+
+event.attendee.usertype.individual = Человек
+event.attendee.usertype.group = Группа
+event.attendee.usertype.resource = Ресурс
+event.attendee.usertype.room = Комната
+event.attendee.usertype.unknown = Неизвестный тип (%1$S)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog.dtd
new file mode 100644
index 0000000000..f3e6e8a708
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog.dtd
@@ -0,0 +1,418 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY event.title.label "Изменить" >
+
+<!ENTITY event.dialog.keepDurationButton.tooltip "Сохранять продолжительность при изменении даты завершения события">
+<!ENTITY event.dialog.keepDurationButton.accesskey "х">
+
+<!ENTITY newevent.from.label "С" >
+<!ENTITY newevent.to.label "По" >
+
+<!ENTITY newevent.status.label "Состояние" >
+<!ENTITY newevent.status.accesskey "я" >
+<!ENTITY newevent.eventStatus.none.label "Не указано" >
+<!ENTITY newevent.eventStatus.none.accesskey "Н" >
+<!ENTITY newevent.todoStatus.none.label "Не указано" >
+<!ENTITY newevent.eventStatus.cancelled.label "Отменено" >
+<!ENTITY newevent.eventStatus.cancelled.accesskey "О" >
+<!ENTITY newevent.todoStatus.cancelled.label "Отменено" >
+<!ENTITY newevent.status.tentative.label "Возможно" >
+<!ENTITY newevent.status.tentative.accesskey "з" >
+<!ENTITY newevent.status.confirmed.label "Подтверждено" >
+<!ENTITY newevent.status.confirmed.accesskey "П" >
+<!ENTITY newevent.status.needsaction.label "В ожидании" >
+<!ENTITY newevent.status.inprogress.label "Выполняется" >
+<!ENTITY newevent.status.completed.label "Выполнено" >
+
+<!-- The following entity is for New Task dialog only -->
+<!ENTITY newtodo.percentcomplete.label "&#37; завершено">
+
+<!-- LOCALIZATON NOTE(event.attendees.notify.label,event.attendees.notifyundisclosed.label,
+ event.attendees.disallowcounter.label)
+ - These three labels are displayed side by side in the event dialog, make sure
+ - they still fit in. -->
+<!ENTITY event.attendees.notify.label "Уведомить участников">
+<!ENTITY event.attendees.notify.accesskey "в">
+<!ENTITY event.attendees.notifyundisclosed.label "Разделить приглашения по участникам">
+<!ENTITY event.attendees.notifyundisclosed.accesskey "з">
+<!ENTITY event.attendees.notifyundisclosed.tooltip "Эта настройка позволяет отправить эл.письмо с приглашением каждому участнику по отдельности. Каждое приглашение индивидуально и другие участники не раскрываются.">
+<!ENTITY event.attendees.disallowcounter.label "Запретить встречные предложения">
+<!ENTITY event.attendees.disallowcounter.accesskey "п">
+<!ENTITY event.attendees.disallowcounter.tooltip "Указывает, что вы не принимаете встречные предложения">
+
+<!-- Keyboard Shortcuts -->
+<!ENTITY event.dialog.new.message.key2 "N">
+<!ENTITY event.dialog.close.key "W">
+<!ENTITY event.dialog.save.key "S">
+<!ENTITY event.dialog.saveandclose.key "L">
+<!ENTITY event.dialog.undo.key "Z">
+<!ENTITY event.dialog.redo.key "Y">
+<!ENTITY event.dialog.cut.key "X">
+<!ENTITY event.dialog.copy.key "C">
+<!ENTITY event.dialog.paste.key "V">
+<!ENTITY event.dialog.select.all.key "A">
+
+<!-- Menubar -->
+<!ENTITY event.menu.item.new.label "Создать">
+<!ENTITY event.menu.item.new.accesskey "С">
+<!ENTITY event.menu.item.new.event.label "Событие">
+<!ENTITY event.menu.item.new.event.accesskey "о">
+<!ENTITY event.menu.item.new.task.label "Задача">
+<!ENTITY event.menu.item.new.task.accesskey "д">
+<!ENTITY event.menu.item.new.message.label "Сообщение">
+<!ENTITY event.menu.item.new.message.accesskey "б">
+<!ENTITY event.menu.item.new.contact.label "Карточку адресной книги">
+<!ENTITY event.menu.item.new.contact.accesskey "К">
+<!ENTITY event.menu.item.close.label "Закрыть">
+<!ENTITY event.menu.item.close.accesskey "З">
+
+<!-- LOCALIZATION NOTE
+ - event.menu.item.save.accesskey is used for the "Save" menu item
+ - when editing events/tasks in a dialog window.
+ - event.menu.item.save.tab.accesskey is used for the "Save" menu item
+ - when editing events/tasks in a tab. -->
+<!ENTITY event.menu.item.save.label "Сохранить">
+<!ENTITY event.menu.item.save.accesskey "х">
+<!ENTITY event.menu.item.save.tab.accesskey "н">
+
+<!-- LOCALIZATION NOTE
+ - event.menu.item.saveandclose.accesskey is used for "Save and Close"
+ - menu item when editing events/tasks in a dialog window.
+ - event.menu.item.saveandclose.tab.accesskey is used for "Save and Close"
+ - when editing events/tasks in a tab. -->
+<!ENTITY event.menu.item.saveandclose.label "Сохранить и закрыть">
+<!ENTITY event.menu.item.saveandclose.accesskey "а">
+<!ENTITY event.menu.item.saveandclose.tab.accesskey "и">
+
+<!ENTITY event.menu.item.delete.label "Удалить…">
+<!ENTITY event.menu.item.delete.accesskey "У">
+
+<!ENTITY event.menu.edit.label "Правка">
+<!ENTITY event.menu.edit.accesskey "П">
+<!ENTITY event.menu.edit.undo.label "Отменить">
+<!ENTITY event.menu.edit.undo.accesskey "О">
+<!ENTITY event.menu.edit.redo.label "Повторить">
+<!ENTITY event.menu.edit.redo.accesskey "т">
+<!ENTITY event.menu.edit.cut.label "Вырезать">
+<!ENTITY event.menu.edit.cut.accesskey "В">
+<!ENTITY event.menu.edit.copy.label "Копировать">
+<!ENTITY event.menu.edit.copy.accesskey "К">
+<!ENTITY event.menu.edit.paste.label "Вставить">
+<!ENTITY event.menu.edit.paste.accesskey "с">
+<!ENTITY event.menu.edit.select.all.label "Выделить всё">
+<!ENTITY event.menu.edit.select.all.accesskey "ы">
+
+<!ENTITY event.menu.view.label "Вид">
+<!ENTITY event.menu.view.accesskey "В">
+<!ENTITY event.menu.view.toolbars.label "Панели инструментов">
+<!ENTITY event.menu.view.toolbars.accesskey "П">
+<!ENTITY event.menu.view.toolbars.event.label "Панель событий">
+<!ENTITY event.menu.view.toolbars.event.accesskey "с">
+<!ENTITY event.menu.view.toolbars.customize.label "Настроить…">
+<!ENTITY event.menu.view.toolbars.customize.accesskey "Н">
+
+<!ENTITY event.menu.options.label "Настройки">
+<!ENTITY event.menu.options.accesskey "Н">
+<!ENTITY event.menu.options.attendees.label "Пригласить участников…">
+<!ENTITY event.menu.options.attendees.accesskey "П">
+<!ENTITY event.menu.options.timezone2.label "Часовой пояс">
+<!ENTITY event.menu.options.timezone2.accesskey "Ч">
+<!ENTITY event.menu.options.priority2.label "Приоритет">
+<!ENTITY event.menu.options.priority2.accesskey "р">
+<!ENTITY event.menu.options.priority.notspecified.label "Не определен">
+<!ENTITY event.menu.options.priority.notspecified.accesskey "о">
+<!ENTITY event.menu.options.priority.low.label "Низкий">
+<!ENTITY event.menu.options.priority.low.accesskey "и">
+<!ENTITY event.menu.options.priority.normal.label "Обычный">
+<!ENTITY event.menu.options.priority.normal.accesskey "б">
+<!ENTITY event.menu.options.priority.high.label "Высокий">
+<!ENTITY event.menu.options.priority.high.accesskey "ы">
+<!ENTITY event.menu.options.privacy.label "Приватность">
+<!ENTITY event.menu.options.privacy.accesskey "а">
+<!ENTITY event.menu.options.privacy.public.label "Публичное событие">
+<!ENTITY event.menu.options.privacy.public.accesskey "у">
+<!ENTITY event.menu.options.privacy.confidential.label "Показывать только дату и время">
+<!ENTITY event.menu.options.privacy.confidential.accesskey "з">
+<!ENTITY event.menu.options.privacy.private.label "Личное событие">
+<!ENTITY event.menu.options.privacy.private.accesskey "Л">
+<!ENTITY event.menu.options.show.time.label "Показывать время как">
+<!ENTITY event.menu.options.show.time.accesskey "т">
+<!ENTITY event.menu.options.show.time.busy.label "Занято">
+<!ENTITY event.menu.options.show.time.busy.accesskey "я">
+<!ENTITY event.menu.options.show.time.free.label "Свободно">
+<!ENTITY event.menu.options.show.time.free.accesskey "в">
+
+<!ENTITY event.invite.attendees.label "Пригласить участников…">
+<!ENTITY event.invite.attendees.accesskey "П">
+<!ENTITY event.email.attendees.label "Создать сообщение для всех участников…">
+<!ENTITY event.email.attendees.accesskey "С">
+<!ENTITY event.email.tentative.attendees.label "Создать сообщение для неопределившихся участников…">
+<!ENTITY event.email.tentative.attendees.accesskey "о">
+<!ENTITY event.remove.attendees.label2 "Удалить всех участников">
+<!ENTITY event.remove.attendees.accesskey "а">
+<!ENTITY event.remove.attendee.label "Удалить участника">
+<!ENTITY event.remove.attendee.accesskey "л">
+
+<!-- Toolbar -->
+<!ENTITY event.toolbar.save.label2 "Сохранить">
+<!ENTITY event.toolbar.saveandclose.label "Сохранить и закрыть">
+<!ENTITY event.toolbar.delete.label "Удалить">
+<!ENTITY event.toolbar.attendees.label "Пригласить участников">
+<!ENTITY event.toolbar.privacy.label "Приватность">
+
+<!ENTITY event.toolbar.save.tooltip2 "Сохранить">
+<!ENTITY event.toolbar.saveandclose.tooltip "Сохранить и закрыть">
+<!ENTITY event.toolbar.delete.tooltip "Удалить">
+<!ENTITY event.toolbar.attendees.tooltip "Пригласить участников">
+<!ENTITY event.toolbar.attachments.tooltip "Добавить вложение">
+<!ENTITY event.toolbar.privacy.tooltip "Изменить приватность">
+<!ENTITY event.toolbar.priority.tooltip "Изменить приоритет">
+<!ENTITY event.toolbar.status.tooltip "Изменить состояние">
+<!ENTITY event.toolbar.freebusy.tooltip "Изменить время свободен/занят">
+
+<!-- Counter box -->
+<!-- LOCALIZATON NOTE(counter.button.*)
+ - This is only visible in the UI if you have received a counterproposal before and are going to
+ - reschedule the event from the imipbar in the email view. Clicking on the buttons will only
+ - populate the form fields in the dialog, there's no other immediate action on clicking like with
+ - the imip bar. Rescheduling will happen after clicking on save&close as usual. This screenshot
+ - illustrates how it might look like: https://bugzilla.mozilla.org/attachment.cgi?id=8810121 -->
+<!ENTITY counter.button.proposal.label "Использовать предложение">
+<!ENTITY counter.button.proposal.accesskey "ж">
+<!ENTITY counter.button.proposal.tooltip2 "Поля события будут заполнены с использованием значений из встречного предложения, только сохранение с или без дополнительных изменений соответственно уведомит всех участников">
+<!ENTITY counter.button.original.label "Использовать оригинальные данные">
+<!ENTITY counter.button.original.accesskey "л">
+<!ENTITY counter.button.original.tooltip2 "Полям будут присвоены значения из исходного события, прежде чем было сделано встречное предложение">
+
+<!-- Main page -->
+<!ENTITY event.title.textbox.label "Название:" >
+<!ENTITY event.title.textbox.accesskey "з">
+<!ENTITY event.location.label "Место:" >
+<!ENTITY event.location.accesskey "М">
+<!ENTITY event.categories.label "Категория:">
+<!ENTITY event.categories.accesskey "К">
+<!ENTITY event.categories.textbox.label "Добавить новую категорию" >
+<!ENTITY event.calendar.label "Календарь:" >
+<!ENTITY event.calendar.accesskey "а">
+<!ENTITY event.attendees.label "Участники:" >
+<!ENTITY event.attendees.accesskey "У">
+<!ENTITY event.alldayevent.label "Весь день" >
+<!ENTITY event.alldayevent.accesskey "д">
+<!ENTITY event.from.label "Начало:" >
+<!ENTITY event.from.accesskey "ч">
+<!ENTITY task.from.label "Начало:" >
+<!ENTITY task.from.accesskey "л">
+<!ENTITY event.to.label "Конец:" >
+<!ENTITY event.to.accesskey "о">
+<!ENTITY task.to.label "Срок:" >
+<!ENTITY task.to.accesskey "р">
+<!ENTITY task.status.label "Состояние:" >
+<!ENTITY task.status.accesskey "т">
+<!ENTITY event.repeat.label "Повтор:" >
+<!ENTITY event.repeat.accesskey "П">
+<!ENTITY event.until.label "До:">
+<!ENTITY event.until.accesskey "о">
+<!ENTITY event.reminder.label "Напоминание:" >
+<!ENTITY event.reminder.accesskey "и">
+<!ENTITY event.description.label "Описание:" >
+<!ENTITY event.description.accesskey "е">
+<!ENTITY event.attachments.label "Вложения:" >
+<!ENTITY event.attachments.accesskey "В" >
+<!ENTITY event.attachments.menubutton.label "Прикрепить">
+<!ENTITY event.attachments.menubutton.accesskey "п">
+<!ENTITY event.attachments.url.label "Веб-страницу…">
+<!ENTITY event.attachments.url.accesskey "ц">
+<!ENTITY event.attachments.popup.remove.label "Удалить" >
+<!ENTITY event.attachments.popup.remove.accesskey "ь" >
+<!ENTITY event.attachments.popup.open.label "Открыть" >
+<!ENTITY event.attachments.popup.open.accesskey "ы" >
+<!ENTITY event.attachments.popup.removeAll.label "Удалить всё" >
+<!ENTITY event.attachments.popup.removeAll.accesskey "с" >
+<!ENTITY event.attachments.popup.attachPage.label "Прикрепить веб-страницу…" >
+<!ENTITY event.attachments.popup.attachPage.accesskey "б" >
+<!ENTITY event.url.label "Связанные ссылки:" >
+<!ENTITY event.priority2.label "Приоритет:">
+
+<!ENTITY event.reminder.none.label "Не напоминать " >
+<!ENTITY event.reminder.0minutes.before.label "за 0 минут до" >
+<!ENTITY event.reminder.5minutes.before.label "за 5 минут до" >
+<!ENTITY event.reminder.15minutes.before.label "за 15 минут до" >
+<!ENTITY event.reminder.30minutes.before.label "за 30 минут до" >
+<!ENTITY event.reminder.1hour.before.label "за 1 час до" >
+<!ENTITY event.reminder.2hours.before.label "за 2 час до" >
+<!ENTITY event.reminder.12hours.before.label "за 12 час до" >
+<!ENTITY event.reminder.1day.before.label "за 1 день до" >
+<!ENTITY event.reminder.2days.before.label "за 2 дня до" >
+<!ENTITY event.reminder.1week.before.label "за 1 неделю до" >
+<!ENTITY event.reminder.custom.label "Настроить…" >
+
+<!ENTITY event.reminder.multiple.label "Множественные напоминания…" >
+
+<!ENTITY event.statusbarpanel.freebusy.label "Время как:">
+<!ENTITY event.statusbarpanel.privacy.label "Приватность:">
+
+<!-- Recurrence dialog -->
+<!ENTITY recurrence.title.label "Изменить повторения">
+
+<!ENTITY event.repeat.does.not.repeat.label "Не повторять">
+<!ENTITY event.repeat.daily.label "Ежедневно">
+<!ENTITY event.repeat.weekly.label "Еженедельно">
+<!ENTITY event.repeat.every.weekday.label "Каждый будний день">
+<!ENTITY event.repeat.bi.weekly.label "Каждые 2 недели">
+<!ENTITY event.repeat.monthly.label "Ежемесячно">
+<!ENTITY event.repeat.yearly.label "Ежегодно">
+<!ENTITY event.repeat.custom.label "Настроить…">
+
+<!ENTITY event.recurrence.pattern.label "Задать периодичность">
+<!ENTITY event.recurrence.occurs.label "Повторять" >
+<!ENTITY event.recurrence.day.label "ежедневно" >
+<!ENTITY event.recurrence.week.label "еженедельно" >
+<!ENTITY event.recurrence.month.label "ежемесячно" >
+<!ENTITY event.recurrence.year.label "ежегодно" >
+
+<!ENTITY event.recurrence.pattern.every.label "Каждый" >
+<!ENTITY repeat.units.days.both "день" >
+<!ENTITY event.recurrence.pattern.every.weekday.label "Каждый день недели" >
+
+<!ENTITY event.recurrence.pattern.weekly.every.label "Каждую" >
+<!ENTITY repeat.units.weeks.both "неделю" >
+<!ENTITY event.recurrence.on.label "в:" >
+
+<!ENTITY event.recurrence.pattern.monthly.every.label "Каждый" >
+<!ENTITY repeat.units.months.both "месяц" >
+<!ENTITY event.recurrence.monthly.every.label "Каждый" >
+<!ENTITY event.recurrence.monthly.first.label "первый">
+<!ENTITY event.recurrence.monthly.second.label "второй">
+<!ENTITY event.recurrence.monthly.third.label "третий">
+<!ENTITY event.recurrence.monthly.fourth.label "четвёртый">
+<!ENTITY event.recurrence.monthly.fifth.label "пятый">
+<!ENTITY event.recurrence.monthly.last.label "последний">
+<!ENTITY event.recurrence.pattern.monthly.week.1.label "Воскресенье" >
+<!ENTITY event.recurrence.pattern.monthly.week.2.label "Понедельник" >
+<!ENTITY event.recurrence.pattern.monthly.week.3.label "Вторник" >
+<!ENTITY event.recurrence.pattern.monthly.week.4.label "Среда" >
+<!ENTITY event.recurrence.pattern.monthly.week.5.label "Четверг" >
+<!ENTITY event.recurrence.pattern.monthly.week.6.label "Пятница" >
+<!ENTITY event.recurrence.pattern.monthly.week.7.label "Суббота" >
+<!ENTITY event.recurrence.repeat.dayofmonth.label "День месяца">
+<!ENTITY event.recurrence.repeat.recur.label "В следующие дни">
+
+<!ENTITY event.recurrence.every.label "Каждый:" >
+<!ENTITY repeat.units.years.both "год" >
+<!ENTITY event.recurrence.pattern.yearly.every.month.label "Каждый" >
+
+<!-- LOCALIZATON NOTE
+ Some languages use a preposition when describing dates:
+ Portuguese: 6 de Setembro
+ English: 6 [of] September
+ event.recurrence.pattern.yearly.of.label is "of" in
+ Edit recurrence window -> Recurrence pattern -> Repeat yearly
+-->
+<!ENTITY event.recurrence.pattern.yearly.of.label "" >
+
+<!ENTITY event.recurrence.pattern.yearly.month.1.label "Январь" >
+<!ENTITY event.recurrence.pattern.yearly.month.2.label "Февраль" >
+<!ENTITY event.recurrence.pattern.yearly.month.3.label "Март" >
+<!ENTITY event.recurrence.pattern.yearly.month.4.label "Апрель" >
+<!ENTITY event.recurrence.pattern.yearly.month.5.label "Май" >
+<!ENTITY event.recurrence.pattern.yearly.month.6.label "Июнь" >
+<!ENTITY event.recurrence.pattern.yearly.month.7.label "Июль" >
+<!ENTITY event.recurrence.pattern.yearly.month.8.label "Август" >
+<!ENTITY event.recurrence.pattern.yearly.month.9.label "Сентябрь" >
+<!ENTITY event.recurrence.pattern.yearly.month.10.label "Октябрь" >
+<!ENTITY event.recurrence.pattern.yearly.month.11.label "Ноябрь " >
+<!ENTITY event.recurrence.pattern.yearly.month.12.label "Декабрь" >
+<!ENTITY event.recurrence.yearly.every.label "Каждый">
+<!ENTITY event.recurrence.yearly.first.label "первый">
+<!ENTITY event.recurrence.yearly.second.label "второй">
+<!ENTITY event.recurrence.yearly.third.label "третий">
+<!ENTITY event.recurrence.yearly.fourth.label "четвёртый">
+<!ENTITY event.recurrence.yearly.fifth.label "пятый">
+<!ENTITY event.recurrence.yearly.last.label "последний">
+<!ENTITY event.recurrence.pattern.yearly.week.1.label "Воскресенье" >
+<!ENTITY event.recurrence.pattern.yearly.week.2.label "Понедельник" >
+<!ENTITY event.recurrence.pattern.yearly.week.3.label "Вторник" >
+<!ENTITY event.recurrence.pattern.yearly.week.4.label "Среда" >
+<!ENTITY event.recurrence.pattern.yearly.week.5.label "Четверг" >
+<!ENTITY event.recurrence.pattern.yearly.week.6.label "Пятница" >
+<!ENTITY event.recurrence.pattern.yearly.week.7.label "Суббота" >
+<!ENTITY event.recurrence.pattern.yearly.day.label "день" >
+<!ENTITY event.recurrence.of.label "" >
+<!ENTITY event.recurrence.pattern.yearly.month2.1.label "Январь" >
+<!ENTITY event.recurrence.pattern.yearly.month2.2.label "Февраль" >
+<!ENTITY event.recurrence.pattern.yearly.month2.3.label "Март" >
+<!ENTITY event.recurrence.pattern.yearly.month2.4.label "Апрель" >
+<!ENTITY event.recurrence.pattern.yearly.month2.5.label "Май" >
+<!ENTITY event.recurrence.pattern.yearly.month2.6.label "Июнь" >
+<!ENTITY event.recurrence.pattern.yearly.month2.7.label "Июль" >
+<!ENTITY event.recurrence.pattern.yearly.month2.8.label "Август" >
+<!ENTITY event.recurrence.pattern.yearly.month2.9.label "Сентябрь" >
+<!ENTITY event.recurrence.pattern.yearly.month2.10.label "Октябрь" >
+<!ENTITY event.recurrence.pattern.yearly.month2.11.label "Ноябрь" >
+<!ENTITY event.recurrence.pattern.yearly.month2.12.label "Декабрь" >
+
+<!ENTITY event.recurrence.range.label "Уровень повторений">
+<!ENTITY event.recurrence.forever.label "Нет конечной даты" >
+<!ENTITY event.recurrence.repeat.for.label "Повторять только" >
+<!ENTITY event.recurrence.appointments.label "раз" >
+<!ENTITY event.repeat.until.label "Повторять до" >
+
+<!-- Attendees dialog -->
+<!ENTITY invite.title.label "Приглашение участников">
+<!ENTITY event.organizer.label "Организатор">
+<!ENTITY event.freebusy.suggest.slot "Предложить отрезок времени:">
+<!ENTITY event.freebusy.button.next.slot "Следующий отрезок">
+<!ENTITY event.freebusy.button.previous.slot "Предыдущий отрезок">
+<!ENTITY event.freebusy.zoom "Масштаб:">
+<!ENTITY event.freebusy.legend.free "Свободен" >
+<!ENTITY event.freebusy.legend.busy "Занят" >
+<!ENTITY event.freebusy.legend.busy_tentative "Неопределено" >
+<!ENTITY event.freebusy.legend.busy_unavailable "Нет на месте" >
+<!ENTITY event.freebusy.legend.unknown "Нет информации" >
+<!ENTITY event.attendee.role.required "Обязательный участник">
+<!ENTITY event.attendee.role.optional "Необязательный уастник">
+<!ENTITY event.attendee.role.chair "Организатор">
+<!ENTITY event.attendee.role.nonparticipant "Не участник">
+<!ENTITY event.attendee.usertype.individual "Человек">
+<!ENTITY event.attendee.usertype.group "Группа">
+<!ENTITY event.attendee.usertype.resource "Ресурс">
+<!ENTITY event.attendee.usertype.room "Комната">
+<!ENTITY event.attendee.usertype.unknown "Неизвестно">
+
+<!-- Timezone dialog -->
+<!ENTITY timezone.title.label "Укажите часовой пояс">
+<!ENTITY event.timezone.custom.label "Дополнительные часовые пояса…">
+
+<!-- Read-Only dialog -->
+<!ENTITY read.only.general.label "Основные">
+<!ENTITY read.only.title.label "Название:">
+<!ENTITY read.only.calendar.label "Календарь:">
+<!ENTITY read.only.event.start.label "Дата начала:">
+<!ENTITY read.only.task.start.label "Дата начала:">
+<!ENTITY read.only.event.end.label "Дата окончания:">
+<!ENTITY read.only.task.due.label "Срок:">
+<!ENTITY read.only.repeat.label "Повторение:">
+<!ENTITY read.only.location.label "Место:">
+<!ENTITY read.only.category.label "Категория:">
+<!ENTITY read.only.organizer.label "Организатор:">
+<!ENTITY read.only.reminder.label "Напоминание:">
+<!ENTITY read.only.attachments.label "Вложения:">
+<!ENTITY read.only.attendees.label "Участники">
+<!ENTITY read.only.description.label "Описание">
+<!ENTITY read.only.link.label "Связанная ссылка">
+
+<!-- Summary dialog -->
+<!ENTITY summary.dialog.saveclose.label "Сохранить и закрыть">
+<!ENTITY summary.dialog.saveclose.tooltiptext "Сохранить изменения и закрыть окно без сохранения статуса участия и отправки ответа">
+<!ENTITY summary.dialog.accept.label "Принять">
+<!ENTITY summary.dialog.accept.tooltiptext "Принять приглашение">
+<!ENTITY summary.dialog.tentative.label "Ориентировочно">
+<!ENTITY summary.dialog.tentative.tooltiptext "Ориентировочно принять приглашение">
+<!ENTITY summary.dialog.decline.label "Отклонить">
+<!ENTITY summary.dialog.decline.tooltiptext "Отклонить приглашение">
+<!ENTITY summary.dialog.dontsend.label "Не отправлять ответ">
+<!ENTITY summary.dialog.dontsend.tooltiptext "Изменить мой статус участия без отправки ответа организатору и закрыть окно">
+<!ENTITY summary.dialog.send.label "Отправить ответ сейчас">
+<!ENTITY summary.dialog.send.tooltiptext "Отправить ответ организатору и закрыть окно">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog.properties
new file mode 100644
index 0000000000..bddda2c873
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-event-dialog.properties
@@ -0,0 +1,541 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (dailyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Daily repeat rules
+# #1 - number
+# e.g. "every 4 days"
+dailyEveryNth=каждый день;каждый #1 день
+repeatDetailsRuleDaily4=каждый будний день
+
+# LOCALIZATION NOTE (weeklyNthOnNounclass...)
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - weekday (one or more)
+# #2 - week interval
+# e.g. "every 3 weeks on Tuesday, Wednesday and Thursday
+weeklyNthOnNounclass1=каждый %1$S;каждую #2 неделю в %1$S
+weeklyNthOnNounclass2=каждую %1$S;каждую #2 неделю в %1$S
+
+# LOCALIZATION NOTE (weeklyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# #1 - interval
+# e.g. "every 5 weeks"
+weeklyEveryNth=каждую неделю;каждую #1 неделю
+
+# LOCALIZATION NOTE ('repeatDetailsDay...' and 'repeatDetailsDay...Nounclass'):
+# Week days names and week days noun classes (feminine/masculine grammatical
+# gender) for languages that need different localization when weekdays nouns
+# have different noun classes (genders).
+# For every weekday, in 'repeatDetailsDay...Nounclass' strings write:
+# "nounclass1" for languages with grammatical genders -> MASCULINE gender;
+# for languages with noun classes -> a noun class;
+# for languages without noun classes or grammatical gender.
+#
+# "nounclass2" for languages with grammatical genders -> FEMININE gender;
+# for languages with noun classes -> a different noun class.
+#
+# "nounclass3", "nounclass4" and so on for languages that need more than two
+# noun classes for weekdays. In this case add corresponding
+# rule string with "Nounclass..." suffix and ordinal string
+# "repeatOrdinalxNounclass..."
+# Will be used rule strings with "Nounclass..." suffix corresponding to the
+# following strings if there is a weekday in the rule string.
+repeatDetailsDay1=Воскресенье
+repeatDetailsDay1Nounclass=nounclass3
+repeatDetailsDay2=Понедельник
+repeatDetailsDay2Nounclass=nounclass1
+repeatDetailsDay3=Вторник
+repeatDetailsDay3Nounclass=nounclass1
+repeatDetailsDay4=Среду
+repeatDetailsDay4Nounclass=nounclass2
+repeatDetailsDay5=Четверг
+repeatDetailsDay5Nounclass=nounclass1
+repeatDetailsDay6=Пятницу
+repeatDetailsDay6Nounclass=nounclass2
+repeatDetailsDay7=Субботу
+repeatDetailsDay7Nounclass=nounclass2
+
+# LOCALIZATION NOTE (repeatDetailsAnd)
+# Used to show a number of weekdays in a list
+# i.e. "Sunday, Monday, Tuesday " + and + " Wednesday"
+repeatDetailsAnd=и
+
+# LOCALIZATION NOTE (monthlyRuleNthOfEveryNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# Translate these strings according to noun class/gender of weekday (%2$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - list of weekdays with ordinal, article and noun class/gender
+# (ordinal and weekday of every element in the list follow the order
+# and the rule of ordinalWeekdayOrder string)
+# #2 - interval
+# e.g. "the first Monday and the last Friday of every 3 months"
+monthlyRuleNthOfEveryNounclass1=%1$S каждого месяца;%1$S каждого #2 месяца
+monthlyRuleNthOfEveryNounclass2=%1$S каждого месяца;%1$S каждого #2 месяца
+
+# LOCALIZATION NOTE (ordinalWeekdayOrder):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# This string allows to change the order of the elements "ordinal" and
+# "weekday" (or to insert a word between them) for the argument %1$S of the
+# string monthlyRuleNthOfEveryNounclass...
+# Without changing this string, the order is that one required from most
+# languages: ordinal + weekday (e.g. "'the first' 'Monday' of every 2 months").
+# %1$S - ordinal with article
+# %2$S - weekday noun
+# e.g. "'the first' 'Monday'"
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+ordinalWeekdayOrder=%1$S %2$S
+
+# LOCALIZATION NOTE (monthlyEveryOfEveryNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - list of single weekdays and/or weekdays with ordinal, article and
+# noun class/gender when rule contains also specific day in the month
+# #2 - interval
+# e.g. "every Monday, Tuesday and the second Sunday of every month"
+monthlyEveryOfEveryNounclass1=каждый %1$S каждого месяца;каждый %1$S каждого #2 месяца
+monthlyEveryOfEveryNounclass2=каждую %1$S каждого месяца;каждую %1$S каждого #2 месяца
+
+# LOCALIZATION NOTE (monthlyDaysOfNth_day):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - day of month or a sequence of days of month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties) separated with commas;
+# e.g. "days 3, 6 and 9" or "days 3rd, 6th and 9th"
+monthlyDaysOfNth_day=день %1$S;дни %1$S
+
+# LOCALIZATION NOTE (monthlyDaysOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - it's the string monthlyDaysOfNth_day: day of month or a sequence of days
+# of month, possibly followed by an ordinal symbol, separated with commas;
+# #2 - monthly interval
+# e.g. "days 3, 6, 9 and 12 of every 3 months"
+monthlyDaysOfNth=%1$S каждого месяца;%1$S каждого #2 месяца
+
+# LOCALIZATION NOTE (monthlyLastDayOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - day of month
+# #2 - month interval
+# e.g. "the last day of every 3 months"
+monthlyLastDayOfNth=в последний день месяца;в последний день каждого #1 месяца
+
+# LOCALIZATION NOTE (monthlyEveryDayOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# #2 - month interval
+# e.g. "every day of the month every 4 months"
+monthlyEveryDayOfNth=каждый день каждого месяца;каждый день месяца каждый #2 месяц
+
+# LOCALIZATION NOTE (repeatOrdinal...Nounclass...):
+# Ordinal numbers nouns for every noun class (grammatical genders) of weekdays
+# considered in 'repeatDetailsDayxNounclass' strings. For languages that need
+# localization according to genders or noun classes.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add 'repeatOrdinal...Nounclass' strings with suffix 3, 4 and so on for
+# languages with more than two noun classes for weekdays. In this case
+# must be added corresponding rule strings with 'Nounclass...' suffix and
+# corresponding values "nounclass..." must be written in
+# 'repeatDetailsDayxNounclass' strings.
+repeatOrdinal1Nounclass1=первый
+repeatOrdinal2Nounclass1=второй
+repeatOrdinal3Nounclass1=третий
+repeatOrdinal4Nounclass1=четвёртый
+repeatOrdinal5Nounclass1=пятый
+repeatOrdinal-1Nounclass1=последний
+repeatOrdinal1Nounclass2=первую
+repeatOrdinal2Nounclass2=вторую
+repeatOrdinal3Nounclass2=третью
+repeatOrdinal4Nounclass2=четвёртую
+repeatOrdinal5Nounclass2=пятую
+repeatOrdinal-1Nounclass2=последнюю
+
+# LOCALIZATION NOTE (yearlyNthOn):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# %1$S - month name
+# %2$S - day of month possibly followed by an ordinal symbol (depending on the string
+# dayOrdinalSymbol in dateFormat.properties)
+# #3 - yearly interval
+# e.g. "every 3 years on December 14"
+# "every 2 years on December 8th"
+yearlyNthOn=каждого %2$S %1$S;каждые #3 года %2$S %1$S
+
+# LOCALIZATION NOTE (yearlyNthOnNthOfNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# Translate these strings according to noun class/gender of weekday (%2$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - ordinal with article and noun class/gender corresponding to weekday
+# %2$S - weekday
+# %3$S - month
+# #4 - yearly interval
+# e.g. "the second Monday of every March"
+# e.g "every 3 years the second Monday of March"
+yearlyNthOnNthOfNounclass1=в %1$S %2$S каждого %3$S;каждые #4 года в %1$S %2$S %3$S
+yearlyNthOnNthOfNounclass2=в %1$S %2$S каждого %3$S;каждые #4 года в %1$S %2$S %3$S
+
+# LOCALIZATION NOTE (yearlyOnEveryNthOfNthNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - weekday
+# %2$S - month
+# #3 - yearly interval
+# e.g. "every Thursday of March"
+# e.g "every 3 years on every Thursday of March"
+yearlyOnEveryNthOfNthNounclass1=каждый %1$S %2$S;каждые #3 года в каждый %1$S %2$S
+yearlyOnEveryNthOfNthNounclass2=каждая %1$S %2$S;каждые #3 года в каждую %1$S %2$S
+
+#LOCALIZATION NOTE (yearlyEveryDayOf):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# This string describes part of a yearly rule which includes every day of a month.
+# %1$S - month
+# #2 - yearly interval
+# e.g. "every day of December"
+# e.g. "every 3 years every day of December"
+yearlyEveryDayOf=каждый день %1$S;каждые #2 года в каждый день %1$S
+
+repeatDetailsMonth1=Января
+repeatDetailsMonth2=Февраля
+repeatDetailsMonth3=Марта
+repeatDetailsMonth4=Апреля
+repeatDetailsMonth5=Мая
+repeatDetailsMonth6=Июня
+repeatDetailsMonth7=Июля
+repeatDetailsMonth8=Августа
+repeatDetailsMonth9=Сентября
+repeatDetailsMonth10=Октября
+repeatDetailsMonth11=Ноября
+repeatDetailsMonth12=Декабря
+
+# LOCALIZATION NOTE (repeatCount):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event start time (e.g. hh:mm (PM/AM))
+# %4$S - event end time (e.g. hh:mm (PM/AM))
+# #5 - event occurence times: number
+# e.g. with monthlyRuleNthOfEvery:
+# "Occurs the first Sunday of every 3 month
+# only on 1/1/2009"
+# from 5:00 PM to 6:00 PM"
+# "Occurs the first Sunday of every 3 month
+# effective 1/1/2009 for 5 times
+# from 5:00 PM to 6:00 PM"
+repeatCount=Происходит %1$S\n#5 раз начиная с %2$S\nс %3$S по %4$S.;Происходит %1$S\n#5 раз начиная с %2$S\nс %3$S до %4$S.
+
+# LOCALIZATION NOTE (repeatCountAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# #3 - event occurence times: number
+# e.g. with monthlyRuleNthOfEvery:
+# "Occurs the first Sunday of every 3 month
+# only on 1/1/2009"
+# "Occurs the first Sunday of every 3 month
+# effective 1/1/2009 for 5 times"
+repeatCountAllDay=Происходит %1$S\n#3 раз начиная с %2$S.;Происходит %1$S\n#3 раз начиная с %2$S.
+
+# LOCALIZATION NOTE (repeatDetailsUntil):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event end date (e.g. mm/gg/yyyy)
+# %4$S - event start time (e.g. hh:mm (PM/AM))
+# %5$S - event end time (e.g. hh:mm (PM/AM))
+# e.g. with weeklyNthOn:
+# "Occurs every 2 weeks on Sunday and Friday
+# effective 1/1/2009 until 1/1/2010
+# from 5:00 PM to 6:00 PM"
+repeatDetailsUntil=Происходит %1$S\nначиная с %2$S по %3$S\nс %4$S до %5$S.
+
+# LOCALIZATION NOTE (repeatDetailsUntilAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event end date (e.g. mm/gg/yyyy)
+# e.g. with monthlyDaysOfNth and all day event:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009 until 1/1/2010"
+repeatDetailsUntilAllDay=Происходит %1$S\nначиная с %2$S по %3$S.
+
+# LOCALIZATION NOTE (repeatDetailsInfinite):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event start time (e.g. hh:mm (PM/AM))
+# %4$S - event end time (e.g. hh:mm (PM/AM))
+# e.g. with monthlyDaysOfNth:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009
+# from 5:00 PM to 6:00 PM"
+repeatDetailsInfinite=Происходит %1$S\nначиная с %2$S\nс %3$S до %4$S.
+
+# LOCALIZATION NOTE (repeatDetailsInfiniteAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# e.g. with monthlyDaysOfNth and all day event:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009"
+repeatDetailsInfiniteAllDay=Происходит %1$S\nначиная с %2$S.
+
+# LOCALIZATION NOTE (monthlyLastDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# A monthly rule with one or more days of the month (monthlyDaysOfNth) and the
+# string "the last day" of the month.
+# e.g.: "Occurs day 15, 20, 25 and the last day of every 3 months"
+monthlyLastDay=в последний день
+
+# LOCALIZATION NOTE (ruleTooComplex):
+# This string is shown in the repeat details area if our code can't handle the
+# complexity of the recurrence rule yet.
+ruleTooComplex=Показать подробности
+
+# LOCALIZATION NOTE (ruleTooComplexSummary):
+# This string is shown in the event summary dialog if our code can't handle the
+# complexity of the recurrence rule yet.
+ruleTooComplexSummary=Подробности повторения неизвестны
+
+# differences between the dialog for an Event or a Task
+newEvent=Новое событие
+newTask=Новая задача
+itemMenuLabelEvent=Событие
+itemMenuAccesskeyEvent2=С
+itemMenuLabelTask=Задача
+itemMenuAccesskeyTask2=З
+
+emailSubjectReply=Re: %1$S
+
+# Link Location Dialog
+specifyLinkLocation=Укажите адрес ссылки
+enterLinkLocation=Введите адрес веб-страницы или укажите расположение документа.
+
+summaryDueTaskLabel=Срок:
+
+# Attach File Dialog
+attachViaFilelink=Вложить файл с помощью %1$S
+selectAFile=Вложить файл(ы)
+removeCalendarsTitle=Удаление вложений
+
+# LOCALIZATION NOTE (removeAttachmentsText): Semi-colon list of plural forms for
+# prompting attachment removal.
+# See http://developer.mozilla.org/en/Localization_and_Plurals
+removeAttachmentsText=Вы действительно хотите удалить #1 вложение?;Вы действительно хотите удалить #1 вложения?;Вы действительно хотите удалить #1 вложений?
+
+# Recurrence Dialog Widget Order
+# LOCALIZATION NOTE: You can change the order of below params
+# Edit recurrence window -> Recurrence pattern -> Repeat monthly
+# %1$S - ordinal with article, %2$S - weekday
+# e.g. "the First Saturday"
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+monthlyOrder=%1$S %2$S
+
+# Edit recurrence window -> Recurrence pattern -> Repeat yearly
+# %1$S - day of month, %2$S - of, %3$S - month
+# e.g. "6 [of] September"
+# If you don't need %2$S in your locale - please put this on the third place.
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+yearlyOrder=%1$S %3$S %2$S
+
+# Edit recurrence window -> Recurrence pattern -> Repeat yearly
+# %1$S - ordinal with article, %2$S - weekday, %3$S - of, %4$S - month
+# e.g. "the First Saturday of September"
+# If you don't need %3$S in your locale - please put this on the third place.
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+yearlyOrder2=%1$S %2$S %4$S %3$S
+
+# LOCALIZATION NOTE (pluralForWeekdays):
+# This string allows to set the use of weekdays nouns in plural form for
+# languages that need them in sentences like "every Monday" or "every Sunday
+# of March" etc.
+# Rule strings involved by this setting are:
+# - weeklyNthOn (only the first part) e.g. "every Sunday"
+# - monthlyEveryOfEvery
+# e.g. "every Monday of every month;every Monday every 2 months"
+# - yearlyOnEveryNthOfNth
+# e.g. "every Friday of March;every 2 years on every Friday of March"
+# In your local write:
+# "true" if sentences like those above need weekday in plural form;
+# "false" if sentences like those above don't need weekday in plural form;
+pluralForWeekdays=false
+
+# LOCALIZATION NOTE (repeatDetailsDayxxxPlural):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# Weekdays in plural form used inside sentences like "every Monday" or
+# "every Sunday of May" etc. for languages that need them.
+# These plurals will be used inside the following rule strings only if string
+# 'pluralForWeekdays' (see above) is set to "true":
+# - weeklyNthOn (only the first part) e.g. "every Sunday"
+# - monthlyEveryOfEvery
+# e.g. "every Monday of every month;every Monday every 2 months"
+# - yearlyOnEveryNthOfNth
+# e.g. "every Friday of March;every 2 years on every Friday of March"
+repeatDetailsDay1Plural=Воскресенье
+repeatDetailsDay2Plural=Понедельник
+repeatDetailsDay3Plural=Вторник
+repeatDetailsDay4Plural=Среда
+repeatDetailsDay5Plural=Четверг
+repeatDetailsDay6Plural=Пятница
+repeatDetailsDay7Plural=Суббота
+
+# LOCALIZATION NOTE (eventRecurrenceForeverLabel):
+# Edit/New Event dialog -> datepicker that sets the until date.
+# For recurring rules that repeat forever, this labels appears in the
+# datepicker, below the minimonth, as an option for the until date.
+eventRecurrenceForeverLabel=Всегда
+
+# LOCALIZATION NOTE (eventRecurrenceMonthlyLastDayLabel):
+# Edit dialog recurrence -> Monthly Recurrence pattern -> Monthly daypicker
+# The label on the monthly daypicker's last button that allows to select
+# the last day of the month inside a BYMONTHDAY rule.
+eventRecurrenceMonthlyLastDayLabel=Последний день
+
+# LOCALIZATION NOTE (counterSummaryAccepted) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryAccepted=%1$S принял приглашение, но сделал встречное предложение:
+
+# LOCALIZATION NOTE (counterSummaryDeclined) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryDeclined=%1$S отклонил приглашение, но сделал встречное предложение:
+
+# LOCALIZATION NOTE (counterSummaryDelegated) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryDelegated=%1$S делегировал приглашение, но сделал встречное предложение:
+
+# LOCALIZATION NOTE (counterSummaryNeedsAction) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryNeedsAction=%1$S не решил, участвовать ли, и сделал встречное предложение:
+
+# LOCALIZATION NOTE (counterSummaryTentative) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryTentative=%1$S только ориентировочно принял приглашение и сделал встречное предложение:
+
+# LOCALIZATION NOTE (counterOnPreviousVersionNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnPreviousVersionNotification=Это встречное предложение для предыдущей версии этого события.
+
+# LOCALIZATION NOTE (counterOnCounterDisallowedNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnCounterDisallowedNotification=Вы запретили выдвигать встречные предложения при отправке этого приглашения.
+
+# LOCALIZATION NOTE (eventAccepted) - this will be displayed as notification
+# in the summary dialog if the user has accepted the event invitation
+eventAccepted=Вы приняли это приглашение
+
+# LOCALIZATION NOTE (eventTentative) - this will be displayed as notification
+# in the summary dialog if the user has accepted the event invitation tentatively
+eventTentative=Вы ориентировочно приняли это приглашение
+
+# LOCALIZATION NOTE (eventDeclined) - this will be displayed as notification
+# in the summary dialog if the user has declined the event invitation
+eventDeclined=Вы отклонили это приглашение
+
+# LOCALIZATION NOTE (eventDelegated) - this will be displayed as notification
+# in the summary dialog if the user has delegated his/her participation to one
+# or more other participants (without attending / working on it his/herself)
+eventDelegated=Вы делегировали это приглашение
+
+# LOCALIZATION NOTE (eventNeedsAction) - this will be displayed as notification
+# in the summary dialog if the user hasn't yet responded to an invitation
+eventNeedsAction=Вы пока не ответили на это приглашение
+
+# LOCALIZATION NOTE (taskAccepted) - this will be displayed as notification
+# in the summary dialog if the user has accepted the assigned task
+taskAccepted=Вы приняли работу над этой задачей
+
+# LOCALIZATION NOTE (taskTentative) - this will be displayed as notification
+# in the summary dialog if the user has accepted tentatively the assigned task
+taskTentative=Вы ориентировочно приняли работу над этой задачей
+
+# LOCALIZATION NOTE (taskDeclined) - this will be displayed as notification
+# in the summary dialog if the user has declined the assigned task
+taskDeclined=Вы отклонили работу над этой задачей
+
+# LOCALIZATION NOTE (taskDelegated) - this will be displayed as notification
+# in the summary dialog if the user has delegated his/her assignement to one or
+# more others (without attending / working on it his/herself)
+taskDelegated=Вы делегировали работу над этой задачей
+
+# LOCALIZATION NOTE (taskNeedsAction) - this will be displayed as notification
+# in the summary dialog if the user hasn't yet responded to the task assignment
+taskNeedsAction=Вы пока не ответили на назначение этой задачи
+
+# LOCALIZATION NOTE (taskInProgress) - this will be displayed as notification
+# in the summary dialog if the user is working on an assigned task
+taskInProgress=Вы начали работу над назначенной задачей
+
+# LOCALIZATION NOTE (taskCompleted) - this will be displayed as notification
+# in the summary dialog if the user has completed the work on this assigned task
+taskCompleted=Вы завершили свою работу над назначенной задачей
+
+# LOCALIZATION NOTE (sendandcloseButtonLabel) - this is a runtime replacement for
+# event.toolbar.saveandclose.label in the event dialog/tab toolbar if attendees
+# will be notified on saving & closing
+sendandcloseButtonLabel=Отправить и закрыть
+
+# LOCALIZATION NOTE (sendandcloseButtonTooltip) - this is a runtime replacement for
+# event.toolbar.saveandclose.tooltip in the event dialog/tab toolbar if attendees
+# will be notified on saving & closing
+sendandcloseButtonTooltip=Уведомить участников и закрыть
+
+# LOCALIZATION NOTE (saveandsendButtonLabel) - this is a runtime replacement for
+# event.toolbar.save.label2 in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendButtonLabel=Сохранить и отправить
+
+# LOCALIZATION NOTE (saveandsendButtonTooltip) - this is a runtime replacement
+# for event.toolbar.save.tooltip2 in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendButtonTooltip=Сохранить и уведомить участников
+
+# LOCALIZATION NOTE (saveandsendMenuLabel) - this is a runtime replacement for
+# event.menu.item.save.label in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendMenuLabel=Сохранить и отправить
+
+# LOCALIZATION NOTE (sendandcloseMenuLabel) - this is a runtime replacement for
+# event.menu.item.saveandclose.label in the event dialog/tab toolbar if attendees
+# will be notified on saving
+sendandcloseMenuLabel=Отправить и закрыть
+
+# LOCALIZATION NOTE (attendeesTabLabel) - this is a runtime replacement for
+# event.attendees.label defined in calendar-event-dialog.dtd and used in the
+# event dialog/tab as attendee tab label if an event has at least one attendee
+# %1$S - the number of attendee (1-n)
+attendeesTabLabel=Участники (%1$S):
+
+# LOCALIZATION NOTE (attachmentsTabLabel) - this is a runtime replacement for
+# event.attachments.label defined in calendar-event-dialog.dtd and used in the
+# event dialog/tab as attendee tab label if an event has at least one attachment
+# %1$S - the number of attachments (1-n)
+attachmentsTabLabel=Вложения (%1$S):
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-extract.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-extract.properties
new file mode 100644
index 0000000000..8d21b9552f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-extract.properties
@@ -0,0 +1,294 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE:
+# Strings here are used to create events and tasks with start and end times
+# based on email content.
+# None of the strings are displayed in the user interface.
+#
+# You don't have to fill all from.*, until.*, *.prefix and *.suffix patterns.
+# It's ok to leave some empty.
+# Please consider declensions and gender if your language has them.
+# Don't just translate directly. The number of variants doesn't have to be
+# the same as in en-US. All of 0, 1, 2, etc is allowed in patterns except alphabet
+# pattern. You can and should add language specific variants.
+#
+# There are two different ways to find a start time text in email:
+# 1) it matches a from.* pattern and does not have end.prefix or end.suffix next to it
+# 2) it matches until.* pattern and has start.prefix or start.suffix next to it
+# Similar inverse logic applies to end times.
+# These rules enable using prefix and suffix values with only start.* or only until.*
+# patterns localized for some languages and thus not having to repeat the same
+# values in both.
+#
+# Patterns are partially space-insensitive.
+# "deadline is" pattern will find both "deadlineis" and "deadline is"
+# but "deadlineis" won't find "deadline is" or "deadline is".
+# Therefore you should include all spaces that are valid within a pattern.
+
+# LOCALIZATION NOTE (start.prefix):
+# datetimes with these in front are extracted as start times
+# can be a list of values, separate variants by |
+start.prefix =с | от
+
+# LOCALIZATION NOTE (start.suffix):
+# datetimes followed by these are extracted as start times
+start.suffix =
+
+# LOCALIZATION NOTE (end.prefix):
+# datetimes with these in front are extracted as end times
+end.prefix = по | до
+
+# LOCALIZATION NOTE (end.suffix):
+# datetimes followed by these are extracted as end times
+# can be a list of values, separate variants by |
+end.suffix =
+
+# LOCALIZATION NOTE (no.datetime.prefix):
+# datetimes with these in front won't be used
+# specify full words here
+no.datetime.prefix = на прошлой неделе | отправлено | взамен | > | не
+
+# LOCALIZATION NOTE (no.datetime.suffix):
+# datetimes followed by these won't be used
+no.datetime.suffix = этаж | этаже | : | > | % | долл | руб | евро
+
+# LOCALIZATION NOTE (from.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (from.today):
+# must not be empty!
+from.today = сегодня
+
+from.tomorrow = завтра
+# LOCALIZATION NOTE (until.*):
+# can be a list of values, separate variants by |
+until.tomorrow =завтра
+
+# LOCALIZATION NOTE (from.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+# should not have "#1" as this would match any single number in email to a time
+from.ordinal.date =
+
+# LOCALIZATION NOTE (until.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+until.ordinal.date =
+
+from.noon = полудня
+until.noon =полудня
+
+# LOCALIZATION NOTE (from.hour):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should not have "#1" as this would match any single number in email to a time
+from.hour = в #1 | около #1 | #1 - | #1 по
+
+# LOCALIZATION NOTE (until.hour):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour = - #1 | до #1 | по #1
+
+# LOCALIZATION NOTE (from.hour.am):
+# #1 = matches numbers 0-23 and number.0-number.23
+from.hour.am =
+
+# LOCALIZATION NOTE (until.hour.am):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour.am =
+
+# LOCALIZATION NOTE (from.hour.pm):
+# #1 = matches numbers 0-23 and number.0-number.23
+from.hour.pm =
+
+# LOCALIZATION NOTE (until.hour.pm):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour.pm =
+
+# LOCALIZATION NOTE (from.half.hour.before):
+# denotes times 30 minutes before next full hour
+from.half.hour.before = за полчаса до #1
+
+# LOCALIZATION NOTE (until.half.hour.before):
+# denotes times 30 minutes before next full hour
+until.half.hour.before =
+
+# LOCALIZATION NOTE (from.half.hour.after):
+# denotes times 30 minutes after last full hour
+from.half.hour.after = полчаса после #1
+
+# LOCALIZATION NOTE (until.half.hour.after):
+# denotes times 30 minutes after last full hour
+until.half.hour.after =
+
+# LOCALIZATION NOTE (from.hour.minutes):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes = #1:#2 | с #1#2
+
+# LOCALIZATION NOTE (until.hour.minutes):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes =#1:#2 | по #1#2
+
+# LOCALIZATION NOTE (from.hour.minutes.am):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes.am =
+
+# LOCALIZATION NOTE (until.hour.minutes.am):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes.am =
+
+# LOCALIZATION NOTE (from.hour.minutes.pm):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes.pm =
+
+# LOCALIZATION NOTE (until.hour.minutes.pm):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes.pm =
+
+# LOCALIZATION NOTE (from.monthname.day):
+# #1 = matches numbers 1-31 and number.x
+# #2 = matches monthname
+from.monthname.day = #1 #2 | #2 #1
+
+# LOCALIZATION NOTE (until.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+until.monthname.day =
+
+# LOCALIZATION NOTE (from.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+from.month.day = #2.#1
+
+# LOCALIZATION NOTE (until.month.day):
+# #1 = matches numbers 1-31 and number.x
+# #2 = matches numbers 1-12
+until.month.day =
+
+# LOCALIZATION NOTE (from.year.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+# #3 = matches 2/4 numbers
+from.year.month.day = #1.#2.#3 | #3-#2-#1 | #1-#2-#3
+
+# LOCALIZATION NOTE (until.year.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+# #3 = matches 2/4 numbers
+until.year.month.day =
+
+# LOCALIZATION NOTE (from.year.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+# #3 = matches 2/4 numbers
+from.year.monthname.day = #1 #2 #3 | #1 #2, #3
+
+# LOCALIZATION NOTE (until.year.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+# #3 = matches 2/4 numbers
+until.year.monthname.day =
+
+# LOCALIZATION NOTE (duration.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (duration.minutes):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.minutes = #1 минута | #1 минуты | #1 минут | #1 мин
+
+# LOCALIZATION NOTE (duration.hours):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.hours = #1 час | #1 часа | #1 часов
+
+# LOCALIZATION NOTE (duration.days):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.days = #1 день | #1 дня | #1 дней
+
+# LOCALIZATION NOTE (month.*):
+# can be a list of values, separate variants by |
+month.1 = январь | января | янв.
+month.2 = февраль | февраля | фев.
+month.3 = март | марта | мар.
+month.4 = апрель | апреля | апр.
+month.5 = май | мая
+month.6 = июнь | июня | июн.
+month.7 = июль | июля | июл.
+month.8 = август | августа| авг.
+month.9 = сентябрь |сентября | сент. | сен.
+month.10 = октябрь | октября| окт.
+month.11 = ноябрь | ноября | ноя.
+month.12 = декабрь | декабря | дек.
+
+# LOCALIZATION NOTE (from.weekday.*):
+# used to derive start date based on weekdays mentioned
+# can be a list of values, separate variants by |
+# LOCALIZATION NOTE (from.weekday.0):
+# Regardless of what the first day of the week is in your country, 0 is Sunday here.
+from.weekday.0 = воскресенье | воскресенья
+from.weekday.1 = понедельник | понедельника
+from.weekday.2 = вторник | вторника
+from.weekday.3 = среда | среды
+from.weekday.4 = четверг | четверга
+from.weekday.5 = пятница | пятницы
+from.weekday.6 = суббота | субботы
+
+# LOCALIZATION NOTE (until.weekday.*):
+# used to derive end date based on weekdays mentioned
+# can be a list of values, separate variants by |
+# LOCALIZATION NOTE (until.weekday.0):
+# Regardless of what the first day of the week is in your country, 0 is Sunday here.
+until.weekday.0 =
+until.weekday.1 =
+until.weekday.2 =
+until.weekday.3 =
+until.weekday.4 =
+until.weekday.5 =
+until.weekday.6 =
+
+# LOCALIZATION NOTE (number.*):
+# used within other patterns to understand dates where day of month isn't written with digits
+# can be a list of values, separate variants by |
+number.0 =
+number.1 = первый | первого
+number.2 = второй | второго
+number.3 = третий | третьего
+number.4 = четвертый | четвертого
+number.5 = пятый | пятого
+number.6 = шестой | шестого
+number.7 = седьмой | седьмого
+number.8 = восьмой | восьмого
+number.9 = девятый| девятого
+number.10 = десятый | десятого
+number.11 = одиннадцатый | одиннадцатого
+number.12 = двенадцатый | двенадцатого
+number.13 = тринадцатый | тринадцатого
+number.14 = четырнадцатый | четырнадцатого
+number.15 = пятнадцатый | пятнадцатого
+number.16 = шестнадцатый | шестнадцатого
+number.17 = семнадцатый | семнадцатого
+number.18 = восемнадцатый | восемнадцатого
+number.19 = девятнадцатый | девятнадцатого
+number.20 = двадцатый | двадцатого
+number.21 = двадцать первый | двадцать первого
+number.22 = двадцать второй | двадцать второго
+number.23 = двадцать третий | двадцать третьего
+number.24 = двадцать четвертый | двадцать четвертого
+number.25 = двадцать пятый | двадцать пятого
+number.26 = двадцать шестой | двадцать шестого
+number.27 = двадцать седьмой | двадцать седьмого
+number.28 = двадцать восьмой | двадцать восьмого
+number.29 = двадцать девятый | двадцать девятого
+number.30 = тридцатый | тридцатого
+number.31 = тридцать первый| тридцать первого
+
+# LOCALIZATION NOTE (alphabet):
+# list all lower and uppercase letters if your language has an alphabet
+# otherwise leave it empty
+alphabet = абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-invitations-dialog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-invitations-dialog.dtd
new file mode 100644
index 0000000000..724988e333
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-invitations-dialog.dtd
@@ -0,0 +1,19 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/.
+-->
+
+<!-- Calendar Invitations Dialog -->
+<!ENTITY calendar.invitations.dialog.invitations.text "Приглашения">
+<!ENTITY calendar.invitations.dialog.statusmessage.updating.text "Обновление списка приглашений.">
+<!ENTITY calendar.invitations.dialog.statusmessage.noinvitations.text "Не найдено не подтвержденнных приглашений.">
+
+<!-- Calendar Invitations List -->
+<!ENTITY calendar.invitations.list.accept.button.label "Принять">
+<!ENTITY calendar.invitations.list.decline.button.label "Отклонить">
+<!ENTITY calendar.invitations.list.recurrentevent.text "Повторяющееся событие">
+<!ENTITY calendar.invitations.list.alldayevent.text "Весь день">
+<!ENTITY calendar.invitations.list.location.text "Место: ">
+<!ENTITY calendar.invitations.list.organizer.text "Организатор: ">
+<!ENTITY calendar.invitations.list.attendee.text "Участник: ">
+<!ENTITY calendar.invitations.list.none.text "нет">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-invitations-dialog.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-invitations-dialog.properties
new file mode 100644
index 0000000000..a6edf520ec
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-invitations-dialog.properties
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+allday-event=Весь день
+recurrent-event=Повторяющееся событие
+location=Расположение: %S
+organizer=Организатор: %S
+attendee=Участник: %S
+none=Нет
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-occurrence-prompt.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-occurrence-prompt.dtd
new file mode 100644
index 0000000000..c1490192b5
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-occurrence-prompt.dtd
@@ -0,0 +1,7 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY buttons.occurrence.accesskey "т">
+<!ENTITY buttons.allfollowing.accesskey "о">
+<!ENTITY buttons.parent.accesskey "л">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-occurrence-prompt.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-occurrence-prompt.properties
new file mode 100644
index 0000000000..19786250d8
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar-occurrence-prompt.properties
@@ -0,0 +1,53 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+header.isrepeating.event.label=повторяющееся событие
+header.isrepeating.task.label=повторяющаяся задача
+header.containsrepeating.event.label=содержит повторяющиеся события
+header.containsrepeating.task.label=содержит повторяющиеся задачи
+header.containsrepeating.mixed.label=содержит повторяющиеся элементы различного вида
+
+windowtitle.event.copy=Копировать повторяющееся событие
+windowtitle.task.copy=Копировать повторяющуюся задачу
+windowtitle.mixed.copy=Копировать повторяющиеся элементы
+windowtitle.event.cut=Вырезать повторяющееся событие
+windowtitle.task.cut=Вырезать повторяющуюся задачу
+windowtitle.mixed.cut=Вырезать повторяющиеся элементы
+windowtitle.event.delete=Удалить повторяющееся событие
+windowtitle.task.delete=Удалить повторяющуюся задачу
+windowtitle.mixed.delete=Удалить повторяющиеся элементы
+windowtitle.event.edit=Изменить повторяющееся событие
+windowtitle.task.edit=Изменить повторяющуюся задачу
+windowtitle.mixed.edit=Изменить повторяющиеся элементы
+windowtitle.multipleitems=Выбранные элементы
+
+buttons.single.occurrence.copy.label=Копировать только этот повтор
+buttons.single.occurrence.cut.label=Вырезать только этот повтор
+buttons.single.occurrence.delete.label=Удалить только этот повтор
+buttons.single.occurrence.edit.label=Изменить только этот повтор
+
+buttons.multiple.occurrence.copy.label=Копировать только выбранные повторы
+buttons.multiple.occurrence.cut.label=Вырезать только выбранные повторы
+buttons.multiple.occurrence.delete.label=Удалить только выбранные повторы
+buttons.multiple.occurrence.edit.label=Изменить только выбранные повторы
+
+buttons.single.allfollowing.copy.label=Копировать этот и все будущие повторы
+buttons.single.allfollowing.cut.label=Вырезать этот и все будущие повторы
+buttons.single.allfollowing.delete.label=Удалить этот и все будущие повторы
+buttons.single.allfollowing.edit.label=Изменить этот и все будущие повторы
+
+buttons.multiple.allfollowing.copy.label=Копировать этот и все будущие повторы
+buttons.multiple.allfollowing.cut.label=Вырезать этот и все будущие повторы
+buttons.multiple.allfollowing.delete.label=Удалить этот и все будущие повторы
+buttons.multiple.allfollowing.edit.label=Изменить этот и все будущие повторы
+
+buttons.single.parent.copy.label=Копировать все повторы
+buttons.single.parent.cut.label=Вырезать все повторы
+buttons.single.parent.delete.label=Удалить все повторы
+buttons.single.parent.edit.label=Изменить все повторы
+
+buttons.multiple.parent.copy.label=Копировать все повторы выбранных элементов
+buttons.multiple.parent.cut.label=Вырезать все повторы выбранных элементов
+buttons.multiple.parent.delete.label=Удалить все повторы выбранных элементов
+buttons.multiple.parent.edit.label=Изменить все повторы выбранных элементов
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar.dtd
new file mode 100644
index 0000000000..a93fd30f3c
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar.dtd
@@ -0,0 +1,354 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- General -->
+<!ENTITY calendar.calendar.label "Календарь">
+<!ENTITY calendar.calendar.accesskey "К">
+
+<!ENTITY calendar.newevent.button.tooltip "Создать новое событие" >
+<!ENTITY calendar.newtask.button.tooltip "Создать новую задачу" >
+
+<!ENTITY calendar.unifinder.showcompletedtodos.label "Показать выполненные задачи">
+
+<!ENTITY calendar.today.button.label "Сегодня">
+<!ENTITY calendar.tomorrow.button.label "Завтра">
+
+<!ENTITY calendar.events.filter.all.label "Все события">
+<!ENTITY calendar.events.filter.today.label "События на сегодня">
+<!ENTITY calendar.events.filter.future.label "Все будущие события">
+<!ENTITY calendar.events.filter.current.label "События на выбранный день">
+<!ENTITY calendar.events.filter.currentview.label "События в текущем обзоре">
+<!ENTITY calendar.events.filter.next7Days.label "События на следующие 7 дней">
+<!ENTITY calendar.events.filter.next14Days.label "События на следующие 14 дней">
+<!ENTITY calendar.events.filter.next31Days.label "События на следующий 31 день">
+<!ENTITY calendar.events.filter.thisCalendarMonth.label "События на этот месяц">
+
+<!-- LOCALIZATION NOTE(calendar.unifinder.tree.done.tooltip)
+ - This label and tooltip is used for the column with the checkbox in the
+ - task tree view. -->
+<!ENTITY calendar.unifinder.tree.done.label "Готово">
+<!ENTITY calendar.unifinder.tree.done.tooltip2 "Сортировка по готовности">
+<!ENTITY calendar.unifinder.tree.priority.label "Важность">
+<!ENTITY calendar.unifinder.tree.priority.tooltip2 "Сортировка по важности">
+<!ENTITY calendar.unifinder.tree.title.label "Название">
+<!ENTITY calendar.unifinder.tree.title.tooltip2 "Сортировка по названию">
+<!ENTITY calendar.unifinder.tree.percentcomplete.label "&#37; завершено">
+<!ENTITY calendar.unifinder.tree.percentcomplete.tooltip2 "Сортировка по &#37; завершенности">
+<!ENTITY calendar.unifinder.tree.startdate.label "Начало">
+<!ENTITY calendar.unifinder.tree.startdate.tooltip2 "Сортировка по дате начала">
+<!ENTITY calendar.unifinder.tree.enddate.label "Окончание">
+<!ENTITY calendar.unifinder.tree.enddate.tooltip2 "Сортировка по дате окончания">
+<!ENTITY calendar.unifinder.tree.duedate.label "Срок">
+<!ENTITY calendar.unifinder.tree.duedate.tooltip2 "Сортировка по сроку">
+<!ENTITY calendar.unifinder.tree.completeddate.label "Выполнено">
+<!ENTITY calendar.unifinder.tree.completeddate.tooltip2 "Сортировка по выполнению">
+<!ENTITY calendar.unifinder.tree.categories.label "Категория">
+<!ENTITY calendar.unifinder.tree.categories.tooltip2 "Сортировка по категории">
+<!ENTITY calendar.unifinder.tree.location.label "Место">
+<!ENTITY calendar.unifinder.tree.location.tooltip2 "Сортировка по месту">
+<!ENTITY calendar.unifinder.tree.status.label "Состояние">
+<!ENTITY calendar.unifinder.tree.status.tooltip2 "Сортировка по состоянию">
+<!ENTITY calendar.unifinder.tree.calendarname.label "Календарь">
+<!ENTITY calendar.unifinder.tree.calendarname.tooltip2 "Сортировка по названию календаря">
+<!ENTITY calendar.unifinder.tree.duration.label "Продолжительность">
+<!ENTITY calendar.unifinder.tree.duration.tooltip2 "Сортировка по продолжительности">
+<!ENTITY calendar.unifinder.close.tooltip "Закрыть поиск событий и список событий">
+
+<!ENTITY calendar.today.button.tooltip "Перейти на сегодня" >
+<!ENTITY calendar.todaypane.button.tooltip "Показать мероприятия на сегодня" >
+
+<!ENTITY calendar.newevent.button.label "Новое событие" >
+<!ENTITY calendar.newtask.button.label "Новая задача" >
+
+<!ENTITY calendar.onlyworkday.checkbox.label "Только рабочие дни" >
+<!ENTITY calendar.onlyworkday.checkbox.accesskey "Т" >
+<!ENTITY calendar.displaytodos.checkbox.label "Задачи в текущем обзоре" >
+<!ENTITY calendar.displaytodos.checkbox.accesskey "З" >
+<!ENTITY calendar.completedtasks.checkbox.label "Показать выполненные задачи" >
+<!ENTITY calendar.completedtasks.checkbox.accesskey "П" >
+
+<!ENTITY calendar.orientation.label "Повернуть обзор" >
+<!ENTITY calendar.orientation.accesskey "у" >
+
+<!ENTITY calendar.search.options.searchfor " содержат">
+
+<!ENTITY calendar.list.header.label "Календарь">
+
+<!ENTITY calendar.task.filter.title.label "Показать">
+<!ENTITY calendar.task.filter.all.label "Всё">
+<!ENTITY calendar.task.filter.all.accesskey "В">
+<!ENTITY calendar.task.filter.today.label "Сегодня">
+<!ENTITY calendar.task.filter.today.accesskey "С">
+<!ENTITY calendar.task.filter.next7days.label "Следующие семь дней">
+<!ENTITY calendar.task.filter.next7days.accesskey "л">
+<!ENTITY calendar.task.filter.notstarted.label "Неначатые задачи">
+<!ENTITY calendar.task.filter.notstarted.accesskey "Н">
+<!ENTITY calendar.task.filter.overdue.label "Просроченные задачи">
+<!ENTITY calendar.task.filter.overdue.accesskey "П">
+<!ENTITY calendar.task.filter.completed.label "Выполненные задачи">
+<!ENTITY calendar.task.filter.completed.accesskey "ы">
+<!ENTITY calendar.task.filter.open.label "Невыполненные задачи">
+<!ENTITY calendar.task.filter.open.accesskey "е">
+
+<!-- LOCALIZATION NOTE(calendar.task.filter.current.label)
+ "Current Tasks" will show all tasks, except those with a start date set
+ that is after today and after the selected date. If a task repeats, a
+ separate entry will be shown for each of the occurrences that happen on or
+ before today (or the selected date, whichever is later). -->
+<!ENTITY calendar.task.filter.current.label "Текущие задачи">
+<!ENTITY calendar.task.filter.current.accesskey "Т">
+
+<!ENTITY calendar.task-details.title.label "Название:">
+<!ENTITY calendar.task-details.organizer.label "Организатор:">
+<!ENTITY calendar.task-details.priority.label "Приоритет:">
+<!ENTITY calendar.task-details.priority.low.label "Низкий">
+<!ENTITY calendar.task-details.priority.normal.label "Средний">
+<!ENTITY calendar.task-details.priority.high.label "Высокий">
+<!ENTITY calendar.task-details.status.label "Состояние:">
+<!ENTITY calendar.task-details.category.label "Категория:">
+<!ENTITY calendar.task-details.repeat.label "Повторение:">
+<!ENTITY calendar.task-details.attachments.label "Вложения">
+<!ENTITY calendar.task-details.start.label "Дата начала">
+<!ENTITY calendar.task-details.due.label "Срок">
+
+<!ENTITY calendar.task.category.button.tooltip "Указать категорию задачи">
+<!ENTITY calendar.task.complete.button.tooltip "Отметить выбранные задачи как выполненные">
+<!ENTITY calendar.task.priority.button.tooltip "Изменить приоритет">
+
+<!ENTITY calendar.task.text-filter.textbox.emptytext.base1 "Фильтр задач #1">
+<!ENTITY calendar.task.text-filter.textbox.emptytext.keylabel.nonmac "&lt;Ctrl+Shift+K&gt;">
+<!ENTITY calendar.task.text-filter.textbox.emptytext.keylabel.mac "&lt;&#x21E7;&#x2318;K&gt;">
+
+<!-- Context Menu -->
+<!ENTITY calendar.context.modifyorviewitem.label "Открыть">
+<!ENTITY calendar.context.modifyorviewitem.accesskey "О">
+<!ENTITY calendar.context.modifyorviewtask.label "Открыть задачу…">
+<!ENTITY calendar.context.modifyorviewtask.accesskey "т">
+<!ENTITY calendar.context.newevent.label "Новое событие…">
+<!ENTITY calendar.context.newevent.accesskey "с">
+<!ENTITY calendar.context.newtodo.label "Новая задача…">
+<!ENTITY calendar.context.newtodo.accesskey "а">
+<!ENTITY calendar.context.deletetask.label "Удалить задачу">
+<!ENTITY calendar.context.deletetask.accesskey "У">
+<!ENTITY calendar.context.deleteevent.label "Удалить событие">
+<!ENTITY calendar.context.deleteevent.accesskey "б">
+<!ENTITY calendar.context.cutevent.label "Вырезать">
+<!ENTITY calendar.context.cutevent.accesskey "В">
+<!ENTITY calendar.context.copyevent.label "Копировать">
+<!ENTITY calendar.context.copyevent.accesskey "К">
+<!ENTITY calendar.context.pasteevent.label "Вставить">
+<!ENTITY calendar.context.pasteevent.accesskey "ь">
+<!ENTITY calendar.context.button.label "Мероприятия">
+<!ENTITY calendar.context.button.accesskey "я">
+
+<!ENTITY calendar.context.attendance.menu.label "Участники">
+<!ENTITY calendar.context.attendance.menu.accesskey "ч">
+<!ENTITY calendar.context.attendance.occurrence.label "Этот повтор">
+<!ENTITY calendar.context.attendance.all2.label "Все серии событий">
+<!ENTITY calendar.context.attendance.send.label "Отправить уведомление сейчас">
+<!ENTITY calendar.context.attendance.send.accesskey "п">
+<!ENTITY calendar.context.attendance.dontsend.label "Не отправлять уведомление">
+<!ENTITY calendar.context.attendance.dontsend.accesskey "е">
+
+<!ENTITY calendar.context.attendance.occ.accepted.accesskey "и">
+<!ENTITY calendar.context.attendance.occ.accepted.label "Принято">
+<!ENTITY calendar.context.attendance.occ.tentative.accesskey "н">
+<!ENTITY calendar.context.attendance.occ.tentative.label "Ориентировочно принято">
+<!ENTITY calendar.context.attendance.occ.declined.accesskey "л">
+<!ENTITY calendar.context.attendance.occ.declined.label "Отклонено">
+<!ENTITY calendar.context.attendance.occ.delegated.accesskey "е">
+<!ENTITY calendar.context.attendance.occ.delegated.label "Делегировано">
+<!ENTITY calendar.context.attendance.occ.needsaction.accesskey "ж">
+<!ENTITY calendar.context.attendance.occ.needsaction.label "В ожидании действия">
+<!ENTITY calendar.context.attendance.occ.inprogress.accesskey "с">
+<!ENTITY calendar.context.attendance.occ.inprogress.label "В процессе">
+<!ENTITY calendar.context.attendance.occ.completed.accesskey "ш">
+<!ENTITY calendar.context.attendance.occ.completed.label "Завершено">
+
+<!ENTITY calendar.context.attendance.all.accepted.accesskey "я">
+<!ENTITY calendar.context.attendance.all.accepted.label "Принято">
+<!ENTITY calendar.context.attendance.all.tentative.accesskey "т">
+<!ENTITY calendar.context.attendance.all.tentative.label "Ориентировочно принято">
+<!ENTITY calendar.context.attendance.all.declined.accesskey "к">
+<!ENTITY calendar.context.attendance.all.declined.label "Отклонено">
+<!ENTITY calendar.context.attendance.all.delegated.accesskey "е">
+<!ENTITY calendar.context.attendance.all.delegated.label "Делегировано">
+<!ENTITY calendar.context.attendance.all.needsaction.accesskey "е">
+<!ENTITY calendar.context.attendance.all.needsaction.label "В ожидании действия">
+<!ENTITY calendar.context.attendance.all.inprogress.accesskey "п">
+<!ENTITY calendar.context.attendance.all.inprogress.label "В процессе">
+<!ENTITY calendar.context.attendance.all.completed.accesskey "о">
+<!ENTITY calendar.context.attendance.all.completed.label "Завершено">
+
+<!-- Task Context Menu -->
+<!ENTITY calendar.context.progress.label "Прогресс">
+<!ENTITY calendar.context.progress.accesskey "г">
+<!ENTITY calendar.context.priority.label "Важность">
+<!ENTITY calendar.context.priority.accesskey "В">
+<!ENTITY calendar.context.postpone.label "Отложить задачу">
+<!ENTITY calendar.context.postpone.accesskey "О">
+
+<!ENTITY percnt "&#38;#37;" ><!--=percent sign-->
+
+<!ENTITY calendar.context.markcompleted.label "Отметить выполненные">
+<!ENTITY calendar.context.markcompleted.accesskey "О">
+
+<!ENTITY progress.level.0 "0&percnt; завершено">
+<!ENTITY progress.level.0.accesskey "0">
+<!ENTITY progress.level.25 "25&percnt; завершено">
+<!ENTITY progress.level.25.accesskey "2">
+<!ENTITY progress.level.50 "50&percnt; завершено">
+<!ENTITY progress.level.50.accesskey "5">
+<!ENTITY progress.level.75 "75&percnt; завершено">
+<!ENTITY progress.level.75.accesskey "7">
+<!ENTITY progress.level.100 "100&percnt; завершено">
+<!ENTITY progress.level.100.accesskey "1">
+
+<!ENTITY priority.level.none "Не определён">
+<!ENTITY priority.level.none.accesskey "о">
+<!ENTITY priority.level.low "Низкий">
+<!ENTITY priority.level.low.accesskey "Н">
+<!ENTITY priority.level.normal "Средний">
+<!ENTITY priority.level.normal.accesskey "С">
+<!ENTITY priority.level.high "Высокий">
+<!ENTITY priority.level.high.accesskey "В">
+
+<!ENTITY calendar.context.postpone.1hour.label "1 час">
+<!ENTITY calendar.context.postpone.1hour.accesskey "ч">
+<!ENTITY calendar.context.postpone.1day.label "1 день">
+<!ENTITY calendar.context.postpone.1day.accesskey "д">
+<!ENTITY calendar.context.postpone.1week.label "1 неделю">
+<!ENTITY calendar.context.postpone.1week.accesskey "н">
+
+<!ENTITY calendar.copylink.label "Копировать ссылку">
+<!ENTITY calendar.copylink.accesskey "К">
+
+<!-- Task View -->
+<!-- Note that the above *.context.* strings are currently used for the other
+ task action buttons -->
+<!ENTITY calendar.taskview.delete.label "Удалить">
+
+<!-- Server Context Menu -->
+<!ENTITY calendar.context.newserver.label "Новый календарь…">
+<!ENTITY calendar.context.newserver.accesskey "Н">
+<!ENTITY calendar.context.findcalendar.label "Найти календарь…" >
+<!ENTITY calendar.context.findcalendar.accesskey "а" >
+<!ENTITY calendar.context.deleteserver2.label "Удалить данные календаря…">
+<!ENTITY calendar.context.deleteserver2.accesskey "л">
+
+<!-- LOCALIZATION NOTE (calendar.context.removeserver.label): Removing the
+ calendar is the general action of removing it, while deleting means to
+ clear the data and unsubscribing means just taking it out of the calendar
+ list. -->
+<!ENTITY calendar.context.removeserver.label "Удалить календарь…">
+<!ENTITY calendar.context.removeserver.accesskey "е">
+<!ENTITY calendar.context.unsubscribeserver.label "Отписаться от календаря…">
+<!ENTITY calendar.context.unsubscribeserver.accesskey "п">
+<!ENTITY calendar.context.publish.label "Опубликовать календарь…">
+<!ENTITY calendar.context.publish.accesskey "к">
+<!ENTITY calendar.context.export.label "Экспортировать календарь…">
+<!ENTITY calendar.context.export.accesskey "Э">
+<!ENTITY calendar.context.properties.label "Свойства">
+<!ENTITY calendar.context.properties.accesskey "С">
+
+<!-- LOCALIZATION NOTE (calendar.context.showcalendar.accesskey)
+ This is the access key used for the showCalendar string -->
+<!ENTITY calendar.context.showcalendar.accesskey "а">
+
+<!-- LOCALIZATION NOTE (calendar.context.hidecalendar.accesskey)
+ This is the access key used for the hideCalendar string -->
+<!ENTITY calendar.context.hidecalendar.accesskey "ы">
+
+<!-- LOCALIZATION NOTE (calendar.context.showonly.accesskey)
+ This is the access key used for the showOnlyCalendar string -->
+<!ENTITY calendar.context.showonly.accesskey "з">
+<!ENTITY calendar.context.showall.label "Показать все календари">
+<!ENTITY calendar.context.showall.accesskey "е">
+
+<!ENTITY calendar.context.convertmenu.label "Преобразовать в">
+<!ENTITY calendar.context.convertmenu.accesskey.mail "П">
+<!ENTITY calendar.context.convertmenu.accesskey.calendar "П">
+<!ENTITY calendar.context.convertmenu.event.label "Событие…">
+<!ENTITY calendar.context.convertmenu.event.accesskey "о">
+<!ENTITY calendar.context.convertmenu.message.label "Сообщение…">
+<!ENTITY calendar.context.convertmenu.message.accesskey "С">
+<!ENTITY calendar.context.convertmenu.task.label "Задачу…">
+<!ENTITY calendar.context.convertmenu.task.accesskey "З">
+
+<!ENTITY calendar.tasks.view.minimonth.label "Календарик">
+<!ENTITY calendar.tasks.view.minimonth.accesskey "К">
+
+<!ENTITY calendar.tasks.view.calendarlist.label "Список календарей">
+<!ENTITY calendar.tasks.view.calendarlist.accesskey "п">
+
+<!ENTITY calendar.tasks.view.filtertasks.label "Отфильтровать задачи">
+<!ENTITY calendar.tasks.view.filtertasks.accesskey "ф">
+
+<!-- Calendar Alarm Dialog -->
+
+<!ENTITY calendar.alarm.location.label "Место:" >
+<!ENTITY calendar.alarm.details.label "Подробнее…" >
+
+<!ENTITY calendar.alarm.snoozefor.label "Отложить на" >
+<!ENTITY calendar.alarm.snoozeallfor.label "Отложить все на" >
+<!ENTITY calendar.alarm.title.label "Напоминание календаря" >
+<!ENTITY calendar.alarm.dismiss.label "Прекратить" >
+<!ENTITY calendar.alarm.dismissall.label "Прекратить все" >
+
+<!ENTITY calendar.alarm.snooze.5minutes.label "5 минут" >
+<!ENTITY calendar.alarm.snooze.10minutes.label "10 минут" >
+<!ENTITY calendar.alarm.snooze.15minutes.label "15 минут" >
+<!ENTITY calendar.alarm.snooze.30minutes.label "30 минут" >
+<!ENTITY calendar.alarm.snooze.45minutes.label "45 минут" >
+<!ENTITY calendar.alarm.snooze.1hour.label "1 час" >
+<!ENTITY calendar.alarm.snooze.2hours.label "2 часа" >
+<!ENTITY calendar.alarm.snooze.1day.label "1 день" >
+
+<!-- LOCALIZATION NOTE (calendar.alarm.snooze.cancel)
+ This string is not seen in the UI, it is read by screen readers when the
+ user focuses the "Cancel" button in the "Snooze for..." popup of the alarm
+ dialog. -->
+<!ENTITY calendar.alarm.snooze.cancel "Не откладывать">
+
+<!-- Calendar Server Dialog -->
+<!ENTITY calendar.server.dialog.title.edit "Изменить календарь">
+<!ENTITY calendar.server.dialog.name.label "Название календаря:">
+
+<!-- Calendar Properties -->
+<!ENTITY calendarproperties.color.label "Цвет:">
+<!ENTITY calendarproperties.webdav.label "iCalendar (ICS)">
+<!ENTITY calendarproperties.caldav.label "CalDAV">
+<!ENTITY calendarproperties.format.label "Формат:">
+<!ENTITY calendarproperties.location.label "Адрес:">
+<!ENTITY calendarproperties.refreshInterval.label "Обновлять календарь:">
+<!ENTITY calendarproperties.refreshInterval.manual.label "Вручную">
+<!ENTITY calendarproperties.name.label "Название:">
+<!ENTITY calendarproperties.readonly.label "Только для чтения">
+<!ENTITY calendarproperties.firealarms.label "Показывать оповещения">
+<!ENTITY calendarproperties.cache3.label "Работать автономно">
+<!ENTITY calendarproperties.enabled2.label "Включить этот календарь">
+<!ENTITY calendarproperties.forceDisabled.label "Провайдер для этого календаря не найден. Зачастую это происходит после отключения или удаления специальных дополнений.">
+<!ENTITY calendarproperties.unsubscribe.label "Отменить подписку">
+<!ENTITY calendarproperties.unsubscribe.accesskey "О">
+
+<!-- Calendar Publish Dialog -->
+<!ENTITY calendar.publish.dialog.title "Публикация календаря">
+<!ENTITY calendar.publish.url.label "URL публикации">
+<!ENTITY calendar.publish.publish.button "Опубликовать">
+<!ENTITY calendar.publish.close.button "Закрыть">
+
+<!-- Select Calendar Dialog -->
+<!ENTITY calendar.select.dialog.title "Выбор календаря">
+
+<!-- Error reporting -->
+<!ENTITY calendar.error.detail "Подробнее…">
+<!ENTITY calendar.error.code "Код ошибки:">
+<!ENTITY calendar.error.description "Описание:">
+<!ENTITY calendar.error.title "Произошла ошибка">
+
+<!-- Extract buttons in message header -->
+<!ENTITY calendar.extract.event.button "Добавить как событие">
+<!ENTITY calendar.extract.task.button "Добавить как задачу">
+<!ENTITY calendar.extract.event.button.tooltip "Извлечь календарную информацию из сообщения и добавить в календарь как событие">
+<!ENTITY calendar.extract.task.button.tooltip "Извлечь календарную информацию из сообщения и добавить в календарь как задачу">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar.properties
new file mode 100644
index 0000000000..86d6ddc6d8
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendar.properties
@@ -0,0 +1,696 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Default name for new events
+newEvent=Новое событие
+
+# Titles for the event/task dialog
+newEventDialog=Новое событие
+editEventDialog=Изменение события
+newTaskDialog=Новая задача
+editTaskDialog=Изменение задачи
+
+# Do you want to save changes?
+askSaveTitleEvent=Сохранить событие
+askSaveTitleTask=Сохранить задачу
+askSaveMessageEvent=Событие не было сохранено. Вы хотите сохранить событие?
+askSaveMessageTask=Задача не была сохранена. Вы хотите сохранить задачу?
+
+# Event Dialog Warnings
+warningEndBeforeStart=Введённая вами дата окончания события раньше даты его начала
+warningUntilDateBeforeStart=Дата конца раньше даты начала
+
+# The name of the calendar provided with the application by default
+homeCalendarName=Мой календарь
+
+# The name given to a calendar if an opened calendar has an empty filename
+untitledCalendarName=Календарь без названия
+
+# Event status: Tentative, Confirmed, Cancelled
+# ToDo task status: NeedsAction, InProcess, Completed, Cancelled
+statusTentative =Уточняется
+statusConfirmed =Подтверждено
+eventStatusCancelled=Отменено
+todoStatusCancelled =Отменено
+statusNeedsAction =Необходимы действия
+statusInProcess =Выполняется
+statusCompleted =Выполнена
+
+# Task priority, these should match the priority.level.* labels in calendar.dtd
+highPriority=Высокая
+normalPriority=Обычная
+lowPriority=Низкая
+
+importPrompt=В какой календарь вы хотите импортировать эти пункты?
+exportPrompt=Экспорт из какого календаря вы хотите выполнить?
+pastePrompt=В какой из доступных в данный момент для записи календарей вы хотите это вставить?
+publishPrompt=Какой календарь вы хотите опубликовать?
+
+# LOCALIZATION NOTE (pasteEventAlso): The users pasting operation includes among
+# others also a meeting invitation - this is used as a affix in
+# pasteNotifyAbout
+pasteEventAlso=Вставляемый текст содержит встречу
+# LOCALIZATION NOTE (pasteEventsAlso): The users pasting operation includes among
+# others also several meeting invitations - this is used as a affix in
+# pasteNotifyAbout
+pasteEventsAlso=Вставляемый текст содержит встречи
+# LOCALIZATION NOTE (pasteTaskAlso): The users pasting operation includes among
+# others also an assigned task - this is used as a affix in pasteNotifyAbout
+pasteTaskAlso=Вставляемый текст содержит назначенную задачу
+# LOCALIZATION NOTE (pasteTasksAlso): The users pasting operation include among
+# others also several assigned tasks - this is used as a affix in
+# pasteNotifyAbout
+pasteTasksAlso=Вставляемый текст содержит назначенные задачи
+# LOCALIZATION NOTE (pasteItemsAlso): The users pasting operation includes among
+# others also assigned task(s) and meeting invitation(s) - this is used as a affix
+# in pasteNotifyAbout
+pasteItemsAlso=Вставляемый текст содержит встречи и назначенные задачи
+# LOCALIZATION NOTE (pasteEventOnly): The users is pasting a meeting -
+# this is used as a affix in pasteNotifyAbout
+pasteEventOnly=Вы вставляете встречу
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting several meetings -
+# this is used as a affix in pasteNotifyAbout
+pasteEventsOnly=Вы вставляете встречи
+# LOCALIZATION NOTE (pasteEventOnly): The users is pasting an assigned task -
+# this is used as a affix in pasteNotifyAbout
+pasteTaskOnly=Вы вставляете назначенную задачу
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting several assigned
+# tasks - this is used as a affix in pasteNotifyAbout
+pasteTasksOnly=Вы вставляете назначенные задачи
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting assigned task(s) and
+# meeting(s) - this is used as a affix in pasteNotifyAbout
+pasteItemsOnly=Вы вставляете встречи и назначенные задачи
+
+# LOCALIZATION NOTE (pasteNotifyAbout): Text displayed if pasting an invitation
+# or assigned task
+# %1$S - pasteEvent* or pasteTask*
+pasteNotifyAbout=%1$S - вы хотите отправить обновление всем участникам?
+
+# LOCALIZATION NOTE (pasteAndNotifyLabel): button label used in calendar prompt
+# of the pasted item has attendees
+pasteAndNotifyLabel=Вставить и отправить сейчас
+# LOCALIZATION NOTE (pasteDontNotifyLabel): button label used in calendar prompt
+# of the pasted item has attendees
+pasteDontNotifyLabel=Вставить без отправки
+
+# LOCALIZATION NOTE (importItemsFailed):
+# %1$S will be replaced with number of failed items
+# %2$S will be replaced with last error code / error string
+importItemsFailed=Не удалось импортировать %1$S элементов. Последняя ошибка: %2$S
+# LOCALIZATION NOTE (noItemsInCalendarFile2):
+# %1$S will be replaced with file path
+noItemsInCalendarFile2=Импорт из %1$S невозможен. В этом файле нет импортируемых элементов.
+
+#spaces needed at the end of the following lines
+eventDescription=Описание:
+
+unableToRead=Невозможно чтение из файла:
+unableToWrite=Невозможна запись в файл:
+defaultFileName=MozillaCalEvents
+HTMLTitle=Mozilla Calendar
+
+# LOCALIZATION NOTE (timezoneError):
+# used for an error message like 'An unknown and undefined timezone was found while reading c:\Mycalendarfile.ics'
+# %1$S will be replaced with the path to a file
+timezoneError=Во время чтения %1$S был найден неизвестный или неопределенный часовой пояс.
+
+# LOCALIZATION NOTE (duplicateError):
+# %1$S will be replaced with number of duplicate items
+# %2$S will be replaced with a file path pointing to a calendar
+duplicateError=Несколько (%1$S) элементов были пропущены, так как они существуют и в %2$S и в календаре, в который был произведён импорт.
+
+unableToCreateProvider=Произошла ошибка при подготовке к использованию календаря расположенного в %1$S. Календарь будет недоступен.
+
+# Sample: Unknown timezone "USPacific" in "Dentist Appt". Using the 'floating' local timezone instead: 2008/02/28 14:00:00
+unknownTimezoneInItem=Неизвестный часовой пояс "%1$S" в "%2$S". Рассматривается как 'плавающий' местный часовой пояс вместо: %3$S
+TimezoneErrorsAlertTitle=Ошибки часового пояса
+TimezoneErrorsSeeConsole=Смотрите Консоль ошибок: Неизвестные часовые пояса рассматриваются как 'плавающий' местный часовой пояс.
+
+# The following strings are for the prompt to delete/unsubscribe from the calendar
+removeCalendarTitle=Удаление календаря
+removeCalendarButtonDelete=Удалить календарь
+removeCalendarButtonUnsubscribe=Отписаться
+
+# LOCALIZATION NOTE (removeCalendarMessageDeleteOrUnsubscribe): Shown for
+# calendar where both deleting and unsubscribing is possible.
+# %1$S: The name of a calendar
+removeCalendarMessageDeleteOrUnsubscribe=Вы хотите удалить календарь «%1$S»? Отписка от него удалит календарь из списка, удаление также навсегда удалит его данные.
+
+# LOCALIZATION NOTE (removeCalendarMessageDelete): Shown for calendar where
+# deleting is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageDelete=Вы хотите безвозвратно удалить календарь «%1$S»?
+
+# LOCALIZATION NOTE (removeCalendarMessageUnsubscribe): Shown for calendar
+# where unsubscribing is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageUnsubscribe=Вы хотите отписаться от календаря «%1$S»?
+
+WeekTitle=Неделя %1$S
+None=нет
+
+# Error strings
+## @name UID_NOT_FOUND
+## @loc none
+
+# LOCALIZATION NOTE (tooNewSchemaErrorText):
+# %1$S will be replaced with the name of the host application, e.g. 'Thunderbird'
+# %2$S will be replaced with the name of the new copy of the file, e.g. 'local-2020-05-11T21-30-17.sqlite'
+tooNewSchemaErrorText=Данные вашего календаря не совместимы с этой версией %1$S. Данные календаря в вашем профиле были обновлены более новой версией %1$S. Была создана резервная копия файла данных с именем «%2$S». Продолжаем с созданным новым файлом данных.
+
+# List of events or todos (unifinder)
+eventUntitled=без_названия
+
+# Tooltips of events or todos
+tooltipTitle=Название:
+tooltipLocation=Место:
+# event date, usually an interval, such as
+# Date: 7:00--8:00 Thu 9 Oct 2011
+# Date: Thu 9 Oct 2000 -- Fri 10 Oct 2000
+tooltipDate=Дата:
+# event calendar name
+tooltipCalName=Название календаря:
+# event status: tentative, confirmed, cancelled
+tooltipStatus=Состояние:
+# event organizer
+tooltipOrganizer=Организатор:
+# task/todo fields
+# start date time, due date time, task priority number, completed date time
+tooltipStart=Начало:
+tooltipDue=Срок:
+tooltipPriority=Важность:
+tooltipPercent=% завершено:
+tooltipCompleted=Выполнено:
+
+#File commands and dialogs
+New=Новый
+Open=Открыть
+filepickerTitleImport=Импорт
+filepickerTitleExport=Экспорт
+
+# Filters for export/import/open file picker. %1$S will be replaced with
+# wildmat used to filter files by extension, such as (*.html; *.htm).
+filterIcs=iCalendar (%1$S)
+filterHtml=Web Page (%1$S)
+
+# Remote calendar errors
+genericErrorTitle=Произошла ошибка
+httpPutError=Не удалось опубликовать файл календаря.\nКод ошибки: %1$S: %2$S
+otherPutError=Не удалось опубликовать файл календаря.\nКод ошибки: 0x%1$S
+
+# LOCALIZATION NOTE (readOnlyMode):
+# used for an message like 'There has been an error reading data for calendar: Home. It has been...'
+# %1$S will be replaced with the name of a calendar
+readOnlyMode=Произошла ошибка чтения данных календаря: %1$S. Для календаря был установлен режим «Только для чтения», поэтому попытка его изменения может привести к потере данных. Вы можете изменить этот режим, выбрав «Изменить календарь».
+
+# LOCALIZATION NOTE (disabledMode):
+# used for an message like 'There has been an error reading data for calendar: Home. It has been...'
+# %1$S will be replaced with the name of a calendar
+disabledMode=Произошла ошибка чтения данных календаря: %1$S. Календарь был отключен до тех пор, пока его использование не будет безопасным.
+
+# LOCALIZATION NOTE (minorError):
+# used for an message like 'There has been an error reading data for calendar: Home. However this...'
+# %1$S will be replaced with the name of a calendar
+minorError=Произошла ошибка чтения данных календаря: %1$S. Однако, эта ошибка считается незначительной, по этому программа будет продолжать попытки.
+
+# LOCALIZATION NOTE (stillReadOnlyError):
+# used for an message like 'There has been an error reading data for calendar: Home.'
+# %1$S will be replaced with the name of a calendar
+stillReadOnlyError=Произошла ошибка чтения данных календаря: %1$S.
+utf8DecodeError=Произошла ошибка при декодировании iCalendar (ics) файла, как файла в кодировке UTF-8. Убедитесь, что этот файл, включающий символы и буквы со знаком ударения, действительно использует кодировку UTF-8.
+icsMalformedError=Произошла ошибка при разборе iCalendar (ics) файла. Убедитесь, что этот файл соответствует синтаксису iCalendar (ics) файлов.
+itemModifiedOnServerTitle=Пункт изменён на сервере
+itemModifiedOnServer=Этот пункт уже был изменён на сервере.\n
+modifyWillLoseData=Отправка ваших изменений перезапишет изменения уже сделанные на сервере.
+deleteWillLoseData=Удаление этого пункта приведёт к потере изменений уже сделанных на сервере.
+updateFromServer=Отказаться от изменений и обновить
+proceedModify=Всё равно отправить мои изменения
+proceedDelete=Всё равно удалить
+dav_notDav=Ресурс на %1$S не является DAV коллекцией или недоступен
+dav_davNotCaldav=Ресурс на %1$S является DAV коллекцией, но не CalDAV календарь
+itemPutError=Произошла ошибка сохранения пункта на сервер.
+itemDeleteError=Произошла ошибка удаления пункта с сервера.
+caldavRequestError=Произошла ошибка при отправке приглашения.
+caldavResponseError=Произошла ошибка при отправке ответа.
+caldavRequestStatusCode=Код состояния: %1$S
+caldavRequestStatusCodeStringGeneric=Запрос не может быть обработан.
+caldavRequestStatusCodeString400=В синтаксисе запроса ошибка и он не может быть обработан.
+caldavRequestStatusCodeString403=Пользователь не имеет необходимых прав для выполнения запроса.
+caldavRequestStatusCodeString404=Ресурс не найден.
+caldavRequestStatusCodeString409=Конфликт ресурса.
+caldavRequestStatusCodeString412=Ошибка при обработке предварительного условия.
+caldavRequestStatusCodeString500=Внутренняя ошибка сервера.
+caldavRequestStatusCodeString502=Плохой шлюз (Настройки прокси-сервера?).
+caldavRequestStatusCodeString503=Внутренняя ошибка сервера (Сервер временно отключен?).
+caldavRedirectTitle=Обновить местоположение календаря %1$S?
+caldavRedirectText=Запросы для %1$S перенаправляются в новое местоположение. Вы хотите изменить местоположение на следующее значение?
+caldavRedirectDisableCalendar=Отключить календарь
+
+
+# LOCALIZATION NOTE (likelyTimezone):
+# Translators, please put the most likely timezone(s) where the people using
+# your locale will be. Use the Olson ZoneInfo timezone name *in English*,
+# ie "Europe/Paris", (continent or ocean)/(largest city in timezone).
+# Order does not matter, except if two historically different zones now match,
+# such as America/New_York and America/Toronto, will only find first listed.
+# (Particularly needed to guess the most relevant timezones if there are
+# similar timezones at the same June/December GMT offsets with alphabetically
+# earlier ZoneInfo timezone names. Sample explanations for English below.)
+# for english-US:
+# America/Los_Angeles likelier than America/Dawson
+# America/New_York likelier than America/Detroit (NY for US-EasternTime)
+# for english:
+# Europe/London likelier than Atlantic/Canary
+# Europe/Paris likelier than Africa/Ceuta (for WestEuropeanTime)
+# America/Halifax likelier than America/Glace_Bay (Canada-AtlanticTime)
+# America/Mexico_City likelier than America/Cancun
+# America/Argentina/Buenos_Aires likelier than America/Araguaina
+# America/Sao_Paolo (may not recognize: summer-time dates change every year)
+# Asia/Singapore likelier than Antarctica/Casey
+# Asia/Tokyo likelier than Asia/Dili
+# Africa/Lagos likelier than Africa/Algiers (for WestAfricanTime)
+# Africa/Johannesburg likelier than Africa/Blantyre (for SouthAfricanStdTime)
+# Africa/Nairobi likelier than Africa/Addis_Ababa (for EastAfricanTime)
+# Australia/Brisbane likelier than Antarctica/DumontDUrville
+# Australia/Sydney likelier than Australia/Currie or Australia/Hobart
+# Pacific/Auckland likelier than Antarctica/McMurdo
+likelyTimezone=Europe/Kaliningrad, Europe/Minsk, Europe/Moscow, Europe/Samara, Asia/Yekaterinburg, Asia/Omsk, Asia/Almaty, Asia/Krasnoyarsk, Asia/Irkutsk, Asia/Yakutsk, Asia/Vladivostok, Asia/Magadan, Asia/Kamchatka
+
+# Guessed Timezone errors and warnings.
+# Testing note:
+# * remove preference for calendar.timezone.default in userprofile/prefs.js
+# * repeat
+# - set OS timezone to a city (windows: click right on clock in taskbar)
+# - restart
+# - observe guess in error console and verify whether guessed timezone city
+# makes sense for OS city.
+#
+# 'Warning: Operating system timezone "E. South America Standard Time"
+# no longer matches ZoneInfo timezone "America/Sao_Paulo".'
+# Testing notes:
+# - Brasil DST change dates are set every year by decree, so likely out of sync.
+# - Only appears on OSes from which timezone can be obtained
+# (windows; or TZ env var, /etc/localtime target path, or line in
+# /etc/timezone or /etc/sysconfig/clock contains ZoneInfo timezone id).
+# - Windows: turning off "Automatically adjust clock for daylight saving time"
+# can also trigger this warning.
+WarningOSTZNoMatch=Внимание: Часовой пояс «%1$S» операционной системы не совпадает\nс внутренним часовым поясом в ZoneInfo «%2$S».
+
+# "Skipping Operating System timezone 'Pacific/New_Country'."
+# Testing note: not easily testable. May occur someday if (non-windows)
+# OS uses different version of ZoneInfo database which has a timezone name
+# that is not included in our current ZoneInfo database (or if the mapping
+# mapping from windows to ZoneInfo timezone ids does).
+SkippingOSTimezone=Пропустить часовой пояс «%1$S» операционной системы.
+
+# "Skipping locale timezone 'America/New_Yawk'."
+# Testing note: Skipping occurs if a likelyTimezone id is unknown or misspelled.
+SkippingLocaleTimezone=Пропустить часовой пояс «%1$S» локализации.
+
+# Testing note: "No match" timezones include Bucharest on W2k.
+# Brazil timezones may be "No match" (change every year, so often out of date,
+# and changes are often more than a week different).
+warningUsingFloatingTZNoMatch=Внимание: Использование "плавающего" часового пояса.\nВ ZoneInfo нет данных о часовом поясе, соответствующем часовому поясу операционной системы.
+
+# "Warning: Using guessed timezone
+# America/New York (UTC-0500/-0400).
+# [rfc2445 summer daylight saving shift rules for timezone]
+# This ZoneInfo timezone almost matches/seems to match..."
+# This ZoneInfo timezone was chosen based on ... "
+WarningUsingGuessedTZ=Внимание: Использование предполагаемого часового пояса\n %1$S (UTC%2$S).\n%3$S\n%4$S
+
+# Testing note: "Almost match" timezones include Cairo on W2k.
+TZAlmostMatchesOSDifferAtMostAWeek=Этот часовой пояс ZoneInfo почти совпадает с часовым поясом операционной системы. Для этого\nправила даты перехода между летним и стандартным временем отличаются от дат перехода в часовом\nпоясе операционной системы не более чем на неделю. Могут возникнуть расхождения в данных, такие,\nкак различные даты начала, различные правила, или приближения для правил не-григорианских календарей.
+
+TZSeemsToMatchOS=Этот часовой пояс ZoneInfo возможно совпадает в этом году с часовым поясом операционной системы.
+
+# LOCALIZATION NOTE (TZFromOS):
+# used for a display of a chosen timezone
+# %1$S will be replaced with the name of a timezone
+TZFromOS=Этот часовой пояс ZoneInfo был выбран на основе идентификатора часового пояса «%1$S»\n операционной системы.
+
+# Localization note (TZFromLocale): Substitute name of your locale language.
+TZFromLocale=Этот часовой пояс ZoneInfo был выбран на основе соответствия часового пояса операционной системы\nc наиболее подходящими часовыми поясами для\nинтернет-пользователей, использующих русский язык.
+
+TZFromKnownTimezones=Этот часовой пояс ZoneInfo был выбран на основе соответствия часового пояса операционной системы\nc известными часовыми поясами в алфавитном порядке их идентификатора.
+
+# Print Layout
+tasksWithNoDueDate = Бессрочные задачи
+
+# Providers
+caldavName=CalDAV
+compositeName=Composite
+icsName=iCalendar (ICS)
+memoryName=Temporary (memory)
+storageName=Local (SQLite)
+
+# Used in created html code for export
+htmlPrefixTitle=Название
+htmlPrefixWhen=Когда
+htmlPrefixLocation=Место
+htmlPrefixDescription=Описание
+htmlTaskCompleted=%1$S (завершено)
+
+# Categories
+addCategory=Добавить категорию
+multipleCategories=Множественные категории
+
+today=Сегодня
+tomorrow=Завтра
+yesterday=Вчера
+
+#Today pane
+eventsonly=События
+eventsandtasks=События и задачи
+tasksonly=Задачи
+shortcalendarweek=КН
+
+go=Перейти
+
+# Some languages have different conjugations of 'next' and 'last'. If yours
+# does not, simply repeat the value. This will be used with day names, as in
+# 'next Sunday'.
+next1=следующий
+next2=следующий
+last1=последний
+last2=последний
+
+# Alarm Dialog
+# LOCALIZATION NOTE (alarmWindowTitle.label): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+alarmWindowTitle.label=#1 напоминание;#1 напоминания;#1 напоминаний
+
+# LOCALIZATION NOTE (alarmStarts):
+# used for a display the start of an alarm like 'Starts: Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmStarts=Начало: %1$S
+
+# LOCALIZATION NOTE (alarmTodayAt):
+# used for a display the date-time of an alarm like 'Today at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmTodayAt=Сегодня на %1$S
+
+# LOCALIZATION NOTE (alarmTomorrowAt):
+# used for a display the date-time of an alarm like 'Tomorrow at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmTomorrowAt=Завтра на %1$S
+
+# LOCALIZATION NOTE (alarmYesterdayAt):
+# used for a display the date-time of an alarm like 'Yesterday at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmYesterdayAt=Вчера на %1$S
+
+# Alarm interface strings
+# LOCALIZATION NOTE: These strings do not get displayed. They are only visible
+# when exporting an item with i.e a DISPLAY alarm, that doesn't have a
+# description set, or an EMAIL alarm that doesn't have a summary set.
+alarmDefaultDescription=Default Mozilla Description
+alarmDefaultSummary=Default Mozilla Summary
+
+# LOCALIZATION NOTE (alarmSnoozeLimitExceeded): Semi-colon list of plural
+# forms.
+alarmSnoozeLimitExceeded=Вы не можете отложить будильник больше чем на #1 месяц.;Вы не можете отложить будильник больше чем на #1 месяца.;Вы не можете отложить будильник больше чем на #1 месяцев.
+
+taskDetailsStatusNeedsAction=Нуждается в действии
+
+# LOCALIZATION NOTE (taskDetailsStatusInProgress):
+# used for a display of how much of a task is completed '25% Complete'
+# %1$S will be replaced with the number of percentage completed
+taskDetailsStatusInProgress=%1$S%% завершено
+taskDetailsStatusCompleted=Завершено
+
+# LOCALIZATION NOTE (taskDetailsStatusCompletedOn):
+# used for a display of completion date like 'Completed on Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with the completion date-time of the task
+taskDetailsStatusCompletedOn=Завершено на %1$S
+taskDetailsStatusCancelled=Отменено
+
+gettingCalendarInfoCommon=Проверка календарей…
+
+# LOCALIZATION NOTE (gettingCalendarInfoDetail):
+# used for a progress-display of processed like 'Checking Calendar 5 of 10'
+# %1$S will be replaced with the index of the currently processed calendar
+# %2$S will be replaced with the total numbers of calendars
+gettingCalendarInfoDetail=Проверка календаря %1$S из %2$S
+
+# LOCALIZATION NOTE (errorCode):
+# %1$S will be replaced with the number of an error code
+errorCode=Код ошибки: %1$S
+
+# LOCALIZATION NOTE (errorDescription):
+# %1$S will be replaced with the description of an error
+errorDescription=Описание: %1$S
+
+# LOCALIZATION NOTE (errorWriting):
+# used for an message like 'An error occurred when writing to the calendar Home!'
+# %1$S will be replaced with the name of a calendar
+errorWriting2=Произошла ошибка при записи в календарь %1$S! Дополнительная информация приведена ниже.
+
+# LOCALIZATION NOTE (errorWritingDetails):
+# This will be displayed in the detail section of the error dialog
+errorWritingDetails=Если вы видите это сообщение после откладывания или отклонения напоминания, и оно относится к календарю, в котором вы не хотите добавлять или изменять события, вы можете пометить этот календарь как доступный только для чтения, чтобы избежать подобных сообщений в будущем. Для этого перейдите в свойства календаря, щёлкнув по нему правой кнопкой мыши, в списке календарей или виде задач.
+
+# LOCALIZATION NOTE (tooltipCalendarDisabled):
+# used for an alert-message like 'The calendar Home is momentarily not available'
+# %1$S will be replaced with the name of a calendar
+tooltipCalendarDisabled=Календарь %1$S временно не доступен
+
+# LOCALIZATION NOTE (tooltipCalendarReadOnly):
+# used for an message like 'The calendar Home is readonly'
+# %1$S will be replaced with the name of a calendar
+tooltipCalendarReadOnly=Календарь %1$S только для чтения
+
+taskEditInstructions=Щёлкните здесь для добавления новой задачи
+taskEditInstructionsReadonly=Выберите календарь доступный для записи
+taskEditInstructionsCapability=Выберите календарь поддерживающий задачи
+
+eventDetailsStartDate=Начало:
+eventDetailsEndDate=Окончание:
+
+# LOCALIZATION NOTE (datetimeWithTimezone):
+# used for a display of a date-time with timezone 'Thu 2 Oct 2008 13:21', Europe/Paris
+# %1$S will be replaced with the completion date-time
+# %2$S will be replaced with the name of the timezone
+datetimeWithTimezone=%1$S, %2$S
+
+# LOCALIZATION NOTE (singleLongCalendarWeek):
+# used for display of calendar weeks in short form like 'Calendar Week 43'
+# %1$S will be replaced with the index of the week
+singleLongCalendarWeek=Неделя: %1$S
+
+# LOCALIZATION NOTE (severalLongCalendarWeeks):
+# used for display of calendar weeks in short form like 'Calendar Weeks 43 - 45'
+# %1$S will be replaced with the index of the start-week
+# %2$S will be replaced with the index of the end-week
+severalLongCalendarWeeks=Недели: %1$S-%2$S
+
+# LOCALIZATION NOTE (singleShortCalendarWeek):
+# used for display of calendar weeks in short form like 'CW 43'
+# %1$S will be replaced with the index of the week
+singleShortCalendarWeek=Нд: %1$S
+
+# LOCALIZATION NOTE (severalShortCalendarWeeks):
+# used for display of calendar weeks in short form like 'CWs 43 - 45'
+# %1$S will be replaced with the index of the start-week
+# %2$S will be replaced with the index of the end-week
+severalShortCalendarWeeks=Нд: %1$S-%2$S
+
+# LOCALIZATION NOTE (multiweekViewWeek):
+# Used for displaying the week number in the first day box of every week
+# in multiweek and month views.
+# It allows to localize the label with the week number in case your locale
+# requires it.
+# Take into account that this label is placed in the same room of the day label
+# inside the day boxes, exactly on left side, hence a possible string shouldn't
+# be too long otherwise it will create confusion between the week number and
+# the day number other than a possible crop when the window is resized.
+#
+# %1$S is a number from 1 to 53 that represents the week number.
+multiweekViewWeek=Нед. %1$S
+
+# Task tree, "Due In" column.
+# LOCALIZATION NOTE (dueInDays, dueInHours): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+dueInDays=#1 день;#1 дня;#1 дней
+dueInHours=#1 час;#1 часа;#1 часов
+dueInLessThanOneHour=< 1 часа
+
+# LOCALIZATION NOTE (monthInYear):
+# used for display of Month-dates like 'December 2008'
+# %1$S will be replaced with name of the month
+# %2$S will be replaced with the year
+monthInYear=%1$S %2$S
+
+# LOCALIZATION NOTE (monthInYear.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+monthInYear.monthFormat=nominative
+
+# LOCALIZATION NOTE (formatDateLong):
+# used for display dates in long format like 'Mon 15 Oct 2008' when it's
+# impossible to retrieve the formatatted date from the OS.
+# %1$S will be replaced with name of the day in short format;
+# %2$S will be replaced with the day-index of the month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties);
+# %3$S will be replaced with the name of the month in short format;
+# %4$S will be replaced with the year.
+formatDateLong=%1$S %2$S %3$S %4$S
+
+# LOCALIZATION NOTE (dayHeaderLabel):
+# used for display the labels in the header of the days in day/week views in short
+# or long format. For example: 'Monday 6 Oct.' or 'Mon. 6 Oct.'
+# %1$S will be replaced with name of the day in short or long format
+# %2$S will be replaced with the day-index of the month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties), plus the name
+# of the month in short format (the day/month order depends on the OS settings).
+dayHeaderLabel=%1$S %2$S
+
+# LOCALIZATION NOTE (daysIntervalInMonth):
+# used for display of intervals in the form of 'March 3 - 9, 2008'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %4$S will be replaced with the common year of both dates
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalInMonth=%2$S – %3$S %1$S %4$S
+
+# LOCALIZATION NOTE (daysIntervalInMonth.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalInMonth.monthFormat=genitive
+
+# LOCALIZATION NOTE (daysIntervalBetweenMonths):
+# used for display of intervals in the form 'September 29 - October 5, 2008'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with name of the month of the end date
+# %4$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %5$S will be replaced with the common year of both dates
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalBetweenMonths=%2$S %1$S – %4$S %3$S %5$S
+
+# LOCALIZATION NOTE (daysIntervalBetweenMonths.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalBetweenMonths.monthFormat=genitive
+
+# LOCALIZATION NOTE (daysIntervalBetweenYears):
+# used for display of intervals in the form 'December 29, 2008 - January 4, 2009'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with the year of the start date
+# %4$S will be replaced with name of the month of the end date
+# %5$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %6$S will be replaced with the year of the end date
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalBetweenYears=%2$S %1$S %3$S – %5$S %4$S %6$S
+
+# LOCALIZATION NOTE (daysIntervalBetweenYears.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalBetweenYears.monthFormat=genitive
+
+# LOCALIZATION NOTE (datetimeIntervalOnSameDateTime):
+# used for intervals where end is equals to start
+# displayed form is '5 Jan 2006 13:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+datetimeIntervalOnSameDateTime=%1$S %2$S
+
+# LOCALIZATION NOTE (datetimeIntervalOnSameDay):
+# used for intervals where end is on the same day as start, so we can leave out the
+# end date but still include end time
+# displayed form is '5 Jan 2006 13:00 - 17:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+# %3$S will be replaced with the time of the end date
+datetimeIntervalOnSameDay=%1$S %2$S – %3$S
+
+# LOCALIZATION NOTE (datetimeIntervalOnSeveralDays):
+# used for intervals spanning multiple days by including date and time
+# displayed form is '5 Jan 2006 13:00 - 7 Jan 2006 9:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+# %3$S will be replaced with the date of the end date
+# %4$S will be replaced with the time of the end date
+datetimeIntervalOnSeveralDays=%1$S %2$S – %3$S %4$S
+
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDate):
+# used for task without start and due date
+# (showed only in exported calendar in Html format)
+datetimeIntervalTaskWithoutDate= нет даты начала и срока
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDueDate):
+# used for intervals in task with only start date
+# displayed form is 'start date 5 Jan 2006 13:00'
+# (showed only in exported calendar in Html format)
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+datetimeIntervalTaskWithoutDueDate=дата начала %1$S %2$S
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutStartDate):
+# used for intervals in task with only due date
+# displayed form is 'due date 5 Jan 2006 13:00'
+# (showed only in exported calendar in Html format)
+# %1$S will be replaced with the date of the due date
+# %2$S will be replaced with the time of the due date
+datetimeIntervalTaskWithoutStartDate=срок %1$S %2$S
+
+# LOCALIZATION NOTE (dragLabelTasksWithOnlyEntryDate
+# dragLabelTasksWithOnlyDueDate)
+# Labels that appear while dragging a task with only
+# entry date OR due date
+dragLabelTasksWithOnlyEntryDate=Время начала
+dragLabelTasksWithOnlyDueDate=Завершено в
+
+deleteTaskLabel=Удалить задачу
+deleteTaskAccesskey=У
+deleteItemLabel=Удалить элемент
+deleteItemAccesskey=У
+deleteEventLabel=Удалить событие
+deleteEventAccesskey=У
+
+calendarPropertiesEveryMinute=Каждую минуту;Каждые #1 минуты;Каждые #1 минут
+
+# LOCALIZATION NOTE (extractUsing)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+extractUsing=Используя %1$S
+
+# LOCALIZATION NOTE (extractUsingRegion)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+# %2$S will be replaced with region like US in en-US
+extractUsingRegion=Используя %1$S (%2$S)
+
+# LOCALIZATION NOTE (unit)
+# Used to determine the correct plural form of a unit
+unitMinutes=#1 минута;#1 минуты;#1 минут
+unitHours=#1 час;#1 часов;#1 часов
+unitDays=#1 день;#1 дня;#1 дней
+unitWeeks=#1 неделя;#1 недели;#1 недель
+
+# LOCALIZATION NOTE (showCalendar)
+# Used in calendar list context menu
+# %1$S will be replaced with the calendar name
+# uses the access key calendar.context.togglevisible.accesskey
+showCalendar=Показать %1$S
+hideCalendar=Скрыть %1$S
+# uses the access key calendar.context.showonly.accesskey
+showOnlyCalendar=Показать только %1$S
+
+# LOCALIZATION NOTE (modifyConflict)
+# Used by the event dialog to resolve item modification conflicts.
+modifyConflictPromptTitle=Конфликт изменения элемента
+modifyConflictPromptMessage=Элемент, редактируемый в диалоговом окне, был изменён с момента его открытия.
+modifyConflictPromptButton1=Перезаписать другие изменения
+modifyConflictPromptButton2=Отменить эти изменения
+
+# Accessible description of a grid calendar with no selected date
+minimonthNoSelectedDate=Дата не выбрана
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendarCreation.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendarCreation.dtd
new file mode 100644
index 0000000000..c46ca64b3d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendarCreation.dtd
@@ -0,0 +1,51 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY wizard.title "Создание нового календаря" >
+<!ENTITY wizard.label "Создать новый календарь" >
+<!ENTITY wizard.description "Расположение вашего календаря" >
+
+<!ENTITY initialpage.description "Ваш календарь может быть сохранен на вашем компьютере или на удалённом сервере, для того, чтобы вы могли обратиться к нему из любого места или использовать его совместно с вашими друзьями или коллегами." >
+<!ENTITY initialpage.computer.label "На моём компьютере">
+<!ENTITY initialpage.network.label "В сети">
+
+<!ENTITY locationpage.description "Введите информацию, необходимую для получения доступа к вашему удалённому календарю." >
+<!ENTITY locationpage.login.description "Не обязательно: введите имя пользователя и пароль" >
+<!ENTITY locationpage.username.label "Имя пользователя:" >
+<!ENTITY locationpage.password.label "Пароль:" >
+
+<!ENTITY custompage.shortdescription "Настройки календаря" >
+<!ENTITY custompage.longdescription "Вы можете дать вашему календарю имя и присвоить особый цвет для отображения событий этого календаря." >
+
+<!ENTITY finishpage.shortdescription "Календарь создан" >
+<!ENTITY finishpage.longdescription "Ваш календарь был успешно создан." >
+
+<!-- Below are new strings for the revised new calendar dialog. The above strings should be
+ removed/renamed later on -->
+
+<!ENTITY sourcetabs.other.label "Другое">
+
+<!ENTITY buttons.create.label "Создать календарь">
+<!ENTITY buttons.create.accesskey "з">
+
+<!ENTITY buttons.find.label "Найти календари">
+<!ENTITY buttons.find.accesskey "и">
+
+<!ENTITY buttons.back.label "Назад">
+<!ENTITY buttons.back.accesskey "а">
+
+<!ENTITY buttons.subscribe.label "Подписаться">
+<!ENTITY buttons.subscribe.accesskey "с">
+
+<!ENTITY calendartype.label "Тип календаря:">
+<!ENTITY location.label "Адрес:">
+<!ENTITY location.placeholder "URL или имя хоста сервера календаря">
+
+<!ENTITY network.nocredentials.label "Для этого адреса не требуются учётные данные">
+<!ENTITY network.loading.description "Пожалуйста, подождите, ваши календари обрабатываются.">
+<!ENTITY network.notfound.description "Не удалось найти календари по данному адресу. Пожалуйста, проверьте свои настройки.">
+<!ENTITY network.authfail.description "Введённые учётные данные не приняты. Пожалуйста, проверьте ваши настройки.">
+
+<!ENTITY network.subscribe.single.description "Пожалуйста, выберите календари, на которые вы хотели бы подписаться.">
+<!ENTITY network.subscribe.multiple.description "По данному адресу доступны несколько типов календарей. Пожалуйста, выберите тип календаря, а затем отметьте календари, на которые вы бы хотели подписаться.">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendarCreation.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendarCreation.properties
new file mode 100644
index 0000000000..89eea71773
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/calendarCreation.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+error.invalidUri=Пожалуйста укажите правильное расположение.
+error.alreadyExists=Вы уже подписаны на расположенный здесь календарь.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/categories.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/categories.properties
new file mode 100644
index 0000000000..1eddc5df73
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/categories.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# default categories
+
+categories2=Годовщины,Дни рождения,Бизнес,Звонки,Клиенты,Конкурсы,Заказчики,Избранное,Ответы,Подарки,Отпуск,Идеи,Доходы,Разное,Личное,Проекты,Праздники,Встречи,Поставщики,Путешествия,Каникулы
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/dateFormat.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/dateFormat.properties
new file mode 100644
index 0000000000..984ee9243b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/dateFormat.properties
@@ -0,0 +1,146 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# In case you are looking for the note about different declensions on date
+# formats, here it is. If your language doesn't use different declensions of
+# month names, you shouldn't have much work. Just leave the *.monthFormat
+# string on "nominative" and the string month.*.name will be filled in.
+#
+# If you need a different form for a string, you can change the
+# *.monthFormat to a different value. Supported values are currently:
+# nominative (default), genitive
+# The modified month name form will then be filled in accordingly. If this
+# system does not suit your needs, please file a bug!
+
+# LOCALIZATION NOTE (month.*.name):
+# Some languages require different declensions of month names.
+# These values will be used if *.monthFormat is set to "nominative" or in places
+# where using a different declension is not yet supported.
+month.1.name=Январь
+month.2.name=Февраль
+month.3.name=Март
+month.4.name=Апрель
+month.5.name=Май
+month.6.name=Июнь
+month.7.name=Июль
+month.8.name=Август
+month.9.name=Сентябрь
+month.10.name=Октябрь
+month.11.name=Ноябрь
+month.12.name=Декабрь
+
+# LOCALIZATION NOTE (month.*.genitive):
+# Some languages require different declensions of month names.
+# These values will be used if *.monthFormat is set to "genitive"
+# If your language doesn't use different declensions, just set the same
+# values as for month.*.name.
+month.1.genitive=Января
+month.2.genitive=Февраля
+month.3.genitive=Марта
+month.4.genitive=Апреля
+month.5.genitive=Мая
+month.6.genitive=Июня
+month.7.genitive=Июля
+month.8.genitive=Августа
+month.9.genitive=Сентября
+month.10.genitive=Октября
+month.11.genitive=Ноября
+month.12.genitive=Декабря
+
+month.1.Mmm=Январь
+month.2.Mmm=Февраль
+month.3.Mmm=Март
+month.4.Mmm=Апрель
+month.5.Mmm=Май
+month.6.Mmm=Июнь
+month.7.Mmm=Июль
+month.8.Mmm=Август
+month.9.Mmm=Сентябрь
+month.10.Mmm=Октябрь
+month.11.Mmm=Ноябрь
+month.12.Mmm=Декабрь
+
+day.1.name=Воскресенье
+day.2.name=Понедельник
+day.3.name=Вторник
+day.4.name=Среда
+day.5.name=Четверг
+day.6.name=Пятница
+day.7.name=Суббота
+
+day.1.Mmm=Вс
+day.2.Mmm=Пн
+day.3.Mmm=Вт
+day.4.Mmm=Ср
+day.5.Mmm=Чт
+day.6.Mmm=Пт
+day.7.Mmm=Сб
+
+# Can someone tell me why we're not counting from zero?
+day.1.short=Вс
+day.2.short=Пн
+day.3.short=Вт
+day.4.short=Ср
+day.5.short=Чт
+day.6.short=Пт
+day.7.short=Сб
+
+# Localizable day's date
+day.1.number=1
+day.2.number=2
+day.3.number=3
+day.4.number=4
+day.5.number=5
+day.6.number=6
+day.7.number=7
+day.8.number=8
+day.9.number=9
+day.10.number=10
+day.11.number=11
+day.12.number=12
+day.13.number=13
+day.14.number=14
+day.15.number=15
+day.16.number=16
+day.17.number=17
+day.18.number=18
+day.19.number=19
+day.20.number=20
+day.21.number=21
+day.22.number=22
+day.23.number=23
+day.24.number=24
+day.25.number=25
+day.26.number=26
+day.27.number=27
+day.28.number=28
+day.29.number=29
+day.30.number=30
+day.31.number=31
+
+# LOCALIZATION NOTE (dayOrdinalSymbol):
+# Allows to insert a string, a character or a symbol after the number of a
+# monthday in order to give it the meaning of ordinal number e.g. 1 -> 1st etc.
+# It's mainly used when formatting dates with both monthday and month name. It
+# affects the following localizable strings that hence must be localized *without*
+# any ordinal symbol for the monthday number:
+# dayHeaderLabel, monthlyDaysOfNth_day,
+# yearlyNthOn, daysIntervalBetweenYears,
+# daysIntervalBetweenMonths, daysIntervalInMonth.
+# Write only a single string if the ordinal symbol is the same for every monthday, otherwise
+# write a sequence of _31_ strings (one for each monthday) separated with commas.
+# If your language doesn't require that in the mentioned strings, leave it empty.
+# e.g.
+# dayOrdinalSymbol=.
+# -> daysIntervalInMonth: 'March 3. - 9., 2008'
+# dayOrdinalSymbol=st,nd,rd,th,th,th,th,th,th,th,th,th,th,th,th,
+# th,th,th,th,th,st,nd,rd,th,th,th,th,th,th,th,st
+# -> daysIntervalBetweenMonths: 'September 29th - November 1st, 2008'
+dayOrdinalSymbol=
+
+noon=Полдень
+midnight=Полночь
+
+AllDay=Весь день
+Repeating=(Повторение)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/dialogs/calendar-event-dialog-reminder.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/dialogs/calendar-event-dialog-reminder.dtd
new file mode 100644
index 0000000000..4d053d7a40
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/dialogs/calendar-event-dialog-reminder.dtd
@@ -0,0 +1,19 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY reminderdialog.title "Настройка напоминания">
+<!ENTITY reminder.add.label "Добавить">
+<!ENTITY reminder.add.accesskey "Д">
+<!ENTITY reminder.remove.label "Удалить">
+<!ENTITY reminder.remove.accesskey "У">
+
+<!ENTITY reminder.reminderDetails.label "Детали напоминания">
+<!ENTITY reminder.action.label "Выберите действие для напоминания">
+
+<!ENTITY reminder.action.alert.label "Показать всплывающее окно">
+<!ENTITY reminder.action.email.label "Отправить электронное письмо">
+
+<!ENTITY alarm.units.minutes "минут" >
+<!ENTITY alarm.units.hours "часов" >
+<!ENTITY alarm.units.days "дней" >
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/global.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/global.dtd
new file mode 100644
index 0000000000..66929692e3
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/global.dtd
@@ -0,0 +1,54 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY time.midnight "Полночь" >
+<!ENTITY time.noon "Полдень" >
+
+<!-- Day Names -->
+<!-- LOCALIZATION NOTE : Accesskeys for day.1.Ddd to day.7.Ddd are currently
+ only used in Preferences > Views > Workweek groupbox -->
+<!ENTITY day.1.Ddd "Вс" >
+<!ENTITY day.1.Ddd.accesskey "В">
+<!ENTITY day.2.Ddd "Пн" >
+<!ENTITY day.2.Ddd.accesskey "н">
+<!ENTITY day.3.Ddd "Вт" >
+<!ENTITY day.3.Ddd.accesskey "т">
+<!ENTITY day.4.Ddd "Ср" >
+<!ENTITY day.4.Ddd.accesskey "р">
+<!ENTITY day.5.Ddd "Чт" >
+<!ENTITY day.5.Ddd.accesskey "Ч">
+<!ENTITY day.6.Ddd "Пт" >
+<!ENTITY day.6.Ddd.accesskey "П">
+<!ENTITY day.7.Ddd "Сб" >
+<!ENTITY day.7.Ddd.accesskey "С">
+
+<!ENTITY day.1.name "Воскресенье" >
+<!ENTITY day.2.name "Понедельник" >
+<!ENTITY day.3.name "Вторник" >
+<!ENTITY day.4.name "Среда" >
+<!ENTITY day.5.name "Четверг" >
+<!ENTITY day.6.name "Пятница" >
+<!ENTITY day.7.name "Суббота" >
+
+<!ENTITY month.1.name "Января" >
+<!ENTITY month.2.name "Февраля" >
+<!ENTITY month.3.name "Марта" >
+<!ENTITY month.4.name "Апреля" >
+<!ENTITY month.5.name "Мая" >
+<!ENTITY month.6.name "Июня" >
+<!ENTITY month.7.name "Июля" >
+<!ENTITY month.8.name "Августа" >
+<!ENTITY month.9.name "Сентября" >
+<!ENTITY month.10.name "Октября" >
+<!ENTITY month.11.name "Ноября" >
+<!ENTITY month.12.name "Декабря" >
+
+<!ENTITY onemonthbackward.tooltip "Один месяц назад" >
+<!ENTITY onemonthforward.tooltip "Один месяц вперёд" >
+<!ENTITY oneyearbackward.tooltip "Один год назад" >
+<!ENTITY oneyearforward.tooltip "Один год вперёд" >
+<!ENTITY showToday.tooltip "Перейти на сегодня">
+<!ENTITY onedayforward.tooltip "Один день вперёд">
+<!ENTITY onedaybackward.tooltip "Один день назад">
+<!ENTITY showselectedday.tooltip "Показать события на выбранный день">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/menuOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/menuOverlay.dtd
new file mode 100644
index 0000000000..b372681481
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/menuOverlay.dtd
@@ -0,0 +1,50 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Event Menu -->
+<!ENTITY event.new.event "Новое событие…">
+<!ENTITY event.new.event.accesskey "с">
+
+<!ENTITY event.new.task "Новая задача…">
+<!ENTITY event.new.task.accesskey "д">
+
+<!ENTITY calendar.import.label "Импорт…">
+<!ENTITY calendar.import.accesskey "И">
+
+<!ENTITY calendar.export.label "Экспорт календаря…">
+<!ENTITY calendar.export.accesskey "Э">
+
+<!ENTITY calendar.publish.label "Публикация…">
+<!ENTITY calendar.publish.accesskey "у">
+
+<!ENTITY calendar.deletecalendar.label "Удалить выбранный календарь…">
+<!ENTITY calendar.deletecalendar.accesskey "а">
+<!ENTITY calendar.unsubscribecalendar.label "Отписаться от выбранного календаря…">
+<!ENTITY calendar.unsubscribecalendar.accesskey "п">
+
+<!-- LOCALIZATION NOTE (calendar.removecalendar.label): Removing the calendar
+ is the general action of removing it, while deleting means to clear the
+ data and unsubscribing means just taking it out of the calendar list. -->
+<!ENTITY calendar.removecalendar.label "Удалить выбранный календарь…">
+<!ENTITY calendar.removecalendar.accesskey "и">
+
+
+<!ENTITY calendar.menu.customize.label "Настроить…">
+<!ENTITY calendar.menu.customize.accesskey "Н">
+
+<!ENTITY showUnifinderCmd.label "Найти события">
+<!ENTITY showUnifinderCmd.accesskey "й">
+<!ENTITY showUnifinderCmd.tooltip "Переключение отображения панели поиска событий">
+
+<!ENTITY calendar.displaytodos.checkbox.label "Показывать задачи в календаре">
+<!ENTITY calendar.displaytodos.checkbox.accesskey "П">
+
+<!ENTITY goTodayCmd.label "Сегодня">
+<!ENTITY goTodayCmd.accesskey "С">
+
+<!ENTITY showCurrentView.label "Текущий обзор">
+<!ENTITY showCurrentView.accesskey "Т">
+
+<!ENTITY calendar.properties.label "Свойства календаря…">
+<!ENTITY calendar.properties.accesskey "в">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/migration.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/migration.dtd
new file mode 100644
index 0000000000..43c99a1b53
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/migration.dtd
@@ -0,0 +1,9 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY migration.title "&brandFullName;: импорт данных">
+<!ENTITY migration.welcome "Добро пожаловать">
+<!ENTITY migration.importing "Импорт">
+<!ENTITY migration.list.description "&brandShortName; может импортировать календарные данные из многих популярных программ. Данные из следующих программ были найдены на вашем компьютере. Выберите, данные из какой из них вы хотели бы импортировать.">
+<!ENTITY migration.progress.description "Импорт выбранных данных">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/migration.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/migration.properties
new file mode 100644
index 0000000000..6ef8c3a370
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/migration.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+migratingApp = Импорт %1$S…
+
+# The next two lines are duplicated from migration.dtd until there is branding
+# for lightning
+migrationTitle = %1$S: импорт данных
+migrationDescription=%1$S может импортировать календарные данные из многих популярных программ. Данные из следующих программ были найдены на вашем компьютере. Выберите, данные из какой из них вы хотели бы импортировать.
+finished = Выполнено
+disableExtTitle = Найдено несовместимое расширение
+disableExtText = У вас установлено старое расширение Mozilla Calendar, которое несовместимо с Lightning. Оно будет отключено и %1$S будет перезапущен.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/provider-uninstall.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/provider-uninstall.dtd
new file mode 100644
index 0000000000..2b5d003633
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/provider-uninstall.dtd
@@ -0,0 +1,12 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY providerUninstall.title "Удалить провайдер">
+<!ENTITY providerUninstall.accept.label "Отменить подписку на выбранное">
+<!ENTITY providerUninstall.accept.accesskey "О">
+<!ENTITY providerUninstall.cancel.label "Сохранить дополнение">
+<!ENTITY providerUninstall.cancel.accesskey "С">
+<!ENTITY providerUninstall.preName.label "Вы запросили удаление или отключение:">
+<!ENTITY providerUninstall.postName.label "Это приведет к тому, что календари представленные ниже будут отключены.">
+<!ENTITY providerUninstall.reinstallNote.label "Если вы не планируете переустанавливать этот провайдер, вы можете отказаться от подписки на календари этого провайдера.">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/timezones.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/timezones.properties
new file mode 100644
index 0000000000..b7a0ddd9c3
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/calendar/timezones.properties
@@ -0,0 +1,497 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+pref.timezone.floating=Локальное время
+pref.timezone.UTC=UTC/GMT
+
+# I've derived this list out of timezones.dtd
+# - replaced '_' with ' ' on value side
+# - corrected 'St xyz' to 'St. xyz'
+
+# This list is derived from the IANA timezone database, but was always
+# incomplete. It will not be updated; future revisions will rely on metazones as
+# defined by CLDR, but these remain in place to prevent regressions in
+# localization.
+
+# timezone names:
+pref.timezone.Africa.Abidjan=Африка/Абиджан
+pref.timezone.Africa.Accra=Африка/Аккра
+pref.timezone.Africa.Addis_Ababa=Африка/Аддис-Абеба
+pref.timezone.Africa.Algiers=Африка/Алжир
+pref.timezone.Africa.Asmara=Африка/Асмара
+pref.timezone.Africa.Bamako=Африка/Бамако
+pref.timezone.Africa.Bangui=Африка/Банги
+pref.timezone.Africa.Banjul=Африка/Банджул
+pref.timezone.Africa.Bissau=Африка/Биссау
+pref.timezone.Africa.Blantyre=Африка/Блантайр
+pref.timezone.Africa.Brazzaville=Африка/Браззавиль
+pref.timezone.Africa.Bujumbura=Африка/Бужумбура
+pref.timezone.Africa.Cairo=Африка/Каир
+pref.timezone.Africa.Casablanca=Африка/Касабланка
+pref.timezone.Africa.Ceuta=Африка/Сеута
+pref.timezone.Africa.Conakry=Африка/Конакри
+pref.timezone.Africa.Dakar=Африка/Дакар
+pref.timezone.Africa.Dar_es_Salaam=Африка/Дар-эс-Салам
+pref.timezone.Africa.Djibouti=Африка/Джибути
+pref.timezone.Africa.Douala=Африка/Дуала
+pref.timezone.Africa.El_Aaiun=Айрика/Эль-Аюн
+pref.timezone.Africa.Freetown=Африка/Фритаун
+pref.timezone.Africa.Gaborone=Африка/Габороне
+pref.timezone.Africa.Harare=Африка/Хараре
+pref.timezone.Africa.Johannesburg=Африка/Йоханнесбург
+pref.timezone.Africa.Kampala=Африка/Кампала
+pref.timezone.Africa.Khartoum=Африка/Хартум
+pref.timezone.Africa.Kigali=Африка/Кигали
+pref.timezone.Africa.Kinshasa=Африка/Киншаса
+pref.timezone.Africa.Lagos=Африка/Лагос
+pref.timezone.Africa.Libreville=Африка/Либревиль
+pref.timezone.Africa.Lome=Африка/Ломе
+pref.timezone.Africa.Luanda=Африка/Луанда
+pref.timezone.Africa.Lubumbashi=Африка/Лубумбаши
+pref.timezone.Africa.Lusaka=Африка/Лусака
+pref.timezone.Africa.Malabo=Африка/Малабо
+pref.timezone.Africa.Maputo=Африка/Мапуто
+pref.timezone.Africa.Maseru=Африку/Масеру
+pref.timezone.Africa.Mbabane=Африка/Мбабане
+pref.timezone.Africa.Mogadishu=Африка/Могадишо
+pref.timezone.Africa.Monrovia=Африка/Монровия
+pref.timezone.Africa.Nairobi=Африка/Найроби
+pref.timezone.Africa.Ndjamena=Африка/Нджамена
+pref.timezone.Africa.Niamey=Африка/Ниамей
+pref.timezone.Africa.Nouakchott=Африка/Нуакшот
+pref.timezone.Africa.Ouagadougou=Африка/Уагадугу
+pref.timezone.Africa.Porto-Novo=Африка/Порто-Ново
+pref.timezone.Africa.Sao_Tome=Африка/Сан-Томе
+pref.timezone.Africa.Tripoli=Африка/Триполи
+pref.timezone.Africa.Tunis=Африка/Тунис
+pref.timezone.Africa.Windhoek=Африка/Виндхук
+pref.timezone.America.Adak=Африка/Адак
+pref.timezone.America.Anchorage=Америка/Анкоридж
+pref.timezone.America.Anguilla=Америка/Ангилья
+pref.timezone.America.Antigua=Америка/Антигуа
+pref.timezone.America.Araguaina=Америка/Арагвайна
+pref.timezone.America.Argentina.Buenos_Aires=Америка/Аргентина/Буенос-Айрес
+pref.timezone.America.Argentina.Catamarca=Америка/Аргентина/Катамарка
+pref.timezone.America.Argentina.Cordoba=Америка/Аргентина/Кордова
+pref.timezone.America.Argentina.Jujuy=Америка/Аргентина/Жужуй
+pref.timezone.America.Argentina.La_Rioja=Америка/Аргентина/Ла-Риоха
+pref.timezone.America.Argentina.Mendoza=Америка/Аргентина/Мендоза
+pref.timezone.America.Argentina.Rio_Gallegos=Америка/Аргентина/Рио-Галлегос
+pref.timezone.America.Argentina.San_Juan=Америка/Аргентина/Сан-Жуан
+pref.timezone.America.Argentina.Tucuman=Америка/Аргентина/Тукуман
+pref.timezone.America.Argentina.Ushuaia=Америка/Аргентина/Ушуайя
+pref.timezone.America.Aruba=Америка/Аруба
+pref.timezone.America.Asuncion=Америка/Асунсьон
+pref.timezone.America.Atikokan=Америка/Атикокан
+pref.timezone.America.Bahia=Америка/Бахия
+pref.timezone.America.Barbados=Америка/Барбадос
+pref.timezone.America.Belem=Америка/Белем
+pref.timezone.America.Belize=Америка/Белиз
+pref.timezone.America.Blanc-Sablon=Америка/Бланк-Саблон
+pref.timezone.America.Boa_Vista=Америка/Боа-Виста
+pref.timezone.America.Bogota=Америка/Богота
+pref.timezone.America.Boise=Америка/Бойсе
+pref.timezone.America.Cambridge_Bay=Америка/Кембридж-Бэй
+pref.timezone.America.Campo_Grande=Америка/Кампо-Гранде
+pref.timezone.America.Cancun=Америка/Канкун
+pref.timezone.America.Caracas=Америка/Каракас
+pref.timezone.America.Cayenne=Америка/Кайенна
+pref.timezone.America.Cayman=Америка/Кайман
+pref.timezone.America.Chicago=Америка/Чикаго
+pref.timezone.America.Chihuahua=Америка/Чихуахуа
+pref.timezone.America.Costa_Rica=Америка/Коста-Рика
+pref.timezone.America.Cuiaba=Америка/Куяба
+pref.timezone.America.Curacao=Америка/Кюрасао
+pref.timezone.America.Danmarkshavn=Америка/Денмарксхавн
+pref.timezone.America.Dawson=Америка/Доусон
+pref.timezone.America.Dawson_Creek=Америка/Доусон-Крик
+pref.timezone.America.Denver=Америка/Денвер
+pref.timezone.America.Detroit=Америка/Детройт
+pref.timezone.America.Dominica=Америка/Доминика
+pref.timezone.America.Edmonton=Америка/Эдмонтон
+pref.timezone.America.Eirunepe=Америка/Эйрунеп
+pref.timezone.America.El_Salvador=Америка/Сальвадор
+pref.timezone.America.Fortaleza=Америка/Форталеза
+pref.timezone.America.Glace_Bay=Америка/Глейс-Бей
+pref.timezone.America.Godthab=Америка/Готхоб
+pref.timezone.America.Goose_Bay=Америка/Гус-бэй
+pref.timezone.America.Grand_Turk=Америка/Гранд-Терк
+pref.timezone.America.Grenada=Америка/Гренада
+pref.timezone.America.Guadeloupe=Америка/Гваделупа
+pref.timezone.America.Guatemala=Америка/Гватемала
+pref.timezone.America.Guayaquil=Америка/Гуаякиль
+pref.timezone.America.Guyana=Америка/Гайана
+pref.timezone.America.Halifax=Америка/Галифакс
+pref.timezone.America.Havana=Америка/Гавана
+pref.timezone.America.Hermosillo=Америка/Эрмосильо
+pref.timezone.America.Indiana.Indianapolis=Америка/Индиана/Индианаполис
+pref.timezone.America.Indiana.Knox=Америка/Индиана/Нокс
+pref.timezone.America.Indiana.Marengo=Америка/Индиана/Маренго
+pref.timezone.America.Indiana.Petersburg=Америка/Индиана/Петербург
+pref.timezone.America.Indiana.Vevay=Америка/Индиана/Вивэй
+pref.timezone.America.Indiana.Vincennes=Америка/Индиана/Венсенн
+pref.timezone.America.Inuvik=Америка/Инувик
+pref.timezone.America.Iqaluit=Америка/Икалит
+pref.timezone.America.Jamaica=Америка/Ямайка
+pref.timezone.America.Juneau=Америка/Джуно
+pref.timezone.America.Kentucky.Louisville=Америка/Кентукки/Луисвиль
+pref.timezone.America.Kentucky.Monticello=Америка/Кентукки/Монтиселло
+pref.timezone.America.La_Paz=Америка/Ла-Пас
+pref.timezone.America.Lima=Америка/Лима
+pref.timezone.America.Los_Angeles=Америка/Лос-Анджелес
+pref.timezone.America.Maceio=Америка/Масейо
+pref.timezone.America.Managua=Америка/Манагуа
+pref.timezone.America.Manaus=Америка/Манаус
+pref.timezone.America.Martinique=Америка/Мартиник
+pref.timezone.America.Mazatlan=Америка/Мазатлан
+pref.timezone.America.Menominee=Америка/Меномини
+pref.timezone.America.Merida=Америка/Мерида
+pref.timezone.America.Mexico_City=Америка/Мехико-Сити
+pref.timezone.America.Miquelon=Америка/Микелон
+pref.timezone.America.Moncton=Америка/Монктон
+pref.timezone.America.Monterrey=Америка/Монтерей
+pref.timezone.America.Montevideo=Америка/Монтевидео
+pref.timezone.America.Montreal=Америка/Монреаль
+pref.timezone.America.Montserrat=Америка/Монсерат
+pref.timezone.America.Nassau=Америка/Нассау
+pref.timezone.America.New_York=Америка/Нью-Йорк
+pref.timezone.America.Nipigon=Америка/Нипигон
+pref.timezone.America.Nome=Америка/Ном
+pref.timezone.America.Noronha=Америка/Норонха
+pref.timezone.America.North_Dakota.Center=Америка/Северная Дакота/Центр
+pref.timezone.America.North_Dakota.New_Salem=Америка/Северная Дакота/Нью-Салем
+pref.timezone.America.Panama=Америка/Панама
+pref.timezone.America.Pangnirtung=Америка/Пангниртунг
+pref.timezone.America.Paramaribo=Америка/Парамарибо
+pref.timezone.America.Phoenix=Америка/Феникс
+pref.timezone.America.Port-au-Prince=Америка/Порт-о-Пренс
+pref.timezone.America.Port_of_Spain=Америка/Порт-оф-Спейн
+pref.timezone.America.Porto_Velho=Америка/Порто-Вельо
+pref.timezone.America.Puerto_Rico=Америка/Пуэрто-Рико
+pref.timezone.America.Rainy_River=Америка/Рэйни-Ривер
+pref.timezone.America.Rankin_Inlet=Америка/Рэнкин-Инлет
+pref.timezone.America.Recife=Америка/Ресифи
+pref.timezone.America.Regina=Америка/Реджайна
+pref.timezone.America.Rio_Branco=Америка/Рио-Бранко
+pref.timezone.America.Santiago=Америка/Сантьяго
+pref.timezone.America.Santo_Domingo=Америка/Санто-Доминго
+pref.timezone.America.Sao_Paulo=Америка/Сан-Пауло
+pref.timezone.America.Scoresbysund=Америка/Скорсбисанд
+pref.timezone.America.Shiprock=Америка/Шипрок
+pref.timezone.America.St_Johns=Америка/Сент-Джонс
+pref.timezone.America.St_Kitts=Америка/Сент-Китс
+pref.timezone.America.St_Lucia=Америка/Сент-Люсия
+pref.timezone.America.St_Thomas=Америка/Сент-Томас
+pref.timezone.America.St_Vincent=Америка/Сент-Винсент
+pref.timezone.America.Swift_Current=Америка/Свифт-Карэнт
+pref.timezone.America.Tegucigalpa=Америка/Тегусигальпа
+pref.timezone.America.Thule=Америка/Туле
+pref.timezone.America.Thunder_Bay=Америка/Тандер-Бэй
+pref.timezone.America.Tijuana=Америка/Тихуана
+pref.timezone.America.Toronto=Америка/Торонто
+pref.timezone.America.Tortola=Америка/Тортола
+pref.timezone.America.Vancouver=Америка/Ванкувер
+pref.timezone.America.Whitehorse=Америка/Уайтхорс
+pref.timezone.America.Winnipeg=Америка/Виннипег
+pref.timezone.America.Yakutat=Америка/Якутат
+pref.timezone.America.Yellowknife=Америка/Йеллоунайф
+pref.timezone.Antarctica.Casey=Антарктида/Кейси
+pref.timezone.Antarctica.Davis=Антарктида/Дэвис
+pref.timezone.Antarctica.DumontDUrville=Антарктида/Дюмон-Дюрвиль
+pref.timezone.Antarctica.Mawson=Антарктида/Моусон
+pref.timezone.Antarctica.McMurdo=Антарктида/Мак-Мердо
+pref.timezone.Antarctica.Palmer=Антарктида/Пальмер
+pref.timezone.Antarctica.Rothera=Антарктида/Розера
+pref.timezone.Antarctica.South_Pole=Антарктида/Южный Полюс
+pref.timezone.Antarctica.Syowa=Антарктида/Сайова
+pref.timezone.Antarctica.Vostok=Антарктида/Восток
+pref.timezone.Arctic.Longyearbyen=Арктика/Лонгэрбайэн
+pref.timezone.Asia.Aden=Азия/Аден
+pref.timezone.Asia.Almaty=Азия/Алматы
+pref.timezone.Asia.Amman=Азия/Амман
+pref.timezone.Asia.Anadyr=Азия/Анадырь
+pref.timezone.Asia.Aqtau=Азия/Актау
+pref.timezone.Asia.Aqtobe=Азия/Актуб
+pref.timezone.Asia.Ashgabat=Азия/Ашхабад
+pref.timezone.Asia.Baghdad=Азия/Багдад
+pref.timezone.Asia.Bahrain=Азия/Бахрейн
+pref.timezone.Asia.Baku=Азия/Баку
+pref.timezone.Asia.Bangkok=Азия/Бангкок
+pref.timezone.Asia.Beirut=Азия/Бейрут
+pref.timezone.Asia.Bishkek=Азия/Бишкек
+pref.timezone.Asia.Brunei=Азия/Бруней
+pref.timezone.Asia.Choibalsan=Азия/Чойбалсана
+pref.timezone.Asia.Chongqing=Азия/Чунцин
+pref.timezone.Asia.Colombo=Азия/Коломбо
+pref.timezone.Asia.Damascus=Азия/Дамаск
+pref.timezone.Asia.Dhaka=Азия/Дака
+pref.timezone.Asia.Dili=Азия/Дили
+pref.timezone.Asia.Dubai=Азия/Дубай
+pref.timezone.Asia.Dushanbe=Азия/Душанбе
+pref.timezone.Asia.Gaza=Азия/Газа
+pref.timezone.Asia.Harbin=Азия/Харбин
+pref.timezone.Asia.Hong_Kong=Азия/Гонконг
+pref.timezone.Asia.Hovd=Азия/Ховд
+pref.timezone.Asia.Irkutsk=Азия/Иркутск
+pref.timezone.Asia.Istanbul=Азия/Стамбул
+pref.timezone.Asia.Jakarta=Азия/Джакарта
+pref.timezone.Asia.Jayapura=Азия/Джайапура
+pref.timezone.Asia.Jerusalem=Азия/Иерусалим
+pref.timezone.Asia.Kabul=Азия/Кабул
+pref.timezone.Asia.Kamchatka=Азия/Камчатка
+pref.timezone.Asia.Karachi=Азия/Карачи
+pref.timezone.Asia.Kashgar=Азия/Кашгар
+pref.timezone.Asia.Kathmandu=Азия/Катманду
+pref.timezone.Asia.Krasnoyarsk=Азия/Красноярск
+pref.timezone.Asia.Kuala_Lumpur=Азия/Куала-Лумпур
+pref.timezone.Asia.Kuching=Азия/Кучинг
+pref.timezone.Asia.Kuwait=Азия/Кувейт
+pref.timezone.Asia.Macau=Азия/Макао
+pref.timezone.Asia.Magadan=Азия/Магадан
+pref.timezone.Asia.Makassar=Азия/Макасар
+pref.timezone.Asia.Manila=Азия/Манила
+pref.timezone.Asia.Muscat=Азия/Мускат
+pref.timezone.Asia.Nicosia=Азия/Никосия
+pref.timezone.Asia.Novosibirsk=Азия/Новосибирск
+pref.timezone.Asia.Omsk=Азия/Омск
+pref.timezone.Asia.Oral=Азия/Орал
+pref.timezone.Asia.Phnom_Penh=Азия/Пномпень
+pref.timezone.Asia.Pontianak=Азия/Понтианак
+pref.timezone.Asia.Pyongyang=Азия/Пхеньян
+pref.timezone.Asia.Qatar=Азия/Катар
+pref.timezone.Asia.Qyzylorda=Азия/Кызылорда
+pref.timezone.Asia.Rangoon=Азия/Рангун
+pref.timezone.Asia.Riyadh=Азия/Эр-Рияд
+pref.timezone.Asia.Sakhalin=Азия/Сахалин
+pref.timezone.Asia.Samarkand=Азия/Самарканд
+pref.timezone.Asia.Seoul=Азия/Сеул
+pref.timezone.Asia.Shanghai=Азия/Шанхай
+pref.timezone.Asia.Singapore=Азия/Сингапур
+pref.timezone.Asia.Taipei=Азия/Тайпей
+pref.timezone.Asia.Tashkent=Азия/Ташкент
+pref.timezone.Asia.Tbilisi=Азия/Тбилиси
+pref.timezone.Asia.Tehran=Азия/Тегеран
+pref.timezone.Asia.Thimphu=Азия/Тхимпху
+pref.timezone.Asia.Tokyo=Азия/Токио
+pref.timezone.Asia.Ulaanbaatar=Азия/Улан-Батор
+pref.timezone.Asia.Urumqi=Азия/Урумчи
+pref.timezone.Asia.Vientiane=Азия/Вьентьян
+pref.timezone.Asia.Vladivostok=Азия/Владивосток
+pref.timezone.Asia.Yakutsk=Азия/Якутск
+pref.timezone.Asia.Yekaterinburg=Азия/Екатеринбург
+pref.timezone.Asia.Yerevan=Азия/Ереван
+pref.timezone.Atlantic.Azores=Атлантика/Азоры
+pref.timezone.Atlantic.Bermuda=Атлантика/Бермуды
+pref.timezone.Atlantic.Canary=Атлантика/Канары
+pref.timezone.Atlantic.Cape_Verde=Атлантика/Кабо-Верде
+pref.timezone.Atlantic.Faroe=Атлантика/Фареры
+pref.timezone.Atlantic.Madeira=Атлантика/Мадейра
+pref.timezone.Atlantic.Reykjavik=Атлантика/Рейкьявик
+pref.timezone.Atlantic.South_Georgia=Атлантика/Южная Георгия
+pref.timezone.Atlantic.St_Helena=Атлантика/св. Елена
+pref.timezone.Atlantic.Stanley=Атлантика/Стэнли
+pref.timezone.Australia.Adelaide=Австралия/Аделаида
+pref.timezone.Australia.Brisbane=Австралия/Брисбен
+pref.timezone.Australia.Broken_Hill=Австралия/Брокен-Хилл
+pref.timezone.Australia.Currie=Австралия/Курри
+pref.timezone.Australia.Darwin=Австралия/Дарвин
+pref.timezone.Australia.Eucla=Австралия/Юкла
+pref.timezone.Australia.Hobart=Австралия/Хобарт
+pref.timezone.Australia.Lindeman=Австралия/Линдэман
+pref.timezone.Australia.Lord_Howe=Австралия/Лорд-Гау
+pref.timezone.Australia.Melbourne=Австралия/Мельбурн
+pref.timezone.Australia.Perth=Австралия/Перт
+pref.timezone.Australia.Sydney=Австралия/Сидней
+pref.timezone.Europe.Amsterdam=Европа/Амстердам
+pref.timezone.Europe.Andorra=Европа/Андорра
+pref.timezone.Europe.Athens=Европа/Афины
+pref.timezone.Europe.Belgrade=Европа/Белград
+pref.timezone.Europe.Berlin=Европа/Берлин
+pref.timezone.Europe.Bratislava=Европа/Братислава
+pref.timezone.Europe.Brussels=Европа/Брюссель
+pref.timezone.Europe.Bucharest=Европа/Бухарест
+pref.timezone.Europe.Budapest=Европа/Будапешт
+pref.timezone.Europe.Chisinau=Европа/Кишинев
+pref.timezone.Europe.Copenhagen=Европа/Копенгаген
+pref.timezone.Europe.Dublin=Европа/Дублин
+pref.timezone.Europe.Gibraltar=Европа/Гибралтар
+pref.timezone.Europe.Guernsey=Европа/Гернзи
+pref.timezone.Europe.Helsinki=Европа/Хельсинки
+pref.timezone.Europe.Isle_of_Man=Европа/Остров Мэн
+pref.timezone.Europe.Istanbul=Европа/Стамбул
+pref.timezone.Europe.Jersey=Европа/Джерси
+pref.timezone.Europe.Kaliningrad=Европа/Калининград
+pref.timezone.Europe.Kiev=Европа/Киев
+pref.timezone.Europe.Lisbon=Европа/Лисбон
+pref.timezone.Europe.Ljubljana=Европа/Любляна
+pref.timezone.Europe.London=Европа/Лондон
+pref.timezone.Europe.Luxembourg=Европа/Люксембург
+pref.timezone.Europe.Madrid=Европа/Мадрид
+pref.timezone.Europe.Malta=Европа/Мальта
+pref.timezone.Europe.Mariehamn=Европа/Мариенхамн
+pref.timezone.Europe.Minsk=Европа/Минск
+pref.timezone.Europe.Monaco=Европа/Монако
+pref.timezone.Europe.Moscow=Европа/Москва
+pref.timezone.Europe.Nicosia=Европа/Никосия
+pref.timezone.Europe.Oslo=Европа/Осло
+pref.timezone.Europe.Paris=Европа/Париж
+pref.timezone.Europe.Podgorica=Европа/Подгорица
+pref.timezone.Europe.Prague=Европа/Прага
+pref.timezone.Europe.Riga=Европа/Рига
+pref.timezone.Europe.Rome=Европа/Рим
+pref.timezone.Europe.Samara=Европа/Самара
+pref.timezone.Europe.San_Marino=Европа/Сан-Марино
+pref.timezone.Europe.Sarajevo=Европа/Сараево
+pref.timezone.Europe.Simferopol=Европа/Симферополь
+pref.timezone.Europe.Skopje=Европа/Скопье
+pref.timezone.Europe.Sofia=Европа/София
+pref.timezone.Europe.Stockholm=Европа/Стокгольм
+pref.timezone.Europe.Tallinn=Европа/Таллин
+pref.timezone.Europe.Tirane=Европа/Тирана
+pref.timezone.Europe.Uzhgorod=Европа/Ужгород
+pref.timezone.Europe.Vaduz=Европа/Вадуц
+pref.timezone.Europe.Vatican=Европа/Ватикан
+pref.timezone.Europe.Vienna=Европа/Вена
+pref.timezone.Europe.Vilnius=Европа/Вильнюс
+pref.timezone.Europe.Volgograd=Europe/Волгоград
+pref.timezone.Europe.Warsaw=Европа/Варшава
+pref.timezone.Europe.Zagreb=Европа/Загреб
+pref.timezone.Europe.Zaporozhye=Европа/Запорожье
+pref.timezone.Europe.Zurich=Европа/Цюрих
+pref.timezone.Indian.Antananarivo=Индийский о-н/Антананариву
+pref.timezone.Indian.Chagos=Индийский о-н/Чагос
+pref.timezone.Indian.Christmas=Индийский о-н/Рождество
+pref.timezone.Indian.Cocos=Индийский о-н/Кокосовы
+pref.timezone.Indian.Comoro=Индийский о-н/Коморские
+pref.timezone.Indian.Kerguelen=Индийский о-н/Кергелен
+pref.timezone.Indian.Mahe=Индийский о-н/Махэ
+pref.timezone.Indian.Maldives=Индийский о-н/Мальдивы
+pref.timezone.Indian.Mauritius=Индийский о-н/Маврикий
+pref.timezone.Indian.Mayotte=Индийский о-н/Майот
+pref.timezone.Indian.Reunion=Индийский о-н/Реюньон
+pref.timezone.Pacific.Apia=Океания/Апия
+pref.timezone.Pacific.Auckland=Океания/Окленд
+pref.timezone.Pacific.Chatham=Океания/Чатем
+pref.timezone.Pacific.Easter=Океания/Пасха
+pref.timezone.Pacific.Efate=Океания/Эфате
+pref.timezone.Pacific.Enderbury=Океания/Эндербери
+pref.timezone.Pacific.Fakaofo=Океания/Факаофо
+pref.timezone.Pacific.Fiji=Океания/Фиджи
+pref.timezone.Pacific.Funafuti=Океания/Фунафути
+pref.timezone.Pacific.Galapagos=Океания/Галапагос
+pref.timezone.Pacific.Gambier=Океания/Гамбир
+pref.timezone.Pacific.Guadalcanal=Океания/Гвадалканал
+pref.timezone.Pacific.Guam=Океания/Гуам
+pref.timezone.Pacific.Honolulu=Океания/Гонолулу
+pref.timezone.Pacific.Johnston=Океания/Джонстон
+pref.timezone.Pacific.Kiritimati=Океания/Киритимати
+pref.timezone.Pacific.Kosrae=Океания/Косрей
+pref.timezone.Pacific.Kwajalein=Океания/Кваджалейн
+pref.timezone.Pacific.Majuro=Океания/Маджуро
+pref.timezone.Pacific.Marquesas=Океания/Маркизы
+pref.timezone.Pacific.Midway=Океания/Мидуэй
+pref.timezone.Pacific.Nauru=Океания/Науру
+pref.timezone.Pacific.Niue=Океания/Ниуэ
+pref.timezone.Pacific.Norfolk=Океания/Норфолк
+pref.timezone.Pacific.Noumea=Океания/Нумеа
+pref.timezone.Pacific.Pago_Pago=Океания/Паго-Паго
+pref.timezone.Pacific.Palau=Океания/Палау
+pref.timezone.Pacific.Pitcairn=Океания/Питкэрн
+pref.timezone.Pacific.Ponape=Океания/Понапе
+pref.timezone.Pacific.Port_Moresby=Океания/Порт-Морсби
+pref.timezone.Pacific.Rarotonga=Океания/Раротонга
+pref.timezone.Pacific.Saipan=Океания/Сайпан
+pref.timezone.Pacific.Tahiti=Океания/Таити
+pref.timezone.Pacific.Tarawa=Океания/Тарава
+pref.timezone.Pacific.Tongatapu=Океания/Тонгатапу
+pref.timezone.Pacific.Truk=Океания/Трук
+pref.timezone.Pacific.Wake=Океания/Уэйк
+pref.timezone.Pacific.Wallis=Океания/Уоллис
+
+# the following have been missing
+pref.timezone.America.Indiana.Tell_City=Америка/Индиана/Телл-Сити
+pref.timezone.America.Indiana.Winamac=Америка/Индиана/Винамак
+pref.timezone.America.Marigot=Америка/Маригот
+pref.timezone.America.Resolute=Америка/Резолют
+pref.timezone.America.St_Barthelemy=Америка/Сен-Бартельми
+
+# added with 2008d:
+pref.timezone.America.Argentina.San_Luis=Америка/Аргенитина/Сан-Луис
+pref.timezone.America.Santarem=Америка/Сантарем
+pref.timezone.Asia.Ho_Chi_Minh=Азия/Хо-Ши-Мин
+pref.timezone.Asia.Kolkata=Азия/Калькутта
+
+# added with 2008i:
+pref.timezone.America.Argentina.Salta=Америка/Аргентина/Сальта
+
+# added with 2010i
+pref.timezone.America.Matamoros=Америка/Матаморос
+pref.timezone.America.Ojinaga=Америка/Охинага
+pref.timezone.America.Santa_Isabel=Америка/Санта Изабель
+pref.timezone.Antarctica.Macquarie=Антарктика/Макгуайр
+pref.timezone.Asia.Novokuznetsk=Азия/Новокузнецк
+
+#added with 2011b
+pref.timezone.America.Bahia_Banderas=Америка/Баия Бандерас
+pref.timezone.America.North_Dakota.Beulah=Америка/Северная Дакота/Бойл
+pref.timezone.Pacific.Chuuk=Океания/Чуук
+pref.timezone.Pacific.Pohnpei=Океания/Понпеи
+
+#added with 2011n
+pref.timezone.Africa.Juba=Африка/Джуба
+pref.timezone.America.Kralendijk=Америка/Кралендейк
+pref.timezone.America.Lower_Princes=Америка/Ловер Принцес
+pref.timezone.America.Metlakatla=Америка/Метлакатла
+pref.timezone.America.Sitka=Америка/Ситка
+pref.timezone.Asia.Hebron=Азия/Хаброн
+
+#added with 2013a
+pref.timezone.America.Creston=Америка/Крестон
+pref.timezone.Asia.Khandyga=Азия/Хандыга
+pref.timezone.Asia.Ust-Nera=Азия/Усть-Нера
+pref.timezone.Europe.Busingen=Европа/Бюзинген
+
+#added with 2014b
+pref.timezone.Antarctica.Troll=Антарктика/Тролл
+
+#added with 2014j
+pref.timezone.Asia.Chita=Азия/Чита
+pref.timezone.Asia.Srednekolymsk=Азия/Среднеколымск
+pref.timezone.Pacific.Bougainville=Океания/Бугенвиль
+
+#added with 2.2015g
+pref.timezone.America.Fort_Nelson=Америка/Форт-Нельсон
+
+#added with 2.2016b
+pref.timezone.Europe.Ulyanovsk=Европа/Ульяновск
+pref.timezone.Europe.Astrakhan=Европа/Астрахань
+pref.timezone.Asia.Barnaul=Азия/Барнаул
+
+#added with 2.2016i
+pref.timezone.Asia.Yangon=Азия/Янгон
+pref.timezone.Asia.Tomsk=Азия/Томск
+pref.timezone.Asia.Famagusta=Азия/Фамагуста
+pref.timezone.Europe.Kirov=Европа/Киров
+
+#added with 2.2016j
+pref.timezone.Europe.Saratov=Европа/Саратов
+pref.timezone.Asia.Atyrau=Азия/Атырау
+
+#added with 2.2017b
+pref.timezone.America.Punta_Arenas=Америка/Пунта Аренас
+
+#added with 2.2018i
+pref.timezone.Asia.Qostanay=Азия/Костанай
+
+#added with 2.2020a
+pref.timezone.America.Nuuk=Америка/Нуук
+
+#added with 2.2021c
+pref.timezone.Pacific.Kanton=Океания/Кантон
+
+#added with 2.2022b
+pref.timezone.Europe.Kyiv=Европа/Киев
+
+#added with 2.2023c
+pref.timezone.America.Ciudad_Juarez=Америка/Сьюдад-Хуарес
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/accounts.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/accounts.dtd
new file mode 100644
index 0000000000..0b3ec9a36e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/accounts.dtd
@@ -0,0 +1,33 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Account manager window for Instantbird -->
+<!ENTITY accounts.title "Учётные записи - &brandShortName;">
+<!-- Instant messaging account status window for Thunderbird -->
+<!ENTITY accountsWindow.title "Статус мгновенных сообщений">
+
+<!ENTITY accountManager.newAccount.label "Создать учётную запись">
+<!ENTITY accountManager.newAccount.accesskey "а">
+<!ENTITY accountManager.close.label "Закрыть">
+<!ENTITY accountManager.close.accesskey "ы">
+<!-- This should match account.commandkey in instantbird.dtd -->
+<!ENTITY accountManager.close.commandkey "a">
+<!-- This title must be short, displayed with a big font size -->
+<!ENTITY accountManager.noAccount.title "Учётные записи отсутствуют">
+<!ENTITY accountManager.noAccount.description "Щёлкните по кнопке «&accountManager.newAccount.label;», чтобы &brandShortName; провел вас через процесс её создания.">
+<!ENTITY account.autoSignOn.label "Входить при запуске">
+<!ENTITY account.autoSignOn.accesskey "з">
+<!ENTITY account.connect.label "Подключить">
+<!ENTITY account.connect.accesskey "ю">
+<!ENTITY account.disconnect.label "Отключить">
+<!ENTITY account.disconnect.accesskey "к">
+<!ENTITY account.edit.label "Свойства">
+<!ENTITY account.edit.accesskey "в">
+<!ENTITY account.cancelReconnection.label "Отменить повторное подключение">
+<!ENTITY account.cancelReconnection.accesskey "м">
+<!ENTITY account.copyDebugLog.label "Копировать лог отладки">
+<!ENTITY account.copyDebugLog.accesskey "п">
+<!ENTITY account.connecting "Подключение…">
+<!ENTITY account.disconnecting "Отключение…">
+<!ENTITY account.disconnected "Не подключена">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/accounts.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/accounts.properties
new file mode 100644
index 0000000000..19c6fa01bd
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/accounts.properties
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (passwordPromptTitle, passwordPromptText):
+# %S is replaced with the name of the account
+passwordPromptTitle=Пароль для %S
+passwordPromptText=Введите ваш пароль на %S для соединения с ним.
+passwordPromptSaveCheckbox=Сохранить этот пароль в хранилище паролей.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/commands.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/commands.properties
new file mode 100644
index 0000000000..03f222efd7
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/commands.properties
@@ -0,0 +1,27 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (commands):
+# %S is a comma separated list of command names.
+commands=Команды: %S.\nИспользуйте /help &lt;команда&gt; для подробной справки.
+# LOCALIZATION NOTE (noCommand, noHelp):
+# %S is the command name the user typed.
+noCommand=Нет команды «%S».
+noHelp=Нет справочного сообщения для команды «%S»!
+
+sayHelpString=say &lt;message&gt;: отправить сообщение без выполнения команд.
+rawHelpString=raw &lt;сообщение&gt;: отправить сообщение не экранируя сущности HTML.
+helpHelpString=help &lt;название&gt;: показать справочное сообщение для команды &lt;название&gt; или список возможных команд без параметра.
+
+# LOCALIZATION NOTE (statusCommand):
+# %1$S is replaced with a status command name
+# (one of "back", "away", "busy", "dnd", or "offline").
+# %2$S is replaced with the localized version of that status type
+# (one of the 5 strings below).
+statusCommand=%1$S &lt;сообщение статуса&gt;: установить статус «%2$S» с необязательным сообщением о статусе.
+back=доступен
+away=отошел
+busy=занят
+dnd=занят
+offline=отключен
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/contacts.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/contacts.properties
new file mode 100644
index 0000000000..e6e2553512
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/contacts.properties
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (defaultGroup):
+# This is the name of the group that will automatically be created when adding a
+# buddy without specifying a group.
+defaultGroup=Контакты
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/conversations.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/conversations.properties
new file mode 100644
index 0000000000..096def516f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/conversations.properties
@@ -0,0 +1,80 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (targetChanged):
+# %1$S is the new conversation title (display name of the new target),
+# %2$S is the protocol name used for the new target.
+targetChanged=Чат с %1$S будет продолжен, используя %2$S.
+
+# LOCALIZATION NOTE (statusChanged):
+# %1$S is the display name of the contact.
+# %2$S is the new status type (a value from status.properties).
+statusChanged=%1$S теперь %2$S.
+# LOCALIZATION NOTE (statusChangedWithStatusText):
+# %1$S is the display name of the contact.
+# %2$S is the new status type (a value from status.properties).
+# %3$S is the status text (eg. "I'm currently away from the computer").
+statusChangedWithStatusText=%1$S теперь %2$S: %3$S.
+# LOCALIZATION NOTE (statusChangedFromUnknown[WithStatusText]):
+# special case of the previous 2 strings for when the status was
+# previously unknown. These 2 strings should not mislead the user
+# into thinking the person's status has just changed.
+statusChangedFromUnknown=%1$S %2$S.
+statusChangedFromUnknownWithStatusText=%1$S %2$S: %3$S.
+# LOCALIZATION NOTE (statusKnown[WithStatusText]):
+# special case of the previous 2 strings for when an account has just
+# been reconnected, so the status is now known. These 2 strings should not
+# mislead the user into thinking the person's status has just changed.
+statusKnown=Ваша учётная запись снова подключена (%1$S — %2$S).
+statusKnownWithStatusText=Ваша учётная запись снова подключена (%1$S — %2$S: %3$S).
+# LOCALIZATION NOTE (statusUnknown):
+# %S is the display name of the contact.
+statusUnknown=Ваша учетная запись отключена (статус %S больше не известен).
+
+accountDisconnected=Ваша учетная запись отключена.
+accountReconnected=Ваша учётная запись снова подключена.
+
+# LOCALIZATION NOTE (autoReply):
+# %S is replaced by the text of a message that was sent as an automatic reply.
+autoReply=Автоответчик - %S
+
+# LOCALIZATION NOTE (noTopic):
+# Displayed instead of the topic when no topic is set.
+noTopic=Тема комнаты не установлена.
+
+# LOCALIZATION NOTE (topicSet):
+# %1$S is the conversation name, %2$S is the topic.
+topicSet=Темой для %1$S является: %2$S.
+# LOCALIZATION NOTE (topicNotSet):
+# %S is the conversation name.
+topicNotSet=Тема для %S не установлена.
+# LOCALIZATION NOTE (topicChanged):
+# %1$S is the user who changed the topic, %2$S is the new topic.
+topicChanged=%1$S изменил тему на: %2$S.
+# LOCALIZATION NOTE (topicCleared):
+# %1$S is the user who cleared the topic.
+topicCleared=%1$S удалил тему.
+
+# LOCALIZATION NOTE (nickSet):
+# This is displayed as a system message when a participant changes his/her
+# nickname in a conversation.
+# %1$S is the old nick.
+# %2$S is the new nick.
+nickSet=%1$S теперь известен как %2$S.
+# LOCALIZATION NOTE (nickSet.you):
+# This is displayed as a system message when your nickname is changed.
+# %S is your new nick.
+nickSet.you=Вы теперь известны как %S.
+
+# LOCALIZATION NOTE (messenger.conversations.selections.ellipsis):
+# ellipsis is used when copying a part of a message to show that the message was cut
+messenger.conversations.selections.ellipsis=[…]
+
+# LOCALIZATION NOTE (messenger.conversations.selections.{system,content,action}MessagesTemplate):
+# These 3 templates are used to format selected messages before copying them.
+# Do not translate the texts between % characters, but feel free to adjust
+# whitespace and separators to make them fit your locale.
+messenger.conversations.selections.systemMessagesTemplate=%time% - %message%
+messenger.conversations.selections.contentMessagesTemplate=%time% - %sender%: %message%
+messenger.conversations.selections.actionMessagesTemplate=%time% * %sender% %message%
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/facebook.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/facebook.properties
new file mode 100644
index 0000000000..27c812a503
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/facebook.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+facebook.chat.name=Чат Фейсбук
+facebook.disabled=Чат Фейсбук более не поддерживается, так как Фейсбук отключил свой XMPP-шлюз.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/imtooltip.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/imtooltip.properties
new file mode 100644
index 0000000000..38ffce81b5
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/imtooltip.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+buddy.username=Имя пользователя
+buddy.account=Учетная запись
+contact.tags=Метки
+
+otr.tag=Статус OTR
+
+encryption.tag=Статус шифрования
+message.status=Сообщение зашифровано
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/irc.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/irc.properties
new file mode 100644
index 0000000000..60f0e659f7
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/irc.properties
@@ -0,0 +1,209 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (irc.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring an IRC account.
+irc.usernameHint=псевдоним
+
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if the account is
+# disconnected because of an error.
+connection.error.lost=Соединение с сервером потеряно
+connection.error.timeOut=Время ожидания соединения истекло
+connection.error.invalidUsername=Имя пользователя %S является недопустимым
+connection.error.invalidPassword=Неверный пароль на сервер
+connection.error.passwordRequired=Требуется пароль
+
+# LOCALIZATION NOTE (joinChat.*):
+# These show up on the join chat menu. An underscore is for the access key.
+joinChat.channel=_Канал
+joinChat.password=_Пароль
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.server=Сервер
+options.port=Порт
+options.ssl=Использовать SSL
+options.encoding=Кодировка
+options.quitMessage=Сообщение при выходе с сервера
+options.partMessage=Сообщение при покидании канала
+options.showServerTab=Показывать сообщения с сервера
+options.alternateNicks=Альтернативные псевдонимы
+
+# LOCALIZATION NOTE (ctcp.version):
+# %1$S is the nickname of the user whose version was requested.
+# %2$S is the version response from the client.
+ctcp.version=%1$S использует "%2$S".
+# LOCALIZATION NOTE (ctcp.time):
+# %1$S is the nickname of the user whose time was requested.
+# %2$S is the time response.
+ctcp.time=Время у %1$S — %2$S.
+
+# LOCALZIATION NOTE (command.*):
+# These are the help messages for each command, the %S is the command name
+# Each command first gives the parameter it accepts and then a description of
+# the command.
+command.action=%S &lt;действие для выполнения&gt;: Выполнить действие.
+command.ban=%S &lt;псевдоним!user@host&gt;: Запретить вход пользователей, соответствующих данному шаблону.
+command.ctcp=%S &lt;псевдоним&gt; &lt;сообщение&gt;: Отправить псевдониму сообщение CTCP.
+command.chanserv=%S &lt;команда&gt;: Отправить команду для ChanServ.
+command.deop=%S &lt;псевдоним1&gt;[,&lt;псевдоним2&gt;]*: Забрать у пользователя статус оператора канала. Для этого вы должны быть оператором канала.
+command.devoice=%S &lt;псевдоним1&gt;[,&lt;псевдоним2&gt;]*: Забрать у пользователя статус голоса на канале, лишая его возможности говорить, если канал модерируемый (+m). Для этого вы должны быть оператором канала.
+command.invite2=%S &lt;псевдоним&gt;[ &lt;псевдоним&gt;]* [&lt;канал&gt;]: Пригласить одного или нескольких пользователей присоединиться к вам на текущем канале, или присоединиться к указанному каналу.
+command.join=%S &lt;комната1&gt;[ &lt;ключ1&gt;][,&lt;комната2&gt;[ &lt;ключ2&gt;]]*: Введите один или более каналов, указывая для каждого ключ канала, если требуется.
+command.kick=%S &lt;псевдоним&gt; [&lt;сообщение&gt;]: Удалить пользователя с канала. Для этого вы должны быть оператором канала.
+command.list=%S: Вывести список комнат чата в сети. Имейте в виду, что некоторые серверы за это могут разорвать с вами соединение.
+command.memoserv=%S &lt;команда&gt;: Отправить команду для MemoServ.
+command.modeUser2=%S &lt;псевдоним&gt; [(+|-)&lt;режим&gt;]: Получить, установить или снять режим пользователя.
+command.modeChannel2=%S [&lt;канал&gt;] [(+|-)&lt;новый режим&gt; [&lt;параметр&gt;][,&lt;параметр&gt;]*]: Получить, установить или снять режим канала.
+command.msg=%S &lt;псевдоним&gt; &lt;сообщение&gt;: Послать личное сообщение пользователю (в противоположность каналу).
+command.nick=%S &lt;новый псевдоним&gt;: Изменить свой псевдоним.
+command.nickserv=%S &lt;команда&gt;: Отправить команду для NickServ.
+command.notice=%S &lt;кому&gt; &lt;сообщение&gt;: Отправить уведомление пользователю или каналу.
+command.op=%S &lt;псевдоним1&gt;[,&lt;псевдоним2&gt;]*: Дать пользователю статус оператора канала. Для этого вы должны быть оператором канала.
+command.operserv=%S &lt;команда&gt;: Отправить команду для OperServ.
+command.part=%S [сообщение]: Покинуть текущий канал. Сообщение не обязательно.
+command.ping=%S [&lt;псевдоним&gt;]: Запросить величину задержки связи с пользователем (или с сервером, если пользователь не указан).
+command.quit=%S &lt;сообщение&gt;: Разорвать соединение с сервером. Сообщение не обязательно.
+command.quote=%S &lt;команда&gt;: Послать команду без обработки непосредственно серверу.
+command.time=%S: Вывести текущее локальное время на IRC-сервере.
+command.topic=%S [&lt;новая тема&gt;]: Установить тему этого канала.
+command.umode=%S (+|-)&lt;новый режим&gt;: Установить или снять режим пользователя.
+command.version=%S &lt;псевдоним&gt;: Запросить версию клиента пользователя.
+command.voice=%S &lt;псевдоним1&gt;[,&lt;псевдоним2&gt;]*: Дать пользователю статус голоса на канале. Для этого вы должны быть оператором канала.
+command.whois2=%S [&lt;псевдоним&gt;]: Получить сведения о пользователе.
+
+# LOCALIZATION NOTE (message.*):
+# These are shown as system messages in the conversation.
+# %1$S is the nick and %2$S is the nick and host of the user who joined.
+message.join=%1$S [%2$S] вошёл в комнату.
+message.rejoined=Вы снова вошли в комнату.
+# %1$S is the nick of who kicked you.
+# %2$S is message.kicked.reason, if a kick message was given.
+message.kicked.you=Вы были выкинуты оператором %1$S%2$S.
+# %1$S is the nick that is kicked, %2$S the nick of the person who kicked
+# %1$S. %3$S is message.kicked.reason, if a kick message was given.
+message.kicked=%1$S был выкинут оператором %2$S%3$S.
+# %S is the kick message
+message.kicked.reason=: %S
+# %1$S is the new mode, %2$S is the nickname of the user whose mode
+# was changed, and %3$S is who set the mode.
+message.usermode=Режим %1$S для %2$S установлен %3$S.
+# %1$S is the new channel mode and %2$S is who set the mode.
+message.channelmode=Режим канала %1$S установлен %2$S.
+# %S is the user's mode.
+message.yourmode=Ваш режим — %S.
+# Could not change the nickname. %S is the user's nick.
+message.nick.fail=Невозможно использовать желаемый псевдоним. Вашим псевдонимом остаётся %S.
+# The parameter is the message.parted.reason, if a part message is given.
+message.parted.you=Вы покинули комнату (Покидание%1$S).
+# %1$S is the user's nick, %2$S is message.parted.reason, if a part message is given.
+message.parted=%1$S покинул комнату (Покидание%2$S).
+# %S is the part message supplied by the user.
+message.parted.reason=: %S
+# %1$S is the user's nick, %2$S is message.quit2 if a quit message is given.
+message.quit=%1$S покинул комнату (Выход%2$S).
+# The parameter is the quit message given by the user.
+message.quit2=: %S
+# %1$S is the nickname of the user that invited us, %2$S is the conversation
+# name.
+message.inviteReceived=%1$S пригласил вас в %2$S.
+# %1$S is the nickname of the invited user, %2$S is the conversation name
+# they were invited to.
+message.invited=%1$S был успешно приглашён в %2$S.
+# %1$S is the nickname of the invited user, %2$S is the conversation name
+# they were invited to but are already in
+message.alreadyInChannel=%1$S уже на %2$S.
+# %S is the nickname of the user who was summoned.
+message.summoned=%S был вызван.
+# %S is the nickname of the user whose WHOIS information follows this message.
+message.whois=Информация WHOIS о %S:
+# %1$S is the nickname of the (offline) user whose WHOWAS information follows this message.
+message.whowas=%1$S не находится в сети. Информация WHOWAS о %1$S:
+# %1$S is the entry description (from tooltip.*), %2$S is its value.
+message.whoisEntry=    %1$S: %2$S
+# %S is the nickname that is not known to the server.
+message.unknownNick=Псевдоним %S неизвестен.
+# %1$S is the nickname of the user who changed the mode and %2$S is the new
+# channel key (password).
+message.channelKeyAdded=%1$S сменил пароль канала на %2$S.
+message.channelKeyRemoved=%S удалил пароль на канал.
+# This will be followed by a list of ban masks.
+message.banMasks=Пользователям из следующих сетей запрещён вход на %S:
+message.noBanMasks=На %S нет сетей, из которых запрещён вход.
+message.banMaskAdded=%2$S запретил вход для пользователей из сетей, подходящих под условие %1$S.
+message.banMaskRemoved=%2$S снял запрет на вход для пользователей из сетей, подходящих под условие %1$S.
+# LOCALIZATION NOTE (message.ping): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# %1$S is the nickname of the user or the server that was pinged.
+# #2 is the delay (in milliseconds).
+message.ping=Время ответа от %1$S — #2 миллисекунда.;Время ответа от %1$S — #2 миллисекунды.;Время ответа от %1$S — #2 миллисекунд.
+
+
+# LOCALIZATION NOTE (error.*):
+# These are shown as error messages in the conversation or server tab.
+# %S is the channel name.
+error.noChannel=Нет такого канала: %S.
+error.tooManyChannels=Не могу присоединиться к %S; вы присоединились к слишком многим каналам.
+# %1$S is your new nick, %2$S is the kill message from the server.
+error.nickCollision=Псевдоним уже используется, меняю псевдоним на %1$S [%2$S].
+error.erroneousNickname=Псевдоним %S является недопустимым.
+error.banned=Вам запрещён вход на этот сервер.
+error.bannedSoon=Вам скоро будет запрещён вход на этот сервер.
+error.mode.wrongUser=Вы не можете изменять режимы других пользователей.
+# %S is the nickname or channel name that isn't available.
+error.noSuchNick=%S не находится в сети.
+error.wasNoSuchNick=Псевдонима %S не существовало
+error.noSuchChannel=Канал %S не существует.
+error.unavailable=%S временно недоступен.
+# %S is the channel name.
+error.channelBanned=Вам был запрещён вход на %S.
+error.cannotSendToChannel=Вы не можете отправлять сообщения %S.
+error.channelFull=Достигнут лимит подключений к каналу %S.
+error.inviteOnly=Для присоединения к %S вам необходимо приглашение.
+error.nonUniqueTarget=%S не является уникальным сочетанием user@host или уникальным коротким именем или же вы пытались зайти одновременно на слишком много каналов.
+error.notChannelOp=Вы не являетесь оператором канала на %S.
+error.notChannelOwner=Вы не являетесь владельцем канала %S.
+error.wrongKey=Не могу присоединиться к %S, неверный пароль на канал.
+error.sendMessageFailed=При отправке вашего последнего сообщения произошла ошибка. Пожалуйста, попробуйте ещё раз, после того, как соединение будет восстановлено.
+# %1$S is the channel the user tried to join, %2$S is the channel
+# he was forwarded to.
+error.channelForward=Вы не можете присоединиться к %1$S и были автоматически перенаправлены на %2$S.
+# %S is the mode that the user tried to set but was not recognized
+# by the server as a valid mode.
+error.unknownMode=«%S» не является корректным режимом пользователя на этом сервере.
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the descriptions given in a tooltip with information received
+# from a whois response.
+# The human readable ("realname") description of the user.
+tooltip.realname=Имя
+tooltip.server=Соединился с
+# The username and hostname that the user connects from (usually based on the
+# reverse DNS of the user's IP, but often mangled by the server to
+# protect users).
+tooltip.connectedFrom=Подсоединился из
+tooltip.registered=Зарегистрирован
+tooltip.registeredAs=Зарегистрирован как
+tooltip.secure=Использует защищённое соединение
+# The away message of the user
+tooltip.away=Отошел
+tooltip.ircOp=Оператор IRC
+tooltip.bot=Бот
+tooltip.lastActivity=Последняя активность
+# %S is the timespan elapsed since the last activity.
+tooltip.timespan=%S назад
+tooltip.channels=Сейчас на
+
+# %1$S is the server name, %2$S is some generic server information (usually a
+# location or the date the user was last seen).
+tooltip.serverValue=%1$S (%2$S)
+
+# LOCALIZATION NOTE (yes, no):
+# These are used to turn true/false values into a yes/no response.
+yes=Да
+no=Нет
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/logger.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/logger.properties
new file mode 100644
index 0000000000..c9d7ce8a4e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/logger.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (badLogfile):
+# %S is the filename of the log file.
+badLogfile=Пустой или повреждённый файл лога: %S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/matrix.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/matrix.properties
new file mode 100644
index 0000000000..aaea051d68
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/matrix.properties
@@ -0,0 +1,255 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (matrix.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Matrix account.
+matrix.usernameHint=Matrix ID
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.saveToken=Токен доступа к хранилищу
+options.deviceDisplayName=Отображаемое имя устройства
+options.homeserver=Сервер
+options.backupPassphrase=Парольная фраза для резервного копирования ключа
+
+# LOCALIZATION NOTE (options.encryption.*):
+# These are strings used to build the status information of the encryption
+# storage, shown in the account manager. %S is one of the statuses and the
+# strings are combined with a pipe (|) between.
+options.encryption.enabled=Криптографические функции: %S
+options.encryption.secretStorage=Секретное хранилище: %S
+options.encryption.keyBackup=Резервная копия ключа шифрования: %S
+options.encryption.crossSigning=Перекрёстная подпись: %S
+options.encryption.statusOk=Ok
+options.encryption.statusNotOk=не готово
+options.encryption.needBackupPassphrase=Введите парольную фразу резервного ключа в параметрах протокола.
+options.encryption.setUpSecretStorage=Чтобы настроить секретное хранилище, используйте другой клиент, а затем введите сгенерированную парольную фразу резервного ключа на вкладке «Общие».
+options.encryption.setUpBackupAndCrossSigning=Чтобы активировать резервные копии ключей шифрования и перекрестную подпись, введите парольную фразу резервного ключа на вкладке «Общие» или подтвердите подлинность одного из сеансов ниже.
+# %1$S is the session ID, %2$S is the session display name
+options.encryption.session=%1$S (%2$S)
+
+# LOCALIZATION NOTE (connection.*):
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds … at the end, so do not include
+# periods at the end of these messages.)
+connection.requestAuth=Ожидание авторизации
+connection.requestAccess=Завершение аутентификации
+
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.noSupportedFlow=Сервер не предлагает совместимого потока для входа.
+connection.error.authCancelled=Вы прервали процесс авторизации.
+connection.error.sessionEnded=Сессия была отключена.
+connection.error.serverNotFound=Не удалось идентифицировать сервер Matrix для данной учётной записи Matrix.
+
+# LOCALIZATION NOTE (chatRoomField.*):
+# These are the name of fields displayed in the 'Join Chat' dialog
+# for Matrix accounts.
+# The _ character won't be displayed; it indicates the next
+# character of the string should be used as the access key for this
+# field.
+chatRoomField.room=_Комната
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the descriptions given in a tooltip with information received
+# from the "User" object.
+# The human readable name of the user.
+tooltip.displayName=Отображаемое имя
+# %S is the timespan elapsed since the last activity.
+tooltip.timespan=%S назад
+tooltip.lastActive=Последняя активность
+
+# LOCALIZATION NOTE (powerLevel.*):
+# These are the string representations of different standard power levels and strings.
+# %S are one of the power levels, Default/Moderator/Admin/Restricted/Custom.
+powerLevel.default=По умолчанию
+powerLevel.moderator=Модератор
+powerLevel.admin=Админинстратор
+powerLevel.restricted=Ограниченный
+powerLevel.custom=Пользовательский
+# %1$S is the power level name
+# %2$S is the power level number
+powerLevel.detailed=%1$S (%2$S)
+powerLevel.defaultRole=Роль по умолчанию: %S
+powerLevel.inviteUser=Приглашение пользователей: %S
+powerLevel.kickUsers=Изгнание пользователей: %S
+powerLevel.ban=Бан пользователей: %S
+powerLevel.roomAvatar=Смена аватара комнаты: %S
+powerLevel.mainAddress=Смена основного адреса комнаты: %S
+powerLevel.history=Изменение видимости истории: %S
+powerLevel.roomName=Изменение названия комнаты: %S
+powerLevel.changePermissions=Изменение разрешений: %S
+powerLevel.server_acl=Отправка событий m.room.server_acl: %S
+powerLevel.upgradeRoom=Обновление комнаты: %S
+powerLevel.remove=Удаление сообщений: %S
+powerLevel.events_default=Типовые события: %S
+powerLevel.state_default=Изменение настроек: %S
+powerLevel.encryption=Включение шифрования в комнате: %S
+powerLevel.topic=Установка темы комнаты: %S
+
+# LOCALIZATION NOTE (detail.*):
+# These are the string representations of different matrix properties.
+# %S will typically be strings with the actual values.
+# Example placeholder: "Foo bar"
+detail.name=Название: %S
+# Example placeholder: "My first room"
+detail.topic=Тема: %S
+# Example placeholder: "5"
+detail.version=Версия комнаты: %S
+# Example placeholder: "#thunderbird:mozilla.org"
+detail.roomId=RoomID: %S
+# %S are all admin users. Example: "@foo:example.com, @bar:example.com"
+detail.admin=Администратор: %S
+# %S are all moderators. Example: "@lorem:mozilla.org, @ipsum:mozilla.org"
+detail.moderator=Модератор: %S
+# Example placeholder: "#thunderbird:matrix.org"
+detail.alias=Псевдоним: %S
+# Example placeholder: "can_join"
+detail.guest=Гостевой доступ: %S
+# This is a heading, followed by the powerLevel.* strings
+detail.power=Уровни власти:
+
+# LOCALIZATION NOTE (command.*):
+# These are the help messages for each command, the %S is the command name
+# Each command first gives the parameter it accepts and then a description of
+# the command.
+command.ban=%S &lt;userId&gt; [&lt;причина&gt;]: Забанить пользователя с userId из комнаты с дополнительным сообщением о причине. Требуется разрешение на бан пользователей.
+command.invite=%S &lt;userId&gt;: Пригласить пользователя в комнату.
+command.kick=%S &lt;userId&gt; [&lt;причина&gt;]: Изгнать пользователя с userId из комнаты с дополнительным сообщением о причине. Требуется разрешение на изгнание пользователей.
+command.nick=%S&lt;отображаемое имя&gt;: Изменить свое отображаемое имя.
+command.op=%S &lt;userId&gt; [&lt;уровень власти&gt;]: Определить уровень власти пользователя. Введите целочисленное значение: Пользователь: 0, Модератор: 50 и Администратор: 100. Если не указан уровень, по умолчанию он равен 50. Требуется разрешение на изменение уровней власти участника. Не работает на других админах, кроме вас самих.
+command.deop=%S &lt;userId&gt;: Сбросить уровень власти пользователя на уровень 0 (Пользователь). Требуется разрешение на изменение уровней власти участника. Не работает на других админах, кроме вас самих.
+command.leave=%S: Покинуть текущую комнату.
+command.topic=%S &lt;тема&gt;: Задать тему для комнаты. Требуются разрешения на изменение темы комнаты.
+command.unban=%S &lt;userId&gt;: Разбанить пользователя, которому был запрещен доступ в комнату. Требуется разрешение на бан пользователей.
+command.visibility=%S [&lt;видимость&gt;]: Установить видимость текущей комнаты в каталоге комнат текущего Home Server. Введите целочисленное значение: Private: 0 и Public: 1. Если не указано значение, то по умолчанию оно будет Private (0). Требуется разрешение на изменение видимости комнаты.
+command.guest=%S &lt;гостевой доступ&gt; &lt;видимость истории&gt;: Установить доступ и видимость истории текущей комнаты для пользователей уровня Гость. Введите два целых числа: первое для гостевого доступа (не разрешено: 0 и разрешено: 1), а второе - для видимости истории (не видима: 0 и видима: 1). Требуется разрешение на изменение видимости истории.
+command.roomname=%S &lt;имя&gt;: Задать имя комнаты. Требуется разрешение на изменение имени комнаты.
+command.detail=%S: Показать сведения о комнате.
+command.addalias=%S &lt;псевдоним&gt;: Создать псевдоним для комнаты. Ожидается псевдоним комнаты в формате '#localname:domain'. Требуется разрешение на добавление псевдонимов.
+command.removealias=%S &lt;псевдоним&gt;: Удалить псевдоним комнаты. Ожидается псевдоним комнаты в формате '#localname:domain'. Требуется разрешение на удаление псевдонимов.
+command.upgraderoom=%S &lt;новаяВерсия&gt;: Обновить комнату до данной версии. Требуется разрешение на обновление комнаты.
+command.me=%S &lt;действие&gt;: Выполнить действие.
+command.msg=%S &lt;userId&gt; &lt;message&gt;: Отправить личное сообщение данному пользователю.
+command.join=%S &lt;roomId&gt;: Присоединиться к данной комнате.
+
+# LOCALIZATION NOTE (message.*):
+# These are shown as system messages in the conversation.
+# %1$S is the name of the user who banned.
+# %2$S is the name of the user who got banned.
+message.banned=%1$S забанил(а) %2$S.
+# Same as message.banned but with a reason.
+# %3$S is the reason the user was banned.
+message.bannedWithReason=%1$S забанил(а) %2$S. Причина: %3$S
+# %1$S is the name of the user who accepted the invitation.
+# %2$S is the name of the user who sent the invitation.
+message.acceptedInviteFor=%1$S принял(а) приглашение %2$S.
+# %S is the name of the user who accepted an invitation.
+message.acceptedInvite=$S принял(а) приглашение.
+# %1$S is the name of the user who invited.
+# %2$S is the name of the user who got invited.
+message.invited=%1$S пригласил(а) %2$S.
+# %1$S is the name of the user who changed their display name.
+# %2$S is the old display name.
+# %3$S is the new display name.
+message.displayName.changed=%1$S изменил(а) своё отображаемое имя с %2$S на %3$S.
+# %1$S is the name of the user who set their display name.
+# %2$S is the newly set display name.
+message.displayName.set=%1$S установил(а) в качестве своего отображаемого имени %2$S.
+# %1$S is the name of the user who removed their display name.
+# %2$S is the old display name which has been removed.
+message.displayName.remove=%1$S удалил(а) своё отображаемое имя %2$S.
+# %S is the name of the user who has joined the room.
+message.joined=%S присоединился(лась) к комнате.
+# %S is the name of the user who has rejected the invitation.
+message.rejectedInvite=%S отклонил(а) приглашение.
+# %S is the name of the user who has left the room.
+message.left=%S покинул(а) комнату.
+# %1$S is the name of the user who unbanned.
+# %2$S is the name of the user who got unbanned.
+message.unbanned=%1$S разбанил(а) %2$S.
+# %1$S is the name of the user who kicked.
+# %2$S is the name of the user who got kicked.
+message.kicked=%1$S изгнал(а) %2$S.
+# Same as message.kicked but with a third parameter for the reason.
+# %3$S is the reason for the kick.
+message.kickedWithReason=%1$S изгнал(а) %2$S. Причина: %3$S
+# %1$S is the name of the user who withdrew invitation.
+# %2$S is the name of the user whose invitation has been withdrawn.
+message.withdrewInvite=%1$S отозвал(а) приглашение %2$S.
+# Same as message.withdrewInvite but with a third parameter for the reason.
+# %3$S is the reason the invite was withdrawn.
+message.withdrewInviteWithReason=%1$S отозвал(а) приглашение %2$S. Причина: %3$S
+# %S is the name of the user who has removed the room name.
+message.roomName.remove=%S удалил(а) название комнаты.
+# %1$S is the name of the user who changed the room name.
+# %2$S is the new room name.
+message.roomName.changed=%1$S изменил(а) название комнаты на %2$S.
+# %1$S is the name of the user who changed the power level.
+# %2$S is a list of "message.powerLevel.fromTo" strings representing power level changes separated by commas
+# power level changes, separated by commas if there are multiple changes.
+message.powerLevel.changed=%1$S изменил(а) уровень власти %2$S.
+# %1$S is the name of the target user whose power level has been changed.
+# %2$S is the old power level.
+# %2$S is the new power level.
+message.powerLevel.fromTo=%1$S теперь %3$S, а не %2$S
+# %S is the name of the user who has allowed guests to join the room.
+message.guest.allowed=%S разрешил(а) гостям присоединяться к комнате.
+# %S is the name of the user who has prevented guests to join the room.
+message.guest.prevented=%S запретил(а) гостям присоединяться к комнате.
+# %S is the name of the user who has made future room history visible to anyone.
+message.history.anyone=%S сделал(а) будущую историю комнаты видимой для всех.
+# %S is the name of the user who has made future room history visible to all room members.
+message.history.shared=%S сделал(а) будущую историю комнаты видимой для всех участников комнаты.
+# %S is the name of the user who has made future room history visible to all room members, from the point they are invited.
+message.history.invited=%S сделал(а) будущую историю комнаты видимой для всех участников комнаты с момента их приглашения.
+# %S is the name of the user who has made future room history visible to all room members, from the point they joined.
+message.history.joined=%S сделал(а) будущую историю комнаты видимой для всех участников комнаты с момента их присоединения.
+# %1$S is the name of the user who changed the address.
+# %2$S is the old address.
+# %3$S is the new address.
+message.alias.main=%1$S сменил(а) основной адрес этой комнаты с %2$S на %3$S.
+# %1$S is the name of the user who added the address.
+# %2$S is a comma delimited list of added addresses.
+message.alias.added=%1$S добавил(а) %2$S в альтернативные адреса этой комнаты.
+# %1$S is the name of the user who removed the address.
+# %2$S is a comma delimited list of removed addresses.
+message.alias.removed=%1$S удалил(а) %2$S из альтернативных адресов этой комнаты.
+# %1$S is the name of the user that edited the alias addresses.
+# %2$S is a comma delimited list of removed addresses.
+# %3$S is a comma delmited list of added addresses.
+message.alias.removedAndAdded=%1$S удалил(а) %2$S и добавил(а) %3$S в адреса этой комнаты.
+message.spaceNotSupported=Эта комната является неподдерживаемым пространством.
+message.encryptionStart=Сообщения в этом разговоре теперь защищены сквозным шифрованием.
+# %1$S is the name of the user who sent the verification request.
+# %2$S is the name of the user that is receiving the verification request.
+message.verification.request2=%1$S хочет проверить %2$S.
+# %1$S is the name of the user who cancelled the verification request.
+# %2$S is the reason given why the verification was cancelled.
+message.verification.cancel2=%1$S отменил проверку по причине: %2$S
+message.verification.done=Проверка завершена.
+message.decryptionError=Не удалось расшифровать содержимое этого сообщения. Чтобы запросить ключи шифрования с других ваших устройств, щёлкните по этому сообщению правой кнопкой мыши.
+message.decrypting=Расшифровка...
+message.redacted=Сообщение было отредактировано.
+# %1$S is the username of the user that reacted.
+# %2$S is the username of the user that sent the message the reaction was added to.
+# %3$S is the content (typically an emoji) of the reaction.
+message.reaction=%1$S отреагировал на %2$S отправив %3$S.
+
+# Label in the message context menu
+message.action.requestKey=Повторно запросить ключи
+message.action.redact=Редактировать
+message.action.report=Сообщить о сообщении
+message.action.retry=Повторить отправку
+message.action.cancel=Отменить сообщение
+
+# LOCALIZATION NOTE (error.*)
+# These are strings shown as system messages when an action the user took fails.
+error.sendMessageFailed=Произошла ошибка при отправке вашего сообщения «%1$S».
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/status.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/status.properties
new file mode 100644
index 0000000000..9f59d42c1e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/status.properties
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+availableStatusType=Доступен
+awayStatusType=Отошел
+unavailableStatusType=Занят
+offlineStatusType=Отключён
+invisibleStatusType=Невидимый
+idleStatusType=Бездействую
+mobileStatusType=Мобильный
+# LOCALIZATION NOTE (unknownStatusType):
+# the status of a buddy is unknown when it's in the list of a disconnected account
+unknownStatusType=Неизвестно
+
+# LOCALIZATION NOTE (statusWithStatusMessage):
+# Used to display the status of a buddy together with its status message.
+# %1$S is the status type, %2$S is the status message text.
+statusWithStatusMessage=%1$S - %2$S
+
+# LOCALIZATION NOTE (messenger.status.defaultIdleAwayMessage):
+# This will be the away message put automatically when the user is idle.
+messenger.status.defaultIdleAwayMessage=Сейчас я отошел от компьютера.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/twitter.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/twitter.properties
new file mode 100644
index 0000000000..b5508842d4
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/twitter.properties
@@ -0,0 +1,122 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (twitter.protocolName)
+# This name is used whenever the name of the protocol is shown.
+twitter.protocolName=Твиттер
+
+# LOCALIZATION NOTE (error.*):
+# These are errors that will be shown to the user in conversation.
+error.tooLong=Длина статуса больше 140 символов.
+# LOCALIZATION NOTE (error.general, error.retweet, error.delete):
+# %1$S will be either the error string returned by the twitter server,
+# in English, inside parenthesis, or the empty string if we have no specific
+# message for the error.
+# %2$S is the message that caused the error.
+error.general=При отправке произошла ошибка %1$S: %2$S
+error.retweet=При ретвите произошла ошибка %1$S: %2$S
+error.delete=При удалении произошла ошибка %1$S: %2$S
+error.like=При простановке отметки «Нравится» произошла ошибка %1$S: %2$S
+error.unlike=При снятии отметки «Нравится» произошла ошибка %1$S: %2$S
+# LOCALIZATION NOTE (error.descriptionTooLong)
+# %S is the truncated string that was sent to the server.
+error.descriptionTooLong=Описание превышает максимальную длину (160 символов), и автоматически обрезано до: %S.
+
+# LOCALIZATION NOTE (timeline):
+# This is the title of the conversation tab, %S will be replaced by
+# @<username>.
+timeline=Хронология %S
+
+# LOCALIZATION NOTE (action.*):
+# This will be an action in the context menu of displayed tweets.
+action.copyLink=Скопировать ссылку в твит
+action.retweet=Ретвитнуть
+action.reply=Ответить
+action.delete=Удалить
+# LOCALIZATION NOTE (action.follow, action.stopFollowing):
+# %S will be replaced by the screen name of a twitter user.
+action.follow=Читать %S
+action.stopFollowing=Перестать читать %S
+action.like=Поставить отметку «Нравится»
+action.unlike=Снять отметку «Нравится»
+
+# LOCALIZATION NOTE (event.follow, event.unfollow, event.followed):
+# This will be displayed in system messages inside the timeline conversation.
+# %S will be replaced by the screen name of a twitter user.
+event.follow=Теперь вы читаете %S.
+event.unfollow=Вы больше не читаете %S.
+event.followed=%S теперь читает вас.
+# LOCALIZATION NOTE (event.deleted):
+# %S will be replaced by the text of the deleted tweet.
+event.deleted=Вы удалили этот твит: "%S".
+
+# LOCALIZATION NOTE (replyingToStatusText):
+# This will be visible in the status bar of the conversation window
+# while the user is typing a reply to a tweet.
+# %S will be replaced by the text of the tweet the user is replying to.
+replyingToStatusText=В ответ на: %S
+
+# LOCALIZATION NOTE (connection.*):
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds … at the end, so do not include
+# periods at the end of these messages.)
+connection.initAuth=Инициализация процесса аутентификации
+connection.requestAuth=Ожидание авторизации
+connection.requestAccess=Завершение аутентификации
+connection.requestTimelines=Отправление запроса на хронологию пользователя
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.userMismatch=Неверное имя пользователя.
+connection.error.failedToken=Не удалось получить запрос маркера.
+connection.error.authCancelled=Вы прервали процесс авторизации.
+connection.error.authFailed=Не удалось авторизоваться.
+connection.error.noNetwork=Нет доступных сетевых подключений.
+
+# LOCALIZATION NOTE (authPrompt):
+# This is the prompt in the browser window that pops up to authorize us
+# to use a Twitter account. It is shown in the title bar of the authorization
+# window.
+authPrompt=Дать разрешение на использование вашей учетной записи Твиттер
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.track=Отслеживаемые слова
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the Twitter information that will appear in the tooltip
+# for each participant on the home timeline.
+# LOCALIZATION NOTE (tooltip.created_at): the date the user joined.
+tooltip.created_at=Пользователь с
+tooltip.location=Местоположение
+tooltip.lang=Язык
+tooltip.time_zone=Часовой пояс
+tooltip.url=Домашняя страница
+# LOCALIZATION NOTE (tooltip.protected):
+# whether the user's tweets are publicly visible.
+tooltip.protected=Закрыть твиты
+# LOCALIZATION NOTE (tooltip.following):
+# whether you are subscribed to the user's tweets.
+tooltip.following=Сейчас читаю
+tooltip.name=Имя
+tooltip.description=Описание
+# LOCALIZATION NOTE (tooltip.*_count):
+# Please see the right side of the official Twitter website UI.
+tooltip.friends_count=Читаю
+tooltip.statuses_count=Твиты
+tooltip.followers_count=Читатели
+tooltip.listed_count=В списках
+
+# LOCALIZATION NOTE (yes, no):
+# These are used to turn true/false values into a yes/no response.
+yes=Да
+no=Нет
+
+command.follow=%S &lt;имя пользователя&gt;[ &lt;имя пользователя&gt;]*: Начать читать пользователя / пользователей.
+command.unfollow=%S &lt;имя пользователя&gt;[ &lt;имя пользователя&gt;]*: Перестать читать пользователя / пользователей.
+
+twitter.disabled=Твиттер больше не поддерживается из-за того, что Твиттер отключил свой протокол потоковой передачи.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/xmpp.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/xmpp.properties
new file mode 100644
index 0000000000..d439ee5d34
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/xmpp.properties
@@ -0,0 +1,281 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (connection.*)
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds … at the end, so do not include
+# periods at the end of these messages.)
+connection.initializingStream=Инициализация потока
+connection.initializingEncryption=Инициализация шифрования
+connection.authenticating=Аутентификация
+connection.gettingResource=Получение ресурса
+connection.downloadingRoster=Загрузка списка контактов
+connection.srvLookup=Поиск SRV-записи
+
+# LOCALIZATION NOTE (connection.error.*)
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.invalidUsername=Некорректное имя пользователя (ваше имя пользователя должно содержать символ «@»)
+connection.error.failedToCreateASocket=Не удалось создать сокет (Вы не подключены к сети?)
+connection.error.serverClosedConnection=Сервер закрыл соединение
+connection.error.resetByPeer=Соединение сброшено узлом
+connection.error.timedOut=Время ожидания соединения истекло
+connection.error.receivedUnexpectedData=Получены неожиданные данные
+connection.error.incorrectResponse=Получен некорректный ответ
+connection.error.startTLSRequired=Сервер требует шифрование, но вы его отключили
+connection.error.startTLSNotSupported=Сервер не поддерживает шифрование, но ваши настройки его требуют
+connection.error.failedToStartTLS=Не удалось запустить шифрование
+connection.error.noAuthMec=Сервер не предложил ни одного механизма аутентификации
+connection.error.noCompatibleAuthMec=Ни один из предложенных сервером механизмов аутентификации не поддерживается
+connection.error.notSendingPasswordInClear=Сервер поддерживает только аутентификацию путем отправки пароля простым текстом
+connection.error.authenticationFailure=Ошибка аутентификации
+connection.error.notAuthorized=Не авторизован (Вы ввели неверный пароль?)
+connection.error.failedToGetAResource=Не удалось получить ресурс
+connection.error.failedMaxResourceLimit=К этой учётной записи одновременно подсоединились из слишком многих мест.
+connection.error.failedResourceNotValid=Ресурс не действителен.
+connection.error.XMPPNotSupported=Этот сервер не поддерживает XMPP.
+
+# LOCALIZATION NOTE (conversation.error.notDelivered):
+# This is displayed in a conversation as an error message when a message
+# the user has sent wasn't delivered.
+# %S is replaced by the text of the message that wasn't delivered.
+conversation.error.notDelivered=Это сообщение не может быть доставлено: %S
+# This is displayed in a conversation as an error message when joining a MUC
+# fails.
+# %S is the name of the MUC.
+conversation.error.joinFailed=Не удалось войти: %S
+# This is displayed in a conversation as an error message when the user is
+# banned from a room.
+# %S is the name of the MUC room.
+conversation.error.joinForbidden=Не удалось войти в %S, так как вам был запрещён вход в эту комнату.
+conversation.error.joinFailedNotAuthorized=Необходима регистрация: Вы не авторизованы для входа в эту комнату.
+conversation.error.creationFailedNotAllowed=Доступ ограничен: Вы не можете создавать комнаты.
+# This is displayed in a conversation as an error message when remote server
+# is not found.
+# %S is the name of MUC room.
+conversation.error.joinFailedRemoteServerNotFound=Не удалось присоединиться к комнате %S, так как не удалось связаться с сервером, на котором размещена комната.
+conversation.error.changeTopicFailedNotAuthorized=Вам не разрешено устанавливать тему этой комнаты.
+# This is displayed in a conversation as an error message when the user sends
+# a message to a room that he is not in.
+# %1$S is the name of MUC room.
+# %2$S is the text of the message that wasn't delivered.
+conversation.error.sendFailedAsNotInRoom=Сообщение для %1$S не может быть отправлено, так вы больше не находитесь в комнате: %2$S
+# This is displayed in a conversation as an error message when the user sends
+# a message to a room that the recipient is not in.
+# %1$S is the jid of the recipient.
+# %2$S is the text of the message that wasn't delivered.
+conversation.error.sendFailedAsRecipientNotInRoom=Сообщение для %1$S не может быть отправлено, так как получатель больше не находится в комнате: %2$S
+# These are displayed in a conversation as a system error message.
+conversation.error.remoteServerNotFound=Не удалось связаться с сервером получателя.
+conversation.error.unknownSendError=При отправке этого сообщения произошла неизвестная ошибка.
+# %S is the name of the message recipient.
+conversation.error.sendServiceUnavailable=В данный момент отправка сообщений %S невозможна.
+# %S is the nick of participant that is not in room.
+conversation.error.nickNotInRoom=%S не находится в комнате.
+conversation.error.banCommandAnonymousRoom=Вы не можете запретить вход участникам из анонимных комнат. Попробуйте вместо этого /kick.
+conversation.error.banKickCommandNotAllowed=У вас недостаточно привилегий для удаления этого участника из комнаты.
+conversation.error.banKickCommandConflict=Вы не можете удалить самого себя из комнаты.
+conversation.error.changeNickFailedConflict=Не удалось изменить ваш псевдоним на %S, так как этот псевдоним уже используется.
+conversation.error.changeNickFailedNotAcceptable=Не удалось изменить ваш псевдоним на %S, так как смена псевдонимов в этой комнате заблокирована.
+conversation.error.inviteFailedForbidden=У вас недостаточно привилегий для приглашения пользователей в эту комнату.
+# %S is the jid of user that is invited.
+conversation.error.failedJIDNotFound=Не удалось связаться с %S.
+# %S is the jid that is invalid.
+conversation.error.invalidJID=%S является некорректным jid (Идентификаторы Jabber должны быть в форме пользователь@домен).
+conversation.error.commandFailedNotInRoom=Вы должны снова войти в комнату, чтобы иметь возможность использовать эту команду.
+# %S is the name of the recipient.
+conversation.error.resourceNotAvailable=Вы должны сначала заговорить, так как %S может быть связан с более чем одним клиентом.
+
+# LOCALIZATION NOTE (conversation.error.version.*):
+# %S is the name of the recipient.
+conversation.error.version.unknown=Клиент %S не поддерживает запрос версии его программного обеспечения.
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the titles of lines of information that will appear in
+# the tooltip showing details about a contact or conversation.
+# LOCALIZATION NOTE (tooltip.status):
+# %S will be replaced by the XMPP resource identifier
+tooltip.status=Статус (%S)
+tooltip.statusNoResource=Статус
+tooltip.subscription=Подписка
+tooltip.fullName=Полное имя
+tooltip.nickname=Псевдоним
+tooltip.email=Эл. почта
+tooltip.birthday=День рождения
+tooltip.userName=Имя пользователя
+tooltip.title=Должность
+tooltip.organization=Организация
+tooltip.locality=Местонахождение
+tooltip.country=Страна
+tooltip.telephone=Номер телефона
+
+# LOCALIZATION NOTE (chatRoomField.*):
+# These are the name of fields displayed in the 'Join Chat' dialog
+# for XMPP accounts.
+# The _ character won't be displayed; it indicates the next
+# character of the string should be used as the access key for this
+# field.
+chatRoomField.room=_Комната
+chatRoomField.server=_Сервер
+chatRoomField.nick=_Псевдоним
+chatRoomField.password=_Пароль
+
+# LOCALIZATION NOTE (conversation.muc.*):
+# These are displayed as a system message when a chatroom invitation is
+# received.
+# %1$S is the inviter.
+# %2$S is the room.
+# %3$S is the reason which is a message provided by the person sending the
+# invitation.
+conversation.muc.invitationWithReason2=%1$S пригласил вас присоединиться к %2$S: %3$S
+# %3$S is the password of the room.
+# %4$S is the reason which is a message provided by the person sending the
+# invitation.
+conversation.muc.invitationWithReason2.password=%1$S пригласил вас присоединиться к %2$S с паролем %3$S: %4$S
+conversation.muc.invitationWithoutReason=%1$S пригласил вас присоединиться к %2$S.
+# %3$S is the password of the room.
+conversation.muc.invitationWithoutReason.password=%1$S пригласил вас присоединиться к %2$S с паролем %3$S
+
+# LOCALIZATION NOTE (conversation.muc.join):
+# This is displayed as a system message when a participant joins room.
+# %S is the nick of the participant.
+conversation.message.join=%S вошёл в комнату.
+
+# LOCALIZATION NOTE (conversation.muc.rejoined):
+# This is displayed as a system message when a participant rejoins room after
+# parting it.
+conversation.message.rejoined=Вы снова вошли в комнату.
+
+# LOCALIZATION NOTE (conversation.message.parted.*):
+# These are displayed as a system message when a participant parts a room.
+# %S is the part message supplied by the user.
+conversation.message.parted.you=Вы покинули комнату.
+conversation.message.parted.you.reason=Вы покинули комнату: %S
+# %1$S is the participant that is leaving.
+# %2$S is the part message supplied by the participant.
+conversation.message.parted=%1$S покинул комнату.
+conversation.message.parted.reason=%1$S покинул комнату: %2$S
+
+# LOCALIZATION NOTE (conversation.message.invitationDeclined*):
+# %1$S is the invitee that declined the invitation.
+# %2$S is the decline message supplied by the invitee.
+conversation.message.invitationDeclined=%1$S отклонил ваше приглашение.
+conversation.message.invitationDeclined.reason=%1$S отклонил ваше приглашение: %2$S
+
+# LOCALIZATION NOTE (conversation.message.banned.*):
+# These are displayed as a system message when a participant is banned from
+# a room.
+# %1$S is the participant that is banned.
+# %2$S is the reason.
+# %3$S is the person who is banning.
+conversation.message.banned=%1$S был запрещён вход в эту комнату.
+conversation.message.banned.reason=%1$S был запрещён вход в эту комнату: %2$S
+# %1$S is the person who is banning.
+# %2$S is the participant that is banned.
+# %3$S is the reason.
+conversation.message.banned.actor=%1$S запретил %2$S вход в эту комнату.
+conversation.message.banned.actor.reason=%1$S запретил %2$S вход в эту комнату: %3$S
+conversation.message.banned.you=Вам был запрещён вход в эту комнату.
+# %1$S is the reason.
+conversation.message.banned.you.reason=Вам был запрещён вход в эту комнату: %1$S
+# %1$S is the person who is banning.
+# %2$S is the reason.
+conversation.message.banned.you.actor=%1$S запретил вам вход в эту комнату.
+conversation.message.banned.you.actor.reason=%1$S запретил вам вход в эту комнату: %2$S
+
+# LOCALIZATION NOTE (conversation.message.kicked.*):
+# These are displayed as a system message when a participant is kicked from
+# a room.
+# %1$S is the participant that is kicked.
+# %2$S is the reason.
+conversation.message.kicked=%1$S был выкинут из этой комнаты.
+conversation.message.kicked.reason=%1$S был выкинут из этой комнаты: %2$S
+# %1$S is the person who is kicking.
+# %2$S is the participant that is kicked.
+# %3$S is the reason.
+conversation.message.kicked.actor=%1$S выкинул %2$S из этой комнаты.
+conversation.message.kicked.actor.reason=%1$S выкинул %2$S из этой комнаты: %3$S
+conversation.message.kicked.you=Вы были выкинуты из этой комнаты.
+# %1$S is the reason.
+conversation.message.kicked.you.reason=Вы были выкинуты из этой комнаты: %1$S
+# %1$S is the person who is kicking.
+# %2$S is the reason.
+conversation.message.kicked.you.actor=%1$S выкинул вас из этой комнаты.
+conversation.message.kicked.you.actor.reason=%1$S выкинул вас из этой комнаты: %2$S
+
+# LOCALIZATION NOTE (conversation.message.removedNonMember.*):
+# These are displayed as a system message when a participant is removed from
+# a room because the room has been changed to members-only.
+# %1$S is the participant that is removed.
+# %2$S is the person who changed the room configuration.
+conversation.message.removedNonMember=%1$S был удалён из этой комнаты, так как её конфигурация была изменена на members-only.
+conversation.message.removedNonMember.actor=%1$S был удалён из этой комнаты, так как %2$S изменил её конфигурацию на members-only.
+conversation.message.removedNonMember.you=Вы были удалены из этой комнаты, так как её конфигурация была изменена на members-only.
+# %1$S is the person who changed the room configuration.
+conversation.message.removedNonMember.you.actor=Вы были удалены из этой комнаты, так как %1$S изменил её конфигурацию на members-only.
+
+# LOCALIZATION NOTE (conversation.message.MUCShutdown):
+# These are displayed as a system message when a participant is removed from
+# a room because of a system shutdown.
+conversation.message.mucShutdown=Вы были удалены из этой комнаты из-за завершения работы системы.
+
+# LOCALIZATION NOTE (conversation.message.version*):
+# %1$S is the name of the user whose version was requested.
+# %2$S is the client name response from the client.
+# %3$S is the client version response from the client.
+# %4$S is the operating system(OS) response from the client.
+conversation.message.version=%1$S использует «%2$S %3$S».
+conversation.message.versionWithOS=%1$S использует «%2$S %3$S» на %4$S.
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.resource=Ресурс
+options.priority=Приоритет
+options.connectionSecurity=Защита соединения
+options.connectionSecurity.requireEncryption=Требовать шифрования
+options.connectionSecurity.opportunisticTLS=Если доступно, использовать шифрование
+options.connectionSecurity.allowUnencryptedAuth=Разрешить отправку пароля в незашифрованном виде
+options.connectServer=Сервер
+options.connectPort=Порт
+options.domain=Домен
+
+# LOCALIZATION NOTE (*.protocolName)
+# This name is used whenever the name of the protocol is shown.
+gtalk.protocolName=Google Talk
+odnoklassniki.protocolName=Одноклассники
+
+# LOCALIZATION NOTE (gtalk.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Google Talk account.
+gtalk.usernameHint=адрес эл. почты
+
+# LOCALIZATION NOTE (gtalk.disabled):
+# It is reported that Google Talk will be disabled on June 16, 2022. The message
+# below is being pre-emptively included so a localized error message can be
+# displayed to users if this happens.
+gtalk.disabled=Google Talk более не поддерживается, так как Google отключил свой XMPP-шлюз.
+
+# LOCALIZATION NOTE (odnoklassniki.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Odnoklassniki account.
+odnoklassniki.usernameHint=id вашего профиля
+
+# LOCALZIATION NOTE (command.*):
+# These are the help messages for each command.
+command.join3=%S [&lt;комната&gt;[@&lt;сервер&gt;][/&lt;псевдоним&gt;]] [&lt;пароль&gt;]: Войти в комнату, с необязательным указанием другого сервера, или псевдонима, или пароля для входа в комнату.
+command.part2=%S [&lt;сообщение&gt;]: Уйти из текущей комнаты, оставив необязательное сообщение.
+command.topic=%S [&lt;новая тема&gt;]: Установить тему этой комнаты.
+command.ban=%S &lt;псевдоним&gt; [&lt;сообщение&gt;]: Запретить пользователю вход в комнату. Для этого вы должны быть администратором комнаты.
+command.kick=%S &lt;псевдоним&gt; [&lt;сообщение&gt;]: Удалить пользователя из комнаты. Для этого вы должны быть модератором комнаты.
+command.invite=%S &lt;jid&gt;[&lt;сообщение&gt;]: Пригласить пользователя войти в текущую комнату и отправить ему необязательное сообщение.
+command.inviteto=%S &lt;комната jid&gt;[&lt;пароль&gt;]: Пригласить вашего собеседника войти в комнату, отправив при необходимости пароль на вход.
+command.me=%S &lt;действие для выполнения&gt;: Выполнить действие.
+command.nick=%S &lt;новый псевдоним&gt;: Изменить свой псевдоним.
+command.msg=%S &lt;псевдоним&gt; &lt;сообщение&gt;: Послать личное сообщение находящемуся в этой комнате.
+command.version=%S: Запросить информацию о клиенте, который использует ваш собеседник.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/yahoo.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/yahoo.properties
new file mode 100644
index 0000000000..1ec977c066
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/chat/yahoo.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+yahoo.disabled=Yahoo Messenger более не поддерживается, так как Yahoo отключил свой устаревший протокол.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/communicator/utilityOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/communicator/utilityOverlay.dtd
new file mode 100644
index 0000000000..8c3360d566
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/communicator/utilityOverlay.dtd
@@ -0,0 +1,43 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- LOCALIZATION NOTE : FILE This file contains the global menu items -->
+
+<!ENTITY fileMenu.label "Файл">
+<!ENTITY fileMenu.accesskey "Ф">
+<!ENTITY newMenu.label "Создать">
+<!ENTITY newMenu.accesskey "з">
+
+<!ENTITY editMenu.label "Правка">
+<!ENTITY editMenu.accesskey "П">
+<!ENTITY undoCmd.label "Отменить">
+<!ENTITY undoCmd.accesskey "О">
+<!ENTITY redoCmd.label "Повторить">
+<!ENTITY redoCmd.accesskey "р">
+<!ENTITY deleteCmd.label "Удалить">
+<!ENTITY deleteCmd.accesskey "У">
+
+<!ENTITY customizeCmd.label "Персонализация">
+<!ENTITY customizeCmd.accesskey "я">
+
+<!ENTITY viewMenu.label "Вид">
+<!ENTITY viewMenu.accesskey "В">
+<!ENTITY viewToolbarsMenu.label "Показать/скрыть">
+<!ENTITY viewToolbarsMenu.accesskey "П">
+<!ENTITY showTaskbarCmd.label "Строка состояния">
+<!ENTITY showTaskbarCmd.accesskey "С">
+
+<!ENTITY closeCmd.label "Закрыть">
+<!ENTITY closeCmd.key "W">
+<!ENTITY closeCmd.accesskey "З">
+
+<!ENTITY quitApplicationCmd.label "Выход">
+<!ENTITY quitApplicationCmd.key "Q">
+<!ENTITY quitApplicationCmd.accesskey "ы">
+
+<!ENTITY quitApplicationCmdUnix.label "Выход">
+<!ENTITY quitApplicationCmdUnix.accesskey "ы">
+
+<!ENTITY quitApplicationCmdMac.label "Завершить &brandShortName;">
+<!ENTITY quitApplicationCmdMac.accesskey "в">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/accessibility.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/accessibility.properties
new file mode 100644
index 0000000000..d2331a8fcb
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/accessibility.properties
@@ -0,0 +1,314 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Accessibility panel
+# which is available from the Web Developer sub-menu -> 'Accessibility'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the Accessibility panel
+# which is in the Developer Tools, available in the
+# Browser Tools sub-menu -> 'Web Developer Tools'
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (accessibility.role): A title text used for Accessibility
+# tree header column that represents accessible element role.
+accessibility.role=Роль
+
+# LOCALIZATION NOTE (accessibility.name): A title text used for Accessibility
+# tree header column that represents accessible element name.
+accessibility.name=Имя
+
+# LOCALIZATION NOTE (accessibility.logo): A title text used for Accessibility
+# logo used on the accessibility panel landing page.
+accessibility.logo=Лого поддержки доступности
+
+# LOCALIZATION NOTE (accessibility.properties): A title text used for header
+# for Accessibility details sidebar.
+accessibility.properties=Свойства
+
+# LOCALIZATION NOTE (accessibility.treeName): A title text used for
+# Accessibility tree (that represents accessible element name) container.
+accessibility.treeName=Дерево поддержки доступности
+
+# LOCALIZATION NOTE (accessibility.accessible.selectElement.title): A title text
+# displayed on buttons next to accessible elements in the `relations` section, allowing the
+# user to select the element in the accessibility tree.
+accessibility.accessible.selectElement.title=Щёлкните, чтобы выбрать узел в Дереве поддержки доступности
+
+# LOCALIZATION NOTE (accessibility.accessible.selectNodeInInspector.title): A title text
+# displayed on buttons next to nodes in the sidebar, allowing the user to select the node
+# in the Inspector panel.
+accessibility.accessible.selectNodeInInspector.title=Щёлкните, чтобы выбрать узел в инспекторе
+
+# LOCALIZATION NOTE (accessibility.accessible.notAvailable): A title text
+# displayed when accessible sidebar panel does not have an accessible object to
+# display.
+accessibility.accessible.notAvailable=Информация о поддержке доступности отсутствует
+
+# LOCALIZATION NOTE (accessibility.enable): A title text for Enable
+# accessibility button used to enable accessibility service.
+accessibility.enable=Включить функции поддержки доступности
+
+# LOCALIZATION NOTE (accessibility.enabling): A title text for Enable
+# accessibility button used when accessibility service is being enabled.
+accessibility.enabling=Включение функций поддержки доступности…
+
+# LOCALIZATION NOTE (accessibility.disable): A title text for Disable
+# accessibility button used to disable accessibility service.
+accessibility.disable=Отключить функции поддержки доступности
+
+# LOCALIZATION NOTE (accessibility.disabling): A title text for Disable
+# accessibility button used when accessibility service is being
+# disabled.
+accessibility.disabling=Отключение функций поддержки доступности…
+
+# LOCALIZATION NOTE (accessibility.pick): A title text for Picker button
+# button used to pick accessible objects from the page.
+accessibility.pick=Выбрать со страницы объект поддержки доступности
+
+# LOCALIZATION NOTE (accessibility.disable.disabledTitle): A title text used for
+# a tooltip for Disable accessibility button when accessibility service can not
+# be disabled. It is the case when a user is using a 3rd party accessibility
+# tool such as screen reader.
+accessibility.disable.disabledTitle=Служба поддержки доступности не может быть отключена. Она используется вне Инструментов разработчика.
+
+# LOCALIZATION NOTE (accessibility.disable.enabledTitle): A title text used for
+# a tooltip for Disable accessibility button when accessibility service can be
+# disabled.
+accessibility.disable.enabledTitle=Служба поддержки доступности будет отключена для всех вкладок и окон.
+
+# LOCALIZATION NOTE (accessibility.enable.disabledTitle): A title text used for
+# a tooltip for Enabled accessibility button when accessibility service can not
+# be enabled.
+accessibility.enable.disabledTitle=Служба поддержки доступности не может быть включена. Он отключена через настройку приватности поддержки доступности.
+
+# LOCALIZATION NOTE (accessibility.enable.enabledTitle): A title text used for
+# a tooltip for Enabled accessibility button when accessibility service can be
+# enabled.
+accessibility.enable.enabledTitle=Служба поддержки доступности будет включена для всех вкладок и окон.
+
+# LOCALIZATION NOTE (accessibility.learnMore): A text that is used as is or as textual
+# description in places that link to accessibility inspector documentation.
+accessibility.learnMore=Подробнее
+
+# LOCALIZATION NOTE (accessibility.description.general.p1): A title text for the first
+# paragraph, used when accessibility service description is provided before accessibility
+# inspector is enabled. %S in the content will be replaced by a link at run time
+# with the accessibility.learnMore string.
+accessibility.description.general.p1=Инспектор поддержки доступности позволяет вам исследовать дерево поддержки доступности страницы, которое используется программами чтения с экрана и прочими вспомогательными технологиями. %S
+
+# LOCALIZATION NOTE (accessibility.description.general.p2): A title text for the second
+# paragraph, used when accessibility service description is provided before accessibility
+# inspector is enabled.
+accessibility.description.general.p2=Функции поддержки доступности могут повлиять на производительность других панелей инструментов разработчика и должны быть отключены, когда не используются.
+
+# LOCALIZATION NOTE (accessibility.tree.menu.printToJSON): A title text used when a
+# context menu item for printing an accessible tree to JSON is rendered after triggering a
+# context menu for an accessible tree row.
+accessibility.tree.menu.printToJSON=Вывести в JSON-формате
+
+# LOCALIZATION NOTE (accessibility.checks): A title text used for header for checks
+# section in Accessibility details sidebar.
+accessibility.checks=Проверка
+
+# LOCALIZATION NOTE (accessibility.checks.empty2): A title text used for indicating that
+# accessibility checks for a node yielded no results and another node should be
+# selected.
+accessibility.checks.empty2=Нет проверок для этого узла.
+
+# LOCALIZATION NOTE (accessibility.contrast.header): A title text used for header for
+# checks related to color and contrast.
+accessibility.contrast.header=Цвет и контраст
+
+# LOCALIZATION NOTE (accessibility.contrast.error): A title text for the color
+# contrast ratio, used when the tool is unable to calculate the contrast ratio value.
+accessibility.contrast.error=Не удалось вычислить
+
+# LOCALIZATION NOTE (accessibility.contrast.large.text): A title text for the color
+# contrast ratio label indicating that the color contrast criteria used is if for large
+# text. This is lower case because it's used as a label for a tree item in accessibility
+# tree.
+accessibility.contrast.large.text=большой текст
+
+# LOCALIZATION NOTE (accessibility.contrast.large.title): A title text for the tooltip
+# used for the large text label (see accessibility.contrast.large.text).
+accessibility.contrast.large.title=Размер шрифта текста 14 пунктов и жирный или больше, или 18 пунктов или больше.
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.AA): A title text for the paragraph
+# describing that the given colour contrast satisfies AA standard from Web Content
+# Accessibility Guidelines. %S in the content will be replaced by a link at run time
+# with the accessibility.learnMore string.
+accessibility.contrast.annotation.AA=Соответствует стандартам WCAG AA для доступного текста. %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.AAA): A title text for the
+# paragraph describing that the given colour contrast satisfies AAA standard from Web
+# Content Accessibility Guidelines. %S in the content will be replaced by a link at run
+# time with the accessibility.learnMore string.
+accessibility.contrast.annotation.AAA=Соответствует стандартам WCAG AAA для доступного текста. %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.FAIL): A title text for the
+# paragraph describing that the given colour contrast fails to meet the minimum level from
+# Web Content Accessibility Guidelines. %S in the content will be replaced by a link at
+# run time with the accessibility.learnMore string.
+accessibility.contrast.annotation.FAIL=Не соответствует стандартам WCAG для доступного текста. %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.transparent.error): A title text for the
+# paragraph suggesting a fix for error in color contrast calculation for text nodes with zero alpha.
+accessibility.contrast.annotation.transparent.error=Выберите непрозрачный цвет.
+
+# LOCALIZATION NOTE (accessibility.badges): A title text for the group of badges
+# that are rendered for each accessible row within the accessibility tree when
+# one or more accessibility checks fail.
+accessibility.badges=Проверки доступности
+
+# LOCALIZATION NOTE (accessibility.filter.none): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# resets all filtering in tree, and for the simulation menu item that resets
+# applied color matrices to the default matrix.
+accessibility.filter.none=Нет
+
+# LOCALIZATION NOTE (accessibility.filter.all2): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on all accessibility failures within it.
+accessibility.filter.all2=Все проблемы
+
+# LOCALIZATION NOTE (accessibility.filter.contrast): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on contrast accessibility failures within it.
+accessibility.filter.contrast=Контраст
+
+# LOCALIZATION NOTE (accessibility.filter.textLabel): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on text label and name accessibility failures within it.
+accessibility.filter.textLabel=Текстовые метки
+
+# LOCALIZATION NOTE (accessibility.filter.keyboard): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on keyboard accessibility failures within it.
+accessibility.filter.keyboard=Клавиатура
+
+# LOCALIZATION NOTE (accessibility.badge.contrast): A title text for the badge
+# that is rendered within the accessible row in the accessibility tree for a
+# given accessible object that does not satisfy the WCAG guideline for colour
+# contrast.
+accessibility.badge.contrast=контраст
+
+# LOCALIZATION NOTE (accessibility.badge.contrast.warning): A label for the
+# badge and attached warning icon that is rendered within the accessible row in
+# the accessibility tree for a given accessible object that does not satisfy the
+# WCAG guideline for colour contrast.
+accessibility.badge.contrast.warning=предупреждение о контрасте
+
+# LOCALIZATION NOTE (accessibility.badge.keyboard): A title text for the
+# badge that is rendered within the accessible row in the accessibility tree for
+# a given accessible object that does not satisfy the WCAG guideline for
+# keyboard accessibility.
+accessibility.badge.keyboard=клавиатура
+
+# LOCALIZATION NOTE (accessibility.badge.textLabel): A title text for the
+# badge that is rendered within the accessible row in the accessibility tree for
+# a given accessible object that does not satisfy the WCAG guideline for text
+# alternative.
+accessibility.badge.textLabel=текстовое поле
+
+# LOCALIZATION NOTE (accessibility.badge.contrast.tooltip): A title text for the
+# badge tooltip that is rendered on mouse hover over the badge in the accessible
+# row in the accessibility tree for a given accessible object that does not
+# satisfy the WCAG guideline for colour contrast.
+accessibility.badge.contrast.tooltip=Не соответствует стандартам WCAG для доступного текста.
+
+# LOCALIZATION NOTE (accessibility.badge.keyboard.tooltip): A title text
+# for the badge tooltip that is rendered on mouse hover over the badge in the
+# accessible row in the accessibility tree for a given accessible object that
+# does not satisfy the WCAG guideline for keyboard accessibility.
+accessibility.badge.keyboard.tooltip=Не соответствует стандартам WCAG по доступности клавиатуры.
+
+# LOCALIZATION NOTE (accessibility.badge.textLabel.tooltip): A title text
+# for the badge tooltip that is rendered on mouse hover over the badge in the
+# accessible row in the accessibility tree for a given accessible object that
+# does not satisfy the WCAG guideline for text alternative.
+accessibility.badge.textLabel.tooltip=Не соответствует стандартам WCAG для альтернативного текста.
+
+# LOCALIZATION NOTE (accessibility.tree.filters): A title text for the toolbar
+# within the main accessibility panel that contains a list of filters to be for
+# accessibility audit.
+accessibility.tree.filters=Проверка на проблемы:
+
+# LOCALIZATION NOTE (accessibility.tree.filters.prefs): A title text for the
+# preferences button tooltip that contains preferences for accessibility audit.
+accessibility.tree.filters.prefs=Настроить параметры
+
+# LOCALIZATION NOTE (accessibility.progress.initializing): A title text for the
+# accessibility panel overlay shown when accessibility audit is starting up.
+accessibility.progress.initializing=Инициализация…
+
+# LOCALIZATION NOTE (accessibility.progress.initializing): A title text for the
+# accessibility panel overlay shown when accessibility audit is running showing
+# the number of nodes being audited. Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+accessibility.progress.progressbar=Проверка #1 узла;Проверка #1 узлов;Проверка #1 узлов
+
+# LOCALIZATION NOTE (accessibility.progress.finishing): A title text for the
+# accessibility panel overlay shown when accessibility audit is finishing up.
+accessibility.progress.finishing=Завершение…
+
+# LOCALIZATION NOTE (accessibility.pref.scroll.into.view.title): A title
+# text for the tooltip for the checkbox pref in the accessibility panel that
+# sets node auto scroll.
+accessibility.pref.scroll.into.view.title=Автоматически прокручивать до выбираемого элемента
+
+# LOCALIZATION NOTE (accessibility.pref.scroll.into.view.label): A title
+# text for the checkbox pref in the accessibility panel that sets node auto
+# scroll.
+accessibility.pref.scroll.into.view.label=Прокрутить до элемента
+
+# LOCALIZATION NOTE (accessibility.documentation.label): This is the label for
+# the Documentation menu item.
+accessibility.documentation.label=Документация…
+
+# LOCALIZATION NOTE (accessibility.simulation): A title text for the toolbar
+# within the main accessibility panel that contains a list of simulations for
+# vision deficiencies.
+accessibility.simulation=Симуляция:
+
+# LOCALIZATION NOTE (accessibility.simulation.protanopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the protanopia simulation option.
+accessibility.simulation.protanopia=Протанопия (нет восприятия красного)
+
+# LOCALIZATION NOTE (accessibility.simulation.deuteranopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the deuteranopia simulation option.
+accessibility.simulation.deuteranopia=Дейтеранопия (нет восприятия зеленого)
+
+# LOCALIZATION NOTE (accessibility.simulation.tritanopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the tritanopia simulation option.
+accessibility.simulation.tritanopia=Тританопия (нет восприятия синего)
+
+# LOCALIZATION NOTE (accessibility.simulation.contrastLoss): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the contrast loss simulation option.
+# It is also shown in the simulation menu button in the accessibility panel and represent the
+# contrast loss simulation option currently selected.
+accessibility.simulation.contrastLoss=Потеря контраста
+
+# LOCALIZATION NOTE (accessibility.simulation.achromatopsia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the achromatopsia simulation option.
+accessibility.simulation.achromatopsia=Ахроматопсия (нет восприятия цвета)
+
+# LOCALIZATION NOTE (accessibility.toolbar.displayTabbingOrder.label): A title text for a checkbox label
+# in the accessibility panel toolbar that turns on/off the overlay of focusable elements in their
+# tabbing order.
+accessibility.toolbar.displayTabbingOrder.label=Показать порядок табуляции
+
+# LOCALIZATION NOTE (accessibility.toolbar.displayTabbingOrder.tooltip): A title text for a checkbox
+# tooltip in the accessibility panel toolbar that turns on/off the overlay of focusable elements in
+# their tabbing order.
+accessibility.toolbar.displayTabbingOrder.tooltip=Показать порядок табуляции элементов и их индекс табуляции.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/animationinspector.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/animationinspector.properties
new file mode 100644
index 0000000000..c279335c03
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/animationinspector.properties
@@ -0,0 +1,182 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Animation inspector
+# which is available as a sidebar panel in the Inspector.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (panel.noAnimation):
+# This is the label shown in the panel when there are no displayable animations.
+# (e.g. In case of user selected a non-element node or a node that is not animated).
+panel.noAnimation=Нет анимаций для выбранного элемента.\nВыберите другой элемент на странице.
+
+# LOCALIZATION NOTE (player.animationDurationLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation duration.
+player.animationDurationLabel=Длительность:
+
+# LOCALIZATION NOTE (player.infiniteDurationText):
+# This string is displayed in a tooltip on animation player widget, in case the
+# duration of the animation is infinite.
+player.infiniteDurationText=∞
+
+# LOCALIZATION NOTE (player.animationDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation delay.
+player.animationDelayLabel=Задержка:
+
+# LOCALIZATION NOTE (player.animationEndDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation endDelay.
+player.animationEndDelayLabel=Задержка окончания:
+
+# LOCALIZATION NOTE (player.animationRateLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation playback rate.
+player.animationRateLabel=Скорость воспроизведения:
+
+# LOCALIZATION NOTE (player.animationIterationCountLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the number of times the animation is set to repeat.
+player.animationIterationCountLabel=Повторы:
+
+# LOCALIZATION NOTE (player.infiniteIterationCount):
+# In case the animation repeats infinitely, this string is displayed next to the
+# player.animationIterationCountLabel string, instead of a number.
+player.infiniteIterationCount=&#8734;
+
+# LOCALIZATION NOTE (player.infiniteIterationCountText):
+# See player.infiniteIterationCount for a description of what this is.
+# Unlike player.infiniteIterationCount, this string isn't used in HTML, but in
+# a tooltip.
+player.infiniteIterationCountText=∞
+
+# LOCALIZATION NOTE (player.animationIterationStartLabel2):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# iterationStart value.
+# %1$S will be replaced by the original iteration start value
+# %2$S will be replaced by the actual time of iteration start without time unit
+# e.g.
+# If iterationStart of animation is 0.5 and duration is 1 sec, the string will be
+# "Iteration start: 0.5 (0.5s)"
+player.animationIterationStartLabel2=Начало итерации: %1$S (%2$S)
+
+# LOCALIZATION NOTE (player.animationOverallEasingLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the easing
+# that applies to a whole iteration of an animation as opposed to the
+# easing that applies between animation keyframes.
+player.animationOverallEasingLabel=Общее смягчение:
+
+# LOCALIZATION NOTE (player.animationTimingFunctionLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the
+# animation-timing-function for CSS Animations.
+player.animationTimingFunctionLabel=Функция анимации:
+
+# LOCALIZATION NOTE (player.animationFillLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# fill mode value.
+player.animationFillLabel=Заполнение:
+
+# LOCALIZATION NOTE (player.animationDirectionLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# direction value.
+player.animationDirectionLabel=Направление:
+
+# LOCALIZATION NOTE (player.timeLabel):
+# This string is displayed in each animation player widget, to indicate either
+# how long (in seconds) the animation lasts, or what is the animation's current
+# time (in seconds too);
+player.timeLabel=%Sс
+
+# LOCALIZATION NOTE (player.infiniteDurationText):
+# This string is displayed in animation player widget, in case the duration of the
+# animation is infinite.
+player.infiniteTimeLabel=∞
+
+# LOCALIZATION NOTE (player.playbackRateLabel):
+# This string is displayed in each animation player widget, as the label of
+# drop-down list items that can be used to change the rate at which the
+# animation runs (1× being the default, 2× being twice as fast).
+player.playbackRateLabel=%S×
+
+# LOCALIZATION NOTE (player.runningOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that the
+# animation is running on the compositor thread.
+player.runningOnCompositorTooltip=Эта анимация работает в потоке композитора
+
+# LOCALIZATION NOTE (player.allPropertiesOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that
+# all of animation is running on the compositor thread.
+player.allPropertiesOnCompositorTooltip=Все свойства анимации оптимизированы
+
+# LOCALIZATION NOTE (player.somePropertiesOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that
+# all of animation is not running on the compositor thread.
+player.somePropertiesOnCompositorTooltip=Некоторые свойства анимации оптимизированы
+
+# LOCALIZATION NOTE (timeline.pausedButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# pause/resume button that can be used to pause or resume the animations
+timeline.pausedButtonTooltip=Возобновить анимации
+
+# LOCALIZATION NOTE (timeline.resumedButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# pause/resume button that can be used to pause or resume the animations
+timeline.resumedButtonTooltip=Приостановить анимации
+
+# LOCALIZATION NOTE (timeline.rewindButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# rewind button that can be used to rewind the animations
+timeline.rewindButtonTooltip=Перемотать анимации
+
+# LOCALIZATION NOTE (timeline.timeGraduationLabel):
+# This string is displayed at the top of the animation panel, next to each time
+# graduation, to indicate what duration (in milliseconds) this graduation
+# corresponds to.
+timeline.timeGraduationLabel=%Sмс
+
+# LOCALIZATION NOTE (timeline.cssanimation.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a CSS Animation in the timeline UI.
+# %S will be replaced by the name of the animation at run-time.
+timeline.cssanimation.nameLabel=%S — CSS-анимация
+
+# LOCALIZATION NOTE (timeline.csstransition.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a CSS Transition in the timeline UI.
+# %S will be replaced by the name of the transition at run-time.
+timeline.csstransition.nameLabel=%S — CSS-переход
+
+# LOCALIZATION NOTE (timeline.scriptanimation.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a script-generated animation in the timeline UI.
+# %S will be replaced by the name of the animation at run-time.
+timeline.scriptanimation.nameLabel=%S — Скриптовая анимация
+
+# LOCALIZATION NOTE (timeline.scriptanimation.unnamedLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over an unnamed script-generated animation in the timeline UI.
+timeline.scriptanimation.unnamedLabel=Скриптовая анимация
+
+# LOCALIZATION NOTE (timeline.unknown.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of an unknown animation type in the timeline UI.
+# This can happen if devtools couldn't figure out the type of the animation.
+# %S will be replaced by the name of the transition at run-time.
+timeline.unknown.nameLabel=%S
+
+# LOCALIZATION NOTE (detail.propertiesHeader.percentage):
+# This string is displayed on header label in .animated-properties-header.
+# %S represents the value in percentage with two decimal points, localized.
+# there are two "%" after %S to escape and display "%"
+detail.propertiesHeader.percentage=%S%%
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/boxmodel.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/boxmodel.properties
new file mode 100644
index 0000000000..39e1db6620
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/boxmodel.properties
@@ -0,0 +1,48 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE : FILE This file contains the Layout View strings.
+# The Layout View is a panel displayed in the computed view tab of the Inspector sidebar.
+
+# LOCALIZATION NOTE : FILE The correct localization of this file might be to
+# keep it in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (boxmodel.title) This is the title of the box model panel and is
+# displayed as a label.
+boxmodel.title=Блочная модель
+
+# LOCALIZATION NOTE: (boxmodel.geometryButton.tooltip) This label is displayed as a
+# tooltip that appears when hovering over the button that allows users to edit the
+# position of an element in the page.
+boxmodel.geometryButton.tooltip=Изменить позицию
+
+# LOCALIZATION NOTE: (boxmodel.propertiesLabel) This label is displayed as the header
+# for showing and collapsing the properties underneath the box model in the layout view
+boxmodel.propertiesLabel=Свойства блочной модели
+
+# LOCALIZATION NOTE (boxmodel.propertiesHideLabel):
+# This is the spoken label for the twisty.
+# If the properties are currently showing, it will say "Hide".
+boxmodel.propertiesHideLabel=Скрыть
+
+# LOCALIZATION NOTE (boxmodel.propertiesShowLabel):
+# This is the spoken label for the twisty.
+# If the properties are currently hidden, it will say "Show".
+boxmodel.propertiesShowLabel=Показать
+
+# LOCALIZATION NOTE: (boxmodel.offsetParent) This label is displayed inside the list of
+# properties, below the box model, in the layout view. It is displayed next to the
+# position property, when position is absolute, relative, sticky. This label tells users
+# what the DOM node previewed next to it is: an offset parent for the position element.
+boxmodel.offsetParent=смещение
+
+# LOCALIZATION NOTE: (boxmodel.offsetParent.title) This label is displayed as a
+# tooltip that appears when hovering over the offset label, inside the list of properties,
+# below the box model, in the layout view. This label tells users
+# what the DOM node previewed next to it is: an offset parent for the position element.
+boxmodel.offsetParent.title=Смещение родителя выбранного элемента
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/changes.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/changes.properties
new file mode 100644
index 0000000000..0f49a0c920
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/changes.properties
@@ -0,0 +1,64 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE This file contains the strings for the Changes panel accessible from
+# the Inspector sidebar.
+
+# LOCALIZATION NOTE (changes.noChanges): This text is shown when no changes are available.
+changes.noChanges=Изменений не найдено.
+
+# LOCALIZATION NOTE (changes.noChangesDescription): This text is shown when no changes are
+# available and provides additional context for the purpose of the Changes panel.
+changes.noChangesDescription=Изменения CSS в Инспекторе появятся здесь.
+
+# LOCALIZATION NOTE (changes.inlineStyleSheetLabel): This label appears in the Changes
+# panel above changes done to inline stylesheets. The variable will be replaced with the
+# index of the stylesheet within its document like so: Inline #1
+changes.inlineStyleSheetLabel=Inline таблица стилей %S
+
+# LOCALIZATION NOTE (changes.elementStyleLabel): This label appears in the Changes
+# panel above changes done to element styles.
+changes.elementStyleLabel=Элемент
+
+# LOCALIZATION NOTE (changes.iframeLabel): This label appears next to URLs of stylesheets
+# and element inline styles hosted by iframes. Lowercase intentional.
+changes.iframeLabel=iframe
+
+# LOCALIZATION NOTE (changes.contextmenu.copy): Label for "Copy" option in Changes panel
+# context menu
+changes.contextmenu.copy=Копировать
+
+# LOCALIZATION NOTE (changes.contextmenu.copy.accessKey): Access key for "Copy"
+# option in the Changes panel.
+changes.contextmenu.copy.accessKey=и
+
+# LOCALIZATION NOTE (changes.contextmenu.copyAllChanges): Label for "Copy All Changes"
+# option in Changes panel context menu which copies all changed CSS declarations from a
+# stylesheet
+changes.contextmenu.copyAllChanges=Копировать все изменения
+
+# LOCALIZATION NOTE (changes.contextmenu.copyAllChangesDescription): Detailed explanation
+# for "Copy All Changes" option in Changes panel. Used as title attribute on "Copy All
+# Changes" button
+changes.contextmenu.copyAllChangesDescription=Копировать все изменения в CSS в буфер обмена.
+
+# LOCALIZATION NOTE (changes.contextmenu.copyDeclaration): Label for "Copy Declaration"
+# option in Changes panel context menu which copies the target CSS declaration.
+changes.contextmenu.copyDeclaration=Копировать декларацию
+
+# LOCALIZATION NOTE (changes.contextmenu.copyRule): Label for "Copy Rule" option in
+# Changes panel context menu which copies the complete contents of a CSS rule.
+changes.contextmenu.copyRule=Копировать правило
+
+# LOCALIZATION NOTE (changes.contextmenu.copyRuleDescription): Detailed explanation for
+# "Copy Rule" option in Changes panel. Used as title attribute on "Copy Rule" button.
+changes.contextmenu.copyRuleDescription=Копировать содержимое этого CSS-правила в буфер обмена.
+
+# LOCALIZATION NOTE (changes.contextmenu.selectAll): Label for "Select All" option in the
+# Changes panel context menu to select all text content.
+changes.contextmenu.selectAll=Выделить всё
+
+# LOCALIZATION NOTE (changes.contextmenu.selectAll.accessKey): Access key for "Select All"
+# option in the Changes panel.
+changes.contextmenu.selectAll.accessKey=ы
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/components.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/components.properties
new file mode 100644
index 0000000000..30efe089e0
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/components.properties
@@ -0,0 +1,61 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used in the shared React components,
+# so files in `devtools/client/shared/components/*`.
+
+# LOCALIZATION NOTE (frame.unknownSource): When we do not know the source filename of
+# a frame, we use this string instead.
+frame.unknownSource=(неизвестен)
+
+# LOCALIZATION NOTE (frame.viewsourceindebugger): The label for the tooltip when hovering over
+# a source link that links to the debugger.
+# %S represents the URL to match in the debugger.
+frame.viewsourceindebugger=Показать исходник в Отладчике → %S
+
+# LOCALIZATION NOTE (frame.viewsourceinstyleeditor): The label for the tooltip when hovering over
+# a source link that links to the Style Editor.
+# %S represents the URL to match in the style editor.
+frame.viewsourceinstyleeditor=Показать исходник в Редакторе стилей → %S
+
+# LOCALIZATION NOTE (notificationBox.closeTooltip): The content of a tooltip that
+# appears when hovering over the close button in a notification box.
+notificationBox.closeTooltip=Закрыть это сообщение
+
+# LOCALIZATION NOTE (appErrorBoundary.description): This is the information displayed
+# once the panel errors.
+# %S represents the name of panel which has the crash.
+appErrorBoundary.description=Произошёл крах панели %S.
+
+# LOCALIZATION NOTE (appErrorBoundary.fileBugButton): This is the text that appears in
+# the button to visit the bug filing link.
+appErrorBoundary.fileBugButton=Отправить сообщение об ошибке
+
+# LOCALIZATION NOTE (appErrorBoundary.reloadPanelInfo): This is the text that appears
+# after the panel errors to instruct the user to reload the panel.
+appErrorBoundary.reloadPanelInfo=Закройте и заново откройте панель инструментов, чтобы убрать эту ошибку.
+
+# LOCALIZATION NOTE(searchModifier.regExpModifier): A search option
+# when searching text in a file
+searchModifier.regExpModifier=Использовать регулярное выражение
+
+# LOCALIZATION NOTE(searchModifier.caseSensitiveModifier): A search option
+# when searching text in a file
+searchModifier.caseSensitiveModifier=С учётом регистра
+
+# LOCALIZATION NOTE(searchModifier.wholeWordModifier): A search option
+# when searching text in a file
+searchModifier.wholeWordModifier=Соответствие целому слову
+
+# LOCALIZATION NOTE (searchBox.clearButtonTitle): The title of the SearchBox clear input
+# button, which is displayed when the input is not empty.
+searchBox.clearButtonTitle=Очистить данные фильтра
+
+# LOCALIZATION NOTE treeNode.collapseButtonTitle): The title of the Tree node toggle
+# button when the node is expanded.
+treeNode.collapseButtonTitle=Свернуть
+
+# LOCALIZATION NOTE treeNode.expandButtonTitle): The title of the Tree node toggle
+# button when the node is collapsed.
+treeNode.expandButtonTitle=Развернуть
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/debugger.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/debugger.properties
new file mode 100644
index 0000000000..390dd29587
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/debugger.properties
@@ -0,0 +1,1159 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Debugger
+# which is available from the Browser Tools sub-menu -> 'Debugger'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (collapseSources): This is the tooltip for the button
+# that collapses the Sources and Outlines panes in the debugger UI.
+collapseSources=Свернуть панели исходников и контуров
+
+# LOCALIZATION NOTE (collapseBreakpoints): This is the tooltip for the button
+# that collapses the Breakpoints panes in the debugger UI.
+collapseBreakpoints=Свернуть панель точек останова
+
+# LOCALIZATION NOTE (copyToClipboard.label): This is the text that appears in the
+# context menu to copy the text that the user selected.
+copyToClipboard.label=Копировать в буфер обмена
+copyToClipboard.accesskey=о
+
+# LOCALIZATION NOTE (copySource.label): This is the text that appears in the
+# context menu to copy all of the text in the open file.
+copySource.label=Копировать исходный текст
+copySource.accesskey=в
+
+# LOCALIZATION NOTE (copySourceUri2): This is the text that appears in the
+# context menu to copy the source URI of file open.
+copySourceUri2=Копировать URI исходника
+copySourceUri2.accesskey=и
+
+# LOCALIZATION NOTE (collapseAll.label): This is the text that appears in the
+# context menu to collapse a directory and all of its subdirectories.
+collapseAll.label=Свернуть всё
+
+# LOCALIZATION NOTE (expandAll.label): This is the text that appears in the
+# context menu to expand a directory and all of its subdirectories.
+expandAll.label=Развернуть всё
+
+# LOCALIZATION NOTE (setDirectoryRoot.label): This is the text that appears in the
+# context menu to set a directory as root directory
+setDirectoryRoot.label=Установить корневой каталог
+setDirectoryRoot.accesskey=ь
+
+# LOCALIZATION NOTE (removeDirectoryRoot.label): This is the text that appears in the
+# context menu to remove a directory as root directory
+removeDirectoryRoot.label=Удалить корневой каталог
+
+# LOCALIZATION NOTE (ignoreAll.label): Text associated with the ignore context menu item
+ignoreAll.label=Игнорировать
+
+# LOCALIZATION NOTE (ignoreAllInGroup.label): This is the text that appears in the
+# context submenu to ignore all files inside of the selected group
+ignoreAllInGroup.label=Игнорировать файлы в этой группе
+
+# LOCALIZATION NOTE (unignoreAllInGroup.label): This is the text that appears in the
+# context submenu to unignore all files inside of the selected group
+unignoreAllInGroup.label=Перестать игнорировать файлы в этой группе
+
+# LOCALIZATION NOTE (ignoreAllOutsideGroup.label): This is the text that appears in the
+# context submenu to ignore all files outside of the selected group
+ignoreAllOutsideGroup.label=Игнорировать файлы за пределами этой группы
+
+# LOCALIZATION NOTE (unignoreAllOutsideGroup.label): This is the text that appears in the
+# context submenu to unignore all files outside of the selected group
+unignoreAllOutsideGroup.label=Перестать игнорировать файлы за пределами этой группы
+
+# LOCALIZATION NOTE (ignoreAllInDir.label): This is the text that appears in the
+# context submenu to ignore all files inside of the selected directory
+ignoreAllInDir.label=Игнорировать файлы в этом каталоге
+
+# LOCALIZATION NOTE (unignoreAllInDir.label): This is the text that appears in the
+# context submenu to unignore all files inside of the selected directory
+unignoreAllInDir.label=Перестать игнорировать файлы в этом каталоге
+
+# LOCALIZATION NOTE (ignoreAllOutsideDir.label): This is the text that appears in the
+# context submenu to ignore all files outside of the selected directory
+ignoreAllOutsideDir.label=Игнорировать файлы за пределами этого каталога
+
+# LOCALIZATION NOTE (unignoreAllOutsideDir.label: This is the text that appears in the
+# context submenu to unignore all files outside of the selected directory
+unignoreAllOutsideDir.label=Перестать игнорировать файлы за пределами этого каталога
+
+# LOCALIZATION NOTE (copyFunction.label): This is the text that appears in the
+# context menu to copy the function the user selected
+copyFunction.label=Копировать функцию
+copyFunction.accesskey=н
+
+# LOCALIZATION NOTE (copyStackTrace): This is the text that appears in the
+# context menu to copy the stack trace methods, file names and row number.
+copyStackTrace=Копировать трассировку стека
+copyStackTrace.accesskey=п
+
+# LOCALIZATION NOTE (restartFrame): This is the text that appears in the
+# context menu to restart a frame.
+restartFrame=Перезапустить кадр
+restartFrame.accesskey=и
+
+# LOCALIZATION NOTE (expandSources): This is the tooltip for the button
+# that expands the Sources and Outlines panes in the debugger UI.
+expandSources=Развернуть панели исходников и контуров
+
+# LOCALIZATION NOTE (expandBreakpoints): This is the tooltip for the button
+# that expands the Breakpoints panes in the debugger UI.
+expandBreakpoints=Развернуть панель точек останова
+
+# LOCALIZATION NOTE (evaluateInConsole.label): Editor right-click menu item
+# to execute selected text in browser console.
+evaluateInConsole.label=Выполнить в консоли
+
+# LOCALIZATION NOTE (pauseButtonTooltip): The tooltip that is displayed for the pause
+# button when the debugger is in a running state.
+pauseButtonTooltip=Приостановить %S
+
+# LOCALIZATION NOTE (pausePendingButtonTooltip): The tooltip that is displayed for
+# the pause button after it's been clicked but before the next JavaScript to run.
+pausePendingButtonTooltip=Ожидание следующего выполнения
+
+# LOCALIZATION NOTE (startTraceButtonTooltip): The label that is displayed on the trace
+# button in the top of the debugger right sidebar. %S is for the log output location (webconsole or stdout).
+startTraceButtonTooltip=Отследить все кадры JavaScript до %S.\nЩёлкните правой кнопкой мыши, чтобы изменить вывод.
+
+# LOCALIZATION NOTE (stopTraceButtonTooltip): The label that is displayed on the trace
+# button in the top of the debugger right sidebar. This label is only displayed when we are current tracing
+# JavaScript.
+stopTraceButtonTooltip=Прекратить трассировку кадров JavaScript.
+
+# LOCALIZATION NOTE (startTraceButtonTooltip): The label that is displayed on the trace
+# button in the top of the debugger right sidebar.
+# %1$S is for the key shortcut
+# %2$S is for the log output location (webconsole or stdout).
+startTraceButtonTooltip2=Отследить все фреймы JavaScript до %2$S. (%1$S)\nНажмите правой кнопкой мыши, чтобы изменить вывод.
+
+# LOCALIZATION NOTE (stopTraceButtonTooltip): The label that is displayed on the trace
+# button in the top of the debugger right sidebar. This label is only displayed when we are current tracing
+# JavaScript.
+# %S is for the key shortcut
+stopTraceButtonTooltip2=Прекратить трассировку фреймов JavaScript. (%S)
+
+# LOCALIZATION NOTE (traceInWebConsole): The label that is displayed in the context menu
+# of the trace button, which is in the top of the debugger right sidebar.
+# This is used to force logging JavaScript traces in the Web Console.
+traceInWebConsole=Трассировка в веб-консоли
+
+# LOCALIZATION NOTE (traceInWebConsole): The label that is displayed in the context menu
+# of the trace button, which is in the top of the debugger right sidebar.
+# This is used to force logging JavaScript traces in the stdout.
+traceInStdout=Трассировка в стандартном выводе
+
+# LOCALIZATION NOTE (traceValues): The label that is displayed in the context menu
+# of the trace button, which is in the top of the debugger right sidebar.
+# This is used to enable logging arguments passed to function calls
+# as well as returned values (only for JS function calls, but not native function calls)
+traceValues=Журналировать аргументы функции и возвращаемые значения
+
+# LOCALIZATION NOTE (traceOnNextLoad): The label that is displayed in the context menu
+# of the trace button, which is in the top of the debugger right sidebar.
+# This is used to automatically start the tracing on next user interaction (mousedown/keydown)
+traceOnNextInteraction=Отслеживать только следующее взаимодействие с пользователем (нажатие кнопки мыши/нажатие кнопки)
+
+# LOCALIZATION NOTE (resumeButtonTooltip): The label that is displayed on the pause
+# button when the debugger is in a paused state.
+resumeButtonTooltip=Возобновить %S
+
+# LOCALIZATION NOTE (stepOverTooltip): The label that is displayed on the
+# button that steps over a function call.
+stepOverTooltip=Перешагнуть через %S
+
+# LOCALIZATION NOTE (stepInTooltip): The label that is displayed on the
+# button that steps into a function call.
+stepInTooltip=Зайти в %S
+
+# LOCALIZATION NOTE (stepOutTooltip): The label that is displayed on the
+# button that steps out of a function call.
+stepOutTooltip=Выйти из %S
+
+# LOCALIZATION NOTE (skipPausingTooltip.label): The tooltip text for disabling all
+# breakpoints and pausing triggers
+skipPausingTooltip.label=Отключить точки останова
+
+# LOCALIZATION NOTE (undoSkipPausingTooltip.label): The tooltip text for enabling all
+# breakpoints and pausing triggers
+undoSkipPausingTooltip.label=Включить точки останова
+
+# LOCALIZATION NOTE (pauseOnDebuggerStatement): The pause on debugger statement checkbox label
+pauseOnDebuggerStatement=Приостановлено на операторе отладчика
+
+# LOCALIZATION NOTE (pauseOnExceptionsItem2): The pause on exceptions checkbox description
+# when the debugger will pause on all exceptions.
+pauseOnExceptionsItem2=Приостанавливаться на исключениях
+
+# LOCALIZATION NOTE (pauseOnCaughtExceptionsItem): The pause on exceptions checkbox description
+# when the debugger should pause on caught exceptions
+pauseOnCaughtExceptionsItem=Приостанавливаться на пойманных исключениях
+
+# LOCALIZATION NOTE (threadsHeader): The text to describe the threads header
+threadsHeader=Потоки
+
+# LOCALIZATION NOTE (mainThread): The text to describe the thread of the
+# program as opposed to worker threads.
+mainThread=Основной поток
+
+# LOCALIZATION NOTE (pausedThread): The text to describe the status of paused threads
+pausedThread=приостановлен
+
+# LOCALIZATION NOTE (noSourcesText): The text to display in the sources list
+# when there are no sources.
+noSourcesText=На этой странице нет исходников.
+
+# LOCALIZATION NOTE (ignoredSourcesHidden): Notification message displayed in the
+# sources list footer when ignored sources are hidden.
+ignoredSourcesHidden=Игнорируемые исходники скрыты.
+
+# LOCALIZATION NOTE (showIgnoredSources): Notification button displayed in the
+# source next to the "ignored sources are hidden" string. Clicking on this link
+# shows all the ignored sources which are currently hidden.
+showIgnoredSources=Показать все исходники
+
+# LOCALIZATION NOTE (showIgnoredSources.tooltip.label): Message displayed in the tooltip of the notification
+# link displayed in the sources list footer when ignored sources are hidden.
+showIgnoredSources.tooltip.label=Это покажет все игнорируемые исходники (которые в настоящее время скрыты) в дереве.
+
+# LOCALIZATION NOTE (eventListenersHeader1): The text to display in the events
+# header.
+eventListenersHeader1=Точки останова обработчиков событий
+
+# LOCALIZATION NOTE (noDomMutationBreakpoints): The text to
+# display in the DOM Mutation Breakpoints pane when there are no events.
+# %S will be replaced by an active link using inspectorTool as text
+noDomMutationBreakpoints=Щёлкните правой кнопкой мыши по элементу в %S и выберите «Приостанавливаться на…», чтобы добавить точку останова
+
+# LOCALIZATION NOTE (inspectorTool): The text to describe the the Inspector tool
+inspectorTool=Инспектор
+
+# LOCALIZATION NOTE (eventListenersHeader1.placeholder): The placeholder text in
+# the event search input bar
+eventListenersHeader1.placeholder=Поиск по типу события
+
+# LOCALIZATION NOTE (domMutationHeader): The text to display in the
+# DOM Mutation Breakpoints header
+domMutationHeader=Точки останова изменения DOM
+
+# LOCALIZATION NOTE (domMutationTypes.attribute): The text to display in the
+# DOM Mutation Breakpoints panel for an attribute change
+domMutationTypes.attribute=Изменения атрибутов
+
+# LOCALIZATION NOTE (domMutationTypes.removal): The text to display in the
+# DOM Mutation Breakpoints panel for a DOM node removal
+domMutationTypes.removal=Удаления узлов
+
+# LOCALIZATION NOTE (domMutationTypes.subtree): The text to display in the
+# DOM Mutation Breakpoints panel for a DOM subtree change
+domMutationTypes.subtree=Изменения поддерева
+
+# LOCALIZATION NOTE (sources.search.key2): Key shortcut to open the search for
+# searching all the source files the debugger has seen.
+# Do not localize "CmdOrCtrl+P", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sources.search.key2=CmdOrCtrl+P
+
+# LOCALIZATION NOTE (sources.search.alt.key): A second key shortcut to open the
+# search for searching all the source files the debugger has seen.
+# Do not localize "CmdOrCtrl+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sources.search.alt.key=CmdOrCtrl+O
+
+# LOCALIZATION NOTE (projectTextSearch.key): A key shortcut to open the
+# full project text search for searching all the files the debugger has seen.
+# Do not localize "CmdOrCtrl+Shift+F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+projectTextSearch.key=CmdOrCtrl+Shift+F
+
+# LOCALIZATION NOTE (allShortcut.key): A key shortcut to open the
+# modal of full shortcuts list.
+# Do not localize "CmdOrCtrl+/", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+allShortcut.key=CmdOrCtrl+/
+
+# LOCALIZATION NOTE (functionSearch.key): A key shortcut to open the
+# modal for searching functions in a file.
+# Do not localize "CmdOrCtrl+Shift+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+functionSearch.key=CmdOrCtrl+Shift+O
+
+# LOCALIZATION NOTE (toggleBreakpoint.key): A key shortcut to toggle
+# breakpoints.
+# Do not localize "CmdOrCtrl+B", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleBreakpoint.key=CmdOrCtrl+B
+
+# LOCALIZATION NOTE (toggleCondPanel.breakpoint.key): A key shortcut to toggle
+# the conditional panel for breakpoints.
+# Do not localize "CmdOrCtrl+Shift+B", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleCondPanel.breakpoint.key=CmdOrCtrl+Shift+B
+
+# LOCALIZATION NOTE (toggleCondPanel.logPoint.key): A key shortcut to toggle
+# the conditional panel for log points.
+# Do not localize "CmdOrCtrl+Shift+Y", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+toggleCondPanel.logPoint.key=CmdOrCtrl+Shift+Y
+
+# LOCALIZATION NOTE (stepOut.key): A key shortcut to
+# step out.
+stepOut.key=Shift+F11
+
+# LOCALIZATION NOTE (shortcuts.header.editor): Sections header in
+# the shortcuts modal for keyboard shortcuts related to editing.
+shortcuts.header.editor=Редактор
+
+# LOCALIZATION NOTE (shortcuts.header.stepping): Sections header in
+# the shortcuts modal for keyboard shortcuts related to stepping.
+shortcuts.header.stepping=Пошаговые действия
+
+# LOCALIZATION NOTE (shortcuts.header.search): Sections header in
+# the shortcuts modal for keyboard shortcuts related to search.
+shortcuts.header.search=Поиск
+
+# LOCALIZATION NOTE (projectTextSearch.placeholder): A placeholder shown
+# when searching across all of the files in a project.
+projectTextSearch.placeholder=Найти в файлах…
+
+# LOCALIZATION NOTE (projectTextSearch.excludePatterns.label): A label shown
+# above the exclude patterns field when searching across all of the files in a project.
+projectTextSearch.excludePatterns.label=файлы для исключения
+
+# LOCALIZATION NOTE (projectTextSearch.excludePatterns.placeholder): A placeholder shown
+# for the exclude patterns field when searching across all of the files in a project.
+projectTextSearch.excludePatterns.placeholder=например, **/node_modules/**,app.js
+
+# LOCALIZATION NOTE (projectTextSearch.noResults): The center pane Text Search
+# message when the query did not match any text of all files in a project.
+projectTextSearch.noResults=Результатов не найдено
+
+# LOCALIZATION NOTE (projectTextSearch.pageNavigated): Tooltip shown on the refresh
+# button, only when it is highlighted because the page navigated to a new document
+# and the results might be obsolete.
+projectTextSearch.refreshButtonTooltip=Нажмите, чтобы обновить результаты поиска
+
+# LOCALIZATION NOTE (projectTextSearch.pageNavigated): Tooltip shown on the refresh
+# button, only when it is highlighted because the page navigated to a new document
+# and the results might be obsolete.
+projectTextSearch.refreshButtonTooltipOnNavigation=Страница перешла к новому документу. Нажмите, чтобы обновить результаты поиска
+
+# LOCALIZATION NOTE (projectTextSearch.sourceNoLongerAvailable): Tooltip message shown
+# on Text Search results when the related source no longer exists.
+# This typically happens after navigating or reloading the page and search results are obsolete.
+projectTextSearch.sourceNoLongerAvailable=Этот источник больше недоступен.\nОбновите поиск, чтобы получить последние источники.
+
+# LOCALIZATION NOTE (sourceSearch.search.key2): Key shortcut to open the search
+# for searching within a the currently opened files in the editor
+# Do not localize "CmdOrCtrl+F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+sourceSearch.search.key2=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (sourceSearch.search.placeholder): placeholder text in
+# the source search input bar
+sourceSearch.search.placeholder=Поиск в файле…
+
+# LOCALIZATION NOTE (sourceSearch.search.placeholder2): placeholder text in
+# the source search input bar
+sourceSearch.search.placeholder2=Найти в файле…
+
+# LOCALIZATION NOTE (sourceSearch.resultsSummary2): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Shows a summary of the number of matches for autocomplete
+sourceSearch.resultsSummary2=#1 результат;#1 результата;#1 результатов
+
+# LOCALIZATION NOTE (breakpointHeadingMenuItem.*): The text for all the elements
+# that are displayed in the breakpoint headings menu item popup.
+breakpointHeadingsMenuItem.enableInSource.label=Включить точки останова
+breakpointHeadingsMenuItem.enableInSource.accesskey=ю
+breakpointHeadingsMenuItem.disableInSource.label=Отключить точки останова
+breakpointHeadingsMenuItem.disableInSource.accesskey=к
+breakpointHeadingsMenuItem.removeInSource.label=Удалить точки останова
+breakpointHeadingsMenuItem.removeInSource.accesskey=л
+
+# LOCALIZATION NOTE (breakpointMenuItem): The text for all the elements that
+# are displayed in the breakpoints menu item popup.
+breakpointMenuItem.enableSelf2.label=Включить
+breakpointMenuItem.enableSelf2.accesskey=ю
+breakpointMenuItem.disableSelf2.label=Отключить
+breakpointMenuItem.disableSelf2.accesskey=к
+breakpointMenuItem.deleteSelf2.label=Удалить
+breakpointMenuItem.deleteSelf2.accesskey=л
+breakpointMenuItem.disabledbg.label=Никогда не останавливаться здесь
+breakpointMenuItem.enabledbg.label=Останавливаться здесь
+breakpointMenuItem.enableOthers2.label=Включить другие
+breakpointMenuItem.enableOthers2.accesskey=ч
+breakpointMenuItem.disableOthers2.label=Отключить другие
+breakpointMenuItem.disableOthers2.accesskey=г
+breakpointMenuItem.deleteOthers2.label=Удалить другие
+breakpointMenuItem.deleteOthers2.accesskey=д
+breakpointMenuItem.enableAll2.label=Включить все
+breakpointMenuItem.enableAll2.accesskey=с
+breakpointMenuItem.disableAll2.label=Отключить все
+breakpointMenuItem.disableAll2.accesskey=т
+breakpointMenuItem.deleteAll2.label=Удалить все
+breakpointMenuItem.deleteAll2.accesskey=в
+breakpointMenuItem.removeCondition2.label=Удалить условие
+breakpointMenuItem.removeCondition2.accesskey=л
+breakpointMenuItem.addCondition2.label=Добавить условие
+breakpointMenuItem.addCondition2.accesskey=а
+breakpointMenuItem.editCondition2.label=Изменить условие
+breakpointMenuItem.editCondition2.accesskey=м
+breakpointMenuItem.enableSelf=Включить точку останова
+breakpointMenuItem.disableSelf=Отключить точку останова
+breakpointMenuItem.deleteSelf=Удалить точку останова
+breakpointMenuItem.enableOthers=Включить другие
+breakpointMenuItem.disableOthers=Отключить другие
+breakpointMenuItem.deleteOthers=Удалить другие
+breakpointMenuItem.enableAll=Включить все точки останова
+breakpointMenuItem.disableAll=Отключить все точки останова
+breakpointMenuItem.deleteAll=Удалить все точки останова
+breakpointMenuItem.disableAllAtLine.label=Отключить точки останова на этой строке
+breakpointMenuItem.disableAllAtLine.accesskey=с
+breakpointMenuItem.enableAllAtLine.label=Включить точки останова на этой строке
+breakpointMenuItem.enableAllAtLine.accesskey=ч
+breakpointMenuItem.removeAllAtLine.label=Удалить точки останова на этой строке
+breakpointMenuItem.removeAllAtLine.accesskey=н
+
+# LOCALIZATION NOTE (breakpoints.header): Breakpoints right sidebar pane header.
+breakpoints.header=Точки останова
+
+# LOCALIZATION NOTE (breakpoints.removeBreakpointTooltip): The tooltip that is displayed
+# for remove breakpoint button in right sidebar
+breakpoints.removeBreakpointTooltip=Удалить точку останова
+
+# LOCALIZATION NOTE (callStack.header): Call Stack right sidebar pane header.
+callStack.header=Стек вызовов
+
+# LOCALIZATION NOTE (callStack.notPaused): Call Stack right sidebar pane
+# message when not paused.
+callStack.notPaused=Не приостановлено
+
+# LOCALIZATION NOTE (callStack.collapse): Call Stack right sidebar pane
+# message to hide some of the frames that are shown.
+callStack.collapse=Свернуть стек
+
+# LOCALIZATION NOTE (callStack.expand): Call Stack right sidebar pane
+# message to show more of the frames.
+callStack.expand=Развернуть стек
+
+# LOCALIZATION NOTE (callStack.group.expandTooltip): The text that will appear
+# when hovering a collapsed Group of frames in the callStack panel. `frames` is
+# always plural since a group can only exist if it contain more that 1 frame.
+# %S is replaced by the name of the library of the frames in the group.
+# example: `Show React frames`.
+callStack.group.expandTooltip=Показать %S-фреймы
+
+# LOCALIZATION NOTE (callStack.group.collapseTooltip): The text that will appear
+# when hovering an expanded Group of frames in the callStack panel. `frames` is
+# always plural since a group can only exist if it contain more that 1 frame.
+# %S is replaced by the name of the library of the frames in the group.
+# example: `Collapse React frames`.
+callStack.group.collapseTooltip=Свернуть %S-фреймы
+
+# LOCALIZATION NOTE (editor.searchResults1): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Editor Search bar message to summarize the selected search result. e.g. 5 of 10 results.
+editor.searchResults1=%d из #1 результата;%d из #1 результатов;%d из #1 результатов
+
+# LOCALIZATION NOTE (editor.noResultsFound): Editor Search bar message
+# for when no results found.
+editor.noResultsFound=Результатов не найдено
+
+# LOCALIZATION NOTE (editor.searchResults.nextResult): Editor Search bar
+# tooltip for traversing to the Next Result
+editor.searchResults.nextResult=Следующий результат
+
+# LOCALIZATION NOTE (editor.searchResults.prevResult): Editor Search bar
+# tooltip for traversing to the Previous Result
+editor.searchResults.prevResult=Предыдущий результат
+
+# LOCALIZATION NOTE (editor.continueToHere.label): Editor gutter context
+# menu item for jumping to a new paused location
+editor.continueToHere.label=Продолжить досюда
+editor.continueToHere.accesskey=ю
+
+# LOCALIZATION NOTE (editor.addBreakpoint): Editor gutter context menu item
+# for adding a breakpoint on a line.
+editor.addBreakpoint=Добавить точку останова
+
+# LOCALIZATION NOTE (editor.disableBreakpoint): Editor gutter context menu item
+# for disabling a breakpoint on a line.
+editor.disableBreakpoint=Отключить точку останова
+editor.disableBreakpoint.accesskey=ч
+
+# LOCALIZATION NOTE (editor.enableBreakpoint): Editor gutter context menu item
+# for enabling a breakpoint on a line.
+editor.enableBreakpoint=Включить точку останова
+
+# LOCALIZATION NOTE (editor.removeBreakpoint): Editor gutter context menu item
+# for removing a breakpoint on a line.
+editor.removeBreakpoint=Удалить точку останова
+
+# LOCALIZATION NOTE (editor.addConditionBreakpoint): Editor gutter context
+# menu item for adding a breakpoint condition on a line.
+editor.addConditionBreakpoint=Добавить условие
+editor.addConditionBreakpoint.accesskey=в
+
+# LOCALIZATION NOTE (editor.editConditionBreakpoint): Editor gutter context menu item
+# for setting a breakpoint condition on a line.
+editor.editConditionBreakpoint=Изменить условие
+
+# LOCALIZATION NOTE (editor.addLogPoint): Editor gutter context
+# menu item for adding a log point on a line.
+editor.addLogPoint=Добавить логирование
+editor.addLogPoint.accesskey=а
+
+# LOCALIZATION NOTE (editor.editLogPoint): Editor gutter context menu item
+# for editing a log point already set on a line.
+editor.editLogPoint=Изменить логирование
+editor.editLogPoint.accesskey=м
+
+# LOCALIZATION NOTE (editor.removeLogPoint): Context menu item for removing
+# a log point on a line.
+editor.removeLogPoint.label=Убрать логирование
+editor.removeLogPoint.accesskey=б
+
+# LOCALIZATION NOTE (editor.conditionalPanel.placeholder2): Placeholder text for
+# input element inside ConditionalPanel component
+editor.conditionalPanel.placeholder2=Условие точки останова, например, items.length > 0
+
+# LOCALIZATION NOTE (editor.conditionalPanel.logPoint.placeholder2): Placeholder text for
+# input element inside ConditionalPanel component when a log point is set
+editor.conditionalPanel.logPoint.placeholder2=Сообщение в логе, например, displayName
+
+# LOCALIZATION NOTE (editor.jumpToMappedLocation1): Context menu item
+# for navigating to a source mapped location
+editor.jumpToMappedLocation1=Прыгнуть в расположение %S
+editor.jumpToMappedLocation1.accesskey=ы
+
+# LOCALIZATION NOTE (downloadFile.label): Context menu item
+# for downloading a source's content
+downloadFile.label=Загрузить файл
+downloadFile.accesskey=и
+
+# LOCALIZATION NOTE (inlinePreview.show.label): Context menu item
+# for showing the inline preview blocks
+inlinePreview.show.label=Показывать встроенный предпросмотр
+
+# LOCALIZATION NOTE (inlinePreview.hide.label): Context menu item
+# for hiding the inline preview block
+inlinePreview.hide.label=Скрывать встроенный предпросмотр
+
+# LOCALIZATION NOTE (inlinePreview.toggle.label): Context menu item
+# that will toggle display of inline preview
+inlinePreview.toggle.label=Предварительный просмотр встроенной переменной
+
+# LOCALIZATION NOTE (inlinePreview.toggle.tooltip): Context menu item
+# tooltip that will describe toggling inline preview
+inlinePreview.toggle.tooltip=Показывать встроенный предварительный просмотр в редакторе отладчика
+
+# LOCALIZATION NOTE (editorWrapping.show.label): Context menu item
+# for showing the wrap lines block
+editorWrapping.show.label=Переносить строки
+
+# LOCALIZATION NOTE (editorWrapping.hide.label): Context menu item
+# for showing the wrap lines block
+editorWrapping.hide.label=Не переносить строки
+
+# LOCALIZATION NOTE (editorWrapping.toggle.label): Context menu item
+# label for toggling the lines wrapping feature
+editorWrapping.toggle.label=Переносить строки
+
+# LOCALIZATION NOTE (editorWrapping.toggle.tooltip): Context menu item
+# tooltip for toggling the lines wrapping feature
+editorWrapping.toggle.tooltip=Переносить строки в редакторе отладчика
+
+# LOCALIZATION NOTE (settings.button.label): Label for Settings button
+settings.button.label=Настройки отладчика
+
+# LOCALIZATION NOTE (settings.disableJavaScript.label): Context menu item
+# label for disabling JavaScript
+settings.disableJavaScript.label=Отключить JavaScript
+
+# LOCALIZATION NOTE (settings.disableJavaScript.tooltip): Context menu item
+# tooltip for disabling JavaScript
+settings.disableJavaScript.tooltip=Отключает JavaScript (необходимо обновление страницы)
+
+# LOCALIZATION NOTE (settings.toggleSourceMaps.tooltip): Context menu item
+# tooltip for toggling the source maps feature
+settings.toggleSourceMaps.tooltip=Включить карты исходников, чтобы Инструменты разработчика загружали оригинальные исходники в дополнение к сгенерированным
+
+# LOCALIZATION NOTE (settings.toggleSourceMaps.label): Context menu item
+# label for toggling the source maps feature
+settings.toggleSourceMaps.label=Карты исходников
+
+# LOCALIZATION NOTE (settings.hideIgnoredSources.tooltip): Context menu item
+# tooltip for hiding and showing all the ignored sources
+settings.hideIgnoredSources.tooltip=Скрывает все игнорируемые исходники на панели «Исходники»
+
+# LOCALIZATION NOTE (settings.hideIgnoredSources.label): Context menu item
+# label for hiding all ignored sources when enabled (indicated by the check mark)
+# Ignored sources will be shown when disabled (no check mark).
+settings.hideIgnoredSources.label=Скрыть игнорируемые исходники
+
+# LOCALIZATION NOTE (settings.enableSourceMapIgnoreList.tooltip): Context menu item
+# tooltip for ignoring all sources on the sourcemaps ignore list.
+# Note: x_google_ignoreList should not be translated.
+settings.enableSourceMapIgnoreList.tooltip=Не учитывать все источники в поле x_google_ignoreList исходной карты.
+
+# LOCALIZATION NOTE (settings.enableSourceMapIgnoreList.label): Context menu item
+# label for ignoring all sources on the sourcemaps ignore list when enabled
+# (indicated by the check mark). The sources on the ignore list are un-ignored
+# when disabled (no check mark).
+# Note: Make sure to also keep 'sourceFooter.ignoreList' in sync when this changes
+settings.enableSourceMapIgnoreList.label=Не учитывать известные сторонние скрипты
+
+# LOCALIZATION NOTE (preview.noProperties): Label shown in the preview
+# popup when there are no properties to show.
+preview.noProperties=Нет свойств
+
+# LOCALIZATION NOTE (framework.disableGrouping): This is the text that appears in the
+# context menu to disable framework grouping.
+framework.disableGrouping=Отключить группирование фреймворка
+framework.disableGrouping.accesskey=ю
+
+# LOCALIZATION NOTE (framework.enableGrouping): This is the text that appears in the
+# context menu to enable framework grouping.
+framework.enableGrouping=Включить группирование фреймворка
+framework.enableGrouping.accesskey=ю
+
+# LOCALIZATION NOTE (generated): Source Map term for a server source location
+generated=сгенерировано
+
+# LOCALIZATION NOTE (original): Source Map term for a debugger UI source location
+original=оригинал
+
+# LOCALIZATION NOTE (expressions.placeholder): Placeholder text for expression
+# input element
+expressions.placeholder=Добавить выражение для отслеживания
+
+# LOCALIZATION NOTE (expressions.noOriginalScopes): Expressions right sidebar pane message
+# for when the`map variable names`is off and the debugger is paused in an original source
+expressions.noOriginalScopes=Сопоставление имен исходных переменных отключено. Значения выражения могут быть неточными.
+
+# LOCALIZATION NOTE (expressions.errorMsg): Error text for expression
+# input element
+expressions.errorMsg=Некорректное выражение…
+expressions.label=Добавить выражение для отслеживания
+expressions.accesskey=а
+expressions.remove.tooltip=Удалить выражение для отслеживания
+
+# LOCALIZATION NOTE (xhrBreakpoints.header): The pause on any XHR breakpoints headings
+xhrBreakpoints.header=Точки останова XHR
+xhrBreakpoints.placeholder=Останавливаться, когда URL содержит
+xhrBreakpoints.label=Добавить точку останова XHR
+
+# LOCALIZATION NOTE (xhrBreakpoints.removeAll.tooltip): For the `Remove all XHR breakpoints' button in the header of the XHR breakpoints panel
+xhrBreakpoints.removeAll.tooltip=Удалить все точки останова XHR
+
+
+# LOCALIZATION NOTE (xhrBreakpoints.item.label): message displayed when reaching a breakpoint for XHR requests. %S is replaced by the path provided as condition for the breakpoint.
+xhrBreakpoints.item.label=URL содержит «%S»
+
+# LOCALIZATION NOTE (pauseOnAnyXHR): The pause on any XHR checkbox description
+# when the debugger will pause on any XHR requests.
+pauseOnAnyXHR=Останавливаться на любом URL
+
+# LOCALIZATION NOTE (watchpoints.submenu): This is the text for the watchpoints sub-menu.
+watchpoints.submenu=Приостанавливаться на…
+
+# LOCALIZATION NOTE (watchpoints.getWatchpoint): This is the text that appears in the
+# watchpoints sub-menu to add a "get" watchpoint on an object property.
+watchpoints.getWatchpoint=Чтении свойств
+
+# LOCALIZATION NOTE (watchpoints.setWatchpoint): This is the text that appears in the
+# watchpoints submenu to add a "set" watchpoint on an object property.
+watchpoints.setWatchpoint=Установке свойств
+
+# LOCALIZATION NOTE (watchpoints.getOrSetWatchpoint): This is the text that appears in the
+# watchpoints submenu to add a "set" watchpoint on an object property.
+watchpoints.getOrSetWatchpoint=Получить или установить свойство
+
+# LOCALIZATION NOTE (watchpoints.removeWatchpoint): This is the text that appears in the
+# context menu to delete a watchpoint on an object property.
+watchpoints.removeWatchpoint=Убрать точку наблюдения
+
+# LOCALIZATION NOTE (watchpoints.removeWatchpointTooltip): This is the text that appears in the
+# tooltip to delete a watchpoint on an object property.
+watchpoints.removeWatchpointTooltip=Убрать точку наблюдения
+
+# LOCALIZATION NOTE (sourceTabs.closeTab): Editor source tab context menu item
+# for closing the selected tab below the mouse.
+sourceTabs.closeTab=Закрыть вкладку
+sourceTabs.closeTab.accesskey=ы
+sourceTabs.closeTab.key=CmdOrCtrl+W
+
+# LOCALIZATION NOTE (sourceTabs.closeOtherTabs): Editor source tab context menu item
+# for closing the other tabs.
+sourceTabs.closeOtherTabs=Закрыть другие
+sourceTabs.closeOtherTabs.accesskey=к
+
+# LOCALIZATION NOTE (sourceTabs.closeTabsToEnd): Editor source tab context menu item
+# for closing the tabs to the end (the right for LTR languages) of the selected tab.
+sourceTabs.closeTabsToEnd=Закрыть вкладки справа
+sourceTabs.closeTabsToEnd.accesskey=п
+
+# LOCALIZATION NOTE (sourceTabs.closeAllTabs): Editor source tab context menu item
+# for closing all tabs.
+sourceTabs.closeAllTabs=Закрыть все вкладки
+sourceTabs.closeAllTabs.accesskey=е
+
+# LOCALIZATION NOTE (sourceTabs.revealInTree): Editor source tab context menu item
+# for revealing source in tree.
+sourceTabs.revealInTree=Показать в дереве
+sourceTabs.revealInTree.accesskey=а
+
+# LOCALIZATION NOTE (sourceTabs.prettyPrint): Editor source tab context menu item
+# for pretty printing the source.
+sourceTabs.prettyPrint=«Красивая» печать исходников
+sourceTabs.prettyPrint.accesskey=я
+
+# LOCALIZATION NOTE (sourceFooter.prettyPrint.isPrettyPrintedMessage): Tooltip text for the disabled
+# pretty print button in editor footer. This displays when the file is already pretty printed.
+sourceFooter.prettyPrint.isPrettyPrintedMessage=Не могу красиво распечатать, файл уже распечатан
+
+# LOCALIZATION NOTE (sourceFooter.prettyPrint.isOriginalMessage): Tooltip text for the disabled
+# pretty print button in editor footer. This displays when the file is an original source.
+sourceFooter.prettyPrint.isOriginalMessage=Не могу красиво распечатать оригинальные исходники, файл уже читаем
+
+# LOCALIZATION NOTE (sourceFooter.prettyPrint.hasSourceMapMessage): Tooltip text for the disabled
+# pretty print button in editor footer. This displays when the file has a valid sourcemap with original sources.
+sourceFooter.prettyPrint.hasSourceMapMessage=Не могу красиво распечатать сгенерированные исходники с действительными картами исходников. Пожалуйста, используйте оригинальные исходники.
+
+# LOCALIZATION NOTE (sourceFooter.prettyPrint.noContentMessage): Tooltip text for the disabled
+# pretty print button in editor footer. This displays when the file has no content.
+sourceFooter.prettyPrint.noContentMessage=Не могу красиво распечатать, в файле нет содержимого
+
+# LOCALIZATION NOTE (sourceFooter.prettyPrint.isNotJavascriptMessage): Tooltip text for the disabled
+# pretty print button in editor footer. This displays when the file is not JavaScript code.
+sourceFooter.prettyPrint.isNotJavascriptMessage=Не могу красиво распечатать, файл не является JavaScript
+
+# LOCALIZATION NOTE (sourceFooter.ignores): Tooltip text associated
+# with the ignores button
+sourceFooter.ignore=Игнорировать исходник
+
+# LOCALIZATION NOTE (sourceFooter.unignore): Tooltip text associated
+# with the ignore button
+sourceFooter.unignore=Перестать игнорировать исходник
+
+# LOCALIZATION NOTE (sourceFooter.ignoreList): Tooltip text associated
+# with the ignore source button when the selected source is on the ignore list
+sourceFooter.ignoreList=Этот источник находится в списке игнорирования. Пожалуйста, отключите настройку «Не учитывать известные сторонние скрипты», чтобы включить его.
+
+# LOCALIZATION NOTE (editorNotificationFooter.noOriginalScopes): The notification message displayed in the editor notification footer
+# when paused in an original file and original variable mapping is turned off
+# %S is text from the label for checkbox to show original scopes
+editorNotificationFooter.noOriginalScopes=Сопоставление имен исходных переменных отключено, поэтому все встроенные предварительные просмотры и всплывающие подсказки отключены. Установите флажок %S на панели областей, чтобы включить их.
+
+# LOCALIZATION NOTE (ignoreContextItem.ignore): Text associated
+# with the ignore context menu item
+ignoreContextItem.ignore=Игнорировать исходник
+ignoreContextItem.ignore.accesskey=н
+
+# LOCALIZATION NOTE (ignoreContextItem.unignore): Text associated
+# with the unignore context menu item
+ignoreContextItem.unignore=Перестать игнорировать исходник
+ignoreContextItem.unignore.accesskey=е
+
+# LOCALIZATION NOTE (overridesContextItem.override): Text associated
+# with the add overrides context menu item
+overridesContextItem.override=Добавить переопределение сценария
+overridesContextItem.override.accesskey=а
+
+# LOCALIZATION NOTE (overridesContextItem.removeOverride): Text associated
+# with the remove override context menu item
+overridesContextItem.removeOverride=Удалить переопределение сценария
+overridesContextItem.removeOverride.accesskey=а
+
+# LOCALIZATION NOTE (ignoreContextItem.ignoreLine): Text associated
+# with the ignore line context menu item
+ignoreContextItem.ignoreLine=Игнорировать строку
+ignoreContextItem.ignoreLine.accesskey=н
+
+# LOCALIZATION NOTE (ignoreContextItem.unignoreLine): Text associated
+# with the unignore line context menu item
+ignoreContextItem.unignoreLine=Не игнорировать строку
+ignoreContextItem.unignoreLine.accesskey=е
+
+# LOCALIZATION NOTE (ignoreContextItem.ignoreLines): Text associated
+# with the ignore lines context menu item
+ignoreContextItem.ignoreLines=Игнорировать строки
+ignoreContextItem.ignoreLines.accesskey=н
+
+# LOCALIZATION NOTE (ignoreContextItem.unignoreLines): Text associated
+# with the unignore lines context menu item
+ignoreContextItem.unignoreLines=Не игнорировать строки
+ignoreContextItem.unignoreLines.accesskey=е
+
+# LOCALIZATION NOTE (sourceFooter.mappedSource): Text associated
+# with a mapped source. %S is replaced by the source map origin.
+sourceFooter.mappedSource=(Из %S)
+
+# LOCALIZATION NOTE (sourceFooter.mappedSourceTooltip): Tooltip text associated
+# with a mapped source. %S is replaced by the source map origin.
+sourceFooter.mappedSourceTooltip=(Источник сопоставлен с %S)
+
+# LOCALIZATION NOTE (sourceFooter.mappedOriginalSource.title): Text associated
+# with an original source mapped to a bundle. %S is replaced by the bundle url.
+sourceFooter.mappedOriginalSource.title=Из %S
+
+# LOCALIZATION NOTE (sourceFooter.mappedOriginalSource.tooltip): Tooltip text associated
+# with an original source mapped to a bundle. %S is replaced by bundle url.
+sourceFooter.mappedOriginalSource.tooltip=Открыть связанный пакет (%S)
+
+# LOCALIZATION NOTE (sourceFooter.mappedGeneratedSource.title): Text associated
+# with a bundled source mapped to an original source. %S is replaced by the original source url.
+sourceFooter.mappedGeneratedSource.title=На %S
+
+# LOCALIZATION NOTE (sourceFooter.mappedGeneratedSource.tooltip): Tooltip text associated
+# with a bundled source mapped to an original source. %S is replaced by the original source url.
+sourceFooter.mappedGeneratedSource.tooltip=Открыть связанный оригинальный исходник (%S)
+
+# LOCALIZATION NOTE (sourceFooter.mappedSuffix): Text associated
+# with a mapped source. Displays next to URLs in tree and tabs.
+sourceFooter.mappedSuffix=(сопоставлен)
+
+# LOCALIZATION NOTE (sourceFooter.currentCursorPosition): Text associated
+# with the current cursor line and column
+sourceFooter.currentCursorPosition=(%S, %S)
+
+# LOCALIZATION NOTE (sourceFooter.currentCursorPosition.tooltip): Text associated
+# with the current cursor line and column
+sourceFooter.currentCursorPosition.tooltip=(Строка %1$S, символ %2$S)
+
+# LOCALIZATION NOTE (sourceTabs.closeTabButtonTooltip): The tooltip that is displayed
+# for close tab button in source tabs.
+sourceTabs.closeTabButtonTooltip=Закрыть вкладку
+
+# LOCALIZATION NOTE (scopes.header): Scopes right sidebar pane header.
+scopes.header=Области видимости
+
+# LOCALIZATION NOTE (scopes.notAvailable): Scopes right sidebar pane message
+# for when the debugger is paused, but there isn't pause data.
+scopes.notAvailable=Области видимости недоступны
+
+# LOCALIZATION NOTE (scopes.noOriginalScopes): Scopes right sidebar pane message
+# for when original variable mapping is disabled. This is only displayed when paused in an original source.
+# %S is text from the label for checkbox to show original scopes
+scopes.noOriginalScopes=Сопоставление имен исходных переменных отключено. Области не могут быть отображены. Установите флажок `%S` выше, чтобы включить его.
+
+# LOCALIZATION NOTE (scopes.loadingOriginalScopes): Scopes right sidebar pane message
+# for when the debugger is still loading the original variable mapping information.
+scopes.loadingOriginalScopes=Загрузка переменных для исходного источника…
+
+# LOCALIZATION NOTE (scopes.notPaused): Scopes right sidebar pane message
+# for when the debugger is not paused.
+scopes.notPaused=Не приостановлено
+
+# LOCALIZATION NOTE (scopes.mapping.label): Scopes right sidebar pane
+# tooltip for checkbox and label
+scopes.mapping.label=Карта имён переменных
+
+# LOCALIZATION NOTE (eventlisteners.log.label): Event listeners tooltip for
+# checkbox and label
+eventlisteners.log.label=Записывать события в консоль
+
+# LOCALIZATION NOTE (eventlisteners.log): Checkbox label for logging events
+eventlisteners.log=Лог
+
+# LOCALIZATION NOTE (scopes.helpTooltip.label): Scopes right sidebar pane
+# icon tooltip for link to MDN
+scopes.helpTooltip.label=Узнайте больше о карте областей видимости
+
+# LOCALIZATION NOTE (scopes.map.label): Checkbox label to map scopes
+scopes.map.label=Карта
+
+# LOCALIZATION NOTE (scopes.showOriginalScopesHelpTooltip): Scopes right sidebar pane
+# icon tooltip for link to MDN
+scopes.showOriginalScopesHelpTooltip=Узнайте больше о сопоставлении переменных и отображении исходных областей действия
+
+# LOCALIZATION NOTE (scopes.showOriginalScopesTooltip): Scopes right sidebar pane
+# tooltip for checkbox and label
+scopes.showOriginalScopesTooltip=Отображать области с сопоставленными именами переменных для исходного источника.
+
+# LOCALIZATION NOTE (scopes.showOriginalScopes): Checkbox label to show original scopes
+scopes.showOriginalScopes=Показать исходные переменные
+
+# LOCALIZATION NOTE (scopes.block): Refers to a block of code in
+# the scopes pane when the debugger is paused.
+scopes.block=Блок
+
+# LOCALIZATION NOTE (sources.header): Sources left sidebar header
+sources.header=Исходники
+
+# LOCALIZATION NOTE (outline.header): Outline left sidebar header
+outline.header=Контур
+
+# LOCALIZATION NOTE (search.header): Search left sidebar header
+search.header=Поиск
+
+# LOCALIZATION NOTE (outline.placeholder): Placeholder text for the filter input
+# element
+outline.placeholder=Поиск функций
+
+# LOCALIZATION NOTE (outline.sortLabel): Label for the sort button
+outline.sortLabel=Сортировать по имени
+
+# LOCALIZATION NOTE (outline.noFunctions): Outline text when there are no functions to display
+outline.noFunctions=Нет функций
+
+# LOCALIZATION NOTE (outline.noFileSelected): Outline text when there are no files selected
+outline.noFileSelected=Файл не выбран
+
+# LOCALIZATION NOTE (sources.search): Sources left sidebar prompt
+# e.g. Cmd+P to search. On a mac, we use the command unicode character.
+# On windows, it's ctrl.
+sources.search=%S для поиска
+
+# LOCALIZATION NOTE (watchExpressions.header): Watch Expressions right sidebar
+# pane header.
+watchExpressions.header=Выражения для отслеживания
+
+# LOCALIZATION NOTE (watchExpressions.refreshButton): Watch Expressions header
+# button for refreshing the expressions.
+watchExpressions.refreshButton=Обновить
+
+# LOCALIZATION NOTE (welcome.search): The center pane welcome panel's
+# search prompt. e.g. cmd+p to search for files. On windows, it's ctrl, on
+# a mac we use the unicode character.
+welcome.search=%S для поиска исходников
+
+# LOCALIZATION NOTE (welcome.search2): The center pane welcome panel's
+# search prompt. e.g. cmd+p to search for files. On windows, it's ctrl, on
+# a mac we use the unicode character.
+welcome.search2=%S Перейти к файлу
+
+# LOCALIZATION NOTE (welcome.findInFiles): The center pane welcome panel's
+# search prompt. e.g. cmd+f to search for files. On windows, it's ctrl+shift+f, on
+# a mac we use the unicode character.
+welcome.findInFiles=%S для поиска в файлах
+
+# LOCALIZATION NOTE (welcome.findInFiles2): The center pane welcome panel's
+# search prompt. e.g. cmd+f to search for files. On windows, it's ctrl+shift+f, on
+# a mac we use the unicode character.
+welcome.findInFiles2=%S Найти в файлах
+
+# LOCALIZATION NOTE (welcome.allShortcuts): The label to open the modal of
+# shortcuts, displayed in the welcome panel.
+welcome.allShortcuts=Показать все горячие клавиши
+
+# LOCALIZATION NOTE (sourceSearch.search): The center pane Source Search
+# prompt for searching for files.
+sourceSearch.search=Поиск исходников…
+
+# LOCALIZATION NOTE (sourceSearch.search2): The center pane Source Search
+# prompt for searching for files.
+sourceSearch.search2=Перейти к файлу…
+
+# LOCALIZATION NOTE (pauseOnExceptions): The pause on exceptions button tooltip
+# when the debugger will pause on all exceptions.
+pauseOnExceptions=Приостанавливаться на всех исключениях. Щёлкните, чтобы игнорировать исключения
+
+# LOCALIZATION NOTE (loadingText): The text that is displayed in the script
+# editor when the loading process has started but there is no file to display
+# yet.
+loadingText=Загрузка…
+
+# LOCALIZATION NOTE (wasmIsNotAvailable): The text that is displayed in the
+# script editor when the WebAssembly source is not available.
+wasmIsNotAvailable=Пожалуйста, обновите, чтобы отладить этот модуль
+
+# LOCALIZATION NOTE (errorLoadingText3): The text that is displayed in the debugger
+# viewer when there is an error loading a file
+errorLoadingText3=Ошибка загрузки этого URI: %S
+
+# LOCALIZATION NOTE(gotoLineModal.placeholder): The placeholder
+# text displayed when the user searches for specific lines in a file
+gotoLineModal.placeholder=Перейти к строке…
+
+# LOCALIZATION NOTE(gotoLineModal.title): The message shown to users
+# to open the go to line modal
+gotoLineModal.title=Перейти к номеру строки в файле
+
+# LOCALIZATION NOTE(gotoLineModal.key3): The shortcut for opening the
+# go to line modal
+# Do not localize "Ctrl+G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+gotoLineModal.key3=Ctrl+G
+
+# LOCALIZATION NOTE(symbolSearch.search.functionsPlaceholder): The placeholder
+# text displayed when the user searches for functions in a file
+symbolSearch.search.functionsPlaceholder=Поиск функций…
+symbolSearch.search.functionsPlaceholder.title=Поиск функции в файле
+
+# LOCALIZATION NOTE(symbolSearch.search.variablesPlaceholder): The placeholder
+# text displayed when the user searches for variables in a file
+symbolSearch.search.variablesPlaceholder=Поиск переменных…
+symbolSearch.search.variablesPlaceholder.title=Поиск переменных в файле
+
+# LOCALIZATION NOTE(symbolSearch.search.key2): The Key Shortcut for
+# searching for a function or variable
+# Do not localize "CmdOrCtrl+Shift+O", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+symbolSearch.search.key2=CmdOrCtrl+Shift+O
+
+experimental=Это экспериментальная функция
+
+# LOCALIZATION NOTE (ctrl): The text that is used for documenting
+# keyboard shortcuts that use the control key
+ctrl=Ctrl
+
+# LOCALIZATION NOTE (anonymousFunction): this string is used to display
+# JavaScript functions that have no given name - they are said to be
+# anonymous.
+anonymousFunction=<анонимный>
+
+# LOCALIZATION NOTE (stacktrace.asyncStack): this string is used to
+# indicate that a given stack frame has an async parent.
+# %S is the "Async Cause" of the frame.
+stacktrace.asyncStack=(Асинхронный: %S)
+
+# LOCALIZATION NOTE (shortcuts.toggleBreakpoint): text describing
+# keyboard shortcut action for toggling breakpoint
+shortcuts.toggleBreakpoint=Включить/выключить точку останова
+shortcuts.toggleBreakpoint.accesskey=л
+
+# LOCALIZATION NOTE (shortcuts.toggleCondPanel.breakpoint): text describing
+# keyboard shortcut action for toggling conditional panel for breakpoints
+shortcuts.toggleCondPanel.breakpoint=Изменить условную точку останова
+
+# LOCALIZATION NOTE (shortcuts.toggleCondPanel.logPoint): text describing
+# keyboard shortcut action for toggling conditional panel for log points
+shortcuts.toggleCondPanel.logPoint=Изменить точку логгирования
+
+# LOCALIZATION NOTE (shortcuts.pauseOrResume): text describing
+# keyboard shortcut action for pause of resume
+shortcuts.pauseOrResume=Приостановить/возобновить
+
+# LOCALIZATION NOTE (shortcuts.stepOver): text describing
+# keyboard shortcut action for stepping over
+shortcuts.stepOver=Перешагнуть
+
+# LOCALIZATION NOTE (shortcuts.stepIn): text describing
+# keyboard shortcut action for stepping in
+shortcuts.stepIn=Зайти
+
+# LOCALIZATION NOTE (shortcuts.stepOut): text describing
+# keyboard shortcut action for stepping out
+shortcuts.stepOut=Выйти
+
+# LOCALIZATION NOTE (shortcuts.fileSearch): text describing
+# keyboard shortcut action for source file search
+shortcuts.fileSearch=Поиск файла исходников
+
+# LOCALIZATION NOTE (shortcuts.fileSearch2): text describing
+# keyboard shortcut action for source file search
+shortcuts.fileSearch2=Перейти к файлу
+
+# LOCALIZATION NOTE (shortcuts.gotoLine): text describing
+# keyboard shortcut for jumping to a specific line
+shortcuts.gotoLine=Перейти к строке
+
+# LOCALIZATION NOTE (shortcuts.projectSearch): text describing
+# keyboard shortcut action for full project search
+shortcuts.projectSearch=Поиск по всему проекту
+
+# LOCALIZATION NOTE (shortcuts.projectSearch2): text describing
+# keyboard shortcut action for full project search
+shortcuts.projectSearch2=Найти в файлах
+
+# LOCALIZATION NOTE (shortcuts.functionSearch): text describing
+# keyboard shortcut action for function search
+shortcuts.functionSearch=Поиск функции
+
+# LOCALIZATION NOTE (shortcuts.functionSearch2): text describing
+# keyboard shortcut action for function search
+shortcuts.functionSearch2=Найти функцию
+
+# LOCALIZATION NOTE (shortcuts.buttonName): text describing
+# keyboard shortcut button text
+shortcuts.buttonName=Сочетания клавиш
+
+# LOCALIZATION NOTE (variablesSeparatorLabel): The text that is displayed
+# in the variables list as a separator between the name and value.
+variablesSeparatorLabel=:
+variablesViewOptimizedOut=(оптимизировано)
+variablesViewUninitialized=(неинициализировано)
+variablesViewMissingArgs=(недоступно)
+
+# LOCALIZATION NOTE (variablesDomNodeValueTooltip): The text that is displayed
+# in a tooltip on the "open in inspector" button in the the variables list for a
+# DOMNode item.
+variablesDomNodeValueTooltip=Щёлкните, чтобы выбрать узел в инспекторе
+
+# LOCALIZATION NOTE (variablesEditButtonTooltip): The text that is displayed
+# in the variables list on a getter or setter which can be edited.
+variablesEditButtonTooltip=Щёлкните для установки значения
+
+# LOCALIZATION NOTE (variablesViewErrorStacktrace): This is the text that is
+# shown before the stack trace in an error.
+variablesViewErrorStacktrace=Стек вызовов:
+
+# LOCALIZATION NOTE (variablesViewMoreObjects): the text that is displayed
+# when you have an object preview that does not show all of the elements. At the end of the list
+# you see "N more..." in the web console output.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of remaining items in the object
+# example: 3 more…
+variablesViewMoreObjects=ещё #1…;ещё #1…;ещё #1…
+
+# LOCALIZATION NOTE (variablesEditableNameTooltip): The text that is displayed
+# in the variables list on an item with an editable name.
+variablesEditableNameTooltip=Двойной щелчок для изменения
+
+# LOCALIZATION NOTE (variablesEditableValueTooltip): The text that is displayed
+# in the variables list on an item with an editable value.
+variablesEditableValueTooltip=Щёлкните для изменения значения
+
+# LOCALIZATION NOTE (variablesCloseButtonTooltip): The text that is displayed
+# in the variables list on an item which can be removed.
+variablesCloseButtonTooltip=Щёлкните для удаления
+
+# LOCALIZATION NOTE (configurable|...|Tooltip): The text that is displayed
+# in the variables list on certain variables or properties as tooltips.
+# Explanations of what these represent can be found at the following links:
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isExtensible
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isFrozen
+# https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/isSealed
+# It's probably best to keep these in English.
+configurableTooltip=конфигурируемое
+enumerableTooltip=перечисляемое
+writableTooltip=записываемое
+frozenTooltip=замороженное
+sealedTooltip=запечатанное
+extensibleTooltip=расширяемое
+overriddenTooltip=переопределяемое
+WebIDLTooltip=WebIDL
+
+# LOCALIZATION NOTE (serviceWorkerInfo.parsed): State displayed for a service
+# worker that has been parsed.
+serviceWorkerInfo.parsed=обработано
+# LOCALIZATION NOTE (serviceWorkerInfo.installing): State displayed for a
+# service worker that is being installed.
+serviceWorkerInfo.installing=устанавливается
+# LOCALIZATION NOTE (serviceWorkerInfo.installed): State displayed for a
+# service worker that has finished being installed.
+serviceWorkerInfo.installed=установлен
+# LOCALIZATION NOTE (serviceWorkerInfo.activating): State displayed for a
+# service worker that is being activated.
+serviceWorkerInfo.activating=активируется
+# LOCALIZATION NOTE (serviceWorkerInfo.activated): State displayed for a
+# service worker that has finished being activated.
+serviceWorkerInfo.activated=активирован
+# LOCALIZATION NOTE (serviceWorkerInfo.redundant): State displayed for a
+# service worker that is redundant.
+serviceWorkerInfo.redundant=избыточен
+# LOCALIZATION NOTE (serviceWorkerInfo.unknown): State displayed for a
+# service worker that is in an unknown state.
+serviceWorkerInfo.unknown=неизвестно
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/device.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/device.properties
new file mode 100644
index 0000000000..b3f3d1a52f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/device.properties
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside Device Emulation developer
+# tools. The correct localization of this file might be to keep it in English,
+# or another language commonly spoken among web developers. You want to make
+# that choice consistent across the developer tools. A good criteria is the
+# language in which you'd find the best documentation on web development on the
+# web.
+
+# LOCALIZATION NOTE:
+# These strings are category names in a list of devices that a user can choose
+# to simulate (e.g. "ZTE Open C", "VIA Vixen", "720p HD Television", etc).
+device.phones=Телефоны
+device.tablets=Планшеты
+device.laptops=Ноутбуки
+device.televisions=ТВ
+device.consoles=Игровые приставки
+device.watches=Часы
+device.custom=Другое
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/dom.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/dom.properties
new file mode 100644
index 0000000000..15cae7433e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/dom.properties
@@ -0,0 +1,27 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the DOM panel
+# which is available from the Web Developer sub-menu -> 'DOM'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the DOM panel
+# which is available from the Browser Tools sub-menu -> 'DOM'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (dom.filterDOMPanel): A placeholder text used for
+# DOM panel search box.
+dom.filterDOMPanel=Фильтр панели DOM
+
+# LOCALIZATION NOTE (dom.refresh): A label for Refresh button in
+# DOM panel toolbar
+dom.refresh=Обновить
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/filterwidget.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/filterwidget.properties
new file mode 100644
index 0000000000..d24beabcb4
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/filterwidget.properties
@@ -0,0 +1,61 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used in the CSS Filter Editor Widget
+# which can be found in a tooltip that appears in the Rule View when clicking
+# on a filter swatch displayed next to CSS declarations like 'filter: blur(2px)'.
+
+# LOCALIZATION NOTE (emptyFilterList):
+# This string is displayed when filter's list is empty
+# (no filter specified / all removed)
+emptyFilterList=Ни одного фильтра не указано
+
+# LOCALIZATION NOTE (emptyPresetList):
+# This string is displayed when preset's list is empty
+emptyPresetList=У вас не сохранено ни одного пресета. \
+Вы можете сохранить пресет фильтров, присвоив ему имя и сохранив. \
+Пресеты легко доступны для повторного использования.
+
+# LOCALIZATION NOTE (addUsingList):
+# This string is displayed under [emptyFilterList] when filter's
+# list is empty, guiding user to add a filter using the list below it
+addUsingList=Добавьте фильтр из расположенного ниже списка
+
+# LOCALIZATION NOTE (dropShadowPlaceholder):
+# This string is used as a placeholder for drop-shadow's input
+# in the filter list (shown when <input> is empty)
+dropShadowPlaceholder=x y радиус цвет
+
+# LOCALIZATION NOTE (dragHandleTooltipText):
+# This string is used as a tooltip text (shown on mouse hover) on the
+# drag handles of filters which are used to re-order filters
+dragHandleTooltipText=Перетащите вверх или вниз, чтобы изменить порядок фильтров
+
+# LOCALIZATION NOTE (labelDragTooltipText):
+# This string is used as a tooltip text (shown on mouse hover) on the
+# filters' labels which can be dragged left/right to increase/decrease
+# the filter's value (like photoshop)
+labelDragTooltipText=Перетащите влево или вправо, чтобы уменьшить или увеличить значение
+
+# LOCALIZATION NOTE (filterListSelectPlaceholder):
+# This string is used as a preview option in the list of possible filters
+# <select>
+filterListSelectPlaceholder=Выбрать фильтр
+
+# LOCALIZATION NOTE (addNewFilterButton):
+# This string is displayed on a button used to add new filters
+addNewFilterButton=Добавить
+
+# LOCALIZATION NOTE (newPresetPlaceholder):
+# This string is used as a placeholder in the list of presets which is used to
+# save a new preset
+newPresetPlaceholder=Имя пресета
+
+# LOCALIZATION NOTE (savePresetButton):
+# This string is displayed on a button used to save a new preset
+savePresetButton=Сохранить
+
+# LOCALIZATION NOTE(presetsToggleButton):
+# This string is used in a button which toggles the presets list
+presetsToggleButton=Пресеты
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/font-inspector.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/font-inspector.properties
new file mode 100644
index 0000000000..9273657cea
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/font-inspector.properties
@@ -0,0 +1,69 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE This file contains the Font Inspector strings.
+# The Font Inspector is a panel accessible in the Inspector sidebar.
+
+# LOCALIZATION NOTE (fontinspector.system) This label indicates that the font is a local
+# system font.
+fontinspector.system=системный
+
+# LOCALIZATION NOTE (fontinspector.noFontsUsedOnCurrentElement): This label is shown when
+# no fonts were used on the selected element.
+fontinspector.noFontsUsedOnCurrentElement=В текущем элементе ни одного шрифта не использовано.
+
+# LOCALIZATION NOTE (fontinspector.copyURL): This is the text that appears in a tooltip
+# displayed when the user hovers over the copy icon next to the font URL.
+# Clicking the copy icon copies the full font URL to the user's clipboard
+fontinspector.copyURL=Копировать URL
+
+# LOCALIZATION NOTE (fontinspector.customInstanceName): Think of instances as presets
+# (groups of settings that apply in bulk to a thing). Instances have names. When the user
+# creates a new instance, it doesn't have a name. This is the text that appears as the
+# default name for a new instance. It shows up in a dropdown from which users can select
+# between predefined instances and this custom instance.
+fontinspector.customInstanceName=Пользовательский
+
+# LOCALIZATION NOTE (fontinspector.fontInstanceLabel): This label is shown next to the UI
+# in the font editor which allows a user to select a font instance option from a
+# dropdown. An instance is like a preset. A "font instance" is the term used by the font
+# authors to mean a group of predefined font settings.
+fontinspector.fontInstanceLabel=Набор
+
+# LOCALIZATION NOTE (fontinspector.fontSizeLabel): This label is shown next to the UI
+# in the font editor which allows the user to change the font size.
+fontinspector.fontSizeLabel=Размер
+
+# LOCALIZATION NOTE (fontinspector.fontWeightLabel): This label is shown next to the UI
+# in the font editor which allows the user to change the font weight.
+fontinspector.fontWeightLabel=Начертание
+
+# LOCALIZATION NOTE (fontinspector.fontItalicLabel): This label is shown next to the UI
+# in the font editor which allows the user to change the style of the font to italic.
+fontinspector.fontItalicLabel=Курсив
+
+# LOCALIZATION NOTE (fontinspector.showMore): Label for a collapsed list of fonts.
+fontinspector.showMore=Показать больше
+
+# LOCALIZATION NOTE (fontinspector.showLess): Label for an expanded list of fonts.
+fontinspector.showLess=Показать меньше
+
+# LOCALIZATION NOTE (fontinspector.letterSpacingLabel): Label for the UI to change the
+# letter spacing in the font editor.
+fontinspector.letterSpacingLabel=Интервал
+
+# LOCALIZATION NOTE (fontinspector.lineHeightLabelCapitalized): Label for the UI to change the line height in the font editor.
+fontinspector.lineHeightLabelCapitalized=Высота строки
+
+# LOCALIZATION NOTE (fontinspector.allFontsOnPageHeader): Header for the section listing
+# all the fonts on the current page.
+fontinspector.allFontsOnPageHeader=Все шрифты на странице
+
+# LOCALIZATION NOTE (fontinspector.fontsUsedLabel): Label for the Font Editor section
+# which shows the fonts used on the selected element.
+fontinspector.fontsUsedLabel=Использ. шрифты
+
+# LOCALIZATION NOTE (fontinspector.previewTextPlaceholder): Placeholder for the input
+# where the user can type text to get a preview of it using a font.
+fontinspector.previewTextPlaceholder=Текст предпросмотра шрифта
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/har.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/har.properties
new file mode 100644
index 0000000000..4b363a8818
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/har.properties
@@ -0,0 +1,30 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Network Monitor
+# which is available from the Web Developer sub-menu -> 'Network Monitor'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the Network Monitor
+# which is available from the Browser Tools sub-menu -> 'Network Monitor'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (har.responseBodyNotIncluded): A label used within
+# HAR file explaining that HTTP response bodies are not includes
+# in exported data.
+har.responseBodyNotIncluded=Тела ответов не включены.
+
+# LOCALIZATION NOTE (har.responseBodyNotIncluded): A label used within
+# HAR file explaining that HTTP request bodies are not includes
+# in exported data.
+har.requestBodyNotIncluded=Тела запросов не включены.
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/inspector.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/inspector.properties
new file mode 100644
index 0000000000..d1ac085df2
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/inspector.properties
@@ -0,0 +1,602 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Inspector
+# which is available from the Browser Tools sub-menu -> 'Inspect'.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+inspector.panelLabel.markupView=Разметка веб-страницы
+
+# LOCALIZATION NOTE (markupView.more.showing)
+# When there are too many nodes to load at once, we will offer to
+# show all the nodes.
+markupView.more.showing=Некоторые узлы были скрыты.
+
+# LOCALIZATION NOTE (markupView.more.showAll2): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+markupView.more.showAll2=Показать весь #1 узел;Показать все #1 узла;Показать все #1 узлов
+
+# LOCALIZATION NOTE (markupView.whitespaceOnly.label)
+# Used in the badge that appears when whitespace-only text nodes are displayed in the
+# inspector.
+markupView.whitespaceOnly.label=пробел
+
+# LOCALIZATION NOTE (markupView.unavailableChildren.label)
+# Used in the badge that appears when the Browser Toolbox is in "parent-process"
+# mode and the markup view cannot display the children from a content browser.
+markupView.unavailableChildren.label=недоступно
+
+# LOCALIZATION NOTE (markupView.unavailableChildren.title)
+# Title for the badge that appears when the Browser Toolbox is in "parent-process"
+# mode and the markup view cannot display the children from a content browser.
+markupView.unavailableChildren.title=Потомки этого элемента недоступны в текущем режиме Инструментов браузера
+
+# LOCALIZATION NOTE (markupView.whitespaceOnly)
+# Used in a tooltip that appears when the user hovers over whitespace-only text nodes in
+# the inspector. %S in the content will be replaced by the whitespace characters used in
+# the text node.
+markupView.whitespaceOnly=Whitespace-only текстовый узел: %S
+
+# LOCALIZATION NOTE (markupView.display.flex.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.flex.tooltiptext2=Этот элемент ведёт себя как блочный и отображает своё содержимое в соответствии с flexbox-моделью. Щёлкните, чтобы включить flexbox-отображение для этого элемента.
+
+# LOCALIZATION NOTE (markupView.display.inlineFlex.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.inlineFlex.tooltiptext2=Этот элемент ведёт себя как строчный и отображает своё содержимое в соответствии с flexbox-моделью. Щёлкните, чтобы включить flexbox-отображение для этого элемента.
+
+# LOCALIZATION NOTE (markupView.display.grid.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.grid.tooltiptext2=Этот элемент ведёт себя как блочный и отображает своё содержимое в соответствии с grid-моделью. Щёлкните, чтобы включить grid-отображение для этого элемента.
+
+# LOCALIZATION NOTE (markupView.display.inlineGrid.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.inlineGrid.tooltiptext2=Этот элемент ведёт себя как строчный и отображает своё содержимое в соответствии с grid-моделью. Щёлкните, чтобы включить grid-отображение для этого элемента.
+
+# LOCALIZATION NOTE (markupView.display.subgrid.tooltiptext)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.subgrid.tooltiptiptext=Этот элемент производит разметку cвоего содержимого в соответствии со своей grid-моделью, но использует определение своих строк и/или столбцов из родительского grid-контейнера.
+
+# LOCALIZATION NOTE (markupView.display.flowRoot.tooltiptext)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.flowRoot.tooltiptext=Этот элемент создаёт блочный элемент с своим блочным контекстом форматирования.
+
+# LOCALIZATION NOTE (markupView.display.contents.tooltiptext2)
+# Used in a tooltip that appears when the user hovers over the display type button in
+# the markup view.
+markupView.display.contents.tooltiptext2=Этот элемент не создаёт собой специальный блок, но отображает своё содержимое.
+
+# LOCALIZATION NOTE (markupView.event.tooltiptext)
+# Used in a tooltip that appears when the user hovers over 'event' badge in
+# the markup view.
+markupView.event.tooltiptext=Обработчик событий
+
+# LOCALIZATION NOTE (markupView.event.tooltiptext)
+# Used in a tooltip that appears when the user hovers over 'event' badge in
+# the markup view.
+markupView.event.tooltiptext2=Нажмите, чтобы показать прослушиватели событий для этого элемента
+
+# LOCALIZATION NOTE (markupView.custom.tooltiptext)
+# Used in a tooltip that appears when the user hovers over 'custom' badge in
+# the markup view. Only displayed on custom elements with a shadow root attached.
+markupView.custom.tooltiptext=Показать определение своего элемента
+
+# LOCALIZATION NOTE (markupView.newAttribute.label)
+# This is used to speak the New Attribute button when editing a tag
+# and a screen reader user tabs to it. This string is not visible onscreen.
+markupView.newAttribute.label=Новый атрибут
+
+# LOCALIZATION NOTE (markupView.revealLink.tooltip)
+# Used as a tooltip for an icon in the markup view when displaying elements inserted in
+# <slot> nodes in a custom component. When clicking on the icon, the corresponding
+# non-slotted container will be selected
+markupView.revealLink.tooltip=Показать
+
+#LOCALIZATION NOTE: Used in the image preview tooltip when the image could not be loaded
+previewTooltip.image.brokenImage=Не удалось загрузить изображение
+
+# LOCALIZATION NOTE: Used in color picker tooltip when the eyedropper is disabled for
+# non-HTML documents
+eyedropper.disabled.title=Недоступно в не-HTML документах
+
+#LOCALIZATION NOTE: Used in the event tooltip to allow the debugger to be opened
+eventsTooltip.openInDebugger=Открыть в Отладчике
+
+# LOCALIZATION NOTE: Used in the event tooltip for the toggle button.
+# Parameter is the event type (e.g. "click")
+eventsTooltip.toggleButton.label=Код прослушивателя событий «%S»
+
+#LOCALIZATION NOTE: Used in the event tooltip to allow the debugger to be opened
+eventsTooltip.openInDebugger2=Открыть «%S» в Отладчике
+
+#LOCALIZATION NOTE: Used in the event tooltip when a script's filename cannot be detected
+eventsTooltip.unknownLocation=Неизвестное расположение
+
+#LOCALIZATION NOTE: Used in the mouseover tooltip when hovering "Unknown location."
+eventsTooltip.unknownLocationExplanation=Исходное расположение этого обработчика не может быть определено. Возможно код был транспилирован с помощью утилиты, такой как Babel.
+
+# LOCALIZATION NOTE: Label for the checkbox in the event tooltip that toggles event listeners
+# Parameter is the event type (e.g. "click")
+eventsTooltip.toggleListenerLabel=Включить прослушиватель событий «%S»
+
+#LOCALIZATION NOTE: Used in the tooltip for Bubbling
+eventsTooltip.Bubbling=Всплытие
+
+#LOCALIZATION NOTE: Used in the tooltip for Capturing
+eventsTooltip.Capturing=Захват
+
+# LOCALIZATION NOTE: Title of the iframe we use in the event tooltip to display the code of
+# the event listener. Parameter is the event type (e.g. "click")
+eventsTooltip.codeIframeTitle=Код прослушивателя событий «%S»
+
+# LOCALIZATION NOTE (allTabsMenuButton.tooltip): The tooltip that gets
+# displayed when hovering over the tabs overflow button.
+allTabsMenuButton.tooltip=Показать все вкладки
+
+# LOCALIZATION NOTE (inspector.showThreePaneMode): This is the tooltip for the button
+# that toggles on the 3 pane inspector mode.
+inspector.showThreePaneMode=Включить 3-панельный инспектор
+
+# LOCALIZATION NOTE (inspector.hideThreePaneMode): This is the tooltip for the button
+# that toggles off the 3 pane inspector mode.
+inspector.hideThreePaneMode=Отключить 3-панельный инспектор
+
+# LOCALIZATION NOTE (inspector.searchResultsCount2): This is the label that
+# will show up next to the inspector search box. %1$S is the current result
+# index and %2$S is the total number of search results. For example: "3 of 9".
+# This won't be visible until the search box is updated in Bug 835896.
+inspector.searchResultsCount2=%1$S из %2$S
+
+# LOCALIZATION NOTE (inspector.searchResultsNone): This is the label that
+# will show up next to the inspector search box when no matches were found
+# for the given string.
+# This won't be visible until the search box is updated in Bug 835896.
+inspector.searchResultsNone=Нет совпадений
+
+# LOCALIZATION NOTE (inspector.menu.openUrlInNewTab.label): This is the label of
+# a menu item in the inspector contextual-menu that appears when the user right-
+# clicks on the attribute of a node in the inspector that is a URL, and that
+# allows to open that URL in a new tab.
+inspector.menu.openUrlInNewTab.label=Открыть ссылку в новой вкладке
+
+# LOCALIZATION NOTE (inspector.menu.copyUrlToClipboard.label): This is the label
+# of a menu item in the inspector contextual-menu that appears when the user
+# right-clicks on the attribute of a node in the inspector that is a URL, and
+# that allows to copy that URL in the clipboard.
+inspector.menu.copyUrlToClipboard.label=Копировать адрес ссылки
+
+# LOCALIZATION NOTE (inspector.menu.selectElement.label): This is the label of a
+# menu item in the inspector contextual-menu that appears when the user right-
+# clicks on the attribute of a node in the inspector that is the ID of another
+# element in the DOM (like with <label for="input-id">), and that allows to
+# select that element in the inspector.
+inspector.menu.selectElement.label=Выбрать элемент #%S
+
+# LOCALIZATION NOTE (inspectorEditAttribute.label): This is the label of a
+# sub-menu "Attribute" in the inspector contextual-menu that appears
+# when the user right-clicks on the node in the inspector, and that allows
+# to edit an attribute on this node.
+inspectorEditAttribute.label=Изменить атрибут «%S»
+inspectorEditAttribute.accesskey=м
+
+# LOCALIZATION NOTE (inspectorRemoveAttribute.label): This is the label of a
+# sub-menu "Attribute" in the inspector contextual-menu that appears
+# when the user right-clicks on the attribute of a node in the inspector,
+# and that allows to remove this attribute.
+inspectorRemoveAttribute.label=Удалить атрибут «%S»
+inspectorRemoveAttribute.accesskey=а
+
+# LOCALIZATION NOTE (inspectorCopyAttributeValue.label): This is the label of a
+# sub-menu "Attribute" in the inspector contextual-menu that appears
+# when the user right-clicks on the attribute of a node in the inspector,
+# and that allows to copy the attribute value to clipboard.
+inspectorCopyAttributeValue.label=Копировать значение атрибута «%S»
+inspectorCopyAttributeValue.accesskey=и
+
+# LOCALIZATION NOTE (inspector.nodePreview.highlightNodeLabel):
+# This string is displayed in a tooltip that is shown when hovering over a the
+# inspector icon displayed next to a DOM node preview (e.g. next to something
+# like "div#foo.bar").
+# DOM node previews can be displayed in places like the animation-inspector, the
+# console or the object inspector.
+# The tooltip invites the user to click on the icon in order to highlight the
+# node in the page.
+inspector.nodePreview.highlightNodeLabel=Щёлкните, чтобы подсветить этот узел на странице
+
+# LOCALIZATION NOTE (inspectorHTMLEdit.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users edit the
+# (outer) HTML of the current node
+inspectorXMLEdit.label=Редактировать как XML
+inspectorHTMLEdit.label=Редактировать как HTML
+inspectorSVGEdit.label=Редактировать как SVG
+inspectorMathMLEdit.label=Редактировать как MathML
+inspectorHTMLEdit.accesskey=в
+
+# LOCALIZATION NOTE (inspectorCopyInnerHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users copy the
+# inner HTML of the current node
+inspectorCopyInnerHTML.label=Внутренний HTML
+inspectorCopyInnerHTML.accesskey=н
+
+# LOCALIZATION NOTE (inspectorCopyOuterHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users copy the
+# outer HTML of the current node
+inspectorCopyOuterHTML.label=Внешний HTML
+inspectorCopyOuterHTML.accesskey=ш
+
+# LOCALIZATION NOTE (inspectorCopyCSSSelector.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the CSS Selector of the current node
+inspectorCopyCSSSelector.label=CSS-селектор
+inspectorCopyCSSSelector.accesskey=л
+
+# LOCALIZATION NOTE (inspectorCopyCSSPath.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the full CSS path of the current node
+inspectorCopyCSSPath.label=Путь к CSS
+inspectorCopyCSSPath.accesskey=ь
+
+# LOCALIZATION NOTE (inspectorCopyXPath.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the XPath of the current node
+inspectorCopyXPath.label=XPath
+inspectorCopyXPath.accesskey=X
+
+# LOCALIZATION NOTE (inspectorPasteOuterHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste outer
+# HTML in the current node
+inspectorPasteOuterHTML.label=Внешний HTML
+inspectorPasteOuterHTML.accesskey=ш
+
+# LOCALIZATION NOTE (inspectorPasteInnerHTML.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste inner
+# HTML in the current node
+inspectorPasteInnerHTML.label=Внутренний HTML
+inspectorPasteInnerHTML.accesskey=н
+
+# LOCALIZATION NOTE (inspectorHTMLPasteBefore.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste
+# the HTML before the current node
+inspectorHTMLPasteBefore.label=Перед
+inspectorHTMLPasteBefore.accesskey=е
+
+# LOCALIZATION NOTE (inspectorHTMLPasteAfter.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users paste
+# the HTML after the current node
+inspectorHTMLPasteAfter.label=После
+inspectorHTMLPasteAfter.accesskey=с
+
+# LOCALIZATION NOTE (inspectorHTMLPasteFirstChild.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users paste
+# the HTML as the first child the current node
+inspectorHTMLPasteFirstChild.label=Как первого потомка
+inspectorHTMLPasteFirstChild.accesskey=м
+
+# LOCALIZATION NOTE (inspectorHTMLPasteLastChild.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users paste
+# the HTML as the last child the current node
+inspectorHTMLPasteLastChild.label=Как последнего потомка
+inspectorHTMLPasteLastChild.accesskey=к
+
+# LOCALIZATION NOTE (inspectorScrollNodeIntoView.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users scroll
+# the current node into view
+inspectorScrollNodeIntoView.label=Прокрутить до элемента
+inspectorScrollNodeIntoView.accesskey=о
+
+# LOCALIZATION NOTE (inspectorHTMLDelete.label): This is the label shown in
+# the inspector contextual-menu for the item that lets users delete the
+# current node
+inspectorHTMLDelete.label=Удалить узел
+inspectorHTMLDelete.accesskey=з
+
+# LOCALIZATION NOTE (inspectorAttributesSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the other
+# attribute items, which allow to:
+# - add new attribute
+# - edit attribute
+# - remove attribute
+inspectorAttributesSubmenu.label=Атрибуты
+inspectorAttributesSubmenu.accesskey=ы
+
+# LOCALIZATION NOTE (inspectorAddAttribute.label): This is the label shown in
+# the inspector contextual-menu for the item that lets users add attribute
+# to current node
+inspectorAddAttribute.label=Добавить атрибут
+inspectorAddAttribute.accesskey=б
+
+# LOCALIZATION NOTE (inspectorPseudoClassSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the pseudo-classes.
+inspectorPseudoClassSubmenu.label=Изменить псевдокласс
+
+# LOCALIZATION NOTE (inspectorBreakpointSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the DOM breakpoints.
+inspectorBreakpointSubmenu.label=Приостанавливаться на…
+
+# LOCALIZATION NOTE (inspectorSubtreeModification.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users add a DOM breakpoint
+# for subtree modification.
+inspectorSubtreeModification.label=Изменении поддерева
+
+# LOCALIZATION NOTE (inspectorAttributeModification.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users add a DOM breakpoint
+# for attribute modification.
+inspectorAttributeModification.label=Изменении атрибутов
+
+# LOCALIZATION NOTE (inspectorNodeRemoval.label): This is the label shown
+# in the inspector contextual-menu for the item that lets users add a DOM breakpoint
+# for node removal.
+inspectorNodeRemoval.label=Удалении узлов
+
+# LOCALIZATION NOTE (inspectorSearchHTML.label3): This is the label that is
+# shown as the placeholder for the markup view search in the inspector.
+inspectorSearchHTML.label3=Поиск в HTML
+
+# LOCALIZATION NOTE (inspectorImageDataUri.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users copy
+# the URL embedding the image data encoded in Base 64 (what we name
+# here Image Data URL). For more information:
+# https://developer.mozilla.org/en-US/docs/Web/HTTP/data_URIs
+inspectorImageDataUri.label=URL данных изображения
+
+# LOCALIZATION NOTE (inspectorShowDOMProperties.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users see
+# the DOM properties of the current node. When triggered, this item
+# opens the split Console and displays the properties in its side panel.
+inspectorShowDOMProperties.label=Показать свойства DOM
+
+# LOCALIZATION NOTE (inspectorShowAccessibilityProperties.label): This is the
+# label shown in the inspector contextual-menu for the item that lets users see
+# the accessibility tree and accessibility properties of the current node.
+# When triggered, this item opens accessibility panel and selects an accessible
+# object for the given node.
+inspectorShowAccessibilityProperties.label=Показать свойства поддержки доступности
+
+# LOCALIZATION NOTE (inspectorUseInConsole.label): This is the label
+# shown in the inspector contextual-menu for the item that outputs a
+# variable for the current node to the console. When triggered,
+# this item opens the split Console.
+inspectorUseInConsole.label=Использовать в Консоли
+
+# LOCALIZATION NOTE (inspectorExpandNode.label): This is the label
+# shown in the inspector contextual-menu for recursively expanding
+# mark-up elements
+inspectorExpandNode.label=Развернуть все
+
+# LOCALIZATION NOTE (inspectorCollapseAll.label): This is the label
+# shown in the inspector contextual-menu for recursively collapsing
+# mark-up elements
+inspectorCollapseAll.label=Свернуть все
+
+# LOCALIZATION NOTE (inspectorScreenshotNode.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users take
+# a screenshot of the currently selected node.
+inspectorScreenshotNode.label=Скриншот узла
+
+# LOCALIZATION NOTE (inspectorDuplicateNode.label): This is the label
+# shown in the inspector contextual-menu for the item that lets users
+# duplicate the currently selected node.
+inspectorDuplicateNode.label=Дубликат узла
+
+# LOCALIZATION NOTE (inspectorAddNode.label): This is the label shown in
+# the inspector toolbar for the button that lets users add elements to the
+# DOM (as children of the currently selected element).
+inspectorAddNode.label=Создать новый узел
+inspectorAddNode.accesskey=ы
+
+# LOCALIZATION NOTE (inspectorCopyHTMLSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the other
+# copy items, which allow to:
+# - Copy Inner HTML
+# - Copy Outer HTML
+# - Copy Unique selector
+# - Copy Image data URI
+inspectorCopyHTMLSubmenu.label=Копировать
+
+# LOCALIZATION NOTE (inspectorPasteHTMLSubmenu.label): This is the label
+# shown in the inspector contextual-menu for the sub-menu of the other
+# paste items, which allow to:
+# - Paste Inner HTML
+# - Paste Outer HTML
+# - Before
+# - After
+# - As First Child
+# - As Last Child
+inspectorPasteHTMLSubmenu.label=Вставить
+
+# LOCALIZATION NOTE (inspectorCustomElementDefinition.label): This is the label
+# shown in the inspector contextual-menu for custom elements to which a shadow root has
+# been attached. Clicking on the menu item will open the Debugger on the custom element
+# definition location.
+inspectorCustomElementDefinition.label=Показать свой элемент
+
+# LOCALIZATION NOTE (inspector.searchHTML.key):
+# Key shortcut used to focus the DOM element search box on top-right corner of
+# the markup view
+inspector.searchHTML.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (markupView.hide.key):
+# Key shortcut used to hide the selected node in the markup view.
+markupView.hide.key=h
+
+# LOCALIZATION NOTE (markupView.edit.key):
+# Key shortcut used to hide the selected node in the markup view.
+markupView.edit.key=F2
+
+# LOCALIZATION NOTE (markupView.scrollInto.key):
+# Key shortcut used to scroll the webpage in order to ensure the selected node
+# is visible
+markupView.scrollInto.key=s
+
+# LOCALIZATION NOTE (inspector.sidebar.fontInspectorTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying the list of fonts used in the page.
+inspector.sidebar.fontInspectorTitle=Шрифты
+
+# LOCALIZATION NOTE (inspector.sidebar.changesViewTitle):
+# Title of the Changes sidebar tab shown in the Inspector panel. The Changes panel shows
+# style changes made using DevTools.
+inspector.sidebar.changesViewTitle=Изменения
+
+# LOCALIZATION NOTE (inspector.sidebar.ruleViewTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying the list of CSS rules used
+# in the page.
+inspector.sidebar.ruleViewTitle=Правила
+
+# LOCALIZATION NOTE (inspector.sidebar.computedViewTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying the list of computed CSS values
+# used in the page.
+inspector.sidebar.computedViewTitle=Вычислено
+
+# LOCALIZATION NOTE (inspector.sidebar.layoutViewTitle2):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying layout information defined in the page.
+inspector.sidebar.layoutViewTitle2=Разметка
+
+# LOCALIZATION NOTE (inspector.sidebar.animationInspectorTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying animations defined in the page.
+inspector.sidebar.animationInspectorTitle=Анимации
+
+# LOCALIZATION NOTE (inspector.sidebar.compatibilityViewTitle):
+# This is the title shown in a tab in the side panel of the Inspector panel
+# that corresponds to the tool displaying web compatibility information about the page.
+inspector.sidebar.compatibilityViewTitle=Совместимость
+
+# LOCALIZATION NOTE (inspector.eyedropper.label): A string displayed as the tooltip of
+# a button in the inspector which toggles the Eyedropper tool
+inspector.eyedropper.label=Захватить цвет со страницы
+
+# LOCALIZATION NOTE (inspector.breadcrumbs.label): A string visible only to a screen reader and
+# is used to label (using aria-label attribute) a container for inspector breadcrumbs
+inspector.breadcrumbs.label=Навигационная цепочка
+
+# LOCALIZATION NOTE (inspector.browserStyles.label): This is the label for the checkbox
+# that specifies whether the styles that are not from the user's stylesheet should be
+# displayed or not.
+inspector.browserStyles.label=Стили браузера
+
+# LOCALIZATION NOTE (inspector.filterStyles.label): This is the label for the search box
+inspector.filterStyles.label=Поиск стилей
+
+# LOCALIZATION NOTE (inspector.filterStyles.placeholder): This is the placeholder that
+# goes in the search box when no search term has been entered.
+inspector.filterStyles.placeholder=Поиск стилей
+
+# LOCALIZATION NOTE (inspector.filterStylesClearButton.title): This is the title
+# for the search box clear button displayed when the input is not empty.
+inspector.filterStylesClearButton.title = Очистить данные фильтра
+
+# LOCALIZATION NOTE (inspector.addRule.tooltip): This is the tooltip shown when
+# hovering the `Add new rule` button in the rules view toolbar. This should
+# match ruleView.contextmenu.addNewRule in styleinspector.properties
+inspector.addRule.tooltip=Добавить новое правило
+
+# LOCALIZATION NOTE (inspector.togglePseudo.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Pseudo Class Panel` button in the
+# rule view toolbar.
+inspector.togglePseudo.tooltip=Показать/скрыть панель псевдоклассов
+
+# LOCALIZATION NOTE (inspector.classPanel.toggleClass.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Class Panel` button in the
+# rule view toolbar.
+inspector.classPanel.toggleClass.tooltip=Показать/скрыть классы
+
+# LOCALIZATION NOTE (inspector.classPanel.newClass.placeholder): This is the placeholder
+# shown inside the text field used to add a new class in the rule-view.
+inspector.classPanel.newClass.placeholder=Добавить новый класс
+
+# LOCALIZATION NOTE (inspector.classPanel.noClasses): This is the text displayed in the
+# class panel when the current element has no classes applied.
+inspector.classPanel.noClasses=На этом элементе нет классов
+
+# LOCALIZATION NOTE (inspector.noProperties): In the case where there are no CSS
+# properties to display e.g. due to search criteria this message is
+# displayed.
+inspector.noProperties=CSS-свойства не найдены.
+
+# LOCALIZATION NOTE (inspector.printSimulation.tooltip):
+# This is the tooltip of the print simulation button in the Rule View toolbar
+# that toggles print simulation.
+inspector.printSimulation.tooltip = Включить/отключить симуляцию режима печати для этой страницы
+
+# LOCALIZATION NOTE (inspector.colorSchemeSimulationLight.tooltip):
+# This is the tooltip of the light color scheme simulation button in the Rule View
+# toolbar that toggles light color scheme simulation.
+inspector.colorSchemeSimulationLight.tooltip=Переключить имитацию темы на светлую для этой страницы
+
+# LOCALIZATION NOTE (inspector.colorSchemeSimulationDark.tooltip):
+# This is the tooltip of the dark color scheme simulation button in the Rule View
+# toolbar that toggles dark color scheme simulation.
+inspector.colorSchemeSimulationDark.tooltip=Переключить имитацию темы на тёмную для этой страницы
+
+# LOCALIZATION NOTE (markupView.scrollableBadge.label): This is the text displayed inside a
+# badge, in the inspector, next to nodes that are scrollable in the page.
+markupView.scrollableBadge.label=прокручиваемый
+
+# LOCALIZATION NOTE (markupView.scrollableBadge.tooltip): This is the tooltip that is displayed
+# when hovering over badges next to scrollable elements in the inspector.
+markupView.scrollableBadge.tooltip=У этого элемента есть прокручиваемое содержимое.
+
+# LOCALIZATION NOTE (markupView.scrollableBadge.interactive.tooltip): This is the tooltip that is displayed
+# when hovering over interactive badges next to scrollable elements in the inspector.
+markupView.scrollableBadge.interactive.tooltip=У этого элемента есть прокручиваемое содержимое. Щёлкните, чтобы показать элементы, вызывающие прокручивание.
+
+# LOCALIZATION NOTE (markupView.overflowBadge.label): This is the text displayed inside a
+# badge, in the inspector, next to nodes that are causing overflow in other elements.
+markupView.overflowBadge.label=прокручивание
+
+# LOCALIZATION NOTE (markupView.overflowBadge.tooltip): This is the tooltip that is displayed
+# when hovering over badges next to overflow causing elements in the inspector.
+markupView.overflowBadge.tooltip=Этот элемент вызывает прокручивание элемента.
+
+# LOCALIZATION NOTE (rulePreviewTooltip.noAssociatedRule): This is the text displayed inside
+# the RulePreviewTooltip when a rule cannot be found for a CSS property declaration.
+rulePreviewTooltip.noAssociatedRule=Правило не установлено
+
+# LOCALIZATION NOTE (colorPickerTooltip.contrastAgainstBgTitle): A title text for the
+# contrast ratio value description that labels the background the color contrast ratio is calculated
+# against, used together with the actual background color. %S in the content will be replaced by a
+# span (containing bg color swatch) and textNode (containing bg color hex string) at run time
+colorPickerTooltip.contrastAgainstBgTitle=Вычислено относительно фона: %S
+
+# LOCALIZATION NOTE (colorPickerTooltip.spectrumDraggerTitle): A title text for the
+# spectrum dragger panel in the color picker tooltip.
+colorPickerTooltip.spectrumDraggerTitle=Спектр
+
+# LOCALIZATION NOTE (colorPickerTooltip.eyedropperTitle): A title text for the
+# eyedropper in the color picker tooltip.
+colorPickerTooltip.eyedropperTitle=Выберите цвет на странице
+
+# LOCALIZATION NOTE (colorPickerTooltip.colorNameTitle): A title text for the
+# closest color name shown in the color picker tooltip, used together with the actual color.
+# %S in the content will be replaced by the color name the current color is closest to.
+colorPickerTooltip.colorNameTitle=Ближайший к: %S
+
+# LOCALIZATION NOTE (colorPickerTooltip.hueSliderTitle): A title text for the
+# hue slider in the color picker tooltip.
+colorPickerTooltip.hueSliderTitle=Оттенок
+
+# LOCALIZATION NOTE (colorPickerTooltip.alphaSliderTitle): A title text for the
+# alpha slider in the color picker tooltip.
+colorPickerTooltip.alphaSliderTitle=Прозрачность
+
+# LOCALIZATION NOTE (colorPickerTooltip.contrast.large.title): A title text for the color
+# contrast ratio description in the color picker tooltip, used together with the specification
+# that the color contrast criteria used is for large text. %S in the content will be replaced by a
+# large text indicator span at run time.
+colorPickerTooltip.contrast.large.title=Контраст %S:
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/jsonview.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/jsonview.properties
new file mode 100644
index 0000000000..db90392836
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/jsonview.properties
@@ -0,0 +1,45 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used in the JSON View tool
+# that is used to inspect application/json document types loaded
+# in the browser.
+
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (jsonViewer.tab.JSON, jsonViewer.tab.RawData,
+# jsonViewer.tab.Headers): Label for a panel tab.
+jsonViewer.tab.JSON=JSON
+jsonViewer.tab.RawData=Необработанные данные
+jsonViewer.tab.Headers=Заголовки
+
+# LOCALIZATION NOTE (jsonViewer.responseHeaders, jsonViewer.requestHeaders):
+# Label for header groups within the 'Headers' panel.
+jsonViewer.responseHeaders=Заголовки ответа
+jsonViewer.requestHeaders=Заголовки запроса
+
+# LOCALIZATION NOTE (jsonViewer.Save): Label for save command
+jsonViewer.Save=Сохранить
+
+# LOCALIZATION NOTE (jsonViewer.Copy): Label for clipboard copy command
+jsonViewer.Copy=Копировать
+
+# LOCALIZATION NOTE (jsonViewer.ExpandAll): Label for expanding all nodes
+jsonViewer.ExpandAll=Развернуть все
+jsonViewer.ExpandAllSlow=Развернуть все (медленно)
+
+# LOCALIZATION NOTE (jsonViewer.CollapseAll): Label for collapsing all nodes
+jsonViewer.CollapseAll=Свернуть все
+
+# LOCALIZATION NOTE (jsonViewer.PrettyPrint): Label for JSON
+# pretty print action button.
+jsonViewer.PrettyPrint=«Красивая» печать
+
+# LOCALIZATION NOTE (jsonViewer.filterJSON): Label used in search box
+# at the top right cornder of the JSON Viewer.
+jsonViewer.filterJSON=Поиск в JSON
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/layout.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/layout.properties
new file mode 100644
index 0000000000..8d79d8268d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/layout.properties
@@ -0,0 +1,138 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE This file contains the Layout Inspector strings.
+# The Layout Inspector is a panel accessible in the Inspector sidebar.
+
+# LOCALIZATION NOTE (flexbox.header): The accordion header for the Flexbox panel when
+# no flex container or item is selected.
+flexbox.header=Flexbox
+
+# LOCALIZATION NOTE (flexbox.backButtonLabel): The spoken label for the button
+# that returns from the display of a flex item to the flex item list.
+# This label is spoken by screen readers, not displayed on screen.
+flexbox.backButtonLabel=Вернуться в Flex-блок
+
+# LOCALIZATION (flexbox.flexContainer): The accordion header for the Flexbox panel
+# when a flex container is selected.
+flexbox.flexContainer=Flex-блок
+
+# LOCALIZATION NOTE) (flexbox.flexItemOf): The accordion header for the Flexbox panel
+# when a flex item is selected. %s represents the flex container selector.
+flexbox.flexItemOf=%S Flex-элемент
+
+# LOCALIZATION NOTE (flexbox.noFlexboxeOnThisPage): In the case where there are no CSS
+# flex containers to display.
+flexbox.noFlexboxeOnThisPage=Выберите Flex-контейнер или элемент для продолжения.
+
+# LOCALIZATION NOTE (flexbox.flexItems): Header label displayed for the flex item list.
+flexbox.flexItems=Flex-элементы
+
+# LOCALIZATION NOTE (flexbox.noFlexItems): Label shown in the flex items list section if
+# there are no flex items for the flex container to display.
+flexbox.noFlexItems=Нет flex-элементов
+
+# LOCALIZATION NOTE (flexbox.itemSizing.baseSizeSectionHeader): Header label displayed
+# at the start of the flex item sizing Base Size section.
+flexbox.itemSizing.baseSizeSectionHeader=Базовый размер
+
+# LOCALIZATION NOTE (flexbox.itemSizing.flexibilitySectionHeader): Header label displayed
+# at the start of the flex item sizing Flexibility section.
+flexbox.itemSizing.flexibilitySectionHeader=Гибкость
+
+# LOCALIZATION NOTE (flexbox.itemSizing.minSizeSectionHeader): Header label displayed
+# at the start of the flex item sizing Minimum Size section.
+flexbox.itemSizing.minSizeSectionHeader=Минимальный размер
+
+# LOCALIZATION NOTE (flexbox.itemSizing.maxSizeSectionHeader): Header label displayed at
+# the start of the flex item sizing Maximum Size section.
+flexbox.itemSizing.maxSizeSectionHeader=Максимальный размер
+
+# LOCALIZATION NOTE (flexbox.itemSizing.finalSizeSectionHeader): Header label displayed at
+# the start of the flex item sizing Final Size section.
+flexbox.itemSizing.finalSizeSectionHeader=Конечный размер
+
+# LOCALIZATION NOTE (flexbox.itemSizing.itemContentSize): Label shown in the flex item
+# sizing panel. It tells users that a given item’s base size was calculated from its
+# content size when unconstrained.
+flexbox.itemSizing.itemContentSize=Размер содержимого
+
+# LOCALIZATION NOTE (flexbox.itemSizing.clampedToMax): Label shown in the flexbox item
+# sizing panel. It tells users that a given item attempted to grow but ended up being
+# clamped to a smaller max size.
+# (Note that clamp is a common word in flexbox terminology. It refers to constraining an
+# item's size to some defined min/max-width/height set on the element, even though there
+# might have been room for it to grow, or reason for it to shrink more).
+flexbox.itemSizing.clampedToMax=Размер этого элемента был ограничен максимальным.
+
+# LOCALIZATION NOTE (flexbox.itemSizing.clampedToMin): Label shown in the flexbox item
+# sizing panel. It tells users that a given item attempted to grow but ended up being
+# clamped to a larger min size.
+# (Note that clamp is a common word in flexbox terminology. It refers to constraining an
+# item's size to some defined min/max-width/height set on the element, even though there
+# might have been room for it to grow, or reason for it to shrink more).
+flexbox.itemSizing.clampedToMin=Размер этого элемента был ограничен минимальным.
+
+# LOCALIZATION NOTE (flexbox.itemSizing.setToGrow): Label shown in the flex item sizing
+# panel. It tells users that a given item was set to grow.
+flexbox.itemSizing.setToGrow=Элементу было разрешено увеличиваться.
+
+# LOCALIZATION NOTE (flexbox.itemSizing.setToShrink): Label shown in the flexbox item
+# sizing panel. It tells users that a given item was set to shrink.
+flexbox.itemSizing.setToShrink=Элементу было разрешено уменьшаться.
+
+# LOCALIZATION NOTE (flexbox.itemSizing.notSetToGrow): Label shown in the
+# flexbox item sizing panel. It tells users that a given item was not set to grow, even
+# though there might have been space on the flex line for it to grow.
+flexbox.itemSizing.notSetToGrow=Элементу не было разрешено увеличиваться.
+
+# LOCALIZATION NOTE (flexbox.itemSizing.notSetToShrink): Label shown in the
+# flexbox item sizing panel. It tells users that a given item did not shrink even though
+# there might not have been enough space on the flex line for all items to fit.
+flexbox.itemSizing.notSetToShrink=Элементу не было разрешено уменьшаться.
+
+# LOCALIZATION NOTE (flexbox.togglesFlexboxHighlighter2): The tooltip text for the Flexbox
+# toggle button.
+flexbox.togglesFlexboxHighlighter2=Включить/выключить подсветку Flexbox
+
+# LOCALIZATION NOTE (layout.overlayCheckbox.label): Label used for checkboxes in the grid
+# sections of the layout panel that control the display of the grid highlighter.
+layout.toggleGridHighlighter=Отображать/отключить сетку
+
+# LOCALIZATION NOTE (layout.cannotShowGridOutline, layout.cannotSHowGridOutline.title):
+# In the case where the grid outline cannot be effectively displayed.
+layout.cannotShowGridOutline=Не удаётся показать структуру для этой сетки
+layout.cannotShowGridOutline.title=Выбранную структуру сетки невозможно эффективно поместить внутрь панели её разметки, чтобы она была удобной.
+
+# LOCALIZATION NOTE (layout.displayAreaNames): Label of the display area names setting
+# option in the CSS Grid panel.
+layout.displayAreaNames=Отображать имена областей
+
+# LOCALIZATION NOTE (layout.displayLineNumbers): Label of the display line numbers
+# setting option in the CSS Grid panel.
+layout.displayLineNumbers=Отображать номера строк
+
+# LOCALIZATION NOTE (layout.extendLinesInfinitely): Label of the extend lines
+# infinitely setting option in the CSS Grid panel.
+layout.extendLinesInfinitely=Бесконечно продлевать линии
+
+# LOCALIZATION NOTE (layout.header): The accordion header for the CSS Grid panel.
+layout.header=Сетка
+
+# LOCALIZATION NOTE (layout.gridDisplaySettings): The header for the grid display
+# settings container in the CSS Grid panel.
+layout.gridDisplaySettings=Настройки отображения сетки
+
+# LOCALIZATION NOTE (layout.noGridsOnThisPage): In the case where there are no CSS grid
+# containers to display.
+layout.noGridsOnThisPage=CSS-сетка на этой странице не используется
+
+# LOCALIZATION NOTE (layout.overlayGrid): Alternate header for the list of grid container
+# elements if only one item can be selected.
+layout.overlayGrid=Накладывать сетку
+
+# LOCALIZATION NOTE (layout.colorSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a color swatch in the layout panel (for flexbox/grid highlighter color).
+# %s represents the current selected color in hex format (e.g. #FF0000).
+layout.colorSwatch.tooltip=Образец цвета: %S. Нажмите, чтобы открыть палитру цветов
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/memory.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/memory.properties
new file mode 100644
index 0000000000..31a7ddfdb7
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/memory.properties
@@ -0,0 +1,434 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Memory Tools
+# which is available from the Web Developer sub-menu -> 'Memory'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the Memory Tools
+# which is available from the Browser Tools sub-menu -> 'Memory'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (snapshot.io.save): The label for the link that saves a
+# snapshot to disk.
+snapshot.io.save=Сохранить
+
+# LOCALIZATION NOTE (snapshot.io.delete): The label for the link that deletes
+# a snapshot
+snapshot.io.delete=Удалить
+
+# LOCALIZATION NOTE (snapshot.io.save.window): The title for the window
+# displayed when saving a snapshot to disk.
+snapshot.io.save.window=Сохранить снимок
+
+# LOCALIZATION NOTE (snapshot.io.import.window): The title for the window
+# displayed when importing a snapshot form disk.
+snapshot.io.import.window=Импорт снимка
+
+# LOCALIZATION NOTE (snapshot.io.filter): The title for the filter used to
+# filter file types (*.fxsnapshot)
+snapshot.io.filter=Снимки Firefox
+
+# LOCALIZATION NOTE (aggregate.mb): The label annotating the number of bytes (in
+# megabytes) in a snapshot. %S represents the value, rounded to 2 decimal
+# points.
+aggregate.mb=%S МБ
+
+# LOCALIZATION NOTE (snapshot-title.loading): The title for a snapshot before
+# it has a creation time to display.
+snapshot-title.loading=Обрабатывается…
+
+# LOCALIZATION NOTE (checkbox.recordAllocationStacks): The label describing the
+# boolean checkbox whether or not to record call stacks.
+checkbox.recordAllocationStacks=Записывать стеки вызовов
+
+# LOCALIZATION NOTE (checkbox.recordAllocationStacks.tooltip): The tooltip for
+# the label describing the boolean checkbox whether or not to record call
+# stacks.
+checkbox.recordAllocationStacks.tooltip=Переключение записи стеков вызовов, когда объект был размещён. Последующие снимки смогут группировать и помечать объекты по стекам вызовов, но только с теми объектами, которые были созданы после переключения этой настройки. Запись стеков вызовов приводит к потере производительности.
+
+# LOCALIZATION NOTE (toolbar.displayBy): The label describing the select menu
+# options of the display options.
+toolbar.displayBy=Группировать по:
+
+# LOCALIZATION NOTE (toolbar.displayBy.tooltip): The tooltip for the label
+# describing the select menu options of the display options.
+toolbar.displayBy.tooltip=Изменение способа группировки объектов
+
+# LOCALIZATION NOTE (toolbar.pop-view): The text in the button to go back to the
+# previous view.
+toolbar.pop-view=←
+
+# LOCALIZATION NOTE (toolbar.pop-view.label): The text for the label for the
+# button to go back to the previous view.
+toolbar.pop-view.label=Вернуться к агрегатам
+
+# LOCALIZATION NOTE (toolbar.viewing-individuals): The text letting the user
+# know that they are viewing individual nodes from a census group.
+toolbar.viewing-individuals=⁂ Просмотр индивидуалов в группе
+
+# LOCALIZATION NOTE (censusDisplays.coarseType.tooltip): The tooltip for the
+# "coarse type" display option.
+censusDisplays.coarseType.tooltip=Группировать элементы по их типу
+
+# LOCALIZATION NOTE (censusDisplays.allocationStack.tooltip): The tooltip for
+# the "call stack" display option.
+censusDisplays.allocationStack.tooltip=Группировать элементы по стеку JavaScript, записывая при выделении памяти объекту
+
+# LOCALIZATION NOTE (censusDisplays.invertedAllocationStack.tooltip): The
+# tooltip for the "inverted call stack" display option.
+censusDisplays.invertedAllocationStack.tooltip=Группировать элементы по инвертированному стеку вызовов JavaScript, записывая при создании объектов
+
+# LOCALIZATION NOTE (toolbar.labelBy): The label describing the select menu
+# options of the label options.
+toolbar.labelBy=Помечать по:
+
+# LOCALIZATION NOTE (toolbar.labelBy.tooltip): The tooltip for the label describing the
+# select menu options of the label options.
+toolbar.labelBy.tooltip=Изменение способа пометки объектов
+
+# LOCALIZATION NOTE (dominatorTreeDisplays.coarseType.tooltip): The tooltip for
+# the "coarse type" dominator tree display option.
+dominatorTreeDisplays.coarseType.tooltip=Помечать объекты по общим категориям, в которые они подходят
+
+# LOCALIZATION NOTE (dominatorTreeDisplays.allocationStack.tooltip): The
+# tooltip for the "call stack" dominator tree display option.
+dominatorTreeDisplays.allocationStack.tooltip=Помечать объекты по стеку JavaScript, записывая при выделении им памяти
+
+# LOCALIZATION NOTE (treeMapDisplays.coarseType.tooltip): The tooltip for
+# the "coarse type" tree map display option.
+treeMapDisplays.coarseType.tooltip=Помечать объекты по общим категориям, в которые они подходят
+
+# LOCALIZATION NOTE (toolbar.view): The label for the view selector in the
+# toolbar.
+toolbar.view=Просмотр:
+
+# LOCALIZATION NOTE (toolbar.view.tooltip): The tooltip for the label for the
+# view selector in the toolbar.
+toolbar.view.tooltip=Изменить вид снимка
+
+# LOCALIZATION NOTE (toolbar.view.census): The label for the census view option
+# in the toolbar.
+toolbar.view.census=Агрегировать
+
+# LOCALIZATION NOTE (toolbar.view.census.tooltip): The tooltip for the label for
+# the census view option in the toolbar.
+toolbar.view.census.tooltip=Просмотреть сводку содержимого снимка путем агрегирования объектов в группы
+
+# LOCALIZATION NOTE (toolbar.view.dominators): The label for the dominators view
+# option in the toolbar.
+toolbar.view.dominators=Доминаторы
+
+# LOCALIZATION NOTE (toolbar.view.dominators.tooltip): The tooltip for the label
+# for the dominators view option in the toolbar.
+toolbar.view.dominators.tooltip=Просмотр дерева доминатора и выявление крупнейших структур в снимке
+
+# LOCALIZATION NOTE (toolbar.view.treemap): The label for the tree map option
+# in the toolbar.
+toolbar.view.treemap=Карта дерева
+
+# LOCALIZATION NOTE (toolbar.view.treemap.tooltip): The tooltip for the label for
+# the tree map view option in the toolbar.
+toolbar.view.treemap.tooltip=Визуализировать использование памяти: более крупные блоки указывают на больший процент использования памяти
+
+# LOCALIZATION NOTE (take-snapshot): The label describing the button that
+# initiates taking a snapshot, either as the main label, or a tooltip.
+take-snapshot=Сделать снимок
+
+# LOCALIZATION NOTE (import-snapshot): The label describing the button that
+# initiates importing a snapshot.
+import-snapshot=Импорт…
+
+# LOCALIZATION NOTE (clear-snapshots.tooltip): The tooltip for the button that
+# deletes existing snapshot.
+clear-snapshots.tooltip=Удалить все снимки
+
+# LOCALIZATION NOTE (diff-snapshots.tooltip): The tooltip for the button that
+# initiates selecting two snapshots to diff with each other.
+diff-snapshots.tooltip=Сравнить снимки
+
+# LOCALIZATION NOTE (filter.placeholder): The placeholder text used for the
+# memory tool's filter search box.
+filter.placeholder=Фильтр
+
+# LOCALIZATION NOTE (filter.tooltip): The tooltip text used for the memory
+# tool's filter search box.
+filter.tooltip=Фильтр содержимого снимка
+
+# LOCALIZATION NOTE (tree-item.view-individuals.tooltip): The tooltip for the
+# button to view individuals in this group.
+tree-item.view-individuals.tooltip=Просмотр отдельных узлов в этой группе и их удерживающих путей
+
+# LOCALIZATION NOTE (tree-item.load-more): The label for the links to fetch the
+# lazily loaded sub trees in the dominator tree view.
+tree-item.load-more=Загрузить ещё…
+
+# LOCALIZATION NOTE (tree-item.rootlist): The label for the root of the
+# dominator tree.
+tree-item.rootlist=Корни GC
+
+# LOCALIZATION NOTE (tree-item.nostack): The label describing the row in the heap tree
+# that represents a row broken down by call stack when no stack was available.
+tree-item.nostack=(стек не доступен)
+
+# LOCALIZATION NOTE (tree-item.nofilename): The label describing the row in the
+# heap tree that represents a row broken down by filename when no filename was
+# available.
+tree-item.nofilename=(имя файла не доступно)
+
+# LOCALIZATION NOTE (tree-item.root): The label describing the row in the heap tree
+# that represents the root of the tree when inverted.
+tree-item.root=(корень)
+
+# LOCALIZATION NOTE (tree-item.percent2): A percent of bytes or count displayed in the tree view.
+# there are two "%" after %S to escape and display "%"
+tree-item.percent2=%S%%
+
+# LOCALIZATION NOTE (diffing.baseline): The name of the baseline snapshot in a
+# diffing comparison.
+diffing.baseline=Исходный
+
+# LOCALIZATION NOTE (diffing.comparison): The name of the snapshot being
+# compared to the baseline in a diffing comparison.
+diffing.comparison=Сравнение
+
+# LOCALIZATION NOTE (diffing.prompt.selectBaseline): The prompt to select the
+# first snapshot when doing a diffing comparison.
+diffing.prompt.selectBaseline=Выберите исходный снимок
+
+# LOCALIZATION NOTE (diffing.prompt.selectComparison): The prompt to select the
+# second snapshot when doing a diffing comparison.
+diffing.prompt.selectComparison=Выберите снимок для сравнения с исходным
+
+# LOCALIZATION NOTE (diffing.state.error): The label describing the diffing
+# state ERROR, used in the snapshot list when an error occurs while diffing two
+# snapshots.
+diffing.state.error=Ошибка
+
+# LOCALIZATION NOTE (diffing.state.error.full): The text describing the diffing
+# state ERROR, used in the main view when an error occurs while diffing two
+# snapshots.
+diffing.state.error.full=При сравнении снимков произошла ошибка.
+
+# LOCALIZATION NOTE (diffing.state.taking-diff): The label describing the diffin
+# state TAKING_DIFF, used in the snapshots list when computing the difference
+# between two snapshots.
+diffing.state.taking-diff=Вычисление разницы…
+
+# LOCALIZATION NOTE (diffing.state.taking-diff.full): The label describing the
+# diffing state TAKING_DIFF, used in the main view when computing the difference
+# between two snapshots.
+diffing.state.taking-diff.full=Вычисление разницы…
+
+# LOCALIZATION NOTE (diffing.state.selecting): The label describing the diffing
+# state SELECTING.
+diffing.state.selecting=Выберите два снимка для сравнения
+
+# LOCALIZATION NOTE (diffing.state.selecting.full): The label describing the
+# diffing state SELECTING, used in the main view when selecting snapshots to
+# diff.
+diffing.state.selecting.full=Выберите два снимка для сравнения
+
+# LOCALIZATION NOTE (dominatorTree.state.computing): The label describing the
+# dominator tree state COMPUTING.
+dominatorTree.state.computing=Генерация отчета по доминаторам…
+
+# LOCALIZATION NOTE (dominatorTree.state.computing.full): The label describing the
+# dominator tree state COMPUTING, used in the dominator tree view.
+dominatorTree.state.computing.full=Генерация отчета по доминаторам…
+
+# LOCALIZATION NOTE (dominatorTree.state.fetching): The label describing the
+# dominator tree state FETCHING.
+dominatorTree.state.fetching=Вычисление объема памяти…
+
+# LOCALIZATION NOTE (dominatorTree.state.fetching.full): The label describing the
+# dominator tree state FETCHING, used in the dominator tree view.
+dominatorTree.state.fetching.full=Вычисление общих объемов памяти доминатора…
+
+# LOCALIZATION NOTE (dominatorTree.state.incrementalFetching): The label
+# describing the dominator tree state INCREMENTAL_FETCHING.
+dominatorTree.state.incrementalFetching=Получение…
+
+# LOCALIZATION NOTE (dominatorTree.state.incrementalFetching.full): The label describing the
+# dominator tree state INCREMENTAL_FETCHING, used in the dominator tree view.
+dominatorTree.state.incrementalFetching.full=Получаю ещё…
+
+# LOCALIZATION NOTE (dominatorTree.state.error): The label describing the
+# dominator tree state ERROR.
+dominatorTree.state.error=Ошибка
+
+# LOCALIZATION NOTE (dominatorTree.state.error.full): The label describing the
+# dominator tree state ERROR, used in the dominator tree view.
+dominatorTree.state.error.full=При обработки дерева доминаторов произошла ошибка
+
+# LOCALIZATION NOTE (snapshot.state.saving.full): The label describing the
+# snapshot state SAVING, used in the main heap view.
+snapshot.state.saving.full=Сохранение снимка…
+
+# LOCALIZATION NOTE (snapshot.state.reading.full): The label describing the
+# snapshot state READING, and SAVED, due to these states being combined
+# visually, used in the main heap view.
+snapshot.state.reading.full=Чтение снимка…
+
+# LOCALIZATION NOTE (snapshot.state.saving-census.full): The label describing
+# the snapshot state SAVING, used in the main heap view.
+snapshot.state.saving-census.full=Генерация отчёта по агрегированию…
+
+# LOCALIZATION NOTE (snapshot.state.saving-tree-map.full): The label describing
+# the snapshot state SAVING, used in the main heap view.
+snapshot.state.saving-tree-map.full=Сохранение карты дерева…
+
+# LOCALIZATION NOTE (snapshot.state.error.full): The label describing the
+# snapshot state ERROR, used in the main heap view.
+snapshot.state.error.full=При обработке этого снимка произошла ошибка.
+
+# LOCALIZATION NOTE (individuals.state.error): The short message displayed when
+# there is an error fetching individuals from a group.
+individuals.state.error=Ошибка
+
+# LOCALIZATION NOTE (individuals.state.error.full): The longer message displayed
+# when there is an error fetching individuals from a group.
+individuals.state.error.full=При получении индивидуалов в группе произошла ошибка
+
+# LOCALIZATION NOTE (individuals.state.fetching): The short message displayed
+# while fetching individuals.
+individuals.state.fetching=Получение…
+
+# LOCALIZATION NOTE (individuals.state.fetching.full): The longer message
+# displayed while fetching individuals.
+individuals.state.fetching.full=Получение индивидуалов в группе…
+
+# LOCALIZATION NOTE (individuals.field.node): The header label for an individual
+# node.
+individuals.field.node=Узел
+
+# LOCALIZATION NOTE (individuals.field.node.tooltip): The tooltip for the header
+# label for an individual node.
+individuals.field.node.tooltip=Отдельный узел в снимке
+
+# LOCALIZATION NOTE (snapshot.state.saving): The label describing the snapshot
+# state SAVING, used in the snapshot list view
+snapshot.state.saving=Сохранение снимка…
+
+# LOCALIZATION NOTE (snapshot.state.importing): The label describing the
+# snapshot state IMPORTING, used in the snapshot list view
+snapshot.state.importing=Импорт снимка…
+
+# LOCALIZATION NOTE (snapshot.state.reading): The label describing the snapshot
+# state READING, and SAVED, due to these states being combined visually, used in
+# the snapshot list view.
+snapshot.state.reading=Чтение снимка…
+
+# LOCALIZATION NOTE (snapshot.state.saving-census): The label describing the
+# snapshot state SAVING, used in snapshot list view.
+snapshot.state.saving-census=Сохранение отчёта…
+
+# LOCALIZATION NOTE (snapshot.state.saving-census): The label describing the
+# snapshot state SAVING, used in snapshot list view.
+snapshot.state.saving-tree-map=Сохранение карты дерева…
+
+# LOCALIZATION NOTE (snapshot.state.error): The label describing the snapshot
+# state ERROR, used in the snapshot list view.
+snapshot.state.error=Ошибка
+
+# LOCALIZATION NOTE (heapview.no-difference): Message displayed when there is no
+# difference between two snapshots.
+heapview.no-difference=Нет разницы между исходным и сравниваемым.
+
+# LOCALIZATION NOTE (heapview.none-match): Message displayed when there are no
+# matches when filtering.
+heapview.none-match=Нет совпадений.
+
+# LOCALIZATION NOTE (heapview.none-match): Message displayed when there report
+# is empty.
+heapview.empty=Пусто.
+
+# LOCALIZATION NOTE (heapview.noAllocationStacks): The message displayed to
+# users when selecting a display by "call stack" but no call stacks
+# were recorded in the heap snapshot.
+heapview.noAllocationStacks=Стеки вызовов не найдены. Запишите стеки вызовов перед созданием снимка.
+
+# LOCALIZATION NOTE (heapview.field.retainedSize): The name of the column in the
+# dominator tree view for retained byte sizes.
+heapview.field.retainedSize=Общий объём памяти (байт)
+
+# LOCALIZATION NOTE (heapview.field.retainedSize.tooltip): The tooltip for the
+# column header in the dominator tree view for retained byte sizes.
+heapview.field.retainedSize.tooltip=Сумма объема памяти самого объекта, а также объемов памяти всех других поддерживаемых им объектов
+
+# LOCALIZATION NOTE (heapview.field.shallowSize): The name of the column in the
+# dominator tree view for shallow byte sizes.
+heapview.field.shallowSize=Чистый объём памяти (байт)
+
+# LOCALIZATION NOTE (heapview.field.shallowSize.tooltip): The tooltip for the
+# column header in the dominator tree view for shallow byte sizes.
+heapview.field.shallowSize.tooltip=Объём памяти занимаемый самим объектом
+
+# LOCALIZATION NOTE (dominatortree.field.label): The name of the column in the
+# dominator tree for an object's label.
+dominatortree.field.label=Доминатор
+
+# LOCALIZATION NOTE (dominatortree.field.label.tooltip): The tooltip for the column
+# header in the dominator tree view for an object's label.
+dominatortree.field.label.tooltip=Метка для объекта в памяти
+
+# LOCALIZATION NOTE (heapview.field.bytes): The name of the column in the heap
+# view for bytes.
+heapview.field.bytes=Байт
+
+# LOCALIZATION NOTE (heapview.field.bytes.tooltip): The tooltip for the column
+# header in the heap view for bytes.
+heapview.field.bytes.tooltip=Число байтов, занятых этой группой, за исключением подгрупп
+
+# LOCALIZATION NOTE (heapview.field.count): The name of the column in the heap
+# view for count.
+heapview.field.count=Число
+
+# LOCALIZATION NOTE (heapview.field.count.tooltip): The tooltip for the column
+# header in the heap view for count.
+heapview.field.count.tooltip=Число достижимых объектов в этой группе, за исключением подгрупп
+
+# LOCALIZATION NOTE (heapview.field.totalbytes): The name of the column in the
+# heap view for total bytes.
+heapview.field.totalbytes=Всего байт
+
+# LOCALIZATION NOTE (heapview.field.totalbytes.tooltip): The tooltip for the
+# column header in the heap view for total bytes.
+heapview.field.totalbytes.tooltip=Число байтов, занятых этой группой, включая подгруппы
+
+# LOCALIZATION NOTE (heapview.field.totalcount): The name of the column in the
+# heap view for total count.
+heapview.field.totalcount=Общее число
+
+# LOCALIZATION NOTE (heapview.field.totalcount.tooltip): The tooltip for the
+# column header in the heap view for total count.
+heapview.field.totalcount.tooltip=Число достижимых объектов в этой группе, включая подгруппы
+
+# LOCALIZATION NOTE (heapview.field.name): The name of the column in the heap
+# view for name.
+heapview.field.name=Группа
+
+# LOCALIZATION NOTE (heapview.field.name.tooltip): The tooltip for the column
+# header in the heap view for name.
+heapview.field.name.tooltip=Имя этой группы
+
+# LOCALIZATION NOTE (shortest-paths.header): The header label for the shortest
+# paths pane.
+shortest-paths.header=Кратчайшие Пути (от Корней Сборщика Мусора)
+
+# LOCALIZATION NOTE (shortest-paths.select-node): The message displayed in the
+# shortest paths pane when a node is not yet selected.
+shortest-paths.select-node=Выберите элемент, чтобы увидеть его кратчайшие пути
+
+# LOCALIZATION NOTE (tree-map.node-count): The label for the count value of a
+# node in the tree map
+tree-map.node-count=число
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/menus.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/menus.properties
new file mode 100644
index 0000000000..f23134a1e2
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/menus.properties
@@ -0,0 +1,29 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (devtoolsRemoteDebugging.label): This is the label for the menu item
+# in Tools > Web Developer. Clicking on this menu item will open about:debugging which
+# acts as a hub for debugging remote devices.
+devtoolsRemoteDebugging.label = Удалённая отладка
+devtoolsRemoteDebugging.accesskey = я
+
+browserConsoleCmd.label = Консоль браузера
+browserConsoleCmd.accesskey = н
+
+responsiveDesignMode.label = Адаптивный дизайн
+responsiveDesignMode.accesskey = п
+
+eyedropper.label = Пипетка
+eyedropper.accesskey = и
+
+# LOCALIZATION NOTE (browserToolboxMenu.label): This is the label for the
+# application menu item that opens the browser toolbox UI in the Tools menu.
+browserToolboxMenu.label = Инструменты браузера
+browserToolboxMenu.accesskey = ы
+
+webDeveloperToolsMenu.label = Инструменты веб-разработчика
+webDeveloperToolsMenu.accesskey = в
+
+extensionsForDevelopersCmd.label = Расширения для разработчиков
+extensionsForDevelopersCmd.accesskey = ш
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/netmonitor.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/netmonitor.properties
new file mode 100644
index 0000000000..eadf4c7e95
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/netmonitor.properties
@@ -0,0 +1,1699 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Network Monitor
+# which is available from the Browser Tools sub-menu -> 'Network Monitor'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (netmonitor.security.state.secure)
+# This string is used as an tooltip for request that was performed over secure
+# channel i.e. the connection was encrypted.
+netmonitor.security.state.secure=Для получения этого ресурса использовалось защищённое соединение.
+
+# LOCALIZATION NOTE (netmonitor.security.state.insecure)
+# This string is used as an tooltip for request that was performed over insecure
+# channel i.e. the connection was not https
+netmonitor.security.state.insecure=Для получения этого ресурса использовалось незащищённое соединение.
+
+# LOCALIZATION NOTE (netmonitor.security.state.broken)
+# This string is used as an tooltip for request that failed due to security
+# issues.
+netmonitor.security.state.broken=Не удалось загрузить этот ресурс из-за ошибки безопасности.
+
+# LOCALIZATION NOTE (netmonitor.security.state.weak)
+# This string is used as an tooltip for request that had minor security issues
+netmonitor.security.state.weak=Этот ресурс был передан по соединению, использующему слабое шифрование.
+
+# LOCALIZATION NOTE (netmonitor.security.enabled):
+# This string is used to indicate that a specific security feature is used by
+# a connection in the security details tab.
+# For example: "HTTP Strict Transport Security: Enabled"
+netmonitor.security.enabled=Включена
+
+# LOCALIZATION NOTE (netmonitor.security.disabled):
+# This string is used to indicate that a specific security feature is not used by
+# a connection in the security details tab.
+# For example: "HTTP Strict Transport Security: Disabled"
+netmonitor.security.disabled=Отключено
+
+# LOCALIZATION NOTE (netmonitor.security.hostHeader):
+# This string is used as a header for section containing security information
+# related to the remote host. %S is replaced with the domain name of the remote
+# host. For example: Host example.com
+netmonitor.security.hostHeader=Узел %S:
+
+# LOCALIZATION NOTE (netmonitor.security.notAvailable):
+# This string is used to indicate that a certain piece of information is not
+# available to be displayed. For example a certificate that has no organization
+# defined:
+# Organization: <Not Available>
+netmonitor.security.notAvailable=<недоступно>
+
+# LOCALIZATION NOTE (collapseDetailsPane): This is the tooltip for the button
+# that collapses the network details pane in the UI.
+collapseDetailsPane=Скрыть детали запроса
+
+# LOCALIZATION NOTE (collapseActionPane): This is the tooltip for the button
+# that collapses the network action pane in the UI.
+collapseActionPane=Скрыть сетевое действие
+
+# LOCALIZATION NOTE (allTabsMenuButton.tooltip): The tooltip that gets
+# displayed when hovering over the tabs overflow button.
+allTabsMenuButton.tooltip=Показать все вкладки
+
+# LOCALIZATION NOTE (headersEmptyText): This is the text displayed in the
+# headers tab of the network details pane when there are no headers available.
+headersEmptyText=В этом запросе нет заголовков
+
+# LOCALIZATION NOTE (headersFilterText): This is the text displayed in the
+# headers tab of the network details pane for the filtering input.
+headersFilterText=Поиск заголовков
+
+# LOCALIZATION NOTE (messagesEmptyText): This is the text displayed in the
+# WebSockets tab of the network details pane when there are no frames available.
+messagesEmptyText=Нет сообщений для этого запроса
+
+# LOCALIZATION NOTE (cookiesEmptyText): This is the text displayed in the
+# cookies tab of the network details pane when there are no cookies available.
+cookiesEmptyText=Нет куков для этого запроса
+
+# LOCALIZATION NOTE (cookiesFilterText): This is the text displayed in the
+# cookies tab of the network details pane for the filtering input.
+cookiesFilterText=Поиск в куках
+
+# LOCALIZATION NOTE (responseEmptyText): This is the text displayed in the
+# response tab of the network details pane when the response is empty or not
+# available for shown.
+responseEmptyText=Для этого запроса нет данных ответа
+
+# LOCALIZATION NOTE (paramsNoPayloadText): This is the text displayed in the
+# request tab of the network details pane when there are no params available.
+paramsNoPayloadText=В этом запросе нет полезной нагрузки
+
+# LOCALIZATION NOTE (paramsFilterText): This is the text displayed in the
+# request tab of the network details pane for the filtering input.
+paramsFilterText=Поиск в параметрах запроса
+
+# LOCALIZATION NOTE (paramsQueryString): This is the label displayed
+# in the network details request tab identifying the query string.
+paramsQueryString=Строка запроса
+
+# LOCALIZATION NOTE (paramsFormData): This is the label displayed
+# in the network details request tab identifying the form data.
+paramsFormData=Данные форм
+
+# LOCALIZATION NOTE (paramsPostPayload): This is the label displayed
+# in the network details request tab identifying the request payload.
+paramsPostPayload=Полезная нагрузка запроса
+
+# LOCALIZATION NOTE (netmonitor.request.raw): This is the label displayed
+# on the button in the network details request tab that toggles the
+# view of the network request between the raw data and the formatted display.
+netmonitor.request.raw=Показать код
+
+# LOCALIZATION NOTE (requestHeaders): This is the label displayed
+# in the network details headers tab identifying the request headers.
+requestHeaders=Заголовки запроса
+
+# LOCALIZATION NOTE (requestHeadersFromUpload): This is the label displayed
+# in the network details headers tab identifying the request headers from
+# the upload stream of a POST request's body.
+requestHeadersFromUpload=Заголовки запроса из потока выгрузки
+
+# LOCALIZATION NOTE (responseHeaders): This is the label displayed
+# in the network details headers tab identifying the response headers.
+responseHeaders=Заголовки ответа
+
+# LOCALIZATION NOTE (requestCookies): This is the label displayed
+# in the network details request tab identifying the request cookies.
+requestCookies=Куки запроса
+
+# LOCALIZATION NOTE (responseCookies): This is the label displayed
+# in the network details request tab identifying the response cookies.
+responseCookies=Куки ответа
+
+# LOCALIZATION NOTE (responsePayload): This is the label displayed
+# in the network details response tab identifying the response payload.
+responsePayload=Полезная нагрузка ответа
+
+# LOCALIZATION NOTE (netmonitor.response.raw): This is the label displayed
+# on the button in the network details response tab that toggles the
+# view of the network response between the raw data and the formatted display.
+netmonitor.response.raw=Показать код
+
+# LOCALIZATION NOTE (netmonitor.response.html): This is the text displayed
+# in the response tab of the network details pane for an HTML preview.
+netmonitor.response.html=HTML
+
+# LOCALIZATION NOTE (jsonFilterText): This is the text displayed
+# in the response tab of the network details pane for the JSON filtering input.
+jsonFilterText=Поиск свойств
+
+# LOCALIZATION NOTE (jsonScopeName): This is the text displayed
+# in the response tab of the network details pane for a JSON scope.
+jsonScopeName=JSON
+
+# LOCALIZATION NOTE (jsonpScopeName): This is the text displayed
+# in the response tab of the network details pane for a JSONP scope.
+jsonpScopeName=JSONP → callback %S()
+
+# LOCALIZATION NOTE (jsonXssiStripped): This is the text displayed
+# in a notification in the response tab of the network details pane
+# when a JSON payload had XSSI escape characters which were removed
+jsonXssiStripped=Строка «%S» была удалена из начала JSON, показанного ниже
+
+# LOCALIZATION NOTE (responseTruncated): This is the text displayed
+# in the response tab of the network details pane when the response is over
+# the truncation limit and thus was truncated.
+responseTruncated=Ответ был усечён
+
+# LOCALIZATION NOTE (requestTruncated): This is the text displayed
+# in the request tab of the network details pane when the request is over
+# the truncation limit and thus was truncated.
+requestTruncated=Запрос был усечён
+
+# LOCALIZATION NOTE (networkMenu.raced): This is the label displayed
+# in the network menu specifying the transfer or a request is
+# raced. %S refers to the current transfer size.
+networkMenu.raced=%S (передаётся)
+
+# LOCALIZATION NOTE (networkMenu.sortedAsc): This is the tooltip displayed
+# in the network table toolbar, for any column that is sorted ascending.
+networkMenu.sortedAsc=По возрастанию
+
+# LOCALIZATION NOTE (networkMenu.sortedDesc): This is the tooltip displayed
+# in the network table toolbar, for any column that is sorted descending.
+networkMenu.sortedDesc=По убыванию
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.perf): A tooltip explaining
+# what the perf button does
+networkMenu.summary.tooltip.perf=Начать анализ быстродействия
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.domContentLoaded): A tooltip explaining
+# what the DOMContentLoaded label displays
+networkMenu.summary.tooltip.domContentLoaded=Время, когда произошло событие “DOMContentLoad”
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.load): A tooltip explaining
+# what the load label displays
+networkMenu.summary.tooltip.load=Время, когда произошло событие “load”
+
+# LOCALIZATION NOTE (networkMenu.summary.requestsCount2): This label is displayed
+# in the network table footer providing the number of requests
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+networkMenu.summary.requestsCount2=#1 запрос;#1 запроса;#1 запросов
+
+# LOCALIZATION NOTE (networkMenu.summary.requestsCountEmpty): This label is displayed
+# in the network table footer when there are no requests
+networkMenu.summary.requestsCountEmpty=Нет запросов
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.requestsCount): A tooltip explaining
+# what the requestsCount label displays
+networkMenu.summary.tooltip.requestsCount=Число запросов
+
+# LOCALIZATION NOTE (networkMenu.summary.transferred): This label is displayed
+# in the network table footer providing the transferred size.
+networkMenu.summary.transferred=%S / %S передано
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.transferred): A tooltip explaining
+# what the transferred label displays
+networkMenu.summary.tooltip.transferred=Размер/переданный размер всех запросов
+
+# LOCALIZATION NOTE (networkMenu.summary.finish): This label is displayed
+# in the network table footer providing the transfer time.
+networkMenu.summary.finish=Передано за: %S
+
+# LOCALIZATION NOTE (networkMenu.summary.tooltip.finish): A tooltip explaining
+# what the finish label displays
+networkMenu.summary.tooltip.finish=Время, необходимое для загрузки всех запросов
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.framesCount2): This label is displayed
+# in the messages table footer providing the number of frames
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+networkMenu.ws.summary.framesCount2=#1 сообщение;#1 сообщения;#1 сообщений
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.framesCountEmpty): This label is displayed
+# in the messages table footer when there are no frames
+networkMenu.ws.summary.framesCountEmpty=Нет сообщений
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.tooltip.framesCount): A tooltip explaining
+# what the framesCount label displays
+networkMenu.ws.summary.tooltip.framesCount=Число сообщений
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.tooltip.framesTotalSize): A tooltip explaining
+# what the framesTotalSize label displays
+networkMenu.ws.summary.tooltip.framesTotalSize=Общий размер отображаемых сообщений
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.label.framesTranferredSize): A label showing
+# summary size info related to the current list of WS messages
+# %1$S is the total size of the transferred data, %2$S is the size of sent data, %3$S is the size of received data.
+networkMenu.ws.summary.label.framesTranferredSize=%1$S всего, %2$S отправлено, %3$S получено
+
+# LOCALIZATION NOTE (networkMenu.ws.summary.tooltip.framesTotalTime): A tooltip explaining
+# what framesTotalTime displays
+networkMenu.ws.summary.tooltip.framesTotalTime=Общее время, прошедшее между первым и последним отображаемыми сообщениями
+
+# LOCALIZATION NOTE (networkMenu.sizeB): This is the label displayed
+# in the network menu specifying the size of a request (in bytes).
+networkMenu.sizeB=%S б
+
+# LOCALIZATION NOTE (networkMenu.size.kB): This is the label displayed
+# in the network menu specifying the size of a request (in kilobytes).
+networkMenu.size.kB=%S кБ
+
+# LOCALIZATION NOTE (networkMenu.sizeMB): This is the label displayed
+# in the network menu specifying the size of a request (in megabytes).
+networkMenu.sizeMB=%S МБ
+
+# LOCALIZATION NOTE (networkMenu.sizeGB): This is the label displayed
+# in the network menu specifying the size of a request (in gigabytes).
+networkMenu.sizeGB=%S ГБ
+
+# LOCALIZATION NOTE (networkMenu.sizeUnavailable): This is the label displayed
+# in the network menu specifying the transferred size of a request is
+# unavailable.
+networkMenu.sizeUnavailable=—
+
+# LOCALIZATION NOTE (networkMenu.sizeUnavailable.title): This is the tooltip
+# displayed in the network menu specifying that the transferred size of a
+# request is unavailable.
+networkMenu.sizeUnavailable.title=Размер передачи не доступен
+
+# LOCALIZATION NOTE (networkMenu.sizeCached): This is the label displayed
+# in the network menu and the headers panel specifying the transfer or a request is
+# cached.
+networkMenu.sizeCached=кешировано
+
+# LOCALIZATION NOTE (networkMenu.sizeServiceWorker): This is the label displayed
+# in the network menu and the headers panel specifying the transferred of a request
+# computed by a service worker.
+networkMenu.sizeServiceWorker=service worker
+
+# LOCALIZATION NOTE (networkMenu.blocked2): This is a generic message for a
+# URL that has been blocked for an unknown reason
+networkMenu.blocked2=Заблокирован
+
+# LOCALIZATION NOTE (networkMenu.blockedby): This is a generic message for a
+# URL that has been blocked by an extension
+# %S is the extension name.
+networkMenu.blockedby=Заблокировано %S
+
+# LOCALIZATION NOTE (networkMenu.blockedTooltip): This is a the text displayed
+# as a tooltip for the blocked icon in the request list
+networkMenu.blockedTooltip=Заблокировано
+
+# LOCALIZATION NOTE (networkMenu.totalMS2): This is the label displayed
+# in the network menu specifying the time for a request to finish (in milliseconds).
+networkMenu.totalMS2=%S мс
+
+# This string is used to concatenate tooltips (netmonitor.waterfall.tooltip.*)
+# in the requests waterfall for total time (in milliseconds). \\u0020 represents
+# a whitespace. You can replace this with a different character, e.g. an hyphen
+# or a period, if a comma doesn't work for your language.
+netmonitor.waterfall.tooltip.separator=,\u0020
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.total): This is part of the tooltip
+# displayed in the requests waterfall for total time (in milliseconds).
+netmonitor.waterfall.tooltip.total=Всего %S мс
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.blocked): This is part of the tooltip
+# displayed in the requests waterfall for blocked time (in milliseconds).
+netmonitor.waterfall.tooltip.blocked=Заблокировано %S мс
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.dns): This is part of the tooltip
+# displayed in the requests waterfall for dns time (in milliseconds).
+netmonitor.waterfall.tooltip.dns=DNS %S мс
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.ssl): This is part of the tooltip
+# displayed in the requests waterfall for tls setup time (in milliseconds).
+netmonitor.waterfall.tooltip.ssl=TLS %S мс
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.connect): This is part of the tooltip
+# displayed in the requests waterfall for connect time (in milliseconds).
+netmonitor.waterfall.tooltip.connect=Соединение %S мс
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.send): This is part of the tooltip
+# displayed in the requests waterfall for send time (in milliseconds).
+netmonitor.waterfall.tooltip.send=Отправка %S мс
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.wait): This is part of the tooltip
+# displayed in the requests waterfall for wait time (in milliseconds).
+netmonitor.waterfall.tooltip.wait=Ожидание %S мс
+
+# LOCALIZATION NOTE (netmonitor.waterfall.tooltip.receive): This is part of the tooltip
+# displayed in the requests waterfall for receive time (in milliseiconds).
+netmonitor.waterfall.tooltip.receive=Получение %S мс
+
+# LOCALIZATION NOTE (netmonitor.timings.requestTiming): This is the title of the existing
+# section in Timings side panel. This section contains request timings.
+netmonitor.timings.requestTiming=Тайминг запроса
+
+# LOCALIZATION NOTE (netmonitor.timings.serverTiming): This is the title of a new section
+# in Timings side panel. This section contains server timings transferred from the server
+# through the "Server-Timing" header.
+netmonitor.timings.serverTiming=Тайминг сервера
+
+# LOCALIZATION NOTE (netmonitor.timings.serviceWorkerTiming): This is the title of a new section
+# in Timings side panel. This section contains service worker timings transferred from the
+# service worker.
+netmonitor.timings.serviceWorkerTiming=Тайминг Service Worker
+
+# LOCALIZATION NOTE (netmonitor.timings.queuedAt): This is relative queued time to the
+# first request. %S is time expressed in milliseconds or minutes.
+netmonitor.timings.queuedAt=В очереди: %S
+
+# LOCALIZATION NOTE (netmonitor.timings.startedAt): Relative to the first request,
+# when the request actually started. %S is time expressed in milliseconds or minutes.
+netmonitor.timings.startedAt=Начато: %S
+
+# LOCALIZATION NOTE (netmonitor.timings.downloadedAt): Relative to first request,
+# when the request actually finished downloading.
+# %S is time expressed in milliseconds or minutes.
+netmonitor.timings.downloadedAt=Загружено: %S
+
+# LOCALIZATION NOTE (netmonitor.timings.noTimings): Message that displays in the
+# timings pane when thea request has been blocked
+netmonitor.timings.noTimings=В этом запросе нет таймингов
+
+# LOCALIZATION NOTE (networkMenu.millisecond): This is the label displayed
+# in the network menu specifying timing interval divisions (in milliseconds).
+networkMenu.millisecond=%S мс
+
+# LOCALIZATION NOTE (networkMenu.second): This is the label displayed
+# in the network menu specifying timing interval divisions (in seconds).
+networkMenu.second=%S с
+
+# LOCALIZATION NOTE (networkMenu.minute): This is the label displayed
+# in the network menu specifying timing interval divisions (in minutes).
+networkMenu.minute=%S мин
+
+# LOCALIZATION NOTE (pieChart.loading): This is the label displayed
+# for pie charts (e.g., in the performance analysis view) when there is
+# no data available yet.
+pieChart.loading=Загрузка
+
+# LOCALIZATION NOTE (pieChart.unavailable): This is the label displayed
+# for pie charts (e.g., in the performance analysis view) when there is
+# no data available, even after loading it.
+pieChart.unavailable=Пусто
+
+# LOCALIZATION NOTE (pieChart.ariaLabel): This is the text used for the aria-label attribute
+# for SVG pie charts (e.g., in the performance analysis view).
+pieChart.ariaLabel=Круговая диаграмма, представляющая размер каждого типа запроса пропорционально друг другу
+
+# LOCALIZATION NOTE (pieChart.sliceAriaLabel): This is the text used for the aria-label attribute
+# for SVG pie charts slices (e.g., in the performance analysis view).
+# %1$S is the slice label (e.g. "html")
+# %2$S is the percentage (e.g. "33.23%").
+pieChart.sliceAriaLabel=%1$S: %2$S
+
+# LOCALIZATION NOTE (tableChart.loading): This is the label displayed
+# for table charts (e.g., in the performance analysis view) when there is
+# no data available yet.
+tableChart.loading=Пожалуйста, подождите…
+
+# LOCALIZATION NOTE (tableChart.unavailable): This is the label displayed
+# for table charts (e.g., in the performance analysis view) when there is
+# no data available, even after loading it.
+tableChart.unavailable=Нет доступных данных
+
+# LOCALIZATION NOTE (charts.size.kB): This is the label displayed
+# in pie or table charts specifying the size of a request (in kilobytes).
+charts.size.kB=%S кБ
+
+# LOCALIZATION NOTE (charts.transferredSize.kB): This is the label displayed
+# in pie or table charts specifying the size of a transferred request (in kilobytes).
+charts.transferredSize.kB=%S кБ
+
+# LOCALIZATION NOTE (charts.totalS): This is the label displayed
+# in pie or table charts specifying the time for a request to finish (in seconds).
+charts.totalS=%S с
+
+# LOCALIZATION NOTE (charts.totalTransferredSize.kB): This is the label displayed
+# in the performance analysis view for total transferred size, in kilobytes.
+charts.totalTransferredSize.kB=Передано: %S кБ
+
+# LOCALIZATION NOTE (charts.cacheEnabled): This is the label displayed
+# in the performance analysis view for "cache enabled" charts.
+charts.cacheEnabled=Заполненный кеш
+
+# LOCALIZATION NOTE (charts.cacheDisabled): This is the label displayed
+# in the performance analysis view for "cache disabled" charts.
+charts.cacheDisabled=Пустой кеш
+
+# LOCALIZATION NOTE (charts.learnMore): This is the label displayed
+# in the performance analysis view, with a link to external documentation.
+charts.learnMore=Узнайте больше об анализе производительности
+
+# LOCALIZATION NOTE (charts.totalSize.kB): This is the label displayed
+# in the performance analysis view for total requests size, in kilobytes.
+charts.totalSize.kB=Размер: %S кБ
+
+# LOCALIZATION NOTE (charts.totalSeconds): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This is the label displayed in the performance analysis view for the
+# total requests time, in seconds.
+charts.totalSeconds=Время: #1 секунда;Время: #1 секунды;Время: #1 секунд
+
+# LOCALIZATION NOTE (charts.totalSecondsNonBlocking): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This is the label displayed in the performance analysis view for the
+# total requests time (non-blocking), in seconds.
+charts.totalSecondsNonBlocking=Неблокирующее время: #1 секунда;Неблокирующее время: #1 секунды;Неблокирующее время: #1 секунд
+
+# LOCALIZATION NOTE (charts.totalCached): This is the label displayed
+# in the performance analysis view for total cached responses.
+charts.totalCached=Кешированных ответов: %S
+
+# LOCALIZATION NOTE (charts.totalCount): This is the label displayed
+# in the performance analysis view for total requests.
+charts.totalCount=Всего запросов: %S
+
+# LOCALIZATION NOTE (charts.requestsNumber): This is the label for the header column in
+# the performance analysis view for the number of requests. The label is not visible on screen,
+# but is set in the DOM for accessibility sake.
+charts.requestsNumber=Число запросов
+
+# LOCALIZATION NOTE (charts.size): This is the label displayed
+# in the header column in the performance analysis view for size of the request.
+charts.size=Размер
+
+# LOCALIZATION NOTE (charts.type): This is the label displayed
+# in the header column in the performance analysis view for type of request.
+charts.type=Тип
+
+# LOCALIZATION NOTE (charts.transferred): This is the label displayed
+# in the header column in the performance analysis view for transferred
+# size of the request.
+charts.transferred=Передано
+
+# LOCALIZATION NOTE (charts.time): This is the label displayed
+# in the header column in the performance analysis view for time of request.
+charts.time=Время
+
+# LOCALIZATION NOTE (charts.nonBlockingTime): This is the label displayed
+# in the header column in the performance analysis view for non blocking
+# time of request.
+charts.nonBlockingTime=Неблокирующее время
+
+# LOCALIZATION NOTE (netRequest.originalFileURL.tooltip): This is the tooltip
+# displayed for the file's original URL value displayed in the file column of
+# a request.
+netRequest.originalFileURL.tooltip=Оригинальный URL: %S
+
+# LOCALIZATION NOTE (netRequest.decodedFileURL.tooltip): This is the tooltip
+# displayed for the file's decoded URL value displayed in the file column of
+# a request.
+netRequest.decodedFileURL.tooltip=Декодированный URL: %S
+
+# LOCALIZATION NOTE (certmgr.subjectinfo.label):
+# A label used for a certificate section in security tab.
+# This section displays Name and organization who has been assigned the fingerprints
+certmgr.subjectinfo.label=Кому выдан
+
+# LOCALIZATION NOTE (certmgr.certdetail.cn):
+# A label used for Issued To and Issued By sub-section in security tab
+certmgr.certdetail.cn=Общее имя (CN):
+
+# LOCALIZATION NOTE (certmgr.certdetail.o):
+# A label used for Issued To and Issued By sub-section in security tab
+certmgr.certdetail.o=Организация (O):
+
+# LOCALIZATION NOTE (certmgr.certdetail.ou):
+# A label used for Issued To and Issued By sub-section in security tab
+certmgr.certdetail.ou=Подразделение (OU):
+
+# LOCALIZATION NOTE (certmgr.issuerinfo.label):
+# A label used for a certificate section in security tab
+# This section displays Name and organization who issued the fingerprints
+certmgr.issuerinfo.label=Кем выдан
+
+# LOCALIZATION NOTE (certmgr.periodofvalidity.label):
+# A label used for a certificate section in security tab
+# This section displays the valid period of this fingerprints
+certmgr.periodofvalidity.label=Срок действия
+
+# LOCALIZATION NOTE (certmgr.begins):
+# A label used for Period of Validity sub-section in security tab
+certmgr.begins=Действителен с:
+
+# LOCALIZATION NOTE (certmgr.expires):
+# A label used for Period of Validity sub-section in security tab
+certmgr.expires=Действителен по:
+
+# LOCALIZATION NOTE (certmgr.fingerprints.label):
+# A label used for a certificate section in security tab
+# This section displays the valid period of this fingerprints
+certmgr.fingerprints.label=Отпечатки
+
+# LOCALIZATION NOTE (certmgr.certdetail.sha256fingerprint):
+# A label used for Fingerprints sub-section in security tab
+certmgr.certdetail.sha256fingerprint=Отпечаток SHA-256:
+
+# LOCALIZATION NOTE (certmgr.certdetail.sha1fingerprint):
+# A label used for Fingerprints sub-section in security tab
+certmgr.certdetail.sha1fingerprint=Отпечаток SHA1:
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.label):
+# This string is used as a label in the security tab.
+certmgr.certificateTransparency.label=Прозрачность:
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.status.ok):
+# This string is used to indicate that there are valid signed certificate
+# timestamps. This is a property for the 'Transparency'
+# field in the security tab.
+certmgr.certificateTransparency.status.ok=Действительные записи SCT
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.status.notEnoughSCTS):
+# This string is used to indicate that there are not enough valid signed
+# certificate timestamps. This is a property for the 'Transparency'
+# field in the security tab.
+certmgr.certificateTransparency.status.notEnoughSCTS=Недостаточно SCT
+
+# LOCALIZATION NOTE (certmgr.certificateTransparency.status.notDiverseSCTS):
+# This string is used to indicate that there ar not enough diverse signed
+# certificate timestamps. This is a property for the 'Transparency'
+# field in the security tab.
+certmgr.certificateTransparency.status.notDiverseSCTS=Недостаточно разнообразные SCT
+
+# LOCALIZATION NOTE (netmonitor.perfNotice1/2/3): These are the labels displayed
+# in the network table when empty to start performance analysis.
+netmonitor.perfNotice1=• Щёлкните по кнопке
+netmonitor.perfNotice2=, чтобы запустить анализ производительности.
+netmonitor.perfNotice3=Анализ
+
+# LOCALIZATION NOTE (netmonitor.reload1/2/3): These are the labels displayed
+# in the network table when empty to start logging network requests.
+netmonitor.reloadNotice1=• Выполните запрос или
+netmonitor.reloadNotice2=Обновите
+netmonitor.reloadNotice3=страницу, чтобы увидеть подробную информацию о сетевой активности.
+netmonitor.emptyBrowserToolbox=Выполните запрос, чтобы увидеть подробную информацию о сетевой активности.
+
+# LOCALIZATION NOTE (netmonitor.toolbar.status3): This is the label displayed
+# in the network table toolbar, above the "status" column.
+netmonitor.toolbar.status3=Статус
+
+# LOCALIZATION NOTE (netmonitor.toolbar.method): This is the label displayed
+# in the network table toolbar, above the "method" column.
+netmonitor.toolbar.method=Метод
+
+# LOCALIZATION NOTE (netmonitor.toolbar.priority): This is the label displayed
+# in the network table toolbar, above the "priority" column.
+netmonitor.toolbar.priority=Приоритет
+
+# LOCALIZATION NOTE (netmonitor.toolbar.file): This is the label displayed
+# in the network table toolbar, above the "file" column.
+netmonitor.toolbar.file=Файл
+
+# LOCALIZATION NOTE (netmonitor.toolbar.url): This is the label displayed
+# in the network table toolbar, above the "url" column.
+netmonitor.toolbar.url=URL
+
+# LOCALIZATION NOTE (netmonitor.toolbar.protocol): This is the label displayed
+# in the network table toolbar, above the "protocol" column.
+netmonitor.toolbar.protocol=Протокол
+
+# LOCALIZATION NOTE (netmonitor.toolbar.domain): This is the label displayed
+# in the network table toolbar, above the "domain" column.
+netmonitor.toolbar.domain=Домен
+
+# LOCALIZATION NOTE (netmonitor.toolbar.remoteip): This is the label displayed
+# in the network table toolbar, above the "remoteip" column.
+netmonitor.toolbar.remoteip=Удалённый IP
+
+# LOCALIZATION NOTE (netmonitor.toolbar.initiator): This is the label displayed
+# in the network table toolbar, above the "initiator" column.
+netmonitor.toolbar.initiator=Инициатор
+
+# LOCALIZATION NOTE (netmonitor.toolbar.type): This is the label displayed
+# in the network table toolbar, above the "type" column.
+netmonitor.toolbar.type=Тип
+
+# LOCALIZATION NOTE (netmonitor.toolbar.cookies): This is the label displayed
+# in the network table toolbar, above the "cookies" column.
+netmonitor.toolbar.cookies=Куки
+
+# LOCALIZATION NOTE (netmonitor.toolbar.setCookies): This is the label displayed
+# in the network table toolbar, above the "set cookies" column.
+# Set-Cookie is a HTTP response header. This string is the plural form of it.
+# See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie
+netmonitor.toolbar.setCookies=Set-Cookies
+
+# LOCALIZATION NOTE (netmonitor.toolbar.scheme): This is the label displayed
+# in the network table toolbar, above the "scheme" column.
+netmonitor.toolbar.scheme=Схема
+
+# LOCALIZATION NOTE (netmonitor.toolbar.startTime): This is the label displayed
+# in the network table toolbar, above the "start time" column, which is the time
+# from start of 1st request until the start of this request.
+netmonitor.toolbar.startTime=Время начала
+
+# LOCALIZATION NOTE (netmonitor.toolbar.endTime): This is the label displayed
+# in the network table toolbar, above the "end time" column, which is the time
+# from start of 1st request until the end of this response.
+netmonitor.toolbar.endTime=Время окончания
+
+# LOCALIZATION NOTE (netmonitor.toolbar.responseTime): This is the label displayed
+# in the network table toolbar, above the "response time" column, which is the time
+# from start of 1st request until the beginning of download of this response.
+netmonitor.toolbar.responseTime=Время ответа
+
+# LOCALIZATION NOTE (netmonitor.toolbar.duration): This is the label displayed
+# in the network table toolbar, above the "duration" column, which is the time
+# from start of this request until the end of this response.
+netmonitor.toolbar.duration=Длительность
+
+# LOCALIZATION NOTE (netmonitor.toolbar.latency): This is the label displayed
+# in the network table toolbar, above the "latency" column, which is the time
+# from end of this request until the beginning of download of this response.
+netmonitor.toolbar.latency=Задержка
+
+# LOCALIZATION NOTE (netmonitor.toolbar.transferred): This is the label displayed
+# in the network table toolbar, above the "transferred" column and in general
+# section of the headers panel, which is the compressed / encoded size.
+netmonitor.toolbar.transferred=Передано
+
+# LOCALIZATION NOTE (netmonitor.toolbar.contentSize): This is the label displayed
+# in the network table toolbar, above the "size" column, which is the
+# uncompressed / decoded size.
+netmonitor.toolbar.contentSize=Размер
+
+# LOCALIZATION NOTE (netmonitor.toolbar.waterfall): This is the label displayed
+# in the network table toolbar, above the "waterfall" column.
+netmonitor.toolbar.waterfall=Временная шкала
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.size): This is the label displayed
+# in the messages table header, above the "size" column.
+netmonitor.ws.toolbar.size=Размер
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.data): This is the label displayed
+# in the messages table header, above the "data" column.
+netmonitor.ws.toolbar.data=Данные
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.opCode): This is the label displayed
+# in the messages table header, above the "opCode" column.
+netmonitor.ws.toolbar.opCode=OpCode
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.maskBit): This is the label displayed
+# in the messages table header, above the "maskBit" column.
+netmonitor.ws.toolbar.maskBit=MaskBit
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.finBit): This is the label displayed
+# in the messages table header, above the "finBit" column.
+netmonitor.ws.toolbar.finBit=FinBit
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.time): This is the label displayed
+# in the messages table header, above the "time" column.
+netmonitor.ws.toolbar.time=Время
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.eventName): This is the label displayed
+# in the messages table header, above the "eventName" column.
+netmonitor.ws.toolbar.eventName=Название события
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.retry): This is the label displayed
+# in the messages table header, above the "retry" column.
+netmonitor.ws.toolbar.retry=Повторить
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.lastEventId): This is the label displayed
+# in the messages table header, above the "lastEventId" column.
+netmonitor.ws.toolbar.lastEventId=ID последнего события
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.clear): This is the label displayed
+# in the messages panel toolbar for the "Clear" button.
+netmonitor.ws.toolbar.clear=Очистить
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.filterFreetext.label): This is the label
+# displayed in the messages panel toolbar for the frames filtering textbox.
+netmonitor.ws.toolbar.filterFreetext.label=Поиск сообщений
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.filterFreetext.key): This is the
+# shortcut key to focus on the messages panel toolbar messages filtering textbox
+netmonitor.ws.toolbar.filterFreetext.key=CmdOrCtrl+E
+
+# LOCALIZATION NOTE (netmonitor.ws.toolbar.resetColumns): This is the label
+# displayed in the messages panel table header context menu.
+netmonitor.ws.toolbar.resetColumns=Восстановить колонки
+
+# LOCALIZATION NOTE (netmonitor.ws.context.all): This is the label displayed
+# on the context menu that shows "All" WebSocket frames.
+netmonitor.ws.context.all=Все
+
+# LOCALIZATION NOTE (netmonitor.ws.context.all.accesskey): This is the access key
+# for the "All" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.all.accesskey=е
+
+# LOCALIZATION NOTE (netmonitor.ws.context.sent): This is the label displayed
+# on the context menu that shows "Sent" WebSocket frames.
+netmonitor.ws.context.sent=Отправленные
+
+# LOCALIZATION NOTE (netmonitor.ws.context.sent.accesskey): This is the access key
+# for the "Sent" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.sent.accesskey=п
+
+# LOCALIZATION NOTE (netmonitor.ws.context.received): This is the label displayed
+# on the context menu that shows "Received" WebSocket frames.
+netmonitor.ws.context.received=Полученные
+
+# LOCALIZATION NOTE (netmonitor.ws.context.received.accesskey): This is the access key
+# for the "Received" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.received.accesskey=л
+
+# LOCALIZATION NOTE (netmonitor.ws.context.controlFrames): This is the label displayed
+# on the context menu that shows "Control Frames" WebSocket frames.
+netmonitor.ws.context.controlFrames=Контрольные
+
+# LOCALIZATION NOTE (netmonitor.ws.context.controlFrames.accesskey): This is the access key
+# for the "Control Frames" menu item displayed in the context menu in the websocket toolbar.
+netmonitor.ws.context.controlFrames.accesskey=о
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrame): This is the label displayed
+# on the context menu that shows "Copy Message".
+netmonitor.ws.context.copyFrame=Копировать сообщение
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrame.accesskey): This is the access key
+# for the "Copy Message" menu item displayed in the context menu of a WebSocket frame.
+netmonitor.ws.context.copyFrame.accesskey=и
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsBase64): This is the label displayed
+# on the context menu that shows "Copy as Base64" displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsBase64=Копировать как Base64
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsBase64.accesskey): This is the access key
+# for the "Copy as Base64" menu item displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsBase64.accesskey=п
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsHex): This is the label displayed
+# on the context menu that shows "Copy as Hex" displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsHex=Копировать в 16-ричном формате
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsHex.accesskey): This is the access key
+# for the "Copy as Hex" menu item displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsHex.accesskey=в
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsText): This is the label displayed
+# on the context menu that shows "Copy as Text" displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsText=Копировать как текст
+
+# LOCALIZATION NOTE (netmonitor.ws.context.copyFrameAsText.accesskey): This is the access key
+# for the "Copy as Text" menu item displayed in the context menu of a binary WebSocket frame.
+netmonitor.ws.context.copyFrameAsText.accesskey=е
+
+# LOCALIZATION NOTE (netmonitor.ws.connection.closed): This is the text displayed in the
+# websocket messages panel when the connection is closed
+netmonitor.ws.connection.closed=Соединение закрыто
+
+# LOCALIZATION NOTE (netmonitor.ws.type.sent): This is the label used as
+# accessible text for the "sent" type icon in the websocket table's "data" column.
+netmonitor.ws.type.sent=Отправленные
+
+# LOCALIZATION NOTE (netmonitor.ws.type.received): This is the label used as
+# accessible text for the "received" type icon in the websocket table's "data" column.
+netmonitor.ws.type.received=Полученные
+
+# LOCALIZATION NOTE (netmonitor.ws.rawData.header): This is the label displayed
+# in the messages panel identifying the raw data.
+netmonitor.ws.rawData.header=Необработанные данные (%S)
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.inputPlaceholder): This is the label
+# displayed in the search toolbar for the search input as the placeholder.
+netmonitor.search.toolbar.inputPlaceholder=Найти в ресурсах…
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.close): This is the label
+# displayed in the search toolbar to close the search panel.
+netmonitor.search.toolbar.close=Закрыть строку поиска
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.clear): This is the label
+# displayed in the search toolbar to clear the search panel.
+netmonitor.search.toolbar.clear=Удалить результаты поиска
+
+# LOCALIZATION NOTE (netmonitor.search.toolbar.caseSensitive): This is the label
+# displayed in the search toolbar to do a case sensitive search.
+netmonitor.search.toolbar.caseSensitive=С учётом регистра
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.fetching): This is the label
+# displayed in the search results status bar when status is set to fetching.
+netmonitor.search.status.labels.fetching=Поиск…
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.canceled): This is the label
+# displayed in the search results status bar when status is set to cancelled.
+netmonitor.search.status.labels.canceled=Поиск отменён.
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.done): This is the label
+# displayed in the search results status bar when status is set to done.
+# %1$S is the number of matching lines in search results (netmonitor.search.status.labels.matchingLines)
+# %2$S is the number of files in which matching lines were found (netmonitor.search.status.labels.fileCount)
+netmonitor.search.status.labels.done=Поиск завершён. %1$S %2$S.
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.matchingLines): Semi-colon list of plural forms.
+# This is the label displayed in the search results status bar showing matching lines found.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of matching lines found
+netmonitor.search.status.labels.matchingLines=Найдена #1 подходящая строка;Найдено #1 подходящих строки;Найдено #1 подходящих строк
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.fileCount): Semi-colon list of plural forms.
+# This is the label displayed in the search results status bar showing file count
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of files in which matching lines were found
+netmonitor.search.status.labels.fileCount=в #1 файле;в #1 файлах;в #1 файлах
+
+# LOCALIZATION NOTE (netmonitor.search.status.labels.error): This is the label
+# displayed in the search results status bar when status is set to error.
+netmonitor.search.status.labels.error=Ошибка поиска.
+
+# LOCALIZATION NOTE (netmonitor.toolbar.requestBlocking): This is the tooltip displayed
+# over the toolbar's Request Blocking button
+netmonitor.toolbar.requestBlocking=Блокировка запросов
+
+# LOCALIZATION NOTE (netmonitor.actionbar.requestBlocking2): This is the label displayed
+# in the action bar's request blocking tab
+netmonitor.actionbar.requestBlocking2=Блокировка
+
+# LOCALIZATION NOTE (netmonitor.actionbar.enableBlocking): This is the label displayed
+# in request blocking tab to represent if requests blocking should be enabled
+netmonitor.actionbar.enableBlocking=Включить блокировку запросов
+
+# LOCALIZATION NOTE (netmonitor.actionbar.blockSearchPlaceholder): This is the
+# placeholder text for the request addition form
+netmonitor.actionbar.blockSearchPlaceholder=Блокировать ресурс, когда URL содержит
+
+# LOCALIZATION NOTE (netmonitor.actionbar.removeBlockedUrl): This is the
+# tooltip shown over the remove button for blocked URL item
+netmonitor.actionbar.removeBlockedUrl=Удалить шаблон
+
+# LOCALIZATION NOTE (netmonitor.actionbar.requestBlockingUsageNotice): This is the
+# usage notice displayed when network blocking list is empty
+netmonitor.actionbar.requestBlockingUsageNotice=Добавьте здесь шаблоны URL, чтобы заблокировать соответствующие запросы.
+
+# LOCALIZATION NOTE (netmonitor.actionbar.requestBlockingAddNotice): This is the
+# add notice that explains ways to add blocking pattern that is displayed when
+# network blocking list is empty
+netmonitor.actionbar.requestBlockingAddNotice=Начните с добавления шаблона или перетаскивания строки из сетевой таблицы.
+
+# LOCALIZATION NOTE (netmonitor.requestBlockingMenu.removeAllBlockedUrls): This is the
+# context menu item for removing all blocked URLs
+netmonitor.requestBlockingMenu.removeAllBlockedUrls=Удалить все
+
+# LOCALIZATION NOTE (netmonitor.requestBlockingMenu.enableAllBlockedUrls): This is the
+# context menu item for enabling all blocked URLs
+netmonitor.requestBlockingMenu.enableAllBlockedUrls=Включить все
+
+# LOCALIZATION NOTE (netmonitor.requestBlockingMenu.disableAllBlockedUrls): This is the
+# context menu item for disabling all blocked URLs
+netmonitor.requestBlockingMenu.disableAllBlockedUrls=Отключить все
+
+# LOCALIZATION NOTE (netmonitor.actionbar.search): This is the label displayed
+# in the action bar's search tab
+netmonitor.actionbar.search=Поиск
+
+# LOCALIZATION NOTE (netmonitor.actionbar.HTTPCustomRequest): This is the label displayed
+# in the action bar's edit and resend tab
+netmonitor.actionbar.HTTPCustomRequest=Новый запрос
+
+# LOCALIZATION NOTE (messagesTruncated): This is the text displayed
+# in the messages panel when the number of messages is over the
+# truncation limit.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+netmonitor.ws.truncated-messages.warning=#1 сообщение было обрезано для сохранения памяти;#1 сообщения были обрезаны для сохранения памяти;#1 сообщений было обрезано для сохранения памяти
+
+# LOCALIZATION NOTE (disableMessagesTruncation): This is the text displayed
+# in the messages panel checkbox label for toggling message truncation.
+toggleMessagesTruncation=Сохранять все будущие сообщения
+
+# LOCALIZATION NOTE (toggleMessagesTruncation.title): This is the title used
+# to describe the checkbox used to toggle message truncation.
+toggleMessagesTruncation.title=Сохранять все будущие сообщения или продолжить показывать обрезанные сообщения
+
+# LOCALIZATION NOTE (messageDataTruncated): This is the text displayed
+# to describe to describe data truncation in the messages panel.
+messageDataTruncated=Данные были обрезаны
+
+# LOCALIZATION NOTE (netmonitor.tab.headers): This is the label displayed
+# in the network details pane identifying the headers tab.
+netmonitor.tab.headers=Заголовки
+
+# LOCALIZATION NOTE (netmonitor.tab.messages): This is the label displayed
+# in the network details pane identifying the messages tab.
+netmonitor.tab.messages=Сообщения
+
+# LOCALIZATION NOTE (netmonitor.tab.cookies): This is the label displayed
+# in the network details pane identifying the cookies tab.
+netmonitor.tab.cookies=Куки
+
+# LOCALIZATION NOTE (netmonitor.tab.cache): This is the label displayed
+# in the network details pane identifying the cache tab.
+netmonitor.tab.cache=Кеш
+
+# LOCALIZATION NOTE (netmonitor.tab.params): This is the label displayed
+# in the network details pane identifying the params tab.
+netmonitor.tab.params=Параметры
+
+# LOCALIZATION NOTE (netmonitor.tab.request): This is the label displayed
+# in the network details pane identifying the request tab.
+netmonitor.tab.request=Запрос
+
+# LOCALIZATION NOTE (netmonitor.tab.response): This is the label displayed
+# in the network details pane identifying the response tab.
+netmonitor.tab.response=Ответ
+
+# LOCALIZATION NOTE (netmonitor.tab.timings): This is the label displayed
+# in the network details pane identifying the timings tab.
+netmonitor.tab.timings=Тайминги
+
+# LOCALIZATION NOTE (netmonitor.tab.stackTrace): This is the label displayed
+# in the network details pane identifying the stack-trace tab.
+netmonitor.tab.stackTrace=Стек вызовов
+
+# LOCALIZATION NOTE (netmonitor.tab.security): This is the label displayed
+# in the network details pane identifying the security tab.
+netmonitor.tab.security=Защита
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.all): This is the label displayed
+# in the network toolbar for the "All" filtering button.
+netmonitor.toolbar.filter.all=Все
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.html): This is the label displayed
+# in the network toolbar for the "HTML" filtering button.
+netmonitor.toolbar.filter.html=HTML
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.css): This is the label displayed
+# in the network toolbar for the "CSS" filtering button.
+netmonitor.toolbar.filter.css=CSS
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.js): This is the label displayed
+# in the network toolbar for the "JS" filtering button.
+netmonitor.toolbar.filter.js=JS
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.xhr): This is the label displayed
+# in the network toolbar for the "XHR" filtering button.
+netmonitor.toolbar.filter.xhr=XHR
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.fonts): This is the label displayed
+# in the network toolbar for the "Fonts" filtering button.
+netmonitor.toolbar.filter.fonts=Шрифты
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.images): This is the label displayed
+# in the network toolbar for the "Images" filtering button.
+netmonitor.toolbar.filter.images=Изображения
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.media): This is the label displayed
+# in the network toolbar for the "Media" filtering button.
+netmonitor.toolbar.filter.media=Медиа
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.flash): This is the label displayed
+# in the network toolbar for the "Flash" filtering button.
+netmonitor.toolbar.filter.flash=Flash
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.ws): This is the label displayed
+# in the network toolbar for the "WS" filtering button.
+netmonitor.toolbar.filter.ws=WS
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filter.other): This is the label displayed
+# in the network toolbar for the "Other" filtering button.
+netmonitor.toolbar.filter.other=Прочее
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filterFreetext.label): This is the label
+# displayed in the network toolbar for the url filtering textbox.
+netmonitor.toolbar.filterFreetext.label=Поиск URL
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filterFreetext.key): This is the
+# shortcut key to focus on the toolbar url filtering textbox
+netmonitor.toolbar.filterFreetext.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (netmonitor.toolbar.search.key): This is the
+# shortcut key to toggle the search panel
+netmonitor.toolbar.search.key=CmdOrCtrl+Shift+F
+
+# LOCALIZATION NOTE (netmonitor.toolbar.copy.key): This is the
+# shortcut key to copy a selected request url from the network table
+netmonitor.toolbar.copy.key=CmdOrCtrl+C
+
+# LOCALIZATION NOTE (netmonitor.toolbar.filterFreetext.learnMore): This is
+# the title used for MDN icon in filtering textbox
+netmonitor.toolbar.filterFreetext.learnMore=Узнайте больше о фильтрации
+
+# LOCALIZATION NOTE (netmonitor.toolbar.enablePersistentLogs.label): This is the label
+# displayed for the checkbox for enabling persistent logs.
+netmonitor.toolbar.enablePersistentLogs.label=Непрерывные логи
+
+# LOCALIZATION NOTE (netmonitor.toolbar.enablePersistentLogs.tooltip): This is the tooltip
+# displayed for the checkbox for enabling persistent logs.
+netmonitor.toolbar.enablePersistentLogs.tooltip=Если вы включите эту опцию, то список запросов не будет очищаться при каждом переходе на новую страницу
+
+# LOCALIZATION NOTE (netmonitor.toolbar.disableCache.label): This is the label
+# displayed for the checkbox for disabling browser cache.
+netmonitor.toolbar.disableCache.label=Отключить кеш
+
+# LOCALIZATION NOTE (netmonitor.toolbar.disableCache.tooltip): This is the tooltip
+# displayed for the checkbox for disabling browser cache.
+netmonitor.toolbar.disableCache.tooltip=Отключить HTTP кеш
+
+# LOCALIZATION NOTE (netmonitor.toolbar.clear): This is the label displayed
+# in the network toolbar for the "Clear" button.
+netmonitor.toolbar.clear=Очистить
+
+# LOCALIZATION NOTE (netmonitor.toolbar.toggleRecording): This is the label displayed
+# in the network toolbar for the toggle recording button.
+netmonitor.toolbar.toggleRecording=Приостановить/возобновить запись сетевого журнала
+
+# LOCALIZATION NOTE (netmonitor.toolbar.search): This is the tooltip label displayed
+# in the network toolbar for the search button.
+netmonitor.toolbar.search=Поиск
+
+# LOCALIZATION NOTE (netmonitor.toolbar.HTTPCustomRequest): This is the tooltip label displayed
+# in the network toolbar for the new HTTP Custom Request button.
+netmonitor.toolbar.HTTPCustomRequest=Новый запрос
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resetColumns): This is the label
+# displayed in the network table header context menu.
+netmonitor.toolbar.resetColumns=Восстановить колонки
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resetSorting): This is the label
+# displayed in the network table header context menu to reset sorting
+netmonitor.toolbar.resetSorting=Сбросить сортировку
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resizeColumnToFitContent): This is the label
+# displayed in the network table header context menu to resize a column to fit its content
+netmonitor.toolbar.resizeColumnToFitContent=Изменить размер столбца для подгонки под содержимое
+
+# LOCALIZATION NOTE (netmonitor.toolbar.resizeColumnToFitContent.title): This is the title
+# tooltip displayed when draggable resizer in network table headers is hovered
+netmonitor.toolbar.resizeColumnToFitContent.title=Двойной щелчок для подгонки столбца к содержимому
+
+# LOCALIZATION NOTE (netmonitor.toolbar.timings): This is the label
+# displayed in the network table header context menu for the timing submenu
+netmonitor.toolbar.timings=Тайминги
+
+# LOCALIZATION NOTE (netmonitor.toolbar.responseHeaders): This is the
+# label displayed in the network table header context menu for the
+# response headers submenu.
+netmonitor.toolbar.responseHeaders=Заголовки ответа
+
+# LOCALIZATION NOTE (netmonitor.headers.toolbar.block): This is the
+# label displayed in the network details headers tab identifying the
+# block url toolbar button.
+netmonitor.headers.toolbar.block=Блокировать
+
+# LOCALIZATION NOTE (netmonitor.headers.address): This is the label displayed
+# in the network details headers tab identifying the remote address.
+netmonitor.headers.address=Адрес
+
+# LOCALIZATION NOTE (netmonitor.headers.proxyAddress): This is the label displayed
+# in the network details headers tab identifying the proxy address.
+netmonitor.headers.proxyAddress=Адрес прокси
+
+# LOCALIZATION NOTE (netmonitor.headers.status): This is the label displayed
+# in the network details headers tab identifying the status code.
+netmonitor.headers.status=Состояние
+
+# LOCALIZATION NOTE (netmonitor.headers.proxyStatus): This is the label displayed
+# in the network details headers tab identifying the status code for the proxy.
+netmonitor.headers.proxyStatus=Статус прокси
+
+# LOCALIZATION NOTE (netmonitor.headers.size): This is the label displayed
+# in the network details headers tab identifying the size.
+netmonitor.headers.size=Размер
+
+# LOCALIZATION NOTE (networkMenu.headers.sizeDetails): This label is displayed
+# in the network details headers tab providing the size details.
+# %1$S is the transferred size, %2$S is the size.
+netmonitor.headers.sizeDetails=%1$S (размер %2$S)
+
+# LOCALIZATION NOTE (netmonitor.headers.version): This is the label displayed
+# in the network details headers tab identifying the http version.
+netmonitor.headers.version=Версия
+
+# LOCALIZATION NOTE (netmonitor.headers.proxyVersion): This is the label displayed
+# in the network details headers tab identifying the http version of the proxy.
+netmonitor.headers.proxyVersion=Версия прокси
+
+# LOCALIZATION NOTE (netmonitor.summary.learnMore): This is the label displayed
+# in the network details headers tab, with a link to external documentation for
+# status codes.
+netmonitor.summary.learnMore=Узнайте больше о кодах состояния
+
+# LOCALIZATION NOTE (netmonitor.headers.referrerPolicy): This is the label displayed
+# in the network details headers tab identifying the referrer policy.
+netmonitor.headers.referrerPolicy=Referrer policy
+
+# LOCALIZATION NOTE (netmonitor.headers.contentBlocking): This is the label displayed
+# in the network details headers tab identifying the content blocking mode.
+netmonitor.headers.contentBlocking=Блокировка
+
+# LOCALIZATION NOTE (netmonitor.headers.requestPriority): This is the label displayed
+# in the network details headers tab identifying the request priority.
+netmonitor.headers.requestPriority=Приоритет запроса
+
+# LOCALIZATION NOTE (netmonitor.headers.dns): This is the label displayed
+# in the network details headers tab identifying the DNS resolution.
+netmonitor.headers.dns=Поиск в DNS
+
+# LOCALIZATION NOTE (netmonitor.headers.dns.basic): This is the label value displayed
+# in the network details headers tab identifying the Basic DNS resolution.
+netmonitor.headers.dns.basic=Система
+
+# LOCALIZATION NOTE (netmonitor.headers.dns.doh): This is the label value displayed
+# in the network details headers tab identifying the DNS over HTTPS resolution.
+netmonitor.headers.dns.overHttps=DNS через HTTPS
+
+# LOCALIZATION NOTE (netmonitor.summary.editAndResend): This is the label displayed
+# on the button in the headers tab that opens a form to edit and resend the currently
+# displayed request
+netmonitor.summary.editAndResend=Изменить и снова отправить
+
+# LOCALIZATION NOTE (netmonitor.headers.raw): This is the label displayed
+# on the button in the headers tab that toggle view for raw request/response headers
+# from the currently displayed request
+netmonitor.headers.raw=Необработанные
+
+# LOCALIZATION NOTE (netmonitor.headers.blockedByCORS): This is the message displayed
+# in the notification shown when a request has been blocked by CORS with a more
+# specific reason shown in the parenthesis
+netmonitor.headers.blockedByCORS=Тело ответа недоступно для сценариев (Причина: %S)
+
+#LOCALIZATION NOTE (netmonitor.headers.blockedByCORSTooltip): This is the tooltip
+# displayed on the learnmore link of the blocked by CORS notification.
+netmonitor.headers.blockedByCORSTooltip=Подробнее об этой ошибке CORS
+
+# LOCALIZATION NOTE (netmonitor.response.name): This is the label displayed
+# in the network details response tab identifying an image's file name or font face's name.
+netmonitor.response.name=Имя:
+
+# LOCALIZATION NOTE (netmonitor.response.dimensions): This is the label displayed
+# in the network details response tab identifying an image's dimensions.
+netmonitor.response.dimensions=Размеры:
+
+# LOCALIZATION NOTE (netmonitor.response.mime): This is the label displayed
+# in the network details response tab identifying an image's or font's MIME type.
+netmonitor.response.mime=MIME-тип:
+
+# LOCALIZATION NOTE (netmonitor.response.fontPreviewFailed): This is the notice displayed
+# in the network details response tab if the font preview could not be generated due to
+# an error.
+netmonitor.response.fontPreviewFailed=Не удалось сгенерировать предпросмотр шрифта
+
+# LOCALIZATION NOTE (netmonitor.timings.blocked): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "blocked" state.
+netmonitor.timings.blocked=Заблокировано:
+
+# LOCALIZATION NOTE (netmonitor.timings.dns): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "dns" state.
+netmonitor.timings.dns=Поиск в DNS:
+
+# LOCALIZATION NOTE (netmonitor.timings.ssl): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "tls" handshake state.
+netmonitor.timings.ssl=Установка TLS:
+
+# LOCALIZATION NOTE (netmonitor.timings.connect): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "connect" state.
+netmonitor.timings.connect=Соединение:
+
+# LOCALIZATION NOTE (netmonitor.timings.send): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "send" state.
+netmonitor.timings.send=Отправка:
+
+# LOCALIZATION NOTE (netmonitor.timings.wait): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "wait" state.
+netmonitor.timings.wait=Ожидание:
+
+# LOCALIZATION NOTE (netmonitor.timings.receive): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# in a "receive" state.
+netmonitor.timings.receive=Получение:
+
+# LOCALIZATION NOTE (netmonitor.timings.launchServiceWorker): This is the label displayed
+# in the network details timings tab identifying the amount of time spent
+# during the launch of the service worker.
+netmonitor.timings.launchServiceWorker=Запуск:
+
+# LOCALIZATION NOTE (netmonitor.timings.requestToServiceWorker): This is the label displayed
+# in the network details timings tab identifying the amount of time spent while a request is
+# made to the service worker.
+netmonitor.timings.requestToServiceWorker=Отправка запроса:
+
+# LOCALIZATION NOTE (netmonitor.timings.handledByServiceWorker): This is the label displayed
+# in the network details timings tab identifying the amount of time spent while a request is
+# handled by the service worker.
+netmonitor.timings.handledByServiceWorker=Обработка запроса:
+
+# LOCALIZATION NOTE (netmonitor.timings.learnMore): This is the label displayed
+# in the network details timings tab, with a link to external documentation
+netmonitor.timings.learnMore=Узнайте больше о таймингах
+
+# LOCALIZATION NOTE (netmonitor.audits.slowIconTooltip): This is the tooltip text displayed
+# in the network request list file column, on the slow icon button.
+# %1$S is the waiting time %2$S is the slow threshold.
+netmonitor.audits.slowIconTooltip=Долгое время ответа сервера (%1$S). Рекомендуемое время ответа не должно превышать %2$S.
+
+# LOCALIZATION NOTE (netmonitor.security.warning.cipher): A tooltip
+# for warning icon that indicates a connection uses insecure cipher suite.
+netmonitor.security.warning.cipher=Шифр, использованный для шифрования, является устаревшим и незащищённым.
+
+# LOCALIZATION NOTE (netmonitor.security.error): This is the label displayed
+# in the security tab if a security error prevented the connection.
+netmonitor.security.error=Произошла ошибка:
+
+# LOCALIZATION NOTE (netmonitor.security.protocolVersion): This is the label displayed
+# in the security tab describing TLS/SSL protocol version.
+netmonitor.security.protocolVersion=Версия протокола:
+
+# LOCALIZATION NOTE (netmonitor.security.cipherSuite): This is the label displayed
+# in the security tab describing the cipher suite used to secure this connection.
+netmonitor.security.cipherSuite=Набор шифров:
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup): This is the label displayed
+# in the security tab describing the key exchange group suite used to secure
+# this connection.
+netmonitor.security.keaGroup=Группа обмена ключами:
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup.none): This is the label
+# displayed in the security tab describing the case when no group was used.
+netmonitor.security.keaGroup.none=нет
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup.custom): This is the label
+# displayed in the security tab describing the case when a custom group was used.
+netmonitor.security.keaGroup.custom=другая
+
+# LOCALIZATION NOTE (netmonitor.security.keaGroup.unknown): This is the value
+# displayed in the security tab describing an unknown group.
+netmonitor.security.keaGroup.unknown=неизвестная группа
+
+# LOCALIZATION NOTE (netmonitor.security.signatureScheme): This is the label
+# displayed in the security tab describing the signature scheme used by for
+# the server certificate in this connection.
+netmonitor.security.signatureScheme=Схема подписи:
+
+# LOCALIZATION NOTE (netmonitor.security.signatureScheme.none): This is the
+# label displayed in the security tab describing the case when no signature
+# was used.
+netmonitor.security.signatureScheme.none=нет
+
+# LOCALIZATION NOTE (netmonitor.security.signatureScheme.unknown): This is the
+# value displayed in the security tab describing an unknown signature scheme.
+netmonitor.security.signatureScheme.unknown=неизвестная схема подписи
+
+# LOCALIZATION NOTE (netmonitor.security.hsts): This is the label displayed
+# in the security tab describing the usage of HTTP Strict Transport Security.
+netmonitor.security.hsts=Форсированное защищённое соединение HTTP (HSTS):
+
+# LOCALIZATION NOTE (netmonitor.security.hpkp): This is the label displayed
+# in the security tab describing the usage of Public Key Pinning.
+netmonitor.security.hpkp=Привязка открытого ключа:
+
+# LOCALIZATION NOTE (netmonitor.security.connection): This is the label displayed
+# in the security tab describing the section containing information related to
+# the secure connection.
+netmonitor.security.connection=Соединение:
+
+# LOCALIZATION NOTE (netmonitor.security.certificate): This is the label displayed
+# in the security tab describing the server certificate section.
+netmonitor.security.certificate=Сертификат:
+
+# LOCALIZATION NOTE (netmonitor.trackingResource.tooltip): This is the label used
+# in the Network monitor panel as a tooltip for tracking resource icon.
+netmonitor.trackingResource.tooltip=Этот URL соответствует известному трекеру и будет заблокирован при включении Блокировки содержимого.
+
+# LOCALIZATION NOTE (netmonitor.trackingResource.enhancedTrackingProtection): This is
+# the label used in the Network monitor panel for showing enhanced tracking protection.
+netmonitor.trackingResource.enhancedTrackingProtection=Улучшенная защита от отслеживания
+
+# LOCALIZATION NOTE (netmonitor.enhancedTrackingProtection.learnMore): This is the label
+# displayed in the network details headers tab, with a link to external documentation for
+# enhanced tracking protection.
+netmonitor.enhancedTrackingProtection.learnMore=Узнать больше об улучшенной защите от отслеживания
+
+# LOCALIZATION NOTE (netmonitor.context.copyValue): This is the label displayed
+# for the copy sub-menu in the context menu for a request
+netmonitor.context.copyValue=Копировать значение
+
+# LOCALIZATION NOTE (netmonitor.context.copyValue.accesskey): This is the access key
+# for the copy menu/sub-menu displayed in the context menu for a request
+netmonitor.context.copyValue.accesskey=з
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrl): This is the label displayed
+# on the context menu that copies the selected request's url
+netmonitor.context.copyUrl=Копировать URL
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrl.accesskey): This is the access key
+# for the Copy URL menu item displayed in the context menu for a request
+netmonitor.context.copyUrl.accesskey=а
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrlParams): This is the label displayed
+# on the context menu that copies the selected request's url parameters
+netmonitor.context.copyUrlParams=Копировать параметры URL
+
+# LOCALIZATION NOTE (netmonitor.context.copyUrlParams.accesskey): This is the access key
+# for the Copy URL Parameters menu item displayed in the context menu for a request
+netmonitor.context.copyUrlParams.accesskey=ы
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestData): This is the label displayed
+# on the context menu that copies the selected request's data
+netmonitor.context.copyRequestData=Копировать данные %S
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestData.accesskey): This is the access key
+# for the Copy POST/PATCH/PUT/DELETE Data menu item displayed in the context menu for a request
+netmonitor.context.copyRequestData.accesskey=ь
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsPowerShell): This is the label displayed
+# on the context menu that copies the selected request as a PowerShell command.
+netmonitor.context.copyAsPowerShell=Копировать как PowerShell
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsPowerShell.accesskey): This is the access key
+# for the Copy as PowerShell menu item displayed in the context menu for a request
+netmonitor.context.copyAsPowerShell.accesskey=S
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsCurl): This is the label displayed
+# on the context menu that copies the selected request as a cURL command.
+# The capitalization is part of the official name and should be used throughout all languages.
+# http://en.wikipedia.org/wiki/CURL
+netmonitor.context.copyAsCurl=Копировать как cURL
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsCurl.accesskey): This is the access key
+# for the Copy as cURL menu item displayed in the context menu for a request
+netmonitor.context.copyAsCurl.accesskey=в
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsCurl.*): This is the template used to add
+# a target platform to the label for "Copy as cURL" command
+# e.g. Copy as cURL (Windows)
+# Localized label for "Copy as cURL": %S
+netmonitor.context.copyAsCurl.win=%S (Windows)
+netmonitor.context.copyAsCurl.win.accesskey=в
+netmonitor.context.copyAsCurl.posix=%S (POSIX)
+netmonitor.context.copyAsCurl.posix.accesskey=P
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsFetch): This is the label displayed
+# on the context menu that copies the selected request as a fetch request.
+netmonitor.context.copyAsFetch=Копировать как Fetch
+
+# LOCALIZATION NOTE (netmonitor.context.copyAsFetch.accesskey): This is the access key
+# for the Copy as fetch menu item displayed in the context menu for a request
+netmonitor.context.copyAsFetch.accesskey=а
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestHeaders): This is the label displayed
+# on the context menu that copies the selected item's request headers
+netmonitor.context.copyRequestHeaders=Копировать заголовки запроса
+
+# LOCALIZATION NOTE (netmonitor.context.copyRequestHeaders.accesskey): This is the access key
+# for the Copy Request Headers menu item displayed in the context menu for a request
+netmonitor.context.copyRequestHeaders.accesskey=з
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponseHeaders): This is the label displayed
+# on the context menu that copies the selected item's response headers
+netmonitor.context.copyResponseHeaders=Копировать заголовки ответа
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponseHeaders.accesskey): This is the access key
+# for the Copy Response Headers menu item displayed in the context menu for a response
+netmonitor.context.copyResponseHeaders.accesskey=о
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponse): This is the label displayed
+# on the context menu that copies the selected response as a string
+netmonitor.context.copyResponse=Копировать ответ
+
+# LOCALIZATION NOTE (netmonitor.context.copyResponse.accesskey): This is the access key
+# for the Copy Response menu item displayed in the context menu for a request
+netmonitor.context.copyResponse.accesskey=и
+
+# LOCALIZATION NOTE (netmonitor.context.copyImageAsDataUri): This is the label displayed
+# on the context menu that copies the selected image as data uri
+netmonitor.context.copyImageAsDataUri=Копировать изображение как URI данных
+
+# LOCALIZATION NOTE (netmonitor.context.copyImageAsDataUri.accesskey): This is the access key
+# for the Copy Image As Data URI menu item displayed in the context menu for a request
+netmonitor.context.copyImageAsDataUri.accesskey=ж
+
+# LOCALIZATION NOTE (netmonitor.context.useAsFetch): This is the label displayed
+# on the context menu that copies the selected request as a fetch command.
+netmonitor.context.useAsFetch=Использовать как Fetch в консоли
+
+# LOCALIZATION NOTE (netmonitor.context.useAsFetch.accesskey): This is the access key
+# for the Copy as fetch menu item displayed in the context menu for a request
+netmonitor.context.useAsFetch.accesskey=н
+
+# LOCALIZATION NOTE (netmonitor.context.saveImageAs): This is the label displayed
+# on the context menu that save the Image
+netmonitor.context.saveImageAs=Сохранить изображение как
+
+# LOCALIZATION NOTE (netmonitor.context.saveImageAs.accesskey): This is the access key
+# for the Copy Image As Data URI menu item displayed in the context menu for a request
+netmonitor.context.saveImageAs.accesskey=з
+
+# LOCALIZATION NOTE (netmonitor.context.copyAll): This is the label displayed
+# on the context menu that copies all data
+netmonitor.context.copyAll=Копировать всё
+
+# LOCALIZATION NOTE (netmonitor.context.copyAll.accesskey): This is the access key
+# for the Copy All menu item displayed in the context menu for a properties view panel
+netmonitor.context.copyAll.accesskey=ё
+
+# LOCALIZATION NOTE (netmonitor.context.copyAllAsHar): This is the label displayed
+# on the context menu that copies all as HAR format
+netmonitor.context.copyAllAsHar=Копировать всё как HAR
+
+# LOCALIZATION NOTE (netmonitor.context.copyAllAsHar.accesskey): This is the access key
+# for the Copy All As HAR menu item displayed in the context menu for a network panel
+netmonitor.context.copyAllAsHar.accesskey=п
+
+# LOCALIZATION NOTE (netmonitor.context.saveAllAsHar): This is the label displayed
+# on the context menu that saves all as HAR format
+netmonitor.context.saveAllAsHar=Сохранить всё как HAR
+
+# LOCALIZATION NOTE (netmonitor.context.saveAllAsHar.accesskey): This is the access key
+# for the Save All As HAR menu item displayed in the context menu for a network panel
+netmonitor.context.saveAllAsHar.accesskey=х
+
+# LOCALIZATION NOTE (netmonitor.context.importHar.accesskey): This is the access key
+# for the Import HAR menu item displayed in the context menu for a network panel
+netmonitor.context.importHar.accesskey=м
+
+# LOCALIZATION NOTE (netmonitor.har.importHarDialogTitle): This is a label
+# used for import file open dialog
+netmonitor.har.importHarDialogTitle=Импорт HAR-файла
+
+# LOCALIZATION NOTE (netmonitor.har.importDialogHARFilter):
+# This string is displayed as a filter for importing HAR file
+netmonitor.har.importDialogHARFilter=HAR-файлы
+
+# LOCALIZATION NOTE (netmonitor.har.importDialogAllFilter):
+# This string is displayed as a filter for importing HAR file
+netmonitor.har.importDialogAllFilter=Все файлы
+
+# LOCALIZATION NOTE (netmonitor.context.resend.label): This is the label displayed
+# on the context menu that resends the currently displayed request immediately
+netmonitor.context.resend.label=Повторить отправку
+
+# LOCALIZATION NOTE (netmonitor.context.resend.accesskey): This is the access key
+# for the "Resend" menu item displayed in the context menu for a request
+netmonitor.context.resend.accesskey=и
+
+# LOCALIZATION NOTE (netmonitor.context.editAndResend): This is the label displayed
+# on the context menu that opens a form to edit and resend the currently
+# displayed request
+netmonitor.context.editAndResend=Изменить и снова отправить
+
+# LOCALIZATION NOTE (netmonitor.context.editAndResend.accesskey): This is the access key
+# for the "Edit and Resend" menu item displayed in the context menu for a request
+netmonitor.context.editAndResend.accesskey=м
+
+# LOCALIZATION NOTE (netmonitor.context.blockURL): This is the label displayed
+# on the context menu that blocks any requests matching the selected request's URL.
+netmonitor.context.blockURL=Заблокировать URL
+
+# LOCALIZATION NOTE (netmonitor.context.unblockURL): This is the label displayed
+# on the context menu that unblocks any requests matching the selected request's URL.
+netmonitor.context.unblockURL=Разблокировать URL
+
+# LOCALIZATION NOTE (netmonitor.context.newTab): This is the label
+# for the Open in New Tab menu item displayed in the context menu of the
+# network container
+netmonitor.context.newTab=Открыть в новой вкладке
+
+# LOCALIZATION NOTE (netmonitor.context.newTab.accesskey): This is the access key
+# for the Open in New Tab menu item displayed in the context menu of the
+# network container
+netmonitor.context.newTab.accesskey=н
+
+# LOCALIZATION NOTE (netmonitor.context.openInDebugger): This is the label
+# for the Open in Debugger menu item displayed in the context menu of the
+# network container
+netmonitor.context.openInDebugger=Открыть в Отладчике
+
+# LOCALIZATION NOTE (netmonitor.context.openInDebugger.accesskey): This is the access key
+# for the Open in Debugger menu item displayed in the context menu of the
+# network container
+netmonitor.context.openInDebugger.accesskey=л
+
+# LOCALIZATION NOTE (netmonitor.context.openInStyleEditor): This is the label
+# for the Open in Style Editor menu item displayed in the context menu of the
+# network container
+netmonitor.context.openInStyleEditor=Открыть в Редакторе стилей
+
+# LOCALIZATION NOTE (netmonitor.context.openInStyleEditor.accesskey): This is
+# the access key for the Open in Style Editor menu item displayed in the
+# context menu of the network container
+netmonitor.context.openInStyleEditor.accesskey=е
+
+# LOCALIZATION NOTE (netmonitor.context.perfTools): This is the label displayed
+# on the context menu that shows the performance analysis tools
+netmonitor.context.perfTools=Запустить анализ производительности…
+
+# LOCALIZATION NOTE (netmonitor.context.perfTools.accesskey): This is the access key
+# for the performance analysis menu item displayed in the context menu for a request
+netmonitor.context.perfTools.accesskey=п
+
+# LOCALIZATION NOTE (netmonitor.custom.newRequest): This is the label displayed
+# as the title of the new custom request form
+netmonitor.custom.newRequest=Новый запрос
+
+# LOCALIZATION NOTE (netmonitor.custom.newRequestMethodLabel): This is the label displayed
+# above the method text input field of the new custom request form
+netmonitor.custom.newRequestMethodLabel=Метод
+
+# LOCALIZATION NOTE (netmonitor.custom.newRequestUrlLabel): This is the label displayed
+# above the url text input field of the new custom request form
+netmonitor.custom.newRequestUrlLabel=URL
+
+# LOCALIZATION NOTE (netmonitor.custom.query): This is the label displayed
+# above the query string entry in the custom request form
+netmonitor.custom.query=Строка запроса:
+
+# LOCALIZATION NOTE (netmonitor.custom.urlParameters): This is the label displayed
+# above the query string entry in the custom request form
+netmonitor.custom.urlParameters=Параметры URL
+
+# LOCALIZATION NOTE (netmonitor.custom.headers): This is the label displayed
+# above the request headers entry in the custom request form
+netmonitor.custom.headers=Заголовки запроса:
+
+# LOCALIZATION NOTE (netmonitor.custom.newRequestHeaders): This is the label displayed
+# above the request headers entry in the new custom request form
+netmonitor.custom.newRequestHeaders=Заголовки
+
+# LOCALIZATION NOTE (netmonitor.custom.placeholder.name): This is the placeholder displayed
+# on the input on the headers and query params on new custom request form
+netmonitor.custom.placeholder.name=имя
+
+# LOCALIZATION NOTE (netmonitor.custom.placeholder.value): This is the placeholder displayed
+# on the input on the headers and query params on new custom request form
+netmonitor.custom.placeholder.value=значение
+
+# LOCALIZATION NOTE (netmonitor.custom.postBody): This is the label displayed
+# above the request body entry in the new custom request form
+netmonitor.custom.postBody=Тело
+
+# LOCALIZATION NOTE (netmonitor.custom.postBody.placeholder): This is the placeholder displayed
+# on the textarea body in the new custom request form
+netmonitor.custom.postBody.placeholder=полезная нагрузка
+
+# LOCALIZATION NOTE (netmonitor.custom.postData): This is the label displayed
+# above the request body entry in the custom request form
+netmonitor.custom.postData=Тело запроса:
+
+# LOCALIZATION NOTE (netmonitor.custom.send): This is the label displayed
+# on the button which sends the custom request
+netmonitor.custom.send=Отправить
+
+# LOCALIZATION NOTE (netmonitor.custom.cancel): This is the label displayed
+# on the button which cancels and closes the custom request form
+netmonitor.custom.cancel=Отмена
+
+# LOCALIZATION NOTE (netmonitor.custom.clear): This is the label displayed
+# on the button which clears the content of the new custom request panel
+netmonitor.custom.clear=Очистить
+
+# LOCALIZATION NOTE (netmonitor.custom.removeItem): This is the
+# tooltip shown over the remove button for headers and query params item
+netmonitor.custom.removeItem=Удалить объект
+
+# LOCALIZATION NOTE (netmonitor.backButton): This is the label displayed
+# on the button which exists the performance statistics view
+netmonitor.backButton=Назад
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.simple): This is the tooltip of the
+# column status code, when request is not being cached or is not from a service worker
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.simple = %1$S %2$S
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.cached): This is the tooltip of
+# the column status code, when the request is cached
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.cached = %1$S %2$S (закешировано)
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.worker): This is the tooltip of
+# the column status code, when the request is from a service worker
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.worker = %1$S %2$S (service worker)
+
+# LOCALIZATION NOTE (netmonitor.status.tooltip.cachedworker): This is the tooltip
+# of the column status code, when the request is cached and is from a service worker
+# %1$S is the status code, %2$S is the status text.
+netmonitor.status.tooltip.cachedworker = %1$S %2$S (закешировано, service worker)
+
+# LOCALIZATION NOTE (netmonitor.label.dropHarFiles): This is a label
+# rendered within the Network panel when *.har file(s) are dragged
+# over the content.
+netmonitor.label.dropHarFiles = Перетащите HAR-файлы сюда
+
+# LOCALIZATION NOTE (netmonitor.label.har): This is a label used
+# as a tooltip for toolbar drop-down button with HAR actions
+netmonitor.label.har=Экспорт/Импорт HAR
+
+# LOCALIZATION NOTE (netmonitor.cache.cache): This is the label text for the parent
+# node in the TreeView.
+netmonitor.cache.cache=Кеш
+
+# LOCALIZATION NOTE (netmonitor.cache.empty): This is the text displayed when cache
+# information is not available.
+netmonitor.cache.empty=Нет информации о кеше
+
+# LOCALIZATION NOTE (netmonitor.cache.notAvailable): This is the text displayed under
+# a node that has no information available.
+netmonitor.cache.notAvailable=Недоступно
+
+# LOCALIZATION NOTE (netmonitor.cache.dataSize): This is the label text for
+# the datasize of the cached object.
+netmonitor.cache.dataSize=Размер данных
+
+# LOCALIZATION NOTE (netmonitor.cache.expires): This is the label text for the
+# expires time of the cached object.
+netmonitor.cache.expires=Действителен до
+
+# LOCALIZATION NOTE (netmonitor.cache.fetchCount): This is the label text for the
+# fetch count of the cached object.
+netmonitor.cache.fetchCount=Число выборок
+
+# LOCALIZATION NOTE (netmonitor.cache.lastFetched): This is the label text for the
+# last fetched date/time of the cached object.
+netmonitor.cache.lastFetched=Последняя выборка
+
+# LOCALIZATION NOTE (netmonitor.cache.lastModified): This is the label text for the
+# last modified date/time of the cached object.
+netmonitor.cache.lastModified=Последнее изменение
+
+# LOCALIZATION NOTE (netmonitor.cache.device): This is the label text for the device
+# where a cached object was fetched from (e.g. "disk").
+netmonitor.cache.device=Устройство
+
+# LOCALIZATION NOTE (netmonitor.settings.menuTooltip): This is the tooltip that gets displayed
+# when the settings menu button is hovered.
+netmonitor.settings.menuTooltip=Параметры сети
+
+# LOCALIZATION NOTE (netmonitor.settings.importHarTooltip): This is the tooltip that gets displayed
+# when the HAR import menu item is hovered
+netmonitor.settings.importHarTooltip=Импорт HAR-файла сетевых данных
+
+# LOCALIZATION NOTE (netmonitor.settings.saveHarTooltip): This is the tooltip that gets displayed
+# when the HAR save menu item is hovered
+netmonitor.settings.saveHarTooltip=Сохранить сетевые данные в HAR-файл
+
+# LOCALIZATION NOTE (netmonitor.settings.copyHarTooltip): This is the tooltip that gets displayed
+# when the HAR copy menu item is hovered
+netmonitor.settings.copyHarTooltip=Копировать сетевые данные в буфер обмена
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/network-throttling.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/network-throttling.properties
new file mode 100644
index 0000000000..2093fc3717
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/network-throttling.properties
@@ -0,0 +1,27 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the NetworkThrottlingMenu
+# component used to throttle network bandwidth.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (responsive.noThrottling): UI option in a menu to configure
+# network throttling. This option is the default and disables throttling so you
+# just have normal network conditions. There is not very much room in the UI
+# so a short string would be best if possible.
+responsive.noThrottling=Без ограничения
+
+# LOCALIZATION NOTE (throttling.profile.description): Tooltip for the throttling
+# menu button, which gives details about the currently selected profile.
+# %1$S: Download speed value (number)
+# %2$S: Download speed unit (eg "Kbps", "Mbps")
+# %3$S: Upload speed value (number)
+# %4$S: Upload speed unit (eg "Kbps", "Mbps")
+# %5$S: Latency value, (number, in ms)
+throttling.profile.description = загрузка %1$S%2$S, выгрузка %3$S%4$S, задержка %5$S мс
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/responsive.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/responsive.properties
new file mode 100644
index 0000000000..d56e8009fd
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/responsive.properties
@@ -0,0 +1,182 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Responsive Design Mode,
+# available from the Web Developer sub-menu -> 'Responsive Design Mode'.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the Responsive Design Mode,
+# available from the Browser Tools sub-menu -> 'Responsive Design Mode'.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (responsive.editDeviceList2): Context menu item displayed in the
+# device selector.
+responsive.editDeviceList2=Изменить список…
+
+# LOCALIZATION NOTE (responsive.exit): Tooltip text of the exit button.
+responsive.exit=Выйти из Режима адаптивного дизайна
+
+# LOCALIZATION NOTE (responsive.rotate): Tooltip text of the rotate button.
+responsive.rotate=Повернуть окно просмотра
+
+# LOCALIZATION NOTE (responsive.responsiveMode): Placeholder text for the
+# device selector.
+responsive.responsiveMode=Адаптивный
+
+# LOCALIZATION NOTE (responsive.enableTouch): Tooltip text for the touch
+# simulation button when it's disabled.
+responsive.enableTouch=Включить эмуляцию сенсорного ввода
+
+# LOCALIZATION NOTE (responsive.disableTouch): Tooltip text for the touch
+# simulation button when it's enabled.
+responsive.disableTouch=Отключить эмуляцию сенсорного ввода
+
+# LOCALIZATION NOTE (responsive.screenshot): Tooltip of the screenshot button.
+responsive.screenshot=Сделать снимок экрана окна просмотра
+
+# LOCALIZATION NOTE (responsive.screenshotGeneratedFilename): The auto generated
+# filename.
+# The first argument (%1$S) is the date string in yyyy-mm-dd format and the
+# second argument (%2$S) is the time string in HH.MM.SS format.
+responsive.screenshotGeneratedFilename=Скриншот сделанный %1$S в %2$S
+
+# LOCALIZATION NOTE (responsive.remoteOnly): Message displayed in the tab's
+# notification box if a user tries to open Responsive Design Mode in a
+# non-remote tab.
+responsive.remoteOnly=Режим адаптивного дизайна доступен только для удалённых вкладок браузера, таких как те, которые используются для веб-содержимого в мультипроцессном Firefox.
+
+# LOCALIZATION NOTE (responsive.changeDevicePixelRatio): Tooltip for the
+# device pixel ratio dropdown when is enabled.
+responsive.changeDevicePixelRatio=Изменить пиксельное соотношение устройства для viewport
+
+# LOCALIZATION NOTE (responsive.devicePixelRatio.auto): Tooltip for the device pixel ratio
+# dropdown when it is disabled because a device is selected.
+# The argument (%1$S) is the selected device (e.g. iPhone 6) that set
+# automatically the device pixel ratio value.
+responsive.devicePixelRatio.auto=Пиксельное соотношение устройства для %1$S выбрано автоматически
+
+# LOCALIZATION NOTE (responsive.customDeviceName): Default value in a form to
+# add a custom device based on an arbitrary size (no association to an existing
+# device).
+responsive.customDeviceName=Другое устройство
+
+# LOCALIZATION NOTE (responsive.customDeviceNameFromBase): Default value in a
+# form to add a custom device based on the properties of another. %1$S is the
+# name of the device we're staring from, such as "Apple iPhone 6".
+responsive.customDeviceNameFromBase=%1$S (Другое)
+
+# LOCALIZATION NOTE (responsive.addDevice2): Button text that reveals a form to
+# be used for adding custom devices.
+responsive.addDevice2=Добавить другое устройство…
+
+# LOCALIZATION NOTE (responsive.deviceAdderName): Label of form field for the
+# name of a new device.
+responsive.deviceAdderName=Имя
+
+# LOCALIZATION NOTE (responsive.deviceAdderSize): Label of form field for the
+# size of a new device.
+responsive.deviceAdderSize=Размер
+
+# LOCALIZATION NOTE (responsive.deviceAdderPixelRatio2): Label of form field for
+# the device pixel ratio of a new device.
+responsive.deviceAdderPixelRatio2=Пиксельное соотношение устройства (DPR)
+
+# LOCALIZATION NOTE (responsive.deviceAdderUserAgent2): Label of form field for
+# the user agent of a new device.
+responsive.deviceAdderUserAgent2=Строка User Agent
+
+# LOCALIZATION NOTE (responsive.deviceAdderTouch2): Label of form field for the
+# touch input support of a new device.
+responsive.deviceAdderTouch2=Сенсорный ввод
+
+# LOCALIZATION NOTE (responsive.deviceAdderSave): Button text that submits a
+# form to add a new device.
+responsive.deviceAdderSave=Сохранить
+
+# LOCALIZATION NOTE (responsive.deviceAdderCancel): Button text that cancels a
+# form to add a new device.
+responsive.deviceAdderCancel=Отмена
+
+# LOCALIZATION NOTE (responsive.deviceDetails): Tooltip that appears when
+# hovering on a device in the device modal. %1$S is the width of the device.
+# %2$S is the height of the device. %3$S is the device pixel ratio value of the
+# device. %4$S is the user agent of the device. %5$S is a boolean value
+# noting whether touch input is supported.
+responsive.deviceDetails=Размер: %1$S x %2$S\nDPR: %3$S\nUA: %4$S\nTouch: %5$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.browserAndOS): Used to display the browser
+# and the OS in a tooltip that appears when hovering on a device in the device modal.
+# %1$S: browser
+# %2$S: OS
+responsive.deviceDetails.browserAndOS=%1$S на %2$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.size): Used to display the pixel
+# size in a tooltip that appears when hovering on a device in the device modal.
+# %1$S: width
+# %2$S: height
+responsive.deviceDetails.size=Размер: %1$S x %2$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.DPR): Used to display the DPR in a tooltip
+# that appears when hovering on a device in the device modal.
+# %1$S: device pixel ratio
+responsive.deviceDetails.DPR=DPR: %1$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.UA): Used to display the UA in a tooltip
+# that appears when hovering on a device in the device modal.
+# %1$S: user agent
+responsive.deviceDetails.UA=UA: %1$S
+
+# LOCALIZATION NOTE (responsive.deviceDetails.touch): Used to display a boolean value
+# which is whether the touch input is supported or not in a tooltip that appears when
+# hovering on a device in the device modal.
+# %1$S: touch
+responsive.deviceDetails.touch=Сенсорный: %1$S
+
+# LOCALIZATION NOTE (responsive.devicePixelRatioOption): UI option in a menu to configure
+# the device pixel ratio. %1$S is the devicePixelRatio value of the device.
+responsive.devicePixelRatioOption=DPR: %1$S
+
+# LOCALIZATION NOTE (responsive.reloadConditions.touchSimulation): Label on checkbox used
+# to select whether to reload when touch simulation is toggled.
+responsive.reloadConditions.touchSimulation=Перезагружать, когда включается/выключается эмуляция сенсорного ввода
+
+# LOCALIZATION NOTE (responsive.reloadConditions.userAgent): Label on checkbox used
+# to select whether to reload when user agent is changed.
+responsive.reloadConditions.userAgent=Перезагружать, когда изменяется user agent
+
+# LOCALIZATION NOTE (responsive.reloadNotification.description2): Text in notification bar
+# shown on first open to clarify that some features need a reload to apply.
+responsive.reloadNotification.description2=Для изменения эмуляции устройства требуется перезагрузка страницы. Автоматические перезагрузки по умолчанию отключены, чтобы избежать потери любых изменений в Инструментах разработчика. Вы можете включить перезагрузку через меню Параметры.
+
+# LOCALIZATION NOTE (responsive.leftAlignViewport): Label on checkbox used in the settings
+# menu.
+responsive.leftAlignViewport=Viewport по левому краю
+
+# LOCALIZATION NOTE (responsive.customUserAgent): This is the placeholder for the user
+# agent input in the responsive design mode toolbar.
+responsive.customUserAgent=Пользовательский User Agent
+
+responsive.showUserAgentInput=Показывать User Agent
+
+# LOCALIZATION NOTE (responsive.deviceSettings): The header text for the device settings
+# view.
+responsive.deviceSettings=Параметры устройства
+
+# LOCALIZATION NOTE (responsive.deviceNameAlreadyInUse): This is the text shown when adding a new
+# device with an already existing device name.
+responsive.deviceNameAlreadyInUse=Имя устройства уже используется
+
+# LOCALIZATION NOTE (responsive.deviceFormUpdate): Button text that updates a custom
+# device when the form is submitted.
+responsive.deviceFormUpdate=Обновить
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/shared.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/shared.properties
new file mode 100644
index 0000000000..77081e3308
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/shared.properties
@@ -0,0 +1,26 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (dimensions): This is used to display the dimensions
+# of a node or image, like 100×200.
+dimensions=%S×%S
+
+# LOCALIZATION NOTE (boxModelSize.accessibleLabel): This is used to read the
+# dimensions of a node by a screen reader. This helps communicate
+# the visual information in a more explicit form. Example:
+# Size: Width 100, height 200.
+boxModelSize.accessibleLabel=Размер: Ширина %1$S, высота %2$S
+
+# LOCALIZATION NOTE (boxModelInfo.accessibleLabel): This is used to read the
+# dimensions and position of a node by a screen reader. This helps communicate
+# the visual information in a more explicit form. Example:
+# Dimensions: Width 100, height 200, position static.
+boxModelInfo.accessibleLabel=Размеры: Ширина %1$S, высота %2$S, позиция %3$S
+
+# LOCALIZATION NOTE (boxModelEditable.accessibleLabel): The string spoken by
+# screen readers for each button in the box model view that opens that property
+# for editing. %1$S is the property displayed in the tooltip when hovering.
+# %2$S is the value that is visually displayed.
+# Example: margin-left: 0.
+boxModelEditable.accessibleLabel=%1$S: %2$S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/sourceeditor.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/sourceeditor.properties
new file mode 100644
index 0000000000..9451f8707e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/sourceeditor.properties
@@ -0,0 +1,117 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Source Editor component.
+# This component is used whenever source code is displayed for the purpose of
+# being edited, inside the Firefox developer tools - current examples are the
+# Scratchpad and the Style Editor tools.
+
+# LOCALIZATION NOTE These strings are used inside the Source Editor component.
+# This component is used whenever source code is displayed for the purpose of
+# being edited, inside the Firefox developer tools (like Style Editor).
+
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (findCmd.promptMessage): This is the message shown when
+# the user wants to search for a string in the code. You can
+# access this feature by pressing Ctrl-F on Windows/Linux or Cmd-F on Mac.
+findCmd.promptMessage=Поиск:
+
+# LOCALIZATION NOTE (gotoLineCmd.promptTitle): This is the dialog title used
+# when the user wants to jump to a specific line number in the code. You can
+# access this feature by pressing Ctrl-J on Windows/Linux or Cmd-J on Mac.
+gotoLineCmd.promptTitle=Перейти к строке…
+
+# LOCALIZATION NOTE (autocompletion.docsLink): This is the text shown on
+# the link inside of the documentation popup. If you type 'document' in Scratchpad
+# then press Shift+Space you can see the popup.
+autocompletion.docsLink=документация
+
+# LOCALIZATION NOTE (autocompletion.notFound): This is the text shown in
+# the documentation popup if Tern fails to find a type for the object.
+autocompletion.notFound=не найдено
+
+# LOCALIZATION NOTE (jumpToLine.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to jump to
+# a specific line in the editor.
+jumpToLine.commandkey=J
+
+# LOCALIZATION NOTE (toggleComment.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to either
+# comment or uncomment selected lines in the editor.
+toggleComment.commandkey=/
+
+# LOCALIZATION NOTE (indentLess.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to reduce
+# indentation level in CodeMirror. However, its default value also used by
+# the Toolbox to switch between tools so we disable it.
+#
+# DO NOT translate this key without proper synchronization with toolbox.dtd.
+indentLess.commandkey=[
+
+# LOCALIZATION NOTE (indentMore.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to increase
+# indentation level in CodeMirror. However, its default value also used by
+# the Toolbox to switch between tools
+#
+# DO NOT translate this key without proper synchronization with toolbox.dtd.
+indentMore.commandkey=]
+
+# LOCALIZATION NOTE (moveLineUp.commandkey): This is the combination of keys
+# used to move the current line up.
+# Do not localize "Alt", "Up", or change the format of the string. These are key
+# identifiers, not messages displayed to the user.
+moveLineUp.commandkey=Alt-Up
+
+# LOCALIZATION NOTE (moveLineDown.commandkey): This is the combination of keys
+# used to move the current line up.
+# Do not localize "Alt", "Down", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+moveLineDown.commandkey=Alt-Down
+
+# LOCALIZATION NOTE (autocompletion.commandkey): This is the key, used with
+# Ctrl, for code autocompletion.
+# Do not localize "Space", it's the key identifier, not a message displayed to
+# the user.
+autocompletion.commandkey=Space
+
+# LOCALIZATION NOTE (showInformation2.commandkey): This is the combination of
+# keys used to display more information, like type inference.
+# Do not localize "Shift", "Ctrl", "Space", or change the format of the string.
+# These are key identifiers, not messages displayed to the user.
+showInformation2.commandkey=Shift-Ctrl-Space
+
+# LOCALIZATION NOTE (find.key):
+# Key shortcut used to find the typed search
+# Do not localize "CmdOrCtrl", "F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+find.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (replaceAll.key):
+# Key shortcut used to replace the content of the editor
+# Do not localize "Shift", "CmdOrCtrl", "F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+replaceAll.key=Shift+CmdOrCtrl+F
+
+# LOCALIZATION NOTE (replaceAllMac.key):
+# Key shortcut used to replace the content of the editor on Mac
+# Do not localize "Alt", "CmdOrCtrl", "F", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+replaceAllMac.key=Alt+CmdOrCtrl+F
+
+# LOCALIZATION NOTE (findNext.key):
+# Key shortcut used to find again the typed search
+# Do not localize "CmdOrCtrl", "G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+findNext.key=CmdOrCtrl+G
+
+# LOCALIZATION NOTE (findPrev.key):
+# Key shortcut used to find the previous typed search
+# Do not localize "Shift", "CmdOrCtrl", "G", or change the format of the string. These are
+# key identifiers, not messages displayed to the user.
+findPrev.key=Shift+CmdOrCtrl+G
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/startup.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/startup.properties
new file mode 100644
index 0000000000..bc80cc7d00
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/startup.properties
@@ -0,0 +1,247 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (optionsButton.tooltip): This is used as the tooltip
+# for the options panel tab.
+optionsButton.tooltip=Настройки инструментов
+
+# LOCALIZATION NOTE (options.label): This is used as the label of the tab in
+# the devtools window.
+options.label=Настройки
+
+# LOCALIZATION NOTE (options.panelLabel): This is used as the label for the
+# toolbox panel.
+options.panelLabel=Панель настроек инструментов
+
+# LOCALIZATION NOTE (options.darkTheme.label2)
+# Used as a label for dark theme
+options.darkTheme.label2=Тёмная
+
+# LOCALIZATION NOTE (options.lightTheme.label2)
+# Used as a label for light theme
+options.lightTheme.label2=Светлая
+
+# LOCALIZATION NOTE (performance.label):
+# This string is displayed in the title of the tab when the profiler is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+performance.label=Профайлер
+
+# LOCALIZATION NOTE (performance.panelLabel):
+# This is used as the label for the toolbox panel.
+performance.panelLabel=Панель профайлера
+
+# LOCALIZATION NOTE (performance.accesskey)
+# Used for the menuitem in the tool menu
+performance.accesskey=о
+
+# LOCALIZATION NOTE (performance.tooltip):
+# This string is displayed in the tooltip of the tab when the profiler is
+# displayed inside the developer tools window.
+# Keyboard shortcut for Performance Tools will be shown inside brackets.
+performance.tooltip=Профайлер (%S)
+
+# LOCALIZATION NOTE (MenuWebconsole.label): the string displayed in the Tools
+# menu as a shortcut to open the devtools with the Web Console tab selected.
+MenuWebconsole.label=Веб-консоль
+
+# LOCALIZATION NOTE (ToolboxTabWebconsole.label): the string displayed as the
+# label of the tab in the devtools window.
+ToolboxTabWebconsole.label=Консоль
+
+# LOCALIZATION NOTE (ToolboxWebConsole.panelLabel): the string used as the
+# label for the toolbox panel.
+ToolboxWebConsole.panelLabel=Панель консоли
+
+# LOCALIZATION NOTE (ToolboxWebconsole.tooltip2): the string displayed in the
+# tooltip of the tab when the Web Console is displayed inside the developer
+# tools window.
+# Keyboard shortcut for Console will be shown inside the brackets.
+ToolboxWebconsole.tooltip2=Веб-консоль (%S)
+
+webConsoleCmd.accesskey=о
+
+# LOCALIZATION NOTE (ToolboxDebugger.label):
+# This string is displayed in the title of the tab when the debugger is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+ToolboxDebugger.label=Отладчик
+
+# LOCALIZATION NOTE (ToolboxDebugger.panelLabel):
+# This is used as the label for the toolbox panel.
+ToolboxDebugger.panelLabel=Панель отладчика
+
+# LOCALIZATION NOTE (ToolboxDebugger.tooltip4):
+# This string is displayed in the tooltip of the tab when the debugger is
+# displayed inside the developer tools window.
+ToolboxDebugger.tooltip4=Отладчик JavaScript (%S)
+
+# LOCALIZATION NOTE (debuggerMenu.accesskey)
+# Used for the menuitem in the tool menu
+debuggerMenu.accesskey=и
+
+# LOCALIZATION NOTE (ToolboxStyleEditor.label):
+# This string is displayed in the title of the tab when the style editor is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+ToolboxStyleEditor.label=Стили
+
+# LOCALIZATION NOTE (ToolboxStyleEditor.panelLabel):
+# This is used as the label for the toolbox panel.
+ToolboxStyleEditor.panelLabel=Панель редактора стилей
+
+# LOCALIZATION NOTE (ToolboxStyleEditor.tooltip3):
+# This string is displayed in the tooltip of the tab when the style editor is
+# displayed inside the developer tools window.
+# A keyboard shortcut for Stylesheet Editor will be shown inside the latter pair of brackets.
+ToolboxStyleEditor.tooltip3=Редактор таблиц стилей (CSS) (%S)
+
+# LOCALIZATION NOTE (open.accesskey): The access key used to open the style
+# editor.
+open.accesskey=л
+
+# LOCALIZATION NOTE (inspector.*)
+# Used for the menuitem in the tool menu
+inspector.label=Инспектор
+inspector.accesskey=п
+
+# LOCALIZATION NOTE (inspector.panelLabel)
+# Labels applied to the panel and views within the panel in the toolbox
+inspector.panelLabel=Панель инспектора
+
+# LOCALIZATION NOTE (inspector.tooltip2)
+# Keyboard shortcut for DOM and Style Inspector will be shown inside brackets.
+inspector.tooltip2=Инспектор DOM и стилей (%S)
+
+# LOCALIZATION NOTE (inspector.mac.tooltip)
+# This is the exact same string as inspector.tooltip2, except that we show it
+# on mac only, where we support toggling the inspector with either cmd+shift+C,
+# or cmd+opt+C
+inspector.mac.tooltip=Инспектор DOM и стилей (%1$S или %2$S)
+
+# LOCALIZATION NOTE (netmonitor.label):
+# This string is displayed in the title of the tab when the Network Monitor is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+netmonitor.label=Сеть
+
+# LOCALIZATION NOTE (netmonitor.panelLabel):
+# This is used as the label for the toolbox panel.
+netmonitor.panelLabel=Панель монитора сети
+
+# LOCALIZATION NOTE (netmonitor.accesskey)
+# Used for the menuitem in the tool menu
+netmonitor.accesskey=е
+
+# LOCALIZATION NOTE (netmonitor.tooltip2):
+# This string is displayed in the tooltip of the tab when the Network Monitor is
+# displayed inside the developer tools window.
+# Keyboard shortcut for Network Monitor will be shown inside the brackets.
+netmonitor.tooltip2=Монитор сети (%S)
+
+# LOCALIZATION NOTE (storage.accesskey): The access key used to open the storage
+# editor.
+storage.accesskey=а
+
+# LOCALIZATION NOTE (storage.label):
+# This string is displayed as the label of the tab in the developer tools window
+storage.label=Хранилище
+
+# LOCALIZATION NOTE (storage.menuLabel):
+# This string is displayed in the Tools menu as a shortcut to open the devtools
+# with the Storage Inspector tab selected.
+storage.menuLabel=Инспектор хранилища
+
+# LOCALIZATION NOTE (storage.panelLabel):
+# This string is used as the aria-label for the iframe of the Storage Inspector
+# tool in developer tools toolbox.
+storage.panelLabel=Панель хранилища
+
+# LOCALIZATION NOTE (storage.tooltip3):
+# This string is displayed in the tooltip of the tab when the storage editor is
+# displayed inside the developer tools window.
+# A keyboard shortcut for Storage Inspector will be shown inside the brackets.
+storage.tooltip3=Инспектор хранилища (Куки, Локальное хранилище, …) (%S)
+
+# LOCALIZATION NOTE (memory.label): This string is displayed in the title of the
+# tab when the memory tool is displayed inside the developer tools window and in
+# the Developer Tools Menu.
+memory.label=Память
+
+# LOCALIZATION NOTE (memory.panelLabel): This is used as the label for the
+# toolbox panel.
+memory.panelLabel=Панель памяти
+
+# LOCALIZATION NOTE (memory.tooltip): This string is displayed in the tooltip of
+# the tab when the memory tool is displayed inside the developer tools window.
+memory.tooltip=Память
+
+# LOCALIZATION NOTE (dom.label):
+# This string is displayed in the title of the tab when the DOM panel is
+# displayed inside the developer tools window and in the Developer Tools Menu.
+dom.label=DOM
+
+# LOCALIZATION NOTE (dom.panelLabel):
+# This is used as the label for the toolbox panel.
+dom.panelLabel=Панель DOM
+
+# LOCALIZATION NOTE (dom.accesskey)
+# Used for the menuitem in the tool menu
+dom.accesskey=D
+
+# LOCALIZATION NOTE (dom.tooltip):
+# This string is displayed in the tooltip of the tab when the DOM is
+# displayed inside the developer tools window.
+# Keyboard shortcut for DOM panel will be shown inside the brackets.
+dom.tooltip=DOM (%S)
+
+# LOCALIZATION NOTE (accessibility.label):
+# This string is displayed in the title of the tab when the Accessibility panel
+# is displayed inside the developer tools window and in the Developer Tools Menu.
+accessibility.label=Поддержка доступности
+
+# LOCALIZATION NOTE (accessibility.panelLabel):
+# This is used as the label for the toolbox panel.
+accessibility.panelLabel=Панель поддержки доступности
+
+# LOCALIZATION NOTE (accessibility.accesskey)
+# Used for the menuitem in the tool menu
+accessibility.accesskey=ж
+
+# LOCALIZATION NOTE (accessibility.tooltip3):
+# This string is displayed in the tooltip of the tab when the Accessibility is
+# displayed inside the developer tools window.
+# Keyboard shortcut for Accessibility panel will be shown inside the brackets.
+accessibility.tooltip3=Поддержка доступности (%S)
+
+# LOCALIZATION NOTE (application.label):
+# This string is displayed in the title of the tab when the Application panel
+# is displayed inside the developer tools window and in the Developer Tools Menu.
+application.label=Приложение
+
+# LOCALIZATION NOTE (application.panelLabel):
+# This is used as the label for the toolbox panel.
+application.panelLabel=Панель приложения
+
+# LOCALIZATION NOTE (application.tooltip):
+# This string is displayed in the tooltip of the tab when the Application panel is
+# displayed inside the developer tools window.
+application.tooltip=Панель приложения
+
+# LOCALIZATION NOTE (toolbox.buttons.responsive):
+# This is the tooltip of the button in the toolbox toolbar that toggles
+# the Responsive mode.
+# Keyboard shortcut will be shown inside brackets.
+toolbox.buttons.responsive = Режим адаптивного дизайна (%S)
+
+# LOCALIZATION NOTE (toolbox.buttons.screenshot):
+# This is the tooltip of the button in the toolbox toolbar that allows you to
+# take a screenshot of the entire page
+toolbox.buttons.screenshot = Сделать снимок экрана всей страницы
+
+# LOCALIZATION NOTE (toolbox.buttons.rulers):
+# This is the tooltip of the button in the toolbox toolbar that toggles the
+# rulers in the page
+toolbox.buttons.rulers = Показать/скрыть линейки на этой странице
+
+# LOCALIZATION NOTE (toolbox.buttons.measure):
+# This is the tooltip of the button in the toolbox toolbar that toggles the
+# measuring tools
+toolbox.buttons.measure = Измерить часть страницы
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/styleeditor.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/styleeditor.properties
new file mode 100644
index 0000000000..a5e7586cf3
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/styleeditor.properties
@@ -0,0 +1,74 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Style Editor.
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (inlineStyleSheet): This is the name used for an style sheet
+# that is declared inline in the <style> element. Shown in the stylesheets list.
+# the argument is the index (order) of the containing <style> element in the
+# document.
+inlineStyleSheet=<inline таблица стилей #%S>
+
+# LOCALIZATION NOTE (newStyleSheet): This is the default name for a new
+# user-created style sheet.
+newStyleSheet=Новая таблица стилей #%S
+
+# LOCALIZATION NOTE (ruleCount.label): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This is shown in the style sheets list.
+# #1 rule.
+# example: 111 rules.
+ruleCount.label=#1 правило;#1 правила;#1 правил
+
+# LOCALIZATION NOTE (error-load): This is shown when loading fails.
+error-load=Не удалось загрузить таблицу стилей.
+
+# LOCALIZATION NOTE (error-save): This is shown when saving fails.
+error-save=Не удалось сохранить таблицу стилей.
+
+# LOCALIZATION NOTE (importStyleSheet.title): This is the file picker title,
+# when you import a style sheet into the Style Editor.
+importStyleSheet.title=Импорт таблицы стилей
+
+# LOCALIZATION NOTE (importStyleSheet.filter): This is the *.css filter title
+importStyleSheet.filter=CSS-файлы
+
+# LOCALIZATION NOTE (saveStyleSheet.title): This is the file picker title,
+# when you save a style sheet from the Style Editor.
+saveStyleSheet.title=Сохранение таблицы стилей
+
+# LOCALIZATION NOTE (saveStyleSheet.filter): This is the *.css filter title
+saveStyleSheet.filter=CSS-файлы
+
+# LOCALIZATION NOTE (saveStyleSheet.commandkey): This the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to Save
+saveStyleSheet.commandkey=S
+
+# LOCALIZATION NOTE (focusFilterInput.commandkey): This is the key to use in
+# conjunction with accel (Command on Mac or Ctrl on other platforms) to focus the
+# filter input. Don't use "F" as it's used by the CodeMirror editor to perform an
+# in-file search; if possible, keep it the same as sources.search.key2.
+focusFilterInput.commandkey=P
+
+# LOCALIZATION NOTE (showOriginalSources.label): This is the label on the context
+# menu item to toggle showing original sources in the editor.
+showOriginalSources.label=Показывать оригинальные исходники
+
+# LOCALIZATION NOTE (showOriginalSources.accesskey): This is the access key for
+# the menu item to toggle showing original sources in the editor.
+showOriginalSources.accesskey=х
+
+# LOCALIZATION NOTE (showAtRulesSidebar.label): This is the label on the context
+# menu item to toggle showing at-rules shortcuts in a sidebar.
+# "@media" and "@supports" should not be translated as they are CSS rule identifiers.
+showAtRulesSidebar.label=Показать боковую панель At-правил (@media, @supports, …)
+
+# LOCALIZATION NOTE (showAtRulesSidebar.accesskey): This is the access key for
+# the menu item to toggle showing the at-rules sidebar.
+showAtRulesSidebar.accesskey=a
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/toolbox.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/toolbox.properties
new file mode 100644
index 0000000000..e11cf0560d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/toolbox.properties
@@ -0,0 +1,267 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (toolbox.titleTemplate1): This is the template
+# used to format the title of the toolbox.
+# The URL of the page being targeted: %1$S.
+toolbox.titleTemplate1=Инструменты разработчика — %1$S
+
+# LOCALIZATION NOTE (toolbox.titleTemplate2): This is the template
+# used to format the title of the toolbox.
+# The page title or other name for the thing being targeted: %1$S
+# The URL of the page being targeted: %2$S.
+toolbox.titleTemplate2=Инструменты разработчика — %1$S — %2$S
+
+# LOCALIZATION NOTE (toolbox.multiProcessBrowserToolboxTitle): Title used for
+# the Browser Toolbox when the pref `devtools.browsertoolbox.fission` is true.
+# This Browser Toolbox allows to debug the parent process as well as the content
+# processes in the same toolbox.
+toolbox.multiProcessBrowserToolboxTitle=Инструменты мультипроцессного браузера
+
+# LOCALIZATION NOTE (toolbox.parentProcessBrowserToolboxTitle): Title used for
+# the Browser Toolbox when the pref `devtools.browsertoolbox.fission` and
+# `devtools.browsertoolbox.scope` is set to "parent-process".
+# This Browser Toolbox allows to debug only the parent process resources.
+toolbox.parentProcessBrowserToolboxTitle=Инструменты родительского процесса браузера
+
+# LOCALIZATION NOTE (toolbox.defaultTitle): This is used as the tool
+# name when no tool is selected.
+toolbox.defaultTitle=Инструменты разработчика
+
+# LOCALIZATION NOTE (toolbox.label): This is used as the label for the
+# toolbox as a whole
+toolbox.label=Инструменты разработчика
+
+# LOCALIZATION NOTE (options.autoTheme.label)
+# Used as a label for auto theme
+options.autoTheme.label=Авто
+
+# LOCALIZATION NOTE (options.toolNotSupportedMarker): This is the template
+# used to add a * marker to the label for the Options Panel tool checkbox for the
+# tool which is not supported for the current toolbox target.
+# The name of the tool: %1$S.
+options.toolNotSupportedMarker=%1$S *
+
+# LOCALIZATION NOTE (toolbox.pickButton.tooltip)
+# This is the tooltip of the element picker button in the toolbox toolbar.
+# %S is the keyboard shortcut that toggles the element picker.
+toolbox.elementPicker.tooltip=Выбрать элемент со страницы (%S)
+
+# LOCALIZATION NOTE (toolbox.pickButton.mac.tooltip)
+# Like toolbox.pickButton.tooltip, but for macOS there are two possible keyboard
+# shortcuts: Cmd+Shift+C or Cmd+Opt+C
+toolbox.elementPicker.mac.tooltip=Выбрать элемент со страницы (%1$S или %2$S)
+
+# LOCALIZATION NOTE (toolbox.androidElementPicker.tooltip)
+# This is the tooltip of the element picker button in the about:devtools-toolbox toolbox toolbar
+# when debugging an Android device
+# %S is the keyboard shortcut that toggles the element picker.
+toolbox.androidElementPicker.tooltip=Выбрать элемент на телефоне Android (%S)
+
+# LOCALIZATION NOTE (toolbox.androidElementPicker.mac.tooltip)
+# Like toolbox.androidElementPicker.tooltip, but for macOS as there are two possible keyboard
+# shortcuts (Cmd+Shift+C or Cmd+Opt+C)
+# %1$S and %2$S are the keyboard shortcuts that toggle the element picker.
+toolbox.androidElementPicker.mac.tooltip=Выбрать элемент на телефоне Android (%1$S или %2$S)
+
+# LOCALIZATION NOTE (toolbox.elementPicker.key)
+# Key shortcut used to toggle the element picker.
+toolbox.elementPicker.key=CmdOrCtrl+Shift+C
+
+# LOCALIZATION NOTE (toolbox.elementPicker.mac.key)
+# Key shortcut used to toggle the element picker for macOS.
+toolbox.elementPicker.mac.key=Cmd+Opt+C
+
+# LOCALIZATION NOTE (toolbox.viewCssSourceInStyleEditor.label)
+# Used as a message in either tooltips or contextual menu items to open the
+# corresponding URL as a css file in the Style-Editor tool.
+# DEV NOTE: Mostly used wherever toolbox.viewSourceInStyleEditorByXX is used.
+toolbox.viewCssSourceInStyleEditor.label=Открыть файл в Редакторе стилей
+
+# LOCALIZATION NOTE (toolbox.viewJsSourceInDebugger.label)
+# Used as a message in either tooltips or contextual menu items to open the
+# corresponding URL as a js file in the Debugger tool.
+# DEV NOTE: Mostly used wherever toolbox.viewSourceInDebugger is used.
+toolbox.viewJsSourceInDebugger.label=Открыть файл в Отладчике
+
+toolbox.resumeOrderWarning=После прикрепления отладчика страница не возобновилась. Чтобы это исправить, пожалуйста, закройте и снова откройте инструменты.
+
+# LOCALIZATION NOTE (toolbox.help.key)
+# Key shortcut used to open the options panel
+toolbox.help.key=F1
+
+# LOCALIZATION NOTE (toolbox.nextTool.key)
+# Key shortcut used to select the next tool
+toolbox.nextTool.key=CmdOrCtrl+]
+
+# LOCALIZATION NOTE (toolbox.previousTool.key)
+# Key shortcut used to select the previous tool
+toolbox.previousTool.key=CmdOrCtrl+[
+
+# LOCALIZATION NOTE (toolbox.zoom*.key)
+# Key shortcuts used to zomm in/out or reset the toolbox
+# Should match full-zoom-*-shortcut values from browserSets.ftl
+toolbox.zoomIn.key=CmdOrCtrl+Plus
+toolbox.zoomIn2.key=CmdOrCtrl+=
+
+toolbox.zoomOut.key=CmdOrCtrl+-
+toolbox.zoomOut2.key=
+
+toolbox.zoomReset.key=CmdOrCtrl+0
+toolbox.zoomReset2.key=
+
+# LOCALIZATION NOTE (toolbox.reload*.key)
+# Key shortcuts used to reload the page
+toolbox.reload.key=CmdOrCtrl+R
+toolbox.reload2.key=F5
+
+# LOCALIZATION NOTE (toolbox.forceReload*.key)
+# Key shortcuts used to force reload of the page by bypassing caches
+toolbox.forceReload.key=CmdOrCtrl+Shift+R
+toolbox.forceReload2.key=CmdOrCtrl+F5
+
+# LOCALIZATION NOTE (toolbox.toggleHost.key)
+# Key shortcut used to move the toolbox in bottom or side of the browser window
+toolbox.toggleHost.key=CmdOrCtrl+Shift+D
+
+# LOCALIZATION NOTE (toolbox.closeToolbox.key) Key shortcut used to close the toolbox
+toolbox.closeToolbox.key=CmdOrCtrl+W
+
+# LOCALIZATION NOTE (toolbox.toggleToolbox.key) Key shortcut used to toggle the toolbox
+toolbox.toggleToolbox.key=CmdOrCtrl+Shift+I
+
+# LOCALIZATION NOTE (toolbox.toggleToolboxOSX.key) Key shortcut used to toggle the toolbox
+toolbox.toggleToolboxOSX.key=CmdOrCtrl+Alt+I
+
+# LOCALIZATION NOTE (toolbox.toggleToolboxF12.key) Key shortcut used to toggle the toolbox
+toolbox.toggleToolboxF12.key=F12
+
+# LOCALIZATION NOTE (toolbox.frames.tooltip): This is the label for
+# the iframes menu list that appears only when the document has some.
+# It allows you to switch the context of the whole toolbox.
+toolbox.frames.tooltip=Выбрать iframe в качестве текущего целевого документа
+
+# LOCALIZATION NOTE (toolbox.frames.disabled.tooltip): This is the title
+# displayed as a tooltip of the iframes menu button, when disabled. The button
+# is normally hidden when no frames are available. But if the user is on the
+# DevTools Options panel, the button is always shown for discoverability.
+toolbox.frames.disabled.tooltip=Эта кнопка доступна только на страницах с несколькими iframe
+
+# LOCALIZATION NOTE (toolbox.showFrames.key)
+# Key shortcut used to show frames menu when 'frames' button is focused
+toolbox.showFrames.key=Alt+Down
+
+# LOCALIZATION NOTE (toolbox.meatballMenu.button.tooltip): This is the tooltip
+# for the "..." button on the developer tools toolbox.
+toolbox.meatballMenu.button.tooltip=Настроить инструменты разработчика и получить помощь
+
+# LOCALIZATION NOTE (toolbox.closebutton.tooltip): This is the tooltip for
+# the close button the developer tools toolbox.
+toolbox.closebutton.tooltip=Закрыть инструменты разработчика
+
+# LOCALIZATION NOTE (toolbox.errorCountButton.tooltip): This is the tooltip for
+# the error count button displayed in the developer tools toolbox.
+toolbox.errorCountButton.tooltip=Показать консоль внизу
+
+# LOCALIZATION NOTE (toolbox.errorCountButton.description): This is the description that
+# will be used for the error count button in the devTools settings panel.
+toolbox.errorCountButton.description=Показать количество ошибок на странице
+
+# LOCALIZATION NOTE (toolbox.sourceMapFailure): This is shown in the web console
+# when there is a failure to fetch or parse a source map.
+# The text of the error: %1$S
+# The URL that caused DevTools to try to fetch a source map: %2$S
+# The URL of the source map itself: %3$S
+toolbox.sourceMapFailure=Ошибка карты кода: %1$S\nURL ресурса: %2$S\nURL карты кода: %3$S
+
+# LOCALIZATION NOTE (toolbox.sourceMapSourceFailure): This is shown in
+# the web console when there is a failure to fetch or parse an
+# original source that was mentioned in a source map.
+# The text of the error: %1$S
+# The URL of the source: %2$S
+toolbox.sourceMapSourceFailure=Ошибка при получении оригинального кода: %1$S\nURL кода: %2$S
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.runtimeLabel): This is displayed as a toolbox
+# header in about:devtools-toolbox. about:devtools-toolbox is used for instance when
+# inspecting tabs in about:debugging.
+# e.g. Mozilla Fennec (65.0a1)
+# The name of runtime: %1$S
+# The version of runtime: %2$S
+toolbox.debugTargetInfo.runtimeLabel=%1$S (%2$S)
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.runtimeLabel.thisRuntime): this is displayed
+# as a toolbox header in about:devtools-toolbox, when inspecting the current Firefox runtime
+# (for instance, when inspecting one of its tabs in about:debugging)
+# e.g. This Firefox (65.0a1)
+# The name of the current runtime/application (brandShorterName): %1$S
+# The version of runtime: %2$S
+toolbox.debugTargetInfo.runtimeLabel.thisRuntime=Этот %1$S (%2$S)
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.tabTitleRemote):
+# Used as the tab title for about:devtools-toolbox when connected to a remote target.
+# The connection type (see toolbox.debugTargetInfo.connection.*): %1$S
+# The target type (see toolbox.debugTargetInfo.targetType.*): %2$S
+# The target name (retrieved from DevTools, eg the extension's name): %3$S
+toolbox.debugTargetInfo.tabTitleRemote=Панель инструментов (%1$S) - %2$S / %3$S
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.tabTitleLocal):
+# Used as the tab title for about:devtools-toolbox when connected to This Firefox.
+# The target type (see toolbox.debugTargetInfo.targetType.*): %1$S
+# The target name (retrieved from DevTools, eg the extension's name): %2$S
+toolbox.debugTargetInfo.tabTitleLocal=Панель инструментов - %1$S / %2$S
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.tabTitleError):
+# Used as the tab title for about:devtools-toolbox when it failed to connect to the
+# target.
+toolbox.debugTargetInfo.tabTitleError=Панель инструментов - произошла ошибка
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.connection.*): This is displayed in the
+# toolbox header in about:devtools-toolbox, to indicate how the connection to the
+# runtime being inspected was made.
+toolbox.debugTargetInfo.connection.usb=USB
+toolbox.debugTargetInfo.connection.network=Сеть
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.reload):
+# Used as the reload button tooltip
+toolbox.debugTargetInfo.reload=Перезагрузить
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.forward):
+# Used as the navigation's "forward" button tooltip
+toolbox.debugTargetInfo.forward=Вперёд
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.back):
+# Used as the navigation's "back" button tooltip
+toolbox.debugTargetInfo.back=Назад
+
+# LOCALIZATION NOTE (toolbox.debugTargetInfo.targetType.*): This is displayed as the
+# alt attribute for an icon in the toolbox header in about:devtools-toolbox,
+# to indicate what is the type of the debug target being inspected.
+toolbox.debugTargetInfo.targetType.extension=Расширение
+toolbox.debugTargetInfo.targetType.process=Процесс
+toolbox.debugTargetInfo.targetType.tab=Вкладка
+toolbox.debugTargetInfo.targetType.worker=Worker
+
+# LOCALIZATION NOTE (browserToolbox.statusMessage): This is the label
+# shown next to status details when the Browser Toolbox fails to connect or
+# appears to be taking a while to do so.
+browserToolbox.statusMessage=Состояние соединения Инструментов браузера:
+
+# LOCALIZATION NOTE (toolbox.debugTargetErrorPage.title): This is the title
+# for the Error view shown by the toolbox when a connection to a debug target
+# could not be made
+toolbox.debugTargetErrorPage.title = Ошибка
+
+# LOCALIZATION NOTE (toolbox.debugTargetErrorPage.description): This is the
+# text that appears in the Error view and explains to the user that an error
+# has happened while trying to connect to a debug target
+toolbox.debugTargetErrorPage.description = Не удалось подключиться к цели отладки. Посмотрите детали ошибки ниже:
+
+# LOCALIZATION NOTE (options.deprecationNotice): This is the text that appears in the
+# settings panel for panel that will be removed in future releases.
+# This entire text is treated as a link to an MDN page.
+options.deprecationNotice=Устарело. Узнать больше…
+
+# LOCALIZATION NOTE (options.enableMultiProcessToolbox): This is the text that appears in the
+# settings panel for the checkbox that enables the Multiprocess Browser Toolbox.
+options.enableMultiProcessToolbox=Включить Инструменты мультипроцессного браузера (потребуется перезапустить Инструменты браузера)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/webconsole.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/webconsole.properties
new file mode 100644
index 0000000000..707da1dbd7
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/client/webconsole.properties
@@ -0,0 +1,605 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+# LOCALIZATION NOTE
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (multiProcessBrowserConsole.title): Title of the Browser
+# Console window when the pref `devtools.browsertoolbox.scope` is set to "everything". This
+# Browser Console will log messages from all processes, not just the the parent
+# process.
+multiProcessBrowserConsole.title=Консоль мультипроцессного браузера
+
+# LOCALIZATION NOTE (parentProcessBrowserConsole.title): Title used for
+# the Browser Console when the pref `devtools.browsertoolbox.scope` is set to "parent-process".
+parentProcessBrowserConsole.title=Консоль родительского процесса браузера
+
+# LOCALIZATION NOTE (timestampFormat): %1$02S = hours (24-hour clock),
+# %2$02S = minutes, %3$02S = seconds, %4$03S = milliseconds.
+timestampFormat=%02S:%02S:%02S.%03S
+
+ConsoleAPIDisabled=API ведения логов веб-консоли (console.log, console.info, console.warn, console.error) был отключен скриптом на этой странице.
+
+# LOCALIZATION NOTE (webConsoleXhrIndicator): the indicator displayed before
+# a URL in the Web Console that was requested using an XMLHttpRequest.
+webConsoleXhrIndicator=XHR
+
+# LOCALIZATION NOTE (webConsoleMoreInfoLabel): the more info tag displayed
+# after security related web console messages.
+webConsoleMoreInfoLabel=Подробнее
+
+# LOCALIZATION NOTE (stacktrace.anonymousFunction): this string is used to
+# display JavaScript functions that have no given name - they are said to be
+# anonymous. Test console.trace() in the webconsole.
+stacktrace.anonymousFunction=<анонимная>
+
+# LOCALIZATION NOTE (stacktrace.asyncStack): this string is used to
+# indicate that a given stack frame has an async parent.
+# %S is the "Async Cause" of the frame.
+stacktrace.asyncStack=(Асинхронный: %S)
+
+# LOCALIZATION NOTE (timeLog): this string is used to display the result of
+# the console.timeLog() call. Parameters: %1$S is the name of the timer, %2$S
+# is the number of milliseconds.
+timeLog=%1$S: %2$Sмс
+
+# LOCALIZATION NOTE (console.timeEnd): this string is used to display the result of
+# the console.timeEnd() call. Parameters: %1$S is the name of the timer, %2$S
+# is the number of milliseconds.
+console.timeEnd=%1$S: %2$Sмс - таймер закончился
+
+# LOCALIZATION NOTE (consoleCleared): this string is displayed when receiving a
+# call to console.clear() to let the user know the previous messages of the
+# console have been removed programmatically.
+consoleCleared=Консоль была очищена.
+
+# LOCALIZATION NOTE (preventedConsoleClear): this string is displayed when receiving a
+# call to console.clear() when the user has the "Persist logs" option enabled, to let the
+# user know the console method call was ignored.
+# "Persist Logs" should be kept in sync with webconsole.console.settings.menu.item.enablePersistentLogs.label
+preventedConsoleClear=console.clear() был запрещён из-за «Непрерывные логи»
+
+# LOCALIZATION NOTE (noCounterLabel): this string is used to display
+# count-messages with no label provided.
+noCounterLabel=<нет метки>
+
+# LOCALIZATION NOTE (counterDoesntExist): this string is displayed when
+# console.countReset() is called with a counter that doesn't exist.
+counterDoesntExist=Счётчик «%S» не существует.
+
+# LOCALIZATION NOTE (noGroupLabel): this string is used to display
+# console.group messages with no label provided.
+noGroupLabel=<нет метки группы>
+
+maxTimersExceeded=Превышено максимально допустимое число таймеров на этой странице.
+timerAlreadyExists=Таймер «%S» уже существует.
+timerDoesntExist=Таймер «%S» не существует.
+timerJSError=Не удалось обработать имя таймера.
+
+# LOCALIZATION NOTE (connectionTimeout): message displayed when the Remote Web
+# Console fails to connect to the server due to a timeout.
+connectionTimeout=Время ожидания соединения истекло. Проверьте Консоль ошибок на обоих концах на наличие сообщений о потенциальных ошибках. Закройте и откройте веб-консоль, чтобы попробовать снова.
+
+# LOCALIZATION NOTE (propertiesFilterPlaceholder): this is the text that
+# appears in the filter text box for the properties view container.
+propertiesFilterPlaceholder=Поиск свойств
+
+# LOCALIZATION NOTE (messageRepeats.tooltip2): the tooltip text that is displayed
+# when you hover the red bubble that shows how many times a message is repeated
+# in the web console output.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of message repeats
+# example: 3 repeats
+messageRepeats.tooltip2=#1 повтор;#1 повтора;#1 повторов
+
+# LOCALIZATION NOTE (openNodeInInspector): the text that is displayed in a
+# tooltip when hovering over the inspector icon next to a DOM Node in the console
+# output
+openNodeInInspector=Щёлкните, чтобы выбрать узел в инспекторе
+
+# LOCALIZATION NOTE (selfxss.msg): the text that is displayed when
+# a new user of the developer tools pastes code into the console
+# %1 is the text of selfxss.okstring
+selfxss.msg=Предупреждение о возможном мошенничестве: Будьте осторожны при вставке того, чего вы не понимаете. Этим могут воспользоваться злоумышленники для кражи вашей личности или взятия под контроль вашего компьютера. Пожалуйста, введите ниже «%S» (нет необходимости нажимать Enter), чтобы разрешить вставку.
+
+# LOCALIZATION NOTE (selfxss.okstring): the string to be typed
+# in by a new user of the developer tools when they receive the sefxss.msg prompt.
+# Please avoid using non-keyboard characters here
+selfxss.okstring=разрешить вставку
+
+# LOCALIZATION NOTE (evaluationNotifcation.noOriginalVariableMapping.msg): the text for the notification message that is displayed
+# in the console when the debugger is paused in a non-pretty printed original file and original variable mapping is turned off.
+# `Show original variables` should be kept in sync with the checkbox label in the Scopes panel header.
+evaluationNotifcation.noOriginalVariableMapping.msg=Сопоставление имен исходных переменных в отладчике отключено. Результаты оценки могут быть неточными. Установите флажок «Показать исходные переменные» на панели областей отладчика, чтобы включить его.
+
+# LOCALIZATION NOTE (messageToggleDetails): the text that is displayed when
+# you hover the arrow for expanding/collapsing the message details. For
+# console.error() and other messages we show the stacktrace.
+messageToggleDetails=Показать/скрыть детали сообщения.
+
+# LOCALIZATION NOTE (groupToggle): the text that is displayed when
+# you hover the arrow for expanding/collapsing the messages of a group.
+groupToggle=Показать/скрыть группу.
+
+# LOCALIZATION NOTE (table.index, table.iterationIndex, table.key, table.value):
+# the column header displayed in the console table widget.
+table.index=(индекс)
+table.iterationIndex=(индекс итерации)
+table.key=Key
+table.value=Значения
+
+# LOCALIZATION NOTE (level.error, level.warn, level.info, level.log, level.debug, level.jstracer):
+# tooltip for icons next to console output.
+# "level.jstracer" isn't related to console.api call, but rather to the JavaScript Tracer,
+# each item represents a function call being logged in the console.
+level.error=Ошибка
+level.warn=Предупреждение
+level.info=Инфо
+level.log=Лог
+level.debug=Отладка
+
+level.jstracer=Вызов функции
+
+# LOCALIZATION NOTE (logpoint.title)
+# Tooltip shown for logpoints sent from the debugger
+logpoint.title=Точки логгирования из отладчика
+
+# LOCALIZATION NOTE (logtrace.title)
+# Tooltip shown for JavaScript tracing logs
+logtrace.title=Трассировка JavaScript
+
+# LOCALIZATION NOTE (blockedReason.title)
+# Tooltip shown for blocked network events sent from the network panel
+blockedrequest.label=Заблокировано Инструментами разработчика
+
+# LOCALIZATION NOTE (webconsole.disableIcon.title)
+# Tooltip shown for disabled console messages
+webconsole.disableIcon.title=Это сообщение более не активно, сведения о сообщении недоступны
+
+# LOCALIZATION NOTE (command.title)
+# Tooltip shown for console input evaluated code displayed in the console output
+command.title=Вычисленный код
+
+# LOCALIZATION NOTE (result.title)
+# Tooltip shown for evaluation result displayed in the console output
+result.title=Вычисленный результат
+
+# LOCALIZATION NOTE (webconsole.find.key)
+# Key shortcut used to focus the search box on upper right of the console
+webconsole.find.key=CmdOrCtrl+F
+
+# LOCALIZATION NOTE (webconsole.close.key)
+# Key shortcut used to close the Browser console (doesn't work in regular web console)
+webconsole.close.key=CmdOrCtrl+W
+
+# LOCALIZATION NOTE (webconsole.clear.key*)
+# Key shortcut used to clear the console output
+webconsole.clear.key=Ctrl+Shift+L
+webconsole.clear.keyOSX=Ctrl+L
+webconsole.clear.alternativeKeyOSX=Cmd+K
+
+# LOCALIZATION NOTE (webconsole.menu.copyURL.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# copies the URL displayed in the message to the clipboard.
+webconsole.menu.copyURL.label=Копировать ссылку
+webconsole.menu.copyURL.accesskey=о
+
+# LOCALIZATION NOTE (webconsole.menu.openURL.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# opens the URL displayed in a new browser tab.
+webconsole.menu.openURL.label=Открыть URL в новой вкладке
+webconsole.menu.openURL.accesskey=ы
+
+# LOCALIZATION NOTE (webconsole.menu.openInNetworkPanel.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# opens the network message in the Network panel
+webconsole.menu.openInNetworkPanel.label=Открыть в Панели Сеть
+webconsole.menu.openInNetworkPanel.accesskey=ь
+
+# LOCALIZATION NOTE (webconsole.menu.resendNetworkRequest.label)
+# Label used for a context-menu item displayed for network message logs. Clicking on it
+# resends the network request
+webconsole.menu.resendNetworkRequest.label=Снова отправить запрос
+webconsole.menu.resendNetworkRequest.accesskey=а
+
+# LOCALIZATION NOTE (webconsole.menu.openNodeInInspector.label)
+# Label used for a context-menu item displayed for DOM Node logs. Clicking on it will
+# reveal that specific DOM Node in the Inspector.
+webconsole.menu.openNodeInInspector.label=Показать в Инспекторе
+webconsole.menu.openNodeInInspector.accesskey=з
+
+# LOCALIZATION NOTE (webconsole.menu.storeAsGlobalVar.label)
+# Label used for a context-menu item displayed for object/variable logs. Clicking on it
+# creates a new global variable pointing to the logged variable.
+webconsole.menu.storeAsGlobalVar.label=Хранить как глобальную переменную
+webconsole.menu.storeAsGlobalVar.accesskey=н
+
+# LOCALIZATION NOTE (webconsole.menu.copyMessage.label)
+# Label used for a context-menu item displayed for any log. Clicking on it will copy the
+# content of the log (or the user selection, if any).
+webconsole.menu.copyMessage.label=Копировать сообщение
+webconsole.menu.copyMessage.accesskey=и
+
+# LOCALIZATION NOTE (webconsole.menu.copyObject.label)
+# Label used for a context-menu item displayed for object/variable log. Clicking on it
+# will copy the object/variable.
+webconsole.menu.copyObject.label=Копировать объект
+webconsole.menu.copyObject.accesskey=о
+
+# LOCALIZATION NOTE (webconsole.menu.openInSidebar.label)
+# Label used for a context-menu item displayed for object/variable logs. Clicking on it
+# opens the webconsole sidebar for the logged variable.
+webconsole.menu.openInSidebar.label1=Инспектировать объект на боковой панели
+webconsole.menu.openInSidebar.accesskey=в
+
+# LOCALIZATION NOTE (webconsole.menu.copyAllMessages.label)
+# Label used for a context-menu item displayed on the output. Clicking on it
+# copies the entire output of the console to the clipboard.
+webconsole.menu.copyAllMessages.label=Копировать все сообщения
+webconsole.menu.copyAllMessages.accesskey=е
+
+# LOCALIZATION NOTE (webconsole.menu.saveAllMessagesFile.label)
+# Label used for a context-menu item displayed on the output. Clicking on it
+# opens a file picker to allow the user save a file containing
+# the output of the console.
+webconsole.menu.saveAllMessagesFile.label=Сохранить все сообщения в файл
+webconsole.menu.saveAllMessagesFile.accesskey=ф
+
+# LOCALIZATION NOTE (webconsole.clearButton.tooltip)
+# Label used for the tooltip on the clear logs button in the console top toolbar bar.
+# Clicking on it will clear the content of the console.
+webconsole.clearButton.tooltip=Очистить вывод веб-консоли
+
+# LOCALIZATION NOTE (webconsole.toggleFilterButton.tooltip)
+# Label used for the tooltip on the toggle filter bar button in the console top
+# toolbar bar. Clicking on it will toggle the visibility of an additional bar which
+# contains filter buttons.
+webconsole.toggleFilterButton.tooltip=Показать/скрыть панель фильтра
+
+# LOCALIZATION NOTE (webconsole.filterInput.placeholder)
+# Label used for for the placeholder on the filter input, in the console top toolbar.
+webconsole.filterInput.placeholder=Поиск в консоли
+
+# LOCALIZATION NOTE (webconsole.errorsFilterButton.label)
+# Label used as the text of the "Errors" button in the additional filter toolbar.
+# It shows or hides error messages, either inserted in the page using
+# console.error() or as a result of a javascript error..
+webconsole.errorsFilterButton.label=Ошибки
+
+# LOCALIZATION NOTE (webconsole.warningsFilterButton.label)
+# Label used as the text of the "Warnings" button in the additional filter toolbar.
+# It shows or hides warning messages, inserted in the page using console.warn().
+webconsole.warningsFilterButton.label=Предупреждения
+
+# LOCALIZATION NOTE (webconsole.logsFilterButton.label)
+# Label used as the text of the "Logs" button in the additional filter toolbar.
+# It shows or hides log messages, inserted in the page using console.log().
+webconsole.logsFilterButton.label=Лог
+
+# LOCALIZATION NOTE (webconsole.infoFilterButton.label)
+# Label used as the text of the "Info" button in the additional filter toolbar.
+# It shows or hides info messages, inserted in the page using console.info().
+webconsole.infoFilterButton.label=Инфо
+
+# LOCALIZATION NOTE (webconsole.debugFilterButton.label)
+# Label used as the text of the "Debug" button in the additional filter toolbar.
+# It shows or hides debug messages, inserted in the page using console.debug().
+webconsole.debugFilterButton.label=Отладка
+
+# LOCALIZATION NOTE (webconsole.cssFilterButton.label)
+# Label used as the text of the "CSS" button in the additional filter toolbar.
+# It shows or hides CSS warning messages, inserted in the page by the browser
+# when there are CSS errors in the page.
+webconsole.cssFilterButton.label=CSS
+
+# LOCALIZATION NOTE (webconsole.cssFilterButton.inactive.tooltip)
+# Label used as the tooltip of the "CSS" button in the additional filter toolbar, when the
+# filter is inactive (=unchecked).
+webconsole.cssFilterButton.inactive.tooltip=Таблицы стилей будут повторно обработаны для проверки на ошибки. Обновите страницу, чтобы увидеть ошибки в таблицах стилей, изменённых из Javascript.
+
+# LOCALIZATION NOTE (webconsole.xhrFilterButton.label)
+# Label used as the text of the "XHR" button in the additional filter toolbar.
+# It shows or hides messages displayed when the page makes an XMLHttpRequest or
+# a fetch call.
+webconsole.xhrFilterButton.label=XHR
+
+# LOCALIZATION NOTE (webconsole.requestsFilterButton.label)
+# Label used as the text of the "Requests" button in the additional filter toolbar.
+# It shows or hides messages displayed when the page makes a network call, for example
+# when an image or a scripts is requested.
+webconsole.requestsFilterButton.label=Запросы
+
+# LOCALIZATION NOTE (webconsole.filteredMessagesByText.label)
+# Text on the filter input displayed when some console messages are hidden because the
+# user has filled in the input.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# example: 345 hidden.
+webconsole.filteredMessagesByText.label=#1 скрыто;#1 скрыты;#1 скрыты
+
+# LOCALIZATION NOTE (webconsole.filteredMessagesByText.tooltip)
+# Tooltip on the filter input "hidden" text, displayed when some console messages are
+# hidden because the user has filled in the input.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# example: 345 items hidden by text filter.
+webconsole.filteredMessagesByText.tooltip=#1 элемент скрыт текстовым фильтром;#1 элемента скрыто текстовым фильтром;#1 элементов скрыто текстовым фильтром
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.menuButton.tooltip)
+# Tooltip for the filter bar preferences menu. This menu will display multiple perefences for the
+# filter bar, such as enabling the compact toolbar mode, enable the timestamps, persist logs, etc
+webconsole.console.settings.menu.button.tooltip=Настройки консоли
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.compactToolbar.label)
+# Label for the `Compact Toolbar` preference option. This will turn the message filters buttons
+# into a Menu Button, making the filter bar more compact.
+webconsole.console.settings.menu.item.compactToolbar.label=Компактная панель инструментов
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.timestamps.label)
+# Label for enabling the timestamps in the Web Console.
+webconsole.console.settings.menu.item.timestamps.label=Показывать метки времени
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.timestamps.tooltip)
+webconsole.console.settings.menu.item.timestamps.tooltip=Если вы включите эту настройку, команды и вывод в Веб-консоли будут сопровождаться метками времени
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.warningGroups.label)
+# Label for grouping the similar messages in the Web Console
+webconsole.console.settings.menu.item.warningGroups.label=Группировать похожие сообщения
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.warningGroups.tooltip)
+webconsole.console.settings.menu.item.warningGroups.tooltip=Когда включено, похожие сообщения объединяются в группы
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.autocomplete.label)
+# Label for enabling autocomplete for input in the Web Console
+webconsole.console.settings.menu.item.autocomplete.label=Включить автодополнение
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.autocomplete.tooltip)
+webconsole.console.settings.menu.item.autocomplete.tooltip=Если включить эту опцию, автодополнение будет предлагаться сразу же по мере ввода
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.enablePersistentLogs.label)
+webconsole.console.settings.menu.item.enablePersistentLogs.label=Непрерывные логи
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.enablePersistentLogs.tooltip)
+webconsole.console.settings.menu.item.enablePersistentLogs.tooltip=Если вы включите эту опцию, то консоль не будет очищаться при каждом переходе на новую страницу
+
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.instantEvaluation.label)
+webconsole.console.settings.menu.item.instantEvaluation.label=Мгновенное вычисление
+# LOCALIZATION NOTE (webconsole.console.settings.menu.item.instantEvaluation.tooltip)
+webconsole.console.settings.menu.item.instantEvaluation.tooltip=Если включить эту опцию, вводимое выражение будет вычисляться сразу же по мере ввода
+
+# LOCALIZATION NOTE (browserconsole.enableNetworkMonitoring.label)
+# Label used in the browser console / browser toolbox console. This label is used for a checkbox that
+# allows the user enable monitoring of network requests.
+browserconsole.enableNetworkMonitoring.label=Включить мониторинг сети
+# LOCALIZATION NOTE (browserconsole.enableNetworkMonitoring.tooltip)
+# Tooltip for the "Enable Network Monitoring" check item.
+browserconsole.enableNetworkMonitoring.tooltip=Включите это, чтобы начать мониторинг сетевых запросов
+
+# LOCALIZATION NOTE (webconsole.navigated): this string is used in the console when the
+# current inspected page is navigated to a new location.
+# Parameters: %S is the new URL.
+webconsole.navigated=Перешёл на %S
+
+# LOCALIZATION NOTE (webconsole.closeSplitConsoleButton.tooltip): This is the tooltip for
+# the close button of the split console.
+webconsole.closeSplitConsoleButton.tooltip=Закрыть консоль внизу (Esc)
+
+# LOCALIZATION NOTE (webconsole.closeSidebarButton.tooltip): This is the tooltip for
+# the close button of the sidebar.
+webconsole.closeSidebarButton.tooltip=Закрыть боковую панель
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.input.placeHolder):
+# This string is displayed in the placeholder of the reverse search input in the console.
+webconsole.reverseSearch.input.placeHolder=Поиск в журнале
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.result.closeButton.tooltip):
+# This string is displayed in the tooltip of the close button in the reverse search toolbar.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.reverseSearch.closeButton.tooltip=Закрыть (%S)
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.results):
+# This string is displayed in the reverse search UI when there are at least one result
+# to the search.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 index of current search result displayed.
+# #2 total number of search results.
+webconsole.reverseSearch.results=#1 результат из #2;#1 результата из #2;#1 результатов из #2
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.noResult):
+# This string is displayed in the reverse search UI when there is no results to the search.
+webconsole.reverseSearch.noResult=Нет результатов
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.result.previousButton.tooltip):
+# This string is displayed in the tooltip of the "previous result" button in the reverse search toolbar.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.reverseSearch.result.previousButton.tooltip=Предыдущий результат (%S)
+
+# LOCALIZATION NOTE (webconsole.reverseSearch.result.nextButton.tooltip):
+# This string is displayed in the tooltip of the "next result" button in the reverse search toolbar.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.reverseSearch.result.nextButton.tooltip=Следующий результат (%S)
+
+# LOCALIZATION NOTE (webconsole.confirmDialog.getter.label)
+# Label used for the "invoke getter" confirm dialog that appears in the console when
+# a user tries to autocomplete a property with a getter.
+# Example: given the following object `x = {get y() {}}`, when the user types `x.y.`, it
+# would return "Invoke getter y to retrieve the property list?".
+# Parameters: %S is the name of the getter.
+webconsole.confirmDialog.getter.label=Вызвать геттер %S, чтобы получить список свойств?
+
+# LOCALIZATION NOTE (webconsole.confirmDialog.getter.invokeButtonLabelWithShortcut)
+# Label used for the confirm button in the "invoke getter" dialog that appears in the
+# console when a user tries to autocomplete a property with a getter.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.confirmDialog.getter.invokeButtonLabelWithShortcut=Вызвать (%S)
+
+# LOCALIZATION NOTE (webconsole.confirmDialog.getter.closeButton.tooltip)
+# Label used as the tooltip for the close button in the "invoke getter" dialog that
+# appears in the console when a user tries to autocomplete a property with a getter.
+# A keyboard shortcut will be shown inside the latter pair of brackets.
+webconsole.confirmDialog.getter.closeButton.tooltip=Закрыть (%S)
+
+# LOCALIZATION NOTE (webconsole.cssWarningElements.label)
+# Label for the list of HTML elements matching the selector associated
+# with the CSS warning. Parameters: %S is the CSS selector.
+webconsole.cssWarningElements.label=Элементы, соответствующие селектору: %S
+
+# LOCALIZATION NOTE (webconsole.message.componentDidCatch.label)
+# Label displayed when the webconsole couldn't handle a given packet.
+# Parameters: %S is the URL to file a bug about the error.
+webconsole.message.componentDidCatch.label=[ОШИБКА ИНСТРУМЕНТОВ РАЗРАБОТЧИКА] К сожалению, нам не удалось отобразить сообщение. Такое не должно было произойти. Пожалуйста, сообщите об ошибке на %S, добавив метаданные сообщения.
+
+# LOCALIZATION NOTE (webconsole.message.commands.copyValueToClipboard)
+# Label displayed when the string is copied to the clipboard as a result of a copy command,
+# in the console, for example, copy({hello: "world"}).
+webconsole.message.commands.copyValueToClipboard=Строка скопирована в буфер обмена.
+
+# LOCALIZATION NOTE (webconsole.message.commands.startTracingToWebConsole)
+# Label displayed when :trace command was executed and the JavaScript tracer started to log to the web console.
+webconsole.message.commands.startTracingToWebConsole=Запущена трассировка в Веб-консоль
+
+# LOCALIZATION NOTE (webconsole.message.commands.startTracingToStdout)
+# Label displayed when :trace command was executed and the JavaScript tracer started to log to stdout.
+webconsole.message.commands.startTracingToStdout=Запущена трассировка в stdout
+
+# LOCALIZATION NOTE (webconsole.message.commands.startTracingToProfiler)
+# Label displayed when :trace command was executed and the JavaScript tracer will open the profiler showing all the traces,
+# but only on stop.
+webconsole.message.commands.startTracingToProfiler=Началась трассировка в Profiler. Трассировки будут отображаться в профайлере при остановке.
+
+# LOCALIZATION NOTE (webconsole.message.commands.stopTracing)
+# Label displayed when :trace command was executed and the JavaScript tracer stopped.
+webconsole.message.commands.stopTracing=Трассировка остановлена
+
+# LOCALIZATION NOTE (webconsole.error.commands.copyError):
+# the error that is displayed when the "copy" command can't stringify an object
+# "copy" should not be translated, because is a function name.
+# Parameters: %S is the original error message
+webconsole.error.commands.copyError=Не удалось выполнить команду «copy», объект не может быть преобразован в строку: %S
+
+# LOCALIZATION NOTE (webconsole.message.commands.blockedUR)
+# Label displayed when the :block <url> command is successful
+# Parameters: %S is the URL filter
+webconsole.message.commands.blockedURL=Запросы к URL-адресу, содержащему «%S», теперь блокируются
+
+# LOCALIZATION NOTE (webconsole.message.commands.unblockedURL)
+# Label displayed when the :unblock <url> command is successful
+# Parameters: %S is the URL filter
+webconsole.message.commands.unblockedURL=Удалён блокирующий фильтр «%S»
+
+# LOCALIZATION NOTE (webconsole.messages.commands.blockArgMissing)
+# Message displayed when no filter is passed to block/unblock command
+webconsole.messages.commands.blockArgMissing=Ни одного фильтра не было указано
+
+# LOCALIZATION NOTE (webconsole.message.componentDidCatch.copyButton.label)
+# Label displayed on the button next to the message we display when the webconsole
+# couldn't handle a given packet (See webconsole.message.componentDidCatch.label).
+webconsole.message.componentDidCatch.copyButton.label=Копировать метаданные сообщения в буфер обмена
+
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.label)
+# Label used for the text of the execute button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.executeButton.label=Запустить
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.reverseSearchButton.openReverseSearch.tooltip)
+# Label used for the tooltip on the reverse search button for opening the Reverse Search UI.
+# The Reverse Search is a feature that mimics the bash-like reverse search of
+# command history in WebConsole, searching commands from the last item backwards.
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.reverseSearchButton.openReverseSearch.tooltip=Открыть поиск по истории консоли (%S)
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.reverseSearchButton.closeReverseSearch.tooltip)
+# Label used for the tooltip on the reverse search button for closing the Reverse Search UI.
+# The Reverse Search is a feature that mimics the bash-like reverse search of
+# command history in WebConsole, searching commands from the last item backwards.
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.reverseSearchButton.closeReverseSearch.tooltip=Закрыть поиск по истории консоли (%S)
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.tooltip)
+# Label used for the tooltip on the execute button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.executeButton.tooltip=Запустить выражение (%S). Ввод очищен не будет.
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.prettyPrintButton.tooltip)
+# Label used for the tooltip on the prettyPrint button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.prettyPrintButton.tooltip=Выражение «красивой» печати
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.tooltip)
+# Label used for the tooltip on the history previous expression, in the editor toolbar,
+# which is displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.history.prevExpressionButton.tooltip=Предыдущее выражение
+
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.executeButton.tooltip)
+# Label used for the tooltip on the history next expression, in the editor toolbar,
+# which is displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+webconsole.editor.toolbar.history.nextExpressionButton.tooltip=Следующее выражение
+
+# LOCALIZATION NOTE (webconsole.editor.toolbar.closeButton.tooltip2)
+# Label used for the tooltip on the close button, in the editor toolbar, which is
+# displayed when the editor mode is enabled (devtools.webconsole.input.editor=true).
+# Parameters: %S is the keyboard shortcut.
+webconsole.editor.toolbar.closeButton.tooltip2=Вернуться в однострочный режим (%S)
+
+# LOCALIZATION NOTE (webconsole.input.openEditorButton.tooltip2)
+# Label used for the tooltip on the open editor button, in console input, which is
+# displayed when the console is in regular mode.
+# Parameters: %S is the keyboard shortcut.
+webconsole.input.openEditorButton.tooltip2=Переключиться в многострочный режим (%S)
+
+# LOCALIZATION NOTE (webconsole.warningGroup.messageCount.tooltip): the tooltip text
+# displayed when you hover a warning group badge (i.e. repeated warning messages for a
+# given category, for example Content Blocked messages) in the web console output.
+# This is a semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of message in the group.
+# example: 3 messages
+webconsole.warningGroup.messageCount.tooltip=#1 сообщение;#1 сообщения;#1 сообщений
+
+# LOCALIZATION NOTE (webconsole.input.editor.onboarding.label): the text that is displayed
+# when displaying the multiline-input mode for the first time, until the user dismiss the
+# text.
+# Parameters: %1$S is Enter key, %2$S is the shortcut to evaluate the expression (
+# Ctrl+Enter or Cmd+Enter on OSX).
+webconsole.input.editor.onboarding.label=Запускайте ваш код быстрее с новым многострочным режимом. Используйте %1$S для перехода на новую строку и %2$S для запуска.
+
+# LOCALIZATION NOTE (webconsole.input.editor.onboarding.dismiss.label): the text that is
+# displayed in the multiline-input mode onboarding UI to dismiss it.
+webconsole.input.editor.onboarding.dismiss.label=Понятно!
+
+# LOCALIZATION NOTE (webconsole.enterKey): The text that will be used to represent the
+# Enter key in the editor onboarding UI, as well as on the Editor toolbar "Run" button
+# tooltip.
+webconsole.enterKey=Enter
+
+# LOCALIZATION NOTE (webconsole.input.openJavaScriptFile): This is a label
+# used for opening a file in the console input (Ctrl+O or Cmd+O on OSX while
+# being focused on the input).
+webconsole.input.openJavaScriptFile=Открыть файл JavaScript
+
+# LOCALIZATION NOTE (webconsole.input.openJavaScriptFileFilter):
+# This string is displayed as a filter when opening a file in the console input.
+webconsole.input.openJavaScriptFileFilter=Файлы JavaScript
+
+# LOCALIZATION NOTE (webconsole.input.selector.top): This is the term used
+# to describe the primary thread of execution in the page
+webconsole.input.selector.top=Первичная
+
+# LOCALIZATION NOTE (webconsole.input.selector.tooltip): This is the tooltip
+# shown when users select a thread that they want to evaluate an
+# expression for.
+webconsole.input.selector.tooltip=Выберите контекст оценки
+
+# LOCALIZATION NOTE (webconsole.group.cookieSameSiteLaxByDefaultEnabled2): do not translate 'SameSite'.
+webconsole.group.cookieSameSiteLaxByDefaultEnabled2=Некоторые куки неправильно используют атрибут «SameSite», поэтому он не будет работать должным образом
+# LOCALIZATION NOTE (webconsole.group.cookieSameSiteLaxByDefaultDisabled2): do not translate 'SameSite'.
+webconsole.group.cookieSameSiteLaxByDefaultDisabled2=Некоторые куки неправильно используют рекомендованный атрибут «SameSite»
+
+# LOCALIZATION NOTE (webconsole.group.csp): do not translate
+# 'Content-Security-Policy', as that's the name of the header.
+webconsole.group.csp=Предупреждения Content-Security-Policy
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/accessibility.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/accessibility.properties
new file mode 100644
index 0000000000..1c0cb28dfa
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/accessibility.properties
@@ -0,0 +1,142 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (accessibility.contrast.ratio): A title text for the color contrast
+# ratio description, used by the accessibility highlighter to display the value. %S in the
+# content will be replaced by the contrast ratio numerical value.
+accessibility.contrast.ratio=Контраст: %S
+
+# LOCALIZATION NOTE (accessibility.contrast.ratio.error): A title text for the color
+# contrast ratio, used when the tool is unable to calculate the contrast ratio value.
+accessibility.contrast.ratio.error=Не удалось вычислить
+
+# LOCALIZATION NOTE (accessibility.contrast.ratio.label): A title text for the color
+# contrast ratio description, used together with the actual values.
+accessibility.contrast.ratio.label=Контраст:
+
+# LOCALIZATION NOTE (accessibility.contrast.ratio.label.large): A title text for the color
+# contrast ratio description that also specifies that the color contrast criteria used is
+# if for large text.
+accessibility.contrast.ratio.label.large=Контраст (крупный текст):
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.area): A title text that
+# describes that currently selected accessible object for an <area> element must have
+# its name provided via the alt attribute.
+accessibility.text.label.issue.area = Используйте атрибут «alt» для задания альтернативного текста для элементов «area» с атрибутом «href».
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.dialog): A title text that
+# describes that currently selected accessible object for a dialog should have a name
+# provided.
+accessibility.text.label.issue.dialog = Элементы dialog должны иметь альтернативный текст.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.document.title): A title text that
+# describes that currently selected accessible object for a document must have a name
+# provided via title.
+accessibility.text.label.issue.document.title = Документы должны иметь атрибут title.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.embed): A title text that
+# describes that currently selected accessible object for an <embed> must have a name
+# provided.
+accessibility.text.label.issue.embed = Встраиваемое содержимое должно иметь альтернативный текст.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.figure): A title text that
+# describes that currently selected accessible object for a figure should have a name
+# provided.
+accessibility.text.label.issue.figure = Элементы figure с необязательным caption должны иметь альтернативный текст.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.fieldset): A title text that
+# describes that currently selected accessible object for a <fieldset> must have a name
+# provided.
+accessibility.text.label.issue.fieldset = Элементы «fieldset» должны иметь альтернативный текст.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.fieldset.legend2): A title text that
+# describes that currently selected accessible object for a <fieldset> must have a name
+# provided via <legend> element.
+accessibility.text.label.issue.fieldset.legend2 = Используйте элемент «legend» для задания альтернативного текста для элементов «fieldset».
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.form): A title text that
+# describes that currently selected accessible object for a form element must have a name
+# provided.
+accessibility.text.label.issue.form = Элементы форм должны иметь альтернативный текст.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.form.visible): A title text that
+# describes that currently selected accessible object for a form element should have a name
+# provided via a visible label/element.
+accessibility.text.label.issue.form.visible = Элементы форм должны иметь видимую текстовую метку.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.frame): A title text that
+# describes that currently selected accessible object for a <frame> must have a name
+# provided.
+accessibility.text.label.issue.frame = Элементы «frame» должны иметь альтернативный текст.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.glyph): A title text that
+# describes that currently selected accessible object for a <mglyph> must have a name
+# provided via alt attribute.
+accessibility.text.label.issue.glyph = Используйте атрибут «alt» для задания альтернативного текста для элементов «mglyph».
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.heading): A title text that
+# describes that currently selected accessible object for a heading must have a name
+# provided.
+accessibility.text.label.issue.heading = Заголовки должны иметь альтернативный текст.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.heading.content): A title text that
+# describes that currently selected accessible object for a heading must have visible
+# content.
+accessibility.text.label.issue.heading.content = Заголовки должны иметь видимую текстовую метку.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.iframe): A title text that
+# describes that currently selected accessible object for an <iframe> have a name
+# provided via title attribute.
+accessibility.text.label.issue.iframe = Используйте атрибут «title» для описания содержимого «iframe».
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.image): A title text that
+# describes that currently selected accessible object for graphical content must have a
+# name provided.
+accessibility.text.label.issue.image = Содержимое с изображениями должно иметь альтернативный текст.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.interactive): A title text that
+# describes that currently selected accessible object for interactive element must have a
+# name provided.
+accessibility.text.label.issue.interactive = Интерактивные элементы должны иметь альтернативный текст.
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.optgroup.label2): A title text that
+# describes that currently selected accessible object for an <optgroup> must have a
+# name provided via label attribute.
+accessibility.text.label.issue.optgroup.label2 = Используйте атрибут «label» для задания альтернативного текста для элементов «optgroup».
+
+# LOCALIZATION NOTE (accessibility.text.label.issue.toolbar): A title text that
+# describes that currently selected accessible object for a toolbar must have a
+# name provided when there is more than one toolbar in the document.
+accessibility.text.label.issue.toolbar = Панели инструментов должны иметь альтернативный текст, когда присутствует более одной панели инструментов.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.semantics): A title text that
+# describes that currently selected accessible object is focusable and should
+# indicate that it could be interacted with.
+accessibility.keyboard.issue.semantics=Фокусируемые элементы должны иметь интерактивную семантику.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.tabindex): A title text that
+# describes that currently selected accessible object has a corresponding
+# DOMNode that defines a tabindex attribute greater that 0 which can result in
+# unexpected behaviour when navigating with keyboard.
+accessibility.keyboard.issue.tabindex=Избегайте использования атрибута «tabindex» со значением больше нуля.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.action): A title text that
+# describes that currently selected accessible object is interactive but can not
+# be activated using keyboard or accessibility API.
+accessibility.keyboard.issue.action=Интерактивные элементы должны активироваться при помощи клавиатуры.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.focusable): A title text that
+# describes that currently selected accessible object is interactive but is not
+# focusable with a keyboard.
+accessibility.keyboard.issue.focusable=Интерактивные элементы должны быть фокусируемыми.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.focus.visible): A title text
+# that describes that currently selected accessible object is focusable but
+# might not have appropriate focus styling.
+accessibility.keyboard.issue.focus.visible=Фокусируемый элемент не имеет стилей для сфокусированного состояния.
+
+# LOCALIZATION NOTE (accessibility.keyboard.issue.mouse.only): A title text that
+# describes that currently selected accessible object is not focusable and not
+# semantic but can be activated via mouse (e.g. has click handler).
+accessibility.keyboard.issue.mouse.only=Кликабельные элементы должны быть фокусируемыми и иметь интерактивную семантику.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/debugger.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/debugger.properties
new file mode 100644
index 0000000000..233b78ae15
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/debugger.properties
@@ -0,0 +1,67 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Debugger
+# which is available from the Web Developer sub-menu -> 'Debugger'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the Debugger
+# which is available from the Browser Tools sub-menu -> 'Debugger'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (remoteIncomingPromptTitle): The title displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptTitle=Входящее соединение
+
+# LOCALIZATION NOTE (remoteIncomingPromptHeader): Header displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptHeader=Был обнаружен входящий запрос на разрешение установления соединения для удалённой отладки. Удалённый клиент может взять ваш браузер под полный контроль!
+# LOCALIZATION NOTE (remoteIncomingPromptClientEndpoint): Part of the prompt
+# dialog for the user to choose whether an incoming connection should be
+# allowed.
+# %1$S: The host and port of the client such as "127.0.0.1:6000"
+remoteIncomingPromptClientEndpoint=Конечная точка клиента: %1$S
+# LOCALIZATION NOTE (remoteIncomingPromptServerEndpoint): Part of the prompt
+# dialog for the user to choose whether an incoming connection should be
+# allowed.
+# %1$S: The host and port of the server such as "127.0.0.1:6000"
+remoteIncomingPromptServerEndpoint=Конечная точка сервера: %1$S
+# LOCALIZATION NOTE (remoteIncomingPromptFooter): Footer displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptFooter=Разрешить соединение?
+
+# LOCALIZATION NOTE (remoteIncomingPromptDisable): The label displayed on the
+# third button in the incoming connection dialog that lets the user disable the
+# remote debugger server.
+remoteIncomingPromptDisable=Отключить
+
+# LOCALIZATION NOTE (clientSendOOBTitle): The title displayed on the dialog that
+# instructs the user to transfer an authentication token to the server.
+clientSendOOBTitle=Идентификация клиента
+# LOCALIZATION NOTE (clientSendOOBHeader): Header displayed on the dialog that
+# instructs the user to transfer an authentication token to the server.
+clientSendOOBHeader=Вы подключаетесь к конечной точке, которой нужно больше данных для аутентификации этого соединения. Пожалуйста, введите показанный ниже токен в появившемся на другом конце запросе.
+# LOCALIZATION NOTE (clientSendOOBHash): Part of the dialog that instructs the
+# user to transfer an authentication token to the server.
+# %1$S: The client's cert fingerprint
+clientSendOOBHash=Мой сертификат: %1$S
+# LOCALIZATION NOTE (clientSendOOBToken): Part of the dialog that instructs the
+# user to transfer an authentication token to the server.
+# %1$S: The authentication token that the user will transfer.
+clientSendOOBToken=Токен: %1$S
+
+# LOCALIZATION NOTE (serverReceiveOOBTitle): The title displayed on the dialog
+# that instructs the user to provide an authentication token from the client.
+serverReceiveOOBTitle=Укажите токен клиента
+# LOCALIZATION NOTE (serverReceiveOOBBody): Main text displayed on the dialog
+# that instructs the user to provide an authentication token from the client.
+serverReceiveOOBBody=На клиенте должно отображаться значение токена. Введите здесь значение этого токена, чтобы завершить аутентификацию с этим клиентом.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/eyedropper.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/eyedropper.properties
new file mode 100644
index 0000000000..2b003f8598
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/eyedropper.properties
@@ -0,0 +1,14 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used in the Eyedropper color tool.
+# LOCALIZATION NOTE The correct localization of this file might be to keep it
+# in English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best documentation
+# on web development on the web.
+
+# LOCALIZATION NOTE (colorValue.copied): This text is displayed when the user selects a
+# color with the eyedropper and it's copied to the clipboard.
+colorValue.copied=скопировано
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/screenshot.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/screenshot.properties
new file mode 100644
index 0000000000..516c905d6d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/screenshot.properties
@@ -0,0 +1,138 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Web Console commands
+# which can be executed in the Developer Tools, available in the
+# Browser Tools sub-menu -> 'Web Developer Tools'
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (screenshotDesc) A very short description of the
+# 'screenshot' command. Displayed when the --help flag is passed to
+# the screenshot command.
+screenshotDesc=Сделать снимок экрана страницы
+
+# LOCALIZATION NOTE (screenshotFilenameDesc) A very short string to describe
+# the 'filename' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotFilenameDesc=Имя файла для сохранения
+
+# LOCALIZATION NOTE (screenshotFilenameManual) A fuller description of the
+# 'filename' parameter to the 'screenshot' command.
+screenshotFilenameManual=Имя файла (должно иметь расширение «.png»), в который мы запишем скриншот.
+
+# LOCALIZATION NOTE (screenshotClipboardDesc) A very short string to describe
+# the 'clipboard' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotClipboardDesc=Копировать снимок экрана в буфер обмена? (true/false)
+
+# LOCALIZATION NOTE (screenshotClipboardManual) A fuller description of the
+# 'clipboard' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotClipboardManual=True, если вы хотите скопировать снимок экрана, а не сохранить его в файл.
+
+# LOCALIZATION NOTE (screenshotGroupOptions) A label for the optional options of
+# the screenshot command. Displayed when the --help flag is passed to the
+# screenshot command.
+screenshotGroupOptions=Параметры
+
+# LOCALIZATION NOTE (screenshotDelayDesc) A very short string to describe
+# the 'delay' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotDelayDesc=Задержка (секунды)
+
+# LOCALIZATION NOTE (screenshotDelayManual) A fuller description of the
+# 'delay' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the screenshot command.
+screenshotDelayManual=Время задержки (в секундах) перед тем, как будет сделан скриншот
+
+# LOCALIZATION NOTE (screenshotDPRDesc) A very short string to describe
+# the 'dpr' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotDPRDesc=Пиксельное соотношение устройства
+
+# LOCALIZATION NOTE (screenshotDPRManual) A fuller description of the
+# 'dpr' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotDPRManual=Пиксельное соотношение устройства, используемое при снятии скриншота
+
+# LOCALIZATION NOTE (screenshotFullPageDesc) A very short string to describe
+# the 'fullpage' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFullPageDesc=Всю веб-страницу? (true/false)
+
+# LOCALIZATION NOTE (screenshotFullPageManual) A fuller description of the
+# 'fullpage' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFullPageManual=True, если скриншот также должен включать в себя части веб-страницы, находящиеся за пределами видимой области.
+
+# LOCALIZATION NOTE (screenshotFileDesc) A very short string to describe
+# the 'file' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFileDesc=Сохранить в файл? (true/false)
+
+# LOCALIZATION NOTE (screenshotFileManual) A fuller description of the
+# 'file' parameter to the 'screenshot' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+screenshotFileManual=True, если скриншот должен быть сохранён в файл, даже если включены другие настройки (например буфер обмена).
+
+# LOCALIZATION NOTE (screenshotGeneratedFilename) The auto generated filename
+# when no file name is provided. The first argument (%1$S) is the date string
+# in yyyy-mm-dd format and the second argument (%2$S) is the time string
+# in HH.MM.SS format. Please don't add the extension here.
+screenshotGeneratedFilename=Скриншот сделанный %1$S в %2$S
+
+# LOCALIZATION NOTE (screenshotErrorSavingToFile) Text displayed to user upon
+# encountering error while saving the screenshot to the file specified.
+# The argument (%1$S) is the filename.
+screenshotErrorSavingToFile=Ошибка сохранения в %1$S
+
+# LOCALIZATION NOTE (screenshotSavedToFile) Text displayed to user when the
+# screenshot is successfully saved to the file specified.
+# The argument (%1$S) is the filename.
+screenshotSavedToFile=Сохранено в %1$S
+
+# LOCALIZATION NOTE (screenshotErrorCopying) Text displayed to user upon
+# encountering error while copying the screenshot to clipboard.
+screenshotErrorCopying=Ошибка при копировании скриншота в буфер обмена.
+
+# LOCALIZATION NOTE (screenshotCopied) Text displayed to user when the
+# screenshot is successfully copied to the clipboard.
+screenshotCopied=Скриншот скопирован в буфер обмена.
+
+# LOCALIZATION NOTE (inspectNodeDesc) A very short string to describe the
+# 'node' parameter to the 'inspect' command. Displayed when the
+# --help flag is passed to the `screenshot command.
+inspectNodeDesc=CSS-селектор
+
+# LOCALIZATION NOTE (inspectNodeManual) A fuller description of the 'node'
+# parameter to the 'inspect' command. Displayed when the --help flag is
+# passed to the `screenshot command.
+inspectNodeManual=CSS-селектор, используемый в document.querySelector, выбирает только один элемент
+
+# LOCALIZATION NOTE (screenshotTruncationWarning) Text displayed to user when the image
+# that would be created by the screenshot is too big and needs to be truncated to avoid
+# errors.
+# The first parameter is the width of the final image and the second parameter is the
+# height of the image.
+screenshotTruncationWarning=Размер изображения был обрезан до %1$S×%2$S, так как полученное изображение было слишком большим
+
+# LOCALIZATION NOTE (screenshotDPRDecreasedWarning2) Text displayed to user when
+# taking the screenshot initially failed. When the Device Pixel Ratio is larger
+# than 1.0 a second try immediately after displaying this message is attempted.
+screenshotDPRDecreasedWarning=Пиксельное соотношение устройства было уменьшено до 1, так как полученное изображение было слишком большим
+
+# LOCALIZATION NOTE (screenshotRenderingError) Text displayed to user upon
+# encountering an error while rendering the screenshot. This most often happens when the
+# resulting image is too large to be rendered.
+screenshotRenderingError=Ошибка при создании изображения. Полученное изображение было, вероятно, слишком большим.
+
+# LOCALIZATION NOTE (screenshotNoSelectorMatchWarning) Text displayed to user when the
+# provided selector for the screenshot does not match any element on the page.
+# The argument (%1$S) is selector.
+screenshotNoSelectorMatchWarning=Селектор «%S» не соответствует ни одному элементу на странице.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/shared.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/shared.properties
new file mode 100644
index 0000000000..0978450dee
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/shared.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (ellipsis): The ellipsis (three dots) character
+ellipsis=…
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/styleinspector.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/styleinspector.properties
new file mode 100644
index 0000000000..834d8cb5b7
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/devtools/shared/styleinspector.properties
@@ -0,0 +1,267 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Style Inspector.
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+
+# LOCALIZATION NOTE (rule.status): For each style property the panel shows
+# the rules which hold that specific property. For every rule, the rule status
+# is also displayed: a rule can be the best match, a match, a parent match, or a
+# rule did not match the element the user has highlighted.
+rule.status.BEST=Лучшее совпадение
+rule.status.MATCHED=Подошло
+rule.status.PARENT_MATCH=Подошедший родитель
+
+# LOCALIZATION NOTE (rule.sourceElement, rule.sourceInline,
+# rule.sourceConstructed): For each style property the panel shows the rules
+# which hold that specific property.
+# For every rule, the rule source is also displayed: a rule can come from a
+# file, from the same page (inline), from a constructed style sheet
+# (constructed), or from the element itself (element).
+rule.sourceInline=inline
+rule.sourceConstructed=построен
+rule.sourceElement=элемент
+
+# LOCALIZATION NOTE (rule.inheritedFrom): Shown for CSS rules
+# that were inherited from a parent node. Will be passed a node
+# identifier of the parent node.
+# e.g "Inherited from body#bodyID"
+rule.inheritedFrom=Унаследовано от %S
+
+# LOCALIZATION NOTE (rule.keyframe): Shown for CSS Rules keyframe header.
+# Will be passed an identifier of the keyframe animation name.
+rule.keyframe=Keyframes %S
+
+# LOCALIZATION NOTE (rule.userAgentStyles): Shown next to the style sheet
+# link for CSS rules that were loaded from a user agent style sheet.
+# These styles will not be editable, and will only be visible if the
+# devtools.inspector.showUserAgentStyles pref is true.
+rule.userAgentStyles=(user agent)
+
+# LOCALIZATION NOTE (rule.pseudoElement): Shown for CSS rules
+# pseudo element header
+rule.pseudoElement=Псевдоэлементы
+
+# LOCALIZATION NOTE (rule.selectedElement): Shown for CSS rules element header if
+# pseudo elements are present in the rule view.
+rule.selectedElement=Этот элемент
+
+# LOCALIZATION NOTE (rule.warning.title): When an invalid property value is
+# entered into the rule view a warning icon is displayed. This text is used for
+# the title attribute of the warning icon.
+rule.warning.title=Некорректное значение свойства
+
+# LOCALIZATION NOTE (rule.warningName.title): When an invalid property name is
+# entered into the rule view a warning icon is displayed. This text is used for
+# the title attribute of the warning icon.
+rule.warningName.title=Некорректное имя свойства
+
+# LOCALIZATION NOTE (rule.filterProperty.title): Text displayed in the tooltip
+# of the search button that is shown next to a property that has been overridden
+# in the rule view.
+rule.filterProperty.title=Показать правила, содержащие это свойство
+
+# LOCALIZATION NOTE (rule.empty): Text displayed when the highlighter is
+# first opened and there's no node selected in the rule view.
+rule.empty=Ни один элемент не выделен.
+
+# LOCALIZATION NOTE (rule.variableValue): Text displayed in a tooltip
+# when the mouse is over a variable use (like "var(--something)") in
+# the rule view. The first argument is the variable name and the
+# second argument is the value.
+rule.variableValue=%S = %S
+
+# LOCALIZATION NOTE (rule.variableUnset): Text displayed in a tooltip
+# when the mouse is over a variable use (like "var(--something)"),
+# where the variable is not set. the rule view. The argument is the
+# variable name.
+rule.variableUnset=%S не установлено
+
+# LOCALIZATION NOTE (rule.selectorHighlighter.tooltip): Text displayed in a
+# tooltip when the mouse is over a selector highlighter icon in the rule view.
+rule.selectorHighlighter.tooltip=Подсветить все элементы, подходящие под этот селектор
+
+# LOCALIZATION NOTE (rule.colorSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a color swatch in the rule view.
+rule.colorSwatch.tooltip=Щёлкните, чтобы открыть палитру цветов, щёлкните с удержанием shift, чтобы изменить формат цвета
+
+# LOCALIZATION NOTE (rule.bezierSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a cubic-bezier swatch in the rule view.
+rule.bezierSwatch.tooltip=Щёлкните, чтобы открыть редактор timing-function
+
+# LOCALIZATION NOTE (rule.filterSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a filter swatch in the rule view.
+rule.filterSwatch.tooltip=Щёлкните, чтобы открыть редактор фильтров
+
+# LOCALIZATION NOTE (rule.angleSwatch.tooltip): Text displayed in a tooltip
+# when the mouse is over a angle swatch in the rule view.
+rule.angleSwatch.tooltip=Щёлкните с удержанием shift, чтобы изменить формат угла
+
+# LOCALIZATION NOTE (rule.flexToggle.tooltip): Text displayed in a tooltip
+# when the mouse is over a Flexbox toggle icon in the rule view.
+rule.flexToggle.tooltip=Щёлкните, чтобы включить/выключить подсветку Flexbox
+
+# LOCALIZATION NOTE (rule.gridToggle.tooltip): Text displayed in a tooltip
+# when the mouse is over a CSS Grid toggle icon in the rule view.
+rule.gridToggle.tooltip=Щёлкните, чтобы включить/выключить подсветку CSS-сетки
+
+# LOCALIZATION NOTE (rule.filterStyles.placeholder): This is the placeholder that
+# goes in the search box when no search term has been entered.
+rule.filterStyles.placeholder=Поиск стилей
+
+# LOCALIZATION NOTE (rule.addRule.tooltip): This is the tooltip shown when
+# hovering the `Add new rule` button in the rules view toolbar.
+rule.addRule.tooltip=Добавить новое правило
+
+# LOCALIZATION NOTE (rule.togglePseudo.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Pseudo Class Panel` button in the
+# rule view toolbar.
+rule.togglePseudo.tooltip=Показать/скрыть панель псевдоклассов
+
+# LOCALIZATION NOTE (rule.classPanel.toggleClass.tooltip): This is the tooltip
+# shown when hovering over the `Toggle Class Panel` button in the
+# rule view toolbar.
+rule.classPanel.toggleClass.tooltip=Показать/скрыть классы
+
+# LOCALIZATION NOTE (rule.classPanel.newClass.placeholder): This is the placeholder
+# shown inside the text field used to add a new class in the rule-view.
+rule.classPanel.newClass.placeholder=Добавить новый класс
+
+# LOCALIZATION NOTE (rule.classPanel.noClasses): This is the text displayed in the
+# class panel when the current element has no classes applied.
+rule.classPanel.noClasses=У этого элемента нет классов
+
+# LOCALIZATION NOTE (rule.printSimulation.tooltip):
+# This is the tooltip of the print simulation button in the Rule View toolbar
+# that toggles print simulation.
+rule.printSimulation.tooltip=Включить/отключить симуляцию режима печати для этой страницы
+
+# LOCALIZATION NOTE (rule.colorSchemeSimulation.tooltip):
+# This is the tooltip of the color scheme simulation button in the Rule View
+# toolbar that toggles color-scheme simulation.
+rule.colorSchemeSimulation.tooltip=Включить/отключить симуляцию цветовой схемы для этой страницы
+
+# LOCALIZATION NOTE (rule.twistyCollapse.label): The text a screen reader
+# speaks when the header of a rule is expanded.
+rule.twistyCollapse.label=Свернуть
+
+# LOCALIZATION NOTE (rule.twistyExpand.label): The text a screen reader
+# speaks when the header of a rule is collapsed.
+rule.twistyExpand.label=Развернуть
+
+# LOCALIZATION NOTE (rule.expandableContainerToggleButton.title):
+# This is the tooltip for expandable container toggle button in the Rule View (Pseudo-elements, keyframes, …)
+rule.expandableContainerToggleButton.title=Переключить панель
+
+# LOCALIZATION NOTE (rule.containerQuery.selectContainerButton.tooltip): Text displayed in a
+# tooltip when the mouse is over the icon to select a container in a container query in the rule view.
+rule.containerQuery.selectContainerButton.tooltip=Щёлкните, чтобы выбрать узел контейнера
+
+# LOCALIZATION NOTE (rule.propertyToggle.label):
+# This is the label for the checkbox input in the rule view that allow to disable/re-enable
+# a specific property in a rule.
+# The argument is the property name.
+rule.propertyToggle.label=Включить свойство %S
+
+# LOCALIZATION NOTE (rule.newPropertyName.label):
+# This is the label for the new property input in the rule view.
+rule.newPropertyName.label=Новое имя свойства
+
+# LOCALIZATION NOTE (rule.propertyName.label):
+# This is the label for the property name input in the rule view.
+rule.propertyName.label=Имя свойства
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyColor): Text displayed in the rule
+# and computed view context menu when a color value was clicked.
+styleinspector.contextmenu.copyColor=Копировать цвет
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyColor.accessKey): Access key for
+# the rule and computed view context menu "Copy Color" entry.
+styleinspector.contextmenu.copyColor.accessKey=и
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyUrl): In rule and computed view :
+# text displayed in the context menu for an image URL.
+# Clicking it copies the URL to the clipboard of the user.
+styleinspector.contextmenu.copyUrl=Копировать URL
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyUrl.accessKey): Access key for
+# the rule and computed view context menu "Copy URL" entry.
+styleinspector.contextmenu.copyUrl.accessKey=в
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyImageDataUrl): In rule and computed view :
+# text displayed in the context menu for an image URL.
+# Clicking it copies the image as Data-URL to the clipboard of the user.
+styleinspector.contextmenu.copyImageDataUrl=Копировать URL данных изображения
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyImageDataUrl.accessKey): Access key for
+# the rule and computed view context menu "Copy Image Data-URL" entry.
+styleinspector.contextmenu.copyImageDataUrl.accessKey=а
+
+# LOCALIZATION NOTE (styleinspector.copyImageDataUrlError): Text set in the clipboard
+# if an error occurs when using the copyImageDataUrl context menu action
+# (invalid image link, timeout, etc...)
+styleinspector.copyImageDataUrlError=Не удалось скопировать URL данных изображения
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.toggleOrigSources): Text displayed in the rule view
+# context menu.
+styleinspector.contextmenu.toggleOrigSources=Показать оригинальные исходники
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.toggleOrigSources.accessKey): Access key for
+# the rule view context menu "Show original sources" entry.
+styleinspector.contextmenu.toggleOrigSources.accessKey=з
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.addNewRule): Text displayed in the
+# rule view context menu for adding a new rule to the element.
+# This should match inspector.addRule.tooltip in inspector.properties
+styleinspector.contextmenu.addNewRule=Добавить новое правило
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.addNewRule.accessKey): Access key for
+# the rule view context menu "Add rule" entry.
+styleinspector.contextmenu.addNewRule.accessKey=о
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.selectAll): Text displayed in the
+# computed view context menu.
+styleinspector.contextmenu.selectAll=Выделить всё
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.selectAll.accessKey): Access key for
+# the computed view context menu "Select all" entry.
+styleinspector.contextmenu.selectAll.accessKey=ы
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copy): Text displayed in the
+# computed view context menu.
+styleinspector.contextmenu.copy=Копировать
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copy.accessKey): Access key for
+# the computed view context menu "Copy" entry.
+styleinspector.contextmenu.copy.accessKey=п
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyLocation): Text displayed in the
+# rule view context menu for copying the source location.
+styleinspector.contextmenu.copyLocation=Копировать местоположение
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyDeclaration): Text
+# displayed in the rule view context menu for copying the CSS declaration.
+styleinspector.contextmenu.copyDeclaration=Копировать декларацию
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyPropertyName): Text displayed in
+# the rule view context menu for copying the property name.
+styleinspector.contextmenu.copyPropertyName=Копировать имя свойства
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyPropertyValue): Text displayed in
+# the rule view context menu for copying the property value.
+styleinspector.contextmenu.copyPropertyValue=Копировать значение свойства
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copyRule): Text displayed in the
+# rule view context menu for copying the rule.
+styleinspector.contextmenu.copyRule=Копировать правило
+
+# LOCALIZATION NOTE (styleinspector.contextmenu.copySelector): Text displayed in the
+# rule view context menu for copying the selector.
+styleinspector.contextmenu.copySelector=Копировать селектор
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/accessible.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/accessible.properties
new file mode 100644
index 0000000000..f84fde86e2
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/accessible.properties
@@ -0,0 +1,71 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+jump = Перейти
+press = Нажать
+check = Установить флажок
+uncheck = Снять флажок
+select = Выбрать
+open = Открыть
+close = Закрыть
+switch = Переключиться
+click = Щёлкнуть
+collapse= Свернуть
+expand = Развернуть
+activate= Активировать
+cycle = Обходить по циклу
+# An action provided to accessibility clients such as screen readers to allow
+# them to click an element when the click will be handled by a container
+# (ancestor) element. This is not normally reported to users.
+click ancestor = Щёлкнуть по родителю
+
+# Universal Access API support
+# (Mac Only)
+# The Role Description for AXWebArea (the web widget). Like in Safari.
+htmlContent = Содержимое HTML
+# The Role Description for the Tab button.
+tab = вкладка
+# The Role Description for definition list dl, dt and dd
+term = термин
+definition = определение
+# The Role Description for an input type="search" text field
+searchTextField = поле поискового запроса
+# Role Description (exposed as AXTitle) for datepickers
+dateField = поле даты
+# The Role Description for WAI-ARIA Landmarks
+application = приложение
+search = поиск
+banner = баннер
+navigation = навигация
+complementary = дополнительное
+content = содержимое
+main = основное
+# The (spoken) role description for various WAI-ARIA roles
+alert = предупреждение
+alertDialog = диалог предупреждения
+dialog = диалог
+article = статья
+document = документ
+# The (spoken) role description for the WAI-ARIA figure role
+# https://w3c.github.io/aria/core-aam/core-aam.html#role-map-figure
+figure = врезка
+# The (spoken) role description for the WAI-ARIA heading role
+# https://w3c.github.io/aria/core-aam/core-aam.html#role-map-heading
+heading = заголовок
+log = лог
+marquee = бегущая строка
+math = математика
+note = заметка
+region = регион
+status = статус приложения
+timer = таймер
+tooltip = подсказка
+separator = разделитель
+tabPanel = панель вкладок
+# The roleDescription for the html:mark element
+highlight = выделение
+# The roleDescription for the details element
+details = подробности
+# The roleDescription for the summary element
+summary = сводка
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/intl.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/intl.properties
new file mode 100644
index 0000000000..71265a9ef1
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/intl.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (intl.ellipsis): Use the unicode ellipsis char, \u2026,
+# or use "..." if \u2026 doesn't suit traditions in your locale.
+intl.ellipsis=…
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/platformKeys.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/platformKeys.properties
new file mode 100644
index 0000000000..d830a29b86
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/mac/platformKeys.properties
@@ -0,0 +1,33 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Platform: Mac
+# This file defines the on-screen display names for the various modifier keys
+# and the Return key (VK_RETURN).
+# These are used in XP menus to show keyboard shortcuts.
+
+# The Shift key - open up arrow symbol (ctrl-e)
+VK_SHIFT=⇧
+
+# The Command key - clover leaf symbol (ctrl-q)
+VK_META=⌘
+
+# The Win key - never generated by native key event
+VK_WIN=win
+
+# The Command key - clover leaf symbol (ctrl-q)
+VK_COMMAND_OR_WIN=\u2318
+
+# The Option/Alt key - splitting tracks symbol (ctrl-g)
+VK_ALT=⌥
+
+# The Control key - hat symbol (ctrl-f)
+VK_CONTROL=⌃
+
+# The Return key (on the main keyboard or numpad):
+# "Enter" on Windows/Unix, "Return" on Mac
+VK_RETURN=Return
+
+# The separator character used between modifiers (none on Mac OS)
+MODIFIER_SEPARATOR=
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/accessible.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/accessible.properties
new file mode 100644
index 0000000000..b735f96b53
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/accessible.properties
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+jump = Перейти
+press = Нажать
+check = Установить флажок
+uncheck = Снять флажок
+select = Выбрать
+open = Открыть
+close = Закрыть
+switch = Переключиться
+click = Щёлкнуть
+collapse= Свернуть
+expand = Развернуть
+activate= Активировать
+cycle = Обходить по циклу
+# An action provided to accessibility clients such as screen readers to allow
+# them to click an element when the click will be handled by a container
+# (ancestor) element. This is not normally reported to users.
+click ancestor = Щёлкнуть по родителю
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/intl.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/intl.properties
new file mode 100644
index 0000000000..71265a9ef1
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/intl.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (intl.ellipsis): Use the unicode ellipsis char, \u2026,
+# or use "..." if \u2026 doesn't suit traditions in your locale.
+intl.ellipsis=…
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/platformKeys.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/platformKeys.properties
new file mode 100644
index 0000000000..fded02a68e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/unix/platformKeys.properties
@@ -0,0 +1,33 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Platform: Unix
+# This file defines the on-screen display names for the various modifier keys
+# and the Enter key (VK_RETURN).
+# These are used in XP menus to show keyboard shortcuts.
+
+# The Shift key
+VK_SHIFT=Shift
+
+# The Command key
+VK_META=Meta
+
+# The Win key (Super key and Hyper keys are mapped to DOM Win key)
+VK_WIN=Win
+
+# The Super/Hyper key
+VK_COMMAND_OR_WIN=Win
+
+# The Alt key
+VK_ALT=Alt
+
+# The Control key
+VK_CONTROL=Ctrl
+
+# The Enter key (on the main keyboard or numpad):
+# "Enter" on Windows/Unix, "Return" on Mac
+VK_RETURN=Enter
+
+# The separator character used between modifiers
+MODIFIER_SEPARATOR=+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/accessible.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/accessible.properties
new file mode 100644
index 0000000000..b735f96b53
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/accessible.properties
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+jump = Перейти
+press = Нажать
+check = Установить флажок
+uncheck = Снять флажок
+select = Выбрать
+open = Открыть
+close = Закрыть
+switch = Переключиться
+click = Щёлкнуть
+collapse= Свернуть
+expand = Развернуть
+activate= Активировать
+cycle = Обходить по циклу
+# An action provided to accessibility clients such as screen readers to allow
+# them to click an element when the click will be handled by a container
+# (ancestor) element. This is not normally reported to users.
+click ancestor = Щёлкнуть по родителю
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/intl.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/intl.properties
new file mode 100644
index 0000000000..71265a9ef1
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/intl.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (intl.ellipsis): Use the unicode ellipsis char, \u2026,
+# or use "..." if \u2026 doesn't suit traditions in your locale.
+intl.ellipsis=…
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/platformKeys.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/platformKeys.properties
new file mode 100644
index 0000000000..1df027dccf
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global-platform/win/platformKeys.properties
@@ -0,0 +1,33 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Platform: Windows
+# This file defines the on-screen display names for the various modifier keys
+# and the Enter key (VK_RETURN).
+# These are used in XP menus to show keyboard shortcuts.
+
+# The Shift key
+VK_SHIFT=Shift
+
+# The Command key
+VK_META=Meta
+
+# The Win key
+VK_WIN=Win
+
+# The Win key
+VK_COMMAND_OR_WIN=Win
+
+# The Alt key
+VK_ALT=Alt
+
+# The Control key
+VK_CONTROL=Ctrl
+
+# The Enter key (on the main keyboard or numpad):
+# "Enter" on Windows/Unix, "Return" on Mac
+VK_RETURN=Enter
+
+# The separator character used between modifiers
+MODIFIER_SEPARATOR=+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/aboutStudies.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/aboutStudies.properties
new file mode 100644
index 0000000000..b789864235
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/aboutStudies.properties
@@ -0,0 +1,33 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+# LOCALIZATION NOTE (title): keep "Shield" in English. See
+# https://wiki.mozilla.org/Firefox/Shield/Shield_Studies for more information
+title = Исследования Shield
+removeButton = Удалить
+
+# LOCALIZATION NOTE (activeStudiesList): Title above a list of active studies
+activeStudiesList = Активные исследования
+# LOCALIZATION NOTE (activeStudiesList): Title above a list of completed studies
+completedStudiesList = Завершённые исследования
+# LOCALIZATION NOTE (activeStatus): Displayed for an active study
+activeStatus = Активно
+
+# LOCALIZATION NOTE (completeStatus): Displayed for a study that is already complete
+completeStatus = Завершено
+
+updateButtonWin = Изменить настройки
+updateButtonUnix = Изменить настройки
+learnMore = Подробнее
+noStudies = Вы не участвовали в каких-либо исследованиях.
+disabledList = Это список исследований, в которых вы приняли участие. Никаких новых исследований проводиться не будет.
+# LOCALIZATION NOTE (enabledList): %S is brandShortName (e.g. Firefox)
+enabledList = Что это? %S может время от времени устанавливать и проводить исследования.
+
+# LOCALIZATION NOTE (preferenceStudyDescription) $1%S will be replaced with the
+# name of a preference (such as "stream.improvesearch.topSiteSearchShortcuts")
+# and $2%S will be replaced with the value of that preference. Both values will
+# be formatted differently than the surrounding text.
+preferenceStudyDescription = Это исследование установит для параметра %1$S значение %2$S.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/appstrings.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/appstrings.properties
new file mode 100644
index 0000000000..c7152043fc
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/appstrings.properties
@@ -0,0 +1,37 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+malformedURI2=Пожалуйста, проверьте, что URL корректен и попробуйте снова.
+fileNotFound=Файл %S не существует. Проверьте правильность написания адреса и попробуйте снова.
+fileAccessDenied=Файл %S не может быть прочитан.
+dnsNotFound2=%S не найден. Проверьте правильность написания имени и попробуйте снова.
+unknownProtocolFound=Один из следующих протоколов (%S) не является зарегистрированным протоколом или не разрешен в этом контексте.
+connectionFailure=В соединении с %S отказано.
+netInterrupt=Соединение с %S было неожиданно прервано. Возможно, также была прервана передача данных.
+netTimeout=Время ожидания соединения с %S истекло.
+redirectLoop=Лимит перенаправлений с этого адреса превышен. Не удалось загрузить запрошенную страницу. Это может быть вызвано блокировкой кук.
+confirmRepostPrompt=Чтобы отобразить эту страницу, приложение должно отправить информацию для повторения ранее произведённого действия (например, запрос на поиск или онлайн-покупка).
+resendButton.label=Повторить отправку
+unknownSocketType=Документ не может быть отображён, пока вы не установите «Менеджер личной защиты (PSM)». Загрузите и установите PSM и попробуйте открыть документ снова или свяжитесь с системным администратором.
+netReset=Документ не содержит данных.
+notCached=Этот документ более не доступен.
+netOffline=Этот документ не может быть отображен во время автономной работы. Чтобы подключиться, уберите флажок с пункта «Работать автономно» в меню «Файл».
+isprinting=Во время печати или предварительного просмотра документ не может быть изменён.
+deniedPortAccess=Доступ к данному порту закрыт из соображений безопасности.
+proxyResolveFailure=Указанный прокси-сервер не найден. Проверьте настройки и попробуйте снова.
+proxyConnectFailure=Отказ в соединении при попытке подключиться к указанному прокси-серверу. Проверьте настройки и попробуйте снова.
+contentEncodingError=Страница, которую вы пытаетесь просмотреть, не может быть показана, так как она использует неверный или неподдерживаемый алгоритм сжатия данных.
+unsafeContentType=Страница, которую вы пытаетесь просмотреть, не может быть отображена, так как она содержит тип файла, небезопасный для открытия. Пожалуйста, свяжитесь с владельцами веб-сайта и сообщите им об этой проблеме.
+malwareBlocked=Имеется информация о том, что сайт %S используется для атак на компьютеры пользователей. В соответствии с вашими настройками безопасности он был заблокирован.
+harmfulBlocked=Имеется информация о том, что сайт %S представляет потенциальную опасность. В соответствии с вашими настройками безопасности он был заблокирован.
+unwantedBlocked=Имеется информация о том, что сайт %S используется для распространения нежелательных программ. В соответствии с вашими настройками безопасности он был заблокирован.
+deceptiveBlocked=Имеется информация о том, что веб-страница на %S является поддельным сайтом. В соответствии с вашими настройками безопасности она была заблокирована.
+cspBlocked=Эта страница имеет политику защиты содержимого, блокирующую данный способ её загрузки.
+xfoBlocked=Эта страница имеет политику X-Frame-Options, блокирующую её загрузку в этом контексте.
+corruptedContentErrorv2=При соединении с сайтом %S произошло нарушение сетевого протокола, которое не может быть устранено.
+sslv3Used=Безопасность ваших данных на %S не может гарантирована, так как он использует уязвимый протокол защиты SSLv3.
+weakCryptoUsed=Владелец %S неправильно настроил свой веб-сайт. Чтобы защитить вашу информацию от кражи, соединение с этим веб-сайтом установлено не было.
+inadequateSecurityError=Веб-сайт попытался установить недостаточно защищённое соединение.
+blockedByPolicy=Ваша организация заблокировала доступ к этой странице или веб-сайту.
+networkProtocolError=Firefox столкнулся с нарушением сетевого протокола, которое не может быть устранено.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/autocomplete.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/autocomplete.properties
new file mode 100644
index 0000000000..105e0ff25c
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/autocomplete.properties
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (bookmarkKeywordSearch): This is the title of autocomplete
+# entries that are bookmark keyword searches. %1$S will be replaced with the
+# domain name of the bookmark, and %2$S will be replaced with the keyword
+# search text that the user is typing. %2$S will not be empty.
+bookmarkKeywordSearch = %1$S: %2$S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/browser.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/browser.properties
new file mode 100644
index 0000000000..ce17b5814e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/browser.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+formPostSecureToInsecureWarning.title = Предупреждение системы защиты
+formPostSecureToInsecureWarning.message = Информация, введённая вами на этой странице, будет отправлена по незащищённому соединению и может быть прочитана третьей стороной.\n\nВы уверены, что хотите отправить эту информацию?
+formPostSecureToInsecureWarning.continue = Продолжить
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/commonDialogs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/commonDialogs.properties
new file mode 100644
index 0000000000..b917d8c5d3
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/commonDialogs.properties
@@ -0,0 +1,46 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+Alert=Предупреждение
+Confirm=Подтверждение
+ConfirmCheck=Подтверждение
+Prompt=Запрос
+# LOCALIZATION NOTE - %S is brandFullName
+PromptUsernameAndPassword3=Требуется аутентификация - %S
+# LOCALIZATION NOTE - %S is brandFullName
+PromptPassword3=Требуется пароль - %S
+Select=Выбор
+OK=OK
+Cancel=Отмена
+Yes=&Да
+No=&Нет
+Save=&Сохранить
+Revert=&Вернуться
+DontSave=Н&е сохранять
+ScriptDlgGenericHeading=[Приложение JavaScript]
+ScriptDlgHeading=Страница на %S сообщает:
+ScriptDlgNullPrincipalHeading=Эта страница сообщает:
+ScriptDialogLabel=Не давать этой странице создавать дополнительные диалоговые окна
+ScriptDialogLabelNullPrincipal=Не позволять этому сайту снова вас запрашивать
+# LOCALIZATION NOTE (ScriptDialogLabelContentPrincipal):
+# %S is either the domain and port of the site prompting, or the name of
+# an add-on prompting.
+ScriptDialogLabelContentPrincipal=Не позволять %S снова вас запрашивать
+ScriptDialogPreventTitle=Подтвердить настройку диалогов
+# LOCALIZATION NOTE (EnterLoginForRealm3, EnterLoginForProxy3):
+# %1 is an untrusted string provided by a remote server. It could try to
+# take advantage of sentence structure in order to mislead the user (see
+# bug 244273). %1 should be integrated into the translated sentences as
+# little as possible. %2 is the url of the site being accessed.
+EnterLoginForRealm3=%2$S запрашивает имя пользователя и пароль. Сайт сообщает: «%1$S»
+EnterLoginForProxy3=Прокси %2$S запрашивает имя пользователя и пароль. Сайт сообщает: «%1$S»
+EnterUserPasswordFor2=%1$S запрашивает имя пользователя и пароль.
+EnterUserPasswordForCrossOrigin2=%1$S запрашивает имя пользователя и пароль. ВНИМАНИЕ: Ваш пароль будет отправлен не на веб-сайт, на которым вы сейчас находитесь, а на другой веб-сайт!
+EnterPasswordFor=Введите пароль для %1$S на %2$S
+EnterCredentials=Этот сайт просит вас войти.
+# %S is the username for which a password is requested.
+EnterPasswordOnlyFor=Этот сайт просит вас войти как %S.
+# %S is the domain of the site being accessed.
+EnterCredentialsCrossOrigin=Этот сайт просит вас войти. Предупреждение: ваши данные для входа будут переданы %S, а не веб-сайту, на котором вы в настоящее время находитесь.
+SignIn=Войти
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/contentAreaCommands.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/contentAreaCommands.properties
new file mode 100644
index 0000000000..1de82cf62f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/contentAreaCommands.properties
@@ -0,0 +1,28 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# context menu strings
+
+SaveImageTitle=Сохранение изображения
+SaveMediaTitle=Сохранение медиа
+SaveVideoTitle=Сохранение видео
+SaveAudioTitle=Сохранение аудио
+SaveLinkTitle=Сохранить как
+WebPageCompleteFilter=Веб-страница, полностью
+WebPageHTMLOnlyFilter=Веб-страница, только HTML
+WebPageXHTMLOnlyFilter=Веб-страница, только XHTML
+WebPageSVGOnlyFilter=Веб-страница, только SVG
+WebPageXMLOnlyFilter=Веб-страница, только XML
+
+# LOCALIZATION NOTE (UntitledSaveFileName):
+# This is the default filename used when saving a file if a filename could
+# not be determined or if a filename was invalid. A period and file
+# extension may be appended to this string.
+UntitledSaveFileName=Без имени
+
+# LOCALIZATION NOTE (filesFolder):
+# This is the name of the folder that is created parallel to a HTML file
+# when it is saved "With Images". The %S section is replaced with the
+# leaf name of the file being saved (minus extension).
+filesFolder=%S_files
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/css.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/css.properties
new file mode 100644
index 0000000000..50b388c914
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/css.properties
@@ -0,0 +1,52 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+MimeNotCss=Таблица стилей %1$S не была загружена, потому что её MIME-тип («%2$S») не «text/css».
+MimeNotCssWarn=Таблица стилей %1$S была загружена, хотя её MIME-тип («%2$S») не «text/css».
+
+PEDeclDropped=Потерянное объявление.
+PEDeclSkipped=Пропущено до следующего объявления.
+PEUnknownProperty=Неизвестное свойство «%1$S».
+PEPRSyntaxFieldEmptyInput=Дескриптор синтаксиса @property пуст.
+PEPRSyntaxFieldExpectedPipe=Дескриптор синтаксиса @property «%S» содержит компоненты без вертикальной черты между ними.
+PEPRSyntaxFieldInvalidNameStart=Дескриптор синтаксиса @property «%S» содержит имя компонента, начинающееся с недопустимого символа.
+PEPRSyntaxFieldInvalidName=Дескриптор синтаксиса @property «%S» содержит имя компонента с недопустимым символом.
+PEPRSyntaxFieldUnclosedDataTypeName=Дескриптор синтаксиса @property «%S» содержит имя незакрытого типа данных.
+PEPRSyntaxFieldUnexpectedEOF=Дескриптор синтаксиса @property «%S» неполный.
+PEPRSyntaxFieldUnknownDataTypeName=Дескриптор синтаксиса @property «%S» содержит имя неизвестного типа данных.
+PEValueParsingError=Ошибка при парсинге значения «%1$S».
+PEUnknownAtRule=Неизвестное at-правило или ошибка при парсинге «%1$S».
+PEMQUnexpectedOperator=Неожиданный оператор в списке медиа.
+PEMQUnexpectedToken=Неожиданный токен «%1$S» в списке медиа.
+PEAtNSUnexpected=Неожиданный символ внутри @namespace: «%1$S».
+PEKeyframeBadName=Ожидался идентификатор для имени правила @keyframes.
+PEBadSelectorRSIgnored=Набор правил проигнорирован из-за плохого селектора.
+PEBadSelectorKeyframeRuleIgnored=Правило Keyframe проигнорировано из-за плохого селектора.
+PESelectorGroupNoSelector=Ожидается селектор.
+PESelectorGroupExtraCombinator=Лишний значок-комбинатор селекторов в конце составного селектора (например, h1~h2~ {color: black;} )
+PEClassSelNotIdent=Ожидался идентификатор для селектора класса, но найдено «%1$S».
+PETypeSelNotType=Ожидалось имя элемента или «*», но найдено «%1$S».
+PEUnknownNamespacePrefix=Неизвестный префикс пространства имён «%1$S».
+PEAttributeNameExpected=Ожидался идентификатор для имени атрибута, но найдено «%1$S».
+PEAttributeNameOrNamespaceExpected=Ожидались имя атрибута или пространство имён, но найдено «%1$S».
+PEAttSelNoBar=Ожидалось «|» , но найдено «%1$S».
+PEAttSelUnexpected=Неожиданный символ в атрибуте селектора : «%1$S».
+PEAttSelBadValue=Ожидались идентификатор или строка для значения атрибута селектора, но найдено «%1$S».
+PEPseudoSelBadName=Ожидался идентификатор для псевдокласса или псевдоэлемента, но найдено «%1$S».
+PEPseudoSelEndOrUserActionPC=Ожидался конец селектора или псевдокласс пользовательского действия после псевдоэлемента, но найден «%1$S».
+PEPseudoSelUnknown=Неизвестный псевдокласс или псевдоэлемент «%1$S».
+PEPseudoClassArgNotIdent=Ожидался идентификатор параметра псевдокласса, но найдено «%1$S».
+PEColorNotColor=Ожидалось определение цвета, но найдено «%1$S».
+PEParseDeclarationDeclExpected=Ожидалось объявление, но найдено «%1$S».
+PEUnknownFontDesc=Неизвестный дескриптор «%1$S» в правиле @font-face.
+PEMQExpectedFeatureName=Ожидалось имя медиа-функции, но найдено «%1$S».
+PEMQNoMinMaxWithoutValue=Медиа-функции с min- или max- должны иметь значение.
+PEMQExpectedFeatureValue=Найдено неверное значение медиа-функции.
+PEExpectedNoneOrURL=Ожидалось «none» или «URL», но найдено «%1$S».
+PEExpectedNoneOrURLOrFilterFunction=Ожидалось «none», «URL» или функция фильтра, но найдено «%1$S».
+PEDisallowedImportRule=Правила @import ещё не действуют в созданных таблицах стилей.
+PENeverMatchingHostSelector=Селектор :host в «%S» не безфункционален и никогда не подойдёт. Может быть вы намеревались использовать :host()?
+
+TooLargeDashedRadius=Радиус скругления слишком велик для стиля «dashed» (предел равен 100000 пикселям). Визуализирую как сплошной.
+TooLargeDottedRadius=Радиус скругления слишком велик для стиля «dotted» (предел равен 100000 пикселям). Визуализирую как сплошной.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/dialog.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/dialog.properties
new file mode 100644
index 0000000000..16f67e0aa9
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/dialog.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+button-accept=OK
+button-cancel=Отмена
+button-help=Справка
+button-disclosure=Дополнительные сведения
+accesskey-accept=
+accesskey-cancel=
+accesskey-help=п
+accesskey-disclosure=о
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/dom/dom.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/dom/dom.properties
new file mode 100644
index 0000000000..3870cf767d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/dom/dom.properties
@@ -0,0 +1,478 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+KillScriptTitle=Внимание: Сценарий не отвечает
+KillScriptMessage=Похоже, исполняемый на этой странице сценарий занят или не отвечает. Вы можете остановить его сейчас или продолжить и посмотреть, сможет ли он завершить свою работу.
+KillScriptWithDebugMessage=Похоже, исполняемый на этой странице сценарий занят или не отвечает. Вы можете остановить его сейчас, открыть сценарий в отладчике или позволить сценарию продолжить свою работу.
+KillScriptLocation=Сценарий: %S
+
+KillAddonScriptTitle=Внимание: Сценарий дополнения не отвечает
+# LOCALIZATION NOTE (KillAddonScriptMessage): %1$S is the name of an extension.
+# %2$S is the name of the application (e.g., Firefox).
+KillAddonScriptMessage=На этой странице запущен сценарий из расширения «%1$S», которые привёл к подвисанию %2$S.\n\nОн может быть занят или мог навсегда перестать отвечать на запросы. Вы можете остановить сценарий сейчас, или продолжить и посмотреть, завершится ли он.
+KillAddonScriptGlobalMessage=Запретить запуск сценария расширения на этой странице до её следующей перезагрузки
+
+StopScriptButton=Остановить сценарий
+DebugScriptButton=Отладка сценария
+WaitForScriptButton=Продолжить
+DontAskAgain=Больше &не задавать этот вопрос
+WindowCloseBlockedWarning=Сценарии не могут закрывать окна, открытые другими сценариями.
+OnBeforeUnloadTitle=Вы уверены?
+OnBeforeUnloadMessage2=Эта страница просит вас подтвердить, что вы хотите уйти — при этом введённая вами информация может не сохраниться.
+OnBeforeUnloadStayButton=Остаться на странице
+OnBeforeUnloadLeaveButton=Уйти со страницы
+EmptyGetElementByIdParam=Пустая строка не может быть аргументом метода getElementById().
+SpeculationFailed2=Несбалансированное дерево было написано с использованием document.write(), что привело к повторному парсингу данных из сети. Более подробная информация доступна на https://developer.mozilla.org/en-US/docs/Glossary/speculative_parsing
+DocumentWriteIgnored=Вызов document.write() из асинхронно-загруженного внешнего сценария был проигнорирован.
+# LOCALIZATION NOTE (EditorFileDropFailed): Do not translate contenteditable, %S is the error message explaining why the drop failed.
+EditorFileDropFailed=Сбрасывание файла в элемент contenteditable не удалось: %S.
+FormValidationTextTooLong=Пожалуйста, укоротите этот текст до %S символов или менее (сейчас вы используете %S символов).
+FormValidationTextTooShort=Пожалуйста, используйте не менее %S символов (сейчас вы используете %S символов).
+FormValidationValueMissing=Пожалуйста, заполните это поле.
+FormValidationCheckboxMissing=Для продолжения, пожалуйста, установите этот флажок.
+FormValidationRadioMissing=Пожалуйста, выберите один из этих параметров.
+FormValidationFileMissing=Пожалуйста, выберите файл.
+FormValidationSelectMissing=Пожалуйста, выберите элемент в этом списке.
+FormValidationInvalidEmail=Пожалуйста, введите адрес электронной почты.
+FormValidationInvalidURL=Пожалуйста, введите URL.
+FormValidationInvalidDate=Пожалуйста, введите допустимую дату.
+FormValidationInvalidTime=Пожалуйста, введите допустимое время.
+FormValidationInvalidDateTime=Пожалуйста, введите допустимые дату и время.
+FormValidationInvalidDateMonth=Пожалуйста, введите допустимый месяц.
+FormValidationInvalidDateWeek=Пожалуйста, введите допустимую неделю.
+FormValidationPatternMismatch=Пожалуйста, используйте требуемый формат.
+# LOCALIZATION NOTE (FormValidationPatternMismatchWithTitle): %S is the (possibly truncated) title attribute value.
+FormValidationPatternMismatchWithTitle=Пожалуйста, используйте требуемый формат: %S.
+# LOCALIZATION NOTE (FormValidationNumberRangeOverflow): %S is a number.
+FormValidationNumberRangeOverflow=Пожалуйста, выберите значение не более %S.
+# LOCALIZATION NOTE (FormValidationDateTimeRangeOverflow): %S is a date or a time.
+FormValidationDateTimeRangeOverflow=Пожалуйста, выберите значение не позднее %S.
+# LOCALIZATION NOTE (FormValidationNumberRangeUnderflow): %S is a number.
+FormValidationNumberRangeUnderflow=Пожалуйста, выберите значение не менее %S.
+# LOCALIZATION NOTE (FormValidationDateTimeRangeUnderflow): %S is a date or a time.
+FormValidationDateTimeRangeUnderflow=Пожалуйста, выберите значение не ранее %S.
+# LOCALIZATION NOTE (FormValidationStepMismatch): both %S can be a number, a date or a time.
+FormValidationStepMismatch=Пожалуйста, выберите допустимое значение. Двумя ближайшими допустимыми значениями являются %S и %S.
+# LOCALIZATION NOTE (FormValidationStepMismatchOneValue): %S can be a number, a date or a time. This is called instead of FormValidationStepMismatch when the second value is the same as the first.
+FormValidationStepMismatchOneValue=Пожалуйста, выберите допустимое значение. Ближайшим допустимым значением является %S.
+# LOCALIZATION NOTE (FormValidationTimeReversedRangeUnderflowAndOverflow): %1$S,%2$S are time.
+FormValidationTimeReversedRangeUnderflowAndOverflow=Пожалуйста, выберите значение между %1$S и %2$S.
+FormValidationBadInputNumber=Пожалуйста, введите число.
+FullscreenDeniedDisabled=В запросе полноэкранного режима было отказано, так как Полноэкранное API было отключено в настройках пользователя.
+FullscreenDeniedFocusedPlugin=В запросе полноэкранного режима было отказано, так как windowed-плагин находится в фокусе.
+FullscreenDeniedHidden=В запросе полноэкранного режима было отказано, так как документ более не виден.
+FullscreenDeniedHTMLDialog=В запросе полноэкранного режима было отказано, так как его запрашивает элемент <dialog>.
+FullscreenDeniedContainerNotAllowed=В запросе полноэкранного режима было отказано, так как по меньшей мере один из элементов, содержащих документ, не является iframe'ом или не имеет атрибута «allowfullscreen».
+FullscreenDeniedNotInputDriven=В запросе полноэкранного режима было отказано, так как Element.requestFullscreen() не был вызван пользовательским короткоживущим обработчиком событий.
+FullscreenDeniedMouseEventOnlyLeftBtn=В запросе полноэкранного режима было отказано, так как Element.requestFullscreen() был вызван изнутри обработчика событий мыши, не вызванного левой кнопкой мыши.
+FullscreenDeniedNotHTMLSVGOrMathML=В запросе полноэкранного режима было отказано, так как запрашивающий элемент не является элементом <svg>, <math> или HTML.
+FullscreenDeniedNotInDocument=В запросе полноэкранного режима было отказано, так как запрашивающий элемент больше не находится в своем документе.
+FullscreenDeniedMovedDocument=В запросе полноэкранного режима было отказано, так как запрашивающий элемент переместил документ.
+FullscreenDeniedLostWindow=В запросе полноэкранного режима было отказано, так как у нас больше нет окна.
+FullscreenDeniedPopoverOpen=В запросе полноэкранного режима было отказано, так как элемент уже открыт в виде всплывающего окна.
+FullscreenDeniedSubDocFullscreen=В запросе полноэкранного режима было отказано, так как поддокумент документа, запрашивающего полноэкранный режим, уже находится в полноэкранном режиме.
+FullscreenDeniedNotFocusedTab=В запросе полноэкранного режима было отказано, так как запрашивающий элемент не расположен во вкладке, находящейся сейчас в фокусе.
+FullscreenDeniedFeaturePolicy=В запросе полноэкранного режима было отказано из-за директив FeaturePolicy.
+FullscreenExitWindowFocus=Из полноэкранного режима произведён выход, так как в фокусе было окно.
+RemovedFullscreenElement=Из полноэкранного режима произведён выход, так как полноэкранный элемент был удалён из документа.
+FocusedWindowedPluginWhileFullscreen=Из полноэкранного режима произведён выход, так как в фокусе был windowed-плагин.
+PointerLockDeniedDisabled=В запросе контроля за курсором было отказано, так как Pointer Lock API было отключено в настройках пользователя.
+PointerLockDeniedInUse=В запросе контроля за курсором было отказано, так как он сейчас контролируется другим документом.
+PointerLockDeniedNotInDocument=В запросе контроля за курсором было отказано, так как запрашивающий элемент не в документе.
+PointerLockDeniedSandboxed=В запросе контроля за курсором было отказано, так как доступ к Pointer Lock API ограничен через песочницу.
+PointerLockDeniedHidden=В запросе контроля за курсором было отказано, так как документ не виден.
+PointerLockDeniedNotFocused=В запросе контроля за курсором было отказано, так как документ не находится в фокусе.
+PointerLockDeniedMovedDocument=В запросе контроля за курсором было отказано, так как запрашивающий элемент переместил документ.
+PointerLockDeniedNotInputDriven=В запросе контроля над курсором было отказано, так как метод Element.requestPointerLock() не был вызван пользовательским короткоживущим обработчиком событий, а документ не был развернут на полный экран.
+PointerLockDeniedFailedToLock=В запросе контроля за курсором было отказано, так как браузеру не удалось захватить контроль над курсором.
+HTMLSyncXHRWarning=Парсинг HTML в XMLHttpRequest в синхронном режиме не поддерживается.
+# LOCALIZATION NOTE: %S is the name of the header in question
+ForbiddenHeaderWarning=Попытка установки запрещённого заголовка была пресечена: %S
+ResponseTypeSyncXHRWarning=Свойство responseType в XMLHttpRequest в синхронном режиме в контексте окна больше не поддерживается.
+TimeoutSyncXHRWarning=Свойство timeout в XMLHttpRequest в синхронном режиме в контексте окна не поддерживается.
+# LOCALIZATION NOTE: Do not translate navigator.sendBeacon, unload, pagehide, or XMLHttpRequest.
+UseSendBeaconDuringUnloadAndPagehideWarning=Использование navigator.sendBeacon вместо синхронного XMLHttpRequest во время срабатывания unload и pagehide улучшит работу пользователя.
+JSONCharsetWarning=Была произведена попытка объявить не-UTF-8 кодировку для JSON полученного с использованием XMLHttpRequest. Для декодирования JSON поддерживается только UTF-8.
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and createMediaElementSource.
+MediaElementAudioSourceNodeCrossOrigin=HTMLMediaElement, переданный в createMediaElementSource, имеет ресурс из постороннего источника, узел будет выводить тишину.
+# LOCALIZATION NOTE: Do not translate MediaStream and createMediaStreamSource.
+MediaStreamAudioSourceNodeCrossOrigin=MediaStream, переданный в createMediaStreamSource, имеет ресурс из постороннего источника, узел будет выводить тишину.
+# LOCALIZATION NOTE : Do not translate MediaStreamTrack and createMediaStreamTrackSource.
+MediaStreamTrackAudioSourceNodeCrossOrigin=MediaStreamTrack, переданный в createMediaStreamTrackSource, является ресурсом из постороннего источника, узел будет выводить тишину.
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and MediaStream.
+MediaElementAudioCaptureOfMediaStreamError=Захваченный HTMLMediaElement проигрывает MediaStream. Изменение уровня громкости и отключение звука сейчас недоступны.
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and MediaStream.
+MediaElementStreamCaptureCycle=Действие назначения отвергнуто, поскольку MediaStream, назначенный на srcObject, происходит от захвата этого HTMLMediaElement, формируя цикл.
+MediaLoadExhaustedCandidates=Не удалось загрузить ни одного кандидата на ресурс. Загрузка медиа приостановлена.
+MediaLoadSourceMissingSrc=Элемент <source> не имеет атрибута «src». Не удалось загрузить медиаресурс.
+MediaStreamAudioSourceNodeDifferentRate=Соединение AudioNodes из AudioContexts с различной частотой дискретизации в настоящее время не поддерживается.
+# LOCALIZATION NOTE: %1$S is the Http error code the server returned (e.g. 404, 500, etc), %2$S is the URL of the media resource which failed to load.
+MediaLoadHttpError=Загрузка по HTTP не удалась, статус — %1$S. Не удалось загрузить медиаресурс %2$S.
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load.
+MediaLoadInvalidURI=Некорректный URI. Не удалось загрузить медиаресурс %S.
+# LOCALIZATION NOTE: %1$S is the media resource's format/codec type (basically equivalent to the file type, e.g. MP4,AVI,WMV,MOV etc), %2$S is the URL of the media resource which failed to load.
+MediaLoadUnsupportedTypeAttribute=«%1$S» — неподдерживаемое значение атрибута «type». Не удалось загрузить медиаресурс %2$S.
+MediaLoadUnsupportedTypeAttributeLoadingNextChild=Указанный тип в атрибуте «type» для «%1$S» не поддерживается. Загрузка медиаресурса %2$S не удалась. Пытаемся выполнить загрузку из следующего элемента <source>.
+# LOCALIZATION NOTE: %1$S is the MIME type HTTP header being sent by the web server, %2$S is the URL of the media resource which failed to load.
+MediaLoadUnsupportedMimeType=HTTP «Content-Type» типа «%1$S» не поддерживается. Не удалось загрузить медиаресурс %2$S.
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load because of error in decoding.
+MediaLoadDecodeError=Не удалось декодировать медиаресурс %S.
+MediaWidevineNoWMF=Попытка воспроизведения Widevine без Windows Media Foundation. Подробнее в статье https://support.mozilla.org/kb/fix-video-audio-problems-firefox-windows
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaWMFNeeded=Для воспроизведения видеоформатов %S вам необходимо установить дополнительное программное обеспечение Microsoft, см. https://support.mozilla.org/kb/fix-video-audio-problems-firefox-windows
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaPlatformDecoderNotFound=Видео на этой странице не может быть воспроизведено. В вашей системе могут быть не установлены необходимые видеокодеки для: %S
+MediaUnsupportedLibavcodec=Видео на этой странице не может быть воспроизведено. В вашей системе установлена неподдерживаемая версия libavcodec.
+# LOCALIZATION NOTE: %1$S is the URL of the media resource, %2$S is technical information (in English)
+MediaDecodeError=Не удалось декодировать медиаресурс %1$S, ошибка: %2$S
+# LOCALIZATION NOTE: %1$S is the URL of the media resource, %2$S is technical information (in English)
+MediaDecodeWarning=Удалось декодировать медиаресурс %1$S, но произошла ошибка: %2$S
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaCannotPlayNoDecoders=Не удалось воспроизвести медиа. Нет декодеров для запрошенных форматов: %S
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaNoDecoders=Нет декодеров для некоторых из запрошенных форматов: %S
+MediaCannotInitializePulseAudio=Использование PulseAudio не удалось
+# LOCALIZATION NOTE: %S is the URL of the web page which is not served on HTTPS and thus is not encrypted and considered insecure.
+MediaEMEInsecureContextDeprecatedWarning=Использование зашифрованных медиа расширений на %S в незащищённом (т.е., не HTTPS) контексте является устаревшим и скоро будет отключено. Вам следует рассмотреть переход на более защищённые протоколы, такие как HTTPS.
+# LOCALIZATION NOTE: %S is the URL of the web page which is calling web APIs without passing data (either an audioCapabilities or a videoCapabilities) that will soon be required. See https://bugzilla.mozilla.org/show_bug.cgi?id=1368583#c21 for explanation of this string.
+MediaEMENoCapabilitiesDeprecatedWarning=Вызов navigator.requestMediaKeySystemAccess() (на %S) без передачи кандидата MediaKeySystemConfiguration содержащего audioCapabilities или videoCapabilities является устаревшим и вскоре перестанет поддерживаться.
+# LOCALIZATION NOTE: %S is the URL of the web page which is calling web APIs without passing data (a "codecs" string in the "contentType") that will soon be required. See https://bugzilla.mozilla.org/show_bug.cgi?id=1368583#c21 for explanation of this string.
+MediaEMENoCodecsDeprecatedWarning=Вызов navigator.requestMediaKeySystemAccess() (на %S) с передачей кандидата MediaKeySystemConfiguration содержащего audioCapabilities или videoCapabilities без contentType со строкой «codecs» является устаревшим и вскоре перестанет поддерживаться.
+# LOCALIZATION NOTE: Do not translate "Mutation Event" and "MutationObserver"
+MutationEventWarning=Применение Mutation Events является устаревшим. Вместо них используйте MutationObserver.
+BlockAutoplayError=Автовоспроизведение разрешено только в случае подтверждения пользователем, активного пребывания пользователя на сайте или выключенного в видео звука.
+BlockAutoplayWebAudioStartError=Был заблокирован автоматический запуск AudioContext. Он должен создаваться или продолжаться после действий пользователя на странице.
+# LOCALIZATION NOTE: Do not translate "Components"
+ComponentsWarning=Объект Components устарел. Скоро он будет удалён.
+PluginHangUITitle=Внимание: Плагин не отвечает
+PluginHangUIMessage=Похоже, %S занят или перестал отвечать. Вы можете остановить плагин сейчас или продолжить и посмотреть, сможет ли плагин завершить свою работу.
+PluginHangUIWaitButton=Продолжить
+PluginHangUIStopButton=Остановить плагин
+# LOCALIZATION NOTE: Do not translate "NodeIterator" or "detach()".
+NodeIteratorDetachWarning=Вызов detach() для NodeIterator больше не работает.
+# LOCALIZATION NOTE: Do not translate "LenientThis" and "this"
+LenientThisWarning=Игнорирую получение или установку свойства, имеющего [LenientThis], так как объект «this» является некорректным.
+# LOCALIZATION NOTE: Do not translate "captureEvents()" or "addEventListener()"
+UseOfCaptureEventsWarning=Метод captureEvents() является устаревшим. Для его замены используйте метод DOM 2 addEventListener(). Более подробная информация доступна на https://developer.mozilla.org/en/docs/DOM:element.addEventListener
+# LOCALIZATION NOTE: Do not translate "releaseEvents()" or "removeEventListener()"
+UseOfReleaseEventsWarning=Метод releaseEvents() является устаревшим. Для его замены используйте метод DOM 2 removeEventListener(). Более подробная информация доступна на https://developer.mozilla.org/en/docs/DOM:element.removeEventListener
+# LOCALIZATION NOTE: Do not translate "XMLHttpRequest"
+SyncXMLHttpRequestWarning=Синхронный XMLHttpRequest в основном потоке является устаревшим из-за его пагубного влияния на работу конечного пользователя. Для получения дополнительной помощи обратитесь к http://xhr.spec.whatwg.org/
+# LOCALIZATION NOTE: Do not translate "XMLHttpRequest"
+SyncXMLHttpRequestDeprecatedWarning=Синхронный XMLHttpRequest в основном потоке устарел из-за его вредоносного воздействия на работу конечного пользователя. Для получения дополнительной помощи прочитайте https://xhr.spec.whatwg.org/#sync-warning
+# LOCALIZATION NOTE: Do not translate "window.controllers/Controllers"
+Window_Cc_ontrollersWarning=window.controllers/Controllers является устаревшим. Не используйте его для определения UA.
+ImportXULIntoContentWarning=Импорт узлов XUL в содержимое документа является устаревшим. Эта функциональность может быть скоро удалена.
+# LOCALIZATION NOTE: Do not translate "IndexedDB".
+IndexedDBTransactionAbortNavigation=Незавершённая транзакция IndexedDB была прервана из-за навигации по странице.
+# LOCALIZATION NOTE: Do not translate Will-change, %1$S,%2$S are numbers.
+IgnoringWillChangeOverBudgetWarning=Will-change потребляет слишком много памяти. Лимитом бюджета является площадь поверхности документа умноженная на %1$S (%2$S пикселей). Вхождения will-change, превышающие бюджет, будут проигнорированы.
+# LOCALIZATION NOTE: Do not translate "Worker".
+HittingMaxWorkersPerDomain2=Worker не может быть немедленно запущен, так как другие документы из того же источника уже используют максимальное число worker'ов. Worker сейчас поставлен в очередь и будет запущен после завершения некоторых из других worker'ов.
+# LOCALIZATION NOTE: Do not translate "Application Cache API", "AppCache" and "ServiceWorker".
+AppCacheWarning=Application Cache API (AppCache) устарел и в будущем будет удалён. Для поддержки автономной работы, пожалуйста, рассмотрите применение ServiceWorker.
+# LOCALIZATION NOTE: Do not translate "Worker".
+EmptyWorkerSourceWarning=Попытка создать Worker из пустого источника. Это, вероятно, было непреднамеренным.
+NavigatorGetUserMediaWarning=navigator.mozGetUserMedia был заменён navigator.mediaDevices.getUserMedia
+# LOCALIZATION NOTE: Do not translate "RTCPeerConnection", "getLocalStreams", "getRemoteStreams", "getSenders" or "getReceivers".
+RTCPeerConnectionGetStreamsWarning=RTCPeerConnection.getLocalStreams/getRemoteStreams является устаревшим. Вместо него используйте RTCPeerConnection.getSenders/getReceivers.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %S is a URL.
+InterceptionFailedWithURL=Не удалось загрузить «%S». ServiceWorker перехватил запрос и столкнулся с неожиданной ошибкой.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "cors", "Response", "same-origin" or "Request". %1$S is a URL, %2$S is a URL.
+CorsResponseForSameOriginRequest=Не удалось загрузить «%1$S» при отправке «%2$S» в качестве ответа. ServiceWorker не разрешено синтезировать cors Response для same-origin Request.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "FetchEvent.respondWith()", "FetchEvent", "no-cors", "opaque", "Response", or "RequestMode". %1$S is a URL. %2$S is a RequestMode value.
+BadOpaqueInterceptionRequestModeWithURL=Не удалось загрузить «%1$S». ServiceWorker передал opaque Response в FetchEvent.respondWith() во время обработки «%2$S» FetchEvent. Объекты Opaque Response действительны только при условии установки RequestMode в «no-cors».
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Error", "Response", "FetchEvent.respondWith()", or "fetch()". %S is a URL.
+InterceptedErrorResponseWithURL=Не удалось загрузить «%S». ServiceWorker передал Error Response в FetchEvent.respondWith(). Это обычно значит, что ServiceWorker выполнил некорректный вызов fetch().
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", or "Response.clone()". %S is a URL.
+InterceptedUsedResponseWithURL=Не удалось загрузить «%S». ServiceWorker передал использованный Response в FetchEvent.respondWith(). Тело Response может быть прочитано только один раз. Используйте Response.clone() для многократного доступа к телу.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "opaqueredirect", "Response", "FetchEvent.respondWith()", or "FetchEvent". %S is a URL.
+BadOpaqueRedirectInterceptionWithURL=Не удалось загрузить «%S». ServiceWorker передал opaqueredirect Response в FetchEvent.respondWith() при обработке не-навигационного FetchEvent.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", "RedirectMode" or "follow". %S is a URL.
+BadRedirectModeInterceptionWithURL=Не удалось загрузить «%S». ServiceWorker передал перенаправленный Response в FetchEvent.respondWith(), в то время как RedirectMode не находится в состоянии «follow».
+# LOCALIZATION NOTE: Do not translate "ServiceWorker" or "FetchEvent.preventDefault()". %S is a URL.
+InterceptionCanceledWithURL=Не удалось загрузить «%S». ServiceWorker отменил загрузку путём вызова FetchEvent.preventDefault().
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "promise", or "FetchEvent.respondWith()". %1$S is a URL. %2$S is an error string.
+InterceptionRejectedResponseWithURL=Не удалось загрузить «%1$S». ServiceWorker передал promise в FetchEvent.respondWith(), который отвергнул его с ошибкой «%2$S».
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "promise", "FetchEvent.respondWith()", or "Response". %1$S is a URL. %2$S is an error string.
+InterceptedNonResponseWithURL=Не удалось загрузить «%1$S». ServiceWorker передал promise в FetchEvent.respondWith(), который решил его с non-Response значением «%2$S».
+
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Service-Worker-Allowed" or "HTTP". %1$S and %2$S are URLs.
+ServiceWorkerScopePathMismatch=Не удалось зарегистрировать ServiceWorker: Путь предоставленной области видимости «%1$S» не находится в пределах максимально разрешенной области видимости «%2$S». Отрегулируйте область видимости, переместите сценарий Service Worker'а, или используйте HTTP-заголовок Service-Worker-Allowed, чтобы разрешить область видимости.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker, %2$S is a stringified numeric HTTP status code like "404" and %3$S is a URL.
+ServiceWorkerRegisterNetworkError=Не удалось зарегистрировать/обновить ServiceWorker для области видимости «%1$S»: Загрузка не удалась со статусом «%2$S» для сценария «%3$S».
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker, %2$S is a MIME Media Type like "text/plain" and %3$S is a URL.
+ServiceWorkerRegisterMimeTypeError2=Не удалось зарегистрировать/обновить ServiceWorker для области видимости «%1$S»: Для сценария «%3$S» указан некорректный Content-Type «%2$S». Он должен быть MIME-типом JavaScript.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerRegisterStorageError=Не удалось зарегистрировать/обновить ServiceWorker для области видимости «%S»: Доступ к хранилищу в этом контексте ограничен в соответствии с пользовательскими настройкам приватности или приватным режимом.
+ServiceWorkerGetRegistrationStorageError=Не удалось зарегистрировать service worker: Доступ к хранилищу в этом контексте ограничен в соответствии с пользовательскими настройками или приватным режимом.
+ServiceWorkerGetClientStorageError=Не удалось получить доступ к клиенту(ам) service worker: Доступ к хранилищу в этом контексте ограничен в соответствии с пользовательскими настройками или приватным режимом.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker" and "postMessage". %S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerPostMessageStorageError=ServiceWorker для области видимости «%S» не смог выполнить «postMessage», так как доступ к хранилищу в этом контексте ограничен в соответствии с пользовательскими настройками или приватным режимом.
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerGraceTimeoutTermination=Завершаю работу ServiceWorker для области видимости «%1$S» с ожидающими waitUntil/respondWith promises из-за grace timeout.
+# LOCALIZATION NOTE (ServiceWorkerNoFetchHandler): Do not translate "Fetch".
+ServiceWorkerNoFetchHandler=Обработчики события Fetch должны быть добавлены во время первоначального выполнения worker-сценария.
+ExecCommandCutCopyDeniedNotInputDriven=В выполнении document.execCommand(‘cut’/‘copy’) было отказано, так как она не была вызвана пользовательским короткоживущим обработчиком событий.
+ManifestIdIsInvalid=Участника id не удалось разрешить в действительный URL-адрес.
+ManifestIdNotSameOrigin=Источник участника id должен совпадать с источником участника start_url.
+ManifestShouldBeObject=Манифест должен быть объектом.
+ManifestScopeURLInvalid=URL диапазона недействителен.
+ManifestScopeNotSameOrigin=Источник URL диапазона должен совпадать с источником документа.
+ManifestStartURLOutsideScope=Начальный URL лежит вне диапазона, поэтому диапазон является недействительным.
+ManifestStartURLInvalid=Начальный URL недействителен.
+ManifestStartURLShouldBeSameOrigin=Источник начального URL должен совпадать с источником документа.
+# LOCALIZATION NOTE: %1$S is the name of the object whose property is invalid. %2$S is the name of the invalid property. %3$S is the expected type of the property value. E.g. "Expected the manifest's start_url member to be a string."
+ManifestInvalidType=Ожидалось, что свойство %2$S в %1$S будет иметь тип %3$S.
+# LOCALIZATION NOTE: %1$S is the name of the property whose value is invalid. %2$S is the (invalid) value of the property. E.g. "theme_color: 42 is not a valid CSS color."
+ManifestInvalidCSSColor=%1$S: %2$S не является корректным цветом CSS.
+# LOCALIZATION NOTE: %1$S is the name of the property whose value is invalid. %2$S is the (invalid) value of the property. E.g. "lang: 42 is not a valid language code."
+ManifestLangIsInvalid=%1$S: %2$S не является корректным языковым кодом.
+# LOCALIZATION NOTE: %1$S is the name of the parent property whose value is invalid (e.g., "icons"). %2$S is the index of the image object that is invalid (from 0). %3$S is the name of actual member that is invalid. %4$S is the invalid value. E.g. "icons item at index 2 is invalid. The src member is an invalid URL http://:Invalid"
+ManifestImageURLIsInvalid=Элемент %1$S по индексу %2$S некорректен. Параметр %3$S имеет некорректный URL %4$S
+# LOCALIZATION NOTE: %1$S is the name of the parent property that that contains the unusable image object (e.g., "icons"). %2$S is the index of the image object that is unusable (from 0). E.g. "icons item at index 2 lacks a usable purpose. It will be ignored."
+ManifestImageUnusable=Элемент %1$S по индексу %2$S не может быть использован. Он будет проигнорирован.
+# LOCALIZATION NOTE: %1$S is the name of the parent property that contains the unsupported value (e.g., "icons"). %2$S is the index of the image object that has the unsupported value (from 0). %3$S are the unknown purposes. E.g. "icons item at index 2 includes unsupported purpose(s): a b."
+ManifestImageUnsupportedPurposes=Элемент %1$S по индексу %2$S имеет неподдерживаемое назначение(я): %3$S.
+# LOCALIZATION NOTE: %1$S is the name of the parent property that has a repeated purpose (e.g., "icons"). %2$S is the index of the image object that has the repeated purpose (from 0). %3$S is the repeated purposes. E.g. "icons item at index 2 includes repeated purpose(s): a b."
+ManifestImageRepeatedPurposes=Элемент %1$S по индексу %2$S имеет повторяющееся назначение(я): %3$S.
+PatternAttributeCompileFailure=Не удалось проверить <input pattern='%S'>, потому что pattern не является корректным regexp: %S
+# LOCALIZATION NOTE: Do not translate "postMessage" or DOMWindow. %S values are origins, like https://domain.com:port
+TargetPrincipalDoesNotMatch=Не удалось выполнить «postMessage» над «DOMWindow»: указанный источник цели («%S») не соответствует источнику окна получателя («%S»).
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbed=Переписываю сделанный в старом стиле Youtube Flash embed (%S) в iframe embed (%S). Пожалуйста, обновите код страницы, чтобы использовать iframe вместо embed/object, если это возможно.
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbedPathParams=Переписываю сделанный в старом стиле Youtube Flash embed (%S) в iframe embed (%S). Params не поддерживались iframe embeds и были сконвертированы. Пожалуйста, обновите код страницы, чтобы использовать iframe вместо embed/object, если это возможно.
+# LOCALIZATION NOTE: This error is reported when the "Encryption" header for an
+# incoming push message is missing or invalid. Do not translate "ServiceWorker",
+# "Encryption", and "salt". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncryptionHeader=ServiceWorker для области видимости «%1$S» не смог расшифровать push-сообщение. Заголовок «Encryption» должен включать в себя уникальный для каждого сообщения параметр «salt». Для получения дополнительной информации обратитесь к https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 .
+# LOCALIZATION NOTE: This error is reported when the "Crypto-Key" header for an
+# incoming push message is missing or invalid. Do not translate "ServiceWorker",
+# "Crypto-Key", and "dh". %1$S is the ServiceWorker scope URL.
+PushMessageBadCryptoKeyHeader=ServiceWorker для области видимости «%1$S» не смог расшифровать push-сообщение. Заголовок «Crypto-Key» должен включать в себя параметр «dh», содержащий открытый ключ сервера приложения. Для получения дополнительной информации обратитесь к https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 .
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt because the deprecated
+# "Encryption-Key" header for an incoming push message is missing or invalid.
+# Do not translate "ServiceWorker", "Encryption-Key", "dh", "Crypto-Key", and
+# "Content-Encoding: aesgcm". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncryptionKeyHeader=ServiceWorker для области видимости «%1$S» не смог расшифровать push-сообщение. Заголовок «Encryption-Key» должен включать в себя параметр «dh». Этот заголовок является устаревшим и скоро будет удален. Пожалуйста, вместо него используйте «Crypto-Key» с «Content-Encoding: aesgcm». Для получения дополнительной информации обратитесь к https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 .
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "Content-Encoding" header is missing or contains an
+# unsupported encoding. Do not translate "ServiceWorker", "Content-Encoding",
+# "aesgcm", and "aesgcm128". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncodingHeader=ServiceWorker для области видимости «%1$S» не смог расшифровать push-сообщение. Заголовок «Content-Encoding» должен быть «aesgcm». «aesgcm128» разрешен, но является устаревшим и скоро будет удален. Для получения дополнительной информации обратитесь к https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 .
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "dh" parameter is not valid base64url. Do not translate
+# "ServiceWorker", "dh", "Crypto-Key", and "base64url". %1$S is the
+# ServiceWorker scope URL.
+PushMessageBadSenderKey=ServiceWorker для области видимости «%1$S» не смог расшифровать push-сообщение. Параметр «dh» в заголовке «Crypto-Key» должен быть открытым ключом Диффи-Хеллмана сервера приложения, и закодированным в base64url (https://tools.ietf.org/html/rfc7515#appendix-C) и в «несжатой» или «сырой» форме (65 байт перед кодированием). Для получения дополнительной информации обратитесь к https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 .
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "salt" parameter is not valid base64url. Do not translate
+# "ServiceWorker", "salt", "Encryption", and "base64url". %1$S is the
+# ServiceWorker scope URL.
+PushMessageBadSalt=ServiceWorker для области видимости «%1$S» не смог расшифровать push-сообщение. Параметр «salt» в заголовке «Encryption» должен быть закодирован в base64url (https://tools.ietf.org/html/rfc7515#appendix-C) и его размер должен быть не менее 16 байт перед кодированием. Для получения дополнительной информации обратитесь к https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 .
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "rs" parameter is not a number, or is less than the pad size.
+# Do not translate "ServiceWorker", "rs", or "Encryption". %1$S is the
+# ServiceWorker scope URL. %2$S is the minimum value (1 for aesgcm128, 2 for
+# aesgcm).
+PushMessageBadRecordSize=ServiceWorker для области видимости «%1$S» не смог расшифровать push-сообщение. Величина параметра «rs» в заголовке «Encryption» должна лежать в диапазоне от %2$S до 2^36-31, или параметр должен быть пропущен. Для получения дополнительной информации обратитесь к https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 .
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because an encrypted record is shorter than the pad size, the pad is larger
+# than the record, or any of the padding bytes are non-zero. Do not translate
+# "ServiceWorker". %1$S is the ServiceWorker scope URL. %2$S is the pad size
+# (1 for aesgcm128, 2 for aesgcm).
+PushMessageBadPaddingError=ServiceWorker для области видимости «%1$S» не смог расшифровать push-сообщение. Запись в зашифрованном сообщении не была заполнена (padded) правильно. Для получения дополнительной информации обратитесь к https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 .
+# LOCALIZATION NOTE: This error is reported when push message decryption fails
+# and no specific error info is available. Do not translate "ServiceWorker".
+# %1$S is the ServiceWorker scope URL.
+PushMessageBadCryptoError=ServiceWorker для области видимости «%1$S» не смог расшифровать push-сообщение. Для получения помощи с шифрованием обратитесь к https://developer.mozilla.org/docs/Web/API/Push_API/Using_the_Push_API#Encryption
+# LOCALIZATION NOTE: %1$S is the type of a DOM event. 'passive' is a literal parameter from the DOM spec.
+PreventDefaultFromPassiveListenerWarning=Игнорирую вызов «preventDefault()» по событию «%1$S» от обработчика, зарегистрированного как «passive».
+# LOCALIZATION NOTE: 'ImageBitmapRenderingContext.transferImageBitmap' and 'ImageBitmapRenderingContext.transferFromImageBitmap' should not be translated
+ImageBitmapRenderingContext_TransferImageBitmapWarning=ImageBitmapRenderingContext.transferImageBitmap является устаревшим и скоро будет удалён. Вместо него используйте ImageBitmapRenderingContext.transferFromImageBitmap.
+IIRFilterChannelCountChangeWarning=Изменение количества каналов IIRFilterNode может привести к аудиопомехам.
+BiquadFilterChannelCountChangeWarning=Изменение количества каналов BiquadFilterNode может привести к аудиопомехам.
+# LOCALIZATION NOTE: Do not translate ".png"
+GenericImageNamePNG=изображение.png
+GenericFileName=файл
+GeolocationInsecureRequestIsForbidden=Получение Geolocation может быть выполнено только при защищённом соединении.
+NotificationsInsecureRequestIsForbidden=Разрешение на отправку уведомлений может быть предоставлено только при защищённом соединении.
+NotificationsCrossOriginIframeRequestIsForbidden=Разрешение на отправку уведомлений может быть предоставлено только документу верхнего уровня или iframe с того же домена.
+NotificationsRequireUserGesture=Разрешение на отправку уведомлений может быть предоставлено только для пользовательского короткоживущего обработчика событий.
+NotificationsRequireUserGestureDeprecationWarning=Запрашивание разрешений на отправку уведомлений вне пользовательского короткоживущего обработчика событий устарело и не будет поддерживаться в будущем.
+# LOCALIZATION NOTE: Do not translate "content", "Window", and "window.top"
+WindowContentUntrustedWarning=Атрибут ‘content’ объекта Window является устаревшим. Пожалуйста, используйте вместо него ‘window.top’.
+# LOCALIZATION NOTE: The first %S is the tag name of the element that starts the loop, the second %S is the element's ID.
+SVGRefLoopWarning=SVG <%S> с идентификатором «%S» имеет цикл ссылок.
+# LOCALIZATION NOTE: The first %S is the tag name of the element in the chain where the chain was broken, the second %S is the element's ID.
+SVGRefChainLengthExceededWarning=Слишком длинная цепочка ссылок SVG <%S> была покинута у элемента с идентификатором «%S».
+# LOCALIZATION NOTE: Do not translate SVGSVGElement.deselectAll.
+SVGDeselectAll=SVGSVGElement.deselectAll устарел, поскольку он дублирует функциональность Selection API.
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.nearestViewportElement or SVGElement.viewportElement.
+SVGNearestViewportElement=SVGGraphicsElement.nearestViewportElement является устаревшим и будет удалён в будущем. Вместо него используйте SVGElement.viewportElement.
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.farthestViewportElement.
+SVGFarthestViewportElement=SVGGraphicsElement.farthestViewportElement является устаревшим и будет удалён в будущем.
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceEmpty=Атрибут «%S» элемента <script> является пустым.
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceInvalidUri=Атрибут «%S» элемента <script> не является корректным URI: «%S»
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceLoadFailed=Загрузка <script> по адресу «%S» не удалась.
+ModuleSourceLoadFailed=Загрузка модуля по адресу «%S» не удалась.
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceMalformed=URI источника в <script> имеет неверный формат: «%S».
+ModuleSourceMalformed=URI модуля имеет неверный формат: «%S».
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceNotAllowed=URI источника в <script> не разрешён в этом документе: «%S».
+ModuleSourceNotAllowed=URI модуля не разрешён в этом документе: «%S».
+WebExtContentScriptModuleSourceNotAllowed=Скрипты содержимого WebExtension могут загружать только модули с URL-адресами moz-extension, но не: «%S».
+ModuleResolveFailureNoWarn=Ошибка разрешения спецификатора модуля «%S».
+ModuleResolveFailureWarnRelative=Ошибка разрешения спецификатора модуля «%S». Связанные спецификаторы модуля должны начинаться с «./», «../» или «/».
+ImportMapInvalidTopLevelKey=В карте импорта присутствует недопустимый ключ верхнего уровня «%S».
+ImportMapEmptySpecifierKeys=Ключи спецификатора не могут быть пустыми строками.
+ImportMapAddressesNotStrings=Адреса должны быть строками.
+ImportMapInvalidAddress=Адрес «%S» некорректен.
+# %1$S is the specifier key, %2$S is the URL.
+ImportMapAddressNotEndsWithSlash=Для ключа спецификатора «%1$S» указан некорректный адрес; поскольку «%1$S» оканчивается косой чертой, адрес «%2$S» должен оканчиваться так же.
+ImportMapScopePrefixNotParseable=URL-адрес префикса области «%S» не может быть проанализирован.
+ImportMapResolutionBlockedByNullEntry=Разрешение спецификатора «%S» было заблокировано null-записью.
+ImportMapResolutionBlockedByAfterPrefix=Разрешение спецификатора «%S» было заблокировано, так как подстрока после префикса не могла быть проанализирована как URL относительно адреса в карте импорта.
+ImportMapResolutionBlockedByBacktrackingPrefix=Разрешение спецификатора «%S» было заблокировано, так как проанализированный URL не начинается с адреса в карте импорта.
+ImportMapResolveInvalidBareSpecifierWarnRelative=Спецификатор «%S» являлся голым спецификатором, но не был переназначен на что-либо. Связанные спецификаторы модуля должны начинаться с «./», «../» или «/».
+# LOCALIZATION NOTE: Do not translate "<script type='importmap'>", "src".
+ImportMapExternalNotSupported=Внешние карты импорта не поддерживаются: <script type='importmap'> с атрибутом src в настоящее время не поддерживается.
+ImportMapNotAllowedMultiple=Множественные карты импорта не допускаются.
+ImportMapNotAllowedAfterModuleLoad=Карты импорта не разрешены после начала загрузки или предварительной загрузки модуля.
+# LOCALIZATION NOTE: %1$S is the invalid property value and %2$S is the property name.
+InvalidKeyframePropertyValue=Значение свойства ключевого кадра «%1$S» является недопустимым согласно синтаксису для «%2$S».
+# LOCALIZATION NOTE: Do not translate "ReadableStream".
+ReadableStreamReadingFailed=Не удалось прочитать данные из ReadableStream: «%S».
+# LOCALIZATION NOTE: Do not translate "registerProtocolHandler"
+RegisterProtocolHandlerPrivateBrowsingWarning=Невозможно использовать registerProtocolHandler в приватном режиме.
+MotionEventWarning=Использование датчика движения является устаревшим.
+OrientationEventWarning=Использование датчика ориентации является устаревшим.
+ProximityEventWarning=Использование датчика приближения является устаревшим.
+AmbientLightEventWarning=Использование датчика внешнего освещения является устаревшим.
+UnsupportedEntryTypesIgnored=Игнорируем неподдерживаемые entryTypes: %S.
+AllEntryTypesIgnored=Неправильные entryTypes; прерываю регистрацию.
+# LOCALIZATION NOTE: do not localize key=“%S” modifiers=“%S” id=“%S”
+GTK2Conflict2=Key event недоступен на GTK2: ключ=«%S» модификаторы=«%S» id=«%S»
+WinConflict2=Key event недоступен при использовании некоторых раскладок клавиатуры: ключ=«%S» модификаторы=«%S» id=«%S»
+# LOCALIZATION NOTE: do not translated "document.domain"
+DocumentSetDomainNotAllowedWarning=Установка document.domain в изолированной среде источников различного происхождения запрещено.
+
+#LOCALIZATION NOTE(DeprecatedTestingInterfaceWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingInterfaceWarning=Интерфейс TestingDeprecatedInterface только для тестирования и это его тестовое сообщение об его устаревании.
+#LOCALIZATION NOTE(DeprecatedTestingMethodWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingMethodWarning=Метод TestingDeprecatedInterface.deprecatedMethod() только для тестирования и это его тестовое сообщение об его устаревании.
+#LOCALIZATION NOTE(DeprecatedTestingAttributeWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingAttributeWarning=Атрибут TestingDeprecatedInterface.deprecatedAttribute только для тестирования и это его тестовое сообщение об его устаревании.
+# LOCALIZATION NOTE (CreateImageBitmapCanvasRenderingContext2DWarning): Do not translate CanvasRenderingContext2D and createImageBitmap.
+CreateImageBitmapCanvasRenderingContext2DWarning=Использование CanvasRenderingContext2D в createImageBitmap является устаревшим.
+
+# LOCALIZATION NOTE (DrawWindowCanvasRenderingContext2DWarning): Do not translate CanvasRenderingContext2D, drawWindow and tabs.captureTab.
+DrawWindowCanvasRenderingContext2DWarning=Использование метода drawWindow из CanvasRenderingContext2D является устаревшим. Для его замены используйте метод tabs.captureTab из API расширений https://developer.mozilla.org/docs/Mozilla/Add-ons/WebExtensions/API/tabs/captureTab
+
+# LOCALIZATION NOTE (MozRequestFullScreenDeprecatedPrefixWarning): Do not translate mozRequestFullScreen.
+MozRequestFullScreenDeprecatedPrefixWarning=Метод mozRequestFullScreen() является устаревшим.
+# LOCALIZATION NOTE (MozfullscreenchangeDeprecatedPrefixWarning): Do not translate onmozfullscreenchange.
+MozfullscreenchangeDeprecatedPrefixWarning=Событие onmozfullscreenchange является устаревшим.
+# LOCALIZATION NOTE (MozfullscreenerrorDeprecatedPrefixWarning): Do not translate onmozfullscreenerror.
+MozfullscreenerrorDeprecatedPrefixWarning=Событие onmozfullscreenerror является устаревшим.
+# LOCALIZATION NOTE(External_AddSearchProviderWarning): Do not translate AddSearchProvider.
+External_AddSearchProviderWarning=Метод AddSearchProvider является устаревшим.
+
+# LOCALIZATION NOTE: Do not translate "MouseEvent.mozPressure" and "PointerEvent.pressure".
+MouseEvent_MozPressureWarning=Свойство MouseEvent.mozPressure является устаревшим. Для его замены используйте PointerEvent.pressure.
+# LOCALIZATION NOTE: Do not translate small, normal, big and mathsize.
+MathML_DeprecatedMathSizeValueWarning=Значения «small», «normal», «big» для атрибута mathsize являются устаревшими и будут удалены в будущем.
+# LOCALIZATION NOTE: Do not translate veryverythinmathspace, verythinmathspace,
+# thinmathspace, mediummathspace, thickmathspace, verythickmathspace, veryverythickmathspace and MathML.
+MathML_DeprecatedMathSpaceValueWarning=Значения «veryverythinmathspace», «verythinmathspace», «thinmathspace», «mediummathspace», «thickmathspace», «verythickmathspace» и «veryverythickmathspace» для указания длины в MathML являются устаревшими и будут удалены в будущем.
+# LOCALIZATION NOTE: Do not translate MathML, background, color, fontfamily, fontsize, fontstyle and fontweight.
+MathML_DeprecatedStyleAttributeWarning=Атрибуты MathML «background», «color», «fontfamily», «fontsize», «fontstyle» и «fontweight» являются устаревшими и будут удалены в будущем.
+# LOCALIZATION NOTE: Do not translate "MouseEvent.mozInputSource" and "PointerEvent.pointerType".
+MozInputSourceWarning=MouseEvent.mozInputSource устарел. Вместо этого используйте PointerEvent.pointerType.
+# LOCALIZATION NOTE: Do not translate "initMouseEvent()" and "MouseEvent()".
+InitMouseEventWarning=initMouseEvent() устарела. Вместо этого используйте конструктор MouseEvent().
+# LOCALIZATION NOTE: Do not translate "initNSMouseEvent()" and "MouseEvent()".
+InitNSMouseEventWarning=initNSMouseEvent() устарела. Вместо этого используйте конструктор MouseEvent().
+# LOCALIZATION NOTE: Do not translate MathML. %S is the deprecated length value.
+MathML_DeprecatedMathSpaceValue2Warning=Значение длины MathML «%S» устарело и будет удалено в будущем.
+# LOCALIZATION NOTE: Do not translate mathvariant or MathML. %S is the deprecated value of the mathvariant attribute.
+MathML_DeprecatedMathVariantWarning=Параметр «mathvariant='%S'» в элементах MathML устарел и будет в будущем удалён.
+# LOCALIZATION NOTE: Do not translate MathML and STIXGeneral. %S is a documentation URL.
+MathML_DeprecatedStixgeneralOperatorStretchingWarning=Поддержка визуализации "stretched" операторов MathML с использованием шрифтов STIXGeneral устарела и может быть удалена в будущем. Для получения сведений о новых шрифтах, поддержка которых будет продолжена, обратитесь к %S
+# LOCALIZATION NOTE: Do not translate MathML and scriptminsize.
+MathML_DeprecatedScriptminsizeAttributeWarning=Атрибут MathML «scriptminsize» является устаревшим и будет удалён в будущем.
+# LOCALIZATION NOTE: Do not translate MathML and scriptsizemultiplier.
+MathML_DeprecatedScriptsizemultiplierAttributeWarning=Атрибут MathML «scriptsizemultiplier» является устаревшим и будет удалён в будущем.
+FormSubmissionUntrustedEventWarning=Отправка формы с использованием ненадежного события отправки является устаревшей и будет удалена в будущем.
+
+# LOCALIZATION NOTE: Do not translate "sizeToContent()".
+SizeToContentWarning=sizeToContent() устарела и будет удалена в будущем.
+
+WebShareAPI_Failed=Операция share не удалась.
+WebShareAPI_Aborted=Операция share была прервана.
+# LOCALIZATION NOTE (UnknownProtocolNavigationPrevented): %1$S is the destination URL.
+UnknownProtocolNavigationPrevented=Переход на «%1$S» заблокирован, поскольку протокол неизвестен.
+PostMessageSharedMemoryObjectToCrossOriginWarning=Невозможно отправить сообщение, содержащее объект общей памяти, в окно постороннего источника.
+# LOCALIZATION NOTE: %S is the URL of the resource in question
+UnusedLinkPreloadPending=Ресурс «%S», уже загруженный по ссылке для предварительной загрузки, не был использован в течение нескольких секунд. Убедитесь, что все атрибуты тега «preload» были заданы корректно.
+
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-same-origin and sandbox (though you may translate "sandboxed").
+RequestStorageAccessNullPrincipal=document.requestStorageAccess() не может быть вызван для документа с непрозрачным источником, например, изолированный iframe без allow-same-origin в его атрибуте sandbox.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-storage-access-by-user-activation and sandbox (though you may translate "sandboxed").
+RequestStorageAccessSandboxed=document.requestStorageAccess() не может быть вызван в изолированном iframe без allow-storage-access-by-user-activation в его атрибуте sandbox.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess() and iframe.
+RequestStorageAccessNested=document.requestStorageAccess() не может быть вызван во вложенном iframe.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(). In some locales it may be preferable to not translate "event handler", either.
+RequestStorageAccessUserGesture=document.requestStorageAccess() может быть запрошен только из кратковременного обработчика событий, сгенерированного пользователем.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), Permissions Policy and storage-access.
+RequestStorageAccessPermissionsPolicy=document.requestStorageAccess() нельзя вызывать, если функция доступа к хранилищу заблокирована Политикой разрешений.
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess()
+RequestStorageAccessNotSecureContext=document.requestStorageAccess() может предоставлять доступ только к безопасным контекстам.
+# LOCALIZATION NOTE: Do not translate "Location" and "History".
+LocChangeFloodingPrevented=Слишком много вызовов API Location или History за короткий промежуток времени.
+FolderUploadPrompt.title = Подтверждение выгрузки
+# LOCALIZATION NOTE: %S is the name of the folder the user selected in the file picker.
+FolderUploadPrompt.message = Вы уверены, что хотите выгрузить все файлы из «%S»? Делайте это только в том случае, если доверяете сайту.
+FolderUploadPrompt.acceptButtonLabel = Выгрузить
+InputPickerBlockedNoUserActivation=Элемент <input> был заблокирован, так как пользователь не совершал никаких действий для его активации.
+ExternalProtocolFrameBlockedNoUserActivation=Iframe, использующий внешний протокол, был заблокирован, так как пользователь не совершал никаких действий для его активации, или так как прошло недостаточно времени с момента загрузки предыдущего похожего iframe.
+MultiplePopupsBlockedNoUserActivation=Открытие нескольких всплывающих окон было заблокировано, так как пользователь не совершал никаких действий для их активации.
+# LOCALIZATION NOTE: %S is the URL of the preload that was ignored.
+PreloadIgnoredInvalidAttr=Предзагрузка %S была проигнорирована из-за неизвестного значения атрибута «as» или «type», или неподходящего атрибута «media».
+# LOCALIZATION NOTE: %S is the blob URL. Don't translate "agent cluster".
+BlobDifferentClusterError=Не удалось получить доступ к blob-ссылке «%S» из стороннего agent cluster.
+# LOCALIZATION NOTE: %S is the blob URL. Don't translate "partition key".
+PartitionKeyDifferentError=Невозможно получить доступ к URL-адресу blob «%S» с другим ключом раздела.
+# LOCALIZATION NOTE: Do not translate "Element.setCapture()" and "Element.setPointerCapture()"".
+ElementSetCaptureWarning=Вызов Element.setCapture() является устаревшим. Для его замены используйте Element.setPointerCapture(). Для получения информации обратитесь к https://developer.mozilla.org/docs/Web/API/Element/setPointerCapture
+# LOCALIZATION NOTE: Do not translate "Element.releaseCapture()" and "Element.releasePointerCapture()".
+ElementReleaseCaptureWarning=Вызов Element.releaseCapture() является устаревшим. Для его замены используйте Element.releasePointerCapture(). Для получения информации обратитесь к https://developer.mozilla.org/docs/Web/API/Element/releasePointerCapture
+# LOCALIZATION NOTE: Do not translate "Document.releaseCapture()" and "Element.releasePointerCapture()".
+DocumentReleaseCaptureWarning=Вызов Document.releaseCapture() является устаревшим. Для его замены используйте Element.releasePointerCapture(). Для получения информации обратитесь к https://developer.mozilla.org/docs/Web/API/Element/releasePointerCapture
+
+# LOCALIZATION NOTE: Don't translate browser.runtime.lastError, %S is the error message from the unchecked value set on browser.runtime.lastError.
+WebExtensionUncheckedLastError=Значение browser.runtime.lastError не было проверено: %S
+
+# LOCALIZATION NOTE: Do not translate "OffscreenCanvas.toBlob()" and "OffscreenCanvas.convertToBlob()".
+OffscreenCanvasToBlobWarning=Применение OffscreenCanvas.toBlob() является устаревшим. Вместо него используйте OffscreenCanvas.convertToBlob().
+
+# LOCALIZATION NOTE: Do not translate "InstallTrigger"
+InstallTriggerDeprecatedWarning=InstallTrigger устарел и будет удалён в будущем.
+# LOCALIZATION NOTE: Do not translate "InstallTrigger.install()"
+InstallTriggerInstallDeprecatedWarning=InstallTrigger.install() устарел и будет удалён в будущем. Подробнее: https://extensionworkshop.com/documentation/publish/self-distribution/
+
+# LOCALIZATION NOTE: Do not translate "HTMLOptionsCollection.length". %1$S is the invalid value, %2$S is the current limit.
+SelectOptionsLengthAssignmentWarning=Отказ в расширении списка опций <select> через присвоение значения переменной HTMLOptionsCollection.length (значение %1$S). Максимальный поддерживаемый размер: %2$S.
+
+# LOCALIZATION NOTE: Do not translate "isExternalCTAP2SecurityKeySupported".
+IsExternalCTAP2SecurityKeySupportedWarning=isExternalCTAP2SecurityKeySupported() устарел.
+
+InvalidFormControlUnfocusable=Недопустимый элемент управления формой не может быть фокусируемым.
+# LOCALIZATION NOTE: Do not translate "name="
+InvalidNamedFormControlUnfocusable=Недопустимый элемент управления формой с name=‘%S’ не может быть фокусирован.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/extensions.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/extensions.properties
new file mode 100644
index 0000000000..bffb4dba54
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/extensions.properties
@@ -0,0 +1,26 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#LOCALIZATION NOTE (uninstall.confirmation.title) %S is the name of the extension which is about to be uninstalled.
+uninstall.confirmation.title = Удаление %S
+
+#LOCALIZATION NOTE (uninstall.confirmation.message) %S is the name of the extension which is about to be uninstalled.
+uninstall.confirmation.message = Расширение «%S» просит, чтобы его удалили. Что вы хотите сделать?
+
+uninstall.confirmation.button-0.label = Удалить
+uninstall.confirmation.button-1.label = Оставить установленным
+
+saveaspdf.saveasdialog.title = Сохранить как
+
+#LOCALIZATION NOTE (newTabControlled.message2) %S is the icon and name of the extension which updated the New Tab page.
+newTabControlled.message2 = Страница, отображаемая при открытии новой вкладки, была изменена расширением %S.
+newTabControlled.learnMore = Подробнее
+
+#LOCALIZATION NOTE (homepageControlled.message) %S is the icon and name of the extension which updated the homepage.
+homepageControlled.message = Содержимое, отображаемое при открытии домашней страницы и новых окон, было изменено расширением %S.
+homepageControlled.learnMore = Подробнее
+
+#LOCALIZATION NOTE (tabHideControlled.message) %1$S is the icon and name of the extension which hid tabs, %2$S is the icon of the all tabs button.
+tabHideControlled.message = Расширение %1$S прячет некоторые из ваших вкладок. Однако вы можете получить доступ ко всем вашим вкладкам из %2$S.
+tabHideControlled.learnMore = Подробнее
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/fallbackMenubar.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/fallbackMenubar.properties
new file mode 100644
index 0000000000..49c67435e5
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/fallbackMenubar.properties
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# OSX only. Default menu label when there is no xul menubar.
+
+quitMenuitem.label=Выход
+quitMenuitem.key=q
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/filepicker.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/filepicker.properties
new file mode 100644
index 0000000000..d4bd3711d8
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/filepicker.properties
@@ -0,0 +1,20 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE: The extensions to which these descriptions refer
+# now live in toolkit/content/filepicker.properties
+allTitle=Все файлы
+htmlTitle=HTML-файлы
+textTitle=Текстовые файлы
+imageTitle=Изображения
+xmlTitle=XML-файлы
+xulTitle=XUL-файлы
+appsTitle=Приложения
+audioTitle=Аудиофайлы
+videoTitle=Видеофайлы
+
+pdfTitle=PDF-файлы
+
+formatLabel=Формат:
+selectedFileNotReadableError=Нет прав на чтение выбранного файла
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/global-strres.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/global-strres.properties
new file mode 100644
index 0000000000..c207ad51af
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/global-strres.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+16389=Произошла неизвестная ошибка (%1$S)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/intl.css b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/intl.css
new file mode 100644
index 0000000000..e16ca02767
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/intl.css
@@ -0,0 +1,19 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+/*
+ * This file contains all localizable skin settings such as
+ * font, layout, and geometry
+ */
+window {
+ font: 3mm tahoma,arial,helvetica,sans-serif;
+}
+
+#migrationWizard {
+ min-width: 50em !important;
+}
+
+#AdvancedEdit {
+ min-width: 25em !important;
+}
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/intl.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/intl.properties
new file mode 100644
index 0000000000..5cbe352f82
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/intl.properties
@@ -0,0 +1,43 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (intl.accept_languages):
+# This is a comma-separated list of valid BCP 47 language tags.
+#
+# Begin with the value of 'general.useragent.locale'. Next, include language
+# tags for other languages that you expect most users of your locale to be
+# able to speak, so that their browsing experience degrades gracefully if
+# content is not available in their primary language.
+#
+# It is recommended that you include "en-US, en" at the end of the list as a
+# last resort. However, if you know that users of your locale would prefer a
+# different variety of English, or if they are not likely to understand
+# English at all, you may opt to include a different English language tag, or
+# to exclude English altogether.
+#
+# For example, the Breton [br] locale might consider including French and
+# British English in their list, since those languages are commonly spoken in
+# the same area as Breton:
+# intl.accept_languages=br, fr-FR, fr, en-GB, en
+intl.accept_languages=ru-RU, ru, en-US, en
+
+# LOCALIZATION NOTE (font.language.group):
+# This preference controls the initial setting of the language drop-down menu
+# in the Content > Fonts & Colors > Advanced preference panel.
+#
+# Set it to the value of one of the menuitems in the "selectLangs" menulist in
+# http://dxr.mozilla.org/mozilla-central/source/browser/components/preferences/fonts.xul
+font.language.group=x-cyrillic
+
+# LOCALIZATION NOTE (pluralRule): Pick the appropriate plural rule for your
+# language. This will determine how many plural forms of a word you will need
+# to provide and in what order.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+pluralRule=7
+
+# LOCALIZATION NOTE (intl.menuitems.alwaysappendaccesskeys, intl.menuitems.insertseparatorbeforeaccesskeys):
+# Valid values are: true, false, <empty string>
+# Missing preference or empty value equals false.
+intl.menuitems.alwaysappendaccesskeys=
+intl.menuitems.insertseparatorbeforeaccesskeys=true
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/keys.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/keys.properties
new file mode 100644
index 0000000000..357695fc36
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/keys.properties
@@ -0,0 +1,78 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE : FILE This file contains the application's labels for keys on the keyboard.
+# If you decide to translate this file, you should translate it based on
+# the prevelant kind of keyboard for your target user.
+# LOCALIZATION NOTE : There are two types of keys, those w/ text on their labels
+# and those w/ glyphs.
+# LOCALIZATION NOTE : VK_<…> represents a key on the keyboard.
+#
+# For more information please see bugzilla bug 90888.
+
+# LOCALIZATION NOTE : FILE This file contains the application's labels for keys on the keyboard.
+# If you decide to translate this file, you should translate it based on
+# the prevalent kind of keyboard for your target user.
+# LOCALIZATION NOTE : There are two types of keys, those w/ text on their labels
+# and those w/ glyphs.
+# LOCALIZATION NOTE : VK_<…> represents a key on the keyboard.
+#
+# For more information please see bugzilla bug 90888.
+
+# F1..F10 should probably not be translated unless there are keyboards that actually have other labels
+# F11..F20 might be something else, but are really keyboard specific and not region/language specific
+# there are actually two different F11/F12 keys, I don't know which one these labels represent.
+# eg, F13..F20 on a sparc keyboard are labeled Props, Again .. Find, Cut
+# sparc also has Stop, Again and F11/F12. VK_F11/VK_F12 probably map to Stop/Again
+# LOCALIZATION NOTE : BLOCK Do not translate the next block
+VK_F1=F1
+VK_F2=F2
+VK_F3=F3
+VK_F4=F4
+VK_F5=F5
+VK_F6=F6
+VK_F7=F7
+VK_F8=F8
+VK_F9=F9
+VK_F10=F10
+
+VK_F11=F11
+VK_F12=F12
+VK_F13=F13
+VK_F14=F14
+VK_F15=F15
+VK_F16=F16
+VK_F17=F17
+VK_F18=F18
+VK_F19=F19
+VK_F20=F20
+# LOCALIZATION NOTE : BLOCK end do not translate block
+
+# LOCALIZATION NOTE : BLOCK GLYPHS, DO translate this block
+VK_UP=Вверх
+VK_DOWN=Вниз
+VK_LEFT=Влево
+VK_RIGHT=Вправо
+VK_PAGE_UP=Page Up
+VK_PAGE_DOWN=Page Down
+# LOCALIZATION NOTE : BLOCK end GLYPHS
+
+# Enter, backspace, and Tab might have both glyphs and text
+# if the keyboards usually have a glyph,
+# if there is a meaningful translation,
+# or if keyboards are localized
+# then translate them or insert the appropriate glyph
+# otherwise you should probably just translate the glyph regions
+
+VK_TAB=Tab
+VK_BACK=Backspace
+VK_DELETE=Del
+# LOCALIZATION NOTE : BLOCK end maybe GLYPHS
+# LOCALIZATION NOTE : BLOCK typing state keys
+VK_HOME=Home
+VK_END=End
+
+VK_ESCAPE=Esc
+VK_INSERT=Ins
+# LOCALIZATION NOTE : BLOCK end
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/HtmlForm.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/HtmlForm.properties
new file mode 100644
index 0000000000..4966335754
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/HtmlForm.properties
@@ -0,0 +1,35 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+Reset=Сброс
+Submit=Отправить запрос
+Browse=Обзор…
+FileUpload=Выгрузка файла
+DirectoryUpload=Выберите папку для выгрузки
+DirectoryPickerOkButtonLabel=Выгрузить
+ForgotPostWarning=Форма содержит атрибут «enctype=%S», но не содержит атрибут «method=post». Вместо этого для отправки данных будет использоваться метод «GET» без указания типа содержимого.
+ForgotFileEnctypeWarning=Форма разрешает загрузку файла, но не указаны атрибуты «method=POST» и «enctype=multipart/form-data». Файл не будет отправлен.
+# LOCALIZATION NOTE (DefaultFormSubject): %S will be replaced with brandShortName
+DefaultFormSubject=Отправка формы из %S
+CannotEncodeAllUnicode=Форма была отправлена в кодировке %S, в которой невозможно закодировать все символы Unicode, поэтому данные, введённые пользователем, могли быть искажены. Чтобы избежать этой проблемы, страница должна быть изменена таким образом, чтобы форма отправлялась в кодировке UTF-8, для чего нужно либо изменить кодировку самой страницы на UTF-8, либо указать accept-charset=utf-8 в элементе формы.
+AllSupportedTypes=Все поддерживаемые типы
+# LOCALIZATION NOTE (NoFileSelected): this string is shown on a
+# <input type='file'> when there is no file selected yet.
+NoFileSelected=Файл не выбран.
+# LOCALIZATION NOTE (NoFilesSelected): this string is shown on a
+# <input type='file' multiple> when there is no file selected yet.
+NoFilesSelected=Файлы не выбраны.
+# LOCALIZATION NOTE (NoDirSelected): this string is shown on a
+# <input type='file' directory/webkitdirectory> when there is no directory
+# selected yet.
+NoDirSelected=Каталог не выбран.
+# LOCALIZATION NOTE (XFilesSelected): this string is shown on a
+# <input type='file' multiple> when there are more than one selected file.
+# %S will be a number greater or equal to 2.
+XFilesSelected=Выбрано %S файла(ов).
+ColorPicker=Выберите цвет
+# LOCALIZATION NOTE (DefaultSummary): this string is shown on a <details> when
+# it has no direct <summary> child. Google Chrome should already have this
+# string translated.
+DefaultSummary=Подробности
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/MediaDocument.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/MediaDocument.properties
new file mode 100644
index 0000000000..ace1dab54a
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/MediaDocument.properties
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#LOCALIZATION NOTE (ImageTitleWithDimensions2AndFile): first %S is filename, second %S is type, third %S is width and fourth %S is height
+#LOCALIZATION NOTE (ImageTitleWithoutDimensions): first %S is filename, second %S is type
+#LOCALIZATION NOTE (ImageTitleWithDimensions2): first %S is type, second %S is width and third %S is height
+#LOCALIZATION NOTE (ImageTitleWithNeitherDimensionsNorFile): first %S is type
+#LOCALIZATION NOTE (MediaTitleWithFile): first %S is filename, second %S is type
+#LOCALIZATION NOTE (MediaTitleWithNoInfo): first %S is type
+ImageTitleWithDimensions2AndFile=%S (Изображение %S, %S × %S пикселей)
+ImageTitleWithoutDimensions=%S (изображение «%S»)
+ImageTitleWithDimensions2=(Изображение %S, %S × %S пикселей)
+ImageTitleWithNeitherDimensionsNorFile=(Изображение «%S»)
+MediaTitleWithFile=%S (объект «%S»)
+MediaTitleWithNoInfo=(Объект «%S»)
+
+InvalidImage=Изображение «%S» не может быть показано, так как содержит ошибки.
+UnsupportedImage=Изображение «%S» не может быть отображено, так как для этого необходимы неподдерживаемые функции.
+ScaledImage=Масштабированное (%S%%)
+
+TitleWithStatus=%S — %S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/htmlparser.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/htmlparser.properties
new file mode 100644
index 0000000000..9f80070db6
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/htmlparser.properties
@@ -0,0 +1,144 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Encoding warnings and errors
+EncNoDeclarationFrame=Фреймовый документ не содержит объявления кодировки символов. При просмотре без фреймирующего его документа, документ может отображаться по-другому.
+EncXmlDecl=Кодировка символов HTML-документа была объявлена с использованием синтаксиса XML. Это не соответствует стандартам, и более эффективно объявить кодировку в теге meta в начале части заголовка.
+EncMetaTooLate=Тег meta, пытающийся объявить кодировку символов, был обнаружен слишком поздно, и вместо этого кодировка была определена на основе содержимого. Необходимо переместить тег meta в начало части заголовка документа.
+EncMetaTooLateFrame=Тег meta, пытающийся объявить кодировку символов, был обнаружен слишком поздно, и вместо этого была использована кодировка родительского документа. Необходимо переместить тег meta в начало части заголовка документа.
+EncMetaAfterHeadInKilobyte=Тег meta, объявляющий кодировку символов документа, следует переместить в начало части заголовка документа.
+EncNoDecl=Кодировка символов документа объявлена не была, поэтому кодировка была определена по содержанию. Кодировку символов необходимо объявить в HTTP-заголовке Content-Type, используя тег meta или маркер последовательности байтов.
+EncNoDeclPlain=Кодировка символов документа объявлена не была, поэтому кодировка была определена по содержанию. Кодировку символов необходимо объявить в HTTP-заголовке Content-Type или с помощью маркера последовательности байтов.
+EncMetaUnsupported=Для HTML-документа с помощью тега meta была объявлена неподдерживаемая кодировка символов. Объявление было проигнорировано.
+EncProtocolUnsupported=На уровне протокола передачи была объявлена неподдерживаемая кодировка символов. Объявление было проигнорировано.
+EncMetaUtf16=Тег meta был использован для объявления в качестве кодировки символов UTF-16. Это было интерпретировано как объявление UTF-8.
+EncMetaUserDefined=Тег meta был использован для объявления в качестве кодировки символов x-user-defined. Это было интерпретировано как объявление windows-1252 вместо совместимости с намеренно неправильно закодированными устаревшими шрифтами. Этот сайт должен перейти на Юникод.
+EncMetaReplacement=Тег meta был использован для объявления кодировки, представляющей угрозу межсайтового скриптинга. Вместо неё была использована замещающая кодировка.
+EncProtocolReplacement=На уровне протокола передачи была объявлена кодировка, представляющая угрозу межсайтового скриптинга. Вместо неё была использована замещающая кодировка.
+EncDetectorReload=Кодировка символов документа объявлена не была, а догадаться о кодировке по содержанию было слишком поздно. Это привело к перезагрузке документа. Кодировку символов необходимо объявить в HTTP-заголовке Content-Type, используя тег meta или маркер последовательности байтов.
+EncDetectorReloadPlain=Кодировка символов документа объявлена не была, а догадаться о кодировке по содержанию было слишком поздно. Это привело к перезагрузке документа. Кодировку символов необходимо объявить в HTTP-заголовке Content-Type или с помощью маркера последовательности байтов.
+EncError=В соответствии с объявленной кодировкой символов поток байтов был ошибочен. Объявленная кодировка символов может быть неправильна.
+EncErrorFrame=В соответствии с кодировкой символов, унаследованной от родительского документа, поток байтов был ошибочен. Кодировку символов необходимо объявить в HTTP-заголовке Content-Type, используя тег meta или маркер последовательности байтов.
+EncErrorFramePlain=В соответствии с кодировкой символов, унаследованной от родительского документа, поток байтов был ошибочен. Кодировку символов необходимо объявить в HTTP-заголовке Content-Type или с помощью маркера последовательности байтов.
+EncSpeculationFailMeta=Начало документа было обработано повторно, поскольку перед тегом meta, объявляющим кодировку, были не-ASCII символы. Meta должен быть первым дочерним элементом заголовка без не-ASCII комментариев перед ним.
+EncSpeculationFailXml=Начало документа было обработано повторно, поскольку в части документа, где безуспешно выполнялся поиск тега meta перед возвратом к синтаксису объявления XML, имелись не-ASCII символы. Вместо синтаксиса объявления XML следует использовать тег meta в начале части заголовка.
+# The audience of the following message isn't the author of the document but other people debugging browser behavior.
+EncSpeculationFail2022=Начало документа было обработано повторно, поскольку кодировка ISO-2022-JP не совместима с ASCII.
+
+# The bulk of the messages below are derived from
+# https://hg.mozilla.org/projects/htmlparser/file/1f633cef7de7/src/nu/validator/htmlparser/impl/ErrorReportingTokenizer.java
+# which is available under the MIT license.
+
+# Tokenizer errors
+errGarbageAfterLtSlash=Мусор после «</».
+errLtSlashGt=Обнаружен «</>». Вероятные причины: Неэкранированный «<» (экранируйте как «&lt;») или ошибка в имени закрывающего тега.
+errCharRefLacksSemicolon=Ссылка на символ не была завершена точкой с запятой.
+errNoDigitsInNCR=Нет цифр в числовой ссылке на символ.
+errGtInSystemId=«>» в системном идентификаторе.
+errGtInPublicId=«>» в публичном идентификаторе.
+errNamelessDoctype=Безымянный doctype.
+errConsecutiveHyphens=Последовательные дефисы не завершают комментарий. «--» не разрешены внутри комментария, а например «- -» разрешены.
+errPrematureEndOfComment=Преждевременный конец комментария. Для корректного завершения комментария используйте «-->».
+errBogusComment=Фальшивый комментарий.
+errUnquotedAttributeLt=«<» в незакавыченном значении атрибута. Вероятная причина: Сразу перед этим нехватает «>».
+errUnquotedAttributeGrave=«`» в незакавыченном значении атрибута. Вероятная причина: Использование в качестве кавычки неверного символа.
+errUnquotedAttributeQuote=Кавычка в незакавыченном значении атрибута. Вероятные причины: Идущие вместе атрибуты или строка URL-запроса в незакавыченном значении атрибута.
+errUnquotedAttributeEquals=«=» в незакавыченном значении атрибута. Вероятные причины: Идущие вместе атрибуты или строка URL-запроса в незакавыченном значении атрибута.
+errSlashNotFollowedByGt=За слешем не следует сразу «>».
+errNoSpaceBetweenAttributes=Нет пробела между атрибутами.
+errUnquotedAttributeStartLt=«<» в начале незакавыченного значения атрибута. Вероятная причина: Сразу перед этим нехватает «>».
+errUnquotedAttributeStartGrave=«`» в начале незакавыченного значения атрибута. Вероятная причина: Использование в качестве кавычки неверного символа.
+errUnquotedAttributeStartEquals=«=» в начале незакавыченного значения атрибута. Вероятная причина: Случайный двойной знак равенства.
+errAttributeValueMissing=Отсутствует значение атрибута.
+errBadCharBeforeAttributeNameLt=Обнаружен «<», хотя ожидалось имя атрибута. Вероятная причина: Сразу перед этим нехватает «>».
+errEqualsSignBeforeAttributeName=Обнаружен «=», хотя ожидалось имя атрибута. Вероятная причина: Отсутствует имя атрибута.
+errBadCharAfterLt=Некорректный символ после «<». Вероятная причина: Неэкранированный «<». Попробуйте экранировать его как «&lt;».
+errLtGt=Обнаружен «<>». Вероятные причины: Неэкранированный «<» (экранируйте как «&lt;») или ошибка в имени начального тега.
+errProcessingInstruction=Обнаружен «<?». Вероятная причина: Попытка использовать инструкцию обработки XML в HTML. (Инструкции обработки XML не поддерживаются в HTML).
+errUnescapedAmpersandInterpretedAsCharacterReference=Строка, следующая за «&», была интерпретирована как ссылка на символ. («&» вероятно должен быть экранирован как «&amp;»).
+errNotSemicolonTerminated=Именованная ссылка на символ не была завершена точкой с запятой. (Или «&» вероятно должен быть экранирован как «&amp;»).
+errNoNamedCharacterMatch=«&» не начинает ссылку на символ. («&» вероятно должен быть экранирован как «&amp;»).
+errQuoteBeforeAttributeName=Обнаружена кавычка, хотя ожидалось имя атрибута. Вероятная причина: сразу перед этим отсутствует «=».
+errLtInAttributeName=«<» в имени атрибута. Вероятная причина: сразу перед этим отсутствует «>».
+errQuoteInAttributeName=Кавычка в имени атрибута. Вероятная причина: Где-то раньше недостаёт парной кавычки.
+errExpectedPublicId=Ожидался публичный идентификатор, но doctype был завершён.
+errBogusDoctype=Фальшивый doctype.
+maybeErrAttributesOnEndTag=Закрывающий тег имеет атрибуты.
+maybeErrSlashInEndTag=Случайный «/» в конце закрывающего тега.
+errNcrNonCharacter=Ссылка на символ разворачивается в non-character.
+errNcrSurrogate=Ссылка на символ разворачивается в суррогат.
+errNcrControlChar=Ссылка на символ разворачивается в контрольный символ.
+errNcrCr=Числовая ссылка на символ разворачивается в возврат каретки.
+errNcrInC1Range=Числовая ссылка на символ разворачивается в диапазоне C1 управляющих символов.
+errEofInPublicId=Конец файла внутри публичного идентификатора.
+errEofInComment=Конец файла внутри комментария.
+errEofInDoctype=Конец файла внутри doctype.
+errEofInAttributeValue=При нахождении внутри значения атрибута достигнут конец файла. Тег проигнорирован.
+errEofInAttributeName=При нахождении в имени атрибута достигнут конец файла. Тег проигнорирован.
+errEofWithoutGt=Достигнут конец файла, а предыдущий тег не закрыт с помощью «>». Тег проигнорирован.
+errEofInTagName=Достигнут конец файла при поиске имени тега. Тег проигнорирован.
+errEofInEndTag=Конец файла внутри закрывающего тега. Тег проигнорирован.
+errEofAfterLt=Конец файла после «<».
+errNcrOutOfRange=Ссылка на символ находится за пределами допустимого диапазона Юникода.
+errNcrUnassigned=Ссылка на символ разворачивается в никогда не назначаемую точку кода.
+errDuplicateAttribute=Дублирующийся атрибут.
+errEofInSystemId=Конец файла внутри системного идентификатора.
+errExpectedSystemId=Ожидался системный идентификатор, но doctype завершен.
+errMissingSpaceBeforeDoctypeName=Перед именем doctype отсутствует пробел.
+errNestedComment=Внутри комментария найдено «<!--». Возможная причина: Вложенный комментарий (не разрешено).
+errNcrZero=Ссылка на символ разворачивается в нуль.
+errNoSpaceBetweenDoctypeSystemKeywordAndQuote=Нет пробела между ключевым словом «SYSTEM» для doctype и кавычкой.
+errNoSpaceBetweenPublicAndSystemIds=Нет пробела между публичным и системным идентификатором doctype.
+errNoSpaceBetweenDoctypePublicKeywordAndQuote=Нет пробела между ключевым словом «PUBLIC» для doctype и кавычкой.
+
+# Tree builder errors
+errDeepTree=Дерево документа имеет слишком большую вложенность. Дерево будет обрезано до глубины в 513 элементов.
+errStrayStartTag2=Случайный открывающий тег «%1$S».
+errStrayEndTag=Случайный закрывающий тег «%1$S».
+errUnclosedElements=Обнаружен закрывающий тег «%1$S», но имеются открытые элементы.
+errUnclosedElementsImplied=Предполагается закрывающий тег «%1$S», но имеются открытые элементы.
+errUnclosedElementsCell=Ячейка таблицы была неявно закрыта, но имеются открытые элементы.
+errStrayDoctype=Случайный doctype.
+errAlmostStandardsDoctype=Doctype в режиме Almost standards. Ожидался «<!DOCTYPE html>».
+errQuirkyDoctype=Doctype в режиме Quirky. Ожидался «<!DOCTYPE html>».
+errAlmostStandardsDoctypeVerbose=Эта страница загружена в режиме Almost Standards. Это может повлиять на макет страницы. Для режима Standards используйте «<!DOCTYPE html>».
+errQuirkyDoctypeVerbose=Эта страница загружена в режиме Quirks. Это может повлиять на макет страницы. Для режима Standards используйте «<!DOCTYPE html>».
+errNonSpaceInTrailer=Непробельный символ в трейлере страницы.
+errNonSpaceAfterFrameset=Непробельный символ после «frameset».
+errNonSpaceInFrameset=Непробельный символ в «frameset».
+errNonSpaceAfterBody=Непробельный символ после body.
+errNonSpaceInColgroupInFragment=Непробельный символ в «colgroup» при парсинге фрагмента.
+errNonSpaceInNoscriptInHead=Непробельный символ внутри «noscript» внутри «head».
+errFooBetweenHeadAndBody=«%1$S» элемент между «head» и «body».
+errStartTagWithoutDoctype=Обнаружен открывающий тег, а doctype перед ним не обнаружен. Ожидался «<!DOCTYPE html>».
+errNoSelectInTableScope=Нет «select» в диапазоне таблицы.
+errStartSelectWhereEndSelectExpected=Открывающий тег «select» там, где ожидался закрывающий.
+errStartTagWithSelectOpen=Открывающий тег «%1$S» рядом с открытым «select».
+errBadStartTagInNoscriptInHead=Неправильный открывающий тег «%1$S» в «noscript» в «head».
+errImage=Обнаружен открывающий тег «image».
+errFooSeenWhenFooOpen2=Обнаружен открывающий тег «%1$S», но такой элемент уже был открыт.
+errHeadingWhenHeadingOpen=Заголовок не может потомком другого заголовка.
+errFramesetStart=Обнаружен открывающий тег «frameset».
+errNoCellToClose=Нет ячейки для закрытия.
+errStartTagInTable=В «table» обнаружен открывающий тег «%1$S».
+errFormWhenFormOpen=Обнаружен открывающий тег «form», но там уже есть активный элемент «form». Вложенные формы не разрешены. Тег проигнорирован.
+errTableSeenWhileTableOpen=Обнаружен открывающий тег «table», но предыдущая «table» всё ещё открыта.
+errStartTagInTableBody=Открывающий тег «%1$S» в теле таблицы.
+errEndTagSeenWithoutDoctype=Обнаружен закрывающий тег, а doctype перед ним не обнаружен. Ожидался «<!DOCTYPE html>».
+errEndTagAfterBody=Обнаружен закрывающий тег после закрытого «body».
+errEndTagSeenWithSelectOpen=Закрывающий тег «%1$S» рядом с открытым «select».
+errGarbageInColgroup=Мусор во фрагменте «colgroup».
+errEndTagBr=Закрывающий тег «br».
+errNoElementToCloseButEndTagSeen=Рядом нет элементов «%1$S», но обнаружен закрывающий тег «%1$S».
+errHtmlStartTagInForeignContext=Открывающий HTML-тег «%1$S» в чужом контексте пространства имён.
+errNoTableRowToClose=Нет строки таблицы для закрытия.
+errNonSpaceInTable=Неверно размещённые непробельные символы внутри таблицы.
+errUnclosedChildrenInRuby=Незакрытые потомки в «ruby».
+errStartTagSeenWithoutRuby=Обнаружен открывающий тег «%1$S» без открытого элемента «ruby».
+errSelfClosing=Самозакрывающийся синтаксис («/>») использован в непустом HTML-элементе. Игнорирую слеш и считаю это начальным тегом.
+errNoCheckUnclosedElementsOnStack=Незакрытые элементы в стеке.
+errEndTagDidNotMatchCurrentOpenElement=Закрывающий тег «%1$S» не соответствует имени текущего открытого элемента («%2$S»).
+errEndTagViolatesNestingRules=Закрывающий тег «%1$S» нарушает правила вложения.
+errEndWithUnclosedElements=Обнаружен закрывающий тег «%1$S», но имеются незакрытые элементы.
+errListUnclosedStartTags=Незакрытый элемент или элементы.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/xmlparser.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/xmlparser.properties
new file mode 100644
index 0000000000..9176b22624
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout/xmlparser.properties
@@ -0,0 +1,48 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Map Expat error codes to error strings
+1 = недостаточно памяти
+2 = ошибка синтаксиса
+3 = корневой элемент не найден
+4 = некорректно
+5 = незакрытый маркер
+6 = частичный символ
+7 = несоответствующий тег
+8 = совпадающий атрибут
+9 = лишние данные после элемента документа
+10 = недопустимый параметр ссылки на сущность
+11 = неопределённая сущность
+12 = рекурсивная ссылка на сущность
+13 = несинхронная сущность
+14 = ссылка на неправильный номер символа
+15 = ссылка на двоичную сущность
+16 = ссылка на внешнюю сущность в атрибуте
+17 = объявление XML или текста не в начале сущности
+18 = неизвестная кодировка
+19 = кодировка, указанная в объявлении XML, некорректна
+20 = незакрытый раздел CDATA
+21 = ошибка обработки ссылки на внешнюю сущность
+22 = неавтономный документ
+23 = неопределённое состояние синтаксического анализатора
+24 = cущность объявленная в параметре сущности
+27 = префикс не связан c пространством имён
+28 = нельзя отменять объявление префикса
+29 = неполная разметка в параметре сущности
+30 = некорректное объявление XML
+31 = некорректное объявление текста
+32 = нелегальный(е) символ(ы) в публичном id
+38 = зарезервированный префикс (xml) не должен быть необъявленным или связанным с другим пространством имён
+39 = зарезервированный префикс (xmlns) не должен быть объявленным или необъявленным
+40 = префикс не должен быть связан с ни с одним из зарезервированных пространств имён
+
+# %1$S is replaced by the Expat error string, may be followed by Expected (see below)
+# %2$S is replaced by URL
+# %3$u is replaced by line number
+# %4$u is replaced by column number
+XMLParsingError = Ошибка синтаксического анализа XML: %1$S\nАдрес: %2$S\nСтрока %3$u, символ %4$u:
+
+# %S is replaced by a tag name.
+# This gets appended to the error string if the error is mismatched tag.
+Expected = . Ожидается: </%S>.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout_errors.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout_errors.properties
new file mode 100644
index 0000000000..e1285883cd
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/layout_errors.properties
@@ -0,0 +1,53 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+ImageMapRectBoundsError=Формат атрибута «coords» элемента <area shape="rect"> не соответствует формату «слева,сверху,справа,снизу».
+ImageMapCircleWrongNumberOfCoords=Формат атрибута «coords» элемента <area shape="circle"> не соответствует формату «center-x,center-y,radius».
+ImageMapCircleNegativeRadius=Атрибут «coords» элемента <area shape="circle"> имеет отрицательный радиус.
+ImageMapPolyWrongNumberOfCoords=Формат атрибута «coords» элемента <area shape="poly"> не соответствует формату «x1,y1,x2,y2 …».
+ImageMapPolyOddNumberOfCoords=В атрибуте «coords» элемента <area shape="poly"> нет последней координаты «y» (корректный формат «x1,y1,x2,y2 …»).
+
+ScrollLinkedEffectFound3=Похоже, что этот сайт использует эффект позиционирования связанный с прокруткой. Это может не очень хорошо работать с асинхронным панорамированием; см. https://firefox-source-docs.mozilla.org/performance/scroll-linked_effects.html чтобы получить более подробную информацию и присоединиться к обсуждению связанных с этим инструментов и возможностей!
+
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooLargeArea):
+## %1$S is an integer value of the area of the frame
+## %2$S is an integer value of the area of a limit based on the viewport size
+CompositorAnimationWarningContentTooLargeArea=Анимация не может быть запущена в композитном слое, так как размер фрейма (%1$S) является слишком большим по отношению к окну просмотра (больше чем %2$S)
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooLarge2):
+## (%1$S, %2$S) is a pair of integer values of the frame size
+## (%3$S, %4$S) is a pair of integer values of a limit based on the viewport size
+## (%5$S, %6$S) is a pair of integer values of an absolute limit
+CompositorAnimationWarningContentTooLarge2=Анимация не может быть запущена в композитном слое, так как размер фрейма (%1$S, %2$S) является слишком большим по отношению к окну просмотра (больше чем (%3$S, %4$S)), или больше максимально допустимого значения (%5$S, %6$S)
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformBackfaceVisibilityHidden):
+## 'backface-visibility: hidden' is a CSS property, don't translate it.
+CompositorAnimationWarningTransformBackfaceVisibilityHidden=Анимации трансформаций «backface-visibility: hidden» не могут быть запущены в композитном слое
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformSVG,
+## CompositorAnimationWarningTransformWithGeometricProperties,
+## CompositorAnimationWarningTransformWithSyncGeometricAnimations,
+## CompositorAnimationWarningTransformFrameInactive,
+## CompositorAnimationWarningOpacityFrameInactive):
+## 'transform' and 'opacity' mean CSS property names, don't translate it.
+CompositorAnimationWarningTransformSVG=Анимации «transform» на элементах с SVG-трансформациями не могут быть запущены в композитном слое
+CompositorAnimationWarningTransformWithGeometricProperties=Анимации «transform» не могут быть запущены в композитном слое, когда геометрические свойства анимируются на том же элементе в то же самое время
+CompositorAnimationWarningTransformWithSyncGeometricAnimations=Анимации «transform» не могут быть запущены в композитном слое, так как они должны быть синхронизированы с анимациями геометрических свойств, которые начались в то же время
+CompositorAnimationWarningTransformFrameInactive=Анимация не может быть запущена в композитном слое, так как фрейм не был отмечен как активный для «transform» анимации
+CompositorAnimationWarningTransformIsBlockedByImportantRules=Transform-анимации не могут быть запущены в композитном слое, так как transform-свойства переопределены !important правилами
+CompositorAnimationWarningOpacityFrameInactive=Анимация не может быть запущена в композитном слое, так как фрейм не был отмечен как активный для «opacity» анимации
+CompositorAnimationWarningHasRenderingObserver=Анимация не может быть запущена в композитном слое, так как элемент имеет наблюдателей рендеринга (-moz-element или SVG clipping/masking)
+CompositorAnimationWarningHasCurrentColor=Анимации «background-color» не могут быть запущены в композитном слое, если в правилах keyframe используется «current-color».
+
+## LOCALIZATION NOTE: Do not translate zoom, calc(), "transform", "transform-origin: 0 0"
+ZoomPropertyWarning=На этой странице используется нестандартное свойство «zoom». Попробуйте использовать calc() в соответствующих значениях свойств или использовать «transform» вместе с «transform-origin: 0 0».
+
+## LOCALIZATION NOTE(PrincipalWritingModePropagationWarning):
+## Do not translate <html>, <body>, CSS, "writing-mode", "direction", "text-orientation", :root, and "The Principal Writing Mode" because they are technical terms.
+PrincipalWritingModePropagationWarning=При отрисовке элемента <html>, используемые значения CSS-свойств «writing-mode», «direction» и «text-orientation» для элемента <html> были взяты из вычисленных значений элемента <body>, а не собственных значений элемента <html>. Попробуйте установить эти свойства для CSS-псевдокласса :root. Для получения дополнительной информации, посмотрите раздел «The Principal Writing Mode» по ссылке https://www.w3.org/TR/css-writing-modes-3/#principal-flow
+
+## LOCALIZATION NOTE(ScrollAnchoringDisabledInContainer):
+## %1$S is an integer value with the total number of adjustments
+## %2$S is a floating point value with the average distance adjusted
+## %3$S is a floating point value with the total adjusted distance
+ScrollAnchoringDisabledInContainer=Закрепление прокрутки в контейнере прокрутки было отключено из-за слишком большого числа последовательных корректировок (%1$S) при слишком малом общем расстоянии (в среднем %2$S пикселей, всего %3$S пикселей).
+
+ForcedLayoutStart=Макет был принудительно применён перед полной загрузкой страницы. Если таблицы стилей ещё не загружены, то это может спровоцировать отображение нестилизованного содержимого.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/mathml/mathml.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/mathml/mathml.properties
new file mode 100644
index 0000000000..4751a6ece4
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/mathml/mathml.properties
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+InvalidChild=Ошибка разметки: <%1$S> не может использоваться в качестве потомка <%2$S>.
+ChildCountIncorrect=Ошибка разметки: Некорректное число потомков для тега <%1$S/>.
+DuplicateMprescripts=Ошибка разметки: Больше одного <mprescripts/> в <mmultiscripts/>.
+# LOCALIZATION NOTE: The first child of <mmultiscript/> is the base, that is the element to which scripts are attached.
+NoBase=Ошибка разметки: Ожидался ровно один элемент Base в <mmultiscripts/>. Не найдено ни одного.
+SubSupMismatch=Ошибка разметки: Неполная пара subscript/superscript в <mmultiscripts/>.
+
+# LOCALIZATION NOTE: When localizing the single quotes ('), follow the conventions in css.properties for your target locale.
+AttributeParsingError=Ошибка при парсинге значения «%1$S» для атрибута «%2$S» в <%3$S/>. Атрибут проигнорирован.
+AttributeParsingErrorNoTag=Ошибка при парсинге значения «%1$S» для атрибута «%2$S». Атрибут проигнорирован.
+LengthParsingError=Ошибка при парсинге значения MathML атрибута «%1$S» как длины. Атрибут проигнорирован.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/narrate.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/narrate.properties
new file mode 100644
index 0000000000..5c2666e9b7
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/narrate.properties
@@ -0,0 +1,25 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# "Listen, which allows users to listen to Firefox reading the text,
+# instead of having to read it themselves." This is the name
+# of the feature and it is the label for the popup button.
+# %S is the keyboard shortcut for the listen command
+listen-label = Слушать (%S)
+back = Назад
+# %S is the keyboard shortcut for the start command
+start-label = Начать (%S)
+# %S is the keyboard shortcut for the stop command
+stop-label = Остановить (%S)
+# Keyboard shortcut to toggle the narrate feature
+narrate-key-shortcut = N
+forward = Вперёд
+speed = Скорость
+selectvoicelabel = Голос:
+# Default voice is determined by the language of the document.
+defaultvoice = Стандартный
+
+# Voice name and language.
+# eg. David (English)
+voiceLabel = %S (%S)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/nsWebBrowserPersist.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/nsWebBrowserPersist.properties
new file mode 100644
index 0000000000..d4e32107f3
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/nsWebBrowserPersist.properties
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+readError=Файл «%S» не может быть сохранён, так как исходный файл не может быть прочтён.\n\nПодождите некоторое время и попробуйте снова или обратитесь к администратору сервера.
+writeError=Файл «%S» не может быть сохранён, так как произошла неизвестная ошибка.\n\nПопробуйте сохранить его по другому адресу.
+launchError=«%S» не может быть открыт, так как произошла неизвестная ошибка.\n\nПопробуйте сначала сохранить файл на диск, а затем открыть его.
+diskFull=Недостаточно места на диске для сохранения «%S».\n\nУдалите ненужные файлы на диске и попробуйте снова или введите другой адрес для сохранения.
+readOnly=Файл «%S» не может быть сохранён, так как диск, папка или файл защищены от записи.\n\nСнимите защиту от записи и попробуйте снова или укажите другой адрес для сохранения.
+accessError=Файл «%S» не может быть сохранён, так как вы не можете менять содержимое указанной папки.\n\nИзмените свойства папки и попробуйте снова или введите другой адрес для сохранения.
+SDAccessErrorCardReadOnly=Не удается загрузить файл, так как SD-карта сейчас используется.
+SDAccessErrorCardMissing=Не удается загрузить файл, так как отсутствует SD-карта.
+helperAppNotFound=Файл «%S» не может быть открыт, так как связанное с ним вспомогательное приложение не существует. Измените настройки.
+noMemory=Недостаточно памяти для выполнения запрашиваемой операции.\n\nЗакройте какие-нибудь приложения и попробуйте снова.
+title=Загрузка «%S»
+fileAlreadyExistsError=Файл «%S» не может быть сохранён, так как файл с тем же именем каталога «_files» уже существует.\n\nПопробуйте сохранить его в другое место.
+fileNameTooLongError=Файл «%S» не может быть сохранён, так как длина имени файла превышает допустимую.\n\nПопробуйте сохранить его с более коротким именем файла.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/printdialog.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/printdialog.properties
new file mode 100644
index 0000000000..2b14e590fd
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/printdialog.properties
@@ -0,0 +1,52 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# These strings are used in the native GTK, Mac and Windows print dialogs.
+
+# GTK titles:
+printTitleGTK=Печать
+optionsTabLabelGTK=Свойства
+
+# Mac titles:
+optionsTitleMac=Свойства:
+appearanceTitleMac=Внешний вид:
+pageHeadersTitleMac=Верхние колонтитулы страницы:
+pageFootersTitleMac=Нижние колонтитулы страницы:
+
+# Windows titles:
+optionsTitleWindows=Свойства
+
+# TRANSLATOR NOTE: For radio button labels and check button labels, an underscore _
+# before a character will turn that character into an accesskey in the GTK dialog.
+# e.g. "_As laid out" will make A the accesskey.
+# In the Windows labels, use an ampersand (&).
+# On Mac, underscores will be stripped.
+
+shrinkToFit=Игнорировать масштабирование и с_жать по ширине страницы
+selectionOnly=Печатать только _выделенную область
+printBGOptions=Печатать фон
+printBGColors=Печатать цвет _фона
+printBGImages=Печатать фоновое _изображение
+headerFooter=Колонтитулы
+left=Слева
+center=По центру
+right=Справа
+headerFooterBlank=--пусто--
+headerFooterTitle=Заголовок страницы
+headerFooterURL=Адрес страницы
+headerFooterDate=Дата/время
+headerFooterPage=Номер страницы
+headerFooterPageTotal=Страница # из #
+headerFooterCustom=Настроить…
+customHeaderFooterPrompt=Введите свой текст верхнего/нижнего колонтитула
+
+summarySelectionOnlyTitle=Печать выделенной области
+summaryShrinkToFitTitle=Сжать по размеру
+summaryPrintBGColorsTitle=Печать цвета _фона
+summaryPrintBGImagesTitle=Печать фонового изображения
+summaryHeaderTitle=Верхние колонтитулы страницы
+summaryFooterTitle=Нижние колонтитулы страницы
+summaryNAValue=н/д
+summaryOnValue=Включёно
+summaryOffValue=Отключёно
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/printing.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/printing.properties
new file mode 100644
index 0000000000..c5818e0a3f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/printing.properties
@@ -0,0 +1,56 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Page number formatting
+## @page_number The current page number
+#LOCALIZATION NOTE (pageofpages): Do not translate %ld in the following line.
+# Place the word %ld where the page number and number of pages should be
+# The first %ld will receive the the page number
+pagenumber=%1$d
+
+# Page number formatting
+## @page_number The current page number
+## @page_total The total number of pages
+#LOCALIZATION NOTE (pageofpages): Do not translate %ld in the following line.
+# Place the word %ld where the page number and number of pages should be
+# The first %ld will receive the the page number
+# the second %ld will receive the total number of pages
+pageofpages=Стр. %1$d из %2$d
+
+PrintToFile=Печать в файл
+print_error_dialog_title=Ошибка принтера
+printpreview_error_dialog_title=Ошибка предварительного просмотра
+
+# Printing error messages.
+#LOCALIZATION NOTE: Some of these messages come in pairs, one
+# for printing and one for print previewing. You can remove that
+# distinction in your language by removing the entity with the _PP
+# suffix; then the entity without a suffix will be used for both.
+# You can also add that distinction to any of the messages that don't
+# already have it by adding a new entity with a _PP suffix.
+#
+# For instance, if you delete PERR_GFX_PRINTER_DOC_IS_BUSY_PP, then
+# the PERR_GFX_PRINTER_DOC_IS_BUSY message will be used for that error
+# condition when print previewing as well as when printing. If you
+# add PERR_FAILURE_PP, then PERR_FAILURE will only be used when
+# printing, and PERR_FAILURE_PP will be used under the same conditions
+# when print previewing.
+#
+PERR_FAILURE=Во время печати произошла ошибка.
+
+PERR_ABORT=Задание на печать было прервано или отменено.
+PERR_NOT_AVAILABLE=Некоторые функции печати в данное время не доступны.
+PERR_NOT_IMPLEMENTED=Некоторые функции печати ещё не реализованы.
+PERR_OUT_OF_MEMORY=Недостаточно свободной памяти для печати.
+PERR_UNEXPECTED=Во время печати возникла неожиданная проблема.
+
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE=Не доступен ни один принтер.
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE_PP=Не доступен ни один принтер, предварительный просмотр невозможен.
+PERR_GFX_PRINTER_NAME_NOT_FOUND=Не удалось найти выбранный принтер.
+PERR_GFX_PRINTER_COULD_NOT_OPEN_FILE=Не удалось открыть выходной файл для печати в файл.
+PERR_GFX_PRINTER_STARTDOC=Ошибка печати при запуске задания на печать.
+PERR_GFX_PRINTER_ENDDOC=Ошибка печати при завершении задания на печать.
+PERR_GFX_PRINTER_STARTPAGE=Ошибка печати при начале новой страницы.
+PERR_GFX_PRINTER_DOC_IS_BUSY=Вы не можете произвести печать этого документа, пока он не будет загружен.
+PERR_GFX_PRINTER_DOC_IS_BUSY_PP=Вы не можете произвести предварительный просмотр этого документа, пока он не будет загружен.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/resetProfile.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/resetProfile.properties
new file mode 100644
index 0000000000..3d525fa744
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/resetProfile.properties
@@ -0,0 +1,14 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE: These strings are used for profile reset.
+
+# LOCALIZATION NOTE (resetUnusedProfile.message): %S is brandShortName.
+resetUnusedProfile.message=Похоже, что вы давно не запускали %S. Хотите очистить его, чтобы он начал работать как новенький? И кстати, с возвращением!
+# LOCALIZATION NOTE (resetUninstalled.message): %S is brandShortName.
+resetUninstalled.message=Похоже, что вы переустановили %S. Хотите, чтобы мы очистили его, чтобы он начал работать как новенький?
+
+# LOCALIZATION NOTE (refreshProfile.resetButton.label): %S is brandShortName.
+refreshProfile.resetButton.label=Очистить %S…
+refreshProfile.resetButton.accesskey=и
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/caps.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/caps.properties
new file mode 100644
index 0000000000..313cf373d4
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/caps.properties
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+CheckLoadURIError = Попытка нарушения системы безопасности: содержимое «%S» не имеет права загружать %S или ссылаться на него.
+CheckSameOriginError = Попытка нарушения системы безопасности: содержимое «%S» не имеет права загружать данные из %S.
+ExternalDataError = Попытка нарушения системы безопасности: содержимое на «%S» попыталось загрузить «%S», но оно не имеет права загружать внешние данные, когда используется в качестве изображения.
+
+CreateWrapperDenied = Отказано в разрешении на создание обёртки для объекта класса %S
+CreateWrapperDeniedForOrigin = Скрипту <%2$S> отказано в разрешении на создание обёртки для объекта класса %1$S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/csp.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/csp.properties
new file mode 100644
index 0000000000..18efd67e12
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/csp.properties
@@ -0,0 +1,125 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# CSP Warnings:
+# LOCALIZATION NOTE (CSPViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPViolation = Параметры страницы заблокировали загрузку ресурса: %1$S
+# LOCALIZATION NOTE (CSPViolationWithURI):
+# %1$S is the directive that has been violated.
+# %2$S is the URI of the resource which violated the directive.
+CSPViolationWithURI = Параметры страницы заблокировали загрузку ресурса %2$S («%1$S»).
+# LOCALIZATION NOTE (CSPROViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPROViolation = Для политики CSP Только-Отчёт произошло нарушение («%1$S»). Поведение было разрешено и был отправлен отчёт CSP.
+# LOCALIZATION NOTE (CSPROViolationWithURI):
+# %1$S is the directive that has been violated.
+# %2$S is the URI of the resource which violated the directive.
+CSPROViolationWithURI = Параметры страницы зарегистрировали загрузку ресурса на %2$S («%1$S»). Был отправлен отчёт CSP.
+# LOCALIZATION NOTE (triedToSendReport):
+# %1$S is the URI we attempted to send a report to.
+triedToSendReport = Попытка отправки отчёта на некорректный URI: «%1$S»
+tooManyReports = Предотвращена отправка слишком большого количества CSP-отчетов за короткий период времени.
+# LOCALIZATION NOTE (couldNotParseReportURI):
+# %1$S is the report URI that could not be parsed
+couldNotParseReportURI = не удалось распарсить URI отчёта: %1$S
+# LOCALIZATION NOTE (couldNotProcessUnknownDirective):
+# %1$S is the unknown directive
+couldNotProcessUnknownDirective = Не удалось обработать неизвестную директиву «%1$S»
+# LOCALIZATION NOTE (ignoringUnknownOption):
+# %1$S is the option that could not be understood
+ignoringUnknownOption = Игнорирую неизвестный параметр %1$S
+# LOCALIZATION NOTE (ignoringDuplicateSrc):
+# %1$S defines the duplicate src
+ignoringDuplicateSrc = Игнорирую дубликат источника %1$S
+# LOCALIZATION NOTE (ignoringNonAsciiToken):
+# %1$S defines the name of the directive
+# %2$S is the token string containing non-ASCII characters.
+ignoringNonAsciiToken = Игнорирую директиву «%1$S» с токеном, отличным от ASCII, «%2$S»
+# LOCALIZATION NOTE (ignoringSrcFromMetaCSP):
+# %1$S defines the ignored src
+ignoringSrcFromMetaCSP = Игнорирую источник «%1$S» (Не поддерживается при доставке через элемент meta).
+# LOCALIZATION NOTE (ignoringSrcWithinNonceOrHashDirective):
+# %1$S is the ignored src (e.g. "unsafe-inline")
+# %2$S is the directive (e.g. "script-src-elem")
+ignoringSrcWithinNonceOrHashDirective = Игнорирую «%1$S» внутри %2$S: указан nonce-source или hash-source
+# LOCALIZATION NOTE (ignoringScriptSrcForStrictDynamic):
+# %1$S is the ignored src
+# %1$S is the directive src (e.g. "script-src-elem")
+# 'strict-dynamic' should not be localized
+ignoringScriptSrcForStrictDynamic = Игнорирую «%1$S» внутри %2$S: указано «strict-dynamic»
+# LOCALIZATION NOTE (ignoringStrictDynamic):
+# %1$S is the ignored src
+ignoringStrictDynamic = Игнорирую источник «%1$S» (Поддерживается только внутри script-src).
+# LOCALIZATION NOTE (ignoringUnsafeEval):
+# %1$S is the csp directive (e.g. script-src-elem)
+# 'unsafe-eval' and 'wasm-unsafe-eval' should not be localized
+ignoringUnsafeEval = Игнорирую «unsafe-eval» или «wasm-unsafe-eval» внутри «%1$S».
+# LOCALIZATION NOTE (strictDynamicButNoHashOrNonce):
+# %1$S is the csp directive that contains 'strict-dynamic'
+# 'strict-dynamic' should not be localized
+strictDynamicButNoHashOrNonce = Ключевое слово «strict-dynamic» внутри «%1$S» без действительного nonce или hash может блокировать загрузку всех сценариев
+# LOCALIZATION NOTE (reportURInotHttpsOrHttp2):
+# %1$S is the ETLD of the report URI that is not HTTP or HTTPS
+reportURInotHttpsOrHttp2 = URI отчёта (%1$S) должен быть HTTP или HTTPS URI.
+# LOCALIZATION NOTE (reportURInotInReportOnlyHeader):
+# %1$S is the ETLD of the page with the policy
+reportURInotInReportOnlyHeader = Этот сайт (%1$S) имеет политику Только-Отчёт без URI отчёта. CSP не будет блокировать и не может сообщать о нарушениях этой политики.
+# LOCALIZATION NOTE (failedToParseUnrecognizedSource):
+# %1$S is the CSP Source that could not be parsed
+failedToParseUnrecognizedSource = Не удалось распарсить нераспознанный источник %1$S
+# LOCALIZATION NOTE (upgradeInsecureRequest):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+upgradeInsecureRequest = Обновление незащищённого запроса «%1$S» для использования «%2$S»
+# LOCALIZATION NOTE (ignoreSrcForDirective):
+ignoreSrcForDirective = Игнорируем srcs для директивы «%1$S»
+# LOCALIZATION NOTE (hostNameMightBeKeyword):
+# %1$S is the hostname in question and %2$S is the keyword
+hostNameMightBeKeyword = %1$S интерпретируется как имя сервера, а не ключевое слово. Если вы хотите сделать его ключевым словом, используйте ‘%2$S’ (заключённое в одинарные кавычки).
+# LOCALIZATION NOTE (notSupportingDirective):
+# directive is not supported (e.g. 'reflected-xss')
+notSupportingDirective = Директива «%1$S» не поддерживается. Директива и значения будут проигнорированы.
+# LOCALIZATION NOTE (blockAllMixedContent):
+# %1$S is the URL of the blocked resource load.
+blockAllMixedContent = Блокирую незащищённый запрос «%1$S».
+# LOCALIZATION NOTE (ignoringDirectiveWithNoValues):
+# %1$S is the name of a CSP directive that requires additional values
+ignoringDirectiveWithNoValues = Игнорирую «%1$S», так как он не содержит каких-либо параметров.
+# LOCALIZATION NOTE (ignoringReportOnlyDirective):
+# %1$S is the directive that is ignored in report-only mode.
+ignoringReportOnlyDirective = Игнорирую директиву песочницы при её доставке в политике Только-Отчёт «%1$S»
+# LOCALIZATION NOTE (IgnoringSrcBecauseOfDirective):
+# %1$S is the name of the src that is ignored.
+# %2$S is the name of the directive that causes the src to be ignored.
+IgnoringSrcBecauseOfDirective=Игнорирую «%1$S» из-за директивы «%2$S».
+# LOCALIZATION NOTE (IgnoringSourceWithinDirective):
+# %1$S is the ignored src
+# %2$S is the directive which supports src
+IgnoringSourceWithinDirective = Игнорирую источник «%1$S» (Не поддерживается вместе с «%2$S»).
+# LOCALIZATION NOTE (IgnoringSourceWithinDirective):
+# %1$S is the ignored src
+obsoleteBlockAllMixedContent = Игнорирую «%1$S», так как обновление отображения смешанного содержимого делает блокирование всего смешанного содержимого устаревшим.
+
+
+# CSP Errors:
+# LOCALIZATION NOTE (couldntParseInvalidSource):
+# %1$S is the source that could not be parsed
+couldntParseInvalidSource = Не удалось распарсить некорректный источник %1$S
+# LOCALIZATION NOTE (couldntParseInvalidHost):
+# %1$S is the host that's invalid
+couldntParseInvalidHost = Не удалось распарсить некорректный хост %1$S
+# LOCALIZATION NOTE (couldntParsePort):
+# %1$S is the string source
+couldntParsePort = Не удалось распарсить порт в %1$S
+# LOCALIZATION NOTE (duplicateDirective):
+# %1$S is the name of the duplicate directive
+duplicateDirective = Обнаружены дублирующиеся директивы %1$S. Все директивы кроме первой будут проигнорированы.
+# LOCALIZATION NOTE (couldntParseInvalidSandboxFlag):
+# %1$S is the option that could not be understood
+couldntParseInvalidSandboxFlag = Не удалось распарсить некорректный флаг песочницы «%1$S»
+
+# LOCALIZATION NOTE (CSPMessagePrefix):
+# Do not translate "Content-Security-Policy", only handle spacing for the colon.
+# %S is a console message that is being prefixed here.
+CSPMessagePrefix = Content-Security-Policy: %S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/security.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/security.properties
new file mode 100644
index 0000000000..d5176532b6
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/security/security.properties
@@ -0,0 +1,167 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Mixed Content Blocker
+# LOCALIZATION NOTE: "%1$S" is the URI of the blocked mixed content resource
+BlockMixedDisplayContent = Заблокирована загрузка смешанного отображаемого содержимого «%1$S»
+BlockMixedActiveContent = Заблокирована загрузка смешанного активного содержимого «%1$S»
+
+# CORS
+# LOCALIZATION NOTE: Do not translate "Access-Control-Allow-Origin", Access-Control-Allow-Credentials, Access-Control-Allow-Methods, Access-Control-Allow-Headers
+CORSDisabled=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: CORS отключён).
+CORSDidNotSucceed2=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: не удалось выполнить запрос CORS). Код состояния: %2$S.
+CORSOriginHeaderNotAdded=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: Не удалось добавить CORS-заголовок «Origin»).
+CORSExternalRedirectNotAllowed=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: Внешнее перенаправление запроса CORS не разрешено).
+CORSRequestNotHttp=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: запрос CORS выполнен не по http).
+CORSMissingAllowOrigin2=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: отсутствует заголовок CORS «Access-Control-Allow-Origin»). Код состояния: %2$S.
+CORSMultipleAllowOriginNotAllowed=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: несколько заголовков CORS «Access-Control-Allow-Origin» не разрешены).
+CORSAllowOriginNotMatchingOrigin=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: заголовок CORS «Access-Control-Allow-Origin» не совпадает с «%2$S»).
+CORSNotSupportingCredentials=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на «%1$S». (Причина: Учётные данные не поддерживаются, если заголовок CORS «Access-Control-Allow-Origin» установлен в «*»).
+CORSMethodNotFound=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: Не найден метод в заголовке CORS «Access-Control-Allow-Methods»).
+CORSMissingAllowCredentials=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: в заголовке CORS «Access-Control-Allow-Credentials» ожидалось «true»).
+CORSPreflightDidNotSucceed3=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: неудача ответа CORS preflight). Код состояния: %2$S.
+CORSInvalidAllowMethod=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: некорректный токен «%2$S» в заголовке CORS «Access-Control-Allow-Methods»).
+CORSInvalidAllowHeader=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: некорректный токен «%2$S» в заголовке CORS «Access-Control-Allow-Headers»).
+CORSMissingAllowHeaderFromPreflight2=Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на %1$S. (Причина: заголовок «%2$S» не разрешён согласно заголовку «Access-Control-Allow-Headers» из ответа CORS preflight).
+CORSAllowHeaderFromPreflightDeprecation=Предупреждение о запросе из постороннего источника: Политика одного источника скоро запретит чтение удаленного ресурса в %1$S. (Причина: когда «Access-Control-Allow-Headers» имеет значение «*», заголовок «Authorization» не охватывается. Чтобы включить заголовок «Authorization», он должен быть явно указан в заголовке CORS «Access-Control-Allow-Headers»).
+
+# LOCALIZATION NOTE: Do not translate "Strict-Transport-Security", "HSTS", "max-age" or "includeSubDomains"
+STSUnknownError=Strict-Transport-Security: Во время обработки указанного сайтом заголовка произошла неизвестная ошибка.
+STSCouldNotParseHeader=Strict-Transport-Security: Сайт указал заголовок, который не удалось успешно распарсить.
+STSNoMaxAge=Strict-Transport-Security: Сайт указал заголовок, в который не была включена директива «max-age».
+STSMultipleMaxAges=Strict-Transport-Security: Сайт указал заголовок, в который было включено несколько директив «max-age».
+STSInvalidMaxAge=Strict-Transport-Security: Сайт указал заголовок, в который была включена некорректная директива «max-age».
+STSMultipleIncludeSubdomains=Strict-Transport-Security: Сайт указал заголовок, в который было включено несколько директив «includeSubDomains».
+STSInvalidIncludeSubdomains=Strict-Transport-Security: Сайт указал заголовок, в который была включена некорректная директива «includeSubDomains».
+STSCouldNotSaveState=Strict-Transport-Security: При обозначении этого сайта в качестве хоста Strict-Transport-Security произошла ошибка.
+
+InsecurePasswordsPresentOnPage=Незащищённая (http://) страница содержит поля для ввода пароля. Это представляет собой угрозу безопасности, которая позволяет украсть учётные данные для входа пользователя.
+InsecureFormActionPasswordsPresent=Форма с незащищённым (http://) действием содержит поля для ввода пароля. Это представляет собой угрозу безопасности, которая позволяет украсть учётные данные для входа пользователя.
+InsecurePasswordsPresentOnIframe=Незащищённый (http://) iframe содержит поля для ввода пароля. Это представляет собой угрозу безопасности, которая позволяет украсть учётные данные для входа пользователя.
+# LOCALIZATION NOTE: "%1$S" is the URI of the insecure mixed content resource
+LoadingMixedActiveContent2=Загрузка смешанного (незащищённого) активного содержимого «%1$S» на защищённой странице
+LoadingMixedDisplayContent2=Загрузка смешанного (незащищённого) отображаемого содержимого «%1$S» на защищённой странице
+LoadingMixedDisplayObjectSubrequestDeprecation=Загрузка смешанного (незащищённого) содержимого «%1$S» внутри плагина на защищённой странице не рекомендуется и будет вскоре заблокирована.
+# LOCALIZATION NOTE: "%S" is the URI of the insecure mixed content download
+MixedContentBlockedDownload = Заблокирована загрузка небезопасного содержимого «%S».
+
+# LOCALIZATION NOTE: Do not translate "allow-scripts", "allow-same-origin", "sandbox" or "iframe"
+BothAllowScriptsAndSameOriginPresent=iframe, который имеет и allow-scripts и allow-same-origin для его атрибута sandbox, может удалить свою песочницу.
+# LOCALIZATION NOTE: Do not translate "allow-top-navigation-by-user-activation", "allow-top-navigation", "sandbox" or "iframe"
+BothAllowTopNavigationAndUserActivationPresent=Iframe, у которого в атрибуте sandbox есть и allow-top-navigation и allow-top-navigation-by-user-activation, разрешает top-навигацию.
+
+# Sub-Resource Integrity
+# LOCALIZATION NOTE: Do not translate "script" or "integrity". "%1$S" is the invalid token found in the attribute.
+MalformedIntegrityHash=Элемент script содержит искажённый хеш в своем атрибуте integrity: «%1$S». Корректным форматом является «<алгоритм хеша>-<значение хеша>».
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityLength=Неверная длина хеша, расположенного в атрибуте integrity.
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityBase64=Не удалось декодировать хеш, расположенный в атрибуте integrity.
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the type of hash algorithm in use (e.g. "sha256"). "%2$S" is the value we saw.
+IntegrityMismatch2=Ни один из хешей «%1$S» в атрибуте integrity не соответствует содержимому подресурса. Вычисленный хеш — «%2$S».
+# LOCALIZATION NOTE: "%1$S" is the URI of the sub-resource that cannot be protected using SRI.
+IneligibleResource=«%1$S» не имеет права на проведение проверки целостности, так как он ни CORS-enabled ни same-origin.
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the invalid hash algorithm found in the attribute.
+UnsupportedHashAlg=Неподдерживаемый алгоритм хеша в атрибуте integrity: «%1$S»
+# LOCALIZATION NOTE: Do not translate "integrity"
+NoValidMetadata=Атрибут integrity не содержит каких-либо корректных метаданных.
+
+# LOCALIZATION NOTE: Do not translate "RC4".
+WeakCipherSuiteWarning=Этот сайт использует для шифрования потоковый шифр RC4, который является устаревшим и незащищённым.
+
+DeprecatedTLSVersion2=Этот сайт использует устаревшую версию TLS. Пожалуйста, обновите её до TLS 1.2 или 1.3.
+
+#XCTO: nosniff
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options: nosniff".
+MimeTypeMismatch2=Ресурс с «%1$S» был заблокирован из-за несоответствия MIME-типа («%2$S») (X-Content-Type-Options: nosniff).
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options" and also do not translate "nosniff".
+XCTOHeaderValueMissing=Предупреждение заголовка X-Content-Type-Options: значение было «%1$S»; вы имели в виду отправить «nosniff»?
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options" and also do not translate "nosniff".
+XTCOWithMIMEValueMissing=Ресурс с «%1$S» не был отрисован из-за неизвестного, некорректного или отсутствующего MIME-типа (X-Content-Type-Options: nosniff).
+
+BlockScriptWithWrongMimeType2=Сценарий с «%1$S» был заблокирован из-за неразрешенного MIME-типа («%2$S»).
+WarnScriptWithWrongMimeType=Сценарий из «%1$S» был загружен, хотя его MIME-тип («%2$S») не является допустимым для JavaScript.
+# LOCALIZATION NOTE: Do not translate "importScripts()"
+BlockImportScriptsWithWrongMimeType=Загрузка сценария по адресу «%1$S» с помощью importScripts() была заблокирована из-за неразрешенного MIME-типа («%2$S»).
+BlockWorkerWithWrongMimeType=Загрузка Worker по адресу «%1$S» была заблокирована из-за неразрешенного MIME-типа («%2$S»).
+BlockModuleWithWrongMimeType=Загрузка модуля по адресу «%1$S» была заблокирована из-за неразрешенного MIME-типа («%2$S»).
+
+# LOCALIZATION NOTE: Do not translate "data: URI".
+BlockTopLevelDataURINavigation=Навигация к самому верхнему уровню data: URI не разрешена (Заблокирована загрузка: «%1$S»)
+BlockRedirectToDataURI=Перенаправление на data: URI не разрешено (Заблокирована загрузка: «%1$S»)
+
+# LOCALIZATION NOTE: Do not translate "file: URI". “%1$S” is the whole URI of the loaded file. “%2$S” is the MIME type e.g. "text/plain".
+BlockFileScriptWithWrongMimeType=Загрузка сценария из file: URI («%1$S») была заблокирована, поскольку его MIME-тип («%2$S») не является допустимым для JavaScript.
+
+# LOCALIZATION NOTE: “%S” is the whole URI of the loaded file.
+BlockExtensionScriptWithWrongExt=Загрузка сценария со страницы «%S» была заблокирована, поскольку расширение файла не разрешено.
+
+RestrictBrowserEvalUsage=eval() и eval-подобное использование других методов не разрешено в Родительском процессе или в Системных контекстах (Использование заблокировано в «%1$S»)
+
+# LOCALIZATION NOTE (MixedContentAutoUpgrade):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+MixedContentAutoUpgrade=Обновление незащищённого запроса на отображение «%1$S» для использования «%2$S»
+# LOCALIZATION NOTE (RunningClearSiteDataValue):
+# %S is the URI of the resource whose data was cleaned up
+RunningClearSiteDataValue=Заголовок Clear-Site-Data вызвал удаление данных «%S».
+UnknownClearSiteDataValue=Найден заголовок Clear-Site-Data. Значение «%S» неизвестно.
+
+# Reporting API
+ReportingHeaderInvalidJSON=Заголовок Reporting: получен некорректный JSON.
+ReportingHeaderInvalidNameItem=Заголовок Reporting: некорректное название группы.
+ReportingHeaderDuplicateGroup=Заголовок Reporting: игнорирую повторяющуюся группу «%S».
+ReportingHeaderInvalidItem=Заголовок Reporting: игнорирую некорректный элемент «%S».
+ReportingHeaderInvalidEndpoint=Заголовок Reporting: игнорирую некорректную конечную точку для элемента «%S».
+# LOCALIZATION NOTE(ReportingHeaderInvalidURLEndpoint): %1$S is the invalid URL, %2$S is the group name
+ReportingHeaderInvalidURLEndpoint=Заголовок Reporting: игнорирую некорректный URL конечной точки «%1$S» для элемента «%2$S».
+
+FeaturePolicyUnsupportedFeatureName=Корпоративная политика: Пропускаем неподдерживаемое имя функции «%S».
+# TODO: would be nice to add a link to the Feature-Policy MDN documentation here. See bug 1449501
+FeaturePolicyInvalidEmptyAllowValue= Корпоративная политика: Пропускаем пустой список разрешений для функции «%S».
+# TODO: would be nice to add a link to the Feature-Policy MDN documentation here. See bug 1449501
+FeaturePolicyInvalidAllowValue=Корпоративная политика: Пропускаем запрещённое значение «%S».
+
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+ReferrerLengthOverLimitation=HTTP-заголовок Referer: Длина заголовка превышает лимит в %1$S байт — заголовок обрезан до origin: %2$S
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+ReferrerOriginLengthOverLimitation=HTTP-заголовок Referer: Длина origin превышает лимит в %1$S байт — заголовок удалён; origin: %2$S
+
+# LOCALIZATION NOTE: Do not translate "no-referrer-when-downgrade", "origin-when-cross-origin" and "unsafe-url". %S is the URI of the loading channel.
+ReferrerPolicyDisallowRelaxingWarning=Referrer policy: Менее строгие политики, включая no-referrer-when-downgrade, origin-when-cross-origin и unsafe-url, скоро будут игнорироваться для междоменного запроса: %S
+# LOCALIZATION NOTE: %1$S is the ignored referrer policy, %2$S is the URI of the loading channel.
+ReferrerPolicyDisallowRelaxingMessage=Referrer policy: Менее строгая политика %1$S игнорирована для междоменного запроса: %2$S
+
+# X-Frame-Options
+# LOCALIZATION NOTE(XFrameOptionsInvalid): %1$S is the header value, %2$S is frame URI. Do not translate "X-Frame-Options".
+XFrameOptionsInvalid = При загрузке «%2$S» был обнаружен заголовок X-Frame-Options с некорректным значением: «%1$S» не является допустимой директивой.
+# LOCALIZATION NOTE(XFrameOptionsDeny): %1$S is the header value, %2$S is frame URI and %3$S is the parent document URI. Do not translate "X-Frame-Options".
+XFrameOptionsDeny=Загрузка «%2$S» во фрейме запрещена директивой «X-Frame-Options», установленной в «%1$S».
+
+# HTTPS-Only Mode
+# LOCALIZATION NOTE: %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+HTTPSOnlyUpgradeRequest = Обновление незащищённого запроса «%1$S» для использования «%2$S».
+# LOCALIZATION NOTE: %1$S is the URL of request.
+HTTPSOnlyNoUpgradeException = Незащищённый запрос «%1$S» не обновляется, поскольку он является исключением.
+# LOCALIZATION NOTE: %1$S is the URL of the failed request; %2$S is an error-code.
+HTTPSOnlyFailedRequest = Обновление незащищённого запроса «%1$S» не удалось. (%2$S)
+# LOCALIZATION NOTE: %S is the URL of the failed request;
+HTTPSOnlyFailedDowngradeAgain = Обновление незащищённого запроса «%S» не удалось. Переходим обратно на «http».
+# LOCALIZATION NOTE: Hints or indicates a new transaction for a URL is likely coming soon. We use
+# a speculative connection to start a TCP connection so that the resource is immediately ready
+# when the transaction is actually submitted. HTTPS-Only and HTTPS-First will upgrade such
+# speculative TCP connections from http to https.
+# %1$S is the URL of the upgraded speculative TCP connection; %2$S is the upgraded scheme.
+HTTPSOnlyUpgradeSpeculativeConnection = Переход с небезопасного спекулятивного TCP-соединения «%1$S» на использование «%2$S».
+
+HTTPSFirstSchemeless = Обновление URL-адреса, загруженного в адресную строку, без явной схемы протокола для использования HTTPS.
+
+# LOCALIZATION NOTE: %S is the URL of the blocked request;
+IframeSandboxBlockedDownload = Загрузка «%S» была заблокирована, так как у вызвавшего загрузку iframe установлен флаг sandbox.
+
+# LOCALIZATION NOTE: %S is the URL of the blocked request;
+SandboxBlockedCustomProtocols = Заблокирован переход к специальному протоколу «%S» из контекста изолированной среды.
+
+# Sanitizer API
+# LOCALIZATION NOTE: Please do not localize "DocumentFragment". It's the name of an API.
+SanitizerRcvdNoInput = Ввод пуст или не был получен. Выведен пустой DocumentFragment.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/svg/svg.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/svg/svg.properties
new file mode 100644
index 0000000000..0dfbc2f445
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/svg/svg.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+AttributeParseWarning=Неожиданное значение %2$S при анализе атрибута %1$S.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/viewSource.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/viewSource.properties
new file mode 100644
index 0000000000..d70db0c6cc
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/viewSource.properties
@@ -0,0 +1,16 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+goToLineTitle = Переход к строке
+goToLineText = Введите номер строки
+invalidInputTitle = Некорректный ввод
+invalidInputText = Введенный номер строки некорректен.
+outOfRangeTitle = Строка не найдена
+outOfRangeText = Указанная строка не найдена.
+viewSelectionSourceTitle = Исходный код DOM выделенного фрагмента
+
+context_goToLine_label = Перейти к строке…
+context_goToLine_accesskey = е
+context_wrapLongLines_label = Переносить длинные строки
+context_highlightSyntax_label = Подсветка синтаксиса
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/wizard.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/wizard.properties
new file mode 100644
index 0000000000..a9c5f7403b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/wizard.properties
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+default-first-title=Добро пожаловать в %S
+default-last-title=Завершение работы %S
+default-first-title-mac=Начало
+default-last-title-mac=Завершение
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/xslt/xslt.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/xslt/xslt.properties
new file mode 100644
index 0000000000..28ae504187
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/xslt/xslt.properties
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+1 = Ошибка разбора таблицы стилей XSLT.
+2 = Ошибка разбора XPath выражения.
+3 =
+4 = Ошибка преобразования XSLT.
+5 = Неправильная XSLT/XPath функция.
+6 = Таблица стилей XSLT (возможно) содержит рекурсию.
+7 = Недействительное значение атрибута для XSLT 1.0.
+8 = Выражение XPath должно вернуть значение типа NodeSet.
+9 = XSLT-преобразование было уничтожено <xsl:message>.
+10 = Во время загрузки таблицы стилей XSLT произошла ошибка в сети:
+11 = В таблице стилей XSLT не указан MIME-тип XML:
+12 = Таблица стилей XSLT прямым или косвенным образом импортирует или включает себя:
+13 = Функция XPath была вызвана с неверным числом аргументов.
+14 = Была вызвана неизвестная функция расширения XPath.
+15 = Ошибка разбора выражения XPath, ожидается символ «)»:
+16 = Ошибка разбора выражения XPath, некорректная ось:
+17 = Ошибка разбора выражения XPath, ожидается правило проверки имени или набора узлов:
+18 = Ошибка разбора выражения XPath, ожидается символ «]»:
+19 = Ошибка разбора выражения XPath, некорректное имя переменной:
+20 = Ошибка разбора выражения XPath, незаконченное выражение:
+21 = Ошибка разбора выражения XPath, ожидается оператор:
+22 = Ошибка разбора выражения XPath, незакрытый литерал:
+23 = Ошибка разбора выражения XPath, символ «:» здесь запрещён:
+24 = Ошибка разбора выражения XPath, символ «!» здесь запрещён, отрицание выполняется с помощью not():
+25 = Ошибка разбора выражения XPath, обнаружен недопустимый символ:
+26 = Ошибка разбора выражения XPath, ожидается бинарный оператор:
+27 = Загрузка таблицы стилей XSLT была заблокирована из соображений безопасности.
+28 = Вычисление неправильного выражения.
+29 = Несбалансированность фигурных скобок.
+30 = Создание элемента с неправильным QName.
+31 = Перекрытие имен переменных в пределах одного шаблона.
+32 = Вызов ключевой функции не разрешён.
+
+LoadingError = Ошибка загрузки таблицы стилей: %S
+TransformError = Ошибка при XSLT преобразовании: %S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/global/xul.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/xul.properties
new file mode 100644
index 0000000000..01055ec856
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/global/xul.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+PINotInProlog=Инструкция обработки <?%1$S?> больше не действует за пределами prolog (см. bug 360119).
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning-toolbar.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning-toolbar.dtd
new file mode 100644
index 0000000000..b6d0def444
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning-toolbar.dtd
@@ -0,0 +1,51 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY lightning.toolbar.calendar.name "Панель календаря">
+<!ENTITY lightning.toolbar.calendar.name.accesskey "к">
+<!ENTITY lightning.toolbar.task.name "Панель задач">
+<!ENTITY lightning.toolbar.task.name.accesskey "з">
+
+<!ENTITY lightning.toolbar.sync.label "Синхронизация">
+<!ENTITY lightning.toolbar.sync.tooltip "Перезагрузить календари и синхронизировать изменения">
+<!ENTITY lightning.toolbar.delete.label "Удалить">
+<!ENTITY lightning.toolbar.delete.tooltip "Удалить выбранные события или задачи">
+<!ENTITY lightning.toolbar.edit.label "Правка">
+<!ENTITY lightning.toolbar.edit.tooltip "Редактировать выбранное событие или задачу">
+<!ENTITY lightning.toolbar.gototoday.label "Сегодня">
+<!ENTITY lightning.toolbar.gototoday.tooltip "Перейти на сегодня">
+<!ENTITY lightning.toolbar.print.label "Печать">
+<!ENTITY lightning.toolbar.print.tooltip "Печать событий или задач">
+
+<!-- Mode Toolbar -->
+<!ENTITY lightning.toolbar.calendar.label "Календарь">
+<!ENTITY lightning.toolbar.calendar.tooltip "Переключиться на вкладку календаря">
+<!ENTITY lightning.toolbar.calendar.accesskey "к">
+<!ENTITY lightning.toolbar.task.label "Задачи">
+<!ENTITY lightning.toolbar.task.tooltip "Переключиться на вкладку задач">
+<!ENTITY lightning.toolbar.task.accesskey "з">
+
+<!-- Toolbar write button -->
+<!ENTITY lightning.toolbar.newevent.label "Событие">
+<!ENTITY lightning.toolbar.newevent.tooltip "Создать новое событие">
+<!ENTITY lightning.toolbar.newtask.label "Задача">
+<!ENTITY lightning.toolbar.newtask.tooltip "Создать новую задачу">
+
+<!-- Calendar and Task Mode Toolbar -->
+<!ENTITY lightning.toolbar.day.label "День">
+<!ENTITY lightning.toolbar.day.accesskey "Д">
+<!ENTITY lightning.toolbar.week.label "Неделя">
+<!ENTITY lightning.toolbar.week.accesskey "Н">
+<!ENTITY lightning.toolbar.multiweek.label "По неделям">
+<!ENTITY lightning.toolbar.multiweek.accesskey "П">
+<!ENTITY lightning.toolbar.month.label "Месяц">
+<!ENTITY lightning.toolbar.month.accesskey "М">
+<!-- LOCALIZATION NOTE: the same as appmenuButton.label and appmenuButton1.tooltip
+ from messenger.dtd -->
+<!ENTITY lightning.toolbar.appmenuButton.label "Меню приложения">
+<!ENTITY lightning.toolbar.appmenuButton1.tooltip "Показать меню &brandShortName;">
+<!ENTITY lightning.toolbar.calendarmenu.label "Панель календаря">
+<!ENTITY lightning.toolbar.calendarmenu.accesskey "к">
+<!ENTITY lightning.toolbar.calendarpane.label "Показать панель календаря">
+<!ENTITY lightning.toolbar.calendarpane.accesskey "П">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning.dtd
new file mode 100644
index 0000000000..0f0e10202f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning.dtd
@@ -0,0 +1,114 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- WARNING! This file contains UTF-8 encoded characters!
+ - If this ==> … <== doesn't look like an ellipsis (three dots in a row),
+ - your editor isn't using UTF-8 encoding and may munge up the document!
+ -->
+
+<!-- Tools menu -->
+<!ENTITY lightning.preferencesLabel "Календарь">
+
+<!-- New menu popup in File menu -->
+<!ENTITY lightning.menupopup.new.event.label "Событие…">
+<!ENTITY lightning.menupopup.new.event.accesskey "С">
+<!ENTITY lightning.menupopup.new.task.label "Задача…">
+<!ENTITY lightning.menupopup.new.task.accesskey "З">
+<!ENTITY lightning.menupopup.new.calendar.label "Календарь…">
+<!ENTITY lightning.menupopup.new.calendar.accesskey "К">
+
+<!-- Open menu popup in File menu -->
+<!ENTITY lightning.menupopup.open.calendar.label "Файлы календаря…">
+<!ENTITY lightning.menupopup.open.calendar.accesskey "Ф">
+
+<!-- View Menu -->
+<!ENTITY lightning.menu.view.calendar.label "Календарь">
+<!ENTITY lightning.menu.view.calendar.accesskey "К">
+<!ENTITY lightning.menu.view.tasks.label "Задачи">
+<!ENTITY lightning.menu.view.tasks.accesskey "З">
+
+<!-- Events and Tasks menu -->
+<!ENTITY lightning.menu.eventtask.label "События и задачи">
+<!ENTITY lightning.menu.eventtask.accesskey "и">
+
+<!-- properties dialog, calendar creation wizard -->
+<!-- LOCALIZATON NOTE(lightning.calendarproperties.email.label,
+ lightning.calendarproperties.forceEmailScheduling.label)
+ These strings are used in the calendar wizard and the calendar properties dialog, but are only
+ displayed when setting/using a caldav calendar -->
+<!ENTITY lightning.calendarproperties.email.label "Эл. Почта:">
+<!ENTITY lightning.calendarproperties.forceEmailScheduling.label "Предпочитать отправлять эл.письма с приглашениями со стороны клиента">
+<!-- LOCALIZATON NOTE(lightning.calendarproperties.forceEmailScheduling.tooltiptext1,
+ lightning.calendarproperties.forceEmailScheduling.tooltiptext2)
+ - tooltiptext1 is used in the calendar wizard when setting a new caldav calendar
+ - tooltiptext2 is used in the calendar properties dialog for caldav calendars -->
+<!ENTITY lightning.calendarproperties.forceEmailScheduling.tooltiptext1 "Пока вы можете включить это только после настройки этого календаря в диалоговом окне его свойств, если сервер календаря сам отправляет эл.письма с приглашениями.">
+<!ENTITY lightning.calendarproperties.forceEmailScheduling.tooltiptext2 "Эта настройка доступна только в том случае, если сервер календаря сам отправляет эл.письма с приглашениями. Её включение позволит вернуться к стандартной отправке эл.писем с приглашениями, а не поручать это серверу.">
+
+<!-- The notifications settings in the properties dialog -->
+<!ENTITY lightning.calendarproperties.notifications.label "Уведомления">
+<!ENTITY lightning.calendarproperties.globalNotifications.label "Глобальные настройки уведомлений…">
+
+<!-- iMIP Bar (meeting support) -->
+<!ENTITY lightning.imipbar.btnAccept.label "Подтвердить">
+<!ENTITY lightning.imipbar.btnAccept2.tooltiptext "Подтвердить приглашение на событие">
+<!ENTITY lightning.imipbar.btnAcceptRecurrences.label "Подтвердить все">
+<!ENTITY lightning.imipbar.btnAcceptRecurrences2.tooltiptext "Подтвердить приглашение на все повторения события">
+<!ENTITY lightning.imipbar.btnAdd.label "Добавить">
+<!ENTITY lightning.imipbar.btnAdd.tooltiptext "Добавить событие в календарь">
+<!ENTITY lightning.imipbar.btnDecline.label "Отказаться">
+<!ENTITY lightning.imipbar.btnDecline2.tooltiptext "Отказаться от приглашения на событие">
+<!ENTITY lightning.imipbar.btnDeclineRecurrences.label "Отказаться от всех">
+<!ENTITY lightning.imipbar.btnDeclineRecurrences2.tooltiptext "Отказаться от приглашения на все повторения события">
+<!ENTITY lightning.imipbar.btnDeclineCounter.label "Отклонить">
+<!ENTITY lightning.imipbar.btnDeclineCounter.tooltiptext "Отклонить встречное предложение">
+<!ENTITY lightning.imipbar.btnDelete.label "Удалить">
+<!ENTITY lightning.imipbar.btnDelete.tooltiptext "Удалить из календаря">
+<!ENTITY lightning.imipbar.btnDetails.label "Подробнее…">
+<!ENTITY lightning.imipbar.btnDetails.tooltiptext "Показать детали события">
+<!ENTITY lightning.imipbar.btnDoNotShowImipBar.label "Не показывать мне подобные сообщения">
+<!ENTITY lightning.imipbar.btnGoToCalendar.label "Календарь">
+<!ENTITY lightning.imipbar.btnGoToCalendar.tooltiptext "Перейти на вкладку календаря">
+<!ENTITY lightning.imipbar.btnMore.label "Больше">
+<!ENTITY lightning.imipbar.btnMore.tooltiptext "Щёлкните чтобы увидеть больше параметров">
+<!ENTITY lightning.imipbar.btnReconfirm2.label "Вновь подтвердить">
+<!ENTITY lightning.imipbar.btnReconfirm.tooltiptext "Вновь отправить подтверждение организатору">
+<!ENTITY lightning.imipbar.btnReschedule.label "Перепланировать">
+<!ENTITY lightning.imipbar.btnReschedule.tooltiptext "Перепланировать событие">
+<!ENTITY lightning.imipbar.btnSaveCopy.label "Сохранить копию">
+<!ENTITY lightning.imipbar.btnSaveCopy.tooltiptext "Сохранить копию события в календарь независимо от ответа организатору. Список участников будет очищен.">
+<!ENTITY lightning.imipbar.btnTentative.label "Возможно">
+<!ENTITY lightning.imipbar.btnTentative2.tooltiptext "Подтвердить участие в событии как возможное">
+<!ENTITY lightning.imipbar.btnTentativeRecurrences.label "Возможно для всех">
+<!ENTITY lightning.imipbar.btnTentativeRecurrences2.tooltiptext "Подтвердить участие в событии как возможное для всех повторений события">
+<!ENTITY lightning.imipbar.btnUpdate.label "Обновить">
+<!ENTITY lightning.imipbar.btnUpdate.tooltiptext "Обновить событие в календаре">
+<!ENTITY lightning.imipbar.description "Это письмо содержит приглашение на событие.">
+
+<!ENTITY lightning.imipbar.btnSend.label "Отправить ответ сейчас">
+<!ENTITY lightning.imipbar.btnSend.tooltiptext "Отправить ответ организатору">
+<!ENTITY lightning.imipbar.btnSendSeries.tooltiptext "Отправить ответ по всей серии событий организатору">
+<!ENTITY lightning.imipbar.btnDontSend.label "Не отправлять ответ">
+<!ENTITY lightning.imipbar.btnDontSend.tooltiptext "Изменить мой статус участия без отправки ответа организатору">
+<!ENTITY lightning.imipbar.btnDontSendSeries.tooltiptext "Изменить мой статус участия в сериях без отправки ответа организатору">
+
+<!-- Lightning specific keybindings -->
+<!ENTITY lightning.keys.event.showCalendar.key "C">
+<!ENTITY lightning.keys.event.showTasks.key "D">
+<!ENTITY lightning.keys.event.new "I">
+<!ENTITY lightning.keys.todo.new "D">
+
+<!-- Account Central page -->
+<!ENTITY lightning.acctCentral.newCalendar.label "Создать новый календарь">
+
+<!-- today-pane-specific -->
+<!ENTITY todaypane.showMinimonth.label "Показывать календарик">
+<!ENTITY todaypane.showMinimonth.accesskey "о">
+<!ENTITY todaypane.showMiniday.label "Показывать день">
+<!ENTITY todaypane.showMiniday.accesskey "к">
+<!ENTITY todaypane.showNone.label "Ничего не показывать">
+<!ENTITY todaypane.showNone.accesskey "Н">
+<!ENTITY todaypane.showTodayPane.label "Показывать Мероприятия">
+<!ENTITY todaypane.showTodayPane.accesskey "М">
+<!ENTITY todaypane.statusButton.label "Мероприятия">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning.properties
new file mode 100644
index 0000000000..58e35ded29
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/lightning/lightning.properties
@@ -0,0 +1,201 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# addon description:
+extensions.{e2fda1a4-762b-4020-b5ad-a41df1933103}.name=Lightning
+extensions.{e2fda1a4-762b-4020-b5ad-a41df1933103}.description=Встраиваемый календарь и планировщик для вашего почтового клиента
+extensions.{e2fda1a4-762b-4020-b5ad-a41df1933103}.creator=Проект Mozilla Calendar
+
+# Lightning branding
+brandShortName=Lightning
+
+# Task mode title
+taskModeApplicationTitle=Задачи
+
+# Tab titles
+tabTitleCalendar=Календарь
+tabTitleTasks=Задачи
+
+# Html event display in message
+imipHtml.header=Приглашение на событие
+imipHtml.summary=Название:
+imipHtml.location=Место:
+imipHtml.when=Когда:
+imipHtml.organizer=Организатор:
+imipHtml.description=Описание:
+# LOCALIZATION_NOTE(imipHtml.attachments): This is a label for one or more (additional) links to
+# documents or websites attached to this event.
+imipHtml.attachments=Вложения:
+imipHtml.comment=Комментарий:
+imipHtml.attendees=Участники:
+# LOCALIZATION_NOTE(imipHtml.url): This is a label for a reference to an (alternate) online
+# representation of the event (either directly human readable or not).
+imipHtml.url=Связанная ссылка:
+imipHtml.canceledOccurrences=Отменённые мероприятия:
+imipHtml.modifiedOccurrences=Изменённые мероприятия:
+imipHtml.newLocation=Новое место: %1$S
+# LOCALIZATION_NOTE(imipHtml.attendeeDelegatedFrom): this is appended behind an attendee name in the
+# email invitation preview - don't add leading/trailing whitespaces here
+# %1$S - a single delegator or a comma separated list of delegators
+imipHtml.attendeeDelegatedFrom=(делегировано от %1$S)
+# LOCALIZATION_NOTE(imipHtml.attendeeDelegatedTo): this is appended behind an attendee name in the
+# email invitation preview - don't add leading/trailing whitespaces here
+# %1$S - a single delegatee or a comma separated list of delegatees
+imipHtml.attendeeDelegatedTo=(делегировано %1$S)
+
+# LOCALIZATION_NOTE(imipHtml.attendee.combined): tooltip for itip icon in email invitation preview.
+# Given an attendee loungeexample.org of type room is a mandatory participant and has accepted the
+# invitation, the tooltip would be:
+# lounge@example.org (room) is a required participant. lounge@example.org has confirmed attendance.
+# %1$S - value of imipHtml.attendeeRole2.*
+# %2$S - value of imipHtml.attendeePartStat2.*
+imipHtml.attendee.combined=%1$S %2$S
+
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.CHAIR): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.CHAIR=%1$S возглавляет это событие.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.NON-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.NON-PARTICIPANT=%1$S не является участником.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.OPT-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.OPT-PARTICIPANT=%1$S является необязательным участником.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.REQ-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.REQ-PARTICIPANT=%1$S является обязательным участником.
+
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.ACCEPTED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.ACCEPTED=%1$S подтвердил участие.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.DECLINED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.DECLINED=%1$S отказался от участия.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.DELEGATED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+# %2$S - single delegatee or comma separated list of delegatees
+# delegation is different from invitation forwarding - in case of the former the original attendee
+# is replaced, while on the latter the receiver may take part additionally
+imipHtml.attendeePartStat2.DELEGATED=%1$S делегировал вместо себя %2$S.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.NEEDS-ACTION): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.NEEDS-ACTION=%1$S пока ещё не ответил.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.TENTATIVE): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.TENTATIVE=%1$S предварительно подтвердил участие.
+
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.INDIVIDUAL): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing an individual attendee
+imipHtml.attendeeUserType2.INDIVIDUAL=%1$S
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.GROUP): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a group (e.g. a distribution list)
+imipHtml.attendeeUserType2.GROUP=%1$S (группа)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.RESOURCE): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a resource (e.g. projector)
+imipHtml.attendeeUserType2.RESOURCE=%1$S (проект)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.ROOM): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a room
+imipHtml.attendeeUserType2.ROOM=%1$S (комната)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.UNKNOWN): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing an attendee of unknown type
+imipHtml.attendeeUserType2.UNKNOWN=%1$S
+
+imipAddedItemToCal2=Это событие было добавлено в ваш календарь.
+imipCanceledItem2=Это событие было удалено из вашего календаря.
+imipUpdatedItem2=Это событие было обновлено.
+imipBarCancelText=Это сообщение содержит отмену события.
+imipBarCounterErrorText=Это сообщение содержит встречное предложение на приглашение, которое не может быть обработано.
+imipBarCounterPreviousVersionText=Это сообщение содержит встречное предложение на предыдущую версию приглашения.
+imipBarCounterText=Это сообщение содержит встречное предложение на приглашение.
+imipBarDisallowedCounterText=Это сообщение содержит встречное предложение, хотя вы запретили выдвигать их для этого события.
+imipBarDeclineCounterText=Это сообщение содержит ответ на ваше встречное предложение.
+imipBarRefreshText=Это письмо запрашивает обновление события.
+imipBarPublishText=Это письмо содержит событие.
+imipBarRequestText=Это письмо содержит приглашение на событие.
+imipBarSentText=Это письмо содержит отправленное событие.
+imipBarSentButRemovedText=Это письмо содержит отправленное событие, которого больше нет в вашем календаре.
+imipBarUpdateText=Это письмо содержит обновление существующего события.
+imipBarUpdateMultipleText=Это письмо содержит обновления нескольких существующих событий.
+imipBarUpdateSeriesText=Это письмо содержит обновление существующей серии событий.
+imipBarAlreadyProcessedText=Это письмо содержит событие, которое уже обработано.
+imipBarProcessedNeedsAction=Это письмо содержит событие, на которое вы еще не отреагировали.
+imipBarProcessedMultipleNeedsAction=Это письмо содержит несколько событий, на которые вы ещё не отреагировали.
+imipBarProcessedSeriesNeedsAction=Это письмо содержит серию событий, на которую вы ещё не отреагировали.
+imipBarReplyText=Это письмо содержит ответ на приглашение..
+imipBarReplyToNotExistingItem=Это письмо содержит ответ, относящийся к событию, которого нет в вашем календаре.
+# LOCALIZATION_NOTE(imipBarReplyToRecentlyRemovedItem):
+# %1$S - datetime of deletion
+imipBarReplyToRecentlyRemovedItem=Это письмо содержит ответ, относящийся к событию, которое было удалено из вашего календаря %1$S.
+imipBarUnsupportedText=Это письмо содержит событие, которое эта версия Lightning не может обработать.
+imipBarUnsupportedText2=Это письмо содержит событие, которое эта версия %1$S не может обработать.
+imipBarProcessingFailed=Ошибка обработки письма. Состояние: %1$S.
+imipBarCalendarDeactivated=Это сообщение содержит информацию о событии. Откройте календарь, чтобы занести его.
+imipBarNotWritable=Нет календарей доступных для записи настроенных для приглашений, проверьте настройки календаря.
+imipSendMail.title=Уведомление участников
+imipSendMail.text=Вы хотите отправить уведомление по электронной почте?
+imipNoIdentity=Нет
+imipNoCalendarAvailable=Нет календарей доступных для записи.
+
+itipReplySubject2=Ответ на приглашение: %1$S
+itipReplyBodyAccept=%1$S принял Ваше приглашение на событие.
+itipReplyBodyDecline=%1$S отклонил Ваше приглашение на событие.
+itipReplySubjectAccept2=Принято: %1$S
+itipReplySubjectDecline2=Приглашение отклонено: %1$S
+itipReplySubjectTentative2=Ориентировочно принято: %1$S
+itipRequestSubject2=Приглашение: %1$S
+itipRequestUpdatedSubject2=Обновлено: %1$S
+itipRequestBody=%1$S приглашает Вас на %2$S
+itipCancelSubject2=Отменено: %1$S
+itipCancelBody=%1$S отменил это событие: « %2$S »
+itipCounterBody=%1$S сделал встречное предложение для «%2$S»:
+itipDeclineCounterBody=%1$S отклонил ваше встречное предложение для «%2$S».
+itipDeclineCounterSubject=Встречное предложение отклонено: %1$S
+
+confirmProcessInvitation=Вы недавно удалили этот пункт, вы уверены, что вы хотите обработать это приглашение?
+confirmProcessInvitationTitle=Обработать приглашение?
+
+invitationsLink.label=Приглашения: %1$S
+
+# LOCALIZATION_NOTE(binaryComponentKnown): This is shown when Lightning is
+# missing the binary component and knows how to calculate the expected version
+# number. To test, remove the binary component from the components/
+# subdirectory and start Lightning, or force install into a different
+# Thunderbird version. In the last part of the sentence it should be made clear
+# that the user can install e.g. 3.7, 3.7.1 or anything other 3.7.x version
+# %1$S - The Lightning brand name, from the brandShortName string above.
+# %2$S - The current Lightning version
+# %3$S - The expected Lightning version
+binaryComponentKnown=Бинарный компонент, необходимый для %1$S, не может быть загружен, вероятно потому, что используется комбинация неправильных версий. В настоящее время у вас установлен %1$S %2$S, однако следует использовать версию из серии %3$S.
+
+# LOCALIZATION_NOTE(binaryComponentUnknown): This is shown when Lightning is
+# missing the binary component but can't calculate the expected version. This
+# happens in the rare case that Lightning is installed into something other
+# than Thunderbird or Seamonkey. You may link to a different page if you can
+# commit to keeping it up to date, I'd recommend staying with the English page.
+# %1$S - The Lightning brand name, from the brandShortName string above.
+# %2$S - The application brand name, e.g. Postbox
+# %3$S - The application version
+# %3$S - The current Lightning version
+binaryComponentUnknown=Бинарный компонент, необходимый для %1$S, не может быть загружен, вероятно потому, что используется комбинация неправильных версий. Вы используете %2$S %3$S вместе с %1$S %4$S. Для получения подробностей обратитесь к https://developer.mozilla.org/en/Calendar/Calendar_Versions
+
+# LOCALIZATION_NOTE(binaryComponentTitle): The title for the dialog that
+# notifies about a version mismatch.
+# %1$S - The Lightning brand name, from the brandShortName string above.
+binaryComponentTitle=Несоответствие версии %1$S
+
+# LOCALIZATION NOTE(noIdentitySelectedNotification):
+noIdentitySelectedNotification=Если вы хотите использовать этот календарь для хранений приглашений другим людям или от других людей, вам следует указать ниже адрес электронной почты.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-mapi/mapi.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-mapi/mapi.properties
new file mode 100644
index 0000000000..54d9955a9f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-mapi/mapi.properties
@@ -0,0 +1,36 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Mail Integration Dialog
+dialogTitle=%S
+dialogText=Использовать %S в качестве почтового клиента по умолчанию?
+newsDialogText=Использовать %S в качестве клиента по умолчанию для чтения групп новостей?
+feedDialogText=Использовать %S в качестве приложения по умолчанию для чтения лент новостей?
+checkboxText=Больше не показывать это окно
+setDefaultMail=%S не является вашим почтовым приложением по умолчанию. Хотите ли вы установить его почтовым приложением по умолчанию?
+setDefaultNews=%S не является вашим клиентом по умолчанию для чтения групп новостей. Хотите ли вы установить его клиентом по умолчанию для чтения групп новостей?
+setDefaultFeed=%S не является вашим приложением по умолчанию для чтения лент новостей. Хотите ли вы установить его приложением по умолчанию для чтения лент новостей?
+alreadyDefaultMail=%S уже является вашим почтовым приложением по умолчанию.
+alreadyDefaultNews=%S уже является вашим клиентом по умолчанию для чтения групп новостей.
+alreadyDefaultFeed=%S уже является вашим приложением по умолчанию для чтения лент новостей.
+
+# MAPI Messages
+loginText=Введите пароль для %S:
+loginTextwithName=Введите ваши имя пользователя и пароль
+loginTitle=%S
+PasswordTitle=%S
+
+# MAPI Error Messages
+errorMessage=%S не может быть сделан почтовым клиентом по умолчанию, так как не удалось обновить ключ реестра. Убедитесь, что у вас достаточно прав для этого, и попробуйте снова.
+errorMessageNews=%S не может быть сделан приложением по умолчанию для чтения групп новостей, так как не удалось обновить ключ реестра. Убедитесь, что у вас достаточно прав для этого, и попробуйте снова.
+errorMessageTitle=%S
+
+# MAPI Security Messages
+mapiBlindSendWarning=Другое приложение пытается отправить сообщение, используя ваш профиль. Вы хотите отправить его?
+mapiBlindSendDontShowAgain=Выдавать предупреждение всякий раз, когда другие приложения пытаются отправить сообщения от моего имени
+
+#Default Mail Display String
+# localization note, %S is the vendor name
+defaultMailDisplayTitle=%S
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/am-newsblog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/am-newsblog.dtd
new file mode 100644
index 0000000000..938fa4b441
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/am-newsblog.dtd
@@ -0,0 +1,14 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY biffAll.label "Включить обновления для всех лент новостей">
+<!ENTITY biffAll.accesskey "ю">
+
+<!ENTITY newFeedSettings.label "Настройки по умолчанию для новых лент новостей">
+
+<!ENTITY manageSubscriptions.label "Управление подписками…">
+<!ENTITY manageSubscriptions.accesskey "п">
+
+<!ENTITY feedWindowTitle.label "Мастер учетной записи лент новостей">
+<!ENTITY feeds.accountName "Блоги и ленты новостей">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/feed-subscriptions.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/feed-subscriptions.dtd
new file mode 100644
index 0000000000..19b64d7c93
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/feed-subscriptions.dtd
@@ -0,0 +1,55 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Subscription Dialog -->
+<!ENTITY feedSubscriptions.label "Подписки на ленты новостей">
+<!ENTITY learnMore.label "Узнать больше о лентах новостей">
+
+<!ENTITY feedTitle.label "Заголовок:">
+<!ENTITY feedTitle.accesskey "л">
+
+<!ENTITY feedLocation.label "Адрес ленты новостей:">
+<!ENTITY feedLocation.accesskey "ы">
+<!ENTITY feedLocation2.placeholder "Введите действительный адрес ленты новостей">
+<!ENTITY locationValidate.label "Валидация">
+<!ENTITY validateText.label "Проверьте правильность и получите действительную ссылку.">
+
+<!ENTITY feedFolder.label "Хранить статьи в:">
+<!ENTITY feedFolder.accesskey "ь">
+
+<!-- Account Settings and Subscription Dialog -->
+<!ENTITY biffStart.label "Проверять наличие новых статей каждые ">
+<!ENTITY biffStart.accesskey "о">
+<!ENTITY biffMinutes.label "минут">
+<!ENTITY biffMinutes.accesskey "и">
+<!ENTITY biffDays.label "дней">
+<!ENTITY biffDays.accesskey "е">
+<!ENTITY recommendedUnits.label "Издатель рекомендует:">
+
+<!ENTITY quickMode.label "Показывать краткое описание статьи вместо загрузки веб-страницы">
+<!ENTITY quickMode.accesskey "а">
+
+<!ENTITY autotagEnable.label "Автоматически создавать метки из имён &lt;категорий&gt; лент">
+<!ENTITY autotagEnable.accesskey "з">
+<!ENTITY autotagUsePrefix.label "Префикс меток:">
+<!ENTITY autotagUsePrefix.accesskey "к">
+<!ENTITY autoTagPrefix.placeholder "Введите префикс метки">
+
+<!-- Subscription Dialog -->
+<!ENTITY button.addFeed.label "Добавить">
+<!ENTITY button.addFeed.accesskey "б">
+<!ENTITY button.verifyFeed.label "Проверить">
+<!ENTITY button.verifyFeed.accesskey "е">
+<!ENTITY button.updateFeed.label "Обновить">
+<!ENTITY button.updateFeed.accesskey "в">
+<!ENTITY button.removeFeed.label "Удалить">
+<!ENTITY button.removeFeed.accesskey "д">
+<!ENTITY button.importOPML.label "Импортировать">
+<!ENTITY button.importOPML.accesskey "м">
+<!ENTITY button.exportOPML.label "Экспортировать">
+<!ENTITY button.exportOPML.accesskey "с">
+<!ENTITY button.exportOPML.tooltip "Экспорт лент новостей со структурой папок; ctrl щелчок или ctrl enter экспортирует ленты в виде списка">
+
+<!ENTITY cmd.close.commandKey "w">
+<!ENTITY button.close.label "Закрыть">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/newsblog.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/newsblog.properties
new file mode 100644
index 0000000000..65c4a30b97
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-newsblog/newsblog.properties
@@ -0,0 +1,93 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+subscribe-validating-feed=Проверка ленты новостей…
+subscribe-cancelSubscription=Вы уверены, что хотите отменить подписку на эту ленту новостей?
+subscribe-cancelSubscriptionTitle=Идёт подписка на ленту новостей…
+subscribe-feedAlreadySubscribed=Вы уже подписаны на эту ленту новостей.
+subscribe-errorOpeningFile=Не удалось открыть файл
+subscribe-feedAdded=Лента новостей добавлена.
+subscribe-feedUpdated=Лента новостей обновлена.
+subscribe-feedMoved=Подписка на ленту новостей перемещена.
+subscribe-feedCopied=Подписка на ленту новостей скопирована.
+subscribe-feedRemoved=Подписка на ленту новостей удалена.
+subscribe-feedNotValid=Формат ленты новостей является некорректным.
+subscribe-feedVerified=Адрес ленты новостей был верифицирован.
+subscribe-networkError=Не удалось найти ленту новостей. Пожалуйста, проверьте имя и попробуйте снова.
+subscribe-noAuthError=Адрес ленты новостей не авторизован.
+subscribe-loading=Идёт загрузка. Пожалуйста, подождите…
+
+subscribe-OPMLImportTitle=Выберите импортируемый OPML-файл
+## LOCALIZATION NOTE(subscribe-OPMLExportTitleList):
+## %S is the name of the feed account folder name.
+subscribe-OPMLExportTitleList=Экспорт %S в OPML-файл - Список лент новостей
+## LOCALIZATION NOTE(subscribe-OPMLExportTitleStruct):
+## %S is the name of the feed account folder name.
+subscribe-OPMLExportTitleStruct=Экспорт %S в OPML-файл - Ленты новостей со структурой папок
+## LOCALIZATION NOTE(subscribe-OPMLExportFileDialogTitle):
+## %1$S is the brandShortName, %2$S is the name of the feed account folder name.
+subscribe-OPMLExportFileDialogTitle=%1$S - Экспорт %2$S в OPML
+## LOCALIZATION NOTE(subscribe-OPMLExportDefaultFileName):
+## %1$S is the brandShortName (Thunderbird for example), %2$S is the account name.
+## The default extension (.opml) is added here as it is not automatically appended in the file picker on MacOS.
+subscribe-OPMLExportDefaultFileName=Мои_Ленты_Новостей_в_%1$S-%2$S.opml
+## LOCALIZATION NOTE(subscribe-OPMLImportInvalidFile): %S is the name of the OPML file the user tried to import.
+subscribe-OPMLImportInvalidFile=Файл %S по видимому не является корректным OPML-файлом.
+## LOCALIZATION NOTE(subscribe-OPMLImportFeedCount): Semi-colon list of plural forms.
+## See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+## #1 is the count of new imported entries.
+subscribe-OPMLImportFeedCount=Импортирована #1 новая лента новостей.;Импортировано #1 новые ленты новостей.;Импортировано #1 новых лент новостей.
+## LOCALIZATION NOTE(subscribe-OPMLImportUniqueFeeds): Semi-colon list of plural forms.
+## #1 is the count of new imported entries
+subscribe-OPMLImportUniqueFeeds=Импортирована #1 новая лента новостей, на которую вы не были подписаны;Импортировано #1 новые ленты новостей, на которые вы не были подписаны;Импортировано #1 новых лент новостей, на которые вы не были подписаны
+## LOCALIZATION NOTE(subscribe-OPMLImportFoundFeeds):
+## #1 is total number of elements found in the file
+subscribe-OPMLImportFoundFeeds=(из #1 найденной);(из #1 найденных);(из #1 найденных)
+## LOCALIZATION NOTE(subscribe-OPMLImportStatus):
+## This is the concatenation of the two strings defined above to compose 1 sentence.
+## %1$S = subscribe-OPMLImportUniqueFeeds
+## %2$S = subscribe-OPMLImportFoundFeeds
+subscribe-OPMLImportStatus=%1$S %2$S.
+
+subscribe-OPMLExportOPMLFilesFilterText=OPML-файлы
+## LOCALIZATION NOTE(subscribe-OPMLExportDone): %S is the export file name.
+subscribe-OPMLExportDone=Ленты новостей в этой учётной записи были экспортированы в %S.
+
+subscribe-confirmFeedDeletionTitle=Удаление подписки на ленту новостей
+## LOCALIZATION NOTE(subscribe-confirmFeedDeletion): %S is the name of the feed the user wants to unsubscribe from.
+subscribe-confirmFeedDeletion=Вы уверены, что хотите отменить подписку на ленту новостей: \n «%S»?
+
+## LOCALIZATION NOTE(subscribe-gettingFeedItems):
+## - The first %S is the number of articles processed so far;
+## - The second %S is the total number of items
+subscribe-gettingFeedItems=Идёт загрузка новостей с ленты новостей (%S из %S)…
+
+newsblog-noNewArticlesForFeed=На этой ленте новостей новых статей не появилось.
+## LOCALIZATION NOTE(newsblog-networkError): %S is the feed URL
+newsblog-networkError=%S не найден. Проверьте правильность написания имени и попробуйте снова.
+## LOCALIZATION NOTE(newsblog-feedNotValid): %S is the feed URL
+newsblog-feedNotValid=Формат ленты новостей %S является некорректным.
+## LOCALIZATION NOTE(newsblog-badCertError): %S is the feed URL host
+newsblog-badCertError=%S использует недействительный сертификат безопасности.
+## LOCALIZATION NOTE(newsblog-noAuthError): %S is the feed URL
+newsblog-noAuthError=%S не авторизован.
+newsblog-getNewMsgsCheck=Проверка наличия новостей на ленте новостей…
+
+## LOCALIZATION NOTE(feeds-accountname): This string should be the same as feeds.accountName in am-newsblog.dtd
+feeds-accountname=Блоги и ленты новостей
+
+## LOCALIZATION NOTE(externalAttachmentMsg): Content in the MIME part for external link attachments.
+externalAttachmentMsg=Это приложение MIME хранится отдельно от сообщения.
+
+## Import wizard.
+ImportFeedsCreateNewListItem=* Новая учётная запись *
+ImportFeedsNewAccount=Создать и импортировать в новую учётную запись лент новостей
+ImportFeedsExistingAccount=Импорт в существующую учётную запись лент новостей
+## LOCALIZATION NOTE(ImportFeedsDone):
+## - The first %S is the import file name;
+## - The second %S is the value of either ImportFeedsNew or ImportFeedsExisting;
+## - The third %S is the feed account name.
+ImportFeedsNew=новую
+ImportFeedsExisting=существующую
+ImportFeedsDone=Импорт подписок на ленты новостей из файла %1$S в %2$S учётную запись «%3$S» был завершён.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-region/region.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-region/region.properties
new file mode 100644
index 0000000000..701308b8be
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-region/region.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+mail.addr_book.mapit_url.format = https://maps.google.com/maps?q=@A1%20@A2%20@CI%20@ST%20@ZI%20@CO
+mail.addr_book.mapit_url.1.name=Google Maps
+mail.addr_book.mapit_url.1.format=https://maps.google.com/maps?q=@A1%20@A2%20@CI%20@ST%20@ZI%20@CO
+mail.addr_book.mapit_url.2.name=OpenStreetMap
+mail.addr_book.mapit_url.2.format=https://nominatim.openstreetmap.org/search.php?polygon=1&q=@A1%2C@A2%2C@CI%2C@ST%2C@ZI%2C@CO
+
+mailnews.messageid_browser.url = http://groups.google.com/search?as_umsgid=%mid
+
+mailnews.localizedRe =
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/certFetchingStatus.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/certFetchingStatus.dtd
new file mode 100644
index 0000000000..5cc0549f91
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/certFetchingStatus.dtd
@@ -0,0 +1,9 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!--LOCALIZATION NOTE shown while obtaining certificates from a directory -->
+
+<!ENTITY title.label "Загрузка сертификатов">
+<!ENTITY info.message "Поиск сертификатов адресатов в каталоге. Это может занять несколько минут.">
+<!ENTITY stop.label "Остановка поиска">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSMIMEOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSMIMEOverlay.dtd
new file mode 100644
index 0000000000..020a713182
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSMIMEOverlay.dtd
@@ -0,0 +1,16 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!--LOCALIZATION NOTE msgCompSMIMEOverlay.dtd UI for s/mime hooks in message composition -->
+
+<!-- not yet used
+<!ENTITY menu_securityEncryptOptional.label "Allow Encryption">
+<!ENTITY menu_securityEncryptOptional.accesskey "w">
+-->
+
+<!ENTITY menu_techPGP.label "OpenPGP">
+<!ENTITY menu_techPGP.accesskey "O">
+<!ENTITY menu_techSMIME.label "S/MIME">
+<!ENTITY menu_techSMIME.accesskey "S">
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSecurityInfo.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSecurityInfo.dtd
new file mode 100644
index 0000000000..c32bd80aa7
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSecurityInfo.dtd
@@ -0,0 +1,18 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!--LOCALIZATION NOTE msgCompSecurityInfo.dtd UI for viewing security status when composing a message -->
+
+<!ENTITY title.label "Защита сообщения">
+<!ENTITY subject.plaintextWarning "Обратите внимание: строка темы сообщения никогда не шифруется.">
+<!ENTITY status.heading "Содержимое вашего сообщения будет отправлено как:">
+<!ENTITY status.signed "С цифровой подписью:">
+<!ENTITY status.encrypted "Зашифрованное:">
+<!ENTITY status.certificates "Сертификаты:">
+<!ENTITY view.label "Просмотреть">
+<!ENTITY view.accesskey "П">
+<!ENTITY tree.recipient "Адресат">
+<!ENTITY tree.status "Статус">
+<!ENTITY tree.issuedDate "Выдан">
+<!ENTITY tree.expiresDate "Срок действия">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSecurityInfo.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSecurityInfo.properties
new file mode 100644
index 0000000000..90921a14c0
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgCompSecurityInfo.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+StatusNotFound=Не найден
+StatusValid=Действительный
+StatusExpired=Просроченный
+StatusUntrusted=Ненадёжный
+StatusRevoked=Отозван
+StatusInvalid=Недействительный
+StatusYes=Да
+StatusNo=Нет
+StatusNotPossible=Невозможен
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgReadSMIMEOverlay.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgReadSMIMEOverlay.properties
new file mode 100644
index 0000000000..028369f248
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgReadSMIMEOverlay.properties
@@ -0,0 +1,11 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+ImapOnDemand=Отображаемое сообщение содержит цифровую подпись, однако были загружены не все вложения. Следовательно, эта подпись не может быть проверена. Нажмите «OK», чтобы завершить загрузку сообщения и проверить действительность цифровой подписи.
+#
+#NOTE To translater, anything between %..% and <..> should not be translated.
+# the former will be replaced by java script, and the latter is HTML formatting.
+#
+CantDecryptTitle=%brand% не может расшифровать это сообщение
+CantDecryptBody=Отправитель зашифровал это сообщение, используя один из ваших цифровых сертификатов, тем не менее %brand% не может найти этот сертификат и соответствующий ему закрытый ключ. <br>Возможные пути решения проблемы: <br><ul><li>Если у вас имеется смарт-карта, пожалуйста, вставьте её сейчас. <li>Если вы используете новый компьютер или используете новый профиль %brand%, вам нужно восстановить ваш сертификат и закрытый ключ из резервной копии. Файлы с резервными копиями сертификатов обычно имеют расширение .p12.</ul>
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgReadSecurityInfo.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgReadSecurityInfo.dtd
new file mode 100644
index 0000000000..b77b275343
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgReadSecurityInfo.dtd
@@ -0,0 +1,17 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!--LOCALIZATION NOTE msgReadSecurityInfo.dtd UI for viewing security status when reading a received message -->
+
+<!ENTITY status.label "Защита сообщения">
+<!ENTITY signatureCert.label "Просмотр сертификата ключа подписи">
+<!ENTITY encryptionCert.label "Просмотр сертификата ключа шифрования">
+
+<!ENTITY signer.name "Подписано:">
+<!ENTITY recipient.name "Зашифровано для:">
+<!ENTITY email.address "Адрес электронной почты:">
+<!ENTITY issuer.name "Сертификат выдан:">
+
+<!-- LOCALIZATION NOTE(SMIME.label): This a name for a technical standard. You should not translate it, but if applicable, you may write it using localized characters. -->
+<!ENTITY SMIME.label "S/MIME">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgSecurityInfo.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgSecurityInfo.properties
new file mode 100644
index 0000000000..59d00cc3a9
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger-smime/msgSecurityInfo.properties
@@ -0,0 +1,36 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+## Signature Information strings
+SINoneLabel=Сообщение не содержит цифровую подпись
+SINone=Это сообщение не содержит цифровую подпись отправителя. Её отсутствие означает, что сообщение могло быть отправлено кем-нибудь ещё, притворяющимся, что у него есть этот адрес электронной почты. Также возможно, что сообщение было изменено во время передачи по сети. Как бы то ни было, скорее всего, этого не произошло.
+SIValidLabel=Сообщение подписано
+SIValid=Это сообщение содержит действительную цифровую подпись. Оно не было изменено после отправки.
+SIInvalidLabel=Цифровая подпись недействительна
+SIInvalidHeader=Это сообщение содержит цифровую подпись, но она недействительна.
+SIContentAltered=Подпись не соответствует содержимому сообщения. Похоже, что оно было изменено после того, как отправитель подписал его. Вам не следует считать это сообщение действительным, пока вы не удостоверитесь у отправителя, что его содержание не было изменено.
+SIExpired=Срок действия сертификата, использованного для подписи сообщения, истёк. Убедитесь, что часы на вашем компьютере установлены правильно.
+SIRevoked=Сертификат, используемый для подписи сообщения, был отозван. Вам не следует считать это сообщение действительным, пока вы не удостоверитесь у отправителя, что его содержание не было изменено.
+SINotYetValid=Сертификат, использованный для подписи сообщения, видимо, ещё не действителен. Убедитесь, что часы на вашем компьютере установлены правильно.
+SIUnknownCA=Сертификат, используемый для подписи сообщения, был выдан неизвестным центром сертификации.
+SIUntrustedCA=Сертификат, используемый для подписи сообщения, был выдан центром сертификации, которому вы не доверяете при выдаче сертификатов данного типа.
+SIExpiredCA=Сертификат, используемый для подписи сообщения, был выдан центром сертификации, у которого срок действия собственного сертификата уже истёк. Убедитесь, что часы на вашем компьютере установлены правильно.
+SIRevokedCA=Сертификат, используемый для подписи сообщения, был выдан центром сертификации, чей собственный сертификат был отозван. Вам не следует считать это сообщение действительным, пока вы не удостоверитесь у отправителя, что его содержание не было изменено.
+SINotYetValidCA=Сертификат, используемый для подписи сообщения, был выдан центром сертификации, чей собственный сертификат ещё не действителен. Убедитесь, что часы на вашем компьютере установлены правильно.
+SIInvalidCipher=Сообщение было подписано с использованием шифрования, стойкость которой не поддерживается версией вашего программного обеспечения.
+SIClueless=Возникли неизвестные проблемы с этой цифровой подписью. Вам не следует считать это сообщение действительным, пока вы не удостоверитесь у отправителя, что его содержание не было изменено.
+SIPartiallyValidLabel=Сообщение содержит цифровую подпись
+SIPartiallyValidHeader=Хотя цифровая подпись действительна, неизвестно, являются ли отправитель и автор подписи одним и тем же лицом.
+SIHeaderMismatch=Адрес электронной почты сертификата подписи отличается от адреса электронной почты отправителя. Чтобы узнать о том, кто подписал это сообщение, просмотрите сертификат подписи.
+SICertWithoutAddress=Использованный сертификат ключа подписи не содержит адреса электронной почты. Чтобы узнать, кто подписал сообщение, просмотрите подробную информацию о сертификате.
+
+## Encryption Information strings
+EINoneLabel2=Сообщение не зашифровано
+EINone=Сообщение не было зашифровано перед отправкой. Информация, отправленная через Интернет без шифрования, может быть прочитана посторонними людьми во время передачи.
+EIValidLabel=Сообщение зашифровано
+EIValid=Это сообщение перед отправкой было зашифровано. Шифрование делает сложным, но не невозможным просмотр информации другими людьми во время её доставки по сети.
+EIInvalidLabel=Сообщение не может быть расшифровано
+EIInvalidHeader=Это сообщение перед отправкой было зашифровано, но оно не может быть расшифровано.
+EIContentAltered=Содержание этого сообщения, видимо, было изменено во время передачи.
+EIClueless=Возникли неизвестные проблемы с этим зашифрованным сообщением.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/AccountManager.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/AccountManager.dtd
new file mode 100644
index 0000000000..c0d14a6c9f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/AccountManager.dtd
@@ -0,0 +1,25 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- extracted from AccountManager.xhtml -->
+
+<!ENTITY accountManagerTitle.label "Параметры учётной записи">
+<!ENTITY accountManagerCloseButton.label "Закрыть">
+
+<!ENTITY accountActionsButton.label "Действия для учётной записи">
+<!ENTITY accountActionsButton.accesskey "в">
+<!ENTITY addMailAccountButton.label "Добавить учётную запись почты…">
+<!ENTITY addMailAccountButton.accesskey "и">
+<!ENTITY addIMAccountButton.label "Добавить учётную запись чата…">
+<!ENTITY addIMAccountButton.accesskey "а">
+<!ENTITY addFeedAccountButton.label "Добавить учётную запись лент новостей…">
+<!ENTITY addFeedAccountButton.accesskey "о">
+<!ENTITY setDefaultButton.label "Установить по умолчанию">
+<!ENTITY setDefaultButton.accesskey "п">
+<!ENTITY removeButton.label "Удалить учётную запись">
+<!ENTITY removeButton.accesskey "д">
+
+<!ENTITY addonsButton.label "Расширения и темы">
+
+<!-- AccountManager.xhtml -->
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/AccountWizard.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/AccountWizard.dtd
new file mode 100644
index 0000000000..7f7f13b961
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/AccountWizard.dtd
@@ -0,0 +1,55 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Entities for AccountWizard -->
+
+<!ENTITY windowTitle.label "Мастер учётных записей">
+<!ENTITY accountWizard.size "width: 50em; height: 40em;">
+
+<!-- Entities for Account Type page -->
+
+<!-- Entities for Identity page -->
+
+<!ENTITY identityTitle.label "Персональные данные">
+<!ENTITY identityDesc.label "Для каждой учётной записи имеются персональные данные, которые смогут увидеть читающие ваши письма адресаты.">
+
+<!-- LOCALIZATION NOTE (fullnameDesc.label) : do not translate two of "&quot;" in below line -->
+<!ENTITY fullnameDesc.label "Введите имя, которое будет появляться в поле «От» при отправке сообщений">
+<!-- LOCALIZATION NOTE (fullnameExample.label) : use following directions for below line
+ 1, do not translate two of "&quot;"
+ 2, Use localized full name instead of "John Smith"
+-->
+<!ENTITY fullnameExample.label "(например, «Иван Иванов»).">
+<!ENTITY fullnameLabel.label "Выводимое имя:">
+<!ENTITY fullnameLabel.accesskey "ы">
+
+<!ENTITY emailLabel.label "Адрес электронной почты:">
+<!ENTITY emailLabel.accesskey "д">
+
+<!-- Entities for Incoming Server page -->
+
+<!ENTITY incomingTitle.label "Информация о сервере входящей почты">
+<!ENTITY incomingUsername.label "Имя пользователя:">
+<!-- LOCALIZATION NOTE (newsServerNameDesc.label) : Do not translate "NNTP" or the "&quot;" entities in below line -->
+<!ENTITY newsServerNameDesc.label "Введите имя используемого вами сервера новостей (NNTP) (например, «news.test.ru»).">
+<!ENTITY newsServerLabel.label "Сервер групп новостей:">
+<!ENTITY newsServerLabel.accesskey "е">
+
+<!-- Entities for Outgoing Server page -->
+
+<!-- Entities for Account name page -->
+
+<!ENTITY accnameTitle.label "Имя учётной записи">
+<!-- LOCALIZATION NOTE (accnameDesc.label) : do not translate any "&quot;" in below line -->
+<!ENTITY accnameDesc.label "Введите имя этой учётной записи (например, «Рабочая», «Личная» или «Группы новостей»).">
+<!ENTITY accnameLabel.label "Имя учётной записи:">
+<!ENTITY accnameLabel.accesskey "у">
+
+<!-- Entities for Done (Congratulations) page -->
+
+<!ENTITY completionTitle.label "Поздравляем!">
+<!ENTITY completionText.label "Пожалуйста, проверьте, что приведённая ниже информация верна.">
+<!ENTITY newsServerNamePrefix.label "Имя сервера новостей (NNTP):">
+<!ENTITY clickFinish.label "Нажмите «Готово», чтобы сохранить текущие параметры и завершить работу «Мастера учётных записей».">
+<!ENTITY clickFinish.labelMac "Нажмите «Готово», чтобы сохранить текущие параметры и завершить работу «Мастера учётных записей».">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/CustomHeaders.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/CustomHeaders.dtd
new file mode 100644
index 0000000000..62893b31ab
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/CustomHeaders.dtd
@@ -0,0 +1,11 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY window.title "Поля заголовка">
+<!ENTITY addButton.label "Добавить">
+<!ENTITY addButton.accesskey "Д">
+<!ENTITY removeButton.label "Удалить">
+<!ENTITY removeButton.accesskey "У">
+<!ENTITY newMsgHeader.label "Новое поле заголовка:">
+<!ENTITY newMsgHeader.accesskey "Н">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/FilterEditor.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/FilterEditor.dtd
new file mode 100644
index 0000000000..b300198493
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/FilterEditor.dtd
@@ -0,0 +1,66 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY window.title "Правила фильтрации">
+<!ENTITY filterName.label "Имя фильтра:">
+<!ENTITY filterName.accesskey "м">
+
+<!ENTITY junk.label "Спам">
+<!ENTITY notJunk.label "Не спам">
+
+<!ENTITY lowestPriorityCmd.label "самую низкую">
+<!ENTITY lowPriorityCmd.label "низкую">
+<!ENTITY normalPriorityCmd.label "обычную">
+<!ENTITY highPriorityCmd.label "высокую">
+<!ENTITY highestPriorityCmd.label "самую высокую">
+
+<!ENTITY contextDesc.label "Применять фильтр при:">
+<!ENTITY contextIncomingMail.label "Получении новой почты:">
+<!ENTITY contextIncomingMail.accesskey "о">
+<!ENTITY contextManual.label "Запуске вручную">
+<!ENTITY contextManual.accesskey "а">
+<!ENTITY contextBeforeCls.label "Фильтровать перед анализом на спам">
+<!ENTITY contextAfterCls.label "Фильтровать после анализа на спам">
+<!ENTITY contextOutgoing.label "После отправки почты">
+<!ENTITY contextOutgoing.accesskey "е">
+<!ENTITY contextArchive.label "Архивации">
+<!ENTITY contextArchive.accesskey "х">
+<!ENTITY contextPeriodic.accesskey "е">
+
+<!ENTITY filterActionDesc.label "Производить следующие действия:">
+<!ENTITY filterActionDesc.accesskey "и">
+
+<!ENTITY filterActionOrderWarning.label "Примечание: Действия фильтра будут запускаться в другом порядке.">
+<!ENTITY filterActionOrder.label "Посмотреть порядок выполнения">
+
+<!-- New Style Filter Rule Actions -->
+<!ENTITY moveMessage.label "Переместить сообщение в">
+<!ENTITY copyMessage.label "Копировать сообщение в">
+<!ENTITY forwardTo.label "Переслать сообщение на">
+<!ENTITY replyWithTemplate.label "Ответить по шаблону">
+<!ENTITY markMessageRead.label "Отметить как прочитанное">
+<!ENTITY markMessageUnread.label "Отметить как непрочитанное">
+<!ENTITY markMessageStarred.label "Отметить звёздочкой">
+<!ENTITY setPriority.label "Изменить важность на">
+<!ENTITY addTag.label "Присвоить сообщению метку">
+<!ENTITY setJunkScore.label "Установить метку спама">
+<!ENTITY deleteMessage.label "Удалить сообщение">
+<!ENTITY deleteFromPOP.label "Удалить с сервера POP">
+<!ENTITY fetchFromPOP.label "Загрузить с сервера POP">
+<!ENTITY ignoreThread.label "Пропустить обсуждение">
+<!ENTITY ignoreSubthread.label "Пропустить ветку обсуждения">
+<!ENTITY watchThread.label "Отслеживать обсуждение">
+<!ENTITY stopExecution.label "Остановить выполнение фильтра">
+
+<!ENTITY addAction.tooltip "Добавить новое действие">
+<!ENTITY removeAction.tooltip "Удалить это действие">
+
+<!-- LOCALIZATION NOTE
+ The values below are used to control the widths of the filter action widgets.
+ Change the values only when the localized strings in the popup menus
+ are truncated in the widgets.
+ -->
+<!-- Flex Attribute: https://developer.mozilla.org/docs/XUL/Attribute/flex -->
+<!ENTITY filterActionTypeFlexValue "1">
+<!ENTITY filterActionTargetFlexValue "4">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/FilterListDialog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/FilterListDialog.dtd
new file mode 100644
index 0000000000..2240a71145
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/FilterListDialog.dtd
@@ -0,0 +1,40 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY window.title "Фильтры сообщений">
+<!ENTITY nameColumn.label "Имя фильтра">
+<!ENTITY activeColumn.label "Включён">
+<!ENTITY newButton.label "Создать…">
+<!ENTITY newButton.accesskey "з">
+<!ENTITY newButton.popupCopy.label "Копировать…">
+<!ENTITY newButton.popupCopy.accesskey "в">
+<!ENTITY editButton.label "Изменить…">
+<!ENTITY editButton.accesskey "м">
+<!ENTITY deleteButton.label "Удалить">
+<!ENTITY deleteButton.accesskey "д">
+<!ENTITY reorderTopButton "В начало">
+<!ENTITY reorderTopButton.accessKey "ч">
+<!ENTITY reorderTopButton.toolTip "Переместить фильтр, чтобы он выполнялся перед всеми остальными">
+<!ENTITY reorderUpButton.label "Выше">
+<!ENTITY reorderUpButton.accesskey "ш">
+<!ENTITY reorderDownButton.label "Ниже">
+<!ENTITY reorderDownButton.accesskey "ж">
+<!ENTITY reorderBottomButton "В конец">
+<!ENTITY reorderBottomButton.accessKey "е">
+<!ENTITY reorderBottomButton.toolTip "Переместить фильтр, чтобы он выполнялся после всех остальных">
+<!ENTITY filterHeader.label "Включённые фильтры запускаются автоматически в указанном ниже порядке.">
+<!ENTITY filtersForPrefix.label "Фильтры для:">
+<!ENTITY filtersForPrefix.accesskey "и">
+<!ENTITY viewLogButton.label "Журнал фильтров">
+<!ENTITY viewLogButton.accesskey "а">
+<!ENTITY runFilters.label "Запустить">
+<!ENTITY runFilters.accesskey "п">
+<!ENTITY stopFilters.label "Остановить">
+<!ENTITY stopFilters.accesskey "о">
+<!ENTITY folderPickerPrefix.label "Запустить выбранные фильтры в папке:">
+<!ENTITY folderPickerPrefix.accesskey "ы">
+<!ENTITY helpButton.label "Справка">
+<!ENTITY helpButton.accesskey "к">
+<!ENTITY closeCmd.key "W">
+<!ENTITY searchBox.emptyText "Поиск фильтров по имени…">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/SearchDialog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/SearchDialog.dtd
new file mode 100644
index 0000000000..2a068f2db9
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/SearchDialog.dtd
@@ -0,0 +1,38 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- for SearchDialog.xul -->
+<!ENTITY searchHeading.label "Искать в папке:">
+<!ENTITY searchHeading.accesskey "с">
+<!ENTITY searchSubfolders.label "Включая вложенные папки">
+<!ENTITY searchSubfolders.accesskey "ю">
+<!ENTITY searchOnServer.label "Запустить поиск на сервере">
+<!ENTITY searchOnServer.accesskey "п">
+<!ENTITY resetButton.label "Очистить">
+<!ENTITY resetButton.accesskey "и">
+<!ENTITY openButton.label "Открыть">
+<!ENTITY openButton.accesskey "т">
+<!ENTITY deleteButton.label "Удалить">
+<!ENTITY deleteButton.accesskey "д">
+<!ENTITY searchDialogTitle.label "Поиск сообщений…">
+<!ENTITY results.label "Результаты">
+<!ENTITY moveButton.label "Переместить в">
+<!ENTITY moveButton.accesskey "м">
+<!ENTITY closeCmd.key "W">
+<!ENTITY openInFolder.label "Открыть в папке">
+<!ENTITY openInFolder.accesskey "ы">
+<!ENTITY saveAsVFButton.label "Сохранить как виртуальную папку">
+<!ENTITY saveAsVFButton.accesskey "х">
+
+<!-- for ABSearchDialog.xul -->
+<!ENTITY abSearchHeading.label "Место поиска:">
+<!ENTITY abSearchHeading.accesskey "с">
+<!ENTITY propertiesButton.label "Свойства">
+<!ENTITY propertiesButton.accesskey "о">
+<!ENTITY composeButton.label "Создать">
+<!ENTITY composeButton.accesskey "з">
+<!ENTITY deleteCardButton.label "Удалить">
+<!ENTITY deleteCardButton.accesskey "а">
+<!ENTITY abSearchDialogTitle.label "Расширенный режим поиска в адресной книге">
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutDownloads.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutDownloads.dtd
new file mode 100644
index 0000000000..5b383f4a1f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutDownloads.dtd
@@ -0,0 +1,23 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY aboutDownloads.title "Сохранённые файлы">
+<!-- LOCALIZATION NOTE (cmd.show.label, cmd.show.accesskey, cmd.showMac.label,
+ cmd.showMac.accesskey):
+ The show and showMac commands are never shown together, thus they can share
+ the same access key (though the two access keys can also be different).
+ -->
+<!ENTITY cmd.show.label "Открыть папку с файлом">
+<!ENTITY cmd.show.accesskey "к">
+<!ENTITY cmd.showMac.label "Показать в Finder">
+<!ENTITY cmd.showMac.accesskey "к">
+<!ENTITY cmd.open.label "Открыть">
+<!ENTITY cmd.open.accesskey "ы">
+<!ENTITY cmd.removeFromHistory.label "Удалить из истории">
+<!ENTITY cmd.removeFromHistory.accesskey "а">
+<!ENTITY cmd.clearList.label "Очистить список">
+<!ENTITY cmd.clearList.accesskey "и">
+<!ENTITY cmd.clearList.tooltip "Удалить все записи из списка сохранённых файлов, за исключением текущих загрузок.">
+<!ENTITY cmd.searchDownloads.label "Поиск…">
+<!ENTITY cmd.searchDownloads.key "F">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutRights.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutRights.properties
new file mode 100644
index 0000000000..bedeede06c
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutRights.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+buttonLabel=Узнайте о своих правах…
+buttonAccessKey=з
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutSupportMail.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutSupportMail.properties
new file mode 100644
index 0000000000..87ace1e88d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/aboutSupportMail.properties
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (warningLabel): Label for warning text that shows up when private data is included
+warningLabel=ПРЕДУПРЕЖДЕНИЕ:
+# LOCALIZATION NOTE (warningText): Warning text that shows up when private data is included
+warningText=Это содержит секретную информацию, которую не следует пересылать или публиковать без получения на то разрешения.
+
+# LOCALIZATION NOTE (fsType.local): Indicator that the displayed directory is on a local drive
+fsType.local = (Локальный диск)
+# LOCALIZATION NOTE (fsType.network): Indicator that the displayed directory is on the network
+fsType.network = (Сетевой диск)
+# LOCALIZATION NOTE (fsType.unknown): Indicator that we couldn't figure out whether the directory is local or on a network
+fsType.unknown = (Неизвестное место)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/accountCreationModel.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/accountCreationModel.properties
new file mode 100644
index 0000000000..4e61826b8b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/accountCreationModel.properties
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# This file has the strings, mostly error strings, for the logic / JS backend / model
+# files: fetchConfig.js, readFromXML.js, guessConfig.js, verifyConfig.js, createInBackend.js
+
+
+# readFromXML.js
+no_emailProvider.error=XML файл конфигурации не содержит конфигурации учётной записи электронной почты.
+outgoing_not_smtp.error=Сервер исходящей почты должен быть SMTP-сервером
+
+# verifyConfig.js
+cannot_login.error=Не могу войти на сервер. Возможно, имеется ошибка в конфигурации, имени пользователя или пароле.
+
+
+# guessConfig.js
+cannot_find_server.error=Не могу найти сервер
+
+# exchangeAutoDiscover.js
+no_autodiscover.error=XML-файл автообнаружения Exchange является некорректным.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/accountCreationUtil.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/accountCreationUtil.properties
new file mode 100644
index 0000000000..1d70e29e9d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/accountCreationUtil.properties
@@ -0,0 +1,34 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# This file has the strings, mostly error strings, for the logic / JS backend / model
+# files: sanitizeDatatypes.js, fetchhttp.js, util.js
+
+
+# sanitizeDatatypes.js
+hostname_syntax.error=Имя сервера пусто или содержит запрещённые символы. Разрешено использовать только буквы, цифры, символы «-» и «.».
+alphanumdash.error=Строка содержит неподдерживаемые символы. Разрешено использовать только буквы, цифры, символы «-» и «_».
+allowed_value.error=Введённое значение не входит в список разрешённых
+url_scheme.error=Схема URL не разрешена
+url_parsing.error=Ссылка не распознана
+string_empty.error=Вы должны ввести значение для этой строки
+boolean.error=Не логическое
+no_number.error=Не число
+number_too_large.error=Число слишком велико
+number_too_small.error=Число слишком мало
+
+
+# fetchhttp.js
+cannot_contact_server.error=Не могу связаться с сервером
+bad_response_content.error=Содержимое ответа некорректно
+
+# verifyConfig.js
+# LOCALIZATION NOTE(auth_failed_generic.error): The login failed (server refused to allow the user in), but the server did not give any meaningful error message. This is a common case when the user entered a wrong password or is otherwise not allowed.
+auth_failed_generic.error=Ошибка входа на сервер. Имя пользователя/адрес электронной почты и пароль верны?
+# LOCALIZATION NOTE(auth_failed_with_reason.error): The login failed (server refused to allow the user in), and the server gave an error message which we can present to the user. This is a common case when the user entered a wrong password or is otherwise not allowed. %1$S will be the IMAP/POP3/SMTP server hostname. %2$S will be the error message from the server (usually in the local language where the server is or in English).
+auth_failed_with_reason.error=Ошибка входа на сервер. Сервер %1$S сообщил: %2$S
+# LOCALIZATION NOTE(verification_failed.error): We had some other error, not during authentication with the server, but at earlier points, e.g. locally or we entirely failed to contact the given server, and we unfortunately have no detailed error message.
+verification_failed.error=Попытка входа не удалась по неизвестной причине.
+# LOCALIZATION NOTE(verification_failed_with_exception.error): We had some other error, not during authentication with the server, but at earlier points, e.g. locally or we entirely failed to contact the given server, and we have an error message. %1$S will be an error message, possibly in English
+verification_failed_with_exception.error=Попытка входа не удалась по следующей причине: %1$S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/activity.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/activity.dtd
new file mode 100644
index 0000000000..8fa8753ed2
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/activity.dtd
@@ -0,0 +1,19 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- LOCALIZATION NOTE (window.width2, window.height): These values should be
+close to the golden ratio (1.618:1) while making sure it's wide enough for long
+file names and tall enough to hint that there are more activities in the list -->
+<!ENTITY window.width2 "566">
+<!ENTITY window.height "350">
+
+<!ENTITY activity.title "Диспетчер работы">
+
+<!ENTITY cmd.close.commandkey "w">
+<!ENTITY cmd.close2.commandkey "j">
+<!ENTITY cmd.close2Unix.commandkey "y">
+<!ENTITY cmd.clearList.label "Очистить список">
+<!ENTITY cmd.clearList.tooltip "Удаляет из списка завершённые, отменённые и неудавшиеся действия">
+<!ENTITY cmd.clearList.accesskey "ч">
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/activity.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/activity.properties
new file mode 100644
index 0000000000..d43caa8108
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/activity.properties
@@ -0,0 +1,99 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Status Text
+paused2=Приостановлено
+processing=Обрабатывается
+notStarted=Не начато
+failed=Не удалось
+waitingForInput=Ожидает ввода
+waitingForRetry=Ожидает повтора попытки
+completed=Завершёно
+canceled=Отменено
+
+# LOCALIZATION NOTE (sendingMessages): this is used as a title for grouping processes in the activity manager when sending email.
+sendingMessages=Отправка сообщений
+sendingMessage=Отправка сообщения
+# LOCALIZATION NOTE (sendingMessageWithSubject): %S will be replaced by the subject of the message being sent.
+sendingMessageWithSubject=Отправка сообщения: %S
+copyMessage=Копирование сообщения в папку для отправленных
+sentMessage=Отправлено сообщение
+# LOCALIZATION NOTE (sentMessageWithSubject): %S will be replaced by the subject of the message being sent.
+sentMessageWithSubject=Отправлено сообщение: %S
+failedToSendMessage=Не удалось отправить сообщение
+failedToCopyMessage=Не удалось скопировать сообщение
+# LOCALIZATION NOTE (failedToSendMessageWithSubject): %S will be replaced by the subject of the message being sent.
+failedToSendMessageWithSubject=Не удалось отправить сообщение: %S
+# LOCALIZATION NOTE (failedToCopyMessageWithSubject): %S will be replaced by the subject of the message being sent.
+failedToCopyMessageWithSubject=Не удалось скопировать сообщение: %S
+
+# LOCALIZATION NOTE (autosyncProcessProgress2): Do not translate the words "%1$S", "%2$S", "%3$S" and "%4$S" below.
+# Place the word %1$S in your translation where the number of the message being downloaded should appear.
+# Place the word %2$S in your translation where the total number of messages to be downloaded should appear.
+# Place the word %3$S in your translation where the name of the folder being processed should appear.
+# Place the word %4$S in your translation where the name of account being processed should appear.
+# EXAMPLE: Ted's account: Downloading message 334 of 1008 in Inbox…
+autosyncProcessProgress2=%4$S: Загрузка сообщения %1$S из %2$S в папке %3$S…
+# LOCALIZATION NOTE (autosyncProcessDisplayText): %S will be replaced by the folder name
+autosyncProcessDisplayText=Идёт обновление папки %S
+# LOCALIZATION NOTE (autosyncEventDisplayText): %S will be replaced by the account name
+autosyncEventDisplayText=Папка %S обновлена
+# LOCALIZATION NOTE (autosyncEventStatusText): %S will be replaced by total number of downloaded messages
+autosyncEventStatusText=Общее количество загруженных сообщений: %S
+autosyncEventStatusTextNoMsgs=Ни одного сообщения не загружено
+# LOCALIZATION NOTE (autosyncContextDisplayText): %S will be replaced by the account name
+autosyncContextDisplayText=Идёт синхронизация %S
+
+# LOCALIZATION NOTE (pop3EventStartDisplayText2): Do not translate the words "%1$S" and "%2$S" below.
+# Place the word %1$S in your translation where the name of the account being checked for new messages should appear.
+# Place the word %2$S in your translation where the name of the folder being checked for new messages should appear.
+# EXAMPLE: George's account: Checking Inbox for new messages…
+pop3EventStartDisplayText2=%1$S: Проверка %2$S на наличие новых сообщений…
+# LOCALIZATION NOTE (pop3EventDisplayText): %S will be replaced by the account name
+pop3EventDisplayText=статус %S обновлён
+# LOCALIZATION NOTE (pop3EventStatusText): #1 will be replaced by total number of downloaded messages
+pop3EventStatusText=загружено #1 сообщение;загружено #1 сообщения;загружено #1 сообщений
+pop3EventStatusTextNoMsgs=Нет сообщений для загрузки
+
+# Message actions that show up in activity manager
+# LOCALIZATION NOTE (deletedMessages2): #1 number of messages, #2 folder name
+deletedMessages2=Удалено #1 сообщение из #2;Удалено #1 сообщения из #2;Удалено #1 сообщений из #2
+# LOCALIZATION NOTE (movedMessages): #1 number of messages, #2 and #3: folder names
+movedMessages=Перемещено #1 сообщение из #2 в #3;Перемещено #1 сообщения из #2 в #3;Перемещено #1 сообщений из #2 в #3
+# LOCALIZATION NOTE (copiedMessages): #1 number of messages, #2 and #3: folder names
+copiedMessages=Скопировано #1 сообщение из #2 в #3;Скопировано #1 сообщения из #2 в #3;Скопировано #1 сообщений из #2 в #3
+# LOCALIZATION NOTE (fromServerToServer): #1 source server, #2 destination server
+fromServerToServer=с #1 на #2
+# LOCALIZATION NOTE (deletedFolder): #1 folder name
+deletedFolder=Удалена папка #1
+emptiedTrash=«Удалённые» очищены
+# LOCALIZATION NOTE (movedFolder): #1 and #2 are folder names
+movedFolder=Папка #1 перемещена в папку #2
+# LOCALIZATION NOTE (movedFolderToTrash): #1 is the folder name
+movedFolderToTrash=Папка #1 перемещена в «Удалённые»
+# LOCALIZATION NOTE (copiedFolder): #1 and #2 are folder names
+copiedFolder=Папка #1 скопирована в папку #2
+# LOCALIZATION NOTE (renamedFolder): #1 and #2 are folder names
+renamedFolder=Папка #1 переименована в #2
+indexing=Идёт индексация сообщений
+# LOCALIZATION NOTE (indexingFolder): #1 is a folder name
+indexingFolder=Идёт индексация сообщений в «#1»
+indexingStatusVague=Идёт определение сообщений для индексации
+# LOCALIZATION NOTE (indexingFolderStatusVague): #1 is a folder name
+indexingFolderStatusVague=Идёт определение сообщений для индексации в #1
+# LOCALIZATION NOTE (indexingStatusExact):
+# #1 is the number of the message currently being indexed
+# #2 is the total number of messages being indexed
+# #3 is the percentage of indexing that is complete
+indexingStatusExact=Идёт индексация #1 из #2 сообщения (#3% завершено);Идёт индексация #1 из #2 сообщений (#3% завершено);Идёт индексация #1 из #2 сообщений (#3% завершено)
+# LOCALIZATION NOTE (indexingFolderStatusExact):
+# #1 is the number of the message currently being indexed
+# #2 is the total number of messages being indexed
+# #3 is the percentage of indexing that is complete
+# #4 is a folder name
+indexingFolderStatusExact=Идёт индексация #1 из #2 сообщения в #4 (#3% завершено);Идёт индексация #1 из #2 сообщений в #4 (#3% завершено);Идёт индексация #1 из #2 сообщений в #4 (#3% завершено)
+# LOCALIZATION NOTE (indexedFolder): #1 number of messages; #2 folder name
+indexedFolder=Проиндексировано #1 сообщение в #2;Проиндексировано #1 сообщения в #2;Проиндексировано #1 сообщений в #2
+# LOCALIZATION NOTE (indexedFolderStatus): #1 number of seconds spent indexing
+indexedFolderStatus=прошла #1 секунда;прошло #1 секунды;прошло #1 секунд
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addbuddy.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addbuddy.dtd
new file mode 100644
index 0000000000..25ee46abf0
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addbuddy.dtd
@@ -0,0 +1,7 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY addBuddyWindow.title "Добавление собеседника">
+<!ENTITY name.label "Имя пользователя">
+<!ENTITY account.label "Учётная запись">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abAddressBookNameDialog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abAddressBookNameDialog.dtd
new file mode 100644
index 0000000000..cc22d0a5aa
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abAddressBookNameDialog.dtd
@@ -0,0 +1,7 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Labels -->
+<!ENTITY name.label "Имя адресной книги:">
+<!ENTITY name.accesskey "м">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abContactsPanel.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abContactsPanel.dtd
new file mode 100644
index 0000000000..b291861b5e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abContactsPanel.dtd
@@ -0,0 +1,49 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY propertiesMenu.label "Свойства">
+<!ENTITY propertiesMenu.accesskey "в">
+<!ENTITY propertiesCmd.key "i">
+<!ENTITY abPropertiesMenu.label "Свойства адресной книги">
+<!ENTITY abPropertiesMenu.accesskey "в">
+<!ENTITY contactPropertiesMenu.label "Свойства контакта">
+<!ENTITY contactPropertiesMenu.accesskey "в">
+<!ENTITY mailingListPropertiesMenu.label "Свойства списка рассылки">
+<!ENTITY mailingListPropertiesMenu.accesskey "в">
+
+<!ENTITY abContextMenuButton.tooltip "Отобразить контекстное меню адресной книги">
+<!ENTITY addressbookPicker.label "Адресная книга:">
+<!ENTITY addressbookPicker.accesskey "е">
+<!ENTITY searchContacts.label "Поиск контактов:">
+<!ENTITY searchContacts.accesskey "к">
+<!ENTITY SearchNameOrEmail.label "Имя или e-mail адрес">
+
+<!ENTITY addtoToFieldMenu.label "Кому">
+<!ENTITY addtoToFieldMenu.accesskey "о">
+<!ENTITY addtoCcFieldMenu.label "Копия">
+<!ENTITY addtoCcFieldMenu.accesskey "я">
+<!ENTITY addtoBccFieldMenu.label "Скрытая копия">
+<!ENTITY addtoBccFieldMenu.accesskey "ы">
+<!ENTITY deleteAddrBookCard.label "Удалить">
+<!ENTITY deleteAddrBookCard.accesskey "л">
+<!ENTITY propertiesContext.label "Свойства">
+<!ENTITY propertiesContext.accesskey "в">
+<!ENTITY abPropertiesContext.label "Свойства">
+<!ENTITY abPropertiesContext.accesskey "в">
+<!ENTITY editContactContext.label "Изменить контакт">
+<!ENTITY editContactContext.accesskey "м">
+<!ENTITY editMailingListContext.label "Изменить список">
+<!ENTITY editMailingListContext.accesskey "м">
+
+<!ENTITY newContactAbContext.label "Новый контакт">
+<!ENTITY newContactAbContext.accesskey "ы">
+<!ENTITY newListAbContext.label "Новый список">
+<!ENTITY newListAbContext.accesskey "и">
+
+<!ENTITY toButton.label "Кому:">
+<!ENTITY toButton.accesskey "о">
+<!ENTITY ccButton.label "Копия:">
+<!ENTITY ccButton.accesskey "п">
+<!ENTITY bccButton.label "Скрытая копия:">
+<!ENTITY bccButton.accesskey "ы">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abMailListDialog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abMailListDialog.dtd
new file mode 100644
index 0000000000..3ab1fefe6d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abMailListDialog.dtd
@@ -0,0 +1,22 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Title -->
+<!ENTITY mailListWindowAdd.title "Новый список рассылки">
+
+<!-- Labels and Access Keys -->
+<!ENTITY addToAddressBook.label "Добавить в:">
+<!ENTITY addToAddressBook.accesskey "о">
+<!ENTITY ListName.label "Имя списка:">
+<!ENTITY ListName.accesskey "м">
+<!ENTITY ListNickName.label "Псевдоним списка:">
+<!ENTITY ListNickName.accesskey "е">
+<!ENTITY ListDescription.label "Описание:">
+<!ENTITY ListDescription.accesskey "п">
+<!-- See bug 58485, when we implement drag and drop, add 'or drag addresses' back in -->
+<!ENTITY AddressTitle.label "Введите адреса, чтобы добавить их в список рассылки:">
+<!ENTITY AddressTitle.accesskey "и">
+<!ENTITY UpButton.label "Вверх">
+<!ENTITY DownButton.label "Вниз">
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abMainWindow.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abMainWindow.dtd
new file mode 100644
index 0000000000..96f7e24901
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abMainWindow.dtd
@@ -0,0 +1,17 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY showAsDefault.label "Каталог по умолчанию при открытии">
+<!ENTITY showAsDefault.accesskey "ю">
+
+<!-- Search Bar -->
+<!ENTITY SearchNameOrEmail.label "Имя или e-mail адрес">
+
+<!-- Results Pane -->
+<!ENTITY Addrbook.label "Адресная книга">
+<!ENTITY GeneratedName.label "Имя">
+<!ENTITY PrimaryEmail.label "Электронная почта">
+
+<!-- Card Summary Pane -->
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abResultsPane.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abResultsPane.dtd
new file mode 100644
index 0000000000..92d422357d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/abResultsPane.dtd
@@ -0,0 +1,38 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY Addrbook.label "Адресная книга">
+<!ENTITY Addrbook.accesskey "н">
+<!ENTITY GeneratedName.label "Имя">
+<!ENTITY GeneratedName.accesskey "И">
+<!ENTITY PrimaryEmail.label "Электронная почта">
+<!ENTITY PrimaryEmail.accesskey "Э">
+<!ENTITY Company.label "Организация">
+<!ENTITY Company.accesskey "О">
+<!ENTITY _PhoneticName.label "Произношение">
+<!ENTITY _PhoneticName.accesskey "П">
+<!ENTITY NickName.label "Псевдоним">
+<!ENTITY NickName.accesskey "П">
+<!ENTITY SecondEmail.label "Доп. адрес электронной почты">
+<!ENTITY SecondEmail.accesskey "А">
+<!ENTITY Department.label "Отдел">
+<!ENTITY Department.accesskey "т">
+<!ENTITY JobTitle.label "Должность">
+<!ENTITY JobTitle.accesskey "Д">
+<!ENTITY CellularNumber.label "Мобильный">
+<!ENTITY CellularNumber.accesskey "М">
+<!ENTITY PagerNumber.label "Пейджер">
+<!ENTITY PagerNumber.accesskey "е">
+<!ENTITY FaxNumber.label "Факс">
+<!ENTITY FaxNumber.accesskey "Ф">
+<!ENTITY HomePhone.label "Домашний телефон">
+<!ENTITY HomePhone.accesskey "а">
+<!ENTITY WorkPhone.label "Рабочий телефон">
+<!ENTITY WorkPhone.accesskey "Р">
+<!ENTITY ChatName.label "Имя в чате">
+<!ENTITY ChatName.accesskey "м">
+<!ENTITY sortAscending.label "По возрастанию">
+<!ENTITY sortAscending.accesskey "в">
+<!ENTITY sortDescending.label "По убыванию">
+<!ENTITY sortDescending.accesskey "б">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/addressBook.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/addressBook.properties
new file mode 100644
index 0000000000..8a378e9d9c
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/addressBook.properties
@@ -0,0 +1,179 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The following are used by the Mailing list dialog.
+# LOCALIZATION NOTE (mailingListTitleEdit): %S will be replaced by the Mailing List's display name.
+mailingListTitleEdit=Изменить %S
+emptyListName=Введите имя списка.
+badListNameCharacters=Имя списка не может содержать любые из следующих символов: < > ; , "
+badListNameSpaces=Имя списка не может содержать множественные смежные пробелы.
+lastFirstFormat=%S %S
+firstLastFormat=%S %S
+
+allAddressBooks=Все адресные книги
+
+newContactTitle=Новый контакт
+# %S will be the contact's display name
+newContactTitleWithDisplayName=Новый контакт для %S
+editContactTitle=Изменение контакта
+# %S will be the contact's display name
+editContactTitleWithDisplayName=Изменение контакта для %S
+# don't translate vCard
+editVCardTitle=Изменение визитной карточки
+# %S will be the card's display name, don't translate vCard
+editVCardTitleWithDisplayName=Изменение визитной карточки для %S
+
+## LOCALIZATION NOTE (cardRequiredDataMissingMessage): do not localize \n
+cardRequiredDataMissingMessage=Вы должны заполнить по меньшей мере одно из следующих полей:\n«Электронная почта», «Имя», «Фамилия», «Отображать как», «Организация».
+cardRequiredDataMissingTitle=Отсутствует требуемая информация
+incorrectEmailAddressFormatMessage=Адрес электронной почты должен быть в формате user@host.
+incorrectEmailAddressFormatTitle=Неверный формат адреса электронной почты
+
+viewListTitle=Список рассылки: %S
+mailListNameExistsTitle=Список рассылки уже существует
+mailListNameExistsMessage=Список рассылки с таким именем уже существует. Выберите другое имя.
+
+propertyPrimaryEmail=Электронная почта
+propertyListName=Имя списка
+propertySecondaryEmail=Доп. адрес электронной почты
+propertyNickname=Псевдоним
+propertyDisplayName=Отображаемое имя
+propertyWork=Рабочий
+propertyHome=Домашний
+propertyFax=Факс
+propertyCellular=Мобильный
+propertyPager=Пейджер
+propertyBirthday=День рождения
+propertyCustom1=Прочее 1
+propertyCustom2=Прочее 2
+propertyCustom3=Прочее 3
+propertyCustom4=Прочее 4
+
+propertyGtalk=Google Talk
+propertyAIM=AIM
+propertyYahoo=Yahoo!
+propertySkype=Skype
+propertyQQ=QQ
+propertyMSN=MSN
+propertyICQ=ICQ
+propertyXMPP=Jabber ID
+propertyIRC=Псевдоним на IRC
+
+## LOCALIZATION NOTE (cityAndStateAndZip):
+## %1$S is city, %2$S is state, %3$S is zip
+cityAndStateAndZip=%1$S, %2$S, %3$S
+## LOCALIZATION NOTE (cityAndStateNoZip):
+## %1$S is city, %2$S is state
+cityAndStateNoZip=%1$S, %2$S
+## LOCALIZATION NOTE (cityOrStateAndZip):
+## %1$S is city or state, %2$S is zip
+cityOrStateAndZip=%1$S, %2$S
+
+stateZipSeparator=
+
+prefixTo=Кому
+prefixCc=Копия
+prefixBcc=Скрытая копия
+addressBook=Адресная книга
+
+# Contact photo management
+browsePhoto=Фото контакта
+stateImageSave=Сохранение изображения…
+errorInvalidUri=Ошибка: Некорректное исходное изображение.
+errorNotAvailable=Ошибка: Файл не доступен.
+errorInvalidImage=Ошибка: Поддерживаются только изображения в форматах JPG, PNG и GIF.
+errorSaveOperation=Ошибка: Не удалось сохранить изображение.
+
+# mailnews.js
+ldap_2.servers.pab.description=Личная адресная книга
+ldap_2.servers.history.description=Собранные адреса
+## LOCALIZATION NOTE (ldap_2.servers.osx.description is only used on Mac OS X)
+ldap_2.servers.osx.description=Адресная книга Mac OS X
+
+## LOCALIZATION NOTE (ldap_2.servers.outlook.description is only used on Windows)
+ldap_2.servers.outlook.description=Адресная книга Outlook
+
+# status bar stuff
+## LOCALIZATION NOTE (totalContactStatus):
+## %1$S is address book name, %2$S is contact count
+totalContactStatus=Всего контактов в %1$S: %2$S
+noMatchFound=Совпадений не найдено
+## LOCALIZATION NOTE (matchesFound1):
+## Semicolon-separated list of singular and plural forms.
+## See: https://developer.mozilla.org/docs/Mozilla/Localization/Localization_and_Plurals
+## #1 is the number of matching contacts found
+matchesFound1=Найдено #1 совпадение;Найдено #1 совпадения;Найдено #1 совпадений
+
+## LOCALIZATION NOTE (contactsCopied): Semi-colon list of plural forms
+## %1$S is the number of contacts that were copied. This should be used multiple
+## times wherever you need it. Do not replace by %S.
+contactsCopied=Скопирован %1$S контакт;Скопировано %1$S контакта;Скопировано %1$S контактов
+
+## LOCALIZATION NOTE (contactsMoved): Semi-colon list of plural forms
+## %1$S is the number of contacts that were moved. This should be used multiple
+## times wherever you need it. Do not replace by %S.
+contactsMoved=Перемещён %1$S контакт;Перемещено %1$S контакта;Перемещено %1$S контактов
+
+# LDAP directory stuff
+invalidName=Введите корректное имя.
+invalidHostname=Введите корректное сетевое имя сервера.
+invalidPortNumber=Введите корректный номер порта.
+invalidResults=Введите корректное кол-во результатов.
+abReplicationOfflineWarning=Для выполнения репликации с использованием LDAP вы должны подключиться к сети.
+abReplicationSaveSettings=Перед загрузкой каталога настройки должны быть сохранены.
+
+# For importing / exporting
+## LOCALIZATION NOTE (ExportAddressBookNameTitle): %S is the name of exported addressbook
+ExportAddressBookNameTitle=Экспорт адресной книги - %S
+LDIFFiles=LDIF
+CSVFiles=С запятой в качестве разделителя
+CSVFilesSysCharset=С запятой в качестве разделителя (системная кодировка)
+CSVFilesUTF8=С запятой в качестве разделителя (UTF-8)
+TABFiles=Со знаком табуляции в качестве разделителя
+TABFilesSysCharset=Со знаком табуляции в качестве разделителя (системная кодировка)
+TABFilesUTF8=Со знаком табуляции в качестве разделителя (UTF-8)
+VCFFiles=vCard
+SupportedABFiles=Поддерживаемые файлы адресных книг
+failedToExportTitle=Ошибка экспорта
+failedToExportMessageNoDeviceSpace=Ошибка экспорта адресной книги, нет места на диске.
+failedToExportMessageFileAccessDenied=Ошибка экспорта адресной книги, доступ к файлу запрещён.
+
+# For getting authDN for replication using dlg box
+AuthDlgTitle=Репликация адресных книг LDAP
+AuthDlgDesc=Введите имя пользователя и пароль для доступа к каталогу сервера.
+
+# LOCALIZATION NOTE(joinMeInThisChat)
+# use + for spaces
+joinMeInThisChat=Присоединиться+к+чату.
+
+# For printing
+headingHome=Дом
+headingWork=Рабочий
+headingOther=Прочее
+headingChat=Чат
+headingPhone=Телефон
+headingDescription=Описание
+headingAddresses=Адреса
+
+## For address books
+addressBookTitleNew=Новая адресная книга
+# LOCALIZATION NOTE (addressBookTitleEdit):
+# %S is the current name of the address book.
+# Example: My Custom AB Properties
+addressBookTitleEdit=Свойства %S
+duplicateNameTitle=Адресная книга с таким именем уже существует
+# LOCALIZATION NOTE (duplicateNameText):
+# Don't localize "\n• %S" unless your local layout comes out wrong.
+# %S is the name of the existing address book.
+# Example: An address book with this name already exists:
+# • My Custom AB
+duplicateNameText=Адресная книга с таким именем уже существует:\n• %S
+
+# For corrupt .mab files
+corruptMabFileTitle=Повреждённый файл адресной книги
+corruptMabFileAlert=Одна из адресных книг (файл «%1$S») не может быть прочитана. В том же каталоге будут созданы новый файл «%2$S» и резервная копия старого с именем «%3$S».
+
+# For locked .mab files
+lockedMabFileTitle=Не удалось загрузить файл адресной книги
+lockedMabFileAlert=Не удалось загрузить файл адресной книги «%S». Возможно, он доступен только для чтения или заблокирован другим приложением. Подождите некоторое время и попробуйте снова.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/ldapAutoCompErrs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/ldapAutoCompErrs.properties
new file mode 100644
index 0000000000..97485d1b6c
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/ldapAutoCompErrs.properties
@@ -0,0 +1,109 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# These are error strings for problems that happen while in the
+# various states declared in nsILDAPAutoCompFormatter.idl. Note that
+# the number that indexes each error state is the same as the number
+# corresponding to that state in nsILDAPAutoCompFormatter.idl.
+
+# These are error strings for problems that happen while in the
+# various states declared in nsILDAPAutoCompFormatter.idl. Note that
+# the number that indexes each error state is the same as the number
+# corresponding to that state in nsILDAPAutoCompFormatter.idl.
+
+## @name ERR_STATE_UNBOUND
+## @loc none
+0=Проблема инициализации LDAP
+
+## @name ERR_STATE_INITIALIZING
+## @loc none
+1=Неудача при соединении с LDAP-сервером
+
+## @name ERR_STATE_BINDING
+## @loc none
+2=Неудача при соединении с LDAP-сервером
+
+## @name ERR_STATE_BOUND
+## @loc none
+3=Проблема связи на LDAP-сервере
+
+## @name ERR_STATE_SEARCHING
+## @loc none
+4=Проблема поиска на LDAP-сервере
+
+
+# The format of the alert dialog itself
+#
+## @name ALERT_FORMAT
+## @loc None of %1$S, %2$S and %3$S should be localized.
+## %1$S is the error code itself, %2$S is an LDAP SDK error message from
+## chrome://mozldap/locale/ldap.properties, and %3$S is a hint relating
+## to that specific error, found in this file.
+errorAlertFormat=Код ошибки %1$S: %2$S\n\n %3$S
+
+## The following errors are for error codes other than LDAP-specific ones.
+## Someday mozilla will actually have a system for mapping nsresults to
+## error strings that's actually widely used, unlike nsIErrorService. But
+## until it does, these strings live here...
+
+## @name HOST_NOT_FOUND
+## @loc none
+5000=Узел не найден
+
+## @name GENERIC_ERROR
+## @loc none
+9999=Неизвестная ошибка
+
+
+# Hints to for the user, associated with specific error codes (ie error code
+# + 10000)
+
+
+## @name TIMELIMIT_EXCEEDED_HINT
+## @loc none
+10003=Подождите некоторое время и попробуйте снова или обратитесь к вашему системному администратору.
+
+## @name STRONGAUTH_REQUIRED_HINT
+## @loc none
+10008=Аутентификация высокой стойкости пока не поддерживается.
+
+## @name INVALID_SYNTAX_HINT
+## @loc none
+10021=Убедитесь, что фильтр поиска корректен, и попробуйте снова или обратитесь к системному администратору. Чтобы убедиться в корректности фильтра поиска, выберите «Настройки…» в меню «Инструменты», затем — «Составление» и «Адресация». Нажмите «Изменить каталоги…» и выберите используемый LDAP-сервер. Нажмите «Изменить», затем выберите вкладку «Дополнительно», чтобы увидеть фильтр поиска.
+
+## @name NO_SUCH_OBJECT_HINT
+## @loc none
+10032=Убедитесь, что имя корневого элемента (Base DN) корректно, и попробуйте снова или обратитесь к системному администратору. Чтобы убедиться в корректности корневого элемента, выберите «Настройки…» в меню «Инструменты», затем — «Составление» и «Адресация». Нажмите «Изменить каталоги…» и выберите используемый LDAP-сервер. Нажмите «Изменить», чтобы увидеть корневой элемент (Base DN).
+
+## @name BUSY_HINT
+## @loc none
+10051=Подождите некоторое время и попробуйте снова.
+
+## @name SERVER_DOWN_HINT
+## @loc none
+10081=Убедитесь, что имя сервера и номер порта корректны, и попробуйте снова или обратитесь к системному администратору. Чтобы убедиться в корректности имени сервера и номера порта, выберите «Настройки…» в меню «Инструменты», затем — «Составление» и «Адресация». Нажмите «Изменить каталоги…» и выберите используемый LDAP-сервер. Нажмите «Изменить», чтобы увидеть имя сервера и номер порта.
+
+## @name TIMEOUT_HINT
+## @loc none
+10085=Подождите некоторое время и попробуйте снова.
+
+## @name FILTER_ERROR_HINT
+## @loc none
+10087=Убедитесь, что фильтр поиска корректен, и попробуйте снова или обратитесь к системному администратору. Чтобы убедиться в корректности фильтра поиска, выберите «Настройки…» в меню «Инструменты», затем — «Составление» и «Адресация». Нажмите «Изменить каталоги…» и выберите используемый LDAP-сервер. Нажмите «Изменить», затем выберите вкладку «Дополнительно», чтобы увидеть фильтр поиска.
+
+## @name NO_MEMORY_HINT
+## @loc none
+10090=Закройте какие-нибудь окна и/или приложения и попробуйте снова.
+
+## @name CONNECT_ERROR_HINT
+## @loc none
+10091=Убедитесь, что имя сервера и номер порта корректны, и попробуйте снова или обратитесь к системному администратору. Чтобы убедиться в корректности имени сервера и номера порта, выберите «Настройки…» в меню «Настройки», затем — «Составление» и «Адресация». Нажмите «Изменить каталоги…» и выберите используемый LDAP-сервер. Нажмите «Изменить», чтобы увидеть сетевое имя сервера и номер порта.
+
+## @name HOST_NOT_FOUND_HINT
+## @loc none
+15000=Убедитесь, что имя сервера корректно, и попробуйте снова или обратитесь к системному администратору. Чтобы убедиться в корректности сетевого имени сервера, выберите «Настройки…» в меню «Инструменты», затем — «Составление» и «Адресация». Нажмите «Изменить каталоги…» и выберите используемый LDAP-сервер. Нажмите «Изменить», чтобы увидеть имя сервера.
+
+## @name GENERIC_HINT
+## @loc none
+19999=Свяжитесь с вашим системным администратором.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/pref-directory-add.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/pref-directory-add.dtd
new file mode 100644
index 0000000000..f1015430a5
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/pref-directory-add.dtd
@@ -0,0 +1,45 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY directoryName.label "Название:">
+<!ENTITY directoryName.accesskey "Н">
+<!ENTITY directoryHostname.label "Имя сервера:">
+<!ENTITY directoryHostname.accesskey "с">
+<!ENTITY directoryBaseDN.label "Корневой элемент (Base DN):">
+<!ENTITY directoryBaseDN.accesskey "к">
+<!ENTITY findButton.label "Найти">
+<!ENTITY findButton.accesskey "Н">
+<!ENTITY directorySecure.label "Использовать защищённое соединение (SSL)">
+<!ENTITY directorySecure.accesskey "з">
+<!ENTITY directoryLogin.label "Имя пользователя (Bind DN):">
+<!ENTITY directoryLogin.accesskey "п">
+<!ENTITY General.tab "Основное">
+<!ENTITY Offline.tab "Автономно">
+<!ENTITY Advanced.tab "Дополнительно">
+<!ENTITY portNumber.label "Порт:">
+<!ENTITY portNumber.accesskey "П">
+<!ENTITY searchFilter.label "Фильтр поиска:">
+<!ENTITY searchFilter.accesskey "Ф">
+<!ENTITY scope.label "Область поиска:">
+<!ENTITY scope.accesskey "О">
+<!ENTITY scopeOneLevel.label "Один уровень">
+<!ENTITY scopeOneLevel.accesskey "у">
+<!ENTITY scopeSubtree.label "Поддерево">
+<!ENTITY scopeSubtree.accesskey "е">
+<!ENTITY return.label "Не возвращать более чем">
+<!ENTITY return.accesskey "в">
+<!ENTITY results.label "результатов">
+<!ENTITY offlineText.label "Вы можете загрузить копию этого каталога для использования в автономном режиме работы.">
+<!ENTITY saslMechanism.label "Способ аутентификации:">
+<!ENTITY saslMechanism.accesskey "п">
+<!ENTITY saslOff.label "Простой">
+<!ENTITY saslOff.accesskey "с">
+<!ENTITY saslGSSAPI.label "Kerberos (GSSAPI)">
+<!ENTITY saslGSSAPI.accesskey "K">
+
+<!-- Localization note: this is here because the width of the dialog
+ is determined by the width of the base DN box; and that is likely
+ to vary somewhat with the language.
+-->
+<!ENTITY newDirectoryWidth "48em">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/pref-directory.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/pref-directory.dtd
new file mode 100644
index 0000000000..e58a98d4b6
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/pref-directory.dtd
@@ -0,0 +1,17 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- LOCALIZATION NOTE (window.title) : do not translate "LDAP" in below line -->
+<!ENTITY pref.ldap.window.title "Сервера каталогов LDAP">
+<!-- LOCALIZATION NOTE (directories.label) : do not translate "LDAP" in below line -->
+<!ENTITY directories.label "Сервер каталогов LDAP:">
+<!-- LOCALIZATION NOTE (directoriesText.label) : do not translate "LDAP" in below line -->
+<!ENTITY directoriesText.label "Выберите сервер каталогов LDAP:">
+<!ENTITY directoriesText.accesskey "В">
+<!ENTITY addDirectory.label "Добавить">
+<!ENTITY addDirectory.accesskey "Д">
+<!ENTITY editDirectory.label "Изменить">
+<!ENTITY editDirectory.accesskey "И">
+<!ENTITY deleteDirectory.label "Удалить">
+<!ENTITY deleteDirectory.accesskey "У">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/replicationProgress.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/replicationProgress.properties
new file mode 100644
index 0000000000..171514fdb4
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/addressbook/replicationProgress.properties
@@ -0,0 +1,20 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+replicationStarted=Репликация началась…
+changesStarted=Начался поиск изменений…
+replicationSucceeded=Репликация выполнена
+replicationFailed=Ошибка репликации
+replicationCancelled=Репликация отменена
+# LOCALIZATION NOTE
+# do not localize %S. %S is the current entry number (an integer)
+currentCount=Обработка элемента каталога: %S
+
+downloadButton=Загрузить сейчас
+downloadButton.accesskey=З
+cancelDownloadButton=Отменить загрузку
+cancelDownloadButton.accesskey=О
+
+directoryTitleNew=Новый каталог LDAP
+## LOCALIZATION NOTE (directoryTitleEdit): %S will be replaced by the LDAP directory's display name
+directoryTitleEdit=Свойства %S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-addressing.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-addressing.dtd
new file mode 100644
index 0000000000..e9639277b5
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-addressing.dtd
@@ -0,0 +1,51 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- extracted from am-addressing.xul -->
+
+<!-- extracted from am-addressing.xhtml -->
+
+<!ENTITY addressing.label "Составление и адресация">
+<!ENTITY addressingGroupTitle.label "Адресация">
+<!ENTITY addressingText.label "При подборе адресов:">
+<!-- LOCALIZATION NOTE (override.label) : do not translate "LDAP" in below line -->
+<!ENTITY useGlobal.label "Использовать для этой учётной записи глобальные настройки LDAP-сервера">
+<!ENTITY useGlobal.accesskey "л">
+<!ENTITY editDirectories.label "Изменить сервер каталогов…">
+<!ENTITY editDirectories.accesskey "з">
+<!-- LOCALIZATION NOTE (directories.label) : do not translate "LDAP" in below line -->
+<!ENTITY directories.label "Использовать другой LDAP-сервер:">
+<!ENTITY directories.accesskey "д">
+<!ENTITY directoriesNone.label "Нет">
+
+<!-- am-addressing.xul -->
+
+<!-- am-addressing.xhtml -->
+
+<!ENTITY compositionGroupTitle.label "Составление">
+<!-- LOCALIZATION NOTE (useHtml.label) : do not translate "html" in below line -->
+<!ENTITY useHtml.label "Составлять сообщения в формате HTML">
+<!ENTITY useHtml.accesskey "я">
+<!ENTITY autoQuote.label "При ответе автоматически цитировать текст исходного сообщения">
+<!ENTITY autoQuote.accesskey "о">
+<!-- LOCALIZATION NOTE (quoting.label): This will concatenate with the 4 strings that follow. -->
+<!ENTITY quoting.label "При цитировании,">
+<!ENTITY quoting.accesskey "н">
+<!ENTITY aboveQuote.label "поместить курсор перед цитируемым текстом">
+<!ENTITY belowQuote.label "поместить курсор после цитируемого текста">
+<!ENTITY selectAndQuote.label "выделить цитируемый текст">
+<!ENTITY place.label "и ставить подпись">
+<!ENTITY place.accesskey "в">
+<!ENTITY belowText.label "после цитируемого текста (рекомендуется)">
+<!ENTITY aboveText.label "после моего ответа (перед цитируемым текстом)">
+<!ENTITY includeSigOnReply.label "Включать подпись в ответы">
+<!ENTITY includeSigOnReply.accesskey "ю">
+<!ENTITY includeSigOnForward.label "Включать подпись в пересылаемые письма">
+<!ENTITY includeSigOnForward.accesskey "с">
+
+<!ENTITY globalComposingPrefs.label "Глобальные настройки составления сообщений…">
+<!ENTITY globalComposingPrefs.accesskey "а">
+
+<!ENTITY globalAddressingPrefs.label "Глобальные настройки адресации…">
+<!ENTITY globalAddressingPrefs.accesskey "ы">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-advanced.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-advanced.dtd
new file mode 100644
index 0000000000..d410dbdd74
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-advanced.dtd
@@ -0,0 +1,30 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- extracted from am-advanced.xul -->
+
+<!-- extracted from am-advanced.xhtml -->
+
+<!-- LOCALIZATION NOTE (smtpServer.label): do not translate "SMTP" in below line -->
+<!ENTITY smtpServer.label "Параметры сервера исходящей почты (SMTP)">
+
+<!-- LOCALIZATION NOTE (smtpDescription.label): do not translate "SMTP" in below line -->
+<!ENTITY smtpDescription.label "При настройке ваших адресов электронной почты вы можете использовать сервер из этого списка, выбрав его в качестве Сервера исходящей почты (SMTP), или же вы можете использовать сервер по умолчанию из этого списка, выбрав «Использовать сервер по умолчанию».">
+
+<!ENTITY smtpListAdd.label "Добавить…">
+<!ENTITY smtpListAdd.accesskey "Д">
+<!ENTITY smtpListEdit.label "Изменить…">
+<!ENTITY smtpListEdit.accesskey "И">
+<!ENTITY smtpListDelete.label "Удалить">
+<!ENTITY smtpListDelete.accesskey "У">
+<!ENTITY smtpListSetDefault.label "По умолчанию">
+<!ENTITY smtpListSetDefault.accesskey "П">
+
+<!ENTITY serverDetails.label "Параметры выделенного сервера:">
+<!ENTITY serverDescription.label "Описание:">
+<!ENTITY serverName.label "Имя сервера">
+<!ENTITY serverPort.label "Порт:">
+<!ENTITY userName.label "Имя пользователя:">
+<!ENTITY connectionSecurity.label "Защита соединения: ">
+<!ENTITY authMethod.label "Метод аутентификации:">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-archiveoptions.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-archiveoptions.dtd
new file mode 100644
index 0000000000..131f9dc009
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-archiveoptions.dtd
@@ -0,0 +1,25 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- extracted from am-archiveoptions.xul -->
+
+<!-- extracted from am-archiveoptions.xhtml -->
+
+<!ENTITY dialogTitle.label "Настройки архивации">
+<!ENTITY archiveGranularityPrefix.label "При архивации сообщений, помещать их в:">
+<!ENTITY archiveFlat.label "Единую папку">
+<!ENTITY archiveFlat.accesskey "и">
+<!ENTITY archiveYearly.label "Папки архивов по годам">
+<!ENTITY archiveYearly.accesskey "о">
+<!ENTITY archiveMonthly.label "Папки архивов по месяцам">
+<!ENTITY archiveMonthly.accesskey "е">
+<!ENTITY keepFolderStructure.label "Сохранять существующую структуру папок для архивированных сообщений">
+<!ENTITY keepFolderStructure.accesskey "р">
+<!ENTITY archiveExample.label "Пример">
+<!-- LOCALIZATION NOTE (archiveFolderName.label): this should match the default
+ name for the "Archives" folder -->
+<!ENTITY archiveFolderName.label "Архивы">
+<!-- LOCALIZATION NOTE (inboxFolderName.label): this should match the default
+ name for the "Inbox" folder -->
+<!ENTITY inboxFolderName.label "Входящие">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-copies.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-copies.dtd
new file mode 100644
index 0000000000..497faae95c
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-copies.dtd
@@ -0,0 +1,52 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- extracted from am-copies.xul -->
+
+<!-- extracted from am-copies.xhtml -->
+
+<!ENTITY copyAndFolderTitle.label "Копии и папки">
+<!ENTITY sendingPrefix.label "При отправлении сообщений автоматически:">
+<!ENTITY fccMailFolder.label "Помещать копию сообщения в:">
+<!ENTITY fccMailFolder.accesskey "м">
+<!ENTITY fccReplyFollowsParent.label "Сохранять ответы в папке оригинала">
+<!ENTITY fccReplyFollowsParent.accesskey "т">
+<!-- LOCALIZATION NOTE (ccAddress.label): do not translate "Cc" in below line -->
+<!ENTITY ccAddress.label "Отправлять копии (Cc) по адресам:">
+<!ENTITY ccAddress.accesskey "т">
+<!ENTITY ccAddressList.placeholder "Разделяйте адреса запятыми">
+<!-- LOCALIZATION NOTE (bccAddress.label): do not translate "Bcc" in below line -->
+<!ENTITY bccAddress.label "Отправлять скрытые копии (Bcc) по адресам:">
+<!ENTITY bccAddress.accesskey "к">
+<!ENTITY bccAddressList.placeholder "Разделяйте адреса запятыми">
+<!ENTITY saveMessageDlg.label "Запрашивать подтверждение при сохранении сообщений">
+<!ENTITY saveMessageDlg.accesskey "п">
+<!-- LOCALIZATION NOTE (sentFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY sentFolderOn.label "папку «Отправленные» на:">
+<!ENTITY sentFolderOn.accesskey "а">
+<!ENTITY sentInOtherFolder.label "Другую папку:">
+<!ENTITY sentInOtherFolder.accesskey "г">
+<!-- LOCALIZATION NOTE (archivesFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY archivesTitle.label "Архивы сообщений">
+<!ENTITY keepArchives.label "Хранить архивированные сообщения в:">
+<!ENTITY keepArchives.accesskey "х">
+<!ENTITY archiveHierarchyButton.label "Настройки архивации…">
+<!ENTITY archiveHierarchyButton.accesskey "с">
+<!ENTITY archivesFolderOn.label "папке «Архивы» на:">
+<!ENTITY archivesFolderOn.accesskey "в">
+<!ENTITY archiveInOtherFolder.label "Другой папке:">
+<!ENTITY archiveInOtherFolder.accesskey "о">
+<!ENTITY specialFolders.label "Черновики и Шаблоны">
+<!ENTITY keepDrafts2.label "Хранить черновики сообщений в:">
+<!-- LOCALIZATION NOTE (draftsFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY draftsFolderOn.label "папке «Черновики» на:">
+<!ENTITY draftsFolderOn.accesskey "н">
+<!ENTITY draftInOtherFolder.label "Другой папке:">
+<!ENTITY draftInOtherFolder.accesskey "у">
+<!ENTITY keepTemplates.label "Хранить шаблоны сообщений в:">
+<!-- LOCALIZATION NOTE (templatesFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY templatesFolderOn.label "папке «Шаблоны» на:">
+<!ENTITY templatesFolderOn.accesskey "б">
+<!ENTITY templateInOtherFolder.label "Другой папке:">
+<!ENTITY templateInOtherFolder.accesskey "р">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-e2e.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-e2e.properties
new file mode 100644
index 0000000000..c9138f2a9f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-e2e.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+prefPanel-e2e=Сквозное шифрование
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-identities-list.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-identities-list.dtd
new file mode 100644
index 0000000000..cfa7a4565f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-identities-list.dtd
@@ -0,0 +1,15 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY identitiesListManageDesc.label "Управление адресами эл. почты этой учётной записи. По умолчанию будет использоваться первый адрес эл. почты.">
+<!ENTITY identitiesListAdd.label "Добавить">
+<!ENTITY identitiesListAdd.accesskey "б">
+<!ENTITY identitiesListEdit.label "Изменить…">
+<!ENTITY identitiesListEdit.accesskey "м">
+<!ENTITY identitiesListDefault.label "По умолчанию">
+<!ENTITY identitiesListDefault.accesskey "о">
+<!ENTITY identitiesListDelete.label "Удалить">
+<!ENTITY identitiesListDelete.accesskey "д">
+<!ENTITY identitiesListClose.label "Закрыть">
+<!ENTITY identitiesListClose.accesskey "к">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-identity-edit.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-identity-edit.dtd
new file mode 100644
index 0000000000..0ee09814bc
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-identity-edit.dtd
@@ -0,0 +1,14 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY identityListDesc.label "Настроить параметры данного адреса электронной почты:">
+
+<!ENTITY settingsTab.label "Настройки">
+<!ENTITY copiesFoldersTab.label "Копии и папки">
+<!ENTITY addressingTab.label "Составление и адресация">
+
+<!ENTITY publicData.label "Публичные данные">
+<!ENTITY privateData.label "Приватные данные">
+<!ENTITY identityAlias.label "Метка адреса эл. почты:">
+<!ENTITY identityAlias.accesskey "к">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-im.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-im.dtd
new file mode 100644
index 0000000000..59bfb62e20
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-im.dtd
@@ -0,0 +1,16 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY accountWindow.title "Свойства учётной записи">
+<!ENTITY accountWindow.width "310">
+<!ENTITY account.general "Основные">
+<!ENTITY account.advanced "Дополнительно">
+<!ENTITY account.name "Имя пользователя:">
+<!ENTITY account.password "Пароль:">
+<!ENTITY account.alias "Псевдоним:">
+<!ENTITY account.newMailNotification "Уведомлять о новой почте">
+<!ENTITY account.autojoin "Автоматически подключаемые каналы:">
+<!ENTITY account.proxySettings.caption "Настройки прокси:">
+<!ENTITY account.proxySettings.change.label "Изменить…">
+<!ENTITY account.proxySettings.change.accessKey "м">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-junk.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-junk.dtd
new file mode 100644
index 0000000000..35a99da695
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-junk.dtd
@@ -0,0 +1,31 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY junkSettings.label "Анти-спам фильтр">
+<!ENTITY trainingDescription.label "Если включено, то сначала вам нужно научить &brandShortName; определять спам. Для этого отмечайте сообщения как спам или не спам, используя кнопку «Спам» на панели инструментов. Вам нужно явно отмечать как спамерские, так и обычные сообщения. После этого &brandShortName; сможет автоматически помечать спамерские сообщения.">
+<!ENTITY level.label "Включить анти-спам фильтры для этой учётной записи">
+<!ENTITY level.accesskey "к">
+
+<!ENTITY move.label "Перемещать новые сообщения, определённые как спам, в:">
+<!ENTITY move.accesskey "м">
+<!ENTITY junkFolderOn.label "Папку «Спам» в:">
+<!ENTITY junkFolderOn.accesskey "п">
+<!ENTITY otherFolder.label "Другую папку:">
+<!ENTITY otherFolder.accesskey "г">
+<!ENTITY purge1.label "Автоматически удалять спам из этой папки через">
+<!ENTITY purge1.accesskey "в">
+<!ENTITY purge2.label "дней">
+
+<!ENTITY whitelistHeader.label "Не помечать автоматически сообщения как спам, если отправитель находится в адресных книгах: ">
+<!ENTITY whitelistHeader.accesskey "е">
+
+<!ENTITY ispHeadersWarning.label "Если включено, &brandShortName; будет автоматически считать спамом сообщения, помеченные этим внешним классификатором.">
+<!ENTITY ispHeaders.label "Использовать поля в заголовках писем установленные:">
+<!ENTITY ispHeaders.accesskey "с">
+
+<!ENTITY junkClassification.label "Выделение">
+<!ENTITY junkActions.label "Папка назначения и условия хранения">
+
+<!ENTITY globalJunkPrefs.label "Глобальные настройки анти-спама…">
+<!ENTITY globalJunkPrefs.accesskey "а">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-main.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-main.dtd
new file mode 100644
index 0000000000..0466ca76ec
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-main.dtd
@@ -0,0 +1,49 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- extracted from am-main.xul -->
+
+<!-- extracted from am-main.xhtml -->
+
+<!ENTITY accountTitle.label "Параметры учётной записи">
+<!ENTITY accountName.label "Имя учётной записи:">
+<!ENTITY accountName.accesskey "И">
+<!ENTITY identityTitle.label "Личные данные">
+<!ENTITY identityDesc.label "Для каждой учётной записи имеются персональные данные, которые смогут увидеть читающие ваши письма адресаты.">
+<!ENTITY name.label "Имя отправителя:">
+<!ENTITY name.accesskey "о">
+<!ENTITY email.label "Адрес электронной почты:">
+<!ENTITY email.accesskey "А">
+<!ENTITY catchAll.label "Адрес для ответа, когда заголовки доставки совпадают:">
+<!ENTITY catchAll.accesskey "в">
+<!ENTITY replyTo.label "Адрес для ответа:">
+<!ENTITY replyTo.accesskey "д">
+<!ENTITY replyTo.placeholder "Получатели будут отвечать по этому адресу">
+<!ENTITY organization.label "Организация:">
+<!ENTITY organization.accesskey "я">
+<!ENTITY signatureText.label "Текст подписи:">
+<!ENTITY signatureText.accesskey "т">
+<!ENTITY signatureHtml.label "Использовать HTML (например &lt;b&gt;жирный&lt;/b&gt;)">
+<!ENTITY signatureHtml.accesskey "п">
+<!ENTITY signatureFile.label "Вставлять подпись из файла (текст, HTML или картинку):">
+<!ENTITY signatureFile.accesskey "с">
+<!ENTITY edit.label "Изменить…">
+<!ENTITY choose.label "Выбрать…">
+<!ENTITY choose.accesskey "ы">
+<!ENTITY editVCard.label "Редактировать визитную карточку…">
+<!ENTITY editVCard.accesskey "Р">
+<!-- LOCALIZATION NOTE (attachVCard.label) : do not translate "vCard" in below line -->
+<!ENTITY attachVCard.label "Прикреплять визитную карточку к сообщениям">
+<!ENTITY attachVCard.accesskey "з">
+
+<!ENTITY manageIdentities.label "Дополнительные адреса электронной почты …">
+<!ENTITY manageIdentities.accesskey "Д">
+
+<!-- LOCALIZATION NOTE (smtpName.label) : do not translate "SMTP" in below line -->
+<!ENTITY smtpName.label "Сервер исходящей почты (SMTP)">
+<!ENTITY smtpName.accesskey "и">
+<!ENTITY smtpDefaultServer.label "Использовать сервер по умолчанию">
+
+<!ENTITY smtpServerEdit.label "Изменить SMTP-сервер…">
+<!ENTITY smtpServerEdit.accesskey "м">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-mdn.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-mdn.dtd
new file mode 100644
index 0000000000..ce6fb5eaf0
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-mdn.dtd
@@ -0,0 +1,33 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY pane.title "Уведомления о прочтении">
+<!ENTITY useGlobalPrefs.label "Использовать глобальные настройки уведомлений о прочтении">
+<!ENTITY useGlobalPrefs.accesskey "л">
+<!ENTITY globalReceipts.label "Глобальные настройки…">
+<!ENTITY globalReceipts.accesskey "б">
+<!ENTITY useCustomPrefs.label "Настроить использование уведомлений о прочтении">
+<!ENTITY useCustomPrefs.accesskey "а">
+<!ENTITY requestReceipt.label "Всегда запрашивать уведомление о прочтении при отправке сообщений">
+<!ENTITY requestReceipt.accesskey "с">
+<!ENTITY receiptArrive.label "При получении уведомления о прочтении:">
+<!ENTITY leaveIt.label "Оставлять его в папке «Входящие»">
+<!ENTITY leaveIt.accesskey "т">
+<!-- LOCALIZATION NOTE moveToSent.label Translate: 'Sent' according to Netscape glossary -->
+<!ENTITY moveToSent.label "Перемещать его в папку «Отправленные»">
+<!ENTITY moveToSent.accesskey "м">
+<!ENTITY requestMDN.label "При получении запроса на уведомление о прочтении:">
+<!ENTITY returnSome.label "Отправлять уведомления о прочтении для некоторых сообщений">
+<!ENTITY returnSome.accesskey "у">
+<!ENTITY never.label "Никогда не отправлять уведомление о прочтении">
+<!ENTITY never.accesskey "и">
+<!ENTITY notInToCc.label "Если я не в списке «Кому» или «Копия»:">
+<!ENTITY notInToCc.accesskey "н">
+<!ENTITY outsideDomain.label "Если отправитель не в моём домене:">
+<!ENTITY outsideDomain.accesskey "о">
+<!ENTITY otherCases.label "В остальных случаях:">
+<!ENTITY otherCases.accesskey "ч">
+<!ENTITY askMe.label "Спрашивать">
+<!ENTITY alwaysSend.label "Отправлять">
+<!ENTITY neverSend.label "Никогда не отправлять">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-mdn.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-mdn.properties
new file mode 100644
index 0000000000..e72734685f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-mdn.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+## Strings used in prefs.
+prefPanel-mdn=Уведомления о прочтении
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-offline.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-offline.dtd
new file mode 100644
index 0000000000..14b4820155
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-offline.dtd
@@ -0,0 +1,57 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY doNotDownloadPop3Movemail.label "Чтобы сэкономить дисковое пространство, не загружать:">
+<!ENTITY doNotDownloadNntp.label "Чтобы сэкономить дисковое пространство, не загружать для работы в автономном режиме:">
+<!ENTITY doNotDownloadImap.label "Чтобы сэкономить дисковое пространство, загрузка сообщений с сервера и хранение локальных копий может быть ограничена по их возрасту или размеру.">
+<!ENTITY allFoldersOffline2.label "Хранить сообщения из всех папок для этой учётной записи на этом компьютере">
+<!ENTITY allFoldersOffline2.accesskey "н">
+<!ENTITY allFoldersOfflineNote.label "Примечание: Это изменение затронет все папки в этой учётной записи. Чтобы задать отдельные папки, используйте кнопку «Дополнительно…».">
+<!ENTITY offlineNotDownload.label "Сообщения размером более">
+<!ENTITY offlineNotDownload.accesskey "б">
+<!ENTITY autosyncNotDownload.label "Не загружать сообщения размером более">
+<!ENTITY autosyncNotDownload.accesskey "ж">
+<!ENTITY kb.label "КБ">
+<!ENTITY daysOld.label "дней">
+<!ENTITY message.label "сообщений">
+<!ENTITY nntpNotDownloadRead.label "Загружать только непрочитанные сообщения">
+<!ENTITY nntpNotDownloadRead.accesskey "а">
+<!ENTITY nntpDownloadMsg.label "Загружать сообщения только за последние">
+<!ENTITY nntpDownloadMsg.accesskey "г">
+<!ENTITY retentionCleanup.label "Для высвобождения места на диске старые сообщения могут быть полностью удалены.">
+<!ENTITY retentionCleanupImap.label "Для высвобождения места на диске старые сообщения могут быть полностью удалены (как локальные копии, так и оригиналы на удалённом сервере).">
+<!ENTITY retentionCleanupPop.label "Для высвобождения места на диске старые сообщения могут быть полностью удалены (в том числе оригиналы на удалённом сервере).">
+<!ENTITY retentionKeepMsg.label "Удалять сообщения старше">
+<!ENTITY retentionKeepMsg.accesskey "л">
+<!ENTITY retentionKeepAll.label "Не удалять сообщения">
+<!ENTITY retentionKeepAll.accesskey "е">
+<!ENTITY retentionKeepRecent.label "Удалять все, кроме последних">
+<!ENTITY retentionKeepRecent.accesskey "я">
+<!ENTITY retentionApplyToFlagged.label "Всегда хранить сообщения, отмеченные звёздочкой">
+<!ENTITY retentionApplyToFlagged.accesskey "с">
+<!ENTITY nntpRemoveMsgBody.label "Удалять содержимое из сообщений, хранящихся дольше">
+<!ENTITY nntpRemoveMsgBody.accesskey "д">
+<!ENTITY offlineSelectNntp.label "Выбрать группы новостей, доступные в автономном режиме…">
+<!ENTITY offlineSelectNntp.accesskey "ы">
+<!ENTITY offlineImapAdvancedOffline.label "Дополнительно…">
+<!ENTITY offlineImapAdvancedOffline.accesskey "о">
+<!ENTITY syncGroupTitle.label "Синхронизация сообщений">
+<!ENTITY diskspaceGroupTitle.label "Дисковое пространство">
+
+<!-- LOCALIZATION NOTE: (ageAutosyncBefore.label, ageAutosyncMiddle.label, ageAutosyncAfter.label):
+ The entities ageAutosyncBefore.label, ageAutosyncMiddle.label, and ageAutosyncAfter.label appear
+ on a single line within the scope of useAutosync.ByAge as follows:
+
+ &ageAutosyncBefore.label [textbox for autosync value] &ageAutosyncMiddle.label; [dropdown for autosync interval] &ageAutosyncAfter.label;
+-->
+<!ENTITY allAutosync.label "Синхронизировать все сообщения локально независимо от возраста">
+<!ENTITY allAutosync.accesskey "х">
+<!ENTITY ageAutosyncBefore.label "Синхронизировать сообщения за последние">
+<!ENTITY ageAutosync.accesskey "н">
+<!ENTITY ageAutosyncMiddle.label "">
+<!ENTITY dayAgeInterval.label "дней">
+<!ENTITY weekAgeInterval.label "недель">
+<!ENTITY monthAgeInterval.label "месяцев">
+<!ENTITY yearAgeInterval.label "лет">
+<!ENTITY ageAutosyncAfter.label "">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-server-advanced.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-server-advanced.dtd
new file mode 100644
index 0000000000..676ad29a5f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-server-advanced.dtd
@@ -0,0 +1,31 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY serverAdvanced.label "Дополнительные параметры учётной записи">
+<!-- LOCALIZATION NOTE (serverDirectory.label): Do not translate "IMAP" -->
+<!ENTITY serverDirectory.label "Каталог IMAP-сервера:">
+<!ENTITY serverDirectory.accesskey "а">
+<!ENTITY usingSubscription.label "Показывать только папки на которые вы подписаны">
+<!ENTITY usingSubscription.accesskey "о">
+<!ENTITY dualUseFolders.label "Сервер поддерживает папки, содержащие вложенные папки и сообщения">
+<!ENTITY dualUseFolders.accesskey "е">
+<!ENTITY maximumConnectionsNumber.label "Максимальное число кешируемых соединений">
+<!ENTITY maximumConnectionsNumber.accesskey "к">
+<!-- LOCALIZATION NOTE (namespaceDesc.label): Do not translate "IMAP" -->
+<!ENTITY namespaceDesc.label "Эти настройки определяют пространства имён на вашем IMAP-сервере">
+<!ENTITY personalNamespace.label "Личное пространство имён:">
+<!ENTITY personalNamespace.accesskey "ч">
+<!ENTITY publicNamespace.label "Общее (совместно используемое):">
+<!ENTITY publicNamespace.accesskey "б">
+<!ENTITY otherUsersNamespace.label "Другие пользователи:">
+<!ENTITY otherUsersNamespace.accesskey "у">
+<!ENTITY overrideNamespaces.label "Разрешить серверу перекрывать эти пространства имён">
+<!ENTITY overrideNamespaces.accesskey "з">
+<!ENTITY pop3DeferringDesc.label "При загрузке почты c сервера этой учётной записи, помещать новые сообщения в следующую папку:">
+<!ENTITY accountInbox.label "«Входящие» для этой учётной записи">
+<!ENTITY accountInbox.accesskey "д">
+<!ENTITY deferToServer.label "«Входящие» для другой учётной записи">
+<!ENTITY deferToServer.accesskey "х">
+<!ENTITY deferGetNewMail.label "Загружать почту с данного сервера">
+<!ENTITY deferGetNewMail.accesskey "ж">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-server-top.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-server-top.dtd
new file mode 100644
index 0000000000..363f96fc01
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-server-top.dtd
@@ -0,0 +1,89 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY messageStorage.label "Хранилище сообщений">
+<!ENTITY securitySettings.label "Настройки защиты">
+<!ENTITY serverSettings.label "Параметры сервера">
+<!ENTITY serverType.label "Тип сервера:">
+<!ENTITY serverName.label "Имя сервера:">
+<!ENTITY serverName.accesskey "я">
+<!ENTITY userName.label "Имя пользователя:">
+<!ENTITY userName.accesskey "м">
+<!ENTITY port.label "Порт:">
+<!ENTITY port.accesskey "р">
+<!ENTITY serverPortDefault.label "По умолчанию:">
+<!-- LOCALIZATION NOTE (biffStart.label) : translate below 2 line with grammar dependency
+ For example, in Japanese cases:
+ biffStart.label "every"
+ biffEnd.label "minutes for new messages Check"
+-->
+<!ENTITY biffStart.label "Проверять наличие новых сообщений каждые">
+<!ENTITY biffStart.accesskey "к">
+<!ENTITY biffEnd.label "минут">
+<!ENTITY useIdleNotifications.label "Разрешить серверу при поступлении новых сообщений немедленно отображать уведомление">
+<!ENTITY useIdleNotifications.accesskey "н">
+<!ENTITY connectionSecurity.label "Защита соединения:">
+<!ENTITY connectionSecurity.accesskey "щ">
+<!ENTITY connectionSecurityType-0.label "Нет">
+<!ENTITY connectionSecurityType-1.label "STARTTLS, если доступно">
+<!ENTITY connectionSecurityType-2.label "STARTTLS">
+<!ENTITY connectionSecurityType-3.label "SSL/TLS">
+<!ENTITY authMethod.label "Метод аутентификации:">
+<!ENTITY authMethod.accesskey "е">
+<!ENTITY leaveOnServer.label "Оставлять копии сообщений на сервере">
+<!ENTITY leaveOnServer.accesskey "с">
+<!ENTITY headersOnly.label "Загружать только заголовки сообщений">
+<!ENTITY headersOnly.accesskey "г">
+<!ENTITY deleteByAgeFromServer.label "Не более">
+<!ENTITY deleteByAgeFromServer.accesskey "л">
+<!ENTITY daysEnd.label "дней">
+<!ENTITY deleteOnServer2.label "Пока я не удалю их">
+<!ENTITY deleteOnServer2.accesskey "у">
+<!ENTITY downloadOnBiff.label "Автоматически загружать новые сообщения">
+<!ENTITY downloadOnBiff.accesskey "а">
+<!ENTITY deleteMessagePrefix.label "При удалении сообщения:">
+<!ENTITY modelMoveToTrash.label "Переместить его в папку:">
+<!ENTITY modelMoveToTrash.accesskey "и">
+<!ENTITY modelMarkDeleted.label "Отметить его как удалённое">
+<!ENTITY modelMarkDeleted.accesskey "т">
+<!ENTITY modelDeleteImmediately.label "Удалить его сразу">
+<!ENTITY modelDeleteImmediately.accesskey "д">
+<!-- LOCALIZATION NOTE (expungeOnExit.label) : do not translate two of "&quot;" in below line -->
+<!ENTITY expungeOnExit.label "Сжимать при выходе папку «Входящие»">
+<!ENTITY expungeOnExit.accesskey "ж">
+<!ENTITY emptyTrashOnExit.label "Опустошить при выходе папку «Удалённые»">
+<!ENTITY emptyTrashOnExit.accesskey "ш">
+<!ENTITY loginAtStartup.label "Проверять почту при запуске">
+<!ENTITY loginAtStartup.accesskey "в">
+<!-- LOCALIZATION NOTE (maxMessagesStart.label) : translate below 2 lines with grammar dependency
+ maxMessengerStart.label will be followed by maxMessagesEnd.label with the number
+ of messages between them
+-->
+<!ENTITY maxMessagesStart.label "Спрашивать перед загрузкой более чем">
+<!ENTITY maxMessagesStart.accesskey "ш">
+<!-- LOCALIZATION NOTE (maxMessagesEnd.label) : see note for maxMessagesStart.label -->
+<!ENTITY maxMessagesEnd.label "сообщений">
+<!ENTITY alwaysAuthenticate.label "Всегда проводить аутентификацию при подключении к этому серверу">
+<!ENTITY alwaysAuthenticate.accesskey "о">
+<!ENTITY newsrcFilePath1.label "Файл News.rc:">
+<!ENTITY newsrcPicker1.label "Выбрать файл News.rc">
+<!ENTITY abbreviate.label "Показывать имена групп новостей:">
+<!ENTITY abbreviateOn.label "Полностью (например «netscape.public.mozilla.mail-news»)">
+<!ENTITY abbreviateOff.label "Аббревиатурой (например «n.p.m.mail-news»)">
+<!ENTITY advancedButton.label "Дополнительно…">
+<!ENTITY advancedButton.accesskey "п">
+<!ENTITY serverDefaultCharset2.label "Кодировка текста по умолчанию:">
+<!ENTITY localPath1.label "Локальный каталог:">
+<!ENTITY localFolderPicker.label "Выбор локального каталога">
+<!ENTITY browseFolder.label "Обзор…">
+<!ENTITY browseFolder.accesskey "б">
+<!ENTITY browseNewsrc.label "Обзор…">
+<!ENTITY browseNewsrc.accesskey "з">
+
+<!ENTITY accountTitle.label "Параметры учётной записи">
+<!ENTITY accountSettingsDesc.label "Эта учётная запись особенная. С ней не связаны никакие персональные данные.">
+<!ENTITY storeType.label "Тип хранилища сообщений:">
+<!ENTITY storeType.accesskey "х">
+<!ENTITY mboxStore2.label "Каждая папка в отдельном файле (mbox)">
+<!ENTITY maildirStore.label "Каждое сообщение в отдельном файле (maildir)">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-serverwithnoidentities.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-serverwithnoidentities.dtd
new file mode 100644
index 0000000000..5a92cf0937
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-serverwithnoidentities.dtd
@@ -0,0 +1,6 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY accountName.label "Имя учётной записи:">
+<!ENTITY accountName.accesskey "м">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-smime.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-smime.dtd
new file mode 100644
index 0000000000..fb8974be23
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-smime.dtd
@@ -0,0 +1,47 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY e2eTitle.label "Сквозное шифрование">
+<!ENTITY e2eLearnMore.label "Подробнее">
+
+<!ENTITY e2eEnc.description "Без сквозного шифрования содержимое сообщений легко может быть прочтено вашим провайдером электронной почты или системой прослушивания.">
+
+<!ENTITY e2eTechPref.description "Предпочитаемая технология шифрования:">
+
+<!ENTITY encryptionCert2.message "Личный сертификат для шифрования:">
+<!ENTITY digitalSign.certificate.button "Выбрать…">
+<!ENTITY digitalSign.certificate.accesskey "ы">
+<!ENTITY digitalSign.certificate_clear.button "Очистить">
+<!ENTITY digitalSign.certificate_clear.accesskey "ч">
+<!ENTITY encryption.certificate.button "Выбрать…">
+<!ENTITY encryption.certificate.accesskey "б">
+<!ENTITY encryption.certificate_clear.button "Очистить">
+<!ENTITY encryption.certificate_clear.accesskey "и">
+<!ENTITY signingGroupTitle.label "Цифровая подпись">
+
+<!ENTITY signingCert2.message "Личный сертификат для цифровой подписи:">
+
+<!ENTITY sendingDefaults.label "Настройки по умолчанию для отправки сообщений">
+
+<!ENTITY technologyAutomatic.label "Автовыбор на основе доступных ключей или сертификатов">
+
+<!ENTITY certificates2.label "S/MIME">
+<!ENTITY manageCerts3.label "Управление сертификатами S/MIME">
+<!ENTITY manageCerts3.accesskey "M">
+<!ENTITY manageDevices2.label "Устройства защиты S/MIME">
+<!ENTITY manageDevices2.accesskey "а">
+
+<!ENTITY technologySMIME.label "Предпочитать S/MIME">
+<!ENTITY technologyOpenPGP.label "Предпочитать OpenPGP">
+
+<!ENTITY openpgpKeys.label "OpenPGP">
+
+<!-- Strings for the cert picker dialog -->
+<!ENTITY certPicker.title "Выбор сертификата">
+<!ENTITY certPicker.info "Сертификат:">
+<!ENTITY certPicker.detailsLabel "Информация о выбранном сертификате:">
+
+<!ENTITY openpgpKey.message "Личный ключ для шифрования и цифровой подписи:">
+<!ENTITY openpgpKey.button "Установить личный ключ…">
+<!ENTITY openpgpKey.accesskey "ы">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-smime.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-smime.properties
new file mode 100644
index 0000000000..05cef7f20b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/am-smime.properties
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+## S/MIME error strings.
+## Note to localization: %S is a placeholder
+NoSenderSigningCert=Вы хотите поставить цифровую подпись на это сообщение, но приложение не может найти соответствующий сертификат, указанный в настройках учётной записи, либо сертификат недействителен.
+NoSenderEncryptionCert=Вы хотите зашифровать это сообщение, но приложение не может найти соответствующий сертификат, указанный в настройках учётной записи, либо сертификат недействителен.
+MissingRecipientEncryptionCert=Вы хотите зашифровать сообщение, но приложение не может найти сертификат ключа шифрования для «%S».
+ErrorEncryptMail=Не удалось зашифровать сообщение. Убедитесь, что у вас имеются действительные сертификаты электронной почты для каждого адресата. Убедитесь, что сертификаты, указанные в настройках учётной записи, действительны и отмечены как доверенные для работы с почтой.
+ErrorCanNotSignMail=Не удалось поставить цифровую подпись на сообщение. Убедитесь, что сертификаты, указанные в настройках учётной записи, действительны и отмечены как доверенные для работы с почтой.
+
+NoSigningCert=Система управления сертификатами не может обнаружить действительный сертификат, который мог бы использоваться для цифровой подписи сообщений.
+NoSigningCertForThisAddress=Система управления сертификатами не может обнаружить действительный сертификат, который мог бы использоваться для цифровой подписи сообщений с адреса <%S>.
+NoEncryptionCert=Система управления сертификатами не может обнаружить действительный сертификат, который мог бы использоваться другими людьми для отправки вам зашифрованных сообщений.
+NoEncryptionCertForThisAddress=Система управления сертификатами не может обнаружить действительный сертификат, который мог бы использоваться другими людьми для отправки вам зашифрованных сообщений на адрес <%S>.
+
+encryption_needCertWantSame=Перед использованием цифровой подписи необходимо указать сертификат, который другие люди смогут использовать, чтобы отправлять вам зашифрованные сообщения. Использовать один и тот же сертификат для шифрования и расшифровки сообщений, отправленных вам?
+encryption_wantSame=Вы хотите использовать один и тот же сертификат для шифрования и расшифровки сообщений, отправленных вам?
+encryption_needCertWantToSelect=Перед использованием цифровой подписи необходимо указать сертификат, который другие люди смогут использовать, чтобы отправлять вам зашифрованные сообщения. Получить сертификат ключа шифрования сейчас?
+signing_needCertWantSame=Вам также необходимо указать сертификат ключа цифровой подписи. Использовать этот же сертификат для цифровой подписи сообщения?
+signing_wantSame=Вы хотите использовать этот же сертификат для цифровой подписи сообщения?
+signing_needCertWantToSelect=Вам также необходимо указать сертификат ключа цифровой подписи. Получить сертификат ключа цифровой подписи сейчас?
+
+## Strings used by nsMsgComposeSecure
+mime_smimeEncryptedContentDesc=Зашифрованное сообщение S/MIME
+mime_smimeSignatureContentDesc=Криптографическая подпись S/MIME
+
+## Strings used by the cert picker.
+CertInfoIssuedFor=Кому выдано:
+CertInfoIssuedBy=Кем выдано:
+CertInfoValid=Действителен
+CertInfoFrom=с
+CertInfoTo=по
+CertInfoPurposes=Назначения
+CertInfoEmail=Электронная почта
+CertInfoStoredIn=Место хранения:
+NicknameExpired=(срок действия истёк)
+NicknameNotYetValid=(ещё не действительно)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/appUpdate.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/appUpdate.properties
new file mode 100644
index 0000000000..770f5ef534
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/appUpdate.properties
@@ -0,0 +1,40 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (updateAvailableTitle): %S will be replaced with brandShortName
+updateAvailableTitle=Доступно новое обновление %S.
+# LOCALIZATION NOTE (updateAvailableMessage): %S will be replaced with brandShortName
+updateAvailableMessage=Обновите свой %S для повышения скорости и приватности.
+updateAvailablePrimaryButtonLabel=Загрузить обновление
+updateAvailablePrimaryButtonAccessKey=и
+updateAvailableSecondaryButtonLabel=Не сейчас
+updateAvailableSecondaryButtonAccessKey=е
+
+# LOCALIZATION NOTE (updateManualTitle): %S will be replaced with brandShortName
+updateManualTitle=%S не смог обновиться до последней версии.
+# LOCALIZATION NOTE (updateManualMessage): %S will be replaced with brandShortName
+updateManualMessage=Загрузите новую версию %S и мы поможем вам её установить.
+# LOCALIZATION NOTE (updateManualPrimaryButtonLabel): %S will be replaced with brandShortName
+updateManualPrimaryButtonLabel=Загрузить %S
+updateManualPrimaryButtonAccessKey=и
+updateManualSecondaryButtonLabel=Не сейчас
+updateManualSecondaryButtonAccessKey=е
+
+# LOCALIZATION NOTE (updateUnsupportedTitle): %S will be replaced with brandShortName
+updateUnsupportedTitle=%S не может обновиться до последней версии.
+# LOCALIZATION NOTE (updateUnsupportedMessage): %S will be replaced with brandShortName
+updateUnsupportedMessage=Последняя версия %S не поддерживается на вашей системе.
+updateUnsupportedPrimaryButtonLabel=Подробнее
+updateUnsupportedPrimaryButtonAccessKey=о
+updateUnsupportedSecondaryButtonLabel=Закрыть
+updateUnsupportedSecondaryButtonAccessKey=ы
+
+# LOCALIZATION NOTE (updateRestartTitle): %S will be replaced with brandShortName
+updateRestartTitle=Перезапуск %S для обновления.
+# LOCALIZATION NOTE (updateRestartMessage): %S will be replaced with brandShortName
+updateRestartMessage=После быстрого перезапуска, %S восстановит все открытые вами вкладки и окна.
+updateRestartPrimaryButtonLabel=Перезапустить
+updateRestartPrimaryButtonAccessKey=з
+updateRestartSecondaryButtonLabel=Не сейчас
+updateRestartSecondaryButtonAccessKey=е
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/appleMailImportMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/appleMailImportMsgs.properties
new file mode 100644
index 0000000000..716c4b6239
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/appleMailImportMsgs.properties
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Short name of import module
+ApplemailImportName=Apple Mail
+
+# Description of import module
+ApplemailImportDescription=Импорт локальной почты Mac OS X Mail
+
+# Success Message
+# LOCALIZATION NOTE(ApplemailImportMailboxSuccess): Do not translate the word "%S" below.
+ApplemailImportMailboxSuccess=Локальные сообщения из «%S» были успешно импортированы
+
+# Error Message
+ApplemailImportMailboxBadparam=Произошла внутренняя ошибка. Импорт не удался. Попробуйте снова.
+
+# Error message
+# LOCALIZATION NOTE(ApplemailImportMailboxConverterror): Do not translate the word "%S" below.
+ApplemailImportMailboxConverterror=Во время импорта сообщений из «%S» произошла ошибка. Сообщения не были импортированы.
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/baseMenuOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/baseMenuOverlay.dtd
new file mode 100644
index 0000000000..90cbd258dc
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/baseMenuOverlay.dtd
@@ -0,0 +1,35 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Help Menu -->
+<!ENTITY helpMenu.label "Справка">
+<!ENTITY helpMenu.accesskey "С">
+<!-- LOCALIZATION NOTE some localizations of Windows use "?"
+ for the help button in the menubar but Gnome does not. -->
+<!ENTITY helpMenuWin.label "Справка">
+<!ENTITY helpMenuWin.accesskey "С">
+<!ENTITY aboutProduct2.label "О &brandShorterName;">
+<!ENTITY aboutProduct2.accesskey "О">
+
+<!ENTITY productHelp.label "Помощь по &brandShortName;">
+<!ENTITY productHelp.accesskey "м">
+
+<!ENTITY productHelp.commandkey "VK_F1">
+<!ENTITY productHelpMac.commandkey "?">
+<!ENTITY productHelpMac.modifiers "accel">
+
+<!ENTITY helpKeyboardShortcuts.label "Сочетания клавиш">
+<!ENTITY helpKeyboardShortcuts.accesskey "ч">
+
+<!ENTITY helpFeedbackPage.label "Отправить отзыв…">
+<!ENTITY helpFeedbackPage.accesskey "т">
+
+<!ENTITY helpShowTour2.label "Знакомство с &brandShorterName;">
+<!ENTITY helpShowTour2.accesskey "м">
+
+<!ENTITY helpGetInvolvedPage.label "Принять участие">
+<!ENTITY helpGetInvolvedPage.accesskey "я">
+
+<!ENTITY helpDonationsPage.label "Сделать пожертвование">
+<!ENTITY helpDonationsPage.accesskey "ж">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/beckyImportMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/beckyImportMsgs.properties
new file mode 100644
index 0000000000..b0fea2c4fb
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/beckyImportMsgs.properties
@@ -0,0 +1,19 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# The following are used by the becky import code to display status/error
+# and informational messages
+
+# Short name of import module
+BeckyImportName=Becky! Internet Mail
+
+# Description of import module
+BeckyImportDescription=Импорт локальной почты Becky! Internet Mail
+
+# Success Message
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+# The variable %S will contain the name of the Mailbox
+BeckyImportMailboxSuccess=Локальные сообщения из «%S» были успешно импортированы.
+
+BeckyImportAddressSuccess=Адресная книга импортирована
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/charsetTitles.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/charsetTitles.properties
new file mode 100644
index 0000000000..05016334bb
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/charsetTitles.properties
@@ -0,0 +1,84 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+## Rule of this file:
+## 1. key should always be in lower case ascii so we can do case insensitive
+## comparison in the code faster.
+
+## Format of this file:
+## charset_name.title = a_title - specifies the human readable title for
+## this charset
+
+## Format of this file:
+## charset_name.title = a_title - specifies the human readable title for
+## this charset
+
+iso-8859-1.title = Западноевропейская (ISO-8859-1)
+iso-8859-2.title = Центральноевропейская (ISO-8859-2)
+iso-8859-3.title = Южноевропейская (ISO-8859-3)
+iso-8859-4.title = Прибалтийская (ISO-8859-4)
+iso-8859-10.title = Скандинавская (ISO-8859-10)
+iso-8859-13.title = Прибалтийская (ISO-8859-13)
+iso-8859-14.title = Кельтская (ISO-8859-14)
+iso-8859-15.title = Западноевропейская (ISO-8859-15)
+iso-8859-16.title = Румынская (ISO-8859-16)
+windows-1250.title = Центральноевропейская (Windows-1250)
+windows-1252.title = Западноевропейская (Windows-1252)
+windows-1254.title = Турецкая (Windows-1254)
+windows-1257.title = Прибалтийская (Windows-1257)
+macintosh.title = Западноевропейская (MacRoman)
+x-mac-ce.title = Центральноевропейская (MacCE)
+x-mac-turkish.title = Турецкая (MacTurkish)
+x-mac-croatian.title = Хорватская (MacCroatian)
+x-mac-romanian.title = Румынская (MacRomanian)
+x-mac-icelandic.title = Исландская (MacIcelandic)
+iso-2022-jp.title = Японская (ISO-2022-JP)
+shift_jis.title = Японская (Shift_JIS)
+euc-jp.title = Японская (EUC-JP)
+big5.title = Китайская традиционная (Big5)
+big5-hkscs.title = Китайская традиционная (Big5-HKSCS)
+gb2312.title = Китайская упрощённая (GB2312)
+gbk.title = Китайская упрощённая (GBK)
+euc-kr.title = Корейская (EUC-KR)
+utf-7.title = Юникод (UTF-7)
+utf-8.title = Юникод (UTF-8)
+utf-16.title = Юникод (UTF-16)
+utf-16le.title = Юникод (UTF-16LE)
+utf-16be.title = Юникод (UTF-16BE)
+iso-8859-5.title = Кириллица (ISO-8859-5)
+windows-1251.title = Кириллица (Windows-1251)
+x-mac-cyrillic.title = Кириллица (MacCyrillic)
+x-mac-ukrainian.title = Кириллица/Украина (MacUkrainian)
+koi8-r.title = Кириллица (KOI8-R)
+koi8-u.title = Кириллица/Украина (KOI8-U)
+iso-8859-7.title = Греческая (ISO-8859-7)
+windows-1253.title = Греческая (Windows-1253)
+x-mac-greek.title = Греческая (MacGreek)
+windows-1258.title = Вьетнамская (Windows-1258)
+windows-874.title = Тайская (Windows-874)
+iso-8859-6.title = Арабская (ISO-8859-6)
+iso-8859-8.title = Иврит (ISO-8859-8)
+iso-8859-8-i.title = Иврит (ISO-8859-8-I)
+windows-1255.title = Иврит (Windows-1255)
+windows-1256.title = Арабская (Windows-1256)
+x-user-defined.title = Определённая пользователем
+ibm866.title = Кириллица/Россия (CP-866)
+gb18030.title = Китайская упрощённая (GB18030)
+x-mac-arabic.title = Арабская (MacArabic)
+x-mac-farsi.title = Фарси (MacFarsi)
+x-mac-hebrew.title = Иврит (MacHebrew)
+x-mac-devanagari.title = Хинди (MacDevanagari)
+x-mac-gujarati.title = Гуджарати (MacGujarati)
+x-mac-gurmukhi.title = Гурмуки (MacGurmukhi)
+
+chardet.off.title = (Отключено)
+chardet.universal_charset_detector.title = Универсальная
+chardet.ja_parallel_state_machine.title = Японская
+chardet.ko_parallel_state_machine.title = Корейская
+chardet.zhtw_parallel_state_machine.title = Традиционная китайская
+chardet.zhcn_parallel_state_machine.title = Упрощённая китайская
+chardet.zh_parallel_state_machine.title = Китайская
+chardet.cjk_parallel_state_machine.title = Восточноазиатская
+chardet.ruprob.title = Русская
+chardet.ukprob.title = Украинская
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/chat.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/chat.dtd
new file mode 100644
index 0000000000..332307d5d4
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/chat.dtd
@@ -0,0 +1,44 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY onlineContactsHeader.label "Подключённые контакты">
+<!ENTITY offlineContactsHeader.label "Отключённые контакты">
+<!ENTITY conversationsHeader.label "Разговоры">
+<!ENTITY searchResultConversation.label "Результат поиска">
+<!ENTITY chat.noConv.title "Разговоры будут показаны здесь.">
+<!ENTITY chat.noConv.description "Для начала разговора используйте список контактов в левой панели.">
+<!ENTITY chat.noPreviousConv.description "В данный момент &brandShortName; не хранит никаких предыдущих разговоров с этим контактом.">
+<!ENTITY chat.noAccount.title "Учетные записи чата отсутствуют.">
+<!ENTITY chat.noAccount.description "Позвольте &brandShortName; провести вас через процесс создания учётной записи чата.">
+<!ENTITY chat.accountWizard.button "Начать">
+<!ENTITY chat.noConnectedAccount.title "Ваши учётные записи чата не подключены.">
+<!ENTITY chat.noConnectedAccount.description "Вы можете подключить их из диалога 'Статус чата':">
+<!ENTITY chat.showAccountManager.button "Показать статус чата">
+
+<!ENTITY chat.participants "Участники:">
+<!ENTITY chat.previousConversations "Предыдущие разговоры:">
+<!ENTITY chat.ongoingConversation "Текущий разговор">
+
+<!ENTITY openConversationCmd.label "Начать разговор">
+<!ENTITY openConversationCmd.accesskey "ч">
+<!ENTITY closeConversationCmd.label "Закрыть разговор">
+<!ENTITY closeConversationCmd.accesskey "а">
+<!ENTITY aliasCmd.label "Переименовать">
+<!ENTITY aliasCmd.accesskey "м">
+<!ENTITY deleteCmd.label "Удалить">
+<!ENTITY deleteCmd.accesskey "д">
+
+<!ENTITY openConversationButton.tooltip "Начать разговор">
+<!ENTITY closeConversationButton.tooltip "Закрыть разговор">
+
+<!ENTITY addBuddyButton.label "Добавить собеседника">
+<!ENTITY joinChatButton.label "Присоединиться к чату">
+<!ENTITY chatAccountsButton.label "Показать учётные записи">
+
+<!ENTITY status.available "Доступен">
+<!ENTITY status.unavailable "Занят">
+<!ENTITY status.offline "Отключён">
+
+<!ENTITY openLinkCmd.label "Открыть ссылку…">
+<!ENTITY openLinkCmd.accesskey "к">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/chat.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/chat.properties
new file mode 100644
index 0000000000..615cfedcc4
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/chat.properties
@@ -0,0 +1,110 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+chatTabTitle=Чат
+goBackToCurrentConversation.button=Вернуться к текущему разговору
+# LOCALIZATION NOTE (startAConversationWith.button):
+# %S is replaced with the display name of a contact.
+startAConversationWith.button=Начать разговор с %S
+
+# LOCALIZATION NOTE (defaultGroup):
+# this is used in the addBuddies dialog if the list of existing groups is empty
+defaultGroup=Контакты
+
+# LOCALIZATION NOTE (buddy.authRequest.label):
+# This string appears in a notification bar at the
+# top of the Contacts window when someone added the user to his/her
+# contact list, to request the permission from the user to share
+# status information with this potential new contact.
+# %S is replaced with the user name of the potential new contact.
+buddy.authRequest.label=%S хочет с вами поговорить
+buddy.authRequest.allow.label=Разрешить
+buddy.authRequest.allow.accesskey=з
+buddy.authRequest.deny.label=Отклонить
+buddy.authRequest.deny.accesskey=к
+
+## LOCALIZATION NOTE (buddy.verificationRequest):
+# Strings used in a notification bar at the top of the chat tab when someone
+# sends a verification request for end-to-end encryption keys.
+# %S is replaced with the display name of the user or, if this is to verify a
+# session of yourself, a string that identifies the session.
+buddy.verificationRequest.label=%S хочет выполнить подтверждение личностей
+buddy.verificationRequest.allow.label=Начать подтверждение
+buddy.verificationRequest.allow.accesskey=Н
+buddy.verificationRequest.deny.label=Отклонить
+buddy.verificationRequest.deny.accesskey=к
+
+# LOCALIZATION NOTE (buddy.deletePrompt.title):
+# %S here will be replaced by the alias (or username) of a buddy about
+# to be removed from the buddy list.
+buddy.deletePrompt.title=Удалить %S?
+
+# LOCALIZATION NOTE (buddy.deletePrompt.message):
+# %1$S will be replaced by the name of a buddy (either the alias
+# followed by the username between parenthesis if an alias is set, or
+# only the username otherwise).
+# %2$S will be the name of the protocol on which this buddy is removed
+# (for example: AIM, MSN, Google Talk).
+#
+# Please find a wording that will keep the username as close as
+# possible to the beginning of the string, because this is the
+# important information that an user should see when looking quickly
+# at this prompt.
+buddy.deletePrompt.message=Если вы продолжите, %1$S будет навсегда удален из вашего списка собеседников %2$S.
+
+# LOCALIZATION NOTE (buddy.deletePrompt.displayName):
+# This is used to format the display name inserted in buddy.deletePrompt.message
+# %1$S is the alias, %2$S is the username.
+buddy.deletePrompt.displayName=%1$S (%2$S)
+
+# LOCALIZATION NOTE (buddy.deletePrompt.button):
+# the & symbol indicates the position of the character that should be
+# used as the accesskey for this button.
+buddy.deletePrompt.button=&Удалить
+
+displayNameEmptyText=Отображаемое имя
+userIconFilePickerTitle=Выбрать новый значок…
+
+# LOCALIZATION NOTE (chat.isTyping, chat.hasStoppedTyping):
+# The contact display name is displayed with a big font on a first
+# line and these two strings are displayed on a second line with a
+# smaller font. Please try to find a wording that make this look
+# almost like a sentence.
+chat.isTyping=печатает…
+chat.hasStoppedTyping=перестал печатать.
+# LOCALIZATION NOTE (chat.contactIsTyping, chat.contactHasStoppedTyping):
+# These strings are displayed in a tooltip when hovering the status type icon.
+# %S is replaced with the display name of the contact.
+chat.contactIsTyping=%S печатает.
+chat.contactHasStoppedTyping=%S перестал печатать.
+
+# LOCALIZATION NOTE (unknownCommand):
+# This is shown when an unknown command (/foo) is attempted. %S is the command.
+unknownCommand=Команда %S не поддерживается. Наберите /help для просмотра списка команд.
+
+#LOCALIZATION NOTE
+# These are special entries in the log tree for the corresponding days.
+log.today=Сегодня
+log.yesterday=Вчера
+
+#LOCALIZATION NOTE
+# These are special groups in the log tree for the last 3-7 days and
+# the last 8-14 days.
+log.currentWeek=Эта неделя
+log.previousWeek=Прошлая неделя
+
+# LOCALIZATION NOTE (messagePreview):
+# This is the default message preview to be shown
+# when the user has chosen not to show any info in the notification about the
+# incoming message being notified.
+messagePreview=Новое сообщение чата
+
+#LOCALIZATION NOTE (bundledMessagePreview): Semi-colon list of plural forms.
+# Used when multiple incoming messages from the same sender are bundled
+# into a single notification.
+# #1 is the number of incoming messages the user is being notified about. When #1
+# is greater than one, the plural form after the semicolon is used.
+# Do not translate %1$S, it is the message preview to be shown in the
+# notification, i.e. the first incoming message.
+bundledMessagePreview=%1$S… (и ещё #1 сообщение);%1$S… (и ещё #1 сообщения);%1$S… (и ещё #1 сообщений)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/configEditorOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/configEditorOverlay.dtd
new file mode 100644
index 0000000000..3d78799d68
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/configEditorOverlay.dtd
@@ -0,0 +1,5 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY closeCmd.key "W">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/converterDialog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/converterDialog.dtd
new file mode 100644
index 0000000000..14f44dbcd2
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/converterDialog.dtd
@@ -0,0 +1,11 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY converterDialog.title "Смена типа хранилища сообщений">
+<!ENTITY converterDialog.continueButton "Продолжить">
+<!ENTITY converterDialog.cancelButton "Отмена">
+<!ENTITY converterDialog.finishButton "Готово">
+<!ENTITY converterDialog.complete "Преобразование завершено. Сейчас произойдёт перезапуск &brandShortName;.">
+<!ENTITY converterDialog.error "Преобразование не удалось.">
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/converterDialog.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/converterDialog.properties
new file mode 100644
index 0000000000..195eb60d02
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/converterDialog.properties
@@ -0,0 +1,41 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (converterDialog.warning):
+# %1$S will be replaced by the name of the account which is going to be converted.
+# %2$S will be replaced by the format into which the account will be converted.
+# %3$S will be replaced by $BrandShortName.
+converterDialog.warning=Сообщения в учётной записи %1$S сейчас будут преобразованы в формат %2$S. После завершения преобразования %3$S будет перезапущен.
+
+# LOCALIZATION NOTE (converterDialog.message):
+# %1$S will be replaced by the name of the account which is being converted.
+# %2$S will be replaced by the format into which the account will be converted.
+converterDialog.message=Преобразование учётной записи %1$S в формат %2$S…
+
+# LOCALIZATION NOTE (converterDialog.warningForDeferredAccount):
+# %1$S will be replaced by the name of the deferred account for which migration is initiated by the user.
+# %2$S will be replaced by the name of the account to which the deferred account is deferred ie the name of the deferred-to account.
+# %3$S will be replaced by the name of the deferred-to account.
+# %4$S will be replaced by a comma separated list of names of accounts which are deferred to the deferred-to account.
+# %5$S will be replaced by a comma separated list of names of accounts which are going to get converted.
+# %6$S will be replaced by the format into which the accounts will be converted.
+# %7$S will be replaced by $BrandShortName.
+converterDialog.warningForDeferredAccount=%1$S включена в состав %2$S. Учётные записи, включённые в состав %3$S: %4$S. Сообщения в учётных записях %5$S сейчас будут преобразованы в формат %6$S. После завершения преобразования %7$S будет перезапущен.
+
+# LOCALIZATION NOTE (converterDialog.warningForDeferredToAccount):
+# %1$S will be replaced by the name of the deferred-to account for which migration is initiated by the user and to which other accounts are deferred.
+# %2$S will be replaced by a comma separated list of names of accounts which are deferred to the deferred-to account.
+# %3$S will be replaced by a comma separated list of names of accounts which are going to get converted.
+# %4$S will be replaced by the format into which the accounts will be converted.
+# %5$S will be replaced by $BrandShortName.
+converterDialog.warningForDeferredToAccount=Учётные записи, включённые в состав %1$S: %2$S. Сообщения в учётных записях %3$S сейчас будут преобразованы в формат %4$S. После завершения преобразования %5$S будет перезапущен.
+
+# LOCALIZATION NOTE (converterDialog.messageForDeferredAccount):
+# %1$S will be replaced by a comma separated list of names of accounts which are being converted.
+# %2$S will be replaced by the format into which the accounts will be converted.
+converterDialog.messageForDeferredAccount=Преобразование учётных записей %1$S в формат %2$S…
+
+# LOCALIZATION NOTE (converterDialog.percentDone):
+# %1$S will be replaced by the percentage of conversion that is complete.
+converterDialog.percentDone=Выполнено на %1$S%%
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/custom.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/custom.properties
new file mode 100644
index 0000000000..003486fc45
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/custom.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+colonInHeaderName=Введённый заголовок содержит запрещённый символ, например, «:»; непечатаемый символ; символ, не входящий в таблицу ASCII, или восьмибитный ASCII-символ. Удалите этот символ и попробуйте снова.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/customizeToolbar.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/customizeToolbar.dtd
new file mode 100644
index 0000000000..4cb79f70f7
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/customizeToolbar.dtd
@@ -0,0 +1,18 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY dialog.title "Настройка панелей инструментов">
+<!ENTITY dialog.dimensions "width: 92ch; height: 36em;">
+<!ENTITY instructions.description "Вы можете добавлять или удалять элементы на панелях инструментов, перетаскивая их мышью.">
+<!ENTITY show.label "Отображать:">
+<!ENTITY iconsAndText.label "Значки и текст">
+<!ENTITY icons.label "Значки">
+<!ENTITY text.label "Текст">
+<!ENTITY iconsBesideText.label "Значки рядом с текстом">
+<!ENTITY useSmallIcons.label "Маленькие значки">
+<!ENTITY restoreDefaultSet.label "Восстановить по умолчанию">
+<!ENTITY showTitlebar2.label "Заголовок">
+<!ENTITY extraDragSpace2.label "Место для перетаскивания">
+<!ENTITY saveChanges.label "Готово">
+<!ENTITY undoChanges.label "Отменить изменения">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/customizeToolbar.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/customizeToolbar.properties
new file mode 100644
index 0000000000..23408ad474
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/customizeToolbar.properties
@@ -0,0 +1,11 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+enterToolbarTitle=Новая панель инструментов
+enterToolbarName=Введите имя панели инструментов:
+enterToolbarDup=Панель инструментов с именем «%S» уже существует. Введите другое имя.
+enterToolbarBlank=Чтобы создать новую панель инструментов вы должны ввести её имя.
+separatorTitle=Разделитель
+springTitle=Растягивающийся интервал
+spacerTitle=Интервал
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/downloadheaders.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/downloadheaders.dtd
new file mode 100644
index 0000000000..b279658d42
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/downloadheaders.dtd
@@ -0,0 +1,27 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY all.label "Загрузить все заголовки">
+<!ENTITY all.accesskey "в">
+<!--LOCALIZATION NOTE (download.label):
+ consider the download.label and headers.label as a single sentence
+ with the number of headers to be downloaded inserted between them:
+ EXAMPLE: "Download" <some number> "headers"
+ Either label could be set to null ("") if required grammatically.
+-->
+
+<!--LOCALIZATION NOTE (download.label):
+ consider the download.label and headers.label as a single sentence
+ with the number of headers to be downloaded inserted between them:
+ EXAMPLE: "Download" <some number> "headers"
+ Either label could be set to null ("") if required grammatically.
+-->
+
+<!ENTITY download.label "Загрузить">
+<!ENTITY download.accesskey "З">
+<!--LOCALIZATION NOTE (headers.label): see note for download.label -->
+<!ENTITY headers.label "заголовков">
+<!ENTITY headers.accesskey "а">
+<!ENTITY mark.label "Отметить остальные как прочитанные">
+<!ENTITY mark.accesskey "О">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/editContactOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/editContactOverlay.dtd
new file mode 100644
index 0000000000..eb8fdf4220
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/editContactOverlay.dtd
@@ -0,0 +1,20 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY editContactPanelDeleteContact.label "Удалить">
+<!ENTITY editContactPanelDeleteContact.accesskey "д">
+
+<!ENTITY editContactName.label "Имя:">
+<!ENTITY editContactName.accesskey "м">
+
+<!ENTITY editContactEmail.label "Электронная почта:">
+<!ENTITY editContactEmail.accesskey "л">
+
+<!ENTITY editContactAddressBook.label "Адресная книга:">
+<!ENTITY editContactAddressBook.accesskey "д">
+
+<!ENTITY editContactPanelDone.label "Готово">
+<!ENTITY editContactPanelDone.accesskey "т">
+
+<!ENTITY contactMoveDisabledWarning.description "Вы не можете изменить адресную книгу, так как контакт находится в списке рассылки.">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/editContactOverlay.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/editContactOverlay.properties
new file mode 100644
index 0000000000..919a91a2b8
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/editContactOverlay.properties
@@ -0,0 +1,14 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+editTitle=Изменение контакта
+viewTitle=Просмотр контакта
+
+editDetailsLabel=Изменить сведения
+editDetailsAccessKey=м
+viewDetailsLabel=Просмотр содержимого
+viewDetailsAccessKey=с
+
+deleteContactTitle=Удалить контакт
+deleteContactMessage=Вы уверены, что хотите удалить этот контакт?
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/fieldMapImport.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/fieldMapImport.dtd
new file mode 100644
index 0000000000..699c01ffdb
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/fieldMapImport.dtd
@@ -0,0 +1,17 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY fieldMapImport.next.label "Следующая">
+<!ENTITY fieldMapImport.next.accesskey "С">
+<!ENTITY fieldMapImport.previous.label "Предыдущая">
+<!ENTITY fieldMapImport.previous.accesskey "П">
+<!ENTITY fieldMapImport.text "Используйте кнопки «Вверх» и «Вниз», чтобы установить соответствие между полями адресной книги (слева) и данными импорта (справа). Уберите флажки с компонентов, которые не хотите импортировать.">
+<!ENTITY fieldMapImport.up.label "Вверх">
+<!ENTITY fieldMapImport.up.accesskey "В">
+<!ENTITY fieldMapImport.down.label "Вниз">
+<!ENTITY fieldMapImport.down.accesskey "н">
+<!ENTITY fieldMapImport.fieldListTitle "Поля адресной книги">
+<!ENTITY fieldMapImport.dataTitle "Данные записей для импорта">
+<!ENTITY fieldMapImport.skipFirstRecord.label "Первая запись содержит заголовки полей">
+<!ENTITY fieldMapImport.skipFirstRecord.accessKey "П">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/filter.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/filter.properties
new file mode 100644
index 0000000000..1cc7fec18a
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/filter.properties
@@ -0,0 +1,109 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+mustSelectFolder=Выберите папку для сохранения.
+enterValidEmailAddress=Введите адрес электронной почты для пересылки на него сообщений.
+pickTemplateToReplyWith=Выберите шаблон для ответа.
+mustEnterName=У фильтра должно быть имя.
+cannotHaveDuplicateFilterTitle=Совпадающее имя фильтра
+cannotHaveDuplicateFilterMessage=Фильтр с таким именем уже существует. Введите другое имя.
+mustHaveFilterTypeTitle=Не выбрано ни одного события для фильтра
+mustHaveFilterTypeMessage=Вы должны выбрать по меньшей мере одно событие, при котором происходит применение этого фильтра. Если вы хотите, чтобы фильтр временно не запускался при наступлении какого-либо события, отключите его в окне Фильтров сообщений.
+deleteFilterConfirmation=Вы действительно хотите удалить выделенный фильтр(ы)?
+matchAllFilterName=Подходит под все сообщения
+filterListBackUpMsg=Фильтры не работают, потому что файл msgFilterRules.dat, содержащий их, не может быть прочтён. В том же самом каталоге будут созданы новый файл msgFilterRules.dat и резервная копия старого с названием rulesbackup.dat.
+customHeaderOverflow=Вы превысили ограничение в 50 дополнительных заголовков. Удалите лишние и попробуйте снова.
+filterCustomHeaderOverflow=Ваши фильтры превысили ограничение в 50 дополнительных заголовков. Отредактируйте файл msgFilterRules.dat, содержащий фильтры, так, чтобы они использовали меньшее число дополнительных заголовков.
+invalidCustomHeader=В одном из фильтров используется дополнительный заголовок, содержащий недействительный символ, например, «:»; непечатаемый символ; символ, не входящий в таблицу ASCII, или восьмибитный ASCII-символ. Отредактируйте файл msgFilterRules.dat, содержащий фильтры, так, чтобы удалить недействительные символы из дополнительных заголовков.
+continueFilterExecution=Ошибка запуска фильтра «%S». Запустить остальные фильтры?
+promptTitle=Запущенные фильтры
+promptMsg=Сейчас идёт процесс фильтрации сообщений.\nВы хотите продолжить применение фильтров?
+stopButtonLabel=Остановить
+continueButtonLabel=Продолжить
+# LOCALIZATION NOTE(cannotEnableIncompatFilter)
+# %S=the name of the application
+cannotEnableIncompatFilter=Возможно, фильтр был создан более поздней или несовместимой версией %S. Вы не можете использовать этот фильтр, так как мы не знаем, как его применить.
+dontWarnAboutDeleteCheckbox=Не спрашивать в следующий раз
+# LOCALIZATION NOTE(copyToNewFilterName)
+# %S=the name of the filter that is being copied
+copyToNewFilterName=Копия %S
+# LOCALIZATION NOTE(contextPeriodic.label): Semi-colon list of plural forms.
+# #1=the number of minutes
+contextPeriodic.label=Периодически, раз в #1 минуту;Периодически, раз в #1 минуты;Периодически, раз в #1 минут
+
+# LOCALIZATION NOTE(filterFailureWarningPrefix)
+# %1$S=filter error action
+# %2$S=error code as hexadecimal string.
+filterFailureWarningPrefix=Не удалось применить фильтр: «%1$S» с кодом ошибки=%2$S при попытке:
+filterFailureSendingReplyError=Ошибка при отправке ответа
+filterFailureSendingReplyAborted=Отправка ответа прервана
+filterFailureMoveFailed=Ошибка при перемещении
+filterFailureCopyFailed=Ошибка при копировании
+
+filterFailureAction=Не удалось применить фильтр
+
+searchTermsInvalidTitle=Поисковые запросы некорректны
+# LOCALIZATION NOTE(searchTermsInvalidRule)
+# %1$S=search attribute name from the invalid rule
+# %2$S=search operator from the bad rule
+searchTermsInvalidRule=Этот фильтр не может быть сохранён, так как поисковый запрос "%1$S %2$S" в текущем контексте некорректен.
+# LOCALIZATION NOTE(filterActionOrderExplanation)
+# Keep the \n\n that mean 2 linebreaks.
+filterActionOrderExplanation=Когда сообщение подходит под этот фильтр, действия будут произведены в следующем порядке:\n\n
+filterActionOrderTitle=Реальный порядок действий
+## LOCALIZATION NOTE(filterActionItem):
+# %1$S=sequence number of the action, %2$S=action text, %3$S=action argument
+filterActionItem=%1$S. %2$S %3$S\n
+
+## LOCALIZATION NOTE(filterCountVisibleOfTotal):
+# %1$S=number of matching filters, %2$S=total number of filters
+filterCountVisibleOfTotal=%1$S из %2$S
+## LOCALIZATION NOTE(filterCountItems):
+## Semicolon-separated list of singular and plural forms.
+## See: https://developer.mozilla.org/en/docs/Localization_and_Plurals
+## #1 is the count of items in the list.
+filterCountItems=#1 фильтр; #1 фильтра; #1 фильтров
+# for junk mail logging / mail filter logging
+# LOCALIZATION NOTE(junkLogDetectStr)
+# %1$S=author, %2$S=subject, %3$S=date
+junkLogDetectStr=Антиспам классифицировал сообщение от «%1$S» (тема «%2$S», дата «%3$S») как спам и
+# LOCALIZATION NOTE(logMoveStr)
+# %1$S=message id, %2$S=folder URI
+logMoveStr=переместил сообщение с id «%1$S» в папку «%2$S»
+# LOCALIZATION NOTE(logCopyStr)
+# %1$S=message id, %2$S=folder URI
+logCopyStr=скопировал сообщение с id «%1$S» в папку «%2$S»
+# LOCALIZATION NOTE(filterLogLine):
+# %1$S=timestamp, %2$S=log message
+filterLogLine=[%1$S] %2$S
+# LOCALIZATION NOTE(filterMessage):
+# %1$S=filter name, %1$S=log message
+filterMessage=Сообщение для фильтра «%1$S»: %2$S
+# LOCALIZATION NOTE(filterLogDetectStr)
+# %1$S=filter name %2$S=author, %3$S=subject, %4$S=date
+filterLogDetectStr=Фильтр «%1$S», применённый к сообщению от «%2$S» (тема «%3$S», дата «%4$S»),
+filterMissingCustomAction=Заданное действие отсутствует
+filterAction2=изменена важность
+filterAction3=удалено
+filterAction4=отмечено как прочитанное
+filterAction5=обсуждение пропущено
+filterAction6=обсуждение отслеживается
+filterAction7=отмечено звёздочкой
+filterAction8=присвоена метка
+filterAction9=отвечено
+filterAction10=переслано
+filterAction11=исполнение остановлено
+filterAction12=удалено с сервера POP3
+filterAction13=оставлено на сервере POP3
+filterAction14=индекс спама
+filterAction15=тело сообщения получено с сервера POP3
+filterAction16=скопировано в папку
+filterAction17=присвоена метка
+filterAction18=ветка обсуждения пропущена
+filterAction19=отмечено как непрочитанное
+# LOCALIZATION NOTE(filterAutoNameStr)
+# %1$S=Header or item to match, e.g. "From", "Tag", "Age in days", etc.
+# %2$S=Operator, e.g. "Contains", "is", "is greater than", etc.
+# %3$S=Value, e.g. "Steve Jobs", "Important", "42", etc.
+filterAutoNameStr=%1$S %2$S: %3$S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderProps.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderProps.dtd
new file mode 100644
index 0000000000..33bde3b5c8
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderProps.dtd
@@ -0,0 +1,70 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY folderProps.windowtitle.label "Свойства">
+
+<!ENTITY generalInfo.label "Основная информация">
+<!ENTITY folderRebuildSummaryFileTip2.label "Перестроить файл индекса">
+<!ENTITY folderRebuildSummaryFile2.label "Починить папку">
+<!ENTITY folderRebuildSummaryFile2.accesskey "ч">
+<!ENTITY folderRebuildSummaryFile.explanation "Иногда файл с индексом папки (.msf) становится повреждённым, и сообщения могут казаться пропавшими, либо могут появляться удалённые сообщения; починка папки может решить эти проблемы.">
+<!ENTITY folderIncludeInGlobalSearch.label "Включать сообщения в этой папке в результаты Глобального Поиска">
+<!ENTITY folderIncludeInGlobalSearch.accesskey "ю">
+
+<!ENTITY retention.label "Настройки хранения сообщений">
+<!ENTITY retentionUseAccount.label "Использовать параметры моей учётной записи">
+<!ENTITY retentionUseAccount.accesskey "п">
+<!ENTITY daysOld.label "дней">
+<!ENTITY message.label "сообщений">
+<!ENTITY retentionCleanup.label "Для высвобождения места на диске старые сообщения могут быть полностью удалены.">
+<!ENTITY retentionCleanupImap.label "Для высвобождения места на диске старые сообщения могут быть полностью удалены (как локальные копии, так и оригиналы на удалённом сервере).">
+<!ENTITY retentionCleanupPop.label "Для высвобождения места на диске старые сообщения могут быть полностью удалены (в том числе оригиналы на удалённом сервере).">
+<!ENTITY retentionDeleteMsg.label "Удалять сообщения старше">
+<!ENTITY retentionDeleteMsg.accesskey "с">
+<!ENTITY retentionKeepAll.label "Не удалять сообщения">
+<!ENTITY retentionKeepAll.accesskey "л">
+<!ENTITY retentionKeepRecent.label "Удалять все, кроме последних">
+<!ENTITY retentionKeepRecent.accesskey "ь">
+<!ENTITY retentionApplyToFlagged.label "Всегда хранить сообщения, отмеченные звёздочкой">
+<!ENTITY retentionApplyToFlagged.accesskey "х">
+
+<!ENTITY folderSynchronizationTab.label "Синхронизация">
+<!ENTITY folderCheckForNewMessages2.label "При получении новых сообщений для этой учётной записи всегда проверять эту папку">
+<!ENTITY folderCheckForNewMessages2.accesskey "о">
+
+<!ENTITY offlineFolder.check.label "Выбрать эту папку для автономной работы">
+<!ENTITY offlineFolder.check.accesskey "ы">
+<!ENTITY offlineFolder.button.label "Загрузить">
+<!ENTITY offlineFolder.button.accesskey "а">
+
+<!ENTITY selectofflineNewsgroup.check.label "Выбрать эту группу новостей для автономной работы">
+<!ENTITY selectofflineNewsgroup.check.accesskey "э">
+<!ENTITY offlineNewsgroup.button.label "Загрузить">
+<!ENTITY offlineNewsgroup.button.accesskey "а">
+
+<!ENTITY folderProps.name.label "Имя:">
+<!ENTITY folderProps.name.accesskey "м">
+<!ENTITY folderProps.color.label "Цвет значка:">
+<!ENTITY folderProps.color.accesskey "ч">
+<!ENTITY folderProps.reset.tooltip "Восстановить цвет по умолчанию">
+<!ENTITY folderProps.location.label "Адрес:">
+<!ENTITY folderProps.location.accesskey "д">
+
+<!ENTITY folderSharingTab.label "Совместное использование">
+<!ENTITY privileges.button.label "Привилегии…">
+<!ENTITY privileges.button.accesskey "и">
+<!ENTITY permissionsDesc.label "У вас есть следующие права:">
+<!ENTITY folderOtherUsers.label "Другие с доступом к этой папке:">
+<!ENTITY folderType.label "Тип папки:">
+
+<!ENTITY folderQuotaTab.label "Квота">
+<!ENTITY folderQuotaUsage.label "Использовано:">
+<!ENTITY folderQuotaStatus.label "Состояние:">
+
+<!ENTITY numberOfMessages.label "Число сообщений:">
+<!-- LOCALIZATION NOTE: When the number of messages can't be determined, this string is displayed as the number -->
+<!ENTITY numberUnknown.label "неизвестно">
+<!ENTITY sizeOnDisk.label "Размер на диске:">
+<!-- LOCALIZATION NOTE: When the size can't be determined, this string is displayed as the size -->
+<!ENTITY sizeUnknown.label "неизвестен">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderWidgets.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderWidgets.properties
new file mode 100644
index 0000000000..0c08a32ecd
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderWidgets.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE(globalInbox)
+# %S=name of the Local folders account
+globalInbox=Общая папка «Входящие» (%S)
+# LOCALIZATION NOTE(verboseFolderFormat): %1$S is folder name, %2$S is server name
+verboseFolderFormat=%1$S на %2$S
+chooseFolder=Выбрать папку…
+chooseAccount=Выбрать учётную запись…
+noFolders=Нет доступных папок
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderpane.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderpane.dtd
new file mode 100644
index 0000000000..67e892f601
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/folderpane.dtd
@@ -0,0 +1,7 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+<!ENTITY nameColumn.label "Имя">
+<!ENTITY unreadColumn.label "Не прочитано">
+<!ENTITY totalColumn.label "Всего">
+<!ENTITY folderSizeColumn.label "Размер">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/gloda.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/gloda.properties
new file mode 100644
index 0000000000..1a53ddf0b2
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/gloda.properties
@@ -0,0 +1,175 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (*.facetNameLabel): These are the labels used to label the facet
+# displays in the global search facet display mechanism. They should be
+# compact descriptions of the facet type (e.g. "Folder", and don't need to
+# refer to the objects being faceted (e.g. "Message" or "Mail").
+
+# LOCALIZATION NOTE (*.includeLabel): The label to use for the included group
+# in the facet display. If not provided, we will fall back to
+# "glodaFacetView.facets.included.fallbackLabel".
+
+# LOCALIZATION NOTE (*.excludeLabel): The label to use for the excluded group
+# in the facet display. If not provided, we will fall back to
+# "glodaFacetView.facets.excluded.fallbackLabel".
+
+# LOCALIZATION NOTE (*.remainderLabel): The label to use for the remaining items
+# that are neither part of the included group or the excluded group in the
+# facet display. If not provided, we will fall back to
+# "glodaFacetView.facets.remainder.fallbackLabel".
+
+# LOCALIZATION NOTE (*.mustMatchLabel): The label to use for the popup menu
+# to indicate that the results should be restricted to messages which match
+# a particular value. If not provided, we will fall back to
+# "glodaFacetView.facets.mustMatch.fallbackLabel". #1, if present, is
+# replaced by the value of the facet (name, folder, mailing list, etc.)
+
+# LOCALIZATION NOTE (*.cantMatchLabel): The label to use for the popup menu
+# to indicate that the results should be restricted to messages which match
+# a particular value. If not provided, we will fall back to
+# "glodaFacetView.facets.cantMatch.fallbackLabel". #1, if present, is
+# replaced by the value of the facet (name, folder, mailing list, etc.)
+
+# LOCALIZATION NOTE (*.mayMatchLabel): The label to use for the popup menu
+# to indicate that the results should no longer be restricted relative to
+# this particular facet value. If not provided, we will fall back to
+# "glodaFacetView.facets.mayMatch.fallbackLabel". #1, if present, is
+# replaced by the value of the facet (name, folder, mailing list, etc.)
+
+# LOCALIZATION NOTE (*.mustMatchSomeLabel): The label to use for the popup menu
+# to indicate that the results should be restricted to messages which have
+# _some_ value (e.g. at least one tag is set). If not provided, we will fall
+# back to "glodaFacetView.facets.mustMatchSome.fallbackLabel". #1, if present,
+# is replaced by the value of the facet (name, folder, mailing list, etc.)
+
+# LOCALIZATION NOTE (*.mustMatchNoneLabel): The label to use for the popup menu
+# to indicate that the results should be restricted to messages which have _no_
+# value (e.g. no tags are set). If not provided, we will fall back to
+# "glodaFacetView.facets.mustMatchNoneLabel.fallbackLabel". #1, if present, is
+# replaced by the value of the facet (name, folder, mailing list, etc.)
+
+# LOCALIZATION NOTE (*.mayMatchAnyLabel): The label to use for the popup menu
+# to indicate that the results should not be restricted to messages which have
+# any or no value (e.g. no requirements on any tags are set). If not provided,
+# we will fall back to "glodaFacetView.facets.mayMatchAnyLabel.fallbackLabel".
+# #1, if present, is replaced by the value of the facet (name, folder, mailing
+# list, etc.)
+
+# LOCALIZATION NOTE (gloda.message.attr.account.*): Stores the account in which
+# a message's folder is located.
+gloda.message.attr.account.facetNameLabel=Учётная запись
+gloda.message.attr.account.includeLabel=хранится в любой из:
+gloda.message.attr.account.excludeLabel=не хранится в:
+gloda.message.attr.account.remainderLabel=другие учётные записи:
+gloda.message.attr.account.mustMatchLabel=должно быть в #1
+gloda.message.attr.account.cantMatchLabel=не может быть в #1
+
+# LOCALIZATION NOTE (gloda.message.attr.folder.*): Stores the message folder in
+# which the message is stored.
+gloda.message.attr.folder.facetNameLabel=Папка
+gloda.message.attr.folder.includeLabel=хранится в любой из:
+gloda.message.attr.folder.excludeLabel=не хранится в:
+gloda.message.attr.folder.remainderLabel=другие папки:
+gloda.message.attr.folder.mustMatchLabel=должно хранится в #1
+gloda.message.attr.folder.cantMatchLabel=не может хранится в #1
+
+# LOCALIZATION NOTE (gloda.message.attr.fromMe.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.fromMe.facetNameLabel=От меня
+
+# LOCALIZATION NOTE (gloda.message.attr.toMe.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.toMe.facetNameLabel=Для меня
+
+# LOCALIZATION NOTE (gloda.message.attr.involves.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.involves.facetNameLabel=Люди
+gloda.message.attr.involves.includeLabel=затрагивающий любого из:
+gloda.message.attr.involves.excludeLabel=не затрагивающий:
+gloda.message.attr.involves.remainderLabel=другие участники:
+gloda.message.attr.involves.mustMatchLabel=должен затрагивать #1
+gloda.message.attr.involves.cantMatchLabel=не может затрагивать #1
+
+# LOCALIZATION NOTE (gloda.message.attr.date.*): Stores the date of the message.
+# Thunderbird normally stores the date the message claims it was composed
+# according to the "Date" header. This is not the same as when the message
+# was sent or when it was eventually received by the user. In the future we
+# may change this to be one of the other dates, but not anytime soon.
+gloda.message.attr.date.facetNameLabel=Дата
+
+# LOCALIZATION NOTE (gloda.message.attr.attachmentTypes.*): Stores the list of
+# MIME types (ex: image/png, text/plain) of real attachments (not just part of
+# the message content but explicitly named attachments) on the message.
+# Although we hope to be able to provide localized human-readable explanations
+# of the MIME type (ex: "PowerPoint document"), I don't know if that is going
+# to happen.
+gloda.message.attr.attachmentTypes.facetNameLabel=Вложения
+
+# LOCALIZATION NOTE (gloda.message.attr.mailing-list.*): Stores the mailing
+# lists detected in the message. This will normally be the e-mail address of
+# the mailing list and only be detected in messages received from the mailing
+# list. Extensions may contribute additional detected mailing-list-like
+# things.
+gloda.message.attr.mailing-list.facetNameLabel=Список рассылки
+gloda.message.attr.mailing-list.noneLabel=Нет
+gloda.message.attr.mailing-list.includeLabel=получено в любом из:
+gloda.message.attr.mailing-list.excludeLabel=не получено в любом из:
+gloda.message.attr.mailing-list.remainderLabel=другие списки рассылки:
+gloda.message.attr.mailing-list.mustMatchLabel=должно быть в #1
+gloda.message.attr.mailing-list.cantMatchLabel=не может быть в #1
+gloda.message.attr.mailing-list.mustMatchSomeLabel=должно быть в списке рассылки
+gloda.message.attr.mailing-list.mustMatchNoneLabel=не может быть в списке рассылки
+
+# LOCALIZATION NOTE (gloda.message.attr.tag.*): Stores the tags applied to the
+# message. Notably, gmail's labels are not currently exposed via IMAP and we
+# do not do anything clever with gmail, so this is independent of gmail labels
+# This may change in the future, but it's a safe bet it's not happening on
+# Thunderbird's side prior to 3.0.
+gloda.message.attr.tag.facetNameLabel=Метки
+gloda.message.attr.tag.noneLabel=Нет
+gloda.message.attr.tag.includeLabel=с любой из меток:
+gloda.message.attr.tag.excludeLabel=без меток:
+gloda.message.attr.tag.remainderLabel=другие метки:
+gloda.message.attr.tag.mustMatchLabel=должно быть с меткой #1
+gloda.message.attr.tag.cantMatchLabel=не может быть с меткой #1
+gloda.message.attr.tag.mustMatchSomeLabel=должно быть помечено
+gloda.message.attr.tag.mustMatchNoneLabel=не может быть помечено
+
+# LOCALIZATION NOTE (gloda.message.attr.star.*): Stores whether the message is
+# starred or not, as indicated by a pretty star icon. In the past, the icon
+# used to be a flag. The IMAP terminology continues to be "flagged".
+gloda.message.attr.star.facetNameLabel=Звёздочка
+
+# LOCALIZATION NOTE (gloda.message.attr.read.*): Stores whether the user has
+# read the message or not.
+gloda.message.attr.read.facetNameLabel=Прочитано
+
+# LOCALIZATION NOTE (gloda.message.attr.repliedTo.*): Stores whether we believe
+# the user has ever replied to the message. We normally show a little icon in
+# the thread pane when this is the case.
+gloda.message.attr.repliedTo.facetNameLabel=В ответ на
+
+# LOCALIZATION NOTE (gloda.message.attr.forwarded.*): Stores whether we believe
+# the user has ever forwarded the message. We normally show a little icon in
+# the thread pane when this is the case.
+gloda.message.attr.forwarded.facetNameLabel=Переслано
+
+# LOCALIZATION NOTE (gloda.mimetype.category.*.label): Map categories of MIME
+# types defined in MimeTypeCategories.jsm to labels.
+# LOCALIZATION NOTE (gloda.mimetype.category.archives.label): Archive is
+# referring to things like zip files, tar files, tar.gz files, etc.
+gloda.mimetype.category.archives.label=Архивы
+gloda.mimetype.category.documents.label=Документы
+gloda.mimetype.category.images.label=Изображения
+# LOCALIZATION NOTE (gloda.mimetype.category.media.label): Media is meant to
+# encompass both audio and video. This is because video and audio streams are
+# frequently stored in the same type of container and we cannot rely on the
+# sending e-mail client to have been clever enough to figure out what was
+# really in the file. So we group them together.
+gloda.mimetype.category.media.label=Медиа (Аудио, Видео)
+gloda.mimetype.category.pdf.label=PDF-файлы
+# LOCALIZATION NOTE (gloda.mimetype.category.other.label): Other is the category
+# for MIME types that we don't really know what it is.
+gloda.mimetype.category.other.label=Другие
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaComplete.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaComplete.properties
new file mode 100644
index 0000000000..defce23a11
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaComplete.properties
@@ -0,0 +1,19 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (glodaComplete.messagesTagged.label): The label used
+# in the autocomplete widget to refer to a query for all messages tagged
+# by a particular tag (replacing #1).
+glodaComplete.messagesTagged.label=Сообщения отмеченные: #1
+
+# LOCALIZATION NOTE (glodaComplete.messagesMentioning.label): The label used
+# in the autocomplete widget to refer to a search for all messages mentioning
+# a particular word (replacing #1).
+glodaComplete.messagesMentioning.label=Сообщения упоминающие: #1
+
+# LOCALIZATION NOTE (glodaComplete.messagesWithMany.label): The label used
+# in the autocomplete widget to refer to a search for all messages mentioning
+# a set of words, or a phrase containing multiple words (e.g. "red pepper")
+# We use the same words in en-US, but maybe that's not always true.
+glodaComplete.messagesMentioningMany.label=Сообщения упоминающие: #1
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaFacetView.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaFacetView.dtd
new file mode 100644
index 0000000000..231c3b291c
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaFacetView.dtd
@@ -0,0 +1,29 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- LOCALIZATION NOTE (glodaFacetView.filters.label): Label at the top of the
+ faceting sidebar. Serves as a header both for the checkboxes under it as
+ well for labeled facets with multiple options. -->
+<!ENTITY glodaFacetView.filters.label "Фильтры">
+
+<!-- LOCALIZATION NOTE (glodaFacetView.loading.label): Label that appears when
+ the search results take a long time to appear. -->
+<!ENTITY glodaFacetView.loading.label "Поиск…">
+
+<!-- LOCALIZATION NOTE (glodaFacetView.empty.label): Label that appears when
+ there are no results that match the search query. -->
+<!ENTITY glodaFacetView.empty.label "Ваш запрос не вернул результатов">
+
+<!-- LOCALIZATION NOTE (glodaFacetView.pageMore.label): Label at the bottom
+ of the results list to show more hits. -->
+<!ENTITY glodaFacetView.pageMore.label "Ещё »">
+
+<!-- LOCALIZATION NOTE(glodaFacetView.results.message.openEmailAsList.label2): The
+ label for the button/link that causes us to display all of the emails in
+ the active set in a new thread pane display tab. -->
+<!ENTITY glodaFacetView.openEmailAsList.label "Показать результаты в виде списка">
+
+<!-- LOCALIZATION NOTE(glodaFacetView.results.message.openEmailAsList.tooltip):
+ The tooltip to display when hovering over the openEmailAsList label. -->
+<!ENTITY glodaFacetView.openEmailAsList.tooltip "Показать все почтовые сообщения в активном наборе на новой вкладке">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaFacetView.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaFacetView.properties
new file mode 100644
index 0000000000..42a47a5b1e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/glodaFacetView.properties
@@ -0,0 +1,171 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (glodaFacetView.tab.query.label):
+# The tab title to display for tabs that are based on a gloda (global database)
+# query or collection rather than a user search. At some point we might try
+# and explain what the query/collection is in automatic fashion, but not today.
+glodaFacetView.tab.query.label=Поиск
+
+# LOCALIZATION NOTE (glodaFacetView.tab.search.label):
+# The tab title to display for tabs with a new gloda (global database)
+# user search (rather than a query or collection) without a search string.
+# After the search has been started, we just display the search string entered
+# by the user.
+glodaFacetView.tab.search.label=Поиск
+
+# LOCALIZATION NOTE(glodaFacetView.search.label2):
+# The heading for the search page.
+# A short description of user's search query will be appended.
+glodaFacetView.search.label2=Результаты для:
+
+# LOCALIZATION NOTE(glodaFacetView.constraints.query.fulltext.label):
+# The label to display to describe when our base query was a fulltext search
+# across messages. The value is displayed following the label.
+glodaFacetView.constraints.query.fulltext.label=Искать по #1
+glodaFacetView.constraints.query.fulltext.andJoinWord=и
+glodaFacetView.constraints.query.fulltext.orJoinWord=или
+
+# LOCALIZATION NOTE(glodaFacetView.constraints.query.initial):
+# The label to display to describe when our base query is not a full-text
+# search. Additional labels are appended describing each constraint.
+glodaFacetView.constraints.query.initial=Поиск сообщений
+
+# LOCALIZATION NOTE(glodaFacetView.constraints.query.involves.label):
+# The label to display to describe when our base query was on messages
+# involving a given contact from the address book. The value is displayed
+# where the #1 is.
+glodaFacetView.constraints.query.involves.label=затрагивающий #1
+
+# LOCALIZATION NOTE(glodaFacetView.constraints.query.contact.label):
+# The label to display to describe when our base query was on messages
+# tagged with a specific tag. The tag is displayed following the label.
+glodaFacetView.constraints.query.tagged.label=с меткой:
+
+
+# LOCALIZATION NOTE (glodaFacetView.facets.mode.top.listAllLabel): The label to
+# use when we are only displaying the top entries for a facet. When the
+# label is clicked on, it results in us displaying all of the values for that
+# facet. The value "#1" (if present) is replaced with the total number of
+# values that will be displayed (rather than the number currently hidden).
+# This string supports pluralization. See
+# https://developer.mozilla.org/en/Localization_and_Plurals for details on
+# how this stuff works.
+glodaFacetView.facets.mode.top.listAllLabel=Отобразить все #1;Отобразить все #1;Отобразить все #1
+
+# LOCALIZATION NOTE (glodaFacetView.facets.included.fallbackLabel): The label to
+# use for groups in a facet that have been explicitly included by the user if
+# there is no explicit attribute "includeLabel" defined. (The explicit label
+# would be named "gloda.message.attr.ATTRIBUTE.includeLabel".)
+glodaFacetView.facets.included.fallbackLabel=включая любые из:
+# LOCALIZATION NOTE (glodaFacetView.facets.excluded.fallbackLabel): The label to
+# use for groups in a facet that have been explicitly excluded by the user if
+# there is no explicit attribute "excludeLabel" defined. (The explicit label
+# would be named "gloda.message.attr.ATTRIBUTE.excludeLabel".)
+glodaFacetView.facets.excluded.fallbackLabel=исключающих:
+# LOCALIZATION NOTE (glodaFacetView.facets.remainder.fallbackLabel): The label
+# to use for groups in a facet that are neither part of the included group or
+# the excluded group if there is no explicit attribute "remainderLabel"
+# defined. (The explicit label would be named
+# "gloda.message.attr.ATTRIBUTE.remainderLabel".)
+glodaFacetView.facets.remainder.fallbackLabel=другие:
+
+# LOCALIZATION NOTE (glodaFacetView.facets.mustMatchLabel.fallbackLabel): The label
+# to use to restrict a facet by a particular value if there is no explicit
+# attribute "mustMatchLabel" defined. (The explicit label would be named
+# "gloda.message.attr.ATTRIBUTE.mustMatchLabel".)
+glodaFacetView.facets.mustMatchLabel.fallbackLabel=должно подходить под #1
+glodaFacetView.facets.mustMatchNoneLabel.fallbackLabel=не может иметь значение
+
+# LOCALIZATION NOTE (glodaFacetView.facets.cantMatchLabel.fallbackLabel): The label
+# to use to restrict a facet by the absence of a particular value if there is
+# no explicit attribute "cantMatchLabel" defined. (The explicit label would be
+# named "gloda.message.attr.ATTRIBUTE.cantMatchLabel".)
+glodaFacetView.facets.cantMatchLabel.fallbackLabel=не может подходить под #1
+glodaFacetView.facets.mustMatchSomeLabel.fallbackLabel=должно иметь значение
+
+# LOCALIZATION NOTE (glodaFacetView.facets.mayMatchLabel.fallbackLabel): The label
+# to use to undo the restriction of a facet by a particular value if there is
+# no explicit attribute "mayMatchLabel" defined. (The explicit label would be
+# named "gloda.message.attr.ATTRIBUTE.mayMatchLabel".)
+glodaFacetView.facets.mayMatchLabel.fallbackLabel=удалить ограничение
+glodaFacetView.facets.mayMatchAnyLabel.fallbackLabel=удалить ограничение
+
+# LOCALIZATION NOTE (glodaFacetView.facets.noneLabel): The text to display when
+# a facet needs to indicate that an attribute omitted a value or was otherwise
+# empty.
+glodaFacetView.facets.noneLabel=Ничего
+
+# LOCALIZATION NOTE (glodaFacetView.facets.filter.attachmentTypes.allLabel):
+# The label to use when all types of attachments are being displayed.
+glodaFacetView.facets.filter.attachmentTypes.allLabel=Любой вид
+
+# LOCALIZATION NOTE (glodaFacetView.result.message.fromLabel): Used in the
+# faceted search message display to indicate the author of a message.
+# An example usage is "from: Bob".
+glodaFacetView.result.message.fromLabel=от:
+
+# LOCALIZATION NOTE (glodaFacetView.result.message.toLabel): Used in the
+# faceted search message display to indicate the recipients of a message.
+# An example usage is "to: Bob, Chuck, Don".
+glodaFacetView.result.message.toLabel=для:
+
+# LOCALIZATION NOTE (glodaFacetView.result.message.noSubject): Used in the
+# faceted search message display to act as a click target for messages with
+# no subject.
+glodaFacetView.result.message.noSubject=(без темы)
+
+# LOCALIZATION NOTE(glodaFacetView.results.header.countLabel):
+# This label is displayed above the list of result messages; it tells the user
+# how many messages we are displaying in the list out of the total number of
+# messages in the active set (the set of messages remaining after the
+# application of the facet constraints.)
+# The goal of the various sub-parts here is to make a label along the lines of
+# "M of N". Because there are two numbers, this is split into two parts,
+# 'NMessages' for what in English is just the first number and 'ofN' for the
+# "of N" part. We then use 'grouping' to decide how to combine the two. This
+# was suggested by Rimas Kudelis.
+# LOCALIZATION NOTE(glodaFacetView.results.header.countLabel.NMessages):
+# The first part of the countLabel string (although you can change the order
+# in 'grouping'). This is pluralized using the mechanism described at
+# https://developer.mozilla.org/en/Localization_and_Plurals. We replace
+# "#1" with the number of messages being shown in the result list.
+glodaFacetView.results.header.countLabel.NMessages=#1;#1;#1
+# LOCALIZATION NOTE(glodaFacetView.results.header.countLabel.ofN):
+# The second part of the countLabel string (although you can change the order
+# in 'grouping'). This is pluralized using the mechanism described at
+# https://developer.mozilla.org/en/Localization_and_Plurals. We replace
+# "#1" with the total number of messagse in the active set.
+glodaFacetView.results.header.countLabel.ofN=из #1;из #1;из #1
+# LOCALIZATION NOTE(glodaFacetView.results.header.countLabel.grouping):
+# Combines the pluralized
+# "glodaFacetView.results.header.countLabel.NMessages" string (as #1) with
+# the pluralized "glodaFacetView.results.header.countLabel.ofN" (as #2)
+# to make a single label.
+glodaFacetView.results.header.countLabel.grouping=#1 #2
+
+glodaFacetView.results.message.timeline.label=Показать/скрыть шкалу времени
+# LOCALIZATION NOTE(glodaFacetView.results.message.sort.relevance2):
+# a clickable label causing the sort to be done by most relevant messages first.
+glodaFacetView.results.message.sort.relevance2=Сортировать по релевантности
+# LOCALIZATION NOTE(glodaFacetView.results.message.sort.date2):
+# a clickable label causing the sort to be done by most recent messages first.
+glodaFacetView.results.message.sort.date2=Сортировать по дате
+
+# LOCALIZATION NOTE(glodaFacetView.results.message.recipientSeparator): This is
+# the string in between the names of recipients (see
+# glodaFacetView.results.message.andOthers for more information). The \u0020
+# character is a Unicode space character, which is needed as otherwise the
+# trailing whitespace is trimmed before it gets to the code.
+glodaFacetView.results.message.recipientSeparator=,\u0020
+
+# LOCALIZATION NOTE(glodaFacetView.results.message.andOthers):
+# When a message has too many recipients, we only show the first few and then
+# display this label to express how many are not displayed. So if a message
+# has 5 recipients, we might only show the first 3, and then use this label
+# to indicate that there are 2 that are not displayed. This string can be
+# pluralized; see https://developer.mozilla.org/en/Localization_and_Plurals
+# for details on how to do that. Note that in English, we use the "serial
+# comma", but other languages may not need a leading separator there.
+glodaFacetView.results.message.andOthers=, и #1 другой;, и #1 других;, и #1 других
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imAccountWizard.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imAccountWizard.dtd
new file mode 100644
index 0000000000..a0463c2b6f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imAccountWizard.dtd
@@ -0,0 +1,32 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY windowTitle.label "Мастер создания учетной записи чата">
+
+<!ENTITY accountProtocolTitle.label "Протокол чата">
+<!ENTITY accountProtocolInfo.label "Выберите протокол для вашей учетной записи из этого списка.">
+<!ENTITY accountProtocolField.label "Протокол:">
+<!ENTITY accountProtocolGetMore.label "Загрузить больше…">
+
+<!ENTITY accountUsernameTitle.label "Имя пользователя">
+<!ENTITY accountUsernameDuplicate.label "Эта учетная запись уже существует!">
+
+<!ENTITY accountPasswordTitle.label "Пароль">
+<!ENTITY accountPasswordInfo.label "Введите ваш пароль в поле ниже.">
+<!ENTITY accountPasswordField.label "Пароль:">
+<!ENTITY accountPasswordManager.label "Введённый здесь пароль будет сохранён в Менеджере паролей. Если вы хотите, чтобы у вас запрашивали пароль при каждом подключении этой учётной записи, оставьте это поле пустым.">
+
+<!ENTITY accountAdvancedTitle.label "Дополнительные настройки">
+<!ENTITY accountAdvancedInfo.label "Вы можете пропустить этот шаг, если хотите.">
+<!ENTITY accountAdvanced.newMailNotification.label "Уведомлять о новой почте">
+<!ENTITY accountAliasGroupbox.caption "Локальный псевдоним">
+<!ENTITY accountAliasField.label "Псевдоним:">
+<!ENTITY accountAliasInfo.label "Он будет отображаться только при разговорах с вашими собеседниками, другие контакты не смогут его видеть.">
+<!ENTITY accountProxySettings.caption "Настройки прокси">
+<!ENTITY accountProxySettings.change.label "Изменить…">
+<!ENTITY accountProxySettings.change.accessKey "м">
+
+<!ENTITY accountSummaryTitle.label "Сводка">
+<!ENTITY accountSummaryInfo.label "Эта сводка содержит всю введённую вами информацию. Проверьте её правильность перед созданием учетной записи.">
+<!ENTITY accountSummary.connectNow.label "Включить учетную запись.">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imAccounts.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imAccounts.properties
new file mode 100644
index 0000000000..4b540c1336
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imAccounts.properties
@@ -0,0 +1,63 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (protoOptions):
+# %S is replaced by the name of a protocol
+protoOptions=Настройки %S
+accountUsername=Имя пользователя:
+# LOCALIZATION NOTE (accountColon):
+# This string is used to append a colon after the label of each
+# option. It's localizable so that the typography can be adapted.
+accountColon=%S:
+# LOCALIZATION NOTE (accountUsernameInfo):
+# %S is replaced by the name of a protocol
+accountUsernameInfo=Введите имя пользователя для учётной записи %S.
+# LOCALIZATION NOTE (accountUsernameInfoWithDescription):
+# %1$S is a hint for the expected format of the username
+# %2$S is the name of a protocol
+accountUsernameInfoWithDescription=Введите имя пользователя (%1$S) для учётной записи %2$S.
+
+# LOCALIZATION NOTE (account.connection.error):
+# %S is the error message.
+account.connection.error=Ошибка: %S
+# LOCALIZATION NOTE (account.connection.errorUnknownPrpl)
+# %S is the id (not very user friendly; hence the quotes) of the missing plugin.
+account.connection.errorUnknownPrpl=Нет плагина протокола '%S'.
+account.connection.errorEnteringPasswordRequired=Для подключения этой учётной записи требуется пароль.
+account.connection.errorCrashedAccount=Произошло падение при подключении этой учётной записи.
+# LOCALIZATION NOTE (account.connection.progress):
+# %S is a message indicating progress of the connection process
+account.connection.progress=Подключение: %S…
+account.connecting=Подключение…
+account.connectedForSeconds=Подключён несколько секунд.
+# LOCALIZATION NOTE (account.connectedFor{Double,Single},
+# account.reconnectIn{Double,Single}):
+# Each pair of %S is a number followed by a unit. The units are
+# already localized in a downloads.properties file of the toolkit.
+account.connectedForDouble=Подключён %1$S %2$S и %3$S %4$S.
+account.connectedForSingle=Подключён %1$S %2$S.
+account.reconnectInDouble=Повторное подключение через %1$S %2$S и %3$S %4$S.
+account.reconnectInSingle=Повторное подключение через %1$S %2$S.
+
+requestAuthorizeTitle=Запрос авторизации
+# LOCALIZATION NOTE (requestAuthorizeAllow, requestAuthorizeDeny):
+# the & symbol indicates the position of the character that should be
+# used as the accesskey for this button.
+requestAuthorizeAllow=&Разрешить
+requestAuthorizeDeny=&Отклонить
+# LOCALIZATION NOTE (requestAuthorizeText):
+# %S is a contact username.
+requestAuthorizeText=%S добавил вас в свой список собеседников, разрешить ему видеть вас?
+
+accountsManager.notification.button.accessKey=к
+accountsManager.notification.button.label=Включить сейчас
+accountsManager.notification.userDisabled.label=Автоматические подключения отключены.
+accountsManager.notification.safeMode.label=Параметры автоматических подключений были проигнорированы из-за запуска приложения в безопасном режиме.
+accountsManager.notification.startOffline.label=Параметры автоматических подключений были проигнорированы из-за запуска приложения в автономном режиме.
+accountsManager.notification.crash.label=Последний запуск неожиданно прервался при подключении. Автоматические подключения были отключены, чтобы дать вам возможность изменить ваши настройки.
+# LOCALIZATION NOTE (accountsManager.notification.singleCrash.label): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of accounts that are suspected to have caused a crash.
+accountsManager.notification.singleCrash.label=Предыдущий запуск неожиданно прервался при подключении новой или изменённой учётной записи. Она не была подключена, поэтому вы можете изменить её настройки.;Предыдущий запуск неожиданно прервался при подключении #1 новых или изменённых учётных записей. Они не были подключены, поэтому вы можете изменить их настройки.;Предыдущий запуск неожиданно прервался при подключении #1 новых или изменённых учётных записей. Они не были подключены, поэтому вы можете изменить их настройки.
+accountsManager.notification.other.label=Автоматическое подключение отключено.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imapMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imapMsgs.properties
new file mode 100644
index 0000000000..025fab0c62
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/imapMsgs.properties
@@ -0,0 +1,266 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by the imap code to display progress/status/error messages
+#
+
+#LOCALIZATION NOTE(imapAlertDialogTile): Do not translate the word "%S"
+# below. Place the word %S where the account name should appear.
+imapAlertDialogTitle=Уведомление для учётной записи %S
+
+# Status - opening folder
+imapStatusSelectingMailbox=Открытие папки «%S»…
+
+# Status - create folder
+imapStatusCreatingMailbox=Создание папки…
+
+# Status - deleting a folder
+# LOCALIZATION NOTE (imapStatusDeletingMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being deleted.
+imapStatusDeletingMailbox=Удаление папки «%S»…
+
+# Status - renaming mailbox
+# LOCALIZATION NOTE (imapStatusRenamingMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being renamed.
+imapStatusRenamingMailbox=Переименование папки «%S»…
+
+# Status - looking for mailboxes
+imapStatusLookingForMailbox=Поиск папок…
+
+# Status - subscribing to mailbox
+# LOCALIZATION NOTE (imapStatusSubscribeToMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being subscribed to.
+imapStatusSubscribeToMailbox=Подписка на папку «%S»…
+
+# Status - unsubscribing from mailbox
+# LOCALIZATION NOTE (imapStatusUnsubscribeMailbox): The "%S" below should not be translated.
+# Instead, insert "%S" in your translation where you wish to display the name
+# of the folder being unsubscribed from.
+imapStatusUnsubscribeMailbox=Отписка от папки «%S»…
+
+# Status - searching imap folder
+imapStatusSearchMailbox=Поиск в папке…
+
+# Status - closing a folder
+imapStatusCloseMailbox=Закрытие папки…
+
+# Status - compacting a folder
+imapStatusExpungingMailbox=Сжатие папки…
+
+# Status - logging out
+imapStatusLoggingOut=Выход из системы…
+
+# Status - checking server capabilities
+imapStatusCheckCompat=Проверка характеристик сервера…
+
+# Status - logging on
+imapStatusSendingLogin=Отправка регистрационной информации…
+
+# Status - auth logon
+imapStatusSendingAuthLogin=Отправка регистрационной информации…
+
+imapDownloadingMessage=Загрузка сообщения…
+
+# LOCALIZATION NOTE (imapGettingACLForFolder): Do not translate the word "ACL" below.
+imapGettingACLForFolder=Получение списка контроля доступа к папке…
+
+imapGettingServerInfo=Получение информации о настройках сервера…
+
+imapGettingMailboxInfo=Получение информации о настройках почтового ящика…
+
+imapEmptyMimePart=Эта часть сообщения будет загружена по первому требованию.
+
+# LOCALIZATION NOTE (imapReceivingMessageHeaders3): Do not translate the words "%1$S", "%2$S", and "%3$S" below.
+# Place the word %1$S in your translation where the number of the header being downloaded should appear.
+# Place the word %2$S in your translation where the total number of headers to be downloaded should appear.
+# Place the word %3$S in your translation where the name of the folder being processed should appear.
+# Note: The account name and separators (e.g. colon, space) are automatically added to the status message.
+# Example: "Joe's Account: Downloading message header 100 of 1000 in Drafts…"
+imapReceivingMessageHeaders3=Загрузка заголовка сообщения %1$S из %2$S в папке %3$S…
+
+# LOCALIZATION NOTE (imapReceivingMessageFlags3): Do not translate the words "%1$S", "%2$S", and "%3$S" below.
+# Place the word %1$S in your translation where the number of the flag being downloaded should appear.
+# Place the word %2$S in your translation where the total number of flags to be downloaded should appear.
+# Place the word %3$S in your translation where the name of the folder being processed should appear.
+# Note: The account name and separators (e.g. colon, space) are automatically added to the status message.
+# Example: "Jim's Account: Downloading message flag 100 of 1000 in INBOX…"
+imapReceivingMessageFlags3=Загрузка флага сообщения %1$S из %2$S в папке %3$S…
+
+imapDeletingMessages=Удаление сообщений…
+
+imapDeletingMessage=Удаление сообщения…
+
+# LOCALIZATION NOTE (imapMovingMessages): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapMovingMessages=Перемещение сообщений в «%S»…
+
+# LOCALIZATION NOTE (imapMovingMessage): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapMovingMessage=Перемещение сообщения в «%S»…
+
+# LOCALIZATION NOTE (imapCopyingMessages): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapCopyingMessages=Копирование сообщений в «%S»…
+
+# LOCALIZATION NOTE (imapCopyingMessage): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapCopyingMessage=Копирование сообщения в «%S»…
+
+# LOCALIZATION NOTE (imapFolderReceivingMessageOf3): Do not translate the words "%1$S", "%2$S", and "%3$S" below.
+# Place the word %1$S in your translation where the number of the message being downloaded should appear.
+# Place the word %2$S in your translation where the total number of messages to be downloaded should appear.
+# Place the word %3$S in your translation where the name of the folder being processed should appear.
+# Note: The account name and separators (e.g. colon, space) are automatically added to the status message.
+# Example: "Juan's Account: Downloading message 100 of 1000 in Sent…"
+imapFolderReceivingMessageOf3=Загрузка сообщения %1$S из %2$S в папке %3$S…
+
+# LOCALIZATION NOTE (imapDiscoveringMailbox): Do not translate the word "%S" below.
+# Place the word %S in your translation where the name of the folder should appear.
+imapDiscoveringMailbox=Найдена папка: «%S»
+
+# LOCALIZATION NOTE (imapEnterServerPasswordPrompt): Do not translate the words %1$S and %2$S below.
+# Place the word %1$S in your translation where the username should appear.
+# Place the word %2$S in your translation where the servername should appear.
+imapEnterServerPasswordPrompt=Введите пароль для %1$S на %2$S:
+
+# LOCALIZATION NOTE (imapServerNotImap4): Do not translate the word "IMAP4" below.
+imapServerNotImap4=Почтовый сервер «%S» не является сервером IMAP4.
+
+# This is intentionally left blank.
+imapDone=
+
+# LOCALIZATION NOTE (imapEnterPasswordPromptTitleWithUsername): Do not translate the
+# word %1$S. Place the word %1$S where the user name should appear.
+imapEnterPasswordPromptTitleWithUsername=Введите пароль для %1$S
+
+imapUnknownHostError=Ошибка соединения с сервером «%S».
+imapOAuth2Error=Ошибка аутентификации при соединении с сервером %S.
+
+imapConnectionRefusedError=Не удалось соединиться с сервером «%S»; в соединении отказано.
+
+imapNetTimeoutError=Время ожидания соединения с сервером «%S» истекло.
+
+imapTlsError=Неустранимая ошибка TLS. Произошла ошибка рукопожатия или, возможно, версия TLS или сертификат, используемые сервером %S, несовместимы.
+
+# Status - no messages to download
+imapNoNewMessages=На сервере нет новых сообщений.
+
+imapDefaultAccountName=Почта для «%S»
+
+imapSpecialChar2=Символ %S зарезервирован на этом IMAP-сервере. Выберите другое имя.
+
+imapPersonalSharedFolderTypeName=Личная папка
+
+imapPublicFolderTypeName=Общая папка
+
+imapOtherUsersFolderTypeName=Папка другого пользователя
+
+imapPersonalFolderTypeDescription=Это личная папка. Она открыта только для владельца.
+
+imapPersonalSharedFolderTypeDescription=Это личная папка. Она была открыта на доступ.
+
+imapPublicFolderTypeDescription=Это общая папка.
+
+imapOtherUsersFolderTypeDescription=Эта папка используется совместно с пользователем «%S».
+
+imapAclFullRights=Полный контроль
+
+imapAclLookupRight=Отображение папки
+
+imapAclReadRight=Просмотр сообщений
+
+imapAclSeenRight=Установка флага прочитано/не прочитано
+
+imapAclWriteRight=Изменение статуса сообщений
+
+imapAclInsertRight=Добавление (копирование в)
+
+imapAclPostRight=Отправка сообщений в папку
+
+imapAclCreateRight=Создание вложенных папок
+
+imapAclDeleteRight=Удаление сообщений
+
+imapAclAdministerRight=Управление доступом к папке
+
+imapServerDoesntSupportAcl=Сервер не поддерживает работу с общими папками.
+
+imapAclExpungeRight=Сжатие
+
+imapServerDisconnected= Произошло отключение от «%S». Возможно, сервер не работает, или возникли проблемы в сети.
+
+# LOCALIZATION NOTE (autoSubscribeText): %1$S is the imap folder.
+imapSubscribePrompt=Подписаться на «%1$S»?
+
+imapServerDroppedConnection=Не удалось подключиться к IMAP-серверу. Возможно, вы превысили ограничение на максимальное число соединений к этому серверу. Если это так, откройте диалоговое окно «Дополнительные параметры IMAP-сервера» и уменьшите число кешируемых соединений.
+
+# This will occur when a folder that has never been imap selected or opened
+# (left-clicked) is first right-clicked to access quota properties.
+imapQuotaStatusFolderNotOpen=Информация о квоте недоступна, потому что папка не открыта.
+
+# The imap capability response reports that QUOTA is not supported.
+imapQuotaStatusNotSupported=Сервер не поддерживает квоты.
+
+# The getqutaroot command succeeded but reported no quota information.
+imapQuotaStatusNoQuota2=Нет информации о квоте для данной папки.
+
+# Folder properties were requested by the user (right-click) before the getquotaroot
+# command was sent.
+imapQuotaStatusInProgress=Информация о квоте пока недоступна.
+
+# Out of memory
+imapOutOfMemory=Недостаточно памяти для работы приложения.
+
+# LOCALIZATION NOTE (imapCopyingMessageOf2): Do not translate the word "%S" below.
+# Place the word %3$S in your translation where the name of the destination folder should appear.
+# Place the word %1$S where the currently copying message should appear.
+# Place the word %2$S where the total number of messages should appear.
+imapCopyingMessageOf2=Идёт копирование сообщений в папку «%3$S»: %1$S из %2$S…
+
+# LOCALIZATION NOTE (imapMoveFolderToTrash): Do not translate the word %S below.
+# "%S" is the the name of the folder.
+imapMoveFolderToTrash=Вы действительно хотите удалить папку «%S»?
+
+# LOCALIZATION NOTE (imapDeleteNoTrash): Do not translate the word %S below.
+# "%S" is the the name of the folder.
+imapDeleteNoTrash=Удаление этой папки невозможно отменить, и оно приведет к удалению всех содержащихся в ней сообщений и папок. Вы действительно хотите удалить папку «%S»?
+
+imapDeleteFolderDialogTitle=Удалить папку
+
+imapDeleteFolderButtonLabel=&Удалить папку
+
+# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainSSL): %S is the server hostname
+imapAuthChangeEncryptToPlainSSL=Похоже, что IMAP-сервер «%S» не поддерживает использование зашифрованных паролей. Если вы только что создали учётную запись, пожалуйста, попробуйте сменить «Метод аутентификации» на «Обычный пароль» в «Параметрах учётной записи | Параметры сервера». Если это работало раньше, а теперь внезапно перестало работать, пожалуйста, свяжитесь в вашим администратором электронной почты или провайдером.
+
+# LOCALIZATION NOTE (imapAuthChangePlainToEncrypt): %S is the server hostname
+imapAuthChangePlainToEncrypt=IMAP-сервер «%S» не разрешает использование обычных текстовых паролей. Пожалуйста, попробуйте сменить «Метод аутентификации» на «Зашифрованный пароль» в «Параметрах учётной записи | Параметры сервера».
+
+# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainNoSSL): %S is the server hostname
+imapAuthChangeEncryptToPlainNoSSL=Похоже, что IMAP-сервер «%S» не поддерживает использование зашифрованных паролей. Если вы только что создали учётную запись, пожалуйста, попробуйте сменить «Метод аутентификации» на «Пароль, без защиты передачи» в «Параметрах учётной записи | Параметры сервера». Если это работало раньше, а теперь внезапно перестало работать, обычно это означает, что кто-то мог украсть ваш пароль.
+
+# LOCALIZATION NOTE (imapAuthMechNotSupported): %S is the server hostname
+imapAuthMechNotSupported=IMAP-сервер «%S» не поддерживает выбранный метод аутентификации. Пожалуйста, измените «Метод аутентификации» в «Параметрах учётной записи | Параметры сервера».
+
+# LOCALIZATION NOTE (imapAuthGssapiFailed): %S is the server hostname
+imapAuthGssapiFailed=Билет Kerberos/GSSAPI не был принят IMAP-сервером «%S». Пожалуйста, проверьте, что вы вошли в Kerberos/GSSAPI realm.
+
+# LOCALIZATION NOTE (imapServerCommandFailed):
+# Place the word %1$S in your translation where the name of the account name should appear.
+# Place the word %2$S in your translation where the server response should appear.
+imapServerCommandFailed=Текущая команда не выполнена. Почтовый сервер для учётной записи «%1$S» ответил: %2$S\u0020
+
+# LOCALIZATION NOTE (imapFolderCommandFailed): Do not translate the word %S below.
+# Place the word %1$S in your translation where the name of the account should appear.
+# Place the word %2$S in your translation where the name of the folder should appear.
+# Place the word %3$S in your translation where the server response should appear.
+imapFolderCommandFailed=Текущая операция над «%2$S» не выполнена. Почтовый сервер для учётной записи «%1$S» ответил: %3$S
+
+# LOCALIZATION NOTE (imapServerAlert):
+# Place the word %1$S in your translation where the name of the account should appear.
+# Place the word %2$S in your translation where the alert from the server should appear.
+imapServerAlert=Предупреждение от учётной записи «%1$S»: %2$S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/importDialog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/importDialog.dtd
new file mode 100644
index 0000000000..b10189ccee
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/importDialog.dtd
@@ -0,0 +1,56 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!--
+LOCALIZATION NOTE : 'Communicator 4.x' is the used for previous versions of
+Netscape Communicator, Please translate using the brandname in respective
+languages for Netscape Communicator 4 releases.
+LOCALIZATION NOTE : Do not translate any of the occurrences of the word
+"&brandShortName;" below.
+-->
+
+<!--
+LOCALIZATION NOTE : 'Communicator 4.x' is the used for previous versions of
+Netscape Communicator, Please translate using the brandname in respective
+languages for Netscape Communicator 4 releases.
+LOCALIZATION NOTE : Do not translate any of the occurrences of the word
+"&brandShortName;" below.
+-->
+
+<!ENTITY importDialog.windowTitle "Импорт">
+<!ENTITY importAll.label "Импортировать всё">
+<!ENTITY importAll.accesskey "п">
+<!ENTITY importMail.label "Почту">
+<!ENTITY importMail.accesskey "ч">
+<!ENTITY importFeeds.label "Подписки на ленты новостей">
+<!ENTITY importFeeds.accesskey "и">
+<!ENTITY importAddressbook.label "Адресные книги">
+<!ENTITY importAddressbook.accesskey "д">
+<!ENTITY importSettings.label "Настройки">
+<!ENTITY importSettings.accesskey "с">
+<!ENTITY importFilters.label "Фильтры">
+<!ENTITY importFilters.accesskey "л">
+
+<!ENTITY importTitle.label "Мастер импорта &brandShortName;">
+<!ENTITY importShortDesc.label "Импорт почты, адресных книг, настроек и фильтров из других программ">
+
+<!ENTITY importDescription1.label "Мастер импортирует почтовые сообщения, содержимое адресных книг, подписки на ленты новостей, настройки и/или фильтры из других почтовых программ и распространённых форматов адресных книг в &brandShortName;.">
+<!ENTITY importDescription2.label "Импортированная однажды, эта информация будет доступна для вас из &brandShortName;.">
+
+<!ENTITY selectDescription.label "Выберите программу, из которой хотите произвести импорт:">
+<!ENTITY selectDescriptionB.label "Выберите существующую учётную запись или создайте новую учётную запись:">
+<!ENTITY selectDescription.accesskey "ы">
+<!ENTITY acctName.label "Имя:">
+<!ENTITY acctName.accesskey "м">
+<!ENTITY noModulesFound.label "Не найдено приложения или файла, из которого можно импортировать данные.">
+
+<!ENTITY back.label "&lt; Назад">
+<!ENTITY forward.label "Далее &gt;">
+<!ENTITY finish.label "Готово">
+<!ENTITY cancel.label "Отмена">
+
+<!ENTITY select.label "или выберите то, что хотите импортировать:">
+
+<!ENTITY title.label "Заголовок">
+<!ENTITY processing.label "Идёт импорт…">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/importMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/importMsgs.properties
new file mode 100644
index 0000000000..3345e7e110
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/importMsgs.properties
@@ -0,0 +1,304 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The following are used by the import code to display status/error
+# and informational messages
+
+# Success message when no address books are found to import
+## @name IMPORT_NO_ADDRBOOKS
+## @loc None
+2000=Адресные книги для импорта не были найдены.
+
+# Error: Address book import not initialized
+## @name IMPORT_ERROR_AB_NOTINITIALIZED
+## @loc None
+2001=Не удалось импортировать адресные книги: ошибка инициализации.
+
+# Error: Unable to create the import thread
+## @name IMPORT_ERROR_AB_NOTHREAD
+## @loc None
+2002=При импорте почтовых ящиков произошла ошибка: не удалось создать цепочку импорта.
+
+# Error: Unable to create the import thread
+## @name IMPORT_ERROR_GETABOOK
+## @loc None
+# LOCALIZATION NOTE (Error 2003): Do not translate the word "%S" below.
+2003=Ошибка импорта «%S»: не удалось создать адресную книгу.
+
+# Success message when no mailboxes are found to import
+## @name IMPORT_NO_MAILBOXES
+## @loc None
+2004=Почтовые ящики для импорта не были найдены
+
+# Error: Mailbox import not initialized
+## @name IMPORT_ERROR_MB_NOTINITIALIZED
+## @loc None
+2005=Не удалось импортировать почтовые ящики, ошибка инициализации
+
+# Error: Unable to create the import thread
+## @name IMPORT_ERROR_MB_NOTHREAD
+## @loc None
+2006=При импорте почтовых ящиков произошла ошибка: не удалось создать цепочку импорта.
+
+# Error: Unable to create the proxy object for importing mailboxes
+## @name IMPORT_ERROR_MB_NOPROXY
+## @loc None
+2007=При импорте почтовых ящиков произошла ошибка: не удалось создать промежуточный объект.
+
+# Error: Error creating destination mailboxes
+## @name IMPORT_ERROR_MB_FINDCHILD
+## @loc None
+# LOCALIZATION NOTE (Error 2008): Do not translate the word "%S" below.
+# Place %S in your translation where the name of the mailbox should appear.
+2008=Ошибка создания почтовых ящиков назначения, не удалось найти ящик «%S»
+
+# Error: Error creating destination mailboxes
+## @name IMPORT_ERROR_MB_CREATE
+## @loc None
+# LOCALIZATION NOTE (Error 2009): Do not translate the word "%S" below.
+# Place %S in your translation where the name of the mailbox should appear.
+2009=Ошибка импорта почтового ящика «%S», не удалось создать ящик, в который будет произведён импорт
+
+# Error: No destination folder to import mailboxes
+## @name IMPORT_ERROR_MB_NODESTFOLDER
+## @loc None
+2010=Не удалось создать папку для импорта почты
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC_START
+## @loc None
+2100=Имя
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2101=Фамилия
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2102=Отображаемое имя
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2103=Псевдоним
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2104=Адрес электронной почты
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2105=Альтернативный адрес электронной почты
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2106=Рабочий телефон
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2107=Домашний телефон
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2108=Номер факса
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2109=Номер пейджера
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2110=Номер мобильного телефона
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2111=Адрес
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2112=Адрес 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2113=Город
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2114=Регион
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2115=Почтовый индекс
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2116=Страна
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2117=Адрес (раб.)
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2118=Адрес 2 (раб.)
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2119=Город (раб.)
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2120=Регион (раб.)
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2121=Почтовый индекс (раб.)
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2122=Страна (раб.)
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2123=Должность
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2124=Отдел
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2125=Организация
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2126=Веб-страница 1
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2127=Веб-страница 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2128=Год рождения
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2129=Месяц рождения
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2130=День рождения
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2131=Прочее 1
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2132=Прочее 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2133=Прочее 3
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2134=Прочее 4
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2135=Заметки
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC_END
+## @loc None
+2136=Интернет-пейджер
+
+#Error strings
+ImportAlreadyInProgress=Процесс импорта уже начался. Попробуйте снова, когда он закончится.
+
+#Error strings for settings import
+ImportSettingsBadModule=Не удалось загрузить модуль настроек
+ImportSettingsNotFound=Настройки не найдены. Проверьте корректность установки почтовой программы на этой машине.
+ImportSettingsFailed=Ошибка импорта настроек. Некоторые или все настройки не могут быть импортированы.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportSettingsSuccess=Настройки из «%S» были импортированы
+
+#Error string for mail import
+ImportMailBadModule=Не удалось загрузить модуль импорта почты
+ImportMailNotFound=Не удалось найти почту для импорта. Проверьте корректность установки почтовой программы на этой машине.
+ImportEmptyAddressBook=Не удалось импортировать пустую адресную книгу «%S».
+# LOCALIZATION NOTE: Do not translate the word "%S" below.
+ImportMailFailed=При импорте почты из «%S» произошла ошибка
+# LOCALIZATION NOTE: Do not translate the word "%S" below.
+ImportMailSuccess=Почта из «%S» была успешно импортирована
+
+# Error string for address import
+ImportAddressBadModule=Не удалось загрузить модуль импорта адресной книги.
+ImportAddressNotFound=Адресную книгу для импорта найти не удалось. Проверьте корректность установки выбранного приложения или формата на этой машине.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportAddressFailed=Ошибка импорта адресов из «%S».
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportAddressSuccess=Адреса из «%S» были успешно импортированы.
+
+# Error string for filters import
+ImportFiltersBadModule=Не удалось загрузить модуль импорта фильтров.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersFailed=При импорте фильтров из %S произошла ошибка.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersSuccess=Фильтры из %S успешно импортированы.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersPartial=Фильтры из %S частично импортированы. Список предупреждений:
+
+#Progress strings
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+MailProgressMeterText=Преобразование почтовых ящиков «%S»
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+AddrProgressMeterText=Создание адресной книги из «%S»
+
+#Import file dialog strings
+ImportSelectSettings=Выберите файл настроек
+ImportSelectMailDir=Выберите почтовый каталог
+ImportSelectAddrDir=Выберите каталог адресной книги
+ImportSelectAddrFile=Выберите файл адресной книги
+
+# Folder Names for imported Mail
+DefaultFolderName=Импортированная почта
+# LOCALIZATION NOTE: Do not translate the word "%S" below.
+ImportModuleFolderName=Импорт из «%S»
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/joinChat.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/joinChat.dtd
new file mode 100644
index 0000000000..610f44bed4
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/joinChat.dtd
@@ -0,0 +1,10 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY joinChatWindow.title "Присоединение к чату">
+<!ENTITY name.label "Комната">
+<!ENTITY optional.label "(необязательно)">
+<!ENTITY account.label "Учётная запись">
+<!ENTITY autojoin.label "Присоединяться автоматически">
+<!ENTITY autojoin.accesskey "и">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/junkLog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/junkLog.dtd
new file mode 100644
index 0000000000..ee65dc52ce
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/junkLog.dtd
@@ -0,0 +1,10 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY adaptiveJunkLog.title "Журнал адаптивного анти-спам фильтра">
+<!ENTITY adaptiveJunkLogInfo.label "Журнал работы адаптивного анти-спам фильтра.">
+<!ENTITY clearLog.label "Очистить журнал">
+<!ENTITY clearLog.accesskey "ч">
+<!ENTITY closeLog.label "Закрыть">
+<!ENTITY closeLog.accesskey "к">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/localMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/localMsgs.properties
new file mode 100644
index 0000000000..05faaaa3d5
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/localMsgs.properties
@@ -0,0 +1,140 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by the local mail code to display progress/status/error messages
+#
+
+# LOCALIZATION NOTE(pop3ErrorDialogTitle): Do not translate the word "%S"
+# below. Place the word %S where the account name should appear.
+pop3ErrorDialogTitle=Ошибка учётной записи %S
+
+# LOCALIZATION NOTE (pop3EnterPasswordPromptTitleWithUsername): Do not translate the
+# word %1$S. Place the word %1$S where the user name should appear.
+pop3EnterPasswordPromptTitleWithUsername=Введите пароль для %1$S
+
+# LOCALIZATION NOTE(pop3EnterPasswordPrompt): Do not translate the words "%1$S"
+# and "%2$S" below. Place the word %1$S where the user name should appear, and
+# %2$S where the host name should appear.
+pop3EnterPasswordPrompt=Введите пароль для %1$S на %2$S:
+
+# LOCALIZATION NOTE(pop3PreviouslyEnteredPasswordIsInvalidPrompt): Do not
+# translate the words "%1$S" and "%2$S" below. Place the word %1$S where the
+# user name should appear, and %2$S where the host name should appear.
+pop3PreviouslyEnteredPasswordIsInvalidPrompt=Пожалуйста, введите новый пароль для пользователя %1$S на %2$S:
+
+# Status - Downloading message n of m
+# LOCALIZATION NOTE (receivingMessages): Do not translate %1$S or %2$S in the following lines.
+# Place the word %1$S where the number of messages downloaded so far should appear.
+# Place the word %2$S where the total number of messages to receive should appear;
+receivingMessages=Загрузка %1$S из %2$S сообщений…
+
+# Status - connecting to host
+hostContact=Соединение установлено, отсылается регистрационная информация…
+
+# Status - no messages to download
+noNewMessages=Нет новых сообщений.
+
+# Status - messages received after the download
+#LOCALIZATION NOTE : Do not translate %1$S or %2$S in the following line.
+# %1$S will receive the number of messages received
+# %2$S will receive the total number of messages
+receivedMsgs=Получено %1$S из %2$S сообщений
+
+# Status - parsing folder
+#LOCALIZATION NOTE (buildingSummary): Do not translate %S in the following line.
+# Place the word %S where the name of the mailbox should appear
+buildingSummary=Создание общего файла для «%S»…
+
+# Status - parsing folder
+localStatusDocumentDone=Готово
+
+# Status - pop3 server error
+#LOCALIZATION NOTE (pop3ServerError): Do not translate POP3 in the following line.
+pop3ServerError=Произошла ошибка почтового сервера POP3.
+
+# Status - pop3 user name failed
+pop3UsernameFailure=Не удалось отправить имя пользователя.
+
+# Status - password failed
+#LOCALIZATION NOTE (pop3PasswordFailed): Do not translate "%1$S" below.
+# Place the word %1$S where the user name should appear.
+pop3PasswordFailed=Не удалось отправить пароль для пользователя %1$S.
+
+# Status - write error occurred
+pop3MessageWriteError=Не удалось сохранить почту в почтовом ящике. Убедитесь, что у вас есть права на запись в файловую систему и достаточно места на диске для копирования в почтовый ящик.
+
+# Status - retr failure from the server
+pop3RetrFailure=Команда RETR не выполнена. Ошибка получения сообщения.
+
+# Status - password undefined
+pop3PasswordUndefined=Ошибка при получении почтового пароля.
+
+# Status - username undefined
+pop3UsernameUndefined=Вы не указали имя пользователя для этого сервера. Укажите его в меню параметров учётной записи и попробуйте снова.
+
+# Status - list failure
+pop3ListFailure=Команда LIST не выполнена. Ошибка получения ID и размера сообщения.
+
+# Status - delete error
+pop3DeleFailure=Команда DELE не выполнена. Ошибка пометки сообщения как удалённого.
+
+# Status - stat failed
+pop3StatFail=Команда STAT не выполнена. Ошибка получения номера и размера сообщения.
+
+#LOCALIZATION NOTE (pop3ServerSaid): Do not remove the leading space during translation.
+pop3ServerSaid= Почтовый сервер «%S» ответил:
+
+#LOCALIZATION NOTE (pop3TempServerError): %S is where the POP3 server name will appear.
+pop3TempServerError=При получении новых сообщений от %S произошла временная ошибка. \
+Операция будет повторена при следующей проверке наличия новых сообщений.
+
+copyingMessagesStatus=Копирование %S из %S сообщений в «%S»
+
+movingMessagesStatus=Перемещение %S из %S сообщений в «%S»
+
+# Status - pop3 server or folder busy
+# LOCALIZATION NOTE (pop3ServerBusy): Do not translate the word "%S" below.
+# Place %S where the account name should appear.
+pop3ServerBusy=Учётная запись %S обрабатывается. Подождите, пока закончится обработка, чтобы получить сообщения.
+
+pop3TmpDownloadError=При загрузке следующего сообщения произошла ошибка: \nОтправитель: «%S»\n Тема: «%S»\n Возможно, в этом сообщении содержится вирус или на диске недостаточно места. Пропустить это сообщение?
+
+# Status - the server doesn't support UIDL…
+# LOCALIZATION NOTE(pop3ServerDoesNotSupportUidlEtc): The following sentence should be translated in this way:
+# Do not translate "POP3"
+# Do not translate "%S". Place %S in your translation where the name of the server should appear.
+# Do not translate "UIDL"
+pop3ServerDoesNotSupportUidlEtc=Почтовый сервер POP3 (%S) не поддерживает UIDL или XTND XLST, которые требуются для выполнений условий «Оставлять копии сообщений на сервере», «Максимальный размер сообщения» или «Загружать только заголовки сообщений». Чтобы получить свою почту, отключите эти опции в разделе «Параметры сервера» окна «Параметры учётной записи».
+
+# Status - the server doesn't support the top command
+# LOCALIZATION NOTE(pop3ServerDoesNotSupportTopCommand): The following sentence should be translated in this way:
+# Do not translate "POP3"
+# Do not translate "%S". Place %S in your translation where the name of the server should appear.
+# Do not translate "TOP"
+pop3ServerDoesNotSupportTopCommand=Почтовый сервер POP3 (%S) не поддерживает команду TOP. Без поддержки этой команды сервером невозможно выполнение условия «Максимальный размер сообщения» или «Загружать только заголовки сообщений». Эта опция была отключена, и сообщения будут загружены независимо от их размера.
+
+nsErrorCouldNotConnectViaTls=Не удалось установить соединение с использованием TLS с POP3-сервером. Возможно, сервер выключен или неверно сконфигурирован. Пожалуйста, проверьте корректность настроек вашего почтового сервера, заданных вами в разделе «Параметры сервера» в окне «Параметры учётной записи» и попробуйте снова.
+
+# LOCALIZATION NOTE (pop3MoveFolderToTrash): Do not translate the word %S below.
+# "%S" is the the name of the folder.
+pop3MoveFolderToTrash=Вы уверены, что хотите удалить папку «%S»?
+
+pop3DeleteFolderDialogTitle=Удалить папку
+
+pop3DeleteFolderButtonLabel=&Удалить папку
+
+pop3AuthInternalError=Во время аутентификации на сервере POP3 произошла ошибка внутреннего состояния. Это внутренняя, неожиданная ошибка приложения. Пожалуйста, сообщите о ней как о баге.
+
+pop3AuthChangeEncryptToPlainNoSSL=Похоже, что POP3-сервер не поддерживает использование зашифрованных паролей. Если вы только что создали учётную запись, пожалуйста, попробуйте сменить «Метод аутентификации» на «Пароль, без защиты передачи» в «Параметрах учётной записи | Параметры сервера». Если это работало раньше, а теперь внезапно перестало работать, обычно это означает, что кто-то мог украсть ваш пароль.
+
+pop3AuthChangeEncryptToPlainSSL=Похоже, что POP3-сервер не поддерживает использование зашифрованных паролей. Если вы только что создали учётную запись, пожалуйста, попробуйте сменить «Метод аутентификации» на «Обычный пароль» в «Параметрах учётной записи | Параметры сервера». Если это работало раньше, а теперь внезапно перестало работать, пожалуйста, свяжитесь в вашим администратором электронной почты или провайдером.
+
+pop3AuthChangePlainToEncrypt=Этот POP3-сервер не разрешает использование обычных текстовых паролей. Пожалуйста, попробуйте сменить «Метод аутентификации» на «Зашифрованный пароль» в «Параметрах учётной записи | Параметры сервера».
+
+# Authentication server caps and pref don't match
+pop3AuthMechNotSupported=Сервер не поддерживает выбранный метод аутентификации. Пожалуйста, смените «Метод аутентификации» в «Параметрах учётной записи | Параметры сервера».
+
+# Status - Could not log in to GSSAPI, and it was the only method
+pop3GssapiFailure=Билет Kerberos/GSSAPI не был принят POP3-сервером. Пожалуйста, проверьте, что вы вошли в Kerberos/GSSAPI realm.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailEditorOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailEditorOverlay.dtd
new file mode 100644
index 0000000000..9c1db295de
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailEditorOverlay.dtd
@@ -0,0 +1,6 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY sendPage.label "Отправить страницу…">
+<!ENTITY sendPage.accesskey "с">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailOverlay.dtd
new file mode 100644
index 0000000000..78c0b030ce
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailOverlay.dtd
@@ -0,0 +1,11 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY newMessageCmd2.key "N">
+<!ENTITY newMessageCmd.key "M">
+<!ENTITY newMessageCmd.label "Сообщение">
+<!ENTITY newMessageCmd.accesskey "б">
+
+<!ENTITY newContactCmd.label "Контакт адресной книги…">
+<!ENTITY newContactCmd.accesskey "н">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailViewList.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailViewList.dtd
new file mode 100644
index 0000000000..c9baac04df
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailViewList.dtd
@@ -0,0 +1,8 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!--LOCALIZATION NOTE msgViewPickerOverlay.dtd UI for showing various views on a folder -->
+
+<!ENTITY mailViewListTitle.label "Настройка режимов просмотра сообщений">
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailViewSetup.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailViewSetup.dtd
new file mode 100644
index 0000000000..67fe0a3f04
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailViewSetup.dtd
@@ -0,0 +1,10 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!--LOCALIZATION NOTE msgViewPickerOverlay.dtd UI for showing various views on a folder -->
+
+<!ENTITY mailViewSetupTitle.label "Настройки режима просмотра сообщений">
+<!ENTITY mailViewHeading.label "Режим просмотра сообщений:">
+<!ENTITY mailViewHeading.accesskey "м">
+<!ENTITY searchTermCaption.label "Если выбран этот режим просмотра, показывать только сообщения, соответствующие:">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailviews.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailviews.properties
new file mode 100644
index 0000000000..db2d4fa851
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mailviews.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# Mail Views
+#
+
+mailViewPeopleIKnow=От знакомых
+mailViewRecentMail=Свежая почта
+mailViewLastFiveDays=За последние 5 дней
+mailViewNotJunk=Не спам
+mailViewHasAttachments=С вложениями
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/markByDate.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/markByDate.dtd
new file mode 100644
index 0000000000..5ae32c9729
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/markByDate.dtd
@@ -0,0 +1,9 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY messageMarkByDate.label "Отметить сообщения как прочитанные по дате">
+<!ENTITY markByDateLower.label "Отметить сообщения как прочитанные с:">
+<!ENTITY markByDateLower.accesskey "с">
+<!ENTITY markByDateUpper.label "по:">
+<!ENTITY markByDateUpper.accesskey "п">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messenger.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messenger.dtd
new file mode 100644
index 0000000000..8a189763a8
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messenger.dtd
@@ -0,0 +1,920 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY titledefault.label "&brandFullName;">
+<!ENTITY titleSeparator.label " - ">
+
+<!-- File Menu -->
+<!ENTITY newFolderCmd.label "Папку…">
+<!ENTITY newFolderCmd.accesskey "П">
+<!ENTITY closeTabCmd2.label "Закрыть вкладку">
+<!ENTITY closeTabCmd2.accesskey "а">
+<!ENTITY closeOtherTabsCmd2.label "Закрыть другие вкладки">
+<!ENTITY closeOtherTabsCmd2.accesskey "к">
+<!ENTITY recentlyClosedTabsCmd.label "Недавно закрытые вкладки">
+<!ENTITY recentlyClosedTabsCmd.accesskey "д">
+
+<!ENTITY undoCloseTabCmd.commandkey "T">
+<!-- LOCALIZATION NOTE (moveToNewWindow.label):
+ Menu option to cause the current tab to be migrated to a new Thunderbird
+ window.
+ -->
+<!ENTITY moveToNewWindow.label "Переместить в новое окно">
+<!ENTITY moveToNewWindow.accesskey "м">
+<!ENTITY newVirtualFolderCmd.label "Виртуальную папку…">
+<!ENTITY newVirtualFolderCmd.accesskey "В">
+<!ENTITY newCreateEmailAccountCmd.label "Получить новую учётную запись почты…">
+<!ENTITY newCreateEmailAccountCmd.accesskey "л">
+<!ENTITY newExistingEmailAccountCmd.label "Настроить мою учётную запись почты…">
+<!ENTITY newExistingEmailAccountCmd.accesskey "и">
+<!ENTITY newIMAccountCmd.label "Учётная запись чата…">
+<!ENTITY newIMAccountCmd.accesskey "а">
+<!ENTITY newFeedAccountCmd.label "Учётная запись лент новостей…">
+<!ENTITY newFeedAccountCmd.accesskey "я">
+<!ENTITY newIMContactCmd.label "Контакт в чате…">
+<!ENTITY newIMContactCmd.accesskey "о">
+<!ENTITY newMessageCmd2.key "N">
+<!ENTITY newMessageCmd.key "M">
+<!ENTITY newMessageCmd.label "Сообщение">
+<!ENTITY newMessageCmd.accesskey "о">
+<!ENTITY newContactCmd.label "Контакт адресной книги…">
+<!ENTITY newContactCmd.accesskey "а">
+<!ENTITY openMenuCmd.label "Открыть">
+<!ENTITY openMenuCmd.accesskey "ы">
+<!ENTITY openMessageFileCmd.label "Открыть сохранённое сообщение…">
+<!ENTITY openMessageFileCmd.accesskey "с">
+<!ENTITY saveAsMenu.label "Сохранить как">
+<!ENTITY saveAsMenu.accesskey "к">
+<!ENTITY saveAsFileCmd.key "s">
+<!ENTITY saveAsTemplateCmd.label "Шаблон">
+<!ENTITY saveAsTemplateCmd.accesskey "Ш">
+<!ENTITY getNewMsgForCmd.label "Получить новые сообщения для…">
+<!ENTITY getNewMsgForCmd.accesskey "н">
+<!ENTITY getAllNewMsgCmdPopupMenu.label "Всех учётных записей">
+<!ENTITY getAllNewMsgCmdPopupMenu.accesskey "В">
+<!ENTITY getNewMsgCurrentAccountCmdPopupMenu.label "Текущей учётной записи">
+<!ENTITY getNewMsgCurrentAccountCmdPopupMenu.accesskey "Т">
+<!ENTITY getNextNMsgCmd2.label "Получить следующие новостные сообщения">
+<!ENTITY getNextNMsgCmd2.accesskey "и">
+<!ENTITY sendUnsentCmd.label "Отправить неотправленные сообщения">
+<!ENTITY sendUnsentCmd.accesskey "т">
+<!ENTITY subscribeCmd.label "Подписка…">
+<!ENTITY subscribeCmd.accesskey "д">
+<!ENTITY deleteFolder.label "Удалить папку">
+<!ENTITY deleteFolder.accesskey "д">
+<!ENTITY renameFolder.label "Переименовать папку…">
+<!ENTITY renameFolder.accesskey "и">
+<!ENTITY renameFolder.key "VK_F2">
+<!ENTITY compactFolders.label "Сжать папки">
+<!ENTITY compactFolders.accesskey "ж">
+<!ENTITY emptyTrashCmd.label "Опустошить папку «Удалённые»">
+<!ENTITY emptyTrashCmd.accesskey "ш">
+<!ENTITY offlineMenu.label "Автономная работа">
+<!ENTITY offlineMenu.accesskey "А">
+<!ENTITY offlineGoOfflineCmd.label "Работать автономно">
+<!ENTITY offlineGoOfflineCmd.accesskey "б">
+<!ENTITY synchronizeOfflineCmd.label "Загрузить/синхронизировать сейчас…">
+<!ENTITY synchronizeOfflineCmd.accesskey "с">
+<!ENTITY settingsOfflineCmd2.label "Параметры автономной работы">
+<!ENTITY settingsOfflineCmd2.accesskey "м">
+<!ENTITY downloadSelectedCmd.label "Получить выделенные">
+<!ENTITY downloadSelectedCmd.accesskey "в">
+<!ENTITY downloadStarredCmd.label "Получить сообщения со звёздочкой">
+<!ENTITY downloadStarredCmd.accesskey "з">
+<!ENTITY printCmd.label "Печать…">
+<!ENTITY printCmd.accesskey "е">
+<!ENTITY printCmd.key "p">
+
+<!-- Edit Menu -->
+<!ENTITY selectMenu.label "Выделить">
+<!ENTITY selectMenu.accesskey "ы">
+<!ENTITY all.label "Все сообщения">
+<!ENTITY all.accesskey "В">
+<!ENTITY selectThreadCmd.label "Обсуждение">
+<!ENTITY selectThreadCmd.accesskey "О">
+<!ENTITY selectThreadCmd.key "a">
+<!ENTITY selectFlaggedCmd.label "Отмеченные звёздочкой сообщения">
+<!ENTITY selectFlaggedCmd.accesskey "з">
+<!ENTITY menuFavoriteFolder.label "Избранная папка">
+<!ENTITY menuFavoriteFolder.accesskey "з">
+<!ENTITY undoDeleteMsgCmd.label "Отменить удаление сообщения">
+<!ENTITY redoDeleteMsgCmd.label "Повторить удаление сообщения">
+<!ENTITY undoMoveMsgCmd.label "Отменить перемещение сообщения">
+<!ENTITY redoMoveMsgCmd.label "Повторить перемещение сообщения">
+<!ENTITY undoCopyMsgCmd.label "Отменить копирование сообщения">
+<!ENTITY redoCopyMsgCmd.label "Повторить копирование сообщения">
+<!ENTITY undoMarkAllCmd.label "Отменить пометку всех как прочитанных">
+<!ENTITY redoMarkAllCmd.label "Повторить пометку всех как прочитанных">
+<!ENTITY undoDefaultCmd.label "Отменить">
+<!ENTITY undoDefaultCmd.accesskey "О">
+<!ENTITY redoDefaultCmd.label "Повторить">
+<!ENTITY redoDefaultCmd.accesskey "П">
+
+<!-- View Menu -->
+<!ENTITY menubarCmd.label "Панель меню">
+<!ENTITY menubarCmd.accesskey "е">
+<!ENTITY showMessengerToolbarCmd.label "Панель инструментов почты">
+<!ENTITY showMessengerToolbarCmd.accesskey "П">
+<!ENTITY customizeToolbar.label "Настроить…">
+<!ENTITY customizeToolbar.accesskey "Н">
+
+<!ENTITY messagePaneLayoutStyle.label "Разбивка окна">
+<!ENTITY messagePaneLayoutStyle.accesskey "Р">
+<!ENTITY messagePaneClassic.label "Классический вид">
+<!ENTITY messagePaneClassic.accesskey "К">
+<!ENTITY messagePaneWide.label "Широкий вид">
+<!ENTITY messagePaneWide.accesskey "Ш">
+<!ENTITY messagePaneVertical.label "Вертикальный вид">
+<!ENTITY messagePaneVertical.accesskey "В">
+<!ENTITY showFolderPaneCmd.label "Панель папок">
+<!ENTITY showFolderPaneCmd.accesskey "а">
+<!ENTITY showMessageCmd.label "Область просмотра сообщений">
+<!ENTITY showMessageCmd.accesskey "О">
+
+<!ENTITY folderView.label "Папки">
+<!ENTITY folderView.accesskey "П">
+<!ENTITY unifiedFolders.label "Объединённые">
+<!ENTITY unifiedFolders.accesskey "б">
+<!ENTITY allFolders.label "Все">
+<!ENTITY allFolders.accesskey "В">
+<!ENTITY unreadFolders.label "Непрочитанные">
+<!ENTITY unreadFolders.accesskey "ч">
+<!ENTITY favoriteFolders.label "Избранные">
+<!ENTITY favoriteFolders.accesskey "И">
+<!ENTITY recentFolders.label "Недавно открытые">
+<!ENTITY recentFolders.accesskey "о">
+<!ENTITY compactVersion.label "Компактный вид">
+<!ENTITY compactVersion.accesskey "о">
+
+<!-- Sort Menu -->
+<!ENTITY sortMenu.label "Упорядочивание">
+<!ENTITY sortMenu.accesskey "р">
+<!ENTITY sortByDateCmd.label "по дате отправки">
+<!ENTITY sortByDateCmd.accesskey "д">
+<!ENTITY sortByReceivedCmd.label "по дате получения">
+<!ENTITY sortByReceivedCmd.accesskey "л">
+<!ENTITY sortByStarCmd.label "по звёздочке">
+<!ENTITY sortByStarCmd.accesskey "з">
+<!ENTITY sortByAttachmentsCmd.label "по вложениям">
+<!ENTITY sortByAttachmentsCmd.accesskey "в">
+<!ENTITY sortByPriorityCmd.label "по важности">
+<!ENTITY sortByPriorityCmd.accesskey "ж">
+<!ENTITY sortBySizeCmd.label "по размеру">
+<!ENTITY sortBySizeCmd.accesskey "р">
+<!ENTITY sortByStatusCmd.label "по состоянию">
+<!ENTITY sortByStatusCmd.accesskey "с">
+<!ENTITY sortByTagsCmd.label "по метке">
+<!ENTITY sortByTagsCmd.accesskey "м">
+<!ENTITY sortByJunkStatusCmd.label "по метке спама">
+<!ENTITY sortByJunkStatusCmd.accesskey "с">
+<!ENTITY sortBySubjectCmd.label "по теме">
+<!ENTITY sortBySubjectCmd.accesskey "е">
+<!ENTITY sortByFromCmd.label "по автору">
+<!ENTITY sortByFromCmd.accesskey "в">
+<!ENTITY sortByRecipientCmd.label "по адресату">
+<!ENTITY sortByRecipientCmd.accesskey "а">
+<!ENTITY sortByCorrespondentCmd.label "по отправителям">
+<!ENTITY sortByCorrespondentCmd.accesskey "о">
+<!ENTITY sortByUnreadCmd.label "по прочитанным">
+<!ENTITY sortByUnreadCmd.accesskey "н">
+<!ENTITY sortByOrderReceivedCmd.label "по порядку получения">
+<!ENTITY sortByOrderReceivedCmd.accesskey "п">
+<!ENTITY sortAscending.label "По возрастанию">
+<!ENTITY sortAscending.accesskey "з">
+<!ENTITY sortDescending.label "По убыванию">
+<!ENTITY sortDescending.accesskey "у">
+<!ENTITY sortThreaded.label "По обсуждениям">
+<!ENTITY sortThreaded.accesskey "о">
+<!ENTITY sortUnthreaded.label "Не по обсуждениям">
+<!ENTITY sortUnthreaded.accesskey "е">
+<!ENTITY groupBySort.label "Группировать по методу сортировки">
+<!ENTITY groupBySort.accesskey "Г">
+<!ENTITY msgsMenu.label "Сообщения">
+<!ENTITY msgsMenu.accesskey "б">
+<!ENTITY threads.label "Обсуждения">
+<!ENTITY threads.accesskey "О">
+<!ENTITY allMsgsCmd.label "Все">
+<!ENTITY allMsgsCmd.accesskey "В">
+<!ENTITY expandAllThreadsCmd.label "Развернуть все">
+<!ENTITY expandAllThreadsCmd.accesskey "Р">
+<!ENTITY expandAllThreadsCmd.key "*">
+<!ENTITY collapseAllThreadsCmd.label "Свернуть все">
+<!ENTITY collapseAllThreadsCmd.accesskey "С">
+<!ENTITY collapseAllThreadsCmd.key "\">
+<!ENTITY unreadMsgsCmd.label "Непрочитанные">
+<!ENTITY unreadMsgsCmd.accesskey "Н">
+<!ENTITY threadsWithUnreadCmd.label "С непрочитанными сообщениями">
+<!ENTITY threadsWithUnreadCmd.accesskey "н">
+<!ENTITY watchedThreadsWithUnreadCmd.label "Отслеживаемые с непрочитанными сообщениями">
+<!ENTITY watchedThreadsWithUnreadCmd.accesskey "т">
+<!ENTITY ignoredThreadsCmd.label "Пропущенные">
+<!ENTITY ignoredThreadsCmd.accesskey "П">
+
+<!ENTITY headersMenu.label "Заголовки">
+<!ENTITY headersMenu.accesskey "З">
+<!ENTITY headersAllCmd.label "Все">
+<!ENTITY headersAllCmd.accesskey "В">
+<!ENTITY headersNormalCmd.label "Обычные">
+<!ENTITY headersNormalCmd.accesskey "О">
+<!ENTITY bodyMenu.label "Тело сообщения в виде">
+<!ENTITY bodyMenu.accesskey "Т">
+<!ENTITY bodyAllowHTML.label "Исходного HTML">
+<!ENTITY bodyAllowHTML.accesskey "с">
+<!ENTITY bodySanitized.label "Упрощённого HTML">
+<!ENTITY bodySanitized.accesskey "п">
+<!ENTITY bodyAsPlaintext.label "Простого текста">
+<!ENTITY bodyAsPlaintext.accesskey "о">
+<!ENTITY bodyAllParts.label "Всех частей тела">
+<!ENTITY bodyAllParts.accesskey "е">
+
+<!ENTITY bodyMenuFeed.label "Сообщение ленты новостей в виде">
+<!ENTITY bodyMenuFeed.accesskey "б">
+<!ENTITY viewFeedWebPage.label "Сетевые страницы">
+<!ENTITY viewFeedWebPage.accesskey "е">
+<!ENTITY viewFeedSummary.label "Сводки">
+<!ENTITY viewFeedSummary.accesskey "д">
+<!ENTITY viewFeedSummaryFeedPropsPref.label "Формата по умолчанию">
+<!ENTITY viewFeedSummaryFeedPropsPref.accesskey "м">
+
+<!ENTITY viewAttachmentsInlineCmd.label "Показывать вложения в теле сообщения">
+<!ENTITY viewAttachmentsInlineCmd.accesskey "П">
+
+<!ENTITY pageSourceCmd.label "Исходный текст">
+<!ENTITY pageSourceCmd.accesskey "х">
+<!ENTITY pageSourceCmd.key "u">
+<!ENTITY getNewMessagesCmd.key "y">
+<!ENTITY getAllNewMessagesCmd.key "Y">
+
+<!-- Search Menu -->
+<!ENTITY findMenu.label "Найти">
+<!ENTITY findMenu.accesskey "й">
+<!ENTITY findCmd.label "Найти в этом сообщении…">
+<!ENTITY findCmd.accesskey "Н">
+<!ENTITY findCmd.key "f">
+<!ENTITY findAgainCmd.label "Найти следующее">
+<!ENTITY findAgainCmd.accesskey "а">
+<!ENTITY findAgainCmd.key "g">
+<!ENTITY findAgainCmd.key2 "VK_F3">
+<!ENTITY findPrevCmd.key "g">
+<!ENTITY findPrevCmd.key2 "VK_F3">
+<!ENTITY searchMailCmd.label "Поиск сообщений…">
+<!ENTITY searchMailCmd.accesskey "П">
+<!ENTITY searchMailCmd.key "f">
+<!ENTITY glodaSearchCmd.label "Глобальный поиск…">
+<!ENTITY glodaSearchCmd.accesskey "л">
+<!ENTITY searchAddressesCmd.label "Поиск адресов…">
+<!ENTITY searchAddressesCmd.accesskey "а">
+
+<!-- Go Menu -->
+<!ENTITY goMenu.label "Переход">
+<!ENTITY goMenu.accesskey "П">
+<!ENTITY nextMenu.label "Следующее…">
+<!ENTITY nextMenu.accesskey "л">
+<!ENTITY nextMsgCmd.label "сообщение">
+<!ENTITY nextMsgCmd.accesskey "б">
+<!ENTITY nextMsgCmd.key "f">
+<!ENTITY nextUnreadMsgCmd.label "непрочитанное сообщение">
+<!ENTITY nextUnreadMsgCmd.accesskey "н">
+<!ENTITY nextUnreadMsgCmd.key "n">
+<!ENTITY nextStarredMsgCmd.label "отмеченное звёздочкой сообщение">
+<!ENTITY nextStarredMsgCmd.accesskey "о">
+<!ENTITY nextUnreadThread.label "непрочитанное обсуждение">
+<!ENTITY nextUnreadThread.accesskey "и">
+<!ENTITY nextUnreadThread.key "t">
+<!ENTITY prevMenu.label "Предыдущее…">
+<!ENTITY prevMenu.accesskey "ы">
+<!ENTITY prevMsgCmd.label "сообщение">
+<!ENTITY prevMsgCmd.accesskey "с">
+<!ENTITY prevMsgCmd.key "b">
+<!ENTITY prevUnreadMsgCmd.label "непрочитанное сообщение">
+<!ENTITY prevUnreadMsgCmd.accesskey "ч">
+<!ENTITY prevUnreadMsgCmd.key "p">
+<!ENTITY goForwardCmd.label "Вперёд">
+<!ENTITY goForwardCmd.accesskey "е">
+<!ENTITY goForwardCmd.commandKey "]">
+<!ENTITY goBackCmd.label "Назад">
+<!ENTITY goBackCmd.accesskey "д">
+<!ENTITY goBackCmd.commandKey "[">
+<!ENTITY goChatCmd.label "Чат">
+<!ENTITY goChatCmd.accesskey "а">
+<!ENTITY prevStarredMsgCmd.label "отмеченное звёздочкой сообщение">
+<!ENTITY prevStarredMsgCmd.accesskey "з">
+<!ENTITY folderMenu.label "Папка">
+<!ENTITY folderMenu.accesskey "к">
+<!ENTITY goRecentlyClosedTabs.label "Недавно закрытые вкладки">
+<!ENTITY goRecentlyClosedTabs.accesskey "д">
+<!ENTITY startPageCmd.label "Начальная страница">
+<!ENTITY startPageCmd.accesskey "а">
+
+<!-- Message Menu -->
+<!ENTITY msgMenu.label "Сообщение">
+<!ENTITY msgMenu.accesskey "б">
+<!ENTITY newMsgCmd.label "Создать">
+<!ENTITY newMsgCmd.accesskey "з">
+<!ENTITY newNewMsgCmd.label "Сообщение">
+<!ENTITY newNewMsgCmd.accesskey "б">
+<!ENTITY archiveMsgCmd.label "Архивировать">
+<!ENTITY archiveMsgCmd.accesskey "х">
+<!ENTITY archiveMsgCmd.key "a">
+<!ENTITY cancelNewsMsgCmd.label "Отменить сообщение">
+<!ENTITY cancelNewsMsgCmd.accesskey "м">
+<!ENTITY replyMsgCmd.label "Ответить">
+<!ENTITY replyMsgCmd.accesskey "О">
+<!ENTITY replyMsgCmd.key "r">
+<!ENTITY replySenderCmd.label "Ответить отправителю">
+<!ENTITY replySenderCmd.accesskey "ь">
+<!ENTITY replyNewsgroupCmd2.label "Ответить в группу новостей">
+<!ENTITY replyNewsgroupCmd2.accesskey "г">
+<!ENTITY replyToAllMsgCmd.label "Ответить всем">
+<!ENTITY replyToAllMsgCmd.accesskey "в">
+<!ENTITY replyToAllMsgCmd.key "r">
+<!ENTITY replyToListMsgCmd.label "Ответить в рассылку">
+<!ENTITY replyToListMsgCmd.accesskey "р">
+<!ENTITY replyToListMsgCmd.key "l">
+<!ENTITY forwardMsgCmd.label "Переслать">
+<!ENTITY forwardMsgCmd.accesskey "П">
+<!ENTITY forwardMsgCmd.key "l">
+<!ENTITY forwardAsMenu.label "Переслать как">
+<!ENTITY forwardAsMenu.accesskey "к">
+<!ENTITY forwardAsInline.label "Часть сообщения">
+<!ENTITY forwardAsInline.accesskey "Ч">
+<!ENTITY forwardAsAttachmentCmd.label "Вложение">
+<!ENTITY forwardAsAttachmentCmd.accesskey "В">
+<!ENTITY editAsNewMsgCmd.label "Править как новое сообщение">
+<!ENTITY editAsNewMsgCmd.accesskey "е">
+<!ENTITY editAsNewMsgCmd.key "e">
+<!ENTITY editDraftMsgCmd.label "Править черновик сообщения">
+<!ENTITY editDraftMsgCmd.accesskey "а">
+<!ENTITY editTemplateMsgCmd.label "Править шаблон">
+<!ENTITY editTemplateMsgCmd.accesskey "л">
+<!ENTITY newMsgFromTemplateCmd.label "Создать сообщение по шаблону">
+<!ENTITY newMsgFromTemplateCmd.keycode "VK_RETURN"><!-- do not change "VK_RETURN" -->
+<!ENTITY createFilter.label "Создать фильтр…">
+<!ENTITY createFilter.accesskey "ф">
+<!ENTITY moveMsgToMenu.label "Переместить в папку">
+<!ENTITY moveMsgToMenu.accesskey "е">
+<!ENTITY moveCopyMsgRecentMenu.label "Недавно открытые">
+<!ENTITY moveCopyMsgRecentMenu.accesskey "Н">
+<!ENTITY copyMessageLocation.label "Копировать адрес сообщения">
+<!ENTITY copyMessageLocation.accesskey "а">
+<!ENTITY copyMsgToMenu.label "Копировать в папку">
+<!ENTITY copyMsgToMenu.accesskey "и">
+<!ENTITY moveToFolderAgain.label "Повторить перемещение">
+<!ENTITY moveToFolderAgain.accesskey "в">
+<!ENTITY moveToFolderAgainCmd.key "m">
+<!ENTITY killThreadMenu.label "Пропустить обсуждение">
+<!ENTITY killThreadMenu.accesskey "у">
+<!ENTITY killThreadMenu.key "k">
+<!ENTITY killSubthreadMenu.label "Пропустить ветку обсуждения">
+<!ENTITY killSubthreadMenu.accesskey "п">
+<!ENTITY killSubthreadMenu.key "k">
+<!ENTITY watchThreadMenu.label "Отслеживать обсуждение">
+<!ENTITY watchThreadMenu.accesskey "ж">
+<!ENTITY watchThreadMenu.key "w">
+<!ENTITY tagMenu.label "Присвоить метку">
+<!ENTITY tagMenu.accesskey "М">
+<!ENTITY tagCmd0.key "0">
+<!ENTITY tagCmd1.key "1">
+<!ENTITY tagCmd2.key "2">
+<!ENTITY tagCmd3.key "3">
+<!ENTITY tagCmd4.key "4">
+<!ENTITY tagCmd5.key "5">
+<!ENTITY tagCmd6.key "6">
+<!ENTITY tagCmd7.key "7">
+<!ENTITY tagCmd8.key "8">
+<!ENTITY tagCmd9.key "9">
+<!ENTITY markMenu.label "Отметить">
+<!ENTITY markMenu.accesskey "т">
+<!ENTITY toggleReadCmd.key "m">
+<!ENTITY markAsReadCmd.label "Как прочитанное">
+<!ENTITY markAsReadCmd.accesskey "ч">
+<!ENTITY markAsUnreadCmd.label "Как непрочитанное">
+<!ENTITY markAsUnreadCmd.accesskey "е">
+<!ENTITY markThreadAsReadCmd.label "Обсуждение как прочитанное">
+<!ENTITY markThreadAsReadCmd.accesskey "О">
+<!ENTITY markThreadAsReadCmd.key "r">
+<!ENTITY markReadByDateCmd.label "Как прочитанные по дате…">
+<!ENTITY markReadByDateCmd.accesskey "ч">
+<!ENTITY markReadByDateCmd.key "c">
+<!ENTITY markAllReadCmd.label "Все как прочитанные">
+<!ENTITY markAllReadCmd.accesskey "В">
+<!ENTITY markAllReadCmd.key "c">
+<!ENTITY markStarredCmd.label "Звёздочка">
+<!ENTITY markStarredCmd.accesskey "З">
+<!ENTITY markStarredCmd.key "S">
+<!ENTITY markAsJunkCmd.label "Как спам">
+<!ENTITY markAsJunkCmd.accesskey "м">
+<!ENTITY markAsJunkCmd.key "j">
+<!ENTITY markAsNotJunkCmd.label "Как не спам">
+<!ENTITY markAsNotJunkCmd.accesskey "н">
+<!ENTITY markAsNotJunkCmd.key "j">
+<!ENTITY recalculateJunkScoreCmd.label "Запустить анти-спам фильтры">
+<!ENTITY recalculateJunkScoreCmd.accesskey "а">
+<!ENTITY openMessageWindowCmd.label "Открыть">
+<!ENTITY openMessageWindowCmd.accesskey "О">
+<!ENTITY openMessageWindowCmd.key "o">
+<!ENTITY openInConversationCmd.label "Открыть в разговоре">
+<!ENTITY openInConversationCmd.accesskey "а">
+<!ENTITY openInConversationCmd.key "o">
+<!ENTITY openAttachmentListCmd.label "Вложения">
+<!ENTITY openAttachmentListCmd.accesskey "ж">
+<!ENTITY openFeedMessage1.label "При открытии сообщений из ленты новостей">
+<!ENTITY openFeedMessage1.accesskey "и">
+<!ENTITY openFeedWebPage.label "Открыть как сетевую страницу">
+<!ENTITY openFeedWebPage.accesskey "е">
+<!ENTITY openFeedSummary.label "Открыть как сводку">
+<!ENTITY openFeedSummary.accesskey "в">
+<!ENTITY openFeedWebPageInMP.label "Переключиться между сетевой страницей и сводкой в области просмотра сообщения">
+<!ENTITY openFeedWebPageInMP.accesskey "к">
+
+<!-- Windows Menu -->
+<!ENTITY windowMenu.label "Окно">
+
+<!-- Tools Menu -->
+<!ENTITY tasksMenu.label "Инструменты">
+<!ENTITY tasksMenu.accesskey "И">
+<!ENTITY messengerCmd.label "Почта и группы новостей">
+<!ENTITY messengerCmd.accesskey "п">
+<!ENTITY addressBookCmd.label "Адресная книга">
+<!ENTITY addressBookCmd.accesskey "А">
+<!ENTITY addressBookCmd.key "B">
+<!ENTITY addonNoPrefs.label "Настройки дополнений не найдены.">
+<!ENTITY activitymanager.label "Диспетчер работы">
+<!ENTITY activitymanager.accesskey "и">
+<!ENTITY imAccountsStatus.label "Состояние чата">
+<!ENTITY imAccountsStatus.accesskey "а">
+<!ENTITY imStatus.available "Доступен">
+<!ENTITY imStatus.unavailable "Занят">
+<!ENTITY imStatus.offline "Отключён">
+<!ENTITY imStatus.showAccounts "Показать учётные записи…">
+<!ENTITY joinChatCmd.label "Присоединиться к чату…">
+<!ENTITY joinChatCmd.accesskey "и">
+<!ENTITY savedFiles.label "Сохранённые файлы">
+<!ENTITY savedFiles.accesskey "х">
+<!ENTITY savedFiles.key "j">
+<!ENTITY filtersCmd2.label "Фильтры сообщений">
+<!ENTITY filtersCmd2.accesskey "и">
+<!ENTITY filtersApply.label "Применить фильтры к папке">
+<!ENTITY filtersApply.accesskey "п">
+<!ENTITY filtersApplyToSelection.label "Применить фильтры к выделенным сообщениям">
+<!ENTITY filtersApplyToSelection.accesskey "в">
+<!ENTITY filtersApplyToMessage.label "Применить фильтры к сообщению">
+<!ENTITY filtersApplyToMessage.accesskey "с">
+<!ENTITY runJunkControls.label "Запустить в папке анти-спам фильтры">
+<!ENTITY runJunkControls.accesskey "а">
+<!ENTITY deleteJunk.label "Удалить сообщения помеченные как спам">
+<!ENTITY deleteJunk.accesskey "д">
+<!ENTITY importCmd.label "Импорт…">
+<!ENTITY importCmd.accesskey "И">
+<!ENTITY exportCmd.label "Экспорт…">
+<!ENTITY exportCmd.accesskey "к">
+<!ENTITY clearRecentHistory.label "Стереть недавнюю историю…">
+<!ENTITY clearRecentHistory.accesskey "т">
+<!ENTITY accountManagerCmd2.label "Параметры учётной записи">
+<!ENTITY accountManagerCmd2.accesskey "м">
+<!-- LOCALIZATION NOTE (accountManagerCmdUnix.accesskey):
+ Belongs to accountManagerCmd.label, which is placed under the Edit menu
+ on Unix systems
+ -->
+<!ENTITY accountManagerCmdUnix2.accesskey "м">
+
+<!-- Developer Tools Submenu -->
+<!ENTITY devtoolsMenu.label "Инструменты разработчика">
+<!ENTITY devtoolsMenu.accesskey "е">
+<!ENTITY devToolboxCmd.label "Панель разработки">
+<!ENTITY devToolboxCmd.accesskey "а">
+<!ENTITY devToolboxCmd.commandkey "i">
+<!ENTITY debugAddonsCmd.label "Отладка дополнений">
+<!ENTITY debugAddonsCmd.accesskey "л">
+<!ENTITY errorConsoleCmd.label "Консоль ошибок">
+<!ENTITY errorConsoleCmd.accesskey "н">
+<!ENTITY errorConsoleCmd.commandkey "j">
+
+<!-- Mail Toolbar -->
+<!ENTITY getMsgButton1.label "Получить">
+<!ENTITY newMsgButton.label "Создать">
+<!ENTITY replyButton.label "Ответить">
+<!ENTITY replyAllButton.label "Ответить всем">
+<!ENTITY replyListButton.label "Ответить в рассылку">
+<!ENTITY forwardButton.label "Переслать">
+<!ENTITY fileButton.label "Поместить">
+<!ENTITY archiveButton.label "Архивировать">
+<!ENTITY openConversationButton.label "Разговор">
+<!ENTITY nextButton.label "Следующее">
+<!ENTITY nextButtonToolbarItem.label "Следующее непрочитанное">
+<!ENTITY nextMsgButton.label "Следующее">
+<!ENTITY previousButton.label "Предыдущее">
+<!ENTITY previousButtonToolbarItem.label "Предыдущее непрочитанное">
+<!ENTITY previousMsgButton.label "Предыдущее">
+<!ENTITY backButton1.label "Назад">
+<!ENTITY goForwardButton1.label "Вперёд">
+<!ENTITY deleteItem.title "Удалить">
+<!ENTITY markButton.label "Отметить">
+<!ENTITY printButton.label "Печать">
+<!ENTITY stopButton.label "Остановить">
+<!ENTITY throbberItem.title "Индикатор активности">
+<!ENTITY junkItem.title "Спам">
+<!ENTITY addressBookButton.label "Адресная книга">
+<!ENTITY chatButton.label "Чат">
+<!ENTITY glodaSearch.title "Глобальный поиск">
+<!ENTITY searchItem.title "Быстрый поиск">
+<!ENTITY mailViewsToolbarItem.title "Режимы просмотра сообщений">
+<!ENTITY folderLocationToolbarItem.title "Выбор папки">
+<!ENTITY tagButton.label "Метка">
+<!ENTITY compactButton.label "Сжать">
+<!ENTITY appmenuButton.label "Меню приложения">
+
+<!-- Mail Toolbar Tooltips-->
+<!ENTITY advancedButton.tooltip "Расширенный режим поиска">
+<!ENTITY getMsgButton.tooltip "Получить новые сообщения">
+<!ENTITY getAllNewMsgCmd.label "Все новые сообщения">
+<!ENTITY getAllNewMsgCmd.accesskey "с">
+<!ENTITY newMsgButton.tooltip "Создать сообщение">
+<!ENTITY replyButton.tooltip "Ответить на сообщение">
+<!ENTITY replyAllButton.tooltip "Ответить отправителю и всем адресатам">
+<!ENTITY replyListButton.tooltip "Ответить в список рассылки">
+<!ENTITY forwardButton.tooltip "Переслать выбранное сообщение">
+<!ENTITY forwardAsInline.tooltip "Переслать выбранное сообщение внутри сообщения">
+<!ENTITY forwardAsAttachment.tooltip "Переслать выбранное сообщение как вложение">
+<!ENTITY fileButton.tooltip "Поместить выбранное сообщение в нужную папку">
+<!ENTITY archiveButton.tooltip "Архивировать выделенные сообщения">
+<!ENTITY openMsgConversationButton.tooltip "Показать разговор для выделенного сообщения">
+<!ENTITY nextButton.tooltip "Перейти к следующему непрочитанному сообщению">
+<!ENTITY nextMsgButton.tooltip "Перейти к следующему сообщению">
+<!ENTITY previousButton.tooltip "Перейти к предыдущему непрочитанному сообщению">
+<!ENTITY previousMsgButton.tooltip "Перейти к предыдущему сообщению">
+<!ENTITY goForwardButton.tooltip "Перейти к следующему сообщению">
+<!ENTITY goBackButton.tooltip "Перейти к предыдущему сообщению">
+<!ENTITY markButton.tooltip "Отметить сообщения">
+<!ENTITY printButton.tooltip "Распечатать это сообщение">
+<!ENTITY stopButton.tooltip "Остановить текущую передачу данных">
+<!ENTITY addressBookButton.tooltip "Открыть адресную книгу">
+<!ENTITY chatButton.tooltip "Показать вкладку чата">
+<!ENTITY tagButton.tooltip "Присвоить сообщению метку">
+<!ENTITY compactButton.tooltip "Убрать удалённые сообщения из выбранной папки">
+<!ENTITY appmenuButton1.tooltip "Открыть меню &brandShortName;">
+
+<!-- Toolbar Button Popup -->
+<!ENTITY buttonMenuForwardAsInline.label "Переслать внутри сообщения">
+<!ENTITY buttonMenuForwardAsAttachment.label "Переслать как вложение">
+
+<!-- Remote Content Button Popup -->
+<!ENTITY remoteContentOptionsAllowForMsg.label "Показать содержимое из Интернета в этом сообщении">
+<!ENTITY remoteContentOptionsAllowForMsg.accesskey "о">
+<!ENTITY editRemoteContentSettings.label "Изменить настройки содержимого из Интернета…">
+<!ENTITY editRemoteContentSettings.accesskey "м">
+<!ENTITY editRemoteContentSettingsUnix.label "Изменить настройки содержимого из Интернета…">
+<!ENTITY editRemoteContentSettingsUnix.accesskey "м">
+
+<!-- Phishing Button Popup -->
+<!ENTITY phishingOptionIgnore.label "Игнорировать предупреждение для этого сообщения">
+<!ENTITY phishingOptionIgnore.accesskey "в">
+<!ENTITY phishingOptionSettings.label "Изменить настройки обнаружения мошеннических сообщений…">
+<!ENTITY phishingOptionSettings.accesskey "е">
+<!ENTITY phishingOptionSettingsUnix.label "Изменить настройки обнаружения мошеннических сообщений…">
+<!ENTITY phishingOptionSettingsUnix.accesskey "е">
+
+<!-- AppMenu Popup -->
+<!ENTITY appmenuNewMsgCmd.label "Создать">
+<!ENTITY appmenuNewContactCmd.label "Контакт адресной книги…">
+<!ENTITY appmenuToolbarLayout.label "Панель инструментов…">
+
+<!-- Tags Menu Popup -->
+<!ENTITY addNewTag.label "Новая метка…">
+<!ENTITY addNewTag.accesskey "Н">
+<!ENTITY manageTags.label "Управление метками…">
+<!ENTITY manageTags.accesskey "п">
+
+<!-- Folder Pane -->
+<!ENTITY folderNameColumn.label "Имя">
+<!ENTITY folderUnreadColumn.label "Непрочитанные">
+<!ENTITY folderTotalColumn.label "Всего">
+<!ENTITY folderSizeColumn.label "Размер">
+
+<!-- Folder Pane Context Menu -->
+<!ENTITY folderContextGetMessages.label "Получить сообщения">
+<!ENTITY folderContextGetMessages.accesskey "л">
+<!ENTITY folderContextMarkAllFoldersRead.label "Отметить все папки как прочитанные">
+<!ENTITY folderContextPauseAllUpdates.label "Приостановить все обновления">
+<!ENTITY folderContextPauseUpdates.label "Приостановить обновления">
+<!ENTITY folderContextPauseUpdates.accesskey "и">
+<!ENTITY folderContextOpenInNewWindow.label "Открыть в новом окне">
+<!ENTITY folderContextOpenInNewWindow.accesskey "к">
+<!ENTITY folderContextOpenNewTab.label "Открыть в новой вкладке">
+<!ENTITY folderContextOpenNewTab.accesskey "н">
+<!ENTITY folderContextNew.label "Новая папка…">
+<!ENTITY folderContextNew.accesskey "о">
+<!ENTITY folderContextRename.label "Переименовать">
+<!ENTITY folderContextRename.accesskey "П">
+<!ENTITY folderContextRemove.label "Удалить">
+<!ENTITY folderContextRemove.accesskey "У">
+<!ENTITY folderContextCompact.label "Сжать">
+<!ENTITY folderContextCompact.accesskey "ж">
+<!ENTITY folderContextEmptyTrash.label "Опустошить папку «Удалённые»">
+<!ENTITY folderContextEmptyTrash.accesskey "ш">
+<!ENTITY folderContextEmptyJunk.label "Опустошить папку «Спам»">
+<!ENTITY folderContextEmptyJunk.accesskey "и">
+<!ENTITY folderContextSendUnsentMessages.label "Отправить неотправленные сообщения">
+<!ENTITY folderContextSendUnsentMessages.accesskey "ь">
+<!ENTITY folderContextUnsubscribe.label "Отписаться">
+<!ENTITY folderContextUnsubscribe.accesskey "О">
+<!ENTITY folderContextMarkNewsgroupRead.label "Отметить группу новостей как прочитанную">
+<!ENTITY folderContextMarkNewsgroupRead.accesskey "м">
+<!ENTITY folderContextMarkMailFolderRead.label "Отметить папку как прочитанную">
+<!ENTITY folderContextMarkMailFolderRead.accesskey "ч">
+<!ENTITY folderContextSubscribe.label "Подписаться…">
+<!ENTITY folderContextSubscribe.accesskey "д">
+<!ENTITY folderContextSearchForMessages.label "Поиск сообщений…">
+<!ENTITY folderContextSearchForMessages.accesskey "и">
+<!ENTITY folderContextProperties2.label "Свойства">
+<!ENTITY folderContextProperties2.accesskey "в">
+<!ENTITY folderContextFavoriteFolder.label "Избранная папка">
+<!ENTITY folderContextFavoriteFolder.accesskey "з">
+<!ENTITY folderContextSettings2.label "Параметры">
+<!ENTITY folderContextSettings2.accesskey "а">
+
+<!-- Search Bar -->
+<!ENTITY SearchNameOrEmail.label "Имя или адрес эл. почты содержат:">
+<!ENTITY SearchNameOrEmail.accesskey "И">
+
+<!-- Gloda Search Bar -->
+<!ENTITY glodaSearchBar.placeholder "Поиск сообщений…">
+
+<!-- Quick Search Menu Bar -->
+<!ENTITY searchSubjectMenu.label "Тема">
+<!ENTITY searchFromMenu.label "От">
+<!ENTITY searchSubjectOrFromMenu.label "Тема или Автор">
+<!ENTITY searchRecipient.label "Кому или Копия">
+<!ENTITY searchSubjectOrRecipientMenu.label "Тема, Кому или Копия">
+<!ENTITY searchMessageBody.label "Сообщение целиком">
+<!ENTITY saveAsVirtualFolderMenu.label "Сохранить результаты поиска как папку…">
+
+<!-- Thread Pane -->
+<!ENTITY selectColumn.label "Выберите сообщения">
+<!ENTITY threadColumn.label "Обсуждение">
+<!ENTITY fromColumn.label "От">
+<!ENTITY recipientColumn.label "Адресат">
+<!ENTITY correspondentColumn.label "Отправители">
+<!ENTITY subjectColumn.label "Тема">
+<!ENTITY dateColumn.label "Дата">
+<!ENTITY priorityColumn.label "Важность">
+<!ENTITY tagsColumn.label "Метка">
+<!ENTITY accountColumn.label "Учётная запись">
+<!ENTITY statusColumn.label "Состояние">
+<!ENTITY sizeColumn.label "Размер">
+<!ENTITY junkStatusColumn.label "Спам">
+<!ENTITY unreadColumn.label "Не прочитано">
+<!ENTITY totalColumn.label "Всего">
+<!ENTITY readColumn.label "Прочитано">
+<!ENTITY receivedColumn.label "Получено">
+<!ENTITY starredColumn.label "Звёздочка">
+<!ENTITY locationColumn.label "Расположение">
+<!ENTITY idColumn.label "Порядок получения">
+<!ENTITY attachmentColumn.label "Вложения">
+<!ENTITY deleteColumn.label "Удалить">
+
+<!-- Thread Pane Tooltips -->
+<!ENTITY columnChooser2.tooltip "Выбрать колонки для отображения">
+<!ENTITY selectColumn.tooltip "Выделить/Снять выделение всех сообщений">
+<!ENTITY threadColumn2.tooltip "Просмотреть сообщения по обсуждениям">
+<!ENTITY fromColumn2.tooltip "Упорядочивать по автору">
+<!ENTITY recipientColumn2.tooltip "Упорядочивать по получателю">
+<!ENTITY correspondentColumn2.tooltip "Упорядочивать по отправителям">
+<!ENTITY subjectColumn2.tooltip "Упорядочивать по теме">
+<!ENTITY dateColumn2.tooltip "Упорядочивать по дате отправки">
+<!ENTITY priorityColumn2.tooltip "Упорядочивать по важности">
+<!ENTITY tagsColumn2.tooltip "Упорядочивать по меткам">
+<!ENTITY accountColumn2.tooltip "Упорядочивать по учётной записи">
+<!ENTITY statusColumn2.tooltip "Упорядочивать по состоянию">
+<!ENTITY sizeColumn2.tooltip "Упорядочивать по размеру">
+<!ENTITY junkStatusColumn2.tooltip "Упорядочивать по метке спама">
+<!ENTITY unreadColumn2.tooltip "Число непрочитанных сообщений в обсуждении">
+<!ENTITY totalColumn2.tooltip "Общее число сообщений в обсуждении">
+<!ENTITY readColumn2.tooltip "Упорядочивать по прочтению">
+<!ENTITY receivedColumn2.tooltip "Упорядочивать по дате получения">
+<!ENTITY starredColumn2.tooltip "Упорядочивать по наличию звёздочки">
+<!ENTITY locationColumn2.tooltip "Упорядочивать по расположению">
+<!ENTITY idColumn2.tooltip "Упорядочивать по порядку получения">
+<!ENTITY attachmentColumn2.tooltip "Упорядочивать по наличию вложений">
+<!ENTITY deleteColumn.tooltip "Удалить сообщение">
+
+<!-- Thread Pane Context Menu -->
+<!ENTITY contextNewMsgFromTemplate.label "Создать сообщение по шаблону">
+<!ENTITY contextOpenNewWindow.label "Открыть в новом окне">
+<!ENTITY contextOpenNewWindow.accesskey "н">
+<!-- The contextOpenNewTab.accesskey ("T") potentially conflicts with
+ cutCmd.accessKey which is defined in textcontext.dtd from toolkit. Right
+ now, both menu items can't be visible at the same time, but should someone
+ enable copy/paste of message, this key would probably need to be changed. -->
+<!ENTITY contextOpenNewTab.label "Открыть в новой вкладке">
+<!ENTITY contextOpenNewTab.accesskey "к">
+<!ENTITY contextOpenConversation.label "Открыть в разговоре">
+<!ENTITY contextOpenConversation.accesskey "ы">
+<!ENTITY contextOpenContainingFolder.label "Открыть в содержащей папке">
+<!ENTITY contextOpenContainingFolder.accesskey "ы">
+<!ENTITY contextEditMsgAsNew.label "Редактировать как новое сообщение">
+<!ENTITY contextEditMsgAsNew.accesskey "а">
+<!ENTITY contextEditDraftMsg.label "Править черновик сообщения">
+<!ENTITY contextEditTemplate.label "Править шаблон">
+<!ENTITY contextEditTemplate.accesskey "л">
+<!ENTITY contextArchive.label "Архивировать">
+<!ENTITY contextArchive.accesskey "х">
+<!ENTITY contextReplySender.label "Ответить отправителю">
+<!ENTITY contextReplySender.accesskey "О">
+<!ENTITY contextReplyNewsgroup2.label "Ответить в группу новостей">
+<!ENTITY contextReplyNewsgroup2.accesskey "г">
+<!ENTITY contextReplyAll.label "Ответить всем">
+<!ENTITY contextReplyAll.accesskey "в">
+<!ENTITY contextReplyList.label "Ответить в рассылку">
+<!ENTITY contextReplyList.accesskey "р">
+<!ENTITY contextForward.label "Переслать">
+<!ENTITY contextForward.accesskey "П">
+<!ENTITY contextForwardAsMenu.label "Переслать как">
+<!ENTITY contextForwardAsMenu.accesskey "е">
+<!ENTITY contextForwardAsInline.label "Внутри сообщения">
+<!ENTITY contextForwardAsInline.accesskey "н">
+<!ENTITY contextForwardAsAttachmentItem.label "Вложение">
+<!ENTITY contextForwardAsAttachmentItem.accesskey "ж">
+<!ENTITY contextMultiForwardAsAttachment.label "Переслать как вложения">
+<!ENTITY contextMultiForwardAsAttachment.accesskey "е">
+<!ENTITY contextMoveMsgMenu.label "Переместить в папку">
+<!ENTITY contextMoveMsgMenu.accesskey "е">
+<!ENTITY contextMoveCopyMsgRecentMenu.label "Недавно открытые">
+<!ENTITY contextMoveCopyMsgRecentMenu.accesskey "Н">
+<!ENTITY contextMoveCopyMsgFavoritesMenu.label "Избранное">
+<!ENTITY contextMoveCopyMsgFavoritesMenu.accesskey "о">
+<!ENTITY contextCopyMsgMenu.label "Копировать в папку">
+<!ENTITY contextCopyMsgMenu.accesskey "К">
+<!ENTITY contextKillThreadMenu.label "Пропустить обсуждение">
+<!ENTITY contextKillSubthreadMenu.accesskey "е">
+<!ENTITY contextKillThreadMenu.accesskey "о">
+<!ENTITY contextKillSubthreadMenu.label "Пропустить ветку обсуждения">
+<!ENTITY contextWatchThreadMenu.label "Отслеживать обсуждение">
+<!-- LOCALIZATION NOTE (contextWatchThreadMenu.accesskey):
+ In the en-US locale we ran out of access keys, so there is an empty access key for
+ Watch Thread. Localizers can pick a suitable key
+ -->
+<!ENTITY contextWatchThreadMenu.accesskey "л">
+<!ENTITY contextSaveAs.label "Сохранить как…">
+<!ENTITY contextSaveAs.accesskey "С">
+<!ENTITY contextPrint.label "Распечатать…">
+<!ENTITY contextPrint.accesskey "П">
+<!ENTITY contextPrintPreview.label "Предварительный просмотр">
+<!ENTITY contextPrintPreview.accesskey "р">
+
+<!-- LOCALIZATION NOTE (columnPicker.applyTo.label):
+ This option in the thread pane column picker pops up a sub-menu containing
+ the "columnPicker.applyToFolder.label" and
+ "columnPicker.applyToFolderAndChildren.label" options. This item indicates
+ a desire to apply the currently displayed set of columns to some other
+ folder(s). The sub-menu items indicate whether we want to apply it to just
+ a folder or also its children.
+ -->
+<!ENTITY columnPicker.applyTo.label "Применить набор колонок к…">
+<!-- LOCALIZATION NOTE (columnPicker.applyToFolder.label):
+ This option in the thread pane column picker is found on a sub-menu beneath
+ the "columnPicker.applyTo.label" alongside
+ "columnPicker.applyToFolderAndChildren.label". It indicates a desire to
+ apply the currently display thread pane column settings to a single folder
+ that the user selects using the same widget as the move to/copy to
+ mechanism (via a series of popups).
+ -->
+<!ENTITY columnPicker.applyToFolder.label "Папке…">
+<!-- LOCALIZATION NOTE (columnPicker.applyToFolderAndChildren.label):
+ This option in the thread pane column picker is found on a sub-menu beneath
+ the "columnPicker.applyTo.label" alongside
+ "columnPicker.applyToFolder.label". It indicates a desire to
+ apply the currently display thread pane column settings to a folder and all
+ of its descendents. The user selects the folder using the same widget as the
+ move to/copy to mechanism (via a series of popups).
+ -->
+<!ENTITY columnPicker.applyToFolderAndChildren.label "Папке и вложенным папкам…">
+<!-- LOCALIZATION NOTE (columnPicker.thisFolder.label):
+ This is used in the folder selection widget for the
+ "columnPicker.applyToFolder.label" and
+ "columnPicker.applyToFolderAndChildren.label" menu options. Whenever
+ a folder has children, it results in a menu popup; the first menu item
+ in that popup is given this label to indicate that that folder should be
+ selected. For example, if folder "A" has two children, "B" and "C", then
+ when the user hovers over "A", a new popup menu will be displayed whose
+ items are "This folder", "B", and "C". This is the equivalent of the
+ "File here" option for the move to/copy to widget.
+ -->
+<!ENTITY columnPicker.thisFolder.label "Этой папке">
+
+<!-- Media (video/audio) controls -->
+<!ENTITY contextPlay.label "Воспроизвести">
+<!ENTITY contextPlay.accesskey "с">
+<!ENTITY contextPause.label "Приостановить">
+<!ENTITY contextPause.accesskey "с">
+<!ENTITY contextMute.label "Отключить звук">
+<!ENTITY contextMute.accesskey "ю">
+<!ENTITY contextUnmute.label "Включить звук">
+<!ENTITY contextUnmute.accesskey "ю">
+
+<!-- Quick Search Bar -->
+<!-- LOCALIZATION NOTE (quickSearchCmd.key):
+ This is actually the key used for the global message search box; we have
+ not changed
+ -->
+<!ENTITY quickSearchCmd.key "k">
+<!-- LOCALIZATION NOTE (search.label.base1):
+ This is the base of the empty text for the global search box. We replace
+ #1 with the contents of the appropriate search.keyLabel.* value for the
+ platform.
+ The goal is to convey to the user that typing in the box will allow them
+ to search for messages globally and that there is a hotkey they can press
+ to get to the box faster. If the global indexer is disabled, the search
+ box will be collapsed and the user will never see this message.
+ -->
+<!ENTITY search.label.base1 "Поиск #1">
+<!-- LOCALIZATION NOTE (search.keyLabel.nonmac):
+ The description of the key-binding to get into the global search box on
+ windows and linux (which use the control key). We use the key defined in
+ the quickSearchCmd.key entity defined above, the letter should match it.
+ -->
+<!ENTITY search.keyLabel.nonmac "&lt;Ctrl+K&gt;">
+<!-- LOCALIZATION NOTE (search.keyLabel.mac):
+ The description of the key-binding to get into the global search box on mac
+ systems. We use the key defined in the quickSearchCmd.key entity defined
+ above, the letter should match it.
+ -->
+<!ENTITY search.keyLabel.mac "&lt;⌘K&gt;">
+
+<!-- Message Header Context Menu -->
+<!ENTITY AddToAddressBook.label "Добавить в адресную книгу…">
+<!ENTITY AddToAddressBook.accesskey "Д">
+<!ENTITY AddDirectlyToAddressBook.label "Добавить в адресную книгу…">
+<!ENTITY AddDirectlyToAddressBook.accesskey "Д">
+<!ENTITY EditContact1.label "Редактировать контакт">
+<!ENTITY EditContact1.accesskey "а">
+<!ENTITY ViewContact.label "Просмотр контакта">
+<!ENTITY ViewContact.accesskey "с">
+<!ENTITY SubscribeToNewsgroup.label "Подписаться на группу новостей">
+<!ENTITY SubscribeToNewsgroup.accesskey "и">
+<!ENTITY SendMessageTo.label "Составить сообщение для">
+<!ENTITY SendMessageTo.accesskey "с">
+<!ENTITY CopyEmailAddress.label "Копировать адрес электронной почты">
+<!ENTITY CopyEmailAddress.accesskey "а">
+<!ENTITY CopyNameAndEmailAddress.label "Копировать имя и адрес электронной почты">
+<!ENTITY CopyNameAndEmailAddress.accesskey "о">
+<!ENTITY CopyNewsgroupName.label "Копировать имя группы новостей">
+<!ENTITY CopyNewsgroupName.accesskey "п">
+<!ENTITY CopyNewsgroupURL.label "Копировать URL группы новостей">
+<!ENTITY CopyNewsgroupURL.accesskey "и">
+<!ENTITY CreateFilterFrom.label "Создать фильтр из…">
+<!ENTITY CreateFilterFrom.accesskey "ф">
+<!ENTITY reportPhishingURL.label "Сообщить о мошенническом письме">
+<!ENTITY reportPhishingURL.accesskey "б">
+
+<!-- Spell checker context menu items -->
+<!ENTITY spellAddDictionaries.label "Добавить словари…">
+<!ENTITY spellAddDictionaries.accesskey "Д">
+
+<!-- Content Pane Context Menu -->
+<!ENTITY saveLinkAsCmd.label "Сохранить объект как…">
+<!ENTITY saveLinkAsCmd.accesskey "С">
+<!ENTITY saveImageAsCmd.label "Сохранить изображение как…">
+<!ENTITY saveImageAsCmd.accesskey "х">
+<!ENTITY copyLinkCmd.label "Копировать ссылку">
+<!ENTITY copyLinkCmd.accesskey "ы">
+<!ENTITY copyImageAllCmd.label "Копировать изображение">
+<!ENTITY copyImageAllCmd.accesskey "и">
+<!ENTITY copyEmailCmd.label "Копировать адрес электронной почты">
+<!ENTITY copyEmailCmd.accesskey "э">
+<!ENTITY openInBrowser.label "Открыть в браузере">
+<!ENTITY openInBrowser.accesskey "б">
+<!ENTITY openLinkInBrowser.label "Открыть ссылку в браузере">
+<!ENTITY openLinkInBrowser.accesskey "б">
+
+<!-- Statusbar -->
+<!ENTITY statusText.label "Готово">
+
+<!-- Mac OS X Window Menu -->
+<!ENTITY minimizeWindow.label "Убрать в Dock">
+<!ENTITY minimizeWindow.key "m">
+<!ENTITY bringAllToFront.label "Все окна — на передний план">
+<!ENTITY zoomWindow.label "Изменить масштаб">
+
+<!-- Mac OS X Application Menu (Cocoa widgets) -->
+<!ENTITY preferencesCmdMac2.label "Настройки">
+<!ENTITY preferencesCmdMac.commandkey ",">
+<!ENTITY preferencesCmdMac.modifiers "accel">
+<!ENTITY servicesMenuMac.label "Службы">
+<!ENTITY hideThisAppCmdMac.label "Скрыть &brandShortName;">
+<!ENTITY hideThisAppCmdMac.commandkey "H">
+<!ENTITY hideThisAppCmdMac.modifiers "accel">
+<!ENTITY hideOtherAppsCmdMac.label "Скрыть остальные">
+<!ENTITY hideOtherAppsCmdMac.commandkey "H">
+<!ENTITY hideOtherAppsCmdMac.modifiers "accel,alt">
+<!ENTITY showAllAppsCmdMac.label "Показать все">
+
+<!-- Mac OS X Dock Icon pop-up menu -->
+<!ENTITY dockOptions.label "Наcтройки значка приложения…">
+<!ENTITY writeNewMessageDock.label "Создать новое сообщение">
+<!ENTITY openAddressBookDock.label "Открыть адресную книгу">
+
+<!-- Content tab Navigation buttons -->
+<!ENTITY browseBackButton.tooltip "На предыдущую страницу">
+<!ENTITY browseForwardButton.tooltip "На следующую страницу">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messenger.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messenger.properties
new file mode 100644
index 0000000000..95a94ca04d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messenger.properties
@@ -0,0 +1,762 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The following are used by the messenger application
+#
+
+# LOCALIZATION NOTE(statusMessage):
+# Do not translate the words %1$S and %2$S below. Place the word %1$S where the
+# account name should appear and %2$S where the status message should appear.
+# EXAMPLE: Jim's Account: Downloading messages...
+statusMessage=%1$S: %2$S
+
+removeAccount=Удалить учётную запись…
+newFolderMenuItem=Папку…
+newSubfolderMenuItem=Вложенную папку…
+newFolder=Создать папку…
+newSubfolder=Создать папку…
+markFolderRead=Отметить папку как прочитанную;Отметить папки как прочитанные;Отметить папки как прочитанные
+markNewsgroupRead=Отметить группу новостей как прочитанную;Отметить группы новостей как прочитанные;Отметить группы новостей как прочитанные
+folderProperties=Свойства папки
+newTag=Новая метка…
+# LOCALIZATION NOTE (getNextNewsMessages): Semi-colon list of plural forms.
+# #1 is the number of news messages to get.
+getNextNewsMessages=Получить следующее #1 новостное сообщение;Получить следующие #1 новостных сообщения;Получить следующие #1 новостных сообщений
+advanceNextPrompt=Перейти к следующему непрочитанному сообщению в «%S»?
+titleNewsPreHost=на
+replyToSender=Ответить отправителю
+reply=Ответить
+EMLFiles=Файлы почты
+OpenEMLFiles=Открыть сообщение
+# LOCALIZATION NOTE(defaultSaveMessageAsFileName): Do not translate ".eml"
+# in the line below. Also, the complete file name should be 8.3.
+defaultSaveMessageAsFileName=message.eml
+# LOCALIZATION NOTE(longMsgSubjectTruncator): A suffix string appended to the filename
+# (created from message subject) if it needed to be truncated due to length.
+longMsgSubjectTruncator=...
+SaveMailAs=Сохранить сообщение как
+SaveAttachment=Сохранить вложение
+SaveAllAttachments=Сохранить все вложения
+DetachAttachment=Отделить вложение
+DetachAllAttachments=Отделить все вложения
+ChooseFolder=Выбор папки
+MessageLoaded=Сообщение загружено…
+PreviewTitle=%S - %S
+saveAttachmentFailed=Не удалось сохранить вложение. Проверьте правильность написания имени файла, подождите некоторое время и попробуйте снова.
+saveMessageFailed=Не удалось сохранить сообщение. Проверьте правильность написания имени файла, подождите некоторое время и попробуйте снова.
+fileExists=«%S» уже существует. Заменить его?
+# LOCALIZATION NOTE(failedToReadFile): %1$S is replaced by the file name, %2$S is replaced by the reason the file load failed.
+failedToReadFile=Не удалось прочесть файл: %1$S по причине: %2$S
+
+downloadingNewsgroups=Загрузка сообщений группы новостей для автономной работы
+downloadingMail=Загрузка почты для автономной работы
+sendingUnsent=Отправка неотправленных сообщений
+
+folderExists=Папка с таким именем уже существует. Пожалуйста, введите другое имя.
+# LOCALIZATION NOTE(confirmDuplicateFolderRename): %1$S is name of folder being moved, %2$S is parent folder name, %3$S is proposed new folder name
+confirmDuplicateFolderRename=Вложенная папка с именем «%1$S» уже существует в папке «%2$S». Вы хотите переместить эту папку, переименовав её в «%3$S»?
+folderCreationFailed=Папка не может быть создана, поскольку указанное имя содержит неизвестные символы. Выберите другое имя и попробуйте снова.
+
+compactingFolder=Сжатие папки «%S»…
+# LOCALIZATION NOTE(compactingDone): %1$S is the compaction gain.
+compactingDone=Сжатие завершено (освобождено примерно %1$S).
+
+confirmFolderDeletionForFilter=Удаление папки «%S» приведет к отключению относящихся к ней фильтров. Вы действительно хотите удалить её?
+alertFilterChanged=Фильтры, относящиеся к этой папке, будут обновлены.
+filterDisabled=Папка «%S» не найдена, поэтому фильтры, относящиеся к ней, отключены. Убедитесь, что эта папка существует и фильтры указывают на правильную папку.
+filterFolderDeniedLocked=Сообщение не может быть отфильтровано в папку «%S», потому что над ним производится другая операция.
+parsingFolderFailed=Не удалось открыть папку «%S», поскольку над ней совершается другая операция. Дождитесь её завершения и попробуйте выбрать эту папку снова.
+deletingMsgsFailed=Не удалось удалить сообщения в папке «%S», поскольку над ней производится другая операция. Дождитесь завершения этой операции и попробуйте снова.
+alertFilterCheckbox=Не показывать больше.
+compactFolderDeniedLock=Папка «%S» не может быть сжата, потому что сейчас над ней совершается другая операция. Подождите некоторое время и попробуйте снова.
+compactFolderWriteFailed=Папка «%S» не может быть сжата из-за ошибки записи в неё. Убедитесь в достаточном количестве свободного дискового пространства и в наличии прав на запись в файловую систему и попробуйте снова.
+compactFolderInsufficientSpace=Некоторые папки (например, «%S») не могут быть сжаты, так как на диске недостаточно свободного места. Пожалуйста, удалите некоторые файлы и повторите попытку.
+filterFolderHdrAddFailed=Сообщение не может быть отфильтровано в папку «%S», так как в неё не удалось добавить сообщение. Убедитесь, что папка отображается правильно, или попытайтесь починить её из свойств папки.
+filterFolderWriteFailed=Сообщение не может быть отфильтровано в папку «%S» из-за ошибки записи в папку. Убедитесь в достаточном количестве свободного дискового пространства и наличии прав на запись в файловую систему и попробуйте снова.
+copyMsgWriteFailed=Сообщения не могут быть перемещены или скопированы в папку «%S» из-за ошибки записи. Чтобы освободить место на накопителе, перейдите в меню «Файл», выберите «Опустошить папку „Удалённые”», затем — «Сжать папки» и попробуйте снова.
+cantMoveMsgWOBodyOffline=Во время автономной работы вы не можете перемещать или копировать сообщения, которые не были предварительно загружены. В окне почтового клиента откройте меню «Файл», выберите «Автономная работа», отключите опцию «Работать автономно» и попробуйте снова.
+operationFailedFolderBusy=Команда не была завершена, так как над папкой производится другая операция. Подождите завершения этой операции и попробуйте снова.
+folderRenameFailed=Папка не может быть переименована. Возможно, она просматривается обработчиком, или новое имя не является корректным.
+# LOCALIZATION NOTE(verboseFolderFormat): %1$S is folder name, %2$S is server name
+verboseFolderFormat=%1$S на %2$S
+# LOCALIZATION NOTE(filterFolderTruncateFailed): %1$S is replaced by the folder name, %2$S is replaced by the brandShortName
+filterFolderTruncateFailed=Не удалось уменьшить папку «Входящие» после отсортировки сообщения в папку «%1$S». Возможно, стоит закрыть «%2$S» и удалить файл «INBOX.msf».
+
+mailboxTooLarge=Размер папки «%S» достиг своего предела и в неё не могут быть помещены новые сообщения. Чтобы освободить место для новых сообщений, удалите старые или ненужные сообщения и сожмите папку.
+outOfDiskSpace=Недостаточно места на диске для загрузки новых сообщений. Попробуйте удалить старую почту, опустошить папку «Удалённые» и сжать папки вашей почты, затем попробуйте снова.
+errorGettingDB=Не удалось открыть индексный файл для «%S». Возможно, произошла ошибка на диске или полный путь превышает допустимую длину.
+defaultServerTag=(По умолчанию)
+
+# Used in message database list view to provide a text value for graphic based cells.
+messageUnread=Не прочитано
+messageHasFlag=Отмечено звёздочкой
+messageHasAttachment=С вложением
+messageJunk=Спам
+messageExpanded=Развернута
+messageCollapsed=Свернута
+
+# Used in the SMTP Account Settings panel when a server value has no properties
+smtpServerList-NotSpecified=<не указано>
+smtpServer-ConnectionSecurityType-0=Нет
+smtpServer-ConnectionSecurityType-1=STARTTLS, если доступно
+smtpServer-ConnectionSecurityType-2=STARTTLS
+smtpServer-ConnectionSecurityType-3=SSL/TLS
+smtpServers-confirmServerDeletionTitle=Удалить сервер
+smtpServers-confirmServerDeletion=Вы уверены, что хотите удалить сервер: \n «%S»?
+
+# Account Settings - Both Incoming and SMTP server
+authNo=Без аутентификации
+authOld=Пароль, первоначальный метод (незащищённо)
+authPasswordCleartextInsecurely=Пароль, без защиты передачи
+authPasswordCleartextViaSSL=Обычный пароль
+authPasswordEncrypted=Зашифрованный пароль
+authKerberos=Kerberos / GSSAPI
+authExternal=Сертификат TLS
+authNTLM=NTLM
+authOAuth2=OAuth2
+authAnySecure=Любой защищённый метод (устарело)
+authAny=Любой метод (незащищённо)
+
+# OAuth2 window title
+# LOCALIZATION NOTE(oauth2WindowTitle):
+# %1$S is the username (or full email address) used for authentication.
+# %2$S is the hostname of the account being authenticated.
+oauth2WindowTitle=Введите учётные данные для %1$S на %2$S
+
+# LOCALIZATION NOTE(serverType-nntp): Do not translate "NNTP" in the line below
+serverType-nntp=Сервер новостей (NNTP)
+# LOCALIZATION NOTE(serverType-pop3): Do not translate "POP" in the line below
+serverType-pop3=Почтовый сервер POP3
+# LOCALIZATION NOTE(serverType-imap): Do not translate "IMAP" in the line below
+serverType-imap=Почтовый сервер IMAP
+serverType-none=Локальный архив почты
+
+sizeColumnTooltip2=Сортировать по размеру
+sizeColumnHeader=Размер
+linesColumnTooltip2=Сортировать по строкам
+linesColumnHeader=Строк
+
+# LOCALIZATION NOTE (getMsgButtonTooltip): Do not translate the word "%S" below.
+# Place the word "%S" in your translation where the name of the comma separated accounts should appear.
+getMsgButtonTooltip=Получить новые сообщения для %S
+# Used to separate email addresses in a list. Note the trailing space ', '
+getMsgButtonTooltip.listSeparator=,\u0020
+
+# status feedback stuff
+documentDone=
+documentLoading=Загрузка сообщения…
+
+# LOCALIZATION NOTE (autosyncProgress): Do not translate the word "%1$S" or "%2$S" below.
+# Place the word %1$S in your translation where the name of the comma separated folders should appear.
+# Place the word %2$S in your translation where the name of the comma separated accounts should appear.
+autosyncProgress=Идёт синхронизация сообщений в %1$S из %2$S…
+
+unreadMsgStatus=Непрочитанных: %S
+selectedMsgStatus=Выбранных: %S
+totalMsgStatus=Всего: %S
+
+# localized folder names
+
+localFolders=Локальные папки
+
+# LOCALIZATION NOTE (inboxFolderName): OK to translate all foldernames, bugzilla #57440 & bugzilla #23625 fixed
+inboxFolderName=Входящие
+trashFolderName=Удалённые
+sentFolderName=Отправленные
+draftsFolderName=Черновики
+templatesFolderName=Шаблоны
+outboxFolderName=Исходящие
+junkFolderName=Спам
+archivesFolderName=Архивы
+
+# "Normal" priority is often blank,
+# depending on the consumers of these strings
+priorityLowest=Самая низкая
+priorityLow=Низкая
+priorityNormal=Обычная
+priorityHigh=Высокая
+priorityHighest=Самая высокая
+
+#Group by date thread pane titles
+today=Сегодня
+yesterday=Вчера
+lastWeek=Прошлая неделя
+last7Days=За последние 7 дней
+twoWeeksAgo=Позапрошлая неделя
+last14Days=За последние 14 дней
+older=Старше
+futureDate=Будущее
+
+#Grouped By Tags
+untaggedMessages=Сообщения без метки
+
+# Grouped by status
+messagesWithNoStatus=Без состояния
+
+#Grouped by priority
+noPriority=Без метки важности
+
+#Grouped by has attachments
+noAttachments=Без вложений
+attachments=Вложения
+
+#Grouped by starred
+notFlagged=Не отмечено звёздочкой
+groupFlagged=Отмечено звёздочкой
+
+# defaults descriptions for tag prefs listed in mailnews.js
+# (we keep the .labels. names for backwards compatibility)
+mailnews.tags.remove=Удалить все метки
+mailnews.labels.description.1=Важное
+mailnews.labels.description.2=Рабочее
+mailnews.labels.description.3=Личное
+mailnews.labels.description.4=К исполнению
+mailnews.labels.description.5=Отложено
+
+# Format definition tag menu texts.
+# This is necessary in order to get the accesskeys to be the on the first
+# character of the menu text instead of after the menu text.
+# If a key definition exists for the tag at index n, that key's key will be
+# taken as the accesskey, eg.
+# <key id="key_tag3" key="&tagCmd3.key;" oncommand="ToggleMessageTagKey(3);"/>
+# makes the third tag have the accesskey &tagCmd3.key;.
+# In the menuitem's label, this accesskey appears at %1$S below; %2$S will be
+# replaced by the tag label.
+mailnews.tags.format=%1$S %2$S
+
+replied=Ответ написан
+forwarded=Переслано
+redirected=Перенаправлено
+new=Новое
+read=Прочитано
+flagged=Отмечено звездочкой
+
+# for junk status picker in search and mail views
+junk=Спам
+
+# for junk score origin picker in search and mail views
+junkScoreOriginPlugin=Плагином
+junkScoreOriginFilter=Фильтром
+junkScoreOriginWhitelist=Белым списком
+junkScoreOriginUser=Пользователем
+junkScoreOriginImapFlag=Флагом IMAP
+
+# for the has attachment picker in search and mail views
+hasAttachments=С вложениями
+
+# for the Tag picker in search and mail views.
+tag=Метки
+
+# LOCALIZATION NOTE(andOthers):
+# for multiple authors, add this abbreviation to the first author to indicate
+# there are more; for the From column in the threadpane message list.
+andOthers=и другие авторы.
+
+# whether to also show phonetic fields in the addressbook
+# LOCALIZATION NOTE(mail.addr_book.show_phonetic_fields):
+# the only valid values are: true OR false (choose from the untranslated English words)
+mail.addr_book.show_phonetic_fields=false
+
+# valid format options are:
+# 1: yyyy/mm/dd
+# 2: yyyy/dd/mm
+# 3: mm/dd/yyyy
+# 4: mm/yyyy/dd
+# 5: dd/mm/yyyy
+# 6: dd/yyyy/mm
+#
+# 0: auto-detect the current locale format
+# a separator has to be either '/', '-', '.' and the year in Christian year
+# otherwise mm/dd/yyyy (option 3) is used
+#
+mailnews.search_date_format=5
+# separator for search date (e.g. "/", "-"), or empty when search_date_format is zero
+mailnews.search_date_separator=.
+# leading zeros for day and month values, not used if mailnews.search_date_format is not zero
+mailnews.search_date_leading_zeros=true
+
+# offline msg
+nocachedbodybody2=Сообщение не было загружено с сервера для автономного просмотра. Чтобы прочитать его, подключитесь к Интернету, выберите из меню «Файл» подменю «Автономная работа» и отключите опцию «Работать автономно». Вы также можете выбрать папки и сообщения для автономного просмотра. Для этого выберите из меню «Файл» подменю «Автономная работа» и выберите в нём пункт «Загрузить/синхронизировать сейчас». Вы можете регулировать занимаемое сообщениями дисковое пространство, чтобы не загружать слишком большие сообщения.
+
+# LOCALIZATION NOTE(acctCentralTitleFormat): %1$S is brand, %2$S is account type, %3$S is account name
+acctCentralTitleFormat=«%1$S» «%2$S» — «%3$S»
+mailAcctType=Почта
+newsAcctType=Новости
+feedsAcctType=Ленты новостей
+
+# LOCALIZATION NOTE(nocachedbodytitle): Do not translate "<TITLE>" or "</TITLE>" in the line below
+nocachedbodytitle=<TITLE>Для просмотра сообщения подключитесь к сети</TITLE>\n
+
+# mailWindowOverlay.js
+confirmUnsubscribeTitle=Подтверждение отписки
+confirmUnsubscribeText=Вы действительно хотите отписаться от «%S»?
+confirmUnsubscribeManyText=Вы действительно хотите отписаться от этих групп новостей?
+restoreAllTabs=Восстановить все вкладки
+
+confirmMarkAllFoldersReadTitle=Отметить все папки как прочитанные
+confirmMarkAllFoldersReadMessage=Вы уверены, что хотите пометить все сообщения во всех папках этой учётной записи как прочитанные?
+
+# LOCALIZATION NOTE(junkBarMessage): %S is brand
+junkBarMessage=%S считает, что это сообщение является спамом.
+junkBarButton=Не спам
+junkBarButtonKey=е
+junkBarInfoButton=Подробнее
+junkBarInfoButtonKey=о
+
+# LOCALIZATION NOTE(remoteContentBarMessage): %S is brand
+remoteContentBarMessage=В целях безопасности, %S заблокировал в этом сообщении загрузку содержимого из Интернета.
+remoteContentPrefLabel=Настройки
+remoteContentPrefAccesskey=а
+remoteContentPrefLabelUnix=Настройки
+remoteContentPrefAccesskeyUnix=а
+
+# LOCALIZATION NOTE(remoteAllowResource): %S is origin
+remoteAllowResource=Разрешить содержимое из Интернета с %S
+# LOCALIZATION NOTE(remoteAllowAll): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# #1 is the number of origins
+remoteAllowAll=Разрешить содержимое из Интернета с #1 перечисленного выше источника;Разрешить содержимое из Интернета с #1 перечисленных выше источников;Разрешить содержимое из Интернета с #1 перечисленных выше источников
+
+phishingBarMessage=Это сообщение может быть мошенническим.
+phishingBarPrefLabel=Настройки
+phishingBarPrefAccesskey=а
+phishingBarPrefLabelUnix=Настройки
+phishingBarPrefAccesskeyUnix=а
+
+mdnBarIgnoreButton=Игнорировать запрос
+mdnBarIgnoreButtonKey=н
+mdnBarSendReqButton=Отправить уведомление
+mdnBarSendReqButtonKey=п
+
+draftMessageMsg=Это черновик сообщения.
+draftMessageButton=Изменить
+draftMessageButtonKey=з
+
+# msgHdrViewOverlay.js
+openLabel=Открыть
+openLabelAccesskey=ы
+saveLabel=Сохранить как…
+saveLabelAccesskey=х
+detachLabel=Отделить…
+detachLabelAccesskey=и
+deleteLabel=Удалить
+deleteLabelAccesskey=л
+openFolderLabel=Открыть папку с файлом
+openFolderLabelAccesskey=к
+deleteAttachments=Из этого сообщения сейчас будут удалены следующие вложенные файлы:\n«%S»\nДанная операция не может быть отменена. Вы действительно хотите её произвести?
+detachAttachments=Следующие вложения были успешно сохранены и сейчас будут удалены из этого сообщения:\n«%S»\nДанная операция не может быть отменена. Вы действительно хотите её произвести?
+deleteAttachmentFailure=Ошибка удаления выделенных вложенных файлов.
+emptyAttachment=Это вложение, похоже, является пустым.\nПожалуйста, свяжитесь с отправителем этого вложения.\nЧасто корпоративные межсетевые экраны или антивирусы портят содержимое вложенных файлов.
+externalAttachmentNotFound=Этот отделённый файл или вложенная ссылка не найдены или более недоступны в этом месте.
+
+# LOCALIZATION NOTE (attachmentCount): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# #1 number of attachments
+attachmentCount=#1 вложение;#1 вложения;#1 вложений
+
+# LOCALIZATION NOTE (attachmentCountSingle): This is the format for the
+# attachment header when a message has only one attachment. This is separate
+# from attachmentCount above, since attachmentCountSingle typically ends with a
+# colon.
+attachmentCountSingle=1 вложение:
+
+# LOCALIZATION NOTE (attachmentSizeUnknown): The string to show for the total
+# size of all attachments when none of the attachments' sizes can be detected.
+attachmentSizeUnknown=размер неизвестен
+
+# LOCALIZATION NOTE (attachmentSizeAtLeast): The string to show for the total
+# size of all attachments when at least one (but not all) of the attachments'
+# sizes can't be detected. %1$S is the formatted size.
+attachmentSizeAtLeast=по меньшей мере %1$S
+
+# This is the format for prepending accesskeys to the
+# each of the attachments in the file|attachments menu:
+# ie: 1 file.txt
+# 2 another file.txt
+attachmentDisplayNameFormat=%S %S
+
+# This is the heading for the attachment summary when printing an email
+attachmentsPrintHeader=Вложения:
+
+# Connection Error Messages
+# LOCALIZATION NOTE(unknownHostError): %S is the server name
+unknownHostError=Ошибка соединения с сервером «%S».
+# LOCALIZATION NOTE(connectionRefusedError): %S is the server name
+connectionRefusedError=Не удалось соединиться с сервером «%S»; в соединении отказано.
+# LOCALIZATION NOTE(netTimeoutError): %S is the server name
+netTimeoutError=Время ожидания соединения с сервером «%S» истекло.
+# LOCALIZATION NOTE(netResetError): %S is the server name
+netResetError=Соединение с сервером %S было сброшено.
+# LOCALIZATION NOTE(netInterruptError): %S is the server name
+netInterruptError=Соединение с сервером %S было прервано.
+
+recipientSearchCriteria=Поля «Тема» или «Адресат» содержат:
+fromSearchCriteria=Поля «Тема» или «От» содержат:
+
+# LOCALIZATION NOTE(biffNotification): %1$S is the number of new messages
+biffNotification_message=%1$S новое сообщение
+biffNotification_messages=новых сообщений: %1$S
+
+# LOCALIZATION NOTE(newMailNotification_message): %1$S is the name of the account %2$S is the number of new messages
+newMailNotification_message=%1$S получили %2$S новое сообщение
+
+# LOCALIZATION NOTE(newMailNotification_messages): %1$S is the name of the account %2$S is the number of new messages
+newMailNotification_messages=%1$S получили %2$S новых сообщений
+
+# LOCALIZATION NOTE(newMailNotification_messagetitle): %1$S is subject of new message and %2$S is sender of new message.
+# This is UNIX only
+newMailNotification_messagetitle=%1$S от %2$S
+
+# LOCALIZATION NOTE(newMailAlert_message):
+# Semi-colon list of plural forms. See:
+# https://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the name of the account, #2 is the number of new messages
+newMailAlert_message=#1 получил #2 новое сообщение;#1 получил #2 новых сообщения;#1 получил #2 новых сообщений
+
+# For the Quota tab in the mail folder properties dialog
+quotaPercentUsed=%S%% заполнено
+# for quota in main window (commandglue.js)
+percent=%S%%
+quotaTooltip2=IMAP-квота: использовано %S из %S. Щёлкните для получения подробностей.
+
+# for message views
+confirmViewDeleteTitle=Подтверждение
+confirmViewDeleteMessage=Вы действительно хотите удалить этот режим просмотра?
+
+# for virtual folders
+confirmSavedSearchTitle=Подтверждение удаления
+confirmSavedSearchDeleteMessage=Вы уверены, что хотите удалить эту виртуальную папку?
+
+## @name ENTER_PASSWORD_PROMPT
+## @loc None
+# LOCALIZATION NOTE (passwordPrompt): Do not translate the word %S below.
+# Place the word "%S" in your translation where the email address
+# or the username should appear
+passwordPrompt=Введите пароль для %1$S на «%2$S»:
+
+## @name ENTER_PASSWORD_PROMPT_TITLE
+## @loc None
+passwordTitle=Введите пароль для почтового сервера
+
+# for checking if the user really wants to open lots of messages in separate windows.
+openWindowWarningTitle=Подтверждение
+# LOCALIZATION NOTE (openWindowWarningConfirmation): Semi-colon list of plural forms.
+# #1 is the number of messages the user is attempting to open.
+openWindowWarningConfirmation=Открытие #1 сообщения может быть медленным. Продолжить?;Открытие #1 сообщений может быть медленным. Продолжить?;Открытие #1 сообщений может быть медленным. Продолжить?
+
+# for checking if the user really wants to open lots of messages in tabs.
+openTabWarningTitle=Подтверждение
+# LOCALIZATION NOTE (openTabWarningConfirmation): Semi-colon list of plural forms.
+# #1 is the number of messages the user is attempting to open.
+openTabWarningConfirmation=Открытие #1 сообщения может быть медленным. Продолжить?;Открытие #1 сообщений может быть медленным. Продолжить?;Открытие #1 сообщений может быть медленным. Продолжить?
+
+# for warning the user that a tag they're trying to create already exists
+tagExists=Метка с таким именем уже существует.
+
+# title of the edit tag dialog
+editTagTitle=Редактировать метку
+
+# for the virtual folder list dialog title
+# %S is the name of the saved search folder
+editVirtualFolderPropertiesTitle=Редактировать настройки виртуальной папки для «%S»
+# LOCALIZATION NOTE (foldersChosen): #1 number of chosen folders
+virtualFolderSourcesChosen=выбрана #1 папка;выбрано #1 папки;выбрано #1 папок
+
+#alert to inform the user to choose one or more folders to search for a saved search folder
+alertNoSearchFoldersSelected=Вы должны выбрать по меньшей мере одну папку в которой будет производиться поиск для создания виртуальной папки.
+
+# These are displayed in the message and folder pane windows
+# LOCALIZATION NOTE %.*f is the abbreviated size in the appropriate units
+byteAbbreviation2=%.*f байт
+kiloByteAbbreviation2=%.*f КБ
+megaByteAbbreviation2=%.*f МБ
+gigaByteAbbreviation2=%.*f ГБ
+teraByteAbbreviation2=%.*f ТБ
+petaByteAbbreviation2=%.*f ПБ
+
+## LOCALIZATION NOTE(folderWithAccount):
+## This is used to show folder name together with an account name.
+## %1$S = folder name
+## %2$S = account name
+folderWithAccount=%1$S - %2$S
+## LOCALIZATION NOTE(folderWithUnreadMsgs):
+## This is a concatenation of two strings to compose a folder label with unread messages.
+## %1$S = folder name
+## %2$S = count of unread messages
+folderWithUnreadMsgs=%1$S (%2$S)
+## LOCALIZATION NOTE(summarizedValue):
+## This string shows an indication that the value shown is actually a summary
+## accumulated from all subfolders.
+## %S = summarized value from all subfolders
+folderSummarizedSymbolValue=▾%S
+## LOCALIZATION NOTE(subfoldersExplanation):
+## This is a tooltip message shown on the values in the numeric folder pane columns.
+## %1$S = is the count of messages having the respective property, found in the folder under mouse cursor
+## %2$S = is the count of messages having the respective property, found in subfolders of the folder under mouse cursor
+subfoldersExplanation=%1$S в этой папке, %2$S в подпапках
+
+# Error message if message for a message id wasn't found
+errorOpenMessageForMessageIdTitle=Ошибка при открытии идентификатора
+errorOpenMessageForMessageIdMessage=Сообщение с идентификатором %S не найдено
+
+# Warnings to alert users about phishing urls
+confirmPhishingTitle=Предупреждение о попытке мошенничества
+linkMismatchTitle=Обнаружено несоответствие ссылок
+#LOCALIZATION NOTE %1$S is the brand name, %2$S is the host name of the url being visited
+confirmPhishingUrl=%1$S считает это сообщение мошенническим. Ссылки в сообщении ведут на страницы, возможно, пытающиеся имитировать те, которые вы хотите посетить. Вы уверены что хотите посетить %2$S?
+#LOCALIZATION NOTE %1$S is the host name of indicated host, %2$S is the host name of the actual host.
+confirmPhishingUrlAlternate=Ссылка, на которую вы только что нажали, похоже, ведёт на другой сайт, а не тот, который указан в тексте ссылки. Иногда это используется для отслеживания нажатий на ссылки, но это также может быть мошенничеством.\n\nВ тексте ссылки указано, она ведёт на %1$S, но на самом деле она ведёт на %2$S.
+#LOCALIZATION NOTE $1$S is the host name of the indicated host.
+confirmPhishingGoAhead=Всё равно перейти на %1$S
+#LOCALIZATION NOTE %1$S is the host name that was displayed to the user.
+confirmPhishingGoDirect=Перейти на %1$S
+
+# Check for Updates
+# LOCALIZATION NOTE (updatesItem_*): these are alternative labels for Check for Update item in Help menu.
+# Which one is used depends on Update process state.
+updatesItem_default=Проверить наличие обновлений…
+updatesItem_defaultFallback=Проверить наличие обновлений…
+updatesItem_default.accesskey=в
+updatesItem_downloading=Идёт загрузка %S…
+updatesItem_downloadingFallback=Идёт загрузка обновления…
+updatesItem_downloading.accesskey=з
+updatesItem_resume=Продолжить загрузку %S…
+updatesItem_resumeFallback=Продолжить загрузку обновления…
+updatesItem_resume.accesskey=з
+updatesItem_pending=Установить загруженное обновление…
+updatesItem_pendingFallback=Установить загруженное обновление…
+updatesItem_pending.accesskey=з
+
+# Folder Pane Header Title Strings
+folderPaneModeHeader_all=Все папки
+folderPaneModeHeader_unread=Непрочитанные папки
+folderPaneModeHeader_favorite=Избранные папки
+folderPaneModeHeader_recent=Недавно открытые папки
+folderPaneModeHeader_smart=Объединённые папки
+unifiedAccountName=Объединённые папки
+
+# Copy / Move to Folder Again
+#LOCALIZATION NOTE %1$S is the name of the folder we will move to. moveToFolderAgainAccessKey
+# should have the same value as copyToFolderAgainAccessKey as they are the same menu item in the UI
+# moveToFolderAgainAccessKey should also be a letter that occurs before %1$S
+moveToFolderAgain=Повторить перемещение в «%1$S»
+moveToFolderAgainAccessKey=П
+#LOCALIZATION NOTE %1$S is the name of the folder we will copy to
+# copyToFolderAgainAccessKey
+# should have the same value as moveToFolderAgainAccessKey as they are the same menu item in the UI
+# copyToFolderAgainAccessKey should also be a letter that occurs before %1$S
+copyToFolderAgain=Повторить копирование в «%1$S»
+copyToFolderAgainAccessKey=П
+
+#LOCALIZATION NOTE(mdnBarMessageNormal) %1$S is the name of the sender
+mdnBarMessageNormal=%1$S запросил уведомление о прочтении вами этого сообщения.
+#LOCALIZATION NOTE(mdnBarMessageAddressDiffers) %1$S is the name of the sender, %2$S is the address(es) to send return receipt to
+mdnBarMessageAddressDiffers=%1$S запросил уведомление (на адрес %2$S) о прочтении вами этого сообщения.
+
+# mailCommands.js
+emptyJunkFolderTitle=Опустошение «%S»
+emptyJunkFolderMessage=Удалить все сообщения и вложенные папки, находящиеся в папке «Спам»?
+emptyJunkDontAsk=Не спрашивать в следующий раз
+emptyTrashFolderTitle=Опустошение «%S»
+emptyTrashFolderMessage=Удалить все сообщения и вложенные папки, находящиеся в папке «Удалённые»?
+emptyTrashDontAsk=Не спрашивать в следующий раз
+
+# junkCommands.js
+junkAnalysisPercentComplete=Анализ на спам — выполнено %S
+processingJunkMessages=Идёт обработка спама
+
+# Messenger bootstrapping messages
+fileNotFoundTitle = Файл не найден
+#LOCALIZATION NOTE(fileNotFoundMsg): %S is the filename
+fileNotFoundMsg = Файл %S не существует.
+
+fileEmptyTitle = Файл пуст
+#LOCALIZATION NOTE(fileEmptyMsg): %S is the filename
+fileEmptyMsg = Файл «%S» является пустым.
+
+# LOCALIZATION NOTE (headerMoreAddrs): semicolon separated list of plural
+# forms of the word "more" as used after the number of addresses
+# currently hidden while displaying a header such as "to", "cc", or "bcc"
+# in the message header box. English has two identical forms here, so it will
+# construct strings that look like (for example) "1 more" or "20 more".
+# <https://developer.mozilla.org/en/Localization_and_Plurals> has details
+# on this mechanism.
+headerMoreAddrs=ещё #1;ещё #1;ещё #1
+
+# LOCALIZATION NOTE (headerMoreAddrsTooltip): semicolon separated list of
+# plural forms of the phrase ", and #1 more" as used in the tooltip text
+# of the more widget displayed in the header pane (see headerMoreAddrs).
+# English has two identical forms here, so it will construct strings that
+# look like (for example) ", and 1 more" or ", and 20 more".
+# <https://developer.mozilla.org/en/Localization_and_Plurals> has details
+# on this mechanism.
+headerMoreAddrsTooltip=, и ещё #1;, и ещё #1;, и ещё #1
+
+# LOCALIZATION NOTE (headertoFieldMe): first person prepositional object
+# pronoun used in the "to" header of the message header pane. This is also
+# used for the fallback case if a header-specific localization is not
+# available.
+headertoFieldMe=Мне
+
+# LOCALIZATION NOTE (headerfromFieldMe): first person prepositional object
+# pronoun used in the "from" header of the message header pane.
+headerfromFieldMe=Я
+
+# LOCALIZATION NOTE (headerreply-toFieldMe): first person prepositional
+# object pronoun used in the "reply-to" header of the message header pane.
+headerreply-toFieldMe=Мне
+
+# LOCALIZATION NOTE (headerccFieldMe): first person prepositional object
+# pronoun used in the "cc" header of the message header pane.
+headerccFieldMe=Мне
+
+# LOCALIZATION NOTE (headerbccFieldMe): first person prepositional object
+# pronoun used in the "bcc" header of the message header pane.
+headerbccFieldMe=Мне
+
+expandAttachmentPaneTooltip=Показать панель вложений
+collapseAttachmentPaneTooltip=Скрыть панель вложений
+
+# Shown when content tabs are being loaded.
+loadingTab=Загрузка…
+
+confirmMsgDelete.title=Подтверждение удаления
+confirmMsgDelete.collapsed.desc=Это приведёт к удалению сообщений в свёрнутых обсуждениях. Вы действительно хотите это сделать?
+confirmMsgDelete.deleteNoTrash.desc=Это приведёт к немедленному удалению сообщений, без перемещения в Удалённые. Вы действительно хотите это сделать?
+confirmMsgDelete.deleteFromTrash.desc=Это навсегда удалит сообщения из папки «Удалённые». Вы уверены, что хотите продолжить?
+confirmMsgDelete.dontAsk.label=Не спрашивать в следующий раз
+confirmMsgDelete.delete.label=Удалить
+
+mailServerLoginFailedTitle=Ошибка входа на сервер
+# LOCALIZATION NOTE (mailServerLoginFailedTitleWithAccount):
+# "%S" is the account name.
+mailServerLoginFailedTitleWithAccount=Ошибка входа в учётную запись «%S»
+# LOCALIZATION NOTE (mailServerLoginFailed2):
+# %1$S is the host name of the server, %2$S is the user name.
+mailServerLoginFailed2=Ошибка входа на сервер «%1$S» с именем пользователя «%2$S».
+mailServerLoginFailedRetryButton=&Повторить
+mailServerLoginFailedEnterNewPasswordButton=&Ввести новый пароль
+
+# LOCALIZATION NOTE (threadPane.columnPicker.confirmFolder.noChildren.title):
+# When the user selects a folder to apply the currently displayed columns to
+# via the "columnPicker.applyToFolder.label" menu option, this is the title of
+# the confirmation dialog used to verify they selected the correct folder. This
+# is the case in which we apply the columns only to the folder and not to any of
+# its children.
+threadPane.columnPicker.confirmFolder.noChildren.title=Применить изменения?
+# LOCALIZATION NOTE (threadPane.columnPicker.confirmFolder.noChildren.message):
+# When the user selects a folder to apply the currently displayed columns to
+# via the "columnPicker.applyToFolder.label" menu option, this is the text of
+# the confirmation dialog used to verify they selected the correct folder. The
+# string '%S' is replaced with the name of the folder the user selected in
+# order to help them confirm they picked what they thought they picked. This
+# is the case in which we apply the columns only to the folder and not to any of
+# its children.
+threadPane.columnPicker.confirmFolder.noChildren.message=Применить набор колонок текущей папки к %S?
+
+# LOCALIZATION NOTE (threadPane.columnPicker.confirmFolder.withChildren.title):
+# When the user selects a folder to apply the currently displayed columns to via
+# the "columnPicker.applyToFolderAndChildren.label" menu option, this is the
+# title of the confirmation dialog used to verify they selected the correct
+# folder. This is the case in which we apply the columns to the folder and all
+# of its children.
+threadPane.columnPicker.confirmFolder.withChildren.title=Применить изменения?
+# LOCALIZATION NOTE (threadPane.columnPicker.confirmFolder.withChildren.message):
+# When the user selects a folder to apply the currently displayed columns to via
+# the "columnPicker.applyToFolderAndChildren.label" menu option, this is the
+# text of the confirmation dialog used to verify they selected the correct
+# folder. The string '%S' is replaced with the name of the folder the user
+# selected in order to help them confirm they picked what they thought they
+# picked. This is the case in which we apply the columns to the folder and all
+# of its children.
+threadPane.columnPicker.confirmFolder.withChildren.message=Применить набор колонок текущей папки к %S и её вложенным папкам?
+
+# LOCALIZATION NOTE (lwthemeInstallRequest.message): %S will be replaced with
+# the host name of the site.
+lwthemeInstallRequest.message=Этот сайт (%S) попытался установить тему.
+lwthemeInstallRequest.allowButton=Разрешить
+lwthemeInstallRequest.allowButton.accesskey=ш
+
+lwthemePostInstallNotification.message=Была установлена новая тема.
+lwthemePostInstallNotification.undoButton=Отменить
+lwthemePostInstallNotification.undoButton.accesskey=м
+lwthemePostInstallNotification.manageButton=Управление темами…
+lwthemePostInstallNotification.manageButton.accesskey=п
+
+# troubleshootModeRestart
+troubleshootModeRestartPromptTitle=Перезапустить в безопасном режиме
+troubleshootModeRestartPromptMessage=В безопасном режиме все дополнения будут отключены, а для некоторых настроек — временно установлены значения по умолчанию.\nВы действительно хотите перезапустить программу в этом режиме?
+troubleshootModeRestartButton=Перезапустить
+
+# LOCALIZATION NOTE (downloadAndInstallButton.label): %S is replaced by the
+# version of the update: "Update to 28.0".
+update.downloadAndInstallButton.label=Обновить до %S
+update.downloadAndInstallButton.accesskey=н
+
+# Sanitize
+# LOCALIZATION NOTE (sanitizeDialog2.everything.title): When "Time range to
+# clear" is set to "Everything", the Clear Recent History dialog's title is
+# changed to this. See UI mockup and comment 11 at bug 480169 -->
+sanitizeDialog2.everything.title=Стирание всей истории
+sanitizeButtonOK=Стереть сейчас
+# LOCALIZATION NOTE (sanitizeEverythingWarning2): Warning that appears when
+# "Time range to clear" is set to "Everything" in Clear Recent History dialog,
+# provided that the user has not modified the default set of history items to clear.
+sanitizeEverythingWarning2=Вся история будет очищена.
+# LOCALIZATION NOTE (sanitizeSelectedWarning): Warning that appears when
+# "Time range to clear" is set to "Everything" in Clear Recent History dialog,
+# provided that the user has modified the default set of history items to clear.
+sanitizeSelectedWarning=Все выделенные пункты будут очищены.
+
+learnMoreAboutIgnoreThread=Подробнее…
+learnMoreAboutIgnoreThreadAccessKey = о
+undoIgnoreThread=Отмена пропуска обсуждения
+undoIgnoreThreadAccessKey=м
+undoIgnoreSubthread=Отмена пропуска ветки обсуждения
+undoIgnoreSubthreadAccessKey=м
+# LOCALIZATION NOTE (ignoredThreadFeedback): #1 is the message thread title
+ignoredThreadFeedback=Ответы в обсуждение «#1» показаны не будут.
+# LOCALIZATION NOTE (ignoredSubthreadFeedback): #1 is the message subthread title
+ignoredSubthreadFeedback=Ответы в ветку обсуждения «#1» показаны не будут.
+# LOCALIZATION NOTE (ignoredThreadsFeedback): Semi-colon list of plural forms.
+# #1 is the number of threads
+ignoredThreadsFeedback=Ответы в «#1» выбранное обсуждение показаны не будут.;Ответы в «#1» выбранных обсуждения показаны не будут.;Ответы в «#1» выбранных обсуждений показаны не будут.
+# LOCALIZATION NOTE (ignoredSubthreadsFeedback): Semi-colon list of plural forms.
+# #1 is number of subthreads
+ignoredSubthreadsFeedback=Ответы в «#1» выбранную ветку обсуждения показаны не будут.;Ответы в «#1» выбранных ветки обсуждения показаны не будут.;Ответы в «#1» выбранных веток обсуждений показаны не будут.
+# LOCALIZATION NOTE (saveAsType): replace %S with the extension of the file to be saved.
+saveAsType=%S файл
+
+# LOCALIZATION NOTE (openSearch.label): The label used in the autocomplete
+# widget to refer to a search on the web for a short string containing at most
+# 15 characters. %1$S is the search provider to use. %2$S is the string to
+# search for.
+openSearch.label=Искать «%2$S» в %1$S
+
+# LOCALIZATION NOTE (openSearch.label.truncated): The label used in the
+# autocomplete widget to refer to a search on the web for a short string
+# containing more than 15 characters. %1$S is the search provider to use. %2$S
+# is the string to search for, truncated to 15 characters.
+openSearch.label.truncated=Искать «%2$S…» в %1$S
+
+# LOCALIZATION NOTE (aboutDialog.architecture.*):
+# The sixtyFourBit and thirtyTwoBit strings describe the architecture of the
+# current Thunderbird build: 32-bit or 64-bit. These strings are used in parentheses
+# after the Thunderbird version in the About dialog,
+# e.g.: "48.0.2 (32-bit)" or "51.0a1 (2016-09-05) (64-bit)".
+aboutDialog.architecture.sixtyFourBit = 64-битный
+aboutDialog.architecture.thirtyTwoBit = 32-битный
+
+errorConsoleTitle = Консоль ошибок
+
+# LOCALIZATION NOTE (panel.back):
+# This is used by screen readers to label the "back" button in various browser
+# popup panels, including the sliding subviews of the appmenu.
+panel.back = Назад
+
+# LOCALIZATION NOTE (folderErrorAlertTitle):
+# %S is a pretty string to identify the folder and account.
+# EXAMPLE: Error - Inbox on bob@example.com
+folderErrorAlertTitle = Ошибка - %S
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdAdvancedEdit.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdAdvancedEdit.dtd
new file mode 100644
index 0000000000..6fb82d8d3b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdAdvancedEdit.dtd
@@ -0,0 +1,18 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY WindowTitle.label "Редактор дополнительных свойств">
+<!ENTITY AttName.label "Атрибут:">
+<!ENTITY AttValue.label "Значение:">
+<!ENTITY PropertyName.label "Свойство:">
+<!ENTITY currentattributesfor.label "Текущие атрибуты для:">
+<!ENTITY tree.attributeHeader.label "Атрибут">
+<!ENTITY tree.propertyHeader.label "Свойство">
+<!ENTITY tree.valueHeader.label "Значение">
+<!ENTITY tabHTML.label "HTML-атрибуты">
+<!ENTITY tabCSS.label "Стилевое оформление">
+<!ENTITY tabJSE.label "События JavaScript">
+
+<!ENTITY editAttribute.label "Щёлкните по объекту вверху, чтобы изменить его значение">
+<!ENTITY removeAttribute.label "Удалить">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdColorPicker.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdColorPicker.dtd
new file mode 100644
index 0000000000..1eac38079a
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdColorPicker.dtd
@@ -0,0 +1,22 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY windowTitle.label "Цвет">
+<!ENTITY lastPickedColor.label "Последний выбранный цвет">
+<!ENTITY lastPickedColor.accessKey "о">
+<!ENTITY chooseColor1.label "Выберите цвет:">
+<!ENTITY chooseColor2.label "Введите его HTML-код">
+<!ENTITY chooseColor2.accessKey "и">
+<!ENTITY setColorExample.label "(например: «#0000ff» или «blue»):">
+<!ENTITY default.label "По умолчанию">
+<!ENTITY default.accessKey "у">
+<!ENTITY palette.label "Палитра:">
+<!ENTITY standardPalette.label "Стандартная">
+<!ENTITY webPalette.label "«Безопасные» цвета">
+<!ENTITY background.label "Фон для:">
+<!ENTITY background.accessKey "Ф">
+<!ENTITY table.label "Таблица">
+<!ENTITY table.accessKey "Т">
+<!ENTITY cell.label "Ячеек">
+<!ENTITY cell.accessKey "Я">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdConvertToTable.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdConvertToTable.dtd
new file mode 100644
index 0000000000..d38c216ae8
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdConvertToTable.dtd
@@ -0,0 +1,15 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Преобразовать в таблицу">
+<!ENTITY instructions1.label "Компоновщик создает новую строку в таблице для каждого параграфа в выделении.">
+<!ENTITY instructions2.label "Выберите символ, который будет использоваться для разделения выделения на колонки:">
+<!ENTITY commaRadio.label "Запятая">
+<!ENTITY spaceRadio.label "Пробел">
+<!ENTITY otherRadio.label "Другой символ:">
+<!ENTITY deleteCharCheck.label "Удалить символ разделения">
+<!ENTITY collapseSpaces.label "Игнорировать лишние пробелы">
+<!ENTITY collapseSpaces.tooltip "Преобразовать смежные пробелы в один разделитель">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdDialogOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdDialogOverlay.dtd
new file mode 100644
index 0000000000..99d681ca85
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdDialogOverlay.dtd
@@ -0,0 +1,17 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY AdvancedEditButton.label "Дополнительно…">
+<!ENTITY AdvancedEditButton.accessKey "Д">
+<!ENTITY AdvancedEditButton.tooltip "Добавление или изменение HTML-атрибутов, атрибутов стилей и JavaScript">
+<!ENTITY chooseFileButton.label "Выбрать файл…">
+<!ENTITY chooseFileButton.accessKey "р">
+<!ENTITY chooseFileLinkButton.label "Выбрать файл…">
+<!ENTITY chooseFileLinkButton.accessKey "б">
+<!ENTITY makeUrlRelative.label "Относительный URL">
+<!ENTITY makeUrlRelative.accessKey "И">
+<!ENTITY makeUrlRelative.tooltip "Изменить абсолютный URL на относительный. Перед изменением вам нужно сохранить страницу.">
+
+<!ENTITY LinkURLEditField2.label "Введите адрес веб-страницы, локального файла или выберите якорь или заголовок с именем из контекстного меню поля:">
+<!ENTITY LinkURLEditField2.accessKey "а">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdNamedAnchorProperties.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdNamedAnchorProperties.dtd
new file mode 100644
index 0000000000..a7a972e504
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EdNamedAnchorProperties.dtd
@@ -0,0 +1,10 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY windowTitle.label "Свойства якоря с именем">
+<!ENTITY anchorNameEditField.label "Имя якоря:">
+<!ENTITY anchorNameEditField.accessKey "И">
+<!ENTITY nameInput.tooltip "Введите уникальное имя для этого якоря (целевого объекта)">
+
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorColorProperties.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorColorProperties.dtd
new file mode 100644
index 0000000000..faf3ab3a9d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorColorProperties.dtd
@@ -0,0 +1,28 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY windowTitle.label "Цвета и фон страницы">
+<!ENTITY pageColors.label "Цвета страницы">
+<!ENTITY defaultColorsRadio.label "Цвета пользователя по умолчанию (не указывать цвета)">
+<!ENTITY defaultColorsRadio.accessKey "Ц">
+<!ENTITY defaultColorsRadio.tooltip "Использование цветов, указанных в браузере пользователя">
+<!ENTITY customColorsRadio.label "Использовать цвета:">
+<!ENTITY customColorsRadio.accessKey "И">
+<!ENTITY customColorsRadio.tooltip "Эти настройки цвета перекрывают настройки в браузере пользователя">
+
+<!ENTITY normalText.label "Обычный текст">
+<!ENTITY normalText.accessKey "О">
+<!ENTITY linkText.label "Ссылка">
+<!ENTITY linkText.accessKey "С">
+<!ENTITY activeLinkText.label "Активная ссылка">
+<!ENTITY activeLinkText.accessKey "А">
+<!ENTITY visitedLinkText.label "Просмотренная ссылка">
+<!ENTITY visitedLinkText.accessKey "П">
+<!ENTITY background.label "Фон:">
+<!ENTITY background.accessKey "Ф">
+<!ENTITY colon.character ":">
+<!ENTITY backgroundImage.label "Фоновое изображение:">
+<!ENTITY backgroundImage.accessKey "н">
+<!ENTITY backgroundImage.tooltip "Использование изображения в качестве фона страницы">
+<!ENTITY backgroundImage.shortenedDataURI "Укороченный URI данных (копия поместит полный URI в буфер обмена)">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorHLineProperties.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorHLineProperties.dtd
new file mode 100644
index 0000000000..b8d70b977c
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorHLineProperties.dtd
@@ -0,0 +1,27 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Свойства горизонтального разделителя">
+
+<!ENTITY dimensionsBox.label "Размеры">
+<!ENTITY heightEditField.label "Высота:">
+<!ENTITY heightEditField.accessKey "В">
+<!ENTITY widthEditField.label "Ширина:">
+<!ENTITY widthEditField.accessKey "Ш">
+<!ENTITY pixelsPopup.value "пикселей">
+<!ENTITY alignmentBox.label "Выравнивание">
+<!ENTITY leftRadio.label "Влево">
+<!ENTITY leftRadio.accessKey "В">
+<!ENTITY centerRadio.label "По центру">
+<!ENTITY centerRadio.accessKey "П">
+<!ENTITY rightRadio.label "Вправо">
+<!ENTITY rightRadio.accessKey "п">
+
+<!ENTITY threeDShading.label "3D-тень">
+<!ENTITY threeDShading.accessKey "т">
+<!ENTITY saveSettings.label "Использовать по умолчанию">
+<!ENTITY saveSettings.accessKey "И">
+<!ENTITY saveSettings.tooltip "Сохранить эти параметры, чтобы использовать их при вставке новых разделителей">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorImageProperties.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorImageProperties.dtd
new file mode 100644
index 0000000000..be7634dab5
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorImageProperties.dtd
@@ -0,0 +1,79 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- These strings are for use specifically in the editor's image and form image dialogs. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Свойства изображения">
+
+<!ENTITY pixelsPopup.value "пикселей">
+
+<!-- These are in the Location tab panel -->
+<!ENTITY locationEditField.label "Адрес изображения:">
+<!ENTITY locationEditField.accessKey "А">
+<!ENTITY locationEditField.tooltip "Введите имя файла с изображением или его адрес">
+<!ENTITY locationEditField.shortenedDataURI "Укороченный URI данных (копия поместит полный URI в буфер обмена)">
+<!ENTITY title.label "Всплывающая подсказка:">
+<!ENTITY title.accessKey "В">
+<!ENTITY title.tooltip "Атрибут «title», отображаемый как всплывающая подсказка">
+<!ENTITY altText.label "Альтернативный текст:">
+<!ENTITY altText.accessKey "л">
+<!ENTITY altTextEditField.tooltip "Введите текст, показываемый на месте изображения">
+<!ENTITY noAltText.label "Не использовать альтернативный текст">
+<!ENTITY noAltText.accessKey "Н">
+
+<!ENTITY previewBox.label "Предварительный просмотр изображения">
+
+<!-- These controls are in the Dimensions tab panel -->
+<!-- actualSize.label should be same as actualSizeRadio.label + ":" -->
+<!ENTITY actualSize.label "Исходный размер:">
+<!ENTITY actualSizeRadio.label "Исходный размер">
+<!ENTITY actualSizeRadio.accessKey "И">
+<!ENTITY actualSizeRadio.tooltip "Вернуться к исходным размерам изображения">
+<!ENTITY customSizeRadio.label "Задать размер">
+<!ENTITY customSizeRadio.accessKey "З">
+<!ENTITY customSizeRadio.tooltip "Изменить размер изображения так, как это выглядит на странице">
+<!ENTITY heightEditField.label "Высота:">
+<!ENTITY heightEditField.accessKey "В">
+<!ENTITY widthEditField.label "Ширина:">
+<!ENTITY widthEditField.accessKey "Ш">
+<!ENTITY constrainCheckbox.label "Соблюдать пропорции">
+<!ENTITY constrainCheckbox.accessKey "С">
+<!ENTITY constrainCheckbox.tooltip "Соблюдать пропорции при изменении размера изображения">
+
+<!-- These controls are in the Image Map box of the expanded area -->
+<!ENTITY imagemapBox.label "Карта изображения">
+<!ENTITY removeImageMapButton.label "Убрать">
+<!ENTITY removeImageMapButton.accessKey "У">
+
+<!-- These are the options for image alignment -->
+<!ENTITY alignment.label "Расположение текста по отношению к изображению">
+<!ENTITY bottomPopup.value "Внизу">
+<!ENTITY topPopup.value "Вверху">
+<!ENTITY centerPopup.value "По центру">
+<!ENTITY wrapRightPopup.value "Влево, окружить текстом справа">
+<!ENTITY wrapLeftPopup.value "Вправо, окружить текстом слева">
+
+<!-- These controls are in the Spacing Box -->
+<!ENTITY spacingBox.label "Поля">
+<!ENTITY leftRightEditField.label "Слева и справа:">
+<!ENTITY leftRightEditField.accessKey "е">
+<!ENTITY topBottomEditField.label "Сверху и снизу:">
+<!ENTITY topBottomEditField.accessKey "в">
+<!ENTITY borderEditField.label "Сплошная граница:">
+<!ENTITY borderEditField.accessKey "п">
+
+<!-- These controls are in the Link Box -->
+<!ENTITY showImageLinkBorder.label "Показывать границу вокруг изображения, содержащего ссылку">
+<!ENTITY showImageLinkBorder.accessKey "г">
+<!ENTITY LinkAdvancedEditButton.label "Редактор свойств ссылки…">
+<!ENTITY LinkAdvancedEditButton.accessKey "д">
+<!ENTITY LinkAdvancedEditButton.tooltip "Добавление или изменение HTML-атрибутов, атрибутов стилей и JavaScript">
+
+<!-- These tabs are currently used in the image input dialog -->
+<!ENTITY imageInputTab.label "Форма">
+<!ENTITY imageLocationTab.label "Адрес">
+<!ENTITY imageDimensionsTab.label "Размеры">
+<!ENTITY imageAppearanceTab.label "Внешний вид">
+<!ENTITY imageLinkTab.label "Ссылка">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertChars.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertChars.dtd
new file mode 100644
index 0000000000..8c39475f5a
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertChars.dtd
@@ -0,0 +1,19 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Вставка символа">
+<!ENTITY category.label "Категория">
+<!ENTITY letter.label "Буква:">
+<!ENTITY letter.accessKey "Б">
+<!ENTITY character.label "Символ:">
+<!ENTITY character.accessKey "С">
+<!ENTITY accentUpper.label "Заглавные с диакритическими знаками">
+<!ENTITY accentLower.label "Строчные с диакритическими знаками">
+<!ENTITY otherUpper.label "Другие заглавные">
+<!ENTITY otherLower.label "Другие строчные">
+<!ENTITY commonSymbols.label "Общие символы">
+<!ENTITY insertButton.label "Вставить">
+<!ENTITY closeButton.label "Закрыть">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertMath.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertMath.dtd
new file mode 100644
index 0000000000..2a511e67f7
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertMath.dtd
@@ -0,0 +1,21 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Вставка Math">
+
+<!ENTITY sourceEditField.label "Введите исходный код LaTeX:">
+
+<!ENTITY options.label "Настройки">
+<!ENTITY optionInline.label "Режим встраивания">
+<!ENTITY optionInline.accesskey "е">
+<!ENTITY optionDisplay.label "Режим отображения">
+<!ENTITY optionDisplay.accesskey "ж">
+<!ENTITY optionLTR.label "Направление слева направо">
+<!ENTITY optionLTR.accesskey "а">
+<!ENTITY optionRTL.label "Направление справа налево">
+<!ENTITY optionRTL.accesskey "п">
+
+<!ENTITY insertButton.label "Вставить">
+<!ENTITY insertButton.accesskey "и">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertSource.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertSource.dtd
new file mode 100644
index 0000000000..20b4ffb716
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertSource.dtd
@@ -0,0 +1,15 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Вставка HTML">
+<!ENTITY sourceEditField.label "Введите HTML-теги и текст:">
+<!ENTITY example.label "Пример:">
+<!-- LOCALIZATION NOTE (exampleOpenTag.label): DONT_TRANSLATE: they are text for HTML tagnames: "<i>" and "</i>" -->
+<!ENTITY exampleOpenTag.label "&lt;i&gt;">
+<!-- LOCALIZATION NOTE (exampleCloseTag.label): DONT_TRANSLATE: they are text for HTML tagnames: "<i>" and "</i>" -->
+<!ENTITY exampleCloseTag.label "&lt;/i&gt;">
+<!ENTITY exampleText.label "Всем привет!">
+<!ENTITY insertButton.label "Вставить">
+<!ENTITY insertButton.accesskey "В">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertTOC.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertTOC.dtd
new file mode 100644
index 0000000000..8888716b12
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertTOC.dtd
@@ -0,0 +1,16 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY Window.title "Содержание">
+<!ENTITY buildToc.label "Создать содержание на основе:">
+<!ENTITY tag.label "тега:">
+<!ENTITY class.label "класса:">
+<!ENTITY header1.label "Уровень 1">
+<!ENTITY header2.label "Уровень 2">
+<!ENTITY header3.label "Уровень 3">
+<!ENTITY header4.label "Уровень 4">
+<!ENTITY header5.label "Уровень 5">
+<!ENTITY header6.label "Уровень 6">
+<!ENTITY makeReadOnly.label "Запретить изменение содержания">
+<!ENTITY orderedList.label "Пронумеровать все элементы в содержании">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertTable.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertTable.dtd
new file mode 100644
index 0000000000..e94b2a2347
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorInsertTable.dtd
@@ -0,0 +1,18 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Вставка таблицы">
+
+<!ENTITY size.label "Размер">
+<!ENTITY numRowsEditField.label "Строк:">
+<!ENTITY numRowsEditField.accessKey "С">
+<!ENTITY numColumnsEditField.label "Столбцов:">
+<!ENTITY numColumnsEditField.accessKey "т">
+<!ENTITY widthEditField.label "Ширина:">
+<!ENTITY widthEditField.accessKey "Ш">
+<!ENTITY borderEditField.label "Граница:">
+<!ENTITY borderEditField.accessKey "Г">
+<!ENTITY borderEditField.tooltip "Введите ширину границы или ноль (0), если хотите сделать границу невидимой">
+<!ENTITY pixels.label "пикселей">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorLinkProperties.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorLinkProperties.dtd
new file mode 100644
index 0000000000..bd2f7c273b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorLinkProperties.dtd
@@ -0,0 +1,6 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY windowTitle.label "Свойства ссылки">
+<!ENTITY LinkURLBox.label "Адрес объекта ссылки">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorListProperties.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorListProperties.dtd
new file mode 100644
index 0000000000..42e0a4f68b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorListProperties.dtd
@@ -0,0 +1,20 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Свойства списка">
+
+<!ENTITY ListType.label "Тип списка">
+<!ENTITY bulletStyle.label "Стиль маркированного списка:">
+<!ENTITY startingNumber.label "Начинать с:">
+<!ENTITY startingNumber.accessKey "Н">
+<!ENTITY none.value "Ничего">
+<!ENTITY bulletList.value "Маркированный (ненумерованный) список">
+<!ENTITY numberList.value "Нумерованный список">
+<!ENTITY definitionList.value "Список определений">
+<!ENTITY changeEntireListRadio.label "Изменить весь список">
+<!ENTITY changeEntireListRadio.accessKey "И">
+<!ENTITY changeSelectedRadio.label "Изменить выбранные элементы">
+<!ENTITY changeSelectedRadio.accessKey "в">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorPersonalDictionary.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorPersonalDictionary.dtd
new file mode 100644
index 0000000000..5199c07e2b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorPersonalDictionary.dtd
@@ -0,0 +1,18 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Словарь пользователя">
+
+<!ENTITY wordEditField.label "Новое слово:">
+<!ENTITY wordEditField.accessKey "Н">
+<!ENTITY AddButton.label "Добавить">
+<!ENTITY AddButton.accessKey "Д">
+<!ENTITY DictionaryList.label "Слова в словаре:">
+<!ENTITY DictionaryList.accessKey "С">
+<!ENTITY RemoveButton.label "Убрать">
+<!ENTITY RemoveButton.accessKey "У">
+
+<!ENTITY CloseButton.label "Закрыть">
+<!ENTITY CloseButton.accessKey "З">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorReplace.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorReplace.dtd
new file mode 100644
index 0000000000..ba9b896019
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorReplace.dtd
@@ -0,0 +1,29 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- extracted from EdReplace.xul -->
+
+<!-- extracted from EdReplace.xhtml -->
+
+<!ENTITY replaceDialog.title "Найти и заменить">
+<!ENTITY findField.label "Найти текст:">
+<!ENTITY findField.accesskey "к">
+<!ENTITY replaceField.label "Заменить на:">
+<!ENTITY replaceField.accesskey "м">
+<!ENTITY caseSensitiveCheckbox.label "С учётом регистра">
+<!ENTITY caseSensitiveCheckbox.accesskey "ч">
+<!ENTITY wrapCheckbox.label "С начала страницы">
+<!ENTITY wrapCheckbox.accesskey "л">
+<!ENTITY backwardsCheckbox.label "Поиск в обратном направлении">
+<!ENTITY backwardsCheckbox.accesskey "о">
+<!ENTITY findNextButton.label "Найти далее">
+<!ENTITY findNextButton.accesskey "е">
+<!ENTITY replaceButton.label "Заменить">
+<!ENTITY replaceButton.accesskey "н">
+<!ENTITY replaceAndFindButton.label "Заменить и найти">
+<!ENTITY replaceAndFindButton.accesskey "ь">
+<!ENTITY replaceAllButton.label "Заменить всё">
+<!ENTITY replaceAllButton.accesskey "а">
+<!ENTITY closeButton.label "Закрыть">
+<!ENTITY closeButton.accesskey "ы">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorSpellCheck.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorSpellCheck.dtd
new file mode 100644
index 0000000000..18875ec800
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorSpellCheck.dtd
@@ -0,0 +1,38 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Проверка орфографии">
+
+<!ENTITY misspelledWord.label "Слово с ошибкой:">
+<!ENTITY wordEditField.label "Заменить на:">
+<!ENTITY wordEditField.accessKey "м">
+<!ENTITY checkwordButton.label "Проверить слово">
+<!ENTITY checkwordButton.accessKey "о">
+<!ENTITY suggestions.label "Варианты:">
+<!ENTITY suggestions.accessKey "и">
+<!ENTITY ignoreButton.label "Пропустить">
+<!ENTITY ignoreButton.accessKey "п">
+<!ENTITY ignoreAllButton.label "Пропустить всё">
+<!ENTITY ignoreAllButton.accessKey "с">
+<!ENTITY replaceButton.label "Заменить">
+<!ENTITY replaceButton.accessKey "а">
+<!ENTITY replaceAllButton.label "Заменить всё">
+<!ENTITY replaceAllButton.accessKey "е">
+<!ENTITY stopButton.label "Остановить">
+<!ENTITY stopButton.accessKey "н">
+<!ENTITY userDictionary.label "Словарь пользователя:">
+<!ENTITY moreDictionaries.label "Загрузить дополнительные словари…">
+<!ENTITY addToUserDictionaryButton.label "Добавить слово">
+<!ENTITY addToUserDictionaryButton.accessKey "б">
+<!ENTITY editUserDictionaryButton.label "Изменить…">
+<!ENTITY editUserDictionaryButton.accessKey "з">
+<!ENTITY recheckButton2.label "Проверить текст снова">
+<!ENTITY recheckButton2.accessKey "в">
+<!ENTITY closeButton.label "Закрыть">
+<!ENTITY closeButton.accessKey "ы">
+<!ENTITY sendButton.label "Отправить">
+<!ENTITY sendButton.accessKey "ь">
+<!ENTITY languagePopup.label "Язык:">
+<!ENTITY languagePopup.accessKey "к">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorTableProperties.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorTableProperties.dtd
new file mode 100644
index 0000000000..bfc5bbfdd0
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/EditorTableProperties.dtd
@@ -0,0 +1,75 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY tableWindow.title "Свойства таблицы">
+<!ENTITY applyButton.label "Применить">
+<!ENTITY applyButton.accesskey "П">
+<!ENTITY closeButton.label "Закрыть">
+<!ENTITY tableTab.label "Таблица">
+<!ENTITY cellTab.label "Ячейки">
+<!ENTITY tableRows.label "Строки:">
+<!ENTITY tableRows.accessKey "С">
+<!ENTITY tableColumns.label "Столбцы:">
+<!ENTITY tableColumns.accessKey "т">
+<!ENTITY tableHeight.label "Высота:">
+<!ENTITY tableHeight.accessKey "В">
+<!ENTITY tableWidth.label "Ширина:">
+<!ENTITY tableWidth.accessKey "Ш">
+<!ENTITY tableBorderSpacing.label "Границы и поля">
+<!ENTITY tableBorderWidth.label "Границы:">
+<!ENTITY tableBorderWidth.accessKey "Г">
+<!ENTITY tableSpacing.label "Отступы:">
+<!ENTITY tableSpacing.accessKey "у">
+<!ENTITY tablePadding.label "Поля:">
+<!ENTITY tablePadding.accessKey "П">
+<!ENTITY tablePxBetwCells.label "пикселей между ячейками">
+<!ENTITY tablePxBetwBrdrCellContent.label "пикселей между границей ячейки и её содержимым">
+<!ENTITY tableAlignment.label "Выравнивание таблицы:">
+<!ENTITY tableAlignment.accessKey "ы">
+<!ENTITY tableCaption.label "Заголовок:">
+<!ENTITY tableCaption.accessKey "З">
+<!ENTITY tableCaptionAbove.label "Над таблицей">
+<!ENTITY tableCaptionBelow.label "Под таблицей">
+<!ENTITY tableCaptionLeft.label "Слева от таблицы">
+<!ENTITY tableCaptionRight.label "Справа от таблицы">
+<!ENTITY tableCaptionNone.label "Нет">
+<!ENTITY tableInheritColor.label "(Будет виден фон страницы)">
+
+<!ENTITY cellSelection.label "Выделение">
+<!ENTITY cellSelectCell.label "Ячейка">
+<!ENTITY cellSelectRow.label "Строка">
+<!ENTITY cellSelectColumn.label "Столбец">
+<!ENTITY cellSelectNext.label "Следующая">
+<!ENTITY cellSelectNext.accessKey "С">
+<!ENTITY cellSelectPrevious.label "Предыдущая">
+<!ENTITY cellSelectPrevious.accessKey "П">
+<!ENTITY applyBeforeChange.label "Перед изменением выделения будут применены текущие поправки.">
+<!ENTITY cellContentAlignment.label "Выравнивание содержимого">
+<!ENTITY cellHorizontal.label "Горизонтальное:">
+<!ENTITY cellHorizontal.accessKey "з">
+<!ENTITY cellVertical.label "Вертикальное:">
+<!ENTITY cellVertical.accessKey "В">
+<!ENTITY cellStyle.label "Стиль ячейки:">
+<!ENTITY cellStyle.accessKey "С">
+<!ENTITY cellNormal.label "Обычный">
+<!ENTITY cellHeader.label "Заголовок">
+<!ENTITY cellTextWrap.label "Перенос текста:">
+<!ENTITY cellTextWrap.accessKey "р">
+<!ENTITY cellWrap.label "Переносить">
+<!ENTITY cellNoWrap.label "Без переноса">
+<!ENTITY cellAlignTop.label "Поверху">
+<!ENTITY cellAlignMiddle.label "Посередине">
+<!ENTITY cellAlignBottom.label "Понизу">
+<!ENTITY cellAlignJustify.label "По ширине">
+<!ENTITY cellInheritColor.label "(Будет виден фон таблицы)">
+<!ENTITY cellUseCheckboxHelp.label "Установите флажки для определения свойств, применяемых ко всем выбранным ячейкам">
+
+<!-- Used in both Table and Cell panels -->
+<!ENTITY size.label "Размеры">
+<!ENTITY pixels.label "пикселей">
+<!ENTITY backgroundColor.label "Цвет фона:">
+<!ENTITY backgroundColor.accessKey "Ц">
+<!ENTITY AlignLeft.label "Влево">
+<!ENTITY AlignCenter.label "По центру">
+<!ENTITY AlignRight.label "Вправо">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/composeMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/composeMsgs.properties
new file mode 100644
index 0000000000..fb3a3d3e56
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/composeMsgs.properties
@@ -0,0 +1,463 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by the compose back end
+#
+## LOCALIZATION NOTE (unableToOpenFile, unableToOpenTmpFile):
+## %S will be replaced with the name of file that could not be opened
+unableToOpenFile=Не удалось открыть файл «%S».
+unableToOpenTmpFile=Не удалось открыть временный файл «%S». Проверьте параметры вашего каталога временных файлов.
+unableToSaveTemplate=Не удалось сохранить сообщение как шаблон.
+unableToSaveDraft=Не удалось сохранить сообщение как черновик.
+couldntOpenFccFolder=Не удалось открыть папку «Отправленные». Убедитесь в правильности своих параметров учётной записи.
+noSender=Не был указан отправитель. Введите свой адрес электронной почты в параметрах учётной записи.
+noRecipients=Не был указан адресат. Укажите адресата или группу новостей в строке адреса.
+errorWritingFile=Ошибка записи временного файла.
+
+## LOCALIZATION NOTE (errorSendingFromCommand): argument %s is the Outgoing server (SMTP) response
+errorSendingFromCommand=Ошибка отправления почты. Почтовый сервер ответил: %s. Убедитесь, что указанный вами в параметрах учётной записи адрес электронной почты верен, и попробуйте снова.
+
+## LOCALIZATION NOTE (errorSendingDataCommand): argument %s is the Outgoing server (SMTP) response
+errorSendingDataCommand=Ошибка сервера исходящей почты (SMTP) при отправлении почты. Сервер ответил: %s.
+
+## LOCALIZATION NOTE (errorSendingMessage): argument %s is the Outgoing server (SMTP) response
+errorSendingMessage=Ошибка отправления почты. Почтовый сервер ответил: %s. Проверьте сообщение и попробуйте снова.
+postFailed=Сообщение не может быть доставлено, потому что не удалось установить соединение с сервером новостей. Сервер может быть недоступен или отказывать в соединении. Убедитесь, что указали корректные параметры сервера новостей и попробуйте снова.
+errorQueuedDeliveryFailed=Ошибка при доставке неотправленных сообщений.
+sendFailed=Ошибка отправления сообщения.
+
+## LOCALIZATION NOTE (sendFailedUnexpected): argument %X is a hex error code value
+sendFailedUnexpected=Не удалось из-за непредвиденной ошибки %X. Описание недоступно.
+
+## LOCALIZATION NOTE (smtpSecurityIssue): argument %S is the Outgoing server (SMTP) response
+smtpSecurityIssue=Конфигурация, относящаяся к %S, должна быть исправлена.
+
+## LOCALIZATION NOTE (smtpServerError): argument %s is the Outgoing server (SMTP) response
+smtpServerError=Ошибка при отправлении почты: Ошибка сервера исходящей почты (SMTP). Сервер ответил: %s.
+unableToSendLater=Извините, но нам не удалось сохранить сообщение для последующей отправки.
+
+## LOCALIZATION NOTE (communicationsError): argument %d is the error code
+communicationsError=Ошибка соединения: %d. Пожалуйста, попробуйте снова.
+dontShowAlert=THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.
+
+couldNotGetUsersMailAddress2=Ошибка отправления почты: адрес отправителя (От:) некорректен. Убедитесь, что вы указали корректный адрес электронной почты, и попробуйте снова.
+couldNotGetSendersIdentity=Ошибка отправления почты: адрес отправителя некорректен. Убедитесь, что вы правильно настроили учётную запись адреса электронной почты, и попробуйте снова.
+
+mimeMpartAttachmentError=Ошибка вложения.
+failedCopyOperation=Сообщение было успешно отправлено, но его не удалось скопировать в папку «Отправленные».
+nntpNoCrossPosting=За раз вы можете отправить сообщение только на один сервер новостей.
+msgCancelling=Отмена…
+sendFailedButNntpOk=Ваше сообщение было отправлено в группу новостей, но не было отправлено другому адресату.
+errorReadingFile=Ошибка чтения файла.
+followupToSenderMessage=Автор этого сообщения запросил, чтобы ответы были присланы только ему. Если вы хотите ответить также в группу новостей, добавьте новую строку в панель адреса, выберите пункт «Группы новостей» из списка адресатов и введите её имя.
+
+## LOCALIZATION NOTE (errorAttachingFile): argument %S is the file name/URI of the object to be attached
+errorAttachingFile=Ошибка при вложении «%S». Проверьте, имеете ли вы доступ к файлу.
+
+## LOCALIZATION NOTE (incorrectSmtpGreeting): argument %s is the Outgoing server (SMTP) greeting
+incorrectSmtpGreeting=Ошибка отправления почты: Почтовый сервер отправил некорректное приветствие: %s.
+
+## LOCALIZATION NOTE (errorSendingRcptCommand): argument %1$S is the Outgoing server (SMTP) response, argument %2$S is the intended message recipient.
+errorSendingRcptCommand=Ошибка отправления почты. Почтовый сервер ответил: \n%1$S.\n Проверьте правильность написания адреса получателя «%2$S» и попробуйте снова.
+
+## LOCALIZATION NOTE (startTlsFailed): argument %S is the Outgoing server (SMTP)
+startTlsFailed=Ошибка отправления почты: Не удалось установить защищённое соединение с сервером исходящей почты (SMTP) «%S» с использованием STARTTLS, так как он не заявил о поддержке этой возможности. Отключите использование STARTTLS для этого сервера или свяжитесь с вашим сервис-провайдером.
+
+## LOCALIZATION NOTE (smtpPasswordUndefined): argument %S is the Outgoing server (SMTP) account
+smtpPasswordUndefined=Ошибка отправления почты: Не удалось получить пароль для %S. Сообщение отправлено не было.
+
+## LOCALIZATION NOTE (smtpSendNotAllowed): argument %s is the Outgoing server (SMTP) response
+smtpSendNotAllowed=При отправке почты произошла ошибка. Почтовый сервер ответил:\n%s.\nПожалуйста, убедитесь, что вы используете правильную учётную запись для отправки и корректный способ аутентификации. Проверьте, что вам разрешено отправлять почту через этот SMTP-сервер с текущими учётными данными из вашей текущей сети.
+
+## LOCALIZATION NOTE (smtpTempSizeExceeded): argument %s is the Outgoing server (SMTP) response
+smtpTempSizeExceeded=Размер сообщения, которое вы пытаетесь отправить, превышает временный предел размера, допустимый сервером. Сообщение не было отправлено; попробуйте уменьшить его размер или подождать некоторое время и попробовать снова. Сервер ответил: %s.
+
+## LOCALIZATION NOTE (smtpTooManyRecipients): argument %s is the Outgoing server (SMTP) response
+smtpTooManyRecipients=Сообщение не было отправлено из-за превышения разрешённого количества получателей. Сервер ответил: %s.
+
+## LOCALIZATION NOTE (smtpClientid): argument %s is the Outgoing server (SMTP) response
+smtpClientid=Сервер исходящей почты (SMTP) обнаружил ошибку в команде CLIENTID. Сообщение не было отправлено. Сервер ответил: %s
+
+## LOCALIZATION NOTE (smtpClientidPermission): argument %s is the Outgoing server (SMTP) response
+smtpClientidPermission=Ответ сервера исходящей почты (SMTP) на команду CLIENTID означает, что вашему устройству не разрешено отправлять почту. Сервер ответил: %s
+
+## LOCALIZATION NOTE (smtpPermSizeExceeded1): argument %d is the Outgoing server (SMTP) size limit
+smtpPermSizeExceeded1=Размер сообщения, которое вы пытаетесь отправить, превышает глобальный предел размера (%d байт), допустимый сервером. Сообщение не было отправлено; уменьшите его размер и попробуйте снова.
+
+## LOCALIZATION NOTE (smtpPermSizeExceeded2): argument %s is the Outgoing server (SMTP) response
+smtpPermSizeExceeded2=Размер сообщения, которое вы пытаетесь отправить, превышает глобальный предел размера, допустимый сервером. Сообщение не было отправлено; уменьшите его размер и попробуйте снова. Сервер ответил: %s.
+
+## LOCALIZATION NOTE (smtpSendFailedUnknownServer): argument %S is the Outgoing server (SMTP)
+smtpSendFailedUnknownServer=Ошибка отправления почты: Сервер исходящей почты (SMTP) «%S» неизвестен. Возможно, сервер неверно сконфигурирован. Убедитесь, что параметры вашего Сервера исходящей почты (SMTP) правильны, и попробуйте снова.
+
+## LOCALIZATION NOTE (smtpSendRequestRefused): argument %S is the Outgoing server (SMTP)
+smtpSendRequestRefused=Сообщение не может быть отправлено, так как не удалось установить соединение с Сервером исходящей почты (SMTP) «%S». Сервер может быть недоступен или отказывать в соединении по SMTP. Убедитесь, что указали корректные параметры Сервера исходящей почты (SMTP) и попробуйте снова.
+
+## LOCALIZATION NOTE (smtpSendInterrupted): argument %S is the Outgoing server (SMTP)
+smtpSendInterrupted=Сообщение не может быть отправлено, так как соединение с Сервером исходящей почты (SMTP) «%S» было утеряно в середине транзакции. Попробуйте снова.
+
+## LOCALIZATION NOTE (smtpSendTimeout): argument %S is the Outgoing server (SMTP)
+smtpSendTimeout=Сообщение не может быть отправлено, так как время ожидания соединения с Сервером исходящей почты (SMTP) «%S» истекло. Попробуйте снова.
+
+## LOCALIZATION NOTE (smtpSendFailedUnknownReason): argument %S is the Outgoing server (SMTP)
+smtpSendFailedUnknownReason=Отправка сообщения с использованием Сервера исходящей почты (SMTP) «%S» не удалась по неизвестной причине. Убедитесь, что указали корректные параметры Сервера исходящей почты (SMTP) и попробуйте снова.
+
+# LOCALIZATION NOTE (smtpHintAuthEncryptToPlainNoSsl): %S is the server hostname
+smtpHintAuthEncryptToPlainNoSsl=Похоже, что Сервер исходящей почты (SMTP) «%S» не поддерживает использование зашифрованных паролей. Если вы только что создали учётную запись, попробуйте сменить «Метод аутентификации» в «Параметры учётной записи | Сервер исходящей почты (SMTP)» на «Пароль, без защиты передачи». Если это работало раньше, а теперь внезапно перестало, возможно, что ваш пароль был украден.
+
+# LOCALIZATION NOTE (smtpHintAuthEncryptToPlainSsl): %S is the server hostname
+smtpHintAuthEncryptToPlainSsl=Похоже, что Сервер исходящей почты (SMTP) «%S» не поддерживает использование зашифрованных паролей. Если вы только что создали учётную запись, попробуйте сменить «Метод аутентификации» в «Параметры учётной записи | Сервер исходящей почты (SMTP)» на «Обычный пароль».
+
+# LOCALIZATION NOTE (smtpHintAuthPlainToEncrypt): %S is the server hostname
+smtpHintAuthPlainToEncrypt=Сервер исходящей почты (SMTP) «%S» не разрешает использование обычных текстовых паролей. Пожалуйста, попробуйте сменить «Метод аутентификации» в «Параметры учётной записи | Сервер исходящей почты (SMTP)» на «Зашифрованный пароль».
+
+# LOCALIZATION NOTE (smtpAuthFailure): %S is the server hostname
+smtpAuthFailure=Не удалось аутентифицироваться на Сервере исходящей почты (SMTP) «%S». Пожалуйста, проверьте пароль, и проверьте «Метод аутентификации» в «Параметры учётной записи | Сервер исходящей почты (SMTP)».
+
+# LOCALIZATION NOTE (smtpAuthGssapi): %S is the server hostname
+smtpAuthGssapi=Билет Kerberos/GSSAPI не был принят Сервером исходящей почты (SMTP) «%S». Пожалуйста, проверьте, что вы вошли в Kerberos/GSSAPI realm.
+
+# LOCALIZATION NOTE (smtpAuthMechNotSupported): %S is the server hostname
+smtpAuthMechNotSupported=Сервер исходящей почты (SMTP) «%S» не поддерживает выбранный метод аутентификации. Пожалуйста, измените «Метод аутентификации» в «Параметры учётной записи | Сервер исходящей почты (SMTP)».
+
+# LOCALIZATION NOTE (errorIllegalLocalPart2): %s is an email address with an illegal localpart
+errorIllegalLocalPart2=В имени почтового ящика в адресе получателя %s имеются не-ASCII символы, а ваш сервер не поддерживает SMTPUTF8. Пожалуйста, замените этот адрес и попробуйте снова.
+
+## Strings used for the save message dialog shown when the user closes a message compose window
+saveDlogTitle=Сохранение сообщения
+
+## LOCALIZATION NOTE (saveDlogMessages3): Do not translate the words %1$S and \n.
+## %1$S is replaced by the folder name configured for saving drafts (typically the "Drafts" folder).
+## Translate "Write" to match the translation of item "windowTitleWrite" below.
+saveDlogMessages3=Сохранить это сообщение в папке черновиков (%1$S) и закрыть окно «Создание сообщения»?
+discardButtonLabel=&Отменить изменения
+
+## generics string
+defaultSubject=(без темы)
+chooseFileToAttach=Вложить файл(ы)
+genericFailureExplanation=Пожалуйста, убедитесь, что ваши параметры учётной записи корректны, и попробуйте снова.
+
+## LOCALIZATION NOTE (undisclosedRecipients): this string must use only US_ASCII characters
+undisclosedRecipients=undisclosed-recipients
+
+# LOCALIZATION NOTE (chooseFileToAttachViaCloud): %1$S is the cloud
+# provider to save the file to.
+chooseFileToAttachViaCloud=Вложить файл через %1$S
+
+## Window titles
+# LOCALIZATION NOTE (windowTitleWrite):
+# %1$S is the message subject.
+# %2$S is the application name.
+# Example: Write: Re: Invitation - Thunderbird
+windowTitleWrite=Создание сообщения: %1$S - %2$S
+# LOCALIZATION NOTE (windowTitlePrintPreview):
+# %1$S is the message subject.
+# %2$S is the application name.
+# Example: Print Preview: Re: Invitation - Thunderbird
+windowTitlePrintPreview=Предварительный просмотр: %1$S - %2$S
+
+## From field
+msgIdentityPlaceholder=Введите свой адрес отправителя вместо %S
+customizeFromAddressTitle=Настройка адреса отправителя
+customizeFromAddressWarning=Если это поддерживается вашим провайдером электронной почты, Настройка адреса отправителя позволит вам вносить несохраняемое небольшое изменение в ваш адрес отправителя, без необходимости добавления нового адреса в Параметрах учётной записи. Например, если ваш адрес Иван Иванов <ivan@test.ru>, вы можете захотеть изменить его на Иван Иванов <ivan+ivanov@test.ru> или Иван <ivan@test.ru>.
+customizeFromAddressIgnore=Никогда больше не уведомлять меня об этом
+
+## Strings used by the empty subject dialog
+subjectEmptyTitle=Напоминание о теме
+subjectEmptyMessage=У вашего сообщения нет темы.
+sendWithEmptySubjectButton=От&править без темы
+cancelSendingButton=О&тменить отправку
+
+## Strings used by the dialog that informs about the lack of newsgroup support.
+noNewsgroupSupportTitle=Группы новостей не поддерживаются
+recipientDlogMessage=Эта учётная запись поддерживает только адресатов электронной почты. Почтовые сообщения в группы новостей отправляться не будут.
+
+## Strings used by the alert that tells the user that an email address is invalid.
+addressInvalidTitle=Некорректный адрес получателя
+addressInvalid=%1$S не является адресом электронной почты, так как он написан не в форме пользователь@сервер. Вы должны исправить его перед отправкой сообщения.
+
+## String used by the dialog that asks the user to attach a web page
+attachPageDlogTitle=Укажите расположение вкладываемого файла
+attachPageDlogMessage=Веб-страница (URL):
+
+## String used for attachment pretty name, when the attachment is a message
+messageAttachmentSafeName=Вложенное сообщение
+
+## String used for attachment pretty name, when the attachment is a message part
+partAttachmentSafeName=Часть вложенного сообщения
+
+# LOCALIZATION NOTE (attachmentBucketAttachFilesTooltip):
+# This tooltip should be same as attachFile.label in messengercompose.dtd,
+# but without ellipsis (…).
+attachmentBucketAttachFilesTooltip=Вложить файл(ы)
+attachmentBucketClearSelectionTooltip=Снять выделение
+attachmentBucketHeaderShowTooltip=Показать панель вложений
+attachmentBucketHeaderMinimizeTooltip=Минимизировать панель вложений
+attachmentBucketHeaderRestoreTooltip=Восстановить панель вложений
+
+## String used by the Initialization Error dialog
+initErrorDlogTitle=Составление сообщения
+initErrorDlgMessage=Произошла ошибка создания окна составления сообщений. Пожалуйста, попробуйте позже.
+
+## String used if a file to attach does not exist when passed as
+## a command line argument
+errorFileAttachTitle=Вложение файла
+
+## LOCALIZATION NOTE (errorFileAttachMessage): %1$S will be replaced by the non-existent file name.
+errorFileAttachMessage=Файл %1$S не существует, поэтому он не может быть вложен в сообщение.
+
+## String used if a file to serve as message body does not exist or cannot be loaded when passed
+## as a command line argument
+errorFileMessageTitle=Файл сообщения
+
+## LOCALIZATION NOTE (errorFileMessageMessage): %1$S will be replaced by the non-existent file name.
+errorFileMessageMessage=Файл %1$S не существует, поэтому он не может быть использован в качестве тела сообщения.
+
+## LOCALIZATION NOTE (errorLoadFileMessageMessage): %1$S will be replaced by the name of the file that can't be loaded.
+errorLoadFileMessageMessage=Файл %1$S не может быть загружен в качестве тела сообщения.
+
+## Strings used by the Save as Draft/Template dialog
+SaveDialogTitle=Сохранение сообщения
+
+## LOCALIZATION NOTE (SaveDialogMsg): %1$S is the folder name, %2$S is the host name
+SaveDialogMsg=Ваше сообщение было сохранено в папку «%1$S» на %2$S.
+CheckMsg=Больше не показывать это окно.
+
+## Strings used by the prompt when Quitting while in progress
+quitComposeWindowTitle=Отправка сообщения
+
+## LOCALIZATION NOTE (quitComposeWindowMessage2): don't translate \n
+quitComposeWindowMessage2=В данный момент %1$S отправляет сообщение.\nВы хотите завершить работу сейчас или подождать, пока сообщение будет отправлено?
+quitComposeWindowQuitButtonLabel2=В&ыйти
+quitComposeWindowWaitButtonLabel2=Подо&ждать
+quitComposeWindowSaveTitle=Сохранение сообщения
+
+## LOCALIZATION NOTE (quitComposeWindowSaveMessage): don't translate \n
+quitComposeWindowSaveMessage=В данный момент %1$S сохраняет сообщение.\nВы хотите завершить работу сейчас или подождать, пока сообщение будет сохранено?
+
+## Strings used by the prompt for Ctrl-Enter check before sending message
+sendMessageCheckWindowTitle=Отправка сообщения
+sendMessageCheckLabel=Вы действительно готовы отправить это сообщение?
+sendMessageCheckSendButtonLabel=Отправить
+assemblingMessageDone=Компоновка сообщения… Готово
+assemblingMessage=Компоновка сообщения…
+smtpDeliveringMail=Доставка почты…
+smtpMailSent=Почта успешно отправлена
+assemblingMailInformation=Сбор почтовой информации…
+
+## LOCALIZATION NOTE (gatheringAttachment): argument %S is the file name/URI of attachment
+gatheringAttachment=Вложение «%S»…
+creatingMailMessage=Создание почтового сообщения…
+
+## LOCALIZATION NOTE (copyMessageStart): argument %S is the folder name
+copyMessageStart=Копирование сообщения в «%S»…
+copyMessageComplete=Копирование завершено.
+copyMessageFailed=Ошибка при копировании.
+filterMessageComplete=Применение фильтра завершено.
+filterMessageFailed=Не удалось применить фильтр.
+
+## LOCALIZATION NOTE (largeMessageSendWarning):
+## Do not translate %S. It is the size of the message in user-friendly notation.
+largeMessageSendWarning=Внимание! Вы собираетесь отправить сообщение размером %S. Вы уверены, что хотите это сделать?
+sendingMessage=Отправка сообщения…
+sendMessageErrorTitle=Ошибка отправки сообщения
+postingMessage=Регистрация сообщения…
+sendLaterErrorTitle=Ошибка отложенной отправки
+saveDraftErrorTitle=Ошибка сохранения черновика
+saveTemplateErrorTitle=Ошибка сохранения шаблона
+
+## LOCALIZATION NOTE (failureOnObjectEmbeddingWhileSaving): argument %.200S is the file name/URI of object to be embedded
+failureOnObjectEmbeddingWhileSaving=Возникла проблема вставки файла «%.200S» в сообщение. Вы хотите сохранить сообщение без этого файла?
+
+## LOCALIZATION NOTE (failureOnObjectEmbeddingWhileSending): argument %.200S is the file name/URI of object to be embedded
+failureOnObjectEmbeddingWhileSending=Возникла проблема вставки файла «%.200S» в сообщение. Вы хотите отправить сообщение без этого файла?
+returnToComposeWindowQuestion=Вы хотите вернуться в окно составления сообщений?
+
+## reply header in composeMsg
+## LOCALIZATION NOTE (mailnews.reply_header_authorwrotesingle): #1 is the author (name of the person replying to)
+mailnews.reply_header_authorwrotesingle=#1 пишет:
+
+## LOCALIZATION NOTE (mailnews.reply_header_ondateauthorwrote): #1 is the author, #2 is the date, #3 is the time
+mailnews.reply_header_ondateauthorwrote=#2 #3, #1 пишет:
+
+## LOCALIZATION NOTE (mailnews.reply_header_authorwroteondate): #1 is the author, #2 is the date, #3 is the time
+mailnews.reply_header_authorwroteondate=#1 пишет #2 #3:
+
+## reply header in composeMsg
+## user specified
+mailnews.reply_header_originalmessage=-------- Исходное сообщение --------
+
+## forwarded header in composeMsg
+## user specified
+mailnews.forward_header_originalmessage=-------- Перенаправленное сообщение --------
+
+## Strings used by the rename attachment dialog
+renameAttachmentTitle=Переименование вложения
+renameAttachmentMessage=Новое имя вложения:
+
+## Attachment Reminder
+## LOCALIZATION NOTE (mail.compose.attachment_reminder_keywords): comma separated
+## words that should trigger an attachment reminder.
+mail.compose.attachment_reminder_keywords=.doc,.pdf,.xls,.ppt,.rtf,.pps,attachment,attach,attached,attaching,enclosed,CV,cover letter,вложение,вложения,вложено,вкладываю,приложено,прикладываю,резюме
+
+remindLaterButton=Напомнить позже
+remindLaterButton.accesskey=а
+disableAttachmentReminderButton=Отключить напоминание о вложении для текущего сообщения
+attachmentReminderTitle=Напоминание о вложении
+attachmentReminderMsg=Вы забыли вложить файл?
+
+# LOCALIZATION NOTE (attachmentReminderKeywordsMsgs): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# #1 number of keywords
+attachmentReminderKeywordsMsgs=Найдено #1 ключевое слово вложения:;Найдено #1 ключевых слова вложения:;Найдено #1 ключевых слов вложения:
+attachmentReminderOptionsMsg=Слова для напоминания о вложении можно добавить или удалить в настройках
+attachmentReminderYesIForgot=Ой, точно!
+attachmentReminderFalseAlarm=Нет, отправляй
+
+# Strings used by the Filelink offer notification bar.
+learnMore.label=Подробнее…
+learnMore.accesskey=о
+
+# LOCALIZATION NOTE (bigFileDescription): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# #1 number of big attached files
+bigFileDescription=Это большой файл. Возможно, будет лучше использовать Filelink.;Это большие файлы. Возможно, будет лучше использовать Filelink.;Это большие файлы. Возможно, будет лучше использовать Filelink.
+bigFileShare.label=Создать ссылку
+bigFileShare.accesskey=ы
+bigFileAttach.label=Игнорировать
+bigFileAttach.accesskey=н
+bigFileChooseAccount.title=Выбор учётной записи
+bigFileChooseAccount.text=Выберите учётную запись облака, чтобы выгрузить вложение на
+bigFileHideNotification.title=Не выгружать мои файлы
+bigFileHideNotification.text=Вас больше не будут уведомлять, если вы будете вкладывать другие большие файлы в это сообщение.
+bigFileHideNotification.check=Никогда больше не уведомлять меня об этом.
+
+# LOCALIZATION NOTE(cloudFileUploadingTooltip): Do not translate the string
+# %S. %S is the display name for the cloud account the attachment is being
+# uploaded to.
+cloudFileUploadingTooltip=Выгружаю на %S…
+
+# LOCALIZATION NOTE(cloudFileUploadedTooltip): Do not translate the string
+# %S. %S is the display name for the cloud account the attachment was uploaded
+# to.
+cloudFileUploadedTooltip=Выгружено на %S
+cloudFileUploadingNotification=Идёт процесс создания ссылки на ваш файл. Она появится в теле сообщения по завершении процесса.;Идёт процесс создания ссылок на ваши файлы. Они появятся в теле сообщения по завершении процесса.;Идёт процесс создания ссылок на ваши файлы. Они появятся в теле сообщения по завершении процесса.
+cloudFileUploadingCancel.label=Отмена
+cloudFileUploadingCancel.accesskey=м
+cloudFilePrivacyNotification=Создание ссылки завершено. Примите во внимание, что размещенные по ссылке вложения могут быть доступны людям, которые могут увидеть или угадать ссылки.
+
+## LOCALIZATION NOTE(smtpEnterPasswordPrompt): Do not translate the
+## word %S. Place the word %S where the host name should appear.
+smtpEnterPasswordPrompt=Введите пароль для %S:
+
+## LOCALIZATION NOTE(smtpEnterPasswordPromptWithUsername): Do not translate the
+## words %1$S and %2$S. Place the word %1$S where the host name should appear,
+## and %2$S where the user name should appear.
+smtpEnterPasswordPromptWithUsername=Введите пароль для %2$S на %1$S:
+## LOCALIZATION NOTE(smtpEnterPasswordPromptTitleWithHostname): Do not translate the
+## word %1$S. Place the word %1$S where the server host name should appear.
+smtpEnterPasswordPromptTitleWithHostname=Требуется пароль для входа на Сервер исходящей почты (SMTP) «%1$S»
+
+# LOCALIZATION NOTE (removeAttachmentMsgs): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+removeAttachmentMsgs=Удалить вложение;Удалить вложения;Удалить вложения
+
+## LOCALIZATION NOTE(promptToSaveSentLocally2): Do not translate the strings %1$S, %2$S, %3$S and \n.
+## %2$S will be replaced with the account name. $1$S will be replaced by the folder name
+## configured to contain saved sent messages (typically the "Sent" folder).
+## %3$S will be replaced with the local folders account name (typically "Local Folders").
+## Translate "Write" to match the translation of item "windowTitleWrite" above.
+promptToSaveSentLocally2=Ваше сообщение было отправлено, но его копия не была помещена в папку Отправленные (%1$S) из-за ошибок доступа к файлу или сети.\nВы можете повторить попытку или сохранить сообщение локально в %3$S/%1$S-%2$S.
+errorFilteringMsg=Ваше сообщение было отправлено и сохранено, но при применении к нему фильтров сообщений произошла ошибка.
+errorCloudFileAuth.title=Ошибка аутентификации
+
+## LOCALIZATION NOTE(promptToSaveDraftLocally2): Do not translate the strings %1$S, %2$S, %3$S and \n.
+## %2$S will be replaced with the account name. $1$S will be replaced by the folder name
+## configured to contain saved draft messages (typically the "Drafts" folder).
+## %3$S will be replaced with the local folders account name (typically "Local Folders").
+promptToSaveDraftLocally2=Черновик вашего сообщения не был скопирован в папку черновиков (%1$S) из-за ошибок доступа к файлу или сети.\nВы можете повторить попытку или сохранить черновик локально в %3$S/%1$S-%2$S.
+buttonLabelRetry2=&Повторить
+
+## LOCALIZATION NOTE(promptToSaveTemplateLocally2): Do not translate the strings %1$S, %2$S, %3$S and \n.
+## %2$S will be replaced with the account name. $1$S will be replaced by the folder name
+## configured to contain saved templates (typically the "Templates" folder).
+## %3$S will be replaced with the local folders account name (typically "Local Folders").
+promptToSaveTemplateLocally2=Ваш шаблон не был скопирован в папку шаблонов (%1$S) из-за ошибок доступа к файлу или сети.\nВы можете повторить попытку или сохранить шаблон локально в %3$S/%1$S-%2$S.
+
+## LOCALIZATION NOTE(saveToLocalFoldersFailed): Message appears after normal
+## save fails (e.g., to Sent) and save to Local Folders also fails. This could
+## occur if network is down and filesystem problems are present such as disk
+## full, permission issues or hardware failure.
+saveToLocalFoldersFailed=Не удалось сохранить ваше сообщение в локальные папки. Возможно, закончилось место для хранения файлов.
+
+## LOCALIZATION NOTE(errorCloudFileAuth.message):
+## %1$S is the name of the online storage service against which the authentication failed.
+errorCloudFileAuth.message=Не удалось аутентифицироваться на %1$S.
+errorCloudFileUpload.title=Ошибка выгрузки
+
+## LOCALIZATION NOTE(errorCloudFileUpload.message):
+## %1$S is the name of the online storage service against which the uploading failed.
+## %2$S is the name of the file that failed to upload.
+errorCloudFileUpload.message=Не удалось выгрузить %2$S на %1$S.
+errorCloudFileQuota.title=Ошибка квоты
+
+## LOCALIZATION NOTE(errorCloudFileQuota.message):
+## %1$S is the name of the online storage service being uploaded to.
+## %2$S is the name of the file that could not be uploaded due to exceeding the storage limit.
+errorCloudFileQuota.message=Выгрузка %2$S на %1$S приведёт к превышению вашей квоты на место.
+errorCloudFileLimit.title=Ошибка размера файла
+
+## LOCALIZATION NOTE(errorCloudFileLimit.message):
+## %1$S is the name of the online storage service being uploaded to.
+## %2$S is the name of the file that could not be uploaded due to size restrictions.
+errorCloudFileLimit.message=Размер %2$S превышает максимальный размер для %1$S.
+errorCloudFileOther.title=Неизвестная ошибка
+
+## LOCALIZATION NOTE(errorCloudFileOther.message):
+## %1$S is the name of the online storage service that cannot be communicated with.
+errorCloudFileOther.message=При соединении с %1$S произошла неизвестная ошибка.
+errorCloudFileDeletion.title=Ошибка удаления
+
+## LOCALIZATION NOTE(errorCloudFileDeletion.message):
+## %1$S is the name of the online storage service that the file is to be deleted from.
+## %2$S is the name of the file that failed to be deleted.
+errorCloudFileDeletion.message=При удалении %2$S с %1$S возникла проблема.
+errorCloudFileUpgrade.label=Обновить
+
+## LOCALIZATION NOTE(stopShowingUploadingNotification): This string is used in the Filelink
+## upload notification bar to allow the user to dismiss the notification permanently.
+stopShowingUploadingNotification.accesskey=и
+stopShowingUploadingNotification.label=Никогда не показывать это снова
+replaceButton.label=Заменить…
+replaceButton.accesskey=м
+replaceButton.tooltip=Показать диалог поиска и замены
+
+## LOCALIZATION NOTE(blockedAllowResource): %S is the URL to load.
+blockedAllowResource=Разблокировать %S
+## LOCALIZATION NOTE (blockedContentMessage): Semi-colon list of plural forms.
+## See: https://developer.mozilla.org/en/docs/Localization_and_Plurals
+## %S will be replaced by brandShortName.
+## Files must be unblocked individually, therefore the plural form reads:
+## Unblocking a file (one of several) will include it (that one file) in your sent message.
+## In other words:
+## Unblocking one/several file(s) will include it/them in your message.
+blockedContentMessage=%S заблокировал загрузку в это сообщение файла. Разблокирование файла включит его в отправленное вами сообщение.;%S заблокировал загрузку в это сообщение нескольких файлов. Разблокирование какого-либо файла включит его в отправленное вами сообщение.;%S заблокировал загрузку в это сообщение нескольких файлов. Разблокирование какого-либо файла включит его в отправленное вами сообщение.
+
+blockedContentPrefLabel=Настройки
+blockedContentPrefAccesskey=а
+
+blockedContentPrefLabelUnix=Настройки
+blockedContentPrefAccesskeyUnix=а
+
+## Recipient pills fields.
+## LOCALIZATION NOTE(confirmRemoveRecipientRowTitle2): %S will be replaced with the field name.
+confirmRemoveRecipientRowTitle2=Удаление адресов %S
+## LOCALIZATION NOTE(confirmRemoveRecipientRowBody2): %S will be replaced with the field name.
+confirmRemoveRecipientRowBody2=Вы уверены, что хотите удалить адреса %S?
+confirmRemoveRecipientRowButton=Удалить
+
+## LOCALIZATION NOTE headersSpaceStyle is for aligning label of a newly create recipient row.
+## It should be larger than the largest Header label and identical to &headersSpace2.style;
+headersSpaceStyle=width: 8em
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/editor.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/editor.properties
new file mode 100644
index 0000000000..523bce4019
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/editor.properties
@@ -0,0 +1,208 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE FILE: embedded "\n" represent HTML breaks (<br>)
+# Don't translate embedded "\n".
+# Don't translate strings like this: %variable%
+# as they will be replaced using JavaScript
+#
+No=Нет
+Save=Сохранить
+More=Больше
+Less=Меньше
+MoreProperties=Больше свойств
+FewerProperties=Меньше свойств
+PropertiesAccessKey=в
+None=Ничего
+none=ничего
+OpenHTMLFile=Открыть HTML-файл
+OpenTextFile=Открыть текстовый файл
+SelectImageFile=Выберите файл изображения
+SaveDocument=Сохранить страницу
+SaveDocumentAs=Сохранить страницу как
+SaveTextAs=Сохранить текст как
+EditMode=Режим редактирования
+Preview=Предварительный просмотр
+Publish=Опубликовать
+PublishPage=Публикация страницы
+DontPublish=Не публиковать
+SavePassword=Сохранить этот пароль в хранилище паролей
+CorrectSpelling=(правильное написание)
+NoSuggestedWords=(нет вариантов)
+NoMisspelledWord=Слов с ошибками нет
+CheckSpellingDone=Проверка орфографии завершена.
+CheckSpelling=Проверка орфографии
+InputError=Ошибка
+Alert=Предупреждение
+CantEditFramesetMsg=Компоновщик не может редактировать страницы с вложенными или встроенными фреймами. Попробуйте редактировать каждый фрейм отдельно. Для страниц со встроенными фреймами, сохраните копию страницы и удалите тег <iframe>.
+CantEditMimeTypeMsg=Страницы данного типа не могут быть изменены.
+CantEditDocumentMsg=Эта страница не может быть изменена по неизвестной причине.
+BeforeClosing=перед закрытием
+BeforePreview=перед просмотром в браузере
+BeforeValidate=перед проверкой HTML
+# LOCALIZATION NOTE (SaveFilePrompt, PublishPrompt): Don't translate %title% and %reason% (this is the reason for asking user to close, such as "before closing")
+SaveFilePrompt=Сохранить изменения в «%title%» %reason%?\u0020
+PublishPrompt=Сохранить изменения в «%title%» %reason%?\u0020
+SaveFileFailed=Ошибка сохранения файла!
+
+# Publishing error strings:
+# LOCALIZATION NOTE Don't translate %dir% or %file% in the Publishing error strings:
+FileNotFound=Файл «%file%» не найден.
+SubdirDoesNotExist=Вложенный каталог «%dir%» на этом сайте не существует, или имя файла «%file%» уже используется другим вложенным каталогом.
+FilenameIsSubdir=Имя файла «%file%» уже используется другим вложенным каталогом.
+ServerNotAvailable=Сервер недоступен. Проверьте соединение с Интернетом, подождите некоторое время и попробуйте снова.
+Offline=Вы работаете в автономном режиме. Чтобы подключиться, щёлкните по значку в правом нижнем углу любого окна.
+DiskFull=Недостаточно места на диске для сохранения файла «%file%».
+NameTooLong=Имя файла или вложенного каталога слишком длинное.
+AccessDenied=У вас нет прав на публикацию по этому адресу.
+UnknownPublishError=Во время публикации произошла неизвестная ошибка.
+PublishFailed=Ошибка публикации!
+PublishCompleted=Публикация завершена.
+AllFilesPublished=Все файлы опубликованы
+# LOCALIZATION NOTE Don't translate %x% or %total%
+FailedFileMsg=%x% из %total% файлов не были опубликованы.
+# End-Publishing error strings
+Prompt=Приглашение
+# LOCALIZATION NOTE (PromptFTPUsernamePassword): Don't translate %host%
+PromptFTPUsernamePassword=Введите имя пользователя и пароль для FTP-сервера на %host%
+RevertCaption=Вернуться к последнему сохранению
+Revert=Вернуться
+SendPageReason=перед отправлением этой страницы
+Send=Отправить
+## LOCALIZATION NOTE (PublishProgressCaption, PublishToSite, AbandonChanges): Don't translate %title%
+PublishProgressCaption=Публикация: %title%
+PublishToSite=Публикация на сайт: %title%
+AbandonChanges=Не сохранять изменения в «%title%» и обновить страницу?
+DocumentTitle=Заголовок страницы
+NeedDocTitle=Введите заголовок для текущей страницы.
+DocTitleHelp=Он поможет идентифицировать страницу в заголовке окна и закладках.
+CancelPublishTitle=Отменить публикацию?
+## LOCALIZATION NOTE: "Continue" in this sentence must match the text for
+## the CancelPublishContinue key below
+CancelPublishMessage=Если вы отмените публикацию во время передачи файлов, не все из них могут быть полностью загружены на сервер. Продолжить публикацию или отменить?
+CancelPublishContinue=Продолжить
+MissingImageError=Введите имя или выберите файл изображения типа gif, jpg или png.
+EmptyHREFError=Введите или выберите адрес для создания новой ссылки.
+LinkText=Текст ссылки
+LinkImage=Изображение ссылки
+MixedSelection=[Смешанное выделение]
+Mixed=(смешанное)
+# LOCALIZATION NOTE (NotInstalled): %S is the name of the font
+NotInstalled=%S (не установлен)
+EnterLinkText=Введите текст для отображения ссылки:
+EnterLinkTextAccessKey=т
+EmptyLinkTextError=Введите какой-нибудь текст для этой ссылки.
+EditTextWarning=Произойдет замена уже существующего содержимого.
+#LOCALIZATION NOTE (ValidateNumber):Don't translate: %n% %min% %max%
+ValidateRangeMsg=Введённое вами число (%n%) не входит в промежуток допустимых значений.
+ValidateNumberMsg=Введите число в промежутке между %min% и %max%.
+MissingAnchorNameError=Введите имя для этого якоря.
+#LOCALIZATION NOTE (DuplicateAnchorNameError): Don't translate %name%
+DuplicateAnchorNameError=«%name%» уже существует на этой странице. Введите другое имя.
+BulletStyle=Стиль маркеров
+SolidCircle=Круг
+OpenCircle=Окружность
+SolidSquare=Квадрат
+NumberStyle=Стиль нумерации
+Automatic=Автоматически
+Style_1=1, 2, 3…
+Style_I=I, II, III…
+Style_i=i, ii, iii…
+Style_A=A, B, C…
+Style_a=a, b, c…
+Pixels=пикселей
+Percent=процентов
+PercentOfCell=% от размера ячейки
+PercentOfWindow=% от размера окна
+PercentOfTable=% от размера таблицы
+#LOCALIZATION NOTE (untitledTitle): %S is the window #. No plural handling needed.
+untitledTitle=безымянный-%S
+untitledDefaultFilename=безымянный
+ShowToolbar=Показать панель инструментов
+HideToolbar=Скрыть панель инструментов
+ImapError=Не удалось загрузить изображение
+ImapCheck=\nВведите новый адрес (URL) и попробуйте снова.
+SaveToUseRelativeUrl=Относительные URL могут использоваться только на сохранённой странице
+NoNamedAnchorsOrHeadings=(Нет якорей или заголовков с именами на этой странице)
+TextColor=Цвет текста
+HighlightColor=Цвет подсветки
+PageColor=Цвет фона страницы
+BlockColor=Блокировать цвет фона
+TableColor=Цвет фона таблицы
+CellColor=Фоновый цвет ячейки
+TableOrCellColor=Цвет таблицы или ячейки
+LinkColor=Цвет ссылки
+ActiveLinkColor=Цвет активной ссылки
+VisitedLinkColor=Цвет просмотренной ссылки
+NoColorError=Щёлкните по цвету или введите корректный HTML-код цвета
+Table=Таблицу
+TableCell=Ячейка таблицы
+NestedTable=Вложенную таблицу
+HLine=Разделитель
+Link=Ссылка
+Image=Изображение
+ImageAndLink=Изображение и ссылка
+NamedAnchor=Якорь с именем
+List=Список
+ListItem=Элемент списка
+Form=Форма
+InputTag=Поле формы
+InputImage=Изображение формы
+TextArea=Текстовое поле
+Select=Список выборов
+Button=Кнопка
+Label=Метка
+FieldSet=Набор полей
+Tag=Тег
+MissingSiteNameError=Введите имя для публикуемого сайта.
+MissingPublishUrlError=Введите адрес для публикации этой страницы.
+MissingPublishFilename=Введите имя файла для текущей страницы.
+#LOCALIZATION NOTE (DuplicateSiteNameError): Don't translate %name%
+DuplicateSiteNameError=«%name%» уже существует. Введите другое имя сайта.
+AdvancedProperties=Дополнительные свойства…
+AdvancedEditForCellMsg=Расширенное редактирование недоступно, если выбрано несколько ячеек.
+# LOCALIZATION NOTE (ObjectProperties):Don't translate "%obj%" it will be replaced with one of above object nouns
+ObjectProperties=Свойства %obj%…
+# LOCALIZATION NOTE This character must be in the above string and not conflict with other accesskeys in Format menu
+ObjectPropertiesAccessKey=С
+# LOCALIZATION NOTE (JoinSelectedCells): This variable should contain the "tableJoinCells.accesskey"
+# letter as defined in editorOverlay.dtd
+JoinSelectedCells=Объединить выбранные ячейки
+# LOCALIZATION NOTE (JoinCellToRight): This variable should contain the "tableJoinCells.accesskey"
+# letter as defined in editorOverlay.dtd
+JoinCellToRight=Объединить с ячейкой справа
+JoinCellAccesskey=О
+# LOCALIZATION NOTE (TableSelectKey): Ctrl key on a keyboard
+TableSelectKey=Ctrl+
+# LOCALIZATION NOTE (XulKeyMac): Command key on a Mac keyboard
+XulKeyMac=Cmd+
+# LOCALIZATION NOTE (Del): Del key on a keyboard
+Del=Del
+Delete=Удалить
+DeleteCells=Удалить ячейки
+DeleteTableTitle=Удалить строки или столбцы
+DeleteTableMsg=Уменьшение числа строк или столбцов приведет к удалению ячеек и их содержимого. Вы хотите сделать это?
+Clear=Очистить
+#Mouse actions
+Click=Щелчок
+Drag=Перетаскивание
+Unknown=Неизвестно
+#
+# LOCALIZATION NOTE "RemoveTextStylesAccesskey" is used for both
+# menu items: "RemoveTextStyles" and "StopTextStyles"
+RemoveTextStylesAccesskey=и
+RemoveTextStyles=Убрать все стили текста
+StopTextStyles=Прервать стили текста
+#
+# LOCALIZATION NOTE "RemoveLinksAccesskey" is used for both
+# menu items: "RemoveLinks" and "StopLinks"
+RemoveLinksAccesskey=У
+RemoveLinks=Убрать ссылки
+StopLinks=Прервать ссылку
+#
+NoFormAction=Рекомендуется указать для этой формы обработчик. Самообрабатывающиеся формы обычно используются только опытными пользователями и могут вести себя в разных браузерах неодинаково.
+NoAltText=Если изображение имеет отношение к содержанию документа, следует указать для него альтернативный текст, который будет появляться в текстовых браузерах, в браузерах с отключенной функцией загрузки изображений и во время загрузки изображения.
+#
+Malformed=Исходный код не может быть преобразован обратно в документ, так как он не является валидным XHTML.
+NoLinksToCheck=Нет элементов с ссылками для проверки
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/editorOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/editorOverlay.dtd
new file mode 100644
index 0000000000..956b452ba2
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/editorOverlay.dtd
@@ -0,0 +1,303 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Attn: Localization - some of the menus in this dialog directly affect mail also. -->
+
+<!-- Edit menu items -->
+<!ENTITY pasteNoFormatting.label "Вставить без форматирования">
+<!ENTITY pasteNoFormatting.accesskey "б">
+<!ENTITY pasteNoFormatting.key "V">
+<!ENTITY pasteAsQuotationCmd.label "Вставить как цитату">
+<!ENTITY pasteAsQuotationCmd.accesskey "ц">
+
+<!-- Insert menu items -->
+<!ENTITY insertMenu.label "Вставить">
+<!ENTITY insertMenu.accesskey "с">
+<!ENTITY insertLinkCmd2.label "Ссылку…">
+<!ENTITY insertLinkCmd2.accesskey "ы">
+<!ENTITY insertLinkCmd2.key "K">
+<!ENTITY insertAnchorCmd.label "Якорь с именем…">
+<!ENTITY insertAnchorCmd.accesskey "к">
+<!ENTITY insertImageCmd.label "Изображение…">
+<!ENTITY insertImageCmd.accesskey "з">
+<!ENTITY insertHLineCmd.label "Разделитель">
+<!ENTITY insertHLineCmd.accesskey "з">
+<!ENTITY insertTableCmd.label "Таблицу…">
+<!ENTITY insertTableCmd.accesskey "б">
+<!ENTITY insertHTMLCmd.label "HTML…">
+<!ENTITY insertHTMLCmd.accesskey "H">
+<!ENTITY insertMathCmd.label "Math…">
+<!ENTITY insertMathCmd.accesskey "M">
+<!ENTITY insertCharsCmd.label "Буквы и символы…">
+<!ENTITY insertCharsCmd.accesskey "у">
+<!ENTITY insertBreakAllCmd.label "Разрыв под изображениями">
+<!ENTITY insertBreakAllCmd.accesskey "о">
+
+<!-- Used just in context popup. -->
+<!ENTITY createLinkCmd.label "Создать ссылку…">
+<!ENTITY createLinkCmd.accesskey "с">
+<!ENTITY editLinkCmd.label "Редактировать объект в новом окне Компоновщика">
+<!ENTITY editLinkCmd.accesskey "д">
+
+<!-- Font Face SubMenu -->
+<!ENTITY FontFaceSelect.tooltip "Выбор шрифта">
+<!ENTITY fontfaceMenu.label "Шрифт">
+<!ENTITY fontfaceMenu.accesskey "р">
+<!ENTITY fontVarWidth.label "Пропорциональный">
+<!ENTITY fontVarWidth.accesskey "п">
+<!ENTITY fontFixedWidth.label "Моноширинный">
+<!ENTITY fontFixedWidth.accesskey "н">
+<!ENTITY fontFixedWidth.key "T">
+<!ENTITY fontHelvetica.label "Helvetica, Arial">
+<!ENTITY fontHelvetica.accesskey "l">
+<!ENTITY fontTimes.label "Times">
+<!ENTITY fontTimes.accesskey "T">
+<!ENTITY fontCourier.label "Courier">
+<!ENTITY fontCourier.accesskey "C">
+
+<!-- Font Size SubMenu -->
+<!ENTITY FontSizeSelect.tooltip "Выбор размера шрифта">
+<!ENTITY decreaseFontSize.label "Уменьшить">
+<!ENTITY decreaseFontSize.accesskey "м">
+<!ENTITY decrementFontSize.key "&lt;">
+<!ENTITY decrementFontSize.key2 ","> <!-- < is above this key on many keyboards -->
+<!ENTITY increaseFontSize.label "Увеличить">
+<!ENTITY increaseFontSize.accesskey "в">
+<!ENTITY incrementFontSize.key "&gt;">
+<!ENTITY incrementFontSize.key2 "."> <!-- > is above this key on many keyboards -->
+
+<!ENTITY fontSizeMenu.label "Размер шрифта">
+<!ENTITY fontSizeMenu.accesskey "м">
+<!ENTITY size-tinyCmd.label "Крошечный">
+<!ENTITY size-tinyCmd.accesskey "ш">
+<!ENTITY size-smallCmd.label "Маленький">
+<!ENTITY size-smallCmd.accesskey "к">
+<!ENTITY size-mediumCmd.label "Средний">
+<!ENTITY size-mediumCmd.accesskey "е">
+<!ENTITY size-largeCmd.label "Большой">
+<!ENTITY size-largeCmd.accesskey "о">
+<!ENTITY size-extraLargeCmd.label "Крупный">
+<!ENTITY size-extraLargeCmd.accesskey "п">
+<!ENTITY size-hugeCmd.label "Огромный">
+<!ENTITY size-hugeCmd.accesskey "м">
+
+<!-- Font Style SubMenu -->
+<!ENTITY fontStyleMenu.label "Стиль текста">
+<!ENTITY fontStyleMenu.accesskey "т">
+<!ENTITY styleBoldCmd.label "Полужирный">
+<!ENTITY styleBoldCmd.accesskey "ж">
+<!ENTITY styleBoldCmd.key "B">
+<!ENTITY styleItalicCmd.label "Курсив">
+<!ENTITY styleItalicCmd.accesskey "у">
+<!ENTITY styleItalicCmd.key "I">
+<!ENTITY styleUnderlineCmd.label "Подчёркивание">
+<!ENTITY styleUnderlineCmd.accesskey "ч">
+<!ENTITY styleUnderlineCmd.key "U">
+<!ENTITY styleStrikeThruCmd.label "Зачёркивание">
+<!ENTITY styleStrikeThruCmd.accesskey "а">
+<!ENTITY styleSuperscriptCmd.label "Верхний индекс">
+<!ENTITY styleSuperscriptCmd.accesskey "х">
+<!ENTITY styleSubscriptCmd.label "Нижний индекс">
+<!ENTITY styleSubscriptCmd.accesskey "ж">
+<!ENTITY styleNonbreakingCmd.label "Неразрывно">
+<!ENTITY styleNonbreakingCmd.accesskey "е">
+<!ENTITY styleEm.label "Выделение">
+<!ENTITY styleEm.accesskey "д">
+<!ENTITY styleStrong.label "Сильное выделение">
+<!ENTITY styleStrong.accesskey "и">
+<!ENTITY styleCite.label "Цитата">
+<!ENTITY styleCite.accesskey "и">
+<!ENTITY styleAbbr.label "Аббревиатура">
+<!ENTITY styleAbbr.accesskey "б">
+<!ENTITY styleAcronym.label "Акроним">
+<!ENTITY styleAcronym.accesskey "р">
+<!ENTITY styleCode.label "Код">
+<!ENTITY styleCode.accesskey "д">
+<!ENTITY styleSamp.label "Пример вывода">
+<!ENTITY styleSamp.accesskey "ы">
+<!ENTITY styleVar.label "Переменный">
+<!ENTITY styleVar.accesskey "м">
+
+<!ENTITY formatFontColor.label "Цвет текста…">
+<!ENTITY formatFontColor.accesskey "т">
+<!ENTITY tableOrCellColor.label "Цвет фона ячейки или таблицы…">
+<!ENTITY tableOrCellColor.accesskey "ч">
+
+<!ENTITY formatRemoveStyles.key "Y">
+<!ENTITY formatRemoveLinks.key "K">
+<!ENTITY formatRemoveNamedAnchors.label "Удалить якоря с именами">
+<!ENTITY formatRemoveNamedAnchors.accesskey "д">
+<!ENTITY formatRemoveNamedAnchors2.key "R">
+
+<!ENTITY paragraphMenu.label "Абзац">
+<!ENTITY paragraphMenu.accesskey "б">
+<!ENTITY paragraphParagraphCmd.label "Абзац">
+<!ENTITY paragraphParagraphCmd.accesskey "б">
+<!ENTITY heading1Cmd.label "Заголовок 1">
+<!ENTITY heading1Cmd.accesskey "1">
+<!ENTITY heading2Cmd.label "Заголовок 2">
+<!ENTITY heading2Cmd.accesskey "2">
+<!ENTITY heading3Cmd.label "Заголовок 3">
+<!ENTITY heading3Cmd.accesskey "3">
+<!ENTITY heading4Cmd.label "Заголовок 4">
+<!ENTITY heading4Cmd.accesskey "4">
+<!ENTITY heading5Cmd.label "Заголовок 5">
+<!ENTITY heading5Cmd.accesskey "5">
+<!ENTITY heading6Cmd.label "Заголовок 6">
+<!ENTITY heading6Cmd.accesskey "6">
+<!ENTITY paragraphAddressCmd.label "Адрес">
+<!ENTITY paragraphAddressCmd.accesskey "д">
+<!ENTITY paragraphPreformatCmd.label "Заданный формат">
+<!ENTITY paragraphPreformatCmd.accesskey "ф">
+
+<!-- List menu items -->
+<!ENTITY formatlistMenu.label "Список">
+<!ENTITY formatlistMenu.accesskey "п">
+<!ENTITY noneCmd.label "Ничего">
+<!ENTITY noneCmd.accesskey "и">
+<!ENTITY listBulletCmd.label "Маркированный">
+<!ENTITY listBulletCmd.accesskey "а">
+<!ENTITY listNumberedCmd.label "Нумерованный">
+<!ENTITY listNumberedCmd.accesskey "у">
+<!ENTITY listTermCmd.label "Термин">
+<!ENTITY listTermCmd.accesskey "е">
+<!ENTITY listDefinitionCmd.label "Определение">
+<!ENTITY listDefinitionCmd.accesskey "р">
+<!ENTITY listPropsCmd.label "Свойства списка…">
+<!ENTITY listPropsCmd.accesskey "в">
+
+<!ENTITY ParagraphSelect.tooltip "Выберите формат абзаца">
+<!-- Shared in Paragraph, and Toolbar menulist -->
+<!ENTITY bodyTextCmd.label "Обычный текст">
+<!ENTITY bodyTextCmd.accesskey "т">
+
+<!-- Align menu items -->
+<!ENTITY alignMenu.label "Выравнивание">
+<!ENTITY alignMenu.accesskey "ы">
+<!ENTITY alignLeft.label "По левому краю">
+<!ENTITY alignLeft.accesskey "л">
+<!ENTITY alignLeft.tooltip "Выровнять по левому краю">
+<!ENTITY alignCenter.label "По центру">
+<!ENTITY alignCenter.accesskey "ц">
+<!ENTITY alignCenter.tooltip "Выровнять по центру">
+<!ENTITY alignRight.label "По правому краю">
+<!ENTITY alignRight.accesskey "п">
+<!ENTITY alignRight.tooltip "Выровнять по правому краю">
+<!ENTITY alignJustify.label "По ширине">
+<!ENTITY alignJustify.accesskey "ш">
+<!ENTITY alignJustify.tooltip "Выровнять по ширине">
+
+<!ENTITY increaseIndent.label "Увеличить отступ">
+<!ENTITY increaseIndent.accesskey "в">
+<!ENTITY increaseIndent.key "]">
+<!ENTITY decreaseIndent.label "Уменьшить отступ">
+<!ENTITY decreaseIndent.accesskey "м">
+<!ENTITY decreaseIndent.key "[">
+
+<!ENTITY colorsAndBackground.label "Цвета и фон страницы…">
+<!ENTITY colorsAndBackground.accesskey "в">
+
+<!-- Table Menu -->
+<!ENTITY tableMenu.label "Таблица">
+<!ENTITY tableMenu.accesskey "а">
+
+<!-- Select Submenu -->
+<!ENTITY tableSelectMenu.label "Выделить">
+<!ENTITY tableSelectMenu.accesskey "ы">
+
+<!ENTITY tableSelectMenu2.label "Выделить таблицу">
+<!ENTITY tableSelectMenu2.accesskey "б">
+<!ENTITY tableInsertMenu2.label "Вставить таблицу">
+<!ENTITY tableInsertMenu2.accesskey "л">
+<!ENTITY tableDeleteMenu2.label "Удалить таблицу">
+<!ENTITY tableDeleteMenu2.accesskey "д">
+
+<!-- Insert SubMenu -->
+<!ENTITY tableInsertMenu.label "Вставить">
+<!ENTITY tableInsertMenu.accesskey "с">
+<!ENTITY tableTable.label "Таблицу">
+<!ENTITY tableTable.accesskey "ц">
+<!ENTITY tableRow.label "Строку">
+<!ENTITY tableRows.label "Строки">
+<!ENTITY tableRow.accesskey "р">
+<!ENTITY tableRowAbove.label "Строку сверху">
+<!ENTITY tableRowAbove.accesskey "в">
+<!ENTITY tableRowBelow.label "Строку снизу">
+<!ENTITY tableRowBelow.accesskey "н">
+<!ENTITY tableColumn.label "Столбец">
+<!ENTITY tableColumns.label "Столбцы">
+<!ENTITY tableColumn.accesskey "б">
+<!ENTITY tableColumnBefore.label "Столбец до">
+<!ENTITY tableColumnBefore.accesskey "д">
+<!ENTITY tableColumnAfter.label "Столбец после">
+<!ENTITY tableColumnAfter.accesskey "п">
+<!ENTITY tableCell.label "Ячейку">
+<!ENTITY tableCells.label "Ячейки">
+<!ENTITY tableCell.accesskey "ч">
+<!ENTITY tableCellContents.label "Содержимое ячейки">
+<!ENTITY tableCellContents.accesskey "о">
+<!ENTITY tableAllCells.label "Все ячейки">
+<!ENTITY tableAllCells.accesskey "е">
+<!ENTITY tableCellBefore.label "Ячейку до">
+<!ENTITY tableCellBefore.accesskey "д">
+<!ENTITY tableCellAfter.label "Ячейку после">
+<!ENTITY tableCellAfter.accesskey "п">
+<!-- Delete SubMenu -->
+<!ENTITY tableDeleteMenu.label "Удалить">
+<!ENTITY tableDeleteMenu.accesskey "а">
+
+<!-- text for "Join Cells" is in editor.properties
+ ("JoinSelectedCells" and "JoinCellToRight")
+ the access key must exist in both of those strings
+ But value must be set here for accesskey to draw properly
+-->
+<!ENTITY tableJoinCells.label "j">
+<!ENTITY tableJoinCells.accesskey "j">
+<!ENTITY tableSplitCell.label "Разбить ячейку">
+<!ENTITY tableSplitCell.accesskey "б">
+<!ENTITY convertToTable.label "Создать таблицу из выделения">
+<!ENTITY convertToTable.accesskey "д">
+<!ENTITY tableProperties.label "Свойства таблицы…">
+<!ENTITY tableProperties.accesskey "в">
+
+<!ENTITY imageToolbarCmd.label "Изображение">
+<!ENTITY imageToolbarCmd.tooltip "Вставить новое изображение или изменить свойства выделенного">
+<!ENTITY hruleToolbarCmd.label "Разделитель">
+<!ENTITY hruleToolbarCmd.tooltip "Вставить новый горизонтальный разделитель или изменить свойства выделенного">
+<!ENTITY tableToolbarCmd.label "Таблица">
+<!ENTITY tableToolbarCmd.tooltip "Вставить новую таблицу или изменить свойства выделенной">
+<!ENTITY linkToolbarCmd.label "Ссылка">
+<!ENTITY linkToolbarCmd.tooltip "Вставить новую ссылку или изменить свойства выделенной">
+<!ENTITY anchorToolbarCmd.label "Якорь">
+<!ENTITY anchorToolbarCmd.tooltip "Вставить новый якорь или изменить свойства выделенного">
+<!ENTITY TextColorButton.tooltip "Выбор цвета для текста">
+<!ENTITY BackgroundColorButton.tooltip "Выбор цвета для фона">
+
+<!-- Editor toolbar -->
+<!ENTITY absoluteFontSizeToolbarCmd.tooltip "Указать размер шрифта">
+<!ENTITY decreaseFontSizeToolbarCmd.tooltip "Уменьшить размер шрифта">
+<!ENTITY increaseFontSizeToolbarCmd.tooltip "Увеличить размер шрифта">
+<!ENTITY boldToolbarCmd.tooltip "Полужирный">
+<!ENTITY italicToolbarCmd.tooltip "Курсив">
+<!ENTITY underlineToolbarCmd.tooltip "Подчёркнутый">
+<!ENTITY bulletListToolbarCmd.tooltip "Добавить или удалить маркированный список">
+<!ENTITY numberListToolbarCmd.tooltip "Добавить или удалить нумерованный список">
+<!ENTITY outdentToolbarCmd.tooltip "Убрать отступ (сдвиг влево)">
+<!ENTITY indentToolbarCmd.tooltip "Сделать отступ (сдвиг вправо)">
+<!ENTITY AlignPopupButton.tooltip "Выбор выравнивания текста">
+<!ENTITY InsertPopupButton.tooltip "Вставка ссылки, якоря, изображения, горизонтального разделителя или таблицы">
+<!ENTITY alignLeftButton.tooltip "Выравнивание текста по левому краю">
+<!ENTITY alignCenterButton.tooltip "Выравнивание текста по центру">
+<!ENTITY alignRightButton.tooltip "Выравнивание текста по правому краю">
+<!ENTITY alignJustifyButton.tooltip "Выравнивание текста по ширине">
+
+<!-- TOC manipulation -->
+<!ENTITY insertTOC.label "Вставить">
+<!ENTITY insertTOC.accesskey "В">
+<!ENTITY updateTOC.label "Обновить">
+<!ENTITY updateTOC.accesskey "О">
+<!ENTITY removeTOC.label "Убрать">
+<!ENTITY removeTOC.accesskey "У">
+<!ENTITY tocMenu.label "Оглавление…">
+<!ENTITY tocMenu.accesskey "г">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/mailComposeEditorOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/mailComposeEditorOverlay.dtd
new file mode 100644
index 0000000000..42a13be80f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/mailComposeEditorOverlay.dtd
@@ -0,0 +1,9 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY attachImageSource.label "Вложить это изображение в сообщение">
+<!ENTITY attachImageSource.accesskey "л">
+
+<!ENTITY attachLinkSource.label "Вложить файл, открывающийся по этой ссылке, в сообщение">
+<!ENTITY attachLinkSource.accesskey "л">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/messengercompose.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/messengercompose.dtd
new file mode 100644
index 0000000000..0312eddf7d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/messengercompose.dtd
@@ -0,0 +1,306 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!--LOCALIZATION NOTE messengercompose.dtd Main UI for message composition -->
+<!ENTITY msgComposeWindow.title "Создание сообщения: (без темы)">
+
+<!-- File Menu -->
+<!ENTITY fileMenu.label "Файл">
+<!ENTITY fileMenu.accesskey "Ф">
+<!ENTITY newMenu.label "Создать">
+<!ENTITY newMenu.accesskey "С">
+<!ENTITY newMessage.label "Сообщение">
+<!ENTITY newMessage.accesskey "б">
+<!ENTITY newMessageCmd2.key "N">
+<!ENTITY newContact.label "Контакт адресной книги…">
+<!ENTITY newContact.accesskey "н">
+<!ENTITY attachMenu.label "Вложить">
+<!ENTITY attachMenu.accesskey "ж">
+<!ENTITY attachCloudCmd.label "Filelink">
+<!ENTITY attachCloudCmd.accesskey "i">
+<!ENTITY attachPageCmd.label "Веб-страницу…">
+<!ENTITY attachPageCmd.accesskey "е">
+<!ENTITY remindLater.label "Напомнить позже">
+<!ENTITY remindLater.accesskey "а">
+<!ENTITY closeCmd.label "Закрыть">
+<!ENTITY closeCmd.key "W">
+<!ENTITY closeCmd.accesskey "З">
+<!ENTITY saveCmd.label "Сохранить">
+<!ENTITY saveCmd.key "S">
+<!ENTITY saveCmd.accesskey "о">
+<!ENTITY saveAsCmd.label "Сохранить как">
+<!ENTITY saveAsCmd.accesskey "к">
+<!ENTITY saveAsFileCmd.label "Файл…">
+<!ENTITY saveAsFileCmd.accesskey "Ф">
+<!ENTITY saveAsDraftCmd.label "Черновик">
+<!ENTITY saveAsDraftCmd.accesskey "Ч">
+<!ENTITY saveAsTemplateCmd.label "Шаблон">
+<!ENTITY saveAsTemplateCmd.accesskey "Ш">
+<!ENTITY sendNowCmd.label "Отправить">
+<!ENTITY sendCmd.keycode "VK_RETURN">
+<!ENTITY sendNowCmd.accesskey "п">
+<!ENTITY sendLaterCmd.label "Отправить позже">
+<!ENTITY sendLaterCmd.keycode "VK_RETURN">
+<!ENTITY sendLaterCmd.accesskey "з">
+<!ENTITY printCmd.label "Печать…">
+<!ENTITY printCmd.key "P">
+<!ENTITY printCmd.accesskey "П">
+
+<!-- Edit Menu -->
+<!ENTITY editMenu.label "Правка">
+<!ENTITY editMenu.accesskey "П">
+<!ENTITY undoCmd.label "Отменить">
+<!ENTITY undoCmd.key "Z">
+<!ENTITY undoCmd.accesskey "О">
+<!ENTITY redoCmd.label "Повторить">
+<!ENTITY redoCmd.key "Y">
+<!ENTITY redoCmd.accesskey "П">
+<!ENTITY cutCmd.key "X">
+<!ENTITY copyCmd.key "C">
+<!ENTITY pasteCmd.key "V">
+<!ENTITY pasteNoFormattingCmd.key "V">
+<!ENTITY pasteAsQuotationCmd.key "o">
+<!ENTITY editRewrapCmd.accesskey "е">
+<!ENTITY deleteCmd.label "Удалить">
+<!ENTITY deleteCmd.accesskey "У">
+<!ENTITY editRewrapCmd.label "Переформатировать">
+<!ENTITY editRewrapCmd.key "R">
+<!ENTITY renameAttachmentCmd.label "Переименовать вложение…">
+<!ENTITY renameAttachmentCmd.accesskey "и">
+<!ENTITY reorderAttachmentsCmd.label "Пересортировать вложения…">
+<!ENTITY reorderAttachmentsCmd.accesskey "с">
+<!ENTITY reorderAttachmentsCmd.key "x">
+<!ENTITY selectAllCmd.accesskey "ы">
+<!ENTITY findBarCmd.label "Найти…">
+<!ENTITY findBarCmd.accesskey "и">
+<!ENTITY findBarCmd.key "F">
+<!ENTITY findReplaceCmd.label "Найти и заменить…">
+<!ENTITY findReplaceCmd.accesskey "а">
+<!ENTITY findReplaceCmd.key "H">
+<!ENTITY findAgainCmd.label "Найти следующее">
+<!ENTITY findAgainCmd.accesskey "а">
+<!ENTITY findAgainCmd.key "G">
+<!ENTITY findAgainCmd.key2 "VK_F3">
+<!ENTITY findPrevCmd.label "Найти предыдущее">
+<!ENTITY findPrevCmd.accesskey "щ">
+<!ENTITY findPrevCmd.key "G">
+<!ENTITY findPrevCmd.key2 "VK_F3">
+
+<!-- Reorder Attachment Panel -->
+<!ENTITY reorderAttachmentsPanel.label "Пересортировать вложения">
+<!ENTITY moveAttachmentBundleUpPanelBtn.label "Вместе">
+
+<!-- LOCALIZATION NOTE (sortAttachmentsPanelBtn.Sort.AZ.label):
+ Please ensure that this translation matches
+ sortAttachmentsPanelBtn.Sort.ZA.label, except for the sort direction. -->
+<!ENTITY sortAttachmentsPanelBtn.Sort.AZ.label "Сортировка: А - Я">
+<!ENTITY sortAttachmentsPanelBtn.Sort.ZA.label "Сортировка: Я - А">
+<!-- LOCALIZATION NOTE (sortAttachmentsPanelBtn.SortSelection.AZ.label):
+ Please ensure that this translation matches
+ sortAttachmentsPanelBtn.SortSelection.ZA.label, except for the sort direction. -->
+<!ENTITY sortAttachmentsPanelBtn.SortSelection.AZ.label "Порядок сортировки: А - Я">
+<!ENTITY sortAttachmentsPanelBtn.SortSelection.ZA.label "Порядок сортировки: Я - А">
+<!ENTITY sortAttachmentsPanelBtn.key "y">
+
+<!-- View Menu -->
+<!ENTITY viewMenu.label "Вид">
+<!ENTITY viewMenu.accesskey "В">
+<!ENTITY viewToolbarsMenuNew.label "Панели инструментов">
+<!ENTITY viewToolbarsMenuNew.accesskey "П">
+<!ENTITY menubarCmd.label "Панель меню">
+<!ENTITY menubarCmd.accesskey "е">
+<!ENTITY showCompositionToolbarCmd.label "Панель компоновки">
+<!ENTITY showCompositionToolbarCmd.accesskey "е">
+<!ENTITY showFormattingBarCmd.label "Панель форматирования">
+<!ENTITY showFormattingBarCmd.accesskey "ф">
+<!ENTITY showTaskbarCmd.label "Строка состояния">
+<!ENTITY showTaskbarCmd.accesskey "С">
+<!ENTITY customizeToolbar.label "Настроить…">
+<!ENTITY customizeToolbar.accesskey "Н">
+
+<!ENTITY addressSidebar.label "Панель контактов">
+<!ENTITY addressSidebar.accesskey "к">
+
+<!-- Format Menu -->
+<!ENTITY formatMenu.label "Формат">
+<!ENTITY formatMenu.accesskey "Ф">
+
+<!-- Options Menu -->
+<!ENTITY optionsMenu.label "Настройки">
+<!ENTITY optionsMenu.accesskey "й">
+<!ENTITY checkSpellingCmd2.label "Проверить орфографию…">
+<!ENTITY checkSpellingCmd2.key "p">
+<!ENTITY checkSpellingCmd2.key2 "VK_F7">
+<!ENTITY checkSpellingCmd2.accesskey "в">
+<!ENTITY enableInlineSpellChecker.label "Проверка орфографии при наборе текста">
+<!ENTITY enableInlineSpellChecker.accesskey "о">
+<!ENTITY quoteCmd.label "Цитировать сообщение">
+<!ENTITY quoteCmd.accesskey "Ц">
+
+<!--LOCALIZATION NOTE attachVCard.label Don't translate the term 'vCard' -->
+<!ENTITY attachVCard.label "Вложить визитную карточку (vCard)">
+<!ENTITY attachVCard.accesskey "в">
+
+<!ENTITY returnReceiptMenu.label "Уведомление о прочтении">
+<!ENTITY returnReceiptMenu.accesskey "У">
+<!ENTITY dsnMenu.label "Уведомление о доставке">
+<!ENTITY dsnMenu.accesskey "с">
+<!ENTITY priorityMenu.label "Важность">
+<!ENTITY priorityMenu.accesskey "ж">
+<!ENTITY priorityButton.title "Важность">
+<!ENTITY priorityButton.tooltiptext "Изменить важность сообщения">
+<!ENTITY priorityButton.label "Важность:">
+<!ENTITY lowestPriorityCmd.label "Самая низкая">
+<!ENTITY lowestPriorityCmd.accesskey "с">
+<!ENTITY lowPriorityCmd.label "Низкая">
+<!ENTITY lowPriorityCmd.accesskey "н">
+<!ENTITY normalPriorityCmd.label "Обычная">
+<!ENTITY normalPriorityCmd.accesskey "о">
+<!ENTITY highPriorityCmd.label "Высокая">
+<!ENTITY highPriorityCmd.accesskey "в">
+<!ENTITY highestPriorityCmd.label "Самая высокая">
+<!ENTITY highestPriorityCmd.accesskey "а">
+<!ENTITY fileCarbonCopyCmd.label "Поместить копию в папку">
+<!ENTITY fileCarbonCopyCmd.accesskey "к">
+<!ENTITY fileHereMenu.label "Поместить сюда">
+
+<!-- Tools Menu -->
+<!ENTITY tasksMenu.label "Инструменты">
+<!ENTITY tasksMenu.accesskey "И">
+<!ENTITY messengerCmd.label "Почта и группы новостей">
+<!ENTITY messengerCmd.accesskey "П">
+<!ENTITY messengerCmd.commandkey "1">
+<!ENTITY addressBookCmd.label "Адресная книга">
+<!ENTITY addressBookCmd.accesskey "А">
+<!ENTITY addressBookCmd.key "B">
+<!ENTITY accountManagerCmd2.label "Параметры учётной записи">
+<!ENTITY accountManagerCmd2.accesskey "м">
+<!ENTITY accountManagerCmdUnix2.accesskey "м">
+
+<!-- Mac OS X Window Menu -->
+<!ENTITY minimizeWindow.key "m">
+<!ENTITY minimizeWindow.label "Убрать в Dock">
+<!ENTITY bringAllToFront.label "Все окна — на передний план">
+<!ENTITY zoomWindow.label "Изменить масштаб">
+<!ENTITY windowMenu.label "Окно">
+
+<!-- Mail Toolbar -->
+<!ENTITY sendButton.label "Отправить">
+<!ENTITY quoteButton.label "Цитата">
+<!ENTITY addressButton.label "Адрес">
+<!ENTITY spellingButton.label "Орфография">
+<!ENTITY saveButton.label "Сохранить">
+<!ENTITY printButton.label "Печать">
+
+<!-- Mail Toolbar Tooltips -->
+<!ENTITY sendButton.tooltip "Отправить это сообщение сейчас">
+<!ENTITY sendlaterButton.tooltip "Отправить это сообщение позже">
+<!ENTITY quoteButton.tooltip "Цитировать предыдущее сообщение">
+<!ENTITY addressButton.tooltip "Выбрать адресата из адресной книги">
+<!ENTITY spellingButton.tooltip "Проверить орфографию выделенного отрывка или всего сообщения">
+<!ENTITY saveButton.tooltip "Сохранить это сообщение">
+<!ENTITY cutButton.tooltip "Вырезать">
+<!ENTITY copyButton.tooltip "Копировать">
+<!ENTITY pasteButton.tooltip "Вставить">
+<!ENTITY printButton.tooltip "Распечатать это сообщение">
+
+<!-- Headers -->
+<!--LOCALIZATION NOTE headersSpaces.style is for aligning the From:, To: and
+ Subject: rows. It should be larger than the largest Header label -->
+<!ENTITY headersSpace2.style "width: 8em;">
+<!ENTITY fromAddr2.label "От">
+<!ENTITY fromAddr.accesskey "т">
+<!ENTITY replyAddr2.label "Обратный адрес">
+<!ENTITY newsgroupsAddr2.label "Группа новостей">
+<!ENTITY followupAddr2.label "Ответ в группу новостей">
+<!ENTITY subject2.label "Тема">
+<!ENTITY subject.accesskey "Т">
+<!ENTITY attachmentBucketCloseButton.tooltip "Скрыть панель вложений">
+
+<!-- Format Toolbar, imported from editorAppShell.xhtml -->
+<!ENTITY SmileButton.tooltip "Вставить смайлик">
+<!ENTITY smiley1Cmd.label "Улыбка">
+<!ENTITY smiley2Cmd.label "Нахмуриться">
+<!ENTITY smiley3Cmd.label "Подмигивание">
+<!ENTITY smiley4Cmd.label "Язык">
+<!ENTITY smiley5Cmd.label "Смех">
+<!ENTITY smiley6Cmd.label "Смущение">
+<!ENTITY smiley7Cmd.label "Нерешительность">
+<!ENTITY smiley8Cmd.label "Сюрприз">
+<!ENTITY smiley9Cmd.label "Поцелуй">
+<!ENTITY smiley10Cmd.label "Вопль">
+<!ENTITY smiley11Cmd.label "Класс">
+<!ENTITY smiley12Cmd.label "Денежки">
+<!ENTITY smiley13Cmd.label "В рот мне ноги">
+<!ENTITY smiley14Cmd.label "Невинность">
+<!ENTITY smiley15Cmd.label "Плач">
+<!ENTITY smiley16Cmd.label "Рот на замке">
+
+<!-- Message Pane Context Menu -->
+<!ENTITY spellCheckNoSuggestions.label "Вариантов не найдено">
+<!ENTITY spellCheckIgnoreWord.label "Пропустить слово">
+<!ENTITY spellCheckIgnoreWord.accesskey "П">
+<!ENTITY spellCheckAddToDictionary.label "Добавить в словарь">
+<!ENTITY spellCheckAddToDictionary.accesskey "с">
+<!ENTITY undo.label "Отменить">
+<!ENTITY undo.accesskey "О">
+<!ENTITY cut.label "Вырезать">
+<!ENTITY cut.accesskey "В">
+<!ENTITY copy.label "Копировать">
+<!ENTITY copy.accesskey "К">
+<!ENTITY paste.label "Вставить">
+<!ENTITY paste.accesskey "с">
+<!ENTITY pasteQuote.label "Вставить как цитату">
+<!ENTITY pasteQuote.accesskey "ц">
+
+<!-- Attachment Item and List Context Menus -->
+<!ENTITY openAttachment.label "Открыть">
+<!ENTITY openAttachment.accesskey "О">
+<!ENTITY delete.label "Удалить">
+<!ENTITY delete.accesskey "У">
+<!ENTITY removeAttachment.label "Удалить вложение">
+<!ENTITY removeAttachment.accesskey "л">
+<!ENTITY renameAttachment.label "Переименовать…">
+<!ENTITY renameAttachment.accesskey "м">
+<!ENTITY reorderAttachments.label "Пересортировать вложения…">
+<!ENTITY reorderAttachments.accesskey "ж">
+<!ENTITY removeAllAttachments.label "Удалить все вложения">
+<!ENTITY removeAllAttachments.accesskey "ь">
+<!ENTITY selectAll.label "Выделить всё">
+<!ENTITY selectAll.accesskey "ы">
+<!ENTITY attachCloud.label "Filelink…">
+<!ENTITY attachCloud.accesskey "i">
+<!ENTITY convertCloud.label "Конвертировать в…">
+<!ENTITY convertCloud.accesskey "в">
+<!ENTITY cancelUpload.label "Отменить выгрузку">
+<!ENTITY cancelUpload.accesskey "м">
+<!ENTITY convertRegularAttachment.label "Обычное вложение">
+<!ENTITY convertRegularAttachment.accesskey "ы">
+<!ENTITY attachPage.label "Вложить веб-страницу…">
+<!ENTITY attachPage.accesskey "е">
+
+<!-- Attachment Pane Header Bar Context Menu -->
+<!-- LOCALIZATION NOTE (initiallyShowAttachmentPane.label):
+ Should use the same wording as startExpandedCmd.label
+ in msgHdrViewOverlay.dtd. -->
+<!ENTITY initiallyShowAttachmentPane.label "Сначала показать панель вложений">
+<!ENTITY initiallyShowAttachmentPane.accesskey "л">
+
+<!-- Spell checker context menu items -->
+<!ENTITY spellAddDictionaries.label "Добавить словари…">
+<!ENTITY spellAddDictionaries.accesskey "Д">
+
+<!-- Title for the address picker panel -->
+<!ENTITY addressesSidebarTitle.label "Контакты">
+
+<!-- Identity popup customize menuitem -->
+<!ENTITY customizeFromAddress.label "Настроить адрес отправителя…">
+<!ENTITY customizeFromAddress.accesskey "и">
+
+<!-- Accessibility name for the document -->
+<!ENTITY aria.message.bodyName "Содержимое сообщения">
+
+<!-- Status Bar -->
+<!ENTITY languageStatusButton.tooltip "Язык проверки орфографии">
+<!ENTITY encodingStatusPanel.tooltip "Кодировка текста">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/sendProgress.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/sendProgress.dtd
new file mode 100644
index 0000000000..e758b7994a
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/sendProgress.dtd
@@ -0,0 +1,8 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!--LOCALIZATION NOTE sendProgress.dtd Main UI for Send Message Progress Dialog -->
+<!ENTITY sendDialog.title "Обработка сообщения">
+<!ENTITY status.label "Состояние:">
+<!ENTITY progress.label "Ход:">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/sendProgress.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/sendProgress.properties
new file mode 100644
index 0000000000..6c423b92e6
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/messengercompose/sendProgress.properties
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (titleSendMsgSubject):
+# %S will be replaced by the message subject.
+titleSendMsgSubject=Отправка сообщения — %S
+titleSendMsg=Отправка сообщения
+# LOCALIZATION NOTE (titleSaveMsgSubject):
+# %S will be replaced by the message subject.
+titleSaveMsgSubject=Сохранение сообщения — %S
+titleSaveMsg=Сохранение сообщения
+
+# LOCALIZATION NOTE (percentMsg):
+# This string is used to format the text to the right of the progress meter.
+# %S will be replaced by the percentage of the file that has been saved.
+# %% will be replaced a single % sign.
+percentMsg=%S%%
+
+messageSent=Ваше сообщение было отправлено.
+messageSaved=Ваше сообщение было сохранено.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/migration/migration.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/migration/migration.dtd
new file mode 100644
index 0000000000..0df724eaf1
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/migration/migration.dtd
@@ -0,0 +1,30 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+
+<!ENTITY migrationWizard.title "Мастер импорта">
+
+<!ENTITY importFromWin.label "Импортировать настройки, параметры учётной записи, адресную книгу, фильтры и другие данные из:">
+<!ENTITY importFromNonWin.label "Импортировать настройки, параметры учётной записи, адресную книгу, фильтры и другие данные из:">
+<!ENTITY importSourceNotFound.label "Не найдено приложения, из которого можно импортировать данные.">
+
+<!ENTITY importFromNothing.label "Не импортировать ничего">
+<!ENTITY importFromNothing.accesskey "н">
+<!ENTITY importFromSeamonkey3.label "SeaMonkey 2 или позже">
+<!ENTITY importFromSeamonkey3.accesskey "S">
+<!ENTITY importFromOutlook.label "Outlook">
+<!ENTITY importFromOutlook.accesskey "O">
+
+<!ENTITY importSource.title "Импорт настроек и почты">
+<!ENTITY importItems.title "Объекты для импорта">
+<!ENTITY importItems.label "Выберите объекты для импорта:">
+
+<!ENTITY migrating.title "Идёт импорт…">
+<!ENTITY migrating.label "В данный момент происходит импорт следующих объектов…">
+
+<!ENTITY selectProfile.title "Выбор профиля">
+<!ENTITY selectProfile.label "Импорт может быть произведён из следующих профилей:">
+
+<!ENTITY done.title "Импорт завершён">
+<!ENTITY done.label "Следующие объекты были успешно импортированы:">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/migration/migration.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/migration/migration.properties
new file mode 100644
index 0000000000..a36f0dc942
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/migration/migration.properties
@@ -0,0 +1,32 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+profileName_format=%S %S
+
+# Import Sources
+1_seamonkey=Настройки
+
+1_thunderbird=Настройки
+
+2_seamonkey=Параметры учётной записи
+2_thunderbird=Параметры учётной записи
+2_outlook=Параметры учётной записи
+
+4_seamonkey=Адресные книги
+4_thunderbird=Адресные книги
+4_outlook=Адресная книга
+
+8_seamonkey=Данные обучения анти-спам фильтров
+
+16_seamonkey=Сохранённые пароли
+
+32_seamonkey=Другие данные
+
+64_seamonkey=Папки групп новостей
+
+64_thunderbird=Папки групп новостей
+
+128_seamonkey=Почтовые папки
+128_thunderbird=Почтовые папки
+128_outlook=Почтовые папки
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mime.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mime.properties
new file mode 100644
index 0000000000..afe8abcb4e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mime.properties
@@ -0,0 +1,154 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by libmime to emit header display in HTML
+#
+
+# Mail subject
+## @name MIME_MHTML_SUBJECT
+## @loc None
+1000=Тема
+
+# Resent-Comments
+## @name MIME_MHTML_RESENT_COMMENTS
+## @loc
+1001=Переотправка-Комментарии
+
+# Resent-Date
+## @name MIME_MHTML_RESENT_DATE
+## @loc
+1002=Переотправка-Дата
+
+# Resent-Sender
+## @name MIME_MHTML_RESENT_SENDER
+## @loc
+1003=Переотправка-Отправитель
+
+# Resent-From
+## @name MIME_MHTML_RESENT_FROM
+## @loc
+1004=Переотправка-От
+
+# Resent-To
+## @name MIME_MHTML_RESENT_TO
+## @loc
+1005=Переотправка-Кому
+
+# Resent-CC
+## @name MIME_MHTML_RESENT_CC
+## @loc
+1006=Переотправка-Копия
+
+# Date
+## @name MIME_MHTML_DATE
+## @loc
+1007=Дата
+
+# Sender
+## @name MIME_MHTML_SENDER
+## @loc
+1008=Отправитель
+
+# From
+## @name MIME_MHTML_FROM
+## @loc
+1009=От
+
+# Reply-To
+## @name MIME_MHTML_REPLY_TO
+## @loc
+1010=Отвечать
+
+# Organization
+## @name MIME_MHTML_ORGANIZATION
+## @loc
+1011=Организация
+
+# To
+## @name MIME_MHTML_TO
+## @loc
+1012=Кому
+
+# CC
+## @name MIME_MHTML_CC
+## @loc
+1013=Копия
+
+# Newsgroups
+## @name MIME_MHTML_NEWSGROUPS
+## @loc
+1014=Группы новостей
+
+# Followup-To
+## @name MIME_MHTML_FOLLOWUP_TO
+## @loc
+1015=Ответ в группу новостей
+
+# References
+## @name MIME_MHTML_REFERENCES
+## @loc
+1016=Ссылки
+
+# Message ID
+## @name MIME_MHTML_MESSAGE_ID
+## @loc
+1021=Идентификатор
+
+# BCC
+## @name MIME_MHTML_BCC
+## @loc
+1023=Скрытая копия
+
+# Link to doc
+## @name MIME_MSG_LINK_TO_DOCUMENT
+## @loc
+1026=Ссылка на документ
+
+# Get Doc info
+## @name MIME_MSG_DOCUMENT_INFO
+## @loc
+1027=<B>Информация о документе:</B>
+
+# Msg Attachment
+## @name MIME_MSG_ATTACHMENT
+## @loc
+1028=Вложение
+
+# default attachment name
+## @name MIME_MSG_DEFAULT_ATTACHMENT_NAME
+## @loc
+# LOCALIZATION NOTE (1040): Do not translate "%s" below.
+# Place the %s where you wish the part number of the attachment to appear
+1040=Часть %s
+
+# default forwarded message prefix
+## @name MIME_FORWARDED_MESSAGE_HTML_USER_WROTE
+## @loc
+1041=-------- Исходное сообщение --------
+
+# Partial Message Truncated
+## @name MIME_MSG_PARTIAL_TRUNCATED
+## @loc
+MIME_MSG_PARTIAL_TRUNCATED=Урезано!
+
+# Partial Message Truncated Explanation
+## @name MIME_MSG_PARTIAL_TRUNCATED_EXPLANATION
+## @loc
+MIME_MSG_PARTIAL_TRUNCATED_EXPLANATION=Это сообщение превысило максимальный размер, установленный в параметрах учётной записи, поэтому с почтового сервера были загружены только первые несколько строк.
+
+# Partial Message Not Downloaded
+## @name MIME_MSG_PARTIAL_NOT_DOWNLOADED
+## @loc
+MIME_MSG_PARTIAL_NOT_DOWNLOADED=Не загружено
+
+# Partial Message Not Downloaded Explanation
+## @name MIME_MSG_PARTIAL_NOT_DOWNLOADED_EXPLANATION
+## @loc
+MIME_MSG_PARTIAL_NOT_DOWNLOADED_EXPLANATION=Для этого сообщения с почтового сервера были загружены только заголовки.
+
+# MIME_MSG_PARTIAL_CLICK_FOR_REST
+## @name MIME_MSG_PARTIAL_CLICK_FOR_REST
+## @loc
+MIME_MSG_PARTIAL_CLICK_FOR_REST=Загрузить оставшуюся часть сообщения
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mimeheader.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mimeheader.properties
new file mode 100644
index 0000000000..1be5f3670b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/mimeheader.properties
@@ -0,0 +1,35 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by libmime for header display in XML & HTML
+#
+TO=Кому
+BCC=Скрытая копия
+CC=Копия
+DATE=Дата
+DISTRIBUTION=Распределение
+FCC=FCC
+FOLLOWUP-TO=Ответ в группу новостей
+FROM=От
+STATUS=Состояние
+LINES=Строк
+MESSAGE-ID=Идентификатор
+MIME-VERSION=MIME-версия
+NEWSGROUPS=Группы новостей
+ORGANIZATION=Организация
+REFERENCES=Ссылки
+REPLY-TO=Отвечать
+RESENT-COMMENTS=Переотправка-Комментарии
+RESENT-DATE=Переотправка-Дата
+RESENT-FROM=Переотправка-От
+RESENT-MESSAGE-ID=Переотправка-Идентификатор
+RESENT-SENDER=Переотправка-Отправитель
+RESENT-TO=Переотправка-Кому
+RESENT-CC=Переотправка-Копия
+SENDER=Отправитель
+SUBJECT=Тема
+APPROVED-BY=Одобрено
+USER-AGENT=Программа
+FILENAME=Имя файла
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/morkImportMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/morkImportMsgs.properties
new file mode 100644
index 0000000000..de7c9d455b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/morkImportMsgs.properties
@@ -0,0 +1,18 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by the Mork import code to display status/error
+# and informational messages.
+#
+
+MABFiles = Адресные книги Mork
+
+# Short name of import module
+morkImportName = База данных Mork (.mab)
+
+# Description of import module
+morkImportDescription = Импортируйте адресную книгу из SeaMonkey или более ранних версий Thunderbird.
+
+morkImportSuccess = Готово!
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgAccountCentral.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgAccountCentral.dtd
new file mode 100644
index 0000000000..2d3e6bc408
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgAccountCentral.dtd
@@ -0,0 +1,26 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY emailSectionHdr.label "Электронная почта">
+<!ENTITY readMsgsLink.label "Прочитать сообщения">
+<!ENTITY composeMsgLink.label "Создать новое сообщение">
+
+<!ENTITY newsSectionHdr.label "Группы новостей">
+<!ENTITY subscribeNewsLink.label "Управление подписками на группы новостей">
+
+<!ENTITY feedsSectionHdr.label "Блоги и ленты новостей">
+<!ENTITY subscribeFeeds.label "Управление подписками">
+
+<!ENTITY chat.label "Чат">
+
+<!ENTITY accountsSectionHdr.label "Учётные записи">
+<!ENTITY subscribeImapFolders.label "Управление подписками на папки">
+<!ENTITY settingsLink.label "Просмотр параметров этой учётной записи">
+<!ENTITY setupNewAcct.label "Настроить учётную запись:">
+
+<!ENTITY advFeaturesSectionHdr.label "Дополнительные свойства">
+<!ENTITY searchMsgsLink.label "Поиск сообщений…">
+<!ENTITY filtersLink.label "Создать фильтры сообщений">
+<!ENTITY junkSettings.label "Параметры анти-спам фильтров">
+<!ENTITY offlineLink.label "Параметры автономной работы">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgHdrViewOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgHdrViewOverlay.dtd
new file mode 100644
index 0000000000..cdac439a7b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgHdrViewOverlay.dtd
@@ -0,0 +1,114 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY toField4.label "Кому">
+<!ENTITY fromField4.label "От">
+<!ENTITY senderField4.label "Отправитель">
+<!ENTITY author.label "Автор">
+<!ENTITY organizationField4.label "Организация">
+<!ENTITY replyToField4.label "Обратный адрес">
+
+<!ENTITY subjectField4.label "Тема">
+<!ENTITY ccField4.label "Копия">
+<!ENTITY bccField4.label "Скрытая копия">
+<!ENTITY newsgroupsField4.label "Группы новостей">
+<!ENTITY followupToField4.label "Ответ в группу новостей">
+<!ENTITY tagsHdr4.label "Метки">
+<!ENTITY dateField4.label "Дата">
+<!ENTITY userAgentField4.label "Программа">
+<!ENTITY referencesField4.label "Ссылки">
+<!ENTITY messageIdField4.label "Идентификатор">
+<!ENTITY inReplyToField4.label "В ответ на">
+<!ENTITY originalWebsite4.label "Веб-сайт">
+
+<!ENTITY hdrArchiveButton1.label "Архивировать">
+<!ENTITY hdrArchiveButton1.tooltip "Архивировать это сообщение">
+<!ENTITY hdrSmartReplyButton1.label "Умный ответ">
+<!ENTITY hdrReplyButton1.label "Ответить">
+<!ENTITY hdrReplyButton2.tooltip "Ответить отправителю этого сообщения">
+<!ENTITY hdrReplyAllButton1.label "Ответить всем">
+<!ENTITY hdrReplyAllButton1.tooltip "Ответить отправителю и всем получателям">
+<!ENTITY hdrReplyListButton1.label "Ответить в рассылку">
+<!ENTITY hdrReplyListButton1.tooltip "Ответить в список рассылки">
+<!ENTITY hdrFollowupButton1.label "Ответить в группу">
+<!ENTITY hdrFollowupButton1.tooltip "Отправить ответ в эту группу новостей">
+<!ENTITY hdrForwardButton1.label "Переслать">
+<!ENTITY hdrForwardButton1.tooltip "Переслать это сообщение">
+<!ENTITY hdrJunkButton1.label "Спам">
+<!ENTITY hdrJunkButton1.tooltip "Отметить это сообщение как спам">
+<!ENTITY hdrTrashButton1.label "Удалить">
+<!ENTITY hdrTrashButton1.tooltip "Удалить это сообщение">
+
+<!ENTITY hdrViewToolbarShowFull.label "Показывать значки и текст">
+<!ENTITY hdrViewToolbarShowFull.accesskey "и">
+<!ENTITY hdrViewToolbarShowIcons.label "Показывать только значки">
+<!ENTITY hdrViewToolbarShowIcons.accesskey "ч">
+<!ENTITY hdrViewToolbarShowText.label "Показывать только текст">
+<!ENTITY hdrViewToolbarShowText.accesskey "т">
+<!ENTITY hdrViewToolbarAlwaysReplySender.label "Всегда показывать ответ отправителю">
+<!ENTITY hdrViewToolbarAlwaysReplySender.accesskey "с">
+
+<!ENTITY otherActionsButton2.label "Больше">
+<!ENTITY otherActionsButton.tooltip "Больше действий">
+<!ENTITY otherActionsOpenConversation1.label "Открыть в разговоре">
+<!ENTITY otherActionsOpenConversation1.accesskey "р">
+<!ENTITY otherActionsOpenInNewWindow1.label "Открыть в новом окне">
+<!ENTITY otherActionsOpenInNewWindow1.accesskey "н">
+<!ENTITY otherActionsOpenInNewTab1.label "Открыть в новой вкладке">
+<!ENTITY otherActionsOpenInNewTab1.accesskey "ы">
+<!ENTITY markAsReadMenuItem1.label "Отметить как прочитанное">
+<!ENTITY markAsReadMenuItem1.accesskey "и">
+<!ENTITY markAsUnreadMenuItem1.label "Отметить как непрочитанное">
+<!ENTITY markAsUnreadMenuItem1.accesskey "ч">
+<!ENTITY saveAsMenuItem1.label "Сохранить как…">
+<!ENTITY saveAsMenuItem1.accesskey "х">
+<!ENTITY viewSourceMenuItem1.label "Показать исходник">
+<!ENTITY viewSourceMenuItem1.accesskey "а">
+<!ENTITY otherActionsPrint1.label "Распечатать…">
+<!ENTITY otherActionsPrint1.accesskey "п">
+
+<!-- Attachment bar context menu items -->
+<!ENTITY startExpandedCmd.label "Сначала показать панель вложений">
+<!ENTITY startExpandedCmd.accesskey "л">
+
+<!-- Attachment context menu items -->
+<!ENTITY openAttachmentCmd.label "Открыть">
+<!ENTITY openAttachmentCmd.accesskey "ь">
+<!ENTITY saveAsAttachmentCmd.label "Сохранить как…">
+<!ENTITY saveAsAttachmentCmd.accesskey "х">
+<!ENTITY detachAttachmentCmd.label "Отделить…">
+<!ENTITY detachAttachmentCmd.accesskey "т">
+<!ENTITY deleteAttachmentCmd.label "Удалить">
+<!ENTITY deleteAttachmentCmd.accesskey "и">
+<!ENTITY openAllAttachmentsCmd.label "Открыть все…">
+<!ENTITY openAllAttachmentsCmd.accesskey "р">
+<!ENTITY saveAllAttachmentsCmd.label "Сохранить все…">
+<!ENTITY saveAllAttachmentsCmd.accesskey "а">
+<!ENTITY detachAllAttachmentsCmd.label "Отделить все…">
+<!ENTITY detachAllAttachmentsCmd.accesskey "д">
+<!ENTITY deleteAllAttachmentsCmd.label "Удалить все…">
+<!ENTITY deleteAllAttachmentsCmd.accesskey "е">
+
+<!ENTITY openAttachment.tooltip "Открыть вложенный файл">
+
+<!ENTITY detachedAttachmentFolder.show.label "Открыть папку с файлом">
+<!ENTITY detachedAttachmentFolder.show.accesskey "к">
+<!ENTITY detachedAttachmentFolder.showMac.label "Показать в Finder">
+<!ENTITY detachedAttachmentFolder.showMac.accesskey "к">
+
+<!-- Attachment toolbar items -->
+<!ENTITY saveAttachmentButton1.label "Сохранить">
+<!ENTITY saveAttachmentButton1.tooltip "Сохранить вложенный файл">
+<!ENTITY saveAllAttachmentsButton1.label "Сохранить все">
+<!ENTITY saveAllAttachmentsButton1.tooltip "Сохранить все вложенные файлы">
+
+<!ENTITY copyLinkCmd.label "Копировать ссылку">
+<!ENTITY copyLinkCmd.accesskey "и">
+
+<!ENTITY CopyMessageId.label "Копировать идентификатор">
+<!ENTITY CopyMessageId.accesskey "п">
+<!ENTITY OpenMessageForMsgId.label "Открыть сообщение по идентификатору">
+<!ENTITY OpenMessageForMsgId.accesskey "ы">
+<!ENTITY OpenBrowserWithMsgId.label "Открыть сообщение с идентификатором в браузере">
+<!ENTITY OpenBrowserWithMsgId.accesskey "к">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgSynchronize.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgSynchronize.dtd
new file mode 100644
index 0000000000..0335df8edf
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgSynchronize.dtd
@@ -0,0 +1,27 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- extracted from MsgSynchronize.xul and msgSelectOffline.xul-->
+
+<!-- extracted from MsgSynchronize.xul and msgSelectOfflineFolders.xul-->
+
+<!-- extracted from MsgSynchronize.xhtml and msgSelectOfflineFolders.xhtml-->
+
+<!ENTITY MsgSynchronize.label "Загрузить и синхронизировать сообщения">
+<!ENTITY MsgSelect.label "Элементы для автономной работы">
+<!ENTITY MsgSyncDesc.label "Если вы уже выбрали папки почты или групп новостей для автономной работы, вы можете загрузить и/или синхронизировать их. В противном случае нажмите кнопку «Выбрать», чтобы выбрать папки почты и групп новостей для автономной работы.">
+<!ENTITY MsgSyncDirections.label "Загрузить и/или синхронизировать следующее:">
+<!ENTITY syncTypeMail.label "Почтовые сообщения">
+<!ENTITY syncTypeMail.accesskey "П">
+<!ENTITY syncTypeNews.label "Сообщения групп новостей">
+<!ENTITY syncTypeNews.accesskey "С">
+<!ENTITY sendMessage.label "Отправить неотправленные сообщения">
+<!ENTITY sendMessage.accesskey "О">
+<!ENTITY workOffline.label "Перейти в автономный режим по завершении загрузки и/или синхронизации">
+<!ENTITY workOffline.accesskey "а">
+<!ENTITY selectButton.label "Выбрать…">
+<!ENTITY selectButton.accesskey "В">
+<!ENTITY MsgSelectDesc.label "Выберите папки почты и групп новостей, которые вы хотели бы загрузить для автономной работы.">
+<!ENTITY MsgSelectInd.label "Загрузить">
+<!ENTITY MsgSelectItems.label "Папки и группы новостей">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgViewPickerOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgViewPickerOverlay.dtd
new file mode 100644
index 0000000000..2086e83135
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgViewPickerOverlay.dtd
@@ -0,0 +1,22 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!--LOCALIZATION NOTE msgViewPickerOverlay.dtd UI for showing various views on a folder -->
+
+<!ENTITY viewPicker.label "Просмотр:">
+<!ENTITY viewPicker.accesskey "П">
+<!ENTITY viewAll.label "Все">
+<!ENTITY viewAll.accesskey "В">
+<!ENTITY viewUnread.label "Непрочитанные">
+<!ENTITY viewUnread.accesskey "Н">
+<!ENTITY viewNotDeleted.label "Неудалённые">
+<!ENTITY viewNotDeleted.accesskey "е">
+<!ENTITY viewTags.label "Метки">
+<!ENTITY viewTags.accesskey "М">
+<!ENTITY viewCustomViews.label "Настройки пользователя">
+<!ENTITY viewCustomViews.accesskey "Н">
+<!ENTITY viewVirtualFolder.label "Сохранить вид как папку…">
+<!ENTITY viewVirtualFolder.accesskey "С">
+<!ENTITY viewCustomizeView.label "Настроить…">
+<!ENTITY viewCustomizeView.accesskey "с">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgmdn.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgmdn.properties
new file mode 100644
index 0000000000..e919aeb29e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/msgmdn.properties
@@ -0,0 +1,18 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+## Msg Mdn Report strings
+MsgMdnDisplayed=Примечание: Это уведомление о прочтении означает лишь то, что сообщение было отображено на машине получателя. Оно не гарантирует того, что получатель прочёл или понял содержимое сообщения.
+MsgMdnDispatched=Сообщение было распечатано, отправлено по факсу или переслано без отображения на машине получателя. Нет никаких гарантий, что получатель потом прочтёт сообщение.
+MsgMdnProcessed=Сообщение было обработано почтовым клиентом получателя без отображения на экране получателя. Нет никаких гарантий, что получатель потом прочтёт сообщение.
+MsgMdnDeleted=Сообщение было удалено. Человек, которому вы его послали, мог видеть или не видеть его. Затем оно могло быть восстановлено и прочтено.
+MsgMdnDenied=Получатель сообщения не хочет отправлять вам уведомления о прочтении.
+MsgMdnFailed=Произошла ошибка. Надлежащее уведомление о прочтении не могло быть создано или отправлено вам.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+MsgMdnMsgSentTo=Это уведомление о прочтении для сообщения, которое вы отправили в адрес «%S».
+MdnDisplayedReceipt=Уведомление о прочтении (сообщение отображено)
+MdnDispatchedReceipt=Уведомление о прочтении (сообщение переслано)
+MdnProcessedReceipt=Уведомление о прочтении (сообщение обработано)
+MdnDeletedReceipt=Уведомление о прочтении (сообщение удалено)
+MdnDeniedReceipt=Уведомление о прочтении (отказано)
+MdnFailedReceipt=Уведомление о прочтении (неудача)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/multimessageview.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/multimessageview.dtd
new file mode 100644
index 0000000000..91952b9378
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/multimessageview.dtd
@@ -0,0 +1,8 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY window.title "Информация о сообщении">
+<!ENTITY selectedmessages.label "Выбранные сообщения">
+<!ENTITY archiveButton.label "Архивировать">
+<!ENTITY deleteButton.label "Удалить">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/multimessageview.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/multimessageview.properties
new file mode 100644
index 0000000000..a564cea687
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/multimessageview.properties
@@ -0,0 +1,66 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (numConversations): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of conversations (threads or solitary messages) selected. #1 is the
+# number of conversations.
+numConversations=#1 разговор; #1 разговора; #1 разговоров
+
+# LOCALIZATION NOTE (atLeastNumConversations): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of conversations (threads or solitary messages) selected. #1 is the
+# number of conversations. We use this when we didn't actually scan the entire
+# list of selected messages, so there may be more conversations than reported
+# (or maybe not!).
+atLeastNumConversations=#1+ разговор; #1+ разговора; #1+ разговоров
+
+# LOCALIZATION NOTE (numMessages): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of messages in a thread. #1 is the number of messages.
+numMessages=#1 сообщение;#1 сообщения;#1 сообщений
+
+# LOCALIZATION NOTE (numUnread): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of unread messages in a thread; meant to be appended to
+# "numMessages". #1 is the number of unread messages.
+numUnread=, #1 непрочтённое;, #1 непрочтённых;, #1 непрочтённых
+
+# LOCALIZATION NOTE (numIgnored): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of ignored messages in a thread; meant to be appended to
+# "numMessages". #1 is the number of ignored messages.
+numIgnored=, #1 пропущенное;, #1 пропущенных;, #1 пропущенных
+
+# LOCALIZATION NOTE (atLeastNumIgnored): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# The number of ignored messages in a thread; meant to be appended to
+# "numMessages". #1 is the number of ignored messages. We use this when we
+# didn't actually scan the entire list of selected messages, so there may be
+# more ignored messages than reported (or maybe not!).
+atLeastNumIgnored=, #1+ пропущенное;, #1+ пропущенных;, #1+ пропущенных
+
+# LOCALIZATION NOTE (noSubject): What to display for a message if it has no
+# subject.
+noSubject=(без темы)
+
+# LOCALIZATION NOTE (messagesTotalSize): A message indicating the total size on
+# disk of the selected messages. #1 is the size, e.g. "123 KB".
+messagesTotalSize=Эти сообщения занимают #1.
+
+# LOCALIZATION NOTE (messagesTotalSizeMoreThan): A message indicating the total
+# size on disk of the selected messages. #1 is the size, e.g. "123 KB". We use
+# this when we didn't actually scan the entire list of selected messages, so
+# this is a *minimum* size.
+messagesTotalSizeMoreThan=Эти сообщения занимают более #1.
+
+# LOCALIZATION NOTE (maxCountExceeded): A message to let the user know that not
+# all of the selected messages were summarized. #1 is the total number of
+# messages selected and #2 is the number of messages actually shown.
+maxCountExceeded= (Примечание: выбрано #1 сообщений, показано первые #2)
+
+# LOCALIZATION NOTE (maxThreadCountExceeded): A message to let the user know that
+# not all of the selected thread were summarized. #1 is the total number of
+# threads selected and #2 is the number of threads actually shown.
+maxThreadCountExceeded= (Примечание: выбрано #1 обсуждений, показано первые #2)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/newFolderDialog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/newFolderDialog.dtd
new file mode 100644
index 0000000000..ab18ddad20
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/newFolderDialog.dtd
@@ -0,0 +1,16 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Labels -->
+<!ENTITY newFolderDialog.title "Создать папку">
+<!ENTITY name.label "Имя:">
+<!ENTITY name.accesskey "И">
+<!ENTITY description.label "Создать как вложенную папку:">
+<!ENTITY description.accesskey "С">
+<!ENTITY folderRestriction1.label "Этот сервер разделяет папки на два типа.">
+<!ENTITY folderRestriction2.label "Разрешить новой папке содержать:">
+<!ENTITY foldersOnly.label "Папки">
+<!ENTITY messagesOnly.label "Сообщения">
+<!ENTITY accept.label "Создать папку">
+<!ENTITY accept.accesskey "з">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/news.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/news.properties
new file mode 100644
index 0000000000..58e6719862
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/news.properties
@@ -0,0 +1,56 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+downloadHeadersTitlePrefix=Загрузка заголовков
+downloadHeadersInfoText=В этой группе новостей можно загрузить %S новых заголовков сообщений.
+cancelDisallowed=Это сообщение не от вас. Вы можете стереть только сообщения, отправленные вами, а не другими пользователями.
+cancelConfirm=Вы действительно хотите стереть это сообщение?
+messageCancelled=Сообщение стёрто.
+enterUserPassTitle=Требуется имя пользователя и пароль для сервера новостей
+# LOCALIZATION NOTE (enterUserPassServer): %S is the server being accessed
+enterUserPassServer=Пожалуйста, введите имя пользователя и пароль для %S:
+# LOCALIZATION NOTE (enterUserPassGroup): %1$S is a specific newsgroup to set
+# the password for; %2$S is the server from which the newsgroup is accessed
+enterUserPassGroup=Пожалуйста, введите имя пользователя и пароль для %1$S на %2$S:
+okButtonText=Загрузить
+
+noNewMessages=На сервере нет новых сообщений.
+# LOCALIZATION NOTE (newNewsgroupHeaders): %1$S is the number of the current
+# header being downloaded, %2$S is the number of headers to be downloaded, and
+# %3$S is the newsgroup whose headers are being downloaded.
+newNewsgroupHeaders=Загрузка %1$S из %2$S заголовков на %3$S
+# LOCALIZATION NOTE (newNewsgroupFilteringHeaders): %1$S is the name of the MIME
+# header being filtered on, %2$S is the number of the current header being
+# downloaded, %3$S is the number of headers to be downloaded, and %4$S is the
+# newsgroup whose headers are being downloaded.
+newNewsgroupFilteringHeaders=Получение заголовков для фильтров: %1$S (%2$S/%3$S) на %4$S
+downloadingArticles=Загрузка статей %S-%S
+bytesReceived=Загрузка из групп новостей: получено %S (%S КБ на скорости %S КБ/сек.)
+downloadingArticlesForOffline=Загрузка статей %S-%S в %S
+
+# LOCALIZATION NOTE (autoUnsubscribeText): %1$S is the newsgroup and %2$S is the newsgroup-server it is being removed from.
+autoUnsubscribeText=Группа новостей «%1$S», похоже, не существует на сервере «%2$S». Вы хотите от неё отписаться?
+
+# LOCALIZATION NOTE (autoSubscribeText): %1$S is the newsgroup.
+autoSubscribeText=Хотите подписаться на «%1$S»?
+
+# LOCALIZATION NOTE (Error -304): In the following item, don't translate "NNTP"
+# Error - server error
+## @name NNTP_ERROR_MESSAGE
+## @loc None
+-304=Ошибка NNTP:
+
+# Error - newsgroup scan error
+## @name NNTP_NEWSGROUP_SCAN_ERROR
+## @loc None
+-305=Ошибка. Сканирование всех групп новостей не закончено. Попробуйте просмотреть все группы новостей снова
+
+# Error - NNTP authinfo failure
+## @name NNTP_AUTH_FAILED
+## @loc None
+-260=Ошибка авторизации. Введите имя и/или пароль снова.
+
+# Error - TCP error
+## @name TCP_ERROR
+## @loc None
+-206=Ошибка соединения. Попробуйте соединиться снова. Ошибка TCP:
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/newsError.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/newsError.dtd
new file mode 100644
index 0000000000..3f8a50d095
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/newsError.dtd
@@ -0,0 +1,31 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- LOCALIZATION NOTE (newsError.title): The title of the news error page.
+ Not generally visible. -->
+<!ENTITY newsError.title "Проблема при загрузке статьи">
+
+<!-- LOCALIZATION NOTE (articleNotFound.title): The main heading for the news
+ error page. -->
+<!ENTITY articleNotFound.title "Статья не найдена">
+
+<!-- LOCALIZATION NOTE (articleNotFound.desc): A longer description for the news
+ error page. -->
+<!ENTITY articleNotFound.desc "Сервер групп новостей сообщает, что он не может найти статью.">
+
+<!-- LOCALIZATION NOTE (serverResponded.title): A string preceding the text
+ response from the newsgroup server describing the error. -->
+<!ENTITY serverResponded.title "Сервер групп новостей ответил:">
+
+<!-- LOCALIZATION NOTE (articleExpired.title): A string explaining that the
+ article may have expired. -->
+<!ENTITY articleExpired.title "Возможно, что эта статья устарела?">
+
+<!-- LOCALIZATION NOTE (trySearching.title): A string preceding the message's
+ ID. -->
+<!ENTITY trySearching.title "Попробуйте поискать статью:">
+
+<!-- LOCALIZATION NOTE (removeExpiredArticles.title): The label for the button
+ to remove all expired articles from the newsgroup. -->
+<!ENTITY removeExpiredArticles.title "Удалить все устаревшие статьи">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/offline.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/offline.properties
new file mode 100644
index 0000000000..7a170b0904
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/offline.properties
@@ -0,0 +1,28 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Download Messages Prompt
+downloadMessagesWindowTitle1=Загрузка сообщений
+downloadMessagesLabel1=Хотите загрузить сообщения для автономной работы перед переходом в этот режим?
+downloadMessagesCheckboxLabel1=Всегда спрашивать, когда я перехожу в автономный режим.
+downloadMessagesNow2=&Загрузить сейчас
+
+# Send Messages Prompt
+sendMessagesWindowTitle1=Неотправленные сообщения
+sendMessagesLabel2=Вы хотите отправить сейчас неотправленные сообщения?
+sendMessagesCheckboxLabel1=Всегда спрашивать, когда я подключаюсь к сети.
+sendMessagesNow2=&Отправить сейчас
+
+processMessagesLater2=&Позже
+
+# GetMessages While Offline Prompt
+getMessagesOfflineWindowTitle1=Получение сообщений
+getMessagesOfflineLabel1=Вы работаете в автономном режиме. Хотите подключиться для получения новых сообщений?
+
+# Send Messages Offline Prompt
+sendMessagesOfflineWindowTitle1=Неотправленные сообщения
+sendMessagesOfflineLabel1=Сейчас вы работаете в автономном режиме. Хотите подключиться к сети и отправить неотправленные сообщения?
+
+offlineTooltip=Вы работаете в автономном режиме.
+onlineTooltip=Вы работаете в режиме подключения к сети.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/offlineStartup.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/offlineStartup.properties
new file mode 100644
index 0000000000..3bc584ee11
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/offlineStartup.properties
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+title=Подключение
+desc=Подключиться к Интернету?\n\n(Если вы останетесь в автономном режиме работы, вы сможете подключиться к Интернету позже, отключив опцию «Автономная работа» -> «Работать автономно» в меню «Файл».)
+workOnline=Подключиться
+workOffline=Работать автономно
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/outlookImportMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/outlookImportMsgs.properties
new file mode 100644
index 0000000000..a8f78d17bf
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/outlookImportMsgs.properties
@@ -0,0 +1,82 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+#
+# The following are used by the Outlook import code to display status/error
+# and informational messages
+#
+
+# Short name of import module
+## @name OUTLOOKIMPORT_NAME
+## @loc None
+## LOCALIZATION NOTE (2000): DONT_TRANSLATE
+2000=Outlook
+
+# Description of import module
+## @name OUTLOOKIMPORT_DESCRIPTION
+## @loc None
+## LOCALIZATION NOTE (2010): In this item, don't translate "Outlook"
+2010=Почта, настройки и адресные книги Outlook
+
+# Success message
+## @name OUTLOOKIMPORT_MAILBOX_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2002): In this item, don't translate "%S" or "%d"
+## The variable %S will receive the name of the mailbox
+## The variable %d will receive the number of messages
+2002=Почтовый ящик «%S», импортировано %d сообщений
+
+# Error message
+## @name OUTLOOKIMPORT_MAILBOX_BADPARAM
+## @loc None
+2003=Во время импорта почтового ящика был передан неверный параметр.
+
+# Error message
+## @name OUTLOOKIMPORT_MAILBOX_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2004): In this item, don't translate "%S"
+## The variable %S will receive the name of the mailbox
+2004=Ошибка импорта почтового ящика «%S», не все сообщения могут быть импортированы.
+
+# Address book name
+## @name OUTLOOKIMPORT_ADDRNAME
+## @loc None
+## LOCALIZATION NOTE (2005): In this item, don't translate "Outlook"
+2005=Адресная книга Outlook
+
+# Description
+## @name OUTLOOKIMPORT_ADDRESS_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2006): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2006=Адресная книга «%S» импортирована
+
+# Error message
+## @name OUTLOOKIMPORT_ADDRESS_BADPARAM
+## @loc None
+2007=Во время импорта адресной книги был передан неверный параметр.
+
+# Error message
+## @name OUTLOOKIMPORT_ADDRESS_BADSOURCEFILE
+## @loc None
+## LOCALIZATION NOTE (2008): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2008=Ошибка доступа к файлу адресной книги «%S».
+
+# Error message
+## @name OUTLOOKIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2009): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2009=Ошибка импорта адресной книги «%S», не все адреса могут быть импортированы.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/pgpmime.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/pgpmime.properties
new file mode 100644
index 0000000000..e51969f76e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/pgpmime.properties
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by the pgpmime content type handler
+#
+
+# LOCALIZATION NOTE(pgpMimeNeedsAddon): The text can contain HTML tags.
+pgpNotAvailable=Это сообщение зашифровано OpenPGP, но поддержка расшифровки OpenPGP недоступна.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/applicationManager.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/applicationManager.properties
new file mode 100644
index 0000000000..49029cb064
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/applicationManager.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE
+# in descriptionApplications, %S will be replaced by one of the 3 following strings
+descriptionApplications=Для работы с %S могут быть использованы следующие приложения.
+
+handleProtocol=Ссылки %S
+handleFile=Содержимое %S
+
+descriptionWebApp=Это веб-приложение расположено на:
+descriptionLocalApp=Это приложение расположено на:
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/applications.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/applications.properties
new file mode 100644
index 0000000000..5a9d030b95
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/applications.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (dialog_removeAccount):
+# %S will be replaced with the user-defined name of a storage account.
+dialog_removeAccount=Вы действительно хотите удалить учётную запись «%S»?
+
+# LOCALIZATION NOTE (addProvider):
+# %S will be replace with the display name of a provider, e.g. DropBox
+addProvider=Добавить %S
+
+notConfiguredYet=Эта учетная запись ещё не была настроена
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/messagestyle.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/messagestyle.properties
new file mode 100644
index 0000000000..4aafdfa8d0
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/messagestyle.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Content of preview conversation for chat message styles
+default=По умолчанию
+nick1=Florian
+buddy1=florian@im.instantbird.org
+nick2=Patrick
+buddy2=patrick@im.instantbird.org
+message1=Привет! :-)
+message2=Как дела?
+message3=Я пробую Thunderbird! ;-)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/preferences.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/preferences.properties
new file mode 100644
index 0000000000..3fa3dc277d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/preferences/preferences.properties
@@ -0,0 +1,100 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#### Junk
+confirmResetJunkTrainingTitle=Подтверждение
+confirmResetJunkTrainingText=Вы уверены, что хотите удалить данные обучения, имеющиеся в адаптивном фильтре?
+
+#### Downloads
+desktopFolderName=Рабочий стол
+myDownloadsFolderName=Мои загрузки
+chooseAttachmentsFolderTitle=Выбор папки
+
+#### Applications
+
+fileEnding=%S файл
+saveFile=Сохранить файл
+
+# LOCALIZATION NOTE (useApp, useDefault): %S = Application name
+useApp=Использовать %S
+useDefault=Использовать %S (по умолчанию)
+
+useOtherApp=Использовать другое…
+fpTitleChooseApp=Выберите вспомогательное приложение
+manageApp=Сведения о приложении…
+alwaysAsk=Всегда спрашивать
+delete=Удалить действие
+confirmDeleteTitle=Удаление действия
+confirmDeleteText=Вы уверены, что хотите удалить это действие?
+
+# LOCALIZATION NOTE (typeDescriptionWithDetails):
+# %1$S = type description (for example "Portable Document Format")
+# %2$S = details (see below, for example "(application/pdf: .pdf, .pdfx)")
+typeDescriptionWithDetails=%1$S %2$S
+
+# LOCALIZATION NOTE (typeDetailsWithTypeOrExt):
+# %1$S = type or extensions (for example "application/pdf", or ".pdf, .pdfx")
+typeDetailsWithTypeOrExt=(%1$S)
+
+# LOCALIZATION NOTE (typeDetailsWithTypeAndExt):
+# %1$S = type (for example "application/pdf")
+# %2$S = extensions (for example ".pdf, .pdfx")
+typeDetailsWithTypeAndExt=(%1$S: %2$S)
+
+#### Sound Notifications
+soundFilePickerTitle=Выберите звуковой сигнал
+
+#### Remote content
+imagepermissionstext=Вы можете указать, с каких веб-сайтов разрешено загружать изображения и другое содержимое из Интернета. Вы также можете разрешить загрузку любого содержимого из Интернета на основе адреса электронной почты отправителя. Введите адрес сайта или электронной почты, которым вы хотите управлять, и затем щёлкните «Блокировать» или «Разрешить».
+imagepermissionstitle=Исключения — Содержимое из Интернета
+
+#### Cookies
+cookiepermissionstitle=Исключения — Куки
+cookiepermissionstext=Вы можете указать, с каких сайтов всегда принимать или отклонять куки. Введите точный адрес сайта и нажмите кнопку «Блокировать», «Разрешить на сессию» или «Разрешить»
+
+#### Cookie Viewer
+hostColon=Узел:
+domainColon=Домен:
+forSecureOnly=Только зашифрованном соединении
+forAnyConnection=Любом типе соединения
+expireAtEndOfSession=В конце сессии
+
+noCookieSelected=<ни одной куки не выбрано>
+cookiesAll=На вашем компьютере были сохранены следующие куки:
+cookiesFiltered=Строке поиска соответствуют следующие куки:
+# LOCALIZATION NOTE (removeSelectedCookies):
+# Semicolon-separated list of plural forms. See:
+# https://developer.mozilla.org/en/docs/Localization_and_Plurals
+# If you need to display the number of selected elements in your language,
+# you can use #1 in your localization as a placeholder for the number.
+# For example this is the English string with numbers:
+# removeSelectedCookies=Remove #1 Selected;Remove #1 Selected
+removeSelectedCookies=Удалить выбранные;Удалить выбранные;Удалить выбранные
+defaultUserContextLabel=Никакой
+
+####Preferences::Advanced::Network
+#LOCALIZATION NOTE: The next string is for the disk usage of the cache.
+# e.g., "Your cache is currently using 200 MB"
+# %1$S = size
+# %2$S = unit (MB, KB, etc.)
+actualDiskCacheSize=Ваш кеш сейчас занимает на диске %1$S %2$S
+actualDiskCacheSizeCalculated=Вычисляю размер кеша…
+
+# LOCALIZATION NOTE (labelDefaultFont): %S = font name
+labelDefaultFont=По умолчанию (%S)
+labelDefaultFontUnnamed=По умолчанию
+
+# LOCALIZATION NOTE (appLocale.label): %S = Name of the application locale,
+# e.g. English (United States)
+appLocale.label=Формат языка приложения: %S
+appLocale.accesskey=о
+# LOCALIZATION NOTE (rsLocale.label): %S = Name of the locale chosen in regional settings,
+# e.g. German (Germany)
+rsLocale.label=Формат языка из региональных стандартов: %S
+rsLocale.accesskey=м
+
+applications-type-pdf = Portable Document Format (PDF)
+
+# LOCALIZATION NOTE (previewInApp): %S = brandShortName
+previewInApp=Предпросмотр в %S
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/prefs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/prefs.properties
new file mode 100644
index 0000000000..375d1a035c
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/prefs.properties
@@ -0,0 +1,90 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The following are used by the Account Wizard
+#
+enterValidEmail=Введите корректный адрес электронной почты.
+accountNameExists=Учётная запись с таким именем уже существует. Введите другое имя учётной записи.
+accountNameEmpty=Имя учётной записи не может быть пустым.
+modifiedAccountExists=Учётная запись с таким именем пользователя и именем сервера уже существует. Введите другое имя пользователя и/или имя сервера.
+userNameChanged=Ваше имя пользователя было обновлено. Возможно, вам понадобится обновление адреса электронной почты и/или имени пользователя, связанных с этой учётной записью.
+serverNameChanged=Имя сервера изменилось. Убедитесь, что все папки, используемые фильтрами, существуют на новом сервере.
+# LOCALIZATION NOTE (junkSettingsBroken): %1$S is the account name
+junkSettingsBroken=Возможно, что возникла проблема с настройками анти-спам фильтра для учётной записи «%1$S». Вы хотите перепроверить их перед тем, как сохранить параметры учётной записи?
+# LOCALIZATION NOTE (localDirectoryChanged): %1$S is program name (&brandShortName;)
+localDirectoryChanged=Для применения изменения значения локального каталога необходимо перезапустить %1$S.
+localDirectoryRestart=Перезапустить
+userNameEmpty=Имя пользователя не может быть пустым.
+# LOCALIZATION NOTE (localDirectoryInvalid): %1$S is path to folder
+localDirectoryInvalid=Путь «%1$S», выбранный в качестве Локального каталога, является некорректным. Пожалуйста, выберите другой каталог.
+# LOCALIZATION NOTE (localDirectoryNotAllowed): %1$S is path to folder
+localDirectoryNotAllowed=Каталог «%1$S», выбранный в качестве Локального каталога, не подходит для хранения сообщений. Пожалуйста, выберите другой каталог.
+# if the user chooses to cancel the wizard when no accounts are there throw a message
+# LOCALIZATION NOTE (cancelWizard)
+# do not localize "\n\n"
+cancelWizard=Вы действительно хотите прервать работу мастера учётных записей?\n\nЕсли вы сделаете это, вся введённая информация будет утеряна и учётная запись не будет создана.
+accountWizard=Мастер учётных записей
+WizardExit=Выход
+WizardContinue=Отмена
+# when the wizard already has a domain (Should we say something different?)
+enterValidServerName=Введите корректное имя сервера.
+failedRemoveAccount=Ошибка удаления этой учётной записи.
+#LOCALIZATION NOTE: accountName: %1$S is server name, %2$S is user name
+accountName=%1$S - %2$S
+
+# LOCALIZATION NOTE: confirmDeferAccountWarning: do not localize "\n\n", it means a new empty line in the string.
+confirmDeferAccountWarning=Если вы будете хранить новую почту для этой учётной записи в папке «Входящие» другой учётной записи, вы больше не сможете получить доступ к уже полученной почте. Если в этой учётной записи у вас имеются почтовые сообщения, сначала скопируйте их в другую учётную запись.\n\nЕсли для этой учётной записи у вас имеются фильтры — отключите их или измените папку назначения. Если какие-либо учётные записи использовали специальные папки в этой учётной записи («Отправленные», «Черновики», «Шаблоны», «Архивы», «Спам») — измените их, чтобы они использовали папки другой учётной записи.\n\nВы все ещё хотите хранить почту учётной записи в другой учётной записи?
+confirmDeferAccountTitle=Скрыть учётную запись?
+
+directoryAlreadyUsedByOtherAccount=Каталог, указанный в параметре Локальный каталог, уже используется учётной записью «%S». Пожалуйста, выберите другой каталог.
+directoryParentUsedByOtherAccount=Родительский каталог для каталога, указанного в параметре Локальный каталог, уже используется учётной записью «%S». Пожалуйста, выберите другой каталог.
+directoryChildUsedByOtherAccount=Подкаталог каталога, указанного в параметре Локальный каталог, уже используется учётной записью «%S». Пожалуйста, выберите другой каталог.
+#Provide default example values for sample email address
+exampleEmailUserName=user
+exampleEmailDomain=test.ru
+emailFieldText=Адрес электронной почты:
+#LOCALIZATION NOTE: defaultEmailText: %1$S is user name, %2$S is domain
+defaultEmailText=Введите ваш адрес электронной почты, куда другие будут отправлять вам сообщения (например, «%1$S@%2$S»).\u0020
+#LOCALIZATION NOTE: customizedEmailText: %1$S is provider, %2$S is email username, %3$S is sample email, %4$S is sample username
+customizedEmailText=Введите %1$S %2$S (например, если адрес электронной почты %1$S — «%3$S», то %2$S — «%4$S»).\u0020
+
+# account manager stuff
+prefPanel-server=Параметры сервера
+prefPanel-copies=Копии и папки
+prefPanel-synchronization=Синхронизация и хранение
+prefPanel-diskspace=Дисковое пространство
+prefPanel-addressing=Составление и адресация
+prefPanel-junk=Анти-спам фильтр
+## LOCALIZATION NOTE (prefPanel-smtp): Don't translate "SMTP"
+prefPanel-smtp=Сервер исходящей почты (SMTP)
+
+# account manager multiple identity support
+#LOCALIZATION NOTE: accountName: %1$S
+identity-list-title=Дополнительные адреса электронной почты для %1$S
+
+identityDialogTitleAdd=Новый адрес электронной почты
+## LOCALIZATION NOTE (identityDialogTitleEdit): %S is the identity name
+identityDialogTitleEdit=Изменить %S
+
+identity-edit-req=Вы должны указать корректный адрес электронной почты.
+identity-edit-req-title=Ошибка создания дополнительного адреса электронной почты
+
+## LOCALIZATION NOTE (identity-delete-confirm): %S is the identity name
+# and should be put on a new line. The new line is produced with the "\n" string.
+identity-delete-confirm=Вы уверены, что хотите удалить дополнительный адрес электронной почты\n%S?
+## LOCALIZATION NOTE (identity-delete-confirm-title): %S is the account name
+identity-delete-confirm-title=Удаление дополнительного адреса электронной почты для %S
+identity-delete-confirm-button=Удалить
+
+choosefile=Выбрать файл
+
+forAccount=Для учётной записи «%S»
+
+removeFromServerTitle=Подтверждение автоматического удаления сообщений без возможности восстановления
+removeFromServer=Установка этого параметра приведёт к удалению старых сообщений с удалённого сервера И из вашего локального хранилища без возможности восстановления. Вы уверены, что хотите продолжить?
+
+confirmSyncChangesTitle=Подтвердить изменение настроек синхронизации
+confirmSyncChanges=Настройки синхронизации сообщений изменились.\n\nВы хотите их сохранить?
+confirmSyncChangesDiscard=Сбросить
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/profileDowngrade.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/profileDowngrade.dtd
new file mode 100644
index 0000000000..c13e7ec8e8
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/profileDowngrade.dtd
@@ -0,0 +1,20 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- LOCALIZATION NOTE:
+ This UI can be most easily shown by modifying the version in compatibility.ini
+ to a newer version and then starting Thunderbird.
+ For this feature, "installation" is used to mean "this discrete download of
+ Thunderbird" and "version" is used to mean "the specific revision number of a
+ given Thunderbird channel". These terms are not synonymous.
+-->
+<!ENTITY window.title "Вы запустили устаревшую версию &brandProductName;">
+<!ENTITY window.style "width: 490px;">
+
+<!ENTITY window.nosync2 "Более новая версия &brandProductName;, возможно, внесла изменения в ваш профиль, которые более не совместимы с этой старой версией. Используйте этот профиль только с той более новой версией или создайте новый профиль для этой установки &brandShortName;. Создание нового профиля требует повторной настройки учётных записей, календарей и дополнений.">
+
+<!ENTITY window.moreinfo "Подробная информация…">
+<!ENTITY window.create "Создать новый профиль">
+<!ENTITY window.quit-win "Выйти">
+<!ENTITY window.quit-nonwin "Выйти">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/removeAccount.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/removeAccount.dtd
new file mode 100644
index 0000000000..44fabcbdaa
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/removeAccount.dtd
@@ -0,0 +1,22 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY dialogTitle "Удаление учётной записи и данных">
+<!ENTITY removeButton.label "Удалить">
+<!ENTITY removeButton.accesskey "а">
+<!ENTITY removeAccount.label "Удаление информации об учётной записи">
+<!ENTITY removeAccount.accesskey "е">
+<!ENTITY removeAccount.desc "Стирает эту учетную запись только из памяти &brandShortName;. Не влияет на саму учетную запись на сервере.">
+<!ENTITY removeData.label "Удаление данных сообщений">
+<!ENTITY removeData.accesskey "н">
+<!ENTITY removeDataChat.label "Удаление данных разговоров">
+<!ENTITY removeDataChat.accesskey "л">
+<!ENTITY removeDataLocalAccount.desc "Удаляет все сообщения, папки и фильтры, связанные с этой учетной записью, с локального диска. Это не повлияет на некоторые сообщения, которые всё ещё могут храниться на сервере. Не выбирайте это, если вы планируете архивировать локальные данные или повторно использовать их позже в &brandShortName;.">
+<!ENTITY removeDataServerAccount.desc "Удаляет все сообщения, папки и фильтры, связанные с этой учетной записью, с локального диска. Ваши сообщения и папки по-прежнему будут храниться на сервере.">
+<!ENTITY removeDataChatAccount.desc "Удаляет все журналы разговоров, сохранённые для этой учётной записи на локальном диске.">
+<!ENTITY showData.label "Показать расположение данных">
+<!ENTITY showData.accesskey "к">
+<!ENTITY progressPending "Удаление выбранных данных…">
+<!ENTITY progressSuccess "Удаление прошло успешно.">
+<!ENTITY progressFailure "Не удалось провести удаление.">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/removeAccount.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/removeAccount.properties
new file mode 100644
index 0000000000..6ef32d7f43
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/removeAccount.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+removeQuestion=Вы действительно хотите удалить учётную запись «%S»?
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/renameFolderDialog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/renameFolderDialog.dtd
new file mode 100644
index 0000000000..8bb797892f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/renameFolderDialog.dtd
@@ -0,0 +1,9 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY renameFolderDialog.title "Переименование папки">
+<!ENTITY rename.label "Введите новое имя папки:">
+<!ENTITY rename.accesskey "В">
+<!ENTITY accept.label "Переименовать">
+<!ENTITY accept.accesskey "е">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/sanitize.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/sanitize.dtd
new file mode 100644
index 0000000000..fd3907992f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/sanitize.dtd
@@ -0,0 +1,36 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY sanitizeDialog2.title "Стирание недавней истории">
+
+<!-- XXX rearrange entities to match physical layout when l10n isn't an issue -->
+<!-- LOCALIZATION NOTE (clearTimeDuration.*): "Time range to clear" dropdown.
+ See UI mockup at bug 480169 -->
+<!ENTITY clearTimeDuration.label "Очистить:">
+<!ENTITY clearTimeDuration.accesskey "и">
+<!ENTITY clearTimeDuration.lastHour "За последний час">
+<!ENTITY clearTimeDuration.last2Hours "За последние два часа">
+<!ENTITY clearTimeDuration.last4Hours "За последние четыре часа">
+<!ENTITY clearTimeDuration.today "За сегодня">
+<!ENTITY clearTimeDuration.everything "Всё">
+<!-- Localization note (clearTimeDuration.suffix) - trailing entity for languages
+that require it. -->
+<!ENTITY clearTimeDuration.suffix "">
+
+
+<!ENTITY historyGroup.label "История">
+
+<!ENTITY itemHistory.label "Журнал посещений">
+<!ENTITY itemHistory.accesskey "н">
+<!ENTITY itemCookies.label "Куки">
+<!ENTITY itemCookies.accesskey "к">
+<!ENTITY itemCache.label "Кеш">
+<!ENTITY itemCache.accesskey "ш">
+
+<!-- LOCALIZATION NOTE (sanitizeEverythingUndoWarning): Second warning paragraph
+ that appears when "Time range to clear" is set to "Everything". See UI
+ mockup at bug 480169 -->
+<!ENTITY sanitizeEverythingUndoWarning "Это действие нельзя отменить.">
+
+<!ENTITY dialog.width "28em">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/seamonkeyImportMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/seamonkeyImportMsgs.properties
new file mode 100644
index 0000000000..441c627cda
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/seamonkeyImportMsgs.properties
@@ -0,0 +1,18 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# The following are used by the seamonkey import code to display status/error
+# and informational messages
+
+# Short name of import module
+SeamonkeyImportName=SeaMonkey
+
+# Description of import module
+SeamonkeyImportDescription=Импорт адресной книги, почтовых сообщений и учётных записей из SeaMonkey.
+
+# Success Message for addressbook import
+SeamonkeyImportAddressSuccess=Адресные книги успешно импортированы.
+
+# Success Message for mail import
+SeamonkeyImportSettingsSuccess=Локальные сообщения и учётные записи успешно импортированы.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search-attributes.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search-attributes.properties
new file mode 100644
index 0000000000..bcecd41cbe
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search-attributes.properties
@@ -0,0 +1,45 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#these need to match nsMsgSearchAttrib interface in nsMsgSearchCore.idl
+#and nsMsgSearchAttribMap in nsMsgSearchAdapter.cpp
+Subject=Тема
+From=От
+Body=Тело
+Date=Дата
+Priority=Важность
+Status=Состояние
+To=Кому
+Cc=Копия
+ToOrCc=«Кому» или «Копия»
+AgeInDays=Возраст в днях
+SizeKB=Размер (КБ)
+Tags=Метки
+# for AB and LDAP
+AnyName=Любое имя
+DisplayName=Отображаемое имя
+Nickname=Псевдоним
+ScreenName=Интернет-пейджер
+Email=Электронная почта
+AdditionalEmail=Доп. адрес электронной почты
+AnyNumber=Любой номер телефона
+WorkPhone=Рабочий телефон
+HomePhone=Домашний телефон
+Fax=Факс
+Pager=Пейджер
+Mobile=Мобильный
+City=Город
+Street=Улица
+Title=Должность
+Organization=Организация
+Department=Отдел
+# more mailnews
+FromToCcOrBcc=От, кому, копия, скрытая копия
+JunkScoreOrigin=Оценка на спам произведена
+JunkPercent=Вероятность спама в процентах
+AttachmentStatus=Наличие вложения
+JunkStatus=Метка спама
+Label=Метка
+Customize=Настроить…
+MissingCustomTerm=Заданный термин отсутствует
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search-operators.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search-operators.properties
new file mode 100644
index 0000000000..d765841ac5
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search-operators.properties
@@ -0,0 +1,31 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+0=содержит
+1=не содержит
+2=совпадает с
+3=не совпадает с
+4=отсутствуют
+
+5=раньше
+6=позже
+
+7=выше, чем
+8=ниже, чем
+
+9=начинается с
+10=заканчивается на
+
+11=звучит, как
+12=LdapDwim
+
+13=больше чем
+14=меньше чем
+
+15=Автодополнение
+16=в моей адресной книге
+17=не в моей адресной книге
+18=присутствуют
+19=подходит под
+20=не подходит под
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search.properties
new file mode 100644
index 0000000000..67d03604d7
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/search.properties
@@ -0,0 +1,27 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# these are the fields that get inserted in the search line
+# for "and" searches, this looks like:
+#
+# searchAnd0 <attribute> searchAnd1 <operator> searchAnd2 <value> searchAnd4
+#
+# for example, in english this looks like:
+# and the [Sender ] [doesn't contain] [John]
+#
+# TODO: need to special-case the first line (filterindex==0)
+
+# filter stuff
+
+searchingMessage=Поиск…
+# LOCALIZATION NOTE (matchesFound): #1 number of matches found
+matchesFound=найдено #1 совпадение;найдено #1 совпадения;найдено #1 совпадений
+noMatchesFound=Совпадений нет
+labelForStopButton=Остановить
+labelForSearchButton=Найти
+labelForStopButton.accesskey=с
+labelForSearchButton.accesskey=Н
+
+moreButtonTooltipText=Добавить новое условие
+lessButtonTooltipText=Удалить это условие
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/searchTermOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/searchTermOverlay.dtd
new file mode 100644
index 0000000000..1b9617a121
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/searchTermOverlay.dtd
@@ -0,0 +1,19 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY matchAll.label "Выполнении всех условий">
+<!ENTITY matchAll.accesskey "ы">
+<!ENTITY matchAny.label "Выполнении любого из условий">
+<!ENTITY matchAny.accesskey "л">
+<!ENTITY matchAllMsgs.label "Без каких-либо условий">
+<!ENTITY matchAllMsgs.accesskey "е">
+
+<!-- LOCALIZATION NOTE
+ The values below are used to control the widths of the search widgets.
+ Change the values only when the localized strings in the popup menus
+ are truncated in the widgets.
+ -->
+<!ENTITY searchTermListAttributesFlexValue "1">
+<!ENTITY searchTermListOperatorsFlexValue "1">
+<!ENTITY searchTermListValueFlexValue "3">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/shutdownWindow.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/shutdownWindow.properties
new file mode 100644
index 0000000000..97a5432a62
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/shutdownWindow.properties
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+# These strings are loaded and represented by the XUL dialog.
+shutdownDialogTitle=Окно хода завершения работы
+taskProgress=Выполнение задач: %1$S из %2$S
+
+# These strings are loaded by the individual shutdown tasks.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/smime.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/smime.properties
new file mode 100644
index 0000000000..8b47a8dda5
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/smime.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by the smime content type handler
+#
+
+## @name NS_MSG_UNABLE_TO_OPEN_FILE
+## LOCALIZATION NOTE: the text can contain HTML tags.
+1000=Это <B>зашифрованное</B> или <B>подписанное</B> сообщение.<br> Эта почтовая программа не поддерживает такие почтовые сообщения.
+
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/smtpEditOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/smtpEditOverlay.dtd
new file mode 100644
index 0000000000..ba4d646496
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/smtpEditOverlay.dtd
@@ -0,0 +1,24 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY settings.caption "Настройки">
+<!ENTITY security.caption "Защита и аутентификация">
+<!ENTITY serverName.label "Имя сервера:">
+<!ENTITY serverName.accesskey "с">
+<!ENTITY serverDescription.label "Описание:">
+<!ENTITY serverDescription.accesskey "О">
+<!ENTITY serverPort.label "Порт:">
+<!ENTITY serverPort.accesskey "П">
+<!ENTITY userName.label "Имя пользователя:">
+<!ENTITY userName.accesskey "м">
+<!ENTITY connectionSecurity.label "Защита соединения:">
+<!ENTITY connectionSecurity.accesskey "щ">
+<!ENTITY connectionSecurityType-0.label "Нет">
+<!ENTITY connectionSecurityType-1.label "STARTTLS, если доступно">
+<!ENTITY connectionSecurityType-2.label "STARTTLS">
+<!ENTITY connectionSecurityType-3.label "SSL/TLS">
+<!ENTITY smtpEditTitle.label "SMTP-сервер">
+<!ENTITY serverPortDefault.label "По умолчанию:">
+<!ENTITY authMethod.label "Метод аутентификации:">
+<!ENTITY authMethod.accesskey "е">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/subscribe.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/subscribe.dtd
new file mode 100644
index 0000000000..adbeac7eab
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/subscribe.dtd
@@ -0,0 +1,22 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY subscribeDialog.title "Подписка">
+<!ENTITY subscribeButton.label "Подписаться">
+<!ENTITY subscribeButton.accesskey "П">
+<!ENTITY unsubscribeButton.label "Отписаться">
+<!ENTITY unsubscribeButton.accesskey "т">
+<!ENTITY newGroupsTab.label "Новые группы">
+<!ENTITY newGroupsTab.accesskey "в">
+<!ENTITY refreshButton.label "Обновить">
+<!ENTITY refreshButton.accesskey "О">
+<!ENTITY stopButton.label "Прервать">
+<!ENTITY stopButton.accesskey "р">
+<!ENTITY server.label "Учётная запись:">
+<!ENTITY server.accesskey "У">
+<!ENTITY subscribedHeader.label "Подписка">
+<!-- commenting out until bug 38906 is fixed
+<!ENTITY messagesHeader.label "Messages"> -->
+<!ENTITY namefield.label "Показать элементы, содержащие:">
+<!ENTITY namefield.accesskey "э">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/subscribe.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/subscribe.properties
new file mode 100644
index 0000000000..a1a68d813f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/subscribe.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+subscribeLabel-nntp=Выберите группы новостей, на которые хотите подписаться:
+subscribeLabel-imap=Выберите папки, на которые хотите подписаться:
+currentListTab-nntp.label=Текущий список групп
+currentListTab-nntp.accesskey=п
+currentListTab-imap.label=Список папок
+currentListTab-imap.accesskey=п
+pleaseWaitString=Пожалуйста, подождите…
+offlineState=Вы не подключены к сети. Элементы с сервера получить не удалось.
+errorPopulating=Ошибка при получении элементов с сервера.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/tabmail.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/tabmail.dtd
new file mode 100644
index 0000000000..177ac129d3
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/tabmail.dtd
@@ -0,0 +1,9 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY closeTab.label "Закрыть вкладку">
+<!ENTITY listAllTabs.label "Список всех вкладок">
+<!-- LOCALIZATION NOTE(defaultTabTitle.label): This is the default tab
+ title to show when the tab has no title. -->
+<!ENTITY defaultTabTitle.label "Дом">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/taskbar.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/taskbar.properties
new file mode 100644
index 0000000000..f7d457427d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/taskbar.properties
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+taskbar.tasks.composeMessage.label=Создать новое сообщение
+taskbar.tasks.composeMessage.description=Создать новое сообщение.
+taskbar.tasks.openAddressBook.label=Открыть адресную книгу
+taskbar.tasks.openAddressBook.description=Открыть вашу адресную книгу.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/telemetry.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/telemetry.properties
new file mode 100644
index 0000000000..61287623e3
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/telemetry.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Telemetry prompt
+# LOCALIZATION NOTE (telemetryText): %1$S will be replaced by brandFullName,
+# and %2$S by the value of the toolkit.telemetry.server_owner preference.
+telemetryText = Вы хотите помочь улучшить %1$S, автоматически отправляя данные об использовании памяти, производительности и отзывчивости в %2$S?
+telemetryLinkLabel = Подробнее
+telemetryYesButtonLabel = Да
+telemetryYesButtonAccessKey = а
+telemetryNoButtonLabel = Нет
+telemetryNoButtonAccessKey = е
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/templateUtils.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/templateUtils.properties
new file mode 100644
index 0000000000..91c06a4388
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/templateUtils.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE yesterday: used in various places where we compute
+# a "friendly" date, e.g. displaying that a message was from yesterday.
+yesterday=вчера
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/textImportMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/textImportMsgs.properties
new file mode 100644
index 0000000000..d0cbb1bd39
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/textImportMsgs.properties
@@ -0,0 +1,53 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+#
+# The following are used by the outlook express import code to display status/error
+# and informational messages
+#
+
+#
+# The following are used by the text import code to display status/error
+# and informational messages
+#
+
+# Short name of import module
+## @name TEXTIMPORT_NAME
+## @loc None
+2000=Текстовый файл (LDIF, .tab, .csv, .txt)
+
+# Description of import module
+## @name TEXTIMPORT_DESCRIPTION
+## @loc None
+2001=Импорт адресной книги из текстового файла формата LDIF (.ldif, .ldi), с разграничением знаком табуляции (.tab, .txt) или запятой (.csv).
+
+# Description of import module
+## @name TEXTIMPORT_ADDRESS_NAME
+## @loc None
+2002=Текстовая адресная книга
+
+# Description
+## @name TEXTIMPORT_ADDRESS_SUCCESS
+## @loc None
+2003=Адресная книга «%S» импортирована
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_BADPARAM
+## @loc None
+2004=Во время импорта адресной книги был передан неверный параметр.
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_BADSOURCEFILE
+## @loc None
+2005=Ошибка доступа к файлу адресной книги «%S».
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+2006=Ошибка импорта адресной книги «%S», не все адреса могут быть импортированы.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/vCardImportMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/vCardImportMsgs.properties
new file mode 100644
index 0000000000..40feea202e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/vCardImportMsgs.properties
@@ -0,0 +1,26 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by the vCard import code to display status, error, and
+# informational messages
+#
+
+vCardImportName=Файл vCard (.vcf)
+
+vCardImportDescription=Импорт адресной книги из формата vCard
+
+vCardImportAddressName=Адресная книга vCard
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressSuccess=Адресная книга «%S» импортирована
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressBadSourceFile=Ошибка доступа к файлу адресной книги «%S».
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressConvertError=Ошибка импорта адресной книги «%S», не все адреса могут быть импортированы.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewLog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewLog.dtd
new file mode 100644
index 0000000000..7d3a066fcf
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewLog.dtd
@@ -0,0 +1,12 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY viewLog.title "Журнал фильтров">
+<!ENTITY viewLogInfo.text "В журнале фильтров записывается, какие фильтры были запущены для данной учётной записи. Чтобы разрешить запись в этот журнал, отметьте флажком опцию внизу.">
+<!ENTITY clearLog.label "Очистить журнал">
+<!ENTITY clearLog.accesskey "О">
+<!ENTITY enableLog.label "Записывать данные в журнал фильтров">
+<!ENTITY enableLog.accesskey "З">
+<!ENTITY closeLog.label "Закрыть">
+<!ENTITY closeLog.accesskey "З">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewSource.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewSource.dtd
new file mode 100644
index 0000000000..b5b3ed662f
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewSource.dtd
@@ -0,0 +1,84 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- extracted from content/viewSource.xhtml -->
+
+<!-- LOCALIZATION NOTE (mainWindow.title) : DONT_TRANSLATE -->
+<!ENTITY mainWindow.title "&brandFullName;">
+<!-- LOCALIZATION NOTE (mainWindow.titlemodifier) : DONT_TRANSLATE -->
+<!ENTITY mainWindow.titlemodifier "&brandFullName;">
+<!-- LOCALIZATION NOTE (mainWindow.titlemodifierseparator) : DONT_TRANSLATE -->
+<!ENTITY mainWindow.titlemodifierseparator " - ">
+<!ENTITY mainWindow.preface "Исходный код: ">
+
+<!ENTITY editMenu.label "Правка">
+<!ENTITY editMenu.accesskey "в">
+<!ENTITY fileMenu.label "Файл">
+<!ENTITY fileMenu.accesskey "а">
+<!ENTITY savePageCmd.label "Сохранить страницу как…">
+<!ENTITY savePageCmd.accesskey "х">
+<!ENTITY savePageCmd.commandkey "S">
+<!ENTITY printCmd.label "Печать…">
+<!ENTITY printCmd.accesskey "ч">
+<!ENTITY printCmd.commandkey "P">
+<!ENTITY closeCmd.label "Закрыть">
+<!ENTITY closeCmd.accesskey "к">
+<!ENTITY closeCmd.commandkey "W">
+
+<!-- LOCALIZATION NOTE :
+textEnlarge.commandkey3, textReduce.commandkey2 and
+textReset.commandkey2 are alternative acceleration keys for zoom.
+If shift key is needed with your locale popular keyboard for them,
+you can use these alternative items. Otherwise, their values should be empty. -->
+
+<!ENTITY textEnlarge.commandkey "+">
+<!ENTITY textEnlarge.commandkey2 "=">
+<!ENTITY textEnlarge.commandkey3 "">
+<!ENTITY textReduce.commandkey "-">
+<!ENTITY textReduce.commandkey2 "">
+<!ENTITY textReset.commandkey "0">
+<!ENTITY textReset.commandkey2 "">
+
+<!ENTITY goToLineCmd.label "Перейти к строке…">
+<!ENTITY goToLineCmd.accesskey "й">
+<!ENTITY goToLineCmd.commandkey "l">
+
+<!ENTITY viewMenu.label "Вид">
+<!ENTITY viewMenu.accesskey "д">
+<!ENTITY reloadCmd.label "Обновить">
+<!ENTITY reloadCmd.accesskey "б">
+<!ENTITY reloadCmd.commandkey "r">
+<!ENTITY menu_wrapLongLines.title "Переносить длинные строки">
+<!ENTITY menu_wrapLongLines.accesskey "н">
+<!ENTITY menu_highlightSyntax.label "Подсветка синтаксиса">
+<!ENTITY menu_highlightSyntax.accesskey "о">
+<!ENTITY menu_textSize.label "Размер шрифта">
+<!ENTITY menu_textSize.accesskey "ш">
+<!ENTITY menu_textEnlarge.label "Увеличить">
+<!ENTITY menu_textEnlarge.accesskey "е">
+<!ENTITY menu_textReduce.label "Уменьшить">
+<!ENTITY menu_textReduce.accesskey "м">
+<!ENTITY menu_textReset.label "Обычный">
+<!ENTITY menu_textReset.accesskey "ы">
+
+<!ENTITY findOnCmd.label "Найти на этой странице…">
+<!ENTITY findOnCmd.accesskey "а">
+<!ENTITY findOnCmd.commandkey "f">
+<!ENTITY findAgainCmd.label "Найти следующее">
+<!ENTITY findAgainCmd.accesskey "е">
+<!ENTITY findAgainCmd.commandkey "g">
+<!ENTITY findAgainCmd.commandkey2 "VK_F3">
+<!ENTITY findSelectionCmd.commandkey "e">
+
+<!ENTITY backCmd.label "Назад">
+<!ENTITY backCmd.accesskey "з">
+<!ENTITY forwardCmd.label "Вперёд">
+<!ENTITY forwardCmd.accesskey "п">
+<!ENTITY goBackCmd.commandKey "[">
+<!ENTITY goForwardCmd.commandKey "]">
+
+<!ENTITY copyLinkCmd.label "Копировать ссылку">
+<!ENTITY copyLinkCmd.accesskey "и">
+<!ENTITY copyEmailCmd.label "Копировать адрес электронной почты">
+<!ENTITY copyEmailCmd.accesskey "в">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewSource.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewSource.properties
new file mode 100644
index 0000000000..32f9467b6c
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewSource.properties
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+goToLineTitle = Перейти к строке
+goToLineText = Введите номер строки
+invalidInputTitle = Некорректный ввод
+invalidInputText = Введенный номер строки некорректен.
+outOfRangeTitle = Строка не найдена
+outOfRangeText = Указанная строка не найдена.
+viewSelectionSourceTitle = Исходный код DOM выделенного фрагмента
+viewMathMLSourceTitle = Исходный код DOM MathML
+
+context_goToLine_label = Перейти к строке…
+context_goToLine_accesskey = е
+context_wrapLongLines_label = Переносить длинные строки
+context_highlightSyntax_label = Подсветка синтаксиса
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewZoomOverlay.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewZoomOverlay.dtd
new file mode 100644
index 0000000000..e268af6317
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/viewZoomOverlay.dtd
@@ -0,0 +1,30 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- LOCALIZATION NOTE :
+fullZoomEnlargeCmd.commandkey3, fullZoomReduceCmd.commandkey2 and
+fullZoomResetCmd.commandkey2 are alternative acceleration keys for zoom.
+If shift key is needed with your locale popular keyboard for them,
+you can use these alternative items. Otherwise, their values should be empty. -->
+
+<!ENTITY fullZoomEnlargeCmd.label "Увеличить">
+<!ENTITY fullZoomEnlargeCmd.accesskey "в">
+<!ENTITY fullZoomEnlargeCmd.commandkey "+">
+<!ENTITY fullZoomEnlargeCmd.commandkey2 "="> <!-- + is above this key on many keyboards -->
+<!ENTITY fullZoomEnlargeCmd.commandkey3 "">
+
+<!ENTITY fullZoomReduceCmd.label "Уменьшить">
+<!ENTITY fullZoomReduceCmd.accesskey "м">
+<!ENTITY fullZoomReduceCmd.commandkey "-">
+<!ENTITY fullZoomReduceCmd.commandkey2 "">
+
+<!ENTITY fullZoomResetCmd.label "Сбросить">
+<!ENTITY fullZoomResetCmd.accesskey "б">
+<!ENTITY fullZoomResetCmd.commandkey "0">
+<!ENTITY fullZoomResetCmd.commandkey2 "">
+
+<!ENTITY fullZoomToggleCmd.label "Только текст">
+<!ENTITY fullZoomToggleCmd.accesskey "о">
+<!ENTITY fullZoom.label "Масштаб">
+<!ENTITY fullZoom.accesskey "ш">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/virtualFolderListDialog.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/virtualFolderListDialog.dtd
new file mode 100644
index 0000000000..29c223cb1e
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/virtualFolderListDialog.dtd
@@ -0,0 +1,10 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY virtualFolderListTitle.title "Выберите папку(и)">
+<!ENTITY virtualFolderDesc.label "Выберите папки, в которых будет производиться поиск:">
+
+
+<!ENTITY folderName.label "Имя папки">
+<!ENTITY folderSearch.label "Поиск">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/virtualFolderProperties.dtd b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/virtualFolderProperties.dtd
new file mode 100644
index 0000000000..d0be9e57d1
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/virtualFolderProperties.dtd
@@ -0,0 +1,22 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY virtualFolderProperties.title "Новая виртуальная папка">
+<!ENTITY name.label "Имя:">
+<!ENTITY name.accesskey "м">
+<!ENTITY description.label "Создать как вложенную папку:">
+<!ENTITY description.accesskey "д">
+
+<!ENTITY searchTermCaption.label "Настроить критерии поиска, используемые для этой виртуальной папки:">
+
+<!ENTITY folderSelectionCaption.label "Выберите папки, в которых будет производиться поиск:">
+<!ENTITY chooseFoldersButton.label "Выбрать…">
+<!ENTITY chooseFoldersButton.accesskey "б">
+
+<!ENTITY searchOnline.label "Поиск онлайн (дает актуальные результаты для папок IMAP и групп новостей, но увеличивает время открытия папки)">
+<!ENTITY searchOnline.accesskey "с">
+<!ENTITY newFolderButton.label "Создать">
+<!ENTITY newFolderButton.accesskey "з">
+<!ENTITY editFolderButton.label "Обновить">
+<!ENTITY editFolderButton.accesskey "н">
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/wmImportMsgs.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/wmImportMsgs.properties
new file mode 100644
index 0000000000..c53b9d44d7
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/messenger/wmImportMsgs.properties
@@ -0,0 +1,76 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# The following are used by the windows live mail import code to display status/error
+# and informational messages
+#
+
+# Short name of import module
+## @name WMIMPORT_NAME
+## @loc None
+## LOCALIZATION NOTE (2000): DONT_TRANSLATE
+2000=Windows Live Mail
+
+# Description of import module
+## @name WMIMPORT_DESCRIPTION
+## @loc None
+## LOCALIZATION NOTE (2001): In this item, don't translate "Windows Live Mail"
+2001=Настройки Windows Live Mail
+
+# Success message
+## @name WMIMPORT_MAILBOX_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2002): In this item, don't translate "%1$S" or "%2$d"
+## The variable %1$S will contain the name of the Mailbox
+## The variable %2$d will contain the number of messages
+2002=Почтовый ящик «%1$S», импортировано %2$d сообщений
+
+# Error message
+## @name WMIMPORT_MAILBOX_BADPARAM
+## @loc None
+2003=Во время импорта почтового ящика был передан неверный параметр.
+
+# Error message
+## @name WMIMPORT_MAILBOX_BADSOURCEFILE
+## @loc None
+## LOCALIZATION NOTE (2004): In this item, don't translate "%S"
+## The variable %S will contain the name of the Mailbox
+2004=Ошибка доступа к файлу почтового ящика «%S».
+
+# Error message
+## @name WMIMPORT_MAILBOX_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2005): In this item, don't translate "%S"
+## The variable %S will contain the name of the Mailbox
+2005=Ошибка импорта почтового ящика «%S», не все сообщения могут быть импортированы.
+
+# Default name of imported addressbook
+## @name WMIMPORT_DEFAULT_NAME
+## @loc None
+2006=Адресная книга Windows Live Mail
+
+# Autofind description
+## @name WMIMPORT_AUTOFIND
+## @loc None
+2007=Адресная книга Windows Live Mail (адресная книга Windows)
+
+# Description
+## @name WMIMPORT_ADDRESS_SUCCESS
+## @loc None
+## LOCALIZATION NOTE (2006): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2008=Адресная книга «%S» импортирована
+
+# Error message
+## @name WMIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+## LOCALIZATION NOTE (2009): In this item, don't translate "%S"
+## The variable %S will receive the name of the address book
+2009=Ошибка импорта адресной книги «%S», не все адреса могут быть импортированы.
+
+# Error message
+## @name WMIMPORT_ADDRESS_BADPARAM
+## @loc None
+2010=Во время импорта адресной книги был передан неверный параметр.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/downloads/downloads.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/downloads/downloads.properties
new file mode 100644
index 0000000000..daf8bffcb3
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/downloads/downloads.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Desktop folder name for downloaded files
+downloadsFolder=Загрузки
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/downloads/unknownContentType.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/downloads/unknownContentType.properties
new file mode 100644
index 0000000000..64438a01c5
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/downloads/unknownContentType.properties
@@ -0,0 +1,23 @@
+# -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+title=Открытие «%S»
+saveDialogTitle=Введите имя файла для сохранения…
+defaultApp=%S (по умолчанию)
+chooseAppFilePickerTitle=Выбор вспомогательного приложения
+badApp=Выбранное приложение («%S») не найдено. Проверьте правильность написания имени файла или выберите другое приложение.
+badApp.title=Приложение не найдено
+badPermissions=Файл не может быть сохранён, так как у вас не имеется соответствующих прав. Выберите другой каталог для сохранения файла.
+badPermissions.title=Недостаточно прав для сохранения
+unknownAccept.label=Сохранить файл
+unknownCancel.label=Отмена
+fileType=%S файлом
+# LOCALIZATION NOTE (orderedFileSizeWithType): first %S is type, second %S is size, and third %S is unit
+orderedFileSizeWithType=%1$S (%2$S %3$S)
+avifExtHandlerDescription=Файл изображения AV1 (AVIF)
+pdfExtHandlerDescription=Формат переносимых документов (PDF)
+svgExtHandlerDescription=Масштабируемая векторная графика (SVG)
+webpExtHandlerDescription=Изображение WebP
+xmlExtHandlerDescription=Расширяемый язык разметки (XML)
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/profile/profileSelection.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/profile/profileSelection.properties
new file mode 100644
index 0000000000..df4a161bc2
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/profile/profileSelection.properties
@@ -0,0 +1,55 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE: These strings are used for startup/profile problems and the profile manager.
+
+# Application not responding
+# LOCALIZATION NOTE (restartTitle, restartMessageNoUnlocker2, restartMessageUnlocker, restartMessageNoUnlockerMac, restartMessageUnlockerMac): Messages displayed when the application is running but is not responding to commands. %S is the application name.
+restartTitle=Закрыть %S
+restartMessageNoUnlocker2=%S уже запущен, но не отвечает. Чтобы использовать %S, вы должны сначала завершить запущенный процесс %S, перезапустить устройство или использовать другой профиль.
+restartMessageUnlocker=%S уже запущен, но не отвечает. Чтобы открыть новое окно, должен быть завершён запущенный процесс %S.
+restartMessageNoUnlockerMac=Копия %S уже открыта. В один момент времени может быть открыта только одна копия %S.
+restartMessageUnlockerMac=Копия %S уже открыта. Запущенная копия %S будет закрыта, чтобы открыть эту.
+
+# Profile manager
+# LOCALIZATION NOTE (profileTooltip): First %S is the profile name, second %S is the path to the profile folder.
+profileTooltip=Профиль: «%S» — Путь: «%S»
+
+pleaseSelectTitle=Выбор профиля
+pleaseSelect=Выберите профиль для запуска %S, или создайте новый.
+
+renameProfileTitle=Переименование профиля
+renameProfilePrompt=Переименовать профиль «%S» в:
+
+profileNameInvalidTitle=Недопустимое имя профиля
+profileNameInvalid=Имя профиля «%S» недопустимо.
+
+chooseFolder=Выбрать папку профиля
+profileNameEmpty=Имя профиля не может быть пустым.
+invalidChar=Символ «%S» не может быть использован в имени профиля. Выберите другое имя.
+
+deleteTitle=Удаление профиля
+deleteProfileConfirm=Удаление профиля приведёт к удалению профиля из списка доступных профилей и не может быть отменено.\nВы можете также удалить файлы профиля, включая ваши настройки, сертификаты и другие пользовательские данные. Выбор этой опции приведет к удалению папки «%S», которое не может быть отменено.\nВы хотите удалить файлы профиля?
+deleteFiles=Удалить файлы
+dontDeleteFiles=Не удалять файлы
+
+profileCreationFailed=Профиль не может быть создан. Возможно, запись в указанную папку запрещена.
+profileCreationFailedTitle=Ошибка при создании профиля
+profileExists=Профиль с таким именем уже существует. Введите другое имя.
+profileFinishText=Нажмите кнопку «Готово» для завершения создания профиля.
+profileFinishTextMac=Нажмите кнопку «Готово» для завершения создания профиля.
+profileMissing=Не удалось загрузить ваш профиль «%S». Возможно, он отсутствует или недоступен.
+profileMissingTitle=Отсутствует профиль
+profileDeletionFailed=Не удалось удалить профиль, так как он в данный момент используется.
+profileDeletionFailedTitle=Удаление не удалось
+
+# Profile reset
+# LOCALIZATION NOTE (resetBackupDirectory): Directory name for the profile directory backup created during reset. This directory is placed in a location users will see it (ie. their desktop). %S is the application name.
+resetBackupDirectory=Старые данные %S
+
+flushFailTitle=Изменения не сохранены
+flushFailMessage=Неожиданная ошибка не позволила сохранить ваши изменения.
+# LOCALIZATION NOTE (flushFailRestartButton): $S is brandShortName.
+flushFailRestartButton=Перезапустить %S
+flushFailExitButton=Выйти
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/update/updates.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/update/updates.properties
new file mode 100644
index 0000000000..06336d9578
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/mozapps/update/updates.properties
@@ -0,0 +1,45 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE: The 1st %S is brandShortName and 2nd %S is update version
+# where update version from the update xml
+# example: MyApplication 10.0.5
+updateName=%S %S
+
+noThanksButton=Нет, спасибо
+noThanksButton.accesskey=е
+restartLaterButton=Перезапустить позже
+restartLaterButton.accesskey=з
+restartNowButton=Перезапустить %S
+restartNowButton.accesskey=р
+
+statusFailed=Установка не удалась
+
+installSuccess=обновление было успешно установлено
+installPending=Установка не завершена
+patchApplyFailure=Обновление не может быть установлено (установка патча не удалась)
+elevationFailure=У вас нет прав, необходимых для установки этого обновления. Пожалуйста, обратитесь к своему системному администратору.
+
+check_error-200=XML-файл обновления повреждён (200)
+check_error-403=В доступе отказано (403)
+check_error-404=XML-файл обновления не найден (404)
+check_error-500=Внутренняя ошибка сервера (500)
+check_error-2152398849=Неудача (причина неизвестна)
+check_error-2152398861=В соединении отказано
+check_error-2152398862=Время ожидания соединения истекло
+# NS_ERROR_OFFLINE
+check_error-2152398864=Сеть отключена (подключитесь к сети)
+check_error-2152398867=Порт не разрешён
+check_error-2152398868=Данные не были получены (пожалуйста, попробуйте снова)
+check_error-2152398878=Сервер обновлений не найден (проверьте ваше соединение с Интернетом)
+check_error-2152398890=Прокси-сервер не найден (проверьте ваше соединение с Интернетом)
+# NS_ERROR_DOCUMENT_NOT_CACHED
+check_error-2152398918=Сеть отключена (подключитесь к сети)
+check_error-2152398919=Передача данных была прервана (пожалуйста, попробуйте снова)
+check_error-2152398920=В соединении с прокси-сервером отказано
+check_error-2153390069=Истёк срок действия сертификата сервера (пожалуйста, установите правильную дату и время на системных часах, если они некорректны)
+check_error-verification_failed=Целостность обновления не может быть подтверждена
+check_error-move_failed=Не удалось подготовить обновление к установке
+check_error-update_url_not_available=URL-адрес обновления недоступен
+check_error-connection_aborted=Соединение прервано
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/mozldap/ldap.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/mozldap/ldap.properties
new file mode 100644
index 0000000000..aa561a2efe
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/mozldap/ldap.properties
@@ -0,0 +1,272 @@
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The following two strings are used when prompting the user for authentication
+# information:
+
+## @name AUTH_PROMPT_TITLE
+## @loc none
+authPromptTitle=Сервер LDAP требует пароль
+
+## @name AUTH_PROMPT_TEXT
+## @loc %1$S should not be localized. It is the hostname of the LDAP server.
+authPromptText=Введите свой пароль для %1$S.
+
+# These are string versions of all the errors defined in
+# nsILDAPErrors.idl, as well as the nsresult codes based on those
+# errors. See that file for the genesis of these codes, as well as
+# for info about how to get documentation about their precise
+# meanings.
+
+# These are string versions of all the errors defined in
+# nsILDAPErrors.idl, as well as the nsresult codes based on those
+# errors. See that file for the genesis of these codes, as well as
+# for info about how to get documentation about their precise
+# meanings.
+
+## @name OPERATIONS_ERROR
+## @loc none
+1=Ошибка операций
+
+## @name PROTOCOL_ERROR
+## @loc none
+2=Ошибка протокола
+
+## @name TIMELIMIT_EXCEEDED
+## @loc none
+3=Превышен временной лимит
+
+## @name SIZELIMIT_EXCEEDED
+## @loc none
+4=Превышен лимит размера
+
+## @name COMPARE_FALSE
+## @loc none
+5=Результат сравнения: ложь
+
+## @name COMPARE_TRUE
+## @loc none
+6=Результат сравнения: истина
+
+## @name STRONG_AUTH_NOT_SUPPORTED
+## @loc none
+7=Метод аутентификации не поддерживается
+
+## @name STRONG_AUTH_REQUIRED
+## @loc none
+8=Требуется стойкая аутентификация
+
+## @name PARTIAL_RESULTS
+## @loc none
+9=Частичные результаты и ссылка получены
+
+## @name REFERRAL
+## @loc none
+10=Ссылка получена
+
+## @name ADMINLIMIT_EXCEEDED
+## @loc none
+11=Превышен административный лимит
+
+## @name UNAVAILABLE_CRITICAL_EXTENSION
+## @loc none
+12=Критическое расширение недоступно
+
+## @name CONFIDENTIALITY_REQUIRED
+## @loc none
+13=Требуется конфиденциальность
+
+## @name SASL_BIND_IN_PROGRESS
+## @loc none
+14=Идёт SASL-связывание
+
+## @name NO_SUCH_ATTRIBUTE
+## @loc none
+16=Такого атрибута нет
+
+## @name UNDEFINED_TYPE
+## @loc none
+17=Неопределённый тип атрибута
+
+## @name INAPPROPRIATE MATCHIN
+## @loc none
+18=Неподходящее соответствие
+
+## @name CONSTRAINT_VIOLATION
+## @loc none
+19=Нарушение ограничения
+
+## @name TYPE_OR_VALUE_EXISTS
+## @loc none
+20=Тип или значение существует
+
+## @name INVALID_SYNTAX
+## @loc none
+21=Неправильный синтаксис
+
+## @name NO_SUCH_OBJECT
+## @loc none
+32=Такого объекта нет
+
+## @name ALIAS_PROBLEM
+## @loc none
+33=Проблема с псевдонимом
+
+## @name INVALID_DN_ SYNTAX
+## @loc none
+34=Неправильный синтаксис отличительного имени
+
+## @name IS_LEAF
+## @loc none
+35=Объект является листом
+
+## @name ALIAS_DEREF_PROBLEM
+## @loc none
+36=Проблема разыменовывания псевдонима
+
+## @name INAPPROPRIATE_AUTH
+## @loc none
+48=Неподходящая аутентификация
+
+## @name INVALID_CREDENTIALS
+## @loc none
+49=Недействительные права
+
+## @name INSUFFICIENT_ACCESS
+## @loc none
+50=Неполный доступ
+
+## @name BUSY
+## @loc none
+51=LDAP-сервер перегружен
+
+## @name UNAVAILABLE
+## @loc none
+52=LDAP-сервер недоступен
+
+## @name UNWILLING_TO_PERFORM
+## @loc none
+53=LDAP-сервер отказывает в исполнении
+
+## @name LOOP_DETECT
+## @loc none
+54=Обнаружен цикл
+
+## @name SORT_CONTROL_MISSING
+## @loc none
+60=Нет условия сортировки
+
+## @name INDEX_RANGE_ERROR
+## @loc none
+61=Количество результатов поиска превысило диапазон, указанный изначально
+
+## @name NAMING_VIOLATION
+## @loc none
+64=Нарушение присваивания имен
+
+## @name OBJECT_CLASS_VIOLATION
+## @loc none
+65=Нарушение класса объектов
+
+## @name NOT_ALLOWED_ON_NONLEAF
+## @loc none
+66=Операция не допустима на объекте, не являющемся листом
+
+## @name NOT_ALLOWED_ON_RDN
+## @loc none
+67=Операция недопустима на относительном отличительном имени
+
+## @name ALREADY_EXISTS
+## @loc none
+68=Уже существует
+
+## @name NO_OBJECT_CLASS_MODS
+## @loc none
+69=Не удалось модифицировать класс объектов
+
+## @name RESULTS_TOO_LARGE
+## @loc none
+70=Результатов слишком много
+
+## @name AFFECTS_MULTIPLE_DSAS
+## @loc none
+71=Влияет на связанные серверы
+
+## @name OTHER
+## @loc none
+80=Неизвестная ошибка
+
+## @name SERVER_DOWN
+## @loc none
+81=Не удалось соединиться с LDAP-сервером
+
+## @name LOCAL_ERROR
+## @loc none
+82=Локальная ошибка
+
+## @name ENCODING_ERROR
+## @loc none
+83=Ошибка кодирования
+
+## @name DECODING_ERROR
+## @loc none
+84=Ошибка декодирования
+
+## @name TIMEOUT
+## @loc none
+85=Время ожидания соединения с LDAP-сервером истекло
+
+## @name AUTH_UNKNOWN
+## @loc none
+86=Неизвестный метод аутентификации
+
+## @name FILTER_ERROR
+## @loc none
+87=Неправильный фильтр поиска
+
+## @name USER_CANCELLED
+## @loc none
+88=Пользователь отменил операцию
+
+## @name PARAM_ERROR
+## @loc none
+89=Неверный параметр в процедуре LDAP
+
+## @name NO_MEMORY
+## @loc none
+90=Недостаточно памяти
+
+## @name CONNECT_ERROR
+## @loc none
+91=Не удалось подключиться к LDAP-серверу
+
+## @name NOT_SUPPORTED
+## @loc none
+92=Не поддерживается этой версией LDAP-протокола
+
+## @name CONTROL_NOT_FOUND
+## @loc none
+93=Запрошенный элемент управления LDAP не найден
+
+## @name NO_RESULTS_RETURNED
+## @loc none
+94=Нет результатов
+
+## @name MORE_RESULTS_TO_RETURN
+## @loc none
+95=Вернуть больше результатов
+
+## @name CLIENT_LOOP
+## @loc none
+96=Клиент обнаружил цикл
+
+## @name REFERRAL_LIMIT_EXCEEDED
+## @loc none
+97=Превышен лимит перенаправлений
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/necko/necko.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/necko/necko.properties
new file mode 100644
index 0000000000..591e079193
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/necko/necko.properties
@@ -0,0 +1,100 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+3=Поиск %1$S…
+4=Соединено с %1$S…
+5=Отправка запроса на %1$S…
+6=Передача данных с %1$S…
+7=Соединение с %1$S…
+8=Прочитано %1$S\u0020
+9=Записано %1$S
+10=Ожидание ответа от %1$S…
+11=Найдено %1$S…
+12=Выполнение TLS-рукопожатия с %1$S…
+13=TLS-рукопожатие с %1$S завершено…
+
+RepostFormData=Произошло перенаправление с этой страницы на другую. Вы хотите переслать введённые данные формы на новый адрес?
+
+# Directory listing strings
+DirTitle=Индекс «%1$S»
+DirGoUp=Перейти в каталог на уровень выше
+ShowHidden=Показывать скрытые объекты
+DirColName=Имя
+DirColSize=Размер
+DirColMTime=Последнее изменение
+DirFileLabel=Файл:
+
+SuperfluousAuth=Вы собираетесь зарегистрироваться на сайте «%1$S» с именем пользователя «%2$S», но данный сайт не требует аутентификации. Это может быть попыткой вас обмануть.\n\nЯвляется ли «%1$S» сайтом, что вы хотите посетить?
+AutomaticAuth=Вы собираетесь зарегистрироваться на сайте %1$S с именем пользователя «%2$S».
+
+TrackerUriBlocked=Ресурс на «%1$S» был заблокирован, так как включена блокировка содержимого.
+UnsafeUriBlocked=Ресурс на «%1$S» был заблокирован функцией Безопасного веб-сёрфинга.
+
+# LOCALIZATION NOTE (StrictUrlProtocolSetter): %1$S is the URL that has attempted to be changed. %2$S is the invalid target protocol.
+StrictUrlProtocolSetter=Изменение URL-адреса «%1$S» на протокол «%2$S» заблокировано.
+
+# LOCALIZATION NOTE (CORPBlocked): %1$S is the URL of the blocked resource. %2$S is the URL of the MDN page about CORP.
+CORPBlocked=Ресурс на «%1$S» был заблокирован из-за его заголовка Cross-Origin-Resource-Policy (или его отсутствия). Обратитесь к %2$S
+CookieBlockedByPermission=Запрос на доступ к кукам или хранилищу на «%1$S» был заблокирован, в связи с пользовательскими разрешениями для куков.
+CookieBlockedTracker=Запрос на доступ к куке или хранилищу на «%1$S» был заблокирован, в связи с тем, что он поступил от трекера, при включенной блокировке содержимого.
+CookieBlockedAll=Запрос на доступ к куке или хранилищу на «%1$S» был заблокирован, в связи с тем, что пользователем заблокированы все запросы доступа к хранилищу.
+CookieBlockedForeign=Запрос на доступ к куке или хранилищу на «%1$S» был заблокирован, в связи с тем, что пользователем заблокированы все сторонние запросы доступа к хранилищу, а также включена блокировка содержимого.
+# As part of dynamic state partitioning, third-party resources might be limited to "partitioned" storage access that is separate from the first-party context.
+# This allows e.g. cookies to still be set, and prevents tracking without totally blocking storage access. This message is shown in the web console when this happens
+# to inform developers that their storage is isolated.
+CookiePartitionedForeign2=«%1$S» был предоставлен разделённый доступ к кукам или хранилищу, так как он был загружен в стороннем контексте и динамический доступ к состоянию включён.
+
+# LOCALIZATION NOTE (CookieAllowedForOriginByStorageAccessAPI): %2$S and %1$S are URLs.
+CookieAllowedForOriginByStorageAccessAPI=Предоставлен доступ к хранилищу для источника «%2$S» на «%1$S».
+# LOCALIZATION NOTE (CookieAllowedForOriginByHeuristic): %2$S and %1$S are URLs.
+CookieAllowedForOriginByHeuristic=Автоматически предоставлен доступ к хранилищу для источника «%2$S» на «%1$S».
+# LOCALIZATION NOTE (CookieAllowedForFpiByHeuristic): %2$S and %1$S are URLs.
+CookieAllowedForFpiByHeuristic=Автоматически предоставлен доступ к хранилищу для First-Party изоляции «%2$S» на «%1$S».
+
+# LOCALIZATION NOTE(CookieRejectedNonRequiresSecure2): %1$S is the cookie name. Do not localize "SameSite=None" and "secure".
+CookieRejectedNonRequiresSecure2=Кука «%1$S» была отклонена, так как в ней присутствует атрибут «SameSite=None», но отсутствует атрибут «secure».
+# LOCALIZATION NOTE(CookieRejectedNonRequiresSecureForBeta3): %1$S is the cookie name. %2$S is a URL. Do not localize "SameSite", "SameSite=None" and "secure".
+CookieRejectedNonRequiresSecureForBeta3=Кука «%1$S» вскоре будет отклоняться, поскольку её атрибут «SameSite» установлен в значение «None» и в ней отсутствует атрибут «secure». Чтобы узнать больше об атрибуте «SameSite», прочитайте %2$S
+# LOCALIZATION NOTE(CookieLaxForced2): %1$S is the cookie name. Do not localize "SameSite", "Lax" and "SameSite=Lax".
+CookieLaxForced2=Политика «SameSite» куки «%1$S» установлена в «Lax», так как в куке отсутствует атрибут «SameSite», а «SameSite=Lax» является значением по умолчанию для этого атрибута.
+# LOCALIZATION NOTE(CookieLaxForcedForBeta2): %1$S is the cookie name. %2$S is a URL. Do not localize "SameSite", "Lax" and "SameSite=Lax", "SameSite=None".
+CookieLaxForcedForBeta2=Для куки «%1$S» не установлено корректное значение атрибута «SameSite». Вскоре куки без атрибута «SameSite» или с некорректным значением этого атрибута будут рассматриваться как «Lax». Это означает, что куки больше не будут отправляться в сторонних контекстах. Если ваше приложение зависит от доступности этих кук в подобных контекстах, добавьте к ним атрибут «SameSite=None». Чтобы узнать больше об атрибуте «SameSite», прочитайте %2$S
+# LOCALIZATION NOTE(CookieSameSiteValueInvalid2): %1$S is cookie name. Do not localize "SameSite", "Lax", "Strict" and "None"
+CookieSameSiteValueInvalid2=Некорректное значение атрибута «SameSite» для куки «%1$S». Поддерживаемые значения: «Lax», «Strict», «None».
+# LOCALIZATION NOTE (CookieOversize): %1$S is the cookie name. %2$S is the number of bytes. "B" means bytes.
+CookieOversize=Кука «%1$S» недействительна, так как её размер слишком велик. Размер не должен превышать «%2$S».
+# LOCALIZATION NOTE (CookiePathOversize): %1$S is the cookie name. %2$S is the number of bytes. "B" means bytes.
+CookiePathOversize=Кука «%1$S» недействительна, так как размер её пути слишком велик. Размер не должен превышать «%2$S».
+# LOCALIZATION NOTE (CookieRejectedByPermissionManager): %1$S is the cookie response header.
+CookieRejectedByPermissionManager=Кука «%1$S» была отклонена согласно пользовательским настройкам.
+# LOCALIZATION NOTE (CookieRejectedInvalidCharName): %1$S is the cookie name.
+CookieRejectedInvalidCharName=Кука «%1$S» была отклонена из-за некорректных символов в своём имени.
+# LOCALIZATION NOTE (CookieRejectedInvalidDomain): %1$S is the cookie name.
+CookieRejectedInvalidDomain=Кука «%1$S» была отклонена из-за некорректного домена.
+# LOCALIZATION NOTE (CookieRejectedInvalidPrefix): %1$S is the cookie name.
+CookieRejectedInvalidPrefix=Кука «%1$S» была отклонена из-за некорректного префикса.
+# LOCALIZATION NOTE (CookieRejectedInvalidCharValue): %1$S is the cookie name.
+CookieRejectedInvalidCharValue=Кука «%1$S» была отклонена из-за некорректных символов в своём значении.
+# LOCALIZATION NOTE (CookieRejectedHttpOnlyButFromScript): %1$S is the cookie name.
+CookieRejectedHttpOnlyButFromScript=Кука «%1$S» была отклонена, так как HTTP-Only кука уже имеется, но скрипт попытался установить ещё одну.
+# LOCALIZATION NOTE (CookieRejectedSecureButHttp): %1$S is the cookie name.
+CookieRejectedSecureButNonHttps=Кука «%1$S» была отклонена, так как не-HTTPS-кука не может быть установлена как «secure».
+# LOCALIZATION NOTE (CookieRejectedThirdParty): %1$S is the cookie response header.
+CookieRejectedThirdParty=Кука «%1$S» была отклонена как сторонняя.
+# LOCALIZATION NOTE (CookieRejectedNonsecureOverSecure): %1$S is the cookie name.
+CookieRejectedNonsecureOverSecure=Кука «%1$S» была отклонена, так как кука «secure» уже существует.
+# LOCALIZATION NOTE (CookieRejectedForNonSameSiteness): %1$S is the cookie name.
+CookieRejectedForNonSameSiteness=Кука «%1$S» была отклонена, так как она находится в межсайтовом контексте и значением её атрибута «SameSite» является «Lax» или «Strict».
+
+# LOCALIZATION NOTE (CookieBlockedCrossSiteRedirect): %1$S is the cookie name. Do not translate "SameSite", "Lax" or "Strict".
+CookieBlockedCrossSiteRedirect=Кука «%1$S» со значением «Lax» или «Strict» атрибута «SameSite» была пропущена из-за межсайтового перенаправления.
+
+# LOCALIZATION NOTE (APIDeprecationWarning): %1$S is the deprecated API; %2$S is the API function that should be used.
+APIDeprecationWarning=Предупреждение: «%1$S» является устаревшим, пожалуйста, используйте «%2$S»
+
+# LOCALIZATION NOTE (ResourceBlockedCORS): %1$S is the url of the resource blocked by ORB. $2$S is the reason.
+# example: The resource at <url> was blocked by OpaqueResponseBlocking. Reason: “nosniff with either blocklisted or text/plain”.
+ResourceBlockedORB=Ресурс на «%1$S» был заблокирован OpaqueResponseBlocking. Причина: «%2$S».
+
+InvalidHTTPResponseStatusLine=Строка состояния ответа HTTP недействительна
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/passwordmgr/passwordmgr.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/passwordmgr/passwordmgr.properties
new file mode 100644
index 0000000000..ea2671c75b
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/passwordmgr/passwordmgr.properties
@@ -0,0 +1,79 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+rememberPassword = Сохранить этот пароль в хранилище паролей.
+savePasswordTitle = Подтверждение
+# LOCALIZATION NOTE (saveLoginMsg2, saveLoginMsgNoUser2):
+# %S is the login's hostname.
+saveLoginMsg2 = Сохранить логин для %S?
+saveLoginMsgNoUser2 = Сохранить пароль для %S?
+saveLoginButtonAllow.label = Сохранить
+saveLoginButtonAllow.accesskey = о
+saveLoginButtonDeny.label = Не сохранять
+saveLoginButtonDeny.accesskey = е
+saveLoginButtonNever.label = Никогда не сохранять
+saveLoginButtonNever.accesskey = и
+# LOCALIZATION NOTE (updateLoginMsg3, updateLoginMsgNoUser3):
+# %S is the login's hostname.
+updateLoginMsg3 = Обновить логин для %S?
+updateLoginMsgNoUser3 = Обновить пароль для %S?
+updateLoginMsgAddUsername2 = Добавить имя пользователя к сохранённому паролю?
+updateLoginButtonText = Обновить
+updateLoginButtonAccessKey = н
+updateLoginButtonDeny.label = Не обновлять
+updateLoginButtonDeny.accesskey = е
+updateLoginButtonDelete.label = Удалить сохранённый логин
+updateLoginButtonDelete.accesskey = л
+# LOCALIZATION NOTE (rememberPasswordMsg):
+# 1st string is the username for the login, 2nd is the login's hostname.
+# Note that long usernames may be truncated.
+rememberPasswordMsg = Вы хотите запомнить пароль для «%1$S» на %2$S?
+# LOCALIZATION NOTE (rememberPasswordMsgNoUsername):
+# String is the login's hostname.
+rememberPasswordMsgNoUsername = Вы хотите запомнить пароль на %S?
+# LOCALIZATION NOTE (noUsernamePlaceholder):
+# This is displayed in place of the username when it is missing.
+noUsernamePlaceholder=Нет имени пользователя
+togglePasswordLabel=Показать пароль
+togglePasswordAccessKey2=о
+notNowButtonText = &Не сейчас
+neverForSiteButtonText = Ни&когда для этого сайта
+rememberButtonText = &Запомнить
+passwordChangeTitle = Подтверждение смены пароля
+# LOCALIZATION NOTE (updatePasswordMsg):
+# String is the username for the login.
+updatePasswordMsg = Вы хотите обновить сохранённый пароль для «%S»?
+updatePasswordMsgNoUser = Вы хотите обновить сохранённый пароль?
+userSelectText2 = Выберите логин для обновления:
+loginsDescriptionAll2=На вашем компьютере хранятся логины для следующих сайтов
+
+# LOCALIZATION NOTE (useASecurelyGeneratedPassword):
+# Shown in the autocomplete popup to allow filling a generated password into a password field.
+useASecurelyGeneratedPassword=Использовать сложный сгенерированный пароль
+# LOCALIZATION NOTE (generatedPasswordWillBeSaved):
+# %S will contain the brandShorterName. This informs the user that the generated password will be automatically saved.
+generatedPasswordWillBeSaved=%S сохранит этот пароль для этого веб-сайта.
+# LOCALIZATION NOTE (loginHostAge):
+# This is used to show the context menu login items with their age.
+# 1st string is the username for the login, 2nd is the login's age.
+loginHostAge=%1$S (%2$S)
+# LOCALIZATION NOTE (noUsername):
+# String is used on the context menu when a login doesn't have a username.
+noUsername=Нет имени пользователя
+# LOCALIZATION NOTE (displaySameOrigin):
+# String is used on the autocomplete row when the login origin is a domain match with the document origin
+displaySameOrigin=С этого веб-сайта
+
+# LOCALIZATION NOTE (insecureFieldWarningDescription2):
+# %1$S will contain insecureFieldWarningLearnMore and look like a link to indicate that clicking will open a tab with support information.
+insecureFieldWarningDescription2 = Это соединение не защищено. Учётные данные, вводимые здесь, могут быть скомпрометированы. %1$S
+insecureFieldWarningLearnMore = Подробнее
+
+# LOCALIZATION NOTE (viewSavedLogins.label):
+# This label is used in the footer of login autocomplete menus.
+viewSavedLogins.label= Просмотр сохранённых логинов
+
+# LOCALIZATION NOTE (managePasswords.label):
+# This label is used in the footer of login autocomplete menus.
+managePasswords.label= Управление паролями
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/pipnss/nsserrors.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/pipnss/nsserrors.properties
new file mode 100644
index 0000000000..414b712ed4
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/pipnss/nsserrors.properties
@@ -0,0 +1,331 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+SSL_ERROR_EXPORT_ONLY_SERVER=Не удалось установить защищённое соединение. Узел не поддерживает шифрование высокой стойкости.
+SSL_ERROR_US_ONLY_SERVER=Не удалось установить защищённое соединение. Узел требует использования неподдерживаемого шифрования высокой стойкости.
+SSL_ERROR_NO_CYPHER_OVERLAP=Установка защищённого соединения с этим узлом не удалась: отсутствуют общие алгоритм(ы) шифрования.
+SSL_ERROR_NO_CERTIFICATE=Не удалось найти сертификат или ключ, необходимый для аутентификации.
+SSL_ERROR_BAD_CERTIFICATE=Не удалось установить защищённое соединение с этим узлом: сертификат другой стороны был отклонён.
+SSL_ERROR_BAD_CLIENT=К серверу со стороны клиента поступили некорректные данные.
+SSL_ERROR_BAD_SERVER=К клиенту со стороны сервера поступили некорректные данные.
+SSL_ERROR_UNSUPPORTED_CERTIFICATE_TYPE=Данный тип сертификата не поддерживается.
+SSL_ERROR_UNSUPPORTED_VERSION=Узел, с которым вы соединяетесь, использует неподдерживаемую версию протокола безопасности.
+SSL_ERROR_WRONG_CERTIFICATE=Аутентификация клиента не удалась: закрытый ключ в базе данных ключей не соответствует открытому ключу в базе данных сертификатов.
+SSL_ERROR_BAD_CERT_DOMAIN=Не удалось установить защищённое соединение с этим узлом: запрошенное имя домена не соответствует указанному в сертификате сервера.
+SSL_ERROR_POST_WARNING=Нераспознанный код ошибки SSL.
+SSL_ERROR_SSL2_DISABLED=Узел поддерживает только протокол SSL версии 2, поддержка которого у вас отключёна.
+SSL_ERROR_BAD_MAC_READ=SSL получило запись с некорректным кодом аутентификации сообщения.
+SSL_ERROR_BAD_MAC_ALERT=SSL-узел сообщил о некорректном коде аутентификации сообщения.
+SSL_ERROR_BAD_CERT_ALERT=SSL-узел не может верифицировать ваш сертификат.
+SSL_ERROR_REVOKED_CERT_ALERT=SSL-узел отклонил ваш сертификат, как отозванный.
+SSL_ERROR_EXPIRED_CERT_ALERT=SSL-узел отклонил ваш сертификат, как истёкший.
+SSL_ERROR_SSL_DISABLED=Соединение не удалось: SSL отключён.
+SSL_ERROR_FORTEZZA_PQG=Соединение не удалось: узел SSL находится в другом домене FORTEZZA.
+SSL_ERROR_UNKNOWN_CIPHER_SUITE=Был запрошен неизвестный набор шифров SSL.
+SSL_ERROR_NO_CIPHERS_SUPPORTED=В данной программе не имеется и не включено ни одного набора шифров.
+SSL_ERROR_BAD_BLOCK_PADDING=SSL получило запись с плохим выравниванием блоков.
+SSL_ERROR_RX_RECORD_TOO_LONG=SSL получило запись, длина которой превышает максимально допустимую.
+SSL_ERROR_TX_RECORD_TOO_LONG=SSL попыталось отправить запись, длина которой превышает максимально допустимую.
+SSL_ERROR_RX_MALFORMED_HELLO_REQUEST=SSL получило искажённое сообщение рукопожатия «Запрос приветствия».
+SSL_ERROR_RX_MALFORMED_CLIENT_HELLO=SSL получило искажённое сообщение рукопожатия «Приветствие клиента».
+SSL_ERROR_RX_MALFORMED_SERVER_HELLO=SSL получило искажённое сообщение рукопожатия «Приветствие сервера».
+SSL_ERROR_RX_MALFORMED_CERTIFICATE=SSL получило искажённое сообщение рукопожатия «Сертификат».
+SSL_ERROR_RX_MALFORMED_SERVER_KEY_EXCH=SSL получило искажённое сообщение рукопожатия «Обмен ключами сервера».
+SSL_ERROR_RX_MALFORMED_CERT_REQUEST=SSL получило искажённое сообщение рукопожатия «Запрос на сертификат».
+SSL_ERROR_RX_MALFORMED_HELLO_DONE=SSL получило искажённое сообщение рукопожатия «Приветствие сервера завершено».
+SSL_ERROR_RX_MALFORMED_CERT_VERIFY=SSL получило искажённое сообщение рукопожатия «Проверка сертификата».
+SSL_ERROR_RX_MALFORMED_CLIENT_KEY_EXCH=SSL получило искажённое сообщение рукопожатия «Обмен ключами клиента».
+SSL_ERROR_RX_MALFORMED_FINISHED=SSL получило искажённое сообщение рукопожатия «Завершено».
+SSL_ERROR_RX_MALFORMED_CHANGE_CIPHER=SSL получило повреждённую запись Change Cipher Spec.
+SSL_ERROR_RX_MALFORMED_ALERT=SSL получило повреждённую запись Alert.
+SSL_ERROR_RX_MALFORMED_HANDSHAKE=SSL получило искажённую запись рукопожатия.
+SSL_ERROR_RX_MALFORMED_APPLICATION_DATA=SSL получило повреждённую запись Application Data.
+SSL_ERROR_RX_UNEXPECTED_HELLO_REQUEST=SSL получило неожиданное сообщение рукопожатия «Запрос приветствия».
+SSL_ERROR_RX_UNEXPECTED_CLIENT_HELLO=SSL получило неожиданное сообщение рукопожатия «Приветствие клиента».
+SSL_ERROR_RX_UNEXPECTED_SERVER_HELLO=SSL получило неожиданное сообщение рукопожатия «Приветствие сервера».
+SSL_ERROR_RX_UNEXPECTED_CERTIFICATE=SSL получило неожиданное сообщение рукопожатия «Сертификат».
+SSL_ERROR_RX_UNEXPECTED_SERVER_KEY_EXCH=SSL получило неожиданное сообщение рукопожатия «Обмен ключами сервера».
+SSL_ERROR_RX_UNEXPECTED_CERT_REQUEST=SSL получило неожиданное сообщение рукопожатия «Запрос на сертификат».
+SSL_ERROR_RX_UNEXPECTED_HELLO_DONE=SSL получило неожиданное сообщение рукопожатия «Приветствие сервера завершено».
+SSL_ERROR_RX_UNEXPECTED_CERT_VERIFY=SSL получило неожиданное сообщение рукопожатия «Проверка сертификата».
+SSL_ERROR_RX_UNEXPECTED_CLIENT_KEY_EXCH=SSL получило неожиданное сообщение рукопожатия «Обмен ключами клиента».
+SSL_ERROR_RX_UNEXPECTED_FINISHED=SSL получило неожиданное сообщение рукопожатия «Завершено».
+SSL_ERROR_RX_UNEXPECTED_CHANGE_CIPHER=SSL получило неожиданную запись Change Cipher Spec.
+SSL_ERROR_RX_UNEXPECTED_ALERT=SSL получило неожиданную запись Alert.
+SSL_ERROR_RX_UNEXPECTED_HANDSHAKE=SSL получило неожиданную запись рукопожатия.
+SSL_ERROR_RX_UNEXPECTED_APPLICATION_DATA=SSL получило неожиданную запись Application Data.
+SSL_ERROR_RX_UNKNOWN_RECORD_TYPE=SSL получило запись с неизвестным типом содержимого.
+SSL_ERROR_RX_UNKNOWN_HANDSHAKE=SSL получило сообщение рукопожатия с неизвестным типом содержимого.
+SSL_ERROR_RX_UNKNOWN_ALERT=SSL получило предупреждающую запись с неизвестным описанием предупреждения.
+SSL_ERROR_CLOSE_NOTIFY_ALERT=SSL-узел закрыл это соединение.
+SSL_ERROR_HANDSHAKE_UNEXPECTED_ALERT=SSL-узел не ожидал полученного сообщения рукопожатия.
+SSL_ERROR_DECOMPRESSION_FAILURE_ALERT=SSL-узлу не удалось произвести расжатие полученной им SSL записи.
+SSL_ERROR_HANDSHAKE_FAILURE_ALERT=SSL-узлу не удалось договориться о приемлемом наборе параметров безопасности.
+SSL_ERROR_ILLEGAL_PARAMETER_ALERT=SSL-узел отклонил сообщение рукопожатия из-за неприемлемого содержимого.
+SSL_ERROR_UNSUPPORTED_CERT_ALERT=SSL-узел не поддерживает тип сертификатов, который он получил.
+SSL_ERROR_CERTIFICATE_UNKNOWN_ALERT=У узла SSL возникла какая-то неизвестная проблема с сертификатом, который он получил.
+SSL_ERROR_GENERATE_RANDOM_FAILURE=SSL обнаружило отказ своего датчика случайных чисел.
+SSL_ERROR_SIGN_HASHES_FAILURE=Не удалось поставить цифровую подпись на данные, требуемые для проверки вашего сертификата.
+SSL_ERROR_EXTRACT_PUBLIC_KEY_FAILURE=SSL не удалось извлечь открытый ключ из сертификата узла.
+SSL_ERROR_SERVER_KEY_EXCHANGE_FAILURE=Неизвестная ошибка при обработке рукопожатия «Обмен ключами SSL сервера».
+SSL_ERROR_CLIENT_KEY_EXCHANGE_FAILURE=Неизвестная ошибка при обработке рукопожатия «Обмен ключами SSL клиента».
+SSL_ERROR_ENCRYPTION_FAILURE=Алгоритм шифрации массы данных потерпел неудачу в выбранном наборе шифров.
+SSL_ERROR_DECRYPTION_FAILURE=Алгоритм дешифрации массы данных потерпел неудачу в выбранном наборе шифров.
+SSL_ERROR_SOCKET_WRITE_FAILURE=Попытка записать зашифрованные данные в нижележащий сокет не удалась.
+SSL_ERROR_MD5_DIGEST_FAILURE=Ошибка функции MD5 digest.
+SSL_ERROR_SHA_DIGEST_FAILURE=Ошибка функции SHA-1 digest.
+SSL_ERROR_MAC_COMPUTATION_FAILURE=Ошибка вычисления MAC.
+SSL_ERROR_SYM_KEY_CONTEXT_FAILURE=Неудача при создании контекста Симметричного Ключа.
+SSL_ERROR_SYM_KEY_UNWRAP_FAILURE=Неудача при разворачивании Симметричного ключа в сообщении Client Key Exchange.
+SSL_ERROR_PUB_KEY_SIZE_LIMIT_EXCEEDED=SSL-сервер попытался использовать открытый ключ внутренней стойкости с экспортным набором шифров.
+SSL_ERROR_IV_PARAM_FAILURE=Код PKCS11 не смог транслировать вектор инициализации в параметр.
+SSL_ERROR_INIT_CIPHER_SUITE_FAILURE=Ошибка инициализации выбранного набора шифров.
+SSL_ERROR_SESSION_KEY_GEN_FAILURE=Клиенту не удалось сгенерировать сессионные ключи для SSL-сессии.
+SSL_ERROR_NO_SERVER_KEY_FOR_ALG=У сервера нет ключа для данного алгоритма попытки обмена ключами.
+SSL_ERROR_TOKEN_INSERTION_REMOVAL=Токен PKCS#11 был вставлен или извлечён во время проведения операции.
+SSL_ERROR_TOKEN_SLOT_NOT_FOUND=Для произведения требуемой операции ни одного токена PKCS#11 найдено не было.
+SSL_ERROR_NO_COMPRESSION_OVERLAP=Установка защищённого соединения с этим узлом не удалась: нет общих алгоритмов сжатия.
+SSL_ERROR_HANDSHAKE_NOT_COMPLETED=Невозможно начать новое рукопожатие SSL, пока не завершится текущее рукопожатие.
+SSL_ERROR_BAD_HANDSHAKE_HASH_VALUE=От узла были получены некорректные хеш-функции рукопожатия.
+SSL_ERROR_CERT_KEA_MISMATCH=Полученный сертификат не может быть использован с выбранным алгоритмом обмена ключами.
+SSL_ERROR_NO_TRUSTED_SSL_CLIENT_CA=При аутентификации SSL-клиента ни одного доверенного центра сертификации не найдено.
+SSL_ERROR_SESSION_NOT_FOUND=Идентификатор SSL-сессии клиента не найден в сессионном кеше сервера.
+SSL_ERROR_DECRYPTION_FAILED_ALERT=Узлу не удалось расшифровать полученную им SSL-запись.
+SSL_ERROR_RECORD_OVERFLOW_ALERT=Узел получил SSL-запись с длиной, превышающей разрешённую.
+SSL_ERROR_UNKNOWN_CA_ALERT=Узел не распознаёт и не доверяет Центру Сертификации, выдавшему ваш сертификат.
+SSL_ERROR_ACCESS_DENIED_ALERT=Узел получил действительный сертификат, но в доступе было отказано.
+SSL_ERROR_DECODE_ERROR_ALERT=Узел не смог декодировать сообщение рукопожатия SSL.
+SSL_ERROR_DECRYPT_ERROR_ALERT=Узел сообщает об ошибке проверки подписи или обмена ключами.
+SSL_ERROR_EXPORT_RESTRICTION_ALERT=Узел сообщает о согласовании не совместимом с экспортными ограничениями.
+SSL_ERROR_PROTOCOL_VERSION_ALERT=Узел сообщает о несовместимой или неподдерживаемой версии протокола.
+SSL_ERROR_INSUFFICIENT_SECURITY_ALERT=Сервер требует использовать более стойкие шифры, чем те, что поддерживает клиент.
+SSL_ERROR_INTERNAL_ERROR_ALERT=Узел сообщает, что у него произошла внутренняя ошибка.
+SSL_ERROR_USER_CANCELED_ALERT=Пользователь узла отменил рукопожатие.
+SSL_ERROR_NO_RENEGOTIATION_ALERT=Узел не разрешает повторное согласование параметров безопасности SSL.
+SSL_ERROR_SERVER_CACHE_NOT_CONFIGURED=Кеш SSL-сервера для этого сокета не сконфигурирован и не отключён.
+SSL_ERROR_UNSUPPORTED_EXTENSION_ALERT=SSL-узел не поддерживает запрошенное расширение TLS hello.
+SSL_ERROR_CERTIFICATE_UNOBTAINABLE_ALERT=SSL-узел не смог получить ваш сертификат по предоставленному ему URL.
+SSL_ERROR_UNRECOGNIZED_NAME_ALERT=SSL-узел не имеет сертификата для запрошенного DNS-имени.
+SSL_ERROR_BAD_CERT_STATUS_RESPONSE_ALERT=SSL-узлу не удалось получить OCSP-ответ для этого сертификата.
+SSL_ERROR_BAD_CERT_HASH_VALUE_ALERT=SSL-узел сообщил о неверном значении хеша сертификата.
+SSL_ERROR_RX_UNEXPECTED_NEW_SESSION_TICKET=SSL получило неожиданное сообщение рукопожатия «Новый сеансовый мандат».
+SSL_ERROR_RX_MALFORMED_NEW_SESSION_TICKET=SSL получило искажённое сообщение рукопожатия «Новый сеансовый мандат».
+SSL_ERROR_DECOMPRESSION_FAILURE=SSL получило упакованную запись, которую не удалось распаковать.
+SSL_ERROR_RENEGOTIATION_NOT_ALLOWED=На этом SSL-сокете повторное согласование не разрешено.
+SSL_ERROR_UNSAFE_NEGOTIATION=Узел попытался произвести рукопожатие в старом (потенциально уязвимом) стиле.
+SSL_ERROR_RX_UNEXPECTED_UNCOMPRESSED_RECORD=SSL получило неожиданную несжатую запись.
+SSL_ERROR_WEAK_SERVER_EPHEMERAL_DH_KEY=SSL получило слабый эфемерный ключ Диффи-Хеллмана в сообщении рукопожатия «Обмен ключами сервера».
+SSL_ERROR_NEXT_PROTOCOL_DATA_INVALID=SSL получило некорректные данные NPN-расширения.
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_SSL2=Функция SSL не поддерживается для соединений SSL 2.0.
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_SERVERS=Функция SSL не поддерживается для серверов.
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_CLIENTS=Функция SSL не поддерживается для клиентов.
+SSL_ERROR_INVALID_VERSION_RANGE=Некорректный диапазон версий SSL.
+SSL_ERROR_CIPHER_DISALLOWED_FOR_VERSION=SSL-узел выбрал набор шифров, не разрешённый для выбранной версии протокола.
+SSL_ERROR_RX_MALFORMED_HELLO_VERIFY_REQUEST=SSL получило искажённое сообщение рукопожатия «Запрос подтверждения приветствия».
+SSL_ERROR_RX_UNEXPECTED_HELLO_VERIFY_REQUEST=SSL получило неожиданное сообщение рукопожатия «Запрос подтверждения приветствия».
+SSL_ERROR_FEATURE_NOT_SUPPORTED_FOR_VERSION=Функция SSL не поддерживается для этой версии протокола.
+SSL_ERROR_RX_UNEXPECTED_CERT_STATUS=SSL получило неожиданное сообщение рукопожатия «Статус сертификата».
+SSL_ERROR_UNSUPPORTED_HASH_ALGORITHM=Алгоритм хеширования, использованный TLS-узлом, не поддерживается.
+SSL_ERROR_DIGEST_FAILURE=Ошибка функции digest.
+SSL_ERROR_INCORRECT_SIGNATURE_ALGORITHM=В подписанном цифровой подписью элементе указан некорректный алгоритм подписи.
+SSL_ERROR_NEXT_PROTOCOL_NO_CALLBACK=Было включено расширение next protocol negotiation, но обратный вызов был очищен до того, когда это было необходимо.
+SSL_ERROR_NEXT_PROTOCOL_NO_PROTOCOL=Сервер не поддерживает ни один из протоколов, о которых объявляет клиент в расширении ALPN.
+SSL_ERROR_INAPPROPRIATE_FALLBACK_ALERT=Сервер отклонил рукопожатие, так как клиент понизил свою версию TLS ниже минимальной версии поддерживаемой сервером.
+SSL_ERROR_WEAK_SERVER_CERT_KEY=Сертификат сервера включал в себя открытый ключ, который был слишком слабым.
+SSL_ERROR_RX_SHORT_DTLS_READ=Недостаточно места в буфере для DTLS-записи.
+SSL_ERROR_NO_SUPPORTED_SIGNATURE_ALGORITHM=Был настроен неподдерживаемый алгоритм подписи TLS.
+SSL_ERROR_UNSUPPORTED_SIGNATURE_ALGORITHM=Узел использовал неподдерживаемую комбинацию алгоритмов подписи и хеша.
+SSL_ERROR_MISSING_EXTENDED_MASTER_SECRET=Узел попытался возобновить без корректного расширения extended_master_secret.
+SSL_ERROR_UNEXPECTED_EXTENDED_MASTER_SECRET=Узел попытался возобновить с неожиданным расширением extended_master_secret.
+SEC_ERROR_IO=Во время безопасной авторизации произошла ошибка ввода/вывода.
+SEC_ERROR_LIBRARY_FAILURE=ошибка библиотеки безопасности
+SEC_ERROR_BAD_DATA=библиотека безопасности: получены плохие данные.
+SEC_ERROR_OUTPUT_LEN=библиотека безопасности: ошибка длины выходных данных.
+SEC_ERROR_INPUT_LEN=в библиотеке безопасности произошла ошибка длины входных данных.
+SEC_ERROR_INVALID_ARGS=библиотека безопасности: неверные аргументы.
+SEC_ERROR_INVALID_ALGORITHM=библиотека безопасности: неверный алгоритм.
+SEC_ERROR_INVALID_AVA=библиотека безопасности: неверное AVA.
+SEC_ERROR_INVALID_TIME=Неправильно отформатированная строка времени.
+SEC_ERROR_BAD_DER=библиотека безопасности: неверный формат сообщения в кодировке DER.
+SEC_ERROR_BAD_SIGNATURE=Сертификат узла имеет неверную подпись.
+SEC_ERROR_EXPIRED_CERTIFICATE=Сертификат узла истёк.
+SEC_ERROR_REVOKED_CERTIFICATE=Сертификат узла был отозван.
+SEC_ERROR_UNKNOWN_ISSUER=Издатель сертификата узла не распознан.
+SEC_ERROR_BAD_KEY=Неверный открытый ключ узла.
+SEC_ERROR_BAD_PASSWORD=Введённый пароль неверен.
+SEC_ERROR_RETRY_PASSWORD=Новый пароль введён неверно. Пожалуйста, попробуйте ещё раз.
+SEC_ERROR_NO_NODELOCK=библиотека безопасности: no nodelock.
+SEC_ERROR_BAD_DATABASE=библиотека безопасности: плохая база данных.
+SEC_ERROR_NO_MEMORY=библиотека безопасности: не удалось выделить память.
+SEC_ERROR_UNTRUSTED_ISSUER=Пользователь не доверяет издателю сертификата узла.
+SEC_ERROR_UNTRUSTED_CERT=Пользователь не доверяет сертификату узла.
+SEC_ERROR_DUPLICATE_CERT=Этот сертификат уже существует в вашей базе данных.
+SEC_ERROR_DUPLICATE_CERT_NAME=Имя загруженного сертификата совпадает с именем, уже существующем в вашей базе данных.
+SEC_ERROR_ADDING_CERT=Ошибка добавления сертификата в базу данных.
+SEC_ERROR_FILING_KEY=Ошибка при повторном заполнении ключа для этого сертификата.
+SEC_ERROR_NO_KEY=Закрытый ключ для этого сертификата не найден в базе данных ключей
+SEC_ERROR_CERT_VALID=Этот сертификат действителен.
+SEC_ERROR_CERT_NOT_VALID=Этот сертификат недействителен.
+SEC_ERROR_CERT_NO_RESPONSE=Библиотека сертификатов: Нет ответа
+SEC_ERROR_EXPIRED_ISSUER_CERTIFICATE=Сертификат издателя сертификатов истёк. Проверьте системную дату и время.
+SEC_ERROR_CRL_EXPIRED=CRL издателя сертификата истёк. Обновите его или проверьте время и дату вашей системы.
+SEC_ERROR_CRL_BAD_SIGNATURE=CRL издателя сертификата имеет неверную подпись.
+SEC_ERROR_CRL_INVALID=Формат нового CRL некорректен.
+SEC_ERROR_EXTENSION_VALUE_INVALID=Значение расширения сертификата неверно.
+SEC_ERROR_EXTENSION_NOT_FOUND=Расширение сертификата не найдено.
+SEC_ERROR_CA_CERT_INVALID=Сертификат издателя неверен.
+SEC_ERROR_PATH_LEN_CONSTRAINT_INVALID=Ограничение на длину пути сертификата неверно.
+SEC_ERROR_CERT_USAGES_INVALID=Поле использования сертификата неверно.
+SEC_INTERNAL_ONLY=**ТОЛЬКО Внутренний модуль**
+SEC_ERROR_INVALID_KEY=Ключ не поддерживает запрошенную операцию.
+SEC_ERROR_UNKNOWN_CRITICAL_EXTENSION=Сертификат содержит неизвестное критическое расширение.
+SEC_ERROR_OLD_CRL=Новый CRL выпущен в то же время или раньше текущего.
+SEC_ERROR_NO_EMAIL_CERT=Не зашифровано или подписано: у вас ещё нет сертификата электронной почты.
+SEC_ERROR_NO_RECIPIENT_CERTS_QUERY=Не зашифровано: у вас не имеется сертификатов для каждого из адресатов.
+SEC_ERROR_NOT_A_RECIPIENT=Расшифровка не удалась: вы не получатель, или подходящий сертификат и закрытый ключ не могут быть найдены.
+SEC_ERROR_PKCS7_KEYALG_MISMATCH=Расшифровка не удалась: алгоритм шифрования ключа не соответствует вашему сертификату.
+SEC_ERROR_PKCS7_BAD_SIGNATURE=Неудача при проверке подписи: не найдено лицо поставившее подпись, имеется слишком много лиц, поставивших подпись или же данные неверны или повреждены.
+SEC_ERROR_UNSUPPORTED_KEYALG=Неподдерживаемый или неизвестный алгоритм ключа.
+SEC_ERROR_DECRYPTION_DISALLOWED=Расшифровка не удалась: зашифровано с использованием запрещённого алгоритма или размера ключа.
+XP_SEC_FORTEZZA_BAD_CARD=Карта Fortezza не была инициализирована должным образом. Пожалуйста, удалите её и возвратите издателю.
+XP_SEC_FORTEZZA_NO_CARD=Не найдено ни одной карты Fortezza
+XP_SEC_FORTEZZA_NONE_SELECTED=Не выбрано ни одной карты Fortezza
+XP_SEC_FORTEZZA_MORE_INFO=Пожалуйста, выберите личность, о которой хотите больше узнать
+XP_SEC_FORTEZZA_PERSON_NOT_FOUND=Личность не найдена
+XP_SEC_FORTEZZA_NO_MORE_INFO=Нет дополнительной информации об этой личности
+XP_SEC_FORTEZZA_BAD_PIN=Неверный Pin
+XP_SEC_FORTEZZA_PERSON_ERROR=Не могу инициализировать личности Fortezza.
+SEC_ERROR_NO_KRL=Ни одного KRL для сертификата этого сайта найдено не было.
+SEC_ERROR_KRL_EXPIRED=KRL для сертификата этого сайта просрочен.
+SEC_ERROR_KRL_BAD_SIGNATURE=KRL для сертификата этого сайта имеет неверную подпись.
+SEC_ERROR_REVOKED_KEY=Ключ для сертификата этого сайта был отозван.
+SEC_ERROR_KRL_INVALID=Новый KRL имеет неверный формат.
+SEC_ERROR_NEED_RANDOM=библиотека безопасности: нужны случайные данные.
+SEC_ERROR_NO_MODULE=библиотека безопасности: ни один модуль безопасности запрошенную операцию выполнить не может.
+SEC_ERROR_NO_TOKEN=Карта безопасности или токен не существуют, нуждаются в инициализации, или были удалены.
+SEC_ERROR_READ_ONLY=библиотека безопасности: база данных открыта только для чтения.
+SEC_ERROR_NO_SLOT_SELECTED=Ни одного слота или токена выбрано не было.
+SEC_ERROR_CERT_NICKNAME_COLLISION=Сертификат с этим псевдонимом уже существует.
+SEC_ERROR_KEY_NICKNAME_COLLISION=Ключ с этим псевдонимом уже существует.
+SEC_ERROR_SAFE_NOT_CREATED=ошибка создания безопасного объекта
+SEC_ERROR_BAGGAGE_NOT_CREATED=ошибка создания объекта багажа
+XP_JAVA_REMOVE_PRINCIPAL_ERROR=Не могу удалить принципала
+XP_JAVA_DELETE_PRIVILEGE_ERROR=Не могу удалить привилегию
+XP_JAVA_CERT_NOT_EXISTS_ERROR=Этот принципал не имеет сертификата
+SEC_ERROR_BAD_EXPORT_ALGORITHM=Требуемый алгоритм не разрешён.
+SEC_ERROR_EXPORTING_CERTIFICATES=Ошибка при попытке экспорта сертификатов.
+SEC_ERROR_IMPORTING_CERTIFICATES=Ошибка при попытке импорта сертификатов.
+SEC_ERROR_PKCS12_DECODING_PFX=Импорт не удался. Ошибка декодирования. Файл негоден.
+SEC_ERROR_PKCS12_INVALID_MAC=Импорт не удался. Недействительный MAC. Пароль неверен или файл повреждён.
+SEC_ERROR_PKCS12_UNSUPPORTED_MAC_ALGORITHM=Импорт не удался. Алгоритм MAC не поддерживается.
+SEC_ERROR_PKCS12_UNSUPPORTED_TRANSPORT_MODE=Импорт не удался. Поддерживаются только режимы проверки целостности пароля и приватности.
+SEC_ERROR_PKCS12_CORRUPT_PFX_STRUCTURE=Импорт не удался. Структура файла повреждена.
+SEC_ERROR_PKCS12_UNSUPPORTED_PBE_ALGORITHM=Импорт не удался. Неподдерживаемый алгоритм шифрования.
+SEC_ERROR_PKCS12_UNSUPPORTED_VERSION=Импорт не удался. Неподдерживаемая версия файла.
+SEC_ERROR_PKCS12_PRIVACY_PASSWORD_INCORRECT=Импорт не удался. Неверный пароль приватности.
+SEC_ERROR_PKCS12_CERT_COLLISION=Импорт не удался. Этот псевдоним уже существует в базе данных.
+SEC_ERROR_USER_CANCELLED=Пользователь нажал Отмена.
+SEC_ERROR_PKCS12_DUPLICATE_DATA=Не импортировано, уже в базе данных.
+SEC_ERROR_MESSAGE_SEND_ABORTED=Сообщение не отправлено.
+SEC_ERROR_INADEQUATE_KEY_USAGE=Использование ключа сертификата не подходит под требования неудавшейся операции.
+SEC_ERROR_INADEQUATE_CERT_TYPE=Этот тип сертификата не одобрен для приложения.
+SEC_ERROR_CERT_ADDR_MISMATCH=Адрес в сертификате подписи не соответствует адресу в заголовках сообщения.
+SEC_ERROR_PKCS12_UNABLE_TO_IMPORT_KEY=Импорт не удался. Ошибка при попытке импорта закрытого ключа.
+SEC_ERROR_PKCS12_IMPORTING_CERT_CHAIN=Импорт не удался. Ошибка при попытке импорта цепочки сертификата.
+SEC_ERROR_PKCS12_UNABLE_TO_LOCATE_OBJECT_BY_NAME=Экспорт не удался. Не удалось найти сертификат или ключ по псевдониму.
+SEC_ERROR_PKCS12_UNABLE_TO_EXPORT_KEY=Экспорт не удался. Не удалось найти и экспортировать закрытый ключ.
+SEC_ERROR_PKCS12_UNABLE_TO_WRITE=Экспорт не удался. Не удалось произвести запись в экспортируемый файл.
+SEC_ERROR_PKCS12_UNABLE_TO_READ=Импорт не удался. Не удалось произвести чтение из импортируемого файла.
+SEC_ERROR_PKCS12_KEY_DATABASE_NOT_INITIALIZED=Экспорт не удался. База данных ключей повреждена или удалена.
+SEC_ERROR_KEYGEN_FAIL=Не удалось сгенерировать ключевую пару из открытого/закрытого ключа.
+SEC_ERROR_INVALID_PASSWORD=Введённый пароль неверен. Пожалуйста, введите другой пароль.
+SEC_ERROR_RETRY_OLD_PASSWORD=Предыдущий пароль введён неверно. Пожалуйста, попробуйте ещё раз.
+SEC_ERROR_BAD_NICKNAME=Псевдоним сертификата уже используется.
+SEC_ERROR_NOT_FORTEZZA_ISSUER=Цепочка узла FORTEZZA содержит не-FORTEZZA сертификат.
+SEC_ERROR_CANNOT_MOVE_SENSITIVE_KEY=Чувствительный ключ не может быть перемещён в слот, где он необходим.
+SEC_ERROR_JS_INVALID_MODULE_NAME=Неправильное имя модуля.
+SEC_ERROR_JS_INVALID_DLL=Неправильный путь/имя файла модуля.
+SEC_ERROR_JS_ADD_MOD_FAILURE=Не удалось добавить модуль
+SEC_ERROR_JS_DEL_MOD_FAILURE=Не удалось удалить модуль
+SEC_ERROR_OLD_KRL=Новый KRL выпущен в то же время или раньше текущего.
+SEC_ERROR_CKL_CONFLICT=Издатель нового CKL отличается от издателя текущего CKL. Удалите текущий CKL.
+SEC_ERROR_CERT_NOT_IN_NAME_SPACE=Центру сертификации, издавшему этот сертификат, не разрешено издавать сертификаты с этим именем.
+SEC_ERROR_KRL_NOT_YET_VALID=Список отозванных ключей для этого сертификата ещё не действителен.
+SEC_ERROR_CRL_NOT_YET_VALID=Список отозванных сертификатов для этого сертификата ещё не действителен.
+SEC_ERROR_UNKNOWN_CERT=Запрошенный сертификат не может быть найден.
+SEC_ERROR_UNKNOWN_SIGNER=Сертификат подписавшего лица не может быть найден.
+SEC_ERROR_CERT_BAD_ACCESS_LOCATION=Строка расположения сервера статуса сертификатов имеет некорректный формат.
+SEC_ERROR_OCSP_UNKNOWN_RESPONSE_TYPE=Не удалось полностью декодировать OCSP-ответ; его тип неизвестен.
+SEC_ERROR_OCSP_BAD_HTTP_RESPONSE=OCSP-сервер вернул неожиданные/неверные HTTP данные.
+SEC_ERROR_OCSP_MALFORMED_REQUEST=OCSP-сервер посчитал запрос повреждённым или неправильно сформированным.
+SEC_ERROR_OCSP_SERVER_ERROR=OCSP-сервер сообщает, что у него произошла внутренняя ошибка.
+SEC_ERROR_OCSP_TRY_SERVER_LATER=OCSP-сервер предлагает попробовать позже.
+SEC_ERROR_OCSP_REQUEST_NEEDS_SIG=OCSP-сервер требует, чтобы запрос был подписан.
+SEC_ERROR_OCSP_UNAUTHORIZED_REQUEST=OCSP-сервер отклонил этот запрос, как неавторизованный.
+SEC_ERROR_OCSP_UNKNOWN_RESPONSE_STATUS=Не удалось распознать статус, возвращённый OCSP-сервером.
+SEC_ERROR_OCSP_UNKNOWN_CERT=OCSP-сервер не имеет статуса этого сертификата.
+SEC_ERROR_OCSP_NOT_ENABLED=Перед выполнением этой операции вы должны включить OCSP.
+SEC_ERROR_OCSP_NO_DEFAULT_RESPONDER=Перед выполнением этой операции вы должны установить OCSP-сервер по умолчанию.
+SEC_ERROR_OCSP_MALFORMED_RESPONSE=Ответ, полученный от OCSP-сервера, повреждён или неправильно сформирован.
+SEC_ERROR_OCSP_UNAUTHORIZED_RESPONSE=Лицо, подписавшее OCSP-ответ, не авторизовано на выдачу статуса этого сертификата.
+SEC_ERROR_OCSP_FUTURE_RESPONSE=OCSP-ответ ещё не действителен (содержит дату из будущего).
+SEC_ERROR_OCSP_OLD_RESPONSE=OCSP-ответ содержит устаревшую информацию.
+SEC_ERROR_DIGEST_NOT_FOUND=В подписанном сообщении не найден дайджест CMS или PKCS #7.
+SEC_ERROR_UNSUPPORTED_MESSAGE_TYPE=Неподдерживаемый тип сообщения CMS или PKCS #7.
+SEC_ERROR_MODULE_STUCK=Модуль PKCS #11 не может быть удалён, так как он в данный момент используется.
+SEC_ERROR_BAD_TEMPLATE=Не удалось декодировать данные ASN.1. Указанный шаблон некорректен.
+SEC_ERROR_CRL_NOT_FOUND=Ни одного подходящего CRL не найдено.
+SEC_ERROR_REUSED_ISSUER_AND_SERIAL=Вы пытаетесь импортировать сертификат с тем же издателем/серийным номером, что и существующий, но это не тот же сертификат.
+SEC_ERROR_BUSY=NSS не может завершить работу. Имеются используемые объекты.
+SEC_ERROR_EXTRA_INPUT=DER-кодированное сообщение содержит лишние неиспользуемые данные.
+SEC_ERROR_UNSUPPORTED_ELLIPTIC_CURVE=Неподдерживаемая эллиптическая кривая.
+SEC_ERROR_UNSUPPORTED_EC_POINT_FORM=Неподдерживаемая форма точки эллиптической кривой.
+SEC_ERROR_UNRECOGNIZED_OID=Нераспознаваемый идентификатор объекта.
+SEC_ERROR_OCSP_INVALID_SIGNING_CERT=Неверный сертификат подписи OCSP в OCSP-ответе.
+SEC_ERROR_REVOKED_CERTIFICATE_CRL=Согласно списку отозванных сертификатов издателя сертификат был отозван.
+SEC_ERROR_REVOKED_CERTIFICATE_OCSP=OCSP-сервер издателя сообщил, что сертификат отозван.
+SEC_ERROR_CRL_INVALID_VERSION=Неизвестный номер версии списка отозванных сертификатов издателя.
+SEC_ERROR_CRL_V1_CRITICAL_EXTENSION=Список отозванных сертификатов издателя версии 1 содержит критическое расширение.
+SEC_ERROR_CRL_UNKNOWN_CRITICAL_EXTENSION=Список отозванных сертификатов издателя версии 2 содержит неизвестное критическое расширение.
+SEC_ERROR_UNKNOWN_OBJECT_TYPE=Указан неизвестный тип объекта.
+SEC_ERROR_INCOMPATIBLE_PKCS11=Драйвер PKCS #11 нарушает спецификацию и имеет проблемы с совместимостью.
+SEC_ERROR_NO_EVENT=В настоящее время нет новых событий в слотах.
+SEC_ERROR_CRL_ALREADY_EXISTS=CRL уже существует.
+SEC_ERROR_NOT_INITIALIZED=NSS не инициализирован.
+SEC_ERROR_TOKEN_NOT_LOGGED_IN=Операция не удалась, так как не был произведён вход с помощью токена PKCS#11.
+SEC_ERROR_OCSP_RESPONDER_CERT_INVALID=Настроенный сертификат OCSP-сервера неверен.
+SEC_ERROR_OCSP_BAD_SIGNATURE=OCSP-ответ имеет неверную подпись.
+SEC_ERROR_OUT_OF_SEARCH_LIMITS=Поиск проверки статуса сертификата вышел за лимиты поиска
+SEC_ERROR_INVALID_POLICY_MAPPING=Отображение политики содержит anypolicy
+SEC_ERROR_POLICY_VALIDATION_FAILED=Цепочка сертификатов не проходит проверку политики
+SEC_ERROR_UNKNOWN_AIA_LOCATION_TYPE=Неизвестный тип расположения в расширении сертификата AIA
+SEC_ERROR_BAD_HTTP_RESPONSE=Сервер вернул некорректный ответ HTTP
+SEC_ERROR_BAD_LDAP_RESPONSE=Сервер вернул некорректный ответ LDAP
+SEC_ERROR_FAILED_TO_ENCODE_DATA=Не удалось закодировать данные с помощью ASN1 кодировщика
+SEC_ERROR_BAD_INFO_ACCESS_LOCATION=Некорректное расположение доступа к информации в расширении сертификата
+SEC_ERROR_LIBPKIX_INTERNAL=Во время проверки статуса сертификата произошла внутренняя ошибка Libpkix.
+SEC_ERROR_PKCS11_GENERAL_ERROR=Модуль PKCS #11 вернул CKR_GENERAL_ERROR, указывающую, что произошла невосстановимая ошибка.
+SEC_ERROR_PKCS11_FUNCTION_FAILED=Модуль PKCS #11 вернул CKR_FUNCTION_FAILED, указывающую, что запрошенная функция не могла быть исполнена. Повтор той же операции может закончиться успехом.
+SEC_ERROR_PKCS11_DEVICE_ERROR=Модуль PKCS #11 вернул CKR_DEVICE_ERROR, означающую, что проблема лежит в токене или слоте.
+SEC_ERROR_BAD_INFO_ACCESS_METHOD=Неизвестный метод доступа к информации в расширении сертификата.
+SEC_ERROR_CRL_IMPORT_FAILED=Ошибка при попытке импорта CRL.
+SEC_ERROR_EXPIRED_PASSWORD=Пароль истёк.
+SEC_ERROR_LOCKED_PASSWORD=Пароль заблокирован.
+SEC_ERROR_UNKNOWN_PKCS11_ERROR=Неизвестная ошибка PKCS #11.
+SEC_ERROR_BAD_CRL_DP_URL=Некорректный или неподдерживаемый URL в имени точки распространения CRL.
+SEC_ERROR_CERT_SIGNATURE_ALGORITHM_DISABLED=Сертификат был подписан с использованием алгоритма подписи, который был отключён, так как он небезопасен.
+MOZILLA_PKIX_ERROR_KEY_PINNING_FAILURE=Сервер использует привязку ключа (HPKP), но не удалось построить ни одной доверенной цепочки сертификатов, соответствующих набору привязки. Нарушения при привязке ключа не могут быть проигнорированы.
+MOZILLA_PKIX_ERROR_CA_CERT_USED_AS_END_ENTITY=Сервер использует сертификат с расширением основных ограничений, идентифицирующий его как центр сертификации. Для правильно выданного сертификата так быть не должно.
+MOZILLA_PKIX_ERROR_INADEQUATE_KEY_SIZE=Размер ключа сертификата, полученного от сервера, слишком мал для установки защищённого соединения.
+MOZILLA_PKIX_ERROR_V1_CERT_USED_AS_CA=Сертификат X.509 версии 1, который не является якорем доверия, был использован для выдачи сертификата сервера. Сертификаты X.509 версии 1 устарели и не должны использоваться для подписи других сертификатов.
+MOZILLA_PKIX_ERROR_NOT_YET_VALID_CERTIFICATE=Сертификат, полученный от сервера, ещё не действителен.
+MOZILLA_PKIX_ERROR_NOT_YET_VALID_ISSUER_CERTIFICATE=Сертификат, который ещё не действителен, был использован для выдачи сертификата сервера.
+MOZILLA_PKIX_ERROR_SIGNATURE_ALGORITHM_MISMATCH=Алгоритм подписи в поле подписи сертификата не соответствует алгоритму в его поле signatureAlgorithm.
+MOZILLA_PKIX_ERROR_OCSP_RESPONSE_FOR_CERT_MISSING=OCSP-ответ не включает в себя статус проверяемого сертификата.
+MOZILLA_PKIX_ERROR_VALIDITY_TOO_LONG=Срок действия сертификата, полученного от сервера, является слишком большим.
+MOZILLA_PKIX_ERROR_REQUIRED_TLS_FEATURE_MISSING=Отсутствует необходимая функция TLS.
+MOZILLA_PKIX_ERROR_INVALID_INTEGER_ENCODING=Сертификат, полученный от сервера, содержит некорректно закодированное целое число. Типичными причинами этого являются отрицательные серийные номера, отрицательные RSA moduli, и кодировки длиннее, чем это необходимо.
+MOZILLA_PKIX_ERROR_EMPTY_ISSUER_NAME=В сертификате, полученном от сервера, отличительное имя издателя является пустым.
+MOZILLA_PKIX_ERROR_ADDITIONAL_POLICY_CONSTRAINT_FAILED=При проверке этого сертификата выявлено нарушение ограничений, наложенных дополнительной политикой.
+MOZILLA_PKIX_ERROR_SELF_SIGNED_CERT=К сертификату нет доверия, так как он является самоподписанным.
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/pipnss/pipnss.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/pipnss/pipnss.properties
new file mode 100644
index 0000000000..a1e329a1f0
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/pipnss/pipnss.properties
@@ -0,0 +1,136 @@
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+CertPasswordPrompt=Введите пароль для токена %S PKCS#11.
+
+CertPasswordPromptDefault=Введите свой основной пароль.
+
+# The following strings have special requirements: they must fit in a 32 or 64
+# bytes buffer after being encoded to UTF-8.
+#
+# It's possible to verify the length of a translation using the Browser Console
+# in Firefox and evaluating the following code:
+#
+# (new TextEncoder('utf-8').encode('YOURSTRING')).length
+#
+# Simply replace YOURSTRING with your translation.
+#
+# If it's not possible to produce an understandable translation within these
+# limits, keeping the English text is an acceptable workaround.
+
+# The following strings have special requirements: they must fit in a 32 or 64
+# bytes buffer after being encoded to UTF-8.
+#
+# It's possible to verify the length of a translation using the Browser Console
+# in Firefox and evaluating the following code:
+#
+# (new TextEncoder().encode('YOURSTRING')).length
+#
+# Simply replace YOURSTRING with your translation.
+#
+# If it's not possible to produce an understandable translation within these
+# limits, keeping the English text is an acceptable workaround.
+
+# LOCALIZATION NOTE (RootCertModuleName): string limit is 64 bytes after
+# conversion to UTF-8.
+# length_limit = 64 bytes
+RootCertModuleName=Модуль встроенных корневых серт.
+# LOCALIZATION NOTE (ManufacturerID): string limit is 32 bytes after conversion
+# to UTF-8.
+# length_limit = 32 bytes
+ManufacturerID=Mozilla.org
+# LOCALIZATION NOTE (LibraryDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+LibraryDescription=Внутрен. крипто PSM
+# LOCALIZATION NOTE (TokenDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+TokenDescription=Общ. криптослужбы
+# LOCALIZATION NOTE (PrivateTokenDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+PrivateTokenDescription=Модуль защиты
+# LOCALIZATION NOTE (SlotDescription): string limit is 64 bytes after conversion
+# to UTF-8.
+# length_limit = 64 bytes
+SlotDescription=Внутренние криптослужбы PSM
+# LOCALIZATION NOTE (PrivateSlotDescription): string limit is 64 bytes after
+# conversion to UTF-8.
+# length_limit = 64 bytes
+PrivateSlotDescription=Закрытые ключи PSM
+# LOCALIZATION NOTE (Fips140TokenDescription): string limit is 32 bytes after
+# conversion to UTF-8.
+# length_limit = 32 bytes
+Fips140TokenDescription=Модуль защиты (FIPS)
+# LOCALIZATION NOTE (Fips140SlotDescription): string limit is 64 bytes after
+# conversion to UTF-8.
+# length_limit = 64 bytes
+Fips140SlotDescription=FIPS 140 Службы крипто, ключей, сертиф.
+
+# LOCALIZATION NOTE (nick_template): $1s is the common name from a cert (e.g. "Mozilla"), $2s is the CA name (e.g. VeriSign)
+nick_template=ID %2$s от %1$s
+
+CertDumpKUSign=Подпись
+CertDumpKUNonRep=Неоспоримость
+CertDumpKUEnc=Шифрование ключа
+CertDumpKUDEnc=Шифрование данных
+CertDumpKUKA=Соглашение о ключе
+CertDumpKUCertSign=Сертификат
+CertDumpKUCRLSigner=Сертификат CRL
+
+PSMERR_SSL_Disabled=Не удалось установить защищённое соединение, так как была отключена поддержка протокола SSL.
+PSMERR_SSL2_Disabled=Не удалось установить защищённое соединение, так как сайт использует устаревшую, незащищённую версию протокола SSL.
+PSMERR_HostReusedIssuerSerial=Вы получили недействительный сертификат. Обратитесь к администратору сервера или отправьте сообщение по электронной почте тому, от кого вы получили этот сертификат, и сообщите следующую информацию:\n\nЭтот сертификат содержит тот же серийный номер, что и один из других сертификатов, выданных тем же центром сертификации. Пожалуйста, получите новый сертификат с уникальным номером.
+
+# LOCALIZATION NOTE (SSLConnectionErrorPrefix2): %1$S is the host string, %2$S is more detailed information (localized as well).
+SSLConnectionErrorPrefix2=При соединении с %1$S произошла ошибка. %2$S\n
+
+certErrorIntro=%S использует недействительный сертификат безопасности.
+
+certErrorTrust_SelfSigned=К сертификату нет доверия, так как он является самоподписанным.
+certErrorTrust_UnknownIssuer=К сертификату нет доверия, так как сертификат его издателя неизвестен.
+certErrorTrust_UnknownIssuer2=Сервер мог не отправить соответствующие промежуточные сертификаты.
+certErrorTrust_UnknownIssuer3=Может понадобиться импортировать дополнительный корневой сертификат.
+certErrorTrust_CaInvalid=К сертификату нет доверия, так как он был издан с использованием недействительного сертификата центра сертификации (CA).
+certErrorTrust_Issuer=К сертификату нет доверия, так как к сертификату его издателя нет доверия.
+certErrorTrust_SignatureAlgorithmDisabled=К сертификату нет доверия, так как он был подписан с использованием алгоритма подписи, который был отключён, так как алгоритм небезопасен.
+certErrorTrust_ExpiredIssuer=К сертификату нет доверия, так как у сертификата его издателя истёк срок действия.
+certErrorTrust_Untrusted=К источнику, издавшему сертификат, нет доверия.
+certErrorTrust_MitM=Ваше соединение перехватывается прокси-сервером TLS. Удалите его, если это возможно, или настройте своё устройство, чтобы оно доверяло его корневому сертификату.
+
+certErrorMismatch=Сертификат недействителен для имени %S.
+# LOCALIZATION NOTE (certErrorMismatchSinglePrefix): %S is replaced by the domain for which the certificate is valid
+certErrorMismatchSinglePrefix=Сертификат действителен только для %S.
+certErrorMismatchMultiple=Сертификат действителен только для следующих доменов:
+
+# LOCALIZATION NOTE (certErrorExpiredNow): Do not translate %1$S (date+time of expired certificate) or %2$S (current date+time)
+certErrorExpiredNow=Сертификат истёк %1$S. Текущее время — %2$S.
+
+# LOCALIZATION NOTE (certErrorNotYetValidNow): Do not translate %1$S (date+time certificate will become valid) or %2$S (current date+time)
+certErrorNotYetValidNow=Сертификат не будет действителен до %1$S. Текущее время — %2$S.
+
+certErrorMitM=Веб-сайты подтверждают свою подлинность с помощью сертификатов, выдаваемых центрами сертификации.
+# LOCALIZATION NOTE (certErrorMitM2): %S is brandShortName
+certErrorMitM2=%S поддерживается некоммерческой организацией Mozilla, которая имеет собственное полностью открытое хранилище сертификатов центров сертификации. Это хранилище помогает убедиться, что центры сертификации следуют лучшим практикам обеспечения безопасности пользователей.
+# LOCALIZATION NOTE (certErrorMitM3): %S is brandShortName
+certErrorMitM3=Для проверки защиты соединения %S использует хранилище сертификатов центров сертификации Mozilla, а не хранилище, встроенное в операционную систему пользователя. Так что, если антивирусная или сетевая программа перехватывает соединение, используя сертификат безопасности, выданный центром сертификации, отсутствующем в хранилище Mozilla, соединение считается небезопасным.
+
+certErrorSymantecDistrustAdministrator=Вы можете уведомить об этой проблеме администратора веб-сайта.
+
+# LOCALIZATION NOTE (certErrorCodePrefix3): %S is replaced by the error code.
+certErrorCodePrefix3=Код ошибки: %S
+
+P12DefaultNickname=Импортированный сертификат
+CertUnknown=Неизвестно
+CertNoEmailAddress=(нет адреса)
+CaCertExists=Этот сертификат уже установлен в качестве сертификата центра сертификации.
+NotACACert=Этот сертификат не является сертификатом центра сертификации, поэтому он не может быть импортирован в список этих сертификатов.
+UserCertIgnoredNoPrivateKey=Установка этого личного сертификата не может быть произведена, так как вы не владеете соответствующим закрытым ключом, созданным при выработке запроса на сертификат.
+UserCertImported=Ваш личный сертификат успешно установлен. Пожалуйста, создайте резервную копию этого сертификата.
+CertOrgUnknown=(неизвестен)
+CertNotStored=(не сохранён)
+CertExceptionPermanent=Постоянно
+CertExceptionTemporary=Временно
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/pippki/pippki.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/pippki/pippki.properties
new file mode 100644
index 0000000000..4f9eae0d8d
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/pippki/pippki.properties
@@ -0,0 +1,76 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Download Cert dialog
+# LOCALIZATION NOTE(newCAMessage1):
+# %S is a string representative of the certificate being downloaded/imported.
+newCAMessage1=Вы хотите доверять «%S» для следующих назначений?
+unnamedCA=Центр сертификации (безымянный)
+
+# PKCS#12 file dialogs
+getPKCS12FilePasswordMessage=Введите пароль, используемый для шифрования резервной копии сертификата:
+
+# Client auth
+clientAuthRemember=Запомнить это решение
+# LOCALIZATION NOTE(clientAuthNickAndSerial): Represents a single cert when the
+# user is choosing from a list of certificates.
+# %1$S is the nickname of the cert.
+# %2$S is the serial number of the cert in AA:BB:CC hex format.
+clientAuthNickAndSerial=%1$S [%2$S]
+# LOCALIZATION NOTE(clientAuthHostnameAndPort):
+# %1$S is the hostname of the server.
+# %2$S is the port of the server.
+clientAuthHostnameAndPort=%1$S:%2$S
+# LOCALIZATION NOTE(clientAuthMessage1): %S is the Organization of the server
+# cert.
+clientAuthMessage1=Организация: «%S»
+# LOCALIZATION NOTE(clientAuthMessage2): %S is the Organization of the issuer
+# cert of the server cert.
+clientAuthMessage2=Выдано: «%S»
+# LOCALIZATION NOTE(clientAuthIssuedTo): %1$S is the Distinguished Name of the
+# currently selected client cert, such as "CN=John Doe,OU=Example" (without
+# quotes).
+clientAuthIssuedTo=Кому выдан: %1$S
+# LOCALIZATION NOTE(clientAuthSerial): %1$S is the serial number of the selected
+# cert in AA:BB:CC hex format.
+clientAuthSerial=Серийный номер: %1$S
+# LOCALIZATION NOTE(clientAuthValidityPeriod):
+# %1$S is the already localized notBefore date of the selected cert.
+# %2$S is the already localized notAfter date of the selected cert.
+clientAuthValidityPeriod=Действителен с %1$S по %2$S
+# LOCALIZATION NOTE(clientAuthKeyUsages): %1$S is a comma separated list of
+# already localized key usages the selected cert is valid for.
+clientAuthKeyUsages=Использования ключа: %1$S
+# LOCALIZATION NOTE(clientAuthEmailAddresses): %1$S is a comma separated list of
+# e-mail addresses the selected cert is valid for.
+clientAuthEmailAddresses=Адреса эл. почты: %1$S
+# LOCALIZATION NOTE(clientAuthIssuedBy): %1$S is the Distinguished Name of the
+# cert which issued the selected cert.
+clientAuthIssuedBy=Кем выдан: %1$S
+# LOCALIZATION NOTE(clientAuthStoredOn): %1$S is the name of the PKCS #11 token
+# the selected cert is stored on.
+clientAuthStoredOn=Место хранения: %1$S
+
+# Page Info
+pageInfo_NoEncryption=Соединение не зашифровано
+pageInfo_Privacy_None1=Веб-сайт %S не поддерживает шифрование для просматриваемой вами страницы.
+pageInfo_Privacy_None2=Информация, отправляемая по Интернету без шифрования, может быть доступна другим во время передачи.
+pageInfo_Privacy_None4=Просматриваемая вами страница не была зашифрована перед передачей через Интернет.
+# LOCALIZATION NOTE (pageInfo_EncryptionWithBitsAndProtocol and pageInfo_BrokenEncryption):
+# %1$S is the name of the encryption standard,
+# %2$S is the key size of the cipher.
+# %3$S is protocol version like "SSL 3" or "TLS 1.2"
+pageInfo_EncryptionWithBitsAndProtocol=Зашифрованное соединение (%1$S, длина ключей %2$S бит, %3$S)
+pageInfo_BrokenEncryption=Небезопасное шифрование (%1$S, длина ключей %2$S бит, %3$S)
+pageInfo_Privacy_Encrypted1=Просматриваемая вами страница была зашифрована перед передачей через Интернет.
+pageInfo_Privacy_Encrypted2=Шифрование сильно затрудняет просмотр информации, переходящей от компьютера к компьютеру, посторонними лицами. Поэтому маловероятно, что кто-либо прочитает эту страницу, во время передачи её по сети.
+pageInfo_MixedContent=Соединение частично зашифровано
+pageInfo_MixedContent2=Некоторые части просматриваемой вами страницы не были зашифрованы перед передачей через Интернет.
+pageInfo_WeakCipher=Ваше соединение с этим веб-сайтом использует слабое шифрование и не защищено. Посторонние лица могут просматривать вашу информацию или изменять поведение веб-сайта.
+pageInfo_CertificateTransparency_Compliant=Этот веб-сайт соответствует требованиям политики Прозрачности Сертификата.
+
+# Token Manager
+password_not_set=(не установлен)
+enable_fips=Использовать FIPS
+
diff --git a/thunderbird-l10n/ru/chrome/ru/locale/ru/places/places.properties b/thunderbird-l10n/ru/chrome/ru/locale/ru/places/places.properties
new file mode 100644
index 0000000000..168b3c9162
--- /dev/null
+++ b/thunderbird-l10n/ru/chrome/ru/locale/ru/places/places.properties
@@ -0,0 +1,33 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+BookmarksMenuFolderTitle=Меню закладок
+BookmarksToolbarFolderTitle=Панель закладок
+OtherBookmarksFolderTitle=Другие закладки
+TagsFolderTitle=Метки
+MobileBookmarksFolderTitle=Мобильные закладки
+
+OrganizerQueryHistory=Журнал
+OrganizerQueryDownloads=Загрузки
+OrganizerQueryAllBookmarks=Все закладки
+
+# LOCALIZATION NOTE (dateName):
+# These are used to generate history containers when history is grouped by date
+finduri-AgeInDays-is-0=Сегодня
+finduri-AgeInDays-is-1=Вчера
+finduri-AgeInDays-is=%S дн. назад
+finduri-AgeInDays-last-is=Последние %S дн.
+finduri-AgeInDays-isgreater=Старше чем %S дн.
+finduri-AgeInMonths-is-0=Этот месяц
+finduri-AgeInMonths-isgreater=Старше чем %S мес.
+
+# LOCALIZATION NOTE (localFiles):
+# This is used to generate local files container when history is grouped by site
+localhost=(локальные файлы)
+
+# LOCALIZATION NOTE
+# The string is used for showing file size of each backup in the "fileRestorePopup" popup
+# %1$S is the file size
+# %2$S is the file size unit
+backupFileSizeText=%1$S %2$S
diff --git a/thunderbird-l10n/ru/localization/ru/branding/brand.ftl b/thunderbird-l10n/ru/localization/ru/branding/brand.ftl
new file mode 100644
index 0000000000..74adcf8505
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/branding/brand.ftl
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Thunderbird Brand
+##
+## Thunderbird must be treated as a brand, and kept in English.
+## It cannot be:
+## - Transliterated.
+## - Translated.
+##
+## Reference: https://www.mozilla.org/styleguide/communications/translation/
+
+-brand-shorter-name = Thunderbird
+-brand-short-name = Thunderbird
+-brand-full-name = Mozilla Thunderbird
+# This brand name can be used in messages where the product name needs to
+# remain unchanged across different versions (Daily, Beta, etc.).
+-brand-product-name = Thunderbird
+-vendor-short-name = Mozilla
+trademarkInfo = Mozilla Thunderbird и логотипы Thunderbird являются товарными знаками Mozilla Foundation.
diff --git a/thunderbird-l10n/ru/localization/ru/browser/appExtensionFields.ftl b/thunderbird-l10n/ru/localization/ru/browser/appExtensionFields.ftl
new file mode 100644
index 0000000000..c3f53fef50
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/browser/appExtensionFields.ftl
@@ -0,0 +1,16 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Theme names and descriptions used in the Themes panel in about:addons
+
+# "Auto" is short for automatic. It can be localized without limitations.
+extension-default-theme-name-auto = Системная тема — авто
+extension-default-theme-description = Следовать настройкам операционной системы для кнопок, меню и окон.
+
+extension-thunderbird-compact-light-name = Светлая
+extension-thunderbird-compact-light-description = Тема со светлой цветовой гаммой.
+
+extension-thunderbird-compact-dark-name = Тёмная
+extension-thunderbird-compact-dark-description = Тема с тёмной цветовой гаммой.
diff --git a/thunderbird-l10n/ru/localization/ru/browser/branding/brandings.ftl b/thunderbird-l10n/ru/localization/ru/browser/branding/brandings.ftl
new file mode 100644
index 0000000000..1297ff22b5
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/browser/branding/brandings.ftl
@@ -0,0 +1,18 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## The following feature names must be treated as a brand.
+##
+## They cannot be:
+## - Transliterated.
+## - Translated.
+##
+## Declension should be avoided where possible, leaving the original
+## brand unaltered in prominent UI positions.
+##
+## For further details, consult:
+## https://mozilla-l10n.github.io/styleguides/mozilla_general/#brands-copyright-and-trademark
+
+-profiler-brand-name = Профайлер Firefox
diff --git a/thunderbird-l10n/ru/localization/ru/browser/components/mozFiveStar.ftl b/thunderbird-l10n/ru/localization/ru/browser/components/mozFiveStar.ftl
new file mode 100644
index 0000000000..785d92463f
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/browser/components/mozFiveStar.ftl
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The rating out of 5 stars.
+# Variables:
+# $rating (number) - A number between 0 and 5. The translation should show at most one digit after the comma.
+moz-five-star-rating =
+ .title = Оценено на { NUMBER($rating, maximumFractionDigits: 1) } из 5
diff --git a/thunderbird-l10n/ru/localization/ru/browser/components/mozSupportLink.ftl b/thunderbird-l10n/ru/localization/ru/browser/components/mozSupportLink.ftl
new file mode 100644
index 0000000000..a155fbeb18
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/browser/components/mozSupportLink.ftl
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+moz-support-link-text = Подробнее
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-context-menus.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-context-menus.ftl
new file mode 100644
index 0000000000..f3dcfa6115
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-context-menus.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+list-calendar-context-reload-menuitem =
+ .label = Синхронизировать
+ .accesskey = х
+calendar-item-context-menu-modify-menuitem =
+ .label = Изменить
+ .accesskey = м
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-delete-prompt.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-delete-prompt.ftl
new file mode 100644
index 0000000000..2188c5a98b
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-delete-prompt.ftl
@@ -0,0 +1,41 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-delete-event-prompt-title =
+ { $count ->
+ [one] Удалить событие
+ [few] Удалить события
+ *[many] Удалить события
+ }
+calendar-delete-event-prompt-message =
+ { $count ->
+ [one] Вы действительно хотите удалить это { $count } событие?
+ [few] Вы действительно хотите удалить эти { $count } события?
+ *[many] Вы действительно хотите удалить эти { $count } событий?
+ }
+calendar-delete-task-prompt-title =
+ { $count ->
+ [one] Удалить задачу
+ [few] Удалить задачи
+ *[many] Удалить задачи
+ }
+calendar-delete-task-prompt-message =
+ { $count ->
+ [one] Вы действительно хотите удалить эту { $count } задачу?
+ [few] Вы действительно хотите удалить эти { $count } задачи?
+ *[many] Вы действительно хотите удалить эти { $count } задач?
+ }
+calendar-delete-item-prompt-title =
+ { $count ->
+ [one] Удалить элемент
+ [few] Удалить элементы
+ *[many] Удалить элементы
+ }
+calendar-delete-item-prompt-message =
+ { $count ->
+ [one] Вы действительно хотите удалить этот { $count } элемент?
+ [few] Вы действительно хотите удалить эти { $count } элемента?
+ *[many] Вы действительно хотите удалить эти { $count } элементов?
+ }
+calendar-delete-prompt-disable-message = Не спрашивать в следующий раз.
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-editable-item.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-editable-item.ftl
new file mode 100644
index 0000000000..91913b52b2
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-editable-item.ftl
@@ -0,0 +1,30 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-editable-item-privacy-icon-private =
+ .alt = Приватность: Непубличное событие
+calendar-editable-item-privacy-icon-confidential =
+ .alt = Приватность: Показывать только дату и время
+calendar-editable-item-recurrence =
+ .alt = Повторение
+calendar-editable-item-recurrence-exception =
+ .alt = Исключение повторения
+calendar-editable-item-todo-icon-task =
+ .alt = Задача
+calendar-editable-item-todo-icon-completed-task =
+ .alt = Выполненная задача
+calendar-editable-item-multiday-event-icon-start =
+ .alt = Многодневное мероприятие начинается
+calendar-editable-item-multiday-event-icon-continue =
+ .alt = Многодневное мероприятие продолжается
+calendar-editable-item-multiday-event-icon-end =
+ .alt = Многодневное мероприятие заканчивается
+calendar-editable-item-reminder-icon-alarm =
+ .alt = Напоминание запланировано
+calendar-editable-item-reminder-icon-suppressed-alarm =
+ .alt = Напоминание запланировано, но в настоящее время отключено
+calendar-editable-item-reminder-icon-email =
+ .alt = Запланировано напоминание по электронной почте
+calendar-editable-item-reminder-icon-audio =
+ .alt = Запланировано звуковое напоминание
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-event-dialog-reminder.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-event-dialog-reminder.ftl
new file mode 100644
index 0000000000..0df22f7968
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-event-dialog-reminder.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-event-reminder-icon-display =
+ .alt = Показать напоминание
+calendar-event-reminder-icon-email =
+ .alt = Отправить письмо
+calendar-event-reminder-icon-audio =
+ .alt = Воспроизвести звуковое напоминание
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-event-listing.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-event-listing.ftl
new file mode 100644
index 0000000000..23b31e0131
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-event-listing.ftl
@@ -0,0 +1,71 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-event-listing-close =
+ .tooltiptext = Закрыть поиск событий и список событий
+
+## Listing columns
+
+calendar-event-listing-column-calendar-name =
+ .label = Календарь
+ .tooltiptext = Сортировка по названию календаря
+calendar-event-listing-column-category =
+ .label = Категория
+ .tooltiptext = Сортировка по категории
+# This label and tooltip is used for the column with the checkbox in the task
+# tree view, which indicates whether a task has been marked as completed.
+calendar-event-listing-column-completed =
+ .label = Готово
+ .tooltiptext = Сортировка по готовности
+calendar-event-listing-column-completed-date =
+ .label = Выполнено
+ .tooltiptext = Сортировка по выполнению
+calendar-event-listing-column-due-date =
+ .label = Срок
+ .tooltiptext = Сортировка по сроку
+calendar-event-listing-column-end-date =
+ .label = Окончание
+ .tooltiptext = Сортировка по дате окончания
+calendar-event-listing-column-location =
+ .label = Место
+ .tooltiptext = Сортировка по месту
+calendar-event-listing-column-percent-complete =
+ .label = % завершено
+ .tooltiptext = Сортировка по % завершенности
+calendar-event-listing-column-priority =
+ .label = Важность
+ .tooltiptext = Сортировка по важности
+calendar-event-listing-column-start-date =
+ .label = Начало
+ .tooltiptext = Сортировка по дате начала
+calendar-event-listing-column-status =
+ .label = Состояние
+ .tooltiptext = Сортировка по состоянию
+calendar-event-listing-column-time-until-due =
+ .label = Продолжительность
+ .tooltiptext = Сортировка по продолжительности
+calendar-event-listing-column-title =
+ .label = Название
+ .tooltiptext = Сортировка по названию
+
+## Interval dropdown options
+
+calendar-event-listing-interval-calendar-month =
+ .label = События на этот месяц
+calendar-event-listing-interval-current-view =
+ .label = События в текущем обзоре
+calendar-event-listing-interval-next-7-days =
+ .label = События на следующие 7 дней
+calendar-event-listing-interval-next-14-days =
+ .label = События на следующие 14 дней
+calendar-event-listing-interval-next-31-days =
+ .label = События на следующий 31 день
+calendar-event-listing-interval-next-6-months =
+ .label = События на следующие 6 месяцев
+calendar-event-listing-interval-next-12-months =
+ .label = События на следующие 12 месяцев
+calendar-event-listing-interval-selected-day =
+ .label = События на выбранный день
+calendar-event-listing-interval-today =
+ .label = Сегодняшние события
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-ics-file-dialog.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-ics-file-dialog.ftl
new file mode 100644
index 0000000000..d120f1835d
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-ics-file-dialog.ftl
@@ -0,0 +1,50 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-ics-file-window-2 =
+ .title = Импорт событий и задач календаря
+calendar-ics-file-window-title = Импорт событий и задач календаря
+calendar-ics-file-dialog-import-event-button-label = Импортировать событие
+calendar-ics-file-dialog-import-task-button-label = Импортировать задачу
+calendar-ics-file-dialog-2 =
+ .buttonlabelaccept = Импортировать всё
+calendar-ics-file-accept-button-ok-label = OK
+calendar-ics-file-cancel-button-close-label = Закрыть
+calendar-ics-file-dialog-message-2 = Импорт из файла:
+calendar-ics-file-dialog-calendar-menu-label = Импорт в календарь:
+calendar-ics-file-dialog-items-loading-message =
+ .value = Загрузка элементов…
+calendar-ics-file-dialog-search-input =
+ .placeholder = Фильтр элементов…
+calendar-ics-file-dialog-sort-start-ascending =
+ .label = Сортировать по дате начала (от первого до последнего)
+calendar-ics-file-dialog-sort-start-descending =
+ .label = Сортировать по дате начала (от последнего до первого)
+# "A > Z" is used as a concise way to say "alphabetical order".
+# You may replace it with something appropriate to your language.
+calendar-ics-file-dialog-sort-title-ascending =
+ .label = Сортировать в алфавитном порядке
+# "Z > A" is used as a concise way to say "reverse alphabetical order".
+# You may replace it with something appropriate to your language.
+calendar-ics-file-dialog-sort-title-descending =
+ .label = Сортировать в обратном алфавитном порядке
+calendar-ics-file-dialog-progress-message = Идёт импорт…
+calendar-ics-file-import-success = Импорт успешно произведён!
+calendar-ics-file-import-error = Произошла ошибка, импорт выполнить не удалось.
+calendar-ics-file-import-complete = Импорт завершён.
+calendar-ics-file-import-duplicates =
+ { $duplicatesCount ->
+ [1] Проигнорирован один элемент, так как он уже есть в календаре.
+ [one] Проигнорирован { $duplicatesCount } элемент, так как он уже есть в календаре.
+ [few] Проигнорировано { $duplicatesCount } элемента, так как они уже есть в календаре.
+ *[many] Проигнорировано { $duplicatesCount } элементов, так как они уже есть в календаре.
+ }
+calendar-ics-file-import-errors =
+ { $errorsCount ->
+ [1] Не удалось импортировать один элемент. Посмотрите подробности в Консоли ошибок.
+ [one] Не удалось импортировать { $errorsCount } элемент. Посмотрите подробности в Консоли ошибок.
+ [few] Не удалось импортировать { $errorsCount } элемента. Посмотрите подробности в Консоли ошибок.
+ *[many] Не удалось импортировать { $errorsCount } элементов. Посмотрите подробности в Консоли ошибок.
+ }
+calendar-ics-file-dialog-no-calendars = Ни в один календарь нельзя импортировать события или задачи.
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-invitation-panel.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-invitation-panel.ftl
new file mode 100644
index 0000000000..af4488e049
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-invitation-panel.ftl
@@ -0,0 +1,115 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Variables:
+# $organizer (String) - The participant that created the original invitation.
+calendar-invitation-panel-intro = { $organizer } приглашает вас:
+calendar-invitation-panel-status-new = Вы были приглашены на это событие.
+calendar-invitation-panel-status-processed = Это событие уже добавлено в ваш календарь.
+calendar-invitation-panel-status-updateminor = Это сообщение содержит обновление для этого события.
+calendar-invitation-panel-status-updatemajor = Это сообщение содержит обновление для этого события. Вам следует повторно подтвердить своё присутствие.
+calendar-invitation-panel-status-cancelled = Это сообщение содержит отмену этого события.
+calendar-invitation-panel-status-cancelled-notfound = Это сообщение содержит отмену события, которого нет в вашем календаре.
+# Variables:
+# $organizer (String) - The participant that cancelled the invitation.
+calendar-invitation-panel-intro-cancel = { $organizer } отменил:
+# Variables:
+# $summary (String) - A short summary or title of the event.
+calendar-invitation-panel-title = { $summary }
+calendar-invitation-panel-action-button = Сохранить
+calendar-invitation-panel-view-button = Просмотреть
+calendar-invitation-panel-update-button = Обновить
+calendar-invitation-panel-delete-button = Удалить
+calendar-invitation-panel-accept-button = Да
+calendar-invitation-panel-decline-button = Нет
+calendar-invitation-panel-tentative-button = Возможно
+calendar-invitation-panel-reply-status = * Вы ещё не решили или не ответили
+calendar-invitation-panel-more-button = Больше
+calendar-invitation-panel-menu-item-save =
+ .label = Сохранить в календаре
+calendar-invitation-panel-menu-item-save-copy =
+ .label = Сохранить копию
+calendar-invitation-panel-menu-item-toggle-changes =
+ .label = Показать изменения
+calendar-invitation-panel-prop-title-when = Когда:
+calendar-invitation-panel-prop-title-location = Место:
+# Variables:
+# $dayOfWeek (String) - The day of the week for a given date.
+# $date (String) - The date example: Tuesday, February 24, 2022.
+calendar-invitation-datetime-date = { $dayOfWeek }, { $date }
+# Variables:
+# $time (String) - The time part of a datetime using the "short" timeStyle.
+# $timezone (String) - The timezone info for the datetime.
+calendar-invitation-datetime-time = { $time } ({ $timezone })
+# Example: Friday, September 16, 2022
+# Variables:
+# $startDate (String) - The date (without time) the event starts on.
+calendar-invitation-interval-all-day = { $startDate }
+# Example: September 16, 2022 – September 16, 2023
+# Variables:
+# $startMonth (String) - The month the interval starts.
+# $startDay (String) - The day of the month the interval starts.
+# $startYear (String) - The year the interval starts.
+# $endMonth (String) - The month the interval ends.
+# $endDay (String) - The day of the month the interval ends.
+# $endYear (String) - The year the interval ends.
+calendar-invitation-interval-all-day-between-years = { $startDay } { $startMonth } { $startYear } – { $endDay } { $endMonth } { $endYear }
+# Example: September 16 – 20, 2022
+# Variables:
+# $month (String) - The month the interval is in.
+# $startDay (String) - The day of the month the interval starts.
+# $endDay (String) - The day of the month the interval ends.
+# $year (String) - The year the interval is in.
+calendar-invitation-interval-all-day-in-month = { $startDay } – { $endDay } { $month } { $year }
+# Example: September 16 – October 20, 2022
+# Variables:
+# $startMonth (String) - The month the interval starts.
+# $startDay (String) - The day of the month the interval starts.
+# $endMonth (String) - The month the interval ends.
+# $endDay (String) - The day of the month the interval ends.
+# $year (String) - The year the interval is in.
+calendar-invitation-interval-all-day-between-months = { $startDay } { $startMonth } – { $endDay } { $endMonth } { $year }
+# Example: Friday, September 16, 2022 15:00 America/Port of Spain
+# Variables:
+# $startDate (String) - The date the interval starts.
+# $startTime (String) - The time the interval starts.
+# $timezone (String) - The timezone the interval is in.
+calendar-invitation-interval-same-date-time = { $startDate } <b>{ $startTime }</b> { $timezone }
+# Example: Friday, September 16, 2022 14:00 – 16:00 America/Port of Spain
+# Variables:
+# $startDate (String) - The date the interval starts.
+# $startTime (String) - The time the interval starts.
+# $endTime (String) - The time the interval ends.
+# $timezone (String) - The timezone the interval is in.
+calendar-invitation-interval-same-day = { $startDate } <b>{ $startTime }</b> – <b>{ $endTime }</b> { $timezone }
+# Example: Friday, September 16, 2022 14:00 – Tuesday, September 20, 2022 16:00 America/Port of Spain
+# Variables:
+# $startDate (String) - The date the interval starts.
+# $startTime (String) - The time the interval starts.
+# $endDate (String) - The date the interval ends.
+# $endTime (String) - The time the interval ends.
+# $timezone (String) - The timezone the interval is in.
+calendar-invitation-interval-several-days = { $startDate } <b>{ $startTime }</b> – { $endDate } <b>{ $endTime }</b> { $timezone }
+calendar-invitation-panel-prop-title-recurrence = Повторы:
+calendar-invitation-panel-prop-title-attendees = Участники:
+calendar-invitation-panel-prop-title-description = Описание:
+# Variables:
+# $count (Number) - The number of attendees with the "ACCEPTED" participation status.
+calendar-invitation-panel-partstat-accepted = { $count } да
+# Variables:
+# $count (Number) - The number of attendees with the "DECLINED" participation status.
+calendar-invitation-panel-partstat-declined = { $count } нет
+# Variables:
+# $count (Number) - The number of attendees with the "TENTATIVE" participation status.
+calendar-invitation-panel-partstat-tentative = { $count } возможно
+# Variables:
+# $count (Number) - The number of attendees with the "NEEDS-ACTION" participation status.
+calendar-invitation-panel-partstat-needs-action = { $count } не решили
+# Variables:
+# $count (Number) - The total number of attendees.
+calendar-invitation-panel-partstat-total = { $count } участников
+calendar-invitation-panel-prop-title-attachments = Вложения:
+calendar-invitation-change-indicator-removed = Удалено
+calendar-invitation-change-indicator-added = Новое
+calendar-invitation-change-indicator-modified = Изменено
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-invitations-dialog.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-invitations-dialog.ftl
new file mode 100644
index 0000000000..bc1f997f8b
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-invitations-dialog.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-invitation-current-participation-status-icon-accepted =
+ .alt = В настоящее время принято
+calendar-invitation-current-participation-status-icon-declined =
+ .alt = В настоящее время отклонено
+calendar-invitation-current-participation-status-icon-needs-action =
+ .alt = В настоящее время не решено
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-itip-identity-dialog.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-itip-identity-dialog.ftl
new file mode 100644
index 0000000000..092341a177
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-itip-identity-dialog.ftl
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-itip-identity-dialog-title = Не пригласили?
+calendar-itip-identity-warning = Вы ещё не в списке гостей.
+calendar-itip-identity-label = Ответить как:
+calendar-itip-identity-label-none = Связать это событие с:
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-print.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-print.ftl
new file mode 100644
index 0000000000..a2af7ab08e
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-print.ftl
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-print-layout-label = Макет
+calendar-print-layout-list = Список
+calendar-print-layout-month-grid = Сетка месяца
+calendar-print-layout-week-planner = Недельный план
+calendar-print-filter-label = Что печатать
+calendar-print-filter-events = События
+calendar-print-filter-tasks = Задачи
+calendar-print-filter-completedtasks = Завершённые задачи
+calendar-print-filter-taskswithnoduedate = Бессрочные задачи
+calendar-print-range-from = С
+calendar-print-range-to = По
+calendar-print-back-button = Назад
+calendar-print-next-button = Далее
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-recurrence-dialog.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-recurrence-dialog.ftl
new file mode 100644
index 0000000000..30e41c1ee9
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-recurrence-dialog.ftl
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-recurrence-preview-label = Предварительный просмотр
+calendar-recurrence-next = Следующий месяц
+calendar-recurrence-previous = Предыдущий месяц
+calendar-recurrence-today = Сегодня
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-summary-dialog.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-summary-dialog.ftl
new file mode 100644
index 0000000000..ea0f0ae2d7
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-summary-dialog.ftl
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-summary-dialog-edit-button =
+ .label = Изменить
+ .accesskey = м
+calendar-summary-dialog-edit-menu-button =
+ .label = Изменить
+edit-button-context-menu-this-occurrence =
+ .label = Изменить только это повторение
+ .accesskey = о
+edit-button-context-menu-all-occurrences =
+ .label = Изменить все повторения
+ .accesskey = е
+description-context-menu-copy-link-text =
+ .label = Копировать текст ссылки
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-uri-redirect-dialog.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-uri-redirect-dialog.ftl
new file mode 100644
index 0000000000..1600c368ed
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-uri-redirect-dialog.ftl
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-uri-redirect-window =
+ .title = Перенаправление URI календаря
+calendar-uri-redirect-window-title = Перенаправление URI календаря
+calendar-uri-redirect-description =
+ Сервер перенаправляет URI для календаря «{ $calendarName }».
+ Принять перенаправление и начать использовать новый URI для этого календаря?
+calendar-uri-redirect-original-uri-label = Текущий URI:
+calendar-uri-redirect-target-uri-label = Перенаправление на новый URI:
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/calendar-widgets.ftl b/thunderbird-l10n/ru/localization/ru/calendar/calendar-widgets.ftl
new file mode 100644
index 0000000000..43dc6015c9
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/calendar-widgets.ftl
@@ -0,0 +1,111 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-deactivated-notification-events = Все календари в настоящее время отключены. Включите существующий календарь или добавьте новый для создания и редактирования событий.
+calendar-deactivated-notification-tasks = Все календари в настоящее время отключены. Включите существующий календарь или добавьте новый для создания и редактирования задач.
+calendar-notifications-label = Отображать уведомления о предстоящих событиях
+calendar-add-notification-button =
+ .label = Добавить уведомление
+
+## Side panel
+
+calendar-list-header = Календари
+# Variables:
+# $calendarName (String) - Calendar name as given by the user
+calendar-no-reminders-tooltip =
+ .title = Календарь { $calendarName } был отключён
+calendar-enable-button = Включить
+# Variables:
+# $calendarName (String) - Calendar name as given by the user
+calendar-list-item-context-button =
+ .title = Настройки календаря { $calendarName }
+calendar-import-new-calendar = Новый календарь…
+ .title = Создать или подписаться на новый календарь
+calendar-refresh-calendars =
+ .title = Перезагрузить все календари и синхронизировать изменения
+calendar-new-event-primary-button = Новое событие
+calendar-new-task-primary-button = Новая задача
+
+## Calendar navigation
+
+calendar-nav-button-prev-tooltip-day =
+ .title = Предыдущий день
+ .accesskey = ы
+calendar-nav-button-prev-tooltip-week =
+ .title = Предыдущая неделя
+ .accesskey = ы
+calendar-nav-button-prev-tooltip-multiweek =
+ .title = Предыдущая неделя
+ .accesskey = ы
+calendar-nav-button-prev-tooltip-month =
+ .title = Предыдущий месяц
+ .accesskey = ы
+calendar-nav-button-prev-tooltip-year =
+ .title = Предыдущий год
+ .accesskey = ы
+calendar-nav-button-next-tooltip-day =
+ .title = Следующий день
+ .accesskey = л
+calendar-nav-button-next-tooltip-week =
+ .title = Следующая неделя
+ .accesskey = л
+calendar-nav-button-next-tooltip-multiweek =
+ .title = Следующая неделя
+ .accesskey = л
+calendar-nav-button-next-tooltip-month =
+ .title = Следующий месяц
+ .accesskey = л
+calendar-nav-button-next-tooltip-year =
+ .title = Следующий год
+ .accesskey = л
+calendar-today-button-tooltip =
+ .title = Перейти на сегодня
+calendar-view-toggle-day = День
+ .title = Перейти к обзору дня
+calendar-view-toggle-week = Неделя
+ .title = Перейти к обзору недели
+calendar-view-toggle-multiweek = По неделям
+ .title = Перейти к обзору по неделям
+calendar-view-toggle-month = Месяц
+ .title = Перейти к обзору месяца
+
+## Menu on calendar control bar
+
+calendar-control-bar-menu-button =
+ .title = Настройки оформления календаря
+calendar-find-events-menu-option =
+ .label = Панель «Найти события»
+calendar-hide-weekends-option =
+ .label = Только рабочие дни
+calendar-define-workweek-option =
+ .label = Определить рабочие дни
+calendar-show-tasks-calendar-option =
+ .label = Отображать задачи в календаре
+
+## Calendar Context Menu
+
+calendar-context-menu-previous-day =
+ .label = Предыдущий день
+ .accesskey = П
+calendar-context-menu-previous-week =
+ .label = Предыдущая неделя
+ .accesskey = П
+calendar-context-menu-previous-multiweek =
+ .label = Предыдущая неделя
+ .accesskey = П
+calendar-context-menu-previous-month =
+ .label = Предыдущий месяц
+ .accesskey = П
+calendar-context-menu-next-day =
+ .label = Следующий день
+ .accesskey = С
+calendar-context-menu-next-week =
+ .label = Следующая неделя
+ .accesskey = С
+calendar-context-menu-next-multiweek =
+ .label = Следующая неделя
+ .accesskey = С
+calendar-context-menu-next-month =
+ .label = Следующий месяц
+ .accesskey = С
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/category-dialog.ftl b/thunderbird-l10n/ru/localization/ru/calendar/category-dialog.ftl
new file mode 100644
index 0000000000..b2618952fa
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/category-dialog.ftl
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+category-name-label = Название
+category-color-label =
+ .label = Использовать цвет
diff --git a/thunderbird-l10n/ru/localization/ru/calendar/preferences.ftl b/thunderbird-l10n/ru/localization/ru/calendar/preferences.ftl
new file mode 100644
index 0000000000..db60c62a18
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/calendar/preferences.ftl
@@ -0,0 +1,192 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-title = Календарь
+calendar-title-reminder = Напоминания
+calendar-title-notification = Уведомления
+calendar-title-category = Категории
+dateformat-label =
+ .value = Формат даты:
+ .accesskey = Ф
+# $date (String) - the formatted example date
+dateformat-long =
+ .label = Полный: { $date }
+# $date (String) - the formatted example date
+dateformat-short =
+ .label = Краткий: { $date }
+use-system-timezone-radio-button =
+ .label = Использовать часовой пояс системы
+set-timezone-manually-radio-button =
+ .label = Установить часовой пояс вручную
+timezone-label =
+ .value = Часовой пояс:
+weekstart-label =
+ .value = Первый день недели:
+ .accesskey = е
+day-1-name =
+ .label = Воскресенье
+day-2-name =
+ .label = Понедельник
+day-3-name =
+ .label = Вторник
+day-4-name =
+ .label = Среда
+day-5-name =
+ .label = Четверг
+day-6-name =
+ .label = Пятница
+day-7-name =
+ .label = Суббота
+show-weeknumber-label =
+ .label = Показывать номер недели в обзорах и минимесяце
+ .accesskey = о
+workdays-label =
+ .value = Рабочие дни:
+day-1-checkbox =
+ .label = Вс
+ .accesskey = В
+day-2-checkbox =
+ .label = Пн
+ .accesskey = н
+day-3-checkbox =
+ .label = Вт
+ .accesskey = т
+day-4-checkbox =
+ .label = Ср
+ .accesskey = р
+day-5-checkbox =
+ .label = Чт
+ .accesskey = Ч
+day-6-checkbox =
+ .label = Пт
+ .accesskey = П
+day-7-checkbox =
+ .label = Сб
+ .accesskey = С
+dayweek-legend = Обзоры дня и недели
+visible-hours-label =
+ .value = Показывать:
+ .accesskey = з
+visible-hours-end-label =
+ .value = часов одновременно
+day-start-label =
+ .value = День начинается в:
+ .accesskey = а
+day-end-label =
+ .value = День заканчивается в:
+ .accesskey = и
+midnight-label =
+ .label = Полночь
+noon-label =
+ .label = Полдень
+location-checkbox =
+ .label = Отображать расположение
+ .accesskey = а
+multiweek-legend = Обзор по неделям
+number-of-weeks-label =
+ .value = Количество недель в обзоре (включая предыдущие недели):
+ .accesskey = К
+week-0-label =
+ .label = нет
+week-1-label =
+ .label = 1 неделя
+week-2-label =
+ .label = 2 недели
+week-3-label =
+ .label = 3 недели
+week-4-label =
+ .label = 4 недели
+week-5-label =
+ .label = 5 недель
+week-6-label =
+ .label = 6 недель
+previous-weeks-label =
+ .value = Количество предыдущих недель в обзоре:
+ .accesskey = о
+todaypane-legend = Мероприятия
+agenda-days =
+ .value = Отображать в повестке:
+ .accesskey = в
+event-task-legend = События и задачи
+default-length-label =
+ .value = Продолжительность события или задачи по умолчанию:
+ .accesskey = ж
+task-start-label =
+ .value = Дата начала:
+task-start-1-label =
+ .label = Нет
+task-start-2-label =
+ .label = В начале дня
+task-start-3-label =
+ .label = В конце дня
+task-start-4-label =
+ .label = Завтра
+task-start-5-label =
+ .label = На следующей неделе
+task-start-6-label =
+ .label = Относительно текущего времени
+task-start-7-label =
+ .label = Относительно начала
+task-start-8-label =
+ .label = Относительно следующего часа
+task-due-label =
+ .value = Срок:
+edit-intab-label =
+ .label = Редактировать события и задачи во вкладке, а не в диалоговом окне.
+ .accesskey = а
+prompt-delete-label =
+ .label = Запрашивать перед удалением событий и задач.
+ .accesskey = ш
+accessibility-legend = Специальные возможности
+accessibility-colors-label =
+ .label = Оптимизировать цвета для людей с ограниченными возможностями
+ .accesskey = п
+reminder-legend = При наступлении времени оповещения:
+reminder-play-checkbox =
+ .label = Проигрывать звук
+ .accesskey = з
+reminder-play-alarm-button =
+ .label = Воспроизвести
+ .accesskey = и
+reminder-default-sound-label =
+ .label = По умолчанию
+ .accesskey = м
+reminder-custom-sound-label =
+ .label = Использовать следующий звуковой файл
+ .accesskey = й
+reminder-browse-sound-label =
+ .label = Обзор…
+ .accesskey = б
+reminder-dialog-label =
+ .label = Отображать окно оповещения
+ .accesskey = к
+missed-reminder-label =
+ .label = Отображать пропущенные оповещения для доступных для записи календарей
+ .accesskey = а
+reminder-default-legend = Параметры по умолчанию для оповещений
+default-snooze-label =
+ .value = По умолчанию откладывать на:
+ .accesskey = ы
+event-alarm-label =
+ .value = Оповещения о событиях:
+ .accesskey = с
+alarm-on-label =
+ .label = Включить
+alarm-off-label =
+ .label = Отключить
+task-alarm-label =
+ .value = Оповещения о задачах:
+ .accesskey = з
+event-alarm-time-label =
+ .value = Оповещать о событии до его наступления за:
+ .accesskey = б
+task-alarm-time-label =
+ .value = Оповещать о задаче до её наступления за:
+ .accesskey = ч
+calendar-notifications-customize-label = Уведомления можно настроить для каждого календаря в окне свойств календаря.
+category-new-label = Новая категория
+category-edit-label = Изменить категорию
+category-overwrite-title = Предупреждение: Одинаковые названия
+category-overwrite = Категория с таким названием уже существует. Вы хотите переписать её?
+category-blank-warning = Вы должны указать название категории.
diff --git a/thunderbird-l10n/ru/localization/ru/chat/matrix.ftl b/thunderbird-l10n/ru/localization/ru/chat/matrix.ftl
new file mode 100644
index 0000000000..8cf347cb8c
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/chat/matrix.ftl
@@ -0,0 +1,36 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Matrix Protocol strings
+
+
+## Conversation names when a room has no user readable name.
+
+room-name-empty = Пустой разговор
+# Variables:
+# $oldName (String) - The previous name the conversation had before it was
+# removed.
+room-name-empty-had-name = Пустой разговор (был { $oldName })
+# Variables:
+# $participant (String) - The name of one participant that isn't the user.
+# $otherParticipantsCount (Number) - The count of other participants apart from
+# the user and $participant.
+room-name-others =
+ { $otherParticipantsCount ->
+ [one] { $participant } и { $otherParticipantCount } другой
+ [few] { $participant } и { $otherParticipantCount } других
+ *[many] { $participant } и { $otherParticipantCount } других
+ }
+# Variables:
+# $participant (String) - The name of one participant that isn't the user.
+# $otherParticipantCount (Number) - The count of other participants apart from
+# the user and $participant.
+room-name-others2 =
+ { $otherParticipantCount ->
+ [one] { $participant } и { $otherParticipantCount } другой
+ [few] { $participant } и { $otherParticipantCount } других
+ [many] { $participant } и { $otherParticipantCount } других
+ *[other] { $participant } и { $otherParticipantCount } других
+ }
diff --git a/thunderbird-l10n/ru/localization/ru/crashreporter/aboutcrashes.ftl b/thunderbird-l10n/ru/localization/ru/crashreporter/aboutcrashes.ftl
new file mode 100644
index 0000000000..ce1afb5358
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/crashreporter/aboutcrashes.ftl
@@ -0,0 +1,31 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v- 2-0- If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla-org/MPL/2-0/-
+
+
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+crash-reports-title = Сообщения о падениях
+
+submit-all-button-label = Отправить все
+delete-button-label = Удалить все
+delete-confirm-title = Вы уверены?
+delete-unsubmitted-description = Это действие удалит все неотправленные сообщения о падениях и не может быть отменено.
+delete-submitted-description = Это действие удалит список отправленных сообщений о падениях, но не удалит отправленные данные. Это не может быть отменено.
+
+crashes-unsubmitted-label = Неотправленные сообщения о падениях
+id-heading = Идентификатор сообщения
+date-crashed-heading = Дата падения
+submit-crash-button-label = Отправить
+# This text is used to replace the label of the crash submit button
+# if the crash submission fails.
+submit-crash-button-failure-label = Не удалось
+
+crashes-submitted-label = Отправленные сообщения о падениях
+date-submitted-heading = Дата отправки
+view-crash-button-label = Просмотреть
+
+no-reports-label = Ни одного сообщения о падении отправлено не было.
+no-config-label = Это приложение не было настроено на отображение сообщений о падениях. Необходимо установить параметр <code>breakpad.reportURL</code>.
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/client/aboutdebugging.ftl b/thunderbird-l10n/ru/localization/ru/devtools/client/aboutdebugging.ftl
new file mode 100644
index 0000000000..9e7eeeb271
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/client/aboutdebugging.ftl
@@ -0,0 +1,400 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These strings are used inside the about:debugging UI.
+
+
+# Page Title strings
+
+# Page title (ie tab title) for the Setup page
+about-debugging-page-title-setup-page = Отладка - Настройка
+
+# Page title (ie tab title) for the Runtime page
+# { $selectedRuntimeId } is the id of the current runtime, such as "this-firefox", "localhost:6080", ...
+about-debugging-page-title-runtime-page = Отладка - Runtime / { $selectedRuntimeId }
+
+# Sidebar strings
+
+# Display name of the runtime for the currently running instance of Firefox. Used in the
+# Sidebar and in the Setup page.
+about-debugging-this-firefox-runtime-name = Этот { -brand-shorter-name }
+
+# Sidebar heading for selecting the currently running instance of Firefox
+about-debugging-sidebar-this-firefox =
+ .name = { about-debugging-this-firefox-runtime-name }
+
+# Sidebar heading for connecting to some remote source
+about-debugging-sidebar-setup =
+ .name = Настройка
+
+# Text displayed in the about:debugging sidebar when USB devices discovery is enabled.
+about-debugging-sidebar-usb-enabled = USB включён
+
+# Text displayed in the about:debugging sidebar when USB devices discovery is disabled
+# (for instance because the mandatory ADB extension is not installed).
+about-debugging-sidebar-usb-disabled = USB отключён
+
+# Connection status (connected) for runtime items in the sidebar
+aboutdebugging-sidebar-runtime-connection-status-connected = Подключено
+# Connection status (disconnected) for runtime items in the sidebar
+aboutdebugging-sidebar-runtime-connection-status-disconnected = Отключено
+
+# Text displayed in the about:debugging sidebar when no device was found.
+about-debugging-sidebar-no-devices = Устройства не обнаружены
+
+# Text displayed in buttons found in sidebar items representing remote runtimes.
+# Clicking on the button will attempt to connect to the runtime.
+about-debugging-sidebar-item-connect-button = Подключить
+
+# Text displayed in buttons found in sidebar items when the runtime is connecting.
+about-debugging-sidebar-item-connect-button-connecting = Подключение…
+
+# Text displayed in buttons found in sidebar items when the connection failed.
+about-debugging-sidebar-item-connect-button-connection-failed = Ошибка подключения
+
+# Text displayed in connection warning on sidebar item of the runtime when connecting to
+# the runtime is taking too much time.
+about-debugging-sidebar-item-connect-button-connection-not-responding = Подключение всё ещё устанавливается, проверьте наличие сообщений в целевом браузере
+
+# Text displayed as connection error in sidebar item when the connection has timed out.
+about-debugging-sidebar-item-connect-button-connection-timeout = Время ожидания соединения истекло
+
+# Text displayed in sidebar items for remote devices where a compatible browser (eg
+# Firefox) has not been detected yet. Typically, Android phones connected via USB with
+# USB debugging enabled, but where Firefox is not started.
+about-debugging-sidebar-runtime-item-waiting-for-browser = Ожидание браузера…
+
+# Text displayed in sidebar items for remote devices that have been disconnected from the
+# computer.
+about-debugging-sidebar-runtime-item-unplugged = Отключено
+
+# Title for runtime sidebar items that are related to a specific device (USB, WiFi).
+about-debugging-sidebar-runtime-item-name =
+ .title = { $displayName } ({ $deviceName })
+# Title for runtime sidebar items where we cannot get device information (network
+# locations).
+about-debugging-sidebar-runtime-item-name-no-device =
+ .title = { $displayName }
+
+# Text to show in the footer of the sidebar that links to a help page
+# (currently: https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/)
+about-debugging-sidebar-support = Помощь по отладке
+
+# Text to show as the ALT attribute of a help icon that accompanies the help about
+# debugging link in the footer of the sidebar
+about-debugging-sidebar-support-icon =
+ .alt = Значок помощи
+
+# Text displayed in a sidebar button to refresh the list of USB devices. Clicking on it
+# will attempt to update the list of devices displayed in the sidebar.
+about-debugging-refresh-usb-devices-button = Обновить список устройств
+
+# Setup Page strings
+
+# Title of the Setup page.
+about-debugging-setup-title = Настройка
+
+# Introduction text in the Setup page to explain how to configure remote debugging.
+about-debugging-setup-intro = Выберите метод подключения, с помощью которого вы хотите удалённо отлаживать ваше устройство.
+
+# Explanatory text in the Setup page about what the 'This Firefox' page is for
+about-debugging-setup-this-firefox2 = Используйте <a>{ about-debugging-this-firefox-runtime-name }</a> для отладки расширений и service worker'ов в этой версии { -brand-shorter-name }.
+
+# Title of the heading Connect section of the Setup page.
+about-debugging-setup-connect-heading = Подключить устройство
+
+# USB section of the Setup page
+about-debugging-setup-usb-title = USB
+
+# Explanatory text displayed in the Setup page when USB debugging is disabled
+about-debugging-setup-usb-disabled = Включение этой функции потребует загрузки и установки необходимых компонентов для отладки Android по USB в { -brand-shorter-name }.
+
+# Text of the button displayed in the USB section of the setup page when USB debugging is disabled.
+# Clicking on it will download components needed to debug USB Devices remotely.
+about-debugging-setup-usb-enable-button = Включить USB-устройства
+
+# Text of the button displayed in the USB section of the setup page when USB debugging is enabled.
+about-debugging-setup-usb-disable-button = Отключить USB-устройства
+
+# Text of the button displayed in the USB section of the setup page while USB debugging
+# components are downloaded and installed.
+about-debugging-setup-usb-updating-button = Обновление…
+
+# USB section of the Setup page (USB status)
+about-debugging-setup-usb-status-enabled = Включён
+about-debugging-setup-usb-status-disabled = Отключён
+about-debugging-setup-usb-status-updating = Обновление…
+
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-dev-menu2 = Включите режим разработчика на вашем Android-устройстве.
+
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-debug2 = Включите отладку по USB в меню разработчика Android.
+
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-debug-firefox2 = Включите отладку по USB в Firefox на вашем Android-устройстве.
+
+# USB section step by step guide
+about-debugging-setup-usb-step-plug-device = Подключите Android-устройство к вашему компьютеру.
+
+# Text shown in the USB section of the setup page with a link to troubleshoot connection errors.
+# The link goes to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/index.html#connecting-to-a-remote-device
+about-debugging-setup-usb-troubleshoot = Не можете подключиться к USB-устройству? <a>Поиск решения</a>
+
+# Network section of the Setup page
+about-debugging-setup-network =
+ .title = Сетевое расположение
+
+# Text shown in the Network section of the setup page with a link to troubleshoot connection errors.
+# The link goes to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/index.html#connecting-over-the-network
+about-debugging-setup-network-troubleshoot = Проблемы с подключением через сетевое расположение? <a>Поиск решения</a>
+
+# Text of a button displayed after the network locations "Host" input.
+# Clicking on it will add the new network location to the list.
+about-debugging-network-locations-add-button = Добавить
+
+# Text to display when there are no locations to show.
+about-debugging-network-locations-empty-text = Сетевые расположения пока не добавлены.
+
+# Text of the label for the text input that allows users to add new network locations in
+# the Connect page. A host is a hostname and a port separated by a colon, as suggested by
+# the input's placeholder "localhost:6080".
+about-debugging-network-locations-host-input-label = Хост
+
+# Text of a button displayed next to existing network locations in the Connect page.
+# Clicking on it removes the network location from the list.
+about-debugging-network-locations-remove-button = Удалить
+
+# Text used as error message if the format of the input value was invalid in the network locations form of the Setup page.
+# Variables:
+# $host-value (string) - The input value submitted by the user in the network locations form
+about-debugging-network-location-form-invalid = Неверный формат хоста «{ $host-value }». Правильный формат: «имя хоста: номер порта».
+
+# Text used as error message if the input value was already registered in the network locations form of the Setup page.
+# Variables:
+# $host-value (string) - The input value submitted by the user in the network locations form
+about-debugging-network-location-form-duplicate = Хост «{ $host-value }» уже зарегистрирован
+
+# Runtime Page strings
+
+# Below are the titles for the various categories of debug targets that can be found
+# on "runtime" pages of about:debugging.
+# Title of the temporary extensions category (only available for "This Firefox" runtime).
+about-debugging-runtime-temporary-extensions =
+ .name = Временные расширения
+# Title of the extensions category.
+about-debugging-runtime-extensions =
+ .name = Расширения
+# Title of the tabs category.
+about-debugging-runtime-tabs =
+ .name = Вкладки
+# Title of the service workers category.
+about-debugging-runtime-service-workers =
+ .name = Service Worker'ы
+# Title of the shared workers category.
+about-debugging-runtime-shared-workers =
+ .name = Shared Worker'ы
+# Title of the other workers category.
+about-debugging-runtime-other-workers =
+ .name = Другие Worker'ы
+# Title of the processes category.
+about-debugging-runtime-processes =
+ .name = Процессы
+
+# Label of the button opening the performance profiler panel in runtime pages for remote
+# runtimes.
+about-debugging-runtime-profile-button2 = Профилировать производительность
+
+# This string is displayed in the runtime page if the current configuration of the
+# target runtime is incompatible with service workers. "Learn more" points to:
+# https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/index.html#service-workers-not-compatible
+about-debugging-runtime-service-workers-not-compatible = Конфигурация вашего браузера не совместима с Service Worker'ами. <a>Узнайте больше</a>
+
+# This string is displayed in the runtime page if the remote browser version is too old.
+# "Troubleshooting" link points to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/
+# { $runtimeVersion } is the version of the remote browser (for instance "67.0a1")
+# { $minVersion } is the minimum version that is compatible with the current Firefox instance (same format)
+about-debugging-browser-version-too-old = Подключённый браузер имеет старую версию ({ $runtimeVersion }). Минимальная поддерживаемая версия — ({ $minVersion }). Эта конфигурация не поддерживается и может привести к сбою в работе Инструментов разработчика. Пожалуйста, обновите подключённый браузер. <a>Решение проблем</a>
+
+# Dedicated message for a backward compatibility issue that occurs when connecting:
+# from Fx 70+ to the old Firefox for Android (aka Fennec) which uses Fx 68.
+about-debugging-browser-version-too-old-fennec = Эта версия Firefox не может производить отладку Firefox для Android (68). Мы рекомендуем установить Firefox для Android Nightly на телефон для тестирования. <a>Подробнее</a>
+
+# This string is displayed in the runtime page if the remote browser version is too recent.
+# "Troubleshooting" link points to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/
+# { $runtimeID } is the build ID of the remote browser (for instance "20181231", format is yyyyMMdd)
+# { $localID } is the build ID of the current Firefox instance (same format)
+# { $runtimeVersion } is the version of the remote browser (for instance "67.0a1")
+# { $localVersion } is the version of your current browser (same format)
+about-debugging-browser-version-too-recent = Подключённый браузер имеет более новый ({ $runtimeVersion }, buildID { $runtimeID }), чем ваш { -brand-shorter-name } ({ $localVersion }, buildID { $localID }). Эта конфигурация не поддерживается и может привести к сбою в работе Инструментов разработчика. Пожалуйста, обновите Firefox. <a>Решение проблем</a>
+
+# Displayed for runtime info in runtime pages.
+# { $name } is brand name such as "Firefox Nightly"
+# { $version } is version such as "64.0a1"
+about-debugging-runtime-name = { $name } ({ $version })
+
+# Text of a button displayed in Runtime pages for remote runtimes.
+# Clicking on the button will close the connection to the runtime.
+about-debugging-runtime-disconnect-button = Отсоединить
+
+# Text of the connection prompt button displayed in Runtime pages, when the preference
+# "devtools.debugger.prompt-connection" is false on the target runtime.
+about-debugging-connection-prompt-enable-button = Включить запрос на подключение
+
+# Text of the connection prompt button displayed in Runtime pages, when the preference
+# "devtools.debugger.prompt-connection" is true on the target runtime.
+about-debugging-connection-prompt-disable-button = Отключить запрос на подключение
+
+# Title of a modal dialog displayed on remote runtime pages after clicking on the Profile Runtime button.
+about-debugging-profiler-dialog-title2 = Профайлер
+
+# Clicking on the header of a debug target category will expand or collapse the debug
+# target items in the category. This text is used as ’title’ attribute of the header,
+# to describe this feature.
+about-debugging-collapse-expand-debug-targets = Свернуть / развернуть
+
+# Debug Targets strings
+
+# Displayed in the categories of "runtime" pages that don't have any debug target to
+# show. Debug targets depend on the category (extensions, tabs, workers...).
+about-debugging-debug-target-list-empty = Пока ничего.
+
+# Text of a button displayed next to debug targets of "runtime" pages. Clicking on this
+# button will open a DevTools toolbox that will allow inspecting the target.
+# A target can be an addon, a tab, a worker...
+about-debugging-debug-target-inspect-button = Исследовать
+
+# Text of a button displayed in the "This Firefox" page, in the Temporary Extension
+# section. Clicking on the button will open a file picker to load a temporary extension
+about-debugging-tmp-extension-install-button = Загрузить временное дополнение…
+
+# Text displayed when trying to install a temporary extension in the "This Firefox" page.
+about-debugging-tmp-extension-install-error = При установке временного дополнения произошла ошибка.
+
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will reload the extension.
+about-debugging-tmp-extension-reload-button = Обновить
+
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will uninstall the extension and remove it from the page.
+about-debugging-tmp-extension-remove-button = Удалить
+
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will forcefully terminate the extension background script (button
+# only visible in extensions that includes a non-persistent background script, either an
+# event page or a background service worker).
+about-debugging-tmp-extension-terminate-bgscript-button = Завершить фоновый сценарий
+
+# Message displayed in the file picker that opens to select a temporary extension to load
+# (triggered by the button using "about-debugging-tmp-extension-install-button")
+# manifest.json .xpi and .zip should not be localized.
+# Note: this message is only displayed in Windows and Linux platforms.
+about-debugging-tmp-extension-install-message = Выберите файл manifest.json или .xpi/.zip архив
+
+# This string is displayed as a message about the add-on having a temporaryID.
+about-debugging-tmp-extension-temporary-id = Это WebExtension имеет временный ID. <a>Подробнее</a>
+
+# Text displayed for extensions in "runtime" pages, before displaying a link the extension's
+# manifest URL.
+about-debugging-extension-manifest-url =
+ .label = URL манифеста
+
+# Text displayed for extensions in "runtime" pages, before displaying the extension's uuid.
+# UUIDs look like b293e463-481e-5148-a487-5aaf7a130429
+about-debugging-extension-uuid =
+ .label = Внутренний UUID
+
+# Text displayed for extensions (temporary extensions only) in "runtime" pages, before
+# displaying the location of the temporary extension.
+about-debugging-extension-location =
+ .label = Расположение
+
+# Text displayed for extensions in "runtime" pages, before displaying the extension's ID.
+# For instance "geckoprofiler@mozilla.com" or "{ed26ddcb-5611-4512-a89a-51b8db81cfb2}".
+about-debugging-extension-id =
+ .label = ID расширения
+
+# Text displayed for extensions in "runtime" pages, before displaying the status of the
+# extension background script.
+about-debugging-extension-backgroundscript =
+ .label = Фоновый сценарий
+
+# Displayed for extension using a non-persistent background page (either an event page or
+# background service worker) when the background script is currently running.
+about-debugging-extension-backgroundscript-status-running = Выполняется
+
+# Displayed for extension using a non-persistent background page when is currently stopped.
+about-debugging-extension-backgroundscript-status-stopped = Остановлен
+
+# This string is displayed as a label of the button that pushes a test payload
+# to a service worker.
+# Note this relates to the "Push" API, which is normally not localized so it is
+# probably better to not localize it.
+about-debugging-worker-action-push2 = Push
+ .disabledTitle = Service Worker push сейчас отключено для мультипроцессного { -brand-shorter-name }
+
+# This string is displayed as a label of the button that starts a service worker.
+about-debugging-worker-action-start2 = Запустить
+ .disabledTitle = Запуск Service Worker сейчас отключён для мультипроцессного { -brand-shorter-name }
+
+# This string is displayed as a label of the button that unregisters a service worker.
+about-debugging-worker-action-unregister = Разрегистрировать
+
+# Displayed for service workers in runtime pages that listen to Fetch events.
+about-debugging-worker-fetch-listening =
+ .label = Fetch
+ .value = Отслеживает события fetch
+
+# Displayed for service workers in runtime pages that do not listen to Fetch events.
+about-debugging-worker-fetch-not-listening =
+ .label = Fetch
+ .value = Не отслеживает события fetch
+
+# Displayed for service workers in runtime pages that are currently running (service
+# worker instance is active).
+about-debugging-worker-status-running = Выполняется
+
+# Displayed for service workers in runtime pages that are registered but stopped.
+about-debugging-worker-status-stopped = Остановлен
+
+# Displayed for service workers in runtime pages that are registering.
+about-debugging-worker-status-registering = Регистрируется
+
+# Displayed for service workers in runtime pages, to label the scope of a worker
+about-debugging-worker-scope =
+ .label = Область видимости
+
+# Displayed for service workers in runtime pages, to label the push service endpoint (url)
+# of a worker
+about-debugging-worker-push-service =
+ .label = Push-сервис
+
+# Displayed as title of the inspect button when service worker debugging is disabled.
+about-debugging-worker-inspect-action-disabled =
+ .title = Отладка Service Worker сейчас отключена для мультипроцессного { -brand-shorter-name }
+
+# Displayed as title of the inspect button for zombie tabs (e.g. tabs loaded via a session restore).
+about-debugging-zombie-tab-inspect-action-disabled =
+ .title = Вкладка не полностью загружена и не может быть отлажена
+
+# Displayed instead of the Main Process debug target when the preference
+# `devtools.browsertoolbox.fission` is true.
+about-debugging-multiprocess-toolbox-name = Инструменты мультипроцессов
+
+# Description for the Multiprocess Toolbox target.
+about-debugging-multiprocess-toolbox-description = Главный процесс и процессы контента целевого браузера
+
+# Alt text used for the close icon of message component (warnings, errors and notifications).
+about-debugging-message-close-icon =
+ .alt = Закрыть сообщение
+
+# Label text used for the error details of message component.
+about-debugging-message-details-label-error = Сведения об ошибке
+
+# Label text used for the warning details of message component.
+about-debugging-message-details-label-warning = Сведения о предупреждении
+
+# Label text used for default state of details of message component.
+about-debugging-message-details-label = Подробности
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/client/accessibility.ftl b/thunderbird-l10n/ru/localization/ru/devtools/client/accessibility.ftl
new file mode 100644
index 0000000000..947371ad8c
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/client/accessibility.ftl
@@ -0,0 +1,100 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These strings are used inside the Accessibility panel.
+
+accessibility-learn-more = Подробнее
+
+accessibility-text-label-header = Текстовые метки и имена
+
+accessibility-keyboard-header = Клавиатура
+
+## Text entries that are used as text alternative for icons that depict accessibility isses.
+
+
+## These strings are used in the overlay displayed when running an audit in the accessibility panel
+
+accessibility-progress-initializing = Инициализация…
+ .aria-valuetext = Инициализация…
+
+# This string is displayed in the audit progress bar in the accessibility panel.
+# Variables:
+# $nodeCount (Integer) - The number of nodes for which the audit was run so far.
+accessibility-progress-progressbar =
+ { $nodeCount ->
+ [one] Проверка { $nodeCount } узла
+ [few] Проверка { $nodeCount } узлов
+ *[many] Проверка { $nodeCount } узлов
+ }
+
+accessibility-progress-finishing = Завершение…
+ .aria-valuetext = Завершение…
+
+## Text entries that are used as text alternative for icons that depict accessibility issues.
+
+accessibility-warning =
+ .alt = Предупреждения
+
+accessibility-fail =
+ .alt = Ошибки
+
+accessibility-best-practices =
+ .alt = Лучшие практики
+
+## Text entries for a paragraph used in the accessibility panel sidebar's checks section
+## that describe that currently selected accessible object has an accessibility issue
+## with its text label or accessible name.
+
+accessibility-text-label-issue-area = Используйте атрибут <code>alt</code> для задания альтернативного текста для элементов <div>area</div> с атрибутом <span>href</span>. <a>Подробнее</a>
+
+accessibility-text-label-issue-dialog = Элементы dialog должны иметь альтернативный текст. <a>Подробнее</a>
+
+accessibility-text-label-issue-document-title = Документы должны иметь атрибут <code>title</code>. <a>Подробнее</a>
+
+accessibility-text-label-issue-embed = Встраиваемое содержимое должно иметь альтернативный текст. <a>Подробнее</a>
+
+accessibility-text-label-issue-figure = Элементы figure с необязательным caption должны иметь альтернативный текст. <a>Подробнее</a>
+
+accessibility-text-label-issue-fieldset = Элементы <code>fieldset</code> должны иметь альтернативный текст. <a>Подробнее</a>
+
+accessibility-text-label-issue-fieldset-legend2 = Используйте элемент <code>legend</code> для задания альтернативного текста для элементов <span>fieldset</span>. <a>Подробнее</a>
+
+accessibility-text-label-issue-form = Элементы форм должны иметь альтернативный текст. <a>Подробнее</a>
+
+accessibility-text-label-issue-form-visible = Элементы форм должны иметь видимую текстовую метку. <a>Подробнее</a>
+
+accessibility-text-label-issue-frame = Элементы <code>frame</code> должны иметь альтернативный текст. <a>Подробнее</a>
+
+accessibility-text-label-issue-glyph = Используйте атрибут <code>alt</code> для задания альтернативного текста для элементов <span>mglyph</span>. <a>Подробнее</a>
+
+accessibility-text-label-issue-heading = Заголовки должны иметь альтернативный текст. <a>Подробнее</a>
+
+accessibility-text-label-issue-heading-content = Заголовки должны иметь видимую текстовую метку. <a>Подробнее</a>
+
+accessibility-text-label-issue-iframe = Используйте атрибут <code>title</code> для описания содержимого <span>iframe</span>. <a>Подробнее</a>
+
+accessibility-text-label-issue-image = Содержимое с изображениями должно иметь альтернативный текст. <a>Подробнее</a>
+
+accessibility-text-label-issue-interactive = Интерактивные элементы должны иметь альтернативный текст. <a>Подробнее</a>
+
+accessibility-text-label-issue-optgroup-label2 = Используйте атрибут <code>label</code> для задания альтернативного текста для элементов <span>optgroup</span>. <a>Подробнее</a>
+
+accessibility-text-label-issue-toolbar = Панели инструментов должны иметь альтернативный текст, когда присутствует более одной панели инструментов. <a>Подробнее</a>
+
+## Text entries for a paragraph used in the accessibility panel sidebar's checks section
+## that describe that currently selected accessible object has a keyboard accessibility
+## issue.
+
+accessibility-keyboard-issue-semantics = Фокусируемые элементы должны иметь интерактивную семантику. <a>Подробнее</a>
+
+accessibility-keyboard-issue-tabindex = Избегайте использования атрибута <code>tabindex</code> со значением больше нуля. <a>Подробнее</a>
+
+accessibility-keyboard-issue-action = Интерактивные элементы должны активироваться при помощи клавиатуры. <a>Подробнее</a>
+
+accessibility-keyboard-issue-focusable = Интерактивные элементы должны быть фокусируемыми. <a>Подробнее</a>
+
+accessibility-keyboard-issue-focus-visible = Фокусируемый элемент не имеет стилей для сфокусированного состояния. <a>Подробнее</a>
+
+accessibility-keyboard-issue-mouse-only = Нажимаемые элементы должны быть фокусируемыми и иметь интерактивную семантику. <a>Подробнее</a>
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/client/application.ftl b/thunderbird-l10n/ru/localization/ru/devtools/client/application.ftl
new file mode 100644
index 0000000000..2b1ef22c03
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/client/application.ftl
@@ -0,0 +1,147 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These strings are used inside the Application panel which is available
+### by setting the preference `devtools-application-enabled` to true.
+
+
+### The correct localization of this file might be to keep it in English, or another
+### language commonly spoken among web developers. You want to make that choice consistent
+### across the developer tools. A good criteria is the language in which you'd find the
+### best documentation on web development on the web.
+
+# Header for the list of Service Workers displayed in the application panel for the current page.
+serviceworker-list-header = Service Worker'ы
+
+# Text displayed next to the list of Service Workers to encourage users to check out
+# about:debugging to see all registered Service Workers.
+serviceworker-list-aboutdebugging = Откройте <a>about:debugging</a> для отображения Service Worker'ов с других доменов
+
+# Text for the button to unregister a Service Worker. Displayed for active Service Workers.
+serviceworker-worker-unregister = Отменить регистрацию
+
+# Text for the debug link displayed for an already started Service Worker. Clicking on the
+# link opens a new devtools toolbox for this service worker. The title attribute is only
+# displayed when the link is disabled.
+serviceworker-worker-debug = Отладить
+ .title = Только запущенные service workers могут быть отлажены
+
+# Alt text for the image icon displayed inside a debug link for a service worker.
+serviceworker-worker-inspect-icon =
+ .alt = Исследовать
+
+# Text for the start link displayed for a registered but not running Service Worker.
+# Clicking on the link will attempt to start the service worker.
+serviceworker-worker-start3 = Запустить
+
+# Text displayed for the updated time of the service worker. The <time> element will
+# display the last update time of the service worker script.
+serviceworker-worker-updated = Обновлён <time>{ DATETIME($date, month: "long", year: "numeric", day: "numeric", hour: "numeric", minute: "numeric", second: "numeric") }</time>
+
+## Service Worker status strings: all serviceworker-worker-status-* strings are also
+## defined in aboutdebugging.properties and should be synchronized with them.
+
+# Service Worker status. A running service worker is registered, currently executed, can
+# be debugged and stopped.
+serviceworker-worker-status-running = Выполняется
+
+# Service Worker status. A stopped service worker is registered but not currently active.
+serviceworker-worker-status-stopped = Остановлен
+
+# Text displayed when no service workers are visible for the current page.
+serviceworker-empty-intro2 = Service worker'ов не найдено
+
+# Link will open https://developer.mozilla.org/docs/Web/API/Service_Worker_API/Using_Service_Workers
+serviceworker-empty-intro-link = Подробнее
+
+# Text displayed when there are no Service Workers to display for the current page,
+# introducing hints to debug Service Worker issues.
+# <a> and <span> are links that will open the webconsole and the debugger, respectively.
+serviceworker-empty-suggestions2 = Если на текущей странице должен быть service worker, вы можете поискать ошибки в <a>Консоли</a> или проверить регистрацию вашего service worker в <span>Отладчике</span>.
+
+# Suggestion to go to about:debugging in order to see Service Workers for all domains.
+# Link will open about:debugging in a new tab.
+serviceworker-empty-suggestions-aboutdebugging2 = Просмотр service worker'ов с других доменов
+
+# Header for the Manifest page when we have an actual manifest
+manifest-view-header = Манифест приложения
+
+# Header for the Manifest page when there's no manifest to inspect
+manifest-empty-intro2 = Манифест веб-приложения не обнаружен
+
+# The link will open https://developer.mozilla.org/en-US/docs/Web/Manifest
+manifest-empty-intro-link = Узнайте, как добавить манифест
+
+# Header for the Errors and Warnings section of Manifest inspection displayed in the application panel.
+manifest-item-warnings = Ошибки и предупреждения
+
+# Header for the Identity section of Manifest inspection displayed in the application panel.
+manifest-item-identity = Идентификатор
+
+# Header for the Presentation section of Manifest inspection displayed in the application panel.
+manifest-item-presentation = Презентация
+
+# Header for the Icon section of Manifest inspection displayed in the application panel.
+manifest-item-icons = Значки
+
+# Text displayed while we are loading the manifest file
+manifest-loading = Загрузка манифеста…
+
+# Text displayed when the manifest has been successfully loaded
+manifest-loaded-ok = Манифест загружен.
+
+# Text displayed as a caption when there has been an error while trying to
+# load the manifest
+manifest-loaded-error = При загрузка манифеста произошла ошибка:
+
+# Text displayed as an error when there has been a Firefox DevTools error while
+# trying to load the manifest
+manifest-loaded-devtools-error = Ошибка инструментов разработчика Firefox
+
+# Text displayed when the page has no manifest available
+manifest-non-existing = Не найден манифест для отладки.
+
+# Text displayed when the page has a manifest embedded in a Data URL and
+# thus we cannot link to it.
+manifest-json-link-data-url = Манифест встроен в Data URL.
+
+# Text displayed at manifest icons to label their purpose, as declared
+# in the manifest.
+manifest-icon-purpose = Назначение: <code>{ $purpose }</code>
+
+# Text displayed as the alt attribute for <img> tags showing the icons in the
+# manifest.
+manifest-icon-img =
+ .alt = Значок
+
+# Text displayed as the title attribute for <img> tags showing the icons in the
+# manifest. `$sizes` is a user-dependent string that has been parsed as a
+# space-separated list of `<width>x<height>` sizes or the keyword `any`.
+manifest-icon-img-title = Значок с размером: { $sizes }
+
+# Text displayed as the title attribute for <img> tags showing the icons in the
+# manifest, in case there's no icon size specified by the user
+manifest-icon-img-title-no-sizes = Неуказанный размер значка
+
+# Sidebar navigation item for Manifest sidebar item section
+sidebar-item-manifest = Манифест
+ .alt = Значок манифеста
+ .title = Манифест
+
+# Sidebar navigation item for Service Workers sidebar item section
+sidebar-item-service-workers = Service Worker'ы
+ .alt = Значок Service Worker'ов
+ .title = Service Worker'ы
+
+# Text for the ALT and TITLE attributes of the warning icon
+icon-warning =
+ .alt = Значок предупреждения
+ .title = Предупреждение
+
+# Text for the ALT and TITLE attributes of the error icon
+icon-error =
+ .alt = Значок ошибки
+ .title = Ошибка
+
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/client/compatibility.ftl b/thunderbird-l10n/ru/localization/ru/devtools/client/compatibility.ftl
new file mode 100644
index 0000000000..807a951a16
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/client/compatibility.ftl
@@ -0,0 +1,55 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Messages used as headers in the main pane
+
+compatibility-selected-element-header = Выбранный элемент
+compatibility-all-elements-header = Все проблемы
+
+## Message used as labels for the type of issue
+
+compatibility-issue-deprecated = (устарело)
+compatibility-issue-experimental = (эксперимент)
+compatibility-issue-prefixneeded = (нужен префикс)
+compatibility-issue-deprecated-experimental = (устарело, эксперимент)
+compatibility-issue-deprecated-prefixneeded = (устарело, нужен префикс)
+compatibility-issue-experimental-prefixneeded = (эксперимент, нужен префикс)
+compatibility-issue-deprecated-experimental-prefixneeded = (устарело, эксперимент, нужен префикс)
+
+## Messages used as labels and titles for buttons in the footer
+
+compatibility-settings-button-label = Настройки
+compatibility-settings-button-title =
+ .title = Настройки
+
+## Messages used as headers in settings pane
+
+compatibility-settings-header = Настройки
+compatibility-target-browsers-header = Целевые браузеры
+
+##
+
+# Text used as the label for the number of nodes where the issue occurred
+# Variables:
+# $number (Number) - The number of nodes where the issue occurred
+compatibility-issue-occurrences =
+ { $number ->
+ [one] { $number } проблема
+ [few] { $number } проблемы
+ *[many] { $number } проблем
+ }
+
+compatibility-no-issues-found = Проблем с совместимостью не найдено.
+compatibility-close-settings-button =
+ .title = Закрыть настройки
+
+# Text used in the element containing the browser icons for a given compatibility issue.
+# Line breaks are significant.
+# Variables:
+# $browsers (String) - A line-separated list of browser information (e.g. Firefox 98\nChrome 99).
+compatibility-issue-browsers-list =
+ .title =
+ Проблемы с совместимостью в:
+ { $browsers }
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/client/perftools.ftl b/thunderbird-l10n/ru/localization/ru/devtools/client/perftools.ftl
new file mode 100644
index 0000000000..f31444c4cf
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/client/perftools.ftl
@@ -0,0 +1,162 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These strings are used in DevTools’ performance-new panel, about:profiling, and
+### the remote profiling panel. There are additional profiler strings in the appmenu.ftl
+### file that are used for the profiler popup.
+
+perftools-intro-title = Настройки профайлера
+perftools-intro-description =
+ Запись запустит profiler.firefox.com в новой вкладке. Все данные хранятся
+ локально, но вы можете поделиться ими, выгрузив их.
+
+## All of the headings for the various sections.
+
+perftools-heading-settings = Все настройки
+perftools-heading-buffer = Настройки буфера
+perftools-heading-features = Функции
+perftools-heading-features-default = Функции (рекомендованные к включению по умолчанию)
+perftools-heading-features-disabled = Отключённые функции
+perftools-heading-features-experimental = Экспериментальные
+perftools-heading-threads = Потоки
+perftools-heading-threads-jvm = Потоки JVM
+perftools-heading-local-build = Локальная сборка
+
+##
+
+perftools-description-intro =
+ Запись запустит <a>profiler.firefox.com</a> в новой вкладке. Все данные хранятся
+ локально, но вы можете поделиться ими, выгрузив их.
+perftools-description-local-build =
+ Если вы профилируете сборку, которую скомпилировали самостоятельно на этой
+ машине, добавьте objdir вашей сборки в список ниже, чтобы
+ её можно было использовать в поиске символьной информации.
+
+## The controls for the interval at which the profiler samples the code.
+
+perftools-range-interval-label = Интервал выборки:
+perftools-range-interval-milliseconds = { NUMBER($interval, maxFractionalUnits: 2) } мс
+
+##
+
+# The size of the memory buffer used to store things in the profiler.
+perftools-range-entries-label = Размер буфера:
+
+perftools-custom-threads-label = Добавить собственные потоки по имени:
+
+perftools-devtools-interval-label = Интервал:
+perftools-devtools-threads-label = Потоки:
+perftools-devtools-settings-label = Настройки
+
+## Various statuses that affect the current state of profiling, not typically displayed.
+
+perftools-status-recording-stopped-by-another-tool = Запись была остановлена другим инструментом.
+perftools-status-restart-required = Для включения этой функции необходимо перезапустить браузер.
+
+## These are shown briefly when the user is waiting for the profiler to respond.
+
+perftools-request-to-stop-profiler = Остановка записи
+perftools-request-to-get-profile-and-stop-profiler = Захват профиля
+
+##
+
+perftools-button-start-recording = Начать запись
+perftools-button-capture-recording = Захватить запись
+perftools-button-cancel-recording = Отменить запись
+perftools-button-save-settings = Сохранить настройки и вернуться
+perftools-button-restart = Перезапустить
+perftools-button-add-directory = Добавить каталог
+perftools-button-remove-directory = Удалить выбранное
+perftools-button-edit-settings = Изменить настройки…
+
+## These messages are descriptions of the threads that can be enabled for the profiler.
+
+perftools-thread-gecko-main =
+ .title = Основные процессы как для родительского процесса, так и для процессов контента
+perftools-thread-compositor =
+ .title = Объединяет различные отрисованные элементы на странице
+perftools-thread-dom-worker =
+ .title = Обрабатывает как web worker'ы, так и service worker'ы
+perftools-thread-renderer =
+ .title = Когда WebRender включён, этот поток выполняет вызовы OpenGL
+perftools-thread-render-backend =
+ .title = Поток WebRender RenderBackend
+perftools-thread-timer =
+ .title = Таймеры обработки потока (setTimeout, setInterval, nsITimer)
+perftools-thread-style-thread =
+ .title = Вычисление стилей разбито на несколько потоков
+pref-thread-stream-trans =
+ .title = Сетевой потоковый транспорт
+perftools-thread-socket-thread =
+ .title = Поток, в котором сетевой код запускает любые вызовы блокирующие сокеты
+perftools-thread-img-decoder =
+ .title = Потоки декодирования изображений
+perftools-thread-dns-resolver =
+ .title = В этом потоке происходит поиск в DNS
+perftools-thread-task-controller =
+ .title = Потоки пула потоков TaskController
+perftools-thread-jvm-gecko =
+ .title = Основной поток Gecko JVM
+perftools-thread-jvm-nimbus =
+ .title = Основные потоки для SDK экспериментов Nimbus
+perftools-thread-jvm-default-dispatcher =
+ .title = Диспетчер по умолчанию для библиотеки сопрограмм Kotlin
+perftools-thread-jvm-glean =
+ .title = Основные потоки для SDK телеметрии Glean
+perftools-thread-jvm-arch-disk-io =
+ .title = Диспетчер ввода-вывода для библиотеки сопрограмм Kotlin
+perftools-thread-jvm-pool =
+ .title = Потоки, созданные в безымянном пуле потоков
+
+##
+
+perftools-record-all-registered-threads = Игнорировать выбор выше и записывать все регистрируемые потоки
+
+perftools-tools-threads-input-label =
+ .title = Эти имена потоков представляют собой список разделенный запятыми, который используется для включения профилирования потоков в профайлере. Имя может быть только частичным совпадением с именем потока, который будет включён. Это поле чувствительно к пробелам.
+
+## Onboarding UI labels. These labels are displayed in the new performance panel UI, when
+## devtools.performance.new-panel-onboarding preference is true.
+
+perftools-onboarding-message = <b>Новое</b>: В Инструменты разработчика теперь интегрирован { -profiler-brand-name }. <a>Узнайте больше</a> об этом новом, мощном инструменте.
+
+perftools-onboarding-close-button =
+ .aria-label = Закрыть приветственное сообщение
+
+## Profiler presets
+
+
+# Presets and their l10n IDs are defined in the file
+# devtools/client/performance-new/popup/background.jsm.js
+# The same labels and descriptions are also defined in appmenu.ftl.
+
+
+# Presets and their l10n IDs are defined in the file
+# devtools/client/performance-new/shared/background.jsm.js
+# The same labels and descriptions are also defined in appmenu.ftl.
+
+perftools-presets-web-developer-label = Веб-разработка
+perftools-presets-web-developer-description = Рекомендуемые настройки для отладки большинства веб-приложений с низкими накладными расходами.
+
+perftools-presets-firefox-label = { -brand-shorter-name }
+perftools-presets-firefox-description = Рекомендуемые настройки для профилирования { -brand-shorter-name }.
+
+perftools-presets-graphics-label = Графика
+perftools-presets-graphics-description = Настройки для выявления ошибок графики в { -brand-shorter-name }.
+
+perftools-presets-media-label = Медиа
+perftools-presets-media-description2 = Настройки для выявления ошибок аудио и видео в { -brand-shorter-name }.
+
+perftools-presets-networking-label = Сеть
+perftools-presets-networking-description = Настройки для выявления сетевых ошибок в { -brand-shorter-name }.
+
+# "Power" is used in the sense of energy (electricity used by the computer).
+perftools-presets-power-label = Электропитание
+perftools-presets-power-description = Настройки для выявления ошибок потребления энергии в { -brand-shorter-name }, с небольшими накладными расходами.
+
+perftools-presets-custom-label = Персональный
+
+##
+
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/client/storage.ftl b/thunderbird-l10n/ru/localization/ru/devtools/client/storage.ftl
new file mode 100644
index 0000000000..7e25e0a452
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/client/storage.ftl
@@ -0,0 +1,109 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These strings are used inside the Storage Inspector.
+
+# Key shortcut used to focus the filter box on top of the data view
+storage-filter-key = CmdOrCtrl+F
+# Hint shown when the selected storage host does not contain any data
+storage-table-empty-text = Для выделенного хоста нет данных
+# Hint shown when the cookies storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/cookies/
+storage-table-type-cookies-hint = Просматривайте и редактируйте куки, выбрав хост. <a data-l10n-name="learn-more-link">Подробнее</a>
+# Hint shown when the local storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/local_storage_session_storage/
+storage-table-type-localstorage-hint = Просматривайте и правьте локальное хранилище, выбрав хост. <a data-l10n-name="learn-more-link">Подробнее</a>
+# Hint shown when the session storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/local_storage_session_storage/
+storage-table-type-sessionstorage-hint = Просматривайте и правьте cессионное хранилище, выбрав хост. <a data-l10n-name="learn-more-link">Подробнее</a>
+# Hint shown when the IndexedDB storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/indexeddb/
+storage-table-type-indexeddb-hint = Просматривайте и удаляйте записи IndexedDB, выбрав базу данных. <a data-l10n-name="learn-more-link">Подробнее</a>
+# Hint shown when the cache storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/cache_storage/
+storage-table-type-cache-hint = Просматривайте и удаляйте записи кеша, выбрав хранилище. <a data-l10n-name="learn-more-link">Подробнее</a>
+# Hint shown when the extension storage type is selected. Clicking the link will open
+# https://firefox-source-docs.mozilla.org/devtools-user/storage_inspector/extension_storage/
+storage-table-type-extensionstorage-hint = Просматривайте и правьте хранилище расширений, выбрав хост. <a data-l10n-name="learn-more-link">Подробнее</a>
+# Placeholder for the searchbox that allows you to filter the table items
+storage-search-box =
+ .placeholder = Поиск элементов
+# Placeholder text in the sidebar search box
+storage-variable-view-search-box =
+ .placeholder = Значения фильтра
+# Add Item button title
+storage-add-button =
+ .title = Добавить элемент
+# Refresh button title
+storage-refresh-button =
+ .title = Обновить элементы
+# Context menu action to delete all storage items
+storage-context-menu-delete-all =
+ .label = Удалить все
+# Context menu action to delete all session cookies
+storage-context-menu-delete-all-session-cookies =
+ .label = Удалить все сессионные куки
+# Context menu action to copy a storage item
+storage-context-menu-copy =
+ .label = Копировать
+# Context menu action to delete storage item
+# Variables:
+# $itemName (String) - Name of the storage item that will be deleted
+storage-context-menu-delete =
+ .label = Удалить «{ $itemName }»
+# Context menu action to add an item
+storage-context-menu-add-item =
+ .label = Добавить элемент
+# Context menu action to delete all storage items from a given host
+# Variables:
+# $host (String) - Host for which we want to delete the items
+storage-context-menu-delete-all-from =
+ .label = Удалить все из «{ $host }»
+
+## Header names of the columns in the Storage Table for each type of storage available
+## through the Storage Tree to the side.
+
+storage-table-headers-cookies-name = Имя
+storage-table-headers-cookies-value = Значение
+storage-table-headers-cookies-expires = Срок действия / Макс. возраст
+storage-table-headers-cookies-size = Размер
+storage-table-headers-cookies-last-accessed = Последний доступ
+storage-table-headers-cookies-creation-time = Создан
+storage-table-headers-cache-status = Состояние
+storage-table-headers-extension-storage-area = Место хранения
+
+## Labels for Storage type groups present in the Storage Tree, like cookies, local storage etc.
+
+storage-tree-labels-cookies = Куки
+storage-tree-labels-local-storage = Локальное хранилище
+storage-tree-labels-session-storage = Сессионное хранилище
+storage-tree-labels-indexed-db = Indexed DB
+storage-tree-labels-cache = Хранилище кеша
+storage-tree-labels-extension-storage = Хранилище расширений
+
+##
+
+# Tooltip for the button that collapses the right panel in the
+# storage UI when the panel is closed.
+storage-expand-pane =
+ .title = Развернуть панель
+# Tooltip for the button that collapses the right panel in the
+# storage UI when the panel is open.
+storage-collapse-pane =
+ .title = Свернуть панель
+# String displayed in the expires column when the cookie is a Session Cookie
+storage-expires-session = Сессионная
+# Heading displayed over the item value in the sidebar
+storage-data = Данные
+# Heading displayed over the item parsed value in the sidebar
+storage-parsed-value = Разобранное значение
+# Warning notification when IndexedDB database could not be deleted immediately.
+# Variables:
+# $dbName (String) - Name of the database
+storage-idb-delete-blocked = База данных «{ $dbName }» будет удалена после того, как все соединения будут закрыты.
+# Error notification when IndexedDB database could not be deleted.
+# Variables:
+# $dbName (String) - Name of the database
+storage-idb-delete-error = База данных «{ $dbName }» не может быть удалена.
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/client/styleeditor.ftl b/thunderbird-l10n/ru/localization/ru/devtools/client/styleeditor.ftl
new file mode 100644
index 0000000000..f139be8646
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/client/styleeditor.ftl
@@ -0,0 +1,57 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+styleeditor-new-button =
+ .tooltiptext = Создание и добавление к документу новой таблицы стилей
+ .accesskey = о
+styleeditor-import-button =
+ .tooltiptext = Импорт и добавление к документу существующей таблицы стилей
+ .accesskey = м
+styleeditor-filter-input =
+ .placeholder = Фильтр таблиц стилей
+styleeditor-visibility-toggle =
+ .tooltiptext = Включить/выключить видимость таблицы стилей
+ .accesskey = х
+styleeditor-visibility-toggle-system =
+ .tooltiptext = Системные таблицы стилей не могут быть отключены
+styleeditor-save-button = Сохранить
+ .tooltiptext = Сохранить эту таблицу стилей в файл
+ .accesskey = х
+styleeditor-options-button =
+ .tooltiptext = Настройки Редактора Стилей
+styleeditor-at-rules = At-правила
+styleeditor-editor-textbox =
+ .data-placeholder = Набирайте CSS здесь.
+styleeditor-no-stylesheet = У этой страницы нет таблицы стилей.
+styleeditor-no-stylesheet-tip = Возможно вы хотите <a data-l10n-name="append-new-stylesheet">добавить новую таблицу стилей</a>?
+styleeditor-open-link-new-tab =
+ .label = Открыть ссылку в новой вкладке
+styleeditor-copy-url =
+ .label = Копировать URL
+styleeditor-find =
+ .label = Найти
+ .accesskey = а
+styleeditor-find-again =
+ .label = Найти следующее
+ .accesskey = й
+styleeditor-go-to-line =
+ .label = Перейти к строке…
+ .accesskey = е
+# Label displayed when searching a term that is not found in any stylesheet path
+styleeditor-stylesheet-all-filtered = Подходящая таблица стилей не найдена.
+# This string is shown in the style sheets list
+# Variables:
+# $ruleCount (Integer) - The number of rules in the stylesheet.
+styleeditor-stylesheet-rule-count =
+ { $ruleCount ->
+ [one] { $ruleCount } правило
+ [few] { $ruleCount } правила
+ *[many] { $ruleCount } правил
+ }
+# Title for the pretty print button in the editor footer.
+styleeditor-pretty-print-button =
+ .title = Красивая таблица стилей для печати
+# Title for the pretty print button in the editor footer, when it's disabled
+styleeditor-pretty-print-button-disabled =
+ .title = Можно красиво печатать только CSS-файлы
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/client/toolbox-options.ftl b/thunderbird-l10n/ru/localization/ru/devtools/client/toolbox-options.ftl
new file mode 100644
index 0000000000..f729a99ba3
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/client/toolbox-options.ftl
@@ -0,0 +1,154 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Localization for Developer Tools options
+
+
+## Default Developer Tools section
+
+# The heading
+options-select-default-tools-label = Инструменты разработчика по умолчанию
+
+# The label for the explanation of the * marker on a tool which is currently not supported
+# for the target of the toolbox.
+options-tool-not-supported-label = * Не поддерживается для текущей цели инструмента
+
+# The label for the heading of group of checkboxes corresponding to the developer tools
+# added by add-ons. This heading is hidden when there is no developer tool installed by add-ons.
+options-select-additional-tools-label = Инструменты разработчика установленные дополнениями
+
+# The label for the heading of group of checkboxes corresponding to the default developer
+# tool buttons.
+options-select-enabled-toolbox-buttons-label = Доступные кнопки инструментов
+
+# The label for the heading of the radiobox corresponding to the theme
+options-select-dev-tools-theme-label = Темы
+
+## Inspector section
+
+# The heading
+options-context-inspector = Инспектор
+
+# The label for the checkbox option to show user agent styles
+options-show-user-agent-styles-label = Отображать стили браузера
+options-show-user-agent-styles-tooltip =
+ .title = Включение приведёт к отображению стилей по умолчанию, применяемых браузером.
+
+# The label for the checkbox option to enable collapse attributes
+options-collapse-attrs-label = Обрезать атрибуты DOM
+options-collapse-attrs-tooltip =
+ .title = Обрезать в инспекторе длинные атрибуты
+
+# The label for the checkbox option to enable the "drag to update" feature
+options-inspector-draggable-properties-label = Щёлкните и перетащите, чтобы изменить значения размера
+options-inspector-draggable-properties-tooltip =
+ .title = Щёлкните и перетащите, чтобы изменить значения размера в представлении правил инспектора.
+
+# The label for the checkbox option to enable simplified highlighting on page elements
+# within the inspector for users who enabled prefers-reduced-motion = reduce
+options-inspector-simplified-highlighters-label = Использовать более простые маркеры с prefers-reduced-motion
+options-inspector-simplified-highlighters-tooltip =
+ .title = Включает упрощенные маркеры, когда включена функция prefers-reduced-motion. Рисует линии вместо закрашенных прямоугольников вокруг выделенных элементов, чтобы избежать эффекта мерцания.
+
+## "Default Color Unit" options for the Inspector
+
+options-default-color-unit-label = Единицы задания цвета по умолчанию
+options-default-color-unit-authored = Как в оригинале
+options-default-color-unit-hex = 16-ричные числа
+options-default-color-unit-hsl = HSL(A)
+options-default-color-unit-rgb = RGB(A)
+options-default-color-unit-hwb = HWB
+options-default-color-unit-name = Названия цветов
+
+## Style Editor section
+
+# The heading
+options-styleeditor-label = Редактор стилей
+
+# The label for the checkbox that toggles autocompletion of css in the Style Editor
+options-stylesheet-autocompletion-label = Автодополнение CSS
+options-stylesheet-autocompletion-tooltip =
+ .title = Автодополнение свойств, значений и селекторов CSS в Редакторе Стилей по мере набора
+
+## Screenshot section
+
+# The heading
+options-screenshot-label = Настройки снятия скриншотов
+
+# Label for the checkbox that toggles screenshot to clipboard feature
+options-screenshot-clipboard-only-label = Скриншот только в буфер обмена
+options-screenshot-clipboard-tooltip2 =
+ .title = Сохранять скриншот прямо в буфер обмена
+
+# Label for the checkbox that toggles the camera shutter audio for screenshot tool
+options-screenshot-audio-label = Проигрывать звук затвора камеры
+options-screenshot-audio-tooltip =
+ .title = Проигрывать звук щелчка затвора камеры при снятии снимка экрана
+
+## Editor section
+
+# The heading
+options-sourceeditor-label = Настройки редактора
+
+options-sourceeditor-detectindentation-tooltip =
+ .title = Угадывать стиль отступов на основе содержимого исходников
+options-sourceeditor-detectindentation-label = Определять стиль отступов
+options-sourceeditor-autoclosebrackets-tooltip =
+ .title = Автоматически вставлять закрывающие скобки
+options-sourceeditor-autoclosebrackets-label = Автозакрытие скобок
+options-sourceeditor-expandtab-tooltip =
+ .title = Использовать пробелы вместо символа табуляции
+options-sourceeditor-expandtab-label = Отступ с помощью пробелов
+options-sourceeditor-tabsize-label = Ширина табуляции
+options-sourceeditor-keybinding-label = Сочетания клавиш
+options-sourceeditor-keybinding-default-label = По умолчанию
+
+## Advanced section
+
+# The heading (this item is also used in perftools.ftl)
+options-context-advanced-settings = Дополнительные параметры
+
+# The label for the checkbox that toggles the HTTP cache on or off
+options-disable-http-cache-label = Отключить HTTP-кеш (когда открыта панель инструментов)
+options-disable-http-cache-tooltip =
+ .title = Включение этой опции отключит HTTP-кеш для всех вкладок, в которых открыта панель инструментов. Эта опция не влияет на Service Worker'ы.
+
+# The label for checkbox that toggles JavaScript on or off
+options-disable-javascript-label = Отключить JavaScript *
+options-disable-javascript-tooltip =
+ .title = Включение этой опции приведёт к отключению JavaScript для текущей вкладки. Если вкладка или панель инструментов будут закрыты, то этот параметр будет сброшен.
+
+# The label for checkbox that toggles chrome debugging, i.e. the devtools.chrome.enabled preference
+options-enable-chrome-label = Включить инструменты отладки browser chrome и дополнений
+options-enable-chrome-tooltip =
+ .title = Включение этой опции позволит вам использовать различные инструменты разработчика в контексте браузера (через Инструменты > Веб-разработка > Инструменты браузера) и отлаживать дополнения из окна Управления дополнениями
+
+# The label for checkbox that toggles remote debugging, i.e. the devtools.debugger.remote-enabled preference
+options-enable-remote-label = Включить удалённую отладку
+options-enable-remote-tooltip2 =
+ .title = Включение этой опции позволит удалённо отлаживать этот экземпляр браузера
+
+# The label for checkbox that enables F12 as a shortcut to open DevTools
+options-enable-f12-label = Использовать клавишу F12, чтобы открыть или закрыть DevTools.
+options-enable-f12-tooltip =
+ .title = Включение этой фукнции привязывает клавишу F12 к открытию или закрытию панели инструментов DevTools.
+
+# The label for checkbox that toggles custom formatters for objects
+options-enable-custom-formatters-label = Включить собственные средства форматирования
+options-enable-custom-formatters-tooltip =
+ .title = Включение этой настройки позволит сайтам определять собственные средства форматирования для объектов DOM
+
+# The label for checkbox that toggles the service workers testing over HTTP on or off.
+options-enable-service-workers-http-label = Включить Service Worker'ы поверх HTTP (когда открыта панель инструментов)
+options-enable-service-workers-http-tooltip =
+ .title = Включение этой опции включит service worker'ы поверх HTTP для всех вкладок, в которых открыта панель инструментов.
+
+# The label for the checkbox that toggles source maps in all tools.
+options-source-maps-label = Включить Карты Исходников
+options-source-maps-tooltip =
+ .title = Если вы включите эту настройку, исходники будут картированы в инструментах.
+
+# The message shown for settings that trigger page reload
+options-context-triggers-page-refresh = * Только текущая сессия, перезагружает страницу
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/client/toolbox.ftl b/thunderbird-l10n/ru/localization/ru/devtools/client/toolbox.ftl
new file mode 100644
index 0000000000..d0fc8ba125
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/client/toolbox.ftl
@@ -0,0 +1,55 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These messages are used in the DevTools toolbox.
+
+
+## These labels are shown in the "..." menu in the toolbox, and represent different
+## commands such as the docking of DevTools, toggling features, and viewing some
+## external links. Some of the commands have the keyboard shortcut shown next to
+## the label.
+
+toolbox-meatball-menu-dock-bottom-label = Закрепить снизу
+toolbox-meatball-menu-dock-left-label = Закрепить слева
+toolbox-meatball-menu-dock-right-label = Закрепить справа
+toolbox-meatball-menu-dock-separate-window-label = Отдельное окно
+
+toolbox-meatball-menu-splitconsole-label = Показать консоль внизу
+toolbox-meatball-menu-hideconsole-label = Скрыть консоль внизу
+
+toolbox-meatball-menu-settings-label = Настройки
+toolbox-meatball-menu-documentation-label = Документация…
+toolbox-meatball-menu-community-label = Сообщество…
+
+# This menu item is only available in the browser toolbox. It forces the popups/panels
+# to stay visible on blur, which is primarily useful for addon developers and Firefox
+# contributors.
+toolbox-meatball-menu-noautohide-label = Отключить автоскрытие всплывающих окон
+
+toolbox-meatball-menu-pseudo-locale-accented = Включить «accented» локаль
+toolbox-meatball-menu-pseudo-locale-bidi = Включить «bidi» локаль
+
+##
+
+
+## These labels are shown in the top-toolbar in the Browser Toolbox and Browser Console
+
+toolbox-mode-browser-toolbox-label = Режим инструментов браузера
+toolbox-mode-browser-console-label = Режим консоли браузера
+
+toolbox-mode-everything-label = Мультипроцессный
+toolbox-mode-everything-sub-label = (Медленнее)
+toolbox-mode-everything-container =
+ .title = Отладка всего во всех процессах
+
+toolbox-mode-parent-process-label = Только родительский процесс
+toolbox-mode-parent-process-sub-label = (Быстро)
+toolbox-mode-parent-process-container =
+ .title = Фокусироваться только на ресурсах родительского процесса.
+
+toolbox-always-on-top-enabled2 = Отключить всегда наверху
+ .title = Это перезапустит Инструменты разработчика
+toolbox-always-on-top-disabled2 = Включить всегда наверху
+ .title = Это перезапустит Инструменты разработчика
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/client/tooltips.ftl b/thunderbird-l10n/ru/localization/ru/devtools/client/tooltips.ftl
new file mode 100644
index 0000000000..740d71e88d
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/client/tooltips.ftl
@@ -0,0 +1,102 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Localization for Developer Tools tooltips.
+
+learn-more = <span data-l10n-name="link">Подробнее</span>>
+
+## In the Rule View when a CSS property cannot be successfully applied we display
+## an icon. When this icon is hovered this message is displayed to explain why
+## the property is not applied.
+## Variables:
+## $property (string) - A CSS property name e.g. "color".
+## $display (string) - A CSS display value e.g. "inline-block".
+
+inactive-css-not-grid-or-flex-container = <strong>{ $property }</strong> не сработает для элемента, так как он не является flex- или сеточным контейнером.
+inactive-css-not-grid-or-flex-container-or-multicol-container = <strong>{ $property }</strong> не сработает для элемента, так как он не является flex-, сеточным или многоколоночным контейнером.
+inactive-css-not-multicol-container = <strong>{ $property }</strong> не сработает для элемента, так как он не является многоколоночным контейнером.
+inactive-css-not-grid-or-flex-item = <strong>{ $property }</strong> не сработает для элемента, так как он не является flex- или сеточным элементом.
+inactive-css-not-grid-item = <strong>{ $property }</strong> не сработает для элемента, так как он не является сеточным элементом.
+inactive-css-not-grid-container = <strong>{ $property }</strong> не сработает для элемента, так как он не является сеточным контейнером.
+inactive-css-not-flex-item = <strong>{ $property }</strong> не сработает для элемента, так как он не является flex-элементом.
+inactive-css-not-flex-container = <strong>{ $property }</strong> не сработает для элемента, так как он не является flex-контейнером.
+inactive-css-not-inline-or-tablecell = <strong>{ $property }</strong> не сработает для элемента, так как он не является inline или table-cell элементом.
+inactive-css-first-line-pseudo-element-not-supported = <strong>{ $property }</strong> не поддерживается на ::first-line псевдоэлементах.
+inactive-css-first-letter-pseudo-element-not-supported = <strong>{ $property }</strong> не поддерживается на псевдоэлементах ::first-letter.
+inactive-css-placeholder-pseudo-element-not-supported = <strong>{ $property }</strong> не поддерживается в псевдоэлементах ::placeholder.
+inactive-css-property-because-of-display = <strong>{ $property }</strong> не сработает для элемента, так как его свойство display задано как <strong>{ $display }</strong>.
+inactive-css-not-display-block-on-floated = Значение свойства <strong>display</strong> было изменено движком на <strong>block</strong>, так как элемент <strong>плавающий</strong>.
+inactive-css-property-is-impossible-to-override-in-visited = Нельзя переопределить <strong>{ $property }</strong> из-за ограничений псевдокласса <strong>:visited</strong>.
+inactive-css-position-property-on-unpositioned-box = <strong>{ $property }</strong> не сработает для элемента, так как он не является позиционированным элементом.
+inactive-text-overflow-when-no-overflow = <strong>{ $property }</strong> не сработает для элемента, так как <strong>overflow:hidden</strong> не установлено.
+inactive-css-not-for-internal-table-elements = <strong>{ $property }</strong> не сработает для внутренних элементов таблиц.
+inactive-css-not-for-internal-table-elements-except-table-cells = <strong>{ $property }</strong> не сработает для внутренних элементов таблиц, кроме их ячеек.
+inactive-css-not-table = <strong>{ $property }</strong> не сработает для элемента, так как он не является таблицей.
+inactive-css-not-table-cell = <strong>{ $property }</strong> не сработает для элемента, так как он не является ячейкой таблицы.
+inactive-scroll-padding-when-not-scroll-container = <strong>{ $property }</strong> не сработает для элемента, так как он не является прокручиваемым.
+inactive-css-border-image = <strong>{ $property }</strong> не сработает для элемента, так как его нельзя применить к внутренним элементам таблицы, где для <strong>border-collapse</strong> задано значение <strong>collapse</strong> на элементе родительской таблицы.
+inactive-css-ruby-element = <strong>{ $property }</strong> не влияет на этот элемент, так как это элемент ruby. Его размер определяется размером шрифта текста ruby.
+inactive-css-highlight-pseudo-elements-not-supported = Выделение псевдоэлементов для <strong>{ $property }</strong> не поддерживается.
+inactive-css-cue-pseudo-element-not-supported = <strong>{ $property }</strong> не поддерживается в псевдоэлементах ::cue.
+# Variables:
+# $lineCount (integer) - The number of lines the element has.
+inactive-css-text-wrap-balance-lines-exceeded =
+ { $lineCount ->
+ [one] <strong>{ $property }</strong> не влияет на этот элемент, поскольку он содержит более { $lineCount } строки.
+ [few] <strong>{ $property }</strong> не влияет на этот элемент, поскольку он содержит более { $lineCount } строк.
+ *[many] <strong>{ $property }</strong> не влияет на этот элемент, поскольку он содержит более { $lineCount } строк.
+ }
+inactive-css-text-wrap-balance-fragmented = <strong>{ $property }</strong> не влияет на этот элемент, поскольку он фрагментирован, т.е. его содержимое разбито на несколько столбцов или страниц.
+
+## In the Rule View when a CSS property cannot be successfully applied we display
+## an icon. When this icon is hovered this message is displayed to explain how
+## the problem can be solved.
+
+inactive-css-not-grid-or-flex-container-fix = Попробуйте добавить <strong>display:grid</strong> или <strong>display:flex</strong>. { learn-more }
+inactive-css-not-grid-or-flex-container-or-multicol-container-fix = Попробуйте добавить <strong>display:grid</strong>, <strong>display:flex</strong> или <strong>columns:2</strong>. { learn-more }
+inactive-css-not-multicol-container-fix = Попробуйте добавить <strong>column-count</strong> или <strong>column-width</strong>. { learn-more }
+inactive-css-not-grid-or-flex-item-fix-3 = Попробуйте добавить <strong>display:grid</strong>, <strong>display:flex</strong>, <strong>display:inline-grid</strong> или <strong>display:inline-flex</strong> к родителю элемента. { learn-more }
+inactive-css-not-grid-item-fix-2 = Попробуйте добавить <strong>display:grid</strong> или <strong>display:inline-grid</strong> к родителю элемента. { learn-more }
+inactive-css-not-grid-container-fix = Попробуйте добавить <strong>display:grid</strong> или <strong>display:inline-grid</strong>. { learn-more }
+inactive-css-not-flex-item-fix-2 = Попробуйте добавить <strong>display:flex</strong> или <strong>display:inline-flex</strong> к родителю элемента. { learn-more }
+inactive-css-not-flex-container-fix = Попробуйте добавить <strong>display:flex</strong> или <strong>display:inline-flex</strong>. { learn-more }
+inactive-css-not-inline-or-tablecell-fix = Попробуйте добавить <strong>display:inline</strong> или <strong>display:table-cell</strong>. { learn-more }
+inactive-css-non-replaced-inline-or-table-row-or-row-group-fix = Попробуйте добавить <strong>display:inline-block</strong> или <strong>display:block</strong>. { learn-more }
+inactive-css-non-replaced-inline-or-table-column-or-column-group-fix = Попробуйте добавить <strong>display:inline-block</strong>. { learn-more }
+inactive-css-not-display-block-on-floated-fix = Попробуйте удалить свойство <strong>float</strong> или добавить <strong>display:block</strong>. { learn-more }
+inactive-css-position-property-on-unpositioned-box-fix = Попробуйте установить для свойства <strong>position</strong> значение, отличное от <strong>static</strong>. { learn-more }
+inactive-text-overflow-when-no-overflow-fix = Попробуйте добавить <strong>overflow:hidden</strong>. { learn-more }
+inactive-css-not-for-internal-table-elements-fix = Попробуйте установить для свойства <strong>display</strong> значение, отличное от <strong>table-cell</strong>, <strong>table-column</strong>, <strong>table-row</strong>, <strong>table-column-group</strong>, <strong>table-row-group</strong> или <strong>table-footer-group</strong>. { learn-more }
+inactive-css-not-for-internal-table-elements-except-table-cells-fix = Попробуйте установить для свойства <strong>display</strong> значение, отличное от <strong>table-column</strong>, <strong>table-row</strong>, <strong>table-column-group</strong>, <strong>table-row-group</strong> или <strong>table-footer-group</strong>. { learn-more }
+inactive-css-not-table-fix = Попробуйте добавить <strong>display:table</strong> или <strong>display:inline-table</strong>. { learn-more }
+inactive-css-not-table-cell-fix = Попробуйте добавить <strong>display:table-cell</strong>. { learn-more }
+inactive-scroll-padding-when-not-scroll-container-fix = Попробуйте добавить <strong>overflow:auto</strong>, <strong>overflow:scroll</strong> или <strong>overflow:hidden</strong>. { learn-more }
+inactive-css-border-image-fix = В элементе родительской таблицы удалите свойство, или измените значение <strong>border-collapse</strong> на значение, отличное от <strong>collapse</strong>. { learn-more }
+inactive-css-ruby-element-fix = Попробуйте изменить <strong>font-size</strong> текста ruby. { learn-more }
+inactive-css-text-wrap-balance-lines-exceeded-fix = Постарайтесь уменьшить количество строк. { learn-more }
+inactive-css-text-wrap-balance-fragmented-fix = Избегайте разделения содержимого элемента, например, удаляя столбцы или используя <strong>page-break-inside:avoid</strong>. { learn-more }
+
+## In the Rule View when a CSS property may have compatibility issues with other browsers
+## we display an icon. When this icon is hovered this message is displayed to explain why
+## the property is incompatible and the platforms it is incompatible on.
+## Variables:
+## $property (string) - A CSS declaration name e.g. "-moz-user-select" that can be a platform specific alias.
+## $rootProperty (string) - A raw CSS property name e.g. "user-select" that is not a platform specific alias.
+
+css-compatibility-default-message = <strong>{ $property }</strong> не поддерживается в следующих браузерах:
+css-compatibility-deprecated-experimental-message = <strong>{ $property }</strong> было экспериментальным свойством, которое теперь устарело по стандартам W3C. Оно не поддерживается в следующих браузерах:
+css-compatibility-deprecated-experimental-supported-message = <strong>{ $property }</strong> было экспериментальным свойством, которое теперь устарело по стандартам W3C.
+css-compatibility-deprecated-message = <strong>{ $property }</strong> устарело по стандартам W3C. Оно не поддерживается в следующих браузерах:
+css-compatibility-deprecated-supported-message = <strong>{ $property }</strong> устарело по стандартам W3C.
+css-compatibility-experimental-message = <strong>{ $property }</strong> является экспериментальным свойством. Оно не поддерживается в следующих браузерах:
+css-compatibility-experimental-supported-message = <strong>{ $property }</strong> является экспериментальным свойством.
+css-compatibility-learn-more-message = <span data-l10n-name="link">Узнайте больше</span> о <strong>{ $rootProperty }</strong>
+
+## In the Rule View when a rule selector can causes issues, we display an icon.
+## When this icon is hovered one or more of those messages are displayed to explain what
+## the issue are.
+
+# :has() should not be translated
+css-selector-warning-unconstrained-has = Этот селектор использует неограниченный <strong>:has()</strong>, что может работать медленно.
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/shared/debugger-paused-reasons.ftl b/thunderbird-l10n/ru/localization/ru/devtools/shared/debugger-paused-reasons.ftl
new file mode 100644
index 0000000000..0c331b1406
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/shared/debugger-paused-reasons.ftl
@@ -0,0 +1,87 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These strings are used inside the Debugger which is available from the Web
+### Developer sub-menu -> 'Debugger', as well as in the "Paused Debugger
+### Overlay" that is displayed in the content page when it pauses.
+
+
+### The correct localization of this file might be to keep it in
+### English, or another language commonly spoken among web developers.
+### You want to make that choice consistent across the developer tools.
+### A good criteria is the language in which you'd find the best
+### documentation on web development on the web.
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused due to a `debugger` statement in the code
+whypaused-debugger-statement = Приостановлено на операторе отладчика
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on a breakpoint
+whypaused-breakpoint = Приостановлено на точке останова
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on an event breakpoint.
+whypaused-event-breakpoint = Приостановлено на точке останова обработчика событий
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on an exception
+whypaused-exception = Приостановлено на исключении
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on a DOM mutation breakpoint
+whypaused-mutation-breakpoint = Приостановлено на изменении DOM
+
+# The text that is displayed to describe an added node which triggers a subtree
+# modification
+whypaused-mutation-breakpoint-added = Добавлено:
+
+# The text that is displayed to describe a removed node which triggers a subtree
+# modification
+whypaused-mutation-breakpoint-removed = Удалено:
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused at a JS execution
+whypaused-interrupted = Приостановлено во время исполнения
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused while stepping in or out of the stack
+whypaused-resume-limit = Приостановлено на этапе захода/выхода
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on a dom event
+whypaused-pause-on-dom-events = Приостановлено на обработчике событий
+
+# The text that is displayed in an info block when evaluating a conditional
+# breakpoint throws an error
+whypaused-breakpoint-condition-thrown = Ошибка с условной точкой останова
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on an xml http request
+whypaused-xhr = Приостановлено на XMLHttpRequest
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on a promise rejection
+whypaused-promise-rejection = Приостановлено на promise rejection
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused at a watchpoint on an object property
+whypaused-get-watchpoint = Приостановлено на чтении свойства
+
+# The text that is displayed in an info block explaining how the debugger is
+# currently paused at a watchpoint on an object property
+whypaused-set-watchpoint = Приостановлено на установке свойства
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on an assert
+whypaused-assert = Приостановлено на утверждении
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on a debugger statement
+whypaused-debug-command = Приостановлено на отлаживаемой функции
+
+# The text that is displayed in a info block explaining how the debugger is
+# currently paused on an event listener breakpoint set
+whypaused-other = Отладчик приостановлен
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/shared/highlighters.ftl b/thunderbird-l10n/ru/localization/ru/devtools/shared/highlighters.ftl
new file mode 100644
index 0000000000..70934b9827
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/shared/highlighters.ftl
@@ -0,0 +1,67 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### This file contains strings used in highlighters.
+### Highlighters are visualizations that DevTools draws on top of content to aid
+### in understanding content sizing, etc.
+
+# The row and column position of a grid cell shown in the grid cell infobar when hovering
+# over the CSS grid outline.
+# Variables
+# $row (integer) - The row index
+# $column (integer) - The column index
+grid-row-column-positions = Строка { $row } / Столбец { $column }
+
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is a grid container.
+gridtype-container = Сеточный контейнер
+
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is a grid item.
+gridtype-item = Сеточный элемент
+
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is both a grid container and a grid item.
+gridtype-dual = Сеточный контейнер/элемент
+
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is a flex container.
+flextype-container = Flex-контейнер
+
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is a flex item.
+flextype-item = Flex-элемент
+
+# The layout type of an element shown in the infobar when hovering over a DOM element and
+# it is both a flex container and a flex item.
+flextype-dual = Flex-контейнер/элемент
+
+# The message displayed in the content page when the user clicks on the
+# "Pick an element from the page" in about:devtools-toolbox inspector panel, when
+# debugging a remote page.
+# Variables
+# $action (string) - Will either be remote-node-picker-notice-action-desktop or
+# remote-node-picker-notice-action-touch
+remote-node-picker-notice = Средство выбора узлов DevTools включено. { $action }
+
+# Text displayed in `remote-node-picker-notice`, when the remote page is on desktop
+remote-node-picker-notice-action-desktop = Щёлкните по элементу, чтобы выбрать его в Инспекторе
+
+# Text displayed in `remote-node-picker-notice`, when the remote page is on Android
+remote-node-picker-notice-action-touch = Нажмите на элемент, чтобы выбрать его в Инспекторе
+
+# The text displayed in the button that is in the notice in the content page when the user
+# clicks on the "Pick an element from the page" in about:devtools-toolbox inspector panel,
+# when debugging a remote page.
+remote-node-picker-notice-hide-button = Скрыть
+
+# The text displayed in a toolbox notification message which is only displayed
+# if prefers-reduced-motion is enabled (via OS-level settings or by using the
+# ui.prefersReducedMotion=1 preference).
+simple-highlighters-message = Когда включено prefers-reduced-motion, на панели настроек можно включить более простой маркер, чтобы избежать мерцания цветов.
+
+# Text displayed in a button inside the "simple-highlighters-message" toolbox
+# notification. "Settings" here refers to the DevTools settings panel.
+simple-highlighters-settings-button = Открыть настройки
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/shared/webconsole-commands.ftl b/thunderbird-l10n/ru/localization/ru/devtools/shared/webconsole-commands.ftl
new file mode 100644
index 0000000000..ec840f9f05
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/shared/webconsole-commands.ftl
@@ -0,0 +1,34 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+# These strings are used inside the Web Console commands
+# which can be executed in the Developer Tools, available in the
+# Browser Tools sub-menu -> 'Web Developer Tools'
+
+# Usage string for :block command
+webconsole-commands-usage-block =
+ :block URL_STRING
+
+ Начать блокировку сетевых запросов
+
+ Принимается только один аргумент URLSTRING — строка без кавычек, которая будет использоваться для блокировки всех запросов, URL-адрес которых включает эту строку.
+ Используйте :unblock или боковую панель блокировки запросов Network Monitor, чтобы отменить блокировку.
+# Usage string for :unblock command
+webconsole-commands-usage-unblock =
+ :unblock URL_STRING
+
+ Прекратить блокировку сетевых запросов
+
+ Принимается только один аргумент — та же самая строка, которая ранее была передана в :block.
+# Usage string for :trace command
+webconsole-commands-usage-trace =
+ :trace
+
+ Включает/отключает трассировщик JavaScript
+
+ Поддерживает следующие аргументы:
+ --logMethod должен быть установлен в «console» для входа в веб-консоль (по умолчанию) или «stdout» для входа в стандартный вывод,
+ --prefix Необязательная строка, которая будет записываться перед всеми журналами трассировки,
+ --help или --usage, чтобы показать это сообщение.
diff --git a/thunderbird-l10n/ru/localization/ru/devtools/startup/key-shortcuts.ftl b/thunderbird-l10n/ru/localization/ru/devtools/startup/key-shortcuts.ftl
new file mode 100644
index 0000000000..bbc2c7ca1e
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/devtools/startup/key-shortcuts.ftl
@@ -0,0 +1,38 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Key pressed to open a toolbox with the default panel selected
+devtools-commandkey-toggle-toolbox = I
+# Alternative key pressed to open a toolbox with the default panel selected
+devtools-commandkey-toggle-toolbox-f12 = VK_F12
+# Key pressed to open the Browser Toolbox, used for debugging Firefox itself
+devtools-commandkey-browser-toolbox = I
+# Key pressed to open the Browser Console, used for debugging Firefox itself
+devtools-commandkey-browser-console = J
+# Key pressed to toggle on the Responsive Design Mode
+devtools-commandkey-responsive-design-mode = M
+# Key pressed to open a toolbox with the inspector panel selected
+devtools-commandkey-inspector = C
+# Key pressed to open a toolbox with the web console panel selected
+devtools-commandkey-webconsole = K
+# Key pressed to open a toolbox with the debugger panel selected
+devtools-commandkey-jsdebugger = Z
+# Key pressed to open a toolbox with the network monitor panel selected
+devtools-commandkey-netmonitor = E
+# Key pressed to open a toolbox with the style editor panel selected
+devtools-commandkey-styleeditor = VK_F7
+# Key pressed to open a toolbox with the performance panel selected
+devtools-commandkey-performance = VK_F5
+# Key pressed to open a toolbox with the storage panel selected
+devtools-commandkey-storage = VK_F9
+# Key pressed to open a toolbox with the DOM panel selected
+devtools-commandkey-dom = W
+# Key pressed to open a toolbox with the accessibility panel selected
+devtools-commandkey-accessibility-f12 = VK_F12
+# Key pressed to start or stop the performance profiler
+devtools-commandkey-profiler-start-stop = VK_1
+# Key pressed to capture a recorded performance profile
+devtools-commandkey-profiler-capture = VK_2
+# Key pressed to toggle the JavaScript tracing
+devtools-commandkey-javascript-tracing-toggle = VK_5
diff --git a/thunderbird-l10n/ru/localization/ru/dom/XMLPrettyPrint.ftl b/thunderbird-l10n/ru/localization/ru/dom/XMLPrettyPrint.ftl
new file mode 100644
index 0000000000..77cea47b7a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/dom/XMLPrettyPrint.ftl
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+xml-nostylesheet = С этим XML-файлом не связана ни одна таблица стилей. Ниже показано дерево элементов.
diff --git a/thunderbird-l10n/ru/localization/ru/dom/media.ftl b/thunderbird-l10n/ru/localization/ru/dom/media.ftl
new file mode 100644
index 0000000000..2d110749d1
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/dom/media.ftl
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+default-audio-output-device-label = Устройство вывода звука по умолчанию
+mediastatus-fallback-title = { -brand-short-name } воспроизводит медиа
diff --git a/thunderbird-l10n/ru/localization/ru/locales-preview/aboutTranslations.ftl b/thunderbird-l10n/ru/localization/ru/locales-preview/aboutTranslations.ftl
new file mode 100644
index 0000000000..68e9d8aafd
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/locales-preview/aboutTranslations.ftl
@@ -0,0 +1,28 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The title of the about:translations page, referencing the translations feature.
+about-translations-title = Translations
+about-translations-header = { -translations-brand-name }
+about-translations-results-placeholder = Translation
+# Text displayed on from-language dropdown when no language is selected
+about-translations-detect = Detect language
+# Text displayed on a language dropdown when the language is in beta
+# Variables:
+# $language (string) - The localized display name of the language
+about-translations-displayname-beta = { $language } BETA
+# Text displayed on from-language dropdown when a language is detected
+# Variables:
+# $language (string) - The localized display name of the detected language
+about-translations-detect-lang = Detect language ({ $language })
+# Text displayed on from-language dropdown when a beta language is detected
+# Variables:
+# $language (string) - The localized display name of the detected language
+about-translations-detect-lang-beta = Detect language ({ $language } BETA)
+# Text displayed on to-language dropdown when no language is selected
+about-translations-select = Select language
+about-translations-textarea =
+ .placeholder = Add text to translate
+about-translations-no-support = Your device does not meet the minimum requirements to use this feature. Try on another device.
+about-translations-engine-error = The translations engine failed to load.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/about3Pane.ftl b/thunderbird-l10n/ru/localization/ru/messenger/about3Pane.ftl
new file mode 100644
index 0000000000..1d21ee3265
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/about3Pane.ftl
@@ -0,0 +1,426 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Message List Header Bar
+
+quick-filter-button =
+ .title = Включить/выключить панель быстрого фильтра
+quick-filter-button-label = Быстрый фильтр
+thread-pane-header-display-button =
+ .title = Настройки отображения списка сообщений
+# Variables:
+# $count (Number) - The number of messages in this folder.
+thread-pane-folder-message-count =
+ { $count ->
+ [one] { $count } сообщение
+ [few] { $count } сообщения
+ *[many] { $count } сообщений
+ }
+# Variables:
+# $count (Number) - The number of messages currently selected.
+thread-pane-folder-selected-count =
+ { $count ->
+ [one] { $count } выбрано
+ [few] { $count } выбраны
+ *[many] { $count } выбрано
+ }
+thread-pane-header-context-table-view =
+ .label = В виде таблицы
+thread-pane-header-context-cards-view =
+ .label = В виде карт
+thread-pane-header-context-hide =
+ .label = Скрыть заголовок списка сообщений
+
+## Quick Filter Bar
+
+# The tooltip to display when the user hovers over the sticky button
+# (currently displayed as a push-pin). When active, the sticky button
+# causes the current filter settings to be retained when the user changes
+# folders or opens new tabs. (When inactive, only the state of the text
+# filters are propagated between folder changes and when opening new tabs.)
+quick-filter-bar-sticky =
+ .title = Держать фильтры применёнными при переключении папок
+# The tooltip for the filter button that replaces the quick filter buttons with
+# a dropdown menu.
+quick-filter-bar-dropdown =
+ .title = Меню быстрого фильтра
+quick-filter-bar-dropdown-unread =
+ .label = Непрочитанные
+quick-filter-bar-dropdown-starred =
+ .label = Звёздочка
+quick-filter-bar-dropdown-inaddrbook =
+ .label = Контакт
+quick-filter-bar-dropdown-tags =
+ .label = Метки
+quick-filter-bar-dropdown-attachment =
+ .label = Вложения
+# The tooltip for the filter button that causes us to filter results to only
+# include unread messages.
+quick-filter-bar-unread =
+ .title = Показывать только непрочитанные сообщения
+# The label for the filter button that causes us to filter results to only
+# include unread messages.
+quick-filter-bar-unread-label = Непрочитанные
+# The tooltip for the filter button that causes us to filter results to only
+# include messages that have been starred/flagged.
+quick-filter-bar-starred =
+ .title = Показывать только сообщения, отмеченные звёздочкой
+# The label for the filter button that causes us to filter results to only
+# include messages that have been starred/flagged.
+quick-filter-bar-starred-label = Звёздочка
+# The tooltip for the filter button that causes us to filter results to only
+# include messages from contacts in one of the user's non-remote address
+# books.
+quick-filter-bar-inaddrbook =
+ .title = Показывать только сообщения от людей в вашей адресной книге
+# The label for the filter button that causes us to filter results to only
+# include messages from contacts in one of the user's non-remote address
+# books.
+quick-filter-bar-inaddrbook-label = Контакт
+# The tooltip for the filter button that causes us to filter results to only
+# include messages with at least one tag on them.
+quick-filter-bar-tags =
+ .title = Показывать только сообщения с метками
+# The label for the filter button that causes us to filter results to only
+# include messages with at least one tag on them.
+quick-filter-bar-tags-label = Метки
+# The tooltip for the filter button that causes us to filter results to only
+# include messages with attachments.
+quick-filter-bar-attachment =
+ .title = Показывать только сообщения со вложениями
+# The label for the filter button that causes us to filter results to only
+# include messages with attachments.
+quick-filter-bar-attachment-label = Вложения
+# The contents of the results box when there is a filter active but there
+# are no messages matching the filter.
+quick-filter-bar-no-results = Не найдено
+# This is used to populate the results box; it either displays the
+# number of messages found using this string, that there are no messages
+# (using quick-filter-bar-no-results), or the box is hidden.
+# Variables:
+# $count (Number) - The number of messages that match selected filters.
+quick-filter-bar-results =
+ { $count ->
+ [one] { $count } сообщение
+ [few] { $count } сообщения
+ *[many] { $count } сообщений
+ }
+# Keyboard shortcut for the text search box.
+# This should match quick-filter-bar-show in messenger.ftl.
+quick-filter-bar-textbox-shortcut =
+ { PLATFORM() ->
+ [macos] ⇧ ⌘ K
+ *[other] Ctrl+Shift+K
+ }
+# This is the empty text for the text search box.
+# The goal is to convey to the user that typing in the box will filter
+# the messages and that there is a hotkey they can press to get to the
+# box faster.
+quick-filter-bar-textbox =
+ .placeholder = Фильтровать эти сообщения <{ quick-filter-bar-textbox-shortcut }>
+quick-filter-bar-search =
+ .label = Фильтрация сообщений:
+# Keyboard shortcut for the text search box.
+# This should match quick-filter-bar-show in messenger.ftl.
+quick-filter-bar-search-shortcut =
+ { PLATFORM() ->
+ [macos] <kbd>⇧</kbd> <kbd>⌘</kbd> <kbd>K</kbd>
+ *[other] <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>K</kbd>
+ }
+# This is the empty text for the text search box.
+# The goal is to convey to the user that typing in the box will filter the
+# messages and that there is a hotkey they can press to get to the box faster.
+quick-filter-bar-search-placeholder-with-key = Фильтровать сообщения… { quick-filter-bar-search-shortcut }
+# Label of the search button in the quick filter bar text box. Clicking it will
+# launch a global search.
+quick-filter-bar-search-button =
+ .alt = Искать везде
+# Tooltip of the Any-of/All-of tagging mode selector.
+quick-filter-bar-boolean-mode =
+ .title = Режим тегов фильтрации
+# The Any-of tagging mode.
+quick-filter-bar-boolean-mode-any =
+ .label = Любое из
+ .title = Должны подходить под хотя бы один из выбранных тегов с критерием
+# The All-of tagging mode.
+quick-filter-bar-boolean-mode-all =
+ .label = Все из
+ .title = Должны подходить под все выбранные теги с критериями
+# This label explains what the sender/recipients/subject/body buttons do.
+# This string should ideally be kept short because the label and the text
+# filter buttons share their bar (that appears when there is text in the text
+# filter box) with the list of tags when the tag filter is active, and the
+# tag sub-bar wants as much space as possible. (Overflow is handled by an
+# arrow scroll box.)
+quick-filter-bar-text-filter-explanation = Фильтр сообщений по:
+# The button label that toggles whether the text filter searches the message
+# sender for the string.
+quick-filter-bar-text-filter-sender = Отправителю
+# The button label that toggles whether the text filter searches the message
+# recipients (to, cc) for the string.
+quick-filter-bar-text-filter-recipients = Получателям
+# The button label that toggles whether the text filter searches the message
+# subject for the string.
+quick-filter-bar-text-filter-subject = Теме
+# The button label that toggles whether the text filter searches the message
+# body for the string.
+quick-filter-bar-text-filter-body = Телу
+# The first line of the panel popup that tells the user we found no matches
+# but we can convert to a global search for them.
+quick-filter-bar-gloda-upsell-line1 = Продолжить этот поиск по всем папкам
+# The second line of the panel popup that tells the user we found no matches.
+# Variables:
+# $text (String) - What the user has typed so far.
+quick-filter-bar-gloda-upsell-line2 = Нажмите ещё раз ‘Enter’ для продолжения поиска по: { $text }
+
+## Folder pane
+
+folder-pane-get-messages-button =
+ .title = Получить сообщения
+folder-pane-get-all-messages-menuitem =
+ .label = Все новые сообщения
+ .accesskey = с
+folder-pane-write-message-button = Создать
+ .title = Создать новое сообщение
+folder-pane-more-menu-button =
+ .title = Настройки панели папок
+# Context menu item to show/hide different folder types in the folder pane
+folder-pane-header-folder-modes =
+ .label = Режимы папок
+# Context menu item to toggle display of "Get messages" button in folder pane header
+folder-pane-header-context-toggle-get-messages =
+ .label = Показать «Получить сообщения»
+# Context menu item to toggle display of "New Message" button in folder pane header
+folder-pane-header-context-toggle-new-message =
+ .label = Показать «Cоздать сообщение»
+folder-pane-header-context-hide =
+ .label = Скрыть заголовок панели папок
+folder-pane-show-total-toggle =
+ .label = Показать общее количество сообщений
+# Context menu item to show or hide folder sizes
+folder-pane-header-toggle-folder-size =
+ .label = Показать размер папки
+folder-pane-header-hide-local-folders =
+ .label = Скрыть локальные папки
+folder-pane-mode-context-button =
+ .title = Настройки режима папок
+folder-pane-mode-context-toggle-compact-mode =
+ .label = Компактный вид
+ .accesskey = о
+folder-pane-mode-move-up =
+ .label = Вверх
+folder-pane-mode-move-down =
+ .label = Вниз
+# Variables:
+# $count (Number) - Number of unread messages.
+folder-pane-unread-aria-label =
+ { $count ->
+ [one] { $count } непрочитанное сообщение
+ [few] { $count } непрочитанных сообщения
+ *[many] { $count } непрочитанных сообщений
+ }
+# Variables:
+# $count (Number) - Number of total messages.
+folder-pane-total-aria-label =
+ { $count ->
+ [one] Всего { $count } сообщение
+ [few] Всего { $count } сообщения
+ *[many] Всего { $count } сообщений
+ }
+
+## Message thread pane
+
+threadpane-column-header-select =
+ .title = Выделить/Снять выделение всех сообщений
+threadpane-column-header-select-all =
+ .title = Выбрать все сообщения
+threadpane-column-header-deselect-all =
+ .title = Отменить выбор всех сообщений
+threadpane-column-label-select =
+ .label = Выберите сообщения
+threadpane-cell-select =
+ .aria-label = Выберите сообщение
+threadpane-column-header-thread =
+ .title = Переключить просмотр сообщений по обсуждениям
+threadpane-column-label-thread =
+ .label = Обсуждение
+threadpane-cell-thread =
+ .aria-label = Статус темы
+threadpane-column-header-flagged =
+ .title = Упорядочивать по наличию звёздочки
+threadpane-column-label-flagged =
+ .label = Звёздочка
+threadpane-cell-flagged =
+ .aria-label = Звезда
+threadpane-flagged-cell-label = Звёздочка
+threadpane-column-header-attachments =
+ .title = Упорядочивать по наличию вложений
+threadpane-column-label-attachments =
+ .label = Вложения
+threadpane-cell-attachments =
+ .aria-label = Вложения
+threadpane-attachments-cell-label = Вложения
+threadpane-column-header-spam =
+ .title = Сортировать по статусу спама
+threadpane-column-label-spam =
+ .label = Спам
+threadpane-cell-spam =
+ .aria-label = Статус спама
+threadpane-spam-cell-label = Спам
+threadpane-column-header-unread-button =
+ .title = Сортировать по статусу чтения
+threadpane-column-label-unread-button =
+ .label = Статус прочтения
+threadpane-cell-read-status =
+ .aria-label = Статус прочтения
+threadpane-read-cell-label = Прочитано
+threadpane-unread-cell-label = Непрочитано
+threadpane-column-header-sender = От
+ .title = Упорядочивать по автору
+threadpane-column-label-sender =
+ .label = От
+threadpane-cell-sender =
+ .aria-label = От
+threadpane-column-header-recipient = Адресат
+ .title = Упорядочивать по получателю
+threadpane-column-label-recipient =
+ .label = Адресат
+threadpane-cell-recipient =
+ .aria-label = Получатель
+threadpane-column-header-correspondents = Отправители
+ .title = Упорядочивать по отправителям
+threadpane-column-label-correspondents =
+ .label = Отправители
+threadpane-cell-correspondents =
+ .aria-label = Отправители
+threadpane-column-header-subject = Тема
+ .title = Упорядочивать по теме
+threadpane-column-label-subject =
+ .label = Тема
+threadpane-cell-subject =
+ .aria-label = Тема
+threadpane-column-header-date = Дата
+ .title = Упорядочивать по дате отправки
+threadpane-column-label-date =
+ .label = Дата
+threadpane-cell-date =
+ .aria-label = Дата
+threadpane-column-header-received = Получено
+ .title = Упорядочивать по дате получения
+threadpane-column-label-received =
+ .label = Получено
+threadpane-cell-received =
+ .aria-label = Дата получения
+threadpane-column-header-status = Состояние
+ .title = Упорядочивать по состоянию
+threadpane-column-label-status =
+ .label = Состояние
+threadpane-cell-status =
+ .aria-label = Статус
+threadpane-column-header-size = Размер
+ .title = Упорядочивать по размеру
+threadpane-column-label-size =
+ .label = Размер
+threadpane-cell-size =
+ .aria-label = Размер
+threadpane-column-header-tags = Метка
+ .title = Упорядочивать по меткам
+threadpane-column-label-tags =
+ .label = Метка
+threadpane-cell-tags =
+ .aria-label = Метки
+threadpane-column-header-account = Учётная запись
+ .title = Упорядочивать по учётной записи
+threadpane-column-label-account =
+ .label = Учётная запись
+threadpane-cell-account =
+ .aria-label = Учётная запись
+threadpane-column-header-priority = Важность
+ .title = Упорядочивать по важности
+threadpane-column-label-priority =
+ .label = Важность
+threadpane-cell-priority =
+ .aria-label = Важность
+threadpane-column-header-unread = Не прочитано
+ .title = Число непрочитанных сообщений в обсуждении
+threadpane-column-label-unread =
+ .label = Не прочитано
+threadpane-cell-unread =
+ .aria-label = Количество непрочитанных сообщений
+threadpane-column-header-total = Всего
+ .title = Общее число сообщений в обсуждении
+threadpane-column-label-total =
+ .label = Всего
+threadpane-cell-total =
+ .aria-label = Общее число сообщений
+threadpane-column-header-location = Расположение
+ .title = Упорядочивать по расположению
+threadpane-column-label-location =
+ .label = Расположение
+threadpane-cell-location =
+ .aria-label = Расположение
+threadpane-column-header-id = Порядок получения
+ .title = Упорядочивать по порядку получения
+threadpane-column-label-id =
+ .label = Порядок получения
+threadpane-cell-id =
+ .aria-label = Заявка принята
+threadpane-column-header-delete =
+ .title = Удалить сообщение
+threadpane-column-label-delete =
+ .label = Удалить
+threadpane-cell-delete =
+ .aria-label = Удалить
+
+## Message state variations
+
+threadpane-message-new =
+ .alt = Индикатор нового сообщения
+ .title = Новое сообщение
+threadpane-message-replied =
+ .alt = Индикатор ответа
+ .title = На сообщение отправлен ответ
+threadpane-message-redirected =
+ .alt = Индикатор перенаправления
+ .title = Сообщение было перенаправлено
+threadpane-message-forwarded =
+ .alt = Индикатор пересылки
+ .title = Сообщение было переслано
+threadpane-message-replied-forwarded =
+ .alt = Индикатор ответа и пересылки
+ .title = На сообщение был отправлен ответ и оно было переслано
+threadpane-message-replied-redirected =
+ .alt = Индикатор ответа и перенаправления
+ .title = На сообщение был отправлен ответ и оно было перенаправлено
+threadpane-message-forwarded-redirected =
+ .alt = Индикатор пересылки и перенаправления
+ .title = Сообщение было переслано и перенаправлено
+threadpane-message-replied-forwarded-redirected =
+ .alt = Индикатор ответа, пересылки и перенаправления
+ .title = На сообщение был отправлен ответ и оно было переслано и перенаправлено
+apply-columns-to-menu =
+ .label = Применить набор колонок к…
+apply-current-view-to-menu =
+ .label = Применить текущий вид к…
+apply-current-view-to-folder =
+ .label = Папке…
+apply-current-view-to-folder-children =
+ .label = Папке и вложенным папкам…
+
+## Apply columns confirmation dialog
+
+apply-changes-to-folder-title = Применить изменения?
+# Variables:
+# $name (String): The name of the folder to apply to.
+apply-current-columns-to-folder-message = Применить набор колонок текущей папки к { $name }?
+# Variables:
+# $name (String): The name of the folder to apply to.
+apply-current-columns-to-folder-with-children-message = Применить набор колонок текущей папки к { $name } и её вложенным папкам?
+# Variables:
+# $name (String): The name of the folder to apply to.
+apply-current-view-to-folder-message = Применить вид текущей папки к { $name }?
+# Variables:
+# $name (String): The name of the folder to apply to.
+apply-current-view-to-folder-with-children-message = Применить вид текущей папки к { $name } и вложенным в неё папкам?
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/aboutAddonsExtra.ftl b/thunderbird-l10n/ru/localization/ru/messenger/aboutAddonsExtra.ftl
new file mode 100644
index 0000000000..40b4f4d597
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/aboutAddonsExtra.ftl
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+add-on-options-button =
+ .title = Настройки дополнений
+
+add-on-search-alternative-button-label = Найти альтернативное дополнение
+
+atn-addons-heading-search-input =
+ .placeholder = Поиск на addons.thunderbird.net
+
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/aboutDialog.ftl b/thunderbird-l10n/ru/localization/ru/messenger/aboutDialog.ftl
new file mode 100644
index 0000000000..43915eb97c
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/aboutDialog.ftl
@@ -0,0 +1,48 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+about-update-whats-new = Что нового
+about-dialog-title = О { -brand-full-name }
+release-notes-link = Примечания к выпуску
+update-internal-error = Не удалось проверить наличие обновлений из-за внутренней ошибки. Обновления доступны по адресу <a data-l10n-name="manual-link"/>
+update-check-for-updates-button = Проверить на обновления
+ .accesskey = о
+update-update-button = Перезапустить { -brand-shorter-name } для обновления
+ .accesskey = е
+update-checking-for-updates = Проверка наличия обновлений…
+update-downloading-message = Загрузка обновления — <span data-l10n-name="download-status"></span>
+update-applying = Применение обновления…
+update-downloading = <img data-l10n-name="icon"/>Загрузка обновления — <span data-l10n-name="download-status"></hspan>
+update-failed = Обновление не удалось. <a data-l10n-name="failed-link">Загрузите последнюю версию</a>
+update-admin-disabled = Обновления отключены вашим системным администратором
+update-no-updates-found = Установлена последняя версия { -brand-short-name }
+update-other-instance-handling-updates = Обновление производится другим процессом { -brand-short-name }
+update-manual = Обновления доступны по адресу <a data-l10n-name="manual-link"/>
+update-unsupported = Вы не можете производить дальнейшие обновления на этой системе. <a data-l10n-name="unsupported-link">Подробнее</a>
+update-restarting = Перезапуск…
+# Variables:
+# $channel (String): description of the update channel (e.g. "release", "beta", "nightly" etc.)
+channel-description = Сейчас вы находитесь на канале обновлений <span data-l10n-name="current-channel">{ $channel }</span> .
+warning-desc-version = { -brand-short-name } является экспериментальным и может быть нестабилен.
+warning-desc-telemetry = Он автоматически отправляет информацию о производительности, аппаратном обеспечении, использовании и настройках в { -vendor-short-name }, чтобы помочь сделать { -brand-short-name } лучше.
+# Example of resulting string: 66.0.1 (64-bit)
+# Variables:
+# $version (String): version of Thunderbird, e.g. 66.0.1
+# $bits (Number): bits of the architecture (32 or 64)
+aboutDialog-version = { $version } ({ $bits }-разрядный)
+# Example of resulting string: 66.0a1 (2019-01-16) (64-bit)
+# Variables:
+# $version (String): version of Thunderbird for Daily builds, e.g. 66.0a1
+# $isodate (String): date in ISO format, e.g. 2019-01-16
+# $bits (Number): bits of the architecture (32 or 64)
+aboutDialog-version-nightly = { $version } ({ $isodate }) ({ $bits }-разрядный)
+aboutdialog-update-checking-failed = Не удалось проверить наличие обновлений.
+community-experimental = <a data-l10n-name="community-exp-mozilla-link">{ -vendor-short-name }</a> является <a data-l10n-name="community-exp-credits-link">глобальным сообществом</a>, работающим над тем, чтобы Интернет оставался открытым, публичным и доступным для всех и каждого.
+community-desc = { -brand-short-name } создан <a data-l10n-name="community-mozilla-link">{ -vendor-short-name }</a> — <a data-l10n-name="community-credits-link">глобальным сообществом</a>, работающим над тем, чтобы Интернет оставался открытым, публичным и доступным для всех и каждого.
+about-donation = Хотите помочь? <a data-l10n-name="helpus-donate-link">Сделайте пожертвование</a> или <a data-l10n-name="helpus-get-involved-link">присоединяйтесь!</a>
+bottom-links-license = Информация о лицензии
+bottom-links-rights = Права конечного пользователя
+bottom-links-privacy = Политика приватности
+cmd-close-mac-command-key =
+ .key = w
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/aboutImport.ftl b/thunderbird-l10n/ru/localization/ru/messenger/aboutImport.ftl
new file mode 100644
index 0000000000..e4486c9a0c
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/aboutImport.ftl
@@ -0,0 +1,284 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+
+import-page-title = Импорт
+
+export-page-title = Экспорт
+
+## Header
+
+import-start = Инструмент импорта
+
+import-start-title = Импорт настроек или данных из приложения или файла.
+
+import-start-description = Выберите источник, из которого вы хотите импортировать. Позже вам будет предложено выбрать, какие данные необходимо импортировать.
+
+import-from-app = Импорт из приложения
+
+import-file = Импорт из файла
+
+import-file-title = Выберите файл для импорта его содержимого.
+
+import-file-description = Выберите для импорта резервную копию профиля, адресных книг или календарей.
+
+import-address-book-title = Импорт файла адресной книги
+
+import-calendar-title = Импорт файла календаря
+
+export-profile = Экспорт
+
+## Buttons
+
+button-back = Назад
+
+button-continue = Продолжить
+
+button-export = Экспортировать
+
+button-finish = Завершить
+
+## Import from app steps
+
+app-name-thunderbird = Thunderbird
+
+app-name-seamonkey = SeaMonkey
+
+app-name-outlook = Outlook
+
+app-name-becky = Becky! Internet Mail
+
+app-name-apple-mail = Apple Mail
+
+source-thunderbird = Импорт из другой установки { app-name-thunderbird }
+
+source-thunderbird-description = Импорт настроек, фильтров, сообщений и других данных из профиля { app-name-thunderbird }.
+
+source-seamonkey = Импорт из установки { app-name-seamonkey }
+
+source-seamonkey-description = Импорт настроек, фильтров, сообщений и других данных из профиля { app-name-seamonkey }.
+
+source-outlook = Импорт из { app-name-outlook }
+
+source-outlook-description = Импорт учётных записей, адресных книг и сообщений из { app-name-outlook }.
+
+source-becky = Импорт из { app-name-becky }
+
+source-becky-description = Импорт адресных книг и сообщений из { app-name-becky }.
+
+source-apple-mail = Импорт из { app-name-apple-mail }
+
+source-apple-mail-description = Импорт сообщений из { app-name-apple-mail }.
+
+source-file2 = Импорт из файла
+
+source-file-description = Выберите файл для импорта адресных книг, календарей или резервной копии профиля (ZIP-файл).
+
+## Import from file selections
+
+file-profile2 = Импорт резервной копии профиля
+
+file-profile-description = Выберите ранее сохранённый профиль Thunderbird (.zip)
+
+file-calendar = Импорт календарей
+
+file-calendar-description = Выберите файл, содержащий экспортированные календари или события (.ics)
+
+file-addressbook = Импорт адресных книг
+
+file-addressbook-description = Выберите файл, содержащий экспортированные адресные книги и контакты.
+
+## Import from app profile steps
+
+from-app-thunderbird = Импорт из профиля { app-name-thunderbird }
+
+from-app-seamonkey = Импорт из профиля { app-name-seamonkey }
+
+from-app-outlook = Импорт из { app-name-outlook }
+
+from-app-becky = Импорт из { app-name-becky }
+
+from-app-apple-mail = Импорт из { app-name-apple-mail }
+
+profiles-pane-title-thunderbird = Импорт настроек и данных из профиля { app-name-thunderbird }.
+
+profiles-pane-title-seamonkey = Импорт настроек и данных из профиля { app-name-seamonkey }.
+
+profiles-pane-title-outlook = Импорт данных из { app-name-outlook }.
+
+profiles-pane-title-becky = Импорт данных из { app-name-becky }.
+
+profiles-pane-title-apple-mail = Импорт сообщений из { app-name-apple-mail }.
+
+profile-source = Импорт из профиля
+
+# $profileName (string) - name of the profile
+profile-source-named = Импорт из профиля <strong>«{ $profileName }»</strong>
+
+profile-file-picker-directory = Выберите папку профиля
+
+profile-file-picker-archive = Выберите <strong>ZIP</strong>-файл.
+
+profile-file-picker-archive-description = Размнер ZIP-файла не должен превышать 2 ГБ.
+
+profile-file-picker-archive-title = Выберите ZIP-файл (до 2ГБ)
+
+items-pane-title2 = Выберите, что импортировать:
+
+items-pane-directory = Каталог:
+
+items-pane-profile-name = Имя профиля:
+
+items-pane-checkbox-accounts = Учётные записи и настройки
+
+items-pane-checkbox-address-books = Адресные книги
+
+items-pane-checkbox-calendars = Календари
+
+items-pane-checkbox-mail-messages = Почтовые сообщения
+
+items-pane-override = Любые существующие или идентичные данные не будут перезаписаны.
+
+## Import from address book file steps
+
+import-from-addr-book-file-description = Выберите формат файла, содержащего данные вашей адресной книги.
+
+addr-book-csv-file = Файл данных, разделенных запятыми или табуляциями (.csv, .tsv)
+
+addr-book-ldif-file = LDIF-файл (.ldif)
+
+addr-book-vcard-file = vCard-файл (.vcf, .vcard)
+
+addr-book-sqlite-file = Файл базы данных SQLite (.sqlite)
+
+addr-book-mab-file = Файл базы данных Mork (.mab)
+
+addr-book-file-picker = Выберите файл адресной книги
+
+addr-book-csv-field-map-title = Сопоставление имен полей
+
+addr-book-csv-field-map-desc = Выберите поля адресной книги, соответствующие полям источника. Снимите флажки с полей, которые не хотите импортировать.
+
+addr-book-directories-title = Выберите, куда импортировать выбранные данные
+
+addr-book-directories-pane-source = Исходный файл:
+
+# $addressBookName (string) - name of the new address book that would be created.
+addr-book-import-into-new-directory2 = Создать новый каталог с именем <strong>«{ $addressBookName }»</strong>
+
+# $addressBookName (string) - name of the address book to import into
+addr-book-summary-title = Импорт выбранных данных в каталог «{ $addressBookName }»
+
+# $addressBookName (string) - name of the address book that will be created.
+addr-book-summary-description = Будет создана новая адресная книга с именем «{ $addressBookName }».
+
+## Import from calendar file steps
+
+import-from-calendar-file-desc = Выберите файл iCalendar (.ics), который вы хотите импортировать.
+
+calendar-items-title = Выберите элементы для импорта.
+
+calendar-items-loading = Загрузка элементов…
+
+calendar-items-filter-input =
+ .placeholder = Фильтр элементов…
+
+calendar-select-all-items = Выделить все
+
+calendar-deselect-all-items = Снять выделение со всех
+
+calendar-target-title = Выберите, куда импортировать выбранные объекты.
+
+# $targetCalendar (string) - name of the new calendar that would be created
+calendar-import-into-new-calendar2 = Создать новый календарь с именем <strong>«{ $targetCalendar }»</strong>
+
+# $itemCount (number) - count of selected items (tasks, events) that will be imported
+# $targetCalendar (string) - name of the calendar the items will be imported into
+calendar-summary-title =
+ { $itemCount ->
+ [one] Импорт { $itemCount } элемента в календарь «{ $targetCalendar }»
+ [few] Импорт { $itemCount } элементов в календарь «{ $targetCalendar }»
+ *[many] Импорт { $itemCount } элементов в календарь «{ $targetCalendar }»
+ }
+
+# $targetCalendar (string) - name of the calendar that will be created
+calendar-summary-description = Будет создан новый календарь с именем «{ $targetCalendar }».
+
+## Import dialog
+
+# $progressPercent (string) - percent formatted progress (for example "10%")
+progress-pane-importing2 = Импорт… { $progressPercent }
+
+# $progressPercent (string) - percent formatted progress (for example "10%")
+progress-pane-exporting2 = Экспорт… { $progressPercent }
+
+progress-pane-finished-desc2 = Завершен.
+
+error-pane-title = Ошибка
+
+error-message-zip-file-too-big2 = Размер выбранного ZIP-файла превышает 2 ГБ. Пожалуйста, сначала распакуйте его, а затем импортируйте из распакованной папки.
+
+error-message-extract-zip-file-failed2 = Не удалось распаковать ZIP-файл. Распакуйте его вручную, а затем импортируйте из распакованной папки.
+
+error-message-failed = В процессе импорта произошёл непредвиденный сбой. Более подробная информация может быть доступна в Консоли ошибок.
+
+error-failed-to-parse-ics-file = В файле не найдены элементы для импорта.
+
+error-export-failed = В процессе экспорта произошёл непредвиденный сбой. Более подробная информация может быть доступна в Консоли ошибок.
+
+error-message-no-profile = Профиль не найден.
+
+## <csv-field-map> element
+
+csv-first-row-contains-headers = Первая строка содержит заголовки полей
+
+csv-source-field = Исходное поле
+
+csv-source-first-record = Первая запись
+
+csv-source-second-record = Вторая запись
+
+csv-target-field = Поле адресной книги
+
+## Export tab
+
+export-profile-title = Экспорт учётных записей, сообщений, адресных книг и настроек в ZIP-файл.
+
+export-profile-description = Если размер вашего текущего профиля превышает 2ГБ, мы рекомендуем вам создать его резервную копию самостоятельно.
+
+export-open-profile-folder = Открыть папку профиля
+
+export-file-picker2 = Экспорт в ZIP-файл
+
+export-brand-name = { -brand-product-name }
+
+## Summary pane
+
+summary-pane-title = Данные для импорта
+
+summary-pane-start = Начать импорт
+
+summary-pane-warning = После завершения импорта будет необходимо перезапустить { -brand-product-name }.
+
+summary-pane-start-over = Перезапуск инструмента импорта
+
+## Footer area
+
+footer-help = Нужна помощь?
+
+footer-import-documentation = Документация по импорту
+
+footer-export-documentation = Документация по экспорту
+
+footer-support-forum = Форум поддержки
+
+## Step navigation on top of the wizard pages
+
+step-list =
+ .aria-label = Пошаговый импорт
+
+step-confirm = Подтвердить
+
+# Variables:
+# $number (number) - step number
+step-count = { $number }
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/aboutProfilesExtra.ftl b/thunderbird-l10n/ru/localization/ru/messenger/aboutProfilesExtra.ftl
new file mode 100644
index 0000000000..cbb2891bec
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/aboutProfilesExtra.ftl
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+profiles-launch-profile-plain = Запустить профиль
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/aboutRights.ftl b/thunderbird-l10n/ru/localization/ru/messenger/aboutRights.ftl
new file mode 100644
index 0000000000..3e3299ff44
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/aboutRights.ftl
@@ -0,0 +1,30 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+rights-title = О ваших правах
+rights-intro = { -brand-full-name } является бесплатной программой с открытым исходным кодом, созданной многотысячным сообществом людей со всего мира. Вот несколько вещей, о которых вам следует знать:
+rights-intro-point-1 = { -brand-short-name } предоставляется вам на условиях <a data-l10n-name="mozilla-public-license-link">Публичной лицензии Mozilla</a>. Это значит, что вы можете использовать, копировать и распространять { -brand-short-name }. Вы также можете модифицировать исходный код { -brand-short-name } в соответствии со своими нуждами. Публичная лицензия Mozilla также даёт вам право распространять изменённые вами сборки.
+rights-intro-point-2 = Вам не предоставляются никакие права или лицензии на товарные знаки Mozilla Foundation или любой другой стороны, в том числе на название или логотип Thunderbird. Дополнительная информация о товарных знаках приведена по <a data-l10n-name="mozilla-trademarks-link">следующему адресу</a>.
+rights-intro-point-3 = Некоторые функции { -brand-short-name }, такие как «Сообщения о падениях», позволяют вам отправлять отзывы в { -vendor-short-name }. Отправляя отзыв, вы разрешаете { -vendor-short-name } использовать отзыв для улучшения её продуктов, размещать отзыв на её веб-сайтах и распространять отзывы любыми другими способами.
+rights-intro-point-4 = То, как мы используем вашу персональную информацию и отзывы, отправленные в { -vendor-short-name } через { -brand-short-name }, описано в <a data-l10n-name="mozilla-privacy-policy-link">Политике приватности { -brand-short-name }</a>.
+rights-intro-point-4-unbranded = Любые применимые политики приватности для этого продукта должны быть перечислены здесь.
+rights-intro-point-5 = Некоторые функции { -brand-short-name } используют информационные веб-службы, однако мы не можем гарантировать на 100% их безошибочную или корректную работу. Более подробная информация, а также инструкции по отключению этих служб, приведена в <a data-l10n-name="mozilla-service-terms-link">условиях использования служб</a>.
+rights-intro-point-5-unbranded = Если этот продукт включает в себя службы информирования о сайтах, ссылки на все применимые условия использования этих служб должны быть приведены в разделе <a data-l10n-name="mozilla-website-services-link">Службы информирования о веб-сайтах</a>.
+rights-intro-point-6 = Для воспроизведения определенных типов видеоконтента { -brand-short-name } загружает определенные плагины расшифровки контента от сторонних производителей.
+rights-webservices-header = Информационные веб-службы { -brand-full-name }
+rights-webservices2 = { -brand-full-name } использует информационные веб-службы (далее «Службы»), для обеспечения работы некоторых функций, предоставляемых вам в этой бинарной версии { -brand-short-name } на условиях описанных ниже. Если вы не хотите использовать одну или несколько из этих Служб или приведённые ниже условия неприемлемы, вы можете отключить эту функцию или Службу(ы). Инструкции по тому, как отключить конкретную функцию или службу можно найти <a data-l10n-name="mozilla-disable-service-link">здесь</a>. Другие функции и Службы могут быть отключены в настройках приложения.
+rights-locationawarebrowsing = <strong>Определение местоположения при веб-серфинге: </strong>всегда требует вашего разрешения. Никакая информация о местоположении никогда не отправляется без вашего разрешения. Если вы хотите полностью отключить эту функцию, выполните следующие действия:
+rights-locationawarebrowsing-term-1 = В строке адреса наберите <code>about:config</code>
+rights-locationawarebrowsing-term-2 = Наберите geo.enabled
+rights-locationawarebrowsing-term-3 = Произведите двойной щелчок по параметру geo.enabled
+rights-locationawarebrowsing-term-4 = Определение местоположения при веб-серфинге теперь отключено
+rights-webservices-unbranded = Обзор служб информирования о веб-сайтах, включённых в продукт, вместе с инструкциями по их отключению, если таковые требуются, должен быть приведён здесь.
+rights-webservices-term-unbranded = Любые применимые политики использования служб для этого продукта должны быть перечислены здесь.
+rights-webservices-term-1 = { -vendor-short-name } и её сотрудники, лицензиары и партнёры прилагают все усилия для предоставления самой точной и актуальной информации через Службы. Однако мы не можем гарантировать, что эта информация является полной и не содержит ошибок. Например служба Safe Browsing может не идентифицировать некоторые опасные сайты и может идентифицировать некоторые безопасные сайты по ошибке как опасные, а все местоположения, возвращаемые нашей Службой Определения Местоположения, являются лишь приблизительными. Ни мы, ни наши сервис-провайдеры не можем гарантировать точность предоставленных местоположений.
+rights-webservices-term-2 = { -vendor-short-name } может прекратить предоставление Служб или изменить работу Служб по своему усмотрению.
+rights-webservices-term-3 = Вы можете использовать эти Службы вместе с сопутствующей версией { -brand-short-name }, и { -vendor-short-name } предоставляет вам на это право. { -vendor-short-name } и её лицензиары сохраняют все остальные права на данные Службы. Данные условия не предназначены для ограничения каких-либо прав, предоставляемых на условиях лицензий для открытого исходного кода, применимых к { -brand-short-name } и к соответствующему исходному коду версий { -brand-short-name }.
+rights-webservices-term-4 = <strong>Данные службы предоставляются «как есть». { -vendor-short-name }, её сотрудники, лицензиары и дистрибьюторы настоящим отказываются от предоставления любых гарантий, явно выраженных или подразумеваемых, в том числе гарантий того, что Службы пригодны для продажи и подходят для ваших определённых целей. Весь риск за выбор Служб для ваших целей и в отношении качества и работы Служб несете вы. Некоторые юрисдикции не допускают исключения или ограничения подразумеваемых гарантий, поэтому настоящий отказ от гарантий может быть к вам неприменим.</strong>
+rights-webservices-term-5 = <strong>За исключением случаев, когда этого требует закон, { -vendor-short-name } и её сотрудники, лицензиары и дистрибьюторы не будут нести ответственности ни за какой косвенный, особый, случайный, последующий, присуждаемый в качестве штрафа или наказания ущерб, вытекающий из использования { -brand-short-name } и Служб, или каким-либо образом имеющий к ним отношение. В соответствии с этими условиями коллективная ответственность не будет превышать $500 (пятисот долларов США). Некоторые юрисдикции не допускают исключения или ограничения определённого ущерба, поэтому настоящее исключение и ограничение может быть к вам неприменимо.</strong>
+rights-webservices-term-6 = { -vendor-short-name } при необходимости время от времени может обновлять эти условия. Данные условия не могут быть изменены или отменены без письменного соглашения { -vendor-short-name }.
+rights-webservices-term-7 = Эти условия регламентируются законами штата Калифорния, США, исключая его нормы коллизионного права. Если какая-либо часть этих условий станет юридически недействительной или неисполнимой, остальные части полностью сохранят свою юридическую силу. В случае возникновения противоречий между переведённой версией этих условий и версией на английском языке, следует руководствоваться версией на английском языке.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/aboutSupportCalendar.ftl b/thunderbird-l10n/ru/localization/ru/messenger/aboutSupportCalendar.ftl
new file mode 100644
index 0000000000..eb3ab3f3b0
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/aboutSupportCalendar.ftl
@@ -0,0 +1,33 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendars-title = Настройки календаря
+calendars-table-heading-property = Имя
+calendars-table-heading-value = Значение
+calendars-table-name = Имя
+calendars-table-type = Тип
+calendars-table-disabled = Отключён
+calendars-table-username = Имя пользователя
+calendars-table-uri = URI
+calendars-table-refreshinterval = Интервал обновления
+calendars-table-readonly = Только для чтения
+calendars-table-suppressalarms = Подавление уведомлений
+calendars-table-cache-enabled = Кеш включён
+calendars-table-imip-identity = Идентификатор iMIP
+calendars-table-imip-identity-disabled = iMIP отключён
+calendars-table-imip-identity-account = Учётная запись iMIP
+calendars-table-organizerid = Идентификатор организатора
+calendars-table-forceemailscheduling = Принудительное планирование электронной почты
+calendars-table-capabilities-alarms-popup-supported = Всплывающие уведомления поддерживаются
+calendars-table-capabilities-alarms-oninviations-supported = Уведомления по приглашению поддерживаются
+calendars-table-capabilities-alarms-maxcount = Максимальное число уведомлений на событие
+calendars-table-capabilities-attachments-supported = Вложения поддерживаются
+calendars-table-capabilities-categories-maxcount = Максимальное число категорий
+calendars-table-capabilities-privacy-supported = Состояние приватности поддерживается
+calendars-table-capabilities-priority-supported = Приоритет поддерживается
+calendars-table-capabilities-events-supported = События поддерживаются
+calendars-table-capabilities-tasks-supported = Задачи поддерживаются
+calendars-table-capabilities-timezones-floating-supported = Местное время поддерживается
+calendars-table-capabilities-timezones-utc-supported = UTC/GMT поддерживается
+calendars-table-capabilities-autoschedule-supported = Автоматическое планирование поддерживается
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/aboutSupportChat.ftl b/thunderbird-l10n/ru/localization/ru/messenger/aboutSupportChat.ftl
new file mode 100644
index 0000000000..37c549b1e7
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/aboutSupportChat.ftl
@@ -0,0 +1,11 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+chat-title = Учётная запись чата
+chat-table-heading-account = ID
+chat-table-heading-protocol = Протокол
+chat-table-heading-name = Имя
+chat-table-heading-actions = Действия
+chat-table-copy-debug-log = Копировать лог отладки
+ .title = Копирует ошибки и другие логи из этой учётной записи чата в буфер обмена. Может содержать личную информацию, такую как сообщения чата.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/aboutSupportMail.ftl b/thunderbird-l10n/ru/localization/ru/messenger/aboutSupportMail.ftl
new file mode 100644
index 0000000000..8d438b2824
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/aboutSupportMail.ftl
@@ -0,0 +1,31 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+accounts-title = Учётные записи почты и новостей
+show-private-data-main-text = Включить имена учётных записей
+show-private-data-explanation-text = (возможно идентифицирующая информация)
+accounts-ID = Идентификатор
+accounts-name = Имя
+accounts-incoming-server = Cервер входящей почты
+accounts-outgoing-servers = Cервер исходящей почты
+accounts-server-name = Имя
+accounts-conn-security = Защита соединения
+accounts-auth-method = Метод аутентификации
+accounts-default = По умолчанию?
+identity-name = Идентификатор
+send-via-email = Послать по почте
+app-basics-telemetry = Данные телеметрии
+app-basics-cache-use = Использование кеша
+mail-libs-title = Библиотеки
+libs-table-heading-library = Библиотека
+libs-table-heading-expected-version = Ожидаемая минимальная версия
+libs-table-heading-loaded-version = Используемая версия
+libs-table-heading-path = Путь
+libs-table-heading-status = Состояние
+libs-rnp-status-ok = OK
+libs-rnp-status-load-failed = Ошибка загрузки. OpenPGP не будет работать.
+libs-rnp-status-incompatible = Несовместимая версия. OpenPGP не будет работать.
+libs-rnp-status-unofficial = Неофициальная версия. OpenPGP может работать не так, как ожидалось.
+libs-otr-status-ok = OK
+libs-otr-status-error = Ошибка загрузки. Шифрование чата OTR не будет работать.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/accountCentral.ftl b/thunderbird-l10n/ru/localization/ru/messenger/accountCentral.ftl
new file mode 100644
index 0000000000..dd33dacbfd
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/accountCentral.ftl
@@ -0,0 +1,65 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+account-central-title = Добро пожаловать в { -brand-full-name }
+account-settings = Параметры учётной записи
+
+# $accounts (Number) - the number of configured accounts
+setup-title = Выберите, что нужно настроить
+about-title = О { -brand-full-name }
+resources-title = Ресурсы
+
+release-notes =
+ .title = О { -brand-full-name }
+
+email-label = Электронная почта
+ .aria-label = Подключиться к имеющейся у вас учётной записи электронной почты
+email-description = { -brand-short-name } позволяет вам подключить существующую учётную запись электронной почты для удобного и эффективного чтения ваших писем в приложении.
+
+calendar-label = Календарь
+ .aria-label = Создать новый календарь
+calendar-description = { -brand-short-name } позволяет вам управлять вашими событиями и помогает в удобной их организации. Подключение удалённого календаря позволяет синхронизировать все ваши события на всех ваших устройствах.
+
+chat-label = Чат
+ .aria-label = Подключить учётную запись чата
+chat-description = { -brand-short-name } позволяет вам подключить несколько учётных записей служб мгновенного обмена сообщениями, на различных платформах.
+
+filelink-label = Filelink
+ .aria-label = Настроить Filelink
+filelink-description = { -brand-short-name } позволяет вам настроить удобную облачную учётную запись для лёгкой отправки больших вложений.
+
+addressbook-label = Адресная книга
+ .aria-label = Создать новую адресную книгу
+addressbook-description = { -brand-short-name } позволяет организовать все ваши контакты в адресной книге. Вы также можете подключиться к удалённой адресной книге, чтобы синхронизировать все ваши контакты.
+
+feeds-label = Ленты новостей
+ .aria-label = Подписаться на ленты новостей
+feeds-description = { -brand-short-name } позволяет вам подключаться к лентам новостей RSS/Atom для получения новостей и обновлений отовсюду сразу.
+
+newsgroups-label = Группы новостей
+ .aria-label = Подключиться к группе новостей
+newsgroups-description = { -brand-short-name } позволяет вам подключаться ко всем нужным группам новостей.
+
+import-title = Импорт из другой программы
+import-paragraph2 = { -brand-short-name } может импортировать почтовые сообщения, содержимое адресных книг, подписки на ленты новостей, настройки и/или фильтры из других почтовых программ и распространённых форматов адресных книг.
+
+import-label = Импорт
+ .aria-label = Импорт данных из других программ
+
+about-paragraph = Thunderbird — это ведущий кроссплатформенный клиент электронной почты и календаря с открытым исходным кодом, бесплатный для бизнеса и личного использования. Мы хотим, чтобы он оставался безопасным и становился ещё лучше. Пожертвования позволят нам нанять разработчиков, поддерживать инфраструктуру и продолжать разработку.
+
+about-paragraph-consider-donation = <b>Thunderbird финансируется такими пользователями, как вы! Если вам нравится Thunderbird, пожалуйста, сделайте пожертвование.</b> Лучший способ обеспечить доступность Thunderbird — это <a data-l10n-name="donation-link">сделать пожертвование</a>.
+
+explore-link = Узнать о возможностях
+support-link = Поддержка
+involved-link = Принять участие
+developer-link = Документация для разработчиков
+
+read = Чтение сообщений
+compose = Создание новых сообщений
+search = Поиск сообщений
+filter = Управление фильтрами сообщений
+nntp-subscription = Управление подписками на группы новостей
+rss-subscription = Управление подписками на ленты новостей
+e2e = Сквозное шифрование
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/accountManager.ftl b/thunderbird-l10n/ru/localization/ru/messenger/accountManager.ftl
new file mode 100644
index 0000000000..b74e233887
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/accountManager.ftl
@@ -0,0 +1,18 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+open-preferences-sidebar-button2 = Настройки { -brand-short-name }
+
+open-addons-sidebar-button = Дополнения и темы
+
+account-action-add-newsgroup-account =
+ .label = Добавить учётную запись новостей…
+ .accesskey = н
+
+server-change-restart-required = Для применения изменения имени сервера или имени пользователя требуется перезапуск.
+
+edit-vcard-dialog-accept-button = Сохранить
+ .accesskey = х
+edit-vcard-dialog-cancel-button = Отмена
+ .accesskey = м
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/accountProvisioner.ftl b/thunderbird-l10n/ru/localization/ru/messenger/accountProvisioner.ftl
new file mode 100644
index 0000000000..025950a8ab
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/accountProvisioner.ftl
@@ -0,0 +1,79 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+account-provisioner-tab-title = Получите новый адрес электронной почты от поставщика услуг
+
+provisioner-searching-icon =
+ .alt = Поиск…
+
+account-provisioner-title = Создать новый адрес электронной почты
+
+account-provisioner-description = Используйте наших надежных партнеров, чтобы получить новый приватный и безопасный адрес электронной почты.
+
+account-provisioner-start-help = Используемые условия поиска отправляются { -vendor-short-name } (<a data-l10n-name="mozilla-privacy-link">Политика конфиденциальности</a>) и сторонним поставщикам услуг электронной почты <strong>mailfence.com</strong> (<a data-l10n-name="mailfence-privacy-link">Политика конфиденциальности</a>, <a data-l10n-name="mailfence-tou-link">Условия использования</a>) и <strong>gandi.net</strong> (<a data-l10n-name="gandi-privacy-link">Политика конфиденциальности</a>, <a data-l10n-name="gandi-tou-link">Условия использования</a>), чтобы найти доступные адреса электронной почты.
+
+account-provisioner-mail-account-title = Купить новый адрес электронной почты
+
+account-provisioner-mail-account-description = Thunderbird заключил партнерское соглашение с <a data-l10n-name="mailfence-home-link">Mailfence</a>, чтобы предложить вам новую приватную и безопасную электронную почту. Мы считаем, что у каждого должна быть безопасная электронная почта.
+
+account-provisioner-domain-title = Купить собственный адрес и домен электронной почты
+
+account-provisioner-domain-description = Thunderbird заключил партнерское соглашение с <a data-l10n-name="gandi-home-link">Gandi</a>, чтобы предложить вам собственный домен. Это позволяет вам использовать любой адрес в этом домене.
+
+## Forms
+
+account-provisioner-mail-input =
+ .placeholder = Ваше имя, псевдоним или другой поисковый запрос
+
+account-provisioner-domain-input =
+ .placeholder = Ваше имя, псевдоним или другой поисковый запрос
+
+account-provisioner-search-button = Поиск
+
+account-provisioner-button-cancel = Отмена
+
+account-provisioner-button-existing = Использовать существующую учётную запись электронной почты
+
+account-provisioner-button-back = Вернуться назад
+
+## Notifications
+
+account-provisioner-fetching-provisioners = Загрузка от поставщиков…
+
+account-provisioner-connection-issues = Не удалось связаться с нашими серверами регистрации. Пожалуйста, проверьте ваше соединение.
+
+account-provisioner-searching-email = Поиск доступных учётных записей электронной почты…
+
+account-provisioner-searching-domain = Поиск доступных доменов…
+
+account-provisioner-searching-error = Не удалось найти для предложения никаких адресов. Попробуйте изменить условия поиска.
+
+## Illustrations
+
+account-provisioner-step1-image =
+ .title = Выберите, какую учётную запись нужно создать
+
+## Search results
+
+# Variables:
+# $count (Number) - The number of domains found during search.
+account-provisioner-results-title =
+ { $count ->
+ [one] Найден { $count } доступный адрес для:
+ [few] Найдено { $count } доступных адреса для:
+ *[many] Найдено { $count } доступных адресов для:
+ }
+
+account-provisioner-mail-results-caption = Чтобы найти больше адресов, вы можете попробовать произвести поиск по прозвищам или любым другим терминам.
+
+account-provisioner-domain-results-caption = Чтобы найти больше доменов, вы можете попробовать произвести поиск по прозвищам или любым другим терминам.
+
+account-provisioner-free-account = Бесплатно
+
+account-provision-price-per-year = { $price } в год
+
+account-provisioner-all-results-button = Показать все результаты
+
+account-provisioner-open-in-tab-img =
+ .title = Открыть в новой вкладке
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/accountcreation/accountHub.ftl b/thunderbird-l10n/ru/localization/ru/messenger/accountcreation/accountHub.ftl
new file mode 100644
index 0000000000..25a26223a5
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/accountcreation/accountHub.ftl
@@ -0,0 +1,83 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Account Hub
+### Account hub is where user can setup new accounts in Thunderbird.
+
+
+## Header
+
+account-hub-brand = { -brand-full-name }
+account-hub-welcome-line = Добро пожаловать в <span data-l10n-name="brand-name">{ -brand-full-name }</span>
+account-hub-title = Центр учётных записей
+
+## Footer
+
+account-hub-release-notes = Примечания к выпуску
+account-hub-support = Поддержка
+account-hub-donate = Пожертвовать
+
+## Initial setup page
+
+account-hub-email-setup-button = Учётная запись эл. почты
+ .title = Настроить учётную запись эл. почты
+account-hub-calendar-setup-button = Календарь
+ .title = Настроить локальный или удалённый календарь
+account-hub-address-book-setup-button = Адресная книга
+ .title = Настроить локальную или удалённую адресную книгу
+account-hub-chat-setup-button = Чат
+ .title = Настроить учётную запись чата
+account-hub-feed-setup-button = Новостная лента
+ .title = Настроить учётную запись новостной ленты
+account-hub-newsgroup-setup-button = Группа новостей
+ .title = Настроить учётную запись группы новостей
+account-hub-import-setup-button = Импорт
+ .title = Импорт резервной копии профиля
+# Note: "Sync" represents the Firefox Sync product so it shouldn't be translated.
+account-hub-sync-button = Войти для Синхронизации…
+
+## Email page
+
+account-hub-email-title = Настройте свою учётную запись электронной почты
+account-hub-add-email-title = Добавьте свою учетную запись
+account-hub-manually-configure-email-title = Настройка конфигурации учетной записи
+account-hub-email-cancel-button = Отмена
+account-hub-email-stop-button = Остановить
+account-hub-email-back-button = Назад
+account-hub-email-retest-button = Перетестировать
+account-hub-email-finish-button = Готово
+account-hub-email-manually-configure-button = Настроить вручную
+account-hub-email-continue-button = Продолжить
+account-hub-email-confirm-button = Подтвердить
+account-hub-incoming-server-legend = Cервер входящей почты
+account-hub-outgoing-server-legend = Cервер исходящей почты
+account-hub-protocol-label = Протокол
+account-hub-hostname-label = Имя узла
+account-hub-port-label = Порт
+ .title = Установите номер порта 0 для автоопределения
+account-hub-auto-description = { -brand-short-name } попытается автоматически определить значения полей, оставленных пустыми.
+account-hub-ssl-label = Защита соединения
+
+## Incoming/Outgoing SSL Authentication options
+
+account-hub-ssl-autodetect-option =
+ .label = Автоопределение
+account-hub-ssl-no-authentication-option =
+ .label = Без аутентификации
+account-hub-ssl-cleartext-password-option =
+ .label = Обычный пароль
+account-hub-ssl-encrypted-password-option =
+ .label = Зашифрованный пароль
+
+## Incoming/Outgoing SSL options
+
+account-hub-ssl-noencryption-option =
+ .label = Нет
+account-hub-auth-label = Метод аутентификации
+account-hub-username-label = Имя пользователя
+account-hub-adding-account-title = Добавление учетной записи
+account-hub-adding-account-subheader = Повторное тестирование параметров конфигурации учетной записи
+account-hub-account-added-title = Учётная запись добавлена
+account-hub-find-settings-failed = { -brand-full-name } не удалось найти настройки для вашей учетной записи почты
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/accountcreation/accountSetup.ftl b/thunderbird-l10n/ru/localization/ru/messenger/accountcreation/accountSetup.ftl
new file mode 100644
index 0000000000..e72d5abc6b
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/accountcreation/accountSetup.ftl
@@ -0,0 +1,298 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+account-setup-tab-title = Настройка учётной записи
+
+## Header
+
+account-setup-title = Настройка имеющейся у вас учётной записи электронной почты
+account-setup-description =
+ Чтобы использовать текущий адрес электронной почты, введите свои учетные данные. <br/>
+ { -brand-product-name } автоматически выполнит поиск рабочей и рекомендованной конфигурации сервера.
+account-setup-secondary-description = { -brand-product-name } автоматически выполнит поиск рабочей и рекомендованной конфигурации сервера.
+account-setup-success-title = Учётная запись успешно создана
+account-setup-success-description = Теперь вы можете использовать эту учётную запись в { -brand-short-name }.
+account-setup-success-secondary-description = Вы можете добавить функциональность, подсоединив связанные службы и настроив дополнительные параметры учётной записи.
+
+## Form fields
+
+account-setup-name-label = Ваше полное имя
+ .accesskey = л
+# Note: "John Doe" is a multiple-use name that is used when the true name of a person is unknown. We use this fake name as an input placeholder. Translators should update this to reflect the placeholder name of their language/country.
+account-setup-name-input =
+ .placeholder = Иван Иванов
+account-setup-name-info-icon =
+ .title = Ваше имя, как оно отображается у других
+account-setup-name-warning-icon =
+ .title = Пожалуйста, введите своё имя
+account-setup-email-label = Адрес электронной почты
+ .accesskey = е
+account-setup-email-input =
+ .placeholder = ivan.ivanov@example.com
+account-setup-email-info-icon =
+ .title = Имеющаяся у вас учётная запись электронной почты
+account-setup-email-warning-icon =
+ .title = Некорректный адрес эл. почты
+account-setup-password-label = Пароль
+ .accesskey = а
+ .title = Необязательно, будет использоваться только для проверки имени пользователя
+account-provisioner-button = Получить новый адрес электронной почты
+ .accesskey = ч
+account-setup-password-toggle-show =
+ .title = Показать пароль открытым текстом
+account-setup-password-toggle-hide =
+ .title = Скрыть пароль
+account-setup-remember-password = Запомнить пароль
+ .accesskey = м
+account-setup-exchange-label = Ваш логин
+ .accesskey = г
+# YOURDOMAIN refers to the Windows domain in ActiveDirectory. yourusername refers to the user's account name in Windows.
+account-setup-exchange-input =
+ .placeholder = ВАШ ДОМЕН\ваше имя пользователя
+# Domain refers to the Windows domain in ActiveDirectory. We mean the user's login in Windows at the local corporate network.
+account-setup-exchange-info-icon =
+ .title = Имя пользователя в домене
+
+## Action buttons
+
+account-setup-button-cancel = Отмена
+ .accesskey = е
+account-setup-button-manual-config = Настроить вручную
+ .accesskey = ю
+account-setup-button-stop = Остановить
+ .accesskey = ь
+account-setup-button-retest = Перетестировать
+ .accesskey = ь
+account-setup-button-continue = Продолжить
+ .accesskey = ж
+account-setup-button-done = Готово
+ .accesskey = в
+
+## Notifications
+
+account-setup-looking-up-settings = Поиск конфигурации…
+account-setup-looking-up-settings-guess = Поиск конфигурации: Проверка типичных имён серверов…
+account-setup-looking-up-settings-half-manual = Поиск конфигурации: Идёт проверка сервера…
+account-setup-looking-up-disk = Поиск конфигурации: Установка { -brand-short-name }…
+account-setup-looking-up-isp = Поиск конфигурации: Провайдер электронной почты…
+# Note: Do not translate or replace Mozilla. It stands for the public project mozilla.org, not Mozilla Corporation. The database is a generic, public domain facility usable by any client.
+account-setup-looking-up-db = Поиск конфигурации: База ISP от Mozilla…
+account-setup-looking-up-mx = Поиск конфигурации: Домен входящей почты…
+account-setup-looking-up-exchange = Поиск конфигурации: Сервер Exchange…
+account-setup-checking-password = Проверка пароля…
+account-setup-installing-addon = Загрузка и установка дополнения…
+account-setup-success-half-manual = При проверке указанного сервера были найдены следующие настройки:
+account-setup-success-guess = При проверке типичных имён серверов найдена следующая конфигурация:
+account-setup-success-guess-offline = Вы не подключены к сети. Мы попробовали угадать некоторые настройки, но вам нужно будет ввести правильные настройки.
+account-setup-success-password = Пароль верен
+account-setup-success-addon = Дополнение успешно установлено
+# Note: Do not translate or replace Mozilla. It stands for the public project mozilla.org, not Mozilla Corporation. The database is a generic, public domain facility usable by any client.
+account-setup-success-settings-db = Найдена конфигурация в базе ISP в Mozilla.
+account-setup-success-settings-disk = Найдена конфигурация в установке { -brand-short-name }.
+account-setup-success-settings-isp = Найдена конфигурация у провайдера электронной почты.
+# Note: Microsoft Exchange is a product name.
+account-setup-success-settings-exchange = Найдена конфигурация для сервера Microsoft Exchange.
+
+## Illustrations
+
+account-setup-step1-image =
+ .title = Начальная настройка
+account-setup-step2-image =
+ .title = Загрузка…
+account-setup-step3-image =
+ .title = Конфигурация найдена
+account-setup-step4-image =
+ .title = Ошибка соединения
+account-setup-step5-image =
+ .title = Учётная запись создана
+account-setup-privacy-footnote2 = Ваши учётные данные будут храниться только локально на вашем компьютере.
+account-setup-selection-help = Не знаете, что выбрать?
+account-setup-selection-error = Нужна помощь?
+account-setup-success-help = Не уверены в своих следующих шагах?
+account-setup-documentation-help = Документация по настройке
+account-setup-forum-help = Форум поддержки
+account-setup-privacy-help = Политика приватности
+account-setup-getting-started = Начало работы
+
+## Results area
+
+# Variables:
+# $count (Number) - Number of available protocols.
+account-setup-results-area-title =
+ { $count ->
+ [one] Доступная конфигурация
+ [few] Доступные конфигурации
+ *[many] Доступные конфигурации
+ }
+account-setup-result-imap-description = Синхронизирует ваши папки и электронную почту на вашем сервере
+account-setup-result-pop-description = Хранит ваши папки и электронную почту на вашем компьютере
+# Note: Exchange, Office365 are the name of products.
+account-setup-result-exchange2-description = Использует сервер Microsoft Exchange или облачные службы Office365
+account-setup-incoming-title = Для получения
+account-setup-outgoing-title = Для отправки
+account-setup-username-title = Имя пользователя
+account-setup-exchange-title = Сервер
+account-setup-result-no-encryption = Без шифрования
+account-setup-result-ssl = SSL/TLS
+account-setup-result-starttls = STARTTLS
+account-setup-result-outgoing-existing = Использует существующий сервер исходящей почты (SMTP)
+# Variables:
+# $incoming (String): The email/username used to log into the incoming server
+# $outgoing (String): The email/username used to log into the outgoing server
+account-setup-result-username-different = Для получения: { $incoming }, Для отправки: { $outgoing }
+
+## Error messages
+
+# Note: The reference to "janedoe" (Jane Doe) is the name of an example person. You will want to translate it to whatever example persons would be named in your language. In the example, AD is the name of the Windows domain, and this should usually not be translated.
+account-setup-credentials-incomplete = Ошибка аутентификации. Введённые учётные данные неверны, либо для входа в систему требуется отдельное имя пользователя. Обычно это имя пользователя, используемое для входа в домен Windows, с именем домена или без него (например, janedoe или AD\\janedoe)
+account-setup-credentials-wrong = Ошибка аутентификации. Пожалуйста, проверьте имя пользователя и пароль
+account-setup-find-settings-failed = { -brand-short-name } не удалось найти настройки для вашей учетной записи почты
+account-setup-exchange-config-unverifiable = Конфигурация не может быть проверена. Если ваше имя пользователя и пароль верны, вероятно, администратор сервера отключил выбранную конфигурацию для вашей учетной записи. Попробуйте выбрать другой протокол.
+account-setup-provisioner-error = При настройке новой учётной записи в { -brand-short-name } произошла ошибка. Пожалуйста, попробуйте вручную настроить учётную запись с вашими учётными данными.
+
+## Manual configuration area
+
+account-setup-manual-config-title = Параметры сервера
+account-setup-incoming-server-legend = Cервер входящей почты
+account-setup-protocol-label = Протокол:
+account-setup-hostname-label = Имя сервера:
+account-setup-port-label = Порт:
+ .title = Установите номер порта в 0 для автоопределения
+account-setup-auto-description = { -brand-short-name } попытается автоматически определить значения полей, оставленных пустыми.
+account-setup-ssl-label = Защита соединения:
+account-setup-outgoing-server-legend = Cервер исходящей почты
+
+## Incoming/Outgoing SSL Authentication options
+
+ssl-autodetect-option = Автоопределение
+ssl-no-authentication-option = Без аутентификации
+ssl-cleartext-password-option = Обычный пароль
+ssl-encrypted-password-option = Зашифрованный пароль
+
+## Incoming/Outgoing SSL options
+
+ssl-noencryption-option = Нет
+account-setup-auth-label = Метод аутентификации:
+account-setup-username-label = Имя пользователя:
+account-setup-advanced-setup-button = Дополнительная настройка
+ .accesskey = е
+
+## Warning insecure server dialog
+
+account-setup-insecure-title = Внимание!
+account-setup-insecure-incoming-title = Параметры входящей почты:
+account-setup-insecure-outgoing-title = Параметры исходящей почты:
+# Variables:
+# $server (String): The name of the hostname of the server the user was trying to connect to.
+account-setup-warning-cleartext = <b>{ $server }</b> не использует шифрование.
+account-setup-warning-cleartext-details = Незащищённые почтовые сервера не используют зашифрованные соединения для защиты ваших паролей и личной информации. При соединении с этим сервером вы можете раскрыть ваш пароль и личную информацию.
+account-setup-insecure-server-checkbox = Я понимаю риски
+ .accesskey = ю
+account-setup-insecure-description = Вы можете забирать свою почту с помощью { -brand-short-name }, используя предоставленные конфигурации. Тем не менее мы рекомендуем вам связаться с вашим администратором или провайдером электронной почты в связи с небезопасностью работы по этим соединениям. Для получения более подробной информации обратитесь к <a data-l10n-name="thunderbird-faq-link">Thunderbird FAQ</a>.
+insecure-dialog-cancel-button = Изменить настройки
+ .accesskey = м
+insecure-dialog-confirm-button = Подтвердить
+ .accesskey = в
+
+## Warning Exchange confirmation dialog
+
+# Variables:
+# $domain (String): The name of the server where the configuration was found, e.g. rackspace.com.
+exchange-dialog-question = { -brand-short-name } обнаружил информацию по настройке вашей учётной записи на { $domain }. Вы хотите продолжить и отправить свои учётные данные?
+exchange-dialog-confirm-button = Войти
+exchange-dialog-cancel-button = Отмена
+
+## Dismiss account creation dialog
+
+exit-dialog-title = Ни одна учётная запись электронной почты не настроена
+exit-dialog-description = Вы уверены, что хотите отменить процесс настройки? { -brand-short-name } может быть использован без учётной записи электронной почты, но многие функции будут недоступны.
+account-setup-no-account-checkbox = Использовать { -brand-short-name } без учётной записи электронной почты
+ .accesskey = е
+exit-dialog-cancel-button = Продолжить настройку
+ .accesskey = ж
+exit-dialog-confirm-button = Выйти из настройки
+ .accesskey = ы
+
+## Alert dialogs
+
+account-setup-creation-error-title = Ошибка создания учётной записи
+account-setup-error-server-exists = Сервер входящей почты уже существует.
+account-setup-confirm-advanced-title = Подтверждение персональной конфигурации
+account-setup-confirm-advanced-description = Это диалоговое окно будет закрыто, и будет создана учётная запись с текущими параметрами, даже если эта конфигурация неверна. Вы хотите продолжить?
+
+## Addon installation section
+
+account-setup-addon-install-title = Установка
+account-setup-addon-install-intro = Вы можете получить доступ к учётной записи электронной почты на этом сервере с помощью стороннего дополнения:
+account-setup-addon-no-protocol = К сожалению, этот почтовый сервер не поддерживает открытые протоколы. { account-setup-addon-install-intro }
+
+## Success view
+
+account-setup-settings-button = Параметры учётной записи
+account-setup-encryption-button = Сквозное шифрование
+account-setup-signature-button = Добавить подпись
+account-setup-dictionaries-button = Загрузить словари
+account-setup-address-book-carddav-button = Подключиться к адресной книге CardDAV
+account-setup-address-book-ldap-button = Подключиться к адресной книге LDAP
+account-setup-calendar-button = Подключиться к удаленному календарю
+account-setup-linked-services-title = Подключить связанные службы
+account-setup-linked-services-description = { -brand-short-name } обнаружил другие службы, связанные с учётной записью вашей почты.
+account-setup-no-linked-description = Настройте другие службы, чтобы максимально использовать возможности { -brand-short-name }.
+# Variables:
+# $count (Number) - The number of address books found during autoconfig.
+account-setup-found-address-books-description =
+ { $count ->
+ [one] { -brand-short-name } обнаружил { $count } адресную книгу, связанную с учётной записью вашей почты.
+ [few] { -brand-short-name } обнаружил { $count } адресные книги, связанные с учётной записью вашей почты.
+ *[many] { -brand-short-name } обнаружил { $count } адресных книг, связанных с учётной записью вашей почты.
+ }
+# Variables:
+# $count (Number) - The number of calendars found during autoconfig.
+account-setup-found-calendars-description =
+ { $count ->
+ [one] { -brand-short-name } обнаружил { $count } календарь, связанный с учётной записью вашей почты.
+ [few] { -brand-short-name } обнаружил { $count } календаря, связанных с учётной записью вашей почты.
+ *[many] { -brand-short-name } обнаружил { $count } календарей, связанных с учётной записью вашей почты.
+ }
+account-setup-button-finish = Завершить
+ .accesskey = ш
+account-setup-looking-up-address-books = Поиск адресных книг…
+account-setup-looking-up-calendars = Поиск календарей…
+account-setup-address-books-button = Адресные книги
+account-setup-calendars-button = Календари
+account-setup-connect-link = Подключить
+account-setup-existing-address-book = Подключена
+ .title = Адресная книга уже подключена
+account-setup-existing-calendar = Подключён
+ .title = Календарь уже подключён
+account-setup-connect-all-calendars = Подключить все календари
+account-setup-connect-all-address-books = Подключить все адресные книги
+
+## Calendar synchronization dialog
+
+calendar-dialog-title = Подключить календарь
+calendar-dialog-cancel-button = Отмена
+ .accesskey = м
+calendar-dialog-confirm-button = Подключить
+ .accesskey = ю
+account-setup-calendar-name-label = Имя
+account-setup-calendar-name-input =
+ .placeholder = Мой календарь
+account-setup-calendar-color-label = Цвет
+account-setup-calendar-refresh-label = Обновлять
+account-setup-calendar-refresh-manual = Вручную
+# Variables:
+# $count (Number) - Number of minutes in the calendar refresh interval.
+account-setup-calendar-refresh-interval =
+ { $count ->
+ [one] Каждую { $count } минуту
+ [few] Каждые { $count } минуты
+ *[many] Каждые { $count } минут
+ }
+account-setup-calendar-read-only = Только для чтения
+ .accesskey = о
+account-setup-calendar-show-reminders = Показывать напоминания
+ .accesskey = к
+account-setup-calendar-offline-support = Поддержка автономной работы
+ .accesskey = в
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/addonNotifications.ftl b/thunderbird-l10n/ru/localization/ru/messenger/addonNotifications.ftl
new file mode 100644
index 0000000000..b903e24fc3
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/addonNotifications.ftl
@@ -0,0 +1,130 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+xpinstall-prompt = { -brand-short-name } заблокировал запрос на установку программного обеспечения на компьютер с этого сайта.
+
+## Variables:
+## $host (String): The hostname of the site the add-on is being installed from.
+
+xpinstall-prompt-header = Разрешить { $host } выполнить установку дополнения?
+xpinstall-prompt-message = Вы пытаетесь установить дополнение с { $host }. Перед продолжением, убедитесь, что вы доверяете этому сайту.
+
+##
+
+xpinstall-prompt-header-unknown = Разрешить неизвестному сайту установить дополнение?
+xpinstall-prompt-message-unknown = Вы пытаетесь установить дополнение с неизвестного сайта. Перед продолжением, убедитесь, что вы доверяете этому сайту.
+xpinstall-prompt-dont-allow =
+ .label = Не разрешать
+ .accesskey = е
+xpinstall-prompt-never-allow =
+ .label = Никогда не разрешать
+ .accesskey = и
+# Long text in this context make the dropdown menu extend awkwardly to the left,
+# avoid a localization that's significantly longer than the English version.
+xpinstall-prompt-never-allow-and-report =
+ .label = Сообщить о подозрительном сайте
+ .accesskey = С
+# Accessibility Note:
+# Be sure you do not choose an accesskey that is used elsewhere in the active context (e.g. main menu bar, submenu of the warning popup button)
+# See https://website-archive.mozilla.org/www.mozilla.org/access/access/keyboard/ for details
+xpinstall-prompt-install =
+ .label = Продолжить установку
+ .accesskey = ж
+
+# These messages are shown when a website invokes navigator.requestMIDIAccess.
+
+site-permission-install-first-prompt-midi-header = Этот сайт запрашивает доступ к вашим устройствам MIDI (цифровой интерфейс музыкальных инструментов). Доступ к устройству можно включить, установив дополнение.
+site-permission-install-first-prompt-midi-message = Безопасный доступ не гарантируется. Продолжайте, только если вы доверяете этому сайту.
+
+##
+
+xpinstall-disabled-locked = Установка программного обеспечения отключена вашим системным администратором.
+xpinstall-disabled = Установка программного обеспечения в данный момент отключена. Нажмите «Включить» и попытайтесь снова.
+xpinstall-disabled-button =
+ .label = Включить
+ .accesskey = ю
+# This message is shown when the installation of an add-on is blocked by enterprise policy.
+# Variables:
+# $addonName (String): the name of the add-on.
+# $addonId (String): the ID of add-on.
+addon-install-blocked-by-policy = { $addonName } ({ $addonId }) заблокировано вашим системным администратором.
+# This message is shown when the installation of add-ons from a domain is blocked by enterprise policy.
+addon-domain-blocked-by-policy = Ваш системный администратор запретил этому сайту запрашивать установку ПО на ваш компьютер.
+addon-install-full-screen-blocked = Установка дополнений не разрешена во время или перед входом в полноэкранный режим.
+# Variables:
+# $addonName (String): the localized name of the sideloaded add-on.
+webext-perms-sideload-menu-item = { $addonName } добавлено в { -brand-short-name }
+# Variables:
+# $addonName (String): the localized name of the extension which has been updated.
+webext-perms-update-menu-item = { $addonName } запрашивает новые права
+
+## Add-on removal warning
+
+# Variables:
+# $name (String): The name of the add-on that will be removed.
+addon-removal-title = Удалить { $name }?
+# Variables:
+# $name (String): the name of the extension which is about to be removed.
+addon-removal-message = Удалить { $name } из { -brand-shorter-name }?
+addon-removal-button = Удалить
+addon-removal-abuse-report-checkbox = Пожаловаться на это расширение в { -vendor-short-name }
+# Variables:
+# $addonCount (Number): the number of add-ons being downloaded
+addon-downloading-and-verifying =
+ { $addonCount ->
+ [one] Загрузка и проверка { $addonCount } дополнения…
+ [few] Загрузка и проверка { $addonCount } дополнений…
+ *[many] Загрузка и проверка { $addonCount } дополнений…
+ }
+addon-download-verifying = Проверка
+addon-install-cancel-button =
+ .label = Отмена
+ .accesskey = м
+addon-install-accept-button =
+ .label = Добавить
+ .accesskey = о
+
+## Variables:
+## $addonCount (Number): the number of add-ons being installed
+
+addon-confirm-install-message =
+ { $addonCount ->
+ [one] Этот сайт хочет установить { $addonCount } дополнение в { -brand-short-name }:
+ [few] Этот сайт хочет установить { $addonCount } дополнения в { -brand-short-name }:
+ *[many] Этот сайт хочет установить { $addonCount } дополнений в { -brand-short-name }:
+ }
+addon-confirm-install-unsigned-message =
+ { $addonCount ->
+ [one] Внимание: Этот сайт хочет установить { $addonCount } непроверенное дополнение в { -brand-short-name }. Действуйте на свой страх и риск.
+ [few] Внимание: Этот сайт хочет установить { $addonCount } непроверенных дополнения в { -brand-short-name }. Действуйте на свой страх и риск.
+ *[many] Внимание: Этот сайт хочет установить { $addonCount } непроверенных дополнений в { -brand-short-name }. Действуйте на свой страх и риск.
+ }
+# Variables:
+# $addonCount (Number): the number of add-ons being installed (at least 2)
+addon-confirm-install-some-unsigned-message =
+ { $addonCount ->
+ [one] Внимание: Этот сайт хочет установить { $addonCount } дополнение в { -brand-short-name }, некоторые из которых непроверены. Действуйте на свой страх и риск.
+ [few] Внимание: Этот сайт хочет установить { $addonCount } дополнения в { -brand-short-name }, некоторые из которых непроверены. Действуйте на свой страх и риск.
+ *[many] Внимание: Этот сайт хочет установить { $addonCount } дополнений в { -brand-short-name }, некоторые из которых непроверены. Действуйте на свой страх и риск.
+ }
+
+## Add-on install errors
+## Variables:
+## $addonName (String): the add-on name.
+
+addon-install-error-network-failure = Дополнение не может быть загружено из-за ошибки соединения.
+addon-install-error-incorrect-hash = Дополнение не может быть установлено, так как оно не соответствует дополнению, ожидаемому { -brand-short-name }.
+addon-install-error-corrupt-file = Дополнение, загруженное с этого сайта, не может быть установлено, так как оно, по-видимому, повреждено.
+addon-install-error-file-access = { $addonName } не может быть установлено, так как { -brand-short-name } не может изменить нужный файл.
+addon-install-error-not-signed = { -brand-short-name } заблокировал установку непроверенного дополнения с этого сайта.
+addon-install-error-invalid-domain = Дополнение { $addonName } не может быть установлено из этого расположения.
+addon-local-install-error-network-failure = Это дополнение не может быть установлено из-за ошибки файловой системы.
+addon-local-install-error-incorrect-hash = Это дополнение не может быть установлено, так как оно не соответствует дополнению, ожидаемому { -brand-short-name }.
+addon-local-install-error-corrupt-file = Это дополнение не может быть установлено, так как оно, по-видимому, повреждено.
+addon-local-install-error-file-access = { $addonName } не может быть установлено, так как { -brand-short-name } не может изменить нужный файл.
+addon-local-install-error-not-signed = Это дополнение не может быть установлено, так как оно не было проверено.
+# Variables:
+# $appVersion (String): the application version.
+addon-install-error-incompatible = { $addonName } не может быть установлено, так как оно несовместимо с { -brand-short-name } { $appVersion }.
+addon-install-error-blocklisted = { $addonName } не может быть установлено, так как есть высокий риск, что оно вызовет проблемы со стабильностью или безопасностью.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/addressbook/abCardDAVDialog.ftl b/thunderbird-l10n/ru/localization/ru/messenger/addressbook/abCardDAVDialog.ftl
new file mode 100644
index 0000000000..360b59ebc0
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/addressbook/abCardDAVDialog.ftl
@@ -0,0 +1,26 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+
+carddav-window-title = Новая адресная книга CardDAV
+
+carddav-dialog =
+ .buttonlabelaccept = Продолжить
+ .buttonaccesskeyaccept = ж
+
+carddav-username-label =
+ .value = Имя пользователя:
+ .accesskey = я
+carddav-location-label =
+ .value = Адрес:
+ .accesskey = е
+carddav-location =
+ .default-placeholder = URL-адрес или имя сервера адресной книги
+
+carddav-loading = Поиск конфигурации…
+carddav-known-incompatible = Известно, что { $url } несовместим с { -brand-short-name }.
+carddav-connection-error = Ошибка соединения.
+carddav-none-found = Адресные книги для добавления в указанную учетную запись не найдены.
+carddav-already-added = Все адресные книги уже добавлены в указанную учётную запись.
+
+carddav-available-books = Доступные адресные книги:
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/addressbook/abCardDAVProperties.ftl b/thunderbird-l10n/ru/localization/ru/messenger/addressbook/abCardDAVProperties.ftl
new file mode 100644
index 0000000000..cb304c5b86
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/addressbook/abCardDAVProperties.ftl
@@ -0,0 +1,35 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+
+carddav-url-label =
+ .value = URL CardDAV:
+ .accesskey = V
+
+carddav-refreshinterval-label =
+ .label = Синхронизовать:
+ .accesskey = х
+
+# Variables:
+# $minutes (integer) - Number of minutes between address book synchronizations
+carddav-refreshinterval-minutes-value =
+ .label =
+ { $minutes ->
+ [one] каждую { $minutes } минуту
+ [few] каждые { $minutes } минуты
+ *[many] каждые { $minutes } минут
+ }
+
+# Variables:
+# $hours (integer) - Number of hours between address book synchronizations
+carddav-refreshinterval-hours-value =
+ .label =
+ { $hours ->
+ [one] каждый { $hours } час
+ [few] каждые { $hours } часа
+ *[many] каждые { $hours } часов
+ }
+
+carddav-readonly-label =
+ .label = Только для чтения
+ .accesskey = е
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/addressbook/aboutAddressBook.ftl b/thunderbird-l10n/ru/localization/ru/messenger/addressbook/aboutAddressBook.ftl
new file mode 100644
index 0000000000..5f76ad09d2
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/addressbook/aboutAddressBook.ftl
@@ -0,0 +1,278 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+
+about-addressbook-title = Адресная книга
+
+## Toolbar
+
+about-addressbook-toolbar-new-address-book =
+ .label = Новая адресная книга
+about-addressbook-toolbar-add-carddav-address-book =
+ .label = Добавить адресную книгу CardDAV
+about-addressbook-toolbar-add-ldap-address-book =
+ .label = Добавить адресную книгу LDAP
+about-addressbook-toolbar-new-contact =
+ .label = Новый контакт
+about-addressbook-toolbar-new-list =
+ .label = Новый список
+about-addressbook-toolbar-import =
+ .label = Импорт
+
+## Books
+
+all-address-books-row =
+ .title = Все адресные книги
+all-address-books = Все адресные книги
+# Variables:
+# $name (String) - The name of the selected book/list.
+# $count (Number) - The number of contacts in the selected book/list.
+about-addressbook-card-count = Всего контактов в { $name }: { $count }
+# Variables:
+# $count (Number) - The number of contacts in all address books.
+about-addressbook-card-count-all = Всего контактов во всех адресных книгах: { $count }
+about-addressbook-books-context-properties =
+ .label = Свойства
+about-addressbook-books-context-edit-list =
+ .label = Изменить список
+about-addressbook-books-context-synchronize =
+ .label = Синхронизовать
+about-addressbook-books-context-edit =
+ .label = Изменить
+about-addressbook-books-context-print =
+ .label = Печать…
+about-addressbook-books-context-export =
+ .label = Экспорт…
+about-addressbook-books-context-delete =
+ .label = Удалить
+about-addressbook-books-context-remove =
+ .label = Удалить
+about-addressbook-books-context-startup-default =
+ .label = Каталог по умолчанию при открытии
+about-addressbook-confirm-delete-book-title = Удаление адресной книги
+# Variables:
+# $name (String) - Name of the address book to be deleted.
+about-addressbook-confirm-delete-book = Вы действительно хотите удалить { $name } и все контакты в ней?
+about-addressbook-confirm-remove-remote-book-title = Удаление адресной книги
+# Variables:
+# $name (String) - Name of the remote address book to be removed.
+about-addressbook-confirm-remove-remote-book = Вы уверены, что хотите удалить { $name }?
+
+## Cards
+
+# Variables:
+# $name (String) - Name of the address book that will be searched.
+about-addressbook-search =
+ .placeholder = Поиск в { $name }
+about-addressbook-search-all =
+ .placeholder = Поиск во всех адресных книгах
+about-addressbook-sort-button2 =
+ .title = Варианты отображения списка
+about-addressbook-name-format-display =
+ .label = Отображаемое имя
+about-addressbook-name-format-firstlast =
+ .label = Первый Последний
+about-addressbook-name-format-lastfirst =
+ .label = Последний, Первый
+about-addressbook-sort-name-ascending =
+ .label = Сортировать по имени (от А до Я)
+about-addressbook-sort-name-descending =
+ .label = Сортировать по имени (от Я до А)
+about-addressbook-sort-email-ascending =
+ .label = Сортировать по адресу эл. почты (от A до Z)
+about-addressbook-sort-email-descending =
+ .label = Сортировать по адресу эл. почты (от Z до A)
+about-addressbook-table-layout =
+ .label = Макет таблицы
+
+## Card column headers
+## Each string is listed here twice, and the values should match.
+
+about-addressbook-column-header-generatedname2 = Имя
+ .title = Упорядочивать по имени
+about-addressbook-column-label-generatedname2 =
+ .label = Имя
+about-addressbook-column-header-emailaddresses2 = Адреса электронной почты
+ .title = Упорядочивать по адресам электронной почты
+about-addressbook-column-label-emailaddresses2 =
+ .label = Адреса электронной почты
+about-addressbook-column-header-nickname2 = Прозвище
+ .title = Упорядочивать по прозвищам
+about-addressbook-column-label-nickname2 =
+ .label = Прозвище
+about-addressbook-column-header-phonenumbers2 = Номера телефонов
+ .title = Упорядочивать по номерам телефонов
+about-addressbook-column-label-phonenumbers2 =
+ .label = Номера телефонов
+about-addressbook-column-header-addresses2 = Адреса
+ .title = Упорядочивать по адресам
+about-addressbook-column-label-addresses2 =
+ .label = Адреса
+about-addressbook-column-header-title2 = Заголовок
+ .title = Упорядочивать по заголовкам
+about-addressbook-column-label-title2 =
+ .label = Заголовок
+about-addressbook-column-header-department2 = Отдел
+ .title = Упорядочивать по отделам
+about-addressbook-column-label-department2 =
+ .label = Отдел
+about-addressbook-column-header-organization2 = Организация
+ .title = Упорядочивать по организациям
+about-addressbook-column-label-organization2 =
+ .label = Организация
+about-addressbook-column-header-addrbook2 = Адресная книга
+ .title = Упорядочивать по адресным книгам
+about-addressbook-column-label-addrbook2 =
+ .label = Адресная книга
+about-addressbook-cards-context-write =
+ .label = Написать
+about-addressbook-confirm-delete-mixed-title = Удаление контактов и списков
+# Variables:
+# $count (Number) - The number of contacts and lists to be deleted. Always greater than 1.
+about-addressbook-confirm-delete-mixed = Вы действительно хотите удалить эти { $count } контакта(ов) и списка(ов)?
+# Variables:
+# $count (Number) - The number of lists to be deleted.
+about-addressbook-confirm-delete-lists-title =
+ { $count ->
+ [one] Удаление списка
+ [few] Удаление списков
+ *[many] Удаление списков
+ }
+# Variables:
+# $count (Number) - The number of lists to be deleted.
+# $name (String) - The name of the list to be deleted, if $count is 1.
+about-addressbook-confirm-delete-lists =
+ { $count ->
+ [one] Вы действительно хотите удалить список { $name }?
+ [few] Вы действительно хотите удалить эти { $count } списка?
+ *[many] Вы действительно хотите удалить эти { $count } списков?
+ }
+# Variables:
+# $count (Number) - The number of contacts to be removed.
+about-addressbook-confirm-remove-contacts-title =
+ { $count ->
+ [one] Удаление контакта
+ [few] Удаление контактов
+ *[many] Удаление контактов
+ }
+# Variables:
+# $name (String) - The name of the contact to be removed.
+# $list (String) - The name of the list that contacts will be removed from.
+about-addressbook-confirm-remove-contacts-single = Вы уверены, что хотите удалить { $name } из { $list }?
+# Variables:
+# $count (Number) - The number of contacts to be removed.
+# $list (String) - The name of the list that contacts will be removed from.
+about-addressbook-confirm-remove-contacts-multi =
+ { $count ->
+ [one] Вы действительно хотите удалить этот { $count } контакт из { $list }?
+ [few] Вы действительно хотите удалить эти { $count } контакта из { $list }?
+ *[many] Вы действительно хотите удалить эти { $count } контактов из { $list }?
+ }
+# Variables:
+# $count (Number) - The number of contacts to be deleted.
+about-addressbook-confirm-delete-contacts-title =
+ { $count ->
+ [one] Удаление контакта
+ [few] Удаление контактов
+ *[many] Удаление контактов
+ }
+# Variables:
+# $name (String) - The name of the contact to be deleted.
+about-addressbook-confirm-delete-contacts-single = Вы уверены, что хотите удалить контакт { $name }?
+# Variables:
+# $count (Number) - The number of contacts to be deleted.
+about-addressbook-confirm-delete-contacts-multi =
+ { $count ->
+ [one] Вы действительно хотите удалить этот { $count } контакт?
+ [few] Вы действительно хотите удалить эти { $count } контакта?
+ *[many] Вы действительно хотите удалить эти { $count } контактов?
+ }
+
+## Card list placeholder
+## Shown when there are no cards in the list
+
+about-addressbook-placeholder-empty-book = Нет доступных контактов
+about-addressbook-placeholder-new-contact = Создать контакт
+about-addressbook-placeholder-search-only = Это адресная книга покажет контакты только после поиска
+about-addressbook-placeholder-searching = Поиск…
+about-addressbook-placeholder-no-search-results = Контакты не найдены
+
+## Details
+
+# Variables:
+# $count (Number) - The number of selected items (will never be fewer than 2).
+about-addressbook-selection-mixed-header2 =
+ { $count ->
+ [one] Выбрана { $count } запись адресной книги
+ [few] Выбрано { $count } записи адресной книги
+ *[many] Выбрано { $count } записей адресной книги
+ }
+# Variables:
+# $count (Number) - The number of selected contacts
+about-addressbook-selection-contacts-header2 =
+ { $count ->
+ [one] Выбран { $count } контакт
+ [few] Выбрано { $count } контакта
+ *[many] Выбрано { $count } контактов
+ }
+# Variables:
+# $count (Number) - The number of selected lists
+about-addressbook-selection-lists-header2 =
+ { $count ->
+ [one] Выбран { $count } список
+ [few] Выбрано { $count } списка
+ *[many] Выбрано { $count } списков
+ }
+about-addressbook-details-edit-photo =
+ .title = Изменить фото контакта
+about-addressbook-new-contact-header = Новый контакт
+about-addressbook-prefer-display-name = Использовать отображаемое имя вместо имени из заголовка сообщения
+about-addressbook-write-action-button = Написать
+about-addressbook-event-action-button = Событие
+about-addressbook-search-action-button = Поиск
+about-addressbook-new-list-action-button = Новый список
+about-addressbook-begin-edit-contact-button = Изменить
+about-addressbook-delete-edit-contact-button = Удалить
+about-addressbook-cancel-edit-contact-button = Отмена
+about-addressbook-save-edit-contact-button = Сохранить
+about-addressbook-add-contact-to = Добавить в:
+about-addressbook-details-email-addresses-header = Адреса электронной почты
+about-addressbook-details-phone-numbers-header = Номера телефонов
+about-addressbook-details-addresses-header = Адреса
+about-addressbook-details-notes-header = Заметки
+about-addressbook-details-impp-header = Мгновенные сообщения
+about-addressbook-details-websites-header = Веб-сайты
+about-addressbook-details-other-info-header = Дополнительная информация
+about-addressbook-entry-type-work = Рабочий
+about-addressbook-entry-type-home = Домашний
+about-addressbook-entry-type-fax = Факс
+# Or "Mobile"
+about-addressbook-entry-type-cell = Мобильный телефон
+about-addressbook-entry-type-pager = Пейджер
+about-addressbook-entry-name-birthday = День рождения
+about-addressbook-entry-name-anniversary = Годовщина
+about-addressbook-entry-name-title = Должность
+about-addressbook-entry-name-role = Роль
+about-addressbook-entry-name-organization = Организация
+about-addressbook-entry-name-website = Веб-сайт
+about-addressbook-entry-name-time-zone = Часовой пояс
+about-addressbook-entry-name-custom1 = Прочее 1
+about-addressbook-entry-name-custom2 = Прочее 2
+about-addressbook-entry-name-custom3 = Прочее 3
+about-addressbook-entry-name-custom4 = Прочее 4
+about-addressbook-unsaved-changes-prompt-title = Несохранённые изменения
+about-addressbook-unsaved-changes-prompt = Вы хотите сохранить изменения перед выходом из режима редактирования?
+
+# Photo dialog
+
+about-addressbook-photo-drop-target = Перетащите или вставьте сюда фотографию, или щёлкните, чтобы выбрать файл.
+about-addressbook-photo-drop-loading = Загрузка фото…
+about-addressbook-photo-drop-error = Не удалось загрузить фото.
+about-addressbook-photo-filepicker-title = Выберите файл изображения
+about-addressbook-photo-discard = Удалить существующее фото
+about-addressbook-photo-cancel = Отмена
+about-addressbook-photo-save = Сохранить
+
+# Keyboard shortcuts
+
+about-addressbook-new-contact-key = N
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/addressbook/fieldMapImport.ftl b/thunderbird-l10n/ru/localization/ru/messenger/addressbook/fieldMapImport.ftl
new file mode 100644
index 0000000000..73c706119a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/addressbook/fieldMapImport.ftl
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+import-ab-csv-dialog-title = Импорт адресной книги из текстового файла
+
+# $recordNumber (Number) - The current record number of the preview data.
+import-ab-csv-preview-record-number = Предпросмотр импортируемых данных для записи { $recordNumber }
+
+import-ab-csv-dialog =
+ .buttonlabelaccept = Импорт
+ .buttonaccesskeyaccept = м
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/addressbook/vcard.ftl b/thunderbird-l10n/ru/localization/ru/messenger/addressbook/vcard.ftl
new file mode 100644
index 0000000000..eeabc01c2e
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/addressbook/vcard.ftl
@@ -0,0 +1,138 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+# Display Name
+
+vcard-displayname = Отображаемое имя
+vcard-displayname-placeholder =
+ .placeholder = { vcard-displayname }
+
+# Type selection
+
+vcard-entry-type-label = Тип
+vcard-entry-type-home = Домашний
+vcard-entry-type-work = Рабочий
+vcard-entry-type-none = Нет
+vcard-entry-type-custom = Персональный
+
+# N vCard field
+
+vcard-name-header = Имя
+vcard-n-prefix = Префикс
+vcard-n-add-prefix =
+ .title = Добавить префикс
+vcard-n-firstname = Имя
+vcard-n-add-firstname =
+ .title = Добавить имя
+vcard-n-middlename = Отчество
+vcard-n-add-middlename =
+ .title = Добавить отчество
+vcard-n-lastname = Фамилия
+vcard-n-add-lastname =
+ .title = Добавить фамилию
+vcard-n-suffix = Суффикс
+vcard-n-add-suffix =
+ .title = Добавить суффикс
+
+# Nickname
+
+vcard-nickname = Псевдоним
+
+# Email vCard field
+
+vcard-email-header = Адреса электронной почты
+vcard-email-add = Добавить адрес электронной почты
+vcard-email-label = Адрес электронной почты
+vcard-primary-email-label = По умолчанию
+
+# URL vCard field
+
+vcard-url-header = Веб-сайты
+vcard-url-add = Добавить веб-сайт
+vcard-url-label = Веб-сайт
+
+# Tel vCard field
+
+vcard-tel-header = Номера телефонов
+vcard-tel-add = Добавить номер телефона
+vcard-tel-label = Номер телефона
+# Or "Mobile"
+vcard-entry-type-cell = Мобильный телефон
+vcard-entry-type-fax = Факс
+vcard-entry-type-pager = Пейджер
+
+# TZ vCard field
+
+vcard-tz-header = Часовой пояс
+vcard-tz-add = Добавить часовой пояс
+
+# IMPP vCard field
+
+vcard-impp2-header = Мгновенные сообщения
+vcard-impp-add = Добавить учётную запись чата
+vcard-impp-label = Учётная запись чата
+vcard-impp-select = Протокол
+vcard-impp-option-other = Другое
+vcard-impp-input-label = URI
+vcard-impp-input-title = URI для обмена мгновенными сообщениями
+
+# BDAY and ANNIVERSARY vCard field
+
+vcard-bday-anniversary-header = Особые даты
+vcard-bday-anniversary-add = Добавить особую дату
+vcard-bday-label = День рождения
+vcard-anniversary-label = Годовщина
+vcard-date-day = День
+vcard-date-month = Месяц
+vcard-date-year = Год
+
+# ADR vCard field
+
+vcard-adr-header = Адреса
+vcard-adr-add = Добавить адрес
+vcard-adr-label = Адрес
+vcard-adr-delivery-label = Метка для доставки
+vcard-adr-street = Улица
+# Or "Locality"
+vcard-adr-locality = Город
+# Or "Region"
+vcard-adr-region = Область/Регион
+# The term "ZIP code" only applies in USA. Most locales should use "Postal code" only.
+vcard-adr-code = Почтовый индекс
+vcard-adr-country = Страна
+
+# NOTE vCard field
+
+vcard-note-header = Заметки
+vcard-note-add = Добавить заметку
+
+# TITLE, ROLE and ORGANIZATION vCard fields
+
+vcard-org-header = Организация
+vcard-org-add = Добавить организацию
+vcard-org-title = Должность
+vcard-org-title-input =
+ .title = Должность или позиция
+ .placeholder = Должность
+vcard-org-role = Роль
+vcard-org-role-input =
+ .title = Функция или роль, выполняемая в конкретной ситуации
+ .placeholder = Роль в проекте
+vcard-org-org = Организация
+vcard-org-org-input =
+ .title = Наименование организации
+ .placeholder = Наименование компании
+vcard-org-org-unit = Департамент
+vcard-org-org-unit-input =
+ .title = Наименование подразделения организации
+ .placeholder = Департамент
+
+# Custom properties
+
+vcard-custom-header = Пользовательские свойства
+vcard-custom-add = Добавить пользовательские свойства
+vcard-remove-button-title =
+ .title = Удалить
+vcard-remove-button = Удалить
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/appmenu.ftl b/thunderbird-l10n/ru/localization/ru/messenger/appmenu.ftl
new file mode 100644
index 0000000000..eafd1a6381
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/appmenu.ftl
@@ -0,0 +1,210 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Sync
+
+appmenu-sync-panel-title =
+ .title = Синхронизация
+appmenu-signin-panel =
+ .label = Войти в Синхронизацию
+ .accesskey = й
+appmenu-sync-sync =
+ .value = Синхронизация аккаунта
+ .accesskey = а
+appmenu-sync-manage =
+ .value = Управление аккаунтом
+ .accesskey = п
+appmenu-sync-account =
+ .value = example@example.com
+appmenu-sync-now =
+ .label = Синхронизировать
+ .accesskey = х
+appmenu-sync-settings =
+ .label = Настройки синхронизации
+ .accesskey = о
+appmenu-sync-sign-out =
+ .label = Выйти…
+ .accesskey = й
+
+## New Account
+
+appmenu-new-account-panel-title =
+ .title = Создать учётную запись
+appmenu-new-account-panel =
+ .label = Создать учётную запись
+ .accesskey = з
+appmenu-create-new-mail-account =
+ .label = Получить новый адрес эл. почты
+ .accesskey = н
+appmenu-new-mail-account =
+ .label = Существующая электронная почта
+ .accesskey = в
+appmenu-new-calendar =
+ .label = Календарь
+ .accesskey = л
+appmenu-new-chat-account =
+ .label = Чат
+ .accesskey = а
+appmenu-new-feed =
+ .label = Лента новостей
+ .accesskey = й
+appmenu-new-newsgroup =
+ .label = Группа новостей
+ .accesskey = п
+
+## New Account / Address Book
+
+appmenu-newab-panel-title =
+ .title = Новая адресная книга
+appmenu-newab-panel =
+ .label = Новая адресная книга
+ .accesskey = я
+appmenu-new-addressbook =
+ .label = Локальная адресная книга
+ .accesskey = к
+appmenu-new-carddav =
+ .label = Адресная книга CardDav
+ .accesskey = C
+appmenu-new-ldap =
+ .label = Адресная книга LDAP
+ .accesskey = L
+
+## Create
+
+appmenu-create-panel-title =
+ .title = Создать
+appmenu-create-panel =
+ .label = Создать
+ .accesskey = з
+appmenu-create-message =
+ .label = Сообщение
+ .accesskey = б
+appmenu-create-event =
+ .label = Событие
+ .accesskey = ы
+appmenu-create-task =
+ .label = Задачу
+ .accesskey = ч
+appmenu-create-contact =
+ .label = Контакт
+ .accesskey = к
+
+## Open
+
+appmenu-open-file-panel =
+ .label = Открыть из файла
+ .accesskey = а
+appmenu-open-file-panel-title =
+ .title = Открыть из файла
+appmenu-open-message =
+ .label = Сообщение…
+ .accesskey = б
+appmenu-open-calendar =
+ .label = Календарь…
+ .accesskey = н
+
+## View / Layout
+
+appmenu-view-panel-title =
+ .title = Вид
+appmenu-view-panel =
+ .label = Вид
+ .accesskey = и
+appmenuitem-toggle-thread-pane-header =
+ .label = Заголовок списка сообщений
+appmenu-font-size-value = Размер шрифта
+appmenu-mail-uidensity-value = Значки
+appmenu-uidensity-compact =
+ .tooltiptext = Компактные
+appmenu-uidensity-default =
+ .tooltiptext = По умолчанию
+appmenu-uidensity-relaxed =
+ .tooltiptext = Комфортные
+appmenuitem-font-size-enlarge =
+ .tooltiptext = Увеличить размер шрифта
+appmenuitem-font-size-reduce =
+ .tooltiptext = Уменьшить размер шрифта
+# Variables:
+# $size (String) - The current font size.
+appmenuitem-font-size-reset =
+ .label = { $size } пикселей
+ .tooltiptext = Восстановить размер шрифта
+
+## Tools
+
+appmenu-tools-panel-title =
+ .title = Инструменты
+appmenu-tools-panel =
+ .label = Инструменты
+ .accesskey = м
+appmenu-tools-import =
+ .label = Импорт
+ .accesskey = п
+appmenu-tools-export =
+ .label = Экспорт
+ .accesskey = с
+appmenu-tools-message-search =
+ .label = Поиск сообщений
+ .accesskey = и
+appmenu-tools-message-filters =
+ .label = Фильтры сообщений
+ .accesskey = ы
+appmenu-tools-download-manager =
+ .label = Управление загрузками
+ .accesskey = з
+appmenu-tools-activity-manager =
+ .label = Менеджер активности
+ .accesskey = ж
+appmenu-tools-dev-tools =
+ .label = Инструменты разработчика
+ .accesskey = ы
+
+## Help
+
+appmenu-help-panel-title =
+ .title = Справка
+appmenu-help-get-help =
+ .label = Получить помощь
+ .accesskey = ч
+appmenu-help-explore-features =
+ .label = Узнать о возможностях
+ .accesskey = в
+appmenu-help-shortcuts =
+ .label = Сочетания клавиш
+ .accesskey = я
+appmenu-help-get-involved =
+ .label = Принять участие
+ .accesskey = ь
+appmenu-help-donation =
+ .label = Сделать пожертвование
+ .accesskey = ж
+appmenu-help-share-feedback =
+ .label = Поделиться идеями или оставить отзыв
+ .accesskey = д
+appmenu-help-enter-troubleshoot-mode2 =
+ .label = Безопасный режим…
+ .accesskey = з
+appmenu-help-exit-troubleshoot-mode2 =
+ .label = Отключить безопасный режим
+ .accesskey = к
+appmenu-help-troubleshooting-info =
+ .label = Информация для решения проблем
+ .accesskey = И
+appmenu-help-about-product =
+ .label = О { -brand-short-name }
+ .accesskey = О
+
+## Application Update
+
+appmenuitem-banner-update-downloading =
+ .label = Загрузка обновления { -brand-shorter-name }
+appmenuitem-banner-update-available =
+ .label = Доступно обновление — загрузить сейчас
+appmenuitem-banner-update-manual =
+ .label = Доступно обновление — загрузить сейчас
+appmenuitem-banner-update-unsupported =
+ .label = Не удалось выполнить обновление — несовместимая система
+appmenuitem-banner-update-restart =
+ .label = Доступно обновление — перезапустить сейчас
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/chat-verifySession.ftl b/thunderbird-l10n/ru/localization/ru/messenger/chat-verifySession.ftl
new file mode 100644
index 0000000000..b64b6b51f4
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/chat-verifySession.ftl
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+verify-window-title = Подтверждение личности
+
+# Variables:
+# $subject (String) - a human readable identifier for the other side of the verification flow.
+verify-window-subject-title = Подтвердить личность { $subject }
+
+verify-dialog =
+ .buttonlabelaccept = Они совпадают
+ .buttonaccesskeyaccept = п
+ .buttonlabelextra2 = Они не совпадают
+ .buttonaccesskeyextra2 = е
+
+challenge-label = Убедитесь, что отображаемая строка соответствует отображению на другом конце.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/chat.ftl b/thunderbird-l10n/ru/localization/ru/messenger/chat.ftl
new file mode 100644
index 0000000000..04d936871c
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/chat.ftl
@@ -0,0 +1,47 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+chat-joining-chat-icon2 =
+ .alt = Присоединение к чату
+
+chat-left-chat-icon2 =
+ .alt = Покинул(а) чат
+
+chat-participant-owner-role-icon2 =
+ .alt = Владелец
+
+chat-participant-administrator-role-icon2 =
+ .alt = Администратор
+
+chat-participant-moderator-role-icon2 =
+ .alt = Модератор
+
+chat-participant-voiced-role-icon2 =
+ .alt = Участник может публиковать сообщения
+
+chat-verify-identity =
+ .label = Подтверждение личности
+ .accesskey = ж
+
+chat-identity-verified =
+ .label = Личность уже подтверждена
+
+chat-buddy-identity-status = Доверие к шифрованию
+chat-buddy-identity-status-verified = Подтверждено
+chat-buddy-identity-status-unverified = Не подтверждено
+
+## Conversation invite notification box
+
+# This string appears in a notification bar at the top of the Contacts window
+# when someone invited the user to a multi user chat conversation, to request
+# the user to confirm they want to join the chat.
+# Variables:
+# $conversation (String) - Name of the conversation the user is invited to.
+chat-conv-invite-label = Вас пригласили в чат { $conversation }
+chat-conv-invite-accept =
+ .label = Принять
+ .accesskey = и
+chat-conv-invite-deny =
+ .label = Отклонить
+ .accesskey = л
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/compactFoldersDialog.ftl b/thunderbird-l10n/ru/localization/ru/messenger/compactFoldersDialog.ftl
new file mode 100644
index 0000000000..1a823e244c
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/compactFoldersDialog.ftl
@@ -0,0 +1,20 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+compact-dialog-window-title =
+ .title = Сжатие папок
+compact-folders-dialog-title = Сжатие папок
+compact-dialog =
+ .buttonlabelaccept = Сжать сейчас
+ .buttonaccesskeyaccept = а
+ .buttonlabelcancel = Напомнить позже
+ .buttonaccesskeycancel = п
+ .buttonlabelextra1 = Подробнее…
+ .buttonaccesskeyextra1 = о
+# Variables:
+# $data (String): The amount of space to be freed, formatted byte, MB, GB, etc., based on the size.
+compact-dialog-message = { -brand-short-name } необходимо регулярно обслуживать файлы, чтобы повысить скорость работы с вашими почтовыми папками. Это позволит восстановить { $data } на диске и не изменит ваши сообщения. Чтобы { -brand-short-name } делал это в будущем автоматически, не выдавая запрос, установите флажок ниже, прежде чем выбрать «{ compact-dialog.buttonlabelaccept }».
+compact-dialog-never-ask-checkbox =
+ .label = В будущем автоматически сжимать папки
+ .accesskey = б
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/exportDialog.ftl b/thunderbird-l10n/ru/localization/ru/messenger/exportDialog.ftl
new file mode 100644
index 0000000000..1287057918
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/exportDialog.ftl
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+export-dialog-brand-name = { -brand-product-name }
+
+export-dialog-title = Экспорт
+
+export-dialog =
+ .buttonlabelaccept = Далее
+
+export-dialog-button-finish = Готово
+
+export-dialog-file-picker = Экспорт в zip-файл
+
+export-dialog-description1 = Экспортируйте учётные записи почты, почтовые сообщения, адресные книги, настройки в zip-файл.
+
+export-dialog-desc2 = При необходимости вы можете импортировать zip-файл, чтобы восстановить свой профиль.
+
+export-dialog-exporting = Экспорт…
+
+export-dialog-exported = Экспортировано!
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/extensionPermissions.ftl b/thunderbird-l10n/ru/localization/ru/messenger/extensionPermissions.ftl
new file mode 100644
index 0000000000..989b08e34c
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/extensionPermissions.ftl
@@ -0,0 +1,27 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Extension permission description keys are derived from permission names.
+## Permissions for which the message has been changed and the key updated
+## must have a corresponding entry in the `PERMISSION_L10N_ID_OVERRIDES` map.
+
+webext-perms-description-accountsFolders = Создание, переименование или удаление папок ваших учётных записей почты
+webext-perms-description-accountsIdentities = Создание, изменение или удаление ваших учётных записей почты
+webext-perms-description-accountsRead = Просмотр ваших учётных записей почты, их адресов и их папок
+webext-perms-description-addressBooks = Чтение и изменение ваших адресных книг и контактов
+webext-perms-description-compose = Чтение и изменение ваших почтовых сообщений по мере их написания и отправки
+webext-perms-description-compose-send = Отправка от вашего имени подготовленных сообщений электронной почты
+webext-perms-description-compose-save = Сохранение составленных сообщений электронной почты как черновиков или шаблонов
+webext-perms-description-experiment = Наличие полного неограниченного доступа к { -brand-short-name } и вашему компьютеру
+webext-perms-description-messagesImport = Импорт сообщений в Thunderbird
+webext-perms-description-messagesModify = Чтение и изменение ваших почтовых сообщений по мере их отображения
+webext-perms-description-messagesMove = Копирование или перемещение ваших почтовых сообщений (в том числе перемещение их в папку «Удалённые»)
+webext-perms-description-messagesDelete = Удаление ваших почтовых сообщений без возможности восстановления
+webext-perms-description-messagesRead = Чтение ваших почтовых сообщений и добавление к ним меток
+webext-perms-description-messagesRead2 = Прочитайте свои сообщения электронной почты
+webext-perms-description-messagesUpdate = Изменение свойств и меток ваших сообщений электронной почты
+webext-perms-description-messagesTags = Создание, изменение и удаление меток сообщений
+webext-perms-description-messagesTagsList = Список меток сообщения
+webext-perms-description-sensitiveDataUpload = Передача конфиденциальных пользовательских данных (если доступ был предоставлен) на удаленный сервер для дальнейшей обработки
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/extensions/popup.ftl b/thunderbird-l10n/ru/localization/ru/messenger/extensions/popup.ftl
new file mode 100644
index 0000000000..cf521cd8b8
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/extensions/popup.ftl
@@ -0,0 +1,14 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+close-shortcut =
+ .key = w
+# Variables:
+# $title (String): the title of the popup window
+extension-popup-title =
+ { PLATFORM() ->
+ [macos] { $title }
+ *[other] { $title } - { -brand-full-name }
+ }
+extension-popup-default-title = { -brand-full-name }
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/extensionsUI.ftl b/thunderbird-l10n/ru/localization/ru/messenger/extensionsUI.ftl
new file mode 100644
index 0000000000..c04d21d0bb
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/extensionsUI.ftl
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+webext-experiment-warning = Вредоносные дополнения могут украсть вашу личную информацию или подвергнуть риску ваш компьютер. Устанавливайте это дополнение, только если вы доверяете его источнику.
+webext-perms-learn-more = Подробнее
+# Variables:
+# $addonName (String): localized named of the extension that was just installed.
+addon-post-install-message = { $addonName } было добавлено.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/firefoxAccounts.ftl b/thunderbird-l10n/ru/localization/ru/messenger/firefoxAccounts.ftl
new file mode 100644
index 0000000000..857f897741
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/firefoxAccounts.ftl
@@ -0,0 +1,32 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+
+# “Account” can be localized, “Firefox” must be treated as a brand,
+# and kept in English.
+-fxaccount-brand-name =
+ { $case ->
+ *[nominative] Аккаунт Firefox
+ [genitive] Аккаунта Firefox
+ }
+
+## These strings are shown in a desktop notification after the user requests we resend a verification email.
+
+fxa-verification-sent-title = Подтверждение отправлено
+# Variables:
+# $userEmail (String) - Email address of user's Firefox Account.
+fxa-verification-sent-body = Ссылка для подтверждения была отправлена на { $userEmail }.
+fxa-verification-not-sent-title = Не удалось отправить подтверждение
+fxa-verification-not-sent-body = Мы не можем отправить сейчас письмо для подтверждения, пожалуйста, повторите попытку позже.
+
+## These strings are shown in a confirmation dialog when the user chooses to sign out.
+
+fxa-signout-dialog-title = Выйти из { -fxaccount-brand-name(case: "genitive") }?
+fxa-signout-dialog-body = Синхронизированные данные останутся в вашем аккаунте.
+fxa-signout-dialog-button = Выйти
+
+## These strings are shown in a confirmation dialog when the user chooses to stop syncing.
+
+sync-disconnect-dialog-title = Прекратить?
+sync-disconnect-dialog-body = { -brand-product-name } прекратит синхронизацию, но не будет удалять ничего из ваших данных на этом устройстве.
+sync-disconnect-dialog-button = Прекратить
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/flatpak.ftl b/thunderbird-l10n/ru/localization/ru/messenger/flatpak.ftl
new file mode 100644
index 0000000000..efdd1038d2
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/flatpak.ftl
@@ -0,0 +1,24 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These messages are used by the Thunderbird Linux Flatpak "desktop" file.
+### An end user will see them associated with the application launcher icon
+
+# This is the label on the icon
+flatpak-desktop-name = { -brand-short-name }
+# Appears as a tooltip when hovering over application menu entry
+flatpak-desktop-comment = Отправка и получение почты через { -brand-product-name }
+# A generic description of Thunderbird
+flatpak-desktop-generic-name = Почтовый клиент
+
+## Actions Section
+## These are alternative ways of starting Thunderbird, such as open the compose
+## window to write a message. Visible in a context menu after right clicking a
+## Thunderbird taskbar icon, possibly other places depending on the environment.
+
+flatpak-desktop-action-compose = Создать новое сообщение
+flatpak-desktop-action-addressbook = Открыть адресную книгу
+flatpak-desktop-action-calendar = Открыть календарь
+flatpak-desktop-action-keymanager = Открыть Менеджер ключей OpenPGP
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/folderprops.ftl b/thunderbird-l10n/ru/localization/ru/messenger/folderprops.ftl
new file mode 100644
index 0000000000..cd517f5515
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/folderprops.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Quota tab
+
+# Variables:
+# $percent (Number) - Usage percentage of the assigned IMAP quota.
+quota-percent-used = { $percent }% заполнено
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/importDialog.ftl b/thunderbird-l10n/ru/localization/ru/messenger/importDialog.ftl
new file mode 100644
index 0000000000..8964e12def
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/importDialog.ftl
@@ -0,0 +1,30 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Short name of the import module
+thunderbird-import-name = Thunderbird
+
+# Description of the import module
+thunderbird-import-description = Импорт почты из папки профиля Thunderbird.
+
+import-from-thunderbird-zip =
+ .label = Thunderbird (резервная копия экспортированного профиля; zip-файл размером менее 2 ГБ)
+ .accesskey = з
+
+import-from-thunderbird-dir =
+ .label = Thunderbird (папка профиля)
+ .accesskey = T
+
+import-select-profile-zip = Выберите zip-архив с папкой профиля
+
+import-select-profile-dir = Выберите папку профиля
+
+zip-file-too-big-title = Размер zip-файла слишком велик
+
+zip-file-too-big-message = Размер выбранного zip-файла превышает 2 ГБ. Пожалуйста, сначала распакуйте его, а затем импортируйте из распакованной папки.
+
+wizardpage-failed =
+ .label = Импорт не удался
+
+wizardpage-failed-message = В процессе импорта произошёл непредвиденный сбой. Более подробная информация может быть доступна в Консоли ошибок.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/mailWidgets.ftl b/thunderbird-l10n/ru/localization/ru/messenger/mailWidgets.ftl
new file mode 100644
index 0000000000..50cb50213d
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/mailWidgets.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+apply-current-view-to-menu =
+ .label = Применить текущий вид к…
+
+threadpane-apply-changes-prompt-title = Применить изменения?
+# Variables:
+# $name (String): The name of the folder to apply to.
+threadpane-apply-changes-prompt-no-children-text = Применить вид текущей папки к { $name }?
+# Variables:
+# $name (String): The name of the folder to apply to.
+threadpane-apply-changes-prompt-with-children-text = Применить вид текущей папки к { $name } и вложенным в неё папкам?
+
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/menubar.ftl b/thunderbird-l10n/ru/localization/ru/messenger/menubar.ftl
new file mode 100644
index 0000000000..57cf6520a3
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/menubar.ftl
@@ -0,0 +1,144 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+toolbar-context-menu-menu-bar =
+ .toolbarname = Панель меню
+ .accesskey = м
+
+## Tools Menu
+
+menu-tools-settings =
+ .label = Настройки
+ .accesskey = а
+menu-addons-and-themes =
+ .label = Дополнения и темы
+ .accesskey = п
+
+## Help Menu
+
+menu-help-help-title =
+ .label = Справка
+ .accesskey = С
+menu-help-get-help =
+ .label = Получить помощь
+ .accesskey = л
+menu-help-explore-features =
+ .label = Узнать о возможностях
+ .accesskey = ж
+menu-help-shortcuts =
+ .label = Сочетания клавиш
+ .accesskey = к
+menu-help-get-involved =
+ .label = Принять участие
+ .accesskey = ч
+menu-help-donation =
+ .label = Сделать пожертвование
+ .accesskey = е
+menu-help-share-feedback =
+ .label = Поделиться идеями или оставить отзыв
+ .accesskey = д
+menu-help-enter-troubleshoot-mode =
+ .label = Безопасный режим…
+ .accesskey = п
+menu-help-exit-troubleshoot-mode =
+ .label = Отключить безопасный режим
+ .accesskey = ю
+menu-help-more-troubleshooting-info =
+ .label = Информация для решения проблем
+ .accesskey = ш
+menu-help-troubleshooting-info =
+ .label = Информация для решения проблем
+ .accesskey = И
+menu-help-about-product =
+ .label = О { -brand-short-name }
+ .accesskey = О
+# These menu-quit strings are only used on Windows and Linux.
+menu-quit =
+ .label =
+ { PLATFORM() ->
+ [windows] Выход
+ *[other] Выход
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] x
+ *[other] Q
+ }
+# This menu-quit-mac string is only used on macOS.
+menu-quit-mac =
+ .label = Завершить { -brand-shorter-name }
+quit-app-shortcut =
+ .key = Q
+
+## Mail Toolbar
+
+toolbar-junk-button =
+ .label = Спам
+ .tooltiptext = Отметить выбранные сообщения как спам
+toolbar-not-junk-button =
+ .label = Не спам
+ .tooltiptext = Отметить выбранные сообщение как не спам
+toolbar-delete-button =
+ .label = Удалить
+ .tooltiptext = Удалить выбранные сообщения или папку
+toolbar-undelete-button =
+ .label = Восстановить
+ .tooltiptext = Отменить удаление выбранных сообщений
+
+## View
+
+menu-view-repair-text-encoding =
+ .label = Исправить кодировку текста
+ .accesskey = п
+
+## View / Folders
+
+menu-view-folders-toggle-header =
+ .label = Заголовок панели папок
+ .accesskey = г
+
+## View / Layout
+
+menu-view-toggle-thread-pane-header =
+ .label = Заголовок списка сообщений
+ .accesskey = л
+menu-font-size-label =
+ .label = Размер шрифта
+ .accesskey = м
+menuitem-font-size-enlarge =
+ .label = Увеличить размер шрифта
+ .accesskey = в
+menuitem-font-size-reduce =
+ .label = Уменьшить размер шрифта
+ .accesskey = ш
+menuitem-font-size-reset =
+ .label = Сбросить размер шрифта
+ .accesskey = и
+mail-uidensity-label =
+ .label = Значки
+ .accesskey = н
+mail-uidensity-compact =
+ .label = Компактные
+ .accesskey = м
+mail-uidensity-normal =
+ .label = Обычные
+ .accesskey = ы
+mail-uidensity-touch =
+ .label = Сенсорные
+ .accesskey = о
+mail-uidensity-default =
+ .label = По умолчанию
+ .accesskey = м
+mail-uidensity-relaxed =
+ .label = Комфортные
+ .accesskey = н
+menu-spaces-toolbar-button =
+ .label = Панель мест
+ .accesskey = л
+
+## File
+
+file-new-newsgroup-account =
+ .label = Учётная запись новостей…
+ .accesskey = н
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/messageheader/headerFields.ftl b/thunderbird-l10n/ru/localization/ru/messenger/messageheader/headerFields.ftl
new file mode 100644
index 0000000000..73e51b14c7
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/messageheader/headerFields.ftl
@@ -0,0 +1,49 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Header lists
+
+message-header-to-list-name = Кому
+message-header-from-list-name = От
+message-header-sender-list-name = Отправитель
+message-header-reply-to-list-name = Обратный адрес
+message-header-cc-list-name = Копия
+message-header-bcc-list-name = Скрытая копия
+message-header-newsgroups-list-name = Группы новостей
+message-header-followup-to-list-name = Ответ в группу новостей
+message-header-tags-list-name = Метки
+
+## Other message headers.
+## The field-separator is for screen readers to separate the field name from the field value.
+
+message-header-author-field = Автор<span data-l10n-name="field-separator">:</span>
+message-header-organization-field = Организация<span data-l10n-name="field-separator">:</span>
+message-header-subject-field = Тема<span data-l10n-name="field-separator">:</span>
+message-header-followup-to-field = Дополнение к<span data-l10n-name="field-separator">:</span>
+message-header-date-field = Дата<span data-l10n-name="field-separator">:</span>
+message-header-user-agent-field = Пользовательский агент<span data-l10n-name="field-separator">:</span>
+message-header-references-field = Ссылки<span data-l10n-name="field-separator">:</span>
+message-header-message-id-field = Идентификатор сообщения<span data-l10n-name="field-separator">:</span>
+message-header-in-reply-to-field = В ответ на<span data-l10n-name="field-separator">:</span>
+message-header-website-field = Веб-сайт<span data-l10n-name="field-separator">:</span>
+# An additional email header field that the user has chosen to display. Unlike
+# the other headers, the name of this header is not expected to be localised
+# because it is generated from the raw field name found in the email header.
+# $fieldName (String) - The field name.
+message-header-custom-field = { $fieldName }<span data-l10n-name="field-separator">:</span>
+
+##
+
+message-header-address-in-address-book-icon2 =
+ .alt = В адресной книге
+message-header-address-not-in-address-book-icon2 =
+ .alt = Нет в адресной книге
+message-header-address-not-in-address-book-button =
+ .title = Сохранить этот адрес в адресной книге
+message-header-address-in-address-book-button =
+ .title = Изменение контакта
+message-header-field-show-more = Больше
+ .title = Показать всех получателей
+message-ids-field-show-all = Показать все
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/messenger.ftl b/thunderbird-l10n/ru/localization/ru/messenger/messenger.ftl
new file mode 100644
index 0000000000..c3036a4270
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/messenger.ftl
@@ -0,0 +1,422 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Window controls
+
+messenger-window-minimize-button =
+ .tooltiptext = Свернуть
+messenger-window-maximize-button =
+ .tooltiptext = Развернуть
+messenger-window-restore-down-button =
+ .tooltiptext = Свернуть в окно
+messenger-window-close-button =
+ .tooltiptext = Закрыть
+# Variables:
+# $count (Number) - Number of unread messages.
+unread-messages-os-tooltip =
+ { $count ->
+ [one] { $count } непрочитанное сообщение
+ [few] { $count } непрочитанных сообщения
+ *[many] { $count } непрочитанных сообщений
+ }
+about-rights-notification-text = { -brand-short-name } — это бесплатное программное обеспечение с открытым исходным кодом, созданное сообществом тысяч людей со всего мира.
+
+## Content tabs
+
+content-tab-page-loading-icon =
+ .alt = Страница загружается
+content-tab-security-high-icon =
+ .alt = Защищённое соединение
+content-tab-security-broken-icon =
+ .alt = Соединение не защищено
+
+# Back
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the Go Back command.
+content-tab-menu-back =
+ .tooltiptext = Вернуться на одну страницу назад ({ $shortcut })
+ .aria-label = Назад
+ .accesskey = а
+# This menuitem is only visible on macOS
+content-tab-menu-back-mac =
+ .label = Назад
+ .accesskey = а
+
+# Forward
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the Go Forward command.
+content-tab-menu-forward =
+ .tooltiptext = Перейти на одну страницу вперёд ({ $shortcut })
+ .aria-label = Вперёд
+ .accesskey = е
+# This menuitem is only visible on macOS
+content-tab-menu-forward-mac =
+ .label = Вперёд
+ .accesskey = е
+
+# Reload
+
+content-tab-menu-reload =
+ .tooltiptext = Перезагрузить страницу
+ .aria-label = Перезагрузить
+ .accesskey = з
+# This menuitem is only visible on macOS
+content-tab-menu-reload-mac =
+ .tooltiptext = Перезагрузить страницу
+ .label = Перезагрузить
+ .accesskey = з
+
+# Stop
+
+content-tab-menu-stop =
+ .tooltiptext = Остановить загрузку страницы
+ .aria-label = Остановить
+ .accesskey = н
+# This menuitem is only visible on macOS
+content-tab-menu-stop-mac =
+ .tooltiptext = Остановить загрузку страницы
+ .label = Остановить
+ .accesskey = н
+
+## Toolbar
+
+addons-and-themes-toolbarbutton =
+ .label = Дополнения и темы
+ .tooltiptext = Управление своими дополнениями
+quick-filter-toolbarbutton =
+ .label = Быстрый фильтр
+ .tooltiptext = Фильтрация сообщений
+redirect-msg-button =
+ .label = Перенаправить
+ .tooltiptext = Перенаправить выбранное сообщение
+
+## Folder Pane
+
+folder-pane-toolbar =
+ .toolbarname = Панель вида папок
+ .accesskey = н
+folder-pane-toolbar-options-button =
+ .tooltiptext = Настройки вида папок
+folder-pane-header-label = Папки
+
+## Folder Toolbar Header Popup
+
+folder-toolbar-hide-toolbar-toolbarbutton =
+ .label = Скрыть панель инструментов
+ .accesskey = ы
+show-all-folders-label =
+ .label = Все папки
+ .accesskey = е
+show-unread-folders-label =
+ .label = Непрочитанные папки
+ .accesskey = и
+show-favorite-folders-label =
+ .label = Избранные папки
+ .accesskey = з
+show-smart-folders-label =
+ .label = Объединённые папки
+ .accesskey = б
+show-recent-folders-label =
+ .label = Недавно открытые папки
+ .accesskey = а
+show-tags-folders-label =
+ .label = Метки
+ .accesskey = М
+folder-toolbar-toggle-folder-compact-view =
+ .label = Компактный вид
+ .accesskey = п
+
+## File Menu
+
+menu-file-save-as-file =
+ .label = Файл…
+ .accesskey = а
+
+## Edit Menu
+
+menu-edit-delete-folder =
+ .label = Удалить папку
+ .accesskey = У
+menu-edit-unsubscribe-newsgroup =
+ .label = Отписаться от группы новостей
+ .accesskey = и
+# Variables:
+# $count (Number) - Number of selected messages.
+menu-edit-delete-messages =
+ .label =
+ { $count ->
+ [one] Удалить { $count } сообщение
+ [few] Удалить { $count } сообщения
+ [many] Удалить { $count } сообщений
+ *[other] Удалить выбранные сообщения
+ }
+ .accesskey = л
+# Variables:
+# $count (Number) - Number of selected messages.
+menu-edit-undelete-messages =
+ .label =
+ { $count ->
+ [one] Восстановить { $count } сообщение
+ [few] Восстановить { $count } сообщения
+ [many] Восстановить { $count } сообщений
+ *[other] Восстановить выбранные сообщения
+ }
+ .accesskey = н
+menu-edit-properties =
+ .label = Свойства
+ .accesskey = й
+menu-edit-folder-properties =
+ .label = Свойства папки
+ .accesskey = й
+menu-edit-newsgroup-properties =
+ .label = Свойства группы новостей
+ .accesskey = й
+
+## Message Menu
+
+redirect-msg-menuitem =
+ .label = Перенаправить
+ .accesskey = н
+
+## AppMenu
+
+appmenu-save-as-file =
+ .label = Файл…
+appmenu-settings =
+ .label = Настройки
+appmenu-addons-and-themes =
+ .label = Дополнения и темы
+
+## Context menu
+
+context-menu-redirect-msg =
+ .label = Перенаправить
+# This menu item is for canceling an NNTP message
+context-menu-cancel-msg =
+ .label = Отменить сообщение
+# Variables:
+# $count (Number) - Number of selected messages.
+mail-context-delete-messages =
+ .label =
+ { $count ->
+ [one] Удалить { $count } сообщение
+ [few] Удалить { $count } сообщения
+ [many] Удалить { $count } сообщений
+ *[other] Удалить выбранные сообщения
+ }
+# Variables:
+# $count (Number) - Number of selected messages.
+mail-context-undelete-messages =
+ .label =
+ { $count ->
+ [one] Восстановить { $count } сообщение
+ [few] Восстановить { $count } сообщения
+ [many] Восстановить { $count } сообщений
+ *[other] Восстановить выбранные сообщения
+ }
+context-menu-decrypt-to-folder2 =
+ .label = Создать расшифрованную копию в
+ .accesskey = к
+
+## Message header pane
+
+other-action-redirect-msg =
+ .label = Перенаправить
+message-header-msg-flagged =
+ .title = Отмечено звёздочкой
+ .aria-label = Отмечено звёздочкой
+# Variables:
+# $address (String) - The email address of the recipient this picture belongs to.
+message-header-recipient-avatar =
+ .alt = Фотография профиля { $address }.
+
+## Message header cutomize panel
+
+message-header-customize-panel-title = Настройки заголовка сообщения
+message-header-customize-button-style =
+ .value = Стиль кнопок
+ .accesskey = л
+message-header-button-style-default =
+ .label = Значки и текст
+message-header-button-style-text =
+ .label = Текст
+message-header-button-style-icons =
+ .label = Значки
+message-header-show-sender-full-address =
+ .label = Всегда показывать полный адрес отправителя
+ .accesskey = ы
+message-header-show-sender-full-address-description = Адрес электронной почты будет отображаться под отображаемым именем.
+message-header-show-recipient-avatar =
+ .label = Показывать фото профиля отправителя
+ .accesskey = ф
+message-header-show-big-avatar =
+ .label = Увеличенное изображение профиля
+ .accesskey = п
+message-header-hide-label-column =
+ .label = Скрыть столбец меток
+ .accesskey = ы
+message-header-large-subject =
+ .label = Большая тема
+ .accesskey = ш
+message-header-all-headers =
+ .label = Показать все заголовки
+ .accesskey = е
+
+## Action Button Context Menu
+
+toolbar-context-menu-manage-extension =
+ .label = Управление расширением
+ .accesskey = п
+toolbar-context-menu-remove-extension =
+ .label = Удалить расширение
+ .accesskey = л
+
+## Add-on removal warning
+
+# Variables:
+# $name (String): The name of the add-on that will be removed.
+addon-removal-title = Удалить { $name }?
+addon-removal-confirmation-button = Удалить
+# Variables:
+# $name (String): The name of the add-on that will be removed.
+addon-removal-confirmation-message = Удалить { $name }, а также его конфигурацию и данные из { -brand-short-name }?
+caret-browsing-prompt-title = Активный курсор
+caret-browsing-prompt-text = Нажатие клавиши F7 включает или выключает режим активного курсора. В этом режиме, поместив курсор в текст, вы можете выделять текст с помощью клавиатуры. Включить этот режим?
+caret-browsing-prompt-check-text = Больше не спрашивать.
+repair-text-encoding-button =
+ .label = Исправить кодировку текста
+ .tooltiptext = Угадать правильную кодировку текста по содержимому сообщения
+
+## no-reply handling
+
+no-reply-title = Ответ не поддерживается
+# Variables:
+# $email (String) - Email address the reply will be sent to. Example: "noreply@example.com"
+no-reply-message = Адрес для ответа ({ $email }) не похож на отслеживаемый адрес. Сообщения, отправленные по этому адресу, скорее всего никто не прочитает.
+no-reply-reply-anyway-button = Все равно ответить
+
+## error messages
+
+# Variables:
+# $failures (Number) - Number of messages that could not be decrypted.
+# $total (Number) - Total number of messages that were attempted to be decrypted.
+decrypt-and-copy-failures-multiple =
+ { $failures ->
+ [one] { $failures } из { $total } сообщений не могло быть расшифровано и не было скопировано.
+ [few] { $failures } из { $total } сообщений не могли быть расшифрованы и не были скопированы.
+ *[many] { $failures } из { $total } сообщений не могли быть расшифрованы и не были скопированы.
+ }
+
+## Spaces toolbar
+
+spaces-toolbar-element =
+ .toolbarname = Панель мест
+ .aria-label = Панель мест
+ .aria-description = Вертикальная панель инструментов для переключения между разными местами. Используйте клавиши со стрелками для навигации доступными кнопками.
+spaces-toolbar-button-mail2 =
+ .title = Почта
+spaces-toolbar-button-address-book2 =
+ .title = Адресная книга
+spaces-toolbar-button-calendar2 =
+ .title = Календарь
+spaces-toolbar-button-tasks2 =
+ .title = Задачи
+spaces-toolbar-button-chat2 =
+ .title = Чат
+spaces-toolbar-button-overflow =
+ .title = Больше мест…
+spaces-toolbar-button-settings2 =
+ .title = Настройки
+spaces-toolbar-button-hide =
+ .title = Скрыть панель мест
+spaces-toolbar-button-show =
+ .title = Показать панель мест
+spaces-context-new-tab-item =
+ .label = Открыть в новой вкладке
+spaces-context-new-window-item =
+ .label = Открыть в новом окне
+# Variables:
+# $tabName (String) - The name of the tab this item will switch to.
+spaces-context-switch-tab-item =
+ .label = Переключиться на { $tabName }
+settings-context-open-settings-item2 =
+ .label = Настройки
+settings-context-open-account-settings-item2 =
+ .label = Настройки учётной записи
+settings-context-open-addons-item2 =
+ .label = Дополнения и темы
+
+## Spaces toolbar pinned tab menupopup
+
+spaces-toolbar-pinned-tab-button =
+ .tooltiptext = Список мест
+spaces-pinned-button-menuitem-mail2 =
+ .label = { spaces-toolbar-button-mail2.title }
+spaces-pinned-button-menuitem-address-book2 =
+ .label = { spaces-toolbar-button-address-book2.title }
+spaces-pinned-button-menuitem-calendar2 =
+ .label = { spaces-toolbar-button-calendar2.title }
+spaces-pinned-button-menuitem-tasks2 =
+ .label = { spaces-toolbar-button-tasks2.title }
+spaces-pinned-button-menuitem-chat2 =
+ .label = { spaces-toolbar-button-chat2.title }
+spaces-pinned-button-menuitem-settings2 =
+ .label = { spaces-toolbar-button-settings2.title }
+spaces-pinned-button-menuitem-show =
+ .label = { spaces-toolbar-button-show.title }
+# Variables:
+# $count (Number) - Number of unread messages.
+chat-button-unread-messages = { $count }
+ .title =
+ { $count ->
+ [one] { $count } непрочтённое сообщение
+ [few] { $count } непрочтённых сообщения
+ *[many] { $count } непрочтённых сообщений
+ }
+
+## Spaces toolbar customize panel
+
+menuitem-customize-label =
+ .label = Настроить…
+spaces-customize-panel-title = Настройки панели мест
+spaces-customize-background-color = Цвет фона
+spaces-customize-icon-color = Цвет кнопки
+# The background color used on the buttons of the spaces toolbar when they are
+# `current`, meaning the related space/tab is active and visible.
+spaces-customize-accent-background-color = Выбранный цвет фона кнопки
+# The icon color used on the buttons of the spaces toolbar when they are
+# `current`, meaning the related space/tab is active and visible.
+spaces-customize-accent-text-color = Выбранный цвет кнопки
+spaces-customize-button-restore = Восстановить по умолчанию
+ .accesskey = м
+customize-panel-button-save = Готово
+ .accesskey = о
+
+## Quick Filter Bar
+
+# The label to display for the "View... Toolbars..." menu item that controls
+# whether the quick filter bar is visible.
+quick-filter-bar-toggle =
+ .label = Панель быстрого фильтра
+ .accesskey = ы
+# This is the key used to show the quick filter bar.
+# This should match quick-filter-bar-textbox-shortcut in about3Pane.ftl.
+quick-filter-bar-show =
+ .key = k
+
+## OpenPGP
+
+openpgp-forget = Забыть парольные фразы OpenPGP
+
+## Quota panel.
+
+# Variables:
+# $percent (Number) - Usage percentage of the assigned IMAP quota.
+# $usage (String) - Current quota usage (may include unit)
+# $limit (String) - Current quota limit (may include unit)
+quota-panel-percent-used = { $percent }% заполнено
+ .title = IMAP-квота: использовано { $usage } из { $limit }
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/messengercompose/messengercompose.ftl b/thunderbird-l10n/ru/localization/ru/messenger/messengercompose/messengercompose.ftl
new file mode 100644
index 0000000000..dec0d2d929
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/messengercompose/messengercompose.ftl
@@ -0,0 +1,434 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Send Format
+
+compose-send-format-menu =
+ .label = Формат исходящей почты
+ .accesskey = Ф
+compose-send-auto-menu-item =
+ .label = Автоматический
+ .accesskey = А
+compose-send-both-menu-item =
+ .label = HTML и обычный текст
+ .accesskey = и
+compose-send-html-menu-item =
+ .label = Только HTML
+ .accesskey = H
+compose-send-plain-menu-item =
+ .label = Только обычный текст
+ .accesskey = о
+
+## Addressing widget
+
+# $type (String) - the type of the addressing row
+remove-address-row-button =
+ .title = Удалить поле { $type }
+# $type (String) - the type of the addressing row
+# $count (Number) - the number of address pills currently present in the addressing row
+address-input-type-aria-label =
+ { $count ->
+ [0] { $type }
+ [one] { $type } с { $count } адресом, используйте клавишу «Стрелка влево», чтобы сфокусироваться на них.
+ [few] { $type } с { $count } адресами, используйте клавишу «Стрелка влево», чтобы сфокусироваться на них.
+ *[many] { $type } с { $count } адресами, используйте клавишу «Стрелка влево», чтобы сфокусироваться на них.
+ }
+# $email (String) - the email address
+# $count (Number) - the number of address pills currently present in the addressing row
+pill-aria-label =
+ { $count ->
+ [one] { $email }, 1 из { $count }: нажмите Enter, чтобы изменить; Delete, чтобы удалить.
+ [few] { $email }, 1 из { $count }: нажмите Enter, чтобы изменить; Delete, чтобы удалить.
+ *[many] { $email }, 1 из { $count }: нажмите Enter, чтобы изменить; Delete, чтобы удалить.
+ }
+# $email (String) - the email address
+pill-tooltip-invalid-address = { $email } не является корректным адресом электронной почты
+# $email (String) - the email address
+pill-tooltip-not-in-address-book = { $email } отсутствует в вашей адресной книге
+pill-action-edit =
+ .label = Изменить адрес
+ .accesskey = м
+# $type (String) - the type of the addressing row, e.g. Cc, Bcc, etc.
+pill-action-select-all-sibling-pills =
+ .label = Выбрать все адреса в { $type }
+ .accesskey = ы
+pill-action-select-all-pills =
+ .label = Выбрать все адреса
+ .accesskey = е
+pill-action-move-to =
+ .label = Переместить в Кому
+ .accesskey = о
+pill-action-move-cc =
+ .label = Переместить в Копию
+ .accesskey = ю
+pill-action-move-bcc =
+ .label = Переместить в Скрытую копию
+ .accesskey = ы
+pill-action-expand-list =
+ .label = Развернуть список
+ .accesskey = в
+
+## Attachment widget
+
+ctrl-cmd-shift-pretty-prefix =
+ { PLATFORM() ->
+ [macos] ⇧ ⌘{ " " }
+ *[other] Ctrl+Shift+
+ }
+trigger-attachment-picker-key = A
+toggle-attachment-pane-key = M
+menuitem-toggle-attachment-pane =
+ .label = Панель вложений
+ .accesskey = а
+ .acceltext = { ctrl-cmd-shift-pretty-prefix }{ toggle-attachment-pane-key }
+toolbar-button-add-attachment =
+ .label = Вложить
+ .tooltiptext = Добавить вложение ({ ctrl-cmd-shift-pretty-prefix }{ trigger-attachment-picker-key })
+add-attachment-notification-reminder2 =
+ .label = Добавить вложение…
+ .accesskey = л
+ .tooltiptext = { toolbar-button-add-attachment.tooltiptext }
+menuitem-attach-files =
+ .label = Файл(ы)…
+ .accesskey = ы
+ .acceltext = { ctrl-cmd-shift-pretty-prefix }{ trigger-attachment-picker-key }
+context-menuitem-attach-files =
+ .label = Вложить файл(ы)…
+ .accesskey = ж
+ .acceltext = { ctrl-cmd-shift-pretty-prefix }{ trigger-attachment-picker-key }
+# Note: Do not translate the term 'vCard'.
+context-menuitem-attach-vcard =
+ .label = Моя vCard
+ .accesskey = C
+context-menuitem-attach-openpgp-key =
+ .label = Мой открытый ключ OpenPGP
+ .accesskey = к
+# $count (Number) - the number of attachments in the attachment bucket
+attachment-bucket-count-value =
+ { $count ->
+ [one] { $count } вложение
+ [few] { $count } вложения
+ *[many] { $count } вложений
+ }
+attachment-area-show =
+ .title = Показать панель вложений ({ ctrl-cmd-shift-pretty-prefix }{ toggle-attachment-pane-key })
+attachment-area-hide =
+ .title = Скрыть панель вложений ({ ctrl-cmd-shift-pretty-prefix }{ toggle-attachment-pane-key })
+
+## Variables:
+## $count (Number) - Number of files being dropped onto the composer.
+
+drop-file-label-attachment =
+ { $count ->
+ [one] Добавить как вложение
+ [few] Добавить как вложения
+ *[many] Добавить как вложения
+ }
+drop-file-label-inline =
+ { $count ->
+ [one] Вставить в содержимое
+ [few] Вставить в содержимое
+ *[many] Вставить в содержимое
+ }
+
+## Reorder Attachment Panel
+
+move-attachment-first-panel-button =
+ .label = Переместить в начало
+move-attachment-left-panel-button =
+ .label = Переместить влево
+move-attachment-right-panel-button =
+ .label = Переместить вправо
+move-attachment-last-panel-button =
+ .label = Переместить в конец
+button-return-receipt =
+ .label = Уведомление о прочтении
+ .tooltiptext = Запросить уведомление о прочтении этого сообщения
+
+## Encryption
+
+encryption-menu =
+ .label = Безопасность
+ .accesskey = з
+encryption-toggle =
+ .label = Шифровать
+ .tooltiptext = Использовать сквозное шифрование для этого сообщения
+encryption-options-openpgp =
+ .label = OpenPGP
+ .tooltiptext = Просмотреть или изменить настройки шифрования OpenPGP
+encryption-options-smime =
+ .label = S/MIME
+ .tooltiptext = Просмотреть или изменить настройки шифрования S/MIME
+signing-toggle =
+ .label = Подписать
+ .tooltiptext = Подписать это сообщение цифровой подписью
+menu-openpgp =
+ .label = OpenPGP
+ .accesskey = G
+menu-smime =
+ .label = S/MIME
+ .accesskey = S
+menu-encrypt =
+ .label = Шифровать
+ .accesskey = Ш
+menu-encrypt-subject =
+ .label = Шифровать тему
+ .accesskey = т
+menu-sign =
+ .label = Подписать цифровой подписью
+ .accesskey = П
+menu-manage-keys =
+ .label = Управление ключами
+ .accesskey = ю
+menu-view-certificates =
+ .label = Просмотреть сертификаты получателей
+ .accesskey = с
+menu-open-key-manager =
+ .label = Менеджер ключей
+ .accesskey = ж
+openpgp-key-issue-notification-one = Для сквозного шифрования нужно решить проблему с ключом для { $addr }
+openpgp-key-issue-notification-many = Для сквозного шифрования нужно решить проблемы с ключами для { $count } получателей.
+smime-cert-issue-notification-one = Для сквозного шифрования нужно решить проблему с сертификатом для { $addr }.
+smime-cert-issue-notification-many = Для сквозного шифрования нужно решить проблемы с сертификатами для { $count } получателей.
+# Variables:
+# $addr (String) - Email address (which related to the currently selected
+# from address) which isn't set up to end-to-end encryption.
+openpgp-key-issue-notification-from = Вы не настроили отправку сообщений, зашифрованных сквозным методом, с адреса { $addr }.
+# Variables:
+# $addr (String) - Email address with key issues.
+openpgp-key-issue-notification-single = Для сквозного шифрования нужно решить проблему с ключом для { $addr }.
+# Variables:
+# $count (Number) - Number of recipients with key issues.
+openpgp-key-issue-notification-multi =
+ { $count ->
+ [one] Для сквозного шифрования нужно решить проблемы с ключами для { $count } получателя.
+ [few] Для сквозного шифрования нужно решить проблемы с ключами для { $count } получателей.
+ *[many] Для сквозного шифрования нужно решить проблемы с ключами для { $count } получателей.
+ }
+# Variables:
+# $addr (String) - mail address with certificate issues.
+smime-cert-issue-notification-single = Для сквозного шифрования нужно решить проблему с сертификатом для { $addr }.
+# Variables:
+# $count (Number) - Number of recipients with certificate issues.
+smime-cert-issue-notification-multi =
+ { $count ->
+ [one] Для сквозного шифрования нужно решить проблемы с сертификатами для { $count } получателя.
+ [few] Для сквозного шифрования нужно решить проблемы с сертификатами для { $count } получателей.
+ *[many] Для сквозного шифрования нужно решить проблемы с сертификатами для { $count } получателей.
+ }
+key-notification-disable-encryption =
+ .label = Не шифровать
+ .accesskey = е
+ .tooltiptext = Отключить сквозное шифрование
+key-notification-resolve =
+ .label = Решить…
+ .accesskey = е
+ .tooltiptext = Открыть управление ключами OpenPGP
+can-encrypt-smime-notification = Возможно сквозное шифрование S/MIME.
+can-encrypt-openpgp-notification = Возможно сквозное шифрование OpenPGP.
+can-e2e-encrypt-button =
+ .label = Шифровать
+ .accesskey = ф
+
+## Addressing Area
+
+to-address-row-label =
+ .value = Кому
+# $key (String) - the shortcut key for this field
+show-to-row-main-menuitem =
+ .label = Поле «Кому»
+ .accesskey = м
+ .acceltext = { ctrl-cmd-shift-pretty-prefix }{ $key }
+# No acceltext should be shown.
+# The label should match the show-to-row-button text.
+show-to-row-extra-menuitem =
+ .label = Кому
+ .accesskey = м
+# $key (String) - the shortcut key for this field
+show-to-row-button = Кому
+ .title = Показать поле «Кому» ({ ctrl-cmd-shift-pretty-prefix }{ $key })
+cc-address-row-label =
+ .value = Копия
+# $key (String) - the shortcut key for this field
+show-cc-row-main-menuitem =
+ .label = Поле «Копия»
+ .accesskey = п
+ .acceltext = { ctrl-cmd-shift-pretty-prefix }{ $key }
+# No acceltext should be shown.
+# The label should match the show-cc-row-button text.
+show-cc-row-extra-menuitem =
+ .label = Копия
+ .accesskey = п
+# $key (String) - the shortcut key for this field
+show-cc-row-button = Копия
+ .title = Показать поле «Копия» ({ ctrl-cmd-shift-pretty-prefix }{ $key })
+bcc-address-row-label =
+ .value = Скрытая копия
+# $key (String) - the shortcut key for this field
+show-bcc-row-main-menuitem =
+ .label = Поле «Скрытая копия»
+ .accesskey = ы
+ .acceltext = { ctrl-cmd-shift-pretty-prefix }{ $key }
+# No acceltext should be shown.
+# The label should match the show-bcc-row-button text.
+show-bcc-row-extra-menuitem =
+ .label = Скрытая копия
+ .accesskey = ы
+# $key (String) - the shortcut key for this field
+show-bcc-row-button = Скрытая копия
+ .title = Показать поле «Скрытая копия» ({ ctrl-cmd-shift-pretty-prefix }{ $key })
+extra-address-rows-menu-button =
+ .title = Другие отображаемые поля для адреса
+# $count (Number) - the count of addresses in the "To" and "Cc" fields.
+many-public-recipients-notice =
+ { $count ->
+ [one] В вашем сообщении есть публичный адресат. Вы можете избежать раскрытия адресата, используя вместо этого «Скрытую копию».
+ [few] { $count } адресата в полях «Кому» и «Копия» увидят адреса друг друга. Вы можете избежать раскрытия адресатов, используя вместо этого «Скрытую копию».
+ *[many] { $count } адресатов в полях «Кому» и «Копия» увидят адреса друг друга. Вы можете избежать раскрытия адресатов, используя вместо этого «Скрытую копию».
+ }
+public-recipients-notice-single = У вашего сообщения есть видимый другим получатель. Вы можете избежать раскрытия получателя, используя вместо этого скрытую копию.
+# Variables:
+# $count (Number) - the count of addresses in the "To" and "Cc" fields.
+public-recipients-notice-multi =
+ { $count ->
+ [one] { $count } адресат в полях «Кому» и «Копия» увидит адреса друг друга. Вы можете избежать раскрытия адресатов, используя вместо этого «Скрытую копию».
+ [few] { $count } адресата в полях «Кому» и «Копия» увидят адреса друг друга. Вы можете избежать раскрытия адресатов, используя вместо этого «Скрытую копию».
+ *[many] { $count } адресатов в полях «Кому» и «Копия» увидят адреса друг друга. Вы можете избежать раскрытия адресатов, используя вместо этого «Скрытую копию».
+ }
+many-public-recipients-bcc =
+ .label = Использовать «Скрытую копию»
+ .accesskey = п
+many-public-recipients-ignore =
+ .label = Позволить адресатам видеть адреса друг друга
+ .accesskey = в
+many-public-recipients-prompt-title = Слишком много публичных адресатов
+# $count (Number) - the count of addresses in the public recipients fields.
+many-public-recipients-prompt-msg =
+ { $count ->
+ [one] У вашего сообщения есть публичный адресат. Это может вызвать проблему с приватностью. Вы можете избежать раскрытия адресата, переместив его из «Кому»/«Копия» в «Скрытую копию».
+ [few] У вашего сообщения есть { $count } публичных адресата, которые смогут видеть адреса друг друга. Это может вызвать проблему с приватностью. Вы можете избежать раскрытия адресатов, переместив их из «Кому»/«Копия» в «Скрытую копию».
+ *[many] У вашего сообщения есть { $count } публичных адресатов, которые смогут видеть адреса друг друга. Это может вызвать проблему с приватностью. Вы можете избежать раскрытия адресатов, переместив их из «Кому»/«Копия» в «Скрытую копию».
+ }
+many-public-recipients-prompt-cancel = Отменить отправку
+many-public-recipients-prompt-send = Всё равно отправить
+
+## Notifications
+
+# Variables:
+# $identity (string) - The name of the used identity, most likely an email address.
+compose-missing-identity-warning = Адрес электронной почты, соответствующий адресу в поле От:, не найден. Сообщение будет отправлено с использованием текущего адреса в поле От: и настроек адреса электронной почты { $identity }.
+encrypted-bcc-warning = При отправке зашифрованного сообщения получатели в поле «Скрытая копия» скрыты не полностью. Их могут идентифицировать все получатели.
+encrypted-bcc-ignore-button = Понятно
+auto-disable-e2ee-warning = Сквозное шифрование для этого сообщения было автоматически отключено.
+
+## Editing
+
+
+# Tools
+
+compose-tool-button-remove-text-styling =
+ .tooltiptext = Удалить стиль текста
+
+## Filelink
+
+# A text used in a tooltip of Filelink attachments, whose account has been
+# removed or is unknown.
+cloud-file-unknown-account-tooltip = Выгружено в неизвестную учётную запись Filelink.
+
+# Placeholder file
+
+# Title for the html placeholder file.
+# $filename - name of the file
+cloud-file-placeholder-title = { $filename } - вложение на Filelink
+# A text describing that the file was attached as a Filelink and can be downloaded
+# from the link shown below.
+# $filename - name of the file
+cloud-file-placeholder-intro = Файл { $filename } был прикреплён в виде ссылки на Filelink. Его можно загрузить по указанной ниже ссылке.
+
+# Template
+
+# A line of text describing how many uploaded files have been appended to this
+# message. Emphasis should be on sharing as opposed to attaching. This item is
+# used as a header to a list, hence the colon.
+# Variables:
+# $count (Number) - Number of files.
+cloud-file-count-header =
+ { $count ->
+ [one] Я связал с этим сообщением { $count } файл:
+ [few] Я связал с этим сообщением { $count } файла:
+ *[many] Я связал с этим сообщением { $count } файлов:
+ }
+# A text used in a footer, instructing the reader where to find additional
+# information about the used service provider.
+# $link (string) - html a-tag for a link pointing to the web page of the provider
+cloud-file-service-provider-footer-single = Узнать больше о { $link }.
+# A text used in a footer, instructing the reader where to find additional
+# information about the used service providers. Links for the used providers are
+# split into a comma separated list of the first n-1 providers and a single entry
+# at the end.
+# $firstLinks (string) - comma separated list of html a-tags pointing to web pages
+# of the first n-1 used providers
+# $lastLink (string) - html a-tag pointing the web page of the n-th used provider
+cloud-file-service-provider-footer-multiple = Узнать больше о { $firstLinks } и { $lastLink }.
+# Tooltip for an icon, indicating that the link is protected by a password.
+cloud-file-tooltip-password-protected-link = Ссылка защищена паролем
+# Used in a list of stats about a specific file
+# Service - the used service provider to host the file (Filelink Service: BOX.com)
+# Size - the size of the file (Size: 4.2 MB)
+# Link - the link to the file (Link: https://some.provider.com)
+# Expiry Date - stating the date the link will expire (Expiry Date: 12.12.2022)
+# Download Limit - stating the maximum allowed downloads, before the link becomes invalid
+# (Download Limit: 6)
+cloud-file-template-service-name = Служба Filelink:
+cloud-file-template-size = Размер:
+cloud-file-template-link = Ссылка:
+cloud-file-template-password-protected-link = Ссылка, защищённая паролем:
+cloud-file-template-expiry-date = Срок действия:
+cloud-file-template-download-limit = Лимит на загрузку:
+
+# Messages
+
+cloud-file-connection-error-title = Ошибка соединения
+# Variables:
+# $provider (string) - name of the online storage service that reported the error
+cloud-file-connection-error = { -brand-short-name } не в сети. Не удалось подключиться к { $provider }.
+# Variables:
+# $provider (string) - name of the online storage service that reported the error
+# $filename (string) - name of the file that was uploaded and caused the error
+cloud-file-upload-error-with-custom-message-title = Выгрузка { $filename } на { $provider } не удалась
+cloud-file-rename-error-title = При переименовании произошла ошибка
+# Variables:
+# $provider (string) - name of the online storage service that reported the error
+# $filename (string) - name of the file that was renamed and caused the error
+cloud-file-rename-error = При переименовании { $filename } на { $provider } возникла проблема.
+# Variables:
+# $provider (string) - name of the online storage service that reported the error
+# $filename (string) - name of the file that was renamed and caused the error
+cloud-file-rename-error-with-custom-message-title = Переименование { $filename } на { $provider } не удалось
+# Variables:
+# $provider (string) - name of the online storage service that reported the error
+cloud-file-rename-not-supported = { $provider } не поддерживает переименование уже выгруженных файлов.
+cloud-file-attachment-error-title = Ошибка вложения Filelink
+# Variables:
+# $filename (string) - name of the file that was renamed and caused the error
+cloud-file-attachment-error = Не удалось обновить вложение Filelink { $filename }, так как его локальный файл был перемещён или удалён.
+cloud-file-account-error-title = Ошибка учётной записи Filelink
+# Variables:
+# $filename (string) - name of the file that was renamed and caused the error
+cloud-file-account-error = Не удалось обновить вложение Filelink { $filename }, так как его учётная запись Filelink была удалена.
+
+## Link Preview
+
+link-preview-title = Предпросмотр ссылки
+link-preview-description = { -brand-short-name } может добавлять встроенный предпросмотр при вставке ссылок.
+link-preview-autoadd = По возможности автоматически добавлять предпросмотр ссылок
+link-preview-replace-now = Добавить предпросмотр ссылки для этой ссылки?
+link-preview-yes-replace = Да
+
+## Dictionary selection popup
+
+spell-add-dictionaries =
+ .label = Добавить словари…
+ .accesskey = л
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/migration.ftl b/thunderbird-l10n/ru/localization/ru/messenger/migration.ftl
new file mode 100644
index 0000000000..6c35c283fd
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/migration.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+
+migration-progress-header = Подготовка { -brand-short-name }…
+
+## Migration tasks
+
+
+# These strings are displayed to the user if a migration is taking a long time.
+# They should be short (no more than a handful of words) and in the present tense.
+
+migration-task-test-fast = Тестирование быстрого изменения
+migration-task-test-slow = Тестирование медленного изменения
+migration-task-test-progress = Тестирование индикатора выполнения
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/multimessageview.ftl b/thunderbird-l10n/ru/localization/ru/messenger/multimessageview.ftl
new file mode 100644
index 0000000000..9c245657bd
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/multimessageview.ftl
@@ -0,0 +1,14 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+multi-message-window-title =
+ .title = Информация о сообщении
+selected-messages-label =
+ .label = Выбранные сообщения
+multi-message-archive-button =
+ .label = Архивировать
+ .tooltiptext = Архивировать
+multi-message-delete-button =
+ .label = Удалить
+ .tooltiptext = Удалить
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/openpgp/backupKeyPassword.ftl b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/backupKeyPassword.ftl
new file mode 100644
index 0000000000..06e4296cd0
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/backupKeyPassword.ftl
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+set-password-window =
+ .title = Выберите пароль для резервной копии вашего ключа OpenPGP
+set-password-window-title = Выберите пароль для резервной копии вашего ключа OpenPGP
+set-password-legend = Выберите пароль
+set-password-message = Установленный здесь пароль защищает файл резервной копии секретного ключа OpenPGP, который вы собираетесь создать. Вы должны установить этот пароль для продолжения резервного копирования.
+set-password-backup-pw =
+ .value = Пароль для резервной копии Секретного ключа:
+set-password-repeat-backup-pw =
+ .value = Пароль для резервной копии Секретного ключа (ещё раз):
+set-password-backup-pw-label = Пароль для резервной копии Секретного ключа:
+set-password-backup-pw2-label = Пароль для резервной копии Секретного ключа (ещё раз):
+set-password-reminder = <b>Важно!</b> Если вы забудете пароль к резервной копии секретного ключа, вы не сможете восстановить эту резервную копию позже. Пожалуйста, запишите его в безопасном месте.
+password-quality-meter = Измеритель качества пароля
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/openpgp/changeExpiryDlg.ftl b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/changeExpiryDlg.ftl
new file mode 100644
index 0000000000..65c35cdcad
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/changeExpiryDlg.ftl
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+openpgp-change-key-expiry-title =
+ .title = Изменить срок действия ключа
+openpgp-change-expiry-title = Изменить срок действия ключа
+info-will-expire = Этот ключ в настоящее время действует до { $date }.
+info-already-expired = Срок действия этого ключа истёк.
+info-does-not-expire = Этот ключ в настоящее время является бессрочным.
+info-explanation-1 = <b>После истечения срока действия ключа</b> его будет невозможно использовать для шифрования или цифровой подписи.
+info-explanation-2 = Чтобы использовать этот ключ в течение более длительного периода времени, измените срок его действия, а затем снова отправьте его открытый ключ партнёрам по общению.
+expire-dont-change =
+ .label = Не менять срок действия
+expire-never-label =
+ .label = Ключ никогда не истечёт
+expire-in-label =
+ .label = Срок действия ключа истечёт через:
+expire-in-months = месяцев
+expire-no-change-label = Не менять срок действия
+expire-in-time-label = Срок действия ключа истечёт через:
+expire-never-expire-label = Ключ никогда не истечёт
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/openpgp/composeKeyStatus.ftl b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/composeKeyStatus.ftl
new file mode 100644
index 0000000000..bed6479c1c
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/composeKeyStatus.ftl
@@ -0,0 +1,25 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+openpgp-compose-key-status-intro-need-keys = Чтобы отправить сообщение, зашифрованное сквозным методом, вы должны получить и принять открытый ключ для каждого получателя.
+openpgp-compose-key-status-keys-heading = Наличие ключей OpenPGP:
+openpgp-compose-key-status-title =
+ .title = Безопасность сообщений OpenPGP
+openpgp-compose-key-status-recipient =
+ .label = Получатель
+openpgp-compose-key-status-status =
+ .label = Статус
+openpgp-compose-key-status-open-details = Управление ключами для выбранного получателя…
+openpgp-recip-good = в порядке
+openpgp-recip-missing = ключ недоступен
+openpgp-recip-none-accepted = нет принятого ключа
+openpgp-compose-general-info-alias = { -brand-short-name } обычно требует, чтобы открытый ключ получателя содержал идентификатор пользователя с соответствующим адресом электронной почты. Это можно изменить, используя правила псевдонима получателя OpenPGP.
+openpgp-compose-general-info-alias-learn-more = Подробнее
+openpgp-compose-alias-status-direct =
+ { $count ->
+ [one] сопоставлены с { $count } ключом псевдонима
+ [few] сопоставлены с { $count } ключами псевдонима
+ *[many] сопоставлены с { $count } ключами псевдонима
+ }
+openpgp-compose-alias-status-error = непригодный/недоступный ключ псевдонима
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/openpgp/keyAssistant.ftl b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/keyAssistant.ftl
new file mode 100644
index 0000000000..f1d57e7caa
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/keyAssistant.ftl
@@ -0,0 +1,130 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+openpgp-key-assistant-title = Помощник по ключу OpenPGP
+openpgp-key-assistant-rogue-warning = Остерегайтесь принятия поддельного ключа. Чтобы убедиться, что вы получили правильный ключ, вы должны проверить его. <a data-l10n-name="openpgp-link">Подробнее…</a>
+
+## Encryption status
+
+openpgp-key-assistant-recipients-issue-header = Невозможно зашифровать
+# Variables:
+# $count (Number) - The number of recipients that need attention.
+openpgp-key-assistant-recipients-issue-description =
+ { $count ->
+ [one] Для шифрования необходимо получить и принять пригодные для использования ключи для { $count } получателя. <a data-l10n-name="openpgp-link">Подробнее…</a>
+ [few] Для шифрования необходимо получить и принять пригодные для использования ключи для { $count } получателей. <a data-l10n-name="openpgp-link">Подробнее…</a>
+ *[many] Для шифрования необходимо получить и принять пригодные для использования ключи для { $count } получателей. <a data-l10n-name="openpgp-link">Подробнее…</a>
+ }
+openpgp-key-assistant-info-alias = { -brand-short-name } обычно требует, чтобы открытый ключ получателя содержал идентификатор пользователя с соответствующим адресом электронной почты. Это можно изменить, используя правила псевдонима получателя OpenPGP. <a data-l10n-name="openpgp-link">Подробнее…</a>
+# Variables:
+# $count (Number) - The number of recipients that need attention.
+openpgp-key-assistant-recipients-description =
+ { $count ->
+ [one] У вас уже есть пригодные для использования и принятые ключи для { $count } получателя.
+ [few] У вас уже есть пригодные для использования и принятые ключи для { $count } получателей.
+ *[many] У вас уже есть пригодные для использования и принятые ключи для { $count } получателей.
+ }
+openpgp-key-assistant-recipients-description-no-issues = Это сообщение может быть зашифровано. У вас есть пригодные для использования и принятые ключи для всех получателей.
+
+## Resolve section
+
+# Variables:
+# $recipient (String) - The email address of the recipient needing resolution.
+# $numKeys (Number) - The number of keys.
+openpgp-key-assistant-resolve-title =
+ { $numKeys ->
+ [one] { -brand-short-name } обнаружил следующий $numKeys ключ для { $recipient }.
+ [few] { -brand-short-name } обнаружил следующие $numKeys ключа для { $recipient }.
+ *[many] { -brand-short-name } обнаружил следующие $numKeys ключей для { $recipient }.
+ }
+openpgp-key-assistant-valid-description = Выберите ключ, который вы хотите принять
+# Variables:
+# $numKeys (Number) - The number of available keys.
+openpgp-key-assistant-invalid-title =
+ { $numKeys ->
+ [one] Следующий $numKeys ключ нельзя использовать, пока вы не получите обновление.
+ [few] Следующие $numKeys ключа нельзя использовать, пока вы не получите обновление.
+ *[many] Следующие $numKeys ключей нельзя использовать, пока вы не получите обновление.
+ }
+openpgp-key-assistant-no-key-available = Ключ недоступен.
+openpgp-key-assistant-multiple-keys = Доступно несколько ключей.
+# Variables:
+# $count (Number) - The number of unaccepted keys.
+openpgp-key-assistant-key-unaccepted =
+ { $count ->
+ [one] Доступен $count ключ, но ни один из них ещё не был принят.
+ [few] Доступно $count ключа, но ни один из них ещё не был принят.
+ *[many] Доступно $count ключей, но ни один из них ещё не был принят.
+ }
+# Variables:
+# $date (String) - The expiration date of the key.
+openpgp-key-assistant-key-accepted-expired = Срок действия принятого ключа истёк { $date }.
+openpgp-key-assistant-keys-accepted-expired = Срок действия нескольких принятых ключей истёк.
+# Variables:
+# $date (String) - The expiration date of the key.
+openpgp-key-assistant-this-key-accepted-expired = Этот ключ ранее был принят, но срок его действия истёк { $date }.
+# Variables:
+# $date (String) - The expiration date of the key.
+openpgp-key-assistant-key-unaccepted-expired-one = Срок действия ключа истёк { $date }.
+openpgp-key-assistant-key-unaccepted-expired-many = Срок действия нескольких ключей истёк.
+openpgp-key-assistant-key-fingerprint = Отпечаток
+# Variables:
+# $count (Number) - Number of key sources.
+openpgp-key-assistant-key-source =
+ { $count ->
+ [one] Источник
+ [few] Источники
+ *[many] Источники
+ }
+openpgp-key-assistant-key-collected-attachment = вложение электронной почты
+# Autocrypt is the name of a standard.
+openpgp-key-assistant-key-collected-autocrypt = Заголовок автошифрования
+openpgp-key-assistant-key-collected-keyserver = сервер ключей
+# Web Key Directory (WKD) is a concept.
+openpgp-key-assistant-key-collected-wkd = Каталог веб-ключей
+# Do not translate GnuPG, it's a name of other software.
+openpgp-key-assistant-key-collected-gnupg = Связка ключей GnuPG
+# Variables:
+# $count (Number) - Number of found keys.
+openpgp-key-assistant-keys-has-collected =
+ { $count ->
+ [one] Найден $count ключ, но ни один из них ещё не был принят.
+ [few] Найдено $count ключа, но ни один из них ещё не был принят.
+ *[many] Найдено $count ключей, но ни один из них ещё не был принят.
+ }
+openpgp-key-assistant-key-rejected = Этот ключ ранее был отклонён.
+openpgp-key-assistant-key-accepted-other = Этот ключ ранее был принят для другого адреса электронной почты.
+# Variables:
+# $recipient (String) - The email address of the recipient needing resolution.
+openpgp-key-assistant-resolve-discover-info = Найдите дополнительные или обновленные ключи для { $recipient } в Интернете, или импортируйте их из файла.
+
+## Discovery section
+
+openpgp-key-assistant-discover-title = Выполняется обнаружение в Интернете.
+# Variables:
+# $recipient (String) - The email address which we're discovering keys.
+openpgp-key-assistant-discover-keys = Обнаружение ключей для { $recipient }…
+# Variables:
+# $recipient (String) - The email address which we're discovering keys.
+openpgp-key-assistant-expired-key-update =
+ Найдено обновление для одного из ранее принятых ключей для { $recipient }.
+ Теперь его можно использовать, так как срок его действия не истёк.
+
+## Dialog buttons
+
+openpgp-key-assistant-discover-online-button = Поискать открытые ключи в Интернете…
+openpgp-key-assistant-import-keys-button = Импорт открытых ключей из файла…
+openpgp-key-assistant-issue-resolve-button = Решить…
+openpgp-key-assistant-view-key-button = Просмотр ключа…
+openpgp-key-assistant-recipients-show-button = Показать
+openpgp-key-assistant-recipients-hide-button = Скрыть
+openpgp-key-assistant-cancel-button = Отмена
+openpgp-key-assistant-back-button = Назад
+openpgp-key-assistant-accept-button = Принять
+openpgp-key-assistant-close-button = Закрыть
+openpgp-key-assistant-disable-button = Отключить шифрование
+openpgp-key-assistant-confirm-button = Отправить зашифрованным
+# Variables:
+# $date (String) - The key creation date.
+openpgp-key-assistant-key-created = создан { $date }
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/openpgp/keyWizard.ftl b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/keyWizard.ftl
new file mode 100644
index 0000000000..039e888ec0
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/keyWizard.ftl
@@ -0,0 +1,141 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# $identity (String) - the email address of the currently selected identity
+key-wizard-dialog-window =
+ .title = Добавить персональный ключ OpenPGP для { $identity }
+key-wizard-button =
+ .buttonlabelaccept = Продолжить
+ .buttonlabelhelp = Вернуться
+key-wizard-dialog =
+ .buttonlabelaccept = Продолжить
+ .buttonlabelextra1 = Вернуться назад
+key-wizard-warning = <b>Если у вас есть личный ключ</b> для этого адреса электронной почты, вы должны его импортировать. В противном случае у вас не будет доступа к вашим архивам зашифрованных писем и вы не сможете читать входящие зашифрованные письма от людей, которые всё ещё используют ваш существующий ключ.
+key-wizard-learn-more = Подробнее
+radio-create-key =
+ .label = Создать новый ключ OpenPGP
+ .accesskey = з
+radio-import-key =
+ .label = Импортировать существующий ключ OpenPGP
+ .accesskey = м
+radio-gnupg-key =
+ .label = Использовать свой внешний ключ через GnuPG (например, со смарт-карты)
+ .accesskey = п
+
+## Generate key section
+
+openpgp-generate-key-title = Создать ключ OpenPGP
+openpgp-keygen-secret-protection = Защита секретного ключа
+radio-keygen-no-protection =
+ .label = Без защиты
+radio-keygen-protect-primary-pass =
+ .label = Защита с помощью основного пароля
+radio-keygen-passphrase-protection =
+ .label = Защита с помощью парольной фразы:
+openpgp-passphrase-repeat = Подтвердите парольную фразу:
+openpgp-generate-key-info = <b>Генерация ключа может занять до нескольких минут.</b> Не выходите из приложения, пока идёт процесс генерации ключа. Активный просмотр страниц или выполнение операций с интенсивным использованием диска во время генерации ключа пополнит «пул случайностей» и ускорит процесс. Вы будете предупреждены, когда генерация ключа будет завершена.
+openpgp-keygen-expiry-title = Срок действия ключа
+openpgp-keygen-expiry-description = Определите срок действия вашего нового сгенерированного ключа. Позже вы можете управлять датой, чтобы продлить её при необходимости.
+radio-keygen-expiry =
+ .label = Срок действия ключа истекает через
+ .accesskey = е
+radio-keygen-no-expiry =
+ .label = Ключ не истекает
+ .accesskey = ю
+openpgp-keygen-days-label =
+ .label = дней
+openpgp-keygen-months-label =
+ .label = месяцев
+openpgp-keygen-years-label =
+ .label = лет
+openpgp-keygen-advanced-title = Дополнительные параметры
+openpgp-keygen-advanced-description = Управление дополнительными параметрами вашего ключа OpenPGP.
+openpgp-keygen-keytype =
+ .value = Тип ключа:
+ .accesskey = и
+openpgp-keygen-keysize =
+ .value = Размер ключа:
+ .accesskey = з
+openpgp-keygen-type-rsa =
+ .label = RSA
+openpgp-keygen-type-ecc =
+ .label = ECC (эллиптические кривые)
+openpgp-keygen-button = Создать ключ
+openpgp-keygen-progress-title = Генерация вашего нового ключа OpenPGP…
+openpgp-keygen-import-progress-title = Импорт ваших ключей OpenPGP…
+openpgp-import-success = Ключи OpenPGP успешно импортированы!
+openpgp-import-success-title = Завершение процесса импорта
+openpgp-import-success-description = Чтобы начать использование импортированного ключа OpenPGP для шифрования электронной почты, закройте это диалоговое окно и зайдите в параметры своей учётной записи, чтобы его выбрать.
+openpgp-keygen-confirm =
+ .label = Подтвердить
+openpgp-keygen-dismiss =
+ .label = Отмена
+openpgp-keygen-cancel =
+ .label = Отменить процесс…
+openpgp-keygen-import-complete =
+ .label = Закрыть
+ .accesskey = ы
+openpgp-keygen-missing-username = Для текущей учётной записи не указано имя. Введите значение в поле · «Ваше имя» в параметрах учётной записи.
+openpgp-keygen-long-expiry = Вы не можете создать ключ, срок действия которого истекает более чем через 100 лет.
+openpgp-keygen-short-expiry = Ваш ключ должен быть действителен по меньшей мере один день.
+openpgp-keygen-ongoing = Генерация ключа уже выполняется!
+openpgp-keygen-error-core = Невозможно инициализировать основной сервис OpenPGP
+openpgp-keygen-error-failed = Генерация ключа OpenPGP неожиданно прервалась
+# $key (String) - the ID of the newly generated OpenPGP key
+openpgp-keygen-error-revocation = Ключ OpenPGP создан успешно, но не удалось получить отзыв для ключа { $key }
+openpgp-keygen-abort-title = Прервать генерацию ключа?
+openpgp-keygen-abort = Генерация ключа OpenPGP в настоящее время продолжается, вы уверены, что хотите её отменить?
+# $identity (String) - the name and email address of the currently selected identity
+openpgp-key-confirm = Создать открытый и секретный ключ для { $identity }?
+
+## Import Key section
+
+openpgp-import-key-title = Импортировать существующий личный ключ OpenPGP
+openpgp-import-key-legend = Выберите ранее сохранённую копию файла.
+openpgp-import-key-description = Вы можете импортировать личные ключи, созданные с помощью другого программного обеспечения OpenPGP.
+openpgp-import-key-info = Другое программное обеспечение может описывать личный ключ с помощью альтернативных терминов, например, ваш собственный ключ, секретный ключ, закрытый ключ или пара ключей.
+# $count (Number) - the number of keys found in the selected files
+openpgp-import-key-list-amount-2 =
+ { $count ->
+ [one] { -brand-short-name } обнаружил { $count } ключ, которые можно импортировать.
+ [few] { -brand-short-name } обнаружил { $count } ключа, которые можно импортировать.
+ *[many] { -brand-short-name } обнаружил { $count } ключей, которые можно импортировать.
+ }
+openpgp-import-key-list-description = Подтвердите, какие ключи могут рассматриваться в качестве ваших личных ключей. В качестве личных ключей должны использоваться только ключи, которые вы создали сами и которые идентифицируют вашу личность. Вы можете изменить эту настройку позже в диалоговом окне Свойства ключа.
+openpgp-import-key-list-caption = Ключи, помеченные как Личные, будут перечислены в разделе Сквозное шифрование. Другие будут доступны в Менеджере ключей.
+openpgp-import-keep-passphrases =
+ .label = Сохранить парольную фразу для импортированных секретных ключей
+openpgp-passphrase-prompt-title = Требуется парольная фраза
+# $identity (String) - the id of the key being imported
+openpgp-passphrase-prompt = Введите, пожалуйста, парольную фразу, чтобы разблокировать следующий ключ: { $key }
+openpgp-import-key-button =
+ .label = Выбор файла для импорта…
+ .accesskey = ы
+import-key-file = Импорт файла ключей OpenPGP
+import-key-personal-checkbox =
+ .label = Рассматривать этот ключ в качестве Личного ключа
+gnupg-file = Файлы GnuPG
+import-error-file-size = <b>Ошибка!</b> Файлы размером более 5МБ не поддерживаются.
+# $error (String) - the reported error from the failed key import method
+import-error-failed = <b>Ошибка!</b> Не удалось импортировать файл. { $error }
+# $error (String) - the reported error from the failed key import method
+openpgp-import-keys-failed = <b>Ошибка!</b> Не удалось импортировать ключи. { $error }
+openpgp-import-identity-label = Личность
+openpgp-import-fingerprint-label = Отпечаток
+openpgp-import-created-label = Создан
+openpgp-import-bits-label = Биты
+openpgp-import-key-props =
+ .label = Свойства ключа
+ .accesskey = в
+
+## External Key section
+
+openpgp-external-key-title = Внешний ключ GnuPG
+openpgp-external-key-description = Настройте внешний ключ GnuPG, введя идентификатор ключа
+openpgp-external-key-info = Кроме того, вы должны использовать Менеджер ключей для импорта и принятия соответствующего открытого ключа.
+openpgp-external-key-warning = <b>Вы можете настроить только один внешний ключ GnuPG.</b> Ваша предыдущая запись будет заменена.
+openpgp-save-external-button = Сохранить идентификатор ключа
+openpgp-external-key-label = Идентификатор секретного ключа:
+openpgp-external-key-input =
+ .placeholder = 123456789341298340
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/openpgp/msgReadStatus.ftl b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/msgReadStatus.ftl
new file mode 100644
index 0000000000..469b4993fb
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/msgReadStatus.ftl
@@ -0,0 +1,86 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Message Header Encryption Button
+
+message-header-show-security-info-key = S
+# $type (String) - the shortcut key defined in the message-header-show-security-info-key
+message-security-button =
+ .title =
+ { PLATFORM() ->
+ [macos] Показать защиту сообщения (⌘ ⌥ { message-header-show-security-info-key })
+ *[other] Показать защиту сообщения (Ctrl+Alt+{ message-header-show-security-info-key })
+ }
+openpgp-view-signer-key =
+ .label = Просмотр ключа подписавшего
+openpgp-view-your-encryption-key =
+ .label = Просмотр вашего ключа дешифрования
+openpgp-openpgp = OpenPGP
+openpgp-no-sig = Нет цифровой подписи
+openpgp-no-sig-info = Это сообщение не содержит цифровую подпись отправителя. Её отсутствие означает, что сообщение могло быть отправлено кем-нибудь ещё, притворяющимся, что у него есть этот адрес электронной почты. Также возможно, что сообщение было изменено во время передачи по сети.
+openpgp-uncertain-sig = Неопределённая цифровая подпись
+# Variables:
+# $date (String) - Date with time the signature was made in a short format.
+openpgp-uncertain-sig-with-date = Неопределённая цифровая подпись — Подписано { $date }
+openpgp-invalid-sig = Неверная цифровая подпись
+# Variables:
+# $date (String) - Date with time the signature was made in a short format.
+openpgp-invalid-sig-with-date = Неверная цифровая подпись — Подписано { $date }
+openpgp-bad-date-sig = Несоответствие даты подписи
+# Variables:
+# $date (String) - Date with time the signature was made in a short format.
+openpgp-bad-date-sig-with-date = Несоответствие даты подписи: подписано { $date }
+openpgp-good-sig = Хорошая цифровая подпись
+# Variables:
+# $date (String) - Date with time the signature was made in a short format.
+openpgp-good-sig-with-date = Хорошая цифровая подпись — Подписано { $date }
+openpgp-sig-uncertain-no-key = Это сообщение содержит цифровую подпись, но неясно, корректна ли она. Для проверки подписи необходимо получить копию открытого ключа отправителя.
+openpgp-sig-uncertain-uid-mismatch = Это сообщение содержит цифровую подпись, но обнаружено несоответствие. Сообщение было отправлено с адреса электронной почты, который не соответствует открытому ключу подписавшего.
+openpgp-sig-uncertain-not-accepted = Это сообщение содержит цифровую подпись, но вы ещё не решили, принимать ли ключ подписавшего.
+openpgp-sig-invalid-rejected = Это сообщение содержит цифровую подпись, но вы ранее решили отклонить ключ подписавшего.
+openpgp-sig-invalid-technical-problem = Это сообщение содержит цифровую подпись, но была обнаружена техническая ошибка. Либо сообщение было повреждено, либо было изменено кем-то другим.
+openpgp-sig-invalid-date-mismatch = Это сообщение содержит цифровую подпись, но подпись не была сделана во время отправки сообщения электронной почты. Это может быть попыткой обмануть вас содержимым из неправильного контекста: например, содержимое, написанное в другом актуальном контексте или предназначенное для кого-то другого.
+openpgp-sig-valid-unverified = Это сообщение содержит действительную цифровую подпись, соответствующую ключу, который вы уже приняли. Однако вы ещё не убедились, что ключ действительно принадлежит отправителю.
+openpgp-sig-valid-verified = Это сообщение включает в себя действительную цифровую подпись, соответствующую проверенному ключу.
+openpgp-sig-valid-own-key = Это сообщение включает в себя действительную цифровую подпись, соответствующую вашему личному ключу.
+# Variables:
+# $key (String) - The ID of the OpenPGP key used to create the signature.
+openpgp-sig-key-id = Идентификатор ключа подписавшего: { $key }
+# Variables:
+# $key (String) - The primary ID of the OpenPGP key used to create the signature.
+# $subkey (String) - A subkey of the primary key was used to create the signature, and this is the ID of that subkey.
+openpgp-sig-key-id-with-subkey-id = Идентификатор ключа подписавшего: { $key } (Идентификатор подчинённого ключа: { $subkey })
+# Variables:
+# $key (String) - The ID of the user's OpenPGP key used to decrypt the message.
+openpgp-enc-key-id = Идентификатор вашего ключа дешифрования: { $key }
+# Variables:
+# $key (String) - The primary ID of the user's OpenPGP key used to decrypt the message.
+# $subkey (String) - A subkey of the primary key was used to decrypt the message, and this is the ID of that subkey.
+openpgp-enc-key-with-subkey-id = Идентификатор вашего ключа дешифрования: { $key } (Идентификатор подчинённого ключа: { $subkey })
+openpgp-enc-none = Сообщение не зашифровано
+openpgp-enc-none-label = Сообщение не было зашифровано перед отправкой. Информация, отправленная через Интернет без шифрования, может быть прочитана посторонними людьми во время передачи.
+openpgp-enc-invalid-label = Сообщение не может быть расшифровано
+openpgp-enc-invalid = Это сообщение перед отправкой было зашифровано, но оно не может быть расшифровано.
+openpgp-enc-clueless = Возникли неизвестные проблемы с этим зашифрованным сообщением.
+openpgp-enc-valid-label = Сообщение зашифровано
+openpgp-enc-valid = Это сообщение перед отправкой вам было зашифровано. Шифрование гарантирует, что сообщение может быть прочитано только теми получателями, для которых оно предназначено.
+openpgp-unknown-key-id = Неизвестный ключ
+openpgp-other-enc-additional-key-ids = Кроме того, сообщение было зашифровано для владельцев следующих ключей:
+openpgp-other-enc-all-key-ids = Сообщение было зашифровано для владельцев следующих ключей:
+openpgp-message-header-encrypted-ok-icon =
+ .alt = Расшифровка прошла успешно
+openpgp-message-header-encrypted-notok-icon =
+ .alt = Расшифровка не удалась
+openpgp-message-header-signed-ok-icon =
+ .alt = Хорошая подпись
+# Mismatch icon is used for notok state as well
+openpgp-message-header-signed-mismatch-icon =
+ .alt = Плохая подпись
+openpgp-message-header-signed-unknown-icon =
+ .alt = Статус подписи неизвестен
+openpgp-message-header-signed-verified-icon =
+ .alt = Подтвержденная подпись
+openpgp-message-header-signed-unverified-icon =
+ .alt = Неподтвержденная подпись
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/openpgp/oneRecipientStatus.ftl b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/oneRecipientStatus.ftl
new file mode 100644
index 0000000000..af9cf7b93a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/oneRecipientStatus.ftl
@@ -0,0 +1,52 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+openpgp-one-recipient-status-title =
+ .title = Безопасность сообщений OpenPGP
+openpgp-one-recipient-status-status =
+ .label = Статус
+openpgp-one-recipient-status-key-id =
+ .label = Идентификатор ключа
+openpgp-one-recipient-status-created-date =
+ .label = Создан
+openpgp-one-recipient-status-expires-date =
+ .label = Истекает
+openpgp-one-recipient-status-open-details =
+ .label = Открыть подробности и отредактировать принятие…
+openpgp-one-recipient-status-discover =
+ .label = Поискать новый или обновлённый ключ
+
+openpgp-one-recipient-status-instruction1 = Чтобы отправить получателю сообщение, зашифрованное методом сквозного шифрования, вам необходимо получить его открытый ключ OpenPGP и пометить его как принятый.
+openpgp-one-recipient-status-instruction2 = Чтобы получить его открытый ключ, импортируйте его из письма, которое он вам отправил, и где он содержится. Кроме того, вы можете попробовать найти открытый ключ в каталоге.
+
+openpgp-key-own = Принят (личный ключ)
+openpgp-key-secret-not-personal = Не может использоваться
+openpgp-key-verified = Принят (подтверждён)
+openpgp-key-unverified = Принят (не подтверждён)
+openpgp-key-undecided = Не принят (не определено)
+openpgp-key-rejected = Не принят (отклонён)
+openpgp-key-expired = Истёк срок действия
+
+openpgp-intro = Доступные открытые ключи для { $key }
+
+openpgp-pubkey-import-id = ID: { $kid }
+openpgp-pubkey-import-fpr = Отпечаток: { $fpr }
+
+openpgp-pubkey-import-intro =
+ { $num ->
+ [one] Файл содержит { $num } открытый ключ, как показано ниже:
+ [few] Файл содержит { $num } открытых ключа, как показано ниже:
+ *[many] Файл содержит { $num } открытых ключей, как показано ниже:
+ }
+
+openpgp-pubkey-import-accept =
+ { $num ->
+ [one] Принимаете ли вы эти ключи для проверки цифровых подписей и шифрования сообщений для всех отображённых адресов электронной почты?
+ [few] Принимаете ли вы эти ключи для проверки цифровых подписей и шифрования сообщений для всех отображённых адресов электронной почты?
+ *[many] Принимаете ли вы эти ключи для проверки цифровых подписей и шифрования сообщений для всех отображённых адресов электронной почты?
+ }
+
+pubkey-import-button =
+ .buttonlabelaccept = Импортировать
+ .buttonaccesskeyaccept = м
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/openpgp/openpgp-frontend.ftl b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/openpgp-frontend.ftl
new file mode 100644
index 0000000000..29a33ef6ab
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/openpgp-frontend.ftl
@@ -0,0 +1,52 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+openpgp-manage-keys-openpgp-cmd =
+ .label = Менеджер ключей OpenPGP
+ .accesskey = ж
+openpgp-ctx-decrypt-open =
+ .label = Расшифровать и открыть
+ .accesskey = ш
+openpgp-ctx-decrypt-save =
+ .label = Расшифровать и сохранить как…
+ .accesskey = х
+openpgp-ctx-import-key =
+ .label = Импортировать ключ OpenPGP
+ .accesskey = м
+openpgp-ctx-verify-att =
+ .label = Подтвердить подпись
+ .accesskey = с
+openpgp-has-sender-key = Это сообщение содержит открытый ключ OpenPGP отправителя.
+openpgp-be-careful-new-key = Предупреждение: Новый открытый ключ OpenPGP в этом сообщении отличается от открытых ключей, которые вы ранее приняли для { $email }.
+openpgp-import-sender-key =
+ .label = Импортировать…
+openpgp-search-keys-openpgp =
+ .label = Поискать ключ OpenPGP
+openpgp-missing-signature-key = Это сообщение было подписано ключом, которого у вас ещё нет.
+openpgp-search-signature-key =
+ .label = Поиск…
+# Don't translate the terms "OpenPGP" and "MS-Exchange"
+openpgp-broken-exchange-opened = Это сообщение OpenPGP, которое, судя по всему, было искажено MS-Exchange, не удалось восстановить, так как оно было открыто из локального файла. Скопируйте сообщение в почтовую папку, чтобы попробовать выполнить автоматическое восстановление.
+openpgp-broken-exchange-info = Это сообщение OpenPGP, которое, судя по всему, было искажено MS-Exchange. Если содержимое сообщения не отображается должным образом, вы можете попробовать выполнить автоматическое восстановление.
+openpgp-broken-exchange-repair =
+ .label = Восстановить сообщение
+openpgp-broken-exchange-wait = Пожалуйста, подождите…
+openpgp-has-nested-encrypted-parts = Это сообщение содержит дополнительные зашифрованные части.
+openpgp-show-encrypted-parts = Расшифровать и Показать
+openpgp-cannot-decrypt-because-mdc =
+ Это зашифрованное сообщение, которое использует старый и уязвимый механизм.
+ Оно могло быть изменено во время передачи с намерением украсть его содержимое.
+ Чтобы предотвратить этот риск, содержимое не отображается.
+openpgp-cannot-decrypt-because-missing-key = Секретный ключ, необходимый для расшифровки этого сообщения, недоступен.
+openpgp-partially-signed =
+ Только часть этого сообщения была подписана цифровой подписью с использованием OpenPGP.
+ Если вы щёлкнете по кнопке подтверждения, незащищённые части будут скрыты и будет показан статус цифровой подписи.
+openpgp-partially-encrypted =
+ Только часть этого сообщения была зашифрована с помощью OpenPGP.
+ Читаемые части сообщения, которые уже показаны, не были зашифрованы.
+ Если вы щёлкнете по кнопке расшифровки, будет показано содержимое зашифрованных частей.
+openpgp-reminder-partial-display = Напоминание: Показанное ниже сообщение является лишь частью исходного сообщения.
+openpgp-partial-verify-button = Подтвердить
+openpgp-partial-decrypt-button = Расшифровать
+openpgp-unexpected-key-for-you = Предупреждение. Это сообщение содержит неизвестный ключ OpenPGP, который относится к одному из ваших собственных адресов электронной почты. Если это не один из ваших собственных ключей, это может быть попыткой обмануть других корреспондентов.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/openpgp/openpgp.ftl b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/openpgp.ftl
new file mode 100644
index 0000000000..2c13c4ede6
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/openpgp/openpgp.ftl
@@ -0,0 +1,787 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+e2e-intro-description = Чтобы отправлять зашифрованные сообщения или сообщения с цифровой подписью, вам необходимо настроить технологию шифрования, например, OpenPGP или S/MIME.
+e2e-intro-description-more = Выберите свой личный ключ, чтобы включить использование OpenPGP, или свой личный сертификат, чтобы разрешить использование S/MIME. Для личного ключа или сертификата у вас должен быть соответствующий секретный ключ.
+e2e-signing-description = Цифровая подпись позволяет получателям удостовериться, что сообщение было отправлено именно вами, и что его содержимое не было изменено. Зашифрованные сообщения всегда подписаны по умолчанию.
+e2e-sign-message =
+ .label = Подписывать незашифрованные сообщения
+ .accesskey = ы
+e2e-disable-enc =
+ .label = Отключить шифрование для новых сообщений
+ .accesskey = ю
+e2e-enable-enc =
+ .label = Включить шифрование для новых сообщений
+ .accesskey = ч
+e2e-enable-description = Вы сможете отключить шифрование для отдельных сообщений.
+e2e-advanced-section = Дополнительные параметры
+e2e-attach-key =
+ .label = Прикреплять мой открытый ключ при добавлении цифровой подписи OpenPGP
+ .accesskey = я
+e2e-encrypt-subject =
+ .label = Шифровать тему сообщений OpenPGP
+ .accesskey = м
+e2e-encrypt-drafts =
+ .label = Хранить черновики сообщений в зашифрованном формате
+ .accesskey = ч
+# Do not translate "Autocrypt", it's the name of a standard.
+e2e-autocrypt-headers =
+ .label = Отправлять открытый(е) ключ(и) OpenPGP в заголовках электронной почты для совместимости с Autocrypt.
+ .accesskey = м
+openpgp-key-created-label =
+ .label = Создан
+openpgp-key-expiry-label =
+ .label = Срок действия
+openpgp-key-id-label =
+ .label = Идентификатор ключа
+openpgp-cannot-change-expiry = Это ключ со сложной структурой, изменение срока его действия не поддерживается.
+openpgp-key-man-title =
+ .title = Менеджер ключей OpenPGP
+openpgp-key-man-dialog-title = Менеджер ключей OpenPGP
+openpgp-key-man-generate =
+ .label = Новая ключевая пара
+ .accesskey = в
+openpgp-key-man-gen-revoke =
+ .label = Сертификат отзыва
+ .accesskey = ы
+openpgp-key-man-ctx-gen-revoke-label =
+ .label = Создать и сохранить сертификат отзыва
+openpgp-key-man-file-menu =
+ .label = Файл
+ .accesskey = а
+openpgp-key-man-edit-menu =
+ .label = Правка
+ .accesskey = в
+openpgp-key-man-view-menu =
+ .label = Вид
+ .accesskey = и
+openpgp-key-man-generate-menu =
+ .label = Создание
+ .accesskey = з
+openpgp-key-man-keyserver-menu =
+ .label = Сервер ключей
+ .accesskey = в
+openpgp-key-man-import-public-from-file =
+ .label = Импорт открытых ключей из файла
+ .accesskey = м
+openpgp-key-man-import-secret-from-file =
+ .label = Импорт секретных ключей из файла
+openpgp-key-man-import-sig-from-file =
+ .label = Импорт отзывов ключей из файла
+openpgp-key-man-import-from-clipbrd =
+ .label = Импорт ключей из буфера обмена
+ .accesskey = м
+openpgp-key-man-import-from-url =
+ .label = Импорт ключей из URL
+ .accesskey = п
+openpgp-key-man-export-to-file =
+ .label = Экспорт открытых ключей в файл
+ .accesskey = с
+openpgp-key-man-send-keys =
+ .label = Отправка открытых ключей по электронной почте
+ .accesskey = в
+openpgp-key-man-backup-secret-keys =
+ .label = Резервирование секретных ключей в файл
+ .accesskey = з
+openpgp-key-man-discover-cmd =
+ .label = Поискать ключи в Интернете
+ .accesskey = ь
+openpgp-key-man-publish-cmd =
+ .label = Опубликовать
+ .accesskey = б
+openpgp-key-publish = Опубликовать
+openpgp-key-man-discover-prompt = Чтобы найти ключи OpenPGP в Интернете, на серверах ключей или с использованием протокола WKD, введите адрес электронной почты или идентификатор ключа.
+openpgp-key-man-discover-progress = Поиск…
+# Variables:
+# $keyserver (String) - The address of a server that contains a directory of OpenPGP public keys
+openpgp-key-publish-ok = Открытый ключ отправлен на «{ $keyserver }».
+# Variables:
+# $keyserver (String) - The address of a server that contains a directory of OpenPGP public keys
+openpgp-key-publish-fail = Не удалось отправить открытый ключ на «{ $keyserver }».
+openpgp-key-copy-key =
+ .label = Копировать открытый ключ
+ .accesskey = п
+openpgp-key-export-key =
+ .label = Экспортировать открытый ключ в файл
+ .accesskey = ю
+openpgp-key-backup-key =
+ .label = Создать резервную копию секретного ключа в файле
+ .accesskey = ю
+openpgp-key-send-key =
+ .label = Отправить открытый ключ по электронной почте
+ .accesskey = э
+# Variables:
+# $count (Number) - Number of keys ids to copy.
+openpgp-key-man-copy-key-ids =
+ .label =
+ { $count ->
+ [one] Копировать идентификатор ключа в буфер обмена
+ [few] Копировать идентификаторы ключей в буфер обмена
+ *[many] Копировать идентификаторы ключей в буфер обмена
+ }
+ .accesskey = м
+# Variables:
+# $count (Number) - Number of fingerprints to copy.
+openpgp-key-man-copy-fprs =
+ .label =
+ { $count ->
+ [one] Копировать отпечаток в буфер обмена
+ [few] Копировать отпечатки в буфер обмена
+ *[many] Копировать отпечатки в буфер обмена
+ }
+ .accesskey = ч
+# Variables:
+# $count (Number) - Number of public keys to copy.
+openpgp-key-man-copy-to-clipboard =
+ .label =
+ { $count ->
+ [one] Копировать открытый ключ в буфер обмена
+ [few] Копировать открытые ключи в буфер обмена
+ *[many] Копировать открытые ключи в буфер обмена
+ }
+ .accesskey = в
+openpgp-key-man-ctx-expor-to-file-label =
+ .label = Экспортировать ключи в файл
+openpgp-key-man-ctx-copy =
+ .label = Копировать
+ .accesskey = п
+# Variables:
+# $count (Number) - Number of fingerprints.
+openpgp-key-man-ctx-copy-fprs =
+ .label =
+ { $count ->
+ [one] Отпечаток
+ [few] Отпечатка
+ *[many] Отпечатков
+ }
+ .accesskey = п
+# Variables:
+# $count (Number) - Number of key ids.
+openpgp-key-man-ctx-copy-key-ids =
+ .label =
+ { $count ->
+ [one] Идентификатор ключа
+ [few] Идентификатора ключей
+ *[many] Идентификаторов ключей
+ }
+ .accesskey = е
+# Variables:
+# $count (Number) - Number of public keys.
+openpgp-key-man-ctx-copy-public-keys =
+ .label =
+ { $count ->
+ [one] Открытый ключ
+ [few] Открытых ключа
+ *[many] Открытых ключей
+ }
+ .accesskey = ы
+openpgp-key-man-close =
+ .label = Закрыть
+openpgp-key-man-reload =
+ .label = Перезагрузить кеш ключей
+ .accesskey = ш
+openpgp-key-man-change-expiry =
+ .label = Изменить срок действия
+ .accesskey = м
+openpgp-key-man-refresh-online =
+ .label = Обновить онлайн
+ .accesskey = н
+openpgp-key-man-ignored-ids =
+ .label = Адреса электронной почты
+openpgp-key-man-del-key =
+ .label = Удалить ключи
+ .accesskey = л
+openpgp-delete-key =
+ .label = Удалить ключ
+ .accesskey = л
+openpgp-key-man-revoke-key =
+ .label = Отозвать ключ
+ .accesskey = з
+openpgp-key-man-key-props =
+ .label = Свойства ключа
+ .accesskey = й
+openpgp-key-man-key-more =
+ .label = Больше
+ .accesskey = о
+openpgp-key-man-view-photo =
+ .label = Фото идентификатора
+ .accesskey = к
+openpgp-key-man-ctx-view-photo-label =
+ .label = Просмотреть фото идентификатора
+openpgp-key-man-show-invalid-keys =
+ .label = Показать недействительные ключи
+ .accesskey = з
+openpgp-key-man-show-others-keys =
+ .label = Показать ключи других людей
+ .accesskey = з
+openpgp-key-man-user-id-label =
+ .label = Имя
+openpgp-key-man-fingerprint-label =
+ .label = Отпечаток
+openpgp-key-man-select-all =
+ .label = Выбрать все ключи
+ .accesskey = б
+openpgp-key-man-empty-tree-tooltip =
+ .label = Введите поисковый запрос в поле выше
+openpgp-key-man-nothing-found-tooltip =
+ .label = Нет ключей, соответствующих вашему поисковому запросу
+openpgp-key-man-please-wait-tooltip =
+ .label = Пожалуйста, подождите, пока ключи загружаются…
+openpgp-key-man-filter-label =
+ .placeholder = Поиск ключей
+openpgp-key-man-select-all-key =
+ .key = A
+openpgp-key-man-key-details-key =
+ .key = I
+openpgp-ign-addr-intro = Вы принимаете использование этого ключа для следующих выбранных адресов электронной почты:
+openpgp-key-details-doc-title = Свойства ключа
+openpgp-key-details-signatures-tab =
+ .label = Сертификации
+openpgp-key-details-structure-tab =
+ .label = Структура
+openpgp-key-details-uid-certified-col =
+ .label = Идентификатор пользователя / Сертифицировано
+openpgp-key-details-key-id-label = ID ключа
+openpgp-key-details-user-id3-label = Заявленный владелец ключа
+openpgp-key-details-id-label =
+ .label = Идентификатор
+openpgp-key-details-key-type-label = Тип
+openpgp-key-details-key-part-label =
+ .label = Часть ключа
+openpgp-key-details-attr-ignored = Предупреждение. Этот ключ может работать не так, как ожидалось, поскольку некоторые его свойства небезопасны и могут быть проигнорированы.
+openpgp-key-details-attr-upgrade-sec = Вы должны обновить небезопасные свойства.
+openpgp-key-details-attr-upgrade-pub = Вы должны попросить владельца этого ключа обновить небезопасные свойства.
+openpgp-key-details-upgrade-unsafe =
+ .label = Обновить небезопасные свойства
+ .accesskey = в
+openpgp-key-details-upgrade-ok = Ключ успешно обновлен. Вам следует поделиться обновлённым открытым ключом со своими корреспондентами.
+openpgp-key-details-algorithm-label =
+ .label = Алгоритм
+openpgp-key-details-size-label =
+ .label = Размер
+openpgp-key-details-created-label =
+ .label = Создан
+openpgp-key-details-created-header = Создан
+openpgp-key-details-expiry-label =
+ .label = Срок действия
+openpgp-key-details-expiry-header = Срок действия
+openpgp-key-details-usage-label =
+ .label = Использование
+openpgp-key-details-fingerprint-label = Отпечаток
+openpgp-key-details-legend-secret-missing = Недоступно для ключей, помеченных (!) как закрытый ключ.
+openpgp-key-details-sel-action =
+ .label = Выберите действие…
+ .accesskey = б
+openpgp-card-details-close-window-label =
+ .buttonlabelaccept = Закрыть
+openpgp-acceptance-label =
+ .label = Ваше согласие
+openpgp-acceptance-rejected-label =
+ .label = Нет, отклонить этот ключ.
+openpgp-acceptance-undecided-label =
+ .label = Пока нет, может позже.
+openpgp-acceptance-unverified-label =
+ .label = Да, но правильность ключа мною не проверена.
+openpgp-acceptance-verified-label =
+ .label = Да, правильность отпечатка ключа лично мною проверена.
+key-accept-personal =
+ Для этого ключа у вас есть как открытая, так и секретная часть. Вы можете использовать его в качестве личного ключа.
+ Если он был передан вам кем-то другим, не используйте его в качестве личного.
+openpgp-personal-no-label =
+ .label = Нет, не использовать его как мой личный ключ.
+openpgp-personal-yes-label =
+ .label = Да, рассматривать этот ключ как личный ключ.
+openpgp-passphrase-protection =
+ .label = Защита парольной фразой
+openpgp-passphrase-status-unprotected = Без защиты
+openpgp-passphrase-status-primary-password = Защищено основным паролем { -brand-short-name }
+openpgp-passphrase-status-user-passphrase = Защищено парольной фразой
+openpgp-passphrase-instruction-unprotected = Установить парольную фразу для защиты этого ключа
+openpgp-passphrase-instruction-primary-password = В качестве альтернативы защитите этот ключ с помощью отдельной парольной фразы.
+openpgp-passphrase-instruction-user-passphrase = Разблокируйте этот ключ, чтобы изменить его защиту.
+openpgp-passphrase-unlock = Разблокировать
+openpgp-passphrase-unlocked = Ключ успешно разблокирован.
+openpgp-remove-protection = Снять защиту парольной фразой
+openpgp-use-primary-password = Удалить парольную фразу и защитить с помощью основного пароля
+openpgp-passphrase-new = Новая парольная фраза
+openpgp-passphrase-new-repeat = Подтвердить новую парольную фразу
+openpgp-passphrase-set = Установить парольную фразу
+openpgp-passphrase-change = Изменить парольную фразу
+openpgp-copy-cmd-label =
+ .label = Копировать
+
+## e2e encryption settings
+
+# $identity (String) - the email address of the currently selected identity
+openpgp-description-no-key = { -brand-short-name } не имеет личного ключа OpenPGP для <b>{ $identity }</b>
+# $count (Number) - the number of configured keys associated with the current identity
+# $identity (String) - the email address of the currently selected identity
+openpgp-description-has-keys =
+ { $count ->
+ [one] { -brand-short-name } обнаружил { $count } личный ключ OpenPGP, связанный с <b>{ $identity }</b>
+ [few] { -brand-short-name } обнаружил { $count } личных ключа OpenPGP, связанных с <b>{ $identity }</b>
+ *[many] { -brand-short-name } обнаружил { $count } личных ключей OpenPGP, связанных с <b>{ $identity }</b>
+ }
+# $key (String) - the currently selected OpenPGP key
+openpgp-selection-status-have-key = Ваша текущая конфигурация использует идентификатор ключа <b>{ $key }</b>
+# $key (String) - the currently selected OpenPGP key
+openpgp-selection-status-error = Ваша текущая конфигурация использует ключ <b>{ $key }</b>, срок которого истёк.
+openpgp-add-key-button =
+ .label = Добавить ключ…
+ .accesskey = б
+e2e-learn-more = Узнать больше
+openpgp-keygen-success = Ключ OpenPGP успешно создан!
+openpgp-keygen-import-success = Ключи OpenPGP успешно импортированы!
+openpgp-keygen-external-success = Идентификатор внешнего ключа GnuPG сохранён!
+
+## OpenPGP Key selection area
+
+openpgp-radio-none =
+ .label = Нет
+openpgp-radio-none-desc = Не использовать OpenPGP для этой учётной записи.
+openpgp-radio-key-not-usable = Этот ключ нельзя использовать в качестве личного ключа, так как секретный ключ отсутствует!
+openpgp-radio-key-not-accepted = Чтобы использовать этот ключ, вы должны одобрить его как личный ключ!
+openpgp-radio-key-not-found = Не удалось найти этот ключ! Если вы хотите его использовать, вы должны импортировать его в { -brand-short-name }.
+# $date (String) - the future expiration date of when the OpenPGP key will expire
+openpgp-radio-key-expires = Истекает: { $date }
+# $date (String) - the past expiration date of when the OpenPGP key expired
+openpgp-radio-key-expired = Срок действия истёк: { $date }
+openpgp-key-expires-within-6-months-icon =
+ .title = Ключ истекает менее чем через 6 месяцев
+openpgp-key-has-expired-icon =
+ .title = Срок действия ключа истёк
+openpgp-suggest-publishing-key = Публикация открытого ключа на сервере ключей позволяет другим обнаружить его.
+openpgp-key-expand-section =
+ .tooltiptext = Дополнительная информация
+openpgp-key-revoke-title = Отозвать ключ
+openpgp-key-edit-title = Изменить ключ OpenPGP
+openpgp-key-edit-date-title = Продлить срок действия
+openpgp-manager-description = Используйте Менеджер ключей OpenPGP, чтобы просматривать и управлять открытыми ключами ваших корреспондентов и всеми другими ключами, не перечисленными выше.
+openpgp-manager-button =
+ .label = Менеджер ключей OpenPGP
+ .accesskey = ж
+openpgp-key-remove-external =
+ .label = Удалить идентификатор внешнего ключа
+ .accesskey = л
+key-external-label = Внешний ключ GnuPG
+
+## Strings in keyDetailsDlg.xhtml
+
+key-type-public = открытый ключ
+key-type-primary = основной ключ
+key-type-subkey = подчинённый ключ
+key-type-pair = ключевая пара (секретный и открытый ключ)
+key-expiry-never = никогда
+key-usage-encrypt = Зашифровать
+key-usage-sign = Подписать
+key-usage-certify = Удостоверить
+key-usage-authentication = Аутентификация
+key-does-not-expire = У ключа нет срока действия
+# Variables:
+# $keyExpiry (String) - Date the key expired on.
+key-expired-date = Срок действия ключа истёк { $keyExpiry }
+key-expired-simple = Срок действия ключа истёк
+key-revoked-simple = Ключ был отозван
+key-do-you-accept = Принимаете ли вы этот ключ для проверки цифровых подписей и шифрования сообщений?
+# Variables:
+# $addr (String) - Email address the key claims it belongs to.
+key-verification = Проверьте отпечаток ключа, используя безопасный канал связи, отличный от электронной почты, чтобы убедиться, что это действительно ключ { $addr }.
+
+## Strings enigmailMsgComposeOverlay.js
+
+# Variables:
+# $problem (String) - Error message from key usability check.
+cannot-use-own-key-because = Не удалось отправить сообщение, так как есть проблема с вашим личным ключом. { $problem }
+window-locked = Окно составления сообщения заблокировано; отправка отменена
+
+## Strings in keyserver.jsm
+
+keyserver-error-aborted = Прервано
+keyserver-error-unknown = Произошла неизвестная ошибка
+keyserver-error-server-error = Сервер ключей сообщил об ошибке.
+keyserver-error-import-error = Не удалось импортировать загруженный ключ.
+keyserver-error-unavailable = Сервер ключей недоступен.
+keyserver-error-security-error = Сервер ключей не поддерживает безопасное соединение.
+keyserver-error-certificate-error = Сертификат сервера ключей недействителен.
+keyserver-error-unsupported = Сервер ключей не поддерживается.
+
+## Strings in mimeWkdHandler.jsm
+
+wkd-message-body-req =
+ Ваш провайдер электронной почты обработал ваш запрос на выгрузку вашего открытого ключа в каталог веб-ключей OpenPGP.
+ Пожалуйста, подтвердите, чтобы завершить публикацию вашего открытого ключа.
+wkd-message-body-process =
+ Это электронное письмо, связанное с автоматической обработкой для выгрузки вашего открытого ключа в каталог веб-ключей OpenPGP.
+ Вам не нужно предпринимать каких-либо ручных действий на этом этапе.
+
+## Strings in persistentCrypto.jsm
+
+# Variables:
+# $subject (String) - Subject of the message.
+converter-decrypt-body-failed =
+ Не удалось расшифровать сообщение с темой
+ { $subject }.
+ Вы хотите повторить попытку с другой парольной фразой или пропустить сообщение?
+
+## Strings filters.jsm
+
+filter-folder-required = Вы должны выбрать целевую папку.
+filter-decrypt-move-warn-experimental =
+ Предупреждение — действие фильтра «Всегда расшифровывать» может привести к уничтожению сообщений.
+ Мы настоятельно рекомендуем сначала попробовать фильтр «Создать расшифрованную копию», тщательно протестировать результат и начать использовать этот фильтр только после того, как вы будете удовлетворены результатом.
+filter-term-pgpencrypted-label = Зашифровано OpenPGP
+filter-key-required = Вы должны выбрать ключ получателя.
+# Variables:
+# $desc (String) - Email address to look for a key of.
+filter-key-not-found = Не удалось найти ключ шифрования для '{ $desc }'.
+# Variables:
+# $desc (String) - The ID of a secret key that is required to read the email after the user executes the current action.
+filter-warn-key-not-secret =
+ Предупреждение — действие фильтра «Зашифровывать ключом» заменяет получателей.
+ Если у вас нет секретного ключа для '{ $desc }', вы больше не сможете читать электронные письма.
+
+## Strings filtersWrapper.jsm
+
+filter-decrypt-move-label = Всегда расшифровывать (OpenPGP)
+filter-decrypt-copy-label = Создать расшифрованную копию (OpenPGP)
+filter-encrypt-label = Зашифровывать ключом (OpenPGP)
+
+## Strings in enigmailKeyImportInfo.js
+
+import-info-title =
+ .title = Успешно! Ключи импортированы
+import-info-bits = Биты
+import-info-created = Создано
+import-info-fpr = Отпечаток
+import-info-details = Просмотреть подробности и управлять принятием ключа
+import-info-no-keys = Ключи не импортированы.
+
+## Strings in enigmailKeyManager.js
+
+import-from-clip = Вы хотите импортировать некоторые ключи из буфера обмена?
+import-from-url = Загрузите открытый ключ по этому URL:
+copy-to-clipbrd-failed = Не удалось скопировать выделенные ключи в буфер обмена.
+copy-to-clipbrd-ok = Ключи скопированы в буфер обмена
+# Variables:
+# $userId (String) - User id of the key.
+delete-secret-key =
+ ПРЕДУПРЕЖДЕНИЕ: Вы собираетесь удалить секретный ключ!
+
+ Если вы удалите свой секретный ключ, вы больше не сможете расшифровывать любые сообщения, зашифрованные для расшифровки этим ключом, а также не сможете его отозвать.
+
+ Вы действительно хотите удалить ОБА ключа, секретный и открытый
+ '{ $userId }'?
+delete-mix =
+ ПРЕДУПРЕЖДЕНИЕ: Вы собираетесь удалить секретные ключи!
+ Если вы удалите свой секретный ключ, вы больше не сможете расшифровывать любые сообщения, зашифрованные для расшифровки этим ключом.
+ Вы действительно хотите удалить ОБА ключа, секретный и открытый?
+# Variables:
+# $userId (String) - User id of the key.
+delete-pub-key =
+ Вы хотите удалить открытый ключ
+ '{ $userId }'?
+delete-selected-pub-key = Вы хотите удалить открытые ключи?
+refresh-all-question = Вы не выбрали ни одного ключа. Хотите обновить ВСЕ ключи?
+key-man-button-export-sec-key = Экспорт &секретных ключей
+key-man-button-export-pub-key = Экспорт только &открытых ключей
+key-man-button-refresh-all = &Обновить все ключи
+key-man-loading-keys = Загрузка ключей, пожалуйста, подождите…
+ascii-armor-file = Защищённые файлы ASCII (*.asc)
+no-key-selected = Вы должны выбрать хотя бы один ключ, чтобы выполнить выбранную операцию
+export-to-file = Экспорт открытого ключа в файл
+export-keypair-to-file = Экспорт секретного и открытого ключа в файл
+export-secret-key = Вы хотите добавить секретный ключ в сохранённый файл ключей OpenPGP?
+save-keys-ok = Ключи успешно сохранены
+save-keys-failed = Не удалось сохранить ключи
+default-pub-key-filename = Экспортированные_открытые_ключи
+default-pub-sec-key-filename = Резервная_копия_секретных_ключей
+refresh-key-warn = Предупреждение: в зависимости от числа ключей и скорости соединения обновление всех ключей может быть довольно длительным процессом!
+preview-failed = Не удалось прочитать файл с открытым ключом.
+# Variables:
+# $reason (String) - Error description.
+general-error = Ошибка: { $reason }
+dlg-button-delete = &Удалить
+
+## Account settings export output
+
+openpgp-export-public-success = <b>Открытый ключ успешно экспортирован!</b>
+openpgp-export-public-fail = <b>Не удалось экспортировать выбранный открытый ключ!</b>
+openpgp-export-secret-success = <b>Секретный ключ успешно экспортирован!</b>
+openpgp-export-secret-fail = <b>Не удалось экспортировать выбранный секретный ключ!</b>
+
+## Strings in keyObj.jsm
+## Variables:
+## $userId (String) - The name and/or email address that is mentioned in the key's information.
+## $keyId (String) - Key id for the key entry.
+
+key-ring-pub-key-revoked = Ключ { $userId } (идентификатор ключа { $keyId }) отозван.
+key-ring-pub-key-expired = Срок действия ключа { $userId } (идентификатор ключа { $keyId }) истёк.
+key-ring-no-secret-key = У вас, судя по всему, нет секретного ключа для { $userId } (идентификатор ключа { $keyId }) в вашей связке ключей; вы не сможете использовать ключ для подписи.
+key-ring-pub-key-not-for-signing = Ключ { $userId } (идентификатор ключа { $keyId }) нельзя использовать для подписи.
+key-ring-pub-key-not-for-encryption = Ключ { $userId } (идентификатор ключа { $keyId }) нельзя использовать для шифрования.
+key-ring-sign-sub-keys-revoked = Все подключи ключа для подписи { $userId } (идентификатор ключа { $keyId }) отозваны.
+key-ring-sign-sub-keys-expired = Срок действия всех подключей ключа для подписи { $userId } (идентификатор ключа { $keyId }) истёк.
+key-ring-enc-sub-keys-revoked = Все подключи ключа для шифрования { $userId } (идентификатор ключа { $keyId }) отозваны.
+key-ring-enc-sub-keys-expired = Срок действия всех подключей ключа для шифрования { $userId } (идентификатор ключа { $keyId }) истёк.
+
+## Strings in gnupg-keylist.jsm
+
+keyring-photo = Фото
+user-att-photo = Атрибут пользователя (изображение JPEG)
+
+## Strings in key.jsm
+
+already-revoked = Этот ключ уже был отозван.
+# $identity (String) - the id and associated user identity of the key being revoked
+revoke-key-question =
+ Вы собираетесь отозвать ключ '{ $identity }'.
+ Вы больше не сможете подписывать сообщения этим ключом, и после распространения сведений об отзыве другие не смогут более шифровать на этот ключ. Вы всё ещё сможете использовать этот ключ для расшифровки старых сообщений.
+ Вы хотите продолжить?
+# $keyId (String) - the id of the key being revoked
+revoke-key-not-present =
+ У вас нет ключа (0x{ $keyId }), который соответствует этому сертификату отзыва!!
+ Если вы потеряли свой ключ, вы должны импортировать его (например, с сервера ключей) перед импортом сертификата отзыва!
+# $keyId (String) - the id of the key being revoked
+revoke-key-already-revoked = Ключ 0x{ $keyId } уже был отозван.
+key-man-button-revoke-key = &Отозвать ключ
+openpgp-key-revoke-success = Ключ успешно отозван.
+after-revoke-info =
+ Ключ был отозван.
+ Поделитесь этим открытым ключом снова, отправив по электронной почте или выгрузив его на сервера ключей, чтобы сообщить другим, что вы отозвали свой ключ.
+ Как только программное обеспечение, используемое другими людьми, узнает об отзыве, оно прекратит использовать ваш старый ключ.
+ Если вы используете новый ключ для того же адреса электронной почты и прикрепляете новый открытый ключ к отправляемым сообщениям электронной почты, информация о вашем отозванном старом ключе будет автоматически включена.
+
+## Strings in keyRing.jsm & decryption.jsm
+
+key-man-button-import = &Импортировать
+delete-key-title = Удалить ключ OpenPGP
+delete-external-key-title = Удалить внешний ключ GnuPG
+delete-external-key-description = Вы хотите удалить этот идентификатор внешнего ключа GnuPG?
+key-in-use-title = Ключ OpenPGP сейчас используется
+delete-key-in-use-description = Операция не удалась! Выбранный вами ключ удалить нельзя, так как в настоящее время он используется этой учётной записью. Выберите другой ключ или не выбирайте ключей и попробуйте снова.
+revoke-key-in-use-description = Операция не удалась! Выбранный вами ключ отозвать нельзя, так как в настоящее время он используется этой учётной записью. Выберите другой ключ или не выбирайте ключей и попробуйте снова.
+
+## Strings used in errorHandling.jsm
+
+# Variables:
+# $keySpec (String) - Email address.
+key-error-key-spec-not-found = Адрес электронной почты '{ $keySpec }' не может быть сопоставлен с ключом в вашей связке.
+# $keySpec (String) - Key id.
+key-error-key-id-not-found = Сконфигурированный идентификатор ключа '{ $keySpec }' не найден в вашей связке.
+# $keySpec (String) - Key id.
+key-error-not-accepted-as-personal = Вы не подтвердили, что ключ с идентификатором '{ $keySpec }' является вашим личным ключом.
+
+## Strings used in enigmailKeyManager.js & windows.jsm
+
+need-online = Выбранная вами функция недоступна в автономном режиме. Пожалуйста, подключитесь к Интернету и попробуйте снова.
+
+## Strings used in keyRing.jsm & keyLookupHelper.jsm
+
+no-key-found2 = Мы не смогли найти пригодный для использования ключ, соответствующий заданным критериям поиска.
+no-update-found = У вас уже есть ключи, которые были обнаружены онлайн.
+
+## Strings used in keyRing.jsm & GnuPGCryptoAPI.jsm
+
+fail-key-extract = Ошибка — Команда извлечения ключа не выполнена
+
+## Strings used in keyRing.jsm
+
+fail-cancel = Ошибка — Получение ключа отменено пользователем
+not-first-block = Ошибка — Первый блок OpenPGP не является блоком открытого ключа
+import-key-confirm = Импортировать открытые ключи, встроенные в сообщение?
+fail-key-import = Ошибка — Не удалось импортировать ключ
+# Variables:
+# $output (String) - File that writing was attempted to.
+file-write-failed = Не удалось записать в файл { $output }
+no-pgp-block = Ошибка — Не найден действительный защищённый блок данных OpenPGP
+confirm-permissive-import = Импорт не удался. Ключ, который вы пытаетесь импортировать, может быть повреждён или использовать неизвестные атрибуты. Вы хотите попытаться импортировать корректные части? Это может привести к импорту неполных ключей или ключей, которые невозможно использовать.
+
+## Strings used in trust.jsm
+
+key-valid-unknown = неизвестный
+key-valid-invalid = недействительный
+key-valid-disabled = отключён
+key-valid-revoked = отозван
+key-valid-expired = просрочен
+key-trust-untrusted = нет доверия
+key-trust-marginal = граничное
+key-trust-full = полное
+key-trust-ultimate = окончательное
+key-trust-group = (группа)
+
+## Strings used in commonWorkflows.js
+
+import-key-file = Импорт файла ключей OpenPGP
+import-rev-file = Импорт файла отзыва OpenPGP
+gnupg-file = Файлы GnuPG
+import-keys-failed = Не удалось импортировать ключи
+# Variables:
+# $key (String) - Key id to unlock.
+# $date (String) - The date on which the key was created
+# $username_and_email (String) - The user name, and/or the email address which the key owner has set for the key.
+passphrase-prompt2 = Введите парольную фразу, чтобы разблокировать секретный ключ с идентификатором { $key }, созданный { $date }, { $username_and_email }
+# Variables:
+# $subkey (String) - Key id to unlock, which is a subkey.
+# $key (String) - This is the main key, to which the subkey belongs.
+# $date (String) - The date on which the key was created
+# $username_and_email (String) - The user name, and/or the email address which the key owner has set for the key.
+passphrase-prompt2-sub = Введите парольную фразу, чтобы разблокировать секретный ключ с идентификатором { $subkey }, который является подключом ключа с идентификатором { $key }, созданного { $date }, { $username_and_email }
+file-to-big-to-import = Этот файл слишком велик. Пожалуйста, не импортируйте большой набор ключей за один раз.
+
+## Strings used in enigmailKeygen.js
+
+save-revoke-cert-as = Создать и сохранить сертификат отзыва
+revoke-cert-ok = Сертификат отзыва успешно создан. Вы можете использовать его для аннулирования вашего открытого ключа, например, в случае утери своего секретного ключа.
+revoke-cert-failed = Сертификат отзыва не может быть создан.
+gen-going = Генерация ключа уже выполняется!
+keygen-missing-user-name = Не указано имя для выбранной учётной записи/личности. Введите, пожалуйста значение в поле «Ваше имя» в параметрах учётной записи.
+expiry-too-short = Ваш ключ должен быть действителен по меньшей мере один день.
+expiry-too-long = Вы не можете создать ключ, срок действия которого истекает более чем через 100 лет.
+# Variables:
+# $id (String) - Name and/or email address to generate keys for.
+key-confirm = Создать открытый и секретный ключ для { $id }?
+key-man-button-generate-key = &Сгенерировать ключ
+key-abort = Прервать генерацию ключа?
+key-man-button-generate-key-abort = &Прервать генерацию ключа
+key-man-button-generate-key-continue = &Продолжить генерацию ключа
+
+## Strings used in enigmailMessengerOverlay.js
+
+failed-decrypt = Ошибка — Расшифровка не удалась
+fix-broken-exchange-msg-failed = Не удалось восстановить сообщение.
+# Variables:
+# $attachment (String) - File name of the signature file.
+attachment-no-match-from-signature = Не удалось сопоставить файл подписи '{ $attachment }' с вложением
+# Variables:
+# $attachment (String) - File name of the attachment.
+attachment-no-match-to-signature = Не удалось сопоставить вложение '{ $attachment }' с файлом подписи
+# Variables:
+# $attachment (String) - File name of the attachment
+signature-verified-ok = Подпись для вложения { $attachment } была успешно проверена
+# Variables:
+# $attachment (String) - File name of the attachment
+signature-verify-failed = Подпись для вложения { $attachment } не может быть проверена
+decrypt-ok-no-sig =
+ Предупреждение
+ Расшифровка прошла успешно, но подпись не была корректно проверена
+msg-ovl-button-cont-anyway = &Продолжить в любом случае
+enig-content-note = *Вложения этого сообщения не были подписаны или зашифрованы*
+
+## Strings used in enigmailMsgComposeOverlay.js
+
+msg-compose-button-send = &Отправить сообщение
+msg-compose-details-button-label = Подробности…
+msg-compose-details-button-access-key = н
+send-aborted = Операция отправки прервана.
+# Variables:
+# $key (String) - Key id.
+key-not-trusted = Недостаточно доверия к ключу '{ $key }'
+# Variables:
+# $key (String) - Key id.
+key-not-found = Ключ '{ $key }' не найден
+# Variables:
+# $key (String) - Key id.
+key-revoked = Ключ '{ $key }' отозван
+# Variables:
+# $key (String) - Key id.
+key-expired = Срок действия ключа '{ $key }' истёк
+msg-compose-internal-error = Произошла внутренняя ошибка.
+keys-to-export = Выберите ключи OpenPGP для вставки
+msg-compose-partially-encrypted-inlinePGP =
+ Сообщение, на которое вы отвечаете, состоит как из незашифрованных, так и из зашифрованных частей. Если отправитель изначально не смог расшифровать некоторые части сообщения, возможно, происходит утечка конфиденциальной информации, которую отправитель не смог первоначально расшифровать сам.
+ Пожалуйста, попробуйте удалить весь цитируемый текст из вашего ответа данному отправителю.
+msg-compose-cannot-save-draft = Ошибка при сохранении черновика
+msg-compose-partially-encrypted-short = Остерегайтесь утечки конфиденциальной информации — частично зашифрованной электронной почты.
+quoted-printable-warn =
+ Вы включили кодировку «quoted-printable» для отправляемых сообщений. Это может привести к неправильной расшифровке и/или проверке вашего сообщения.
+ Вы хотите отключить отправку сообщений в «quoted-printable» сейчас?
+# Variables:
+# $width (Number) - Number of characters per line.
+minimal-line-wrapping =
+ Вы настроили перенос строки после { $width } символов. Для корректного шифрования и/или подписи это значение должно быть не менее 68.
+ Вы хотите установить перенос строки после 68 символов сейчас?
+sending-news =
+ Операция зашифрованной отправки прервана.
+ Это сообщение не может быть зашифровано, потому что есть получатели группы новостей. Пожалуйста, отправьте сообщение повторно без шифрования.
+send-to-news-warning =
+ Предупреждение: вы собираетесь отправить зашифрованное письмо в группу новостей.
+ Это не рекомендуется, потому что это имеет смысл, только если все члены группы смогут дешифровать сообщение, то есть сообщение должно быть зашифровано ключами всех участников группы. Пожалуйста, отправляйте это сообщение, только если вы точно знаете, что делаете.
+ Продолжить?
+save-attachment-header = Сохранить расшифрованное вложение
+possibly-pgp-mime = Возможно, сообщение зашифровано или подписано PGP/MIME; используйте функцию «Расшифровать/Подтвердить» для проверки
+# Variables:
+# $key (String) - Sender email address.
+cannot-send-sig-because-no-own-key = Не удалось подписать это сообщение, потому что вы ещё не настроили сквозное шифрования для <{ $key }>
+# Variables:
+# $key (String) - Sender email address.
+cannot-send-enc-because-no-own-key = Не удалось отправить это сообщение в зашифрованном виде, потому что вы ещё не настроили сквозное шифрования для <{ $key }>
+
+## Strings used in decryption.jsm
+
+# Variables:
+# $key (String) - Newline separated list of a tab character then name and/or email address mentioned in the key followed by the key id in parenthesis.
+do-import-multiple =
+ Импортировать следующие ключи?
+ { $key }
+# Variables:
+# $name (String) - Name and/or email address mentioned in the key.
+# $id (String) - Key id of the key.
+do-import-one = Импортировать { $name } ({ $id })?
+cant-import = Ошибка импорта открытого ключа
+unverified-reply = Часть сообщения с отступом (ответ), вероятно, была изменена
+key-in-message-body = В теле сообщения был найден ключ. Щёлкните «Импортировать ключ», чтобы импортировать ключ.
+sig-mismatch = Ошибка — Несоответствие подписи
+invalid-email = Ошибка — Некорректные адреса электронной почты
+# Variables:
+# $name (String) - File name of the attachment.
+attachment-pgp-key =
+ Открываемое вложение «{ $name }», вероятно, является файлом ключей OpenPGP.
+ Щёлкните «Импортировать», чтобы импортировать содержащиеся ключи, или «Просмотр», чтобы просмотреть содержимое файла в окне браузера
+dlg-button-view = &Просмотр
+
+## Strings used in enigmailMsgHdrViewOverlay.js
+
+decrypted-msg-with-format-error = Расшифрованное сообщение (возможно, восстановлен неправильный формат электронной почты PGP, вызванный старым сервером Exchange, так что результат может быть не идеальным для чтения)
+
+## Strings used in encryption.jsm
+
+not-required = Ошибка — Шифрование не требуется
+
+## Strings used in windows.jsm
+
+no-photo-available = Нет доступного фото
+# Variables:
+# $photo (String) - Path of the photo in the key.
+error-photo-path-not-readable = Путь к фотографии '{ $photo }' не читается
+debug-log-title = Отладочный лог OpenPGP
+
+## Strings used in dialog.jsm
+
+# This string is followed by either repeat-suffix-singular if $count is 1 or else
+# by repeat-suffix-plural.
+# Variables:
+# $count (Number) - Number of times the alert will repeat.
+repeat-prefix = Это предупреждение будет повторяться ещё { $count }
+repeat-suffix-singular = раз.
+repeat-suffix-plural = раз(а).
+no-repeat = Это предупреждение больше не будет отображаться.
+dlg-keep-setting = Запомнить мой ответ и не спрашивать меня снова
+dlg-button-ok = &ОК
+dlg-button-close = &Закрыть
+dlg-button-cancel = &Отмена
+dlg-no-prompt = Больше не показывать это окно
+enig-prompt = Командная строка OpenPGP
+enig-confirm = Подтверждение OpenPGP
+enig-alert = Предупреждение OpenPGP
+enig-info = Информация OpenPGP
+
+## Strings used in persistentCrypto.jsm
+
+dlg-button-retry = &Повторить
+dlg-button-skip = Пропуст&ить
+
+## Strings used in enigmailMsgBox.js
+
+enig-alert-title =
+ .title = Предупреждение OpenPGP
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/otr/add-finger.ftl b/thunderbird-l10n/ru/localization/ru/messenger/otr/add-finger.ftl
new file mode 100644
index 0000000000..85d7e99adb
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/otr/add-finger.ftl
@@ -0,0 +1,16 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+otr-add-finger-title = Добавить отпечаток ключа OTR
+
+# Variables:
+# $name (String) - name of a chat contact person
+# Do not translate 'OTR' (name of an encryption protocol)
+otr-add-finger-description = Введите отпечаток ключа OTR для { $name }.
+
+otr-add-finger-fingerprint = Отпечаток:
+otr-add-finger-tooltip-error = Введен неверный символ. Разрешены только латинские буквы ABCDEF и цифры
+
+otr-add-finger-input =
+ .placeholder = Отпечаток ключа OTR длиной 40 символов
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/otr/am-im-otr.ftl b/thunderbird-l10n/ru/localization/ru/messenger/otr/am-im-otr.ftl
new file mode 100644
index 0000000000..5248c04ba1
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/otr/am-im-otr.ftl
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+account-encryption =
+ .label = Сквозное шифрование
+account-otr-label = Off-the-Record Messaging (OTR)
+account-otr-description2 = { -brand-short-name } поддерживает сквозное шифрование разговоров один на один, основанное на OTR. Это предотвращает прослушивание разговоров третьими лицами. Этот тип сквозного шифрования может использоваться только тогда, когда собеседник также использует программное обеспечение, поддерживающее OTR.
+otr-encryption-title = Проверенное шифрование
+otr-encryption-caption = Чтобы другие смогли подтвердить вашу личность в OTR-чатах, поделитесь своим собственным отпечатком OTR с помощью другого канала связи (за пределами текущего соединения).
+otr-fingerprint-label = Ваш отпечаток:
+view-fingerprint-button =
+ .label = Управление отпечатками контактов
+ .accesskey = п
+otr-settings-title = Настройки OTR
+otr-require-encryption =
+ .label = Требовать сквозного шифрования для разговоров один на один
+otr-require-encryption-info = Если было запрошено сквозное шифрование, то сообщения в разговорах один на один не будут отправлены, если их не удалось зашифровать. Полученные незашифрованные сообщения не будет отображаться как часть обычного разговора и не будут заноситься в логи.
+otr-verify-nudge =
+ .label = Всегда напоминать мне о проверке непроверенного контакта
+
+otr-not-yet-available = пока недоступно
+
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/otr/auth.ftl b/thunderbird-l10n/ru/localization/ru/messenger/otr/auth.ftl
new file mode 100644
index 0000000000..7c445774d7
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/otr/auth.ftl
@@ -0,0 +1,60 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+otr-auth =
+ .title = Подтверждение личности контакта
+ .buttonlabelaccept = Подтверждение
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+auth-title = Подтверждение личности { $name }
+
+# Variables:
+# $own_name (String) - the user's own screen name
+auth-your-fp-value = Отпечаток для вас, { $own_name }:
+
+# Variables:
+# $their_name (String) - the screen name of a chat contact
+auth-their-fp-value = Отпечаток для { $their_name }:
+
+auth-help = Подтверждение личности контакта позволяет гарантировать, что разговор действительно является конфиденциальным, что значительно усложняет третьей стороне прослушивание или манипулирование разговором.
+
+auth-help-title = Помощь в подтверждении
+
+auth-question-received = Вот вопрос, заданный вашим контактом:
+
+auth-yes =
+ .label = Да
+
+auth-no =
+ .label = Нет
+
+auth-verified = Я подтверждаю, что это на самом деле правильный отпечаток.
+
+auth-manual-verification = Ручная проверка отпечатков
+auth-question-and-answer = Вопрос и ответ
+auth-shared-secret = Общий секрет
+
+auth-manual-verification-label =
+ .label = { auth-manual-verification }
+
+auth-question-and-answer-label =
+ .label = { auth-question-and-answer }
+
+auth-shared-secret-label =
+ .label = { auth-shared-secret }
+
+auth-manual-instruction = Свяжитесь с вашим предполагаемым собеседником по какому-либо другому каналу, позволяющему удостоверить личность, например, по электронной почте с использованием OpenPGP или по телефону. Вы должны сообщить друг другу свои отпечатки (Отпечаток — это контрольная сумма, которая идентифицирует ключ шифрования). Если отпечаток совпадает, вы должны указать в диалоговом окне ниже, что вы подтвердили отпечаток.
+
+auth-how = Как бы вы хотели проверить личность вашего контакта?
+
+auth-qa-instruction = Придумайте вопрос, ответ на который известен только вам и вашему контакту. Введите вопрос и ответ, затем дождитесь, пока ваш контакт введёт ответ. Если ответы не совпадают, используемый вами канал связи может находиться под наблюдением.
+
+auth-secret-instruction = Придумайте секретный ключ, известный только вам и вашему контакту. Не используйте для обмена ключом одно и то же соединение с Интернетом. Введите ключ, а затем дождитесь введения его вашим контактом. Если ключи не совпадают, используемый вами канал связи может находиться под наблюдением.
+
+auth-question = Введите вопрос:
+
+auth-answer = Введите ответ (с учётом регистра):
+
+auth-secret = Введите секрет:
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/otr/chat.ftl b/thunderbird-l10n/ru/localization/ru/messenger/otr/chat.ftl
new file mode 100644
index 0000000000..beb2ce6795
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/otr/chat.ftl
@@ -0,0 +1,19 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+state-label = Статус шифрования:
+
+start-text = Начните зашифрованный разговор
+
+start-label =
+ .label = { start-text }
+
+start-tooltip =
+ .tooltiptext = { start-text }
+
+end-label =
+ .label = Завершите зашифрованный разговор
+
+auth-label =
+ .label = Подтвердите личность вашего контакта
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/otr/finger-sync.ftl b/thunderbird-l10n/ru/localization/ru/messenger/otr/finger-sync.ftl
new file mode 100644
index 0000000000..f7ea6b16ad
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/otr/finger-sync.ftl
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+finger-yes = Подтверждён
+finger-no = Неподтверждён
+
+finger-subset-title = Удаление отпечатка
+finger-subset-message = По крайней мере один отпечаток не удалось удалить, потому что в данный момент соответствующий ключ используется в активном разговоре.
+
+finger-remove-all-title = Удаление всех отпечатков
+finger-remove-all-message = Вы уверены, что хотите удалить все ранее увиденные отпечатки? Все предыдущие подтверждения личности OTR будут утеряны.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/otr/finger.ftl b/thunderbird-l10n/ru/localization/ru/messenger/otr/finger.ftl
new file mode 100644
index 0000000000..bb8424e018
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/otr/finger.ftl
@@ -0,0 +1,20 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+otr-finger-title = Ранее замеченные отпечатки OTR
+
+finger-intro = Отпечатки ключей OTR от предыдущих разговоров со сквозным шифрованием.
+
+finger-screen-name =
+ .label = Контакт
+finger-verified =
+ .label = Статус подтверждения
+finger-fingerprint =
+ .label = Отпечаток
+
+finger-remove =
+ .label = Удалить выбранное
+
+finger-remove-all =
+ .label = Удалить все
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/otr/otr.ftl b/thunderbird-l10n/ru/localization/ru/messenger/otr/otr.ftl
new file mode 100644
index 0000000000..93234742d5
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/otr/otr.ftl
@@ -0,0 +1,97 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-encryption-required-part1 = Вы попытались отправить незашифрованное сообщение { $name }. Текущие настройки запрещают отправлять незашифрованные сообщения.
+
+msgevent-encryption-required-part2 = Попытка начать конфиденциальный разговор. Ваше сообщение будет повторно отправлено, когда начнется конфиденциальный разговор.
+msgevent-encryption-error = При шифровании вашего сообщения произошла ошибка. Сообщение не было отправлено.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-connection-ended = { $name } уже закрыл(а) зашифрованное соединение с вами. Чтобы случайно не отправить сообщение без шифрования, ваше сообщение не было отправлено. Пожалуйста, завершите зашифрованный разговор или перезапустите его.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-setup-error = При настройке конфиденциального разговора с { $name } произошла ошибка.
+
+# Do not translate 'OTR' (name of an encryption protocol)
+msgevent-msg-reflected = Вы получаете свои собственные сообщения OTR. Вы либо пытаетесь говорить сами с собой, либо кто-то перенаправляет ваши сообщения обратно к вам.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-msg-resent = Последнее сообщение для { $name } было отправлено повторно.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg-not-private = Зашифрованное сообщение, полученное от { $name }, не может быть прочитано, так как в данный момент вы не общаетесь конфиденциально.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg-unreadable = Вы получили нечитаемое зашифрованное сообщение от { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg-malformed = Вы получили искаженное сообщение с данными от { $name }.
+
+# A Heartbeat is a technical message used to keep a connection alive.
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-log-heartbeat-rcvd = Техническое сообщение Heartbeat получено от { $name }.
+
+# A Heartbeat is a technical message used to keep a connection alive.
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-log-heartbeat-sent = Техническое сообщение Heartbeat отправлено { $name }.
+
+# Do not translate 'OTR' (name of an encryption protocol)
+msgevent-rcvdmsg-general-err = При попытке защитить ваш разговор с помощью OTR произошла непредвиденная ошибка.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+# $msg (string) - the message that was received.
+msgevent-rcvdmsg-unencrypted = Следующее сообщение, полученное от { $name }, не было зашифровано: { $msg }
+
+# Do not translate 'OTR' (name of an encryption protocol)
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg-unrecognized = Вы получили нераспознанное сообщение OTR от { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg-for-other-instance = Сообщение, отправленное { $name }, предназначалось для другого сеанса. Если вы вошли в систему несколько раз, сообщение могло быть получено в другом сеансе.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+context-gone-secure-private = Начался конфиденциальный разговор с { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+context-gone-secure-unverified = Начался зашифрованный разговор с неподтверждённым { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+context-still-secure = Успешно обновлён зашифрованный разговор с { $name }.
+
+error-enc = При шифровании сообщения произошла ошибка.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+error-not-priv = Вы отправили зашифрованные данные { $name }, который(ая) этого не ожидал(а).
+
+error-unreadable = Вы передали нечитаемое зашифрованное сообщение.
+error-malformed = Вы передали искаженное сообщение с данными.
+
+resent = [повторнопослано]
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+tlv-disconnected = { $name } закончил(а) с вами зашифрованный разговор; вам следует сделать то же самое.
+
+# Do not translate "Off-the-Record" and "OTR" which is the name of an encryption protocol
+# Make sure that this string does NOT contain any numbers, e.g. like "3".
+# Variables:
+# $name (String) - the screen name of a chat contact person
+query-msg = { $name } запросил(а) зашифрованный разговор Off-the-Record (OTR). Однако, у вас нет плагина для поддержки этого протокола. Для получения дополнительной информации прочтите https://ru.wikipedia.org/wiki/Off-the-Record_Messaging
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/otr/otrUI.ftl b/thunderbird-l10n/ru/localization/ru/messenger/otr/otrUI.ftl
new file mode 100644
index 0000000000..b912a4baa6
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/otr/otrUI.ftl
@@ -0,0 +1,87 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+start-label = Начать зашифрованный разговор
+refresh-label = Обновить зашифрованный разговор
+auth-label = Подтвердить личность вашего контакта
+reauth-label = Снова подтвердить личность вашего контакта
+
+auth-cancel = Отмена
+auth-cancel-access-key = м
+
+auth-error = При подтверждении личности вашего контакта произошла ошибка.
+auth-success = Подтверждение личности вашего контакта завершено успешно.
+auth-success-them = Ваш контакт успешно подтвердил вашу личность. Вы также можете сделать это, задав собственный вопрос.
+auth-fail = Не удалось подтвердить личность вашего контакта.
+auth-waiting = Ждём контакт, чтобы завершить проверку…
+
+finger-verify = Подтвердить
+finger-verify-access-key = е
+
+finger-ignore = Игнорировать
+finger-ignore-access-key = н
+
+# Do not translate 'OTR' (name of an encryption protocol)
+buddycontextmenu-label = Добавить отпечаток OTR
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+alert-start = Попытка начать зашифрованный разговор с { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+alert-refresh = Попытка обновить зашифрованный разговор с { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+alert-gone-insecure = Зашифрованный разговор с { $name } завершён.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+finger-unseen = Личность { $name } ещё не была подтверждена. Случайное прослушивание невозможно, но с определенными усилиями кто-то может прослушивать ваш разговор. Предотвратите прослушивание, проверив личность этого контакта.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+finger-seen = { $name } связывается с вами с неизвестного компьютера. Случайное прослушивание невозможно, но с определенными усилиями кто-то может прослушивать ваш разговор. Предотвратите прослушивание, проверив личность этого контакта.
+
+state-not-private = Текущий разговор не является конфиденциальным.
+state-generic-not-private = Текущий разговор не является конфиденциальным.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+state-unverified = Текущий разговор зашифрован, но не является конфиденциальным, так как личность { $name } ещё не подтверждена.
+
+state-generic-unverified = Текущий разговор зашифрован, но не является конфиденциальным, так как некоторые личности ещё не были подтверждены.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+state-private = Личность { $name } была подтверждена. Текущий разговор зашифрован и конфиденциален.
+
+state-generic-private = Текущий разговор является зашифрованным и конфиденциальным.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+state-finished = { $name } закончил(а) с вами зашифрованный разговор; вам следует сделать то же самое.
+
+state-not-private-label = Небезопасно
+state-unverified-label = Неподтверждено
+state-private-label = Конфиденциально
+state-finished-label = Завершено
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+verify-request = { $name } запросил(а) подтверждение вашей личности.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+afterauth-private = Вы подтвердили личность { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+afterauth-unverified = Личность { $name } не была подтверждена.
+
+# Do not translate 'OTR' (name of an encryption protocol)
+# Variables:
+# $error (String) - contains an error message that describes the cause of the failure
+otr-genkey-failed = Ошибка генерации закрытого ключа OTR: { $error }
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/policies/aboutPolicies.ftl b/thunderbird-l10n/ru/localization/ru/messenger/policies/aboutPolicies.ftl
new file mode 100644
index 0000000000..29e9cd8f55
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/policies/aboutPolicies.ftl
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+about-policies-title = Корпоративные политики
+
+# 'Active' is used to describe the policies that are currently active
+active-policies-tab = Активны
+errors-tab = Ошибки
+documentation-tab = Документация
+
+no-specified-policies-message = Служба корпоративных политик активна, но ни одной политики не включено.
+inactive-message = Служба корпоративных политик неактивна.
+
+policy-name = Имя политики
+policy-value = Значение политики
+policy-errors = Ошибки политики
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/policies/policies-descriptions.ftl b/thunderbird-l10n/ru/localization/ru/messenger/policies/policies-descriptions.ftl
new file mode 100644
index 0000000000..35ec22dabd
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/policies/policies-descriptions.ftl
@@ -0,0 +1,159 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## The Enterprise Policies feature is aimed at system administrators
+## who want to deploy these settings across several Thunderbird installations
+## all at once. This is traditionally done through the Windows Group Policy
+## feature, but the system also supports other forms of deployment.
+## These are short descriptions for individual policies, to be displayed
+## in the documentation section in about:policies.
+
+policy-3rdparty = Устанавливает политики, по которым WebExtensions могут получать доступ через chrome.storage.managed.
+
+policy-AppAutoUpdate = Включает или отключает автообновление приложения.
+
+policy-AppUpdatePin = Не позволяет { -brand-short-name } обновляться выше указанной версии.
+
+policy-AppUpdateURL = Устанавливает собственный URL обновления приложения.
+
+policy-Authentication = Настраивает интегрированную авторизацию для поддерживающих это веб-сайтов.
+
+policy-BackgroundAppUpdate2 = Включает или отключает фоновое обновление.
+
+policy-BlockAboutAddons = Блокирует доступ к менеджеру дополнений (about:addons).
+
+policy-BlockAboutConfig = Блокирует доступ к странице about:config.
+
+policy-BlockAboutProfiles = Блокирует доступ к странице about:profiles.
+
+policy-BlockAboutSupport = Блокирует доступ к странице about:support.
+
+policy-CaptivePortal = Включает или отключает поддержку перехватывающего портала.
+
+policy-CertificatesDescription = Добавляет сертификаты или использует встроенные сертификаты.
+
+policy-Cookies = Разрешает или запрещает веб-сайтам устанавливать куки.
+
+policy-DisableBuiltinPDFViewer = Отключает PDF.js, встроенный просмотрщик PDF в { -brand-short-name }.
+
+policy-DisabledCiphers = Отключает шифры.
+
+policy-DefaultDownloadDirectory = Устанавливает каталог для загрузок по умолчанию.
+
+policy-DisableAppUpdate = Запрещает обновление { -brand-short-name }.
+
+policy-DisableDefaultClientAgent = Не позволяет агенту клиента по умолчанию предпринимать какие-либо действия. Применимо только к Windows; на других платформах агента нет.
+
+policy-DisableDeveloperTools = Блокирует доступ к инструментам разработчика.
+
+policy-DisableFeedbackCommands = Отключает команды отправки отзывов в меню Справка («Отправить отзыв...» и «Сообщить о поддельном сайте...»).
+
+policy-DisableForgetButton = Закрывает доступ к кнопке «Забыть».
+
+policy-DisableFormHistory = Отключает запоминание истории поиска и данных форм.
+
+policy-DisableMasterPasswordCreation = Не позволяет устанавливать мастер-пароль, если установлено значение true.
+
+policy-DisablePasswordReveal = Не позволяет просматривать пароли у сохранённых логинов.
+
+policy-DisableProfileImport = Отключает команду меню для импорта данных из других приложений.
+
+policy-DisableSafeMode = Отключает функцию для перезапуска в безопасном режиме. Примечание: Клавишу Shift для входа в безопасный режим можно отключить только в Windows с помощью групповой политики.
+
+policy-DisableSecurityBypass = Не даёт пользователю игнорировать определенные предупреждения системы безопасности.
+
+policy-DisableSystemAddonUpdate = Запрещает { -brand-short-name } устанавливать и обновлять системные дополнения.
+
+policy-DisableTelemetry = Отключает телеметрию.
+
+policy-DisplayMenuBar = Отображает панель меню по умолчанию.
+
+policy-DNSOverHTTPS = Настраивает DNS через HTTPS.
+
+policy-DontCheckDefaultClient = Отключает проверку клиента по умолчанию при запуске.
+
+policy-DownloadDirectory = Устанавливает и фиксирует каталог для загрузок.
+
+# “lock” means that the user won’t be able to change this setting
+policy-EnableTrackingProtection = Включает или отключает Блокировку содержимого и, по желанию, блокирует изменение этой функции.
+
+# “lock” means that the user won’t be able to change this setting
+policy-EncryptedMediaExtensions = Включает или отключает Encrypted Media Extensions и, по желанию, блокирует изменение этой функции.
+
+# A “locked” extension can’t be disabled or removed by the user. This policy
+# takes 3 keys (“Install”, ”Uninstall”, ”Locked”), you can either keep them in
+# English or translate them as verbs.
+policy-Extensions = Устанавливает, удаляет или блокирует установку/удаление расширений. Параметр «Установка» использует URL-адреса или пути в качестве параметров. Параметры «Удаление» и «Блокировка» принимают идентификаторы расширений.
+
+policy-ExtensionSettings = Управляет всеми аспектами установки расширений.
+
+policy-ExtensionUpdate = Включает или отключает автоматические обновления расширений.
+
+policy-Handlers = Настраивает обработчики приложений по умолчанию.
+
+policy-HardwareAcceleration = Отключает аппаратное ускорение, если установлена в false.
+
+policy-InstallAddonsPermission = Разрешает некоторым веб-сайтам устанавливать дополнения.
+
+policy-LegacyProfiles = Отключает функцию, которая принудительно создаёт отдельный профиль для каждой установки.
+
+## Do not translate "SameSite", it's the name of a cookie attribute.
+
+policy-LegacySameSiteCookieBehaviorEnabled = Использовать устаревшее поведение атрибута SameSite куки по умолчанию.
+
+policy-LegacySameSiteCookieBehaviorEnabledForDomainList = Переключиться на устаревшее поведение SameSite для кук на выбранных сайтах.
+
+##
+
+policy-LocalFileLinks = Разрешает определённым веб-сайтам ссылаться на локальные файлы.
+
+policy-ManualAppUpdateOnly = Разрешать только обновления вручную и не уведомлять пользователя об обновлениях.
+
+policy-NetworkPrediction = Включает или отключает прогнозирование сети (предварительная выборка DNS).
+
+policy-OfferToSaveLogins = Разрешает { -brand-short-name } предлагать запоминать сохранённые логины и пароли. Принимаются значения как true, так и false.
+
+policy-OfferToSaveLoginsDefault = Устанавливает значение по умолчанию, чтобы разрешить { -brand-short-name } предлагать запоминать сохранённые логины и пароли. Принимаются значения как true, так и false.
+
+policy-OverrideFirstRunPage = Переопределяет первую страницу после запуска. Установите эту политику в пустую, если хотите отключить первую страницу после запуска.
+
+policy-OverridePostUpdatePage = Переопределяет страницу «Что нового», открывающуюся после обновления. Установите эту политику в пустую, если хотите отключить страницу, открывающуюся после обновления.
+
+policy-PasswordManagerEnabled = Включает сохранение паролей в менеджере паролей.
+
+# PDF.js and PDF should not be translated
+policy-PDFjs = Отключает или настраивает PDF.js, встроенный просмотрщик PDF в { -brand-short-name }.
+
+policy-Permissions2 = Настраивает разрешения для камеры, микрофона, местоположения, уведомлений и автовоспроизведения.
+
+policy-Preferences = Устанавливает и фиксирует значение набора настроек.
+
+policy-PrimaryPassword = Требовать или не давать использовать основной пароль.
+
+policy-PromptForDownloadLocation = Спрашивает, куда сохранять файлы при загрузке.
+
+policy-Proxy = Настраивает параметры прокси.
+
+policy-RequestedLocales = Настраивает список запрашиваемых языков для приложения в порядке предпочтения.
+
+policy-SanitizeOnShutdown2 = Удаляет данные веб-сёрфинга при закрытии клиента.
+
+policy-SearchEngines = Настраивает параметры поисковой системы. Эта политика доступна только в версии длительной поддержки (ESR).
+
+policy-SearchSuggestEnabled = Включает или отключает поисковые предложения.
+
+# For more information, see https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/PKCS11/Module_Installation
+policy-SecurityDevices = Устанавливает модули PKCS #11.
+
+policy-SSLVersionMax = Устанавливает максимальную версию SSL.
+
+policy-SSLVersionMin = Устанавливает минимальную версию SSL.
+
+policy-SupportMenu = Добавляет настраиваемый пункт меню поддержки в меню справки.
+
+policy-UserMessaging = Позволяет не показывать определённые сообщения пользователю.
+
+# “format” refers to the format used for the value of this policy.
+policy-WebsiteFilter = Блокирует посещение веб-сайтов. Для получения дополнительной информации о формате обратитесь к документации.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/am-copies.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/am-copies.ftl
new file mode 100644
index 0000000000..da999881fd
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/am-copies.ftl
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+account-prefs-show-address-row-description = Оставьте поле адреса пустым, чтобы всегда отображать строку ввода адресов при создании нового сообщения.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/am-im.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/am-im.ftl
new file mode 100644
index 0000000000..3cad3353f9
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/am-im.ftl
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+account-settings-title = Настройки аутентификации
+account-channel-title = Каналы по умолчанию
+
+chat-autologin =
+ .label = Входить при запуске
+
+chat-encryption-generic = Общее
+chat-encryption-log =
+ .label = Включать сквозные зашифрованные сообщения в журналы разговоров
+chat-encryption-label = Встроенное сквозное шифрование
+chat-encryption-description = { $protocol } обеспечивает сквозное шифрование сообщений чата. Это предотвращает прослушивание разговора третьими лицами. Для работы шифрования может потребоваться показанная ниже дополнительная настройка.
+chat-encryption-status = Статус шифрования
+chat-encryption-placeholder = Шифрование не инициализировано.
+chat-encryption-sessions = Сессии
+chat-encryption-sessions-description = Для того, чтобы сквозное шифрование работало правильно, вы должны доверять другим сеансам, которые в данный момент вошли в вашу учётную запись. Для подтверждения сеанса требуется взаимодействие с другим клиентом. Подтверждение сеанса может привести к тому, { -brand-short-name } будет доверять всем сеансам, которым уже доверяет другой клиент.
+chat-encryption-session-verify = подтвердить
+ .title = Подтвердить подлинность этого сеанса
+chat-encryption-session-trusted = проверен
+ .title = Подлинность этого сеанса проверена
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/application-manager.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/application-manager.ftl
new file mode 100644
index 0000000000..dbc596e979
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/application-manager.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+app-manager-window-dialog2 =
+ .title = Сведения о приложении
+app-manager-dialog-title = Сведения о приложении
+remove-app-button =
+ .label = Удалить
+ .accesskey = д
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/attachment-reminder.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/attachment-reminder.ftl
new file mode 100644
index 0000000000..d28879f6c4
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/attachment-reminder.ftl
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+attachment-reminder-window =
+ .title = Ключевые слова для напоминания о вложении
+attachment-reminder-dialog-title = Ключевые слова для напоминания о вложении
+attachment-reminder-label = { -brand-short-name } будет предупреждать вас о том, что вы забыли вложить файл, если вы попробуете отправить письмо, содержащее одно из этих ключевых слов.
+keyword-new-button =
+ .label = Создать…
+ .accesskey = о
+keyword-edit-button =
+ .label = Изменить…
+ .accesskey = м
+keyword-remove-button =
+ .label = Удалить
+ .accesskey = а
+new-keyword-title = Новое ключевое слово
+new-keyword-label = Ключевое слово:
+edit-keyword-title = Изменить ключевое слово
+edit-keyword-label = Ключевое слово:
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/colors.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/colors.ftl
new file mode 100644
index 0000000000..8eec449652
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/colors.ftl
@@ -0,0 +1,36 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+colors-dialog-window2 =
+ .title = Цвета
+colors-dialog-title = Цвета
+colors-dialog-legend = Текст и фон
+text-color-label =
+ .value = Текст:
+ .accesskey = к
+background-color-label =
+ .value = Фон:
+ .accesskey = о
+use-system-colors =
+ .label = Использовать системные цвета
+ .accesskey = с
+colors-link-legend = Цвет ссылок
+link-color-label =
+ .value = Непросмотренные ссылки:
+ .accesskey = е
+visited-link-color-label =
+ .value = Просмотренные ссылки:
+ .accesskey = м
+underline-link-checkbox =
+ .label = Подчёркивать ссылки
+ .accesskey = ч
+override-color-label =
+ .value = Заменять цвета, указанные содержимым, на выбранные мной выше цвета:
+ .accesskey = а
+override-color-always =
+ .label = Всегда
+override-color-auto =
+ .label = Только с высококонтрастными темами
+override-color-never =
+ .label = Никогда
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/connection.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/connection.ftl
new file mode 100644
index 0000000000..5f4ee0d862
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/connection.ftl
@@ -0,0 +1,88 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+connection-dns-over-https-url-resolver = Используемый провайдер
+ .accesskey = п
+# Variables:
+# $name (String) - Display name or URL for the DNS over HTTPS provider
+connection-dns-over-https-url-item-default =
+ .label = { $name } (По умолчанию)
+ .tooltiptext = Использовать URL по умолчанию для разрешения DNS через HTTPS
+connection-dns-over-https-url-custom =
+ .label = Другой URL
+ .accesskey = о
+ .tooltiptext = Введите свой URL для разрешения DNS через HTTPS
+connection-dns-over-https-custom-label = Другой URL
+connection-dialog-window2 =
+ .title = Параметры соединения
+connection-dialog-title = Параметры соединения
+disable-extension-button = Отключить расширение
+# Variables:
+# $name (String) - The extension that is controlling the proxy settings.
+#
+# The extension-icon is the extension's icon, or a fallback image. It should be
+# purely decoration for the actual extension name, with alt="".
+proxy-settings-controlled-by-extension = Расширение <img data-l10n-name="extension-icon" alt="" /> { $name } контролирует способ соединения { -brand-short-name } с Интернетом.
+connection-proxy-legend = Настройка прокси для доступа в Интернет
+proxy-type-no =
+ .label = Без прокси
+ .accesskey = е
+proxy-type-wpad =
+ .label = Автоматически определять настройки прокси для этой сети
+ .accesskey = в
+proxy-type-system =
+ .label = Использовать системные настройки прокси
+ .accesskey = с
+proxy-type-manual =
+ .label = Ручная настройка сервиса прокси:
+ .accesskey = в
+proxy-http-label =
+ .value = HTTP прокси:
+ .accesskey = T
+http-port-label =
+ .value = Порт:
+ .accesskey = о
+proxy-http-sharing =
+ .label = Также использовать этот прокси для HTTPS
+ .accesskey = е
+proxy-https-label =
+ .value = HTTPS прокси:
+ .accesskey = и
+ssl-port-label =
+ .value = Порт:
+ .accesskey = р
+proxy-socks-label =
+ .value = Узел SOCKS:
+ .accesskey = O
+socks-port-label =
+ .value = Порт:
+ .accesskey = т
+proxy-socks4-label =
+ .label = SOCKS 4
+ .accesskey = 4
+proxy-socks5-label =
+ .label = SOCKS 5
+ .accesskey = 5
+proxy-type-auto =
+ .label = URL автоматической настройки сервиса прокси:
+ .accesskey = а
+proxy-reload-label =
+ .label = Обновить
+ .accesskey = б
+no-proxy-label =
+ .value = Не использовать прокси для:
+ .accesskey = д
+no-proxy-example = Пример: .mozilla-russia.org, .net.nz, 192.168.1.0/24
+# Do not translate "localhost", "127.0.0.1/8" and "::1". (You can translate "and".)
+connection-proxy-noproxy-localhost-desc-2 = Соединения с localhost, 127.0.0.1/8 и ::1 никогда не проксируются.
+proxy-password-prompt =
+ .label = Не запрашивать аутентификацию (если был сохранён пароль)
+ .accesskey = ш
+ .tooltiptext = Эта настройка аутентифицирует вас на прокси, не выполняя запросов, если вы сохранили свои учётные данные. Если аутентификация не удастся, вам будет выдан запрос.
+proxy-remote-dns =
+ .label = Отправлять DNS-запросы через прокси, используя SOCKS 5
+ .accesskey = я
+proxy-enable-doh =
+ .label = Включить DNS через HTTPS
+ .accesskey = л
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/cookies.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/cookies.ftl
new file mode 100644
index 0000000000..81b12685c5
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/cookies.ftl
@@ -0,0 +1,44 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+cookies-window-dialog2 =
+ .title = Куки
+cookies-dialog-title = Куки
+window-close-key =
+ .key = w
+window-focus-search-key =
+ .key = f
+window-focus-search-alt-key =
+ .key = k
+filter-search-label =
+ .value = Поиск:
+ .accesskey = П
+cookies-on-system-label = На вашем компьютере сохранены следующие куки:
+treecol-site-header =
+ .label = Сайт
+treecol-name-header =
+ .label = Имя куки
+props-name-label =
+ .value = Имя:
+props-value-label =
+ .value = Содержимое:
+props-domain-label =
+ .value = Узел:
+props-path-label =
+ .value = Путь:
+props-secure-label =
+ .value = Посылать при:
+props-expires-label =
+ .value = Срок действия истекает:
+props-container-label =
+ .value = Контейнер:
+remove-cookie-button =
+ .label = Удалить куку
+ .accesskey = У
+remove-all-cookies-button =
+ .label = Удалить все куки
+ .accesskey = в
+cookie-close-button =
+ .label = Закрыть
+ .accesskey = З
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/dock-options.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/dock-options.ftl
new file mode 100644
index 0000000000..a5a87ceae2
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/dock-options.ftl
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+dock-options-window-dialog2 =
+ .title = Наcтройки значка приложения
+dock-options-dialog-title = Наcтройки значка приложения
+dock-options-show-badge =
+ .label = Показать значок наклейки
+ .accesskey = н
+bounce-system-dock-icon =
+ .label = Анимировать значок приложения при приходе нового сообщения
+ .accesskey = н
+dock-icon-legend = Значок приложения
+dock-icon-show-label =
+ .value = Отображать на значке приложения:
+count-unread-messages-radio =
+ .label = Число непрочитанных сообщений
+ .accesskey = и
+count-new-messages-radio =
+ .label = Число новых сообщений
+ .accesskey = о
+notification-settings-info2 = Вы можете отключить наклейку на панели Уведомления в Системных настройках.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/fonts.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/fonts.ftl
new file mode 100644
index 0000000000..32aadbd1b0
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/fonts.ftl
@@ -0,0 +1,134 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+fonts-dialog-title = Шрифты
+fonts-window-close =
+ .key = w
+# Variables:
+# $name {string, "Arial"} - Name of the default font
+fonts-label-default =
+ .label = По умолчанию ({ $name })
+fonts-label-default-unnamed =
+ .label = По умолчанию
+fonts-encoding-dialog-title =
+ .title = Шрифты и кодировки
+fonts-language-legend =
+ .value = Шрифты для набора символов:
+ .accesskey = ф
+fonts-proportional-label =
+ .value = Пропорциональный:
+ .accesskey = р
+
+## Languages
+
+# Note: Translate "Latin" as the name of Latin (Roman) script, not as the name of the Latin language.
+font-language-group-latin =
+ .label = Латиница
+font-language-group-japanese =
+ .label = Японский
+font-language-group-trad-chinese =
+ .label = Традиционный китайский (Тайвань)
+font-language-group-simpl-chinese =
+ .label = Упрощённый китайский
+font-language-group-trad-chinese-hk =
+ .label = Традиционный китайский (Гонконг)
+font-language-group-korean =
+ .label = Корейский
+font-language-group-cyrillic =
+ .label = Кириллица
+font-language-group-el =
+ .label = Греческий
+font-language-group-other =
+ .label = Другие системы письменности
+font-language-group-thai =
+ .label = Тайский
+font-language-group-hebrew =
+ .label = Иврит
+font-language-group-arabic =
+ .label = Арабский
+font-language-group-devanagari =
+ .label = Деванагари
+font-language-group-tamil =
+ .label = Тамильский
+font-language-group-armenian =
+ .label = Армянский
+font-language-group-bengali =
+ .label = Бенгальский
+font-language-group-canadian =
+ .label = Общеканадский слоговой
+font-language-group-ethiopic =
+ .label = Эфиопский
+font-language-group-georgian =
+ .label = Грузинский
+font-language-group-gujarati =
+ .label = Гуджарати
+font-language-group-gurmukhi =
+ .label = Гурмуки
+font-language-group-khmer =
+ .label = Кхмерский
+font-language-group-malayalam =
+ .label = Малайялам
+font-language-group-math =
+ .label = Математика
+font-language-group-odia =
+ .label = Ория
+font-language-group-telugu =
+ .label = Телугу
+font-language-group-kannada =
+ .label = Каннада
+font-language-group-sinhala =
+ .label = Сингальский
+font-language-group-tibetan =
+ .label = Тибетский
+
+## Default font type
+
+default-font-serif =
+ .label = С засечками
+default-font-sans-serif =
+ .label = Без засечек
+font-size-proportional-label =
+ .value = Размер:
+ .accesskey = з
+font-size-monospace-label =
+ .value = Размер:
+ .accesskey = м
+font-serif-label =
+ .value = С засечками:
+ .accesskey = а
+font-sans-serif-label =
+ .value = Без засечек:
+ .accesskey = з
+font-monospace-label =
+ .value = Моноширинный:
+ .accesskey = ш
+font-min-size-label =
+ .value = Минимальный размер шрифта:
+ .accesskey = и
+min-size-none =
+ .label = Нет
+
+## Fonts in message
+
+font-control-legend = Управление шрифтами
+use-document-fonts-checkbox =
+ .label = Разрешить сообщениям использовать другие шрифты
+ .accesskey = р
+use-fixed-width-plain-checkbox =
+ .label = Использовать моноширинный шрифт для простых текстовых сообщений
+ .accesskey = н
+
+## Language settings
+
+text-encoding-legend = Кодировка текста
+text-encoding-description = Установить кодировку текста по умолчанию для входящих и исходящих сообщений
+font-outgoing-email-label =
+ .value = Исходящие сообщения:
+ .accesskey = х
+font-incoming-email-label =
+ .value = Входящие сообщения:
+ .accesskey = о
+default-font-reply-checkbox =
+ .label = По возможности использовать кодировку текста по умолчанию в ответах на сообщения
+ .accesskey = в
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/languages.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/languages.ftl
new file mode 100644
index 0000000000..1a4cd2af61
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/languages.ftl
@@ -0,0 +1,33 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+languages-customize-moveup =
+ .label = Вверх
+ .accesskey = в
+languages-customize-movedown =
+ .label = Вниз
+ .accesskey = н
+languages-customize-remove =
+ .label = Удалить
+ .accesskey = а
+languages-customize-select-language =
+ .placeholder = Выберите язык для добавления…
+languages-customize-add =
+ .label = Добавить
+ .accesskey = о
+messenger-languages-window2 =
+ .title = Настройки языка { -brand-short-name }
+messenger-languages-dialog-title = Настройки языка { -brand-short-name }
+messenger-languages-description = { -brand-short-name } будет использовать первый язык из списка по умолчанию, а другие языки в указанном порядке, при необходимости.
+messenger-languages-search = Найти другие языки…
+messenger-languages-searching =
+ .label = Поиск других языков…
+messenger-languages-downloading =
+ .label = Загрузка…
+messenger-languages-select-language =
+ .label = Выберите язык, чтобы его добавить…
+ .placeholder = Выберите язык, чтобы его добавить…
+messenger-languages-installed-label = Установленные языки
+messenger-languages-available-label = Доступные языки
+messenger-languages-error = { -brand-short-name } не может обновить ваши языки прямо сейчас. Проверьте, что вы подключены к Интернету, или попробуйте снова.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/new-tag.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/new-tag.ftl
new file mode 100644
index 0000000000..ce423adad4
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/new-tag.ftl
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+tag-dialog-window =
+ .title = Новая метка
+tag-dialog-title = Новая метка
+tag-name-label =
+ .value = Имя метки:
+ .accesskey = м
+tag-color-label =
+ .value = Цвет:
+ .accesskey = в
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/notifications.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/notifications.ftl
new file mode 100644
index 0000000000..869b71ccec
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/notifications.ftl
@@ -0,0 +1,29 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+notifications-dialog-window =
+ .title = Настройка уведомлений о приходе почты
+notifications-dialog-title = Настройка уведомлений о приходе почты
+customize-alert-description = Укажите поля, показываемые в уведомлении о приходе почты:
+preview-text-checkbox =
+ .label = Текст сообщения
+ .accesskey = к
+subject-checkbox =
+ .label = Тема
+ .accesskey = е
+sender-checkbox =
+ .label = Отправитель
+ .accesskey = п
+
+## Note: open-time-label-before is displayed first, then there's a field where
+## the user can enter a number, and open-time-label-after is displayed at the end
+## of the line. The translations of the open-time-label-before and open-time-label-after
+## parts don't have to mean the exact same thing as in English; please try instead
+## to translate the whole sentence.
+
+open-time-label-before =
+ .value = Отображать уведомление о приходе почты в течение
+ .accesskey = о
+open-time-label-after =
+ .value = сек.
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/offline.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/offline.ftl
new file mode 100644
index 0000000000..d614afd91f
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/offline.ftl
@@ -0,0 +1,43 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+offline-dialog-window =
+ .title = Параметры автономной работы
+offline-dialog-title = Параметры автономной работы
+autodetect-online-label =
+ .label = Автоматически выбирать обнаруженное состояние подключения
+ .accesskey = м
+offline-preference-startup-label = Ручной выбор состояния при запуске:
+status-radio-remember =
+ .label = Использовать режим работы предыдущего сеанса
+ .accesskey = ы
+status-radio-ask =
+ .label = Запросить состояние подключения
+ .accesskey = о
+status-radio-always-online =
+ .label = Подключён к сети
+ .accesskey = ю
+status-radio-always-offline =
+ .label = Автономная работа
+ .accesskey = в
+going-online-label = Отправить неотправленные сообщения при подключении?
+going-online-auto =
+ .label = Да
+ .accesskey = Д
+going-online-not =
+ .label = Нет
+ .accesskey = т
+going-online-ask =
+ .label = Спрашивать
+ .accesskey = п
+going-offline-label = Загружать сообщения для использования в автономном режиме при отключении?
+going-offline-auto =
+ .label = Да
+ .accesskey = а
+going-offline-not =
+ .label = Нет
+ .accesskey = е
+going-offline-ask =
+ .label = Спрашивать
+ .accesskey = ш
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/passwordManager.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/passwordManager.ftl
new file mode 100644
index 0000000000..2fc53e1079
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/passwordManager.ftl
@@ -0,0 +1,83 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+saved-logins =
+ .title = Сохранённые логины
+saved-logins-title = Сохранённые логины
+window-close =
+ .key = w
+focus-search-primary-shortcut =
+ .key = f
+focus-search-alt-shortcut =
+ .key = k
+copy-provider-url-cmd =
+ .label = Копировать URL
+ .accesskey = и
+copy-username-cmd =
+ .label = Копировать имя пользователя
+ .accesskey = в
+edit-username-cmd =
+ .label = Изменить имя пользователя
+ .accesskey = е
+copy-password-cmd =
+ .label = Копировать пароль
+ .accesskey = п
+edit-password-cmd =
+ .label = Изменить пароль
+ .accesskey = з
+search-filter =
+ .accesskey = о
+ .placeholder = Поиск
+column-heading-provider =
+ .label = Провайдер
+column-heading-username =
+ .label = Имя пользователя
+column-heading-password =
+ .label = Пароль
+column-heading-time-created =
+ .label = Первое использование
+column-heading-time-last-used =
+ .label = Последнее использование
+column-heading-time-password-changed =
+ .label = Последнее изменение
+column-heading-times-used =
+ .label = Число использований
+remove =
+ .label = Удалить
+ .accesskey = а
+import =
+ .label = Импорт…
+ .accesskey = м
+password-close-button =
+ .label = Закрыть
+ .accesskey = к
+show-passwords =
+ .label = Отобразить пароли
+ .accesskey = а
+hide-passwords =
+ .label = Скрыть пароли
+ .accesskey = а
+logins-description-all = На вашем компьютере хранятся логины для следующих провайдеров
+logins-description-filtered = Строке поиска соответствуют следующие логины:
+remove-all =
+ .label = Удалить все
+ .accesskey = а
+remove-all-shown =
+ .label = Удалить все показанные
+ .accesskey = а
+remove-all-passwords-prompt = Вы уверены, что хотите удалить все ваши пароли?
+remove-all-passwords-title = Удалить все пароли
+no-master-password-prompt = Вы уверены, что хотите отобразить ваши пароли?
+
+## OS Authentication dialog
+
+# This message can be seen by trying to show or copy the passwords.
+password-os-auth-dialog-message = Подтвердите свою личность для показа сохранённых паролей.
+# This message can be seen by trying to show or copy the passwords.
+# The macOS strings are preceded by the operating system with "Thunderbird is trying to "
+# and includes subtitle of "Enter password for the user "xxx" to allow this." These
+# notes are only valid for English. Please test in your locale.
+password-os-auth-dialog-message-macosx = показать сохранённые пароли
+# Don't change this label.
+password-os-auth-dialog-caption = { -brand-full-name }
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/permissions.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/permissions.ftl
new file mode 100644
index 0000000000..3b74d4d616
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/permissions.ftl
@@ -0,0 +1,43 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+permissions-reminder-window2 =
+ .title = Исключения
+permissions-dialog-title = Исключения
+permission-preferences-close-window =
+ .key = w
+website-address-label =
+ .value = Адрес веб-сайта:
+ .accesskey = е
+block-button =
+ .label = Блокировать
+ .accesskey = о
+allow-session-button =
+ .label = Разрешить на сессию
+ .accesskey = з
+allow-button =
+ .label = Разрешить
+ .accesskey = ш
+treehead-sitename-label =
+ .label = Сайт
+treehead-status-label =
+ .label = Статус
+remove-site-button =
+ .label = Удалить сайт
+ .accesskey = д
+remove-all-site-button =
+ .label = Удалить все сайты
+ .accesskey = в
+cancel-button =
+ .label = Отмена
+ .accesskey = м
+save-button =
+ .label = Сохранить изменения
+ .accesskey = х
+permission-can-label = Разрешить
+permission-can-access-first-party-label = Не принимать куки со сторонних сайтов
+permission-can-session-label = Разрешить на сессию
+permission-cannot-label = Блокировать
+invalid-uri-message = Введите корректное сетевое имя сервера.
+invalid-uri-title = Введено некорректное сетевое имя сервера
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/preferences.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/preferences.ftl
new file mode 100644
index 0000000000..004deb12c4
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/preferences.ftl
@@ -0,0 +1,789 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+close-button =
+ .aria-label = Закрыть
+preferences-doc-title2 = Настройки
+category-list =
+ .aria-label = Категории
+pane-general-title = Основные
+category-general =
+ .tooltiptext = { pane-general-title }
+pane-compose-title = Составление
+category-compose =
+ .tooltiptext = Составление
+pane-privacy-title = Приватность и защита
+category-privacy =
+ .tooltiptext = Приватность и защита
+pane-chat-title = Чат
+category-chat =
+ .tooltiptext = Чат
+pane-calendar-title = Календарь
+category-calendar =
+ .tooltiptext = Календарь
+pane-sync-title = Синхронизация
+category-sync =
+ .tooltiptext = Синхронизация
+general-language-and-appearance-header = Язык и внешний вид
+general-incoming-mail-header = Входящие сообщения
+general-files-and-attachment-header = Файлы и вложения
+general-tags-header = Метки
+general-reading-and-display-header = Чтение и отображение
+general-updates-header = Обновления
+general-network-and-diskspace-header = Сеть и дисковое пространство
+general-indexing-label = Индексация
+composition-category-header = Составление
+composition-attachments-header = Вложения
+composition-spelling-title = Орфография
+compose-html-style-title = HTML-стиль
+composition-addressing-header = Адресация
+privacy-main-header = Приватность
+privacy-passwords-header = Пароли
+privacy-junk-header = Спам
+collection-header = Сбор и использование данных { -brand-short-name }
+collection-description = Мы стремимся предоставить вам выбор и собирать только то, что нам нужно, для выпуска и улучшения { -brand-short-name } для всех и каждого. Мы всегда спрашиваем разрешение перед получением личной информации.
+collection-privacy-notice = Уведомление о конфиденциальности
+collection-health-report-telemetry-disabled = Вы больше не разрешаете { -vendor-short-name } собирать технические данные и данные взаимодействия. Все собранные ранее данные будут удалены в течение 30 дней.
+collection-health-report-telemetry-disabled-link = Подробнее
+collection-health-report =
+ .label = Разрешить { -brand-short-name } отправлять технические данные и данные взаимодействия в { -vendor-short-name }
+ .accesskey = е
+collection-health-report-link = Подробнее
+# This message is displayed above disabled data sharing options in developer builds
+# or builds with no Telemetry support available.
+collection-health-report-disabled = Для этой конфигурации сборки отправка данных отключена
+collection-backlogged-crash-reports =
+ .label = Разрешить { -brand-short-name } отправлять от вашего имени накопившиеся сообщения о падении
+ .accesskey = ш
+collection-backlogged-crash-reports-link = Подробнее
+privacy-security-header = Защита
+privacy-scam-detection-title = Обнаружение мошенничества
+privacy-anti-virus-title = Антивирус
+privacy-certificates-title = Сертификаты
+chat-pane-header = Чат
+chat-status-title = Статус
+chat-notifications-title = Уведомления
+chat-pane-styling-header = Стили
+choose-messenger-language-description = Выберите язык отображения меню, сообщений и уведомлений от { -brand-short-name }.
+manage-messenger-languages-button =
+ .label = Выбрать альтернативные…
+ .accesskey = ы
+confirm-messenger-language-change-description = Перезапустите { -brand-short-name } для применения этих изменений
+confirm-messenger-language-change-button = Применить и перезапустить
+update-setting-write-failure-title = Ошибка при сохранении настроек обновления
+# Variables:
+# $path (String) - Path to the configuration file
+# The newlines between the main text and the line containing the path is
+# intentional so the path is easier to identify.
+update-setting-write-failure-message =
+ { -brand-short-name } столкнулся с ошибкой и не смог сохранить это изменение. Обратите внимание, что для установки этой настройки обновления необходимо разрешение на запись в файл, указанный ниже. Вы или системный администратор можете исправить эту проблему, если предоставите группе «Пользователи» полный доступ к этому файлу.
+
+ Не удалось произвести запись в файл: { $path }
+update-in-progress-title = Идёт обновление
+update-in-progress-message = Вы хотите продолжить обновление { -brand-short-name }?
+update-in-progress-ok-button = &Отменить
+# Continue is the cancel button so pressing escape or using a platform standard
+# method of closing the UI will not discard the update.
+update-in-progress-cancel-button = &Продолжить
+account-button = Параметры учётной записи
+open-addons-sidebar-button = Дополнения и темы
+
+## OS Authentication dialog
+
+# This message can be seen by trying to add a Primary Password.
+primary-password-os-auth-dialog-message-win = Чтобы создать основной пароль, введите свои учётные данные для входа в Windows. Это поможет защитить ваши аккаунты.
+# This message can be seen by trying to add a Primary Password.
+# The macOS strings are preceded by the operating system with "Thunderbird is trying to "
+# and includes subtitle of "Enter password for the user "xxx" to allow this." These
+# notes are only valid for English. Please test in your locale.
+primary-password-os-auth-dialog-message-macosx = создать основной пароль
+# Don't change this label.
+master-password-os-auth-dialog-caption = { -brand-full-name }
+
+## General Tab
+
+focus-search-shortcut =
+ .key = f
+focus-search-shortcut-alt =
+ .key = k
+general-legend = Стартовая страница { -brand-short-name }
+start-page-label =
+ .label = Показывать стартовую страницу в области просмотра сообщения при запуске { -brand-short-name }
+ .accesskey = ы
+location-label =
+ .value = Адрес:
+ .accesskey = е
+restore-default-label =
+ .label = Восстановить
+ .accesskey = н
+default-search-engine = Поисковая система по умолчанию
+add-web-search-engine =
+ .label = Добавить…
+ .accesskey = б
+remove-search-engine =
+ .label = Удалить
+ .accesskey = л
+add-opensearch-provider-title = Добавить провайдера OpenSearch
+add-opensearch-provider-text = Для добавления введите URL провайдера OpenSearch. Используйте либо прямой URL-адрес файла описания OpenSearch, либо URL-адрес, по которому он может быть автоматически обнаружен.
+adding-opensearch-provider-failed-title = Не удалось добавить провайдера OpenSearch
+# Variables:
+# $url (String) - URL an OpenSearch provider was requested for.
+adding-opensearch-provider-failed-text = Не удалось добавить провайдера OpenSearch для { $url }.
+minimize-to-tray-label =
+ .label = При сворачивании перемещать { -brand-short-name } в системный трей
+ .accesskey = ч
+new-message-arrival = При появлении новых сообщений:
+mail-play-sound-label =
+ .label =
+ { PLATFORM() ->
+ [macos] Воспроизвести следующий звуковой файл:
+ *[other] Подавать звуковой сигнал
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] а
+ *[other] в
+ }
+mail-play-button =
+ .label = Прослушать
+ .accesskey = ш
+change-dock-icon = Изменить настройки значка приложения
+app-icon-options =
+ .label = Настройки значка приложения…
+ .accesskey = ж
+notification-settings2 = Уведомления и звук по умолчанию могут быть отключены на панели Уведомления в «Системных настройках».
+animated-alert-label =
+ .label = Показывать уведомление
+ .accesskey = к
+customize-alert-label =
+ .label = Настроить…
+ .accesskey = и
+biff-use-system-alert =
+ .label = Использовать системные уведомления
+tray-icon-unread-label =
+ .label = Показывать значок в трее для непрочитанных сообщений
+ .accesskey = а
+tray-icon-unread-description = Рекомендуется при использовании маленьких кнопок панели задач
+mail-system-sound-label =
+ .label = Системный звуковой сигнал о приходе почты
+ .accesskey = м
+mail-custom-sound-label =
+ .label = Использовать следующий звуковой файл
+ .accesskey = з
+mail-browse-sound-button =
+ .label = Обзор…
+ .accesskey = б
+enable-gloda-search-label =
+ .label = Включить глобальный поиск и индексацию сообщений
+ .accesskey = с
+datetime-formatting-legend = Формат даты и времени
+language-selector-legend = Язык
+allow-hw-accel =
+ .label = По возможности использовать аппаратное ускорение
+ .accesskey = м
+store-type-label =
+ .value = Тип хранилища сообщений для новых учётных записей:
+ .accesskey = л
+mbox-store-label =
+ .label = Каждая папка в отдельном файле (mbox)
+maildir-store-label =
+ .label = Каждое сообщение в отдельном файле (maildir)
+scrolling-legend = Прокрутка
+autoscroll-label =
+ .label = Использовать автоматическую прокрутку
+ .accesskey = ь
+smooth-scrolling-label =
+ .label = Использовать плавную прокрутку
+ .accesskey = с
+browsing-gtk-use-non-overlay-scrollbars =
+ .label = Всегда показывать полосы прокрутки
+ .accesskey = п
+window-layout-legend = Макет окна
+draw-in-titlebar-label =
+ .label = Скрывать заголовок системного окна
+ .accesskey = ы
+auto-hide-tabbar-label =
+ .label = Автоматически скрывать панель вкладок
+ .accesskey = в
+auto-hide-tabbar-description = Скрывать панель вкладок, когда открыта только одна вкладка
+system-integration-legend = Интеграция с системой
+always-check-default =
+ .label = Всегда проверять при запуске, является ли { -brand-short-name } почтовым клиентом по умолчанию
+ .accesskey = и
+check-default-button =
+ .label = Проверить сейчас…
+ .accesskey = е
+# Note: This is the search engine name for all the different platforms.
+# Platforms that don't support it should be left blank.
+search-engine-name =
+ { PLATFORM() ->
+ [macos] Spotlight
+ [windows] Поиску Windows
+ *[other] { "" }
+ }
+search-integration-label =
+ .label = Разрешить { search-engine-name } производить поиск сообщений
+ .accesskey = а
+config-editor-button =
+ .label = Редактор настроек…
+ .accesskey = о
+return-receipts-description = Определите, как { -brand-short-name } должен обрабатывать уведомления о прочтении
+return-receipts-button =
+ .label = Уведомления о прочтении…
+ .accesskey = ч
+update-app-legend = Обновления { -brand-short-name }
+# Variables:
+# $version (String): version of Thunderbird, e.g. 68.0.1
+update-app-version = Версия { $version }
+allow-description = Разрешить { -brand-short-name }
+automatic-updates-label =
+ .label = Автоматически устанавливать обновления (рекомендовано: повышает безопасность)
+ .accesskey = и
+check-updates-label =
+ .label = Проверять наличие обновлений, но позволять мне решать, устанавливать ли их или нет
+ .accesskey = о
+update-history-button =
+ .label = Показать журнал обновлений
+ .accesskey = й
+use-service =
+ .label = Использовать фоновую службу для установки обновлений
+ .accesskey = у
+cross-user-udpate-warning = Этот параметр применится ко всем учётным записям Windows и профилям { -brand-short-name }, использующим эту установку { -brand-short-name }.
+networking-legend = Соединение
+proxy-config-description = Настройка параметров соединения { -brand-short-name } с Интернетом
+network-settings-button =
+ .label = Настроить…
+ .accesskey = а
+offline-legend = Автономная работа
+offline-settings = Настройка параметров автономной работы
+offline-settings-button =
+ .label = Автономная работа…
+ .accesskey = в
+diskspace-legend = Дисковое пространство
+offline-compact-folder =
+ .label = Сжимать все папки, если при этом освободится всего более
+ .accesskey = э
+offline-compact-folder-automatically =
+ .label = Спрашивать каждый раз перед сжатием
+ .accesskey = ш
+compact-folder-size =
+ .value = МБ
+
+## Note: The entities use-cache-before and use-cache-after appear on a single
+## line in preferences as follows:
+## use-cache-before [ textbox for cache size in MB ] use-cache-after
+
+use-cache-before =
+ .value = Использовать до
+ .accesskey = ь
+use-cache-after = МБ на диске для кеша
+
+##
+
+smart-cache-label =
+ .label = Отключить автоматическое управление кешем
+ .accesskey = ю
+clear-cache-button =
+ .label = Очистить сейчас
+ .accesskey = о
+clear-cache-shutdown-label =
+ .label = Очищать кеш при выходе
+ .accesskey = ч
+fonts-legend = Шрифты и цвета
+default-font-label =
+ .value = Шрифт по умолчанию:
+ .accesskey = и
+default-size-label =
+ .value = Размер:
+ .accesskey = м
+font-options-button =
+ .label = Дополнительно…
+ .accesskey = о
+color-options-button =
+ .label = Цвета…
+ .accesskey = а
+display-width-legend = Простые текстовые сообщения
+# Note : convert-emoticons-label 'Emoticons' are also known as 'Smileys', e.g. :-)
+convert-emoticons-label =
+ .label = Отображать смайлики как графику
+ .accesskey = б
+display-text-label = При отображении цитат в простых текстовых сообщениях:
+style-label =
+ .value = Стиль:
+ .accesskey = л
+regular-style-item =
+ .label = Обычный
+bold-style-item =
+ .label = Полужирный
+italic-style-item =
+ .label = Курсив
+bold-italic-style-item =
+ .label = Полужирный курсив
+size-label =
+ .value = Размер:
+ .accesskey = з
+regular-size-item =
+ .label = Обычный
+bigger-size-item =
+ .label = Больше
+smaller-size-item =
+ .label = Меньше
+quoted-text-color =
+ .label = Цвет:
+ .accesskey = в
+search-handler-table =
+ .placeholder = Фильтр типов контента и действий
+type-column-header = Тип содержимого
+action-column-header = Действие
+save-to-label =
+ .label = Путь для сохранения файлов
+ .accesskey = х
+choose-folder-label =
+ .label =
+ { PLATFORM() ->
+ [macos] Выбрать…
+ *[other] Обзор…
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] ы
+ *[other] б
+ }
+always-ask-label =
+ .label = Всегда выдавать запрос на сохранение файлов
+ .accesskey = п
+display-tags-text = Метки могут быть использованы для классификации и изменения приоритета сообщений.
+new-tag-button =
+ .label = Создать…
+ .accesskey = о
+edit-tag-button =
+ .label = Изменить…
+ .accesskey = е
+delete-tag-button =
+ .label = Удалить
+ .accesskey = и
+auto-mark-as-read =
+ .label = Автоматически отмечать сообщения как прочитанные
+ .accesskey = в
+mark-read-no-delay =
+ .label = Сразу после открытия
+ .accesskey = а
+view-attachments-inline =
+ .label = Показывать вложения в теле сообщения
+ .accesskey = ж
+
+## Note: This will concatenate to "After displaying for [___] seconds",
+## using (mark-read-delay) and a number (seconds-label).
+
+mark-read-delay =
+ .label = После просмотра в течение
+ .accesskey = т
+seconds-label = сек.
+
+##
+
+open-msg-label =
+ .value = Открывать сообщения в:
+open-msg-tab =
+ .label = новой вкладке
+ .accesskey = к
+open-msg-window =
+ .label = новом окне
+ .accesskey = о
+open-msg-ex-window =
+ .label = уже существующем окне
+ .accesskey = ж
+close-move-delete =
+ .label = Закрывать окно/вкладку сообщения при его перемещении или удалении
+ .accesskey = к
+display-name-label =
+ .value = Отображаемое имя:
+condensed-addresses-label =
+ .label = Показывать только имя для людей, находящихся в моей адресной книге
+ .accesskey = к
+
+## Compose Tab
+
+forward-label =
+ .value = Пересылать сообщения:
+ .accesskey = с
+inline-label =
+ .label = Внутри сообщения
+as-attachment-label =
+ .label = Как вложение
+extension-label =
+ .label = добавлять расширение к имени файла
+ .accesskey = ф
+
+## Note: This will concatenate to "Auto Save every [___] minutes",
+## using (auto-save-label) and a number (auto-save-end).
+
+auto-save-label =
+ .label = Автоматически сохранять сообщение каждые
+ .accesskey = х
+auto-save-end = минут
+
+##
+
+warn-on-send-accel-key =
+ .label = Запрашивать подтверждение при использовании сочетаний клавиш для отправки сообщений
+ .accesskey = п
+add-link-previews =
+ .label = Добавлять предпросмотр ссылок при вставке URL-адресов
+ .accesskey = п
+spellcheck-label =
+ .label = Проверять орфографию перед отправкой сообщения
+ .accesskey = г
+spellcheck-inline-label =
+ .label = Проверять орфографию при наборе текста
+ .accesskey = н
+language-popup-label =
+ .value = Язык:
+ .accesskey = з
+download-dictionaries-link = Загрузить дополнительные словари
+font-label =
+ .value = Шрифт:
+ .accesskey = р
+font-size-label =
+ .value = Размер:
+ .accesskey = е
+default-colors-label =
+ .label = Использовать цвета пользователя по умолчанию
+ .accesskey = ь
+font-color-label =
+ .value = Цвет текста:
+ .accesskey = т
+bg-color-label =
+ .value = Цвет фона:
+ .accesskey = в
+restore-html-label =
+ .label = Восстановить значения по умолчанию
+ .accesskey = м
+default-format-label =
+ .label = Использовать формат Абзаца вместо Обычного текста по умолчанию
+ .accesskey = п
+compose-send-format-title = Формат исходящей почты
+compose-send-automatic-option =
+ .label = Автоматический
+compose-send-automatic-description = Если в сообщении не используются стили, оно будет отправлено в виде обычного текста. В противном случае оно будет отправлено в виде HTML с резервным вариантом в виде обычного текста.
+compose-send-both-option =
+ .label = HTML и обычный текст
+compose-send-both-description = Приложение электронной почты получателя определит, какая версия будет отображена.
+compose-send-html-option =
+ .label = Только HTML
+compose-send-html-description = Некоторые получатели не смогут прочитать сообщение без резервного варианта в виде обычного текста.
+compose-send-plain-option =
+ .label = Только обычный текст
+compose-send-plain-description = Некоторые стили будут преобразованы в альтернативу в виде обычного текста, в то время как другие виды оформления будут отключены.
+autocomplete-description = При вводе адреса искать подходящие почтовые адреса в:
+ab-label =
+ .label = Локальных адресных книгах
+ .accesskey = к
+directories-label =
+ .label = Сервере каталогов:
+ .accesskey = р
+directories-none-label =
+ .none = Нет
+edit-directories-label =
+ .label = Изменить каталоги…
+ .accesskey = з
+email-picker-label =
+ .label = Автоматически добавлять адреса из исходящих писем в адресную книгу:
+ .accesskey = в
+default-directory-label =
+ .value = Каталог по умолчанию при открытии окна адресной книги:
+ .accesskey = ю
+default-last-label =
+ .none = Последний использованный каталог
+attachment-label =
+ .label = Проверять на забытые вложения
+ .accesskey = в
+attachment-options-label =
+ .label = Ключевые слова…
+ .accesskey = л
+enable-cloud-share =
+ .label = Предлагать службу хранения для файлов больше чем
+cloud-share-size =
+ .value = МБ
+add-cloud-account =
+ .label = Добавить…
+ .accesskey = в
+ .defaultlabel = Добавить…
+remove-cloud-account =
+ .label = Удалить
+ .accesskey = д
+find-cloud-providers =
+ .value = Найти больше провайдеров…
+cloud-account-description = Добавить новую службу хранения Filelink
+
+## Privacy Tab
+
+mail-content = Содержимое электронной почты
+remote-content-label =
+ .label = Разрешить в сообщениях показ содержимого из Интернета
+ .accesskey = а
+exceptions-button =
+ .label = Исключения…
+ .accesskey = к
+remote-content-info =
+ .value = Узнайте больше о приватности содержимого из Интернета
+web-content = Содержимое веб-сайтов
+history-label =
+ .label = Помнить посещённые мной веб-сайты и ссылки
+ .accesskey = м
+cookies-label =
+ .label = Принимать куки с сайтов
+ .accesskey = н
+third-party-label =
+ .value = Принимать куки со сторонних сайтов:
+ .accesskey = и
+third-party-always =
+ .label = Всегда
+third-party-never =
+ .label = Никогда
+third-party-visited =
+ .label = С посещённых
+keep-label =
+ .value = Сохранять куки:
+ .accesskey = я
+keep-expire =
+ .label = до истечения срока их действия
+keep-close =
+ .label = до закрытия мною { -brand-short-name }
+keep-ask =
+ .label = спрашивать каждый раз
+cookies-button =
+ .label = Показать куки…
+ .accesskey = з
+do-not-track-label =
+ .label = Отправлять веб-сайтам сигнал «Не отслеживать», означающий, чтобы вы не хотите, чтобы вас отслеживали
+ .accesskey = я
+learn-button =
+ .label = Подробнее
+dnt-learn-more-button =
+ .value = Подробнее
+passwords-description = { -brand-short-name } может запоминать пароли всех ваших учётных записей.
+passwords-button =
+ .label = Сохранённые пароли…
+ .accesskey = х
+primary-password-description = Основной пароль защищает все ваши пароли, но вам нужно будет вводить его один раз в каждой сессии.
+primary-password-label =
+ .label = Использовать основной пароль
+ .accesskey = п
+primary-password-button =
+ .label = Сменить основной пароль…
+ .accesskey = м
+forms-primary-pw-fips-title = Вы работаете в режиме соответствия FIPS. При работе в этом режиме необходимо установить основной пароль.
+forms-master-pw-fips-desc = Смена пароля не удалась
+junk-description = Здесь вы можете установить настройки анти-спам фильтра по умолчанию. Настройки анти-спам фильтра, специфичные для учётной записи, могут быть установлены в параметрах учётной записи.
+junk-label =
+ .label = Когда я помечаю сообщения как спам:
+ .accesskey = с
+junk-move-label =
+ .label = Перемещать их в папку «Спам» учётной записи
+ .accesskey = м
+junk-delete-label =
+ .label = Удалять их
+ .accesskey = д
+junk-read-label =
+ .label = Отмечать сообщения, определённые как спам, как прочитанные
+ .accesskey = ч
+junk-log-label =
+ .label = Включить журнал работы адаптивного анти-спам фильтра
+ .accesskey = ж
+junk-log-button =
+ .label = Показать журнал
+ .accesskey = к
+reset-junk-button =
+ .label = Удалить данные обучения
+ .accesskey = б
+phishing-description = { -brand-short-name } может анализировать сообщения для выявления подозрительных писем, рассылаемых мошенниками, проверяя их на наличие определённых приёмов и техник, используемых для ввода вас в заблуждение.
+phishing-label =
+ .label = Информировать, не является ли читаемое мною сообщение подозрительным письмом, рассылаемым мошенниками
+ .accesskey = ф
+antivirus-description = { -brand-short-name } может облегчить работу антивируса по проверке входящих сообщений на наличие вирусов перед тем, как сохранять их в почтовые папки.
+antivirus-label =
+ .label = Разрешить антивирусу помещать в карантин отдельные входящие сообщения
+ .accesskey = в
+certificate-description = Когда сервер запрашивает личный сертификат:
+certificate-auto =
+ .label = Отправлять автоматически
+ .accesskey = а
+certificate-ask =
+ .label = Спрашивать каждый раз
+ .accesskey = и
+ocsp-label =
+ .label = Запрашивать у OCSP-серверов подтверждение текущего статуса сертификатов
+ .accesskey = ш
+certificate-button =
+ .label = Управление сертификатами…
+ .accesskey = ф
+security-devices-button =
+ .label = Устройства защиты…
+ .accesskey = ы
+email-e2ee-header = Сквозное шифрование электронной почты
+account-settings = Параметры учётной записи
+email-e2ee-enable-info = Настройте учётные записи электронной почты и идентификаторы для сквозного шифрования в настройках учётной записи.
+email-e2ee-automatism = Автоматическое использование шифрования
+email-e2ee-automatism-pre =
+ { -brand-short-name } может автоматически включать или отключать шифрование при составлении электронного письма.
+ Автоматическое включение/отключение осуществляется на основе наличия действительных и принятых ключей или сертификатов получателей.
+email-e2ee-auto-on =
+ .label = Автоматически включать шифрование, когда это возможно
+email-e2ee-auto-off =
+ .label = Автоматически отключать шифрование при смене получателей и невозможности шифрования
+email-e2ee-auto-off-notify =
+ .label = Показывать уведомление всякий раз, когда шифрование отключается автоматически
+email-e2ee-automatism-post =
+ Автоматические решения можно отменить, включив или отключив шифрование вручную при составлении сообщения.
+ Примечание: шифрование всегда автоматически включается при ответе на зашифрованное сообщение.
+
+## Chat Tab
+
+startup-label =
+ .value = При запуске { -brand-short-name }:
+ .accesskey = а
+offline-label =
+ .label = Не подключать учётные записи чата
+auto-connect-label =
+ .label = Автоматически подключать учётные записи чата
+
+## Note: idle-label is displayed first, then there's a field where the user
+## can enter a number, and itemTime is displayed at the end of the line.
+## The translations of the idle-label and idle-time-label parts don't have
+## to mean the exact same thing as in English; please try instead to
+## translate the whole sentence.
+
+idle-label =
+ .label = Уведомить контакты о моём бездействии через
+ .accesskey = е
+idle-time-label = минут неактивности
+
+##
+
+away-message-label =
+ .label = и установить мой статус как «Отошёл» вместе с этим сообщением:
+ .accesskey = ш
+send-typing-label =
+ .label = Отправлять уведомления о вводе в разговорах
+ .accesskey = я
+notification-label = Когда прибывают направленные вам сообщения:
+show-notification-label =
+ .label = Отображать уведомление:
+ .accesskey = ж
+notification-all =
+ .label = с именем отправителя и предпросмотром сообщения
+notification-name =
+ .label = только с именем отправителя
+notification-empty =
+ .label = без какой-либо информации
+notification-type-label =
+ .label =
+ { PLATFORM() ->
+ [macos] Анимировать иконку в доке
+ *[other] Мигать на панели задач
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] н
+ *[other] и
+ }
+chat-play-sound-label =
+ .label = Подавать звуковой сигнал
+ .accesskey = в
+chat-play-button =
+ .label = Воспроизвести
+ .accesskey = п
+chat-system-sound-label =
+ .label = Системный звуковой сигнал о приходе почты
+ .accesskey = м
+chat-custom-sound-label =
+ .label = Использовать следующий звуковой файл
+ .accesskey = о
+chat-browse-sound-button =
+ .label = Обзор…
+ .accesskey = з
+theme-label =
+ .value = Тема:
+ .accesskey = е
+style-mail =
+ .label = { -brand-short-name }
+style-bubbles =
+ .label = Пузырьки
+style-dark =
+ .label = Тёмная
+style-paper =
+ .label = Листы бумаги
+style-simple =
+ .label = Простая
+preview-label = Предпросмотр:
+no-preview-label = Предпросмотр недоступен
+no-preview-description = Эта тема повреждена или в настоящее время недоступна (отключено дополнение, включен безопасный режим…).
+chat-variant-label =
+ .value = Вариант:
+ .accesskey = а
+# This is used to determine the width of the search field in about:preferences,
+# in order to make the entire placeholder string visible
+#
+# Please keep the placeholder string short to avoid truncation.
+#
+# Notice: The value of the `.style` attribute is a CSS string, and the `width`
+# is the name of the CSS property. It is intended only to adjust the element's width.
+# Do not translate.
+search-preferences-input2 =
+ .style = width: 15.4em
+ .placeholder = Поиск в Настройках
+
+## Settings UI Search Results
+
+search-results-header = Результаты поиска
+# `<span data-l10n-name="query"></span>` will be replaced by the search term.
+search-results-empty-message2 =
+ { PLATFORM() ->
+ [windows] Извините! В настройках не найдено результатов для «<span data-l10n-name="query"></span>».
+ *[other] Извините! В настройках не найдено результатов для «<span data-l10n-name="query"></span>».
+ }
+search-results-help-link = Нужна помощь? Посетите <a data-l10n-name="url">Сайт поддержки { -brand-short-name }</a>
+
+## Sync Tab
+
+sync-signedout-caption = Возьмите Вашу сеть с собой
+sync-signedout-description = Синхронизируйте свои учётные записи, адресные книги, календари, расширения и настройки со всеми своими устройствами.
+# Note: "Sync" represents the Firefox Sync product so it shouldn't be translated.
+sync-signedout-account-signin-btn = Войти для Синхронизации…
+sync-pane-header = Синхронизация
+# Variables:
+# $userEmail (String) - The email logged into Sync.
+sync-pane-email-not-verified = «{ $userEmail }» не подтверждён.
+# Variables:
+# $userEmail (String) - The email logged into Sync.
+sync-signedin-login-failure = Пожалуйста, войдите для повторного подключения «{ $userEmail }»
+sync-pane-resend-verification = Отправить подтверждение повторно
+sync-pane-sign-in = Войти
+sync-pane-remove-account = Удалить аккаунт
+sync-pane-edit-photo =
+ .title = Изменить фотографию в профиле
+sync-pane-manage-account = Управление учётной записью
+sync-pane-sign-out = Выйти…
+sync-pane-device-name-title = Имя устройства
+sync-pane-change-device-name = Изменить имя устройства
+sync-pane-cancel = Отмена
+sync-pane-save = Сохранить
+sync-pane-show-synced-header-on = Синхронизация ВКЛЮЧЕНА
+sync-pane-show-synced-header-off = Синхронизация ОТКЛЮЧЕНА
+sync-pane-sync-now = Синхронизировать
+sync-panel-sync-now-syncing = Синхронизация…
+show-synced-list-heading = Сейчас вы синхронизируете:
+show-synced-learn-more = Подробнее…
+show-synced-item-account = Учётные записи эл. почты
+show-synced-item-address = Адресные книги
+show-synced-item-calendar = Календари
+show-synced-item-identity = Личности
+show-synced-item-passwords = Пароли
+show-synced-change = Изменить…
+synced-acount-item-server-config = Настройка сервера
+synced-acount-item-filters = Фильтры
+synced-acount-item-keys = OpenPGP - S/MIME
+sync-disconnected-text = Синхронизируйте свои учётные записи электронной почты, адресные книги, календари и личности на всех своих устройствах.
+sync-disconnected-turn-on-sync = Включить Cинхронизацию…
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/receipts.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/receipts.ftl
new file mode 100644
index 0000000000..9f41c4ce68
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/receipts.ftl
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+receipts-dialog-window =
+ .title = Уведомления о прочтении
+receipts-dialog-title = Уведомления о прочтении
+return-receipt-checkbox-control =
+ .label = Всегда запрашивать уведомление о прочтении при отправке сообщений
+ .accesskey = п
+receipt-arrive-label = При получении уведомления о прочтении:
+receipt-leave-radio-control =
+ .label = Оставлять его в папке «Входящие»
+ .accesskey = х
+receipt-move-radio-control =
+ .label = Переместить его в папку «Отправленные»
+ .accesskey = п
+receipt-request-label = При получении запроса на уведомление о прочтении:
+receipt-return-never-radio-control =
+ .label = Никогда не отправлять уведомление о прочтении
+ .accesskey = и
+receipt-return-some-radio-control =
+ .label = Отправлять уведомления о прочтении для некоторых сообщений
+ .accesskey = е
+receipt-not-to-cc-label =
+ .value = Если я не в списке «Кому» или «Копия»:
+ .accesskey = е
+receipt-send-never-label =
+ .label = Никогда не отправлять
+receipt-send-always-label =
+ .label = Отправлять
+receipt-send-ask-label =
+ .label = Спрашивать
+sender-outside-domain-label =
+ .value = Если отправитель не в моём домене:
+ .accesskey = м
+other-cases-text-label =
+ .value = В остальных случаях:
+ .accesskey = а
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/sync-dialog.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/sync-dialog.ftl
new file mode 100644
index 0000000000..bb99abc2c5
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/sync-dialog.ftl
@@ -0,0 +1,11 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+config-sync-dailog-title =
+ .title = Выберите, что синхронизировать
+sync-dialog =
+ .buttonlabelaccept = Сохранить изменения
+ .buttonaccesskeyaccept = х
+ .buttonlabelextra2 = Отсоединиться…
+ .buttonaccesskeyextra2 = с
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/preferences/system-integration.ftl b/thunderbird-l10n/ru/localization/ru/messenger/preferences/system-integration.ftl
new file mode 100644
index 0000000000..31ebc769a6
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/preferences/system-integration.ftl
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+system-integration-title =
+ .title = Интеграция с системой
+system-integration-dialog-title = Интеграция с системой
+system-integration-dialog =
+ .buttonlabelaccept = Установить по умолчанию
+ .buttonlabelcancel = Пропустить интеграцию
+ .buttonlabelcancel2 = Отмена
+default-client-intro = Использовать { -brand-short-name } по умолчанию в качестве:
+unset-default-tooltip = Нельзя отказаться от использования { -brand-short-name } в качестве клиента по умолчанию, находясь в самом { -brand-short-name }. Чтобы установить другое приложение в качестве клиента по умолчанию, вы должны воспользоваться его функцией «установки по умолчанию».
+checkbox-email-label =
+ .label = Почтового клиента
+ .tooltiptext = { unset-default-tooltip }
+checkbox-newsgroups-label =
+ .label = Клиента групп новостей
+ .tooltiptext = { unset-default-tooltip }
+checkbox-feeds-label =
+ .label = Клиента лент новостей
+ .tooltiptext = { unset-default-tooltip }
+checkbox-calendar-label =
+ .label = Календаря
+ .tooltiptext = { unset-default-tooltip }
+# Note: This is the search engine name for all the different platforms.
+# Platforms that don't support it should be left blank.
+system-search-engine-name =
+ { PLATFORM() ->
+ [macos] Spotlight
+ [windows] Поиску Windows
+ *[other] { "" }
+ }
+system-search-integration-label =
+ .label = Разрешить { system-search-engine-name } производить поиск сообщений
+ .accesskey = з
+check-on-startup-label =
+ .label = Всегда производить эту проверку при запуске { -brand-short-name }
+ .accesskey = В
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/shortcuts.ftl b/thunderbird-l10n/ru/localization/ru/messenger/shortcuts.ftl
new file mode 100644
index 0000000000..672a161a05
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/shortcuts.ftl
@@ -0,0 +1,113 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Shortcuts
+
+# Variables:
+# $key (String) - The shortcut key.
+shortcut-key = { $key }
+
+meta-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⌘ { $key }
+ *[other] Meta+{ $key }
+ }
+
+ctrl-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⌃ { $key }
+ *[other] Ctrl+{ $key }
+ }
+
+shift-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⇧ { $key }
+ *[other] Shift+{ $key }
+ }
+
+alt-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⌥ { $key }
+ *[other] Alt+{ $key }
+ }
+
+meta-ctrl-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⌃ ⌘ { $key }
+ *[other] Meta+Ctrl+{ $key }
+ }
+
+meta-alt-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⌥ ⌘ { $key }
+ *[other] Meta+Alt+{ $key }
+ }
+
+ctrl-alt-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⌃ ⌥ { $key }
+ *[other] Ctrl+Alt+{ $key }
+ }
+
+meta-ctrl-alt-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⌃ ⌥ ⌘ { $key }
+ *[other] Meta+Ctrl+Alt+{ $key }
+ }
+
+meta-shift-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⇧ ⌘ { $key }
+ *[other] Meta+Shift+{ $key }
+ }
+
+ctrl-shift-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⌃ ⇧ { $key }
+ *[other] Ctrl+Shift+{ $key }
+ }
+
+meta-ctrl-shift-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⌃ ⇧ ⌘ { $key }
+ *[other] Meta+Ctrl+Shift+{ $key }
+ }
+
+alt-shift-shortcut-key =
+ { PLATFORM() ->
+ [macos] ⌥ ⇧ { $key }
+ *[other] Alt+Shift+{ $key }
+ }
+
+meta-shift-alt-shortcut-key2 =
+ { PLATFORM() ->
+ [macos] ⌥ ⇧ ⌘ { $key }
+ *[other] Meta+Alt+Shift+{ $key }
+ }
+
+ctrl-shift-alt-shortcut-key2 =
+ { PLATFORM() ->
+ [macos] ⌃ ⌥ ⇧ { $key }
+ *[other] Ctrl+Alt+Shift+{ $key }
+ }
+
+meta-ctrl-shift-alt-shortcut-key2 =
+ { PLATFORM() ->
+ [macos] ⌃ ⌥ ⇧ ⌘ { $key }
+ *[other] Meta+Ctrl+Alt+Shift+{ $key }
+ }
+
+# Variables:
+# $title (String): The title coming from the original element.
+# $shortcut (String): The shortcut generated from the keystroke combination.
+button-shortcut-string =
+ .title = { $title } ({ $shortcut })
+
+# Variables:
+# $label (String): The text label coming from the original element.
+# $shortcut (String): The shortcut generated from the keystroke combination.
+menuitem-shortcut-string =
+ .label = { $label }
+ .acceltext = { $shortcut }
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/syncAccounts.ftl b/thunderbird-l10n/ru/localization/ru/messenger/syncAccounts.ftl
new file mode 100644
index 0000000000..0a3715bb4a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/syncAccounts.ftl
@@ -0,0 +1,28 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+# The strings in this file relate to the configuration of Mozilla accounts for sync.
+
+
+## These strings are shown in a desktop notification after the user requests we resend a verification email.
+
+sync-verification-sent-title = Подтверждение отправлено
+# Variables:
+# $userEmail (String) - Email address of the account used for sync.
+sync-verification-sent-body = Ссылка для подтверждения была отправлена на { $userEmail }.
+sync-verification-not-sent-title = Не удалось отправить подтверждение
+sync-verification-not-sent-body = Мы не можем отправить сейчас письмо для подтверждения, пожалуйста, повторите попытку позже.
+
+## These strings are shown in a confirmation dialog when the user chooses to sign out.
+
+sync-signout-dialog-title = Выйти из учётной записи?
+sync-signout-dialog-body = Синхронизированные данные останутся в вашем аккаунте.
+sync-signout-dialog-button = Выйти
+
+## These strings are shown in a confirmation dialog when the user chooses to stop syncing.
+
+sync-disconnect-dialog-title = Прекратить?
+sync-disconnect-dialog-body = { -brand-product-name } прекратит синхронизацию, но не будет удалять ничего из ваших данных на этом устройстве.
+sync-disconnect-dialog-button = Прекратить
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/treeView.ftl b/thunderbird-l10n/ru/localization/ru/messenger/treeView.ftl
new file mode 100644
index 0000000000..2c8c956cfd
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/treeView.ftl
@@ -0,0 +1,65 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Table
+
+tree-list-view-row-select =
+ .alt = Флажок для переключения выбора текущей строки
+ .title = Выбрать текущую строку
+tree-list-view-row-deselect =
+ .alt = Флажок для переключения выбора текущей строки
+ .title = Снять выбор текущей строки
+tree-list-view-row-delete =
+ .title = Удалить текущую строку
+tree-list-view-row-restore =
+ .title = Восстановить текущую строку
+tree-list-view-column-picker =
+ .title = Выбрать колонки для отображения
+tree-list-view-column-picker-restore =
+ .label = Восстановить порядок столбцов
+tree-list-view-row-thread-icon =
+ .alt = Индикатор сообщения в обсуждении
+ .title = Это сообщение из обсуждения
+tree-list-view-row-thread-button =
+ .title = Это сообщение из обсуждения
+tree-list-view-row-ignored-thread = Обсуждение проигнорировано
+tree-list-view-row-ignored-thread-icon =
+ .alt = Индикатор сообщения в обсуждении
+ .title = Это сообщение из обсуждения проигнорировано
+tree-list-view-row-ignored-thread-button =
+ .title = Это сообщение из обсуждения проигнорировано
+tree-list-view-row-ignored-subthread = Подобсуждение проигнорировано
+tree-list-view-row-ignored-subthread-icon =
+ .alt = Индикатор сообщения в обсуждении
+ .title = Это подобсуждение проигнорировано
+tree-list-view-row-ignored-subthread-button =
+ .title = Это подобсуждение проигнорировано
+tree-list-view-row-watched-thread = Обсуждение просмотрено
+tree-list-view-row-watched-thread-icon =
+ .alt = Индикатор сообщения в обсуждении
+ .title = Это сообщение из обсуждения просмотрено
+tree-list-view-row-watched-thread-button =
+ .title = Это сообщение из обсуждения просмотрено
+tree-list-view-row-flagged =
+ .alt = Индикатор помеченных сообщений
+ .title = Сообщение помечено
+tree-list-view-row-flag =
+ .alt = Индикатор помеченных сообщений
+ .title = Сообщение не помечено
+tree-list-view-row-attach =
+ .alt = Индикатор вложений
+ .title = Сообщение содержит вложения
+tree-list-view-row-spam =
+ .alt = Индикатор спам-состояния
+ .title = Сообщение помечено как спам
+tree-list-view-row-not-spam =
+ .alt = Индикатор спам-состояния
+ .title = Сообщение не помечено как спам
+tree-list-view-row-read =
+ .alt = Индикатор состояния прочтения
+ .title = Состояние прочтения сообщения
+tree-list-view-row-not-read =
+ .alt = Индикатор состояния непрочтения
+ .title = Состояние непрочтения сообщения
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/troubleshootMode.ftl b/thunderbird-l10n/ru/localization/ru/messenger/troubleshootMode.ftl
new file mode 100644
index 0000000000..d3b1099f78
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/troubleshootMode.ftl
@@ -0,0 +1,33 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+troubleshoot-mode-window =
+ .title = Безопасный режим { -brand-short-name }
+ .style = width: 37em;
+troubleshoot-mode-dialog-title = Безопасный режим { -brand-short-name }
+troubleshoot-mode-description = Используйте безопасный режим { -brand-short-name } для диагностики проблем. Ваши дополнения и настройки будут временно отключены.
+troubleshoot-mode-description2 = Произведённые вами изменения настроек вступят в силу при перезапуске в обычном режиме:
+troubleshoot-mode-disable-addons =
+ .label = Отключить все дополнения
+ .accesskey = т
+troubleshoot-mode-reset-toolbars =
+ .label = Сбросить настройки панелей и элементов управления
+ .accesskey = б
+troubleshoot-mode-change-and-restart =
+ .label = Внести изменения и перезапустить
+ .accesskey = е
+troubleshoot-mode-continue =
+ .label = Продолжить в безопасном режиме
+ .accesskey = П
+troubleshoot-mode-quit =
+ .label =
+ { PLATFORM() ->
+ [windows] Выход
+ *[other] Выход
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] х
+ *[other] х
+ }
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/unifiedToolbar.ftl b/thunderbird-l10n/ru/localization/ru/messenger/unifiedToolbar.ftl
new file mode 100644
index 0000000000..0addc5b386
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/unifiedToolbar.ftl
@@ -0,0 +1,100 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Unified Toolbar strings
+
+
+## Search bar
+
+search-bar-button =
+ .alt = Поиск
+search-bar-item =
+ .label = Поиск:
+search-bar-placeholder = Поиск…
+# Search bar placeholder with formatted key shortcut hint (platform dependent).
+# The key after the control modifier should match the key from quickSearchCmd.key
+# in messenger.dtd.
+search-bar-placeholder-with-key2 =
+ { PLATFORM() ->
+ [macos] { search-bar-placeholder } <kbd>⌘</kbd> <kbd>K</kbd>
+ *[other] { search-bar-placeholder } <kbd>Ctrl</kbd> + <kbd>K</kbd>
+ }
+
+## Unified toolbar context menu
+
+customize-menu-customize =
+ .label = Настроить…
+
+# Unified toolbar get messages button context menu
+
+toolbar-get-all-messages-menuitem =
+ .label = Все новые сообщения
+ .accesskey = с
+
+## Unified Toolbar customization
+
+customize-title = Настройка панелей инструментов
+customize-space-tab-mail = Почта
+ .title = Почта
+customize-space-tab-addressbook = Адресная книга
+ .title = Адресная книга
+customize-space-tab-calendar = Календарь
+ .title = Календарь
+customize-space-tab-tasks = Задачи
+ .title = Задачи
+customize-space-tab-chat = Чат
+ .title = Чат
+customize-space-tab-settings = Настройки
+ .title = Настройки
+customize-restore-default = Восстановить по умолчанию
+customize-change-appearance = Изменить внешний вид…
+customize-button-style-label = Стиль кнопок:
+customize-button-style-icons-beside-text-option = Значки рядом с текстом
+customize-button-style-icons-above-text-option = Значки над текстом
+customize-button-style-icons-only-option = Только значки
+customize-button-style-text-only-option = Только текст
+customize-cancel = Отмена
+customize-save = Сохранить
+customize-unsaved-changes = Несохранённые изменения в других местах
+customize-search-bar =
+ .label = Кнопки панели поиска…
+customize-spaces-tabs =
+ .aria-label = Места
+customize-main-toolbar-target =
+ .aria-label = Основная панель инструментов
+customize-palette-generic-title = Доступно для всех Мест
+customize-palette-mail-specific-title = Доступно только для Места Почты
+customize-palette-addressbook-specific-title = Доступно только для Места Адресной книги
+customize-palette-calendar-specific-title = Доступно только для Места Календаря
+customize-palette-tasks-specific-title = Доступно только для Места Задач
+customize-palette-chat-specific-title = Доступно только для Места Чатов
+customize-palette-settings-specific-title = Доступно только для Места Настроек
+customize-palette-extension-specific-title = Доступно только для этого Места
+
+## Unified toolbar customization palette context menu
+
+# Variables:
+# $target (String) - Name of the target the item should be added to.
+customize-palette-add-to =
+ .label = Добавить в { $target }
+customize-palette-add-everywhere =
+ .label = Добавить на все панели инструментов
+
+## Unified toolbar customization target context menu
+
+customize-target-forward =
+ .label = Переместить вперёд
+customize-target-backward =
+ .label = Переместить назад
+customize-target-remove =
+ .label = Удалить
+customize-target-remove-everywhere =
+ .label = Удалить со всех панелей инструментов
+customize-target-add-everywhere =
+ .label = Добавить на все панели инструментов
+customize-target-start =
+ .label = Переместить в начало
+customize-target-end =
+ .label = Переместить в конец
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/unifiedToolbarItems.ftl b/thunderbird-l10n/ru/localization/ru/messenger/unifiedToolbarItems.ftl
new file mode 100644
index 0000000000..b48664484a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/unifiedToolbarItems.ftl
@@ -0,0 +1,165 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Unified Toolbar Item Label strings
+
+spacer-label = Растягивающийся интервал
+search-bar-label = Поиск
+toolbar-write-message-label = Создать
+toolbar-write-message =
+ .title = Создать сообщение
+toolbar-move-to-label = Переместить в
+toolbar-move-to =
+ .title = Переместить выбранное сообщение
+toolbar-unifinder-label = Найти события
+toolbar-unifinder =
+ .title = Переключение отображения панели поиска событий
+toolbar-folder-location-label = Выбор папки
+toolbar-folder-location =
+ .title = Перейти в папку
+toolbar-edit-event-label = Правка
+toolbar-edit-event =
+ .title = Редактировать выбранное событие или задачу
+toolbar-get-messages-label = Получить
+toolbar-get-messages =
+ .title = Получить новые сообщения для всех учётных записей
+toolbar-reply-label = Ответить
+toolbar-reply =
+ .title = Ответить на сообщение
+toolbar-reply-all-label = Ответить всем
+toolbar-reply-all =
+ .title = Ответить отправителю и всем адресатам
+toolbar-reply-to-list-label = Ответить в рассылку
+toolbar-reply-to-list =
+ .title = Ответить в список рассылки
+toolbar-redirect-label = Перенаправить
+toolbar-redirect =
+ .title = Перенаправить выбранное сообщение
+toolbar-archive-label = Архивировать
+toolbar-archive =
+ .title = Архивировать выделенные сообщения
+toolbar-conversation-label = Разговор
+toolbar-conversation =
+ .title = Показать разговор для выделенного сообщения
+toolbar-previous-unread-label = Предыдущее непрочитанное
+toolbar-previous-unread =
+ .title = Перейти к предыдущему непрочитанному сообщению
+toolbar-previous-label = Предыдущее
+toolbar-previous =
+ .title = Перейти к предыдущему сообщению
+toolbar-next-unread-label = Следующее непрочитанное
+toolbar-next-unread =
+ .title = Перейти к следующему непрочитанному сообщению
+toolbar-next-label = Следующее
+toolbar-next =
+ .title = Перейти к следующему сообщению
+toolbar-junk-label = Спам
+toolbar-junk =
+ .title = Отметить выбранные сообщения как спам
+toolbar-delete-label = Удалить
+toolbar-delete-title =
+ .title = Удалить выбранные сообщения
+toolbar-undelete-label = Восстановить
+toolbar-undelete =
+ .title = Восстановить выбранные сообщения
+toolbar-compact-label = Сжать
+toolbar-compact =
+ .title = Убрать удалённые сообщения из выбранной папки
+toolbar-add-as-event-label = Добавить как событие
+toolbar-add-as-event =
+ .title = Извлечь календарную информацию из сообщения и добавить в календарь как событие
+toolbar-add-as-task-label = Добавить как задачу
+toolbar-add-as-task =
+ .title = Извлечь календарную информацию из сообщения и добавить в календарь как задачу
+toolbar-tag-message-label = Метка
+toolbar-tag-message =
+ .title = Присвоить сообщению метку
+toolbar-forward-inline-label = Переслать
+toolbar-forward-inline =
+ .title = Переслать выбранное сообщение внутри сообщения
+toolbar-forward-attachment-label = Переслать как вложение
+toolbar-forward-attachment =
+ .title = Переслать выбранное сообщение как вложение
+toolbar-mark-as-label = Отметить
+toolbar-mark-as =
+ .title = Отметить сообщения
+toolbar-view-picker-label = Вид
+toolbar-view-picker =
+ .title = Настроить вид текущей папки
+toolbar-address-book-label = Адресная книга
+toolbar-address-book =
+ .title = Открыть адресную книгу
+toolbar-chat-label = Чат
+toolbar-chat =
+ .title = Показать вкладку чата
+toolbar-add-ons-and-themes-label = Дополнения и темы
+toolbar-add-ons-and-themes =
+ .title = Управление своими дополнениями
+toolbar-calendar-label = Календарь
+toolbar-calendar =
+ .title = Переключиться на вкладку календаря
+toolbar-tasks-label = Задачи
+toolbar-tasks =
+ .title = Переключиться на вкладку задач
+toolbar-mail-label = Почта
+toolbar-mail =
+ .title = Перейти на вкладку почты
+toolbar-print-label = Печать
+toolbar-print =
+ .title = Распечатать это сообщение
+toolbar-quick-filter-bar-label = Быстрый фильтр
+toolbar-quick-filter-bar =
+ .title = Фильтрация сообщений
+toolbar-synchronize-label = Синхронизация
+toolbar-synchronize =
+ .title = Перезагрузить календари и синхронизировать изменения
+toolbar-delete-event-label = Удалить
+toolbar-delete-event =
+ .title = Удалить выбранные события или задачи
+toolbar-go-to-today-label = Сегодня
+toolbar-go-to-today =
+ .title = Перейти на сегодня
+toolbar-print-event-label = Печать
+toolbar-print-event =
+ .title = Печать событий или задач
+toolbar-new-event-label = Событие
+toolbar-new-event =
+ .title = Создать новое событие
+toolbar-new-task-label = Задача
+toolbar-new-task =
+ .title = Создать новую задачу
+toolbar-go-back-label = Назад
+toolbar-go-back =
+ .title = Перейти к предыдущему сообщению
+toolbar-go-forward-label = Вперёд
+toolbar-go-forward =
+ .title = Перейти к следующему сообщению
+toolbar-stop-label = Остановить
+toolbar-stop =
+ .title = Остановить текущую передачу данных
+toolbar-throbber-label = Индикатор активности
+toolbar-throbber =
+ .title = Индикатор активности
+toolbar-create-contact-label = Новый контакт
+toolbar-create-contact =
+ .title = Создать новый контакт
+toolbar-create-address-book-label = Новая адресная книга
+toolbar-create-address-book =
+ .title = Создать новую адресную книгу
+toolbar-create-list-label = Новый список
+toolbar-create-list =
+ .title = Создать новый список рассылки
+toolbar-import-contacts-label = Импорт
+toolbar-import-contacts =
+ .title = Импорт контактов из файла
+
+## New Address Book popup items
+
+toolbar-new-address-book-popup-add-js-address-book =
+ .label = Добавить локальную адресную книгу
+toolbar-new-address-book-popup-add-carddav-address-book =
+ .label = Добавить адресную книгу CardDAV
+toolbar-new-address-book-popup-add-ldap-address-book =
+ .label = Добавить адресную книгу LDAP
diff --git a/thunderbird-l10n/ru/localization/ru/messenger/viewSource.ftl b/thunderbird-l10n/ru/localization/ru/messenger/viewSource.ftl
new file mode 100644
index 0000000000..d30849ca98
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/messenger/viewSource.ftl
@@ -0,0 +1,19 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+context-text-action-find =
+ .label = Найти
+ .accesskey = а
+
+context-text-action-find-again =
+ .label = Найти следующее
+ .accesskey = л
+
+text-action-find =
+ .label = Найти
+ .accesskey = а
+
+text-action-find-again =
+ .label = Найти следующее
+ .accesskey = л
diff --git a/thunderbird-l10n/ru/localization/ru/security/certificates/certManager.ftl b/thunderbird-l10n/ru/localization/ru/security/certificates/certManager.ftl
new file mode 100644
index 0000000000..a22dffb55d
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/security/certificates/certManager.ftl
@@ -0,0 +1,228 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+certmgr-title =
+ .title = Управление сертификатами
+
+certmgr-tab-mine =
+ .label = Ваши сертификаты
+
+certmgr-tab-remembered =
+ .label = Решения по аутентификации
+
+certmgr-tab-people =
+ .label = Люди
+
+certmgr-tab-servers =
+ .label = Серверы
+
+certmgr-tab-ca =
+ .label = Центры сертификации
+
+certmgr-mine = У вас хранятся сертификаты от следующих организаций, служащие для вашей идентификации
+certmgr-remembered = Эти сертификаты используются для идентификации вас на веб-сайтах
+certmgr-people = У вас хранятся сертификаты, служащие для идентификации следующих лиц
+certmgr-server = В этих записях перечислены исключения для ошибок серверных сертификатов
+certmgr-ca = У вас хранятся сертификаты, служащие для идентификации следующих центров сертификации
+
+certmgr-edit-ca-cert2 =
+ .title = Изменение степени доверия сертификату CA
+ .style = min-width: 48em;
+
+certmgr-edit-cert-edit-trust = Изменить степень доверия:
+
+certmgr-edit-cert-trust-ssl =
+ .label = Этот сертификат может служить для идентификации веб-сайтов.
+
+certmgr-edit-cert-trust-email =
+ .label = Этот сертификат может служить для идентификации пользователей электронной почты.
+
+certmgr-delete-cert2 =
+ .title = Удаление сертификата
+ .style = min-width: 48em; min-height: 24em;
+
+certmgr-cert-host =
+ .label = Узел
+
+certmgr-cert-name =
+ .label = Имя сертификата
+
+certmgr-cert-server =
+ .label = Сервер
+
+certmgr-token-name =
+ .label = Устройство защиты
+
+certmgr-begins-label =
+ .label = Действителен с
+
+certmgr-expires-label =
+ .label = Действителен по
+
+certmgr-email =
+ .label = Адрес электронной почты
+
+certmgr-serial =
+ .label = Серийный номер
+
+certmgr-fingerprint-sha-256 =
+ .label = Отпечаток SHA-256
+
+certmgr-view =
+ .label = Просмотреть…
+ .accesskey = о
+
+certmgr-edit =
+ .label = Изменить доверие…
+ .accesskey = е
+
+certmgr-export =
+ .label = Экспортировать…
+ .accesskey = п
+
+certmgr-delete =
+ .label = Удалить…
+ .accesskey = д
+
+certmgr-delete-builtin =
+ .label = Удалить или не доверять…
+ .accesskey = л
+
+certmgr-backup =
+ .label = Сохранить копию…
+ .accesskey = х
+
+certmgr-backup-all =
+ .label = Сохранить все…
+ .accesskey = в
+
+certmgr-restore =
+ .label = Импортировать…
+ .accesskey = м
+
+certmgr-add-exception =
+ .label = Добавить исключение…
+ .accesskey = ю
+
+exception-mgr =
+ .title = Добавить исключение безопасности
+
+exception-mgr-extra-button =
+ .label = Подтвердить исключение безопасности
+ .accesskey = т
+
+exception-mgr-supplemental-warning = Серьёзные банки, магазины и другие публичные сайты не будут просить вас делать это.
+
+exception-mgr-cert-location-url =
+ .value = Адрес:
+
+exception-mgr-cert-location-download =
+ .label = Получить сертификат
+ .accesskey = е
+
+exception-mgr-cert-status-view-cert =
+ .label = Просмотреть…
+ .accesskey = с
+
+exception-mgr-permanent =
+ .label = Постоянно хранить это исключение
+ .accesskey = т
+
+pk11-bad-password = Введённый пароль неверен.
+pkcs12-decode-err = Ошибка расшифровки файла. Или это не файл PKCS#12, или файл повреждён, или введённый вами пароль неверен.
+pkcs12-unknown-err-restore = Не удалось восстановить файл PKCS#12 по неизвестным причинам.
+pkcs12-unknown-err-backup = Не удалось создать резервную копию файла PKCS#12 по неизвестным причинам.
+pkcs12-unknown-err = Операция PKCS #12 завершилась неудачей по неизвестным причинам.
+pkcs12-info-no-smartcard-backup = Не удалось создать резервную копию сертификатов, находящихся в аппаратном устройстве защиты, таком как смарт-карта.
+pkcs12-dup-data = Сертификат и закрытый ключ уже существуют в устройстве защиты.
+
+## PKCS#12 file dialogs
+
+choose-p12-backup-file-dialog = Имя файла резервной копии
+file-browse-pkcs12-spec = Файлы PKCS12
+choose-p12-restore-file-dialog = Импортируемый файл сертификата
+
+## Import certificate(s) file dialog
+
+file-browse-certificate-spec = Файлы сертификатов
+import-ca-certs-prompt = Выберите для импорта файл, содержащий сертификат центра
+import-email-cert-prompt = Выберите для импорта файл, содержащий сертификат электронной почты
+
+## For editing certificates trust
+
+# Variables:
+# $certName: the name of certificate
+edit-trust-ca = Сертификат «{ $certName }» представляет центр сертификации.
+
+## For Deleting Certificates
+
+delete-user-cert-title =
+ .title = Удаление собственных сертификатов
+delete-user-cert-confirm = Вы уверены, что хотите удалить эти сертификаты?
+delete-user-cert-impact = После удаления одного из собственных сертификатов, вы больше не сможете использовать его для своей идентификации.
+
+
+delete-ssl-override-title =
+ .title = Удаление исключения для сертификата сервера
+delete-ssl-override-confirm = Вы уверены, что хотите удалить исключение для данного сервера?
+delete-ssl-override-impact = Если вы удалите исключение для сервера, вы восстановите для данного сервера обычную процедуру проверки безопасности и потребуете от него использования действительного сертификата.
+
+delete-ca-cert-title =
+ .title = Удаление или объявление недоверия сертификатам центров сертификации
+delete-ca-cert-confirm = Вы хотите удалить эти сертификаты центра сертификации. Если в списке этих сертификатов имеются встроенные сертификаты, то они будут объявлены недоверенными, что имеет тот же эффект. Вы уверены, что хотите удалить их или объявить их недоверенными?
+delete-ca-cert-impact = Если вы удалите или объявите недоверенным сертификат центра сертификации, это приложение больше не будет доверять ни одному из сертификатов, выданных этим центром сертификации.
+
+
+delete-email-cert-title =
+ .title = Удаление сертификатов электронной почты
+delete-email-cert-confirm = Вы уверены, что хотите удалить сертификаты электронной почты этих пользователей?
+delete-email-cert-impact = Если вы удалите сертификат электронной почты данного пользователя, то больше не сможете отправлять ему почтовые сообщения в зашифрованном виде.
+
+# Used for semi-uniquely representing a cert.
+#
+# Variables:
+# $serialNumber : the serial number of the cert in AA:BB:CC hex format.
+cert-with-serial =
+ .value = Сертификат с серийным номером: { $serialNumber }
+
+# Used to indicate that the user chose not to send a client authentication certificate to a server that requested one in a TLS handshake.
+send-no-client-certificate = Не отправлять сертификат клиента
+
+# Used when no cert is stored for an override
+no-cert-stored-for-override = (не сохранён)
+
+# When a certificate is unavailable (for example, it has been deleted or the token it exists on has been removed).
+certificate-not-available = (Недоступен)
+
+## Used to show whether an override is temporary or permanent
+
+permanent-override = Постоянно
+temporary-override = Временно
+
+## Add Security Exception dialog
+
+add-exception-branded-warning = Вы собираетесь принудительно изменить идентификацию сайта в { -brand-short-name }.
+add-exception-invalid-header = Этот сайт пытается идентифицировать себя, используя некорректную информацию.
+add-exception-domain-mismatch-short = Неверный сайт
+add-exception-domain-mismatch-long = Сертификат принадлежит другому сайту, что может значить, что кто-то пытается подменить этот сайт другим.
+add-exception-expired-short = Устаревшая информация
+add-exception-expired-long = Сертификат в данное время недействителен. Он мог быть украден или потерян, и мог быть использовать кем-то, чтобы подменить этот сайт другим.
+add-exception-unverified-or-bad-signature-short = Неизвестный центр сертификации
+add-exception-unverified-or-bad-signature-long = К сертификату нет доверия, так как он не был верифицирован в качестве изданного доверенным центром сертификации с использованием безопасной подписи.
+add-exception-valid-short = Действительный сертификат
+add-exception-valid-long = Идентификация этого сайта действительна и проверена. Нет необходимости добавлять исключение.
+add-exception-checking-short = Идёт проверка информации
+add-exception-checking-long = Попытка идентификации этого сайта…
+add-exception-no-cert-short = Нет доступной информации
+add-exception-no-cert-long = Не удалось получить информацию о подлинном статусе этого сайта.
+
+## Certificate export "Save as" and error dialogs
+
+save-cert-as = Сохранить сертификат в файл
+cert-format-base64 = Сертификат X.509 в формате PEM
+cert-format-base64-chain = Цепочка сертификатов X.509 в формате PEM
+cert-format-der = Сертификат X.509 в формате DER
+cert-format-pkcs7 = Сертификат X.509 в формате PKCS#7
+cert-format-pkcs7-chain = Цепочка сертификатов X.509 в формате PKCS#7
+write-file-failure = Ошибка файла
diff --git a/thunderbird-l10n/ru/localization/ru/security/certificates/deviceManager.ftl b/thunderbird-l10n/ru/localization/ru/security/certificates/deviceManager.ftl
new file mode 100644
index 0000000000..a01f751023
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/security/certificates/deviceManager.ftl
@@ -0,0 +1,133 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Strings used for device manager
+
+devmgr-window =
+ .title = Управление устройствами
+ .style = min-width: 67em; min-height: 32em;
+
+devmgr-devlist =
+ .label = Модули и устройства защиты
+
+devmgr-header-details =
+ .label = Подробности
+
+devmgr-header-value =
+ .label = Значение
+
+devmgr-button-login =
+ .label = Начать сеанс
+ .accesskey = ч
+
+devmgr-button-logout =
+ .label = Закончить сеанс
+ .accesskey = о
+
+devmgr-button-changepw =
+ .label = Сменить пароль
+ .accesskey = а
+
+devmgr-button-load =
+ .label = Загрузить
+ .accesskey = г
+
+devmgr-button-unload =
+ .label = Выгрузить
+ .accesskey = ы
+
+devmgr-button-enable-fips =
+ .label = Использовать FIPS
+ .accesskey = F
+
+devmgr-button-disable-fips =
+ .label = Отключить FIPS
+ .accesskey = F
+
+## Strings used for load device
+
+load-device =
+ .title = Загрузить драйвер устройства PKCS#11
+
+load-device-info = Введите информацию о модуле, который вы хотите добавить.
+
+load-device-modname =
+ .value = Имя модуля
+ .accesskey = м
+
+load-device-modname-default =
+ .value = Новый модуль PKCS#11
+
+load-device-filename =
+ .value = Имя файла модуля
+ .accesskey = ф
+
+load-device-browse =
+ .label = Обзор…
+ .accesskey = б
+
+## Token Manager
+
+devinfo-status =
+ .label = Состояние
+
+devinfo-status-disabled =
+ .label = Отключено
+
+devinfo-status-not-present =
+ .label = Не присутствует
+
+devinfo-status-uninitialized =
+ .label = Не инициализировано
+
+devinfo-status-not-logged-in =
+ .label = Не зарегистрирован в системе
+
+devinfo-status-logged-in =
+ .label = Зарегистрирован в системе
+
+devinfo-status-ready =
+ .label = Готово
+
+devinfo-desc =
+ .label = Описание
+
+devinfo-man-id =
+ .label = Изготовитель
+
+devinfo-hwversion =
+ .label = Версия HW
+devinfo-fwversion =
+ .label = Версия FW
+
+devinfo-modname =
+ .label = Модуль
+
+devinfo-modpath =
+ .label = Путь
+
+login-failed = Ошибка регистрации в системе
+
+devinfo-label =
+ .label = Метка
+
+devinfo-serialnum =
+ .label = Серийный номер
+
+fips-nonempty-primary-password-required = Для работы в режиме FIPS необходим основной пароль для каждого устройства защиты. Установите этот пароль перед переходом в режим FIPS.
+unable-to-toggle-fips = Не удалось сменить режим соответствия FIPS для устройства защиты. Мы рекомендуем вам закрыть и перезапустить это приложение.
+load-pk11-module-file-picker-title = Выберите для загрузки драйвер устройства PKCS#11
+
+# Load Module Dialog
+load-module-help-empty-module-name =
+ .value = Имя модуля не может быть пустым.
+
+# Do not translate 'Root Certs'
+load-module-help-root-certs-module-name =
+ .value = ‘Root Certs‘ зарезервировано и не может использоваться как имя модуля.
+
+add-module-failure = Не удалось добавить модуль
+del-module-warning = Вы действительно хотите удалить этот модуль защиты?
+del-module-error = Не удалось удалить модуль
diff --git a/thunderbird-l10n/ru/localization/ru/security/pippki/pippki.ftl b/thunderbird-l10n/ru/localization/ru/security/pippki/pippki.ftl
new file mode 100644
index 0000000000..83dd1e5d21
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/security/pippki/pippki.ftl
@@ -0,0 +1,106 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+password-quality-meter = Качество пароля
+
+## Change Password dialog
+
+change-device-password-window =
+ .title = Сменить пароль
+# Variables:
+# $tokenName (String) - Security device of the change password dialog
+change-password-token = Устройство защиты: { $tokenName }
+change-password-old = Текущий пароль:
+change-password-new = Новый пароль:
+change-password-reenter = Новый пароль (повторно):
+pippki-failed-pw-change = Не удалось изменить пароль.
+pippki-incorrect-pw = Вы ввели некорректный текущий пароль. Попробуйте снова.
+pippki-pw-change-ok = Пароль успешно изменён.
+pippki-pw-empty-warning = Ваши сохранённые пароли и закрытые ключи не будут защищены.
+pippki-pw-erased-ok = Вы удалили свой пароль. { pippki-pw-empty-warning }
+pippki-pw-not-wanted = Предупреждение! Вы решили не использовать пароль. { pippki-pw-empty-warning }
+pippki-pw-change2empty-in-fips-mode = Вы работаете в режиме соответствия FIPS. При работе в этом режиме необходимо установить пароль.
+
+## Reset Primary Password dialog
+
+reset-primary-password-window2 =
+ .title = Сбросить основной пароль
+ .style = min-width: 40em
+reset-password-button-label =
+ .label = Сбросить
+reset-primary-password-text = При сбросе основного пароля все сохранённые пароли для веб-сайтов и электронной почты, личные сертификаты и закрытые ключи будут утеряны. Вы действительно хотите сбросить свой основной пароль?
+pippki-reset-password-confirmation-title = Сброс основного пароля
+pippki-reset-password-confirmation-message = Ваш основной пароль был сброшен.
+
+## Downloading cert dialog
+
+download-cert-window2 =
+ .title = Загрузка сертификата
+ .style = min-width: 46em
+download-cert-message = Вам предлагают доверять новому центру сертификации (CA).
+download-cert-trust-ssl =
+ .label = Доверять при идентификации веб-сайтов.
+download-cert-trust-email =
+ .label = Доверять при идентификации пользователей электронной почты.
+download-cert-message-desc = Перед тем, как определиться с доверием к этому центру, рекомендуется проверить его сертификат, политику и процедуры (если возможно).
+download-cert-view-cert =
+ .label = Просмотреть
+download-cert-view-text = Проверить сертификат центра
+
+## Client Authorization Ask dialog
+
+
+## Client Authentication Ask dialog
+
+client-auth-window =
+ .title = Запрос идентификации пользователя
+client-auth-site-description = Сайту необходимо определить, с каким сертификатом вас ассоциировать:
+client-auth-choose-cert = Выберите сертификат для идентификации:
+client-auth-send-no-certificate =
+ .label = Не отправлять сертификат
+# Variables:
+# $hostname (String) - The domain name of the site requesting the client authentication certificate
+client-auth-site-identification = «{ $hostname }» запросил у вас идентификацию с помощью сертификата:
+client-auth-cert-details = Информация о выбранном сертификате:
+# Variables:
+# $issuedTo (String) - The subject common name of the currently-selected client authentication certificate
+client-auth-cert-details-issued-to = Кому выдан: { $issuedTo }
+# Variables:
+# $serialNumber (String) - The serial number of the certificate (hexadecimal of the form "AA:BB:...")
+client-auth-cert-details-serial-number = Серийный номер: { $serialNumber }
+# Variables:
+# $notBefore (String) - The date before which the certificate is not valid (e.g. Apr 21, 2023, 1:47:53 PM UTC)
+# $notAfter (String) - The date after which the certificate is not valid
+client-auth-cert-details-validity-period = Действителен с { $notBefore } по { $notAfter }
+# Variables:
+# $keyUsages (String) - A list of already-localized key usages for which the certificate may be used
+client-auth-cert-details-key-usages = Использования ключа: { $keyUsages }
+# Variables:
+# $emailAddresses (String) - A list of email addresses present in the certificate
+client-auth-cert-details-email-addresses = Адреса эл. почты: { $emailAddresses }
+# Variables:
+# $issuedBy (String) - The issuer common name of the certificate
+client-auth-cert-details-issued-by = Кем выдан: { $issuedBy }
+# Variables:
+# $storedOn (String) - The name of the token holding the certificate (for example, "OS Client Cert Token (Modern)")
+client-auth-cert-details-stored-on = Место хранения: { $storedOn }
+client-auth-cert-remember-box =
+ .label = Запомнить это решение
+
+## Set password (p12) dialog
+
+set-password-window =
+ .title = Выбор пароля резервной копии сертификата
+set-password-message = Введённый пароль служит для защиты резервной копии сертификата. Для продолжения резервного копирования требуется установка пароля.
+set-password-backup-pw =
+ .value = Пароль резервной копии:
+set-password-repeat-backup-pw =
+ .value = Пароль резервной копии (повторно):
+set-password-reminder = Внимание: если вы забудете пароль резервной копии сертификата, то потом не сможете восстановить из неё сертификат. Эту информацию следует хранить в безопасном месте.
+
+## Protected authentication alert
+
+# Variables:
+# $tokenName (String) - The name of the token to authenticate to (for example, "OS Client Cert Token (Modern)")
+protected-auth-alert = Пожалуйста, авторизуйтесь с токеном «{ $tokenName }». Как это сделать, зависит от токена (например, с помощью считывателя отпечатков пальцев или ввода кода с клавиатуры).
diff --git a/thunderbird-l10n/ru/localization/ru/services/accounts.ftl b/thunderbird-l10n/ru/localization/ru/services/accounts.ftl
new file mode 100644
index 0000000000..bc52dd3e7a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/services/accounts.ftl
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Variables:
+# $user (String): the user name (e.g. "Ed")
+# $system (String): the operating system (e.g. "Android")
+account-client-name = { $user } - { -brand-short-name } на { $system }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutAbout.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutAbout.ftl
new file mode 100644
index 0000000000..ef0cb74ad6
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutAbout.ftl
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+about-about-title = О страницах about:
+about-about-note =
+ В этом списке для вашего удобства перечислены страницы «about».<br/>
+ Некоторые из них могут поставить вас в тупик. Некоторые используются исключительно в целях диагностики.<br/>
+ А некоторые пропущены, так как для своей работы требуют параметров запроса.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutAddons.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutAddons.ftl
new file mode 100644
index 0000000000..025118623a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutAddons.ftl
@@ -0,0 +1,500 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+addons-page-title = Управление дополнениями
+search-header =
+ .placeholder = Поиск на addons.mozilla.org
+ .searchbuttonlabel = Поиск
+
+## Variables
+## $domain - Domain name where add-ons are available (e.g. addons.mozilla.org)
+
+list-empty-get-extensions-message = Загрузите расширения и темы на <a data-l10n-name="get-extensions">{ $domain }</a>
+list-empty-get-dictionaries-message = Загрузите словари на <a data-l10n-name="get-extensions">{ $domain }</a>
+list-empty-get-language-packs-message = Загрузите языковые пакеты на <a data-l10n-name="get-extensions">{ $domain }</a>
+
+##
+
+list-empty-installed =
+ .value = У вас не установлено ни одного дополнения данного типа
+list-empty-available-updates =
+ .value = Обновлений не найдено
+list-empty-recent-updates =
+ .value = В последнее время вы не обновляли никаких дополнений
+list-empty-find-updates =
+ .label = Проверить наличие обновлений
+list-empty-button =
+ .label = Узнать больше о дополнениях
+help-button = Поддержка дополнений
+sidebar-help-button-title =
+ .title = Поддержка дополнений
+addons-settings-button = Настройки { -brand-short-name }
+sidebar-settings-button-title =
+ .title = Настройки { -brand-short-name }
+show-unsigned-extensions-button =
+ .label = Некоторые расширения не могут быть проверены
+show-all-extensions-button =
+ .label = Показать все расширения
+detail-version =
+ .label = Версия
+detail-last-updated =
+ .label = Последнее обновление
+addon-detail-description-expand = Показать больше
+addon-detail-description-collapse = Показать меньше
+detail-contributions-description = Разработчик этого дополнения просит вас помочь поддержать его дальнейшее развитие, внеся небольшое пожертвование.
+detail-contributions-button = Поддержать
+ .title = Внести вклад в разработку этого дополнения
+ .accesskey = ж
+detail-update-type =
+ .value = Автоматическое обновление
+detail-update-default =
+ .label = По умолчанию
+ .tooltiptext = Автоматически устанавливать обновления только если это настройка по умолчанию
+detail-update-automatic =
+ .label = Включено
+ .tooltiptext = Устанавливать обновления автоматически
+detail-update-manual =
+ .label = Отключено
+ .tooltiptext = Не устанавливать обновления автоматически
+# Used as a description for the option to allow or block an add-on in private windows.
+detail-private-browsing-label = Запуск в приватных окнах
+# Some add-ons may elect to not run in private windows by setting incognito: not_allowed in the manifest. This
+# cannot be overridden by the user.
+detail-private-disallowed-label = Не разрешено в приватных окнах
+detail-private-disallowed-description2 = Это расширение не работает в приватном режиме. <a data-l10n-name="learn-more">Подробнее</a>
+# Some special add-ons are privileged, run in private windows automatically, and this permission can't be revoked
+detail-private-required-label = Требует доступа к приватным окнам
+detail-private-required-description2 = Это расширение имеет доступ к вашей активности в Интернете в приватном режиме. <a data-l10n-name="learn-more">Подробнее</a>
+detail-private-browsing-on =
+ .label = Разрешить
+ .tooltiptext = Включать в приватном режиме
+detail-private-browsing-off =
+ .label = Не разрешать
+ .tooltiptext = Отключать в приватном режиме
+detail-home =
+ .label = Домашняя страница
+detail-home-value =
+ .value = { detail-home.label }
+detail-repository =
+ .label = Профиль дополнения
+detail-repository-value =
+ .value = { detail-repository.label }
+detail-check-for-updates =
+ .label = Проверить наличие обновлений
+ .accesskey = в
+ .tooltiptext = Проверить наличие обновлений для этого дополнения
+detail-show-preferences =
+ .label =
+ { PLATFORM() ->
+ [windows] Настройки
+ *[other] Настройки
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] с
+ *[other] с
+ }
+ .tooltiptext =
+ { PLATFORM() ->
+ [windows] Изменить настройки этого дополнения
+ *[other] Изменить настройки этого дополнения
+ }
+detail-rating =
+ .value = Рейтинг
+addon-restart-now =
+ .label = Перезапустить сейчас
+disabled-unsigned-heading =
+ .value = Некоторые дополнения были отключены
+disabled-unsigned-description = Работа следующих дополнений в { -brand-short-name } не была проверена. Вы можете <label data-l10n-name="find-addons">найти им замену</label> или попросить разработчика произвести их проверку.
+disabled-unsigned-learn-more = Узнайте больше о наших усилиях по обеспечению вашей безопасности в Интернете.
+disabled-unsigned-devinfo = Разработчики, заинтересованные в проверке своих дополнений, могут прочесть наше <label data-l10n-name="learn-more">руководство</label>.
+plugin-deprecation-description = Что-то отсутствует? { -brand-short-name } больше не поддерживает некоторые плагины. <label data-l10n-name="learn-more">Подробнее.</label>
+legacy-warning-show-legacy = Показать устаревшие расширения
+legacy-extensions =
+ .value = Устаревшие расширения
+legacy-extensions-description = Эти расширения не соответствуют текущим стандартам { -brand-short-name }, поэтому они были отключены. <label data-l10n-name="legacy-learn-more">Узнайте об изменениях в дополнениях</label>
+private-browsing-description2 =
+ { -brand-short-name } изменяет работу расширений в приватном режиме. Любые новые расширения, которые вы добавите в
+ { -brand-short-name }, не будут запускаться по умолчанию в приватных окнах. Если вы не разрешите этого в настройках,
+ расширение не будет работать в приватном режиме и не будет иметь доступа к вашей активности в Интернете.
+ Мы внесли это изменение, чтобы сделать ваш приватный режим по-настоящему приватным.
+ <label data-l10n-name="private-browsing-learn-more">Узнайте, как управлять настройками расширений.</label>
+addon-category-discover = Рекомендации
+addon-category-discover-title =
+ .title = Рекомендации
+addon-category-extension = Расширения
+addon-category-extension-title =
+ .title = Расширения
+addon-category-theme = Темы
+addon-category-theme-title =
+ .title = Темы
+addon-category-plugin = Плагины
+addon-category-plugin-title =
+ .title = Плагины
+addon-category-dictionary = Словари
+addon-category-dictionary-title =
+ .title = Словари
+addon-category-locale = Языки
+addon-category-locale-title =
+ .title = Языки
+addon-category-available-updates = Доступные обновления
+addon-category-available-updates-title =
+ .title = Доступные обновления
+addon-category-recent-updates = Недавние обновления
+addon-category-recent-updates-title =
+ .title = Недавние обновления
+addon-category-sitepermission = Разрешения для сайтов
+addon-category-sitepermission-title =
+ .title = Разрешения для сайтов
+# String displayed in about:addons in the Site Permissions section
+# Variables:
+# $host (string) - DNS host name for which the webextension enables permissions
+addon-sitepermission-host = Разрешения сайта для { $host }
+
+## These are global warnings
+
+extensions-warning-safe-mode = В безопасном режиме все дополнения отключены.
+extensions-warning-check-compatibility = Проверка совместимости дополнений отключена. У вас могут иметься несовместимые дополнения.
+extensions-warning-safe-mode2 =
+ .message = В безопасном режиме все дополнения отключены.
+extensions-warning-check-compatibility2 =
+ .message = Проверка совместимости дополнений отключена. У вас могут иметься несовместимые дополнения.
+extensions-warning-check-compatibility-button = Включить
+ .title = Включить проверку совместимости дополнений
+extensions-warning-update-security = Проверка безопасного обновления дополнений отключена. Обновления могут поставить вас под угрозу.
+extensions-warning-update-security2 =
+ .message = Проверка безопасного обновления дополнений отключена. Обновления могут поставить вас под угрозу.
+extensions-warning-update-security-button = Включить
+ .title = Включить проверку безопасного обновления дополнений
+extensions-warning-imported-addons2 =
+ .message = Пожалуйста, завершите установку расширений, которые были импортированы в { -brand-short-name }.
+extensions-warning-imported-addons-button = Установка расширений
+
+## Strings connected to add-on updates
+
+addon-updates-check-for-updates = Проверить наличие обновлений
+ .accesskey = о
+addon-updates-view-updates = Показать недавние обновления
+ .accesskey = к
+
+# This menu item is a checkbox that toggles the default global behavior for
+# add-on update checking.
+
+addon-updates-update-addons-automatically = Автоматически обновлять дополнения
+ .accesskey = в
+
+## Specific add-ons can have custom update checking behaviors ("Manually",
+## "Automatically", "Use default global behavior"). These menu items reset the
+## update checking behavior for all add-ons to the default global behavior
+## (which itself is either "Automatically" or "Manually", controlled by the
+## extensions-updates-update-addons-automatically.label menu item).
+
+addon-updates-reset-updates-to-automatic = Установить для всех дополнений режим автоматического обновления
+ .accesskey = с
+addon-updates-reset-updates-to-manual = Установить для всех дополнений режим ручного обновления
+ .accesskey = с
+
+## Status messages displayed when updating add-ons
+
+addon-updates-updating = Обновление дополнений
+addon-updates-installed = Ваши дополнения были обновлены.
+addon-updates-none-found = Обновлений не найдено
+addon-updates-manual-updates-found = Показать доступные обновления
+
+## Add-on install/debug strings for page options menu
+
+addon-install-from-file = Установить дополнение из файла…
+ .accesskey = а
+addon-install-from-file-dialog-title = Выберите дополнение для установки
+addon-install-from-file-filter-name = Дополнения
+addon-open-about-debugging = Отладка дополнений
+ .accesskey = л
+
+## Extension shortcut management
+
+# This is displayed in the page options menu
+addon-manage-extensions-shortcuts = Управление горячими клавишами расширений
+ .accesskey = п
+shortcuts-no-addons = У вас не включено ни одного расширения.
+shortcuts-no-commands = У следующих расширений нет горячих клавиш:
+shortcuts-input =
+ .placeholder = Введите горячую клавишу
+shortcuts-browserAction2 = Активировать кнопку панели инструментов
+shortcuts-pageAction = Активировать действие на странице
+shortcuts-sidebarAction = Показать/скрыть боковую панель
+shortcuts-modifier-mac = Добавьте Ctrl, Alt или ⌘
+shortcuts-modifier-other = Добавьте Ctrl или Alt
+shortcuts-invalid = Неверная комбинация
+shortcuts-letter = Введите букву
+shortcuts-system = Нельзя переопределить горячую клавишу { -brand-short-name }
+# String displayed in warning label when there is a duplicate shortcut
+shortcuts-duplicate = Дублирующееся сочетание клавиш
+# String displayed when a keyboard shortcut is already assigned to more than one add-on
+# Variables:
+# $shortcut (string) - Shortcut string for the add-on
+shortcuts-duplicate-warning-message = { $shortcut } используется более одного раза. Дублирующиеся сочетания клавиш могут вызвать неожиданное поведение.
+# String displayed when a keyboard shortcut is already assigned to more than one add-on
+# Variables:
+# $shortcut (string) - Shortcut string for the add-on
+shortcuts-duplicate-warning-message2 =
+ .message = { $shortcut } используется более одного раза. Дублирующиеся сочетания клавиш могут вызвать неожиданное поведение.
+# String displayed when a keyboard shortcut is already used by another add-on
+# Variables:
+# $addon (string) - Name of the add-on
+shortcuts-exists = Уже используется { $addon }
+# Variables:
+# $numberToShow (number) - Number of other elements available to show
+shortcuts-card-expand-button =
+ { $numberToShow ->
+ [one] Показать ещё { $numberToShow }
+ [few] Показать ещё { $numberToShow }
+ *[many] Показать ещё { $numberToShow }
+ }
+shortcuts-card-collapse-button = Показать меньше
+header-back-button =
+ .title = Вернуться назад
+
+## Recommended add-ons page
+
+# Explanatory introduction to the list of recommended add-ons. The action word
+# ("recommends") in the final sentence is a link to external documentation.
+discopane-intro =
+ Расширения и темы — это как приложения для вашего браузера, они позволяют вам
+ защищать пароли, загружать видео, находить скидки, блокировать раздражающую рекламу, изменять
+ внешний вид браузера и многое другое. Эти небольшие программные продукты
+ обычно разрабатываются сторонними разработчиками. Вот подборка расширений и тем, <a data-l10n-name="learn-more-trigger">рекомендуемых</a> { -brand-product-name } за свою исключительную
+ безопасность, производительность и функциональность.
+# Notice to make user aware that the recommendations are personalized.
+discopane-notice-recommendations =
+ Некоторые из этих рекомендаций персонализированы. Они основаны на других
+ установленных вами расширениях, настройках профиля и статистике использования.
+# Notice to make user aware that the recommendations are personalized.
+discopane-notice-recommendations2 =
+ .message =
+ Некоторые из этих рекомендаций персонализированы. Они основаны на других
+ установленных вами расширениях, настройках профиля и статистике использования.
+discopane-notice-learn-more = Подробнее
+privacy-policy = Политика приватности
+# Refers to the author of an add-on, shown below the name of the add-on.
+# Variables:
+# $author (string) - The name of the add-on developer.
+created-by-author = от <a data-l10n-name="author">{ $author }</a>
+# Shows the number of daily users of the add-on.
+# Variables:
+# $dailyUsers (number) - The number of daily users.
+user-count = Пользователей: { $dailyUsers }
+install-extension-button = Добавить в { -brand-product-name }
+install-theme-button = Установить тему
+# The label of the button that appears after installing an add-on. Upon click,
+# the detailed add-on view is opened, from where the add-on can be managed.
+manage-addon-button = Управление
+find-more-addons = Найти другие дополнения
+find-more-themes = Найти другие темы
+# This is a label for the button to open the "more options" menu, it is only
+# used for screen readers.
+addon-options-button =
+ .aria-label = Другие настройки
+
+## Add-on actions
+
+report-addon-button = Пожаловаться
+remove-addon-button = Удалить
+# The link will always be shown after the other text.
+remove-addon-disabled-button = Нельзя удалить <a data-l10n-name="link">Почему?</a>
+disable-addon-button = Отключить
+enable-addon-button = Включить
+# This is used for the toggle on the extension card, it's a checkbox and this
+# is always its label.
+extension-enable-addon-button-label =
+ .aria-label = Включить
+preferences-addon-button =
+ { PLATFORM() ->
+ [windows] Настройки
+ *[other] Настройки
+ }
+details-addon-button = Подробности
+release-notes-addon-button = Примечания к выпуску
+permissions-addon-button = Разрешения
+extension-enabled-heading = Включены
+extension-disabled-heading = Отключены
+theme-enabled-heading = Включена
+theme-disabled-heading2 = Сохранённые темы
+plugin-enabled-heading = Включены
+plugin-disabled-heading = Отключены
+dictionary-enabled-heading = Включены
+dictionary-disabled-heading = Отключены
+locale-enabled-heading = Включены
+locale-disabled-heading = Отключены
+sitepermission-enabled-heading = Включены
+sitepermission-disabled-heading = Отключены
+always-activate-button = Всегда включать
+never-activate-button = Никогда не включать
+addon-detail-author-label = Автор
+addon-detail-version-label = Версия
+addon-detail-last-updated-label = Последнее обновление
+addon-detail-homepage-label = Домашняя страница
+addon-detail-rating-label = Рейтинг
+# Message for add-ons with a staged pending update.
+install-postponed-message = Это расширение будет обновлено после перезапуска { -brand-short-name }.
+# Message for add-ons with a staged pending update.
+install-postponed-message2 =
+ .message = Это расширение будет обновлено после перезапуска { -brand-short-name }.
+install-postponed-button = Обновить сейчас
+# The average rating that the add-on has received.
+# Variables:
+# $rating (number) - A number between 0 and 5. The translation should show at most one digit after the comma.
+five-star-rating =
+ .title = Оценено на { NUMBER($rating, maximumFractionDigits: 1) } из 5
+# This string is used to show that an add-on is disabled.
+# Variables:
+# $name (string) - The name of the add-on
+addon-name-disabled = { $name } (отключено)
+# The number of reviews that an add-on has received on AMO.
+# Variables:
+# $numberOfReviews (number) - The number of reviews received
+addon-detail-reviews-link =
+ { $numberOfReviews ->
+ [one] { $numberOfReviews } отзыв
+ [few] { $numberOfReviews } отзыва
+ *[many] { $numberOfReviews } отзывов
+ }
+
+## Pending uninstall message bar
+
+# Variables:
+# $addon (string) - Name of the add-on
+pending-uninstall-description = <span data-l10n-name="addon-name">{ $addon }</span> было удалено.
+# Variables:
+# $addon (string) - Name of the add-on
+pending-uninstall-description2 =
+ .message = { $addon } было удалено.
+pending-uninstall-undo-button = Отмена
+addon-detail-updates-label = Разрешить автообновления
+addon-detail-updates-radio-default = По умолчанию
+addon-detail-updates-radio-on = Включено
+addon-detail-updates-radio-off = Отключено
+addon-detail-update-check-label = Проверить наличие обновлений
+install-update-button = Обновить
+# aria-label associated to the updates row to help screen readers to announce the group
+# of input controls being entered.
+addon-detail-group-label-updates =
+ .aria-label = { addon-detail-updates-label }
+# This is the tooltip text for the private browsing badge in about:addons. The
+# badge is the private browsing icon included next to the extension's name.
+addon-badge-private-browsing-allowed2 =
+ .title = Разрешено в приватных окнах
+ .aria-label = { addon-badge-private-browsing-allowed2.title }
+addon-detail-private-browsing-help = Когда разрешено, расширение будет иметь доступ к вашей активности в Интернете в приватном режиме. <a data-l10n-name="learn-more">Подробнее</a>
+addon-detail-private-browsing-allow = Разрешить
+addon-detail-private-browsing-disallow = Не разрешать
+# aria-label associated to the private browsing row to help screen readers to announce the group
+# of input controls being entered.
+addon-detail-group-label-private-browsing =
+ .aria-label = { detail-private-browsing-label }
+
+## "sites with restrictions" (internally called "quarantined") are special domains
+## where add-ons are normally blocked for security reasons.
+
+# Used as a description for the option to allow or block an add-on on quarantined domains.
+addon-detail-quarantined-domains-label = Запуск на сайтах с ограничениями
+# Used as help text part of the quarantined domains UI controls row.
+addon-detail-quarantined-domains-help = Если это разрешено, расширение будет иметь доступ к сайтам, ограниченным { -vendor-short-name }. Разрешайте, только если вы доверяете этому расширению.
+# Used as label and tooltip text on the radio inputs associated to the quarantined domains UI controls.
+addon-detail-quarantined-domains-allow = Разрешить
+addon-detail-quarantined-domains-disallow = Не разрешать
+# aria-label associated to the quarantined domains exempt row to help screen readers to announce the group.
+addon-detail-group-label-quarantined-domains =
+ .aria-label = { addon-detail-quarantined-domains-label }
+
+## This is the tooltip text for the recommended badges for an extension in about:addons. The
+## badge is a small icon displayed next to an extension when it is recommended on AMO.
+
+addon-badge-recommended2 =
+ .title = { -brand-product-name } рекомендует только те расширения, которые соответствуют нашим стандартам по безопасности и производительности
+ .aria-label = { addon-badge-recommended2.title }
+# We hard code "Mozilla" in the string below because the extensions are built
+# by Mozilla and we don't want forks to display "by Fork".
+addon-badge-line3 =
+ .title = Официальное расширение, созданное Mozilla. Соответствует стандартам безопасности и производительности.
+ .aria-label = { addon-badge-line3.title }
+addon-badge-verified2 =
+ .title = Это расширение было проверено на соответствие нашим стандартам безопасности и производительности
+ .aria-label = { addon-badge-verified2.title }
+
+##
+
+available-updates-heading = Доступные обновления
+recent-updates-heading = Недавно обновлённые
+release-notes-loading = Загрузка…
+release-notes-error = При загрузке примечаний к выпуску возникли проблемы.
+addon-permissions-empty = Это расширение не требует дополнительных разрешений
+addon-permissions-required = Необходимые разрешения для основных функций:
+addon-permissions-optional = Необязательные разрешения для дополнительных функций:
+addon-permissions-learnmore = Узнать больше о разрешениях
+recommended-extensions-heading = Рекомендуемые расширения
+recommended-themes-heading = Рекомендуемые темы
+# Variables:
+# $hostname (string) - Host where the permissions are granted
+addon-sitepermissions-required = Предоставляет следующие возможности <span data-l10n-name="hostname">{ $hostname }</span>:
+# A recommendation for the Firefox Color theme shown at the bottom of the theme
+# list view. The "Firefox Color" name itself should not be translated.
+recommended-theme-1 = Чувствуете прилив вдохновения? <a data-l10n-name="link">Создайте свою тему с помощью Firefox Color.</a>
+
+## Page headings
+
+extension-heading = Управление расширениями
+theme-heading = Управление темами
+plugin-heading = Управление плагинами
+dictionary-heading = Управление моими словарями
+locale-heading = Управление моими языками
+updates-heading = Управление моими обновлениями
+sitepermission-heading = Управление моими разрешениями для сайтов
+discover-heading = Сделайте { -brand-short-name } своим
+shortcuts-heading = Управление горячими клавишами расширений
+default-heading-search-label = Найти больше дополнений
+addons-heading-search-input =
+ .placeholder = Поиск на addons.mozilla.org
+addon-page-options-button =
+ .title = Инструменты для всех дополнений
+
+## Detail notifications
+## Variables:
+## $name (string) - Name of the add-on.
+
+# Variables:
+# $version (string) - Application version.
+details-notification-incompatible = { $name } несовместимо с { -brand-short-name } { $version }.
+# Variables:
+# $version (string) - Application version.
+details-notification-incompatible2 =
+ .message = { $name } несовместимо с { -brand-short-name } { $version }.
+details-notification-incompatible-link = Больше информации
+details-notification-unsigned-and-disabled = Работа { $name } в { -brand-short-name } не была проверена, поэтому оно было отключено.
+details-notification-unsigned-and-disabled2 =
+ .message = Работа { $name } в { -brand-short-name } не была проверена, поэтому оно было отключено.
+details-notification-unsigned-and-disabled-link = Подробная информация
+details-notification-unsigned = Работа { $name } в { -brand-short-name } не была проверена. Действуйте с осторожностью.
+details-notification-unsigned2 =
+ .message = Работа { $name } в { -brand-short-name } не была проверена. Действуйте с осторожностью.
+details-notification-unsigned-link = Подробная информация
+details-notification-blocked = { $name } было отключено из-за проблем со стабильностью или безопасностью.
+details-notification-blocked2 =
+ .message = { $name } было отключено из-за проблем со стабильностью или безопасностью.
+details-notification-blocked-link = Подробная информация
+details-notification-softblocked = { $name } вызывает проблемы со стабильностью или безопасностью.
+details-notification-softblocked2 =
+ .message = { $name } вызывает проблемы со стабильностью или безопасностью.
+details-notification-softblocked-link = Подробная информация
+details-notification-gmp-pending = { $name } будет скоро установлено.
+details-notification-gmp-pending2 =
+ .message = { $name } будет скоро установлено.
+
+## Gecko Media Plugins (GMPs)
+
+plugins-gmp-license-info = Информация о лицензии
+plugins-gmp-privacy-info = Информация о конфиденциальности
+plugins-openh264-name = Видеокодек OpenH264, предоставленный Cisco Systems, Inc.
+plugins-openh264-description = Плагин автоматически установлен Mozilla для реализации спецификации WebRTC и выполнения звонков через WebRTC на устройства, требующие использования видеокодека H.264. Посетите https://www.openh264.org/ для просмотра исходного кода кодека и получения подробной информации о его реализации.
+plugins-widevine-name = Плагин расшифровки контента Widevine, предоставленный Google Inc.
+plugins-widevine-description = Плагин включает поддержку воспроизведения зашифрованного медиа в соответствии со спецификацией Encrypted Media Extensions (EME). Зашифрованные медиа обычно используются сайтами для защиты от копирования премиум медиа-контента. Посетите https://www.w3.org/TR/encrypted-media/ для получения подробной информации об Encrypted Media Extensions (EME).
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutCompat.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutCompat.ftl
new file mode 100644
index 0000000000..d158e3bc20
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutCompat.ftl
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+label-disable = Отключить
+label-enable = Включить
+label-interventions = Вмешательства
+label-more-information = Дополнительная информация: Баг { $bug }
+label-overrides = Переопределения User Agent
+text-disabled-in-about-config = Эта функция была отключена в about:config
+text-no-interventions = Вмешательства не используются
+text-no-overrides = Переопределения UA не используются
+text-title = about:compat
+
+## Do not translate "SmartBlock". For reference, SmartBlock is a feature
+## of Firefox anti-tracking which fixes website breakage caused when
+## trackers are blocked, by acting just enough like those trackers to fix the
+## breakage. SmartBlock also contains special fixes for sites broken by
+## Firefox's Total Cookie Protection feature.
+
+label-smartblock = Исправления SmartBlock
+text-no-smartblock = Исправления SmartBlock не используются
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutGlean.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutGlean.ftl
new file mode 100644
index 0000000000..ce8d36cf15
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutGlean.ftl
@@ -0,0 +1,105 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### "FOG", "Glean", and "Glean SDK" should remain in English.
+
+-fog-brand-name = FOG
+-glean-brand-name = Glean
+glean-sdk-brand-name = { -glean-brand-name } SDK
+glean-debug-ping-viewer-brand-name = Просмотр отладочных пингов { -glean-brand-name }
+about-glean-page-title2 = О { -glean-brand-name }
+about-glean-header = О { -glean-brand-name }
+about-glean-interface-description =
+ <a data-l10n-name="glean-sdk-doc-link">{ glean-sdk-brand-name }</a>
+ — это библиотека для сбора данных, используемая в проектах { -vendor-short-name }.
+ Этот интерфейс предназначен для использования разработчиками и тестировщиками, чтобы вручную <a data-l10n-name="fog-link">тестировать инструментарий</a>.
+about-glean-upload-enabled = Выгрузка данных включена.
+about-glean-upload-disabled = Выгрузка данных отключена.
+about-glean-upload-enabled-local = Выгрузка данных включена только для отправки на локальный сервер.
+about-glean-upload-fake-enabled =
+ Выгрузка данных отключена,
+ но мы лжём и говорим { glean-sdk-brand-name }, что она включена,
+ так что данные по-прежнему записываются локально.
+ Примечание: если вы установите метку отладки, пинги будут выгружаться в
+ <a data-l10n-name="glean-debug-ping-viewer">{ glean-debug-ping-viewer-brand-name }</a> независимо от настроек.
+# This message is followed by a bulleted list.
+about-glean-prefs-and-defines = Соответствующие <a data-l10n-name="fog-prefs-and-defines-doc-link">настройки и определения</a> включают:
+# Variables:
+# $data-upload-pref-value (String): the value of the datareporting.healthreport.uploadEnabled pref. Typically "true", sometimes "false"
+# Do not translate strings between <code> </code> tags.
+about-glean-data-upload = <code>datareporting.healthreport.uploadEnabled</code>: { $data-upload-pref-value }
+# Variables:
+# $local-port-pref-value (Integer): the value of the telemetry.fog.test.localhost_port pref. Typically 0. Can be negative.
+# Do not translate strings between <code> </code> tags.
+about-glean-local-port = <code>telemetry.fog.test.localhost_port</code>: { $local-port-pref-value }
+# Variables:
+# $glean-android-define-value (Boolean): the value of the MOZ_GLEAN_ANDROID define. Typically "false", sometimes "true".
+# Do not translate strings between <code> </code> tags.
+about-glean-glean-android = <code>MOZ_GLEAN_ANDROID</code>: { $glean-android-define-value }
+# Variables:
+# $moz-official-define-value (Boolean): the value of the MOZILLA_OFFICIAL define.
+# Do not translate strings between <code> </code> tags.
+about-glean-moz-official = <code>MOZILLA_OFFICIAL</code>: { $moz-official-define-value }
+about-glean-about-testing-header = О тестировании
+# This message is followed by a numbered list.
+about-glean-manual-testing =
+ Полные инструкции задокументированы в
+ <a data-l10n-name="fog-instrumentation-test-doc-link">документах по тестированию инструментария { -fog-brand-name }</a>
+ и в <a data-l10n-name="glean-sdk-doc-link">документации { glean-sdk-brand-name }</a>,
+ но, вкратце, чтобы вручную проверить работу вашего инструментария, вы должны:
+# This message is an option in a dropdown filled with untranslated names of pings.
+about-glean-no-ping-label = (не отправлять никаких пингов)
+# An in-line text input field precedes this string.
+about-glean-label-for-tag-pings = В предыдущем поле убедитесь, что установлен запоминающийся тег отладки, чтобы вы смогли позже распознать свои пинги.
+# An in-line text input field precedes this string.
+about-glean-label-for-tag-pings-with-requirements = Установите запоминающийся тег отладки <span>(не более 20 символов, только буквенно-цифровые и -)</span>, чтобы вы могли распознавать свои пинги позже.
+# An in-line drop down list precedes this string.
+# Do not translate strings between <code> </code> tags.
+about-glean-label-for-ping-names =
+ Выберите из предыдущего списка пинг, в котором находится ваш инструментарий.
+ Если он находится в <a data-l10n-name="custom-ping-link">пользовательском пинге</a>, выберите его.
+ В противном случае по умолчанию для метрик <code>event</code> используется
+ пинг <code>events</code>,
+ а по умолчанию для всех остальных метрик
+ пинг <code>metrics</code>.
+# An in-line check box precedes this string.
+about-glean-label-for-log-pings =
+ (Необязательно. Установите предыдущий флажок, если вы хотите, чтобы пинги журналировались при их отправке.
+ Вам также потребуется <a data-l10n-name="enable-logging-link">включить ведение журнала</a>).
+# Variables
+# $debug-tag (String): The user-set value of the debug tag input on this page. Like "about-glean-kV"
+# An in-line button labeled "Apply settings and submit ping" precedes this string.
+about-glean-label-for-controls-submit =
+ Нажмите на предыдущую кнопку, чтобы пометить все пинги { -glean-brand-name } своим тегом и отправить выбранный пинг.
+ (Все пинги, отправленные с этого момента до перезапуска приложения, будут помечены тегом <code>{ $debug-tag }</code>).
+about-glean-li-for-visit-gdpv =
+ <a data-l10n-name="gdpv-tagged-pings-link">Посетите страницу { glean-debug-ping-viewer-brand-name } для работы с пингами с вашим тегом</a>.
+ От нажатия кнопки до получения пинга должно пройти не более нескольких секунд.
+ Иногда это может занять несколько минут.
+# Do not translate strings between <code> </code> tags.
+about-glean-adhoc-explanation =
+ Для дополнительных <i>ad hoc</i> тестов
+ вы также можете определить текущее значение конкретного инструмента
+ открыв консоль devtools здесь, на <code>about:glean</code>
+ и используя API <code>testGetValue()</code>, например,
+ <code>Glean.metricCategory.metricName.testGetValue()</code>.
+# Do not translate strings between <code> </code> tags.
+about-glean-adhoc-explanation2 =
+ Чтобы узнать больше о <i>специальном</i> тестировании,
+ вы также можете определить текущее значение конкретного инструмента,
+ открыв консоль devtools здесь, в <code>about:glean</code>,
+ и используя API <code>testGetValue()</code>, например,
+ <code>Glean.metricCategory.metricName.testGetValue()</code>
+ для метрики с именем <code>metric.category.metric_name</code>.
+# Do not translate strings between <code> </code> tags.
+about-glean-adhoc-note =
+ Обратите внимание, что вы используете Glean JS API с помощью консоли devtools.
+ Это означает, что категория метрики и имя метрики отформатированы в
+ <code>camelCase</code>, а не в API Rust и C++.
+controls-button-label-verbose = Применить настройки и отправить пинг
+about-glean-about-data-header = О данных
+about-glean-about-data-explanation =
+ Чтобы просмотреть список собранных данных, обратитесь к
+ <a data-l10n-name="glean-dictionary-link">{ -glean-brand-name } Словарю</a>.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutHttpsOnlyError.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutHttpsOnlyError.ftl
new file mode 100644
index 0000000000..0c8c9865c7
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutHttpsOnlyError.ftl
@@ -0,0 +1,30 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+about-httpsonly-title-alert = Предупреждение режима «Только HTTPS»
+about-httpsonly-title-site-not-available = Безопасная версия сайта недоступна
+
+# Variables:
+# $websiteUrl (String) - Url of the website that failed to load. Example: www.example.com
+about-httpsonly-explanation-unavailable2 = Вы включили режим «Только HTTPS» для повышения безопасности, однако HTTPS-версия сайта <em>{ $websiteUrl }</em> недоступна.
+about-httpsonly-explanation-question = Чем это может быть вызвано?
+about-httpsonly-explanation-nosupport = Скорее всего, веб-сайт просто не поддерживает HTTPS.
+about-httpsonly-explanation-risk = Причиной этого также может быть злоумышленник. Если вы решите посетить этот веб-сайт, не вводите на нём никакой личной информации, такой как пароли, адреса электронной почты и данные банковских карт.
+about-httpsonly-explanation-continue = Если вы продолжите, режим «Только HTTPS» для этого сайта будет временно отключён.
+
+about-httpsonly-button-continue-to-site = Перейти на HTTP-версию
+about-httpsonly-button-go-back = Назад
+about-httpsonly-link-learn-more = Подробнее…
+
+## Suggestion Box that only shows up if a secure connection to www can be established
+## Variables:
+## $websiteUrl (String) - Url of the website that can be securely loded with these alternatives. Example: example.com
+
+## Suggestion Box that only shows up if a secure connection to www can be established
+## Variables:
+## $websiteUrl (String) - Url of the website that can be securely loaded with these alternatives. Example: example.com
+
+about-httpsonly-suggestion-box-header = Возможная альтернатива
+about-httpsonly-suggestion-box-www-text = Существует безопасная версия <em>www.{ $websiteUrl }</em>. Вы можете открыть её вместо <em>{ $websiteUrl }</em>.
+about-httpsonly-suggestion-box-www-button = Перейти на www.{ $websiteUrl }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutLogging.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutLogging.ftl
new file mode 100644
index 0000000000..51ed595cdc
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutLogging.ftl
@@ -0,0 +1,69 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# This is the title of the page
+about-logging-title = О ведении журнала
+about-logging-page-title = Менеджер журналов
+about-logging-current-log-file = Текущий файл журнала:
+about-logging-new-log-file = Новый файл журнала:
+about-logging-currently-enabled-log-modules = В настоящее время включены модули журнала:
+about-logging-log-tutorial = Для получения инструкций о том, как использовать этот инструмент, прочтите статью <a data-l10n-name="logging">HTTP Logging</a>.
+# This message is used as a button label, "Open" indicates an action.
+about-logging-open-log-file-dir = Открыть папку
+about-logging-set-log-file = Указать файл журнала
+about-logging-set-log-modules = Указать модули журнала
+about-logging-start-logging = Начать ведение журнала
+about-logging-stop-logging = Остановить ведение журнала
+about-logging-buttons-disabled = Ведение журнала настроено через переменные среды, динамическая настройка недоступна.
+about-logging-some-elements-disabled = Ведение журнала настроено через сетевой адрес, некоторые настройки конфигурации недоступны
+about-logging-info = Информация:
+about-logging-log-modules-selection = Выбор модулей журнала
+about-logging-new-log-modules = Новые модули журнала:
+about-logging-logging-output-selection = Вывод журнала
+about-logging-logging-to-file = Запись в файл
+about-logging-logging-to-profiler = Запись в { -profiler-brand-name }
+about-logging-no-log-modules = Нет
+about-logging-no-log-file = Нет
+about-logging-logging-preset-selector-text = Предустановка ведения журнала:
+about-logging-with-profiler-stacks-checkbox = Включить трассировку стека для сообщений журнала
+
+## Logging presets
+
+about-logging-preset-networking-label = Сеть
+about-logging-preset-networking-description = Модули журнала для диагностики проблем с сетью
+about-logging-preset-networking-cookie-label = Куки
+about-logging-preset-networking-cookie-description = Модули журнала для диагностики проблем с куками
+about-logging-preset-networking-websocket-label = WebSockets
+about-logging-preset-networking-websocket-description = Модули журнала для диагностики проблем WebSocket
+about-logging-preset-networking-http3-label = HTTP/3
+about-logging-preset-networking-http3-description = Модули журнала для диагностики проблем с HTTP/3 и QUIC
+about-logging-preset-networking-http3-upload-speed-label = Скорость загрузки HTTP/3
+about-logging-preset-networking-http3-upload-speed-description = Модули журнала для диагностики проблем со скоростью загрузки HTTP/3
+about-logging-preset-media-playback-label = Воспроизведение медиа
+about-logging-preset-media-playback-description = Модули журнала для диагностики проблем с воспроизведением мультимедиа (не проблем с видеоконференциями)
+about-logging-preset-webrtc-label = WebRTC
+about-logging-preset-webrtc-description = Модули журнала для диагностики вызовов WebRTC
+about-logging-preset-webgpu-label = WebGPU
+about-logging-preset-webgpu-description = Модули журнала для диагностики проблем WebGPU
+about-logging-preset-gfx-label = Графика
+about-logging-preset-gfx-description = Модули журналирования для диагностики проблем с графикой
+# This is specifically "Microsoft Windows". Microsoft normally doesn't localize it, and we should follow their convention here.
+about-logging-preset-windows-label = Windows
+about-logging-preset-windows-description = Модули журналов для диагностики проблем, характерных для Microsoft Windows
+about-logging-preset-custom-label = Персональная
+about-logging-preset-custom-description = Вручную выбранные модули журнала
+# Error handling
+about-logging-error = Ошибка:
+
+## Variables:
+## $k (String) - Variable name
+## $v (String) - Variable value
+
+about-logging-invalid-output = Недопустимое значение «{ $v }» для ключа «{ $k }»
+about-logging-unknown-logging-preset = Неизвестная предустановка ведения журнала «{ $v }»
+about-logging-unknown-profiler-preset = Неизвестная предустановка профайлера «{ $v }»
+about-logging-unknown-option = Неизвестная настройка about:logging «{ $k }»
+about-logging-configuration-url-ignored = Сетевой адрес конфигурации проигнорирован
+about-logging-file-and-profiler-override = Невозможно одновременно принудительно вывести в файл и переопределить настройки профайлера.
+about-logging-configured-via-url = Опция настроена через сетевой адрес
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutMozilla.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutMozilla.ftl
new file mode 100644
index 0000000000..15c1aa5687
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutMozilla.ftl
@@ -0,0 +1,11 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+about-mozilla-title-6-27 = Книга Mozilla, 6:27
+about-mozilla-quote-6-27 =
+ Зверь продолжил свои исследования с обновлённым <em>фокусом</em>, создав замечательный <em>справочник</em>,
+ создавая и созерцая новые <em>реальности</em>. Зверь породил своих последователей и
+ помощников, чтобы создать обновлённую меньшую форму себя и посредством <em>озорных</em> средств,
+ распространил его по всему миру.
+about-mozilla-from-6-27 = из <strong>Книги Mozilla,</strong> 6:27
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutNetworking.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutNetworking.ftl
new file mode 100644
index 0000000000..8dfed10c9e
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutNetworking.ftl
@@ -0,0 +1,68 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+about-networking-title = О сети
+about-networking-http = HTTP
+about-networking-sockets = Сокеты
+about-networking-dns = DNS
+about-networking-dns-clear-cache-button = Очистить кеш DNS
+about-networking-dns-trr-url = DoH URL
+about-networking-dns-trr-mode = Режим DoH
+about-networking-dns-suffix = DNS-суффикс
+about-networking-websockets = Веб-сокеты
+about-networking-refresh = Обновить
+about-networking-auto-refresh = Автообновление каждые 3 секунды
+about-networking-hostname = Имя узла
+about-networking-port = Порт
+about-networking-http-version = Версия HTTP
+about-networking-ssl = SSL
+about-networking-active = Активен
+about-networking-idle = Простаивает
+about-networking-host = Узел
+about-networking-type = Тип
+about-networking-sent = Отправлено
+about-networking-received = Получено
+about-networking-family = Семейство
+about-networking-trr = TRR
+about-networking-addresses = Адреса
+about-networking-expires = Истекает через (сек.)
+about-networking-originAttributesSuffix = Ключ изоляции
+about-networking-flags = Дополнительные флаги
+about-networking-messages-sent = Сообщений отправлено
+about-networking-messages-received = Сообщений получено
+about-networking-bytes-sent = Байт отправлено
+about-networking-bytes-received = Байт получено
+about-networking-logging = Журнал
+about-networking-dns-lookup = Запрос DNS
+about-networking-dns-lookup-button = Запросить
+about-networking-dns-domain = Домен:
+about-networking-dns-lookup-table-column = IP-адреса
+about-networking-dns-https-rr-lookup-table-column = HTTP RR-ы
+about-networking-rcwn = Статистика RCWN
+about-networking-rcwn-status = Статус RCWN
+about-networking-rcwn-cache-won-count = Число выигрышей кеша
+about-networking-rcwn-net-won-count = Число выигрышей сети
+about-networking-total-network-requests = Общее число сетевых запросов
+about-networking-rcwn-operation = Работа кеша
+about-networking-rcwn-perf-open = Открыто
+about-networking-rcwn-perf-read = Прочитано
+about-networking-rcwn-perf-write = Записано
+about-networking-rcwn-perf-entry-open = Открыто записей
+about-networking-rcwn-avg-short = Короткое среднее
+about-networking-rcwn-avg-long = Долгое среднее
+about-networking-rcwn-std-dev-long = Долгое стандартное отклонение
+about-networking-rcwn-cache-slow = Счётчик медленного кеша
+about-networking-rcwn-cache-not-slow = Счётчик не медленного кеша
+about-networking-networkid = Сетевой ID
+about-networking-networkid-id = Сетевой ID
+# Note: do not translate about:logging, as it is a URL.
+about-networking-moved-about-logging = Эта страница была перемещена в <a data-l10n-name="about-logging-url">about:logging</a>.
+
+## Link is intended as "network link"
+
+about-networking-networkid-is-up = Соединение установлено
+about-networking-networkid-status-known = Состояние соединения известно
+
+##
+
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutPerformance.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutPerformance.ftl
new file mode 100644
index 0000000000..d7412838f7
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutPerformance.ftl
@@ -0,0 +1,65 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Page title
+about-performance-title = Диспетчер задач
+
+## Column headers
+
+column-name = Название
+column-type = Тип
+column-energy-impact = Расход энергии
+column-memory = Память
+
+## Special values for the Name column
+
+ghost-windows = Недавно закрытые вкладки
+# Variables:
+# $title (String) - the title of the preloaded page, typically 'New Tab'
+preloaded-tab = Предзагружено: { $title }
+
+## Values for the Type column
+
+type-tab = Вкладка
+type-subframe = Подфрейм
+type-tracker = Трекер
+type-addon = Дополнение
+type-browser = Браузер
+type-worker = Worker
+type-other = Другое
+
+## Values for the Energy Impact column
+##
+## Variables:
+## $value (Number) - Value of the energy impact, eg. 0.25 (low),
+## 5.38 (medium), 105.38 (high)
+
+energy-impact-high = Высокий ({ $value })
+energy-impact-medium = Средний ({ $value })
+energy-impact-low = Низкий ({ $value })
+
+## Values for the Memory column
+##
+## Variables:
+## $value (Number) - How much memory is used
+
+size-KB = { $value } КБ
+size-MB = { $value } МБ
+size-GB = { $value } ГБ
+
+## Tooltips for the action buttons
+
+close-tab =
+ .title = Закрыть вкладку
+show-addon =
+ .title = Показать в менеджере дополнений
+
+# Tooltip when hovering an item of the about:performance table
+# Variables:
+# $totalDispatches (Number) - how many dispatches occured for this page since it loaded
+# $totalDuration (Number) - how much CPU time was used by this page since it loaded
+# $dispatchesSincePrevious (Number) - how many dispatches occured in the last 2 seconds
+# $durationSincePrevious (Number) - how much CPU time was used in the last 2 seconds
+item =
+ .title = Ресурсов процессора с момента загрузки использовано: { $totalDispatches } ({ $totalDuration }мс) Ресурсов процессора за последние секунды использовано: { $dispatchesSincePrevious } ({ $durationSincePrevious }мс)
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutPlugins.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutPlugins.ftl
new file mode 100644
index 0000000000..e490be9621
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutPlugins.ftl
@@ -0,0 +1,43 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+title-label = О плагинах
+installed-plugins-label = Установленные плагины
+no-plugins-are-installed-label = Установленных плагинов не найдено
+deprecation-description = Что-то отсутствует? Некоторые плагины больше не поддерживаются. <a data-l10n-name="deprecation-link">Подробнее.</a>
+deprecation-description2 =
+ .message = Что-то отсутствует? Некоторые плагины больше не поддерживаются.
+
+## The information of plugins
+##
+## Variables:
+## $pluginLibraries: the plugin library
+## $pluginFullPath: path of the plugin
+## $version: version of the plugin
+
+file-dd = <span data-l10n-name="file">Файл:</span> { $pluginLibraries }
+path-dd = <span data-l10n-name="path">Путь:</span> { $pluginFullPath }
+version-dd = <span data-l10n-name="version">Версия:</span> { $version }
+
+## These strings describe the state of plugins
+##
+## Variables:
+## $blockListState: show some special state of the plugin, such as blocked, outdated
+
+state-dd-enabled = <span data-l10n-name="state">Состояние:</span> Включён
+state-dd-enabled-block-list-state = <span data-l10n-name="state">Состояние:</span> Включён ({ $blockListState })
+state-dd-Disabled = <span data-l10n-name="state">Состояние:</span> Отключён
+state-dd-Disabled-block-list-state = <span data-l10n-name="state">Состояние:</span> Отключён ({ $blockListState })
+mime-type-label = MIME-тип
+description-label = Описание
+suffixes-label = Суффиксы
+
+## Gecko Media Plugins (GMPs)
+
+plugins-gmp-license-info = Информация о лицензии
+plugins-gmp-privacy-info = Информация о конфиденциальности
+plugins-openh264-name = Видеокодек OpenH264, предоставленный Cisco Systems, Inc.
+plugins-openh264-description = Плагин автоматически установлен Mozilla для реализации спецификации WebRTC и выполнения звонков через WebRTC на устройства, требующие использования видеокодека H.264. Посетите https://www.openh264.org/ для просмотра исходного кода кодека и получения подробной информации о его реализации.
+plugins-widevine-name = Плагин расшифровки контента Widevine, предоставленный Google Inc.
+plugins-widevine-description = Плагин включает поддержку воспроизведения зашифрованного медиа в соответствии со спецификацией Encrypted Media Extensions (EME). Зашифрованные медиа обычно используются сайтами для защиты от копирования премиум медиа-контента. Посетите https://www.w3.org/TR/encrypted-media/ для получения подробной информации об Encrypted Media Extensions (EME).
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutProcesses.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutProcesses.ftl
new file mode 100644
index 0000000000..b42a890c29
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutProcesses.ftl
@@ -0,0 +1,192 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Page title
+about-processes-title = Менеджер процессов
+# The Actions column
+about-processes-column-action =
+ .title = Действия
+
+## Tooltips
+
+about-processes-shutdown-process =
+ .title = Выгрузить вкладки и убить процесс
+about-processes-shutdown-tab =
+ .title = Закрыть вкладку
+# Profiler icons
+# Variables:
+# $duration (Number) The time in seconds during which the profiler will be running.
+# The value will be an integer, typically less than 10.
+about-processes-profile-process =
+ .title =
+ { $duration ->
+ [one] Профилировать все потоки этого процесса в течение { $duration } секунды
+ [few] Профилировать все потоки этого процесса в течение { $duration } секунд
+ *[many] Профилировать все потоки этого процесса в течение { $duration } секунд
+ }
+
+## Column headers
+
+about-processes-column-name = Имя
+about-processes-column-memory-resident = Память
+about-processes-column-cpu-total = ЦП
+
+## Process names
+## Variables:
+## $pid (String) The process id of this process, assigned by the OS.
+
+about-processes-browser-process = { -brand-short-name } ({ $pid })
+about-processes-web-process = Общий веб-процесс ({ $pid })
+about-processes-file-process = Файлы ({ $pid })
+about-processes-extension-process = Расширения ({ $pid })
+about-processes-privilegedabout-process = Страницы About ({ $pid })
+about-processes-plugin-process = Плагины ({ $pid })
+about-processes-privilegedmozilla-process = Сайты { -vendor-short-name } ({ $pid })
+about-processes-gmp-plugin-process = Медиаплагины Gecko ({ $pid })
+about-processes-gpu-process = Графический процессор ({ $pid })
+about-processes-vr-process = VR ({ $pid })
+about-processes-rdd-process = Декодер данных ({ $pid })
+about-processes-socket-process = Сеть ({ $pid })
+about-processes-remote-sandbox-broker-process = Удалённый брокер песочницы ({ $pid })
+about-processes-fork-server-process = Форк-сервер ({ $pid })
+about-processes-preallocated-process = Предварительно выделено ({ $pid })
+about-processes-utility-process = Утилита ({ $pid })
+# Unknown process names
+# Variables:
+# $pid (String) The process id of this process, assigned by the OS.
+# $type (String) The raw type for this process.
+about-processes-unknown-process = Другое: { $type } ({ $pid })
+
+## Isolated process names
+## Variables:
+## $pid (String) The process id of this process, assigned by the OS.
+## $origin (String) The domain name for this process.
+
+about-processes-web-isolated-process = { $origin } ({ $pid })
+about-processes-web-serviceworker = { $origin } ({ $pid }, serviceworker)
+about-processes-with-coop-coep-process = { $origin } ({ $pid }, изолирован от посторонних источников)
+about-processes-web-isolated-process-private = { $origin } — Приватный ({ $pid })
+about-processes-with-coop-coep-process-private = { $origin } — Приватный ({ $pid }, изолирован от посторонних источников)
+
+## Details within processes
+
+# Single-line summary of threads (non-idle process)
+# Variables:
+# $number (Number) The number of threads in the process. Typically larger
+# than 30. We don't expect to ever have processes with less
+# than 5 threads.
+# $active (Number) The number of active threads in the process.
+# The value will be greater than 0 and will never be
+# greater than $number.
+# $list (String) Comma separated list of active threads.
+# Can be an empty string if the process is idle.
+about-processes-active-threads =
+ { $active ->
+ [one] { $active } активный поток из { $number }: { $list }
+ [few] { $active } активных потока из { $number }: { $list }
+ *[many] { $active } активных потоков из { $number }: { $list }
+ }
+# Single-line summary of threads (idle process)
+# Variables:
+# $number (Number) The number of threads in the process. Typically larger
+# than 30. We don't expect to ever have processes with less
+# than 5 threads.
+# The process is idle so all threads are inactive.
+about-processes-inactive-threads =
+ { $number ->
+ [one] { $number } неактивный поток
+ [few] { $number } неактивных потока
+ *[many] { $number } неактивных потоков
+ }
+# Thread details
+# Variables:
+# $name (String) The name assigned to the thread.
+# $tid (String) The thread id of this thread, assigned by the OS.
+about-processes-thread-name-and-id = { $name }
+ .title = id потока: { $tid }
+# Tab
+# Variables:
+# $name (String) The name of the tab (typically the title of the page, might be the url while the page is loading).
+about-processes-tab-name = Вкладка: { $name }
+about-processes-preloaded-tab = Предзагруженная новая вкладка
+# Single subframe
+# Variables:
+# $url (String) The full url of this subframe.
+about-processes-frame-name-one = Подфрейм: { $url }
+# Group of subframes
+# Variables:
+# $number (Number) The number of subframes in this group. Always ≥ 1.
+# $shortUrl (String) The shared prefix for the subframes in the group.
+about-processes-frame-name-many = Подфреймы ({ $number }): { $shortUrl }
+
+## Utility process actor names
+
+about-processes-utility-actor-unknown = Неизвестный участник
+about-processes-utility-actor-audio-decoder-generic = Универсальный аудиодекодер
+about-processes-utility-actor-audio-decoder-applemedia = Аудиодекодер Apple Media
+about-processes-utility-actor-audio-decoder-wmf = Аудиодекодер Windows Media Framework
+about-processes-utility-actor-mf-media-engine = Windows Media Foundation Media Engine CDM
+# "Oracle" refers to an internal Firefox process and should be kept in English
+about-processes-utility-actor-js-oracle = JavaScript Oracle
+about-processes-utility-actor-windows-utils = Утилиты Windows
+about-processes-utility-actor-windows-file-dialog = Диалоговое окно Файл в Windows
+
+## Displaying CPU (percentage and total)
+## Variables:
+## $percent (Number) The percentage of CPU used by the process or thread.
+## Always > 0, generally <= 200.
+## $total (Number) The amount of time used by the process or thread since
+## its start.
+## $unit (String) The unit in which to display $total. See the definitions
+## of `duration-unit-*`.
+
+# Common case.
+about-processes-cpu = { NUMBER($percent, maximumSignificantDigits: 2, style: "percent") }
+ .title = Всего процессорного времени: { NUMBER($total, maximumFractionDigits: 0) }{ $unit }
+# Special case: data is not available yet.
+about-processes-cpu-user-and-kernel-not-ready = (измерение)
+# Special case: process or thread is almost idle (using less than 0.1% of a CPU core).
+# This case only occurs on Windows where the precision of the CPU times is low.
+about-processes-cpu-almost-idle = < 0.1%
+ .title = Всего процессорного времени: { NUMBER($total, maximumFractionDigits: 0) }{ $unit }
+# Special case: process or thread is currently idle.
+about-processes-cpu-fully-idle = неактивен
+ .title = Всего процессорного времени: { NUMBER($total, maximumFractionDigits: 0) }{ $unit }
+
+## Displaying Memory (total and delta)
+## Variables:
+## $total (Number) The amount of memory currently used by the process.
+## $totalUnit (String) The unit in which to display $total. See the definitions
+## of `memory-unit-*`.
+## $delta (Number) The absolute value of the amount of memory added recently.
+## $deltaSign (String) Either "+" if the amount of memory has increased
+## or "-" if it has decreased.
+## $deltaUnit (String) The unit in which to display $delta. See the definitions
+## of `memory-unit-*`.
+
+# Common case.
+about-processes-total-memory-size-changed = { NUMBER($total, maximumFractionDigits: 0) }{ $totalUnit }
+ .title = Выделено: { $deltaSign }{ NUMBER($delta, maximumFractionDigits: 0) }{ $deltaUnit }
+# Special case: no change.
+about-processes-total-memory-size-no-change = { NUMBER($total, maximumFractionDigits: 0) }{ $totalUnit }
+
+## Duration units
+
+duration-unit-ns = нс
+duration-unit-us = мкс
+duration-unit-ms = мс
+duration-unit-s = с
+duration-unit-m = мин
+duration-unit-h = ч
+duration-unit-d = д
+
+## Memory units
+
+memory-unit-B = Б
+memory-unit-KB = КБ
+memory-unit-MB = МБ
+memory-unit-GB = ГБ
+memory-unit-TB = ТБ
+memory-unit-PB = ПБ
+memory-unit-EB = ЭБ
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutProfiles.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutProfiles.ftl
new file mode 100644
index 0000000000..35fddf4d72
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutProfiles.ftl
@@ -0,0 +1,74 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+profiles-title = О профилях
+profiles-subtitle = Эта страница поможет вам управлять вашими профилями. Каждый профиль представляет собой отдельный мир, который содержит отдельную историю, закладки, настройки и дополнения.
+profiles-create = Создать новый профиль
+profiles-restart-title = Перезапустить
+profiles-restart-in-safe-mode = Перезапустить с отключёнными дополнениями…
+profiles-restart-normal = Перезапустить в обычном режиме…
+profiles-conflict = Другая копия { -brand-product-name } сделала изменения в профилях. Вам необходимо перезапустить { -brand-short-name } перед тем, как производить какие-либо другие изменения.
+profiles-flush-fail-title = Изменения не сохранены
+profiles-flush-conflict = { profiles-conflict }
+profiles-flush-failed = Неожиданная ошибка не позволила сохранить ваши изменения.
+profiles-flush-restart-button = Перезапустить { -brand-short-name }
+
+# Variables:
+# $name (String) - Name of the profile
+profiles-name = Профиль: { $name }
+profiles-is-default = Профиль по умолчанию
+profiles-rootdir = Корневой каталог
+
+# localDir is used to show the directory corresponding to
+# the main profile directory that exists for the purpose of storing data on the
+# local filesystem, including cache files or other data files that may not
+# represent critical user data. (e.g., this directory may not be included as
+# part of a backup scheme.)
+# In case localDir and rootDir are equal, localDir is not shown.
+profiles-localdir = Локальный каталог
+profiles-current-profile = Этот профиль сейчас используется и не может быть удалён.
+profiles-in-use-profile = Этот профиль сейчас используется другим приложением и не может быть удалён.
+
+profiles-rename = Переименовать
+profiles-remove = Удалить
+profiles-set-as-default = Установить как профиль по умолчанию
+profiles-launch-profile = Запустить ещё один браузер с этим профилем
+
+profiles-cannot-set-as-default-title = Не удалось установить по умолчанию
+profiles-cannot-set-as-default-message = Не удалось сменить профиль по умолчанию для { -brand-short-name }.
+
+profiles-yes = да
+profiles-no = нет
+
+profiles-rename-profile-title = Переименовать профиль
+# Variables:
+# $name (String) - Name of the profile
+profiles-rename-profile = Переименовать профиль { $name }
+
+profiles-invalid-profile-name-title = Некорректное имя профиля
+# Variables:
+# $name (String) - Name of the profile
+profiles-invalid-profile-name = Имя профиля «{ $name }» не разрешено.
+
+profiles-delete-profile-title = Удалить профиль
+# Variables:
+# $dir (String) - Path to be displayed
+profiles-delete-profile-confirm =
+ Удаление профиля приведёт к удалению профиля из списка доступных профилей и не может быть отменено.
+ Вы можете также удалить файлы данных профиля, включая ваши настройки, сертификаты и другие пользовательские данные. Выбор этой опции приведет к удалению папки «{ $dir }», что не может быть отменено.
+ Вы хотите удалить файлы данных профиля?
+profiles-delete-files = Удалить файлы
+profiles-dont-delete-files = Не удалять файлы
+
+profiles-delete-profile-failed-title = Ошибка
+profiles-delete-profile-failed-message = При попытке удаления этого профиля произошла ошибка.
+
+
+profiles-opendir =
+ { PLATFORM() ->
+ [macos] Показать в Finder
+ [windows] Открыть папку
+ *[other] Открыть папку
+ }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutReader.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutReader.ftl
new file mode 100644
index 0000000000..59c03d65c3
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutReader.ftl
@@ -0,0 +1,53 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+about-reader-loading = Загрузка…
+about-reader-load-error = Не удалось загрузить статью со страницы
+
+about-reader-color-scheme-light = Светлая
+ .title = Цветовая схема «Светлая»
+about-reader-color-scheme-dark = Тёмная
+ .title = Цветовая схема «Тёмная»
+about-reader-color-scheme-sepia = Сепия
+ .title = Цветовая схема «Сепия»
+about-reader-color-scheme-auto = Авто
+ .title = Цветовая схема «Авто»
+
+# An estimate for how long it takes to read an article,
+# expressed as a range covering both slow and fast readers.
+# Variables:
+# $rangePlural (String): The plural category of the range, using the same set as for numbers.
+# $range (String): The range of minutes as a localised string. Examples: "3-7", "~1".
+about-reader-estimated-read-time =
+ { $rangePlural ->
+ [one] { $range } минута
+ [few] { $range } минуты
+ *[many] { $range } минут
+ }
+
+## These are used as tooltips in Type Control
+
+about-reader-toolbar-minus =
+ .title = Уменьшить размер шрифта
+about-reader-toolbar-plus =
+ .title = Увеличить размер шрифта
+about-reader-toolbar-contentwidthminus =
+ .title = Уменьшить ширину содержимого
+about-reader-toolbar-contentwidthplus =
+ .title = Увеличить ширину содержимого
+about-reader-toolbar-lineheightminus =
+ .title = Уменьшить междустрочный интервал
+about-reader-toolbar-lineheightplus =
+ .title = Увеличить междустрочный интервал
+
+## These are the styles of typeface that are options in the reader view controls.
+
+about-reader-font-type-serif = С засечками
+about-reader-font-type-sans-serif = Без засечек
+
+## Reader View toolbar buttons
+
+about-reader-toolbar-close = Закрыть режим чтения
+about-reader-toolbar-type-controls = Настройка шрифтов
+about-reader-toolbar-savetopocket = Сохранить в { -pocket-brand-name }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutRights.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutRights.ftl
new file mode 100644
index 0000000000..5bc8f9bb5b
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutRights.ftl
@@ -0,0 +1,36 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+rights-title = О ваших правах
+rights-intro = { -brand-full-name } является бесплатной программой с открытым исходным кодом, созданной многотысячным сообществом людей со всего мира. Вот несколько вещей, о которых вам следует знать:
+rights-intro-point-1 = { -brand-short-name } предоставляется вам на условиях <a data-l10n-name="mozilla-public-license-link">Публичной лицензии Mozilla</a>. Это значит, что вы можете использовать, копировать и распространять { -brand-short-name }. Вы также можете модифицировать исходный код { -brand-short-name } в соответствии со своими нуждами. Публичная лицензия Mozilla также даёт вам право распространять изменённые вами сборки.
+rights-intro-point-2 = Вам не предоставляются никакие права или лицензии на товарные знаки Mozilla Foundation или любой другой стороны, в том числе на название или логотип Firefox. Дополнительная информация о товарных знаках приведена по <a data-l10n-name="mozilla-trademarks-link">следующему адресу</a>.
+rights-intro-point-3 = Некоторые функции { -brand-short-name }, такие как «Сообщения о падениях», позволяют вам отправлять отзывы в { -vendor-short-name }. Отправляя отзыв, вы разрешаете { -vendor-short-name } использовать отзыв для улучшения её продуктов, размещать отзыв на её веб-сайтах и распространять отзывы любыми другими способами.
+rights-intro-point-4 = То, как мы используем вашу персональную информацию и отзывы, отправленные в { -vendor-short-name } через { -brand-short-name }, описано в <a data-l10n-name="mozilla-privacy-policy-link">Политике приватности { -brand-short-name }</a>.
+rights-intro-point-4-unbranded = Любые применимые политики приватности для этого продукта должны быть перечислены здесь.
+rights-intro-point-5 = Некоторые функции { -brand-short-name } используют информационные веб-службы, однако мы не можем гарантировать на 100% их безошибочную или корректную работу. Более подробная информация, а также инструкции по отключению этих служб, приведена в <a data-l10n-name="mozilla-service-terms-link">условиях использования служб</a>.
+rights-intro-point-5-unbranded = Если этот продукт включает в себя службы информирования о сайтах, ссылки на все применимые условия использования этих служб должны быть приведены в разделе <a data-l10n-name="mozilla-website-services-link">Службы информирования о веб-сайтах</a>.
+rights-intro-point-6 = Для воспроизведения определенных типов видеоконтента { -brand-short-name } загружает определенные плагины расшифровки контента от сторонних производителей.
+rights-webservices-header = Информационные веб-службы { -brand-full-name }
+rights-webservices = { -brand-full-name } использует информационные веб-службы (далее «Службы»), для обеспечения работы некоторых функций, предоставляемых вам в этой бинарной версии { -brand-short-name } на условиях описанных ниже. Если вы не хотите использовать одну или несколько из этих Служб или приведённые ниже условия неприемлемы, вы можете отключить эту функцию или Службу(ы). Инструкции по тому, как отключить конкретную функцию или службу можно найти <a data-l10n-name="mozilla-disable-service-link">здесь</a>. Другие функции и Службы могут быть отключены в настройках приложения.
+rights-safebrowsing = <strong>SafeBrowsing: </strong>Отключение функции Safe Browsing не рекомендуется, так как это может привести к тому, что вы будете попадать на небезопасные сайты. Если вы хотите полностью отключить эту функцию, выполните следующие действия:
+rights-safebrowsing-term-1 = Откройте настройки приложения
+rights-safebrowsing-term-2 = Выберите раздел Защита
+rights-safebrowsing-term-3 = Снимите флажок "{ enableSafeBrowsing-label }"
+enableSafeBrowsing-label = Блокировать опасное и обманывающее содержимое
+rights-safebrowsing-term-4 = Safe Browsing теперь отключён
+rights-locationawarebrowsing = <strong>Определение местоположения сайтами: </strong>всегда требует вашего разрешения. Никакая информация о местоположении никогда не отправляется без вашего разрешения. Если вы хотите полностью отключить эту функцию, выполните следующие действия:
+rights-locationawarebrowsing-term-1 = В строке адреса наберите <code>about:config</code>
+rights-locationawarebrowsing-term-2 = Наберите geo.enabled
+rights-locationawarebrowsing-term-3 = Произведите двойной щелчок по параметру geo.enabled
+rights-locationawarebrowsing-term-4 = Определение местоположения сайтами теперь отключено
+rights-webservices-unbranded = Обзор служб информирования о веб-сайтах, включённых в продукт, вместе с инструкциями по их отключению, если таковые требуются, должен быть приведён здесь.
+rights-webservices-term-unbranded = Любые применимые политики использования служб для этого продукта должны быть перечислены здесь.
+rights-webservices-term-1 = { -vendor-short-name } и её сотрудники, лицензиары и партнёры прилагают все усилия для предоставления самой точной и актуальной информации через Службы. Однако мы не можем гарантировать, что эта информация является полной и не содержит ошибок. Например, служба Safe Browsing может не определять некоторые опасные сайты, а может обозначать некоторые безопасные сайты по ошибке как опасные, а все местоположения, возвращаемые нашей Службой Определения Местоположения, являются лишь приблизительными. Ни мы, ни наши сервис-провайдеры не можем гарантировать точность предоставленных местоположений.
+rights-webservices-term-2 = { -vendor-short-name } может прекратить предоставление Служб или изменить работу Служб по своему усмотрению.
+rights-webservices-term-3 = Вы можете использовать эти Службы вместе с сопутствующей версией { -brand-short-name }, и { -vendor-short-name } предоставляет вам на это права. { -vendor-short-name } и её лицензиары сохраняют на данные Службы все остальные права. Данные условия не предназначены для ограничения любых прав, предоставленных на условиях лицензий для открытого исходного кода, применимых к { -brand-short-name } и к соответствующему исходному коду версий { -brand-short-name }.
+rights-webservices-term-4 = <strong>Данные службы предоставляются «как есть». { -vendor-short-name }, её сотрудники, лицензиары и дистрибьюторы настоящим отказываются от предоставления любых гарантий, явно выраженных или подразумеваемых, в том числе гарантий того, что Службы пригодны для продажи и подходят для ваших определённых целей. Весь риск за выбор Служб для ваших целей и в отношении качества и работы Служб несете вы. Некоторые юрисдикции не допускают исключения или ограничения подразумеваемых гарантий, поэтому настоящий отказ от гарантий может быть к вам неприменим.</strong>
+rights-webservices-term-5 = <strong>За исключением случаев, когда этого требует закон, { -vendor-short-name } и её сотрудники, лицензиары и дистрибьюторы не будут нести ответственности ни за какой косвенный, особый, случайный, последующий, присуждаемый в качестве штрафа или наказания ущерб, вытекающий из использования { -brand-short-name } и Служб, или каким-либо образом имеющий к ним отношение. В соответствии с этими условиями коллективная ответственность не будет превышать $500 (пятисот долларов США). Некоторые юрисдикции не допускают исключения или ограничения определённого ущерба, поэтому настоящее исключение и ограничение может быть к вам неприменимо.</strong>
+rights-webservices-term-6 = { -vendor-short-name } при необходимости время от времени может обновлять эти условия. Данные условия не могут быть изменены или отменены без письменного соглашения { -vendor-short-name }.
+rights-webservices-term-7 = Эти условия регламентируются законами штата Калифорния, США, исключая его нормы коллизионного права. Если какая-либо часть этих условий станет юридически недействительной или неисполнимой, остальные части полностью сохранят свою юридическую силу. В случае возникновения противоречий между переведённой версией этих условий и версией на английском языке, следует руководствоваться версией на английском языке.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutServiceWorkers.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutServiceWorkers.ftl
new file mode 100644
index 0000000000..efe39a5507
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutServiceWorkers.ftl
@@ -0,0 +1,40 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### The term "Service Workers" and "Workers" should not be translated
+
+about-service-workers-title = О Service Worker'ах
+about-service-workers-main-title = Зарегистрированные Service Worker'ы
+about-service-workers-warning-not-enabled = Нет включённых Service Worker'ов.
+about-service-workers-warning-no-service-workers = Ни одного Service Worker'а не зарегистрировано.
+
+# The original title of service workers' information
+#
+# Variables:
+# $originTitle: original title
+origin-title = Источник: { $originTitle }
+
+## These strings are for showing the information of workers.
+##
+## Variables:
+## $name: the name of scope, active cache, waiting cache and the push end point.
+## $url: the url of script specification and current worker.
+
+scope = <strong>Область:</strong> { $name }
+script-spec = <strong>Спецификация сценария:</strong> <a data-l10n-name="link">{ $url }</a>
+current-worker-url = <strong>URL текущего Worker:</strong> <a data-l10n-name="link">{ $url }</a>
+active-cache-name = <strong>Имя активного кеша:</strong> { $name }
+waiting-cache-name = <strong>Имя кеша ожидания:</strong> { $name }
+push-end-point-waiting = <strong>Конечная точка Push:</strong> { waiting }
+push-end-point-result = <strong>Конечная точка Push:</strong> { $name }
+
+# This term is used as a button label (verb, not noun).
+update-button = Обновить
+
+unregister-button = Разрегистрировать
+
+unregister-error = Не удалось разрегистрировать этот Service Worker.
+
+waiting = Ожидание…
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutSupport.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutSupport.ftl
new file mode 100644
index 0000000000..0a29363c60
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutSupport.ftl
@@ -0,0 +1,431 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+page-title = Информация для решения проблем
+page-subtitle = Эта страница содержит техническую информацию, которая может быть полезна, когда вы пытаетесь решить проблему. Если вы ищете ответы на типичные вопросы о { -brand-short-name }, обратитесь на наш <a data-l10n-name="support-link">веб-сайт поддержки</a>.
+crashes-title = Сообщения о падениях
+crashes-id = Идентификатор сообщения
+crashes-send-date = Дата отправки
+crashes-all-reports = Все сообщения о падениях
+crashes-no-config = Это приложение не было настроено на отображение сообщений о падениях.
+support-addons-title = Дополнения
+support-addons-name = Имя
+support-addons-type = Тип
+support-addons-enabled = Включено
+support-addons-version = Версия
+support-addons-id = ID
+legacy-user-stylesheets-title = Устаревшие пользовательские таблицы стилей
+legacy-user-stylesheets-enabled = Активны
+legacy-user-stylesheets-stylesheet-types = Таблицы стилей
+legacy-user-stylesheets-no-stylesheets-found = Таблицы стилей не найдены
+security-software-title = Программы обеспечения безопасности
+security-software-type = Тип
+security-software-name = Наименование
+security-software-antivirus = Антивирус
+security-software-antispyware = Антишпион
+security-software-firewall = Межсетевой экран
+features-title = Возможности { -brand-short-name }
+features-name = Имя
+features-version = Версия
+features-id = ID
+processes-title = Удалённые процессы
+processes-type = Тип
+processes-count = Количество
+app-basics-title = Сведения о приложении
+app-basics-name = Имя
+app-basics-version = Версия
+app-basics-build-id = ID сборки
+app-basics-distribution-id = ID дистрибутива
+app-basics-update-channel = Канал обновления
+# This message refers to the folder used to store updates on the device,
+# as in "Folder for updates". "Update" is a noun, not a verb.
+app-basics-update-dir =
+ { PLATFORM() ->
+ [linux] Папка обновления
+ *[other] Папка обновления
+ }
+app-basics-update-history = Журнал обновлений
+app-basics-show-update-history = Показать журнал обновлений
+# Represents the path to the binary used to start the application.
+app-basics-binary = Бинарный файл приложения
+app-basics-profile-dir =
+ { PLATFORM() ->
+ [linux] Папка профиля
+ *[other] Папка профиля
+ }
+app-basics-enabled-plugins = Включённые плагины
+app-basics-build-config = Конфигурация сборки
+app-basics-user-agent = User Agent
+app-basics-os = ОС
+app-basics-os-theme = Тема ОС
+# Rosetta is Apple's translation process to run apps containing x86_64
+# instructions on Apple Silicon. This should remain in English.
+app-basics-rosetta = Бинарная трансляция Rosetta
+app-basics-memory-use = Использование памяти
+app-basics-performance = Производительность
+app-basics-service-workers = Зарегистрированные Service Worker'ы
+app-basics-third-party = Сторонние модули
+app-basics-profiles = Профили
+app-basics-launcher-process-status = Запускающий процесс
+app-basics-multi-process-support = Многопроцессные окна
+app-basics-fission-support = Окна Fission
+app-basics-remote-processes-count = Удалённые процессы
+app-basics-enterprise-policies = Корпоративные политики
+app-basics-location-service-key-google = Ключ Службы определения местоположения от Google
+app-basics-safebrowsing-key-google = Ключ Google Safebrowsing
+app-basics-key-mozilla = Ключ Службы определения местоположения от Mozilla
+app-basics-safe-mode = Безопасный Режим
+app-basics-memory-size = Объём памяти (ОЗУ)
+app-basics-disk-available = Доступное место на накопителе
+app-basics-pointing-devices = Манипуляторы
+# Variables:
+# $value (number) - Amount of data being stored
+# $unit (string) - The unit of data being stored (e.g. MB)
+app-basics-data-size = { $value } { $unit }
+show-dir-label =
+ { PLATFORM() ->
+ [macos] Показать в Finder
+ [windows] Открыть папку
+ *[other] Открыть папку
+ }
+environment-variables-title = Переменные среды
+environment-variables-name = Имя
+environment-variables-value = Значение
+experimental-features-title = Экспериментальные возможности
+experimental-features-name = Название
+experimental-features-value = Значение
+modified-key-prefs-title = Важные изменённые настройки
+modified-prefs-name = Имя
+modified-prefs-value = Значение
+user-js-title = Настройки user.js
+user-js-description = В папке вашего профиля находится <a data-l10n-name="user-js-link">файл user.js</a>, в котором содержатся настройки, созданные пользователем, а не { -brand-short-name }.
+locked-key-prefs-title = Важные заблокированные настройки
+locked-prefs-name = Имя
+locked-prefs-value = Значение
+graphics-title = Графика
+graphics-features-title = Возможности
+graphics-diagnostics-title = Диагностика
+graphics-failure-log-title = Лог ошибок
+graphics-gpu1-title = Видеокарта №1
+graphics-gpu2-title = Видеокарта №2
+graphics-decision-log-title = Лог решения
+graphics-crash-guards-title = Возможности, отключённые защитой от падения
+graphics-workarounds-title = Способы обхода
+graphics-device-pixel-ratios = Пиксельные соотношения окна устройства
+# Windowing system in use on Linux (e.g. X11, Wayland).
+graphics-window-protocol = Протокол управления окнами
+# Desktop environment in use on Linux (e.g. GNOME, KDE, XFCE, etc).
+graphics-desktop-environment = Среда рабочего стола
+place-database-title = База данных Places
+place-database-stats = Статистика
+place-database-stats-show = Показать статистику
+place-database-stats-hide = Скрыть статистику
+place-database-stats-entity = Объект
+place-database-stats-count = Количество
+place-database-stats-size-kib = Размер (КиБ)
+place-database-stats-size-perc = Размер (%)
+place-database-stats-efficiency-perc = Эффективность (%)
+place-database-stats-sequentiality-perc = Последовательность (%)
+place-database-integrity = Целостность
+place-database-verify-integrity = Проверить целостность
+a11y-title = Поддержка доступности
+a11y-activated = Активирована
+a11y-force-disabled = Отключение поддержки доступности
+a11y-handler-used = Используемый обработчик Доступности
+a11y-instantiator = Исполняемый файл поддержки доступности
+library-version-title = Версии библиотек
+copy-text-to-clipboard-label = Копировать текст в буфер обмена
+copy-raw-data-to-clipboard-label = Копировать необработанные данные в буфер обмена
+sandbox-title = Песочница
+sandbox-sys-call-log-title = Отклонённые cистемные вызовы
+sandbox-sys-call-index = #
+sandbox-sys-call-age = Секунд назад
+sandbox-sys-call-pid = PID
+sandbox-sys-call-tid = TID
+sandbox-sys-call-proc-type = Тип процесса
+sandbox-sys-call-number = Системный вызов
+sandbox-sys-call-args = Параметры
+troubleshoot-mode-title = Диагностика проблем
+restart-in-troubleshoot-mode-label = Безопасный режим…
+clear-startup-cache-title = Попробуйте очистить кеш запуска
+clear-startup-cache-label = Очистить кеш запуска…
+startup-cache-dialog-title2 = Перезапустить { -brand-short-name } чтобы очистить кеш запуска?
+startup-cache-dialog-body2 = Это действие не изменит ваши настройки и не удалит расширения.
+restart-button-label = Перезапустить
+
+## Media titles
+
+audio-backend = Звуковая подсистема
+max-audio-channels = Максимальное число каналов
+sample-rate = Предпочтительная частота дискретизации
+roundtrip-latency = Круговая задержка (стандартное отклонение)
+media-title = Медиа
+media-output-devices-title = Устройства вывода
+media-input-devices-title = Устройства ввода
+media-device-name = Имя
+media-device-group = Группа
+media-device-vendor = Производитель
+media-device-state = Состояние
+media-device-preferred = Предпочитаемо
+media-device-format = Формат
+media-device-channels = Каналы
+media-device-rate = Частота
+media-device-latency = Задержка
+media-capabilities-title = Возможности медиа
+media-codec-support-info = Информация о поддержке кодеков
+# List all the entries of the database.
+media-capabilities-enumerate = Вывести записи из базы данных
+
+## Codec support table
+
+media-codec-support-sw-decoding = Программное декодирование
+media-codec-support-hw-decoding = Аппаратное декодирование
+media-codec-support-codec-name = Название кодека
+media-codec-support-supported = Поддерживается
+media-codec-support-unsupported = Не поддерживается
+media-codec-support-error = Информация о поддержке кодека недоступна. Попробуйте снова после проигрывания медиафайла.
+media-codec-support-lack-of-extension = Установка расширений
+
+## Media Content Decryption Modules (CDM)
+## See EME Spec for more explanation for following technical terms
+## https://w3c.github.io/encrypted-media/
+
+media-content-decryption-modules-title = Информация о модулях расшифровки содержимого
+media-key-system-name = Имя ключевой системы
+media-video-robustness = Надёжность видео
+media-audio-robustness = Надёжность аудио
+media-cdm-capabilities = Возможности
+# Clear Lead isn't defined in the spec, which means the the first few seconds
+# are not encrypted. It allows playback to start without having to wait for
+# license response, improving video start time and user experience.
+media-cdm-clear-lead = Незашифрованное начало
+
+##
+
+intl-title = Интернационализация и Локализация
+intl-app-title = Настройки приложения
+intl-locales-requested = Запрошенные языки
+intl-locales-available = Доступные языки
+intl-locales-supported = Языки приложения
+intl-locales-default = Язык по умолчанию
+intl-os-title = Операционная система
+intl-os-prefs-system-locales = Языки системы
+intl-regional-prefs = Региональные настройки
+
+## Remote Debugging
+##
+## The Firefox remote protocol provides low-level debugging interfaces
+## used to inspect state and control execution of documents,
+## browser instrumentation, user interaction simulation,
+## and for subscribing to browser-internal events.
+##
+## See also https://firefox-source-docs.mozilla.org/remote/
+
+remote-debugging-title = Удалённая отладка (Протокол Chromium)
+remote-debugging-accepting-connections = Входящие соединения
+remote-debugging-url = URL
+
+##
+
+# Variables
+# $days (Integer) - Number of days of crashes to log
+report-crash-for-days =
+ { $days ->
+ [one] Сообщения о падениях за последний { $days } день
+ [few] Сообщения о падениях за последние { $days } дня
+ *[many] Сообщения о падениях за последние { $days } дней
+ }
+# Variables
+# $minutes (integer) - Number of minutes since crash
+crashes-time-minutes =
+ { $minutes ->
+ [one] { $minutes } минуту назад
+ [few] { $minutes } минуты назад
+ *[many] { $minutes } минут назад
+ }
+# Variables
+# $hours (integer) - Number of hours since crash
+crashes-time-hours =
+ { $hours ->
+ [one] { $hours } час назад
+ [few] { $hours } часа назад
+ *[many] { $hours } часов назад
+ }
+# Variables
+# $days (integer) - Number of days since crash
+crashes-time-days =
+ { $days ->
+ [one] { $days } день назад
+ [few] { $days } дня назад
+ *[many] { $days } дней назад
+ }
+# Variables
+# $reports (integer) - Number of pending reports
+pending-reports =
+ { $reports ->
+ [one] Все сообщения о падениях (включая { $reports } ожидающее отправки сообщение в заданном диапазоне времени)
+ [few] Все сообщения о падениях (включая { $reports } ожидающих отправки сообщения в заданном диапазоне времени)
+ *[many] Все сообщения о падениях (включая { $reports } ожидающих отправки сообщений в заданном диапазоне времени)
+ }
+raw-data-copied = Необработанные данные скопированы в буфер обмена
+text-copied = Текст скопирован в буфер обмена
+
+## The verb "blocked" here refers to a graphics feature such as "Direct2D" or "OpenGL layers".
+
+blocked-driver = Заблокировано для вашей версии драйвера видеокарты.
+blocked-gfx-card = Заблокировано для вашей видеокарты из-за нерешённых проблем с драйвером.
+blocked-os-version = Заблокировано для вашей версии операционной системы.
+blocked-mismatched-version = Заблокировано из-за несовпадения версии вашего графического драйвера в реестре и в DLL.
+# Variables
+# $driverVersion - The graphics driver version string
+try-newer-driver = Заблокировано для вашей версии драйвера видеокарты. Попробуйте обновить ваш драйвер видеокарты до версии { $driverVersion } или более новой.
+# "ClearType" is a proper noun and should not be translated. Feel free to leave English strings if
+# there are no good translations, these are only used in about:support
+clear-type-parameters = Параметры ClearType
+compositing = Композитинг
+hardware-h264 = Аппаратное декодирование H264
+main-thread-no-omtc = главный поток, без OMTC
+yes = Да
+no = Нет
+unknown = Неизвестно
+virtual-monitor-disp = Виртуальный монитор
+
+## The following strings indicate if an API key has been found.
+## In some development versions, it's expected for some API keys that they are
+## not found.
+
+found = Найден
+missing = Отсутствует
+gpu-process-pid = GPUProcessPid
+gpu-process = GPUProcess
+gpu-description = Описание
+gpu-vendor-id = Код производителя
+gpu-device-id = Код устройства
+gpu-subsys-id = Код подсистемы
+gpu-drivers = Драйвера
+gpu-ram = Видеопамять
+gpu-driver-vendor = Поставщик драйвера
+gpu-driver-version = Версия драйвера
+gpu-driver-date = Дата разработки драйвера
+gpu-active = Активна
+webgl1-wsiinfo = WebGL 1 - Информация WSI драйвера
+webgl1-renderer = WebGL 1 - Визуализатор драйвера
+webgl1-version = WebGL 1 - Версия драйвера
+webgl1-driver-extensions = WebGL 1 - Расширения драйвера
+webgl1-extensions = WebGL 1 - Расширения
+webgl2-wsiinfo = WebGL 2 - Информация WSI драйвера
+webgl2-renderer = WebGL 2 - Визуализатор драйвера
+webgl2-version = WebGL 2 - Версия драйвера
+webgl2-driver-extensions = WebGL 2 - Расширения драйвера
+webgl2-extensions = WebGL 2 - Расширения
+webgpu-default-adapter = Адаптер WebGPU по умолчанию
+webgpu-fallback-adapter = Резервный адаптер WebGPU
+# Variables
+# $bugNumber (string) - Bug number on Bugzilla
+support-blocklisted-bug = Занесено в чёрный список из-за известных проблем: <a data-l10n-name="bug-link">баг { $bugNumber }</a>
+# Variables
+# $failureCode (string) - String that can be searched in the source tree.
+unknown-failure = Заблокировано; код ошибки { $failureCode }
+d3d11layers-crash-guard = Композитор D3D11
+glcontext-crash-guard = OpenGL
+wmfvpxvideo-crash-guard = Видеодекодер WMF VPX
+reset-on-next-restart = Сбросить при следующем перезапуске
+gpu-process-kill-button = Завершить процесс видеокарты
+gpu-device-reset = Сбросить устройство
+gpu-device-reset-button = Выполнить сброс устройства
+uses-tiling = Использует тайлинг
+content-uses-tiling = Использует тайлинг (контент)
+off-main-thread-paint-enabled = Прорисовка вне основного потока активирована
+off-main-thread-paint-worker-count = Число воркеров отрисовки вне основного потока
+target-frame-rate = Целевая частота кадров
+min-lib-versions = Ожидаемая минимальная версия
+loaded-lib-versions = Используемая версия
+has-seccomp-bpf = Seccomp-BPF (Фильтрация системных вызовов)
+has-seccomp-tsync = Синхронизация потока Seccomp
+has-user-namespaces = Пользовательские пространства имён
+has-privileged-user-namespaces = Пользовательские пространства имён для привилегированных процессов
+can-sandbox-content = Песочница для процесса контента
+can-sandbox-media = Песочница для медиаплагина
+content-sandbox-level = Степень изоляции процесса контента
+effective-content-sandbox-level = Эффективная степень изоляции процесса контента
+content-win32k-lockdown-state = Состояние блокировки Win32k для процесса содержимого
+support-sandbox-gpu-level = Уровень песочницы процесса GPU
+sandbox-proc-type-content = контент
+sandbox-proc-type-file = содержимое файла
+sandbox-proc-type-media-plugin = медиаплагин
+sandbox-proc-type-data-decoder = декодер данных
+startup-cache-title = Кеш запуска
+startup-cache-disk-cache-path = Путь к дисковому кешу
+startup-cache-ignore-disk-cache = Игнорировать дисковый кеш
+startup-cache-found-disk-cache-on-init = При инициализации обнаружен дисковый кеш
+startup-cache-wrote-to-disk-cache = Записано в дисковый кеш
+launcher-process-status-0 = Включён
+launcher-process-status-1 = Отключён из-за сбоя
+launcher-process-status-2 = Принудительно отключён
+launcher-process-status-unknown = Статус неизвестен
+# Variables
+# $remoteWindows (integer) - Number of remote windows
+# $totalWindows (integer) - Number of total windows
+multi-process-windows = { $remoteWindows }/{ $totalWindows }
+# Variables
+# $fissionWindows (integer) - Number of remote windows
+# $totalWindows (integer) - Number of total windows
+fission-windows = { $fissionWindows }/{ $totalWindows }
+fission-status-experiment-control = Отключены экспериментом
+fission-status-experiment-treatment = Включены экспериментом
+fission-status-disabled-by-e10s-env = Отключены средой
+fission-status-enabled-by-env = Включены средой
+fission-status-disabled-by-env = Отключены средой
+fission-status-enabled-by-default = Включены по умолчанию
+fission-status-disabled-by-default = Отключены по умолчанию
+fission-status-enabled-by-user-pref = Включены пользователем
+fission-status-disabled-by-user-pref = Отключены пользователем
+fission-status-disabled-by-e10s-other = E10s отключено
+fission-status-enabled-by-rollout = Включены через поэтапное развертывание
+async-pan-zoom = Асинхронное панорамирование/зум
+apz-none = нет
+wheel-enabled = включён ввод колесиком
+touch-enabled = сенсорный ввод включён
+drag-enabled = перетаскивание полосы прокрутки включено
+keyboard-enabled = клавиатура включена
+autoscroll-enabled = автопрокрутка включена
+zooming-enabled = плавное масштабирование жестами включено
+
+## Variables
+## $preferenceKey (string) - String ID of preference
+
+wheel-warning = асинхронный ввод колесиком отключён из-за неподдерживаемой настройки: { $preferenceKey }
+touch-warning = асинхронный сенсорный ввод отключён из-за неподдерживаемой настройки: { $preferenceKey }
+
+## Strings representing the status of the Enterprise Policies engine.
+
+policies-inactive = Неактивны
+policies-active = Активны
+policies-error = Ошибка
+
+## Printing section
+
+support-printing-title = Печать
+support-printing-troubleshoot = Решение проблем
+support-printing-clear-settings-button = Удалить сохранённые настройки печати
+support-printing-modified-settings = Изменённые настройки печати
+support-printing-prefs-name = Имя
+support-printing-prefs-value = Значение
+
+## Normandy sections
+
+support-remote-experiments-title = Дистанционные эксперименты
+support-remote-experiments-name = Название
+support-remote-experiments-branch = Ветка экспериментов
+support-remote-experiments-see-about-studies = Ознакомьтесь со страницей <a data-l10n-name="support-about-studies-link">about:studies</a> для получения информации о том, как отключить отдельные эксперименты или запретить { -brand-short-name } проводить эксперименты подобного вида в будущем.
+support-remote-features-title = Дистанционно распространяемые функции
+support-remote-features-name = Имя
+support-remote-features-status = Статус
+
+## Pointing devices
+
+pointing-device-mouse = Мышь
+pointing-device-touchscreen = Сенсорный экран
+pointing-device-pen-digitizer = Графический планшет
+pointing-device-none = Манипуляторы отсутствуют
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutTelemetry.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutTelemetry.ftl
new file mode 100644
index 0000000000..abb7c66a15
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutTelemetry.ftl
@@ -0,0 +1,137 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+about-telemetry-ping-data-source = Источник данных пинга:
+about-telemetry-show-current-data = Текущие данные
+about-telemetry-show-archived-ping-data = Данные архивированного пинга
+about-telemetry-show-subsession-data = Отображать данные подсессии
+about-telemetry-choose-ping = Выберите пинг:
+about-telemetry-archive-ping-type = Тип пинга
+about-telemetry-archive-ping-header = Пинг
+about-telemetry-option-group-today = Сегодня
+about-telemetry-option-group-yesterday = Вчера
+about-telemetry-option-group-older = Ранее
+about-telemetry-previous-ping = <<
+about-telemetry-next-ping = >>
+about-telemetry-page-title = Данные телеметрии
+about-telemetry-current-store = Текущее хранилище:
+about-telemetry-more-information = Ищете больше информации?
+about-telemetry-firefox-data-doc = <a data-l10n-name="data-doc-link">Документация по данным Firefox</a> содержит руководства по работе с нашими инструментами сбора данных.
+about-telemetry-telemetry-client-doc = <a data-l10n-name="client-doc-link">Документация клиента телеметрии Firefox</a> содержит определения концепций, документацию по API и справку по данным.
+about-telemetry-telemetry-dashboard = <a data-l10n-name="dashboard-link">Панели Телеметрии</a> позволяют вам визуализировать данные, полученные Mozilla через Телеметрию.
+about-telemetry-telemetry-probe-dictionary = <a data-l10n-name="probe-dictionary-link">Словарь Зондов</a> содержит сведения о зондах и описания зондов, собранные Телеметрией.
+about-telemetry-show-in-Firefox-json-viewer = Открыть в просмотрщике JSON
+about-telemetry-home-section = Главная
+about-telemetry-general-data-section = Общие данные
+about-telemetry-environment-data-section = Данные окружения
+about-telemetry-session-info-section = Сведения о сессии
+about-telemetry-scalar-section = Скаляры
+about-telemetry-keyed-scalar-section = Скаляры ключей
+about-telemetry-histograms-section = Гистограммы
+about-telemetry-keyed-histogram-section = Гистограммы ключей
+about-telemetry-events-section = События
+about-telemetry-simple-measurements-section = Простые измерения
+about-telemetry-slow-sql-section = Медленные SQL-инструкции
+about-telemetry-addon-details-section = Сведения о дополнении
+about-telemetry-late-writes-section = Поздние записи
+about-telemetry-raw-payload-section = Необработанная нагрузка
+about-telemetry-raw = Необработанный JSON
+about-telemetry-full-sql-warning = ПРИМЕЧАНИЕ: Включён медленный режим отладки SQL. Внизу могут быть показаны полные строки SQL, но в телеметрию они отправлены не будут.
+about-telemetry-fetch-stack-symbols = Загрузить имена функций для стеков
+about-telemetry-hide-stack-symbols = Показать сырые данные стека
+# Selects the correct release version
+# Variables:
+# $channel (string) - Represents the corresponding release data string
+about-telemetry-data-type =
+ { $channel ->
+ [release] релизной
+ *[prerelease] предварительной
+ }
+# Selects the correct upload string
+# Variables:
+# $uploadcase (string) - Represents a corresponding upload string
+about-telemetry-upload-type =
+ { $uploadcase ->
+ [enabled] включена
+ *[disabled] отключена
+ }
+# Example Output: 1 sample, average = 0, sum = 0
+# Variables:
+# $sampleCount (number) - Amount of histogram samples
+# $prettyAverage (number) - Average of histogram samples
+# $sum (number) - Sum of histogram samples
+about-telemetry-histogram-stats =
+ { $sampleCount ->
+ [one] { $sampleCount } замер, среднее = { $prettyAverage }, сумма = { $sum }
+ [few] { $sampleCount } замера, среднее = { $prettyAverage }, сумма = { $sum }
+ *[many] { $sampleCount } замеров, среднее = { $prettyAverage }, сумма = { $sum }
+ }
+# Variables:
+# $telemetryServerOwner (string) - the value of the toolkit.telemetry.server_owner preference. Typically "Mozilla"
+about-telemetry-page-subtitle = На этой странице показаны сведения о производительности, аппаратном обеспечении, использовании и настройках, собранные Телеметрией. Эта информация будет отправлена в { $telemetryServerOwner }, чтобы помочь улучшить { -brand-full-name }.
+about-telemetry-settings-explanation = Настроен сбор телеметрии на { about-telemetry-data-type } версии Firefox и её отправка <a data-l10n-name="upload-link">{ about-telemetry-upload-type }</a>.
+# Variables:
+# $name (string) - Ping name, e.g. “saved-session”
+# $timestamp (string) - Ping localized timestamp, e.g. “2017/07/08 10:40:46”
+about-telemetry-ping-details = Каждая часть информации отправляется посредством «<a data-l10n-name="ping-link">пингов</a>». Вы смотрите на пинг { $name }, { $timestamp }.
+about-telemetry-data-details-current = Каждая часть информации отправляется посредством «<a data-l10n-name="ping-link">пингов</a>». Вы смотрите на текущие данные.
+# string used as a placeholder for the search field
+# More info about it can be found here:
+# https://firefox-source-docs.mozilla.org/toolkit/components/telemetry/telemetry/data/main-ping.html
+# Variables:
+# $selectedTitle (string) - The section name from the structure of the ping.
+about-telemetry-filter-placeholder =
+ .placeholder = Искать в { $selectedTitle }
+about-telemetry-filter-all-placeholder =
+ .placeholder = Искать во всех разделах
+# Variables:
+# $searchTerms (string) - The searched terms
+about-telemetry-results-for-search = Результаты для «{ $searchTerms }»
+# More info about it can be found here: https://firefox-source-docs.mozilla.org/toolkit/components/telemetry/telemetry/data/main-ping.html
+# Variables:
+# $sectionName (string) - The section name from the structure of the ping.
+# $currentSearchText (string) - The current text in the search input
+about-telemetry-no-search-results = Извините! В { $sectionName } не найдено результатов для «{ $currentSearchText }»
+# Variables:
+# $searchTerms (string) - The searched terms
+about-telemetry-no-search-results-all = Извините! Ни в одном разделе не найдено результатов для «{ $searchTerms }»
+# This message is displayed when a section is empty.
+# Variables:
+# $sectionName (string) - Is replaced by the section name.
+about-telemetry-no-data-to-display = Извините! В настоящее время нет данных в «{ $sectionName }»
+# used as a tooltip for the “current” ping title in the sidebar
+about-telemetry-current-data-sidebar = текущие данные
+# used in the “Ping Type” select
+about-telemetry-telemetry-ping-type-all = все
+# button label to copy the histogram
+about-telemetry-histogram-copy = Копировать
+# these strings are used in the “Slow SQL Statements” section
+about-telemetry-slow-sql-main = Медленные SQL-инструкции в главном потоке
+about-telemetry-slow-sql-other = Медленные SQL-инструкции во вспомогательных потоках
+about-telemetry-slow-sql-hits = Попадания
+about-telemetry-slow-sql-average = Среднее время (мс)
+about-telemetry-slow-sql-statement = Инструкция
+# these strings are used in the “Add-on Details” section
+about-telemetry-addon-table-id = ID дополнения
+about-telemetry-addon-table-details = Сведения
+# Variables:
+# $addonProvider (string) - The name of an Add-on Provider (e.g. “XPI”, “Plugin”)
+about-telemetry-addon-provider = Провайдер { $addonProvider }
+about-telemetry-keys-header = Свойство
+about-telemetry-names-header = Имя
+about-telemetry-values-header = Значение
+# Variables:
+# $lateWriteCount (number) - The number of the late writes
+about-telemetry-late-writes-title = Поздняя запись #{ $lateWriteCount }
+about-telemetry-stack-title = Стек:
+about-telemetry-memory-map-title = Карта памяти:
+about-telemetry-error-fetching-symbols = При попытке загрузки символов произошла ошибка. Проверьте, что вы подсоединены к Интернету, и попробуйте снова.
+about-telemetry-time-stamp-header = временная метка
+about-telemetry-category-header = категория
+about-telemetry-method-header = метод
+about-telemetry-object-header = объект
+about-telemetry-extra-header = экстра
+# Variables:
+# $process (string) - Type of process in subsection headers ( e.g. "content", "parent" )
+about-telemetry-process = Процесс { $process }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutThirdParty.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutThirdParty.ftl
new file mode 100644
index 0000000000..3a86a0296f
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutThirdParty.ftl
@@ -0,0 +1,72 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+third-party-page-title = Информация о сторонних модулях
+third-party-section-title = Список сторонних модулей в { -brand-short-name }
+third-party-intro = На этой странице отображены сторонние модули, которые были внедрены в ваш { -brand-short-name }. Любой модуль, не подписанный Microsoft или { -vendor-short-name }, считается сторонним.
+third-party-message-empty = Сторонних модулей не обнаружено.
+third-party-message-no-duration = Не записано
+third-party-detail-version = Версия файла
+third-party-detail-vendor = Информация производителя
+third-party-detail-occurrences = Вхождения
+ .title = Сколько раз был загружен этот модуль.
+third-party-detail-duration = Среднее время блокировки (мс)
+ .title = Как долго этот модуль блокировал это приложение.
+third-party-detail-app = Приложение
+third-party-detail-publisher = Издатель
+third-party-th-process = Процесс
+third-party-th-duration = Продолжительность загрузки (мс)
+third-party-th-status = Состояние
+third-party-tag-ime = IME
+ .title = Данный тип модуля загружается, когда вы используете сторонний IME.
+third-party-tag-shellex = Расширение оболочки
+ .title = Данный тип модуля загружается, когда вы открываете системное диалоговое окно работы с файлами.
+third-party-tag-background = Фоновый режим
+ .title = Данный модуль не блокирует приложение, так как он загружается в фоновом режиме.
+third-party-icon-unsigned =
+ .title = Этот модуль не подписан
+ .alt = Этот модуль не подписан
+third-party-icon-warning =
+ .title = Данный модуль вызвал падение в коде { -brand-short-name }
+ .alt = Данный модуль вызвал падение в коде { -brand-short-name }
+third-party-status-loaded = Загружен
+third-party-status-blocked = Заблокирован
+third-party-status-redirected = Перенаправлен
+third-party-button-copy-to-clipboard = Копировать необработанные данные в буфер обмена
+third-party-loading-data =
+ .alt = Загрузка системной информации…
+ .title = Загрузка системной информации…
+third-party-button-reload = Перезагрузить с системной информацией
+ .title = Перезагрузить с системной информацией
+third-party-button-open =
+ .title = Открыть расположение файла…
+third-party-button-to-block =
+ .title = Заблокировать этот модуль
+ .aria-label = Заблокировать этот модуль
+third-party-button-to-unblock =
+ .title = В настоящее время заблокирован. Щёлкните, чтобы разблокировать его.
+ .aria-label = В настоящее время заблокирован. Щёлкните, чтобы разблокировать его.
+third-party-button-to-unblock-disabled =
+ .title = В настоящее время отмечен как заблокированный, хотя список блокировки отключён для этого запуска { -brand-short-name }. Щёлкните, чтобы разблокировать его.
+ .aria-label = В настоящее время отмечен как заблокированный, хотя список блокировки отключён для этого запуска { -brand-short-name }. Щёлкните, чтобы разблокировать его.
+third-party-button-to-block-module = Заблокировать этот модуль
+ .title = Заблокировать этот модуль
+ .aria-label = Заблокировать этот модуль
+third-party-button-to-unblock-module = Разблокировать этот модуль
+ .title = В настоящее время заблокирован. Щёлкните, чтобы разблокировать его.
+ .aria-label = В настоящее время заблокирован. Щёлкните, чтобы разблокировать его.
+third-party-button-to-unblock-module-disabled = Разблокировать этот модуль (черный список в настоящее время отключен)
+ .title = В настоящее время отмечен как заблокированный, хотя для этого запуска { -brand-short-name } черный список отключен. Щёлкните, чтобы разблокировать его.
+ .aria-label = В настоящее время отмечен как заблокированный, хотя для этого запуска { -brand-short-name } черный список отключен. Щёлкните, чтобы разблокировать его.
+third-party-button-expand =
+ .title = Показать подробную информацию
+third-party-button-collapse =
+ .title = Скрыть подробную информацию
+third-party-blocking-requires-restart = Чтобы заблокировать сторонний модуль, { -brand-short-name } необходимо перезапустить.
+third-party-should-restart-title = Перезапуск { -brand-short-name }
+third-party-restart-now = Перезапустить сейчас
+third-party-restart-later = Перезапустить позже
+third-party-blocked-by-builtin =
+ .title = Заблокирован { -brand-short-name }
+ .alt = Заблокирован { -brand-short-name }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWebauthn.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWebauthn.ftl
new file mode 100644
index 0000000000..e517739134
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWebauthn.ftl
@@ -0,0 +1,131 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Localization for about:webauthn, a security token management page
+
+# Page title
+# 'WebAuthn' is a protocol name and should not be translated
+about-webauthn-page-title = Об WebAuthn
+
+## Section titles
+
+about-webauthn-info-section-title = Информация об устройстве
+about-webauthn-info-subsection-title = Информация об Authenticator
+about-webauthn-options-subsection-title = Параметры Authenticator
+about-webauthn-pin-section-title = Управление PIN-кодами
+about-webauthn-credential-management-section-title = Управление учётными данными
+about-webauthn-pin-required-section-title = Требуется PIN-код
+about-webauthn-confirm-deletion-section-title = Подтвердить удаление
+
+## Info field texts
+
+about-webauthn-text-connect-device = Пожалуйста, подключите токен безопасности.
+# If multiple devices are plugged in, they will blink and we are asking the user to select one by touching the device they want.
+about-webauthn-text-select-device = Пожалуйста, выберите желаемый токен безопасности, коснувшись устройства.
+# CTAP2 refers to Client to Authenticator Protocol version 2
+about-webauthn-text-non-ctap2-device = Невозможно управлять параметрами, поскольку ваш токен безопасности не поддерживает CTAP2.
+about-webauthn-text-not-available = Недоступно на этой платформе.
+
+## Results label
+
+about-webauthn-results-success = Готово!
+about-webauthn-results-general-error = Ошибка!
+# Variables:
+# $retriesLeft (Number): number of tries left
+about-webauthn-results-pin-invalid-error =
+ { $retriesLeft ->
+ [0] Ошибка: неправильный PIN-код. Попробуйте ещё раз.
+ [one] Ошибка: неправильный PIN-код. Попробуйте ещё раз. У вас осталось { $retriesLeft } попытка.
+ [few] Ошибка: неправильный PIN-код. Попробуйте ещё раз. У вас осталось { $retriesLeft } попытки.
+ *[many] Ошибка: неправильный PIN-код. Попробуйте ещё раз. У вас осталось { $retriesLeft } попыток.
+ }
+about-webauthn-results-pin-blocked-error = Ошибка: попыток не осталось, и ваше устройство заблокировано, поскольку слишком много раз был указан неправильный PIN-код. Необходимо сбросить устройство.
+about-webauthn-results-pin-too-short-error = Ошибка: указанный PIN-код слишком короткий.
+about-webauthn-results-pin-too-long-error = Ошибка: указанный PIN-код слишком длинный.
+about-webauthn-results-pin-auth-blocked-error = Ошибка: было слишком много неудачных попыток подряд, и аутентификация по PIN-коду временно заблокирована. Ваше устройство необходимо отключить и снова включить (вынуть и снова вставить).
+about-webauthn-results-cancelled-by-user-error = Ошибка: операция отменена пользователем.
+
+## Labels
+
+about-webauthn-new-pin-label = Новый PIN-код:
+about-webauthn-repeat-pin-label = Повторите новый PIN-код:
+about-webauthn-current-pin-label = Текущий PIN-код:
+about-webauthn-pin-required-label = Пожалуйста, введите свой PIN-код:
+about-webauthn-credential-list-subsection-title = Параметры входа:
+about-webauthn-credential-list-empty = На устройстве не найдены учётные данные.
+about-webauthn-confirm-deletion-label = Вы собираетесь удалить:
+
+## Buttons
+
+about-webauthn-current-set-pin-button = Установить PIN-код
+about-webauthn-current-change-pin-button = Изменить PIN-код
+# List is a verb, as in "Show list of credentials"
+about-webauthn-list-credentials-button = Показать список учётных данных
+about-webauthn-cancel-button = Отмена
+about-webauthn-send-pin-button = OK
+about-webauthn-delete-button = Удалить
+
+## Authenticator options fields
+## Option fields correspond to the CTAP2 option IDs and definitions found in https://fidoalliance.org/specs/fido-v2.1-ps-20210615/fido-client-to-authenticator-protocol-v2.1-ps-20210615.html#option-id
+
+about-webauthn-auth-option-uv = Проверка пользователя
+about-webauthn-auth-option-up = Присутствие пользователя
+about-webauthn-auth-option-clientpin = PIN-код клиента
+about-webauthn-auth-option-rk = Резидентский ключ
+about-webauthn-auth-option-plat = Устройство платформы
+# pinUvAuthToken should not be translated.
+about-webauthn-auth-option-pinuvauthtoken = Разрешения для команд (pinUvAuthToken)
+# MakeCredential and GetAssertion should not be translated.
+about-webauthn-auth-option-nomcgapermissionswithclientpin = Нет разрешений MakeCredential/GetAssertion с PIN-кодом клиента
+about-webauthn-auth-option-largeblobs = Большие blobs
+about-webauthn-auth-option-ep = Аттестация предприятия
+about-webauthn-auth-option-bioenroll = Биометрическая регистрация
+# FIDO_2_1_PRE should not be translated.
+about-webauthn-auth-option-userverificationmgmtpreview = Прототип биометрической регистрации (FIDO_2_1_PRE)
+about-webauthn-auth-option-uvbioenroll = Разрешение на регистрацию биометрических данных
+about-webauthn-auth-option-authnrcfg = Конфигурация Authenticator
+about-webauthn-auth-option-uvacfg = Разрешение конфигурации Authenticator
+about-webauthn-auth-option-credmgmt = Управление учётными данными
+about-webauthn-auth-option-credentialmgmtpreview = Прототип управления учётными данными
+about-webauthn-auth-option-setminpinlength = Установить минимальную длину PIN-кода
+# MakeCredential should not be translated.
+about-webauthn-auth-option-makecreduvnotrqd = MakeCredential без проверки пользователя
+about-webauthn-auth-option-alwaysuv = Всегда требовать проверки пользователя
+# Shows when boolean value for an option is True. True should not be translated.
+about-webauthn-auth-option-true = Истина
+# Shows when boolean value of an option is False. False should not be translated.
+about-webauthn-auth-option-false = Ложь
+# If the value is missing (null), it means a certain feature is not supported.
+about-webauthn-auth-option-null = Не поддерживается
+
+## Authenticator info fields
+## Info fields correspond to the CTAP2 authenticatorGetInfo field member name and definitions found in https://fidoalliance.org/specs/fido-v2.1-ps-20210615/fido-client-to-authenticator-protocol-v2.1-ps-20210615.html#authenticatorGetInfo
+
+about-webauthn-auth-info-vendor-prototype-config-commands = Команды конфигурации прототипа поставщика
+about-webauthn-auth-info-remaining-discoverable-credentials = Остальные доступные для обнаружения учётные данные
+about-webauthn-auth-info-certifications = Сертификации
+about-webauthn-auth-info-uv-modality = Способ проверки пользователя
+about-webauthn-auth-info-preferred-platform-uv-attempts = Попытки проверки предпочтительного пользователя платформы
+about-webauthn-auth-info-max-rpids-for-set-min-pin-length = Максимальное количество ID проверяющей стороны для установки минимальной длины PIN-кода
+about-webauthn-auth-info-max-cred-blob-length = Максимальная длина blob учётных данных
+about-webauthn-auth-info-firmware-version = Версия прошивки
+about-webauthn-auth-info-min-pin-length = Минимальная длина PIN-кода
+about-webauthn-auth-info-force-pin-change = Принудительное изменение PIN-кода
+about-webauthn-auth-info-max-ser-large-blob-array = Максимальный размер большого массива blob-объектов
+about-webauthn-auth-info-algorithms = Алгоритмы
+about-webauthn-auth-info-transports = Транспорты
+about-webauthn-auth-info-max-credential-id-length = Максимальная длина ID учётных данных
+about-webauthn-auth-info-max-credential-count-in-list = Максимальное количество учётных данных в списке
+about-webauthn-auth-info-pin-protocols = PIN-протоколы
+about-webauthn-auth-info-max-msg-size = Максимальный размер сообщения
+# AAGUID should not be translated.
+about-webauthn-auth-info-aaguid = AAGUID
+about-webauthn-auth-info-extensions = Расширения
+about-webauthn-auth-info-versions = Версии
+# Shows when boolean value for an info field is True. True should not be translated.
+about-webauthn-auth-info-true = Истина
+# Shows when boolean value for an info field is False. False should not be translated.
+about-webauthn-auth-info-false = Ложь
+about-webauthn-auth-info-null = Не поддерживается
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWebrtc.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWebrtc.ftl
new file mode 100644
index 0000000000..d128dcd3f2
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWebrtc.ftl
@@ -0,0 +1,332 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Localization for about:webrtc, a troubleshooting and diagnostic page
+### for WebRTC calls. See https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API.
+
+# The text "WebRTC" is a proper noun and should not be translated.
+about-webrtc-document-title = Свойства WebRTC
+# "about:webrtc" is a internal browser URL and should not be
+# translated. This string is used as a title for a file save dialog box.
+about-webrtc-save-page-dialog-title = сохранить about:webrtc как
+
+## These labels are for a disclosure which contains the information for closed PeerConnection sections
+
+about-webrtc-closed-peerconnection-disclosure-show-msg = Показать закрытые PeerConnections
+about-webrtc-closed-peerconnection-disclosure-hide-msg = Скрыть закрытые PeerConnections
+
+## AEC is an abbreviation for Acoustic Echo Cancellation.
+
+about-webrtc-aec-logging-msg-label = Запись AEC
+about-webrtc-aec-logging-off-state-label = Начать запись AEC
+about-webrtc-aec-logging-on-state-label = Остановить запись AEC
+about-webrtc-aec-logging-on-state-msg = Запись AEC ведётся (поговорите с абонентом несколько минут, а затем остановите захват)
+about-webrtc-aec-logging-toggled-on-state-msg = Запись AEC ведётся (поговорите с абонентом несколько минут, а затем остановите захват)
+about-webrtc-aec-logging-unavailable-sandbox = Для экспорта журналов AEC необходимо установить переменную среды MOZ_DISABLE_CONTENT_SANDBOX=1. Устанавливайте эту переменную только в том случае, если понимаете возможные риски.
+# Variables:
+# $path (String) - The path to which the aec log file is saved.
+about-webrtc-aec-logging-toggled-off-state-msg = Файлы журнала захвата можно найти в: { $path }
+
+##
+
+# The autorefresh checkbox causes a stats section to autorefresh its content when checked
+about-webrtc-auto-refresh-label = Автообновление
+# Determines the default state of the Auto Refresh check boxes
+about-webrtc-auto-refresh-default-label = Автообновление по умолчанию
+# A button which forces a refresh of displayed statistics
+about-webrtc-force-refresh-button = Обновить
+# "PeerConnection" is a proper noun associated with the WebRTC module. "ID" is
+# an abbreviation for Identifier. This string should not normally be translated
+# and is used as a data label.
+about-webrtc-peerconnection-id-label = PeerConnection ID:
+# The number of DataChannels that a PeerConnection has opened
+about-webrtc-data-channels-opened-label = Открытые каналы данных:
+# The number of once open DataChannels that a PeerConnection has closed
+about-webrtc-data-channels-closed-label = Закрытые каналы данных:
+
+## "SDP" is an abbreviation for Session Description Protocol, an IETF standard.
+## See http://wikipedia.org/wiki/Session_Description_Protocol
+
+about-webrtc-sdp-heading = SDP
+about-webrtc-local-sdp-heading = Локальный SDP
+about-webrtc-local-sdp-heading-offer = Локальный SDP (Попытка)
+about-webrtc-local-sdp-heading-answer = Локальный SDP (Ответ)
+about-webrtc-remote-sdp-heading = Удалённый SDP
+about-webrtc-remote-sdp-heading-offer = Удалённый SDP (Попытка)
+about-webrtc-remote-sdp-heading-answer = Удалённый SDP (Ответ)
+about-webrtc-sdp-history-heading = История SDP
+about-webrtc-sdp-parsing-errors-heading = Ошибки разбора SDP
+
+##
+
+# "RTP" is an abbreviation for the Real-time Transport Protocol, an IETF
+# specification, and should not normally be translated. "Stats" is an
+# abbreviation for Statistics.
+about-webrtc-rtp-stats-heading = Статистика RTP
+
+## "ICE" is an abbreviation for Interactive Connectivity Establishment, which
+## is an IETF protocol, and should not normally be translated.
+
+about-webrtc-ice-state = Состояние ICE
+# "Stats" is an abbreviation for Statistics.
+about-webrtc-ice-stats-heading = Статистика ICE
+about-webrtc-ice-restart-count-label = Перезапуски ICE:
+about-webrtc-ice-rollback-count-label = Откаты ICE:
+about-webrtc-ice-pair-bytes-sent = Байтов отправлено:
+about-webrtc-ice-pair-bytes-received = Байтов получено:
+about-webrtc-ice-component-id = ID компонента
+
+## These adjectives are used to label a line of statistics collected for a peer
+## connection. The data represents either the local or remote end of the
+## connection.
+
+about-webrtc-type-local = Локальный
+about-webrtc-type-remote = Удалённый
+
+##
+
+# This adjective is used to label a table column. Cells in this column contain
+# the localized javascript string representation of "true" or are left blank.
+about-webrtc-nominated = Предложено
+# This adjective is used to label a table column. Cells in this column contain
+# the localized javascript string representation of "true" or are left blank.
+# This represents an attribute of an ICE candidate.
+about-webrtc-selected = Выбрано
+about-webrtc-save-page-label = Сохранить страницу
+about-webrtc-debug-mode-msg-label = Режим отладки
+about-webrtc-debug-mode-off-state-label = Войти в режим отладки
+about-webrtc-debug-mode-on-state-label = Выйти из режима отладки
+about-webrtc-enable-logging-label = Включить предварительную настройку журнала WebRTC
+about-webrtc-stats-heading = Статистика сессии
+about-webrtc-peerconnections-section-heading = Статистика RTCPeerConnection
+about-webrtc-peerconnections-section-show-msg = Показать статистику RTCPeerConnection
+about-webrtc-peerconnections-section-hide-msg = Скрыть статистику RTCPeerConnection
+about-webrtc-stats-clear = Удалить историю
+about-webrtc-log-heading = Журнал соединения
+about-webrtc-log-clear = Удалить журнал
+about-webrtc-log-show-msg = показать журнал
+ .title = нажмите, чтобы развернуть этот раздел
+about-webrtc-log-hide-msg = скрыть журнал
+ .title = нажмите, чтобы свернуть этот раздел
+about-webrtc-log-section-show-msg = Показать журнал
+ .title = Нажмите, чтобы развернуть этот раздел
+about-webrtc-log-section-hide-msg = Скрыть журнал
+ .title = Нажмите, чтобы свернуть этот раздел
+about-webrtc-copy-report-button = Копировать отчёт
+about-webrtc-copy-report-history-button = Копировать историю отчетов
+
+## These are used to display a header for a PeerConnection.
+## Variables:
+## $browser-id (Number) - A numeric id identifying the browser tab for the PeerConnection.
+## $id (String) - A globally unique identifier for the PeerConnection.
+## $url (String) - The url of the site which opened the PeerConnection.
+## $now (Date) - The JavaScript timestamp at the time the report was generated.
+
+about-webrtc-connection-open = [ { $browser-id } | { $id } ] { $url } { $now }
+about-webrtc-connection-closed = [ { $browser-id } | { $id } ] { $url } (закрыт) { $now }
+
+## These are used to indicate what direction media is flowing.
+## Variables:
+## $codecs - a list of media codecs
+
+about-webrtc-short-send-receive-direction = Отправка / получение: { $codecs }
+about-webrtc-short-send-direction = Отправка: { $codecs }
+about-webrtc-short-receive-direction = Получение: { $codecs }
+
+##
+
+about-webrtc-local-candidate = Локальный кандидат
+about-webrtc-remote-candidate = Удалённый кандидат
+about-webrtc-raw-candidates-heading = Все необработанные кандидаты
+about-webrtc-raw-local-candidate = Необработанный локальный кандидат
+about-webrtc-raw-remote-candidate = Необработанный удалённый кандидат
+about-webrtc-raw-cand-show-msg = показать необработанных кандидатов
+ .title = нажмите, чтобы развернуть этот раздел
+about-webrtc-raw-cand-hide-msg = скрыть необработанных кандидатов
+ .title = нажмите, чтобы свернуть этот раздел
+about-webrtc-raw-cand-section-show-msg = Показать необработанных кандидатов
+ .title = Нажмите, чтобы развернуть этот раздел
+about-webrtc-raw-cand-section-hide-msg = Скрыть необработанных кандидатов
+ .title = Нажмите, чтобы свернуть этот раздел
+about-webrtc-priority = Очерёдность
+about-webrtc-fold-show-msg = показать подробности
+ .title = нажмите, чтобы развернуть этот раздел
+about-webrtc-fold-hide-msg = скрыть подробности
+ .title = нажмите, чтобы свернуть этот раздел
+about-webrtc-fold-default-show-msg = Показать подробности
+ .title = Нажмите, чтобы развернуть этот раздел
+about-webrtc-fold-default-hide-msg = Скрыть подробности
+ .title = Нажмите, чтобы свернуть этот раздел
+about-webrtc-dropped-frames-label = Пропущенные кадры:
+about-webrtc-discarded-packets-label = Отброшенные пакеты:
+about-webrtc-decoder-label = Декодер
+about-webrtc-encoder-label = Кодировщик
+about-webrtc-show-tab-label = Показать вкладку
+about-webrtc-current-framerate-label = Частота кадров
+about-webrtc-width-px = Ширина (пиксели)
+about-webrtc-height-px = Высота (пиксели)
+about-webrtc-consecutive-frames = Последовательные кадры
+about-webrtc-time-elapsed = Затраченное время (с)
+about-webrtc-estimated-framerate = Расчётная частота кадров
+about-webrtc-rotation-degrees = Вращение (градусы)
+about-webrtc-first-frame-timestamp = Метка времени приёма первого кадра
+about-webrtc-last-frame-timestamp = Метка времени приёма последнего кадра
+
+## SSRCs are identifiers that represent endpoints in an RTP stream
+
+# This is an SSRC on the local side of the connection that is receiving RTP
+about-webrtc-local-receive-ssrc = SSRC локального приёма
+# This is an SSRC on the remote side of the connection that is sending RTP
+about-webrtc-remote-send-ssrc = SSRC удалённой отправки
+
+## These are displayed on the button that shows or hides the
+## PeerConnection configuration disclosure
+
+about-webrtc-pc-configuration-show-msg = Показать конфигурацию
+about-webrtc-pc-configuration-hide-msg = Скрыть конфигурацию
+
+##
+
+# An option whose value will not be displayed but instead noted as having been
+# provided
+about-webrtc-configuration-element-provided = Установлено
+# An option whose value will not be displayed but instead noted as having not
+# been provided
+about-webrtc-configuration-element-not-provided = Не установлено
+# The options set by the user in about:config that could impact a WebRTC call
+about-webrtc-custom-webrtc-configuration-heading = Пользовательские настройки WebRTC
+# The options set by the user in about:config that could impact a WebRTC call
+about-webrtc-user-modified-configuration-heading = Пользователь изменил конфигурацию WebRTC
+
+## These are displayed on the button that shows or hides the
+## user modified configuration disclosure
+
+about-webrtc-user-modified-configuration-show-msg = Показать измененную пользователем конфигурацию
+about-webrtc-user-modified-configuration-hide-msg = Скрыть измененную пользователем конфигурацию
+
+##
+
+# Section header for estimated bandwidths of WebRTC media flows
+about-webrtc-bandwidth-stats-heading = Расчётная пропускная способность
+# The ID of the MediaStreamTrack
+about-webrtc-track-identifier = Идентификатор отслеживания
+# The estimated bandwidth available for sending WebRTC media in bytes per second
+about-webrtc-send-bandwidth-bytes-sec = Пропускная способность отправки (байт/сек)
+# The estimated bandwidth available for receiving WebRTC media in bytes per second
+about-webrtc-receive-bandwidth-bytes-sec = Пропускная способность приёма (байт/сек)
+# Maximum number of bytes per second that will be padding zeros at the ends of packets
+about-webrtc-max-padding-bytes-sec = Максимальное заполнение (байт/сек)
+# The amount of time inserted between packets to keep them spaced out
+about-webrtc-pacer-delay-ms = Задержка между пакетами (мс)
+# The amount of time it takes for a packet to travel from the local machine to the remote machine,
+# and then have a packet return
+about-webrtc-round-trip-time-ms = RTT (мс)
+# This is a section heading for video frame statistics for a MediaStreamTrack.
+# see https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack.
+# Variables:
+# $track-identifier (String) - The unique identifier for the MediaStreamTrack.
+about-webrtc-frame-stats-heading = Статистика видеокадров - MediaStreamTrack ID: { $track-identifier }
+
+## These are paths used for saving the about:webrtc page or log files so
+## they can be attached to bug reports.
+## Variables:
+## $path (String) - The path to which the file is saved.
+
+about-webrtc-save-page-msg = страница сохранена в: { $path }
+about-webrtc-debug-mode-off-state-msg = журнал отслеживания можно найти в: { $path }
+about-webrtc-debug-mode-on-state-msg = режим отладки активен, журнал отслеживания в: { $path }
+about-webrtc-aec-logging-off-state-msg = файлы журнала захвата можно найти в: { $path }
+# This path is used for saving the about:webrtc page so it can be attached to
+# bug reports.
+# Variables:
+# $path (String) - The path to which the file is saved.
+about-webrtc-save-page-complete-msg = Страница сохранена в: { $path }
+# This is the total number of frames encoded or decoded over an RTP stream.
+# Variables:
+# $frames (Number) - The number of frames encoded or decoded.
+about-webrtc-frames =
+ { $frames ->
+ [one] { $frames } кадр
+ [few] { $frames } кадра
+ *[many] { $frames } кадров
+ }
+# This is the number of audio channels encoded or decoded over an RTP stream.
+# Variables:
+# $channels (Number) - The number of channels encoded or decoded.
+about-webrtc-channels =
+ { $channels ->
+ [one] { $channels } канал
+ [few] { $channels } канала
+ *[many] { $channels } каналов
+ }
+# This is the total number of packets received on the PeerConnection.
+# Variables:
+# $packets (Number) - The number of packets received.
+about-webrtc-received-label =
+ { $packets ->
+ [one] Получен { $packets } пакет
+ [few] Получено { $packets } пакета
+ *[many] Получено { $packets } пакетов
+ }
+# This is the total number of packets lost by the PeerConnection.
+# Variables:
+# $packets (Number) - The number of packets lost.
+about-webrtc-lost-label =
+ { $packets ->
+ [one] Потерян { $packets } пакет
+ [few] Потеряно { $packets } пакета
+ *[many] Потеряно { $packets } пакетов
+ }
+# This is the total number of packets sent by the PeerConnection.
+# Variables:
+# $packets (Number) - The number of packets sent.
+about-webrtc-sent-label =
+ { $packets ->
+ [one] Отправлен { $packets } пакет
+ [few] Отправлено { $packets } пакета
+ *[many] Отправлено { $packets } пакетов
+ }
+# Jitter is the variance in the arrival time of packets.
+# See: https://w3c.github.io/webrtc-stats/#dom-rtcreceivedrtpstreamstats-jitter
+# Variables:
+# $jitter (Number) - The jitter.
+about-webrtc-jitter-label = Джиттер { $jitter }
+# ICE candidates arriving after the remote answer arrives are considered trickled
+# (an attribute of an ICE candidate). These are highlighted in the ICE stats
+# table with light blue background.
+about-webrtc-trickle-caption-msg = Поток кандидатов (после ответа) подсвечен синим
+
+## "SDP" is an abbreviation for Session Description Protocol, an IETF standard.
+## See http://wikipedia.org/wiki/Session_Description_Protocol
+
+# This is used as a header for local SDP.
+# Variables:
+# $timestamp (Number) - The Unix Epoch time at which the SDP was set.
+about-webrtc-sdp-set-at-timestamp-local = Установить для локального SDP метку времени { NUMBER($timestamp, useGrouping: "false") }
+# This is used as a header for remote SDP.
+# Variables:
+# $timestamp (Number) - The Unix Epoch time at which the SDP was set.
+about-webrtc-sdp-set-at-timestamp-remote = Установить для удалённого SDP метку времени { NUMBER($timestamp, useGrouping: "false") }
+# This is used as a header for an SDP section contained in two columns allowing for side-by-side comparisons.
+# Variables:
+# $timestamp (Number) - The Unix Epoch time at which the SDP was set.
+# $relative-timestamp (Number) - The timestamp relative to the timestamp of the earliest received SDP.
+about-webrtc-sdp-set-timestamp = Метка времени { NUMBER($timestamp, useGrouping: "false") } (+ { $relative-timestamp } мс)
+
+## These are displayed on the button that shows or hides the SDP information disclosure
+
+about-webrtc-show-msg-sdp = Показать SDP
+about-webrtc-hide-msg-sdp = Скрыть SDP
+
+## These are displayed on the button that shows or hides the Media Context information disclosure.
+## The Media Context is the set of preferences and detected capabilities that informs
+## the negotiated CODEC settings.
+
+about-webrtc-media-context-show-msg = Показать контекст медиа
+about-webrtc-media-context-hide-msg = Скрыть контекст медиа
+about-webrtc-media-context-heading = Контекст медиа
+
+##
+
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWindowsMessages.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWindowsMessages.ftl
new file mode 100644
index 0000000000..eb7693184d
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/aboutWindowsMessages.ftl
@@ -0,0 +1,20 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Localization for the about:windows-messages page, which is only available
+### on the Windows operating system.
+### This page records and shows messages sent from the operating system to
+### individual browser windows. These messages can be useful in debugging
+### hard-to-reproduce issues with window sizing and position.
+
+# Windows refers to the operating system
+windows-messages-page-title = Информация о cообщениях Windows
+windows-messages-intro =
+ На этой странице отображаются самые последние сообщения, отправленные Windows
+ в окна браузера { -brand-short-name }.
+ Запись, выделенная жирным, представляет это окно. Обратите внимание, что на этой странице показаны
+ самые последние сообщения на момент загрузки страницы;
+ чтобы увидеть текущие, вам нужно будет обновить страницу.
+windows-messages-copy-to-clipboard = Копировать в буфер обмена
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/abuseReports.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/abuseReports.ftl
new file mode 100644
index 0000000000..33896b2aef
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/abuseReports.ftl
@@ -0,0 +1,116 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Localized string used as the dialog window title.
+# "Report" is a noun in this case, "Report for AddonName".
+#
+# Variables:
+# $addon-name (string) - Name of the add-on being reported
+abuse-report-dialog-title = Пожаловаться на { $addon-name }
+abuse-report-title-extension = Пожаловаться на это расширение в { -vendor-short-name }
+abuse-report-title-sitepermission = Пожаловаться на это дополнение разрешений для сайта в { -vendor-short-name }
+abuse-report-title-theme = Пожаловаться на эту тему в { -vendor-short-name }
+abuse-report-subtitle = С какой проблемой вы столкнулись?
+# Variables:
+# $author-name (string) - Name of the add-on author
+abuse-report-addon-authored-by = от <a data-l10n-name="author-name">{ $author-name }</a>
+abuse-report-learnmore =
+ Не знаете, какую проблему выбрать?
+ <a data-l10n-name="learnmore-link">Подробнее о жалобах на расширения и темы</a>
+abuse-report-learnmore-intro = Не знаете, какую проблему выбрать?
+abuse-report-learnmore-link = Подробнее о жалобах на расширения и темы
+abuse-report-submit-description = Опишите проблему (необязательно)
+abuse-report-textarea =
+ .placeholder = Нам легче решить проблему, если она подробно описана. Пожалуйста, расскажите все подробности. Спасибо за помощь в поддержке здорового Интернета.
+abuse-report-submit-note =
+ Примечание: Не указывайте личную информацию (такую как имя, адрес электронной почты, номер телефона, физический адрес).
+ { -vendor-short-name } навсегда сохраняет в том числе и такие жалобы.
+
+## Panel buttons.
+
+abuse-report-cancel-button = Отмена
+abuse-report-next-button = Далее
+abuse-report-goback-button = Вернуться назад
+abuse-report-submit-button = Отправить
+
+## Message bars descriptions.
+##
+## Variables:
+## $addon-name (string) - Name of the add-on
+
+abuse-report-messagebar-aborted = Жалоба на <span data-l10n-name="addon-name">{ $addon-name }</span> отменена.
+abuse-report-messagebar-submitting = Отправка жалобы на <span data-l10n-name="addon-name">{ $addon-name }</span>.
+abuse-report-messagebar-submitted = Спасибо за отправку жалобы. Вы хотите удалить <span data-l10n-name="addon-name">{ $addon-name }</span>?
+abuse-report-messagebar-submitted-noremove = Спасибо за отправку жалобы.
+abuse-report-messagebar-removed-extension = Спасибо за отправку жалобы. Вы удалили расширение <span data-l10n-name="addon-name">{ $addon-name }</span>.
+abuse-report-messagebar-removed-sitepermission = Спасибо за отправку жалобы. Вы удалили дополнение разрешений для сайта <span data-l10n-name="addon-name">{ $addon-name }</span>.
+abuse-report-messagebar-removed-theme = Спасибо за отправку жалобы. Вы удалили тему <span data-l10n-name="addon-name">{ $addon-name }</span>.
+abuse-report-messagebar-error = Произошла ошибка при отправке жалобы на <span data-l10n-name="addon-name">{ $addon-name }</span>.
+abuse-report-messagebar-error-recent-submit = Жалоба на <span data-l10n-name="addon-name">{ $addon-name }</span> не была отправлена, так как другая жалоба уже была недавно отправлена.
+abuse-report-messagebar-aborted2 =
+ .message = Жалоба на { $addon-name } отменена.
+abuse-report-messagebar-submitting2 =
+ .message = Отправка жалобы на { $addon-name }.
+abuse-report-messagebar-submitted2 =
+ .message = Спасибо за отправку жалобы. Вы хотите удалить { $addon-name }?
+abuse-report-messagebar-submitted-noremove2 =
+ .message = Спасибо за отправку жалобы.
+abuse-report-messagebar-removed-extension2 =
+ .message = Спасибо за отправку жалобы. Вы удалили расширение { $addon-name }.
+abuse-report-messagebar-removed-sitepermission2 =
+ .message = Спасибо за отправку жалобы. Вы удалили дополнение разрешений для сайта { $addon-name }.
+abuse-report-messagebar-removed-theme2 =
+ .message = Спасибо за отправку жалобы. Вы удалили тему { $addon-name }.
+abuse-report-messagebar-error2 =
+ .message = Произошла ошибка при отправке жалобы на { $addon-name }.
+abuse-report-messagebar-error-recent-submit2 =
+ .message = Жалоба на { $addon-name } не была отправлена, так как другая жалоба уже была недавно отправлена.
+
+## Message bars actions.
+
+abuse-report-messagebar-action-remove-extension = Да, удалить его
+abuse-report-messagebar-action-keep-extension = Нет, оставить его
+abuse-report-messagebar-action-remove-sitepermission = Да, удалить это
+abuse-report-messagebar-action-keep-sitepermission = Нет, оставить его
+abuse-report-messagebar-action-remove-theme = Да, удалить её
+abuse-report-messagebar-action-keep-theme = Нет, оставить её
+abuse-report-messagebar-action-retry = Повторить
+abuse-report-messagebar-action-cancel = Отмена
+
+## Abuse report reasons (optionally paired with related examples and/or suggestions)
+
+abuse-report-damage-reason-v2 = Вредит работе компьютера или крадёт мои данные
+abuse-report-damage-example = Например: Вредоносное ПО или кража данных
+abuse-report-spam-reason-v2 = Содержит спам или вставляет нежелательную рекламу
+abuse-report-spam-example = Например: Вставляет рекламу на веб-страницы
+abuse-report-settings-reason-v2 = Изменяет мою поисковую систему, домашнюю страницу или страницу новой вкладки, не сообщая и не спрашивая меня
+abuse-report-settings-suggestions = Перед отправкой жалобы на расширение, вы можете попробовать изменить настройки:
+abuse-report-settings-suggestions-search = Изменяет настройки поиска по умолчанию
+abuse-report-settings-suggestions-homepage = Изменяет домашнюю страницу и страницу новой вкладки
+abuse-report-deceptive-reason-v2 = Выдаёт себя не за то, чем является
+abuse-report-deceptive-example = Например: Описание или изображение вводят в заблуждение
+abuse-report-broken-reason-extension-v2 = Не работает, ломает веб-сайты или замедляет работу { -brand-product-name }
+abuse-report-broken-reason-sitepermission-v2 = Не работает, ломает веб-сайты или замедляет работу { -brand-product-name }
+abuse-report-broken-reason-theme-v2 = Не работает или нарушает работу браузера
+abuse-report-broken-example = Например: Медленная работа, трудности с использованием или не работает; части веб-сайтов не загружаются или выглядят необычно
+abuse-report-broken-suggestions-extension =
+ Похоже, что вы обнаружили ошибку. В дополнение к отправке жалобы здесь, лучшим способом
+ решения проблемы будет связь с разработчиком расширения.
+ <a data-l10n-name="support-link">Посетите веб-сайт расширения</a> для получения информации о разработчике.
+abuse-report-broken-suggestions-sitepermission =
+ Похоже, что вы обнаружили ошибку. В дополнение к отправке отчёта здесь, лучшим способом
+ решения проблемы будет связь с разработчиком веб-сайта.
+ <a data-l10n-name="support-link">Посетите веб-сайт</a> для получения информации о разработчике.
+abuse-report-broken-suggestions-theme =
+ Похоже, что вы обнаружили ошибку. В дополнение к отправке отчёта здесь, лучшим способом
+ решения проблемы будет связь с разработчиком темы.
+ <a data-l10n-name="support-link">Посетите веб-сайт темы</a> для получения информации о разработчике.
+abuse-report-policy-reason-v2 = Содержит незаконное, жестокое, вызывающее ненависть содержимое
+abuse-report-policy-suggestions =
+ Примечание: Жалобы о нарушении авторских прав или прав на товарный знак должны подаваться отдельно.
+ <a data-l10n-name="report-infringement-link">Воспользуйтесь этими инструкциями</a>, чтобы
+ сообщить о проблеме.
+abuse-report-unwanted-reason-v2 = Я никогда не устанавливал(а) его и не знаю, как от него избавиться
+abuse-report-unwanted-example = Например: Приложение установило его без моего разрешения
+abuse-report-other-reason = Что-то другое
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/certviewer.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/certviewer.ftl
new file mode 100644
index 0000000000..e6c73445b4
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/certviewer.ftl
@@ -0,0 +1,122 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+certificate-viewer-certificate-section-title = Сертификат
+
+## Error messages
+
+certificate-viewer-error-message = Нам не удалось найти информацию о сертификате, или сертификат повреждён. Пожалуйста, попробуйте ещё раз.
+certificate-viewer-error-title = Что-то пошло не так.
+
+## Certificate information labels
+
+certificate-viewer-algorithm = Алгоритм
+certificate-viewer-certificate-authority = Центр сертификации
+certificate-viewer-cipher-suite = Набор шифров
+certificate-viewer-common-name = Общее имя
+certificate-viewer-email-address = Адрес электронной почты
+# Variables:
+# $firstCertName (String) - Common Name for the displayed certificate
+certificate-viewer-tab-title = Сертификат для { $firstCertName }
+# Inc. means Incorporated, e.g GitHub is incorporated in Delaware
+certificate-viewer-inc-country = Страна юридического лица
+certificate-viewer-country = Страна
+certificate-viewer-curve = Кривая
+certificate-viewer-distribution-point = Адрес распространения
+certificate-viewer-dns-name = DNS-имя
+certificate-viewer-ip-address = IP-адрес
+certificate-viewer-other-name = Другое имя
+certificate-viewer-exponent = Экспонента
+certificate-viewer-id = ID
+certificate-viewer-key-exchange-group = Группа обмена ключами
+certificate-viewer-key-id = Идентификатор ключа
+certificate-viewer-key-size = Размер ключа
+# Inc. means Incorporated, e.g GitHub is incorporated in Delaware
+certificate-viewer-inc-locality = Населённый пункт юридического лица
+certificate-viewer-locality = Населённый пункт
+certificate-viewer-location = Расположение
+certificate-viewer-logid = ID лога
+certificate-viewer-method = Метод
+certificate-viewer-modulus = Модуль
+certificate-viewer-name = Имя
+certificate-viewer-not-after = Действителен по
+certificate-viewer-not-before = Действителен с
+certificate-viewer-organization = Организация
+certificate-viewer-organizational-unit = Подразделение
+certificate-viewer-policy = Политика
+certificate-viewer-protocol = Протокол
+certificate-viewer-public-value = Значение
+certificate-viewer-purposes = Назначения
+certificate-viewer-qualifier = Квалификатор
+certificate-viewer-qualifiers = Квалификаторы
+certificate-viewer-required = Обязательно
+certificate-viewer-unsupported = &lt;неподдерживается&gt;
+# Inc. means Incorporated, e.g GitHub is incorporated in Delaware
+certificate-viewer-inc-state-province = Область/Регион юридического лица
+certificate-viewer-state-province = Область/Регион
+certificate-viewer-sha-1 = SHA-1
+certificate-viewer-sha-256 = SHA-256
+certificate-viewer-serial-number = Серийный номер
+certificate-viewer-signature-algorithm = Алгоритм подписи
+certificate-viewer-signature-scheme = Схема подписи
+certificate-viewer-timestamp = Метка времени
+certificate-viewer-value = Значение
+certificate-viewer-version = Версия
+certificate-viewer-business-category = Категория бизнеса
+certificate-viewer-subject-name = Субъект
+certificate-viewer-issuer-name = Издатель
+certificate-viewer-validity = Срок действия
+certificate-viewer-subject-alt-names = Дополнительное имя субъекта
+certificate-viewer-public-key-info = Информация об открытом ключе
+certificate-viewer-miscellaneous = Разное
+certificate-viewer-fingerprints = Отпечатки
+certificate-viewer-basic-constraints = Основные ограничения
+certificate-viewer-key-usages = Использование ключа
+certificate-viewer-extended-key-usages = Улучшенный ключ
+certificate-viewer-ocsp-stapling = Прикрепление OCSP
+certificate-viewer-subject-key-id = Идентификатор ключа субъекта
+certificate-viewer-authority-key-id = Идентификатор ключа центра сертификатов
+certificate-viewer-authority-info-aia = Доступ к информации о центрах сертификации
+certificate-viewer-certificate-policies = Политики сертификата
+certificate-viewer-embedded-scts = Список SCT
+certificate-viewer-crl-endpoints = Точки распределения списков отзыва (CRL)
+
+# This message is used as a row header in the Miscellaneous section.
+# The associated data cell contains links to download the certificate.
+certificate-viewer-download = Загрузить
+# This message is used to replace boolean values (true/false) in several certificate fields, e.g. Certificate Authority
+# Variables:
+# $boolean (String) - true/false value for the specific field
+certificate-viewer-boolean =
+ { $boolean ->
+ [true] Да
+ *[false] Нет
+ }
+
+## Variables:
+## $fileName (String) - The file name to save the PEM data in, derived from the common name from the certificate being displayed.
+
+certificate-viewer-download-pem = PEM (сертификат)
+ .download = { $fileName }.pem
+certificate-viewer-download-pem-chain = PEM (цепочка сертификатов)
+ .download = { $fileName }-chain.pem
+
+# The title attribute for Critical Extension icon
+certificate-viewer-critical-extension =
+ .title = Это расширение помечено как критическое, что означает, что клиенты должны отклонить сертификат, если они его не понимают.
+certificate-viewer-export = Экспортировать
+ .download = { $fileName }.pem
+
+##
+
+# Label for a tab where we haven't found a better label:
+certificate-viewer-unknown-group-label = (неизвестно)
+
+## Labels for tabs displayed in stand-alone about:certificate page
+
+certificate-viewer-tab-mine = Ваши сертификаты
+certificate-viewer-tab-people = Люди
+certificate-viewer-tab-servers = Серверы
+certificate-viewer-tab-ca = Центры сертификации
+certificate-viewer-tab-unkonwn = Неизвестно
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/config.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/config.ftl
new file mode 100644
index 0000000000..40db5548ce
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/config.ftl
@@ -0,0 +1,55 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## These strings appear on the warning you see when first visiting about:config.
+
+about-config-intro-warning-title = Продолжайте с осторожностью
+about-config-intro-warning-text = Изменение расширенных настроек может затронуть производительность или безопасность { -brand-short-name }.
+about-config-intro-warning-checkbox = Предупреждать меня, когда я попытаюсь получить доступ к этим настройкам
+about-config-intro-warning-button = Принять риск и продолжить
+
+##
+
+# This is shown on the page before searching but after the warning is accepted.
+about-config-caution-text = Изменение этих настроек может затронуть производительность или безопасность { -brand-short-name }.
+
+about-config-page-title = Расширенные настройки
+
+about-config-search-input1 =
+ .placeholder = Искать параметр по названию
+about-config-show-all = Показать все
+
+about-config-show-only-modified = Показывать только изменённые параметры
+
+about-config-pref-add-button =
+ .title = Добавить
+about-config-pref-toggle-button =
+ .title = Переключить
+about-config-pref-edit-button =
+ .title = Изменить
+about-config-pref-save-button =
+ .title = Сохранить
+about-config-pref-reset-button =
+ .title = Сбросить
+about-config-pref-delete-button =
+ .title = Удалить
+
+## Labels for the type selection radio buttons shown when adding preferences.
+
+about-config-pref-add-type-boolean = Логическое
+about-config-pref-add-type-number = Число
+about-config-pref-add-type-string = Строка
+
+## Preferences with a non-default value are differentiated visually, and at the
+## same time the state is made accessible to screen readers using an aria-label
+## that won't be visible or copied to the clipboard.
+##
+## Variables:
+## $value (String): The full value of the preference.
+
+about-config-pref-accessible-value-default =
+ .aria-label = { $value } (по умолчанию)
+about-config-pref-accessible-value-custom =
+ .aria-label = { $value } (изменено пользователем)
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/about/url-classifier.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/about/url-classifier.ftl
new file mode 100644
index 0000000000..5f5adaa8c8
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/about/url-classifier.ftl
@@ -0,0 +1,62 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+url-classifier-title = Информация об URL-классификаторе
+url-classifier-search-title = Поиск
+url-classifier-search-result-title = Результаты
+# Variables:
+# $uri (string) - URI of blocked page
+url-classifier-search-result-uri = URI: { $uri }
+# Variables:
+# $list (string) - List of tables where the page is blocked
+url-classifier-search-result-list = Список таблиц: { $list }
+url-classifier-search-input = URL
+url-classifier-search-error-invalid-url = Некорректный URL
+url-classifier-search-error-no-features = Возможности не выбраны
+url-classifier-search-btn = Начать поиск
+url-classifier-search-features = Возможности
+url-classifier-search-listType = Тип списка
+url-classifier-provider-title = Провайдер
+url-classifier-provider = Провайдер
+url-classifier-provider-last-update-time = Время последнего обновления
+url-classifier-provider-next-update-time = Время следующего обновления
+url-classifier-provider-back-off-time = Время возврата назад
+url-classifier-provider-last-update-status = Статус последнего обновления
+url-classifier-provider-update-btn = Обновить
+url-classifier-cache-title = Кеш
+url-classifier-cache-refresh-btn = Обновить
+url-classifier-cache-clear-btn = Очистить
+url-classifier-cache-table-name = Имя таблицы
+url-classifier-cache-ncache-entries = Число негативных записей кеша
+url-classifier-cache-pcache-entries = Число позитивных записей кеша
+url-classifier-cache-show-entries = Показать записи
+url-classifier-cache-entries = Записи кеша
+url-classifier-cache-prefix = Префикс
+url-classifier-cache-ncache-expiry = Срок хранения негативного кеша истекает
+url-classifier-cache-fullhash = Полный хеш
+url-classifier-cache-pcache-expiry = Срок хранения позитивного кеша истекает
+url-classifier-debug-title = Отладка
+url-classifier-debug-module-btn = Указать модули лога
+url-classifier-debug-file-btn = Указать файл лога
+url-classifier-debug-js-log-chk = Установить лог JS
+url-classifier-debug-sb-modules = Модули лога безопасного веб-сёрфинга
+url-classifier-debug-modules = Текущие модули логирования
+url-classifier-debug-sbjs-modules = Лог JS безопасного веб-сёрфинга
+url-classifier-debug-file = Текущий файл лога
+
+url-classifier-trigger-update = Запустить обновление
+url-classifier-not-available = недоступно
+url-classifier-disable-sbjs-log = Отключить лог JS безопасного веб-сёрфинга
+url-classifier-enable-sbjs-log = Включить лог JS безопасного веб-сёрфинга
+url-classifier-enabled = Включено
+url-classifier-disabled = Отключено
+url-classifier-updating = обновление
+url-classifier-cannot-update = не удалось обновить
+url-classifier-success = успешно
+
+## Variables
+## $error (string) - Error message
+
+url-classifier-update-error = ошибка обновления ({ $error })
+url-classifier-download-error = ошибка загрузки ({ $error })
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/branding/accounts.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/branding/accounts.ftl
new file mode 100644
index 0000000000..28c4415b8b
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/branding/accounts.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# “Account” can be localized, “Firefox” must be treated as a brand,
+# and kept in English.
+-fxaccount-brand-name =
+ { $case ->
+ *[nominative] Аккаунт Firefox
+ [genitive] Аккаунта Firefox
+ [dative] Аккаунту Firefox
+ [accusative] Аккаунт Firefox
+ [instrumental] Аккаунтом Firefox
+ [prepositional] Аккаунте Firefox
+ }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/branding/brandings.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/branding/brandings.ftl
new file mode 100644
index 0000000000..e3ded6050a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/branding/brandings.ftl
@@ -0,0 +1,53 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## The following feature names must be treated as a brand.
+##
+## They cannot be:
+## - Transliterated.
+## - Translated.
+##
+## Declension should be avoided where possible, leaving the original
+## brand unaltered in prominent UI positions.
+##
+## For further details, consult:
+## https://mozilla-l10n.github.io/styleguides/mozilla_general/#brands-copyright-and-trademark
+
+-facebook-container-brand-name = Facebook Container
+-lockwise-brand-name = Firefox Lockwise
+-lockwise-brand-short-name = Lockwise
+-monitor-brand-name = Firefox Monitor
+-monitor-brand-short-name = Monitor
+-pocket-brand-name = Pocket
+-send-brand-name = Firefox Send
+-screenshots-brand-name = Firefox Screenshots
+-mozilla-vpn-brand-name = Mozilla VPN
+-profiler-brand-name = Профайлер Firefox
+-translations-brand-name = Firefox Translations
+-focus-brand-name = Firefox Focus
+-relay-brand-name = Firefox Relay
+-relay-brand-short-name = Relay
+-fakespot-brand-name = Fakespot
+# Note the name of the website is capitalized.
+-fakespot-website-name = Fakespot.com
+# The particle "by" can be localized, "Fakespot" and "Mozilla" should not be localized or transliterated.
+-fakespot-brand-full-name = Fakespot от Mozilla
+# “Suggest” can be localized, “Firefox” must be treated as a brand
+# and kept in English.
+-firefox-suggest-brand-name = Firefox Suggest
+# ”Home" can be localized, “Firefox” must be treated as a brand
+# and kept in English.
+-firefox-home-brand-name =
+ { $case ->
+ *[nominative] Домашняя страница Firefox
+ [genitive] Домашней страницы Firefox
+ [dative] Домашнюю страницу Firefox
+ [accusative] Домашнюю страницу Firefox
+ [instrumental] Домашней страницей Firefox
+ [prepositional] Домашней странице Firefox
+ }
+# View" can be localized, “Firefox” must be treated as a brand
+# and kept in English.
+-firefoxview-brand-name = Обзор Firefox
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/contentanalysis/contentanalysis.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/contentanalysis/contentanalysis.ftl
new file mode 100644
index 0000000000..58fbd1005d
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/contentanalysis/contentanalysis.ftl
@@ -0,0 +1,31 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+contentanalysis-alert-title = Анализ содержимого
+# Variables:
+# $content - Description of the content being warned about, such as "clipboard" or "aFile.txt"
+contentanalysis-slow-agent-notification = Инструменту анализа содержимого требуется много времени, чтобы справиться с ресурсом «{ $content }».
+contentanalysis-slow-agent-dialog-title = Выполняется контент-анализ
+# Variables:
+# $content - Description of the content being warned about, such as "clipboard" or "aFile.txt"
+contentanalysis-slow-agent-dialog-body = Контент-анализ анализирует ресурс «{ $content }»
+contentanalysis-operationtype-clipboard = буфер обмена
+contentanalysis-operationtype-dropped-text = пропущенный текст
+contentanalysis-warndialogtitle = Это содержимое может быть небезопасным
+# Variables:
+# $content - Description of the content being warned about, such as "clipboard" or "aFile.txt"
+contentanalysis-warndialogtext = Ваша организация использует программное обеспечение для предотвращения потери данных (DLP), которое отметило следующее содержимое как небезопасное: { $content }. Всё равно использовать его?
+contentanalysis-warndialog-response-allow = Использовать содержимое
+contentanalysis-warndialog-response-deny = Отмена
+contentanalysis-notification-title = Анализ содержимого
+# Variables:
+# $content - Description of the content being reported, such as "clipboard" or "aFile.txt"
+# $response - The response received from the content analysis agent, such as "REPORT_ONLY"
+contentanalysis-genericresponse-message = Контент-анализ сформировал { $response } для ресурса: { $content }
+# Variables:
+# $content - Description of the content being blocked, such as "clipboard" or "aFile.txt"
+contentanalysis-block-message = Ваша организация использует программное обеспечение для предотвращения потери данных, которое заблокировало это содержимое: { $content }.
+# Variables:
+# $content - Description of the content being blocked, such as "clipboard" or "aFile.txt"
+contentanalysis-error-message = Произошла ошибка связи с программным обеспечением для предотвращения потери данных. Передача запрещена для ресурса: { $content }.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/downloads/downloadUI.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/downloads/downloadUI.ftl
new file mode 100644
index 0000000000..1ff3c67c69
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/downloads/downloadUI.ftl
@@ -0,0 +1,51 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+download-ui-confirm-title = Отменить все загрузки?
+
+## Variables:
+## $downloadsCount (Number): The current downloads count.
+
+download-ui-confirm-quit-cancel-downloads =
+ { $downloadsCount ->
+ [1] При выходе загрузка будет отменена. Вы уверены, что вы хотите выйти?
+ *[other] При выходе будет отменено несколько ({ $downloadsCount }) загрузок. Вы уверены, что вы хотите выйти?
+ }
+download-ui-confirm-quit-cancel-downloads-mac =
+ { $downloadsCount ->
+ [1] При выходе загрузка будет отменена. Вы уверены, что вы хотите выйти?
+ *[other] При выходе будет отменено несколько ({ $downloadsCount }) загрузок. Вы уверены, что вы хотите выйти?
+ }
+download-ui-dont-quit-button =
+ { PLATFORM() ->
+ [mac] Не завершать работу
+ *[other] Не завершать работу
+ }
+
+download-ui-confirm-offline-cancel-downloads =
+ { $downloadsCount ->
+ [1] При переходе в автономный режим работы будет отменена одна загрузка. Вы действительно этого хотите?
+ *[other] При переходе в автономный режим работы будет отменено несколько ({ $downloadsCount }) загрузок. Вы действительно этого хотите?
+ }
+download-ui-dont-go-offline-button = Сохранить подключение
+
+download-ui-confirm-leave-private-browsing-windows-cancel-downloads =
+ { $downloadsCount ->
+ [1] Если вы сейчас закроете все приватные окна, будет отменена 1 загрузка. Вы уверены, что хотите выйти из приватного режима?
+ *[other] Если вы сейчас закроете все приватные окна, будет отменено { $downloadsCount } загрузок. Вы уверены, что хотите выйти из приватного режима?
+ }
+download-ui-dont-leave-private-browsing-button = Остаться в приватном режиме
+
+download-ui-cancel-downloads-ok =
+ { $downloadsCount ->
+ [1] Отменить загрузку
+ *[other] Отменить несколько ({ $downloadsCount }) загрузок
+ }
+
+##
+
+download-ui-file-executable-security-warning-title = Открыть исполняемый файл?
+# Variables:
+# $executable (String): The executable file to be opened.
+download-ui-file-executable-security-warning = «{ $executable }» является исполняемым файлом. Исполняемые файлы могут содержать вирусы или другой вредоносный код, который может повредить информацию на компьютере. Будьте внимательны при открытии данного файла. Вы действительно хотите открыть файл «{ $executable }»?
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/downloads/downloadUtils.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/downloads/downloadUtils.ftl
new file mode 100644
index 0000000000..dac2b3cf71
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/downloads/downloadUtils.ftl
@@ -0,0 +1,111 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Variables:
+## $timeValue (number) - Number of units of time
+
+# Short form for seconds
+download-utils-short-seconds =
+ { $timeValue ->
+ [one] сек
+ [few] сек
+ *[many] сек
+ }
+# Short form for minutes
+download-utils-short-minutes =
+ { $timeValue ->
+ [one] мин
+ [few] мин
+ *[many] мин
+ }
+# Short form for hours
+download-utils-short-hours =
+ { $timeValue ->
+ [one] ч
+ [few] ч
+ *[many] ч
+ }
+# Short form for days
+download-utils-short-days =
+ { $timeValue ->
+ [one] д
+ [few] д
+ *[many] д
+ }
+
+##
+
+# — is the "em dash" (long dash)
+# example: 4 minutes left — 1.1 of 11.1 GB (2.2 MB/sec)
+# Variables:
+# $timeLeft (string) - Time left.
+# $transfer (string) - Transfer progress.
+# $rate (string) - Rate number.
+# $unit (string) - Rate unit.
+download-utils-status = { $timeLeft } — { $transfer } ({ $rate } { $unit }/сек)
+# If download speed is a JavaScript Infinity value, this phrase is used
+# — is the "em dash" (long dash)
+# example: 4 minutes left — 1.1 of 11.1 GB (Really fast)
+# Variables:
+# $timeLeft (string) - Time left.
+# $transfer (string) - Transfer progress.
+download-utils-status-infinite-rate = { $timeLeft } — { $transfer } (Очень быстро)
+# — is the "em dash" (long dash)
+# example: 4 minutes left — 1.1 of 11.1 GB
+# Variables:
+# $timeLeft (string) - Time left.
+# $transfer (string) - Transfer progress.
+download-utils-status-no-rate = { $timeLeft } — { $transfer }
+
+download-utils-bytes = байт
+download-utils-kilobyte = КБ
+download-utils-megabyte = МБ
+download-utils-gigabyte = ГБ
+
+# example: 1.1 of 333 MB
+# Variables:
+# $progress (string) - Progress number.
+# $total (string) - Total number.
+# $totalUnits (string) - Total unit.
+download-utils-transfer-same-units = { $progress } из { $total } { $totalUnits }
+# example: 11.1 MB of 3.3 GB
+# Variables:
+# $progress (string) - Progress number.
+# $progressUnits (string) - Progress unit.
+# $total (string) - Total number.
+# $totalUnits (string) - Total unit.
+download-utils-transfer-diff-units = { $progress } { $progressUnits } из { $total } { $totalUnits }
+# example: 111 KB
+# Variables:
+# $progress (string) - Progress number.
+# $progressUnits (string) - Unit.
+download-utils-transfer-no-total = { $progress } { $progressUnits }
+
+# examples: 1m; 11h
+# Variables:
+# $time (string) - Time number.
+# $unit (string) - Time unit.
+download-utils-time-pair = { $time } { $unit }
+# examples: 1m left; 11h left
+# Variables:
+# $time (string) - Time left, including a unit
+download-utils-time-left-single = Осталось { $time }
+# examples: 11h 2m left; 1d 22h left
+# Variables:
+# $time1 (string) - Time left, including a unit
+# $time2 (string) - Smaller measure of time left, including a unit
+download-utils-time-left-double = Осталось { $time1 } { $time2 }
+download-utils-time-few-seconds = Осталось несколько секунд
+download-utils-time-unknown = Оставшееся время неизвестно
+
+# Variables:
+# $scheme (string) - URI scheme like data: jar: about:
+download-utils-done-scheme = ресурс { $scheme }
+# Special case of done-scheme for file:
+# This is used as an eTLD replacement for local files, so make it lower case
+download-utils-done-file-scheme = локальный файл
+
+# Displayed time for files finished yesterday
+download-utils-yesterday = Вчера
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/featuregates/features.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/featuregates/features.ftl
new file mode 100644
index 0000000000..6efebf6b8a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/featuregates/features.ftl
@@ -0,0 +1,58 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-css-masonry2 =
+ .label = CSS: «Masonry-раскладка»
+experimental-features-css-masonry-description = Включает поддержку экспериментальной «Masonry-раскладки» в CSS. Прочтите <a data-l10n-name="explainer">объяснения</a> для получения высокоуровневого описания функции. Оставляйте свои отзывы и комментарии в <a data-l10n-name="w3c-issue">этой issue на GitHub</a> или в <a data-l10n-name="bug">этом баг-репорте</a>.
+
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-web-gpu2 =
+ .label = Web API: WebGPU
+experimental-features-web-gpu-description3 = <a data-l10n-name="wikipedia-webgpu">API WebGPU</a> обеспечивает низкоуровневую поддержку выполнения вычислений и рендеринга графики с использованием <a data-l10n-name="wikipedia-gpu">Устройства обработки графики (GPU)</a> устройства или компьютера пользователя. Первая версия <a data-l10n-name="spec">спецификации</a> близится к завершению. Для получения дополнительной информации прочитайте <a data-l10n-name="bugzilla">баг 1616739</a>.
+
+# The title of the experiment should be kept in English as it may be referenced
+# by various online articles and is technical in nature.
+experimental-features-media-jxl =
+ .label = Медиа: JPEG XL
+experimental-features-media-jxl-description = При включении этой функции, { -brand-short-name } начнёт поддерживать формат JPEG XL (JXL). Это улучшенный формат файлов изображений, который поддерживает сжатие без потерь обычных файлов JPEG. Дополнительная информация доступна в <a data-l10n-name="bugzilla">баге 1539075</a>.
+
+experimental-features-devtools-compatibility-panel =
+ .label = Инструменты разработчика: Панель совместимости
+experimental-features-devtools-compatibility-panel-description = Боковая панель для Инспектора страниц, отображающая информацию о состоянии кроссбраузерной совместимости вашего приложения. Для получения дополнительной информации прочитайте <a data-l10n-name="bugzilla">баг 1584464</a>.
+
+
+# Do not translate 'SameSite', 'Lax' and 'None'.
+experimental-features-cookie-samesite-none-requires-secure2 =
+ .label = Куки: SameSite = None требует атрибута «secure»
+experimental-features-cookie-samesite-none-requires-secure2-description = Куки с атрибутом «SameSite = None» требуют атрибута «secure». Для работы этой функции необходимо включить «Куки: SameSite = Lax по умолчанию».
+
+# about:home should be kept in English, as it refers to the the URI for
+# the internal default home page.
+experimental-features-abouthome-startup-cache =
+ .label = Кеш запуска about:home
+experimental-features-abouthome-startup-cache-description = Кеширование начальной страницы about:home, по умолчанию загружающейся при запуске. Целью кеширования является повышение скорости запуска.
+
+# "Service Worker" is an API name and is usually not translated.
+experimental-features-devtools-serviceworker-debugger-support =
+ .label = Инструменты разработчика: Отладка Service Worker
+# "Service Worker" is an API name and is usually not translated.
+experimental-features-devtools-serviceworker-debugger-support-description = Добавляет экспериментальную поддержку Service Workers'ов на Панель отладчика. Это функция может замедлять работу Инструментов разработчика и увеличить потребление памяти.
+
+# WebRTC global mute toggle controls
+experimental-features-webrtc-global-mute-toggles =
+ .label = Переключатель глобального отключения звука WebRTC
+experimental-features-webrtc-global-mute-toggles-description = Добавляет элементы управления к глобальному индикатору доступа WebRTC, который позволяет пользователям глобально отключать доступ к их микрофону и камере.
+
+# JS JIT Warp project
+experimental-features-js-warp =
+ .label = JavaScript JIT: Warp
+experimental-features-js-warp-description = Активирует проект Warp, повышающий производительность JavaScript и снижающий потребление памяти.
+
+# Search during IME
+experimental-features-ime-search =
+ .label = Адресная строка: показывать результаты при составлении IME
+experimental-features-ime-search-description = IME (Input Method Editor - Редактор методов ввода) — это инструмент, позволяющий вводить сложные символы, например, используемые в письменности языков Восточной Азии или Индии, с помощью стандартной клавиатуры. Включение этого эксперимента позволит держать панель адресной строки открытой, показывая результаты поиска и предложения при использовании IME для ввода текста. Обратите внимание, что IME может отображать панель, закрывающую результаты адресной строки, поэтому данная настройка предлагается только для IME не использующего этот тип панели.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/formautofill/formAutofill.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/formautofill/formAutofill.ftl
new file mode 100644
index 0000000000..88abe4ea47
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/formautofill/formAutofill.ftl
@@ -0,0 +1,49 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## OS Prompt Dialog
+
+# The macos string is preceded by the operating system (macOS) with "Firefox is trying to ",
+# and has a period added to its end. Make sure to test in your locale.
+autofill-use-payment-method-os-prompt-macos = использовать сохранённую информацию о способе оплаты
+autofill-use-payment-method-os-prompt-windows = { -brand-short-name } пытается использовать сохранённую информацию о способе оплаты. Подтвердите ниже доступ к этой учётной записи Windows.
+autofill-use-payment-method-os-prompt-other = { -brand-short-name } пытается использовать сохранённую информацию о способе оплаты.
+# In macOS, this string is preceded by the operating system with "Firefox is trying to ",
+# and has a period added to its end. Make sure to test in your locale.
+autofill-edit-payment-method-os-prompt-macos = показать сохранённую информацию о способе оплаты
+autofill-edit-payment-method-os-prompt-windows = { -brand-short-name } пытается показать сохранённую информацию о способе оплаты. Подтвердите ниже доступ к этой учётной записи Windows.
+autofill-edit-payment-method-os-prompt-other = { -brand-short-name } пытается показать сохранённую информацию о способе оплаты.
+# The links lead users to Form Autofill browser preferences.
+autofill-options-link = Настройки автозаполнения форм
+autofill-options-link-osx = Настройки автозаполнения форм
+
+## The credit card capture doorhanger
+
+# If Sync is enabled and credit card sync is available,
+# this checkbox is displayed on the doorhanger shown when saving credit card.
+credit-card-doorhanger-credit-cards-sync-checkbox = Синхронизировать все сохранённые карты между моими устройствами
+# Used on the doorhanger when users submit payment with credit card.
+credit-card-save-doorhanger-header = Сохранить надёжно эту карту?
+credit-card-save-doorhanger-description = { -brand-short-name } шифрует номер вашей карты. Ваш код безопасности не будет сохранён.
+credit-card-capture-save-button =
+ .label = Сохранить
+ .accessKey = S
+credit-card-capture-cancel-button =
+ .label = Не сейчас
+ .accessKey = W
+credit-card-capture-never-save-button =
+ .label = Никогда не сохранять карты
+ .accessKey = N
+
+# Used on the doorhanger when an credit card change is detected.
+
+credit-card-update-doorhanger-header = Обновить карту?
+credit-card-update-doorhanger-description = Обновляемая карта:
+credit-card-capture-save-new-button =
+ .label = Сохранить как новую карту
+ .accessKey = C
+credit-card-capture-update-button =
+ .label = Обновить существующую карту
+ .accessKey = U
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/alert.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/alert.ftl
new file mode 100644
index 0000000000..136cef506f
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/alert.ftl
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+alert-close =
+ .tooltiptext = Закрыть это уведомление
+alert-settings-title =
+ .tooltiptext = Параметры
+
+## Reminder Notifications
+
+notification-default-dismiss = Убрать
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/appPicker.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/appPicker.ftl
new file mode 100644
index 0000000000..170b9dea8a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/appPicker.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+app-picker-browse-button =
+ .buttonlabelextra2 = Обзор…
+app-picker-send-msg =
+ .value = Отправить этот файл в:
+app-picker-no-app-found =
+ .value = Для данного типа файла ни одного приложения не найдено.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/browser-utils.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/browser-utils.ftl
new file mode 100644
index 0000000000..1581c038a0
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/browser-utils.ftl
@@ -0,0 +1,11 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Used for data: URLs where we don't have any useful origin information
+browser-utils-url-data = (данные)
+
+# Used for extension URLs
+# Variables:
+# $extension (string) - Name of the extension that generated the URL
+browser-utils-url-extension = Расширение ({ $extension })
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/commonDialog.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/commonDialog.ftl
new file mode 100644
index 0000000000..657b550cdd
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/commonDialog.ftl
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+common-dialog-title-null = Эта страница сообщает
+common-dialog-title-system = { -brand-short-name }
+# Title displayed when the origin of a web dialog is unknown.
+common-dialog-title-unknown = Неизвестно
+# An indicator showing that Firefox is waiting for an operation to finish
+common-dialog-spinner =
+ .alt = Занят
+common-dialog-username =
+ .value = Имя пользователя
+common-dialog-password =
+ .value = Пароль
+common-dialog-copy-cmd =
+ .label = Копировать
+ .accesskey = п
+common-dialog-select-all-cmd =
+ .label = Выделить всё
+ .accesskey = ы
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/contextual-identity.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/contextual-identity.ftl
new file mode 100644
index 0000000000..125c3c850b
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/contextual-identity.ftl
@@ -0,0 +1,29 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Names of the default containers in Firefox.
+## See https://support.mozilla.org/kb/how-use-firefox-containers
+
+user-context-personal =
+ .label = Личное
+ .accesskey = Л
+user-context-work =
+ .label = Работа
+ .accesskey = Р
+user-context-banking =
+ .label = Банкинг
+ .accesskey = Б
+user-context-shopping =
+ .label = Покупки
+ .accesskey = П
+
+##
+
+user-context-none =
+ .label = Без контейнера
+ .accesskey = К
+user-context-manage-containers =
+ .label = Управление контейнерами
+ .accesskey = й
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/cookieBannerHandling.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/cookieBannerHandling.ftl
new file mode 100644
index 0000000000..e702576414
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/cookieBannerHandling.ftl
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+cookie-banner-handled-webconsole = { -brand-shorter-name } обработал баннер куки от имени пользователя.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/createProfileWizard.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/createProfileWizard.ftl
new file mode 100644
index 0000000000..1b50accc98
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/createProfileWizard.ftl
@@ -0,0 +1,53 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+create-profile-window2 =
+ .title = Мастер создания профиля
+ .style = min-width: 50em; min-height: 35em;
+
+## First wizard page
+
+create-profile-first-page-header2 =
+ { PLATFORM() ->
+ [macos] Начало
+ *[other] Добро пожаловать в { create-profile-window2.title }
+ }
+
+profile-creation-explanation-1 = { -brand-short-name } хранит информацию о ваших установках, настройках и т.д. в личном профиле.
+
+profile-creation-explanation-2 = Если вы не единственный пользователь этой копии { -brand-short-name }, вы можете воспользоваться профилями для разделения используемых данных. Для этого у каждого пользователя должен быть свой профиль.
+
+profile-creation-explanation-3 = Если вы единственный пользователь этой копии { -brand-short-name }, у вас должен быть хотя бы один профиль. Если хотите, можете пользоваться несколькими профилями для хранения разных наборов настроек. Например, вы можете использовать один профиль для личного пользования, а другой для работы.
+
+profile-creation-explanation-4 =
+ { PLATFORM() ->
+ [macos] Чтобы создать профиль, нажмите кнопку «Продолжить»:
+ *[other] Чтобы создать профиль, нажмите кнопку «Далее»:
+ }
+
+## Second wizard page
+
+create-profile-last-page-header2 =
+ { PLATFORM() ->
+ [macos] Завершение
+ *[other] Завершение работы { create-profile-window2.title }
+ }
+
+profile-creation-intro = Если у вас несколько профилей, вы можете различать их по именам. Придумайте имя самостоятельно или воспользуйтесь указанным ниже.
+
+profile-prompt = Введите имя нового профиля:
+ .accesskey = и
+
+profile-default-name =
+ .value = Пользователь по умолчанию
+
+profile-directory-explanation = Ваши настройки, параметры и другие пользовательские данные будут храниться в:
+
+create-profile-choose-folder =
+ .label = Выбрать папку…
+ .accesskey = п
+
+create-profile-use-default =
+ .label = Использовать папку по умолчанию
+ .accesskey = м
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/cspErrors.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/cspErrors.ftl
new file mode 100644
index 0000000000..b78bf1d951
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/cspErrors.ftl
@@ -0,0 +1,32 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+csp-error-missing-directive = В политике отсутствует обязательная директива «{ $directive }»
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+# $keyword (String): the name of a CSP keyword, usually 'unsafe-inline'.
+csp-error-illegal-keyword = Директива «{ $directive }» содержит запрещённое ключевое слово { $keyword }
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+# $scheme (String): a protocol name, such as "http", which appears as "http:", as it would in a URL.
+csp-error-illegal-protocol = Директива «{ $directive }» содержит запрещённый источник протокола { $scheme }:
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+# $scheme (String): a protocol name, such as "http", which appears as "http:", as it would in a URL.
+csp-error-missing-host = Протокол { $scheme }: требует указывать хост в директивах «{ $directive }»
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+# $source (String): the name of a CSP source, usually 'self'.
+csp-error-missing-source = «{ $directive }» должен включать источник { $source }
+
+# Variables:
+# $directive (String): the name of a CSP directive, such as "script-src".
+# $scheme (String): a protocol name, such as "http", which appears as "http:", as it would in a URL.
+csp-error-illegal-host-wildcard = { $scheme }: источники с символами подстановки в директивах «{ $directive }» должны включать по меньшей мере один неуниверсальный поддомен (например, *.example.com вместо *.com)
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/datepicker.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/datepicker.ftl
new file mode 100644
index 0000000000..172da7a0da
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/datepicker.ftl
@@ -0,0 +1,50 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Datepicker - Dialog for default HTML's <input type="date">
+
+
+## These labels are used by screenreaders and other assistive technology
+## to indicate the purpose of a date picker calendar and a month-year selection
+## spinner dialogs for HTML's <input type="date">
+
+date-picker-label =
+ .aria-label = Выберите дату
+date-spinner-label =
+ .aria-label = Выберите месяц и год
+
+## Text of the clear button
+
+date-picker-clear-button = Очистить
+
+## These labels are used by screenreaders and other assistive technology
+## to indicate the purpose of buttons that leaf through months of a calendar
+
+date-picker-previous =
+ .aria-label = Предыдущий месяц
+date-picker-next =
+ .aria-label = Следующий месяц
+
+## These labels are used by screenreaders and other assistive technology
+## to indicate the type of a value/unit that is being selected within a
+## Month/Year date spinner dialogs on a datepicker calendar dialog
+
+date-spinner-month =
+ .aria-label = Месяц
+date-spinner-year =
+ .aria-label = Год
+
+## These labels are used by screenreaders and other assistive technology
+## to indicate the purpose of buttons that leaf through either months
+## or years of a Month/Year date spinner on a datepicker calendar dialog
+
+date-spinner-month-previous =
+ .aria-label = Предыдущий месяц
+date-spinner-month-next =
+ .aria-label = Следующий месяц
+date-spinner-year-previous =
+ .aria-label = Предыдущий год
+date-spinner-year-next =
+ .aria-label = Следующий год
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/datetimebox.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/datetimebox.ftl
new file mode 100644
index 0000000000..028c3c48d6
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/datetimebox.ftl
@@ -0,0 +1,42 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+## Placeholders for date and time inputs
+
+datetime-year-placeholder = гггг
+datetime-month-placeholder = мм
+datetime-day-placeholder = дд
+datetime-time-placeholder = --
+
+## Field labels for input type=date
+
+datetime-year =
+ .aria-label = Год
+datetime-month =
+ .aria-label = Месяц
+datetime-day =
+ .aria-label = День
+
+## Field labels for input type=time
+
+datetime-hour =
+ .aria-label = Часы
+datetime-minute =
+ .aria-label = Минуты
+datetime-second =
+ .aria-label = Секунды
+datetime-millisecond =
+ .aria-label = Миллисекунды
+datetime-dayperiod =
+ .aria-label = AM/PM
+
+## Calendar button for input type=date
+
+
+# This label is used by screenreaders and other assistive technology
+# to indicate the purpose of a toggle button inside of the <input type="date">
+# field that opens/closes a date picker calendar dialog
+
+datetime-calendar =
+ .aria-label = Календарь
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/extensionPermissions.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/extensionPermissions.ftl
new file mode 100644
index 0000000000..b1c5fb667e
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/extensionPermissions.ftl
@@ -0,0 +1,33 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Extension permission description keys are derived from permission names.
+## Permissions for which the message has been changed and the key updated
+## must have a corresponding entry in the `PERMISSION_L10N_ID_OVERRIDES` map.
+
+webext-perms-description-bookmarks = Чтение и изменение закладок
+webext-perms-description-browserSettings = Чтение и изменение настроек браузера
+webext-perms-description-browsingData = Удаление недавней истории просмотров, куков и связанных с ними данных
+webext-perms-description-clipboardRead = Получение данных из буфера обмена
+webext-perms-description-clipboardWrite = Помещение данных в буфер обмена
+webext-perms-description-declarativeNetRequest = Блокировка содержимого на любой странице
+webext-perms-description-declarativeNetRequestFeedback = Чтение истории браузера
+webext-perms-description-devtools = Разрешение инструментам разработчика получать доступ к вашим данным в открытых вкладках
+webext-perms-description-downloads = Загрузку файлов, чтение и изменение истории загрузок браузера
+webext-perms-description-downloads-open = Открытие файлов, загруженных на ваш компьютер
+webext-perms-description-find = Чтение текста во всех открытых вкладках
+webext-perms-description-geolocation = Доступ к вашему местоположению
+webext-perms-description-history = Доступ к журналу посещений
+webext-perms-description-management = Мониторинг использования расширений и управление темами
+webext-perms-description-nativeMessaging = Обмен сообщениями с другими приложениями, помимо { -brand-short-name }
+webext-perms-description-notifications = Показ уведомлений
+webext-perms-description-pkcs11 = Предоставление услуг криптографической аутентификации
+webext-perms-description-privacy = Чтение и изменение параметров приватности
+webext-perms-description-proxy = Управление настройками прокси браузера
+webext-perms-description-sessions = Доступ к недавно закрытым вкладкам
+webext-perms-description-tabs = Доступ ко вкладкам браузера
+webext-perms-description-tabHide = Скрытие и отображение вкладок браузера
+webext-perms-description-topSites = Доступ к журналу посещений
+webext-perms-description-webNavigation = Доступ к активности браузера во время навигации
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/extensions.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/extensions.ftl
new file mode 100644
index 0000000000..0604312d4e
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/extensions.ftl
@@ -0,0 +1,114 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Headers used in the webextension permissions dialog,
+## See https://bug1308309.bmoattachments.org/attachment.cgi?id=8814612
+## for an example of the full dialog.
+## Note: This string will be used as raw markup. Avoid characters like <, >, &
+## Variables:
+## $extension (String): replaced with the localized name of the extension.
+
+webext-perms-header = Добавить { $extension }?
+webext-perms-header-with-perms = Добавить { $extension }? Это расширение будет иметь разрешение на:
+webext-perms-header-unsigned = Добавить { $extension }? Это расширение не проверено. Вредоносные расширения могут украсть вашу личную информацию или подвергнуть риску ваш компьютер. Добавляйте его, только если вы доверяете источнику.
+webext-perms-header-unsigned-with-perms = Добавить { $extension }? Это расширение не проверено. Вредоносные расширения могут украсть вашу личную информацию или подвергнуть риску ваш компьютер. Добавляйте его, только если вы доверяете источнику. Это расширение будет иметь разрешение на:
+webext-perms-sideload-header = { $extension } добавлено
+webext-perms-optional-perms-header = { $extension } запрашивает дополнительные разрешения.
+
+##
+
+webext-perms-add =
+ .label = Добавить
+ .accesskey = Д
+webext-perms-cancel =
+ .label = Отмена
+ .accesskey = О
+
+webext-perms-sideload-text = Другая программа на вашем компьютере установила дополнение, которое может повлиять на ваш браузер. Пожалуйста, ознакомьтесь с запросами разрешений для этого дополнения и выберите «Включить» или «Отмена» (чтобы оставить его отключённым).
+webext-perms-sideload-text-no-perms = Другая программа на вашем компьютере установила дополнение, которое может повлиять на ваш браузер. Пожалуйста, выберите «Включить» или «Отмена» (чтобы оставить его отключённым).
+webext-perms-sideload-enable =
+ .label = Включить
+ .accesskey = В
+webext-perms-sideload-cancel =
+ .label = Отмена
+ .accesskey = О
+
+# Variables:
+# $extension (String): replaced with the localized name of the extension.
+webext-perms-update-text = { $extension } было обновлено. Вы должны одобрить новые разрешения перед установкой обновлённой версии. Выбрав «Отмена», вы сохраните текущую версию расширения. Оно будет иметь разрешение на:
+webext-perms-update-accept =
+ .label = Обновить
+ .accesskey = Н
+
+webext-perms-optional-perms-list-intro = Оно хочет получить разрешение на:
+webext-perms-optional-perms-allow =
+ .label = Разрешить
+ .accesskey = Р
+webext-perms-optional-perms-deny =
+ .label = Отклонить
+ .accesskey = О
+
+webext-perms-host-description-all-urls = Доступ к вашим данным для всех веб-сайтов
+
+# Variables:
+# $domain (String): will be replaced by the DNS domain for which a webextension is requesting access (e.g., mozilla.org)
+webext-perms-host-description-wildcard = Доступ к вашим данным для сайтов в домене { $domain }
+
+# Variables:
+# $domainCount (Number): Integer indicating the number of additional
+# hosts for which this webextension is requesting permission.
+webext-perms-host-description-too-many-wildcards =
+ { $domainCount ->
+ [one] Доступ к вашим данным для ещё { $domainCount } домена
+ [few] Доступ к вашим данным для ещё { $domainCount } доменов
+ *[many] Доступ к вашим данным для ещё { $domainCount } доменов
+ }
+# Variables:
+# $domain (String): will be replaced by the DNS host name for which a webextension is requesting access (e.g., www.mozilla.org)
+webext-perms-host-description-one-site = Доступ к вашим данным для { $domain }
+
+# Variables:
+# $domainCount (Number): Integer indicating the number of additional
+# hosts for which this webextension is requesting permission.
+webext-perms-host-description-too-many-sites =
+ { $domainCount ->
+ [one] Доступ к вашим данным для ещё { $domainCount } сайта
+ [few] Доступ к вашим данным для ещё { $domainCount } сайтов
+ *[many] Доступ к вашим данным для ещё { $domainCount } сайтов
+ }
+
+## Headers used in the webextension permissions dialog for synthetic add-ons.
+## The part of the string describing what privileges the extension gives should be consistent
+## with the value of webext-site-perms-description-gated-perms-{sitePermission}.
+## Note, this string will be used as raw markup. Avoid characters like <, >, &
+## Variables:
+## $hostname (String): the hostname of the site the add-on is being installed from.
+
+webext-site-perms-header-with-gated-perms-midi = Это дополнение предоставляет { $hostname } доступ к вашим MIDI-устройствам.
+webext-site-perms-header-with-gated-perms-midi-sysex = Это дополнение предоставляет { $hostname } доступ к вашим MIDI-устройствам (с поддержкой SysEx).
+
+##
+
+# This string is used as description in the webextension permissions dialog for synthetic add-ons.
+# Note, the empty line is used to create a line break between the two sections.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webext-site-perms-description-gated-perms-midi =
+ Обычно это подключаемые устройства, такие как синтезаторы звука, но они также могут быть встроены в ваш компьютер.
+
+ Веб-сайтам обычно запрещен доступ к MIDI-устройствам. Неправильное использование может привести к повреждению или нарушению безопасности.
+
+## Headers used in the webextension permissions dialog.
+## Note: This string will be used as raw markup. Avoid characters like <, >, &
+## Variables:
+## $extension (String): replaced with the localized name of the extension being installed.
+## $hostname (String): will be replaced by the DNS host name for which a webextension enables permissions.
+
+webext-site-perms-header-with-perms = Добавить { $extension }? Это расширение предоставляет { $hostname } следующие возможности:
+webext-site-perms-header-unsigned-with-perms = Добавить { $extension }? Это расширение не проверено. Вредоносные расширения могут украсть вашу личную информацию или подвергнуть риску ваш компьютер. Устанавливайте его, только если вы доверяете его источнику. Это расширение предоставляет { $hostname } следующие возможности:
+
+## These should remain in sync with permissions.NAME.label in sitePermissions.properties
+
+webext-site-perms-midi = Доступ к MIDI-устройствам
+webext-site-perms-midi-sysex = Доступ к MIDI-устройствам с поддержкой SysEx
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/handlerDialog.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/handlerDialog.ftl
new file mode 100644
index 0000000000..40a728232b
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/handlerDialog.ftl
@@ -0,0 +1,70 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Permission Dialog
+## Variables:
+## $host (string) - The hostname that is initiating the request
+## $scheme (string) - The type of link that's being opened.
+## $appName (string) - Name of the application that will be opened.
+## $extension (string) - Name of extension that initiated the request
+
+permission-dialog-description = Разрешить этому сайту открыть ссылку { $scheme }?
+permission-dialog-description-file = Разрешить этому файлу открыть ссылку { $scheme }?
+permission-dialog-description-host = Разрешить { $host } открыть ссылку { $scheme }?
+permission-dialog-description-extension = Разрешить расширению { $extension } открыть ссылку { $scheme }?
+permission-dialog-description-app = Разрешить этому сайту открыть ссылку { $scheme } используя { $appName }?
+permission-dialog-description-host-app = Разрешить { $host } открыть ссылку { $scheme } используя { $appName }?
+permission-dialog-description-file-app = Разрешить этому файлу открыть ссылку { $scheme } используя { $appName }?
+permission-dialog-description-extension-app = Разрешить расширению { $extension } открыть ссылку { $scheme } используя { $appName }?
+permission-dialog-description-system-app = Открыть ссылку { $scheme } с помощью { $appName }?
+permission-dialog-description-system-noapp = Открыть ссылку { $scheme }?
+
+## Please keep the emphasis around the hostname and scheme (ie the
+## `<strong>` HTML tags). Please also keep the hostname as close to the start
+## of the sentence as your language's grammar allows.
+## Variables:
+## $host (string) - The hostname that is initiating the request
+## $scheme (string) - The type of link that's being opened.
+
+permission-dialog-remember = Всегда разрешать <strong>{ $host }</strong> открывать ссылки <strong>{ $scheme }</strong>
+permission-dialog-remember-file = Всегда разрешать этому файлу открывать ссылки <strong>{ $scheme }</strong>
+permission-dialog-remember-extension = Всегда разрешать этому расширению открывать ссылки <strong>{ $scheme }</strong>
+
+##
+
+permission-dialog-btn-open-link =
+ .label = Открыть ссылку
+ .accessKey = ы
+permission-dialog-btn-choose-app =
+ .label = Выбрать приложение
+ .accessKey = ж
+permission-dialog-unset-description = Вам нужно выбрать приложение.
+permission-dialog-set-change-app-link = Выбрать другое приложение.
+
+## Chooser dialog
+## Variables:
+## $scheme (string) - The type of link that's being opened.
+
+chooser-window =
+ .title = Выбрать приложение
+ .style = min-width: 26em; min-height: 26em;
+chooser-dialog =
+ .buttonlabelaccept = Открыть ссылку
+ .buttonaccesskeyaccept = ы
+chooser-dialog-description = Выберите приложение для открытия ссылок { $scheme }.
+# Please keep the emphasis around the scheme (ie the `<strong>` HTML tags).
+chooser-dialog-remember = Всегда использовать это приложение для открытия ссылок <strong>{ $scheme }</strong>
+chooser-dialog-remember-extra =
+ { PLATFORM() ->
+ [windows] Вы сможете изменить это в настройках { -brand-short-name }.
+ *[other] Вы сможете изменить это в настройках { -brand-short-name }.
+ }
+choose-other-app-description = Другое приложение
+choose-app-btn =
+ .label = Выбрать…
+ .accessKey = ы
+choose-other-app-window-title = Другое приложение…
+# Displayed under the name of a protocol handler in the Launch Application dialog.
+choose-dialog-privatebrowsing-disabled = Отключено в приватных окнах
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/htmlForm.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/htmlForm.ftl
new file mode 100644
index 0000000000..be81ee75b9
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/htmlForm.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# This string is shown at the end of the tooltip text for
+# <input type='file' multiple> when there are more than 21 files selected
+# (when we will only list the first 20, plus an "and X more" line).
+# Variables:
+# $fileCount (Number): The number of remaining files.
+input-file-and-more-files =
+ { $fileCount ->
+ [one] и ещё { $fileCount }
+ [few] и ещё { $fileCount }
+ *[many] и ещё { $fileCount }
+ }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/mozCard.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/mozCard.ftl
new file mode 100644
index 0000000000..6fbe8159b2
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/mozCard.ftl
@@ -0,0 +1,3 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/mozFiveStar.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/mozFiveStar.ftl
new file mode 100644
index 0000000000..785d92463f
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/mozFiveStar.ftl
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The rating out of 5 stars.
+# Variables:
+# $rating (number) - A number between 0 and 5. The translation should show at most one digit after the comma.
+moz-five-star-rating =
+ .title = Оценено на { NUMBER($rating, maximumFractionDigits: 1) } из 5
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/mozMessageBar.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/mozMessageBar.ftl
new file mode 100644
index 0000000000..3bff83d800
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/mozMessageBar.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+moz-message-bar-icon-info =
+ .alt = Инфо
+moz-message-bar-icon-warning =
+ .alt = Предупреждение
+moz-message-bar-icon-success =
+ .alt = Успех
+moz-message-bar-icon-error =
+ .alt = Ошибка
+moz-message-bar-close-button =
+ .aria-label = Закрыть
+ .title = Закрыть
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/mozSupportLink.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/mozSupportLink.ftl
new file mode 100644
index 0000000000..a155fbeb18
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/mozSupportLink.ftl
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+moz-support-link-text = Подробнее
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/notification.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/notification.ftl
new file mode 100644
index 0000000000..3e113be4b1
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/notification.ftl
@@ -0,0 +1,16 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+notification-learnmore-default-label =
+ .value = Подробнее
+
+# This label is read by screen readers when focusing the close button for an
+# "infobar" (message shown when for example a popup is blocked),
+# and shown when hovering over the button
+notification-close-button =
+ .aria-label = Закрыть
+ .title = Закрыть
+
+close-notification-message =
+ .tooltiptext = Закрыть сообщение
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/popupnotification.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/popupnotification.ftl
new file mode 100644
index 0000000000..e506e83f40
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/popupnotification.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+popup-notification-learn-more = Подробнее
+popup-notification-more-actions-button =
+ .aria-label = Другие действия
+popup-notification-default-button =
+ .label = ОК
+ .accesskey = О
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/processTypes.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/processTypes.ftl
new file mode 100644
index 0000000000..7990dcd328
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/processTypes.ftl
@@ -0,0 +1,61 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+##
+## Localization for remote types defined in RemoteType.h
+##
+
+process-type-web = Веб-содержимое
+
+# process used to run privileged about pages,
+# such as about:home
+process-type-privilegedabout = Привилегированная страница About
+
+# process used to run privileged mozilla pages,
+# such as accounts.firefox.com
+process-type-privilegedmozilla = Привилегированное содержимое Mozilla
+
+process-type-extension = Расширение
+
+# process used to open file:// URLs
+process-type-file = Локальный файл
+
+# process used to isolate a webpage from other web pages
+# to improve security
+process-type-webisolated = Изолированное веб-содержимое
+
+# process used to isolate a ServiceWorker to improve
+# performance
+process-type-webserviceworker = Изолированный Service Worker
+
+# process preallocated; may change to other types
+process-type-prealloc = Зарезервирован
+
+##
+## Localization for Gecko process types defined in GeckoProcessTypes.h
+##
+
+process-type-default = Основной
+process-type-tab = Вкладка
+
+# process used to communicate with the GPU for
+# graphics acceleration
+process-type-gpu = GPU
+
+# process used to perform network operations
+process-type-socket = Сокет
+
+# process used to decode media
+process-type-rdd = RDD
+
+# process used to run some IPC actor in their own sandbox
+process-type-utility = IPC Actor в песочнице
+
+##
+## Other
+##
+
+# fallback
+process-type-unknown = Неизвестно
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/profileDowngrade.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/profileDowngrade.ftl
new file mode 100644
index 0000000000..b4eafaef11
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/profileDowngrade.ftl
@@ -0,0 +1,18 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+profiledowngrade-window2 =
+ .title = Вы запустили устаревшую версию { -brand-product-name }
+ .style = min-width: 490px;
+profiledowngrade-window-create =
+ .label = Создать новый профиль
+profiledowngrade-sync = Использование устаревшей версии { -brand-product-name } может повредить закладки и историю просмотра, уже сохранённые в существующем профиле { -brand-product-name }. Чтобы защитить вашу информацию, создайте новый профиль для этой установки { -brand-short-name }. Вы всегда можете войти в свой { -fxaccount-brand-name }, чтобы синхронизировать ваши закладки и историю просмотра между профилями.
+profiledowngrade-sync2 = Использование устаревшей версии { -brand-product-name } может повредить закладки и историю просмотра, уже сохранённые в существующем профиле { -brand-product-name }. Чтобы защитить вашу информацию, создайте новый профиль для этой установки { -brand-short-name }. Вы всегда можете войти в свой аккаунт, чтобы синхронизировать ваши закладки и историю просмотра между профилями.
+profiledowngrade-nosync = Использование устаревшей версии { -brand-product-name } может повредить закладки и историю просмотра, уже сохранённые в существующем профиле { -brand-product-name }. Чтобы защитить вашу информацию, создайте новый профиль для этой установки { -brand-short-name }.
+profiledowngrade-quit =
+ .label =
+ { PLATFORM() ->
+ [windows] Выйти
+ *[other] Выйти
+ }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/profileSelection.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/profileSelection.ftl
new file mode 100644
index 0000000000..964e46922b
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/profileSelection.ftl
@@ -0,0 +1,38 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+profile-selection-window =
+ .title = { -brand-short-name } — выбор профиля пользователя
+
+profile-selection-button-accept =
+ .label = Запуск { -brand-short-name }
+
+profile-selection-button-cancel =
+ .label = Выход
+
+profile-selection-new-button =
+ .label = Создать…
+ .accesskey = о
+
+profile-selection-rename-button =
+ .label = Переименовать…
+ .accesskey = е
+
+profile-selection-delete-button =
+ .label = Удалить…
+ .accesskey = и
+
+profile-selection-conflict-message = Другая копия { -brand-product-name } сделала изменения в профилях. Вам необходимо перезапустить { -brand-short-name } перед тем, как производить какие-либо другие изменения.
+
+## Messages used in the profile manager
+
+profile-manager-description = { -brand-short-name } хранит информацию о ваших настройках, закладках и т.д. в личном профиле.
+
+profile-manager-work-offline =
+ .label = Работать автономно
+ .accesskey = а
+
+profile-manager-use-selected =
+ .label = Запускать выделенный профиль без запроса
+ .accesskey = п
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/resetProfile.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/resetProfile.ftl
new file mode 100644
index 0000000000..0a2a23368f
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/resetProfile.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+refresh-profile-dialog-title = Сбросить настройки { -brand-short-name } на настройки по умолчанию?
+refresh-profile-dialog-button =
+ .label = Очистить { -brand-short-name }
+refresh-profile-dialog-description = Начните заново, чтобы устранить проблемы с производительностью. Это действие удалит ваши расширения и настройки. Вы не потеряете такую важную информацию, как закладки и пароли.
+refresh-profile = Наладка { -brand-short-name }
+refresh-profile-button = Очистить { -brand-short-name }…
+refresh-profile-learn-more = Подробнее
+
+refresh-profile-progress =
+ .title = Очистка { -brand-short-name }
+refresh-profile-progress-description = Почти готово…
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/resistFingerPrinting.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/resistFingerPrinting.ftl
new file mode 100644
index 0000000000..f59225ca2f
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/resistFingerPrinting.ftl
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Spoof Accept-Language prompt
+privacy-spoof-english = Смена языка на английский затруднит вашу идентификацию и усилит приватность. Хотите запрашивать веб-страницы на английском языке?
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/run-from-dmg.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/run-from-dmg.ftl
new file mode 100644
index 0000000000..e225097e5a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/run-from-dmg.ftl
@@ -0,0 +1,28 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Strings for a dialog that may open on macOS before the app's main window
+## opens. The dialog prompts the user to allow the app to install itself in an
+## appropriate location before relaunching itself from that location if the
+## user accepts.
+
+prompt-to-install-title = Завершить установку { -brand-short-name }?
+prompt-to-install-message = Завершите эту одноэтапную установку, чтобы обновить { -brand-short-name } до актуального состояния и предотвратить потерю данных. { -brand-short-name } будет добавлен в вашу папку Программы и в Dock.
+prompt-to-install-yes-button = Установить
+prompt-to-install-no-button = Не устанавливать
+
+## Strings for a dialog that opens if the installation failed.
+
+install-failed-title = Ошибка установки { -brand-short-name }.
+install-failed-message = Не удалось установить { -brand-short-name }, но он продолжит работать.
+
+## Strings for a dialog that recommends to the user to start an existing
+## installation of the app in the Applications directory if one is detected,
+## rather than the app that was double-clicked in a .dmg.
+
+prompt-to-launch-existing-app-title = Открыть существующее приложение { -brand-short-name }?
+prompt-to-launch-existing-app-message = Вы уже установили { -brand-short-name }. Используйте установленное приложение, чтобы поддерживать его в актуальном состоянии и предотвратить потерю данных.
+prompt-to-launch-existing-app-yes-button = Открыть существующее приложение
+prompt-to-launch-existing-app-no-button = Нет, спасибо
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/tabprompts.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/tabprompts.ftl
new file mode 100644
index 0000000000..64d7494bb5
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/tabprompts.ftl
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+tabmodalprompt-username =
+ .value = Имя пользователя:
+tabmodalprompt-password =
+ .value = Пароль:
+
+tabmodalprompt-ok-button =
+ .label = ОК
+tabmodalprompt-cancel-button =
+ .label = Отмена
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/textActions.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/textActions.ftl
new file mode 100644
index 0000000000..df826cd72e
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/textActions.ftl
@@ -0,0 +1,64 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+text-action-undo =
+ .label = Отменить
+ .accesskey = ь
+text-action-undo-shortcut =
+ .key = Z
+text-action-redo =
+ .label = Повторить
+ .accesskey = р
+text-action-redo-shortcut =
+ .key = Y
+text-action-cut =
+ .label = Вырезать
+ .accesskey = з
+text-action-cut-shortcut =
+ .key = X
+text-action-copy =
+ .label = Копировать
+ .accesskey = п
+text-action-copy-shortcut =
+ .key = C
+# This command copies the link, removing additional
+# query parameters used to track users across sites.
+text-action-strip-on-share =
+ .label = Копировать без параметров отслеживания
+ .accesskey = е
+text-action-paste =
+ .label = Вставить
+ .accesskey = с
+text-action-paste-no-formatting =
+ .label = Вставить без форматирования
+ .accesskey = б
+text-action-paste-shortcut =
+ .key = V
+text-action-delete =
+ .label = Удалить
+ .accesskey = т
+text-action-select-all =
+ .label = Выделить всё
+ .accesskey = ё
+text-action-select-all-shortcut =
+ .key = A
+text-action-spell-no-suggestions =
+ .label = Вариантов не найдено
+text-action-spell-add-to-dictionary =
+ .label = Добавить в словарь
+ .accesskey = а
+text-action-spell-undo-add-to-dictionary =
+ .label = Отменить добавление в словарь
+ .accesskey = м
+text-action-spell-check-toggle =
+ .label = Проверка орфографии
+ .accesskey = в
+text-action-spell-add-dictionaries =
+ .label = Добавить словари…
+ .accesskey = л
+text-action-spell-dictionaries =
+ .label = Языки
+ .accesskey = ы
+text-action-search-text-box-clear =
+ .title = Очистить
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/timepicker.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/timepicker.ftl
new file mode 100644
index 0000000000..6fbe8159b2
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/timepicker.ftl
@@ -0,0 +1,3 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/tree.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/tree.ftl
new file mode 100644
index 0000000000..6e4979a589
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/tree.ftl
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+tree-columnpicker-restore-order =
+ .label = Восстановить порядок колонок
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/unknownContentType.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/unknownContentType.ftl
new file mode 100644
index 0000000000..cd1b475137
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/unknownContentType.ftl
@@ -0,0 +1,42 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+unknowncontenttype-handleinternally =
+ .label = Открыть с помощью { -brand-short-name }
+ .accesskey = ы
+
+unknowncontenttype-settingschange =
+ .value =
+ { PLATFORM() ->
+ [windows] Параметры могут быть изменены в настройках { -brand-short-name }.
+ *[other] Параметры могут быть изменены в настройках { -brand-short-name }.
+ }
+
+unknowncontenttype-intro = Вы собираетесь открыть:
+unknowncontenttype-which-is = являющийся:
+unknowncontenttype-from = из
+unknowncontenttype-prompt = Вы хотите сохранить этот файл?
+unknowncontenttype-action-question = Как { -brand-short-name } следует обработать этот файл?
+unknowncontenttype-open-with =
+ .label = Открыть в
+ .accesskey = т
+unknowncontenttype-other =
+ .label = Выбрать…
+unknowncontenttype-choose-handler =
+ .label =
+ { PLATFORM() ->
+ [macos] Выбрать…
+ *[other] Обзор…
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] а
+ *[other] б
+ }
+unknowncontenttype-save-file =
+ .label = Сохранить файл
+ .accesskey = х
+unknowncontenttype-remember-choice =
+ .label = Выполнять автоматически для всех файлов данного типа.
+ .accesskey = ы
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/videocontrols.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/videocontrols.ftl
new file mode 100644
index 0000000000..cf84e2f62b
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/videocontrols.ftl
@@ -0,0 +1,71 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# This label is used by screenreaders and other assistive technology to indicate
+# to users how much of the video has been loaded from the network. It will be
+# followed by the percentage of the video that has loaded (e.g. "Loading: 13%").
+videocontrols-buffer-bar-label = Загрузка:
+videocontrols-volume-control =
+ .aria-label = Громкость
+videocontrols-closed-caption-button =
+ .aria-label = Субтитры
+
+videocontrols-play-button =
+ .aria-label = Воспроизвести
+videocontrols-pause-button =
+ .aria-label = Приостановить
+videocontrols-mute-button =
+ .aria-label = Отключить звук
+videocontrols-unmute-button =
+ .aria-label = Включить звук
+videocontrols-enterfullscreen-button =
+ .aria-label = Полный экран
+videocontrols-exitfullscreen-button =
+ .aria-label = Выйти из полноэкранного режима
+videocontrols-casting-button-label =
+ .aria-label = Транслировать на экран
+videocontrols-closed-caption-off =
+ .offlabel = Выкл.
+
+# This string is used as part of the Picture-in-Picture video toggle button when
+# the mouse is hovering it.
+videocontrols-picture-in-picture-label = Картинка в картинке
+
+# This string is used as the label for a variation of the Picture-in-Picture video
+# toggle button when the mouse is hovering over the video.
+videocontrols-picture-in-picture-toggle-label2 = Открепить видео
+
+videocontrols-picture-in-picture-explainer3 = Больше экранов — веселее. Воспроизводите это видео, пока занимаетесь другими делами.
+
+videocontrols-error-aborted = Загрузка видео остановлена.
+videocontrols-error-network = Воспроизведение видео прервано из-за ошибки сети.
+videocontrols-error-decode = Видео не может быть воспроизведено, так как файл повреждён.
+videocontrols-error-src-not-supported = Формат видео или MIME-тип не поддерживается.
+videocontrols-error-no-source = Видео в поддерживаемом формате и MIME-типе не найдено.
+videocontrols-error-generic = Воспроизведение видео прервано из-за неизвестной ошибки.
+videocontrols-status-picture-in-picture = Это видео воспроизводится в режиме «Картинка в картинке».
+
+# This message shows the current position and total video duration
+#
+# Variables:
+# $position (String): The current media position
+# $duration (String): The total video duration
+#
+# For example, when at the 5 minute mark in a 6 hour long video,
+# $position would be "5:00" and $duration would be "6:00:00", result
+# string would be "5:00 / 6:00:00". Note that $duration is not always
+# available. For example, when at the 5 minute mark in an unknown
+# duration video, $position would be "5:00" and the string which is
+# surrounded by <span> would be deleted, result string would be "5:00".
+videocontrols-position-and-duration-labels = { $position }<span data-l10n-name="position-duration-format"> / { $duration }</span>
+
+# This is a plain text version of the videocontrols-position-and-duration-labels
+# string, used by screenreaders.
+#
+# Variables:
+# $position (String): The current media position
+# $duration (String): The total video duration
+videocontrols-scrubber-position-and-duration =
+ .aria-label = Позиция
+ .aria-valuetext = { $position } / { $duration }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/global/wizard.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/global/wizard.ftl
new file mode 100644
index 0000000000..e323f4baa3
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/global/wizard.ftl
@@ -0,0 +1,37 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+wizard-macos-button-back =
+ .label = Назад
+ .accesskey = Н
+wizard-linux-button-back =
+ .label = Назад
+ .accesskey = Н
+wizard-win-button-back =
+ .label = < Назад
+ .accesskey = Н
+
+wizard-macos-button-next =
+ .label = Продолжить
+ .accesskey = П
+wizard-linux-button-next =
+ .label = Далее
+ .accesskey = Д
+wizard-win-button-next =
+ .label = Далее >
+ .accesskey = Д
+
+wizard-macos-button-finish =
+ .label = Готово
+wizard-linux-button-finish =
+ .label = Готово
+wizard-win-button-finish =
+ .label = Готово
+
+wizard-macos-button-cancel =
+ .label = Отменить
+wizard-linux-button-cancel =
+ .label = Отмена
+wizard-win-button-cancel =
+ .label = Отмена
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/intl/languageNames.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/intl/languageNames.ftl
new file mode 100644
index 0000000000..8f88d1216b
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/intl/languageNames.ftl
@@ -0,0 +1,215 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+language-name-aa = Афар
+language-name-ab = Абхазский
+language-name-ach = Ачоли
+language-name-ae = Авестийский
+language-name-af = Африкаанс
+language-name-ak = Акан
+language-name-am = Амхарский
+language-name-an = Арагонский
+language-name-ar = Арабский
+language-name-as = Ассамский
+language-name-ast = Астурийский
+language-name-av = Аварский
+language-name-ay = Аймара
+language-name-az = Азербайджанский
+language-name-ba = Башкирский
+language-name-be = Белорусский
+language-name-bg = Болгарский
+language-name-bh = Бихари
+language-name-bi = Бислама
+language-name-bm = Бамбара
+language-name-bn = Бенгальский
+language-name-bo = Тибетский
+language-name-br = Бретонский
+language-name-bs = Боснийский
+language-name-ca = Каталанский
+language-name-cak = Какчикельский
+language-name-ce = Чеченский
+language-name-ch = Чаморро
+language-name-co = Корсиканский
+language-name-cr = Кри
+language-name-crh = Крымскотатарский
+language-name-cs = Чешский
+language-name-csb = Кашубский
+language-name-cu = Церковно-славянский
+language-name-cv = Чувашский
+language-name-cy = Валлийский
+language-name-da = Датский
+language-name-de = Немецкий
+language-name-dsb = Нижнелужицкий
+language-name-dv = Дивехи
+language-name-dz = Дзонг-кэ
+language-name-ee = Эве
+language-name-el = Греческий
+language-name-en = Английский
+language-name-eo = Эсперанто
+language-name-es = Испанский
+language-name-et = Эстонский
+language-name-eu = Баскский
+language-name-fa = Персидский
+language-name-ff = Фулах
+language-name-fi = Финский
+language-name-fj = Фиджи
+language-name-fo = Фарерский
+language-name-fr = Французский
+language-name-fur = Фриульский
+language-name-fy = Фризский
+language-name-ga = Ирландский
+language-name-gd = Шотландский Гэльский
+language-name-gl = Галисийский
+language-name-gn = Гуарани
+language-name-gu = Гуджарати
+language-name-gv = Мэнский
+language-name-ha = Хауса
+language-name-haw = Гавайский
+language-name-he = Иврит
+language-name-hi = Хинди
+language-name-hil = Хилигайнон
+language-name-ho = Хиримоту
+language-name-hr = Хорватский
+language-name-hsb = Верхнелужицкий
+language-name-ht = Гаитянский
+language-name-hu = Венгерский
+language-name-hy = Армянский
+language-name-hz = Гереро
+language-name-ia = Интерлингва
+language-name-id = Индонезийский
+language-name-ie = Интерлингве
+language-name-ig = Игбо
+language-name-ii = Носу
+language-name-ik = Инупиак
+language-name-io = Идо
+language-name-is = Исландский
+language-name-it = Итальянский
+language-name-iu = Инуктитут
+language-name-ja = Японский
+language-name-jv = Яванский
+language-name-ka = Грузинский
+language-name-kab = Кабильский
+language-name-kg = Конго
+language-name-ki = Кикуйю
+language-name-kj = Киньяма
+language-name-kk = Казахский
+language-name-kl = Гренландский
+language-name-km = Кхмерский
+language-name-kn = Каннада
+language-name-ko = Корейский
+language-name-kok = Конкани
+language-name-kr = Канури
+language-name-ks = Кашмири
+language-name-ku = Курдский
+language-name-kv = Коми
+language-name-kw = Корнский
+language-name-ky = Киргизский
+language-name-la = Латинский
+language-name-lb = Люксембургский
+language-name-lg = Ганда
+language-name-li = Лимбургский
+language-name-lij = Лигурский
+language-name-ln = Лингала
+language-name-lo = Лаосский
+language-name-lt = Литовский
+language-name-ltg = Латгальский
+language-name-lu = Луба-Катанга
+language-name-lv = Латышский
+language-name-mai = Майтхили
+language-name-meh = Юго-западный тлахиакский миштекский
+language-name-mg = Малагасийский
+language-name-mh = Маршальский
+language-name-mi = Маори
+language-name-mix = Мистепекский миштекский
+language-name-mk = Македонский
+language-name-ml = Малаялам
+language-name-mn = Монгольский
+language-name-mr = Маратхи
+language-name-ms = Малайский
+language-name-mt = Мальтийский
+language-name-my = Бирманский
+language-name-na = Науру
+language-name-nb = Норвежский Букмол
+language-name-nd = Ндебеле Северный
+language-name-ne = Непальский
+language-name-ng = Ндунга
+language-name-nl = Голландский
+language-name-nn = Норвежский Нюнорск
+language-name-no = Норвежский
+language-name-nr = Ндебеле Южный
+language-name-nso = Сото Северный
+language-name-nv = Навахо
+language-name-ny = Ньянджа
+language-name-oc = Окситанский
+language-name-oj = Оджибва
+language-name-om = Оромо
+language-name-or = Ория
+language-name-os = Осетинский
+language-name-pa = Панджаби
+language-name-pi = Пали
+language-name-pl = Польский
+language-name-ps = Пушту
+language-name-pt = Португальский
+language-name-qu = Кечуа
+language-name-rm = Ретороманский
+language-name-rn = Рунди
+language-name-ro = Румынский
+language-name-ru = Русский
+language-name-rw = Киньяруанда
+language-name-sa = Санскрит
+language-name-sat = Сантали
+language-name-sc = Сардинский
+language-name-sco = Шотландский
+language-name-sd = Синдхи
+language-name-se = Северносаамский
+language-name-sg = Санго
+language-name-si = Сингальский
+language-name-sk = Словацкий
+language-name-sl = Словенский
+language-name-sm = Самоанский
+language-name-sn = Шона
+language-name-so = Сомали
+language-name-son = Сонгаи
+language-name-sq = Албанский
+language-name-sr = Сербский
+language-name-ss = Свази
+language-name-st = Сото Южный
+language-name-su = Сунданский
+language-name-sv = Шведский
+language-name-sw = Суахили
+language-name-szl = Силезский
+language-name-ta = Тамильский
+language-name-te = Телугу
+language-name-tg = Таджикский
+language-name-th = Таи
+language-name-ti = Тигринья
+language-name-tig = Тигре
+language-name-tk = Туркменский
+language-name-tl = Тагалог
+language-name-tlh = Клингонский
+language-name-tn = Тсвана
+language-name-to = Тонганский
+language-name-tr = Турецкий
+language-name-trs = Трике
+language-name-ts = Тсонга
+language-name-tt = Татарский
+language-name-tw = Тви
+language-name-ty = Таитянский
+language-name-ug = Уйгурский
+language-name-uk = Украинский
+language-name-ur = Урду
+language-name-uz = Узбекский
+language-name-ve = Венда
+language-name-vi = Вьетнамский
+language-name-vo = Волапюк
+language-name-wa = Валлонский
+language-name-wen = Лужицкий
+language-name-wo = Волоф
+language-name-xh = Коса
+language-name-yi = Идиш
+language-name-yo = Йоруба
+language-name-za = Чжуань
+language-name-zam = Мьяуатланский сапотекский
+language-name-zh = Китайский
+language-name-zu = Зулу
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/intl/regionNames.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/intl/regionNames.ftl
new file mode 100644
index 0000000000..31aa7c4da0
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/intl/regionNames.ftl
@@ -0,0 +1,280 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Notice: If you're updating this list, you should also
+### update the list in mozIntl.js.
+
+region-name-ad = Андорра
+region-name-ae = Объединённые Арабские Эмираты
+region-name-af = Афганистан
+region-name-ag = Антигуа и Барбуда
+region-name-ai = Ангилья
+region-name-al = Албания
+region-name-am = Армения
+region-name-ao = Ангола
+region-name-aq = Антарктика
+region-name-ar = Аргентина
+region-name-as = Американское Самоа
+region-name-at = Австрия
+region-name-au = Австралия
+region-name-aw = Аруба
+region-name-az = Азербайджан
+region-name-ba = Босния и Герцеговина
+region-name-bb = Барбадос
+region-name-bd = Бангладеш
+region-name-be = Бельгия
+region-name-bf = Буркина-Фасо
+region-name-bg = Болгария
+region-name-bh = Бахрейн
+region-name-bi = Бурунди
+region-name-bj = Бенин
+region-name-bl = Сен-Бартелеми
+region-name-bm = Бермуды
+region-name-bn = Бруней
+region-name-bo = Боливия
+region-name-bq-2018 = Карибские Нидерланды
+region-name-br = Бразилия
+region-name-bs = Багамские острова
+region-name-bt = Бутан
+region-name-bv = Буве, остров
+region-name-bw = Ботсвана
+region-name-by = Белоруссия
+region-name-bz = Белиз
+region-name-ca = Канада
+region-name-cc = Кокосовые (Килинг) острова
+region-name-cd = Демократическая Республика Конго
+region-name-cf = Центрально-Африканская Республика
+region-name-cg = Республика Конго
+region-name-ch = Швейцария
+region-name-ci = Кот-д'Ивуар
+region-name-ck = Кука, острова
+region-name-cl = Чили
+region-name-cm = Камерун
+region-name-cn = Китай
+region-name-co = Колумбия
+region-name-cp = Клиппертон, остров
+region-name-cr = Коста-Рика
+region-name-cu = Куба
+region-name-cv-2020 = Кабо-Верде
+region-name-cw = Кюрасао
+region-name-cx = Рождества (Кристмас), остров
+region-name-cy = Кипр
+region-name-cz-2019 = Чехия
+region-name-de = Германия
+region-name-dg = Диего-Гарсия
+region-name-dj = Джибути
+region-name-dk = Дания
+region-name-dm = Доминика
+region-name-do = Доминиканская Республика
+region-name-dz = Алжир
+region-name-ec = Эквадор
+region-name-ee = Эстония
+region-name-eg = Египет
+region-name-eh = Западная Сахара
+region-name-er = Эритрея
+region-name-es = Испания
+region-name-et = Эфиопия
+region-name-fi = Финляндия
+region-name-fj = Фиджи
+region-name-fk = Фолклендские (Мальвинские) острова
+region-name-fm = Микронезия, Федеративные Штаты
+region-name-fo = Фарерские острова
+region-name-fr = Франция
+region-name-ga = Габон
+region-name-gb = Великобритания
+region-name-gd = Гренада
+region-name-ge = Грузия
+region-name-gf = Гвиана Французская
+region-name-gg = Гернси
+region-name-gh = Гана
+region-name-gi = Гибралтар
+region-name-gl = Гренландия
+region-name-gm = Гамбия
+region-name-gn = Гвинея
+region-name-gp = Гваделупа
+region-name-gq = Экваториальная Гвинея
+region-name-gr = Греция
+region-name-gs = Южная Георгия и Южные Сандвичевы острова
+region-name-gt = Гватемала
+region-name-gu = Гуам
+region-name-gw = Гвинея-Бисау
+region-name-gy = Гайана
+region-name-hk = Гонконг
+region-name-hm = Херд и Макдональд, острова
+region-name-hn = Гондурас
+region-name-hr = Хорватия
+region-name-ht = Гаити
+region-name-hu = Венгрия
+region-name-id = Индонезия
+region-name-ie = Ирландия
+region-name-il = Израиль
+region-name-im = Мэн, остров
+region-name-in = Индия
+region-name-io = Британская территория в Индийском Океане
+region-name-iq = Ирак
+region-name-ir = Иран
+region-name-is = Исландия
+region-name-it = Италия
+region-name-je = Джерси
+region-name-jm = Ямайка
+region-name-jo = Иордания
+region-name-jp = Япония
+region-name-ke = Кения
+region-name-kg = Киргизия
+region-name-kh = Камбоджа
+region-name-ki = Кирибати
+region-name-km = Коморы
+region-name-kn = Сент-Китс и Невис
+region-name-kp = Северная Корея
+region-name-kr = Южная Корея
+region-name-kw = Кувейт
+region-name-ky = Кайман, острова
+region-name-kz = Казахстан
+region-name-la = Лаос
+region-name-lb = Ливан
+region-name-lc = Сент-Люсия
+region-name-li = Лихтенштейн
+region-name-lk = Шри-Ланка
+region-name-lr = Либерия
+region-name-ls = Лесото
+region-name-lt = Литва
+region-name-lu = Люксембург
+region-name-lv = Латвия
+region-name-ly = Ливия
+region-name-ma = Марокко
+region-name-mc = Монако
+region-name-md = Молдавия
+region-name-me = Черногория
+region-name-mf = Святого Мартина, остров
+region-name-mg = Мадагаскар
+region-name-mh = Маршалловы острова
+region-name-mk-2019 = Северная Македония
+region-name-ml = Мали
+region-name-mm = Мьянма
+region-name-mn = Монголия
+region-name-mo = Макао
+region-name-mp = Северные Марианские острова
+region-name-mq = Мартиника
+region-name-mr = Мавритания
+region-name-ms = Монтсеррат
+region-name-mt = Мальта
+region-name-mu = Маврикий
+region-name-mv = Мальдивы
+region-name-mw = Малави
+region-name-mx = Мексика
+region-name-my = Малайзия
+region-name-mz = Мозамбик
+region-name-na = Намибия
+region-name-nc = Новая Каледония
+region-name-ne = Нигер
+region-name-nf = Норфолк, остров
+region-name-ng = Нигерия
+region-name-ni = Никарагуа
+region-name-nl = Нидерланды
+region-name-no = Норвегия
+region-name-np = Непал
+region-name-nr = Науру
+region-name-nu = Ниуэ
+region-name-nz = Новая Зеландия
+region-name-om = Оман
+region-name-pa = Панама
+region-name-pe = Перу
+region-name-pf = Французская Полинезия
+region-name-pg = Папуа-Новая Гвинея
+region-name-ph = Филиппины
+region-name-pk = Пакистан
+region-name-pl = Польша
+region-name-pm = Сент-Пьер и Микелон
+region-name-pn = Питкэрн, острова
+region-name-pr = Пуэрто-Рико
+region-name-pt = Португалия
+region-name-pw = Палау
+region-name-py = Парагвай
+region-name-qa = Катар
+region-name-qm = Мидуэй, острова
+region-name-qs = Бассас-да-Индия
+region-name-qu = Жуан-ди-Нова, остров
+region-name-qw = Уэйк, остров
+region-name-qx = Глорьёз, острова
+region-name-qz = Акротири
+region-name-re = Реюньон
+region-name-ro = Румыния
+region-name-rs = Сербия
+region-name-ru = Россия
+region-name-rw = Руанда
+region-name-sa = Саудовская Аравия
+region-name-sb = Соломоновы острова
+region-name-sc = Сейшелы
+region-name-sd = Судан
+region-name-se = Швеция
+region-name-sg = Сингапур
+region-name-sh = Святая Елена, Вознесения и Тристан-да-Кунья, острова
+region-name-si = Словения
+region-name-sk = Словакия
+region-name-sl = Сьерра-Леоне
+region-name-sm = Сан-Марино
+region-name-sn = Сенегал
+region-name-so = Сомали
+region-name-sr = Суринам
+region-name-ss = Южный Судан
+region-name-st = Сан-Томе и Принсипи
+region-name-sv = Сальвадор
+region-name-sx = Синт-Мартен
+region-name-sy = Сирия
+region-name-sz-2019 = Эсватини
+region-name-tc = Тёркс и Кайкос, острова
+region-name-td = Чад
+region-name-tf = Французские Южные и Антарктические территории
+region-name-tg = Того
+region-name-th = Таиланд
+region-name-tj = Таджикистан
+region-name-tk = Токелау
+region-name-tl = Тимор-Лешти
+region-name-tm = Туркменистан
+region-name-tn = Тунис
+region-name-to = Тонга
+region-name-tr = Турция
+region-name-tt = Тринидад и Тобаго
+region-name-tv = Тувалу
+region-name-tw = Тайвань
+region-name-tz = Танзания
+region-name-ua = Украина
+region-name-ug = Уганда
+region-name-us = США
+region-name-uy = Уругвай
+region-name-uz = Узбекистан
+region-name-va = Ватикан
+region-name-vc = Сент-Винсент и Гренадины
+region-name-ve = Венесуэла
+region-name-vg = Виргинские острова (Британские)
+region-name-vi = Виргинские острова (США)
+region-name-vn = Вьетнам
+region-name-vu = Вануату
+region-name-wf = Уоллис и Футуна
+region-name-ws = Самоа
+region-name-xa = Ашмор и Картье, острова
+region-name-xb = Бейкер, остров
+region-name-xc = Коралловое море, острова
+region-name-xd = Декелия
+region-name-xe = Европа, остров
+region-name-xg = Сектор Газа
+region-name-xh = Хауленд, остров
+region-name-xj = Ян-Майен
+region-name-xk = Косово
+region-name-xl = Пальмира, атолл
+region-name-xm = Кингмен, риф
+region-name-xp = Парасельские острова
+region-name-xq = Джарвис, остров
+region-name-xr = Шпицберген
+region-name-xs = Спратли, острова
+region-name-xt = Тромлен, остров
+region-name-xu = Джонстон, атолл
+region-name-xv = Навасса, остров
+region-name-xw = Западный берег реки Иордан
+region-name-ye = Йемен
+region-name-yt = Майотта
+region-name-za = Южно-Африканская Республика
+region-name-zm = Замбия
+region-name-zw = Зимбабве
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/main-window/autocomplete.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/main-window/autocomplete.ftl
new file mode 100644
index 0000000000..8bf70e8527
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/main-window/autocomplete.ftl
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Import Logins Autocomplete
+
+## Variables:
+## $host (String) - Host name of the current site.
+
+autocomplete-import-logins-chrome =
+ <div data-l10n-name="line1">Импортируйте ваш логин из Google Chrome</div>
+ <div data-l10n-name="line2">для { $host } и других сайтов</div>
+autocomplete-import-logins-chromium =
+ <div data-l10n-name="line1">Импортируйте ваш логин из Chromium</div>
+ <div data-l10n-name="line2">для { $host } и других сайтов</div>
+autocomplete-import-logins-chromium-edge =
+ <div data-l10n-name="line1">Импортируйте ваш логин из Microsoft Edge</div>
+ <div data-l10n-name="line2">для { $host } и других сайтов</div>
+
+##
+
+autocomplete-import-learn-more = Подробнее
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/main-window/findbar.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/main-window/findbar.ftl
new file mode 100644
index 0000000000..7a7839224a
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/main-window/findbar.ftl
@@ -0,0 +1,78 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### This file contains the entities needed to use the Find Bar.
+
+findbar-next =
+ .tooltiptext = Найти следующее вхождение фразы в текст
+findbar-previous =
+ .tooltiptext = Найти предыдущее вхождение фразы в текст
+
+findbar-find-button-close =
+ .tooltiptext = Закрыть строку поиска
+
+findbar-highlight-all2 =
+ .label = Подсветить все
+ .accesskey =
+ { PLATFORM() ->
+ [macos] в
+ *[other] в
+ }
+ .tooltiptext = Подсветить все вхождения фразы в текст
+
+findbar-case-sensitive =
+ .label = С учётом регистра
+ .accesskey = е
+ .tooltiptext = Поиск с учётом регистра
+
+findbar-match-diacritics =
+ .label = С учётом диакритических знаков
+ .accesskey = к
+ .tooltiptext = Искать с учётом различия между букв с акцентом и их базовых букв (например, при поиске «resume», «résumé» найдено не будет)
+
+findbar-entire-word =
+ .label = Только слова целиком
+ .accesskey = о
+ .tooltiptext = Поиск только целых слов
+
+findbar-not-found = Фраза не найдена
+
+findbar-wrapped-to-top = Достигнут низ страницы, продолжено сверху
+findbar-wrapped-to-bottom = Достигнут верх страницы, продолжено снизу
+
+findbar-normal-find =
+ .placeholder = Найти на странице
+findbar-fast-find =
+ .placeholder = Быстрый поиск
+findbar-fast-find-links =
+ .placeholder = Быстрый поиск (только ссылки)
+
+findbar-case-sensitive-status =
+ .value = (С учётом регистра)
+findbar-match-diacritics-status =
+ .value = (С учётом диакритических знаков)
+findbar-entire-word-status =
+ .value = (Только слова целиком)
+
+# Variables:
+# $current (Number): Index of the currently selected match
+# $total (Number): Total count of matches
+findbar-found-matches =
+ .value =
+ { $total ->
+ [one] { $current }-е из { $total } совпадения
+ [few] { $current }-е из { $total } совпадений
+ *[many] { $current }-е из { $total } совпадений
+ }
+
+# Variables:
+# $limit (Number): Total count of matches allowed before counting stops
+findbar-found-matches-count-limit =
+ .value =
+ { $limit ->
+ [one] Более { $limit } совпадения
+ [few] Более { $limit } совпадений
+ *[many] Более { $limit } совпадений
+ }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/neterror/certError.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/neterror/certError.ftl
new file mode 100644
index 0000000000..367dbd2c07
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/neterror/certError.ftl
@@ -0,0 +1,141 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+cert-error-intro = { $hostname } использует недействительный сертификат безопасности.
+
+cert-error-mitm-intro = Веб-сайты подтверждают свою подлинность с помощью сертификатов, выдаваемых центрами сертификации.
+
+cert-error-mitm-mozilla = { -brand-short-name } поддерживается некоммерческой организацией Mozilla, которая имеет собственное полностью открытое хранилище сертификатов центров сертификации. Это хранилище помогает убедиться, что центры сертификации следуют лучшим практикам обеспечения безопасности пользователей.
+
+cert-error-mitm-connection = Для проверки защиты соединения { -brand-short-name } использует хранилище сертификатов центров сертификации Mozilla, а не хранилище, встроенное в операционную систему пользователя. Так что, если антивирусная или сетевая программа перехватывает соединение, используя сертификат безопасности, выданный центром сертификации, отсутствующем в хранилище Mozilla, соединение считается небезопасным.
+
+cert-error-trust-unknown-issuer-intro = Кто-то может пытаться подменить настоящий сайт и вам лучше не продолжать.
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+cert-error-trust-unknown-issuer = Веб-сайты подтверждают свою подлинность с помощью сертификатов. { -brand-short-name } не доверяет { $hostname }, потому что издатель его сертификата неизвестен, сертификат является самоподписанным, или сервер не отправляет корректные промежуточные сертификаты.
+
+cert-error-trust-cert-invalid = К сертификату нет доверия, так как он был издан с использованием недействительного сертификата центра сертификации (CA).
+
+cert-error-trust-untrusted-issuer = К сертификату нет доверия, так как к сертификату его издателя нет доверия.
+
+cert-error-trust-signature-algorithm-disabled = К сертификату нет доверия, так как он был подписан с использованием алгоритма подписи, который был отключён, так как алгоритм небезопасен.
+
+cert-error-trust-expired-issuer = К сертификату нет доверия, так как у сертификата его издателя истёк срок действия.
+
+cert-error-trust-self-signed = К сертификату нет доверия, так как он является самоподписанным.
+
+cert-error-trust-symantec = Сертификаты, выпущенные GeoTrust, RapidSSL, Symantec, Thawte и VeriSign, более не считаются безопасными, так как эти центры сертификации в прошлом не соблюдали правила обеспечения безопасности.
+
+cert-error-untrusted-default = К источнику, издавшему сертификат, нет доверия.
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+cert-error-domain-mismatch = Веб-сайты подтверждают свою подлинность с помощью сертификатов. { -brand-short-name } не доверяет этому сайту, потому что он использует сертификат, недействительный для { $hostname }.
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+# $alt-name (string) - Alternate domain name for which the cert is valid.
+cert-error-domain-mismatch-single = Веб-сайты подтверждают свою подлинность с помощью сертификатов. { -brand-short-name } не доверяет этому сайту, потому что он использует сертификат, недействительный для { $hostname }. Сертификат действителен только для <a data-l10n-name="domain-mismatch-link">{ $alt-name }</a>.
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+# $alt-name (string) - Alternate domain name for which the cert is valid.
+cert-error-domain-mismatch-single-nolink = Веб-сайты подтверждают свою подлинность с помощью сертификатов. { -brand-short-name } не доверяет этому сайту, потому что он использует сертификат, недействительный для { $hostname }. Сертификат действителен только для { $alt-name }.
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+# $subject-alt-names (string) - Alternate domain names for which the cert is valid.
+cert-error-domain-mismatch-multiple = Веб-сайты подтверждают свою подлинность с помощью сертификатов. { -brand-short-name } не доверяет этому сайту, потому что он использует сертификат, недействительный для { $hostname }. Сертификат действителен только для следующих доменов: { $subject-alt-names }
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+# $not-after-local-time (Date) - Certificate is not valid after this time.
+cert-error-expired-now = Веб-сайты подтверждают свою подлинность с помощью сертификатов, имеющих ограниченный срок действия. Срок действия сертификата для { $hostname } истёк { $not-after-local-time }.
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+# $not-before-local-time (Date) - Certificate is not valid before this time.
+cert-error-not-yet-valid-now = Веб-сайты подтверждают свою подлинность с помощью сертификатов, имеющих ограниченный срок действия. Сертификат для { $hostname } начнёт действовать не ранее { $not-before-local-time }.
+
+# Variables:
+# $error (string) - NSS error code string that specifies type of cert error. e.g. unknown issuer, invalid cert, etc.
+cert-error-code-prefix = Код ошибки: { $error }
+
+# Variables:
+# $error (string) - NSS error code string that specifies type of cert error. e.g. unknown issuer, invalid cert, etc.
+cert-error-code-prefix-link = Код ошибки: <a data-l10n-name="error-code-link">{ $error }</a>
+
+# Variables:
+# $hostname (string) - Hostname of the website with SSL error.
+# $errorMessage (string) - Error message corresponding to the type of error we are experiencing.
+cert-error-ssl-connection-error = При соединении с { $hostname } произошла ошибка. { $errorMessage }
+
+# Variables:
+# $hostname (string) - Hostname of the website with cert error.
+cert-error-symantec-distrust-description = Веб-сайты подтверждают свою подлинность с помощью сертификатов, выдаваемых центрами сертификации. Большинство браузеров больше не доверяют сертификатам, выпущенным GeoTrust, RapidSSL, Symantec, Thawte и VeriSign. { $hostname } использует сертификат от одного из этих центров, поэтому его подлинность не может быть подтверждена.
+
+cert-error-symantec-distrust-admin = Вы можете уведомить об этой проблеме администратора веб-сайта.
+
+cert-error-old-tls-version = Этот веб-сайт может не поддерживать протокол TLS 1.2 — минимальную версию, поддерживаемую { -brand-short-name }.
+
+# Variables:
+# $hasHSTS (Boolean) - Indicates whether HSTS header is present.
+cert-error-details-hsts-label = Форсированное защищённое соединение HTTP (HSTS): { $hasHSTS }
+
+# Variables:
+# $hasHPKP (Boolean) - Indicates whether HPKP header is present.
+cert-error-details-key-pinning-label = Привязка открытого ключа HTTP (HPKP): { $hasHPKP }
+
+cert-error-details-cert-chain-label = Цепочка сертификата:
+
+open-in-new-window-for-csp-or-xfo-error = Открыть сайт в новом окне
+
+# Variables:
+# $hostname (string) - Hostname of the website blocked by csp or xfo error.
+csp-xfo-blocked-long-desc = Для обеспечения вашей безопасности { $hostname } не разрешил { -brand-short-name } отобразить страницу, так как она встроена в другой сайт. Чтобы увидеть эту страницу, вам нужно открыть её в новом окне.
+
+## Messages used for certificate error titles
+
+connectionFailure-title = Попытка соединения не удалась
+deniedPortAccess-title = Обращение к данному адресу заблокировано
+# "Hmm" is a sound made when considering or puzzling over something.
+# You don't have to include it in your translation if your language does not have a written word like this.
+dnsNotFound-title = Хмм. Нам не удаётся найти этот сайт.
+
+dns-not-found-trr-only-title2 = Возможная угроза безопасности при поиске этого домена
+dns-not-found-native-fallback-title2 = Возможная угроза безопасности при поиске этого домена
+
+fileNotFound-title = Файл не найден
+fileAccessDenied-title = В доступе к файлу отказано
+generic-title = Ой.
+captivePortal-title = Вход в сеть
+# "Hmm" is a sound made when considering or puzzling over something.
+# You don't have to include it in your translation if your language does not have a written word like this.
+malformedURI-title = Хмм. Этот адрес не выглядит правильным.
+netInterrupt-title = Соединение было прервано
+notCached-title = Документ просрочен
+netOffline-title = Автономный режим
+contentEncodingError-title = Ошибка в типе содержимого
+unsafeContentType-title = Небезопасный тип файла
+netReset-title = Соединение было сброшено
+netTimeout-title = Время ожидания соединения истекло
+unknownProtocolFound-title = Неизвестный тип адреса
+proxyConnectFailure-title = Прокси-сервер отказывается принимать соединения
+proxyResolveFailure-title = Не удалось найти прокси-сервер
+redirectLoop-title = Циклическое перенаправление на странице
+unknownSocketType-title = Неизвестный/неопознанный ответ сервера
+nssFailure2-title = Ошибка при установлении защищённого соединения
+csp-xfo-error-title = { -brand-short-name } не может открыть эту страницу
+corruptedContentError-title = Ошибка искажения содержимого
+sslv3Used-title = Установка защищённого соединения не удалась
+inadequateSecurityError-title = Ваше соединение не защищено
+blockedByPolicy-title = Заблокированная страница
+clockSkewError-title = Часы вашего компьютера установлены неправильно
+networkProtocolError-title = Ошибка сетевого протокола
+nssBadCert-title = Предупреждение: Вероятная угроза безопасности
+nssBadCert-sts-title = Соединение не установлено: Вероятная угроза безопасности
+certerror-mitm-title = Программное обеспечение не даёт { -brand-short-name } безопасно подключиться к этому сайту
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/neterror/netError.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/neterror/netError.ftl
new file mode 100644
index 0000000000..52e648fdbf
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/neterror/netError.ftl
@@ -0,0 +1,149 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Error page titles
+
+neterror-page-title = Проблема при загрузке страницы
+certerror-page-title = Предупреждение: Вероятная угроза безопасности
+certerror-sts-page-title = Соединение не установлено: Вероятная угроза безопасности
+neterror-blocked-by-policy-page-title = Заблокированная страница
+neterror-captive-portal-page-title = Вход в сеть
+neterror-dns-not-found-title = Сервер не найден
+neterror-malformed-uri-page-title = Некорректный URL
+
+## Error page actions
+
+neterror-advanced-button = Дополнительно…
+neterror-copy-to-clipboard-button = Копировать текст в буфер обмена
+neterror-learn-more-link = Подробнее…
+neterror-open-portal-login-page-button = Открыть страницу входа в сеть
+neterror-override-exception-button = Принять риск и продолжить
+neterror-pref-reset-button = Восстановить настройки по умолчанию
+neterror-return-to-previous-page-button = Вернуться назад
+neterror-return-to-previous-page-recommended-button = Вернуться назад (рекомендуется)
+neterror-try-again-button = Попробовать снова
+neterror-add-exception-button = Всегда продолжать для этого сайта
+neterror-settings-button = Изменить настройки DNS
+neterror-view-certificate-link = Просмотреть сертификат
+neterror-trr-continue-this-time = Продолжить на этот раз
+neterror-disable-native-feedback-warning = Всегда продолжать
+
+##
+
+neterror-pref-reset = Похоже, что причиной этого могут быть настройки безопасности вашей сети. Вы хотите восстановить настройки по умолчанию?
+neterror-error-reporting-automatic = Отправка сообщений о подобных ошибках поможет { -vendor-short-name } обнаружить и заблокировать вредоносные сайты
+
+## Specific error messages
+
+neterror-generic-error = { -brand-short-name } не может загрузить эту страницу по неопределённой причине.
+neterror-load-error-try-again = Возможно, сайт временно недоступен или перегружен запросами. Подождите некоторое время и попробуйте снова.
+neterror-load-error-connection = Если вы не можете загрузить ни одну страницу – проверьте настройки соединения с Интернетом.
+neterror-load-error-firewall = Если ваш компьютер или сеть защищены межсетевым экраном или прокси-сервером – убедитесь, что { -brand-short-name } разрешён выход в Интернет.
+neterror-captive-portal = Вы должны войти в эту сеть перед тем как сможете получить доступ в Интернет.
+# Variables:
+# $hostAndPath (String) - a suggested site (e.g. "www.example.com") that the user may have meant instead.
+neterror-dns-not-found-with-suggestion = Возможно, вы хотели перейти на <a data-l10n-name="website">{ $hostAndPath }</a>?
+neterror-dns-not-found-hint-header = <strong>Если вы ввели правильный адрес, вы можете:</strong>
+neterror-dns-not-found-hint-try-again = Повторить попытку позже
+neterror-dns-not-found-hint-check-network = Проверить подключение к сети
+neterror-dns-not-found-hint-firewall = Проверить, что { -brand-short-name } имеет разрешение на доступ в Интернет (возможно, вы подключены, но находитесь за межсетевым экраном).
+
+## TRR-only specific messages
+## Variables:
+## $hostname (String) - Hostname of the website to which the user was trying to connect.
+## $trrDomain (String) - Hostname of the DNS over HTTPS server that is currently in use.
+
+neterror-dns-not-found-trr-only-reason = { -brand-short-name } не может защитить ваш запрос адреса этого сайта через наш доверенный разрешитель имен DNS. Вот причина:
+neterror-dns-not-found-trr-only-reason2 = { -brand-short-name } не может защитить ваш запрос адреса этого сайта через нашего защищенного поставщика DNS. Вот почему:
+neterror-dns-not-found-trr-third-party-warning2 = Вы можете продолжить работу с разрешителем имён DNS по умолчанию. Однако третья сторона может увидеть, какие сайты вы посещаете.
+neterror-dns-not-found-trr-only-could-not-connect = { -brand-short-name } не удалось подключиться к { $trrDomain }.
+neterror-dns-not-found-trr-only-timeout = Подключение к { $trrDomain } заняло больше времени, чем ожидалось.
+neterror-dns-not-found-trr-offline = Вы не подключены к Интернету.
+neterror-dns-not-found-trr-unknown-host2 = { $trrDomain } не смог найти этот сайт.
+neterror-dns-not-found-trr-server-problem = С { $trrDomain } возникла проблема.
+neterror-dns-not-found-bad-trr-url = Некорректный URL.
+neterror-dns-not-found-trr-unknown-problem = Неожиданная проблема.
+
+## Native fallback specific messages
+## Variables:
+## $trrDomain (String) - Hostname of the DNS over HTTPS server that is currently in use.
+
+neterror-dns-not-found-native-fallback-reason = { -brand-short-name } не может защитить ваш запрос адреса этого сайта через наш доверенный разрешитель имён DNS. Вот причина:
+neterror-dns-not-found-native-fallback-reason2 = { -brand-short-name } не может защитить ваш запрос адреса этого сайта через нашего защищенного поставщика DNS. Вот почему:
+neterror-dns-not-found-native-fallback-heuristic = DNS через HTTPS отключён в вашей сети.
+neterror-dns-not-found-native-fallback-not-confirmed2 = { -brand-short-name } не удалось подключиться к { $trrDomain }.
+
+##
+
+neterror-file-not-found-filename = Проверьте правильность введённого имени файла, соответствие регистра и отсутствие других ошибок в имени файла.
+neterror-file-not-found-moved = Проверьте, не был ли файл переименован, удалён или перемещён.
+neterror-access-denied = Возможно, что он был удалён или перемещён, или разрешения на файл не дают получить к нему доступ.
+neterror-unknown-protocol = Для открытия данного адреса вам, возможно, понадобится установить стороннее программное обеспечение.
+neterror-redirect-loop = Эта проблема может возникать при отключении или запрещении принятия кук.
+neterror-unknown-socket-type-psm-installed = Убедитесь, что в вашей системе установлен «Менеджер личной защиты (PSM)».
+neterror-unknown-socket-type-server-config = Возможно, это произошло из-за нестандартной конфигурации сервера.
+neterror-not-cached-intro = Запрошенный документ недоступен в кеше { -brand-short-name }.
+neterror-not-cached-sensitive = В целях безопасности { -brand-short-name } не производит автоматический повторный запрос важных документов.
+neterror-not-cached-try-again = Нажмите «Попробовать снова», чтобы повторно запросить документ с веб-сайта.
+neterror-net-offline = Нажмите «Попробовать снова», чтобы подключиться к сети и перезагрузить страницу.
+neterror-proxy-resolve-failure-settings = Проверьте правильность установленных настроек прокси-сервера.
+neterror-proxy-resolve-failure-connection = Проверьте работу соединения вашего компьютера с сетью.
+neterror-proxy-resolve-failure-firewall = Если ваш компьютер или сеть защищены межсетевым экраном или прокси-сервером – убедитесь, что { -brand-short-name } разрешён выход в Интернет.
+neterror-proxy-connect-failure-settings = Проверьте настройки прокси-сервера и убедитесь, что они верны.
+neterror-proxy-connect-failure-contact-admin = Свяжитесь с вашим системным администратором и убедитесь, что прокси-сервер работает.
+neterror-content-encoding-error = Пожалуйста, свяжитесь с владельцами веб-сайта и сообщите им об этой проблеме.
+neterror-unsafe-content-type = Пожалуйста, свяжитесь с владельцами веб-сайта и сообщите им об этой проблеме.
+neterror-nss-failure-not-verified = Страница, которую вы пытаетесь просмотреть, не может быть отображена, так как достоверность полученных данных не может быть проверена.
+neterror-nss-failure-contact-website = Пожалуйста, свяжитесь с владельцами веб-сайта и сообщите им об этой проблеме.
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+certerror-intro = { -brand-short-name } обнаружил вероятную угрозу безопасности и не стал открывать <b>{ $hostname }</b>. Если вы посетите этот сайт, злоумышленники могут попытаться похитить вашу информацию, такую как пароли, адреса электронной почты или данные банковских карт.
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+certerror-sts-intro = { -brand-short-name } обнаружил вероятную угрозу безопасности и не стал открывать <b>{ $hostname }</b>, так как для подключения к этому сайту необходимо установить защищённое соединение.
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+certerror-expired-cert-intro = { -brand-short-name } обнаружил вероятную угрозу безопасности и не стал открывать <b>{ $hostname }</b>. Либо веб-сайт неправильно настроен, либо часы вашего компьютера установлены неправильно.
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+# $mitm (String) - The name of the software intercepting communications between you and the website (or “man in the middle”)
+certerror-mitm = <b>{ $hostname }</b>, вероятно, является безопасным сайтом, но защищённое соединение не может быть установлено. Эта проблема вызвана <b>{ $mitm }</b>, программным обеспечением на вашем компьютере или в вашей сети.
+neterror-corrupted-content-intro = Страница, которую вы пытаетесь просмотреть, не может быть показана, так как была обнаружена ошибка при передаче данных.
+neterror-corrupted-content-contact-website = Пожалуйста, свяжитесь с владельцами веб-сайта и сообщите им об этой проблеме.
+# Do not translate "SSL_ERROR_UNSUPPORTED_VERSION".
+neterror-sslv3-used = Дополнительная информация: SSL_ERROR_UNSUPPORTED_VERSION
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+neterror-inadequate-security-intro = <b>{ $hostname }</b> использует защитную технологию, которая является устаревшей и уязвимой для атаки. Злоумышленник может легко выявить информацию, которая, как вы думали, находится в безопасности. Для того, чтобы вы смогли посетить веб-сайт, администратор веб-сайта должен сначала исправить его сервер.
+# Do not translate "NS_ERROR_NET_INADEQUATE_SECURITY".
+neterror-inadequate-security-code = Код ошибки: NS_ERROR_NET_INADEQUATE_SECURITY
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+# $now (Date) - The current datetime, to be formatted as a date
+neterror-clock-skew-error = Ваш компьютер считает, что текущее время — { DATETIME($now, dateStyle: "medium") }, что не даёт { -brand-short-name } установить защищённое соединение. Чтобы посетить <b>{ $hostname }</b>, укажите в компьютерных часах в настройках системы текущую дату, время и часовой пояс, а затем перезагрузите <b>{ $hostname }</b>.
+neterror-network-protocol-error-intro = Страница, которую вы пытаетесь просмотреть, не может быть показана, так как была обнаружена ошибка в сетевом протоколе.
+neterror-network-protocol-error-contact-website = Пожалуйста, свяжитесь с владельцами веб-сайта и сообщите им об этой проблеме.
+certerror-expired-cert-second-para = Вероятно, сертификат веб-сайта истёк, что не даёт { -brand-short-name } установить защищённое соединение. Если вы посетите этот сайт, злоумышленники могут попытаться похитить вашу информацию, такую как пароли, адреса электронной почты или данные банковских карт.
+certerror-expired-cert-sts-second-para = Вероятно, сертификат веб-сайта истёк, что не даёт { -brand-short-name } установить защищённое соединение.
+certerror-what-can-you-do-about-it-title = Как вы можете это исправить?
+certerror-unknown-issuer-what-can-you-do-about-it-website = Скорее всего, эта проблема связана с самим веб-сайтом, и вы ничего не сможете с этим сделать.
+certerror-unknown-issuer-what-can-you-do-about-it-contact-admin = Если вы находитесь в корпоративной сети или используете антивирусную программу, вы можете связаться со службой поддержки для получения помощи. Вы также можете сообщить администратору веб-сайта об этой проблеме.
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+# $now (Date) - The current datetime, to be formatted as a date
+certerror-expired-cert-what-can-you-do-about-it-clock = Часы вашего компьютера показывают { DATETIME($now, dateStyle: "medium") }. Убедитесь, что в настройках системы вашего компьютера установлены правильные дата, время и часовой пояс, после чего перезагрузите <b>{ $hostname }</b>.
+certerror-expired-cert-what-can-you-do-about-it-contact-website = Если ваши часы установлены правильно, то скорее всего неправильно настроен веб-сайт и вы ничего не сможете с этим сделать. Вы можете сообщить об этой проблеме администратору веб-сайта.
+certerror-bad-cert-domain-what-can-you-do-about-it = Скорее всего, эта проблема связана с самим веб-сайтом, и вы ничего не сможете с этим сделать. Вы можете сообщить администратору веб-сайта об этой проблеме.
+certerror-mitm-what-can-you-do-about-it-antivirus = Если ваша антивирусная программа содержит функциональность, которая сканирует защищённые соединения (часто называемую «веб-сканирование» или «https-сканирование», то вы можете отключить её. Если это не поможет, то вы можете удалить и переустановить антивирусное программное обеспечение.
+certerror-mitm-what-can-you-do-about-it-corporate = Если вы находитесь в корпоративной сети, то вы можете связаться со своим IT-отделом.
+# Variables:
+# $mitm (String) - The name of the software intercepting communications between you and the website (or “man in the middle”)
+certerror-mitm-what-can-you-do-about-it-attack = Если вы не знакомы с <b>{ $mitm }</b>, то, вероятно, это может быть атакой и вам не следует продолжать работу с сайтом.
+# Variables:
+# $mitm (String) - The name of the software intercepting communications between you and the website (or “man in the middle”)
+certerror-mitm-what-can-you-do-about-it-attack-sts = Если вы не знакомы с <b>{ $mitm }</b>, то, вероятно, это может быть атакой и вы никак не сможете получить доступ к сайту.
+# Variables:
+# $hostname (String) - Hostname of the website to which the user was trying to connect.
+certerror-what-should-i-do-bad-sts-cert-explanation = <b>{ $hostname }</b> имеет политику безопасности называемую Форсированное защищённое соединение HTTP (HSTS), что означает, что { -brand-short-name } может подключиться к нему только через защищённое соединение. Вы не можете добавить исключение, чтобы посетить этот сайт.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/neterror/nsserrors.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/neterror/nsserrors.ftl
new file mode 100644
index 0000000000..dcc75af0dd
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/neterror/nsserrors.ftl
@@ -0,0 +1,344 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+# DO NOT ADD THINGS OTHER THAN ERROR MESSAGES HERE.
+# This file gets parsed into a JS dictionary of all known error message ids in
+# gen_aboutneterror_codes.py . If we end up needing fluent attributes or
+# refactoring them in some way, the script will need updating.
+
+psmerr-ssl-disabled = Не удалось установить защищённое соединение, так как была отключена поддержка протокола SSL.
+psmerr-ssl2-disabled = Не удалось установить защищённое соединение, так как сайт использует устаревшую, незащищённую версию протокола SSL.
+# This is a multi-line message.
+psmerr-hostreusedissuerandserial =
+ Вы получили недействительный сертификат. Обратитесь к администратору сервера или отправьте сообщение по электронной почте тому, от кого вы получили этот сертификат, и сообщите следующую информацию:
+
+ Этот сертификат содержит тот же серийный номер, что и один из других сертификатов, выданных тем же центром сертификации. Пожалуйста, получите новый сертификат с уникальным номером.
+ssl-error-export-only-server = Не удалось установить защищённое соединение. Узел не поддерживает шифрование высокой стойкости.
+ssl-error-us-only-server = Не удалось установить защищённое соединение. Узел требует использования неподдерживаемого шифрования высокой стойкости.
+ssl-error-no-cypher-overlap = Установка защищённого соединения с этим узлом не удалась: отсутствуют общие алгоритм(ы) шифрования.
+ssl-error-no-certificate = Не удалось найти сертификат или ключ, необходимый для аутентификации.
+ssl-error-bad-certificate = Не удалось установить защищённое соединение с этим узлом: сертификат другой стороны был отклонён.
+ssl-error-bad-client = К серверу со стороны клиента поступили некорректные данные.
+ssl-error-bad-server = К клиенту со стороны сервера поступили некорректные данные.
+ssl-error-unsupported-certificate-type = Данный тип сертификата не поддерживается.
+ssl-error-unsupported-version = Узел, с которым вы соединяетесь, использует неподдерживаемую версию протокола безопасности.
+ssl-error-wrong-certificate = Аутентификация клиента не удалась: закрытый ключ в базе данных ключей не соответствует открытому ключу в базе данных сертификатов.
+ssl-error-bad-cert-domain = Не удалось установить защищённое соединение с этим узлом: запрошенное имя домена не соответствует указанному в сертификате сервера.
+ssl-error-post-warning = Нераспознанный код ошибки SSL.
+ssl-error-ssl2-disabled = Узел поддерживает только протокол SSL версии 2, поддержка которого у вас отключёна.
+ssl-error-bad-mac-read = SSL получило запись с некорректным кодом аутентификации сообщения.
+ssl-error-bad-mac-alert = SSL-узел сообщил о некорректном коде аутентификации сообщения.
+ssl-error-bad-cert-alert = SSL-узел не может верифицировать ваш сертификат.
+ssl-error-revoked-cert-alert = SSL-узел отклонил ваш сертификат, как отозванный.
+ssl-error-expired-cert-alert = SSL-узел отклонил ваш сертификат, как истёкший.
+ssl-error-ssl-disabled = Соединение не удалось: SSL отключён.
+ssl-error-fortezza-pqg = Соединение не удалось: узел SSL находится в другом домене FORTEZZA.
+ssl-error-unknown-cipher-suite = Был запрошен неизвестный набор шифров SSL.
+ssl-error-no-ciphers-supported = В данной программе не имеется и не включено ни одного набора шифров.
+ssl-error-bad-block-padding = SSL получило запись с плохим выравниванием блоков.
+ssl-error-rx-record-too-long = SSL получило запись, длина которой превышает максимально допустимую.
+ssl-error-tx-record-too-long = SSL попыталось отправить запись, длина которой превышает максимально допустимую.
+ssl-error-rx-malformed-hello-request = SSL получило искажённое сообщение рукопожатия «Запрос приветствия».
+ssl-error-rx-malformed-client-hello = SSL получило искажённое сообщение рукопожатия «Приветствие клиента».
+ssl-error-rx-malformed-server-hello = SSL получило искажённое сообщение рукопожатия «Приветствие сервера».
+ssl-error-rx-malformed-certificate = SSL получило искажённое сообщение рукопожатия «Сертификат».
+ssl-error-rx-malformed-server-key-exch = SSL получило искажённое сообщение рукопожатия «Обмен ключами сервера».
+ssl-error-rx-malformed-cert-request = SSL получило искажённое сообщение рукопожатия «Запрос на сертификат».
+ssl-error-rx-malformed-hello-done = SSL получило искажённое сообщение рукопожатия «Приветствие сервера завершено».
+ssl-error-rx-malformed-cert-verify = SSL получило искажённое сообщение рукопожатия «Проверка сертификата».
+ssl-error-rx-malformed-client-key-exch = SSL получило искажённое сообщение рукопожатия «Обмен ключами клиента».
+ssl-error-rx-malformed-finished = SSL получило искажённое сообщение рукопожатия «Завершено».
+ssl-error-rx-malformed-change-cipher = SSL получило повреждённую запись Change Cipher Spec.
+ssl-error-rx-malformed-alert = SSL получило повреждённую запись Alert.
+ssl-error-rx-malformed-handshake = SSL получило искажённую запись рукопожатия.
+ssl-error-rx-malformed-application-data = SSL получило повреждённую запись Application Data.
+ssl-error-rx-unexpected-hello-request = SSL получило неожиданное сообщение рукопожатия «Запрос приветствия».
+ssl-error-rx-unexpected-client-hello = SSL получило неожиданное сообщение рукопожатия «Приветствие клиента».
+ssl-error-rx-unexpected-server-hello = SSL получило неожиданное сообщение рукопожатия «Приветствие сервера».
+ssl-error-rx-unexpected-certificate = SSL получило неожиданное сообщение рукопожатия «Сертификат».
+ssl-error-rx-unexpected-server-key-exch = SSL получило неожиданное сообщение рукопожатия «Обмен ключами сервера».
+ssl-error-rx-unexpected-cert-request = SSL получило неожиданное сообщение рукопожатия «Запрос на сертификат».
+ssl-error-rx-unexpected-hello-done = SSL получило неожиданное сообщение рукопожатия «Приветствие сервера завершено».
+ssl-error-rx-unexpected-cert-verify = SSL получило неожиданное сообщение рукопожатия «Проверка сертификата».
+ssl-error-rx-unexpected-client-key-exch = SSL получило неожиданное сообщение рукопожатия «Обмен ключами клиента».
+ssl-error-rx-unexpected-finished = SSL получило неожиданное сообщение рукопожатия «Завершено».
+ssl-error-rx-unexpected-change-cipher = SSL получило неожиданную запись Change Cipher Spec.
+ssl-error-rx-unexpected-alert = SSL получило неожиданную запись Alert.
+ssl-error-rx-unexpected-handshake = SSL получило неожиданную запись рукопожатия.
+ssl-error-rx-unexpected-application-data = SSL получило неожиданную запись Application Data.
+ssl-error-rx-unknown-record-type = SSL получило запись с неизвестным типом содержимого.
+ssl-error-rx-unknown-handshake = SSL получило сообщение рукопожатия с неизвестным типом содержимого.
+ssl-error-rx-unknown-alert = SSL получило предупреждающую запись с неизвестным описанием предупреждения.
+ssl-error-close-notify-alert = SSL-узел закрыл это соединение.
+ssl-error-handshake-unexpected-alert = SSL-узел не ожидал полученного сообщения рукопожатия.
+ssl-error-decompression-failure-alert = SSL-узлу не удалось произвести расжатие полученной им SSL записи.
+ssl-error-handshake-failure-alert = SSL-узлу не удалось договориться о приемлемом наборе параметров безопасности.
+ssl-error-illegal-parameter-alert = SSL-узел отклонил сообщение рукопожатия из-за неприемлемого содержимого.
+ssl-error-unsupported-cert-alert = SSL-узел не поддерживает тип сертификатов, который он получил.
+ssl-error-certificate-unknown-alert = У узла SSL возникла какая-то неизвестная проблема с сертификатом, который он получил.
+ssl-error-generate-random-failure = SSL обнаружило отказ своего датчика случайных чисел.
+ssl-error-sign-hashes-failure = Не удалось поставить цифровую подпись на данные, требуемые для проверки вашего сертификата.
+ssl-error-extract-public-key-failure = SSL не удалось извлечь открытый ключ из сертификата узла.
+ssl-error-server-key-exchange-failure = Неизвестная ошибка при обработке рукопожатия «Обмен ключами SSL сервера».
+ssl-error-client-key-exchange-failure = Неизвестная ошибка при обработке рукопожатия «Обмен ключами SSL клиента».
+ssl-error-encryption-failure = Алгоритм шифрации массы данных потерпел неудачу в выбранном наборе шифров.
+ssl-error-decryption-failure = Алгоритм дешифрации массы данных потерпел неудачу в выбранном наборе шифров.
+ssl-error-socket-write-failure = Попытка записать зашифрованные данные в нижележащий сокет не удалась.
+ssl-error-md5-digest-failure = Ошибка функции MD5 digest.
+ssl-error-sha-digest-failure = Ошибка функции SHA-1 digest.
+ssl-error-mac-computation-failure = Ошибка вычисления MAC.
+ssl-error-sym-key-context-failure = Неудача при создании контекста Симметричного Ключа.
+ssl-error-sym-key-unwrap-failure = Неудача при разворачивании Симметричного ключа в сообщении Client Key Exchange.
+ssl-error-pub-key-size-limit-exceeded = SSL-сервер попытался использовать открытый ключ внутренней стойкости с экспортным набором шифров.
+ssl-error-iv-param-failure = Код PKCS11 не смог транслировать вектор инициализации в параметр.
+ssl-error-init-cipher-suite-failure = Ошибка инициализации выбранного набора шифров.
+ssl-error-session-key-gen-failure = Клиенту не удалось сгенерировать сессионные ключи для SSL-сессии.
+ssl-error-no-server-key-for-alg = У сервера нет ключа для данного алгоритма попытки обмена ключами.
+ssl-error-token-insertion-removal = Токен PKCS#11 был вставлен или извлечён во время проведения операции.
+ssl-error-token-slot-not-found = Для произведения требуемой операции ни одного токена PKCS#11 найдено не было.
+ssl-error-no-compression-overlap = Установка защищённого соединения с этим узлом не удалась: нет общих алгоритмов сжатия.
+ssl-error-handshake-not-completed = Невозможно начать новое рукопожатие SSL, пока не завершится текущее рукопожатие.
+ssl-error-bad-handshake-hash-value = От узла были получены некорректные хеш-функции рукопожатия.
+ssl-error-cert-kea-mismatch = Полученный сертификат не может быть использован с выбранным алгоритмом обмена ключами.
+ssl-error-no-trusted-ssl-client-ca = При аутентификации SSL-клиента ни одного доверенного центра сертификации не найдено.
+ssl-error-session-not-found = Идентификатор SSL-сессии клиента не найден в сессионном кеше сервера.
+ssl-error-decryption-failed-alert = Узлу не удалось расшифровать полученную им SSL-запись.
+ssl-error-record-overflow-alert = Узел получил SSL-запись с длиной, превышающей разрешённую.
+ssl-error-unknown-ca-alert = Узел не распознаёт и не доверяет Центру Сертификации, выдавшему ваш сертификат.
+ssl-error-access-denied-alert = Узел получил действительный сертификат, но в доступе было отказано.
+ssl-error-decode-error-alert = Узел не смог декодировать сообщение рукопожатия SSL.
+ssl-error-decrypt-error-alert = Узел сообщает об ошибке проверки подписи или обмена ключами.
+ssl-error-export-restriction-alert = Узел сообщает о согласовании не совместимом с экспортными ограничениями.
+ssl-error-protocol-version-alert = Узел сообщает о несовместимой или неподдерживаемой версии протокола.
+ssl-error-insufficient-security-alert = Сервер требует использовать более стойкие шифры, чем те, что поддерживает клиент.
+ssl-error-internal-error-alert = Узел сообщает, что у него произошла внутренняя ошибка.
+ssl-error-user-canceled-alert = Пользователь узла отменил рукопожатие.
+ssl-error-no-renegotiation-alert = Узел не разрешает повторное согласование параметров безопасности SSL.
+ssl-error-server-cache-not-configured = Кеш SSL-сервера для этого сокета не сконфигурирован и не отключён.
+ssl-error-unsupported-extension-alert = SSL-узел не поддерживает запрошенное расширение TLS hello.
+ssl-error-certificate-unobtainable-alert = SSL-узел не смог получить ваш сертификат по предоставленному ему URL.
+ssl-error-unrecognized-name-alert = SSL-узел не имеет сертификата для запрошенного DNS-имени.
+ssl-error-bad-cert-status-response-alert = SSL-узлу не удалось получить OCSP-ответ для этого сертификата.
+ssl-error-bad-cert-hash-value-alert = SSL-узел сообщил о неверном значении хеша сертификата.
+ssl-error-rx-unexpected-new-session-ticket = SSL получило неожиданное сообщение рукопожатия «Новый сеансовый мандат».
+ssl-error-rx-malformed-new-session-ticket = SSL получило искажённое сообщение рукопожатия «Новый сеансовый мандат».
+ssl-error-decompression-failure = SSL получило упакованную запись, которую не удалось распаковать.
+ssl-error-renegotiation-not-allowed = На этом SSL-сокете повторное согласование не разрешено.
+ssl-error-unsafe-negotiation = Узел попытался произвести рукопожатие в старом (потенциально уязвимом) стиле.
+ssl-error-rx-unexpected-uncompressed-record = SSL получило неожиданную несжатую запись.
+ssl-error-weak-server-ephemeral-dh-key = SSL получило слабый эфемерный ключ Диффи-Хеллмана в сообщении рукопожатия «Обмен ключами сервера».
+ssl-error-next-protocol-data-invalid = SSL получило некорректные данные NPN-расширения.
+ssl-error-feature-not-supported-for-ssl2 = Функция SSL не поддерживается для соединений SSL 2.0.
+ssl-error-feature-not-supported-for-servers = Функция SSL не поддерживается для серверов.
+ssl-error-feature-not-supported-for-clients = Функция SSL не поддерживается для клиентов.
+ssl-error-invalid-version-range = Некорректный диапазон версий SSL.
+ssl-error-cipher-disallowed-for-version = SSL-узел выбрал набор шифров, не разрешённый для выбранной версии протокола.
+ssl-error-rx-malformed-hello-verify-request = SSL получило искажённое сообщение рукопожатия «Запрос подтверждения приветствия».
+ssl-error-rx-unexpected-hello-verify-request = SSL получило неожиданное сообщение рукопожатия «Запрос подтверждения приветствия».
+ssl-error-feature-not-supported-for-version = Функция SSL не поддерживается для этой версии протокола.
+ssl-error-rx-unexpected-cert-status = SSL получило неожиданное сообщение рукопожатия «Статус сертификата».
+ssl-error-unsupported-hash-algorithm = Алгоритм хеширования, использованный TLS-узлом, не поддерживается.
+ssl-error-digest-failure = Ошибка функции digest.
+ssl-error-incorrect-signature-algorithm = В подписанном цифровой подписью элементе указан некорректный алгоритм подписи.
+ssl-error-next-protocol-no-callback = Было включено расширение next protocol negotiation, но обратный вызов был очищен до того, когда это было необходимо.
+ssl-error-next-protocol-no-protocol = Сервер не поддерживает ни один из протоколов, о которых объявляет клиент в расширении ALPN.
+ssl-error-inappropriate-fallback-alert = Сервер отклонил рукопожатие, так как клиент понизил свою версию TLS ниже минимальной версии поддерживаемой сервером.
+ssl-error-weak-server-cert-key = Сертификат сервера включал в себя открытый ключ, который был слишком слабым.
+ssl-error-rx-short-dtls-read = Недостаточно места в буфере для DTLS-записи.
+ssl-error-no-supported-signature-algorithm = Был настроен неподдерживаемый алгоритм подписи TLS.
+ssl-error-unsupported-signature-algorithm = Узел использовал неподдерживаемую комбинацию алгоритмов подписи и хеша.
+ssl-error-missing-extended-master-secret = Узел попытался возобновить без корректного расширения extended_master_secret.
+ssl-error-unexpected-extended-master-secret = Узел попытался возобновить с неожиданным расширением extended_master_secret.
+sec-error-io = Во время безопасной авторизации произошла ошибка ввода/вывода.
+sec-error-library-failure = ошибка библиотеки безопасности
+sec-error-bad-data = библиотека безопасности: получены плохие данные.
+sec-error-output-len = библиотека безопасности: ошибка длины выходных данных.
+sec-error-input-len = в библиотеке безопасности произошла ошибка длины входных данных.
+sec-error-invalid-args = библиотека безопасности: неверные аргументы.
+sec-error-invalid-algorithm = библиотека безопасности: неверный алгоритм.
+sec-error-invalid-ava = библиотека безопасности: неверное AVA.
+sec-error-invalid-time = Неправильно отформатированная строка времени.
+sec-error-bad-der = библиотека безопасности: неверный формат сообщения в кодировке DER.
+sec-error-bad-signature = Сертификат узла имеет неверную подпись.
+sec-error-expired-certificate = Сертификат узла истёк.
+sec-error-revoked-certificate = Сертификат узла был отозван.
+sec-error-unknown-issuer = Издатель сертификата узла не распознан.
+sec-error-bad-key = Неверный открытый ключ узла.
+sec-error-bad-password = Введённый пароль неверен.
+sec-error-retry-password = Новый пароль введён неверно. Попробуйте ещё раз.
+sec-error-no-nodelock = библиотека безопасности: no nodelock.
+sec-error-bad-database = библиотека безопасности: плохая база данных.
+sec-error-no-memory = библиотека безопасности: не удалось выделить память.
+sec-error-untrusted-issuer = Пользователь не доверяет издателю сертификата узла.
+sec-error-untrusted-cert = Пользователь не доверяет сертификату узла.
+sec-error-duplicate-cert = Этот сертификат уже существует в вашей базе данных.
+sec-error-duplicate-cert-name = Имя загруженного сертификата совпадает с именем, уже существующем в вашей базе данных.
+sec-error-adding-cert = Ошибка добавления сертификата в базу данных.
+sec-error-filing-key = Ошибка при повторном заполнении ключа для этого сертификата.
+sec-error-no-key = Закрытый ключ для этого сертификата не найден в базе данных ключей
+sec-error-cert-valid = Этот сертификат действителен.
+sec-error-cert-not-valid = Этот сертификат недействителен.
+sec-error-cert-no-response = Библиотека сертификатов: Нет ответа
+sec-error-expired-issuer-certificate = Сертификат издателя сертификатов истёк. Проверьте системную дату и время.
+sec-error-crl-expired = CRL издателя сертификата истёк. Обновите его или проверьте время и дату вашей системы.
+sec-error-crl-bad-signature = CRL издателя сертификата имеет неверную подпись.
+sec-error-crl-invalid = Формат нового CRL некорректен.
+sec-error-extension-value-invalid = Значение расширения сертификата неверно.
+sec-error-extension-not-found = Расширение сертификата не найдено.
+sec-error-ca-cert-invalid = Сертификат издателя неверен.
+sec-error-path-len-constraint-invalid = Ограничение на длину пути сертификата неверно.
+sec-error-cert-usages-invalid = Поле использования сертификата неверно.
+sec-internal-only = **ТОЛЬКО Внутренний модуль**
+sec-error-invalid-key = Ключ не поддерживает запрошенную операцию.
+sec-error-unknown-critical-extension = Сертификат содержит неизвестное критическое расширение.
+sec-error-old-crl = Новый CRL выпущен в то же время или раньше текущего.
+sec-error-no-email-cert = Не зашифровано или подписано: у вас ещё нет сертификата электронной почты.
+sec-error-no-recipient-certs-query = Не зашифровано: у вас не имеется сертификатов для каждого из адресатов.
+sec-error-not-a-recipient = Расшифровка не удалась: вы не получатель, или подходящий сертификат и закрытый ключ не могут быть найдены.
+sec-error-pkcs7-keyalg-mismatch = Расшифровка не удалась: алгоритм шифрования ключа не соответствует вашему сертификату.
+sec-error-pkcs7-bad-signature = Неудача при проверке подписи: не найдено лицо поставившее подпись, имеется слишком много лиц, поставивших подпись или же данные неверны или повреждены.
+sec-error-unsupported-keyalg = Неподдерживаемый или неизвестный алгоритм ключа.
+sec-error-decryption-disallowed = Расшифровка не удалась: зашифровано с использованием запрещённого алгоритма или размера ключа.
+sec-error-no-krl = Ни одного KRL для сертификата этого сайта найдено не было.
+sec-error-krl-expired = KRL для сертификата этого сайта просрочен.
+sec-error-krl-bad-signature = KRL для сертификата этого сайта имеет неверную подпись.
+sec-error-revoked-key = Ключ для сертификата этого сайта был отозван.
+sec-error-krl-invalid = Новый KRL имеет неверный формат.
+sec-error-need-random = библиотека безопасности: нужны случайные данные.
+sec-error-no-module = библиотека безопасности: ни один модуль безопасности запрошенную операцию выполнить не может.
+sec-error-no-token = Карта безопасности или токен не существуют, нуждаются в инициализации, или были удалены.
+sec-error-read-only = библиотека безопасности: база данных открыта только для чтения.
+sec-error-no-slot-selected = Ни одного слота или токена выбрано не было.
+sec-error-cert-nickname-collision = Сертификат с этим псевдонимом уже существует.
+sec-error-key-nickname-collision = Ключ с этим псевдонимом уже существует.
+sec-error-safe-not-created = ошибка создания безопасного объекта
+sec-error-baggage-not-created = ошибка создания объекта багажа
+sec-error-bad-export-algorithm = Требуемый алгоритм не разрешён.
+sec-error-exporting-certificates = Ошибка при попытке экспорта сертификатов.
+sec-error-importing-certificates = Ошибка при попытке импорта сертификатов.
+sec-error-pkcs12-decoding-pfx = Импорт не удался. Ошибка декодирования. Файл негоден.
+sec-error-pkcs12-invalid-mac = Импорт не удался. Недействительный MAC. Пароль неверен или файл повреждён.
+sec-error-pkcs12-unsupported-mac-algorithm = Импорт не удался. Алгоритм MAC не поддерживается.
+sec-error-pkcs12-unsupported-transport-mode = Импорт не удался. Поддерживаются только режимы проверки целостности пароля и приватности.
+sec-error-pkcs12-corrupt-pfx-structure = Импорт не удался. Структура файла повреждена.
+sec-error-pkcs12-unsupported-pbe-algorithm = Импорт не удался. Неподдерживаемый алгоритм шифрования.
+sec-error-pkcs12-unsupported-version = Импорт не удался. Неподдерживаемая версия файла.
+sec-error-pkcs12-privacy-password-incorrect = Импорт не удался. Неверный пароль приватности.
+sec-error-pkcs12-cert-collision = Импорт не удался. Этот псевдоним уже существует в базе данных.
+sec-error-user-cancelled = Пользователь нажал Отмена.
+sec-error-pkcs12-duplicate-data = Не импортировано, уже в базе данных.
+sec-error-message-send-aborted = Сообщение не отправлено.
+sec-error-inadequate-key-usage = Использование ключа сертификата не подходит под требования неудавшейся операции.
+sec-error-inadequate-cert-type = Этот тип сертификата не одобрен для приложения.
+sec-error-cert-addr-mismatch = Адрес в сертификате подписи не соответствует адресу в заголовках сообщения.
+sec-error-pkcs12-unable-to-import-key = Импорт не удался. Ошибка при попытке импорта закрытого ключа.
+sec-error-pkcs12-importing-cert-chain = Импорт не удался. Ошибка при попытке импорта цепочки сертификата.
+sec-error-pkcs12-unable-to-locate-object-by-name = Экспорт не удался. Не удалось найти сертификат или ключ по псевдониму.
+sec-error-pkcs12-unable-to-export-key = Экспорт не удался. Не удалось найти и экспортировать закрытый ключ.
+sec-error-pkcs12-unable-to-write = Экспорт не удался. Не удалось произвести запись в экспортируемый файл.
+sec-error-pkcs12-unable-to-read = Импорт не удался. Не удалось произвести чтение из импортируемого файла.
+sec-error-pkcs12-key-database-not-initialized = Экспорт не удался. База данных ключей повреждена или удалена.
+sec-error-keygen-fail = Не удалось сгенерировать ключевую пару из открытого/закрытого ключа.
+sec-error-invalid-password = Введённый пароль неверен. Введите другой пароль.
+sec-error-retry-old-password = Предыдущий пароль введён неверно. Попробуйте ещё раз.
+sec-error-bad-nickname = Псевдоним сертификата уже используется.
+sec-error-not-fortezza-issuer = Цепочка узла FORTEZZA содержит не-FORTEZZA сертификат.
+sec-error-cannot-move-sensitive-key = Чувствительный ключ не может быть перемещён в слот, где он необходим.
+sec-error-js-invalid-module-name = Неправильное имя модуля.
+sec-error-js-invalid-dll = Неправильный путь/имя файла модуля.
+sec-error-js-add-mod-failure = Не удалось добавить модуль
+sec-error-js-del-mod-failure = Не удалось удалить модуль
+sec-error-old-krl = Новый KRL выпущен в то же время или раньше текущего.
+sec-error-ckl-conflict = Издатель нового CKL отличается от издателя текущего CKL. Удалите текущий CKL.
+sec-error-cert-not-in-name-space = Центру сертификации, издавшему этот сертификат, не разрешено издавать сертификаты с этим именем.
+sec-error-krl-not-yet-valid = Список отозванных ключей для этого сертификата ещё не действителен.
+sec-error-crl-not-yet-valid = Список отозванных сертификатов для этого сертификата ещё не действителен.
+sec-error-unknown-cert = Запрошенный сертификат не может быть найден.
+sec-error-unknown-signer = Сертификат подписавшего лица не может быть найден.
+sec-error-cert-bad-access-location = Строка расположения сервера статуса сертификатов имеет некорректный формат.
+sec-error-ocsp-unknown-response-type = Не удалось полностью декодировать OCSP-ответ; его тип неизвестен.
+sec-error-ocsp-bad-http-response = OCSP-сервер вернул неожиданные/неверные HTTP данные.
+sec-error-ocsp-malformed-request = OCSP-сервер посчитал запрос повреждённым или неправильно сформированным.
+sec-error-ocsp-server-error = OCSP-сервер сообщает, что у него произошла внутренняя ошибка.
+sec-error-ocsp-try-server-later = OCSP-сервер предлагает попробовать позже.
+sec-error-ocsp-request-needs-sig = OCSP-сервер требует, чтобы запрос был подписан.
+sec-error-ocsp-unauthorized-request = OCSP-сервер отклонил этот запрос, как неавторизованный.
+sec-error-ocsp-unknown-response-status = Не удалось распознать статус, возвращённый OCSP-сервером.
+sec-error-ocsp-unknown-cert = OCSP-сервер не имеет статуса этого сертификата.
+sec-error-ocsp-not-enabled = Перед выполнением этой операции вы должны включить OCSP.
+sec-error-ocsp-no-default-responder = Перед выполнением этой операции вы должны установить OCSP-сервер по умолчанию.
+sec-error-ocsp-malformed-response = Ответ, полученный от OCSP-сервера, повреждён или неправильно сформирован.
+sec-error-ocsp-unauthorized-response = Лицо, подписавшее OCSP-ответ, не авторизовано на выдачу статуса этого сертификата.
+sec-error-ocsp-future-response = OCSP-ответ ещё не действителен (содержит дату из будущего).
+sec-error-ocsp-old-response = OCSP-ответ содержит устаревшую информацию.
+sec-error-digest-not-found = В подписанном сообщении не найден дайджест CMS или PKCS #7.
+sec-error-unsupported-message-type = Неподдерживаемый тип сообщения CMS или PKCS #7.
+sec-error-module-stuck = Модуль PKCS #11 не может быть удалён, так как он в данный момент используется.
+sec-error-bad-template = Не удалось декодировать данные ASN.1. Указанный шаблон некорректен.
+sec-error-crl-not-found = Ни одного подходящего CRL не найдено.
+sec-error-reused-issuer-and-serial = Вы пытаетесь импортировать сертификат с тем же издателем/серийным номером, что и существующий, но это не тот же сертификат.
+sec-error-busy = NSS не может завершить работу. Имеются используемые объекты.
+sec-error-extra-input = DER-кодированное сообщение содержит лишние неиспользуемые данные.
+sec-error-unsupported-elliptic-curve = Неподдерживаемая эллиптическая кривая.
+sec-error-unsupported-ec-point-form = Неподдерживаемая форма точки эллиптической кривой.
+sec-error-unrecognized-oid = Нераспознаваемый идентификатор объекта.
+sec-error-ocsp-invalid-signing-cert = Неверный сертификат подписи OCSP в OCSP-ответе.
+sec-error-revoked-certificate-crl = Согласно списку отозванных сертификатов издателя сертификат был отозван.
+sec-error-revoked-certificate-ocsp = OCSP-сервер издателя сообщил, что сертификат отозван.
+sec-error-crl-invalid-version = Неизвестный номер версии списка отозванных сертификатов издателя.
+sec-error-crl-v1-critical-extension = Список отозванных сертификатов издателя версии 1 содержит критическое расширение.
+sec-error-crl-unknown-critical-extension = Список отозванных сертификатов издателя версии 2 содержит неизвестное критическое расширение.
+sec-error-unknown-object-type = Указан неизвестный тип объекта.
+sec-error-incompatible-pkcs11 = Драйвер PKCS #11 нарушает спецификацию и имеет проблемы с совместимостью.
+sec-error-no-event = В настоящее время нет новых событий в слотах.
+sec-error-crl-already-exists = CRL уже существует.
+sec-error-not-initialized = NSS не инициализирован.
+sec-error-token-not-logged-in = Операция не удалась, так как не был произведён вход с помощью токена PKCS#11.
+sec-error-ocsp-responder-cert-invalid = Настроенный сертификат OCSP-сервера неверен.
+sec-error-ocsp-bad-signature = OCSP-ответ имеет неверную подпись.
+sec-error-out-of-search-limits = Поиск проверки статуса сертификата вышел за лимиты поиска
+sec-error-invalid-policy-mapping = Отображение политики содержит anypolicy
+sec-error-policy-validation-failed = Цепочка сертификатов не проходит проверку политики
+sec-error-unknown-aia-location-type = Неизвестный тип расположения в расширении сертификата AIA
+sec-error-bad-http-response = Сервер вернул некорректный ответ HTTP
+sec-error-bad-ldap-response = Сервер вернул некорректный ответ LDAP
+sec-error-failed-to-encode-data = Не удалось закодировать данные с помощью ASN1 кодировщика
+sec-error-bad-info-access-location = Некорректное расположение доступа к информации в расширении сертификата
+sec-error-libpkix-internal = Во время проверки статуса сертификата произошла внутренняя ошибка Libpkix.
+sec-error-pkcs11-general-error = Модуль PKCS #11 вернул CKR_GENERAL_ERROR, указывающую, что произошла невосстановимая ошибка.
+sec-error-pkcs11-function-failed = Модуль PKCS #11 вернул CKR_FUNCTION_FAILED, указывающую, что запрошенная функция не могла быть исполнена. Повтор той же операции может закончиться успехом.
+sec-error-pkcs11-device-error = Модуль PKCS #11 вернул CKR_DEVICE_ERROR, означающую, что проблема лежит в токене или слоте.
+sec-error-bad-info-access-method = Неизвестный метод доступа к информации в расширении сертификата.
+sec-error-crl-import-failed = Ошибка при попытке импорта CRL.
+sec-error-expired-password = Пароль истёк.
+sec-error-locked-password = Пароль заблокирован.
+sec-error-unknown-pkcs11-error = Неизвестная ошибка PKCS #11.
+sec-error-bad-crl-dp-url = Некорректный или неподдерживаемый URL в имени точки распространения CRL.
+sec-error-cert-signature-algorithm-disabled = Сертификат был подписан с использованием алгоритма подписи, который был отключён, так как он небезопасен.
+mozilla-pkix-error-key-pinning-failure = Сервер использует привязку ключа (HPKP), но не удалось построить ни одной доверенной цепочки сертификатов, соответствующих набору привязки. Нарушения при привязке ключа не могут быть проигнорированы.
+mozilla-pkix-error-ca-cert-used-as-end-entity = Сервер использует сертификат с расширением основных ограничений, идентифицирующий его как центр сертификации. Для правильно выданного сертификата так быть не должно.
+mozilla-pkix-error-inadequate-key-size = Размер ключа сертификата, полученного от сервера, слишком мал для установки защищённого соединения.
+mozilla-pkix-error-v1-cert-used-as-ca = Сертификат X.509 версии 1, который не является якорем доверия, был использован для выдачи сертификата сервера. Сертификаты X.509 версии 1 устарели и не должны использоваться для подписи других сертификатов.
+mozilla-pkix-error-not-yet-valid-certificate = Сертификат, полученный от сервера, ещё не действителен.
+mozilla-pkix-error-not-yet-valid-issuer-certificate = Сертификат, который ещё не действителен, был использован для выдачи сертификата сервера.
+mozilla-pkix-error-signature-algorithm-mismatch = Алгоритм подписи в поле подписи сертификата не соответствует алгоритму в его поле signatureAlgorithm.
+mozilla-pkix-error-ocsp-response-for-cert-missing = OCSP-ответ не включает в себя статус проверяемого сертификата.
+mozilla-pkix-error-validity-too-long = Срок действия сертификата, полученного от сервера, является слишком большим.
+mozilla-pkix-error-required-tls-feature-missing = Отсутствует необходимая функция TLS.
+mozilla-pkix-error-invalid-integer-encoding = Сертификат, полученный от сервера, содержит некорректно закодированное целое число. Типичными причинами этого являются отрицательные серийные номера, отрицательные RSA moduli, и кодировки длиннее, чем это необходимо.
+mozilla-pkix-error-empty-issuer-name = В сертификате, полученном от сервера, отличительное имя издателя является пустым.
+mozilla-pkix-error-additional-policy-constraint-failed = При проверке этого сертификата выявлено нарушение ограничений, наложенных дополнительной политикой.
+mozilla-pkix-error-self-signed-cert = К сертификату нет доверия, так как он является самоподписанным.
+xp-java-remove-principal-error = Не могу удалить принципала
+xp-java-delete-privilege-error = Не могу удалить привилегию
+xp-java-cert-not-exists-error = Этот принципал не имеет сертификата
+xp-sec-fortezza-bad-card = Карта Fortezza не была инициализирована должным образом. Пожалуйста, удалите её и возвратите издателю.
+xp-sec-fortezza-no-card = Не найдено ни одной карты Fortezza
+xp-sec-fortezza-none-selected = Не выбрано ни одной карты Fortezza
+xp-sec-fortezza-more-info = Выберите личность, о которой хотите больше узнать
+xp-sec-fortezza-person-not-found = Личность не найдена
+xp-sec-fortezza-no-more-info = Нет дополнительной информации об этой личности
+xp-sec-fortezza-bad-pin = Неверный Pin
+xp-sec-fortezza-person-error = Не могу инициализировать личности Fortezza.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/passwordmgr/passwordmgr.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/passwordmgr/passwordmgr.ftl
new file mode 100644
index 0000000000..cb4b1a1505
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/passwordmgr/passwordmgr.ftl
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Save and update password doorhanger
+
+# Variables
+# $host (String) - Hostname for which the password is saved for.
+password-manager-save-password-message = Сохранить пароль для { $host }?
+password-manager-save-password-button-deny =
+ .label = Не сейчас
+ .accesskey = Т
+password-manager-save-password-button-allow =
+ .label = Сохранить
+ .accesskey = о
+password-manager-save-password-button-never =
+ .label = Никогда не сохранять
+ .accesskey = и
+# Variables
+# $host (String) - Hostname for which the password is updated for.
+password-manager-update-password-message = Обновить пароль для { $host }?
+password-manager-update-password-button-delete =
+ .label = Удалить сохранённый пароль
+ .accesskey = К
+password-manager-update-login-add-username = Добавить имя пользователя к сохранённому паролю?
+password-manager-password-password-button-allow =
+ .label = Обновить
+ .accesskey = н
+password-manager-update-password-button-deny =
+ .label = Не обновлять
+ .accesskey = е
+# This is displayed in place of the username when it is missing.
+password-manager-no-username-placeholder = Нет имени пользователя
+password-manager-toggle-password =
+ .label = Показать пароль
+ .accesskey = о
+password-manager-confirm-password-change = Подтверждение смены пароля
+password-manager-select-username = Выберите логин для обновления:
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/payments/payments.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/payments/payments.ftl
new file mode 100644
index 0000000000..365e51ec42
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/payments/payments.ftl
@@ -0,0 +1,51 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+# This value isn't used directly, but is defined to avoid duplication
+# in the "credit-card-label-*" strings.
+#
+# Variables:
+# $month (String): Numeric month the credit card expires
+# $year (String): Four-digit year the credit card expires
+credit-card-expiration = Срок действия: { $month }/{ $year }
+
+## These labels serve as a description of a credit card.
+## The description must include a credit card number, and may optionally
+## include a cardholder name, an expiration date, or both, so we have
+## four variations.
+
+# Label for a credit card with a number only
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $type (String): Credit card type
+credit-card-label-number-2 = { $number }
+ .aria-label = { $type }{ credit-card-label-number-2 }
+
+# Label for a credit card with a number and name
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $name (String): Cardholder name
+# $type (String): Credit card type
+credit-card-label-number-name-2 = { $number }, { $name }
+ .aria-label = { $type } { credit-card-label-number-name-2 }
+
+# Label for a credit card with a number and expiration date
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $type (String): Credit card type
+credit-card-label-number-expiration-2 = { $number }, { credit-card-expiration }
+ .aria-label = { $type } { credit-card-label-number-expiration-2 }
+
+# Label for a credit card with a number, name, and expiration date
+#
+# Variables:
+# $number (String): Partially-redacted credit card number
+# $name (String): Cardholder name
+# $type (String): Credit card type
+credit-card-label-number-name-expiration-2 = { $number }, { $name }, { credit-card-expiration }
+ .aria-label = { $type } { credit-card-label-number-name-expiration-2 }
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/pdfviewer/viewer.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/pdfviewer/viewer.ftl
new file mode 100644
index 0000000000..a2172138dc
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/pdfviewer/viewer.ftl
@@ -0,0 +1,386 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Main toolbar buttons (tooltips and alt text for images)
+
+pdfjs-previous-button =
+ .title = Предыдущая страница
+pdfjs-previous-button-label = Предыдущая
+pdfjs-next-button =
+ .title = Следующая страница
+pdfjs-next-button-label = Следующая
+# .title: Tooltip for the pageNumber input.
+pdfjs-page-input =
+ .title = Страница
+# Variables:
+# $pagesCount (Number) - the total number of pages in the document
+# This string follows an input field with the number of the page currently displayed.
+pdfjs-of-pages = из { $pagesCount }
+# Variables:
+# $pageNumber (Number) - the currently visible page
+# $pagesCount (Number) - the total number of pages in the document
+pdfjs-page-of-pages = ({ $pageNumber } из { $pagesCount })
+pdfjs-zoom-out-button =
+ .title = Уменьшить
+pdfjs-zoom-out-button-label = Уменьшить
+pdfjs-zoom-in-button =
+ .title = Увеличить
+pdfjs-zoom-in-button-label = Увеличить
+pdfjs-zoom-select =
+ .title = Масштаб
+pdfjs-presentation-mode-button =
+ .title = Перейти в режим презентации
+pdfjs-presentation-mode-button-label = Режим презентации
+pdfjs-open-file-button =
+ .title = Открыть файл
+pdfjs-open-file-button-label = Открыть
+pdfjs-print-button =
+ .title = Печать
+pdfjs-print-button-label = Печать
+pdfjs-save-button =
+ .title = Сохранить
+pdfjs-save-button-label = Сохранить
+# Used in Firefox for Android as a tooltip for the download button (“download” is a verb).
+pdfjs-download-button =
+ .title = Загрузить
+# Used in Firefox for Android as a label for the download button (“download” is a verb).
+# Length of the translation matters since we are in a mobile context, with limited screen estate.
+pdfjs-download-button-label = Загрузить
+pdfjs-bookmark-button =
+ .title = Текущая страница (просмотр URL-адреса с текущей страницы)
+pdfjs-bookmark-button-label = Текущая страница
+# Used in Firefox for Android.
+pdfjs-open-in-app-button =
+ .title = Открыть в приложении
+# Used in Firefox for Android.
+# Length of the translation matters since we are in a mobile context, with limited screen estate.
+pdfjs-open-in-app-button-label = Открыть в программе
+
+## Secondary toolbar and context menu
+
+pdfjs-tools-button =
+ .title = Инструменты
+pdfjs-tools-button-label = Инструменты
+pdfjs-first-page-button =
+ .title = Перейти на первую страницу
+pdfjs-first-page-button-label = Перейти на первую страницу
+pdfjs-last-page-button =
+ .title = Перейти на последнюю страницу
+pdfjs-last-page-button-label = Перейти на последнюю страницу
+pdfjs-page-rotate-cw-button =
+ .title = Повернуть по часовой стрелке
+pdfjs-page-rotate-cw-button-label = Повернуть по часовой стрелке
+pdfjs-page-rotate-ccw-button =
+ .title = Повернуть против часовой стрелки
+pdfjs-page-rotate-ccw-button-label = Повернуть против часовой стрелки
+pdfjs-cursor-text-select-tool-button =
+ .title = Включить Инструмент «Выделение текста»
+pdfjs-cursor-text-select-tool-button-label = Инструмент «Выделение текста»
+pdfjs-cursor-hand-tool-button =
+ .title = Включить Инструмент «Рука»
+pdfjs-cursor-hand-tool-button-label = Инструмент «Рука»
+pdfjs-scroll-page-button =
+ .title = Использовать прокрутку страниц
+pdfjs-scroll-page-button-label = Прокрутка страниц
+pdfjs-scroll-vertical-button =
+ .title = Использовать вертикальную прокрутку
+pdfjs-scroll-vertical-button-label = Вертикальная прокрутка
+pdfjs-scroll-horizontal-button =
+ .title = Использовать горизонтальную прокрутку
+pdfjs-scroll-horizontal-button-label = Горизонтальная прокрутка
+pdfjs-scroll-wrapped-button =
+ .title = Использовать масштабируемую прокрутку
+pdfjs-scroll-wrapped-button-label = Масштабируемая прокрутка
+pdfjs-spread-none-button =
+ .title = Не использовать режим разворотов страниц
+pdfjs-spread-none-button-label = Без разворотов страниц
+pdfjs-spread-odd-button =
+ .title = Развороты начинаются с нечётных номеров страниц
+pdfjs-spread-odd-button-label = Нечётные страницы слева
+pdfjs-spread-even-button =
+ .title = Развороты начинаются с чётных номеров страниц
+pdfjs-spread-even-button-label = Чётные страницы слева
+
+## Document properties dialog
+
+pdfjs-document-properties-button =
+ .title = Свойства документа…
+pdfjs-document-properties-button-label = Свойства документа…
+pdfjs-document-properties-file-name = Имя файла:
+pdfjs-document-properties-file-size = Размер файла:
+# Variables:
+# $size_kb (Number) - the PDF file size in kilobytes
+# $size_b (Number) - the PDF file size in bytes
+pdfjs-document-properties-kb = { $size_kb } КБ ({ $size_b } байт)
+# Variables:
+# $size_mb (Number) - the PDF file size in megabytes
+# $size_b (Number) - the PDF file size in bytes
+pdfjs-document-properties-mb = { $size_mb } МБ ({ $size_b } байт)
+pdfjs-document-properties-title = Заголовок:
+pdfjs-document-properties-author = Автор:
+pdfjs-document-properties-subject = Тема:
+pdfjs-document-properties-keywords = Ключевые слова:
+pdfjs-document-properties-creation-date = Дата создания:
+pdfjs-document-properties-modification-date = Дата изменения:
+# Variables:
+# $date (Date) - the creation/modification date of the PDF file
+# $time (Time) - the creation/modification time of the PDF file
+pdfjs-document-properties-date-string = { $date }, { $time }
+pdfjs-document-properties-creator = Приложение:
+pdfjs-document-properties-producer = Производитель PDF:
+pdfjs-document-properties-version = Версия PDF:
+pdfjs-document-properties-page-count = Число страниц:
+pdfjs-document-properties-page-size = Размер страницы:
+pdfjs-document-properties-page-size-unit-inches = дюймов
+pdfjs-document-properties-page-size-unit-millimeters = мм
+pdfjs-document-properties-page-size-orientation-portrait = книжная
+pdfjs-document-properties-page-size-orientation-landscape = альбомная
+pdfjs-document-properties-page-size-name-a-three = A3
+pdfjs-document-properties-page-size-name-a-four = A4
+pdfjs-document-properties-page-size-name-letter = Letter
+pdfjs-document-properties-page-size-name-legal = Legal
+
+## Variables:
+## $width (Number) - the width of the (current) page
+## $height (Number) - the height of the (current) page
+## $unit (String) - the unit of measurement of the (current) page
+## $name (String) - the name of the (current) page
+## $orientation (String) - the orientation of the (current) page
+
+pdfjs-document-properties-page-size-dimension-string = { $width } × { $height } { $unit } ({ $orientation })
+pdfjs-document-properties-page-size-dimension-name-string = { $width } × { $height } { $unit } ({ $name }, { $orientation })
+
+##
+
+# The linearization status of the document; usually called "Fast Web View" in
+# English locales of Adobe software.
+pdfjs-document-properties-linearized = Быстрый просмотр в Web:
+pdfjs-document-properties-linearized-yes = Да
+pdfjs-document-properties-linearized-no = Нет
+pdfjs-document-properties-close-button = Закрыть
+
+## Print
+
+pdfjs-print-progress-message = Подготовка документа к печати…
+# Variables:
+# $progress (Number) - percent value
+pdfjs-print-progress-percent = { $progress }%
+pdfjs-print-progress-close-button = Отмена
+pdfjs-printing-not-supported = Предупреждение: В этом браузере не полностью поддерживается печать.
+pdfjs-printing-not-ready = Предупреждение: PDF не полностью загружен для печати.
+
+## Tooltips and alt text for side panel toolbar buttons
+
+pdfjs-toggle-sidebar-button =
+ .title = Показать/скрыть боковую панель
+pdfjs-toggle-sidebar-notification-button =
+ .title = Показать/скрыть боковую панель (документ имеет содержание/вложения/слои)
+pdfjs-toggle-sidebar-button-label = Показать/скрыть боковую панель
+pdfjs-document-outline-button =
+ .title = Показать содержание документа (двойной щелчок, чтобы развернуть/свернуть все элементы)
+pdfjs-document-outline-button-label = Содержание документа
+pdfjs-attachments-button =
+ .title = Показать вложения
+pdfjs-attachments-button-label = Вложения
+pdfjs-layers-button =
+ .title = Показать слои (дважды щёлкните, чтобы сбросить все слои к состоянию по умолчанию)
+pdfjs-layers-button-label = Слои
+pdfjs-thumbs-button =
+ .title = Показать миниатюры
+pdfjs-thumbs-button-label = Миниатюры
+pdfjs-current-outline-item-button =
+ .title = Найти текущий элемент структуры
+pdfjs-current-outline-item-button-label = Текущий элемент структуры
+pdfjs-findbar-button =
+ .title = Найти в документе
+pdfjs-findbar-button-label = Найти
+pdfjs-additional-layers = Дополнительные слои
+
+## Thumbnails panel item (tooltip and alt text for images)
+
+# Variables:
+# $page (Number) - the page number
+pdfjs-thumb-page-title =
+ .title = Страница { $page }
+# Variables:
+# $page (Number) - the page number
+pdfjs-thumb-page-canvas =
+ .aria-label = Миниатюра страницы { $page }
+
+## Find panel button title and messages
+
+pdfjs-find-input =
+ .title = Найти
+ .placeholder = Найти в документе…
+pdfjs-find-previous-button =
+ .title = Найти предыдущее вхождение фразы в текст
+pdfjs-find-previous-button-label = Назад
+pdfjs-find-next-button =
+ .title = Найти следующее вхождение фразы в текст
+pdfjs-find-next-button-label = Далее
+pdfjs-find-highlight-checkbox = Подсветить все
+pdfjs-find-match-case-checkbox-label = С учётом регистра
+pdfjs-find-match-diacritics-checkbox-label = С учётом диакритических знаков
+pdfjs-find-entire-word-checkbox-label = Слова целиком
+pdfjs-find-reached-top = Достигнут верх документа, продолжено снизу
+pdfjs-find-reached-bottom = Достигнут конец документа, продолжено сверху
+# Variables:
+# $current (Number) - the index of the currently active find result
+# $total (Number) - the total number of matches in the document
+pdfjs-find-match-count =
+ { $total ->
+ [one] { $current } из { $total } совпадения
+ [few] { $current } из { $total } совпадений
+ *[many] { $current } из { $total } совпадений
+ }
+# Variables:
+# $limit (Number) - the maximum number of matches
+pdfjs-find-match-count-limit =
+ { $limit ->
+ [one] Более { $limit } совпадения
+ [few] Более { $limit } совпадений
+ *[many] Более { $limit } совпадений
+ }
+pdfjs-find-not-found = Фраза не найдена
+
+## Predefined zoom values
+
+pdfjs-page-scale-width = По ширине страницы
+pdfjs-page-scale-fit = По размеру страницы
+pdfjs-page-scale-auto = Автоматически
+pdfjs-page-scale-actual = Реальный размер
+# Variables:
+# $scale (Number) - percent value for page scale
+pdfjs-page-scale-percent = { $scale }%
+
+## PDF page
+
+# Variables:
+# $page (Number) - the page number
+pdfjs-page-landmark =
+ .aria-label = Страница { $page }
+
+## Loading indicator messages
+
+pdfjs-loading-error = При загрузке PDF произошла ошибка.
+pdfjs-invalid-file-error = Некорректный или повреждённый PDF-файл.
+pdfjs-missing-file-error = PDF-файл отсутствует.
+pdfjs-unexpected-response-error = Неожиданный ответ сервера.
+pdfjs-rendering-error = При создании страницы произошла ошибка.
+
+## Annotations
+
+# Variables:
+# $date (Date) - the modification date of the annotation
+# $time (Time) - the modification time of the annotation
+pdfjs-annotation-date-string = { $date }, { $time }
+# .alt: This is used as a tooltip.
+# Variables:
+# $type (String) - an annotation type from a list defined in the PDF spec
+# (32000-1:2008 Table 169 – Annotation types).
+# Some common types are e.g.: "Check", "Text", "Comment", "Note"
+pdfjs-text-annotation-type =
+ .alt = [Аннотация { $type }]
+
+## Password
+
+pdfjs-password-label = Введите пароль, чтобы открыть этот PDF-файл.
+pdfjs-password-invalid = Неверный пароль. Пожалуйста, попробуйте снова.
+pdfjs-password-ok-button = OK
+pdfjs-password-cancel-button = Отмена
+pdfjs-web-fonts-disabled = Веб-шрифты отключены: не удалось задействовать встроенные PDF-шрифты.
+
+## Editing
+
+pdfjs-editor-free-text-button =
+ .title = Текст
+pdfjs-editor-free-text-button-label = Текст
+pdfjs-editor-ink-button =
+ .title = Рисовать
+pdfjs-editor-ink-button-label = Рисовать
+pdfjs-editor-stamp-button =
+ .title = Добавить или изменить изображения
+pdfjs-editor-stamp-button-label = Добавить или изменить изображения
+pdfjs-editor-remove-button =
+ .title = Удалить
+
+## Remove button for the various kind of editor.
+
+pdfjs-editor-remove-ink-button =
+ .title = Удалить рисунок
+pdfjs-editor-remove-freetext-button =
+ .title = Удалить текст
+pdfjs-editor-remove-stamp-button =
+ .title = Удалить изображение
+pdfjs-editor-remove-highlight-button =
+ .title = Удалить выделение
+
+##
+
+# Editor Parameters
+pdfjs-editor-free-text-color-input = Цвет
+pdfjs-editor-free-text-size-input = Размер
+pdfjs-editor-ink-color-input = Цвет
+pdfjs-editor-ink-thickness-input = Толщина
+pdfjs-editor-ink-opacity-input = Прозрачность
+pdfjs-editor-stamp-add-image-button =
+ .title = Добавить изображение
+pdfjs-editor-stamp-add-image-button-label = Добавить изображение
+pdfjs-free-text =
+ .aria-label = Текстовый редактор
+pdfjs-free-text-default-content = Начните вводить…
+pdfjs-ink =
+ .aria-label = Редактор рисования
+pdfjs-ink-canvas =
+ .aria-label = Созданное пользователем изображение
+
+## Alt-text dialog
+
+# Alternative text (alt text) helps when people can't see the image.
+pdfjs-editor-alt-text-button-label = Альтернативный текст
+pdfjs-editor-alt-text-edit-button-label = Изменить альтернативный текст
+pdfjs-editor-alt-text-dialog-label = Выберите вариант
+pdfjs-editor-alt-text-dialog-description = Альтернативный текст помогает, когда люди не видят изображение или оно не загружается.
+pdfjs-editor-alt-text-add-description-label = Добавить описание
+pdfjs-editor-alt-text-add-description-description = Старайтесь составлять 1–2 предложения, описывающих предмет, обстановку или действия.
+pdfjs-editor-alt-text-mark-decorative-label = Отметить как декоративное
+pdfjs-editor-alt-text-mark-decorative-description = Используется для декоративных изображений, таких как рамки или водяные знаки.
+pdfjs-editor-alt-text-cancel-button = Отменить
+pdfjs-editor-alt-text-save-button = Сохранить
+pdfjs-editor-alt-text-decorative-tooltip = Помечен как декоративный
+# .placeholder: This is a placeholder for the alt text input area
+pdfjs-editor-alt-text-textarea =
+ .placeholder = Например: «Молодой человек садится за стол, чтобы поесть»
+
+## Editor resizers
+## This is used in an aria label to help to understand the role of the resizer.
+
+pdfjs-editor-resizer-label-top-left = Левый верхний угол — изменить размер
+pdfjs-editor-resizer-label-top-middle = Вверху посередине — изменить размер
+pdfjs-editor-resizer-label-top-right = Верхний правый угол — изменить размер
+pdfjs-editor-resizer-label-middle-right = В центре справа — изменить размер
+pdfjs-editor-resizer-label-bottom-right = Нижний правый угол — изменить размер
+pdfjs-editor-resizer-label-bottom-middle = Внизу посередине — изменить размер
+pdfjs-editor-resizer-label-bottom-left = Нижний левый угол — изменить размер
+pdfjs-editor-resizer-label-middle-left = В центре слева — изменить размер
+
+## Color picker
+
+# This means "Color used to highlight text"
+pdfjs-editor-highlight-colorpicker-label = Цвет выделения
+pdfjs-editor-colorpicker-button =
+ .title = Изменить цвет
+pdfjs-editor-colorpicker-dropdown =
+ .aria-label = Выбор цвета
+pdfjs-editor-colorpicker-yellow =
+ .title = Жёлтый
+pdfjs-editor-colorpicker-green =
+ .title = Зелёный
+pdfjs-editor-colorpicker-blue =
+ .title = Синий
+pdfjs-editor-colorpicker-pink =
+ .title = Розовый
+pdfjs-editor-colorpicker-red =
+ .title = Красный
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/pictureinpicture/pictureinpicture.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/pictureinpicture/pictureinpicture.ftl
new file mode 100644
index 0000000000..85300cc65c
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/pictureinpicture/pictureinpicture.ftl
@@ -0,0 +1,86 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+pictureinpicture-player-title = Картинка в картинке
+
+## Variables:
+## $shortcut (String) - Keyboard shortcut to execute the command.
+
+## Note that this uses .tooltip rather than the standard '.title'
+## or '.tooltiptext' - but it has the same effect. Code in the
+## picture-in-picture window will read and copy this to an in-document
+## DOM node that then shows the tooltip.
+##
+## Variables:
+## $shortcut (String) - Keyboard shortcut to execute the command.
+
+pictureinpicture-pause-btn =
+ .aria-label = Приостановить
+ .tooltip = Приостановить (Пробел)
+pictureinpicture-play-btn =
+ .aria-label = Воспроизвести
+ .tooltip = Воспроизвести (Пробел)
+
+pictureinpicture-mute-btn =
+ .aria-label = Отключить звук
+ .tooltip = Отключить звук ({ $shortcut })
+pictureinpicture-unmute-btn =
+ .aria-label = Включить звук
+ .tooltip = Включить звук ({ $shortcut })
+
+pictureinpicture-unpip-btn =
+ .aria-label = Отправить обратно во вкладку
+ .tooltip = Обратно во вкладку
+
+pictureinpicture-close-btn =
+ .aria-label = Закрыть
+ .tooltip = Закрыть ({ $shortcut })
+
+pictureinpicture-subtitles-btn =
+ .aria-label = Субтитры
+ .tooltip = Субтитры
+
+pictureinpicture-fullscreen-btn2 =
+ .aria-label = На весь экран
+ .tooltip = На весь экран (двойной щелчок или { $shortcut })
+
+pictureinpicture-exit-fullscreen-btn2 =
+ .aria-label = Выйти из полноэкранного режима
+ .tooltip = Выйти из полноэкранного режима (двойной щелчок или { $shortcut })
+
+##
+
+# Keyboard shortcut to toggle fullscreen mode when Picture-in-Picture is open.
+pictureinpicture-toggle-fullscreen-shortcut =
+ .key = F
+
+## Note that this uses .tooltip rather than the standard '.title'
+## or '.tooltiptext' - but it has the same effect. Code in the
+## picture-in-picture window will read and copy this to an in-document
+## DOM node that then shows the tooltip.
+
+pictureinpicture-seekbackward-btn =
+ .aria-label = Назад
+ .tooltip = Назад (←)
+
+pictureinpicture-seekforward-btn =
+ .aria-label = Вперёд
+ .tooltip = Вперёд (→)
+
+##
+
+# This string is never displayed on the window. Is intended to be announced by
+# a screen reader whenever a user opens the subtitles settings panel
+# after selecting the subtitles button.
+pictureinpicture-subtitles-panel-accessible = Настройки субтитров
+
+pictureinpicture-subtitles-label = Субтитры
+
+pictureinpicture-font-size-label = Размер шрифта
+
+pictureinpicture-font-size-small = Маленький
+
+pictureinpicture-font-size-medium = Средний
+
+pictureinpicture-font-size-large = Большой
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/preferences/preferences.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/preferences/preferences.ftl
new file mode 100644
index 0000000000..4568bbe5c5
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/preferences/preferences.ftl
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+password-not-set =
+ .value = (не установлен)
+
+failed-pp-change = Не удалось изменить основной пароль.
+incorrect-pp = Вы ввели неправильный основной пароль. Попробуйте ещё раз.
+pp-change-ok = Основной пароль успешно изменён.
+
+settings-pp-erased-ok = Вы удалили свой основной пароль. Сохранённые пароли и закрытые ключи сертификатов, которыми управляет { -brand-short-name }, не будут защищены.
+settings-pp-not-wanted = Предупреждение! Вы решили не использовать основной пароль. Сохранённые пароли и закрытые ключи сертификатов, которыми управляет { -brand-short-name }, не будут защищены.
+
+pp-change2empty-in-fips-mode = Сейчас вы находитесь в режиме FIPS. Для работы в этом режиме необходимо установить основной пароль.
+pw-change-success-title = Пароль успешно изменён
+pw-change-failed-title = Смена пароля не удалась
+pw-remove-button =
+ .label = Удалить
+
+primary-password-dialog =
+ .title = Основной пароль
+set-password-old-password = Текущий пароль:
+set-password-new-password = Введите новый пароль:
+set-password-reenter-password = Повторите ввод пароля:
+set-password-meter = Уровень качества пароля
+set-password-meter-loading = Загрузка
+primary-password-admin = Ваш администратор требует установить основной пароль для сохранения логинов и паролей.
+primary-password-description = Основной пароль используется для защиты некоторой личной информации, такой как логины и пароли, на этом устройстве. Если вы создадите основной пароль, вам нужно будет вводить его один раз в каждой сессии, когда { -brand-short-name } понадобится сохранённая информация, защищённая этим паролем.
+primary-password-warning = Убедитесь, что запомнили основной пароль, который установили. Если вы забудете свой основной пароль, то больше не сможете получить доступ к информации, защищённой им на этом устройстве.
+
+remove-primary-password =
+ .title = Удаление основного пароля
+remove-info =
+ .value = Для продолжения вы должны ввести текущий пароль:
+remove-primary-password-warning1 = Основной пароль используется для защиты личной информации, такой как логины и пароли.
+remove-primary-password-warning2 = После удаления основного пароля ваша информация не будет защищена в случае, если посторонние лица получат доступ к вашему компьютеру.
+remove-password-old-password =
+ .value = Текущий пароль:
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/printing/printDialogs.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/printing/printDialogs.ftl
new file mode 100644
index 0000000000..57291fc629
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/printing/printDialogs.ftl
@@ -0,0 +1,112 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+print-setup =
+ .title = Параметры страницы
+custom-prompt-title = Настройка…
+custom-prompt-prompt = Введите собственный текст колонтитула
+basic-tab =
+ .label = Формат и свойства
+advanced-tab =
+ .label = Поля и колонтитулы
+format-group-label =
+ .value = Формат
+orientation-label =
+ .value = Ориентация:
+portrait =
+ .label = Книжная
+ .accesskey = н
+landscape =
+ .label = Альбомная
+ .accesskey = л
+scale =
+ .label = Масштаб:
+ .accesskey = ш
+scale-percent =
+ .value = %
+shrink-to-fit =
+ .label = Сжать до ширины страницы
+ .accesskey = ж
+options-group-label =
+ .value = Свойства
+print-bg =
+ .label = Печать фона (цвета и изображения)
+ .accesskey = ч
+margin-group-label-inches =
+ .value = Поля (дюймов)
+margin-group-label-metric =
+ .value = Поля (миллиметров)
+margin-top =
+ .value = Сверху:
+ .accesskey = в
+margin-top-invisible =
+ .value = Сверху:
+margin-bottom =
+ .value = Снизу:
+ .accesskey = и
+margin-bottom-invisible =
+ .value = Снизу:
+margin-left =
+ .value = Слева:
+ .accesskey = е
+margin-left-invisible =
+ .value = Слева:
+margin-right =
+ .value = Справа:
+ .accesskey = п
+margin-right-invisible =
+ .value = Справа:
+header-footer-label =
+ .value = Колонтитулы
+hf-left-label =
+ .value = Слева:
+hf-center-label =
+ .value = По центру:
+hf-right-label =
+ .value = Справа:
+header-left-tip =
+ .tooltiptext = Верхний колонтитул (слева)
+header-center-tip =
+ .tooltiptext = Верхний колонтитул (по центру)
+header-right-tip =
+ .tooltiptext = Верхний колонтитул (справа)
+footer-left-tip =
+ .tooltiptext = Нижний колонтитул (слева)
+footer-center-tip =
+ .tooltiptext = Нижний колонтитул (по центру)
+footer-right-tip =
+ .tooltiptext = Нижний колонтитул (справа)
+hf-blank =
+ .label = --пусто--
+hf-title =
+ .label = Заголовок страницы
+hf-url =
+ .label = Адрес страницы
+hf-date-and-time =
+ .label = Дата и время
+hf-page =
+ .label = Номер страницы
+hf-page-and-total =
+ .label = Страница # из #
+hf-custom =
+ .label = Настроить…
+print-preview-window =
+ .title = Предварительный просмотр
+print-title =
+ .value = Заголовок:
+print-preparing =
+ .value = Подготовка…
+print-progress =
+ .value = Прогресс:
+print-window =
+ .title = Печать
+print-complete =
+ .value = Печать завершена.
+
+# Variables
+# $percent (integer) - Number of printed percentage
+print-percent =
+ .value = { $percent }%
+dialog-cancel-label = Отмена
+dialog-close-label = Закрыть
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/printing/printPreview.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/printing/printPreview.ftl
new file mode 100644
index 0000000000..16b931f352
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/printing/printPreview.ftl
@@ -0,0 +1,73 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+printpreview-simplify-page-checkbox =
+ .label = Упростить страницу
+ .accesskey = п
+ .tooltiptext = Эта страница не может быть автоматически упрощена
+printpreview-simplify-page-checkbox-enabled =
+ .label = { printpreview-simplify-page-checkbox.label }
+ .accesskey = { printpreview-simplify-page-checkbox.accesskey }
+ .tooltiptext = Изменить макет для облегчения её чтения
+printpreview-close =
+ .label = Закрыть
+ .accesskey = ы
+printpreview-portrait =
+ .label = Книжная
+ .accesskey = н
+printpreview-landscape =
+ .label = Альбомная
+ .accesskey = л
+printpreview-scale =
+ .value = Масштаб:
+ .accesskey = ш
+printpreview-shrink-to-fit =
+ .label = Сжать по размеру
+printpreview-custom =
+ .label = Настроить…
+printpreview-print =
+ .label = Печать…
+ .accesskey = е
+printpreview-of =
+ .value = из
+printpreview-custom-scale-prompt-title = Настроить масштаб
+printpreview-page-setup =
+ .label = Параметры…
+ .accesskey = а
+printpreview-page =
+ .value = Страница:
+ .accesskey = и
+
+# Variables
+# $sheetNum (integer) - The current sheet number
+# $sheetCount (integer) - The total number of sheets to print
+printpreview-sheet-of-sheets = { $sheetNum } из { $sheetCount }
+
+## Variables
+## $percent (integer) - menuitem percent label
+## $arrow (String) - UTF-8 arrow character for navigation buttons
+
+printpreview-percentage-value =
+ .label = { $percent }%
+printpreview-homearrow =
+ .label = { $arrow }
+ .tooltiptext = Первая страница
+printpreview-previousarrow =
+ .label = { $arrow }
+ .tooltiptext = Предыдущая страница
+printpreview-nextarrow =
+ .label = { $arrow }
+ .tooltiptext = Следующая страница
+printpreview-endarrow =
+ .label = { $arrow }
+ .tooltiptext = Последняя страница
+
+printpreview-homearrow-button =
+ .title = Первая страница
+printpreview-previousarrow-button =
+ .title = Предыдущая страница
+printpreview-nextarrow-button =
+ .title = Следующая страница
+printpreview-endarrow-button =
+ .title = Последняя страница
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/printing/printUI.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/printing/printUI.ftl
new file mode 100644
index 0000000000..cce4fb1db1
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/printing/printUI.ftl
@@ -0,0 +1,149 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+printui-title = Печать
+# Dialog title to prompt the user for a filename to save print to PDF.
+printui-save-to-pdf-title = Сохранить как
+
+# Variables
+# $sheetCount (integer) - Number of paper sheets
+printui-sheets-count =
+ { $sheetCount ->
+ [one] { $sheetCount } лист бумаги
+ [few] { $sheetCount } листа бумаги
+ *[many] { $sheetCount } листов бумаги
+ }
+
+printui-page-range-all = Все
+printui-page-range-current = Текущая
+printui-page-range-odd = Нечётные
+printui-page-range-even = Чётные
+printui-page-range-custom = Диапазон
+printui-page-range-label = Страницы
+printui-page-range-picker =
+ .aria-label = Выберите диапазон страниц
+printui-page-custom-range-input =
+ .aria-label = Введите свой диапазон страниц
+ .placeholder = например, 2-6, 9, 12-16
+
+# Section title for the number of copies to print
+printui-copies-label = Число копий
+
+printui-orientation = Ориентация
+printui-landscape = Альбомная
+printui-portrait = Книжная
+
+# Section title for the printer or destination device to target
+printui-destination-label = Получатель
+printui-destination-pdf-label = Сохранить в PDF
+
+printui-more-settings = Все настройки
+printui-less-settings = Основные настройки
+
+printui-paper-size-label = Размер бумаги
+
+# Section title (noun) for the print scaling options
+printui-scale = Масштаб
+printui-scale-fit-to-page-width = По ширине страницы
+# Label for input control where user can set the scale percentage
+printui-scale-pcent = Масштаб
+
+# Section title (noun) for the two-sided print options
+printui-two-sided-printing = Двусторонняя печать
+printui-two-sided-printing-off = Отключена
+# Flip the sheet as if it were bound along its long edge.
+printui-two-sided-printing-long-edge = Переплет по длинной стороне
+# Flip the sheet as if it were bound along its short edge.
+printui-two-sided-printing-short-edge = Переплет по короткой стороне
+
+# Section title for miscellaneous print options
+printui-options = Настройки
+printui-headers-footers-checkbox = Печатать колонтитулы
+printui-backgrounds-checkbox = Печатать фон
+
+## The "Format" section, select a version of the website to print. Radio
+## options to select between the original page, selected text only, or a version
+## where the page is processed with "Reader View".
+
+# The section title.
+printui-source-label = Формат
+# Option for printing the original page.
+printui-source-radio = Оригинал
+# Option for printing just the content a user selected prior to printing.
+printui-selection-radio = Выделение
+# Option for "simplifying" the page by printing the Reader View version.
+printui-simplify-page-radio = Упрощённый
+
+##
+
+printui-color-mode-label = Цветовой режим
+printui-color-mode-color = Цветной
+printui-color-mode-bw = Чёрно-белый
+
+printui-margins = Поля
+printui-margins-default = По умолчанию
+printui-margins-min = Минимальные
+printui-margins-none = Нет
+printui-margins-custom-inches = Настраиваемые (дюймы)
+printui-margins-custom-mm = Настраиваемые (мм)
+printui-margins-custom-top = Верхнее
+printui-margins-custom-top-inches = Верхнее (дюймы)
+printui-margins-custom-top-mm = Верхнее (мм)
+printui-margins-custom-bottom = Нижнее
+printui-margins-custom-bottom-inches = Нижнее (дюймы)
+printui-margins-custom-bottom-mm = Нижнее (мм)
+printui-margins-custom-left = Левое
+printui-margins-custom-left-inches = Левое (дюймы)
+printui-margins-custom-left-mm = Левое (мм)
+printui-margins-custom-right = Правое
+printui-margins-custom-right-inches = Правое (дюймы)
+printui-margins-custom-right-mm = Правое (мм)
+
+printui-system-dialog-link = Печатать, используя системный диалог…
+
+printui-primary-button = Печать
+printui-primary-button-save = Сохранить
+printui-cancel-button = Отмена
+printui-close-button = Закрыть
+
+printui-loading = Подготовка к предпросмотру
+
+# Reported by screen readers and other accessibility tools to indicate that
+# the print preview has focus.
+printui-preview-label =
+ .aria-label = Предварительный просмотр
+
+printui-pages-per-sheet = Страниц на одном листе
+
+# This is shown next to the Print button with an indefinite loading spinner
+# when the user prints a page and it is being sent to the printer.
+printui-print-progress-indicator = Печать…
+printui-print-progress-indicator-saving = Сохранение…
+
+## Paper sizes that may be supported by the Save to PDF destination:
+
+printui-paper-a5 = A5
+printui-paper-a4 = A4
+printui-paper-a3 = A3
+printui-paper-a2 = A2
+printui-paper-a1 = A1
+printui-paper-a0 = A0
+printui-paper-b5 = B5
+printui-paper-b4 = B4
+printui-paper-jis-b5 = JIS-B5
+printui-paper-jis-b4 = JIS-B4
+printui-paper-letter = US Letter
+printui-paper-legal = US Legal
+printui-paper-tabloid = Tabloid
+
+## Error messages shown when a user has an invalid input
+
+printui-error-invalid-scale = Масштаб должен быть числом от 10 до 200.
+printui-error-invalid-margin = Пожалуйста, введите допустимые значения полей для выбранного размера бумаги.
+printui-error-invalid-copies = Число копий должно быть числом от 1 до 10000.
+
+# Variables
+# $numPages (integer) - Number of pages
+printui-error-invalid-range = Диапазон должен содержать числа от 1 до { $numPages }.
+printui-error-invalid-start-overflow = Номер страницы «С» должен быть меньше, чем номер страницы «по».
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/reportBrokenSite/reportBrokenSite.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/reportBrokenSite/reportBrokenSite.ftl
new file mode 100644
index 0000000000..6fbe8159b2
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/reportBrokenSite/reportBrokenSite.ftl
@@ -0,0 +1,3 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/updates/backgroundupdate.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/updates/backgroundupdate.ftl
new file mode 100644
index 0000000000..888325e408
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/updates/backgroundupdate.ftl
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+backgroundupdate-task-description = Фоновое обновление проверяет наличие обновлений для { -brand-short-name }, когда { -brand-short-name } не запущен. Эта задача устанавливается { -brand-short-name } автоматически, и переустанавливается при запуске { -brand-short-name }. Чтобы отключить эту задачу, измените настройки браузера или установите параметр «BackgroundAppUpdate» корпоративной политики { -brand-short-name }.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/updates/elevation.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/updates/elevation.ftl
new file mode 100644
index 0000000000..73a1cf382e
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/updates/elevation.ftl
@@ -0,0 +1,14 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+# This is temporary until bug 1521632 is fixed
+
+elevation-update-wizard =
+ .title = Обновление программного обеспечения
+elevation-details-link-label =
+ .value = Подробности
+elevation-error-manual = Вы можете обновить { -brand-short-name } вручную, перейдя по следующей ссылке и загрузив его последнюю версию:
+elevation-finished-page = Обновление готово для установки
+elevation-finished-background-page = Обновление стабильности и безопасности для { -brand-short-name } успешно загружено и готово для установки.
+elevation-finished-background = Обновление:
+elevation-more-elevated = Для этого обновления необходимы права администратора. Обновление будет установлено при следующем запуске { -brand-short-name }. Вы можете перезапустить { -brand-short-name } сейчас, продолжить работу и перезапустить его позже, или отказаться от этого обновления.
diff --git a/thunderbird-l10n/ru/localization/ru/toolkit/updates/history.ftl b/thunderbird-l10n/ru/localization/ru/toolkit/updates/history.ftl
new file mode 100644
index 0000000000..9c97aa8f21
--- /dev/null
+++ b/thunderbird-l10n/ru/localization/ru/toolkit/updates/history.ftl
@@ -0,0 +1,29 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+history-title = Журнал обновлений
+history-intro = Были установлены следующие обновления
+
+close-button-label =
+ .buttonlabelcancel = Закрыть
+ .title = Журнал обновлений
+
+no-updates-label = Ни одного обновления ещё не было установлено
+name-header = Имя обновления
+date-header = Дата установки
+type-header = Тип
+state-header = Состояние
+
+# Used to display update history
+#
+# Variables:
+# $name (String): name of the update
+# $buildID (String): build identifier from the local updates.xml
+update-full-build-name = { $name } ({ $buildID })
+
+update-details = Подробности
+
+update-installed-on = Установлено: { $date }
+
+update-status = Состояние: { $status }
diff --git a/thunderbird-l10n/ru/manifest.json b/thunderbird-l10n/ru/manifest.json
new file mode 100644
index 0000000000..2f3a721b20
--- /dev/null
+++ b/thunderbird-l10n/ru/manifest.json
@@ -0,0 +1,56 @@
+{
+ "langpack_id": "ru",
+ "manifest_version": 2,
+ "browser_specific_settings": {
+ "gecko": {
+ "id": "langpack-ru@thunderbird.mozilla.org",
+ "strict_min_version": "115.0",
+ "strict_max_version": "115.*"
+ }
+ },
+ "name": "Language: Русский (Russian)",
+ "description": "Thunderbird Language Pack for Русский (ru) – Russian",
+ "version": "115.7.20240119.95007",
+ "languages": {
+ "ru": {
+ "version": "20240119104709",
+ "chrome_resources": {
+ "alerts": "chrome/ru/locale/ru/alerts/",
+ "autoconfig": "chrome/ru/locale/ru/autoconfig/",
+ "branding": "chrome/ru/locale/branding/",
+ "calendar": "chrome/ru/locale/ru/calendar/",
+ "chat": "chrome/ru/locale/ru/chat/",
+ "communicator": "chrome/ru/locale/ru/communicator/",
+ "devtools": "chrome/ru/locale/ru/devtools/client/",
+ "devtools-shared": "chrome/ru/locale/ru/devtools/shared/",
+ "global": "chrome/ru/locale/ru/global/",
+ "global-platform": {
+ "macosx": "chrome/ru/locale/ru/global-platform/mac/",
+ "linux": "chrome/ru/locale/ru/global-platform/unix/",
+ "android": "chrome/ru/locale/ru/global-platform/unix/",
+ "win": "chrome/ru/locale/ru/global-platform/win/"
+ },
+ "lightning": "chrome/ru/locale/ru/lightning/",
+ "messenger": "chrome/ru/locale/ru/messenger/",
+ "messenger-mapi": "chrome/ru/locale/ru/messenger-mapi/",
+ "messenger-newsblog": "chrome/ru/locale/ru/messenger-newsblog/",
+ "messenger-region": "chrome/ru/locale/ru/messenger-region/",
+ "messenger-smime": "chrome/ru/locale/ru/messenger-smime/",
+ "mozapps": "chrome/ru/locale/ru/mozapps/",
+ "mozldap": "chrome/ru/locale/ru/mozldap/",
+ "necko": "chrome/ru/locale/ru/necko/",
+ "passwordmgr": "chrome/ru/locale/ru/passwordmgr/",
+ "pdf.js": "chrome/ru/locale/pdfviewer/",
+ "pipnss": "chrome/ru/locale/ru/pipnss/",
+ "pippki": "chrome/ru/locale/ru/pippki/",
+ "places": "chrome/ru/locale/ru/places/"
+ }
+ }
+ },
+ "sources": {
+ "browser": {
+ "base_path": "browser/"
+ }
+ },
+ "author": "Mozilla Russia (contributors: Александр Словесник)"
+}