summaryrefslogtreecommitdiffstats
path: root/l10n-vi/mail
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
commit43a97878ce14b72f0981164f87f2e35e14151312 (patch)
tree620249daf56c0258faa40cbdcf9cfba06de2a846 /l10n-vi/mail
parentInitial commit. (diff)
downloadfirefox-43a97878ce14b72f0981164f87f2e35e14151312.tar.xz
firefox-43a97878ce14b72f0981164f87f2e35e14151312.zip
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'l10n-vi/mail')
-rw-r--r--l10n-vi/mail/README.txt3
-rw-r--r--l10n-vi/mail/all-l10n.js8
-rw-r--r--l10n-vi/mail/branding/thunderbird/brand.dtd13
-rw-r--r--l10n-vi/mail/branding/thunderbird/brand.ftl22
-rw-r--r--l10n-vi/mail/branding/thunderbird/brand.properties7
-rw-r--r--l10n-vi/mail/browser/appExtensionFields.ftl16
-rw-r--r--l10n-vi/mail/browser/branding/brandings.ftl18
-rw-r--r--l10n-vi/mail/chrome/communicator/utilityOverlay.dtd43
-rw-r--r--l10n-vi/mail/chrome/messenger-mapi/mapi.properties37
-rw-r--r--l10n-vi/mail/chrome/messenger-newsblog/am-newsblog.dtd14
-rw-r--r--l10n-vi/mail/chrome/messenger-newsblog/feed-subscriptions.dtd55
-rw-r--r--l10n-vi/mail/chrome/messenger-newsblog/newsblog.properties93
-rw-r--r--l10n-vi/mail/chrome/messenger-region/region.properties21
-rw-r--r--l10n-vi/mail/chrome/messenger-smime/certFetchingStatus.dtd9
-rw-r--r--l10n-vi/mail/chrome/messenger-smime/msgCompSMIMEOverlay.dtd16
-rw-r--r--l10n-vi/mail/chrome/messenger-smime/msgCompSecurityInfo.dtd18
-rw-r--r--l10n-vi/mail/chrome/messenger-smime/msgCompSecurityInfo.properties14
-rw-r--r--l10n-vi/mail/chrome/messenger-smime/msgReadSMIMEOverlay.properties11
-rw-r--r--l10n-vi/mail/chrome/messenger-smime/msgReadSecurityInfo.dtd17
-rw-r--r--l10n-vi/mail/chrome/messenger-smime/msgSecurityInfo.properties36
-rw-r--r--l10n-vi/mail/chrome/messenger/AccountManager.dtd25
-rw-r--r--l10n-vi/mail/chrome/messenger/AccountWizard.dtd55
-rw-r--r--l10n-vi/mail/chrome/messenger/CustomHeaders.dtd11
-rw-r--r--l10n-vi/mail/chrome/messenger/FilterEditor.dtd66
-rw-r--r--l10n-vi/mail/chrome/messenger/FilterListDialog.dtd40
-rw-r--r--l10n-vi/mail/chrome/messenger/SearchDialog.dtd38
-rw-r--r--l10n-vi/mail/chrome/messenger/aboutDialog.dtd116
-rw-r--r--l10n-vi/mail/chrome/messenger/aboutDownloads.dtd23
-rw-r--r--l10n-vi/mail/chrome/messenger/aboutRights.properties7
-rw-r--r--l10n-vi/mail/chrome/messenger/aboutSupportMail.properties16
-rw-r--r--l10n-vi/mail/chrome/messenger/accountCreationModel.properties20
-rw-r--r--l10n-vi/mail/chrome/messenger/accountCreationUtil.properties34
-rw-r--r--l10n-vi/mail/chrome/messenger/activity.dtd19
-rw-r--r--l10n-vi/mail/chrome/messenger/activity.properties99
-rw-r--r--l10n-vi/mail/chrome/messenger/addbuddy.dtd7
-rw-r--r--l10n-vi/mail/chrome/messenger/addons.properties256
-rw-r--r--l10n-vi/mail/chrome/messenger/addressbook/abAddressBookNameDialog.dtd7
-rw-r--r--l10n-vi/mail/chrome/messenger/addressbook/abContactsPanel.dtd49
-rw-r--r--l10n-vi/mail/chrome/messenger/addressbook/abMailListDialog.dtd21
-rw-r--r--l10n-vi/mail/chrome/messenger/addressbook/abMainWindow.dtd17
-rw-r--r--l10n-vi/mail/chrome/messenger/addressbook/abResultsPane.dtd38
-rw-r--r--l10n-vi/mail/chrome/messenger/addressbook/addressBook.properties179
-rw-r--r--l10n-vi/mail/chrome/messenger/addressbook/ldapAutoCompErrs.properties104
-rw-r--r--l10n-vi/mail/chrome/messenger/addressbook/pref-directory-add.dtd46
-rw-r--r--l10n-vi/mail/chrome/messenger/addressbook/pref-directory.dtd17
-rw-r--r--l10n-vi/mail/chrome/messenger/addressbook/replicationProgress.properties20
-rw-r--r--l10n-vi/mail/chrome/messenger/am-addressing.dtd51
-rw-r--r--l10n-vi/mail/chrome/messenger/am-advanced.dtd28
-rw-r--r--l10n-vi/mail/chrome/messenger/am-archiveoptions.dtd25
-rw-r--r--l10n-vi/mail/chrome/messenger/am-copies.dtd52
-rw-r--r--l10n-vi/mail/chrome/messenger/am-e2e.properties5
-rw-r--r--l10n-vi/mail/chrome/messenger/am-identities-list.dtd15
-rw-r--r--l10n-vi/mail/chrome/messenger/am-identity-edit.dtd14
-rw-r--r--l10n-vi/mail/chrome/messenger/am-im.dtd16
-rw-r--r--l10n-vi/mail/chrome/messenger/am-junk.dtd31
-rw-r--r--l10n-vi/mail/chrome/messenger/am-main.dtd47
-rw-r--r--l10n-vi/mail/chrome/messenger/am-mdn.dtd33
-rw-r--r--l10n-vi/mail/chrome/messenger/am-mdn.properties6
-rw-r--r--l10n-vi/mail/chrome/messenger/am-offline.dtd57
-rw-r--r--l10n-vi/mail/chrome/messenger/am-server-advanced.dtd31
-rw-r--r--l10n-vi/mail/chrome/messenger/am-server-top.dtd89
-rw-r--r--l10n-vi/mail/chrome/messenger/am-serverwithnoidentities.dtd6
-rw-r--r--l10n-vi/mail/chrome/messenger/am-smime.dtd46
-rw-r--r--l10n-vi/mail/chrome/messenger/am-smime.properties40
-rw-r--r--l10n-vi/mail/chrome/messenger/appUpdate.properties40
-rw-r--r--l10n-vi/mail/chrome/messenger/appleMailImportMsgs.properties20
-rw-r--r--l10n-vi/mail/chrome/messenger/baseMenuOverlay.dtd34
-rw-r--r--l10n-vi/mail/chrome/messenger/beckyImportMsgs.properties19
-rw-r--r--l10n-vi/mail/chrome/messenger/charsetTitles.properties80
-rw-r--r--l10n-vi/mail/chrome/messenger/chat.dtd44
-rw-r--r--l10n-vi/mail/chrome/messenger/chat.properties110
-rw-r--r--l10n-vi/mail/chrome/messenger/configEditorOverlay.dtd6
-rw-r--r--l10n-vi/mail/chrome/messenger/converterDialog.dtd11
-rw-r--r--l10n-vi/mail/chrome/messenger/converterDialog.properties41
-rw-r--r--l10n-vi/mail/chrome/messenger/custom.properties5
-rw-r--r--l10n-vi/mail/chrome/messenger/customizeToolbar.dtd18
-rw-r--r--l10n-vi/mail/chrome/messenger/customizeToolbar.properties11
-rw-r--r--l10n-vi/mail/chrome/messenger/devtools/dbgserver.dtd8
-rw-r--r--l10n-vi/mail/chrome/messenger/devtools/dbgserver.properties15
-rw-r--r--l10n-vi/mail/chrome/messenger/downloadheaders.dtd20
-rw-r--r--l10n-vi/mail/chrome/messenger/editContactOverlay.dtd20
-rw-r--r--l10n-vi/mail/chrome/messenger/editContactOverlay.properties14
-rw-r--r--l10n-vi/mail/chrome/messenger/fieldMapImport.dtd17
-rw-r--r--l10n-vi/mail/chrome/messenger/filter.properties109
-rw-r--r--l10n-vi/mail/chrome/messenger/folderProps.dtd70
-rw-r--r--l10n-vi/mail/chrome/messenger/folderWidgets.properties12
-rw-r--r--l10n-vi/mail/chrome/messenger/folderpane.dtd7
-rw-r--r--l10n-vi/mail/chrome/messenger/gloda.properties175
-rw-r--r--l10n-vi/mail/chrome/messenger/glodaComplete.properties19
-rw-r--r--l10n-vi/mail/chrome/messenger/glodaFacetView.dtd29
-rw-r--r--l10n-vi/mail/chrome/messenger/glodaFacetView.properties171
-rw-r--r--l10n-vi/mail/chrome/messenger/imAccountWizard.dtd32
-rw-r--r--l10n-vi/mail/chrome/messenger/imAccounts.properties63
-rw-r--r--l10n-vi/mail/chrome/messenger/imapMsgs.properties268
-rw-r--r--l10n-vi/mail/chrome/messenger/importDialog.dtd48
-rw-r--r--l10n-vi/mail/chrome/messenger/importMsgs.properties304
-rw-r--r--l10n-vi/mail/chrome/messenger/joinChat.dtd10
-rw-r--r--l10n-vi/mail/chrome/messenger/junkLog.dtd10
-rw-r--r--l10n-vi/mail/chrome/messenger/localMsgs.properties140
-rw-r--r--l10n-vi/mail/chrome/messenger/mailEditorOverlay.dtd7
-rw-r--r--l10n-vi/mail/chrome/messenger/mailOverlay.dtd11
-rw-r--r--l10n-vi/mail/chrome/messenger/mailViewList.dtd7
-rw-r--r--l10n-vi/mail/chrome/messenger/mailViewSetup.dtd10
-rw-r--r--l10n-vi/mail/chrome/messenger/mailviews.properties13
-rw-r--r--l10n-vi/mail/chrome/messenger/markByDate.dtd9
-rw-r--r--l10n-vi/mail/chrome/messenger/messenger.dtd945
-rw-r--r--l10n-vi/mail/chrome/messenger/messenger.properties768
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EdAdvancedEdit.dtd18
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EdColorPicker.dtd22
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EdConvertToTable.dtd15
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EdDialogOverlay.dtd18
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EdNamedAnchorProperties.dtd8
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorColorProperties.dtd29
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorHLineProperties.dtd27
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorImageProperties.dtd79
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertChars.dtd19
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertMath.dtd21
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertSource.dtd15
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertTOC.dtd16
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertTable.dtd18
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorLinkProperties.dtd6
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorListProperties.dtd20
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorPersonalDictionary.dtd18
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorReplace.dtd29
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorSpellCheck.dtd38
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/EditorTableProperties.dtd75
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/composeMsgs.properties460
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/editor.properties208
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/editorOverlay.dtd303
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/mailComposeEditorOverlay.dtd10
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/messengercompose.dtd305
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/sendProgress.dtd8
-rw-r--r--l10n-vi/mail/chrome/messenger/messengercompose/sendProgress.properties21
-rw-r--r--l10n-vi/mail/chrome/messenger/migration/migration.dtd30
-rw-r--r--l10n-vi/mail/chrome/messenger/migration/migration.properties32
-rw-r--r--l10n-vi/mail/chrome/messenger/mime.properties154
-rw-r--r--l10n-vi/mail/chrome/messenger/mimeheader.properties35
-rw-r--r--l10n-vi/mail/chrome/messenger/morkImportMsgs.properties18
-rw-r--r--l10n-vi/mail/chrome/messenger/msgAccountCentral.dtd26
-rw-r--r--l10n-vi/mail/chrome/messenger/msgHdrViewOverlay.dtd111
-rw-r--r--l10n-vi/mail/chrome/messenger/msgSynchronize.dtd25
-rw-r--r--l10n-vi/mail/chrome/messenger/msgViewPickerOverlay.dtd22
-rw-r--r--l10n-vi/mail/chrome/messenger/msgmdn.properties18
-rw-r--r--l10n-vi/mail/chrome/messenger/multimessageview.dtd8
-rw-r--r--l10n-vi/mail/chrome/messenger/multimessageview.properties66
-rw-r--r--l10n-vi/mail/chrome/messenger/newFolderDialog.dtd17
-rw-r--r--l10n-vi/mail/chrome/messenger/news.properties56
-rw-r--r--l10n-vi/mail/chrome/messenger/newsError.dtd31
-rw-r--r--l10n-vi/mail/chrome/messenger/offline.properties28
-rw-r--r--l10n-vi/mail/chrome/messenger/offlineStartup.properties8
-rw-r--r--l10n-vi/mail/chrome/messenger/outlookImportMsgs.properties83
-rw-r--r--l10n-vi/mail/chrome/messenger/pgpmime.properties10
-rw-r--r--l10n-vi/mail/chrome/messenger/preferences/applicationManager.properties13
-rw-r--r--l10n-vi/mail/chrome/messenger/preferences/applications.properties13
-rw-r--r--l10n-vi/mail/chrome/messenger/preferences/messagestyle.properties13
-rw-r--r--l10n-vi/mail/chrome/messenger/preferences/preferences.properties100
-rw-r--r--l10n-vi/mail/chrome/messenger/prefs.properties90
-rw-r--r--l10n-vi/mail/chrome/messenger/quickFilterBar.dtd269
-rw-r--r--l10n-vi/mail/chrome/messenger/removeAccount.dtd22
-rw-r--r--l10n-vi/mail/chrome/messenger/removeAccount.properties5
-rw-r--r--l10n-vi/mail/chrome/messenger/renameFolderDialog.dtd10
-rw-r--r--l10n-vi/mail/chrome/messenger/sanitize.dtd36
-rw-r--r--l10n-vi/mail/chrome/messenger/seamonkeyImportMsgs.properties18
-rw-r--r--l10n-vi/mail/chrome/messenger/search-attributes.properties45
-rw-r--r--l10n-vi/mail/chrome/messenger/search-operators.properties32
-rw-r--r--l10n-vi/mail/chrome/messenger/search.properties27
-rw-r--r--l10n-vi/mail/chrome/messenger/searchTermOverlay.dtd20
-rw-r--r--l10n-vi/mail/chrome/messenger/shutdownWindow.properties10
-rw-r--r--l10n-vi/mail/chrome/messenger/smime.properties11
-rw-r--r--l10n-vi/mail/chrome/messenger/smtpEditOverlay.dtd24
-rw-r--r--l10n-vi/mail/chrome/messenger/subscribe.dtd22
-rw-r--r--l10n-vi/mail/chrome/messenger/subscribe.properties13
-rw-r--r--l10n-vi/mail/chrome/messenger/tabmail.dtd9
-rw-r--r--l10n-vi/mail/chrome/messenger/taskbar.properties9
-rw-r--r--l10n-vi/mail/chrome/messenger/telemetry.properties13
-rw-r--r--l10n-vi/mail/chrome/messenger/templateUtils.properties7
-rw-r--r--l10n-vi/mail/chrome/messenger/textImportMsgs.properties48
-rw-r--r--l10n-vi/mail/chrome/messenger/vCardImportMsgs.properties26
-rw-r--r--l10n-vi/mail/chrome/messenger/viewLog.dtd13
-rw-r--r--l10n-vi/mail/chrome/messenger/viewSource.dtd86
-rw-r--r--l10n-vi/mail/chrome/messenger/viewSource.properties17
-rw-r--r--l10n-vi/mail/chrome/messenger/viewZoomOverlay.dtd30
-rw-r--r--l10n-vi/mail/chrome/messenger/virtualFolderListDialog.dtd8
-rw-r--r--l10n-vi/mail/chrome/messenger/virtualFolderProperties.dtd22
-rw-r--r--l10n-vi/mail/chrome/messenger/wmImportMsgs.properties77
-rw-r--r--l10n-vi/mail/chrome/mozldap/ldap.properties261
-rw-r--r--l10n-vi/mail/chrome/overrides/netError.dtd184
-rw-r--r--l10n-vi/mail/chrome/overrides/profileDowngrade.dtd20
-rw-r--r--l10n-vi/mail/crashreporter/crashreporter-override.ini9
-rw-r--r--l10n-vi/mail/defines.inc9
-rw-r--r--l10n-vi/mail/installer/custom.properties86
-rw-r--r--l10n-vi/mail/installer/mui.properties60
-rw-r--r--l10n-vi/mail/installer/override.properties86
-rw-r--r--l10n-vi/mail/isp/isps.txt1
-rw-r--r--l10n-vi/mail/messenger/aboutAddonsExtra.ftl12
-rw-r--r--l10n-vi/mail/messenger/aboutDialog.ftl18
-rw-r--r--l10n-vi/mail/messenger/aboutImport.ftl282
-rw-r--r--l10n-vi/mail/messenger/aboutProfilesExtra.ftl5
-rw-r--r--l10n-vi/mail/messenger/aboutRights.ftl42
-rw-r--r--l10n-vi/mail/messenger/aboutSupportCalendar.ftl33
-rw-r--r--l10n-vi/mail/messenger/aboutSupportChat.ftl11
-rw-r--r--l10n-vi/mail/messenger/aboutSupportMail.ftl20
-rw-r--r--l10n-vi/mail/messenger/accountCentral.ftl65
-rw-r--r--l10n-vi/mail/messenger/accountManager.ftl18
-rw-r--r--l10n-vi/mail/messenger/accountProvisioner.ftl77
-rw-r--r--l10n-vi/mail/messenger/accountcreation/accountHub.ftl16
-rw-r--r--l10n-vi/mail/messenger/accountcreation/accountSetup.ftl424
-rw-r--r--l10n-vi/mail/messenger/addressbook/abCardDAVDialog.ftl26
-rw-r--r--l10n-vi/mail/messenger/addressbook/abCardDAVProperties.ftl31
-rw-r--r--l10n-vi/mail/messenger/addressbook/aboutAddressBook.ftl241
-rw-r--r--l10n-vi/mail/messenger/addressbook/fieldMapImport.ftl12
-rw-r--r--l10n-vi/mail/messenger/addressbook/vcard.ftl189
-rw-r--r--l10n-vi/mail/messenger/appmenu.ftl208
-rw-r--r--l10n-vi/mail/messenger/chat-verifySession.ftl17
-rw-r--r--l10n-vi/mail/messenger/chat.ftl47
-rw-r--r--l10n-vi/mail/messenger/compactFoldersDialog.ftl24
-rw-r--r--l10n-vi/mail/messenger/exportDialog.ftl22
-rw-r--r--l10n-vi/mail/messenger/extensions/popup.ftl14
-rw-r--r--l10n-vi/mail/messenger/importDialog.ftl30
-rw-r--r--l10n-vi/mail/messenger/mailWidgets.ftl15
-rw-r--r--l10n-vi/mail/messenger/menubar.ftl160
-rw-r--r--l10n-vi/mail/messenger/messageheader/headerFields.ftl67
-rw-r--r--l10n-vi/mail/messenger/messenger.ftl337
-rw-r--r--l10n-vi/mail/messenger/messengercompose/messengercompose.ftl441
-rw-r--r--l10n-vi/mail/messenger/migration.ftl15
-rw-r--r--l10n-vi/mail/messenger/openpgp/backupKeyPassword.ftl20
-rw-r--r--l10n-vi/mail/messenger/openpgp/changeExpiryDlg.ftl22
-rw-r--r--l10n-vi/mail/messenger/openpgp/composeKeyStatus.ftl23
-rw-r--r--l10n-vi/mail/messenger/openpgp/keyAssistant.ftl107
-rw-r--r--l10n-vi/mail/messenger/openpgp/keyWizard.ftl191
-rw-r--r--l10n-vi/mail/messenger/openpgp/msgReadStatus.ftl76
-rw-r--r--l10n-vi/mail/messenger/openpgp/oneRecipientStatus.ftl48
-rw-r--r--l10n-vi/mail/messenger/openpgp/openpgp-frontend.ftl64
-rw-r--r--l10n-vi/mail/messenger/openpgp/openpgp.ftl671
-rw-r--r--l10n-vi/mail/messenger/otr/add-finger.ftl16
-rw-r--r--l10n-vi/mail/messenger/otr/am-im-otr.ftl26
-rw-r--r--l10n-vi/mail/messenger/otr/auth.ftl60
-rw-r--r--l10n-vi/mail/messenger/otr/chat.ftl19
-rw-r--r--l10n-vi/mail/messenger/otr/finger-sync.ftl12
-rw-r--r--l10n-vi/mail/messenger/otr/finger.ftl20
-rw-r--r--l10n-vi/mail/messenger/otr/otr.ftl97
-rw-r--r--l10n-vi/mail/messenger/otr/otrUI.ftl87
-rw-r--r--l10n-vi/mail/messenger/policies/aboutPolicies.ftl17
-rw-r--r--l10n-vi/mail/messenger/policies/policies-descriptions.ftl159
-rw-r--r--l10n-vi/mail/messenger/preferences/am-copies.ftl5
-rw-r--r--l10n-vi/mail/messenger/preferences/am-im.ftl23
-rw-r--r--l10n-vi/mail/messenger/preferences/application-manager.ftl14
-rw-r--r--l10n-vi/mail/messenger/preferences/attachment-reminder.ftl26
-rw-r--r--l10n-vi/mail/messenger/preferences/colors.ftl55
-rw-r--r--l10n-vi/mail/messenger/preferences/connection.ftl127
-rw-r--r--l10n-vi/mail/messenger/preferences/cookies.ftl58
-rw-r--r--l10n-vi/mail/messenger/preferences/dock-options.ftl33
-rw-r--r--l10n-vi/mail/messenger/preferences/fonts.ftl151
-rw-r--r--l10n-vi/mail/messenger/preferences/languages.ftl48
-rw-r--r--l10n-vi/mail/messenger/preferences/new-tag.ftl14
-rw-r--r--l10n-vi/mail/messenger/preferences/notifications.ftl33
-rw-r--r--l10n-vi/mail/messenger/preferences/offline.ftl56
-rw-r--r--l10n-vi/mail/messenger/preferences/passwordManager.ftl86
-rw-r--r--l10n-vi/mail/messenger/preferences/permissions.ftl59
-rw-r--r--l10n-vi/mail/messenger/preferences/preferences.ftl932
-rw-r--r--l10n-vi/mail/messenger/preferences/receipts.ftl51
-rw-r--r--l10n-vi/mail/messenger/preferences/system-integration.ftl46
-rw-r--r--l10n-vi/mail/messenger/shortcuts.ftl113
-rw-r--r--l10n-vi/mail/messenger/troubleshootMode.ftl39
-rw-r--r--l10n-vi/mail/messenger/viewSource.ftl19
-rw-r--r--l10n-vi/mail/updater/updater.ini9
266 files changed, 17272 insertions, 0 deletions
diff --git a/l10n-vi/mail/README.txt b/l10n-vi/mail/README.txt
new file mode 100644
index 0000000000..4d8e68cc1b
--- /dev/null
+++ b/l10n-vi/mail/README.txt
@@ -0,0 +1,3 @@
+For information about installing, running and configuring Thunderbird
+including a list of known issues and troubleshooting information,
+refer to: http://getthunderbird.com/releases/
diff --git a/l10n-vi/mail/all-l10n.js b/l10n-vi/mail/all-l10n.js
new file mode 100644
index 0000000000..6e0520e894
--- /dev/null
+++ b/l10n-vi/mail/all-l10n.js
@@ -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/.
+
+#filter substitution
+
+pref("general.useragent.locale", "@AB_CD@");
+pref("spellchecker.dictionary", "@AB_CD@");
diff --git a/l10n-vi/mail/branding/thunderbird/brand.dtd b/l10n-vi/mail/branding/thunderbird/brand.dtd
new file mode 100644
index 0000000000..ba577f740b
--- /dev/null
+++ b/l10n-vi/mail/branding/thunderbird/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 và các biểu tượng Thunderbird
+ là nhãn hiệu của Tổ chức Mozilla.">
diff --git a/l10n-vi/mail/branding/thunderbird/brand.ftl b/l10n-vi/mail/branding/thunderbird/brand.ftl
new file mode 100644
index 0000000000..a188e71b74
--- /dev/null
+++ b/l10n-vi/mail/branding/thunderbird/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 và biểu tượng Thunderbird là thương hiệu của Mozilla Foundation.
diff --git a/l10n-vi/mail/branding/thunderbird/brand.properties b/l10n-vi/mail/branding/thunderbird/brand.properties
new file mode 100644
index 0000000000..9dd5011219
--- /dev/null
+++ b/l10n-vi/mail/branding/thunderbird/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/l10n-vi/mail/browser/appExtensionFields.ftl b/l10n-vi/mail/browser/appExtensionFields.ftl
new file mode 100644
index 0000000000..59aba0614d
--- /dev/null
+++ b/l10n-vi/mail/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 = Chủ đề hệ thống — tự động
+extension-default-theme-description = Áp dụng theo cài đặt hệ điều hành cho các nút, menu và cửa sổ.
+
+extension-thunderbird-compact-light-name = Sáng
+extension-thunderbird-compact-light-description = Một chủ đề với tông màu sáng.
+
+extension-thunderbird-compact-dark-name = Tối
+extension-thunderbird-compact-dark-description = Một chủ đề với tông màu tối.
diff --git a/l10n-vi/mail/browser/branding/brandings.ftl b/l10n-vi/mail/browser/branding/brandings.ftl
new file mode 100644
index 0000000000..9ada8da73a
--- /dev/null
+++ b/l10n-vi/mail/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 Profiler
diff --git a/l10n-vi/mail/chrome/communicator/utilityOverlay.dtd b/l10n-vi/mail/chrome/communicator/utilityOverlay.dtd
new file mode 100644
index 0000000000..af5147e648
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tập tin">
+<!ENTITY fileMenu.accesskey "F">
+<!ENTITY newMenu.label "Mới">
+<!ENTITY newMenu.accesskey "N">
+
+<!ENTITY editMenu.label "Chỉnh sửa">
+<!ENTITY editMenu.accesskey "E">
+<!ENTITY undoCmd.label "Hoàn tác">
+<!ENTITY undoCmd.accesskey "U">
+<!ENTITY redoCmd.label "Làm lại">
+<!ENTITY redoCmd.accesskey "R">
+<!ENTITY deleteCmd.label "Xóa">
+<!ENTITY deleteCmd.accesskey "D">
+
+<!ENTITY customizeCmd.label "Tùy biến">
+<!ENTITY customizeCmd.accesskey "t">
+
+<!ENTITY viewMenu.label "Hiển thị">
+<!ENTITY viewMenu.accesskey "V">
+<!ENTITY viewToolbarsMenu.label "Thanh công cụ">
+<!ENTITY viewToolbarsMenu.accesskey "T">
+<!ENTITY showTaskbarCmd.label "Thanh trạng thái">
+<!ENTITY showTaskbarCmd.accesskey "u">
+
+<!ENTITY closeCmd.label "Đóng">
+<!ENTITY closeCmd.key "W">
+<!ENTITY closeCmd.accesskey "C">
+
+<!ENTITY quitApplicationCmd.label "Thoát">
+<!ENTITY quitApplicationCmd.key "Q">
+<!ENTITY quitApplicationCmd.accesskey "x">
+
+<!ENTITY quitApplicationCmdUnix.label "Thoát">
+<!ENTITY quitApplicationCmdUnix.accesskey "Q">
+
+<!ENTITY quitApplicationCmdMac.label "Thoát &brandShortName;">
+<!ENTITY quitApplicationCmdMac.accesskey "Q">
diff --git a/l10n-vi/mail/chrome/messenger-mapi/mapi.properties b/l10n-vi/mail/chrome/messenger-mapi/mapi.properties
new file mode 100644
index 0000000000..277f22dffa
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger-mapi/mapi.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/.
+
+# Mail Integration Dialog
+dialogTitle=%S
+dialogText=Bạn có muốn dùng %S làm chương trình gửi thư mặc định không?
+newsDialogText=Bạn có muốn dùng %S làm chương trình đọc tin mặc định không?
+feedDialogText=Bạn có muốn dùng %S làm chương trình tổng hợp feed mặc định không?
+checkboxText=Không hiện hộp thoại này nữa
+setDefaultMail=%S hiện không phải là chương trình gửi thư mặc định. Bạn có muốn thiết lập nó làm chương trình gửi thư mặc định không?
+setDefaultNews=%S hiện không phải là chương trình đọc tin mặc định. Bạn có muốn thiết lập nó làm chương trình đọc tin mặc định không?
+setDefaultFeed=%S hiện không phải là chương trình tổng hợp feed mặc định. Bạn có muốn thiết lập nó làm chương trình tổng hợp feed mặc định không?
+alreadyDefaultMail=%S đã được thiết lập làm chương trình mail application.
+alreadyDefaultNews=%S đã được thiết lập làm chương trình đọc tin mặc định.
+alreadyDefaultFeed=%S đã được thiết lập làm chương trình tổng hợp feed mặc định.
+
+# MAPI Messages
+loginText=Vui lòng nhập mật khẩu cho %S:
+loginTextwithName=Vui lòng nhập tên đăng nhập và mật khẩu
+loginTitle=%S
+PasswordTitle=%S
+
+# MAPI Error Messages
+errorMessage=%S không thể được thiết lập làm chương trình gửi thư mặc định vì không thể cập nhật một khóa registry. Hãy kiểm tra với quản trị hệ thống về việc bạn có quyền ghi lên registry hệ thống hay không, rồi thử lại.
+errorMessageNews=%S không thể được thiết lập làm chương trình đọc tin mặc định vì không thể cập nhật một khóa registry. Hãy kiểm tra với quản trị hệ thống về việc bạn có quyền ghi lên registry hệ thống hay không, rồi thử lại.
+errorMessageTitle=%S
+
+# MAPI Security Messages
+mapiBlindSendWarning=Một chương trình khác đang cố gửi thư bằng hồ sơ người dùng của bạn. Bạn có chắc là bạn muốn gửi thư không?
+mapiBlindSendDontShowAgain=Cảnh báo tôi mỗi khi có chương trình khác gửi thư từ tài khoản của tôi
+
+#Default Mail Display String
+# localization note, %S is the vendor name
+defaultMailDisplayTitle=%S
+
+
diff --git a/l10n-vi/mail/chrome/messenger-newsblog/am-newsblog.dtd b/l10n-vi/mail/chrome/messenger-newsblog/am-newsblog.dtd
new file mode 100644
index 0000000000..144bc36c42
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Cho phép cập nhật cho tất cả nguồn cấp dữ liệu">
+<!ENTITY biffAll.accesskey "E">
+
+<!ENTITY newFeedSettings.label "Cài đặt mặc định cho nguồn cấp dữ liệu mới">
+
+<!ENTITY manageSubscriptions.label "Quản lý mục đăng kí…">
+<!ENTITY manageSubscriptions.accesskey "M">
+
+<!ENTITY feedWindowTitle.label "Trình thiết lập nguồn cấp dữ liệu">
+<!ENTITY feeds.accountName "Blog &amp; nguồn cấp tin tức">
diff --git a/l10n-vi/mail/chrome/messenger-newsblog/feed-subscriptions.dtd b/l10n-vi/mail/chrome/messenger-newsblog/feed-subscriptions.dtd
new file mode 100644
index 0000000000..cf691eff69
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Nguồn cấp đã đăng kí">
+<!ENTITY learnMore.label "Tìm hiểu thêm về nguồn cấp dữ liệu">
+
+<!ENTITY feedTitle.label "Tiêu đề:">
+<!ENTITY feedTitle.accesskey "T">
+
+<!ENTITY feedLocation.label "URL nguồn cấp:">
+<!ENTITY feedLocation.accesskey "F">
+<!ENTITY feedLocation2.placeholder "Nhập một url nguồn cấp hợp lệ">
+<!ENTITY locationValidate.label "Xác thực">
+<!ENTITY validateText.label "Kiểm tra xác nhận và lấy một url hợp lệ.">
+
+<!ENTITY feedFolder.label "Lưu trữ bài viết trong:">
+<!ENTITY feedFolder.accesskey "S">
+
+<!-- Account Settings and Subscription Dialog -->
+<!ENTITY biffStart.label "Kiểm tra bài viết mới mỗi ">
+<!ENTITY biffStart.accesskey "k">
+<!ENTITY biffMinutes.label "phút">
+<!ENTITY biffMinutes.accesskey "n">
+<!ENTITY biffDays.label "ngày">
+<!ENTITY biffDays.accesskey "d">
+<!ENTITY recommendedUnits.label "Nhà xuất bản được đề xuất:">
+
+<!ENTITY quickMode.label "Hiển thị tóm tắt bài viết thay vì tải trang web">
+<!ENTITY quickMode.accesskey "h">
+
+<!ENTITY autotagEnable.label "Tự động tạo thẻ từ tên &lt;danh mục&gt; nguồn cấp dữ liệu">
+<!ENTITY autotagEnable.accesskey "o">
+<!ENTITY autotagUsePrefix.label "Các thẻ tiền tố với:">
+<!ENTITY autotagUsePrefix.accesskey "P">
+<!ENTITY autoTagPrefix.placeholder "Nhập tiền tố thẻ">
+
+<!-- Subscription Dialog -->
+<!ENTITY button.addFeed.label "Thêm">
+<!ENTITY button.addFeed.accesskey "T">
+<!ENTITY button.verifyFeed.label "Xác nhận">
+<!ENTITY button.verifyFeed.accesskey "V">
+<!ENTITY button.updateFeed.label "Cập nhật">
+<!ENTITY button.updateFeed.accesskey "U">
+<!ENTITY button.removeFeed.label "Xóa">
+<!ENTITY button.removeFeed.accesskey "a">
+<!ENTITY button.importOPML.label "Nhập">
+<!ENTITY button.importOPML.accesskey "N">
+<!ENTITY button.exportOPML.label "Xuất">
+<!ENTITY button.exportOPML.accesskey "X">
+<!ENTITY button.exportOPML.tooltip "Xuất nguồn cấp dữ liệu với cấu trúc thư mục; nhấn vào ctrl hoặc ctrl enter để xuất nguồn cấp dưới dạng danh sách">
+
+<!ENTITY cmd.close.commandKey "w">
+<!ENTITY button.close.label "Đóng">
diff --git a/l10n-vi/mail/chrome/messenger-newsblog/newsblog.properties b/l10n-vi/mail/chrome/messenger-newsblog/newsblog.properties
new file mode 100644
index 0000000000..9ad604cadb
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Đang xác minh nguồn cấp…
+subscribe-cancelSubscription=Bạn có chắc là bạn muốn hủy bỏ việc đăng kí nhận tin từ nguồn cấp hiện tại không?
+subscribe-cancelSubscriptionTitle=Đăng kí nhận tin từ một nguồn cấp…
+subscribe-feedAlreadySubscribed=Bạn đã đăng kí nhận tin từ nguồn cấp này rồi.
+subscribe-errorOpeningFile=Không thể mở tập tin.
+subscribe-feedAdded=Đã thêm nguồn cấp.
+subscribe-feedUpdated=Đã cập nhật nguồn cấp.
+subscribe-feedMoved=Đã duy chuyển nguồn cấp.
+subscribe-feedCopied=Đã sao chép nguồn cấp.
+subscribe-feedRemoved=Đã hủy đăng kí nguồn cấp.
+subscribe-feedNotValid=URL nguồn cấp dữ liệu không phải là nguồn cấp hợp lệ.
+subscribe-feedVerified=URL nguồn cấp dữ liệu đã được xác minh.
+subscribe-networkError=Không thể tìm thấy URL nguồn cấp. Vui lòng kiểm tra tên và thử lại.
+subscribe-noAuthError=URL nguồn cấp không được cấp phép.
+subscribe-loading=Đang tải, vui lòng đợi…
+
+subscribe-OPMLImportTitle=Chọn tập tin OPML để nhập
+## LOCALIZATION NOTE(subscribe-OPMLExportTitleList):
+## %S is the name of the feed account folder name.
+subscribe-OPMLExportTitleList=Xuất %S dưới dạng tập tin OPML - Danh sách nguồn cấp
+## LOCALIZATION NOTE(subscribe-OPMLExportTitleStruct):
+## %S is the name of the feed account folder name.
+subscribe-OPMLExportTitleStruct=Xuất %S dưới dạng tập tin OPML - Nguồn cấp với cấu trúc thư mục
+## LOCALIZATION NOTE(subscribe-OPMLExportFileDialogTitle):
+## %1$S is the brandShortName, %2$S is the name of the feed account folder name.
+subscribe-OPMLExportFileDialogTitle=Xuất OPML %1$S - %2$S
+## 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=My%1$SFeeds-%2$S.opml
+## LOCALIZATION NOTE(subscribe-OPMLImportInvalidFile): %S is the name of the OPML file the user tried to import.
+subscribe-OPMLImportInvalidFile=Tập tin %S dường như không phải là tập tin OPML hợp lệ.
+## 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=Đã nhập #1 nguồn cấp mới.
+## LOCALIZATION NOTE(subscribe-OPMLImportUniqueFeeds): Semi-colon list of plural forms.
+## #1 is the count of new imported entries
+subscribe-OPMLImportUniqueFeeds=Đã nhập #1 nguồn cấp mới mà bạn chưa từng đăng kí
+## LOCALIZATION NOTE(subscribe-OPMLImportFoundFeeds):
+## #1 is total number of elements found in the file
+subscribe-OPMLImportFoundFeeds=(trong #1 mục được tìm thấy)
+## 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=Tập tin OPML
+## LOCALIZATION NOTE(subscribe-OPMLExportDone): %S is the export file name.
+subscribe-OPMLExportDone=Nguồn cấp dữ liệu trong tài khoản này đã được xuất sang %S.
+
+subscribe-confirmFeedDeletionTitle=Xóa nguồn cấp
+## LOCALIZATION NOTE(subscribe-confirmFeedDeletion): %S is the name of the feed the user wants to unsubscribe from.
+subscribe-confirmFeedDeletion=Bạn có chắc là bạn muốn dừng theo dõi tin từ nguồn cấp này không: \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=Đang tải xuống các bài viết về nguồn cấp (%S trên%S)…
+
+newsblog-noNewArticlesForFeed=Không có bài viết mới về nguồn cấp này.
+## LOCALIZATION NOTE(newsblog-networkError): %S is the feed URL
+newsblog-networkError=Không thể tìm thấy %S. Vui lòng kiểm tra tên và thử lại.
+## LOCALIZATION NOTE(newsblog-feedNotValid): %S is the feed URL
+newsblog-feedNotValid=%S không phải là nguồn cấp hợp lệ.
+## LOCALIZATION NOTE(newsblog-badCertError): %S is the feed URL host
+newsblog-badCertError=%S sử dụng một chứng chỉ bảo mật không hợp lệ.
+## LOCALIZATION NOTE(newsblog-noAuthError): %S is the feed URL
+newsblog-noAuthError=%S không được cấp phép.
+newsblog-getNewMsgsCheck=Đang kiểm tra các nguồn cấp để nhận tin mới…
+
+## LOCALIZATION NOTE(feeds-accountname): This string should be the same as feeds.accountName in am-newsblog.dtd
+feeds-accountname=Blog & nguồn cáp tin tức
+
+## LOCALIZATION NOTE(externalAttachmentMsg): Content in the MIME part for external link attachments.
+externalAttachmentMsg=Tập tin đính kèm MIME này được lưu trữ riêng biệt với thư.
+
+## Import wizard.
+ImportFeedsCreateNewListItem=* Tài khoản mới *
+ImportFeedsNewAccount=Tạo và nhập vào tài khoản nguồn cấp mới
+ImportFeedsExistingAccount=Nhập vào tài khoản nguồn cấp hiện có
+## 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=mới
+ImportFeedsExisting=hiện có
+ImportFeedsDone=Đã kết thúc đăng ký nguồn cấp dữ liệu từ tập tin %1$S vào tài khoản %2$S '%3$S'.
diff --git a/l10n-vi/mail/chrome/messenger-region/region.properties b/l10n-vi/mail/chrome/messenger-region/region.properties
new file mode 100644
index 0000000000..4326e22b71
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger-region/region.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/.
+
+# To make mapit buttons to disappear in the addressbook, specify empty string. For example:
+# mail.addr_book.mapit_url.format=
+# The format for "mail.addr_book.mapit_url.format" is:
+# @A1 == address, part 1
+# @A2 == address, part 2
+# @CI == city
+# @ST == state
+# @ZI == zip code
+# @CO == country
+mail.addr_book.mapit_url.format=http://maps.google.com/maps?q=@A1%20@A2%20@CI%20@ST%20@ZI%20@CO
+
+mailnews.messageid_browser.url=http://groups.google.com/search?as_umsgid=%mid
+
+# Recognize non-standard versions of "Re:" in subjects from localized versions of MS Outlook et al.
+# Specify a comma-separated list without spaces. For example: AW,SV
+mailnews.localizedRe=
+
diff --git a/l10n-vi/mail/chrome/messenger-smime/certFetchingStatus.dtd b/l10n-vi/mail/chrome/messenger-smime/certFetchingStatus.dtd
new file mode 100644
index 0000000000..1220a49492
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Đang tải xuống chứng chỉ">
+<!ENTITY info.message "Đang tìm chứng chỉ của người nhận trong thư mục. Có thể sẽ mất vài phút.">
+<!ENTITY stop.label "Dừng tìm kiếm">
diff --git a/l10n-vi/mail/chrome/messenger-smime/msgCompSMIMEOverlay.dtd b/l10n-vi/mail/chrome/messenger-smime/msgCompSMIMEOverlay.dtd
new file mode 100644
index 0000000000..020a713182
--- /dev/null
+++ b/l10n-vi/mail/chrome/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/l10n-vi/mail/chrome/messenger-smime/msgCompSecurityInfo.dtd b/l10n-vi/mail/chrome/messenger-smime/msgCompSecurityInfo.dtd
new file mode 100644
index 0000000000..f047cfdbe2
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Bảo mật thư">
+<!ENTITY subject.plaintextWarning "Vui lòng lưu ý: Dòng tiêu đề thư sẽ không bao giờ được mã hóa.">
+<!ENTITY status.heading "Nội dung thư của bạn sẽ được gửi như sau:">
+<!ENTITY status.signed "Chữ kí điện tử:">
+<!ENTITY status.encrypted "Mã hóa:">
+<!ENTITY status.certificates "Chứng chỉ:">
+<!ENTITY view.label "Hiển thị">
+<!ENTITY view.accesskey "H">
+<!ENTITY tree.recipient "Người nhận">
+<!ENTITY tree.status "Trạng thái">
+<!ENTITY tree.issuedDate "Phát hành">
+<!ENTITY tree.expiresDate "Hết hạn">
diff --git a/l10n-vi/mail/chrome/messenger-smime/msgCompSecurityInfo.properties b/l10n-vi/mail/chrome/messenger-smime/msgCompSecurityInfo.properties
new file mode 100644
index 0000000000..e6d0386d01
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger-smime/msgCompSecurityInfo.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/.
+
+StatusNotFound=Không thấy
+StatusValid=Hiệu lực
+StatusExpired=Bị hết hạn
+StatusUntrusted=Không đáng tin
+StatusRevoked=Bị thu hồi
+StatusInvalid=Không hiệu lực
+StatusYes=Có
+StatusNo=Không
+StatusNotPossible=Có thể
+
diff --git a/l10n-vi/mail/chrome/messenger-smime/msgReadSMIMEOverlay.properties b/l10n-vi/mail/chrome/messenger-smime/msgReadSMIMEOverlay.properties
new file mode 100644
index 0000000000..d170ee95a8
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Thư hiển thị đã được kí điện tử, nhưng các tập tin đính kèm của nó vẫn chưa được tải hết. Do đó, chữ kí không thể xác minh được. Nhấn OK để tải xuống toàn bộ thư và xác minh chữ kí.
+#
+#NOTE To translator, anything between %..% and <..> should not be translated.
+# the former will be replaced by java script, and the latter is HTML formatting.
+#
+CantDecryptTitle=%brand% không thể giải mã thư này
+CantDecryptBody=Người gửi đã mã hóa thư bằng một trong các chữ kí điện tử của bạn, tuy nhiên %brand% không thể tìm thấy chứng chỉ này và khóa cá nhân tương ứng. <br> Giải pháp đề nghị: <br><ul><li>Nếu bạn có thẻ smartcard, vui lòng đưa nó vào ngay bây giờ. <li>Nếu đang dùng máy mới, hoặc nếu đang dùng một hồ sơ %brand% mới, bạn sẽ cần phải khôi phục chứng chỉ và khóa cá nhân từ một bản sao lưu. Bản sao lưu chứng chỉ thường có đuôi là ".p12".</ul>
diff --git a/l10n-vi/mail/chrome/messenger-smime/msgReadSecurityInfo.dtd b/l10n-vi/mail/chrome/messenger-smime/msgReadSecurityInfo.dtd
new file mode 100644
index 0000000000..ad05a50807
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Bảo mật thư">
+<!ENTITY signatureCert.label "Xem chứng chỉ chữ ký">
+<!ENTITY encryptionCert.label "Xem chứng chỉ mã hóa">
+
+<!ENTITY signer.name "Kí bởi:">
+<!ENTITY recipient.name "Mã hóa cho:">
+<!ENTITY email.address "Địa chỉ email:">
+<!ENTITY issuer.name "Chứng chỉ được cấp bởi:">
+
+<!-- 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/l10n-vi/mail/chrome/messenger-smime/msgSecurityInfo.properties b/l10n-vi/mail/chrome/messenger-smime/msgSecurityInfo.properties
new file mode 100644
index 0000000000..8677123777
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Thư không có chữ ký điện tử
+SINone=Thư này không có chữ kí điện tử của người gửi. Việc thiếu chữ kí điện tử có nghĩa là lá thư có thể đã được gửi bởi một người giả dạng địa chỉ email này. Cũng có thể lá thư đã bị sửa đổi trong khi truyền tải qua hệ thống mạng. Tuy nhiên, có vẻ như hai sự việc đó đã không xảy ra.
+SIValidLabel=Thư Đã Được Kí
+SIValid=Thư này có một chữ kí điện tử hợp lệ. Thư đã không bị sửa đổi kể từ lúc nó được gửi đi.
+SIInvalidLabel=Chữ Kí Điện Tử Không Hợp Lệ
+SIInvalidHeader=Thư này có chữ kí điện tử, nhưng chữ kí không hợp lệ.
+SIContentAltered=Chữ kí không khớp với hợp nội dung thư. Có vẻ như lá thư đã bị sửa đổi kể từ lúc người gửi kí nó. Bạn không nên tin vào tính hợp lệ của lá thư này cho đến khi bạn đã kiểm tra nội dung của nó với người gửi.
+SIExpired=Chứng thư được dùng để kí lá thư có vẻ đã bị hết hạn. Hãy chắc chắn rằng đồng hồ trên máy bạn được chỉnh đúng.
+SIRevoked=Chứng thư được dùng để kí lá thư đã bị thu hồi. Bạn không nên tin vào tính hợp lệ của lá thư cho đến khi bạn đã kiểm tra nội dung của nó với người gửi.
+SINotYetValid=Chứng thư được dùng để kí lá thư có vẻ chưa có hiệu lực. Hãy chắc chắn rằng đồng hồ trên máy bạn được chỉnh đúng.
+SIUnknownCA=Chứng thư được dùng để kí lá thư được cấp bởi một nhà phát hành chứng thư chưa được biết.
+SIUntrustedCA=Chứng thư được dùng để kí lá thư được cấp bởi một nhà phát hành chứng thư mà bạn không tin tưởng trong việc cấp kiểu chứng thư này.
+SIExpiredCA=Chứng thư được dùng để kí lá thư được cấp bởi một nhà phát hành chứng thư đang sở hữu một chứng thư hết hạn. Hãy chắc chắn rằng đồng hồ trên máy bạn được chỉnh đúng.
+SIRevokedCA=Chứng thư được dùng để kí lá thư được cấp bởi một nhà phát hành chứng thư đang sở hữu một chứng thư đã bị thu hồi. Bạn không nên tin vào tính hợp lệ của lá thư cho đến khi bạn đã kiểm tra nội dung của nó với người gửi.
+SINotYetValidCA=Chứng thư được dùng để kí lá thư được cấp bởi một nhà phát hành chứng thư đang sở hữu một chứng thư chưa có hiệu lực. Hãy chắc chắn rằng đồng hồ trên máy bạn được chỉnh đúng.
+SIInvalidCipher=Thư được kí bằng một chế độ mã hóa mạnh mà phiên bản phần mềm này không hỗ trợ.
+SIClueless=Có vấn đề với chữ kí điện tử này. Bạn không nên tin vào tính hợp lệ của lá thư cho đến khi bạn đã kiểm tra nội dung của nó với người gửi.
+SIPartiallyValidLabel=Thư đã được kí
+SIPartiallyValidHeader=Mặc dù chữ kí điện tử hợp lệ, nhưng vẫn chưa biết người gửi và người kí có phải là cùng một người hay không.
+SIHeaderMismatch=Địa chỉ thư được liệt kê trong chứng thư của người kí khác với địa chỉ email được dùng để gửi lá thư này. Vui lòng nhìn vào chi tiết của chứng thư chữ kí để biết ai đã kí lá thư.
+SICertWithoutAddress=Chứng thư được dùng để kí lá thư không có địa chỉ email. Vui lòng nhìn vào chi tiết của chứng thư chữ kí để biết ai đã kí lá thư.
+
+## Encryption Information strings
+EINoneLabel2=Thư không được mã hóa
+EINone=Thư này không được mã hóa trước khi gửi. Thông tin gửi qua Internet mà không mã hóa có thể bị thấy bởi người khác trong quá trình truyền tải.
+EIValidLabel=Thư Được Mã Hóa
+EIValid=Thư này đã được mã hóa trước khi được gửi đến bạn. Mã hóa khiến cho người khác rất khó xem được thông tin trong quá trình thư đi qua các hệ thống mạng.
+EIInvalidLabel=Thư Không Thể Giải Mã Được
+EIInvalidHeader=Thư này đã được mã hóa trước khi được gửi đến bạn, nhưng nó không thể giải mã được.
+EIContentAltered=Nội dung thư có vẻ đã bị sửa đổi trong quá trình truyền tải.
+EIClueless=Có những vấn đề chưa biết đối với lá thư mã hóa này.
diff --git a/l10n-vi/mail/chrome/messenger/AccountManager.dtd b/l10n-vi/mail/chrome/messenger/AccountManager.dtd
new file mode 100644
index 0000000000..339ff3ef82
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Cài đặt tài khoản">
+<!ENTITY accountManagerCloseButton.label "Đóng">
+
+<!ENTITY accountActionsButton.label "Hành động tài khoản">
+<!ENTITY accountActionsButton.accesskey "A">
+<!ENTITY addMailAccountButton.label "Thêm tài khoản thư…">
+<!ENTITY addMailAccountButton.accesskey "A">
+<!ENTITY addIMAccountButton.label "Thêm tài khoản trò chuyện…">
+<!ENTITY addIMAccountButton.accesskey "C">
+<!ENTITY addFeedAccountButton.label "Thêm tài khoản nguồn cấp dữ liệu…">
+<!ENTITY addFeedAccountButton.accesskey "F">
+<!ENTITY setDefaultButton.label "Đặt làm mặc định">
+<!ENTITY setDefaultButton.accesskey "D">
+<!ENTITY removeButton.label "Xóa tài khoản">
+<!ENTITY removeButton.accesskey "R">
+
+<!ENTITY addonsButton.label "Tiện ích mở rộng &amp; chủ đề">
+
+<!-- AccountManager.xhtml -->
diff --git a/l10n-vi/mail/chrome/messenger/AccountWizard.dtd b/l10n-vi/mail/chrome/messenger/AccountWizard.dtd
new file mode 100644
index 0000000000..e54294d009
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Trình thuật sĩ tài khoản">
+<!ENTITY accountWizard.size "width: 40em; height: 38em;">
+
+<!-- Entities for Account Type page -->
+
+<!-- Entities for Identity page -->
+
+<!ENTITY identityTitle.label "Nhận dạng">
+<!ENTITY identityDesc.label "Mỗi tài khoản có một danh tính, đó là thông tin nhận dạng bạn với người khác khi họ nhận được thư của bạn.">
+
+<!-- LOCALIZATION NOTE (fullnameDesc.label) : do not translate two of "&quot;" in below line -->
+<!ENTITY fullnameDesc.label "Nhập tên mà bạn muốn hiển thị trong trường &quot;Từ&quot; trên các thư gửi đi">
+<!-- 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 "(ví dụ, &quot;John Smith&quot;).">
+<!ENTITY fullnameLabel.label "Tên của bạn:">
+<!ENTITY fullnameLabel.accesskey "Y">
+
+<!ENTITY emailLabel.label "Địa chỉ email:">
+<!ENTITY emailLabel.accesskey "E">
+
+<!-- Entities for Incoming Server page -->
+
+<!ENTITY incomingTitle.label "Thông tin máy chủ nhận thư">
+<!ENTITY incomingUsername.label "Tên đăng nhập:">
+<!-- LOCALIZATION NOTE (newsServerNameDesc.label) : Do not translate "NNTP" or the "&quot;" entities in below line -->
+<!ENTITY newsServerNameDesc.label "Nhập tên của máy chủ tin tức của bạn (NNTP) (ví dụ: &quot;news.example.net&quot;).">
+<!ENTITY newsServerLabel.label "Máy chủ nhóm tin:">
+<!ENTITY newsServerLabel.accesskey "S">
+
+<!-- Entities for Outgoing Server page -->
+
+<!-- Entities for Account name page -->
+
+<!ENTITY accnameTitle.label "Tên tài khoản">
+<!-- LOCALIZATION NOTE (accnameDesc.label) : do not translate any "&quot;" in below line -->
+<!ENTITY accnameDesc.label "Nhập tên mà bạn muốn dùng để nói tới tài khoản này (ví dụ, &quot;Tài khoản công việc&quot;, &quot;Tài khoản ở nhà&quot; hoặc &quot;Tài khoản tin tức&quot;).">
+<!ENTITY accnameLabel.label "Tên tài khoản:">
+<!ENTITY accnameLabel.accesskey "A">
+
+<!-- Entities for Done (Congratulations) page -->
+
+<!ENTITY completionTitle.label "Chúc mừng!">
+<!ENTITY completionText.label "Vui lòng xác minh rằng thông tin dưới đây là chính xác.">
+<!ENTITY newsServerNamePrefix.label "Tên máy chủ tin tức (NNTP):">
+<!ENTITY clickFinish.label "Nhấn Hoàn Thành để lưu các thiết lập này và thoát trình thuật sĩ tài khoản.">
+<!ENTITY clickFinish.labelMac "Nhấn Xong để lưu các thiết lập này và thoát trình thuật sĩ tài khoản.">
diff --git a/l10n-vi/mail/chrome/messenger/CustomHeaders.dtd b/l10n-vi/mail/chrome/messenger/CustomHeaders.dtd
new file mode 100644
index 0000000000..1893b868ef
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tùy biến tiêu đề">
+<!ENTITY addButton.label "Thêm">
+<!ENTITY addButton.accesskey "A">
+<!ENTITY removeButton.label "Xóa">
+<!ENTITY removeButton.accesskey "R">
+<!ENTITY newMsgHeader.label "Tiêu đề thư mới:">
+<!ENTITY newMsgHeader.accesskey "N">
diff --git a/l10n-vi/mail/chrome/messenger/FilterEditor.dtd b/l10n-vi/mail/chrome/messenger/FilterEditor.dtd
new file mode 100644
index 0000000000..67bb4c71ef
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Quy tắc bộ lọc">
+<!ENTITY filterName.label "Tên bộ lọc:">
+<!ENTITY filterName.accesskey "i">
+
+<!ENTITY junk.label "Thư rác">
+<!ENTITY notJunk.label "Không phải thư rác">
+
+<!ENTITY lowestPriorityCmd.label "Thấp nhất">
+<!ENTITY lowPriorityCmd.label "Thấp">
+<!ENTITY normalPriorityCmd.label "Bình thường">
+<!ENTITY highPriorityCmd.label "Cao">
+<!ENTITY highestPriorityCmd.label "Cao nhất">
+
+<!ENTITY contextDesc.label "Áp dụng bộ lọc khi:">
+<!ENTITY contextIncomingMail.label "Nhận thư mới:">
+<!ENTITY contextIncomingMail.accesskey "G">
+<!ENTITY contextManual.label "Chạy thủ công">
+<!ENTITY contextManual.accesskey "R">
+<!ENTITY contextBeforeCls.label "Lọc trước khi phân loại thư rác">
+<!ENTITY contextAfterCls.label "Lọc sau khi phân loại thư rác">
+<!ENTITY contextOutgoing.label "Sau khi gửi">
+<!ENTITY contextOutgoing.accesskey "S">
+<!ENTITY contextArchive.label "Lưu trữ">
+<!ENTITY contextArchive.accesskey "A">
+<!ENTITY contextPeriodic.accesskey "e">
+
+<!ENTITY filterActionDesc.label "Thực hiện các hành động này:">
+<!ENTITY filterActionDesc.accesskey "P">
+
+<!ENTITY filterActionOrderWarning.label "Lưu ý: Các hành động lọc sẽ được chạy theo thứ tự khác.">
+<!ENTITY filterActionOrder.label "Xem thứ tự thực hiện">
+
+<!-- New Style Filter Rule Actions -->
+<!ENTITY moveMessage.label "Di chuyển thư tới">
+<!ENTITY copyMessage.label "Sao chép thư đến">
+<!ENTITY forwardTo.label "Chuyển tiếp thư tới">
+<!ENTITY replyWithTemplate.label "Trả lời bằng mẫu">
+<!ENTITY markMessageRead.label "Đánh dấu là đã đọc">
+<!ENTITY markMessageUnread.label "Đánh dấu là chưa đọc">
+<!ENTITY markMessageStarred.label "Thêm sao">
+<!ENTITY setPriority.label "Đặt mức độ ưu tiên thành">
+<!ENTITY addTag.label "Dán nhãn cho thư">
+<!ENTITY setJunkScore.label "Đặt trạng thái thư rác thành">
+<!ENTITY deleteMessage.label "Xóa thư">
+<!ENTITY deleteFromPOP.label "Xóa trên máy chủ POP">
+<!ENTITY fetchFromPOP.label "Lấy từ máy chủ POP">
+<!ENTITY ignoreThread.label "Bỏ qua chủ đề">
+<!ENTITY ignoreSubthread.label "Bỏ qua chủ đề con">
+<!ENTITY watchThread.label "Theo dõi chủ đề">
+<!ENTITY stopExecution.label "Dừng thực thi bộ lọc">
+
+<!ENTITY addAction.tooltip "Thêm một hành động mới">
+<!ENTITY removeAction.tooltip "Xóa hành động này">
+
+<!-- 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/l10n-vi/mail/chrome/messenger/FilterListDialog.dtd b/l10n-vi/mail/chrome/messenger/FilterListDialog.dtd
new file mode 100644
index 0000000000..548df554ac
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Bộ lọc thư">
+<!ENTITY nameColumn.label "Tên bộ lọc">
+<!ENTITY activeColumn.label "Đã bật">
+<!ENTITY newButton.label "Mới…">
+<!ENTITY newButton.accesskey "N">
+<!ENTITY newButton.popupCopy.label "Sao chép…">
+<!ENTITY newButton.popupCopy.accesskey "C">
+<!ENTITY editButton.label "Chỉnh sửa…">
+<!ENTITY editButton.accesskey "E">
+<!ENTITY deleteButton.label "Xóa">
+<!ENTITY deleteButton.accesskey "t">
+<!ENTITY reorderTopButton "Chuyển lên trên cùng">
+<!ENTITY reorderTopButton.accessKey "o">
+<!ENTITY reorderTopButton.toolTip "Sắp xếp lại bộ lọc để nó thực thi trước tất cả các bộ lọc khác">
+<!ENTITY reorderUpButton.label "Di chuyển lên">
+<!ENTITY reorderUpButton.accesskey "U">
+<!ENTITY reorderDownButton.label "Di chuyển xuống">
+<!ENTITY reorderDownButton.accesskey "D">
+<!ENTITY reorderBottomButton "Chuyển xuống dưới cùng">
+<!ENTITY reorderBottomButton.accessKey "B">
+<!ENTITY reorderBottomButton.toolTip "Sắp xếp lại bộ lọc để nó thực thi sau tất cả các bộ lọc khác">
+<!ENTITY filterHeader.label "Các bộ lọc đã kích hoạt sẽ được chạy tự động theo thứ tự bên dưới.">
+<!ENTITY filtersForPrefix.label "Bộ lọc cho:">
+<!ENTITY filtersForPrefix.accesskey "F">
+<!ENTITY viewLogButton.label "Nhật kí bộ lọc">
+<!ENTITY viewLogButton.accesskey "L">
+<!ENTITY runFilters.label "Chạy ngay">
+<!ENTITY runFilters.accesskey "R">
+<!ENTITY stopFilters.label "Dừng">
+<!ENTITY stopFilters.accesskey "S">
+<!ENTITY folderPickerPrefix.label "Chạy các bộ lọc đã chọn cho:">
+<!ENTITY folderPickerPrefix.accesskey "c">
+<!ENTITY helpButton.label "Trợ giúp">
+<!ENTITY helpButton.accesskey "H">
+<!ENTITY closeCmd.key "W">
+<!ENTITY searchBox.emptyText "Tìm kiếm bộ lọc theo tên…">
diff --git a/l10n-vi/mail/chrome/messenger/SearchDialog.dtd b/l10n-vi/mail/chrome/messenger/SearchDialog.dtd
new file mode 100644
index 0000000000..7cc612a906
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tìm kiếm thư trong:">
+<!ENTITY searchHeading.accesskey "h">
+<!ENTITY searchSubfolders.label "Tìm kiếm thư mục con">
+<!ENTITY searchSubfolders.accesskey "e">
+<!ENTITY searchOnServer.label "Chạy tìm kiếm trên máy chủ">
+<!ENTITY searchOnServer.accesskey "u">
+<!ENTITY resetButton.label "Xóa trắng">
+<!ENTITY resetButton.accesskey "C">
+<!ENTITY openButton.label "Mở">
+<!ENTITY openButton.accesskey "n">
+<!ENTITY deleteButton.label "Xóa">
+<!ENTITY deleteButton.accesskey "D">
+<!ENTITY searchDialogTitle.label "Tìm kiếm thư">
+<!ENTITY results.label "Kết quả">
+<!ENTITY moveButton.label "Di chuyển đến">
+<!ENTITY moveButton.accesskey "T">
+<!ENTITY closeCmd.key "W">
+<!ENTITY openInFolder.label "Mở trong thư mục">
+<!ENTITY openInFolder.accesskey "r">
+<!ENTITY saveAsVFButton.label "Lưu thành thư mục tìm kiếm">
+<!ENTITY saveAsVFButton.accesskey "v">
+
+<!-- for ABSearchDialog.xul -->
+<!ENTITY abSearchHeading.label "Tìm kiếm trong:">
+<!ENTITY abSearchHeading.accesskey "h">
+<!ENTITY propertiesButton.label "Thuộc tính">
+<!ENTITY propertiesButton.accesskey "P">
+<!ENTITY composeButton.label "Viết thư">
+<!ENTITY composeButton.accesskey "W">
+<!ENTITY deleteCardButton.label "Xóa">
+<!ENTITY deleteCardButton.accesskey "D">
+<!ENTITY abSearchDialogTitle.label "Tìm kiếm sổ địa chỉ nâng cao">
+
diff --git a/l10n-vi/mail/chrome/messenger/aboutDialog.dtd b/l10n-vi/mail/chrome/messenger/aboutDialog.dtd
new file mode 100644
index 0000000000..66427f307c
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/aboutDialog.dtd
@@ -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/. -->
+
+<!ENTITY aboutDialog.title "Giới thiệu về &brandFullName;">
+
+<!-- LOCALIZATION NOTE (update.*):
+# These strings are also used in the update pane of preferences.
+# See about:preferences#advanced.
+-->
+<!-- LOCALIZATION NOTE (update.checkForUpdatesButton.*, update.updateButton.*):
+# Only one button is present at a time.
+# The button when displayed is located directly under the Thunderbird version in
+# the about dialog.
+-->
+<!ENTITY update.checkForUpdatesButton.label "Kiểm tra cập nhật">
+<!ENTITY update.checkForUpdatesButton.accesskey "C">
+<!ENTITY update.updateButton.label3 "Khởi động lại để cập nhật &brandShorterName;">
+<!ENTITY update.updateButton.accesskey "R">
+
+
+<!-- LOCALIZATION NOTE (warningDesc.version): This is a warning about the experimental nature of Nightly builds. It is only shown in this version. -->
+<!ENTITY warningDesc.version "&brandShortName; được thiết kế để thử nghiệm và có thể không ổn định.">
+<!-- LOCALIZATION NOTE (warningDesc.telemetryDesc): This is a notification that Nightly builds automatically send Telemetry data back to Mozilla. It is only shown in this version. "It" refers to brandShortName. -->
+<!ENTITY warningDesc.telemetryDesc "Thông tin về việc sử dụng, về hiệu suất, phần cứng và các tùy chỉnh sẽ được tự động gửi tới &vendorShortName; để giúp &brandShortName; hoàn thiện hơn.">
+
+<!-- LOCALIZATION NOTE (community.exp.*) This paragraph is shown in "experimental" builds, i.e. Nightly builds, instead of the other "community.*" strings below. -->
+<!ENTITY community.exp.start "">
+<!-- LOCALIZATION NOTE (community.exp.mozillaLink): This is a link title that links to https://www.mozilla.org/. -->
+<!ENTITY community.exp.mozillaLink "&vendorShortName;">
+<!ENTITY community.exp.middle " là một ">
+<!-- LOCALIZATION NOTE (community.exp.creditslink): This is a link title that links to about:credits. -->
+<!ENTITY community.exp.creditsLink "cộng đồng toàn cầu">
+<!ENTITY community.exp.end " cùng chung sức bảo vệ Web mở, công khai, và cho phép ai cũng truy cập được.">
+
+<!ENTITY community.start2 "&brandShortName; được thiết kế bởi ">
+<!-- LOCALIZATION NOTE (community.mozillaLink): This is a link title that links to https://www.mozilla.org/. -->
+<!ENTITY community.mozillaLink "&vendorShortName;">
+<!ENTITY community.middle2 ", một ">
+<!-- LOCALIZATION NOTE (community.creditsLink): This is a link title that links to about:credits. -->
+<!ENTITY community.creditsLink "cộng đồng toàn cầu">
+<!ENTITY community.end3 " cùng chung sức bảo vệ Web mở, công khai, và cho phép ai cũng truy cập được.">
+
+<!ENTITY helpus.start "Bạn muốn giúp đỡ? ">
+<!-- LOCALIZATION NOTE (helpus.donateLink): This is a link title that links to the thunderbird donation page -->
+<!ENTITY helpus.donateLink "Quyên góp tài chính">
+<!ENTITY helpus.middle " hoặc ">
+<!-- LOCALIZATION NOTE (helpus.getInvolvedLink): This is a link title that links to https://www.thunderbird.net/get-involved/. -->
+<!ENTITY helpus.getInvolvedLink "tham gia đóng góp!">
+<!ENTITY helpus.end "">
+
+<!ENTITY releaseNotes.link "Ghi chú phát hành">
+
+<!-- LOCALIZATION NOTE (bottomLinks.license): This is a link title that links to about:license. -->
+<!ENTITY bottomLinks.license "Thông tin giấy phép">
+
+<!-- LOCALIZATION NOTE (bottomLinks.rights): This is a link title that links to about:rights. -->
+<!ENTITY bottomLinks.rights "Quyền hạn người dùng cuối">
+
+<!-- LOCALIZATION NOTE (bottomLinks.privacy): This is a link title that links to https://www.mozilla.org/legal/privacy/. -->
+<!ENTITY bottomLinks.privacy "Chính sách riêng tư">
+
+<!-- LOCALIZATION NOTE (update.checkingForUpdates): try to make the localized text short (see bug 596813 for screenshots). -->
+<!ENTITY update.checkingForUpdates "Đang kiểm tra cập nhật…">
+<!-- LOCALIZATION NOTE (update.noUpdatesFound): try to make the localized text short (see bug 596813 for screenshots). -->
+<!ENTITY update.noUpdatesFound "&brandShortName; đã được cập nhật">
+<!-- LOCALIZATION NOTE (update.adminDisabled): try to make the localized text short (see bug 596813 for screenshots). -->
+<!ENTITY update.adminDisabled "Cập nhật bị vô hiệu hóa bởi quản trị hệ thống của bạn">
+<!-- LOCALIZATION NOTE (update.otherInstanceHandlingUpdates): try to make the localized text short -->
+<!ENTITY update.otherInstanceHandlingUpdates "&brandShortName; đang được cập nhật bởi tiến trình khác">
+
+<!-- LOCALIZATION NOTE (update.failed.start,update.failed.linkText,update.failed.end):
+ update.failed.start, update.failed.linkText, and update.failed.end all go into
+ one line with linkText being wrapped in an anchor that links to a site to download
+ the latest version of Firefox (e.g. https://www.firefox.com). As this is all in
+ one line, try to make the localized text short (see bug 596813 for screenshots). -->
+<!ENTITY update.failed.start "Cập nhật thất bại. ">
+<!ENTITY update.failed.linkText "Tải xuống phiên bản mới nhất">
+<!ENTITY update.failed.end "">
+
+<!-- LOCALIZATION NOTE (update.manual.start,update.manual.end): update.manual.start and update.manual.end
+ all go into one line and have an anchor in between with text that is the same as the link to a site
+ to download the latest version of Firefox (e.g. https://www.firefox.com). As this is all in one line,
+ try to make the localized text short (see bug 596813 for screenshots). -->
+<!ENTITY update.manual.start "Tải xuống ">
+<!ENTITY update.manual.linkText "phiên bản mới nhất">
+<!ENTITY update.manual.end "">
+
+<!-- LOCALIZATION NOTE (update.unsupported.start,update.unsupported.linkText,update.unsupported.end):
+ update.unsupported.start, update.unsupported.linkText, and
+ update.unsupported.end all go into one line with linkText being wrapped in
+ an anchor that links to a site to provide additional information regarding
+ why the system is no longer supported. As this is all in one line, try to
+ make the localized text short (see bug 843497 for screenshots). -->
+<!ENTITY update.unsupported.start "Bạn không thể cập nhật thêm trên hệ thống này nữa. ">
+<!ENTITY update.unsupported.linkText "Tìm hiểu thêm">
+<!ENTITY update.unsupported.end "">
+
+<!-- LOCALIZATION NOTE (update.downloading.start,update.downloading.end): update.downloading.start and
+ update.downloading.end all go into one line, with the amount downloaded inserted in between. As this
+ is all in one line, try to make the localized text short (see bug 596813 for screenshots). The — is
+ the "em dash" (long dash).
+ example: Downloading update — 111 KB of 13 MB -->
+<!ENTITY update.downloading.start "Đang tải bản cập nhật — ">
+<!ENTITY update.downloading.end "">
+
+<!ENTITY update.applying "Đang cài đặt cập nhật…">
+<!ENTITY update.restarting "Đang khởi động lại…">
+
+<!-- LOCALIZATION NOTE (channel.description.start,channel.description.end): channel.description.start and
+ channel.description.end create one sentence, with the current channel label inserted in between.
+ example: You are currently on the _Stable_ update channel. -->
+<!ENTITY channel.description.start "Bạn hiện đang trên kênh cập nhật ">
+<!ENTITY channel.description.end ". ">
+
+<!ENTITY cmdCloseMac.commandKey "w">
diff --git a/l10n-vi/mail/chrome/messenger/aboutDownloads.dtd b/l10n-vi/mail/chrome/messenger/aboutDownloads.dtd
new file mode 100644
index 0000000000..c1c728f9bc
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tập tin đã lưu">
+<!-- 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 "Mở thư mục chứa">
+<!ENTITY cmd.show.accesskey "F">
+<!ENTITY cmd.showMac.label "Hiển thị trong Finder">
+<!ENTITY cmd.showMac.accesskey "F">
+<!ENTITY cmd.open.label "Mở">
+<!ENTITY cmd.open.accesskey "O">
+<!ENTITY cmd.removeFromHistory.label "Xóa khỏi lịch sử">
+<!ENTITY cmd.removeFromHistory.accesskey "e">
+<!ENTITY cmd.clearList.label "Xóa danh sách">
+<!ENTITY cmd.clearList.accesskey "C">
+<!ENTITY cmd.clearList.tooltip "Xóa tất cả các mục khỏi danh sách các tập tin đã lưu, ngoại trừ các bản tải xuống đang diễn ra.">
+<!ENTITY cmd.searchDownloads.label "Tìm kiếm…">
+<!ENTITY cmd.searchDownloads.key "F">
diff --git a/l10n-vi/mail/chrome/messenger/aboutRights.properties b/l10n-vi/mail/chrome/messenger/aboutRights.properties
new file mode 100644
index 0000000000..048d4b799c
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/aboutRights.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/.
+
+buttonLabel=Biết thêm về quyền của bạn…
+buttonAccessKey=B
+
diff --git a/l10n-vi/mail/chrome/messenger/aboutSupportMail.properties b/l10n-vi/mail/chrome/messenger/aboutSupportMail.properties
new file mode 100644
index 0000000000..29c786adce
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/aboutSupportMail.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/.
+
+# LOCALIZATION NOTE (warningLabel): Label for warning text that shows up when private data is included
+warningLabel=CẢNH BÁO:
+# LOCALIZATION NOTE (warningText): Warning text that shows up when private data is included
+warningText=Bao gồm thông tin nhạy cảm không nên được chuyển tiếp hoặc công bố mà chưa được sự cho phép.
+
+# LOCALIZATION NOTE (fsType.local): Indicator that the displayed directory is on a local drive
+fsType.local = (Ổ đĩa nội bộ)
+# LOCALIZATION NOTE (fsType.network): Indicator that the displayed directory is on the network
+fsType.network = (Ổ đĩa mạng)
+# LOCALIZATION NOTE (fsType.unknown): Indicator that we couldn't figure out whether the directory is local or on a network
+fsType.unknown = (Địa điểm không rõ)
+
diff --git a/l10n-vi/mail/chrome/messenger/accountCreationModel.properties b/l10n-vi/mail/chrome/messenger/accountCreationModel.properties
new file mode 100644
index 0000000000..d9441d3f4e
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/accountCreationModel.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/.
+
+# 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=Tệp cấu hình XML không chứa cấu hình tài khoản email.
+outgoing_not_smtp.error=Máy chủ gửi thư phải là loại SMTP
+
+# verifyConfig.js
+cannot_login.error=Không thể đăng nhập vào máy chủ. Có lẽ là do cấu hình, tên đăng nhập, hoặc mật khẩu sai.
+
+# guessConfig.js
+cannot_find_server.error=Không thể tìm thấy máy chủ
+
+# exchangeAutoDiscover.js
+no_autodiscover.error=Exchange AutoDiscover XML không hợp lệ.
diff --git a/l10n-vi/mail/chrome/messenger/accountCreationUtil.properties b/l10n-vi/mail/chrome/messenger/accountCreationUtil.properties
new file mode 100644
index 0000000000..6ab4b844a1
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tên máy chủ trống hoặc chứa các ký tự bị cấm. Chỉ các chữ cái, số, - và . được cho phép.
+alphanumdash.error=Chuỗi chứa các kí tự không được hỗ trợ. Chỉ chữ cái, số, - và _ là được dùng.
+allowed_value.error=Giá trị đã cung cấp không có trong danh sách được phép dùng
+url_scheme.error=Giao thức URL không được phép
+url_parsing.error=Không nhận ra URL
+string_empty.error=Bạn phải cung cấp giá trị cho chuỗi này
+boolean.error=Không phải giá trị luận lý
+no_number.error=Không phải số
+number_too_large.error=Số lớn quá
+number_too_small.error=Số nhỏ quá
+
+
+# fetchhttp.js
+cannot_contact_server.error=Không thể liên hệ máy chủ
+bad_response_content.error=Phản hồi có nội dung hỏng
+
+# 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=Đăng nhập thất bại. Tên đăng nhập/địa chỉ email và mật khẩu có đúng không?
+# 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=Đăng nhập thất bại. Máy chủ %1$S cho biết: %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=Xác thực đăng nhập bị thất bại vì một lí do chưa biết.
+# 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=Xác thực đăng nhập bị thất bại với thông báo: %1$S
diff --git a/l10n-vi/mail/chrome/messenger/activity.dtd b/l10n-vi/mail/chrome/messenger/activity.dtd
new file mode 100644
index 0000000000..7a82b57db2
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "485">
+<!ENTITY window.height "300">
+
+<!ENTITY activity.title "Trình quản lí hoạt động">
+
+<!ENTITY cmd.close.commandkey "w">
+<!ENTITY cmd.close2.commandkey "j">
+<!ENTITY cmd.close2Unix.commandkey "y">
+<!ENTITY cmd.clearList.label "Xóa danh sách">
+<!ENTITY cmd.clearList.tooltip "Xóa các mục đã hoàn thành, hủy bỏ và không thành công khỏi danh sách">
+<!ENTITY cmd.clearList.accesskey "c">
+
diff --git a/l10n-vi/mail/chrome/messenger/activity.properties b/l10n-vi/mail/chrome/messenger/activity.properties
new file mode 100644
index 0000000000..d2673dc9d1
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tạm dừng
+processing=Đang tiến hành
+notStarted=Chưa bắt đầu
+failed=Thất bại
+waitingForInput=Đang đợi đầu vào
+waitingForRetry=Đang chờ thử lại
+completed=Hoàn tất
+canceled=Đã hủy
+
+# LOCALIZATION NOTE (sendingMessages): this is used as a title for grouping processes in the activity manager when sending email.
+sendingMessages=Đang gửi Thư
+sendingMessage=Đang gửi Thư
+# LOCALIZATION NOTE (sendingMessageWithSubject): %S will be replaced by the subject of the message being sent.
+sendingMessageWithSubject=Đang gửi thư: %S
+copyMessage=Đang chép thư tới thư mục 'Đã Gửi'
+sentMessage=Thư đã gửi
+# LOCALIZATION NOTE (sentMessageWithSubject): %S will be replaced by the subject of the message being sent.
+sentMessageWithSubject=Thư đã gửi: %S
+failedToSendMessage=Thất bại khi gửi thư
+failedToCopyMessage=Không thể sao chép thư
+# LOCALIZATION NOTE (failedToSendMessageWithSubject): %S will be replaced by the subject of the message being sent.
+failedToSendMessageWithSubject=Không thể gửi thư: %S
+# LOCALIZATION NOTE (failedToCopyMessageWithSubject): %S will be replaced by the subject of the message being sent.
+failedToCopyMessageWithSubject=Không thể sao chép thư: %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: Đang tải xuống thư %1$S của %2$S trong %3$S…
+# LOCALIZATION NOTE (autosyncProcessDisplayText): %S will be replaced by the folder name
+autosyncProcessDisplayText=Đang cập nhật thư mục %S
+# LOCALIZATION NOTE (autosyncEventDisplayText): %S will be replaced by the account name
+autosyncEventDisplayText=%S đã được cập nhật
+# LOCALIZATION NOTE (autosyncEventStatusText): %S will be replaced by total number of downloaded messages
+autosyncEventStatusText=Tổng số thư đã tải: %S
+autosyncEventStatusTextNoMsgs=Không có thư nào được tải
+# LOCALIZATION NOTE (autosyncContextDisplayText): %S will be replaced by the account name
+autosyncContextDisplayText=Đang đồng bộ: %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: Đang kiểm tra thư mới từ %2$S…
+# LOCALIZATION NOTE (pop3EventDisplayText): %S will be replaced by the account name
+pop3EventDisplayText=%S đã được cập nhật
+# LOCALIZATION NOTE (pop3EventStatusText): #1 will be replaced by total number of downloaded messages
+pop3EventStatusText=#1 thư được tải;#1 thư được tải
+pop3EventStatusTextNoMsgs=Không có thư nào để tải
+
+# Message actions that show up in activity manager
+# LOCALIZATION NOTE (deletedMessages2): #1 number of messages, #2 folder name
+deletedMessages2=Đã xóa #1 thư khỏi #2;Đã xóa #1 thư khỏi #2
+# LOCALIZATION NOTE (movedMessages): #1 number of messages, #2 and #3: folder names
+movedMessages=Đã di chuyển #1 thư từ #2 sang #3;Đã di chuyển #1 thư từ #2 sang #3
+# LOCALIZATION NOTE (copiedMessages): #1 number of messages, #2 and #3: folder names
+copiedMessages=Đã chép #1 thư từ #2 sang #3;Đã chép #1 thư từ #2 sang #3
+# LOCALIZATION NOTE (fromServerToServer): #1 source server, #2 destination server
+fromServerToServer=từ #1 sang #2
+# LOCALIZATION NOTE (deletedFolder): #1 folder name
+deletedFolder=Đã xóa thư mục #1
+emptiedTrash=Đã dọn sạch Thùng rác
+# LOCALIZATION NOTE (movedFolder): #1 and #2 are folder names
+movedFolder=Đã di chuyển thư mục #1 vào thư mục #2
+# LOCALIZATION NOTE (movedFolderToTrash): #1 is the folder name
+movedFolderToTrash=Đã di chuyển thư mục #1 vào Thùng rác
+# LOCALIZATION NOTE (copiedFolder): #1 and #2 are folder names
+copiedFolder=Đã chép thư mục #1 vào thư mục #2
+# LOCALIZATION NOTE (renamedFolder): #1 and #2 are folder names
+renamedFolder=Đã đổi tên thư mục #1 thành #2
+indexing=Đang lập chỉ mục thư
+# LOCALIZATION NOTE (indexingFolder): #1 is a folder name
+indexingFolder=Đang lập chỉ mục thư trong #1
+indexingStatusVague=Đang xác định thư nào sẽ được vào chỉ mục
+# LOCALIZATION NOTE (indexingFolderStatusVague): #1 is a folder name
+indexingFolderStatusVague=Đang xác định thư nào trong #1 sẽ được vào chỉ mục
+# 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=Đang lập chỉ mục cho #1 trên tổng #2 thư;Đang lập chỉ mục cho #1 trên tổng #2 thư (hoàn tất #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=Đang lập chỉ mục cho #1 trên tổng #2 thư trong #4;Đang lập chỉ mục cho #1 trên tổng #2 thư trong #4 (hoàn tất #3%)
+# LOCALIZATION NOTE (indexedFolder): #1 number of messages; #2 folder name
+indexedFolder=Đã lập chỉ mục cho #1 thư trong #2;Đã lập chỉ mục cho #1 thư trong #2
+# LOCALIZATION NOTE (indexedFolderStatus): #1 number of seconds spent indexing
+indexedFolderStatus=#1 giây trước;#1 giây trước
diff --git a/l10n-vi/mail/chrome/messenger/addbuddy.dtd b/l10n-vi/mail/chrome/messenger/addbuddy.dtd
new file mode 100644
index 0000000000..a680083d52
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thêm liên hệ">
+<!ENTITY name.label "Tên đăng nhập">
+<!ENTITY account.label "Tài khoản">
diff --git a/l10n-vi/mail/chrome/messenger/addons.properties b/l10n-vi/mail/chrome/messenger/addons.properties
new file mode 100644
index 0000000000..eed06c6197
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/addons.properties
@@ -0,0 +1,256 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, you can obtain one at http://mozilla.org/MPL/2.0/.
+
+xpinstallPromptMessage=Trang này muốn cài đặt phần mềm lên máy tính của bạn và đã bị %S chặn lại.
+# LOCALIZATION NOTE (xpinstallPromptMessage.header)
+# The string contains the hostname of the site the add-on is being installed from.
+xpinstallPromptMessage.header=Cho phép %S cài đặt tiện ích mở rộng?
+xpinstallPromptMessage.message=Bạn đang cố gắng cài đặt tiện ích mở rộng từ %S. Hãy chắc chắn rằng bạn tin tưởng trang web này trước khi tiếp tục.
+xpinstallPromptMessage.header.unknown=Cho phép một trang không xác định cài đặt một tiện ích?
+xpinstallPromptMessage.message.unknown=Bạn đang cố gắng cài đặt tiện ích từ một trang không xác định. Hãy chắc chắn rằng bạn tin tưởng trang này trước khi tiếp tục.
+xpinstallPromptMessage.learnMore=Tìm hiểu thêm về cách cài đặt tiện ích một cách an toàn
+xpinstallPromptMessage.dontAllow=Từ chối
+xpinstallPromptMessage.dontAllow.accesskey=D
+xpinstallPromptMessage.neverAllow=Không bao giờ cho phép
+xpinstallPromptMessage.neverAllow.accesskey=N
+# 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
+xpinstallPromptMessage.install=Tiếp tục cài đặt
+xpinstallPromptMessage.install.accesskey=C
+
+# 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 http://www.mozilla.org/access/keyboard/accesskey for details
+xpinstallDisabledMessageLocked=Quản trị hệ thống của bạn đã vô hiệu hóa cài đặt phần mềm.
+xpinstallDisabledMessage=Hiện tại việc cài đặt phần mềm đã bị vô hiệu hóa. Hãy nhấn Bật rồi thử lại.
+xpinstallDisabledButton=Bật
+xpinstallDisabledButton.accesskey=n
+
+# LOCALIZATION NOTE (addonInstallBlockedByPolicy)
+# This message is shown when the installation of an add-on is blocked by
+# enterprise policy. %1$S is replaced by the name of the add-on.
+# %2$S is replaced by the ID of add-on. %3$S is a custom message that
+# the administration can add to the message.
+addonInstallBlockedByPolicy=%1$S (%2$S) bị chặn bởi quản trị viên hệ thống của bạn.%3$S
+# LOCALIZATION NOTE (addonDomainBlockedByPolicy)
+# This message is shown when the installation of add-ons from a domain
+# is blocked by enterprise policy.
+addonDomainBlockedByPolicy=Quản trị viên hệ thống của bạn đã ngăn trang web này yêu cầu bạn cài đặt phần mềm trên máy tính của bạn.
+
+# LOCALIZATION NOTE (addonPostInstall.message2)
+# %S is replaced with the localized named of the extension that was
+# just installed.
+addonPostInstall.message2=Đã thêm %S
+
+# LOCALIZATION NOTE (addonDownloadingAndVerifying):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Also see https://bugzilla.mozilla.org/show_bug.cgi?id=570012 for mockups
+addonDownloadingAndVerifying=Đang tải và xác thực #1 tiện ích…
+addonDownloadVerifying=Đang xác thực
+
+addonInstall.unsigned=(Chưa xác thực)
+addonInstall.cancelButton.label=Hủy bỏ
+addonInstall.cancelButton.accesskey=C
+addonInstall.acceptButton2.label=Thêm
+addonInstall.acceptButton2.accesskey=A
+
+# LOCALIZATION NOTE (addonConfirmInstallMessage,addonConfirmInstallUnsigned):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is brandShortName
+# #2 is the number of add-ons being installed
+addonConfirmInstall.message=Trang này muốn cài đặt #2 tiện ích vào #1:
+addonConfirmInstallUnsigned.message=Chú ý: Trang này muốn cài đặt #2 tiện ích chưa được xác thực vào #1. Chúng tôi không chịu trách nhiệm về những vấn đề có thể xảy ra.
+
+# LOCALIZATION NOTE (addonConfirmInstallSomeUnsigned.message):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is brandShortName
+# #2 is the total number of add-ons being installed (at least 2)
+addonConfirmInstallSomeUnsigned.message=Chú ý: Trang này muốn cài đặt #2 tiện ích vào #1, một số trong số đó chưa được xác thực. Chúng tôi không chịu trách nhiệm về những vấn đề có thể xảy ra.
+
+# LOCALIZATION NOTE (addonInstalled):
+# %S is the name of the add-on
+addonInstalled=%S đã cài đặt thành công.
+# LOCALIZATION NOTE (addonsGenericInstalled):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of add-ons
+addonsGenericInstalled=#1 tiện ích đã được cài đặt thành công.
+
+# LOCALIZATION NOTE (addonInstallError-1, addonInstallError-2, addonInstallError-3, addonInstallError-4, addonInstallError-5, addonLocalInstallError-1, addonLocalInstallError-2, addonLocalInstallError-3, addonLocalInstallError-4, addonLocalInstallError-5):
+# %1$S is the application name, %2$S is the add-on name
+addonInstallError-1=Không thể tải tiện ích do lỗi kết nối.
+addonInstallError-2=Không thể cài đặt tiện ích này vì nó không khớp với tiện ích %1$S được mong đợi.
+addonInstallError-3=Không thể cài đặt tiện ích được tải từ trang này vì có vẻ nó đã bị hỏng.
+addonInstallError-4=%2$S không thể cài đặt vì %1$S không thể sửa đổi tập tin cần thiết.
+addonInstallError-5=%1$S không cho phép trang này cài đặt một tiện ích chưa được xác thực.
+addonLocalInstallError-1=Không thể cài đặt tiện ích này vì có lỗi hệ thống tập tin.
+addonLocalInstallError-2=Không thể cài đặt tiện ích này vì nó không khớp với tiện ích %1$S được mong đợi.
+addonLocalInstallError-3=Không thể cài đặt tiện ích này vì có vẻ như nó đã bị hỏng.
+addonLocalInstallError-4=%2$S không thể cài đặt vì %1$S không thể sửa đổi tập tin cần thiết.
+addonLocalInstallError-5=Không thể cài đặt tiện ích này vì nó chưa được xác thực.
+
+# LOCALIZATION NOTE (addonInstallErrorIncompatible):
+# %1$S is the application name, %2$S is the application version, %3$S is the add-on name
+addonInstallErrorIncompatible=%3$S không thể cài đặt được vì nó không tương thích với %1$S %2$S.
+
+# LOCALIZATION NOTE (addonInstallErrorBlocklisted): %S is add-on name
+addonInstallErrorBlocklisted=%S không thể cài đặt được vì nó có khả năng gây ra các vấn đề về bảo mật và tính ổn định.
+
+# LOCALIZATION NOTE (webextPerms.header,webextPerms.headerWithPerms,webextPerms.headerUnsigned,webextPerms.headerUnsignedWithPerms)
+# These strings are used as headers in the webextension permissions dialog,
+# %S is replaced with the localized name of the extension being installed.
+# See https://bug1308309.bmoattachments.org/attachment.cgi?id=8814612
+# for an example of the full dialog.
+# Note, these strings will be used as raw markup. Avoid characters like <, >, &
+webextPerms.header=Thêm %S?
+
+# %S is brandShortName
+webextPerms.experimentWarning=Những tiện ích độc hại có thể lấy cắp thông tin cá nhân hoặc làm tổn hại đến máy tính của bạn. Chỉ cài đặt tiện ích này nếu bạn tin tưởng nguồn cài đặt.
+webextPerms.headerWithPerms=Thêm %S? Tiện ích mở rộng này sẽ có quyền:
+webextPerms.headerUnsigned=Thêm %S? Tiện ích mở rộng này chưa được xác minh. Các tiện ích mở rộng độc hại có thể lấy cắp thông tin cá nhân của bạn hoặc xâm phạm máy tính của bạn. Chỉ thêm nó nếu bạn tin tưởng.
+webextPerms.headerUnsignedWithPerms=Thêm %S? Tiện ích mở rộng này chưa được xác minh. Các tiện ích mở rộng độc hại có thể lấy cắp thông tin cá nhân của bạn hoặc xâm phạm máy tính của bạn. Chỉ thêm nó nếu bạn tin tưởng. Tiện ích mở rộng này sẽ có quyền:
+webextPerms.learnMore2=Tìm hiểu thêm
+webextPerms.add.label=Thêm
+webextPerms.add.accessKey=A
+webextPerms.cancel.label=Hủy bỏ
+webextPerms.cancel.accessKey=C
+
+# LOCALIZATION NOTE (webextPerms.sideloadMenuItem)
+# %1$S will be replaced with the localized name of the sideloaded add-on.
+# %2$S will be replace with the name of the application (e.g., Firefox, Nightly)
+webextPerms.sideloadMenuItem=%1$S đã thêm vào %2$S
+
+# LOCALIZATION NOTE (webextPerms.sideloadHeader)
+# This string is used as a header in the webextension permissions dialog
+# when the extension is side-loaded.
+# %S is replaced with the localized name of the extension being installed.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.sideloadHeader=%S đã được thêm
+webextPerms.sideloadText2=Một chương trình khác trong máy tính của bạn đã cài đặt một tiện ích mà có thể gây ảnh hưởng đến trình duyệt của bạn. Vui lòng xem lại những quyền hạn mà tiện ích này yêu cầu và chọn kích hoạt hoặc hủy bỏ (để nó bị vô hiệu hóa).
+webextPerms.sideloadTextNoPerms=Một chương trình khác trong máy tính của bạn đã cài đặt một tiện ích mà có thể gây ảnh hưởng đến trình duyệt của bạn. Vui lòng chọn kích hoạt hoặc hủy bỏ (để nó bị vô hiệu hóa).
+
+webextPerms.sideloadEnable.label=Bật
+webextPerms.sideloadEnable.accessKey=E
+webextPerms.sideloadCancel.label=Hủy bỏ
+webextPerms.sideloadCancel.accessKey=C
+
+# LOCALIZATION NOTE (webextPerms.updateMenuItem)
+# %S will be replaced with the localized name of the extension which
+# has been updated.
+webextPerms.updateMenuItem=%S yêu cầu quyền mới
+
+# LOCALIZATION NOTE (webextPerms.updateText2)
+# %S is replaced with the localized name of the updated extension.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.updateText2=%S đã được cập nhật. Bạn phải phê duyệt các quyền mới trước khi phiên bản cập nhật sẽ cài đặt. Chọn “Hủy bỏ” sẽ duy trì phiên bản tiện ích mở rộng hiện tại của bạn. Tiện ích mở rộng này sẽ có quyền:
+
+webextPerms.updateAccept.label=Cập nhật
+webextPerms.updateAccept.accessKey=U
+
+# LOCALIZATION NOTE (webextPerms.optionalPermsHeader)
+# %S is replace with the localized name of the extension requested new
+# permissions.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.optionalPermsHeader=%S yêu cầu thêm các quyền.
+webextPerms.optionalPermsListIntro=Tiện ích này muốn:
+webextPerms.optionalPermsAllow.label=Cho phép
+webextPerms.optionalPermsAllow.accessKey=A
+webextPerms.optionalPermsDeny.label=Từ chối
+webextPerms.optionalPermsDeny.accessKey=D
+
+webextPerms.description.accountsFolders=Tạo, đổi tên hoặc xóa các thư mục tài khoản thư của bạn
+webextPerms.description.accountsIdentities=Tạo, sửa đổi hoặc xóa danh tính tài khoản thư của bạn
+webextPerms.description.accountsRead2=Xem tài khoản thư của bạn, danh tính của họ và thư mục của họ
+webextPerms.description.addressBooks=Đọc và chỉnh sửa các sổ địa chỉ và danh bạ của bạn
+webextPerms.description.bookmarks=Đọc và chỉnh sửa trang đánh dấu
+webextPerms.description.browserSettings=Đọc và chỉnh sửa tùy chọn trình duyệt
+webextPerms.description.browsingData=Xóa lịch sử duyệt web gần đây, cookie, và dữ liệu liên quan
+webextPerms.description.clipboardRead=Nhận dữ liệu từ bộ nhớ tạm
+webextPerms.description.clipboardWrite=Nhập dữ liệu vào bộ nhớ tạm
+webextPerms.description.compose=Đọc và sửa đổi tin nhắn email của bạn khi bạn soạn và gửi chúng
+webextPerms.description.compose.send=Gửi tin nhắn email đã soạn thay mặt bạn
+webextPerms.description.compose.save=Lưu các email đã soạn dưới dạng bản nháp hoặc mẫu
+webextPerms.description.declarativeNetRequest=Chặn nội dung trên bất kỳ trang nào
+webextPerms.description.devtools=Mở rộng công cụ dành cho nhà phát triển để truy cập dữ liệu của bạn trong các thẻ đang mở
+webextPerms.description.dns=Truy cập địa chỉ IP và thông tin tên máy chủ
+webextPerms.description.downloads=Tải về các tập tin và chỉnh sửa lịch sử tải về của trình duyệt
+webextPerms.description.downloads.open=Mở tập tin đã tải về máy tính của bạn
+# LOCALIZATION NOTE (webextPerms.description.experiment)
+# %S will be replaced with the name of the application
+webextPerms.description.experiment=Có quyền truy cập đầy đủ, không hạn chế vào %S và máy tính của bạn
+webextPerms.description.find=Đọc văn bản của tất cả các thẻ đang mở
+webextPerms.description.geolocation=Truy cập vị trí của bạn
+webextPerms.description.history=Truy cập lịch sử duyệt Web
+webextPerms.description.management=Theo dõi việc sử dụng tiện ích mở rộng và quản lý các chủ đề
+webextPerms.description.messagesImport=Nhập thư vào Thunderbird
+webextPerms.description.messagesModify=Đọc và sửa đổi thông báo email của bạn khi chúng được hiển thị cho bạn
+webextPerms.description.messagesMove2=Sao chép hoặc di chuyển các thư trong email của bạn (bao gồm cả việc chuyển chúng vào thùng rác)
+webextPerms.description.messagesDelete=Xóa vĩnh viễn các thư trong email của bạn
+webextPerms.description.messagesRead=Đọc email của bạn và đánh dấu hoặc gắn nhãn chúng
+webextPerms.description.messagesTags=Tạo, sửa đổi và xóa các nhãn thư
+# LOCALIZATION NOTE (webextPerms.description.nativeMessaging)
+# %S will be replaced with the name of the application
+webextPerms.description.nativeMessaging=Trao đổi thông báo với các chương trình khác với %S
+webextPerms.description.notifications=Hiển thị thông báo cho bạn
+webextPerms.description.pkcs11=Cung cấp dịch vụ xác thực mật mã
+webextPerms.description.privacy=Đọc và chỉnh sửa các cài đặt riêng tư
+webextPerms.description.proxy=Kiểm soát tùy chọn proxy của trình duyệt
+webextPerms.description.sessions=Truy cập các thẻ đã đóng gần đây
+webextPerms.description.tabs=Truy cập các thẻ trên trình duyệt
+webextPerms.description.tabHide=Hiện ẩn các thẻ trình duyệt
+webextPerms.description.topSites=Truy cập lịch sử duyệt Web
+webextPerms.description.unlimitedStorage=Lưu trữ số lượng không giới hạn dữ liệu phía máy khách
+webextPerms.description.webNavigation=Truy cập hoạt động của trình duyệt trong khi điều hướng
+
+webextPerms.hostDescription.allUrls=Truy cập dữ liệu của bạn trên mọi trang web
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.wildcard)
+# %S will be replaced by the DNS domain for which a webextension
+# is requesting access (e.g., mozilla.org)
+webextPerms.hostDescription.wildcard=Truy cập dữ liệu của bạn trên các trang có tên miền %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManyWildcards):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# domains for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManyWildcards=Truy cập dữ liệu của bạn trong #1 tên miền khác
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.oneSite)
+# %S will be replaced by the DNS host name for which a webextension
+# is requesting access (e.g., www.mozilla.org)
+webextPerms.hostDescription.oneSite=Truy cập dữ liệu của bạn từ %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManySites)
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# hosts for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManySites=Truy cập dữ liệu của bạn trên #1 trang khác
+
+# LOCALIZATION NOTE (webextSitePerms.headerWithPerms,webextSitePerms.headerUnsignedWithPerms)
+# This string is used as a header in the webextension permissions dialog,
+# %1$S is replaced with the localized name of the extension being installed.
+# %2$S will be replaced by the DNS host name for which a webextension enables permissions
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextSitePerms.headerWithPerms=Thêm %1$S? Tiện ích mở rộng này cấp các khả năng sau cho %2$S:
+webextSitePerms.headerUnsignedWithPerms=Thêm %1$S? Tiện ích mở rộng này chưa được xác minh. Tiện ích mở rộng độc hại có thể lấy cắp thông tin cá nhân của bạn hoặc xâm phạm máy tính của bạn. Chỉ thêm nó nếu bạn tin tưởng. Tiện ích mở rộng này cấp các khả năng sau cho %2$S:
+
+# These should remain in sync with permissions.NAME.label in sitePermissions.properties
+webextSitePerms.description.midi=Truy cập thiết bị MIDI
+webextSitePerms.description.midi-sysex=Truy cập thiết bị MIDI với hỗ trợ SysEx
+
+# LOCALIZATION NOTE (webext.defaultSearch.description)
+# %1$S is replaced with the localized named of the extension that is asking to change the default search engine.
+# %2$S is replaced with the name of the current search engine
+# %3$S is replaced with the name of the new search engine
+webext.defaultSearch.description=%1$S muốn thay đổi công cụ tìm kiếm mặc định của bạn từ %2$S đến %3$S. Bạn đồng ý chứ?
+webext.defaultSearchYes.label=Có
+webext.defaultSearchYes.accessKey=Y
+webext.defaultSearchNo.label=Không
+webext.defaultSearchNo.accessKey=N
diff --git a/l10n-vi/mail/chrome/messenger/addressbook/abAddressBookNameDialog.dtd b/l10n-vi/mail/chrome/messenger/addressbook/abAddressBookNameDialog.dtd
new file mode 100644
index 0000000000..99b4901a7c
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tên sổ địa chỉ:">
+<!ENTITY name.accesskey "a">
diff --git a/l10n-vi/mail/chrome/messenger/addressbook/abContactsPanel.dtd b/l10n-vi/mail/chrome/messenger/addressbook/abContactsPanel.dtd
new file mode 100644
index 0000000000..88bc818a37
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thuộc tính">
+<!ENTITY propertiesMenu.accesskey "i">
+<!ENTITY propertiesCmd.key "i">
+<!ENTITY abPropertiesMenu.label "Thuộc tính sổ địa chỉ">
+<!ENTITY abPropertiesMenu.accesskey "i">
+<!ENTITY contactPropertiesMenu.label "Thuộc tính liên hệ">
+<!ENTITY contactPropertiesMenu.accesskey "i">
+<!ENTITY mailingListPropertiesMenu.label "Thuộc tính danh sách gửi thư">
+<!ENTITY mailingListPropertiesMenu.accesskey "i">
+
+<!ENTITY abContextMenuButton.tooltip "Hiển thị menu ngữ cảnh sổ địa chỉ">
+<!ENTITY addressbookPicker.label "Sổ địa chỉ:">
+<!ENTITY addressbookPicker.accesskey "S">
+<!ENTITY searchContacts.label "Tìm liên lạc:">
+<!ENTITY searchContacts.accesskey "n">
+<!ENTITY SearchNameOrEmail.label "Tên hoặc email">
+
+<!ENTITY addtoToFieldMenu.label "Thêm vào trường Tới">
+<!ENTITY addtoToFieldMenu.accesskey "A">
+<!ENTITY addtoCcFieldMenu.label "Thêm vào trường Cc">
+<!ENTITY addtoCcFieldMenu.accesskey "C">
+<!ENTITY addtoBccFieldMenu.label "Thêm vào trường Bcc">
+<!ENTITY addtoBccFieldMenu.accesskey "B">
+<!ENTITY deleteAddrBookCard.label "Xóa">
+<!ENTITY deleteAddrBookCard.accesskey "D">
+<!ENTITY propertiesContext.label "Thuộc tính">
+<!ENTITY propertiesContext.accesskey "i">
+<!ENTITY abPropertiesContext.label "Thuộc tính">
+<!ENTITY abPropertiesContext.accesskey "i">
+<!ENTITY editContactContext.label "Chỉnh sửa liên hệ">
+<!ENTITY editContactContext.accesskey "E">
+<!ENTITY editMailingListContext.label "Chỉnh sửa danh sách">
+<!ENTITY editMailingListContext.accesskey "E">
+
+<!ENTITY newContactAbContext.label "Liên hệ mới">
+<!ENTITY newContactAbContext.accesskey "C">
+<!ENTITY newListAbContext.label "Danh sách mới">
+<!ENTITY newListAbContext.accesskey "L">
+
+<!ENTITY toButton.label "Thêm vào Tới:">
+<!ENTITY toButton.accesskey "T">
+<!ENTITY ccButton.label "Thêm vào Cc:">
+<!ENTITY ccButton.accesskey "C">
+<!ENTITY bccButton.label "Thêm vào Bcc:">
+<!ENTITY bccButton.accesskey "B">
diff --git a/l10n-vi/mail/chrome/messenger/addressbook/abMailListDialog.dtd b/l10n-vi/mail/chrome/messenger/addressbook/abMailListDialog.dtd
new file mode 100644
index 0000000000..18c5333282
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/addressbook/abMailListDialog.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/. -->
+
+<!-- Title -->
+<!ENTITY mailListWindowAdd.title "Danh sách gửi thư mới">
+
+<!-- Labels and Access Keys -->
+<!ENTITY addToAddressBook.label "Thêm vào: ">
+<!ENTITY addToAddressBook.accesskey "v">
+<!ENTITY ListName.label "Tên danh sách: ">
+<!ENTITY ListName.accesskey "S">
+<!ENTITY ListNickName.label "Biệt hiệu danh sách: ">
+<!ENTITY ListNickName.accesskey "n">
+<!ENTITY ListDescription.label "Mô tả: ">
+<!ENTITY ListDescription.accesskey "M">
+<!-- See bug 58485, when we implement drag and drop, add 'or drag addresses' back in -->
+<!ENTITY AddressTitle.label "Nhập địa chỉ email để thêm chúng vào danh sách thư:">
+<!ENTITY AddressTitle.accesskey "m">
+<!ENTITY UpButton.label "Di chuyển lên">
+<!ENTITY DownButton.label "Di chuyển xuống">
diff --git a/l10n-vi/mail/chrome/messenger/addressbook/abMainWindow.dtd b/l10n-vi/mail/chrome/messenger/addressbook/abMainWindow.dtd
new file mode 100644
index 0000000000..d655000ccc
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thư mục khởi động mặc định">
+<!ENTITY showAsDefault.accesskey "S">
+
+<!-- Search Bar -->
+<!ENTITY SearchNameOrEmail.label "Tên hoặc Email">
+
+<!-- Results Pane -->
+<!ENTITY Addrbook.label "Sổ địa chỉ">
+<!ENTITY GeneratedName.label "Tên">
+<!ENTITY PrimaryEmail.label "Email">
+
+<!-- Card Summary Pane -->
+
diff --git a/l10n-vi/mail/chrome/messenger/addressbook/abResultsPane.dtd b/l10n-vi/mail/chrome/messenger/addressbook/abResultsPane.dtd
new file mode 100644
index 0000000000..3917e213a8
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Sổ địa chỉ">
+<!ENTITY Addrbook.accesskey "B">
+<!ENTITY GeneratedName.label "Tên">
+<!ENTITY GeneratedName.accesskey "N">
+<!ENTITY PrimaryEmail.label "Email">
+<!ENTITY PrimaryEmail.accesskey "E">
+<!ENTITY Company.label "Tổ chức">
+<!ENTITY Company.accesskey "z">
+<!ENTITY _PhoneticName.label "Tên ngữ âm">
+<!ENTITY _PhoneticName.accesskey "o">
+<!ENTITY NickName.label "Biệt danh">
+<!ENTITY NickName.accesskey "i">
+<!ENTITY SecondEmail.label "Email phụ">
+<!ENTITY SecondEmail.accesskey "l">
+<!ENTITY Department.label "Bộ phận">
+<!ENTITY Department.accesskey "r">
+<!ENTITY JobTitle.label "Chức vụ">
+<!ENTITY JobTitle.accesskey "T">
+<!ENTITY CellularNumber.label "Di động">
+<!ENTITY CellularNumber.accesskey "M">
+<!ENTITY PagerNumber.label "Máy nhắn tin">
+<!ENTITY PagerNumber.accesskey "P">
+<!ENTITY FaxNumber.label "Fax">
+<!ENTITY FaxNumber.accesskey "F">
+<!ENTITY HomePhone.label "Điện thoại nhà">
+<!ENTITY HomePhone.accesskey "H">
+<!ENTITY WorkPhone.label "Điện thoại công ty">
+<!ENTITY WorkPhone.accesskey "W">
+<!ENTITY ChatName.label "Tên trò chuyện:">
+<!ENTITY ChatName.accesskey "C">
+<!ENTITY sortAscending.label "Tăng dần">
+<!ENTITY sortAscending.accesskey "A">
+<!ENTITY sortDescending.label "Giảm dần">
+<!ENTITY sortDescending.accesskey "D">
diff --git a/l10n-vi/mail/chrome/messenger/addressbook/addressBook.properties b/l10n-vi/mail/chrome/messenger/addressbook/addressBook.properties
new file mode 100644
index 0000000000..22707df5cf
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Chỉnh sửa %S
+emptyListName=Bạn phải nhập tên danh sách.
+badListNameCharacters=Tên danh sách không thể chứa bất kỳ ký tự nào sau đây: < > ; , "
+badListNameSpaces=Tên danh sách không thể chứa nhiều khoảng trắng liền kề.
+lastFirstFormat=%S %S
+firstLastFormat=%S %S
+
+allAddressBooks=Tất cả các sổ địa chỉ
+
+newContactTitle=Danh bạ Mới
+# %S will be the contact's display name
+newContactTitleWithDisplayName=Danh bạ Mới cho %S
+editContactTitle=Chỉnh sửa liên hệ
+# %S will be the contact's display name
+editContactTitleWithDisplayName=Chỉnh sửa liên hệ cho %S
+# don't translate vCard
+editVCardTitle=Chỉnh sửa vCard
+# %S will be the card's display name, don't translate vCard
+editVCardTitleWithDisplayName=Chỉnh sửa vCard cho %S
+
+## LOCALIZATION NOTE (cardRequiredDataMissingMessage): do not localize \n
+cardRequiredDataMissingMessage=Bạn phải nhập ít nhất một trong các mục sau:\nĐịa chỉ email, tên, họ, tên hiển thị, tổ chức.
+cardRequiredDataMissingTitle=Thiếu Thông tin Bắt buộc
+incorrectEmailAddressFormatMessage=Địa chỉ email chính phải có dạng tên@máychủ.
+incorrectEmailAddressFormatTitle=Định dạng Địa chỉ Email Không đúng
+
+viewListTitle=Danh sách thư :%S
+mailListNameExistsTitle=Danh sách thư đã tồn tại
+mailListNameExistsMessage=Một danh sách gửi thư với tên đó đã tồn tại. Vui lòng chọn một tên khác.
+
+propertyPrimaryEmail=Email
+propertyListName=Tên danh sách
+propertySecondaryEmail=Email phụ
+propertyNickname=Tên hiệu
+propertyDisplayName=Tên hiển thị
+propertyWork=Công ty
+propertyHome=Nhà
+propertyFax=Fax
+propertyCellular=Di động
+propertyPager=Máy nhắn tin
+propertyBirthday=Ngày sinh
+propertyCustom1=Tùy chỉnh 1
+propertyCustom2=Tùy chỉnh 2
+propertyCustom3=Tùy chỉnh 3
+propertyCustom4=Tùy chỉnh 4
+
+propertyGtalk=Google Talk
+propertyAIM=AIM
+propertyYahoo=Yahoo!
+propertySkype=Skype
+propertyQQ=QQ
+propertyMSN=MSN
+propertyICQ=ICQ
+propertyXMPP=ID Jabber
+propertyIRC=Tên 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=Tới
+prefixCc=Cc
+prefixBcc=Bcc
+addressBook=Sổ địa chỉ
+
+# Contact photo management
+browsePhoto=Ảnh của Đối tác
+stateImageSave=Đang lưu hình ảnh…
+errorInvalidUri=Lỗi: Hình ảnh nguồn không hợp lệ.
+errorNotAvailable=Lỗi: Không thể truy cập tập tin.
+errorInvalidImage=Lỗi: Chỉ hỗ trợ các loại hình ảnh JPG, PNG và GIF.
+errorSaveOperation=Lỗi: Không thể lưu hình ảnh.
+
+# mailnews.js
+ldap_2.servers.pab.description=Sổ địa chỉ cá nhân
+ldap_2.servers.history.description=Sổ địa chỉ đã thu thập
+## LOCALIZATION NOTE (ldap_2.servers.osx.description is only used on Mac OS X)
+ldap_2.servers.osx.description=Sổ địa chỉ Mac OS X
+
+## LOCALIZATION NOTE (ldap_2.servers.outlook.description is only used on Windows)
+ldap_2.servers.outlook.description=Sổ địa chỉ Outlook
+
+# status bar stuff
+## LOCALIZATION NOTE (totalContactStatus):
+## %1$S is address book name, %2$S is contact count
+totalContactStatus=Tổng danh bạ trong %1$S: %2$S
+noMatchFound=Không tìm thấy
+## 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 kết quả phù hợp
+
+## 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 tên liên hệ đã được chép;%1$S tên liên hệ đã được chép
+
+## 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 tên liên hệ đã được di chuyển;%1$S tên liên hệ đã được di chuyển
+
+# LDAP directory stuff
+invalidName=Vui lòng nhập một Tên hợp lệ.
+invalidHostname=Vui lòng nhập một Tên Máy Chủ hợp lệ.
+invalidPortNumber=Vui lòng nhập một Số Cổng hợp lệ.
+invalidResults=Vui lòng nhập một số hợp lệ vào trường kết quả.
+abReplicationOfflineWarning=Bạn phải trực tuyến để thực hiện sao chép LDAP.
+abReplicationSaveSettings=Thiết lập phải được lưu trước khi tải một thư mục.
+
+# For importing / exporting
+## LOCALIZATION NOTE (ExportAddressBookNameTitle): %S is the name of exported addressbook
+ExportAddressBookNameTitle=Xuất sổ địa chỉ - %S
+LDIFFiles=LDIF
+CSVFiles=Phân cách bằng Dấu phẩy
+CSVFilesSysCharset=Phân tách bằng dấu phẩy (Bộ ký tự hệ thống)
+CSVFilesUTF8=Phân tách bằng dấu phẩy (UTF-8)
+TABFiles=Phân cách bằng Tab
+TABFilesSysCharset=Tách bằng Tab (Bộ ký tự hệ thống)
+TABFilesUTF8=Tách bằng Tab (UTF-8)
+VCFFiles=vCard
+SupportedABFiles=Tập tin sổ địa chỉ được hỗ trợ
+failedToExportTitle=Việc xuất Thất bại
+failedToExportMessageNoDeviceSpace=Thất bại khi xuất sổ địa chỉ, không đủ dung lượng trên thiết bị.
+failedToExportMessageFileAccessDenied=Thất bại khi xuất sổ địa chỉ, truy cập tập tin bị từ chối.
+
+# For getting authDN for replication using dlg box
+AuthDlgTitle=Sao chép sổ địa chỉ LDAP
+AuthDlgDesc=Để truy cập máy chủ thư mục, hãy nhập tên và mật khẩu của bạn.
+
+# LOCALIZATION NOTE(joinMeInThisChat)
+# use + for spaces
+joinMeInThisChat=Tham+gia+Chat+với+tôi.
+
+# For printing
+headingHome=Nhà
+headingWork=Công ty
+headingOther=Khác
+headingChat=Trò chuyện
+headingPhone=Điện thoại
+headingDescription=Mô tả
+headingAddresses=Địa chỉ
+
+## For address books
+addressBookTitleNew=Sổ địa chỉ mới
+# LOCALIZATION NOTE (addressBookTitleEdit):
+# %S is the current name of the address book.
+# Example: My Custom AB Properties
+addressBookTitleEdit=Thuộc tính %S
+duplicateNameTitle=Tên sổ địa chỉ trùng lặp
+# 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=Một sổ địa chỉ có tên này đã tồn tại:\n• %S
+
+# For corrupt .mab files
+corruptMabFileTitle=Tập tin sổ địa chỉ bị hỏng
+corruptMabFileAlert=Không thể đọc một trong các tập tin sổ địa chỉ (tập tin %1$S). Một tập tin %2$S sẽ được tạo và một bản sao của tập tin cũ, gọi là %3$S, sẽ được tạo trong cùng thư mục.
+
+# For locked .mab files
+lockedMabFileTitle=Không thể mở tập tin sổ địa chỉ
+lockedMabFileAlert=Không thể mở tập tin sổ địa chỉ %S. Nó có tính chỉ-đọc, hoặc đã bị khóa bởi chương trình khác. Vui lòng thử lại sau.
diff --git a/l10n-vi/mail/chrome/messenger/addressbook/ldapAutoCompErrs.properties b/l10n-vi/mail/chrome/messenger/addressbook/ldapAutoCompErrs.properties
new file mode 100644
index 0000000000..0e6db5943b
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/addressbook/ldapAutoCompErrs.properties
@@ -0,0 +1,104 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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.
+
+## @name ERR_STATE_UNBOUND
+## @loc none
+0=Sự cố khi khởi tạo LDAP
+
+## @name ERR_STATE_INITIALIZING
+## @loc none
+1=Kết nối máy chủ LDAP bị thất bại
+
+## @name ERR_STATE_BINDING
+## @loc none
+2=Kết nối máy chủ LDAP bị thất bại
+
+## @name ERR_STATE_BOUND
+## @loc none
+3=Vấn đề khi liên lạc máy chủ LDAP
+
+## @name ERR_STATE_SEARCHING
+## @loc none
+4=Vấn đề khi tìm kiếm máy chủ 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=Mã lỗi %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=Không tìm thấy máy chủ
+
+## @name GENERIC_ERROR
+## @loc none
+9999=Lỗi chưa biết
+
+
+# Hints to for the user, associated with specific error codes (ie error code
+# + 10000)
+
+
+## @name TIMELIMIT_EXCEEDED_HINT
+## @loc none
+10003=Vui lòng thử lại sau, hoặc liên hệ Quản trị viên Hệ thống của bạn.
+
+## @name STRONGAUTH_REQUIRED_HINT
+## @loc none
+10008=Xác minh mức độ mạnh hiện chưa được hỗ trợ.
+
+## @name INVALID_SYNTAX_HINT
+## @loc none
+10021=Xác minh rằng bộ lọc tìm kiếm là chính xác, sau đó thử lại hoặc liên hệ với quản trị viên hệ thống của bạn. Để xác minh rằng bộ lọc tìm kiếm là chính xác, từ menu Chỉnh sửa, chọn Tùy chọn, sau đó chọn Thư & Nhóm tin, sau đó chọn Địa chỉ. Nhấp vào Chỉnh sửa thư mục và chọn máy chủ LDAP đang được sử dụng. Bấm Chỉnh sửa, rồi bấm Nâng cao để hiển thị Bộ lọc tìm kiếm.
+
+## @name NO_SUCH_OBJECT_HINT
+## @loc none
+10032=Xác minh xem Base DN đã đúng chưa, rồi hãy thử lại, hoặc liên hệ với Quản trị viên Hệ thống của bạn. Để xác minh Base DN, từ trình đơn Chỉnh sửa, chọn Tùy chỉnh, rồi chọn Thư & Nhóm tin, rồi chọn Xác định Địa chỉ. Nhấn Chỉnh sửa Thư mục, và chọn máy chủ LDAP đang dùng. Nhấn Chỉnh sửa để hiển thị Base DN.
+
+## @name BUSY_HINT
+## @loc none
+10051=Vui lòng thử lại sau.
+
+## @name SERVER_DOWN_HINT
+## @loc none
+10081=Xác minh xem Tên Máy Chủ và Số Cổng đã đúng chưa, rồi hãy thử lại, hoặc liên hệ với Quản trị viên Hệ thống của bạn. Để xác minh Tên Máy Chủ và Số Cổng, từ trình đơn Chỉnh sửa, chọn Tùy chỉnh, rồi chọn Thư & Nhóm tin, rồi chọn Xác định Địa chỉ. Nhấn Chỉnh sửa Thư mục, và chọn máy chủ LDAP đang dùng. Nhấn Chỉnh sửa để hiển thị Tên Máy Chủ. Nhấn Nâng cao để hiển thị Số Cổng.
+
+## @name TIMEOUT_HINT
+## @loc none
+10085=Vui lòng thử lại sau.
+
+## @name FILTER_ERROR_HINT
+## @loc none
+10087=Xác minh rằng bộ lọc tìm kiếm là chính xác, sau đó thử lại hoặc liên hệ với quản trị viên hệ thống của bạn. Để xác minh rằng bộ lọc tìm kiếm là chính xác, từ menu Chỉnh sửa, chọn Tùy chọn, sau đó chọn Thư & Nhóm tin, sau đó chọn Địa chỉ. Nhấp vào Chỉnh sửa thư mục và chọn máy chủ LDAP đang được sử dụng. Bấm Chỉnh sửa, rồi bấm Nâng cao để hiển thị Bộ lọc tìm kiếm.
+
+## @name NO_MEMORY_HINT
+## @loc none
+10090=Vui lòng đóng cửa sổ và/hoặc chương trình khác rồi thử lại.
+
+## @name CONNECT_ERROR_HINT
+## @loc none
+10091=Xác minh xem Tên Máy Chủ và Số Cổng đã đúng chưa, rồi hãy thử lại, hoặc liên hệ với Quản trị viên Hệ thống của bạn. Để xác minh Tên Máy Chủ và Số Cổng, từ trình đơn Chỉnh sửa, chọn Tùy chỉnh, rồi chọn Thư & Nhóm tin, rồi chọn Xác định Địa chỉ. Nhấn Chỉnh sửa Thư mục, và chọn máy chủ LDAP đang dùng. Nhấn Chỉnh sửa để hiển thị Tên Máy Chủ. Nhấn Nâng cao để hiển thị Số Cổng.
+
+## @name HOST_NOT_FOUND_HINT
+## @loc none
+15000=Xác minh xem Tên Máy Chủ đã đúng chưa, rồi hãy thử lại, hoặc liên hệ với Quản trị viên Hệ thống của bạn. Để xác minh Tên Máy Chủ, từ trình đơn Chỉnh sửa, chọn Tùy chỉnh, rồi chọn Thư & Nhóm tin, rồi chọn Xác định Địa chỉ. Nhấn Chỉnh sửa Thư mục, và chọn máy chủ LDAP đang dùng. Nhấn Chỉnh sửa để hiển thị Tên Máy Chủ.
+
+## @name GENERIC_HINT
+## @loc none
+19999=Vui lòng liên hệ Quản trị viên Hệ thống của bạn.
diff --git a/l10n-vi/mail/chrome/messenger/addressbook/pref-directory-add.dtd b/l10n-vi/mail/chrome/messenger/addressbook/pref-directory-add.dtd
new file mode 100644
index 0000000000..095b4a58aa
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/addressbook/pref-directory-add.dtd
@@ -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/. -->
+
+<!ENTITY directoryName.label "Tên: ">
+<!ENTITY directoryName.accesskey "T">
+<!ENTITY directoryHostname.label "Tên máy chủ: ">
+<!ENTITY directoryHostname.accesskey "c">
+<!ENTITY directoryBaseDN.label "Tên phân biệt gốc: ">
+<!ENTITY directoryBaseDN.accesskey "g">
+<!ENTITY findButton.label "Tìm">
+<!ENTITY findButton.accesskey "m">
+<!ENTITY directorySecure.label "Dùng kết nối an toàn (SSL)">
+<!ENTITY directorySecure.accesskey "D">
+<!ENTITY directoryLogin.label "Tên phân biệt liên kết: ">
+<!ENTITY directoryLogin.accesskey "l">
+<!ENTITY General.tab "Tổng quát">
+<!ENTITY Offline.tab "Ngoại tuyến">
+<!ENTITY Advanced.tab "Nâng cao">
+<!ENTITY portNumber.label "Số cổng: ">
+<!ENTITY portNumber.accesskey "S">
+<!ENTITY searchFilter.label "Bộ lọc tìm kiếm: ">
+<!ENTITY searchFilter.accesskey "l">
+<!ENTITY scope.label "Phạm vi: ">
+<!ENTITY scope.accesskey "v">
+<!ENTITY scopeOneLevel.label "Một cấp độ">
+<!ENTITY scopeOneLevel.accesskey "p">
+<!ENTITY scopeSubtree.label "Cây con">
+<!ENTITY scopeSubtree.accesskey "o">
+<!ENTITY return.label "Đừng trả về nhiều hơn">
+<!ENTITY return.accesskey "r">
+<!ENTITY results.label "kết quả">
+<!ENTITY offlineText.label "Bạn có thể tải xuống một bản sao của thư mục này để sử dụng khi đang ở chế độ ngoại tuyến.">
+<!ENTITY saslMechanism.label "Phương thức đăng nhập: ">
+<!ENTITY saslMechanism.accesskey "P">
+<!ENTITY saslOff.label "Đơn giản">
+<!ENTITY saslOff.accesskey "g">
+<!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 "36em">
+
diff --git a/l10n-vi/mail/chrome/messenger/addressbook/pref-directory.dtd b/l10n-vi/mail/chrome/messenger/addressbook/pref-directory.dtd
new file mode 100644
index 0000000000..e12fd13f98
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Máy chủ thư mục LDAP">
+<!-- LOCALIZATION NOTE (directories.label) : do not translate "LDAP" in below line -->
+<!ENTITY directories.label "Máy chủ Thư mục LDAP:">
+<!-- LOCALIZATION NOTE (directoriesText.label) : do not translate "LDAP" in below line -->
+<!ENTITY directoriesText.label "Chọn một Máy chủ Thư mục LDAP:">
+<!ENTITY directoriesText.accesskey "M">
+<!ENTITY addDirectory.label "Thêm">
+<!ENTITY addDirectory.accesskey "T">
+<!ENTITY editDirectory.label "Chỉnh sửa">
+<!ENTITY editDirectory.accesskey "e">
+<!ENTITY deleteDirectory.label "Xóa">
+<!ENTITY deleteDirectory.accesskey "X">
diff --git a/l10n-vi/mail/chrome/messenger/addressbook/replicationProgress.properties b/l10n-vi/mail/chrome/messenger/addressbook/replicationProgress.properties
new file mode 100644
index 0000000000..2b9ab49dd4
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Việc sao chép đã bắt đầu…
+changesStarted=Bắt đầu tìm các thay đổi để sao chép…
+replicationSucceeded=Việc sao chép đã thành công
+replicationFailed=Việc sao chép đã thất bại
+replicationCancelled=Việc sao chép bị hủy bỏ
+# LOCALIZATION NOTE
+# do not localize %S. %S is the current entry number (an integer)
+currentCount=Đang sao chép thư mục: %S
+
+downloadButton=Tải xuống ngay
+downloadButton.accesskey=D
+cancelDownloadButton=Hủy tải xuống
+cancelDownloadButton.accesskey=C
+
+directoryTitleNew=Thư mục LDAP mới
+## LOCALIZATION NOTE (directoryTitleEdit): %S will be replaced by the LDAP directory's display name
+directoryTitleEdit=Thuộc tính %S
diff --git a/l10n-vi/mail/chrome/messenger/am-addressing.dtd b/l10n-vi/mail/chrome/messenger/am-addressing.dtd
new file mode 100644
index 0000000000..93d4412cfc
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Soạn thảo &amp; xác định địa chỉ">
+<!ENTITY addressingGroupTitle.label "Địa chỉ">
+<!ENTITY addressingText.label "Khi tìm địa chỉ:">
+<!-- LOCALIZATION NOTE (override.label) : do not translate "LDAP" in below line -->
+<!ENTITY useGlobal.label "Dùng tùy chỉnh máy chủ LDAP bao trùm của tôi cho tài khoản này">
+<!ENTITY useGlobal.accesskey "D">
+<!ENTITY editDirectories.label "Chỉnh sửa thư mục…">
+<!ENTITY editDirectories.accesskey "E">
+<!-- LOCALIZATION NOTE (directories.label) : do not translate "LDAP" in below line -->
+<!ENTITY directories.label "Dùng một máy chủ LDAP khác:">
+<!ENTITY directories.accesskey "m">
+<!ENTITY directoriesNone.label "Không có">
+
+<!-- am-addressing.xul -->
+
+<!-- am-addressing.xhtml -->
+
+<!ENTITY compositionGroupTitle.label "Soạn thảo">
+<!-- LOCALIZATION NOTE (useHtml.label) : do not translate "html" in below line -->
+<!ENTITY useHtml.label "Soạn thư định dạng HTML">
+<!ENTITY useHtml.accesskey "S">
+<!ENTITY autoQuote.label "Tự động trích dẫn thư gốc khi trả lời">
+<!ENTITY autoQuote.accesskey "n">
+<!-- LOCALIZATION NOTE (quoting.label): This will concatenate with the 4 strings that follow. -->
+<!ENTITY quoting.label "Khi trích dẫn,">
+<!ENTITY quoting.accesskey "q">
+<!ENTITY aboveQuote.label "bắt đầu viết trả lời trên đoạn trích dẫn">
+<!ENTITY belowQuote.label "bắt đầu viết trả lời dưới đoạn trích dẫn">
+<!ENTITY selectAndQuote.label "chọn trích dẫn">
+<!ENTITY place.label "và đặt chữ kí của tôi">
+<!ENTITY place.accesskey "k">
+<!ENTITY belowText.label "dưới đoạn trích dẫn (khuyên dùng)">
+<!ENTITY aboveText.label "dưới trả lời của tôi (trên đoạn trích dẫn)">
+<!ENTITY includeSigOnReply.label "Bao gồm chữ kí trong thư trả lời">
+<!ENTITY includeSigOnReply.accesskey "B">
+<!ENTITY includeSigOnForward.label "Bao gồm chữ kí trong thư chuyển tiếp">
+<!ENTITY includeSigOnForward.accesskey "y">
+
+<!ENTITY globalComposingPrefs.label "Tùy chọn soạn thảo tổng quát…">
+<!ENTITY globalComposingPrefs.accesskey "G">
+
+<!ENTITY globalAddressingPrefs.label "Tùy chọn xác định địa chỉ tổng quát…">
+<!ENTITY globalAddressingPrefs.accesskey "P">
diff --git a/l10n-vi/mail/chrome/messenger/am-advanced.dtd b/l10n-vi/mail/chrome/messenger/am-advanced.dtd
new file mode 100644
index 0000000000..603d008b28
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/am-advanced.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/. -->
+
+<!-- extracted from am-advanced.xhtml -->
+
+<!-- LOCALIZATION NOTE (smtpServer.label): do not translate "SMTP" in below line -->
+<!ENTITY smtpServer.label "Cài đặt máy chủ gửi thư (SMTP)">
+
+<!-- LOCALIZATION NOTE (smtpDescription.label): do not translate "SMTP" in below line -->
+<!ENTITY smtpDescription.label "Khi quản lý danh tính của bạn, bạn có thể sử dụng máy chủ từ danh sách này bằng cách chọn nó làm máy chủ gửi thư (SMTP) hoặc bạn có thể sử dụng máy chủ mặc định từ danh sách này bằng cách chọn &quot;Sử dụng máy chủ mặc định&quot;.">
+
+<!ENTITY smtpListAdd.label "Thêm…">
+<!ENTITY smtpListAdd.accesskey "d">
+<!ENTITY smtpListEdit.label "Chỉnh sửa…">
+<!ENTITY smtpListEdit.accesskey "E">
+<!ENTITY smtpListDelete.label "Xóa">
+<!ENTITY smtpListDelete.accesskey "m">
+<!ENTITY smtpListSetDefault.label "Đặt thành mặc định">
+<!ENTITY smtpListSetDefault.accesskey "t">
+
+<!ENTITY serverDetails.label "Chi tiết về máy chủ được chọn:">
+<!ENTITY serverDescription.label "Mô tả: ">
+<!ENTITY serverName.label "Tên máy chủ: ">
+<!ENTITY serverPort.label "Cổng: ">
+<!ENTITY userName.label "Tên đăng nhập: ">
+<!ENTITY connectionSecurity.label "Bảo mật kết nối: ">
+<!ENTITY authMethod.label "Phương thức xác thực: ">
diff --git a/l10n-vi/mail/chrome/messenger/am-archiveoptions.dtd b/l10n-vi/mail/chrome/messenger/am-archiveoptions.dtd
new file mode 100644
index 0000000000..71517586f0
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tùy chọn lưu trữ">
+<!ENTITY archiveGranularityPrefix.label "Khi lưu trữ thư, xếp nó vào trong:">
+<!ENTITY archiveFlat.label "Chỉ một thư mục">
+<!ENTITY archiveFlat.accesskey "C">
+<!ENTITY archiveYearly.label "Các thư mục lưu trữ theo năm">
+<!ENTITY archiveYearly.accesskey "u">
+<!ENTITY archiveMonthly.label "Các thư mục lưu trữ theo tháng">
+<!ENTITY archiveMonthly.accesskey "e">
+<!ENTITY keepFolderStructure.label "Giữ cấu trúc thư mục lưu trữ hiệu tại">
+<!ENTITY keepFolderStructure.accesskey "G">
+<!ENTITY archiveExample.label "Ví dụ">
+<!-- LOCALIZATION NOTE (archiveFolderName.label): this should match the default
+ name for the "Archives" folder -->
+<!ENTITY archiveFolderName.label "Lưu trữ">
+<!-- LOCALIZATION NOTE (inboxFolderName.label): this should match the default
+ name for the "Inbox" folder -->
+<!ENTITY inboxFolderName.label "Hộp thư">
diff --git a/l10n-vi/mail/chrome/messenger/am-copies.dtd b/l10n-vi/mail/chrome/messenger/am-copies.dtd
new file mode 100644
index 0000000000..f4e71c5126
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Bản sao &amp; thư mục">
+<!ENTITY sendingPrefix.label "Khi gửi thư, tự động: ">
+<!ENTITY fccMailFolder.label "Đặt một bản sao trong:">
+<!ENTITY fccMailFolder.accesskey "s">
+<!ENTITY fccReplyFollowsParent.label "Đặt các thư trả lời trong thư mục chứa thư đang được bạn trả lời">
+<!ENTITY fccReplyFollowsParent.accesskey "r">
+<!-- LOCALIZATION NOTE (ccAddress.label): do not translate "Cc" in below line -->
+<!ENTITY ccAddress.label "Cc những địa chỉ email này:">
+<!ENTITY ccAddress.accesskey "C">
+<!ENTITY ccAddressList.placeholder "Ngăn cách các địa chỉ bằng dấu phẩy">
+<!-- LOCALIZATION NOTE (bccAddress.label): do not translate "Bcc" in below line -->
+<!ENTITY bccAddress.label "Bcc những địa chỉ email này:">
+<!ENTITY bccAddress.accesskey "B">
+<!ENTITY bccAddressList.placeholder "Ngăn cách các địa chỉ bằng dấu phẩy">
+<!ENTITY saveMessageDlg.label "Hiện hộp thoại xác nhận khi thư được lưu">
+<!ENTITY saveMessageDlg.accesskey "o">
+<!-- LOCALIZATION NOTE (sentFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY sentFolderOn.label "Thư mục &quot;Thư đã gửi&quot; trên:">
+<!ENTITY sentFolderOn.accesskey "g">
+<!ENTITY sentInOtherFolder.label "Khác:">
+<!ENTITY sentInOtherFolder.accesskey "K">
+<!-- LOCALIZATION NOTE (archivesFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY archivesTitle.label "Thư Lưu Trữ">
+<!ENTITY keepArchives.label "Giữ thư lưu trữ trong:">
+<!ENTITY keepArchives.accesskey "G">
+<!ENTITY archiveHierarchyButton.label "Tùy chọn lưu trữ…">
+<!ENTITY archiveHierarchyButton.accesskey "y">
+<!ENTITY archivesFolderOn.label "Thư mục &quot;Lưu trữ&quot; trên:">
+<!ENTITY archivesFolderOn.accesskey "L">
+<!ENTITY archiveInOtherFolder.label "Khác:">
+<!ENTITY archiveInOtherFolder.accesskey "h">
+<!ENTITY specialFolders.label "Nháp và Mẫu">
+<!ENTITY keepDrafts2.label "Giữ tin nhắn nháp trong:">
+<!-- LOCALIZATION NOTE (draftsFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY draftsFolderOn.label "Thư mục &quot;Thư nháp&quot; trên:">
+<!ENTITY draftsFolderOn.accesskey "n">
+<!ENTITY draftInOtherFolder.label "Khác:">
+<!ENTITY draftInOtherFolder.accesskey "h">
+<!ENTITY keepTemplates.label "Giữ thư mẫu trong:">
+<!-- LOCALIZATION NOTE (templatesFolderOn.label): OK to translate this, bug #57440 -->
+<!ENTITY templatesFolderOn.label "Thư mục &quot;Thư mẫu&quot; trên:">
+<!ENTITY templatesFolderOn.accesskey "m">
+<!ENTITY templateInOtherFolder.label "Khác:">
+<!ENTITY templateInOtherFolder.accesskey "c">
diff --git a/l10n-vi/mail/chrome/messenger/am-e2e.properties b/l10n-vi/mail/chrome/messenger/am-e2e.properties
new file mode 100644
index 0000000000..de48a58fbd
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Mã hóa đầu cuối
diff --git a/l10n-vi/mail/chrome/messenger/am-identities-list.dtd b/l10n-vi/mail/chrome/messenger/am-identities-list.dtd
new file mode 100644
index 0000000000..89a36fc136
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Quản lý danh tính cho tài khoản này. Danh tính đầu tiên được sử dụng theo mặc định.">
+<!ENTITY identitiesListAdd.label "Thêm…">
+<!ENTITY identitiesListAdd.accesskey "T">
+<!ENTITY identitiesListEdit.label "Chỉnh sửa…">
+<!ENTITY identitiesListEdit.accesskey "E">
+<!ENTITY identitiesListDefault.label "Đặt thành mặc định">
+<!ENTITY identitiesListDefault.accesskey "S">
+<!ENTITY identitiesListDelete.label "Xóa">
+<!ENTITY identitiesListDelete.accesskey "X">
+<!ENTITY identitiesListClose.label "Đóng">
+<!ENTITY identitiesListClose.accesskey "C">
diff --git a/l10n-vi/mail/chrome/messenger/am-identity-edit.dtd b/l10n-vi/mail/chrome/messenger/am-identity-edit.dtd
new file mode 100644
index 0000000000..c0e1d52ef1
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Cấu hình các thiết lập cho định danh này:">
+
+<!ENTITY settingsTab.label "Cài đặt">
+<!ENTITY copiesFoldersTab.label "Bản sao &amp; thư mục">
+<!ENTITY addressingTab.label "Soạn thảo &amp; xác định địa chỉ">
+
+<!ENTITY publicData.label "Dữ liệu công khai">
+<!ENTITY privateData.label "Dữ liệu riêng tư">
+<!ENTITY identityAlias.label "Nhãn nhận dạng:">
+<!ENTITY identityAlias.accesskey "b">
diff --git a/l10n-vi/mail/chrome/messenger/am-im.dtd b/l10n-vi/mail/chrome/messenger/am-im.dtd
new file mode 100644
index 0000000000..cbdbba7e16
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thuộc tính tài khoản">
+<!ENTITY accountWindow.width "300">
+<!ENTITY account.general "Tổng quát">
+<!ENTITY account.advanced "Tùy chọn nâng cao">
+<!ENTITY account.name "Tên đăng nhập:">
+<!ENTITY account.password "Mật khẩu:">
+<!ENTITY account.alias "Bí danh:">
+<!ENTITY account.newMailNotification "Thông báo trên thư mới">
+<!ENTITY account.autojoin "Tự động tham gia các kênh:">
+<!ENTITY account.proxySettings.caption "Cài đặt proxy:">
+<!ENTITY account.proxySettings.change.label "Thay đổi…">
+<!ENTITY account.proxySettings.change.accessKey "C">
diff --git a/l10n-vi/mail/chrome/messenger/am-junk.dtd b/l10n-vi/mail/chrome/messenger/am-junk.dtd
new file mode 100644
index 0000000000..86e645a775
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Cài đặt thư rác">
+<!ENTITY trainingDescription.label "Nếu được bật, trước tiên bạn phải đào tạo &brandShortName; để xác định thư rác bằng cách sử dụng nút thanh công cụ Thư rác để đánh dấu thư là rác hay không. Bạn cần xác định cả thư rác và không rác. Sau đó &brandShortName; sẽ có thể đánh dấu thư rác tự động.">
+<!ENTITY level.label "Kích hoạt nút điều khiển thư rác tích hợp cho tài khoản này">
+<!ENTITY level.accesskey "E">
+
+<!ENTITY move.label "Chuyển thư rác mới vào:">
+<!ENTITY move.accesskey "M">
+<!ENTITY junkFolderOn.label "Thư mục &quot;thư rác&quot; trên:">
+<!ENTITY junkFolderOn.accesskey "J">
+<!ENTITY otherFolder.label "Khác:">
+<!ENTITY otherFolder.accesskey "O">
+<!ENTITY purge1.label "Tự động xóa thư rác sau">
+<!ENTITY purge1.accesskey "u">
+<!ENTITY purge2.label "ngày">
+
+<!ENTITY whitelistHeader.label "Không tự động đánh dấu thư là rác nếu người gửi ở trong: ">
+<!ENTITY whitelistHeader.accesskey "D">
+
+<!ENTITY ispHeadersWarning.label "Nếu được bật, &brandShortName; sẽ tự động coi các thư được đánh dấu bởi bộ phân loại bên ngoài này là rác.">
+<!ENTITY ispHeaders.label "Tin tưởng bộ lọc đầu đề thư rác của: ">
+<!ENTITY ispHeaders.accesskey "T">
+
+<!ENTITY junkClassification.label "Phần được chọn">
+<!ENTITY junkActions.label "Đích đến và thời gian lưu trữ">
+
+<!ENTITY globalJunkPrefs.label "Tuỳ chỉnh thư rác bao quát…">
+<!ENTITY globalJunkPrefs.accesskey "G">
diff --git a/l10n-vi/mail/chrome/messenger/am-main.dtd b/l10n-vi/mail/chrome/messenger/am-main.dtd
new file mode 100644
index 0000000000..2f27170cf1
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/am-main.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/. -->
+
+<!-- extracted from am-main.xhtml -->
+
+<!ENTITY accountTitle.label "Cài đặt tài khoản">
+<!ENTITY accountName.label "Tên tài khoản:">
+<!ENTITY accountName.accesskey "n">
+<!ENTITY identityTitle.label "Định danh Mặc định">
+<!ENTITY identityDesc.label "Mỗi tài khoản có một định danh, đó là thông tin để người khác nhận ra khi họ đọc thư của bạn.">
+<!ENTITY name.label "Tên của Bạn:">
+<!ENTITY name.accesskey "B">
+<!ENTITY email.label "Địa chỉ Email:">
+<!ENTITY email.accesskey "E">
+<!ENTITY catchAll.label "Trả lời từ danh tính này khi tiêu đề phân phối khớp với:">
+<!ENTITY catchAll.accesskey "d">
+<!ENTITY replyTo.label "Địa chỉ Trả-lời-tới:">
+<!ENTITY replyTo.accesskey "a">
+<!ENTITY replyTo.placeholder "Người nhận sẽ trả lời địa chỉ khác này">
+<!ENTITY organization.label "Tổ chức:">
+<!ENTITY organization.accesskey "h">
+<!ENTITY signatureText.label "Chữ kí:">
+<!ENTITY signatureText.accesskey "k">
+<!ENTITY signatureHtml.label "Dùng HTML (vd.: &lt;b&gt;đậm&lt;/b&gt;)">
+<!ENTITY signatureHtml.accesskey "L">
+<!ENTITY signatureFile.label "Kèm theo chữ kí từ một tập tin (văn bản, HTML, hoặc ảnh):">
+<!ENTITY signatureFile.accesskey "m">
+<!ENTITY edit.label "Chỉnh sửa…">
+<!ENTITY choose.label "Chọn…">
+<!ENTITY choose.accesskey "C">
+<!ENTITY editVCard.label "Chỉnh sửa vCard…">
+<!ENTITY editVCard.accesskey "d">
+<!-- LOCALIZATION NOTE (attachVCard.label) : do not translate "vCard" in below line -->
+<!ENTITY attachVCard.label "Đính kèm vCard của tôi vào thư">
+<!ENTITY attachVCard.accesskey "v">
+
+<!ENTITY manageIdentities.label "Quản lí Định danh…">
+<!ENTITY manageIdentities.accesskey "Q">
+
+<!-- LOCALIZATION NOTE (smtpName.label) : do not translate "SMTP" in below line -->
+<!ENTITY smtpName.label "Máy chủ gửi thư (SMTP):">
+<!ENTITY smtpName.accesskey "M">
+<!ENTITY smtpDefaultServer.label "Sử dụng Máy chủ Mặc định">
+
+<!ENTITY smtpServerEdit.label "Chỉnh sửa máy chủ SMTP…">
+<!ENTITY smtpServerEdit.accesskey "P">
diff --git a/l10n-vi/mail/chrome/messenger/am-mdn.dtd b/l10n-vi/mail/chrome/messenger/am-mdn.dtd
new file mode 100644
index 0000000000..d6a5868542
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Xác nhận đã nhận thư">
+<!ENTITY useGlobalPrefs.label "Sử dụng các tùy chọn tổng quát của xác nhận đã nhận thư của tôi cho tài khoản này">
+<!ENTITY useGlobalPrefs.accesskey "D">
+<!ENTITY globalReceipts.label "Tùy chỉnh tổng quát…">
+<!ENTITY globalReceipts.accesskey "G">
+<!ENTITY useCustomPrefs.label "Tùy chỉnh xác nhận đã nhận thư cho tài khoản này">
+<!ENTITY useCustomPrefs.accesskey "y">
+<!ENTITY requestReceipt.label "Khi gửi thư, luôn luôn yêu cầu xác nhận đã nhận thư">
+<!ENTITY requestReceipt.accesskey "K">
+<!ENTITY receiptArrive.label "Khi một chứng nhận đến:">
+<!ENTITY leaveIt.label "Để nó trong Hộp thư của tôi">
+<!ENTITY leaveIt.accesskey "H">
+<!-- LOCALIZATION NOTE moveToSent.label Translate: 'Sent' according to Netscape glossary -->
+<!ENTITY moveToSent.label "Chuyển nó vào thư mục &quot;Đã gửi&quot;">
+<!ENTITY moveToSent.accesskey "C">
+<!ENTITY requestMDN.label "Khi tôi nhận được yêu cầu về xác nhận đã nhận thư:">
+<!ENTITY returnSome.label "Cho phép xác nhận đã nhận thư cho một số thư">
+<!ENTITY returnSome.accesskey "b">
+<!ENTITY never.label "Không bao giờ gửi xác nhận đã nhận thư">
+<!ENTITY never.accesskey "a">
+<!ENTITY notInToCc.label "Nếu tôi không nằm trong trường Tới hoặc Cc của thư:">
+<!ENTITY notInToCc.accesskey "N">
+<!ENTITY outsideDomain.label "Nếu người gửi nằm ngoài tên miền của tôi:">
+<!ENTITY outsideDomain.accesskey "u">
+<!ENTITY otherCases.label "Trong mọi trường hợp khác:">
+<!ENTITY otherCases.accesskey "o">
+<!ENTITY askMe.label "Hỏi tôi">
+<!ENTITY alwaysSend.label "Luôn gửi">
+<!ENTITY neverSend.label "Không bao giờ gửi">
diff --git a/l10n-vi/mail/chrome/messenger/am-mdn.properties b/l10n-vi/mail/chrome/messenger/am-mdn.properties
new file mode 100644
index 0000000000..b1d505dbc3
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Xác nhận đã nhận thư
diff --git a/l10n-vi/mail/chrome/messenger/am-offline.dtd b/l10n-vi/mail/chrome/messenger/am-offline.dtd
new file mode 100644
index 0000000000..d5d7592999
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Để tiết kiệm dung lượng đĩa, không tải:">
+<!ENTITY doNotDownloadNntp.label "Để tiết kiệm dung lượng đĩa, không tải xuống để dùng ngoại tuyến:">
+<!ENTITY doNotDownloadImap.label "Để tiết kiệm dung lượng đĩa, việc tải thư từ máy chủ và giữ bản sao ngoại tuyến có thể được giới hạn theo thời gian hoặc dung lượng.">
+<!ENTITY allFoldersOffline2.label "Giữ tin nhắn trong tất cả các thư mục cho tài khoản này trên máy tính này">
+<!ENTITY allFoldersOffline2.accesskey "o">
+<!ENTITY allFoldersOfflineNote.label "Lưu ý: Thay đổi này ảnh hưởng đến tất cả các thư mục trong tài khoản này. Để đặt các thư mục riêng lẻ, hãy sử dụng nút Nâng cao….">
+<!ENTITY offlineNotDownload.label "Thư lớn hơn">
+<!ENTITY offlineNotDownload.accesskey "M">
+<!ENTITY autosyncNotDownload.label "Không tải thư lớn hơn">
+<!ENTITY autosyncNotDownload.accesskey "m">
+<!ENTITY kb.label "KB">
+<!ENTITY daysOld.label "ngày">
+<!ENTITY message.label "thư mới nhất">
+<!ENTITY nntpNotDownloadRead.label "Thư đã đọc">
+<!ENTITY nntpNotDownloadRead.accesskey "d">
+<!ENTITY nntpDownloadMsg.label "Thư cũ hơn">
+<!ENTITY nntpDownloadMsg.accesskey "e">
+<!ENTITY retentionCleanup.label "Để khôi phục dung lượng đĩa, thư cũ sẽ bị xóa.">
+<!ENTITY retentionCleanupImap.label "Để khôi phục dung lượng đĩa, thư cũ có thể bị xóa vĩnh viễn, cả bản sao trong máy lẫn bản gốc trên máy chủ.">
+<!ENTITY retentionCleanupPop.label "Để khôi phục dung lượng đĩa, thư cũ có thể bị xóa vĩnh viễn, bao gồm cả bản gốc trên máy chủ.">
+<!ENTITY retentionKeepMsg.label "Xóa thư cũ hơn">
+<!ENTITY retentionKeepMsg.accesskey "t">
+<!ENTITY retentionKeepAll.label "Không xóa bất kì thư nào">
+<!ENTITY retentionKeepAll.accesskey "n">
+<!ENTITY retentionKeepRecent.label "Xóa tất cả trừ gần đây">
+<!ENTITY retentionKeepRecent.accesskey "b">
+<!ENTITY retentionApplyToFlagged.label "Luôn luôn giữ lại thư gắn sao">
+<!ENTITY retentionApplyToFlagged.accesskey "k">
+<!ENTITY nntpRemoveMsgBody.label "Xóa nội dung khỏi thư lớn hơn">
+<!ENTITY nntpRemoveMsgBody.accesskey "o">
+<!ENTITY offlineSelectNntp.label "Chọn nhóm tin để dùng ngoại tuyến…">
+<!ENTITY offlineSelectNntp.accesskey "S">
+<!ENTITY offlineImapAdvancedOffline.label "Nâng cao…">
+<!ENTITY offlineImapAdvancedOffline.accesskey "v">
+<!ENTITY syncGroupTitle.label "Đồng bộ hóa thư">
+<!ENTITY diskspaceGroupTitle.label "Dung lượng đĩa">
+
+<!-- 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 "Đồng bộ hóa tất cả thư trong máy, không quan tâm đến thời gian">
+<!ENTITY allAutosync.accesskey "c">
+<!ENTITY ageAutosyncBefore.label "Đồng bộ những thư mới nhất">
+<!ENTITY ageAutosync.accesskey "z">
+<!ENTITY ageAutosyncMiddle.label "">
+<!ENTITY dayAgeInterval.label "Ngày">
+<!ENTITY weekAgeInterval.label "Tuần">
+<!ENTITY monthAgeInterval.label "Tháng">
+<!ENTITY yearAgeInterval.label "Năm">
+<!ENTITY ageAutosyncAfter.label "">
diff --git a/l10n-vi/mail/chrome/messenger/am-server-advanced.dtd b/l10n-vi/mail/chrome/messenger/am-server-advanced.dtd
new file mode 100644
index 0000000000..d3997f3303
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Cài đặt tài khoản nâng cao">
+<!-- LOCALIZATION NOTE (serverDirectory.label): Do not translate "IMAP" -->
+<!ENTITY serverDirectory.label "Thư mục máy chủ IMAP:">
+<!ENTITY serverDirectory.accesskey "m">
+<!ENTITY usingSubscription.label "Chỉ hiện các thư mục đang theo dõi">
+<!ENTITY usingSubscription.accesskey "C">
+<!ENTITY dualUseFolders.label "Máy chủ hỗ trợ các thư mục có chứa thư mục con và thư">
+<!ENTITY dualUseFolders.accesskey "r">
+<!ENTITY maximumConnectionsNumber.label "Số lượng kết nối tối đa từ máy chủ tới bộ đệm">
+<!ENTITY maximumConnectionsNumber.accesskey "S">
+<!-- LOCALIZATION NOTE (namespaceDesc.label): Do not translate "IMAP" -->
+<!ENTITY namespaceDesc.label "Những tùy chỉnh này chỉ định không gian tên trên máy chủ IMAP của bạn">
+<!ENTITY personalNamespace.label "Không gian tên Cá nhân:">
+<!ENTITY personalNamespace.accesskey "K">
+<!ENTITY publicNamespace.label "Công khai (đã chia sẻ):">
+<!ENTITY publicNamespace.accesskey "s">
+<!ENTITY otherUsersNamespace.label "Người dùng Khác:">
+<!ENTITY otherUsersNamespace.accesskey "N">
+<!ENTITY overrideNamespaces.label "Cho phép máy chủ ghi đè những không gian tên này">
+<!ENTITY overrideNamespaces.accesskey "o">
+<!ENTITY pop3DeferringDesc.label "Khi tải xuống thư từ máy chủ của tài khoản này, hãy sử dụng thư mục sau để lưu trữ thư mới:">
+<!ENTITY accountInbox.label "Hộp thư đến cho tài khoản này">
+<!ENTITY accountInbox.accesskey "s">
+<!ENTITY deferToServer.label "Hộp thư cho tài khoản khác">
+<!ENTITY deferToServer.accesskey "p">
+<!ENTITY deferGetNewMail.label "Bao gồm máy chủ này khi nhận thư mới">
+<!ENTITY deferGetNewMail.accesskey "I">
diff --git a/l10n-vi/mail/chrome/messenger/am-server-top.dtd b/l10n-vi/mail/chrome/messenger/am-server-top.dtd
new file mode 100644
index 0000000000..f81fe8cbc4
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Lưu trữ thư">
+<!ENTITY securitySettings.label "Cài đặt bảo mật">
+<!ENTITY serverSettings.label "Cài đặt máy chủ">
+<!ENTITY serverType.label "Kiểu máy chủ:">
+<!ENTITY serverName.label "Tên máy chủ:">
+<!ENTITY serverName.accesskey "S">
+<!ENTITY userName.label "Tên đăng nhập:">
+<!ENTITY userName.accesskey "N">
+<!ENTITY port.label "Cổng:">
+<!ENTITY port.accesskey "P">
+<!ENTITY serverPortDefault.label "Mặc định:">
+<!-- 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 "Kiểm tra thư mới mỗi ">
+<!ENTITY biffStart.accesskey "y">
+<!ENTITY biffEnd.label "phút">
+<!ENTITY useIdleNotifications.label "Cho phép thông báo máy chủ ngay lập tức khi có thư mới đến">
+<!ENTITY useIdleNotifications.accesskey "w">
+<!ENTITY connectionSecurity.label "Bảo mật kết nối:">
+<!ENTITY connectionSecurity.accesskey "u">
+<!ENTITY connectionSecurityType-0.label "Không có">
+<!ENTITY connectionSecurityType-1.label "STARTTLS, nếu có">
+<!ENTITY connectionSecurityType-2.label "STARTTLS">
+<!ENTITY connectionSecurityType-3.label "SSL/TLS">
+<!ENTITY authMethod.label "Phương thức xác thực:">
+<!ENTITY authMethod.accesskey "i">
+<!ENTITY leaveOnServer.label "Để lại thư trên máy chủ">
+<!ENTITY leaveOnServer.accesskey "g">
+<!ENTITY headersOnly.label "Chỉ lấy tiêu đề">
+<!ENTITY headersOnly.accesskey "e">
+<!ENTITY deleteByAgeFromServer.label "Trong nhiều nhất">
+<!ENTITY deleteByAgeFromServer.accesskey "o">
+<!ENTITY daysEnd.label "ngày">
+<!ENTITY deleteOnServer2.label "Cho đến khi tôi xóa chúng">
+<!ENTITY deleteOnServer2.accesskey "d">
+<!ENTITY downloadOnBiff.label "Tự động tải thư mới">
+<!ENTITY downloadOnBiff.accesskey "m">
+<!ENTITY deleteMessagePrefix.label "Khi tôi xóa một thư:">
+<!ENTITY modelMoveToTrash.label "Di chuyển nó vào thư mục này:">
+<!ENTITY modelMoveToTrash.accesskey "o">
+<!ENTITY modelMarkDeleted.label "Chỉ đánh dấu nó là đã bị xóa">
+<!ENTITY modelMarkDeleted.accesskey "k">
+<!ENTITY modelDeleteImmediately.label "Xóa nó ngay lập tức">
+<!ENTITY modelDeleteImmediately.accesskey "d">
+<!-- LOCALIZATION NOTE (expungeOnExit.label) : do not translate two of "&quot;" in below line -->
+<!ENTITY expungeOnExit.label "Dọn dẹp (&quot;Xóa&quot;) hộp thư khi thoát">
+<!ENTITY expungeOnExit.accesskey "E">
+<!ENTITY emptyTrashOnExit.label "Dọn sạch thùng rác khi thoát">
+<!ENTITY emptyTrashOnExit.accesskey "x">
+<!ENTITY loginAtStartup.label "Kiểm tra thư mới khi khởi động">
+<!ENTITY loginAtStartup.accesskey "C">
+<!-- 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 "Hỏi tôi trước khi tải nhiều hơn">
+<!ENTITY maxMessagesStart.accesskey "m">
+<!-- LOCALIZATION NOTE (maxMessagesEnd.label) : see note for maxMessagesStart.label -->
+<!ENTITY maxMessagesEnd.label "thư">
+<!ENTITY alwaysAuthenticate.label "Luôn yêu cầu xác thực khi kết nối đến máy chủ này">
+<!ENTITY alwaysAuthenticate.accesskey "w">
+<!ENTITY newsrcFilePath1.label "Tập tin News.rc:">
+<!ENTITY newsrcPicker1.label "Chọn tập tin News.rc">
+<!ENTITY abbreviate.label "Hiện tên nhóm tin trong bảng thư mục thư dưới dạng:">
+<!ENTITY abbreviateOn.label "Tên đầy đủ (ví dụ, 'netscape.public.mozilla.mail-news')">
+<!ENTITY abbreviateOff.label "Tên viết tắt chữ đầu (ví dụ, 'n.p.m.mail-news')">
+<!ENTITY advancedButton.label "Nâng cao…">
+<!ENTITY advancedButton.accesskey "v">
+<!ENTITY serverDefaultCharset2.label "Bảng mã văn bản mặc định:">
+<!ENTITY localPath1.label "Thư mục nội bộ:">
+<!ENTITY localFolderPicker.label "Chọn thư mục cục bộ">
+<!ENTITY browseFolder.label "Duyệt…">
+<!ENTITY browseFolder.accesskey "B">
+<!ENTITY browseNewsrc.label "Duyệt…">
+<!ENTITY browseNewsrc.accesskey "e">
+
+<!ENTITY accountTitle.label "Cài đặt tài khoản">
+<!ENTITY accountSettingsDesc.label "Sau đây là một tài khoản đặc biệt. Không có danh tính liên quan đến nó.">
+<!ENTITY storeType.label "Loại lưu trữ thư:">
+<!ENTITY storeType.accesskey "T">
+<!ENTITY mboxStore2.label "Tập tin trên mỗi thư mục (mbox)">
+<!ENTITY maildirStore.label "Tập tin trên mỗi thư (maildir)">
diff --git a/l10n-vi/mail/chrome/messenger/am-serverwithnoidentities.dtd b/l10n-vi/mail/chrome/messenger/am-serverwithnoidentities.dtd
new file mode 100644
index 0000000000..9f68ee07db
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tên tài khoản:">
+<!ENTITY accountName.accesskey "n">
diff --git a/l10n-vi/mail/chrome/messenger/am-smime.dtd b/l10n-vi/mail/chrome/messenger/am-smime.dtd
new file mode 100644
index 0000000000..21a8f1cb6c
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/am-smime.dtd
@@ -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/. -->
+
+<!ENTITY e2eTitle.label "Mã hóa đầu cuối">
+<!ENTITY e2eLearnMore.label "Xem thêm">
+
+<!ENTITY e2eEnc.description "Nếu không có mã hóa đầu cuối, nội dung của các thư sẽ dễ dàng bị lộ cho nhà cung cấp dịch vụ email của bạn và bị giám sát hàng loạt.">
+
+<!ENTITY e2eTechPref.description "Công nghệ mã hóa ưu tiên:">
+
+<!ENTITY encryptionCert2.message "Chứng chỉ cá nhân để mã hóa:">
+<!ENTITY digitalSign.certificate.button "Chọn…">
+<!ENTITY digitalSign.certificate.accesskey "C">
+<!ENTITY digitalSign.certificate_clear.button "Xóa">
+<!ENTITY digitalSign.certificate_clear.accesskey "g">
+<!ENTITY encryption.certificate.button "Chọn…">
+<!ENTITY encryption.certificate.accesskey "n">
+<!ENTITY encryption.certificate_clear.button "Xóa">
+<!ENTITY encryption.certificate_clear.accesskey "a">
+<!ENTITY signingGroupTitle.label "Chữ kí điện tử">
+<!ENTITY signingCert2.message "Chứng chỉ cá nhân để ký kỹ thuật số:">
+
+<!ENTITY sendingDefaults.label "Cài đặt mặc định để gửi thư">
+
+<!ENTITY technologyAutomatic.label "Chọn tự động dựa trên các khóa hoặc chứng chỉ có sẵn">
+
+<!ENTITY certificates2.label "S/MIME">
+<!ENTITY manageCerts3.label "Quản lý chứng chỉ S/MIME">
+<!ENTITY manageCerts3.accesskey "M">
+<!ENTITY manageDevices2.label "Thiết bị bảo mật S/MIME">
+<!ENTITY manageDevices2.accesskey "y">
+
+<!ENTITY technologySMIME.label "Ưu tiên S/MIME">
+<!ENTITY technologyOpenPGP.label "Ưu tiên OpenPGP">
+
+<!ENTITY openpgpKeys.label "OpenPGP">
+
+<!-- Strings for the cert picker dialog -->
+<!ENTITY certPicker.title "Chọn chứng chỉ">
+<!ENTITY certPicker.info "Chứng chỉ:">
+<!ENTITY certPicker.detailsLabel "Chi tiết của chứng chỉ được chọn:">
+
+<!ENTITY openpgpKey.message "Khóa cá nhân để mã hóa và ký kỹ thuật số:">
+<!ENTITY openpgpKey.button "Đặt khóa cá nhân…">
+<!ENTITY openpgpKey.accesskey "o">
diff --git a/l10n-vi/mail/chrome/messenger/am-smime.properties b/l10n-vi/mail/chrome/messenger/am-smime.properties
new file mode 100644
index 0000000000..ab88799c80
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/am-smime.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/.
+
+## S/MIME error strings.
+## Note to localization: %S is a placeholder
+NoSenderSigningCert=Bạn yêu cầu thư này phải được kí điện tử, nhưng hoặc là chương trình gặp thất bại trong việc tìm chứng thư kí nhận được chỉ định trong Thiết lập Tài khoản Thư & Nhóm tin của bạn, hoặc là chứng thư đã hết hạn.
+NoSenderEncryptionCert=Bạn yêu cầu mã hóa thư này, nhưng hoặc là chương trình gặp thất bại trong việc tìm chứng thư mã hóa được chỉ định trong Thiết lập Tài khoản Thư & Nhóm tin của bạn, hoặc là chứng thư đã hết hạn.
+MissingRecipientEncryptionCert=Bạn yêu cầu mã hóa thư này, nhưng chương trình gặp thất bại trong việc tìm chứng thư mã hóa cho %S.
+ErrorEncryptMail=Không thể mã hóa thư. Vui lòng kiểm tra xem bạn có chứng chỉ email hợp lệ cho mỗi người nhận không. Vui lòng kiểm tra xem các chứng chỉ được chỉ định trong cài đặt tài khoản của Thư &amp; nhóm tin cho tài khoản thư này có hợp lệ và đáng tin cậy cho thư không.
+ErrorCanNotSignMail=Không thể ký thư. Vui lòng kiểm tra xem các chứng chỉ được chỉ định trong cài đặt tài khoản của Thư &amp; nhóm tin cho tài khoản thư này có hợp lệ và đáng tin cậy cho thư không.
+
+## Strings used for in the prefs.
+NoSigningCert=Trình quản lí Chứng thư không thể tìm thấy một chứng thư hợp lệ để kí thư của bạn được.
+NoSigningCertForThisAddress=Trình quản lý chứng chỉ không thể xác định chứng chỉ hợp lệ có thể được sử dụng để ký điện tử các thư của bạn với địa chỉ <%S>.
+NoEncryptionCert=Trình quản lí Chứng thư không thể tìm thấy một chứng thư hợp lệ để người khác có thể gửi thư mã hóa cho bạn được.
+NoEncryptionCertForThisAddress=Trình quản lý chứng chỉ không thể tìm thấy chứng chỉ hợp lệ mà người khác có thể sử dụng để gửi cho bạn thư email được mã hóa đến địa chỉ <%S>.
+
+encryption_needCertWantSame=Bạn cũng cần chỉ định một chứng thư cho người khác dùng khi họ gửi bạn thư mã hóa. Bạn có muốn dùng cùng một chứng thư để mã hóa & giải mã thư được gửi tới bạn không?
+encryption_wantSame=Bạn có muốn dùng cùng một chứng thư để mã hóa & giải mã thư được gửi tới bạn không?
+encryption_needCertWantToSelect=Bạn cũng cần chỉ định một chứng thư cho người khác dùng khi họ gửi bạn thư mã hóa. Bạn có muốn cấu hình chứng thư mã hóa ngay bây giờ không?
+signing_needCertWantSame=Bạn cũng cần chỉ định một chứng thư để kí thư. Bạn có muốn dùng cùng một chứng thư để kí thư không?
+signing_wantSame=Bạn có muốn dùng cùng một chứng thư để kí thư không?
+signing_needCertWantToSelect=Bạn cũng cần chỉ định một chứng thư để kí thư. Bạn có muốn cấu hình chứng thư cho việc kí thư ngay bây giờ không?
+
+## Strings used by nsMsgComposeSecure
+mime_smimeEncryptedContentDesc=Thư Mã hóa S/MIME
+mime_smimeSignatureContentDesc=Chữ kí mã hóa S/MIME
+
+## Strings used by the cert picker.
+CertInfoIssuedFor=Cấp cho:
+CertInfoIssuedBy=Cấp bởi:
+CertInfoValid=Hiệu lực
+CertInfoFrom=từ
+CertInfoTo=đến
+CertInfoPurposes=Mục đích
+CertInfoEmail=E-mail
+CertInfoStoredIn=Được lưu trữ trong:
+NicknameExpired=(hết hạn)
+NicknameNotYetValid=(chưa hợp lệ)
diff --git a/l10n-vi/mail/chrome/messenger/appUpdate.properties b/l10n-vi/mail/chrome/messenger/appUpdate.properties
new file mode 100644
index 0000000000..68bbab09a8
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Đã có bản cập nhật %S mới.
+# LOCALIZATION NOTE (updateAvailableMessage): %S will be replaced with brandShortName
+updateAvailableMessage=Cập nhật %S bản mới nhất để cải thiện tốc độ và bảo mật.
+updateAvailablePrimaryButtonLabel=Tải xuống bản cập nhật
+updateAvailablePrimaryButtonAccessKey=D
+updateAvailableSecondaryButtonLabel=Không phải bây giờ
+updateAvailableSecondaryButtonAccessKey=N
+
+# LOCALIZATION NOTE (updateManualTitle): %S will be replaced with brandShortName
+updateManualTitle=%S không thể cập nhật lên phiên bản mới nhất.
+# LOCALIZATION NOTE (updateManualMessage): %S will be replaced with brandShortName
+updateManualMessage=Tải xuống một bản sao mới của %S và chúng tôi sẽ giúp bạn cài đặt nó.
+# LOCALIZATION NOTE (updateManualPrimaryButtonLabel): %S will be replaced with brandShortName
+updateManualPrimaryButtonLabel=Tải xuống %S
+updateManualPrimaryButtonAccessKey=D
+updateManualSecondaryButtonLabel=Không phải bây giờ
+updateManualSecondaryButtonAccessKey=N
+
+# LOCALIZATION NOTE (updateUnsupportedTitle): %S will be replaced with brandShortName
+updateUnsupportedTitle=%S không thể cập nhật lên phiên bản mới nhất.
+# LOCALIZATION NOTE (updateUnsupportedMessage): %S will be replaced with brandShortName
+updateUnsupportedMessage=Phiên bản mới nhất của %S không được hỗ trợ trên hệ thống của bạn.
+updateUnsupportedPrimaryButtonLabel=Tìm hiểu thêm
+updateUnsupportedPrimaryButtonAccessKey=L
+updateUnsupportedSecondaryButtonLabel=Đóng
+updateUnsupportedSecondaryButtonAccessKey=C
+
+# LOCALIZATION NOTE (updateRestartTitle): %S will be replaced with brandShortName
+updateRestartTitle=Khởi động lại để cập nhật %S.
+# LOCALIZATION NOTE (updateRestartMessage): %S will be replaced with brandShortName
+updateRestartMessage=Sau khi khởi động lại nhanh chóng, %S sẽ khôi phục lại tất cả các thẻ đang mở và cửa sổ của bạn.
+updateRestartPrimaryButtonLabel=Khởi động lại
+updateRestartPrimaryButtonAccessKey=R
+updateRestartSecondaryButtonLabel=Không phải bây giờ
+updateRestartSecondaryButtonAccessKey=N
diff --git a/l10n-vi/mail/chrome/messenger/appleMailImportMsgs.properties b/l10n-vi/mail/chrome/messenger/appleMailImportMsgs.properties
new file mode 100644
index 0000000000..9df148c5b4
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/appleMailImportMsgs.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/.
+
+# Short name of import module
+ApplemailImportName=Apple Mail
+
+# Description of import module
+ApplemailImportDescription=Nhập thư cục bộ từ Mac OS X Mail
+
+# Success Message
+# LOCALIZATION NOTE(ApplemailImportMailboxSuccess): Do not translate the word "%S" below.
+ApplemailImportMailboxSuccess=Thư cục bộ đã được nhập thành công từ %S
+
+# Error Message
+ApplemailImportMailboxBadparam=Xảy ra lỗi nội bộ. Thất bại khi nhập. Hãy thử nhập lại.
+
+# Error message
+# LOCALIZATION NOTE(ApplemailImportMailboxConverterror): Do not translate the word "%S" below.
+ApplemailImportMailboxConverterror=Đã xảy ra lỗi khi nhập thư từ %S. Thư đã không được nhập.
diff --git a/l10n-vi/mail/chrome/messenger/baseMenuOverlay.dtd b/l10n-vi/mail/chrome/messenger/baseMenuOverlay.dtd
new file mode 100644
index 0000000000..f4e1954774
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/baseMenuOverlay.dtd
@@ -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/. -->
+
+<!-- Help Menu -->
+<!ENTITY helpMenu.label "Trợ giúp">
+<!ENTITY helpMenu.accesskey "H">
+<!-- LOCALIZATION NOTE some localizations of Windows use "?"
+ for the help button in the menubar but Gnome does not. -->
+<!ENTITY helpMenuWin.label "Trợ giúp">
+<!ENTITY helpMenuWin.accesskey "H">
+<!ENTITY aboutProduct2.label "Về &brandShorterName;">
+<!ENTITY aboutProduct2.accesskey "A">
+<!ENTITY productHelp.label "Trợ giúp &brandShortName;">
+<!ENTITY productHelp.accesskey "H">
+
+<!ENTITY productHelp.commandkey "VK_F1">
+<!ENTITY productHelpMac.commandkey "?">
+<!ENTITY productHelpMac.modifiers "accel">
+
+<!ENTITY helpKeyboardShortcuts.label "Các phím tắt bàn phím">
+<!ENTITY helpKeyboardShortcuts.accesskey "K">
+
+<!ENTITY helpFeedbackPage.label "Gửi phản hồi…">
+<!ENTITY helpFeedbackPage.accesskey "S">
+
+<!ENTITY helpShowTour2.label "Các tính năng cơ bản của &brandShorterName;">
+<!ENTITY helpShowTour2.accesskey "o">
+
+<!ENTITY helpGetInvolvedPage.label "Tham gia đóng góp">
+<!ENTITY helpGetInvolvedPage.accesskey "I">
+
+<!ENTITY helpDonationsPage.label "Quyên góp tài chính">
+<!ENTITY helpDonationsPage.accesskey "M">
diff --git a/l10n-vi/mail/chrome/messenger/beckyImportMsgs.properties b/l10n-vi/mail/chrome/messenger/beckyImportMsgs.properties
new file mode 100644
index 0000000000..2c16bf4a31
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Nhập thư cục bộ từ 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=Thư cục bộ đã được nhập thành công từ %S.
+
+BeckyImportAddressSuccess=Đã nhập sổ địa chỉ
diff --git a/l10n-vi/mail/chrome/messenger/charsetTitles.properties b/l10n-vi/mail/chrome/messenger/charsetTitles.properties
new file mode 100644
index 0000000000..1c39a30f3e
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/charsetTitles.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/.
+
+## 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
+
+iso-8859-1.title = Phương Tây (ISO-8859-1)
+iso-8859-2.title = Trung Âu (ISO-8859-2)
+iso-8859-3.title = Nam Âu (ISO-8859-3)
+iso-8859-4.title = Baltic (ISO-8859-4)
+iso-8859-10.title = Bắc Âu (ISO-8859-10)
+iso-8859-13.title = Baltic (ISO-8859-13)
+iso-8859-14.title = Celtic (ISO-8859-14)
+iso-8859-15.title = Phương Tây (ISO-8859-15)
+iso-8859-16.title = Rumani (ISO-8859-16)
+windows-1250.title = Trung Âu (Windows-1250)
+windows-1252.title = Phương Tây (Windows-1252)
+windows-1254.title = Thổ Nhĩ Kỳ (Windows-1254)
+windows-1257.title = Baltic (Windows-1257)
+macintosh.title = Phương Tây (MacRoman)
+x-mac-ce.title = Trung Âu (MacCE)
+x-mac-turkish.title = Thổ Nhĩ Kỳ (MacTurkish)
+x-mac-croatian.title = Croatia (MacCroatian)
+x-mac-romanian.title = Rumani (MacRomanian)
+x-mac-icelandic.title = Iceland (MacIcelandic)
+iso-2022-jp.title = Nhật Bản (ISO-2022-JP)
+shift_jis.title = Nhật Bản (Shift_JIS)
+euc-jp.title = Nhật Bản (EUC-JP)
+big5.title = Tiếng Trung phồn thể (Big5)
+big5-hkscs.title = Tiếng Trung phồn thể (Big5-HKSCS)
+gb2312.title = Tiếng Trung giản thể (GB2312)
+gbk.title = Tiếng Trung giản thể (GBK)
+euc-kr.title = Hàn Quốc (EUC-KR)
+utf-7.title = Unicode (UTF-7)
+utf-8.title = Unicode (UTF-8)
+utf-16.title = Unicode (UTF-16)
+utf-16le.title = Unicode (UTF-16LE)
+utf-16be.title = Unicode (UTF-16BE)
+iso-8859-5.title = Cyrillic (ISO-8859-5)
+windows-1251.title = Cyrillic (Windows-1251)
+x-mac-cyrillic.title = Cyrillic (MacCyrillic)
+x-mac-ukrainian.title = Cyrillic/Ucraina (MacUkrainian)
+koi8-r.title = Cyrillic (KOI8-R)
+koi8-u.title = Cyrillic/Ucraina (KOI8-U)
+iso-8859-7.title = Hy Lạp (ISO-8859-7)
+windows-1253.title = Hy Lạp (Windows-1253)
+x-mac-greek.title = Hy Lạp (MacGreek)
+windows-1258.title = Tiếng Việt (Windows-1258)
+windows-874.title = Tiếng Thái (Windows-874)
+iso-8859-6.title = Tiếng Ả Rập (ISO-8859-6)
+iso-8859-8.title = Do Thái trực quan (ISO-8859-8)
+iso-8859-8-i.title = Do Thái (ISO-8859-8-I)
+windows-1255.title = Do Thái (Windows-1255)
+windows-1256.title = Ả Rập (Windows-1256)
+x-user-defined.title = Người dùng xác định
+ibm866.title = Kirin/Nga (CP-866)
+gb18030.title = Tiếng Trung giản thể (GB18030)
+x-mac-arabic.title = Tiếng Ả Rập (MacArabic)
+x-mac-farsi.title = Farsi (MacFarsi)
+x-mac-hebrew.title = Do Thái (MacHebrew)
+x-mac-devanagari.title = Hindi (MacDevanagari)
+x-mac-gujarati.title = Gujarati (MacGujarati)
+x-mac-gurmukhi.title = Gurmukhi (MacGurmukhi)
+
+chardet.off.title = (Tắt)
+chardet.universal_charset_detector.title = Phổ cập
+chardet.ja_parallel_state_machine.title = Tiếng Nhật
+chardet.ko_parallel_state_machine.title = Tiếng Hàn
+chardet.zhtw_parallel_state_machine.title = Tiếng Trung phồn thể
+chardet.zhcn_parallel_state_machine.title = Tiếng Trung giản thể
+chardet.zh_parallel_state_machine.title = Tiếng Trung
+chardet.cjk_parallel_state_machine.title = Đông Á
+chardet.ruprob.title = Tiếng Nga
+chardet.ukprob.title = Tiếng Ukraina
diff --git a/l10n-vi/mail/chrome/messenger/chat.dtd b/l10n-vi/mail/chrome/messenger/chat.dtd
new file mode 100644
index 0000000000..2458b5b9cc
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Liên hệ trực tuyến">
+<!ENTITY offlineContactsHeader.label "Liên hệ ngoại tuyến">
+<!ENTITY conversationsHeader.label "Cuộc trò chuyện">
+<!ENTITY searchResultConversation.label "Kết quả tìm kiếm">
+<!ENTITY chat.noConv.title "Cuộc trò chuyện sẽ được hiển thị ở đây.">
+<!ENTITY chat.noConv.description "Sử dụng danh sách liên hệ trong bảng điều khiển bên trái để bắt đầu một cuộc trò chuyện.">
+<!ENTITY chat.noPreviousConv.description "&brandShortName; hiện không có bất kỳ cuộc trò chuyện nào trước đó được lưu trữ cho liên hệ này.">
+<!ENTITY chat.noAccount.title "Bạn chưa thiết lập tài khoản trò chuyện.">
+<!ENTITY chat.noAccount.description "Hãy để &brandShortName; hướng dẫn bạn trong quá trình thiết lập tài khoản trò chuyện của bạn.">
+<!ENTITY chat.accountWizard.button "Bắt đầu">
+<!ENTITY chat.noConnectedAccount.title "Tài khoản trò chuyện của bạn không được kết nối.">
+<!ENTITY chat.noConnectedAccount.description "Bạn có thể kết nối chúng từ hộp thoại 'Trạng thái trò chuyện':">
+<!ENTITY chat.showAccountManager.button "Hiển thị trạng thái trò chuyện">
+
+<!ENTITY chat.participants "Người tham gia:">
+<!ENTITY chat.previousConversations "Cuộc trò chuyện trước:">
+<!ENTITY chat.ongoingConversation "Cuộc trò chuyện đang diễn ra">
+
+<!ENTITY openConversationCmd.label "Bắt đầu một cuộc trò chuyện">
+<!ENTITY openConversationCmd.accesskey "c">
+<!ENTITY closeConversationCmd.label "Đóng cuộc trò chuyện">
+<!ENTITY closeConversationCmd.accesskey "C">
+<!ENTITY aliasCmd.label "Đổi tên">
+<!ENTITY aliasCmd.accesskey "R">
+<!ENTITY deleteCmd.label "Xóa liên hệ">
+<!ENTITY deleteCmd.accesskey "v">
+
+<!ENTITY openConversationButton.tooltip "Bắt đầu một cuộc trò chuyện">
+<!ENTITY closeConversationButton.tooltip "Đóng cuộc trò chuyện">
+
+<!ENTITY addBuddyButton.label "Thêm liên hệ">
+<!ENTITY joinChatButton.label "Tham gia trò chuyện">
+<!ENTITY chatAccountsButton.label "Hiển thị tài khoản">
+
+<!ENTITY status.available "Có mặt">
+<!ENTITY status.unavailable "Không sẵn sàng">
+<!ENTITY status.offline "Ngoại tuyến">
+
+<!ENTITY openLinkCmd.label "Mở liên kết…">
+<!ENTITY openLinkCmd.accesskey "O">
diff --git a/l10n-vi/mail/chrome/messenger/chat.properties b/l10n-vi/mail/chrome/messenger/chat.properties
new file mode 100644
index 0000000000..28737414a6
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Trò chuyện
+goBackToCurrentConversation.button=Quay lại cuộc trò chuyện hiện tại
+# LOCALIZATION NOTE (startAConversationWith.button):
+# %S is replaced with the display name of a contact.
+startAConversationWith.button=Bắt đầu một cuộc trò chuyện với %S
+
+# LOCALIZATION NOTE (defaultGroup):
+# this is used in the addBuddies dialog if the list of existing groups is empty
+defaultGroup=Liên hệ
+
+# 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 muốn trò chuyện với bạn
+buddy.authRequest.allow.label=Cho phép
+buddy.authRequest.allow.accesskey=C
+buddy.authRequest.deny.label=Từ chối
+buddy.authRequest.deny.accesskey=T
+
+## 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 muốn xác minh danh tính của nhau
+buddy.verificationRequest.allow.label=Bắt đầu xác minh
+buddy.verificationRequest.allow.accesskey=S
+buddy.verificationRequest.deny.label=Từ chối
+buddy.verificationRequest.deny.accesskey=D
+
+# 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=Xóa %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 sẽ bị xóa vĩnh viễn khỏi danh sách bạn bè %2$S của bạn nếu bạn tiếp tục.
+
+# 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=&Xóa
+
+displayNameEmptyText=Tên hiển thị
+userIconFilePickerTitle=Chọn biểu tượng mới…
+
+# 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=đang nhập…
+chat.hasStoppedTyping=đã dừng nhập.
+# 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 đang nhập.
+chat.contactHasStoppedTyping=%S đã dừng nhập.
+
+# LOCALIZATION NOTE (unknownCommand):
+# This is shown when an unknown command (/foo) is attempted. %S is the command.
+unknownCommand=Lệnh %S không được hỗ trợ. Nhập /help để xem danh sách các lệnh.
+
+#LOCALIZATION NOTE
+# These are special entries in the log tree for the corresponding days.
+log.today=Hôm nay
+log.yesterday=Hôm qua
+
+#LOCALIZATION NOTE
+# These are special groups in the log tree for the last 3-7 days and
+# the last 8-14 days.
+log.currentWeek=Tuần này
+log.previousWeek=Tuần trước
+
+# 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=Tin nhắn trò chuyện mới
+
+#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… (và thêm #1 tin nhắn)
diff --git a/l10n-vi/mail/chrome/messenger/configEditorOverlay.dtd b/l10n-vi/mail/chrome/messenger/configEditorOverlay.dtd
new file mode 100644
index 0000000000..b625ef49a9
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/configEditorOverlay.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 closeCmd.key "W">
+
diff --git a/l10n-vi/mail/chrome/messenger/converterDialog.dtd b/l10n-vi/mail/chrome/messenger/converterDialog.dtd
new file mode 100644
index 0000000000..c8ee17fc87
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Công cụ chuyển đổi loại lưu trữ thư">
+<!ENTITY converterDialog.continueButton "Tiếp tục">
+<!ENTITY converterDialog.cancelButton "Hủy bỏ">
+<!ENTITY converterDialog.finishButton "Hoàn thành">
+<!ENTITY converterDialog.complete "Việc chuyển đổi đã hoàn tất. Bây giờ &brandShortName; sẽ khởi động lại.">
+<!ENTITY converterDialog.error "Chuyển đổi thất bại.">
+
diff --git a/l10n-vi/mail/chrome/messenger/converterDialog.properties b/l10n-vi/mail/chrome/messenger/converterDialog.properties
new file mode 100644
index 0000000000..c59c2604e8
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Các thư trong tài khoản %1$S giờ sẽ được chuyển đổi sang định dạng %2$S. %3$S sẽ khởi động lại sau khi chuyển đổi hoàn tất.
+
+# 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=Chuyển đổi tài khoản %1$S thành %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 được hoãn lại thành %2$S. Tài khoản được hoãn đến %3$S: %4$S. Các thư trong tài khoản %5$S giờ sẽ được chuyển đổi sang định dạng %6$S. %7$S sẽ khởi động lại sau khi chuyển đổi hoàn tất.
+
+# 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=Tài khoản trì hoãn cho %1$S: %2$S. Các thư trong tài khoản %3$S giờ sẽ được chuyển đổi sang định dạng %4$S. %5$S sẽ khởi động lại sau khi chuyển đổi hoàn tất.
+
+# 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=Đang chuyển đổi tài khoản %1$S thành %2$S…
+
+# LOCALIZATION NOTE (converterDialog.percentDone):
+# %1$S will be replaced by the percentage of conversion that is complete.
+converterDialog.percentDone=Đã hoàn thành %1$S%%
diff --git a/l10n-vi/mail/chrome/messenger/custom.properties b/l10n-vi/mail/chrome/messenger/custom.properties
new file mode 100644
index 0000000000..6d13ca194b
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tiêu đề bạn đã nhập chứa một ký tự không hợp lệ, chẳng hạn như ':', ký tự không in được, ký tự không ascii hoặc ký tự ascii 8 bit. Vui lòng xóa ký tự không hợp lệ và thử lại.
diff --git a/l10n-vi/mail/chrome/messenger/customizeToolbar.dtd b/l10n-vi/mail/chrome/messenger/customizeToolbar.dtd
new file mode 100644
index 0000000000..6fec54eaf1
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tùy biến thanh công cụ">
+<!ENTITY dialog.dimensions "width: 92ch; height: 36em;">
+<!ENTITY instructions.description "Bạn có thể thêm hoặc bớt các biểu tượng bằng cách kéo hoặc thả trên các thanh công cụ.">
+<!ENTITY show.label "Hiện:">
+<!ENTITY iconsAndText.label "Biểu tượng và văn bản">
+<!ENTITY icons.label "Biểu tượng">
+<!ENTITY text.label "Văn bản">
+<!ENTITY iconsBesideText.label "Biểu tượng bên cạnh văn bản">
+<!ENTITY useSmallIcons.label "Dùng các biểu tượng nhỏ">
+<!ENTITY restoreDefaultSet.label "Khôi phục về mặc định">
+<!ENTITY showTitlebar2.label "Thanh tiêu đề">
+<!ENTITY extraDragSpace2.label "Kéo khoảng trắng">
+<!ENTITY saveChanges.label "Xong">
+<!ENTITY undoChanges.label "Hoàn tác các thay đổi">
diff --git a/l10n-vi/mail/chrome/messenger/customizeToolbar.properties b/l10n-vi/mail/chrome/messenger/customizeToolbar.properties
new file mode 100644
index 0000000000..d90c4f85ee
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Thanh công cụ mới
+enterToolbarName=Nhập tên của thanh công cụ này:
+enterToolbarDup=Đã có thanh công cụ với tên “%S”. Hãy nhập tên khác.
+enterToolbarBlank=Bạn phải nhập tên để tạo thanh công cụ mới.
+separatorTitle=Dấu phân cách
+springTitle=Khoảng cách linh động
+spacerTitle=Khoảng trống
diff --git a/l10n-vi/mail/chrome/messenger/devtools/dbgserver.dtd b/l10n-vi/mail/chrome/messenger/devtools/dbgserver.dtd
new file mode 100644
index 0000000000..1c8bb81f34
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/devtools/dbgserver.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 options.title "Tùy chọn công cụ dành cho nhà phát triển">
+<!ENTITY options.status.label "Trạng thái:">
+<!ENTITY options.port.label "Cổng:">
+<!ENTITY options.forcelocal.label "Cho phép kết nối từ các máy tính khác">
diff --git a/l10n-vi/mail/chrome/messenger/devtools/dbgserver.properties b/l10n-vi/mail/chrome/messenger/devtools/dbgserver.properties
new file mode 100644
index 0000000000..8e78657c8d
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/devtools/dbgserver.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/.
+
+options.stop.label=Dừng máy chủ công cụ phát triển
+options.start.label=Khởi động máy chủ công cụ phát triển
+
+options.connected.label=#1 máy khách đã kết nối
+options.connected.tooltip=Máy chủ công cụ phát triển đang chạy và có các máy khách được kết nối.
+options.listening.label=Đang nghe
+options.listening.tooltip=Máy chủ công cụ phát triển đang chạy và chờ kết nối.
+options.idle.label=Không chạy
+options.idle.tooltip=Máy chủ công cụ phát triển không chạy. Bạn có thể bắt đầu nó từ hộp thoại này.
+options.unsupported.label=Không được hỗ trợ
+options.unsupported.tooltip=Đã xảy ra lỗi khi tải máy chủ công cụ dành cho nhà phát triển tích hợp. Hãy chắc chắn rằng nó được đóng gói và kiểm tra bảng điều khiển lỗi của bạn cho các thông báo.
diff --git a/l10n-vi/mail/chrome/messenger/downloadheaders.dtd b/l10n-vi/mail/chrome/messenger/downloadheaders.dtd
new file mode 100644
index 0000000000..22b0a7caf2
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/downloadheaders.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 all.label "Tải xuống tất cả tiêu đề">
+<!ENTITY all.accesskey "D">
+<!--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 "Tải xuống">
+<!ENTITY download.accesskey "o">
+<!--LOCALIZATION NOTE (headers.label): see note for download.label -->
+<!ENTITY headers.label "tiêu đề">
+<!ENTITY headers.accesskey "h">
+<!ENTITY mark.label "Đánh dấu các tiêu đề còn lại là đã đọc">
+<!ENTITY mark.accesskey "M">
diff --git a/l10n-vi/mail/chrome/messenger/editContactOverlay.dtd b/l10n-vi/mail/chrome/messenger/editContactOverlay.dtd
new file mode 100644
index 0000000000..3ff2a2e5d4
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Xóa">
+<!ENTITY editContactPanelDeleteContact.accesskey "l">
+
+<!ENTITY editContactName.label "Tên:">
+<!ENTITY editContactName.accesskey "N">
+
+<!ENTITY editContactEmail.label "Email:">
+<!ENTITY editContactEmail.accesskey "E">
+
+<!ENTITY editContactAddressBook.label "Sổ địa chỉ:">
+<!ENTITY editContactAddressBook.accesskey "A">
+
+<!ENTITY editContactPanelDone.label "Xong">
+<!ENTITY editContactPanelDone.accesskey "D">
+
+<!ENTITY contactMoveDisabledWarning.description "Bạn không thể thay đổi sổ địa chỉ vì tên liên hệ này nằm trong một danh sách thư.">
diff --git a/l10n-vi/mail/chrome/messenger/editContactOverlay.properties b/l10n-vi/mail/chrome/messenger/editContactOverlay.properties
new file mode 100644
index 0000000000..cd2ac91232
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Chỉnh sửa liên hệ
+viewTitle=Hiển thị Danh bạ
+
+editDetailsLabel=Chỉnh sửa chi tiết
+editDetailsAccessKey=t
+viewDetailsLabel=Hiển thị Chi tiết
+viewDetailsAccessKey=n
+
+deleteContactTitle=Xóa Danh Bạ
+deleteContactMessage=Bạn có chắc là mình muốn xóa đối tác này không?
diff --git a/l10n-vi/mail/chrome/messenger/fieldMapImport.dtd b/l10n-vi/mail/chrome/messenger/fieldMapImport.dtd
new file mode 100644
index 0000000000..ead42007f7
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tiếp">
+<!ENTITY fieldMapImport.next.accesskey "i">
+<!ENTITY fieldMapImport.previous.label "Trước">
+<!ENTITY fieldMapImport.previous.accesskey "r">
+<!ENTITY fieldMapImport.text "Sử dụng chuyển lên và chuyển xuống để các trường trong sổ địa chỉ ở bên trái phù hợp với dữ liệu chính xác cho việc nhập ở bên phải. Bỏ chọn các mục mà bạn không muốn nhập.">
+<!ENTITY fieldMapImport.up.label "Di chuyển lên">
+<!ENTITY fieldMapImport.up.accesskey "L">
+<!ENTITY fieldMapImport.down.label "Di chuyển xuống">
+<!ENTITY fieldMapImport.down.accesskey "X">
+<!ENTITY fieldMapImport.fieldListTitle "Các trường của sổ địa chỉ">
+<!ENTITY fieldMapImport.dataTitle "Dữ liệu bản ghi cần nhập">
+<!ENTITY fieldMapImport.skipFirstRecord.label "Bản ghi đầu tiên chứa các tên trường">
+<!ENTITY fieldMapImport.skipFirstRecord.accessKey "B">
diff --git a/l10n-vi/mail/chrome/messenger/filter.properties b/l10n-vi/mail/chrome/messenger/filter.properties
new file mode 100644
index 0000000000..28b94ae09e
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Bạn phải chọn một thư mục đích.
+enterValidEmailAddress=Nhập một địa chỉ e-mail hợp lệ để chuyển tiếp tới.
+pickTemplateToReplyWith=Chọn một thư mẫu để trả lời.
+mustEnterName=Bạn phải đặt tên cho bộ lọc này.
+cannotHaveDuplicateFilterTitle=Trùng lặp tên bộ lọc
+cannotHaveDuplicateFilterMessage=Tên bộ lọc đã tồn tại. Vui lòng nhập tên bộ lọc khác.
+mustHaveFilterTypeTitle=Không có sự kiện bộ lọc nào được chọn
+mustHaveFilterTypeMessage=Bạn phải chọn ít nhất một sự kiện khi bộ lọc này được áp dụng. Nếu bạn tạm thời không muốn bộ lọc chạy ở bất kỳ sự kiện nào, hãy bỏ chọn trạng thái được bật từ hộp thoại bộ lọc thư.
+deleteFilterConfirmation=Bạn có chắc là bạn muốn xóa bộ lọc đã chọn không?
+matchAllFilterName=Khớp tất cả thư
+filterListBackUpMsg=Bộ lọc của bạn không hoạt động vì tập tin msgFilterRules.dat, nơi chứa bộ lọc của bạn, không thể đọc được. Một tập tin msgFilterRules.dat mới sẽ được tạo và một bản sao lưu của tập tin cũ, có tên rulesbackup.dat, sẽ được tạo trong cùng thư mục.
+customHeaderOverflow=Bạn đã vượt quá giới hạn 50 đầu đề tùy biến. Vui lòng xóa bớt đầu đề và thử lại.
+filterCustomHeaderOverflow=Bộ lọc của bạn đã vượt quá giới hạn 50 đầu đề tùy biến. Vui lòng chỉnh sửa tập tin msgFilterRules.dat, nơi chứa bộ lọc của bạn, để dùng ít đầu đề hơn.
+invalidCustomHeader=Một trong số các bộ lọc của bạn dùng một đầu đề tùy biến có chứa một kí tự bất hợp lệ, có thể là ':', một kí tự không-in-được, một kí tự không-phải-ascii, hoặc một kí tự ascii 8 bit. Vui lòng chỉnh sửa tập tin msgFilterRules.dat, nơi chứa bộ lọc của bạn, để xóa kí tự bất hợp lệ ra khỏi các đầu đề tùy biến.
+continueFilterExecution=Thất bại khi áp dụng bộ lọc %S. Bạn có muốn tiếp tục áp dụng bộ lọc?
+promptTitle=Bộ lọc đang chạy
+promptMsg=Bạn hiện đang trong quá trình lọc thư.\nBạn có muốn tiếp tục áp dụng các bộ lọc?
+stopButtonLabel=Dừng
+continueButtonLabel=Tiếp tục
+# LOCALIZATION NOTE(cannotEnableIncompatFilter)
+# %S=the name of the application
+cannotEnableIncompatFilter=Bộ lọc này có thể được tạo bởi phiên bản mới hơn hoặc không tương thích với %S. Bạn không thể kích hoạt bộ lọc này vì chúng tôi không biết cách áp dụng nó.
+dontWarnAboutDeleteCheckbox=Đừng hỏi lại tôi
+# LOCALIZATION NOTE(copyToNewFilterName)
+# %S=the name of the filter that is being copied
+copyToNewFilterName=Bản sao của %S
+# LOCALIZATION NOTE(contextPeriodic.label): Semi-colon list of plural forms.
+# #1=the number of minutes
+contextPeriodic.label=Định kỳ, sau #1 phút
+
+# LOCALIZATION NOTE(filterFailureWarningPrefix)
+# %1$S=filter error action
+# %2$S=error code as hexadecimal string.
+filterFailureWarningPrefix=Hành động lọc không thành công: "%1$S" với mã lỗi=%2$S trong khi thử:
+filterFailureSendingReplyError=Lỗi khi gửi trả lời
+filterFailureSendingReplyAborted=Đã hủy gửi trả lời
+filterFailureMoveFailed=Di chuyển thất bại
+filterFailureCopyFailed=Sao chép thất bại
+
+filterFailureAction=Không thể áp dụng hành động lọc
+
+searchTermsInvalidTitle=Thuật ngữ tìm kiếm không hợp lệ
+# LOCALIZATION NOTE(searchTermsInvalidRule)
+# %1$S=search attribute name from the invalid rule
+# %2$S=search operator from the bad rule
+searchTermsInvalidRule=Bộ lọc này không thể được lưu vì thuật ngữ tìm kiếm "%1$S %2$S" không hợp lệ trong ngữ cảnh hiện tại.
+# LOCALIZATION NOTE(filterActionOrderExplanation)
+# Keep the \n\n that mean 2 linebreaks.
+filterActionOrderExplanation=Khi một thông báo khớp với bộ lọc này, các hành động sẽ được chạy theo thứ tự này:\n\n
+filterActionOrderTitle=Lệnh hành động thực sự
+## 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 của %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 mục
+# for junk mail logging / mail filter logging
+# LOCALIZATION NOTE(junkLogDetectStr)
+# %1$S=author, %2$S=subject, %3$S=date
+junkLogDetectStr=Phát hiện thư rác từ %1$S - %2$S lúc %3$S
+# LOCALIZATION NOTE(logMoveStr)
+# %1$S=message id, %2$S=folder URI
+logMoveStr=đã di chuyển thư id = %1$S tới %2$S
+# LOCALIZATION NOTE(logCopyStr)
+# %1$S=message id, %2$S=folder URI
+logCopyStr=đã sao chép thư id = %1$S đến %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=Thông báo từ bộ lọc "%1$S": %2$S
+# LOCALIZATION NOTE(filterLogDetectStr)
+# %1$S=filter name %2$S=author, %3$S=subject, %4$S=date
+filterLogDetectStr=Đã áp dụng bộ lọc "%1$S" vào thư từ %2$S - %3$S vào lúc %4$S
+filterMissingCustomAction=Thiếu hành động tùy chỉnh
+filterAction2=mức ưu tiên đã thay đổi
+filterAction3=đã xóa
+filterAction4=đã đánh dấu là đã đọc
+filterAction5=chủ đề đã xóa
+filterAction6=chủ đề đã xem
+filterAction7=đã gắn dấu sao
+filterAction8=đã dán nhãn
+filterAction9=đã trả lời
+filterAction10=đã chuyển tiếp
+filterAction11=thực thi bị dừng
+filterAction12=đã xóa khỏi máy chủ POP3
+filterAction13=để trên máy chủ POP3
+filterAction14=điểm số thư rác
+filterAction15=nội dung được lấy từ máy chủ POP3
+filterAction16=đã sao chép vào thư mục
+filterAction17=đã dán nhãn
+filterAction18=chủ đề con đã bỏ qua
+filterAction19=đánh dấu là chưa đọc
+# 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/l10n-vi/mail/chrome/messenger/folderProps.dtd b/l10n-vi/mail/chrome/messenger/folderProps.dtd
new file mode 100644
index 0000000000..0ed5ba5115
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thuộc tính">
+
+<!ENTITY generalInfo.label "Thông tin Tổng quát">
+<!ENTITY folderRebuildSummaryFileTip2.label "Xây dựng lại Chỉ số Tập tin Tóm tắt">
+<!ENTITY folderRebuildSummaryFile2.label "Sửa thư mục">
+<!ENTITY folderRebuildSummaryFile2.accesskey "S">
+<!ENTITY folderRebuildSummaryFile.explanation "Đôi khi tập tin chỉ mục của thư mục (.msf) bị hư và thư tin trông có thể như bị biến mất hoặc các thư tin đã xóa lại hiện ra; sửa thư mục có thể khắc phục các vấn đề này.">
+<!ENTITY folderIncludeInGlobalSearch.label "Bao gồm thư tin trong thư mục này trong kết quả Tìm kiếm Bao quát">
+<!ENTITY folderIncludeInGlobalSearch.accesskey "g">
+
+<!ENTITY retention.label "Chính sách Sử dụng">
+<!ENTITY retentionUseAccount.label "Sử dụng thiết lập tài khoản của tôi">
+<!ENTITY retentionUseAccount.accesskey "S">
+<!ENTITY daysOld.label "ngày">
+<!ENTITY message.label "thư mới nhất">
+<!ENTITY retentionCleanup.label "Để khôi phục dung lượng đĩa, thư cũ sẽ bị xóa.">
+<!ENTITY retentionCleanupImap.label "Để khôi phục dung lượng đĩa, thư cũ có thể bị xóa vĩnh viễn, cả bản sao trong máy lẫn bản gốc trên máy chủ.">
+<!ENTITY retentionCleanupPop.label "Để khôi phục dung lượng đĩa, thư cũ có thể bị xóa vĩnh viễn, bao gồm cả bản gốc trên máy chủ.">
+<!ENTITY retentionDeleteMsg.label "Xóa thư cũ hơn">
+<!ENTITY retentionDeleteMsg.accesskey "a">
+<!ENTITY retentionKeepAll.label "Không xóa bất kì thư nào">
+<!ENTITY retentionKeepAll.accesskey "K">
+<!ENTITY retentionKeepRecent.label "Xóa tất cả trừ gần đây">
+<!ENTITY retentionKeepRecent.accesskey "g">
+<!ENTITY retentionApplyToFlagged.label "Luôn luôn giữ lại thư gắn sao">
+<!ENTITY retentionApplyToFlagged.accesskey "s">
+
+<!ENTITY folderSynchronizationTab.label "Đồng bộ hóa">
+<!ENTITY folderCheckForNewMessages2.label "Khi lấy thư tin mới cho tài khoản này, luôn luôn kiểm tra thư mục này">
+<!ENTITY folderCheckForNewMessages2.accesskey "K">
+
+<!ENTITY offlineFolder.check.label "Chọn thư mục này để dùng ngoại tuyến">
+<!ENTITY offlineFolder.check.accesskey "C">
+<!ENTITY offlineFolder.button.label "Tải ngay">
+<!ENTITY offlineFolder.button.accesskey "T">
+
+<!ENTITY selectofflineNewsgroup.check.label "Chọn nhóm tin để dùng ngoại tuyến">
+<!ENTITY selectofflineNewsgroup.check.accesskey "o">
+<!ENTITY offlineNewsgroup.button.label "Tải ngay">
+<!ENTITY offlineNewsgroup.button.accesskey "i">
+
+<!ENTITY folderProps.name.label "Tên:">
+<!ENTITY folderProps.name.accesskey "T">
+<!ENTITY folderProps.color.label "Màu biểu tượng:">
+<!ENTITY folderProps.color.accesskey "I">
+<!ENTITY folderProps.reset.tooltip "Khôi phục màu mặc định">
+<!ENTITY folderProps.location.label "Địa chỉ:">
+<!ENTITY folderProps.location.accesskey "a">
+
+<!ENTITY folderSharingTab.label "Chia sẻ">
+<!ENTITY privileges.button.label "Quyền hạn…">
+<!ENTITY privileges.button.accesskey "Q">
+<!ENTITY permissionsDesc.label "Bạn có những quyền sau:">
+<!ENTITY folderOtherUsers.label "Những người khác có quyền truy cập vào thư mục này:">
+<!ENTITY folderType.label "Kiểu Thư Mục:">
+
+<!ENTITY folderQuotaTab.label "Hạn mức">
+<!ENTITY folderQuotaUsage.label "Sử dụng:">
+<!ENTITY folderQuotaStatus.label "Trạng thái:">
+
+<!ENTITY numberOfMessages.label "Số lượng tin nhắn:">
+<!-- LOCALIZATION NOTE: When the number of messages can't be determined, this string is displayed as the number -->
+<!ENTITY numberUnknown.label "không rõ">
+<!ENTITY sizeOnDisk.label "Kích thước trên ổ đĩa:">
+<!-- LOCALIZATION NOTE: When the size can't be determined, this string is displayed as the size -->
+<!ENTITY sizeUnknown.label "không rõ">
diff --git a/l10n-vi/mail/chrome/messenger/folderWidgets.properties b/l10n-vi/mail/chrome/messenger/folderWidgets.properties
new file mode 100644
index 0000000000..f3f71cdc37
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Hộp thư đến công khai (%S)
+# LOCALIZATION NOTE(verboseFolderFormat): %1$S is folder name, %2$S is server name
+verboseFolderFormat=%1$S trên %2$S
+chooseFolder=Chọn thư mục…
+chooseAccount=Chọn tài khoản…
+noFolders=Không có thư mục có sẵn
diff --git a/l10n-vi/mail/chrome/messenger/folderpane.dtd b/l10n-vi/mail/chrome/messenger/folderpane.dtd
new file mode 100644
index 0000000000..373ee6c78f
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tên">
+<!ENTITY unreadColumn.label "Chưa đọc">
+<!ENTITY totalColumn.label "Tổng">
+<!ENTITY folderSizeColumn.label "Kích thước">
diff --git a/l10n-vi/mail/chrome/messenger/gloda.properties b/l10n-vi/mail/chrome/messenger/gloda.properties
new file mode 100644
index 0000000000..dedb0567e7
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tài khoản
+gloda.message.attr.account.includeLabel=được lưu trữ trong bất kỳ của:
+gloda.message.attr.account.excludeLabel=không được lưu trữ trong:
+gloda.message.attr.account.remainderLabel=các tài khoản khác:
+gloda.message.attr.account.mustMatchLabel=phải trong #1
+gloda.message.attr.account.cantMatchLabel=không thể trong #1
+
+# LOCALIZATION NOTE (gloda.message.attr.folder.*): Stores the message folder in
+# which the message is stored.
+gloda.message.attr.folder.facetNameLabel=Thư mục
+gloda.message.attr.folder.includeLabel=được lưu trữ trong bất kỳ:
+gloda.message.attr.folder.excludeLabel=không được lưu trữ trong:
+gloda.message.attr.folder.remainderLabel=các thư mục khác:
+gloda.message.attr.folder.mustMatchLabel=phải trong #1
+gloda.message.attr.folder.cantMatchLabel=không thể trong #1
+
+# LOCALIZATION NOTE (gloda.message.attr.fromMe.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.fromMe.facetNameLabel=Từ Tôi
+
+# LOCALIZATION NOTE (gloda.message.attr.toMe.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.toMe.facetNameLabel=Tới Tôi
+
+# LOCALIZATION NOTE (gloda.message.attr.involves.*): Stores everyone involved
+# with the message. This means from/to/cc/bcc.
+gloda.message.attr.involves.facetNameLabel=Người khác
+gloda.message.attr.involves.includeLabel=bao gồm bất kì:
+gloda.message.attr.involves.excludeLabel=không bao gồm:
+gloda.message.attr.involves.remainderLabel=thuộc tính khác:
+gloda.message.attr.involves.mustMatchLabel=phải bao gồm #1
+gloda.message.attr.involves.cantMatchLabel=không thể bao gồm #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=Ngày
+
+# 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=Đính kèm
+
+# 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=Danh sách thư
+gloda.message.attr.mailing-list.noneLabel=Không có
+gloda.message.attr.mailing-list.includeLabel=nhận được trên bất kỳ của:
+gloda.message.attr.mailing-list.excludeLabel=không nhận được trên bất kỳ của:
+gloda.message.attr.mailing-list.remainderLabel=danh sách gửi thư khác:
+gloda.message.attr.mailing-list.mustMatchLabel=phải trong #1
+gloda.message.attr.mailing-list.cantMatchLabel=không thể trong #1
+gloda.message.attr.mailing-list.mustMatchSomeLabel=phải trong một danh sách thư
+gloda.message.attr.mailing-list.mustMatchNoneLabel=không thể trong một danh sách thư
+
+# 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=Nhãn
+gloda.message.attr.tag.noneLabel=Không có
+gloda.message.attr.tag.includeLabel=được gắn thẻ bất kỳ của:
+gloda.message.attr.tag.excludeLabel=không được gắn thẻ:
+gloda.message.attr.tag.remainderLabel=các thẻ khác:
+gloda.message.attr.tag.mustMatchLabel=phải được dán nhãn #1
+gloda.message.attr.tag.cantMatchLabel=không thể được dán nhãn #1
+gloda.message.attr.tag.mustMatchSomeLabel=phải được dán nhãn
+gloda.message.attr.tag.mustMatchNoneLabel=không thể được dán nhãn
+
+# 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=Gắn sao
+
+# LOCALIZATION NOTE (gloda.message.attr.read.*): Stores whether the user has
+# read the message or not.
+gloda.message.attr.read.facetNameLabel=Đã đọc
+
+# 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=Đã trả lời Tới
+
+# 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=Đã chuyển tiếp
+
+# 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=Lưu trữ
+gloda.mimetype.category.documents.label=Tài liệu
+gloda.mimetype.category.images.label=Hình ảnh
+# 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=Đa phương tiện (Âm thanh, Đoạn phim)
+gloda.mimetype.category.pdf.label=Tập tin 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=Khác
diff --git a/l10n-vi/mail/chrome/messenger/glodaComplete.properties b/l10n-vi/mail/chrome/messenger/glodaComplete.properties
new file mode 100644
index 0000000000..ee981d3d2a
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tin nhắn được gắn nhãn: #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=Các thư có nói đến: #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=Các thư có nói đến: #1
diff --git a/l10n-vi/mail/chrome/messenger/glodaFacetView.dtd b/l10n-vi/mail/chrome/messenger/glodaFacetView.dtd
new file mode 100644
index 0000000000..77ae12b5e4
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Bộ lọc">
+
+<!-- LOCALIZATION NOTE (glodaFacetView.loading.label): Label that appears when
+ the search results take a long time to appear. -->
+<!ENTITY glodaFacetView.loading.label "Đang tìm&#8230;">
+
+<!-- LOCALIZATION NOTE (glodaFacetView.empty.label): Label that appears when
+ there are no results that match the search query. -->
+<!ENTITY glodaFacetView.empty.label "Không có thư nào khớp với tìm kiếm của bạn">
+
+<!-- LOCALIZATION NOTE (glodaFacetView.pageMore.label): Label at the bottom
+ of the results list to show more hits. -->
+<!ENTITY glodaFacetView.pageMore.label "Thêm &#187;">
+
+<!-- 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 "Hiển thị kết quả dưới dạng danh sách">
+
+<!-- LOCALIZATION NOTE(glodaFacetView.results.message.openEmailAsList.tooltip):
+ The tooltip to display when hovering over the openEmailAsList label. -->
+<!ENTITY glodaFacetView.openEmailAsList.tooltip "Hiển thị tất cả các thông báo email trong bộ hoạt động trong thẻ mới">
diff --git a/l10n-vi/mail/chrome/messenger/glodaFacetView.properties b/l10n-vi/mail/chrome/messenger/glodaFacetView.properties
new file mode 100644
index 0000000000..e60ab46873
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tìm kiếm
+
+# 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=Tìm kiếm
+
+# 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=Kết quả cho:
+
+# 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=Đang tìm #1
+glodaFacetView.constraints.query.fulltext.andJoinWord=và
+glodaFacetView.constraints.query.fulltext.orJoinWord=hoặc
+
+# 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=Đang tìm thư
+
+# 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=bao gồm #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=được dán nhãn:
+
+
+# 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=Liệt kê tất cả #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=bao gồm bất kì:
+# 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=không bao gồm:
+# 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=khác:
+
+# 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=phải khớp #1
+glodaFacetView.facets.mustMatchNoneLabel.fallbackLabel=không thể có một giá trị
+
+# 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=không thể khớp #1
+glodaFacetView.facets.mustMatchSomeLabel.fallbackLabel=phải có một giá trị
+
+# 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=xóa ràng buộc
+glodaFacetView.facets.mayMatchAnyLabel.fallbackLabel=xóa ràng buộc
+
+# 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=Không
+
+# LOCALIZATION NOTE (glodaFacetView.facets.filter.attachmentTypes.allLabel):
+# The label to use when all types of attachments are being displayed.
+glodaFacetView.facets.filter.attachmentTypes.allLabel=Bất kì Loại nào
+
+# 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=từ:
+
+# 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=tới:
+
+# 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=(không tiêu đề)
+
+# 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
+# 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=của #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=Chuyển đổi dòng thời gian
+# 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=Sắp xếp theo sự liên quan
+# 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=Sắp xếp theo ngày
+
+# 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=, và #1 khác
diff --git a/l10n-vi/mail/chrome/messenger/imAccountWizard.dtd b/l10n-vi/mail/chrome/messenger/imAccountWizard.dtd
new file mode 100644
index 0000000000..eb3ae5e98f
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Trình kết nối tài khoản trò chuyện">
+
+<!ENTITY accountProtocolTitle.label "Mạng trò chuyện">
+<!ENTITY accountProtocolInfo.label "Vui lòng chọn mạng của tài khoản trò chuyện của bạn.">
+<!ENTITY accountProtocolField.label "Mạng:">
+<!ENTITY accountProtocolGetMore.label "Nhận thêm…">
+
+<!ENTITY accountUsernameTitle.label "Tên đăng nhập">
+<!ENTITY accountUsernameDuplicate.label "Tài khoản này đã được cấu hình!">
+
+<!ENTITY accountPasswordTitle.label "Mật khẩu">
+<!ENTITY accountPasswordInfo.label "Vui lòng nhập mật khẩu của bạn vào ô bên dưới.">
+<!ENTITY accountPasswordField.label "Mật khẩu:">
+<!ENTITY accountPasswordManager.label "Mật khẩu được nhập vào đây sẽ được lưu trong trình quản lý mật khẩu. Để trống ô này nếu bạn muốn được nhắc nhập mật khẩu mỗi khi tài khoản này được kết nối.">
+
+<!ENTITY accountAdvancedTitle.label "Tùy chọn nâng cao">
+<!ENTITY accountAdvancedInfo.label "Hãy bỏ qua bước này nếu bạn muốn.">
+<!ENTITY accountAdvanced.newMailNotification.label "Thông báo thư mới">
+<!ENTITY accountAliasGroupbox.caption "Bí danh cục bộ">
+<!ENTITY accountAliasField.label "Bí danh:">
+<!ENTITY accountAliasInfo.label "Điều này sẽ chỉ được hiển thị trong các cuộc hội thoại của bạn khi bạn nói chuyện, những người liên lạc từ xa sẽ không nhìn thấy nó.">
+<!ENTITY accountProxySettings.caption "Cài đặt proxy">
+<!ENTITY accountProxySettings.change.label "Thay đổi…">
+<!ENTITY accountProxySettings.change.accessKey "C">
+
+<!ENTITY accountSummaryTitle.label "Tóm tắt">
+<!ENTITY accountSummaryInfo.label "Một bản tóm tắt các thông tin bạn đã nhập được hiển thị dưới đây. Vui lòng kiểm tra nó trước khi tài khoản được tạo.">
+<!ENTITY accountSummary.connectNow.label "Kết nối tài khoản này ngay bây giờ.">
diff --git a/l10n-vi/mail/chrome/messenger/imAccounts.properties b/l10n-vi/mail/chrome/messenger/imAccounts.properties
new file mode 100644
index 0000000000..dfbbd2457b
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tùy chọn %S
+accountUsername=Tên đăng nhập:
+# 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=Vui lòng nhập tên người dùng cho tài khoản %S của bạn.
+# LOCALIZATION NOTE (accountUsernameInfoWithDescription):
+# %1$S is a hint for the expected format of the username
+# %2$S is the name of a protocol
+accountUsernameInfoWithDescription=Vui lòng nhập tên người dùng (%1$S) cho tài khoản %2$S của bạn.
+
+# LOCALIZATION NOTE (account.connection.error):
+# %S is the error message.
+account.connection.error=Lỗi: %S
+# LOCALIZATION NOTE (account.connection.errorUnknownPrpl)
+# %S is the id (not very user friendly; hence the quotes) of the missing plugin.
+account.connection.errorUnknownPrpl=Không có phần bổ trợ giao thức '%S'.
+account.connection.errorEnteringPasswordRequired=Yêu cầu nhập mật khẩu để kết nối tài khoản này.
+account.connection.errorCrashedAccount=Một sự cố đã xảy ra khi kết nối tài khoản này.
+# LOCALIZATION NOTE (account.connection.progress):
+# %S is a message indicating progress of the connection process
+account.connection.progress=Đang kết nối: %S…
+account.connecting=Đang kết nối…
+account.connectedForSeconds=Đã kết nối trong vài giây.
+# 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=Đã kết nối với %1$S %2$S và %3$S %4$S.
+account.connectedForSingle=Đã kết nối với %1$S %2$S.
+account.reconnectInDouble=Kết nối lại trong %1$S %2$S và %3$S %4$S.
+account.reconnectInSingle=Kết nối lại trong %1$S %2$S.
+
+requestAuthorizeTitle=Yêu cầu ủy quyền
+# LOCALIZATION NOTE (requestAuthorizeAllow, requestAuthorizeDeny):
+# the & symbol indicates the position of the character that should be
+# used as the accesskey for this button.
+requestAuthorizeAllow=&Cho phép
+requestAuthorizeDeny=%Từ chối
+# LOCALIZATION NOTE (requestAuthorizeText):
+# %S is a contact username.
+requestAuthorizeText=%S đã thêm bạn vào danh sách bạn bè của anh ấy/cô ấy, bạn có muốn cho phép anh ấy/cô ấy gặp bạn không?
+
+accountsManager.notification.button.accessKey=C
+accountsManager.notification.button.label=Kết nối ngay
+accountsManager.notification.userDisabled.label=Bạn đã tắt kết nối tự động.
+accountsManager.notification.safeMode.label=Cài đặt kết nối tự động đã bị bỏ qua vì ứng dụng hiện đang chạy ở chế độ an toàn.
+accountsManager.notification.startOffline.label=Cài đặt kết nối tự động đã bị bỏ qua vì ứng dụng đã được khởi động ở chế độ ngoại tuyến.
+accountsManager.notification.crash.label=Lần chạy cuối cùng bất ngờ thoát ra trong khi kết nối. Kết nối tự động đã bị vô hiệu hóa để cung cấp cho bạn chỉnh sửa cài đặt của bạn.
+# LOCALIZATION NOTE (accountsManager.notification.singleCrash.label): Semi-colon list of plural forms.
+# See: https://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=Lần chạy trước đó đã thoát đột ngột trong khi kết nối #1 tài khoản mới hoặc tài khoản đã chỉnh sửa. Họ chưa được kết nối để bạn có thể sửa cài đặt của họ.
+accountsManager.notification.other.label=Kết nối tự động đã bị vô hiệu hóa.
diff --git a/l10n-vi/mail/chrome/messenger/imapMsgs.properties b/l10n-vi/mail/chrome/messenger/imapMsgs.properties
new file mode 100644
index 0000000000..02b97b837f
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/imapMsgs.properties
@@ -0,0 +1,268 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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=Thông báo cho tài khoản %S
+
+# Status - opening folder
+imapStatusSelectingMailbox=Đang mở thư mục %S…
+
+# Status - create folder
+imapStatusCreatingMailbox=Đang tạo thư mục…
+
+# 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=Đang xóa thư mục %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=Đang đổi tên thư mục %S…
+
+# Status - looking for mailboxes
+imapStatusLookingForMailbox=Đang tìm các thư mục…
+
+# 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=Đang đăng ký vào thư mục %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=Đang hủy đăng ký khỏi thư mục %S…
+
+# Status - searching imap folder
+imapStatusSearchMailbox=Đang tìm kiếm thư mục…
+
+# Status - closing a folder
+imapStatusCloseMailbox=Đang đóng thư mục…
+
+# Status - compacting a folder
+imapStatusExpungingMailbox=Đang làm gọn thư mục…
+
+# Status - logging out
+imapStatusLoggingOut=Đang đăng xuất…
+
+# Status - checking server capabilities
+imapStatusCheckCompat=Đang kiểm tra khả năng của máy chủ thư…
+
+# Status - logging on
+imapStatusSendingLogin=Đang gửi thông tin đăng nhập…
+
+# Status - auth logon
+imapStatusSendingAuthLogin=Đang gửi thông tin đăng nhập…
+
+imapDownloadingMessage=Đang tải thư…
+
+# LOCALIZATION NOTE (imapGettingACLForFolder): Do not translate the word "ACL" below.
+imapGettingACLForFolder=Đang nhận thư mục ACL…
+
+imapGettingServerInfo=Đang nhận thông tin cấu hình từ máy chủ…
+
+imapGettingMailboxInfo=Đang nhận thông tin cấu hình hộp thư…
+
+imapEmptyMimePart=Phần thân này sẽ được tải xuống theo yêu cầu.
+
+# 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=Đang tải xuống tiêu đề thư %1$S/%2$S trong %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=Đang tải xuống cờ thư %1$S/%2$S trong %3$S…
+
+imapDeletingMessages=Đang xóa thư…
+
+imapDeletingMessage=Đang xóa thư…
+
+# 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=Đang di chuyển thư đến %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=Đang di chuyển thư đến %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=Đang sao chép thư vào %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=Đang sao chép thư vào %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=Đang tải xuống thư %1$S của %2$S trong %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=Đã tìm thấy thư mục: %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=Nhập mật khẩu cho %1$S trên %2$S:
+
+# LOCALIZATION NOTE (imapServerNotImap4): Do not translate the word "IMAP4" below.
+imapServerNotImap4=Máy chủ thư %S không phải là máy chủ thư 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=Nhập mật khẩu của bạn cho %1$S
+
+imapUnknownHostError=Không thể kết nối với máy chủ %S.
+imapOAuth2Error=Lỗi xác thực trong khi kết nối với máy chủ %S.
+
+imapConnectionRefusedError=Không thể kết nối với máy chủ thư %S; kết nối đã bị từ chối.
+
+imapNetTimeoutError=Đã hết thời gian kết nối tới máy chủ %S.
+
+imapTlsError=Đã xảy ra lỗi TLS không thể ghi đè. Lỗi handshake hoặc có thể là phiên bản hoặc chứng chỉ TLS được sử dụng bởi máy chủ %S không tương thích.
+
+# Status - no messages to download
+imapNoNewMessages=Không có thư mới trên máy chủ.
+
+imapDefaultAccountName=Thư của %S
+
+imapSpecialChar2=Ký tự %S được dành riêng trên máy chủ imap này. Vui lòng chọn một tên khác.
+
+imapPersonalSharedFolderTypeName=Thư mục cá nhân
+
+imapPublicFolderTypeName=Thư mục công cộng
+
+imapOtherUsersFolderTypeName=Thư mục người dùng khác
+
+imapPersonalFolderTypeDescription=Đây là một thư mục thư cá nhân. Nó không được chia sẻ.
+
+imapPersonalSharedFolderTypeDescription=Đây là một thư mục thư cá nhân. Nó đã được chia sẻ.
+
+imapPublicFolderTypeDescription=Đây là một thư mục công cộng.
+
+imapOtherUsersFolderTypeDescription=Đây là thư mục thư được chia sẻ bởi người dùng '%S'.
+
+imapAclFullRights=Kiểm soát hoàn toàn
+
+imapAclLookupRight=Tra cứu
+
+imapAclReadRight=Đọc
+
+imapAclSeenRight=Đặt trạng thái đọc/chưa đọc
+
+imapAclWriteRight=Ghi
+
+imapAclInsertRight=Chèn (Sao chép vào)
+
+imapAclPostRight=Bài đăng
+
+imapAclCreateRight=Tạo thư mục con
+
+imapAclDeleteRight=Xóa thư
+
+imapAclAdministerRight=Thư mục quản trị
+
+imapServerDoesntSupportAcl=Máy chủ này không hỗ trợ các thư mục chia sẻ.
+
+imapAclExpungeRight=Hết hạn
+
+imapServerDisconnected= Máy chủ %S đã ngắt kết nối. Máy chủ có thể đã bị hỏng hoặc có thể có sự cố mạng.
+
+# LOCALIZATION NOTE (autoSubscribeText): %1$S is the imap folder.
+imapSubscribePrompt=Bạn có muốn đăng kí %1$S?
+
+imapServerDroppedConnection=Không thể kết nối với máy chủ IMAP của bạn. Bạn có thể đã vượt quá số lượng kết nối tối đa \
+đến máy chủ này. Nếu đúng như vậy, hãy sử dụng hộp thoại Cài đặt máy chủ IMAP nâng cao \
+để giảm số lượng kết nối được lưu trong bộ nhớ đệm.
+
+# 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=Thông tin hạn ngạch không có sẵn vì thư mục không được mở.
+
+# The imap capability response reports that QUOTA is not supported.
+imapQuotaStatusNotSupported=Máy chủ này không hỗ trợ hạn ngạch.
+
+# The getqutaroot command succeeded but reported no quota information.
+imapQuotaStatusNoQuota2=Thư mục này báo cáo không có thông tin hạn ngạch.
+
+# Folder properties were requested by the user (right-click) before the getquotaroot
+# command was sent.
+imapQuotaStatusInProgress=Thông tin hạn ngạch chưa có sẵn.
+
+# Out of memory
+imapOutOfMemory=Ứng dụng đã hết bộ nhớ.
+
+# 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=Đang sao chép thư %1$S của %2$S sang %3$S…
+
+# LOCALIZATION NOTE (imapMoveFolderToTrash): Do not translate the word %S below.
+# "%S" is the the name of the folder.
+imapMoveFolderToTrash=Bạn có chắc chắn muốn xóa thư mục '%S' không?
+
+# LOCALIZATION NOTE (imapDeleteNoTrash): Do not translate the word %S below.
+# "%S" is the the name of the folder.
+imapDeleteNoTrash=Không thể hoàn tác sau khi xóa thư mục này và sẽ xóa tất cả các thư mà nó chứa và các thư mục con của nó. Bạn có chắc chắn vẫn muốn xóa thư mục '%S' không?
+
+imapDeleteFolderDialogTitle=Xóa thư mục
+
+imapDeleteFolderButtonLabel=&Xóa thư mục
+
+# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainSSL): %S is the server hostname
+imapAuthChangeEncryptToPlainSSL=Máy chủ IMAP %S dường như không hỗ trợ mật khẩu được mã hóa. Nếu bạn vừa thiết lập tài khoản này, vui lòng thử thay đổi thành 'Mật khẩu thông thường' làm 'Phương thức xác thực' trong 'Cài đặt tài khoản | Cài đặt máy chủ'. Nếu nó đã từng hoạt động và bây giờ đột nhiên bị lỗi, vui lòng liên hệ với quản trị viên email hoặc nhà cung cấp của bạn.
+
+# LOCALIZATION NOTE (imapAuthChangePlainToEncrypt): %S is the server hostname
+imapAuthChangePlainToEncrypt=Máy chủ IMAP %S không cho phép mật khẩu văn bản thuần túy. Vui lòng thử thay đổi thành 'Mật khẩu được mã hóa' làm 'Phương thức xác thực' trong 'Cài đặt tài khoản | Cài đặt máy chủ'.
+
+# LOCALIZATION NOTE (imapAuthChangeEncryptToPlainNoSSL): %S is the server hostname
+imapAuthChangeEncryptToPlainNoSSL=Máy chủ IMAP %S dường như không hỗ trợ mật khẩu được mã hóa. Nếu bạn vừa thiết lập tài khoản, vui lòng thử thay đổi thành 'Mật khẩu, truyền không an toàn' làm 'Phương thức xác thực' trong 'Cài đặt tài khoản | Cài đặt máy chủ'. Nếu nó đã từng hoạt động và bây giờ bị lỗi, đây là một tình huống phổ biến về cách ai đó có thể đánh cắp mật khẩu của bạn.
+
+# LOCALIZATION NOTE (imapAuthMechNotSupported): %S is the server hostname
+imapAuthMechNotSupported=Máy chủ IMAP %S không hỗ trợ phương thức xác thực đã chọn. Vui lòng thay đổi 'Phương thức xác thực' trong 'Cài đặt tài khoản | Cài đặt máy chủ'.
+
+# LOCALIZATION NOTE (imapAuthGssapiFailed): %S is the server hostname
+imapAuthGssapiFailed=Kerberos/GSSAPI không được máy chủ IMAP %S chấp nhận. Vui lòng kiểm tra xem bạn đã đăng nhập vào Kerberos/GSSAPI chưa.
+
+# 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=Lệnh hiện tại đã không thành công. Máy chủ thư cho tài khoản %1$S đã trả lời: %2$S
+
+# 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=Hoạt động hiện tại trên '%2$S' đã không thành công. Máy chủ thư cho tài khoản %1$S đã trả lời: %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=Thông báo từ tài khoản %1$S: %2$S
diff --git a/l10n-vi/mail/chrome/messenger/importDialog.dtd b/l10n-vi/mail/chrome/messenger/importDialog.dtd
new file mode 100644
index 0000000000..785748c354
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/importDialog.dtd
@@ -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 : '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 "Nhập">
+<!ENTITY importAll.label "Nhập mọi thứ">
+<!ENTITY importAll.accesskey "E">
+<!ENTITY importMail.label "Thư">
+<!ENTITY importMail.accesskey "M">
+<!ENTITY importFeeds.label "Nguồn cấp đă đăng kí">
+<!ENTITY importFeeds.accesskey "d">
+<!ENTITY importAddressbook.label "Sổ địa chỉ">
+<!ENTITY importAddressbook.accesskey "A">
+<!ENTITY importSettings.label "Cài đặt">
+<!ENTITY importSettings.accesskey "S">
+<!ENTITY importFilters.label "Bộ lọc">
+<!ENTITY importFilters.accesskey "F">
+
+<!ENTITY importTitle.label "Trình nhập dữ liệu vào &brandShortName;">
+<!ENTITY importShortDesc.label "Nhập thư, sổ địa chỉ, cài đặt và bộ lọc từ chương trình khác">
+
+<!ENTITY importDescription1.label "Trình hướng dẫn này sẽ nhập thư, sổ địa chỉ, tùy chỉnh và/hoặc bộ lọc từ các chương trình gửi thư và các định dạng sổ địa chỉ phổ biến khác vào &brandShortName;.">
+<!ENTITY importDescription2.label "Khi chúng đã được nhập, bạn có thể truy cập chúng ngay trong &brandShortName;.">
+
+<!ENTITY selectDescription.label "Vui lòng chọn kiểu tập tin mà bạn muốn nhập:">
+<!ENTITY selectDescriptionB.label "Vui lòng chọn một tài khoản hiện có hoặc tạo một tài khoản mới:">
+<!ENTITY selectDescription.accesskey "P">
+<!ENTITY acctName.label "Tên:">
+<!ENTITY acctName.accesskey "N">
+<!ENTITY noModulesFound.label "Không tìm thấy ứng dụng hoặc tập tin để nhập dữ liệu.">
+
+<!ENTITY back.label "&lt; Quay lại">
+<!ENTITY forward.label "Tiến &gt;">
+<!ENTITY finish.label "Hoàn thành">
+<!ENTITY cancel.label "Hủy bỏ">
+
+<!ENTITY select.label "hoặc chọn các mục muốn nhập:">
+
+<!ENTITY title.label "Tiêu đề">
+<!ENTITY processing.label "Đang nhập…">
diff --git a/l10n-vi/mail/chrome/messenger/importMsgs.properties b/l10n-vi/mail/chrome/messenger/importMsgs.properties
new file mode 100644
index 0000000000..2051e8c0ce
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Không có sổ địa chỉ được tìm thấy để nhập.
+
+# Error: Address book import not initialized
+## @name IMPORT_ERROR_AB_NOTINITIALIZED
+## @loc None
+2001=Không thể nhập sổ địa chỉ: lỗi nhận dạng.
+
+# Error: Unable to create the import thread
+## @name IMPORT_ERROR_AB_NOTHREAD
+## @loc None
+2002=Không thể nhập sổ địa chỉ: không thể tạo luồng nhập.
+
+# 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=Lỗi khi nhập %S: không thể tạo sổ địa chỉ.
+
+# Success message when no mailboxes are found to import
+## @name IMPORT_NO_MAILBOXES
+## @loc None
+2004=Không tìm thấy hộp thư để nhập
+
+# Error: Mailbox import not initialized
+## @name IMPORT_ERROR_MB_NOTINITIALIZED
+## @loc None
+2005=Không thể nhập hộp thư, lỗi nhận dạng
+
+# Error: Unable to create the import thread
+## @name IMPORT_ERROR_MB_NOTHREAD
+## @loc None
+2006=Không thể nhập hộp thư, không thể tạo luồng nhập
+
+# Error: Unable to create the proxy object for importing mailboxes
+## @name IMPORT_ERROR_MB_NOPROXY
+## @loc None
+2007=Không thể nhập hộp thư, không thể tạo đối tượng proxy cho hộp thư đích
+
+# 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=Lỗi khi tạo hộp thư đích, không thể tìm thấy hộp thư %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=Lỗi khi nhập hộp thư %S, không thể tạo hộp thư đích
+
+# Error: No destination folder to import mailboxes
+## @name IMPORT_ERROR_MB_NODESTFOLDER
+## @loc None
+2010=Không thể tạo thư mục để nhập thư vào
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC_START
+## @loc None
+2100=Tên
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2101=Họ
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2102=Tên hiển thị
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2103=Tên hiệu
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2104=Email Chính
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2105=Email phụ
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2106=Điện thoại công ty
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2107=Điện thoại nhà
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2108=Số Fax
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2109=Số của Máy nhắn tin
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2110=Số Di Động
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2111=Địa chỉ Nhà
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2112=Địa chỉ Nhà 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2113=Thành phố Quê nhà
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2114=Tiểu bang Quê nhà
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2115=Mã Zip Quê nhà
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2116=Quốc gia của nơi Quê nhà
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2117=Địa chỉ Công ty
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2118=Địa chỉ Công ty 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2119=Thành phố nơi Làm việc
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2120=Tiểu bang nơi Làm việc
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2121=Mã Zip nơi Làm việc
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2122=Quốc gia nơi Làm việc
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2123=Chức vụ Nghề nghiệp
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2124=Bộ phận
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2125=Tổ chức
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2126=Trang Web 1
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2127=Trang Web 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2128=Năm Sinh
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2129=Tháng Sinh
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2130=Ngày Sinh
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2131=Tùy chỉnh 1
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2132=Tùy chỉnh 2
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2133=Tùy chỉnh 3
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2134=Tùy chỉnh 4
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC
+## @loc None
+2135=Lưu ý
+
+# Description: Address book field name
+## @name IMPORT_FIELD_DESC_END
+## @loc None
+2136=Tên Screen
+
+#Error strings
+ImportAlreadyInProgress=Một thao tác nhập đang tiến hành. Hãy thử lại khi tiến trình nhập hiện tại đã hoàn thành.
+
+#Error strings for settings import
+ImportSettingsBadModule=Không thể nạp module thiết lập
+ImportSettingsNotFound=Không thể tìm thiết lập. Hãy kiểm tra để chắc chắn rằng chương trình đã được cài trên máy.
+ImportSettingsFailed=Một lỗi xảy ra trong khi nhập thiết lập. Một số hoặc tất cả các thiết lập có thể đã chưa được nhập.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportSettingsSuccess=Thiết lập được nhập từ %S
+
+#Error string for mail import
+ImportMailBadModule=Không thể nạp module nhập thư
+ImportMailNotFound=Không thể tìm thấy thư để nhập. Hãy kiểm tra để chắc chắn rằng chương trình đã được cài trên máy.
+ImportEmptyAddressBook=Không thể nhập sổ địa chỉ rỗng %S.
+# LOCALIZATION NOTE: Do not translate the word "%S" below.
+ImportMailFailed=Một lỗi xảy ra trong khi nhập thư từ %S
+# LOCALIZATION NOTE: Do not translate the word "%S" below.
+ImportMailSuccess=Thư đã được nhập thành công từ %S
+
+# Error string for address import
+ImportAddressBadModule=Không thể nạp module nhập sổ địa chỉ.
+ImportAddressNotFound=Không tìm thấy sổ địa chỉ để nhập. Hãy kiểm tra để chắc chắn rằng chương trình đã được cài trên máy.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportAddressFailed=Một lỗi xảy ra trong khi nhập địa chỉ từ %S.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+ImportAddressSuccess=Địa chỉ đã được nhập thành công từ %S.
+
+# Error string for filters import
+ImportFiltersBadModule=Không thể nạp module nhập bộ lọc.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersFailed=Một lỗi xảy ra trong khi nhập bộ lọc từ %S.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersSuccess=Bộ lọc đã được nhập thành công từ %S.
+# LOCALIZATION NOTE : The %S will get replaced by the name of the import module.
+ImportFiltersPartial=Bộ lọc đã được nhập một phần từ %S. Cảnh báo ở bên dưới:
+
+#Progress strings
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+MailProgressMeterText=Đang chuyển đổi hộp thư từ %S
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+AddrProgressMeterText=Đang chuyển đổi sổ địa chỉ từ %S
+
+#Import file dialog strings
+ImportSelectSettings=Chọn tập tin thiết lập
+ImportSelectMailDir=Chọn thư mục thư
+ImportSelectAddrDir=Chọn thư mục sổ địa chỉ
+ImportSelectAddrFile=Chọn tập tin sổ địa chỉ
+
+# Folder Names for imported Mail
+DefaultFolderName=Thư được Nhập
+# LOCALIZATION NOTE: Do not translate the word "%S" below.
+ImportModuleFolderName=%S Nhập
diff --git a/l10n-vi/mail/chrome/messenger/joinChat.dtd b/l10n-vi/mail/chrome/messenger/joinChat.dtd
new file mode 100644
index 0000000000..cf3dad6683
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tham gia trò chuyện">
+<!ENTITY name.label "Phòng">
+<!ENTITY optional.label "(không bắt buộc)">
+<!ENTITY account.label "Tài khoản">
+<!ENTITY autojoin.label "Tự động tham gia phòng trò chuyện này">
+<!ENTITY autojoin.accesskey "A">
diff --git a/l10n-vi/mail/chrome/messenger/junkLog.dtd b/l10n-vi/mail/chrome/messenger/junkLog.dtd
new file mode 100644
index 0000000000..2d0e1b8a34
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Nhật ký thư rác thích ứng">
+<!ENTITY adaptiveJunkLogInfo.label "Nhật ký hoạt động kiểm soát thư rác thích ứng.">
+<!ENTITY clearLog.label "Xóa nhật ký">
+<!ENTITY clearLog.accesskey "C">
+<!ENTITY closeLog.label "Đóng">
+<!ENTITY closeLog.accesskey "o">
diff --git a/l10n-vi/mail/chrome/messenger/localMsgs.properties b/l10n-vi/mail/chrome/messenger/localMsgs.properties
new file mode 100644
index 0000000000..2abd9acb93
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Lỗi với tài khoản %S
+
+# LOCALIZATION NOTE (pop3EnterPasswordPromptTitleWithUsername): Do not translate the
+# word %1$S. Place the word %1$S where the user name should appear.
+pop3EnterPasswordPromptTitleWithUsername=Nhập mật khẩu của bạn cho %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=Nhập mật khẩu cho %1$S trên %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=Vui lòng nhập mật khẩu mới cho người dùng %1$S trên %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=Đang tải thư %1$S của %2$S…
+
+# Status - connecting to host
+hostContact=Máy chủ đã liên lạc, đang gửi thông tin đăng nhập…
+
+# Status - no messages to download
+noNewMessages=Không có tin nhắn mới.
+
+# 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=Đã nhận được %1$S của %2$S thư
+
+# 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=Xây dựng tập tin tóm tắt cho %S…
+
+# Status - parsing folder
+localStatusDocumentDone=Xong
+
+# Status - pop3 server error
+#LOCALIZATION NOTE (pop3ServerError): Do not translate POP3 in the following line.
+pop3ServerError=Đã xảy ra lỗi với máy chủ thư POP3.
+
+# Status - pop3 user name failed
+pop3UsernameFailure=Thất bại khi gửi tên người dùng.
+
+# Status - password failed
+#LOCALIZATION NOTE (pop3PasswordFailed): Do not translate "%1$S" below.
+# Place the word %1$S where the user name should appear.
+pop3PasswordFailed=Thất bại khi gửi mật khẩu cho người dùng %1$S.
+
+# Status - write error occurred
+pop3MessageWriteError=Không thể viết email vào hộp thư. Đảm bảo hệ thống tập tin cho phép bạn đặc quyền viết và bạn có đủ dung lượng đĩa để sao chép hộp thư.
+
+# Status - retr failure from the server
+pop3RetrFailure=Lệnh RETR không thành công. Lỗi khi truy xuất thư.
+
+# Status - password undefined
+pop3PasswordUndefined=Lỗi khi lấy mật khẩu thư.
+
+# Status - username undefined
+pop3UsernameUndefined=Bạn chưa cung cấp tên người dùng cho máy chủ này. Vui lòng cung cấp một trong menu thiết lập tài khoản và thử lại.
+
+# Status - list failure
+pop3ListFailure=Lệnh LIST không thành công. Lỗi khi nhận ID và kích thước của thư.
+
+# Status - delete error
+pop3DeleFailure=Lệnh DELE không thành công. Lỗi khi đánh dấu thư là đã xóa.
+
+# Status - stat failed
+pop3StatFail=Lệnh STAT không thành công. Lỗi khi nhận số thư và kích cỡ.
+
+#LOCALIZATION NOTE (pop3ServerSaid): Do not remove the leading space during translation.
+pop3ServerSaid= Máy chủ thư %S đã trả lời:
+
+#LOCALIZATION NOTE (pop3TempServerError): %S is where the POP3 server name will appear.
+pop3TempServerError=Lỗi tạm thời từ %S khi truy xuất thư mới. \
+Thao tác sẽ được thử lại ở lần kiểm tra thư mới tiếp theo.
+
+copyingMessagesStatus=Đang sao chép %S của %S thư sang %S
+
+movingMessagesStatus=Đang di chuyển %S của %S thư sang %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=Tài khoản %S đang được xử lý. Vui lòng đợi cho đến khi xử lý hoàn tất để nhận thư.
+
+pop3TmpDownloadError=Đã xảy ra lỗi khi tải xuống thư sau: \nTừ: %S\n Chủ đề: %S\n Thư này có thể chứa vi-rút hoặc không đủ dung lượng đĩa. Bỏ qua thư này?
+
+# 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=Máy chủ thư POP3 (%S) không hỗ trợ UIDL hoặc XTND XLST, được yêu cầu để triển khai các tùy chọn ``Để lại trên máy chủ'', ``Kích thước thư tối đa'' hoặc ``Chỉ tải header''. Để tải xuống thư của bạn, hãy tắt các tùy chọn này trong Cài đặt máy chủ cho máy chủ thư của bạn trong cửa sổ Cài đặt tài khoản.
+
+# 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=Máy chủ thư POP3 (%S) không hỗ trợ lệnh TOP. Nếu không có máy chủ hỗ trợ cho việc này, chúng tôi không thể triển khai tùy chọn ``Kích thước thư tối đa '' hoặc ``Chỉ tải header''. Tùy chọn này đã bị vô hiệu hóa và các thư sẽ được tải xuống bất kể kích thước của chúng.
+
+nsErrorCouldNotConnectViaTls=Không thể thiết lập kết nối TLS với máy chủ POP3. Máy chủ có thể không hoạt động hoặc có thể được định cấu hình không chính xác. Vui lòng xác minh cấu hình chính xác trong Cài đặt máy chủ cho máy chủ thư của bạn trong cửa sổ Cài đặt tài khoản và thử lại.
+
+# LOCALIZATION NOTE (pop3MoveFolderToTrash): Do not translate the word %S below.
+# "%S" is the the name of the folder.
+pop3MoveFolderToTrash=Bạn có chắc chắn muốn xóa thư mục '%S' không?
+
+pop3DeleteFolderDialogTitle=Xóa thư mục
+
+pop3DeleteFolderButtonLabel=&Xóa thư mục
+
+pop3AuthInternalError=Internal state error trong quá trình xác thực máy chủ POP3. Đây là lỗi nội bộ, không mong muốn trong ứng dụng, vui lòng báo cáo dưới dạng lỗi.
+
+pop3AuthChangeEncryptToPlainNoSSL=Máy chủ POP3 này dường như không hỗ trợ mật khẩu được mã hóa. Nếu bạn vừa thiết lập tài khoản, vui lòng thử thay đổi thành 'Mật khẩu, truyền không an toàn' làm 'Phương thức xác thực' trong 'Cài đặt tài khoản | Cài đặt máy chủ'. Nếu nó đã từng hoạt động và bây giờ bị lỗi, đây là một tình huống phổ biến về cách ai đó có thể đánh cắp mật khẩu của bạn.
+
+pop3AuthChangeEncryptToPlainSSL=Máy chủ POP3 dường như không hỗ trợ mật khẩu được mã hóa. Nếu bạn vừa thiết lập tài khoản này, vui lòng thử thay đổi thành 'Mật khẩu thông thường' làm 'Phương thức xác thực' trong 'Cài đặt tài khoản | Cài đặt máy chủ'. Nếu nó đã từng hoạt động và bây giờ đột nhiên bị lỗi, vui lòng liên hệ với quản trị viên email hoặc nhà cung cấp của bạn.
+
+pop3AuthChangePlainToEncrypt=Máy chủ POP3 không cho phép mật khẩu văn bản thuần túy. Vui lòng thử thay đổi thành 'Mật khẩu được mã hóa' làm 'Phương thức xác thực' trong 'Cài đặt tài khoản | Cài đặt máy chủ'.
+
+# Authentication server caps and pref don't match
+pop3AuthMechNotSupported=Máy chủ không hỗ trợ phương thức xác thực đã chọn. Vui lòng thay đổi 'Phương thức xác thực' trong 'Cài đặt tài khoản | Cài đặt máy chủ'.
+
+# Status - Could not log in to GSSAPI, and it was the only method
+pop3GssapiFailure=Kerberos/GSSAPI không được máy chủ POP chấp nhận. Vui lòng kiểm tra xem bạn đã đăng nhập vào Kerberos/GSSAPI chưa.
diff --git a/l10n-vi/mail/chrome/messenger/mailEditorOverlay.dtd b/l10n-vi/mail/chrome/messenger/mailEditorOverlay.dtd
new file mode 100644
index 0000000000..b654d9492e
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/mailEditorOverlay.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 sendPage.label "Gửi Trang…">
+<!ENTITY sendPage.accesskey "G">
+
diff --git a/l10n-vi/mail/chrome/messenger/mailOverlay.dtd b/l10n-vi/mail/chrome/messenger/mailOverlay.dtd
new file mode 100644
index 0000000000..5b2459be83
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thư">
+<!ENTITY newMessageCmd.accesskey "T">
+
+<!ENTITY newContactCmd.label "Liên hệ trong sổ địa chỉ…">
+<!ENTITY newContactCmd.accesskey "c">
diff --git a/l10n-vi/mail/chrome/messenger/mailViewList.dtd b/l10n-vi/mail/chrome/messenger/mailViewList.dtd
new file mode 100644
index 0000000000..5205a2ff03
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/mailViewList.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/. -->
+
+<!--LOCALIZATION NOTE msgViewPickerOverlay.dtd UI for showing various views on a folder -->
+
+<!ENTITY mailViewListTitle.label "Tùy chỉnh chế độ xem thư">
diff --git a/l10n-vi/mail/chrome/messenger/mailViewSetup.dtd b/l10n-vi/mail/chrome/messenger/mailViewSetup.dtd
new file mode 100644
index 0000000000..3610db27e5
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Cài đặt xem thư">
+<!ENTITY mailViewHeading.label "Tên cách hiển thị thư:">
+<!ENTITY mailViewHeading.accesskey "h">
+<!ENTITY searchTermCaption.label "Khi cách hiển thị này được chọn, chỉ hiển thị các thư:">
diff --git a/l10n-vi/mail/chrome/messenger/mailviews.properties b/l10n-vi/mail/chrome/messenger/mailviews.properties
new file mode 100644
index 0000000000..1a6b830e38
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Những người tôi biết
+mailViewRecentMail=Thư gần đây
+mailViewLastFiveDays=5 ngày qua
+mailViewNotJunk=Không phải thư rác
+mailViewHasAttachments=Có đính kèm
diff --git a/l10n-vi/mail/chrome/messenger/markByDate.dtd b/l10n-vi/mail/chrome/messenger/markByDate.dtd
new file mode 100644
index 0000000000..3236783096
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Đánh dấu thư là đã đọc theo ngày">
+<!ENTITY markByDateLower.label "Đánh dấu thư là đã đọc từ:">
+<!ENTITY markByDateLower.accesskey "F">
+<!ENTITY markByDateUpper.label "Đến:">
+<!ENTITY markByDateUpper.accesskey "T">
diff --git a/l10n-vi/mail/chrome/messenger/messenger.dtd b/l10n-vi/mail/chrome/messenger/messenger.dtd
new file mode 100644
index 0000000000..a3469c899b
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/messenger.dtd
@@ -0,0 +1,945 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.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 "Thư mục…">
+<!ENTITY newFolderCmd.accesskey "F">
+<!ENTITY closeTabCmd2.label "Đóng thẻ">
+<!ENTITY closeTabCmd2.accesskey "C">
+<!ENTITY closeOtherTabsCmd2.label "Đóng các thẻ khác">
+<!ENTITY closeOtherTabsCmd2.accesskey "o">
+<!ENTITY recentlyClosedTabsCmd.label "Các thẻ mới đóng gần đây">
+<!ENTITY recentlyClosedTabsCmd.accesskey "R">
+
+<!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 "Di chuyển đến cửa sổ mới">
+<!ENTITY moveToNewWindow.accesskey "W">
+<!ENTITY newVirtualFolderCmd.label "Tìm kiếm đã lưu…">
+<!ENTITY newVirtualFolderCmd.accesskey "S">
+<!ENTITY newCreateEmailAccountCmd.label "Tạo tài khoản thư mới…">
+<!ENTITY newCreateEmailAccountCmd.accesskey "G">
+<!ENTITY newExistingEmailAccountCmd.label "Tài khoản thư hiện có…">
+<!ENTITY newExistingEmailAccountCmd.accesskey "E">
+<!ENTITY newIMAccountCmd.label "Tài khoản trò chuyện…">
+<!ENTITY newIMAccountCmd.accesskey "C">
+<!ENTITY newFeedAccountCmd.label "Tài khoản nguồn cấp…">
+<!ENTITY newFeedAccountCmd.accesskey "d">
+<!ENTITY newIMContactCmd.label "Trò chuyện liên hệ…">
+<!ENTITY newIMContactCmd.accesskey "h">
+<!ENTITY newMessageCmd2.key "N">
+<!ENTITY newMessageCmd.key "M">
+<!ENTITY newMessageCmd.label "Thư">
+<!ENTITY newMessageCmd.accesskey "m">
+<!ENTITY newContactCmd.label "Sổ địa chỉ liên hệ…">
+<!ENTITY newContactCmd.accesskey "C">
+<!ENTITY openMenuCmd.label "Mở">
+<!ENTITY openMenuCmd.accesskey "O">
+<!ENTITY openMessageFileCmd.label "Mở các thư đã lưu…">
+<!ENTITY openMessageFileCmd.accesskey "O">
+<!ENTITY saveAsMenu.label "Lưu thành">
+<!ENTITY saveAsMenu.accesskey "S">
+<!ENTITY saveAsFileCmd.key "s">
+<!ENTITY saveAsTemplateCmd.label "Mẫu">
+<!ENTITY saveAsTemplateCmd.accesskey "T">
+<!ENTITY getNewMsgForCmd.label "Nhận thư mới cho">
+<!ENTITY getNewMsgForCmd.accesskey "w">
+<!ENTITY getAllNewMsgCmdPopupMenu.label "Tất cả các tài khoản">
+<!ENTITY getAllNewMsgCmdPopupMenu.accesskey "A">
+<!ENTITY getNewMsgCurrentAccountCmdPopupMenu.label "Tài khoản hiện tại">
+<!ENTITY getNewMsgCurrentAccountCmdPopupMenu.accesskey "C">
+<!ENTITY getNextNMsgCmd2.label "Nhận thư tin tức tiếp theo">
+<!ENTITY getNextNMsgCmd2.accesskey "t">
+<!ENTITY sendUnsentCmd.label "Gửi các thư chưa gửi">
+<!ENTITY sendUnsentCmd.accesskey "d">
+<!ENTITY subscribeCmd.label "Đăng kí…">
+<!ENTITY subscribeCmd.accesskey "b">
+<!ENTITY deleteFolder.label "Xóa thư mục">
+<!ENTITY deleteFolder.accesskey "e">
+<!ENTITY renameFolder.label "Đổi tên thư mục…">
+<!ENTITY renameFolder.accesskey "R">
+<!ENTITY renameFolder.key "VK_F2">
+<!ENTITY compactFolders.label "Làm gọn thư mục">
+<!ENTITY compactFolders.accesskey "F">
+<!ENTITY emptyTrashCmd.label "Dọn sạch thùng rác">
+<!ENTITY emptyTrashCmd.accesskey "y">
+<!ENTITY offlineMenu.label "Ngoại tuyến">
+<!ENTITY offlineMenu.accesskey "l">
+<!ENTITY offlineGoOfflineCmd.label "Làm việc ngoại tuyến">
+<!ENTITY offlineGoOfflineCmd.accesskey "w">
+<!ENTITY synchronizeOfflineCmd.label "Tải xuống/Đồng bộ hóa ngay…">
+<!ENTITY synchronizeOfflineCmd.accesskey "S">
+<!ENTITY settingsOfflineCmd2.label "Cài đặt ngoại tuyến">
+<!ENTITY settingsOfflineCmd2.accesskey "e">
+<!ENTITY downloadSelectedCmd.label "Nhận các thư đã chọn">
+<!ENTITY downloadSelectedCmd.accesskey "l">
+<!ENTITY downloadStarredCmd.label "Nhận các thư được gắn dấu sao">
+<!ENTITY downloadStarredCmd.accesskey "a">
+<!ENTITY printCmd.label "In…">
+<!ENTITY printCmd.accesskey "P">
+<!ENTITY printCmd.key "p">
+
+<!-- Edit Menu -->
+<!ENTITY deleteMsgCmd.label "Xóa thư">
+<!ENTITY deleteMsgCmd.accesskey "D">
+<!ENTITY undeleteMsgCmd.label "Không xóa thư">
+<!ENTITY undeleteMsgCmd.accesskey "d">
+<!ENTITY deleteMsgsCmd.label "Xóa thư đã chọn">
+<!ENTITY deleteMsgsCmd.accesskey "D">
+<!ENTITY undeleteMsgsCmd.label "Không xóa thư đã chọn">
+<!ENTITY undeleteMsgsCmd.accesskey "d">
+<!ENTITY deleteFolderCmd.label "Xóa thư mục">
+<!ENTITY deleteFolderCmd.accesskey "D">
+<!ENTITY unsubscribeNewsgroupCmd.label "Hủy đăng ký">
+<!ENTITY unsubscribeNewsgroupCmd.accesskey "b">
+<!ENTITY selectMenu.label "Chọn">
+<!ENTITY selectMenu.accesskey "S">
+<!ENTITY all.label "Tất cả">
+<!ENTITY all.accesskey "A">
+<!ENTITY selectThreadCmd.label "Chủ đề">
+<!ENTITY selectThreadCmd.accesskey "T">
+<!ENTITY selectThreadCmd.key "a">
+<!ENTITY selectFlaggedCmd.label "Thư được gắn dấu sao">
+<!ENTITY selectFlaggedCmd.accesskey "S">
+<!ENTITY menuFavoriteFolder.label "Thư mục yêu thích">
+<!ENTITY menuFavoriteFolder.accesskey "v">
+<!ENTITY folderPropsCmd2.label "Thuộc tính">
+<!ENTITY folderPropsFolderCmd2.label "Thuộc tính thư mục">
+<!ENTITY folderPropsNewsgroupCmd2.label "Thuộc tính nhóm tin">
+<!ENTITY folderPropsCmd.accesskey "o">
+<!ENTITY undoDeleteMsgCmd.label "Hoàn tác xóa thư">
+<!ENTITY redoDeleteMsgCmd.label "Làm lại xóa thư">
+<!ENTITY undoMoveMsgCmd.label "Hoàn tác di chuyển thư">
+<!ENTITY redoMoveMsgCmd.label "Làm lại di chuyển thư">
+<!ENTITY undoCopyMsgCmd.label "Hoàn tác sao chép thư">
+<!ENTITY redoCopyMsgCmd.label "Làm lại sao chép thư">
+<!ENTITY undoMarkAllCmd.label "Hoàn tác đánh dấu tất cả là đã đọc">
+<!ENTITY redoMarkAllCmd.label "Đánh dấu lại tất cả là đã đọc">
+<!ENTITY undoDefaultCmd.label "Hoàn tác">
+<!ENTITY undoDefaultCmd.accesskey "U">
+<!ENTITY redoDefaultCmd.label "Làm lại">
+<!ENTITY redoDefaultCmd.accesskey "R">
+
+<!-- View Menu -->
+<!ENTITY menubarCmd.label "Thanh menu">
+<!ENTITY menubarCmd.accesskey "M">
+<!ENTITY showMessengerToolbarCmd.label "Thanh công cụ thư">
+<!ENTITY showMessengerToolbarCmd.accesskey "o">
+<!ENTITY customizeToolbar.label "Tùy biến…">
+<!ENTITY customizeToolbar.accesskey "C">
+
+<!ENTITY messagePaneLayoutStyle.label "Bố cục">
+<!ENTITY messagePaneLayoutStyle.accesskey "L">
+<!ENTITY messagePaneClassic.label "Chế độ xem cổ điển">
+<!ENTITY messagePaneClassic.accesskey "C">
+<!ENTITY messagePaneWide.label "Chế độ xem rộng">
+<!ENTITY messagePaneWide.accesskey "W">
+<!ENTITY messagePaneVertical.label "Chế độ xem dọc">
+<!ENTITY messagePaneVertical.accesskey "V">
+<!ENTITY showFolderPaneCmd.label "Ngăn thư mục">
+<!ENTITY showFolderPaneCmd.accesskey "F">
+<!ENTITY showFolderPaneColsCmd.label "Cột trong ngăn thư mục">
+<!ENTITY showFolderPaneColsCmd.accesskey "P">
+<!ENTITY showMessageCmd.label "Ngăn đọc thư">
+<!ENTITY showMessageCmd.accesskey "M">
+
+<!ENTITY folderView.label "Thư mục">
+<!ENTITY folderView.accesskey "F">
+<!ENTITY unifiedFolders.label "Hợp nhất">
+<!ENTITY unifiedFolders.accesskey "n">
+<!ENTITY allFolders.label "Tất cả">
+<!ENTITY allFolders.accesskey "A">
+<!ENTITY unreadFolders.label "Chưa đọc">
+<!ENTITY unreadFolders.accesskey "U">
+<!ENTITY favoriteFolders.label "Yêu thích">
+<!ENTITY favoriteFolders.accesskey "F">
+<!ENTITY recentFolders.label "Gần đây">
+<!ENTITY recentFolders.accesskey "R">
+<!ENTITY compactVersion.label "Chế độ xem gọn">
+<!ENTITY compactVersion.accesskey "C">
+
+<!-- Sort Menu -->
+<!ENTITY sortMenu.label "Sắp xếp theo">
+<!ENTITY sortMenu.accesskey "S">
+<!ENTITY sortByDateCmd.label "Ngày">
+<!ENTITY sortByDateCmd.accesskey "e">
+<!ENTITY sortByReceivedCmd.label "Đã nhận">
+<!ENTITY sortByReceivedCmd.accesskey "v">
+<!ENTITY sortByStarCmd.label "Dấu sao">
+<!ENTITY sortByStarCmd.accesskey "S">
+<!ENTITY sortByAttachmentsCmd.label "Đính kèm">
+<!ENTITY sortByAttachmentsCmd.accesskey "m">
+<!ENTITY sortByPriorityCmd.label "Ưu tiên">
+<!ENTITY sortByPriorityCmd.accesskey "P">
+<!ENTITY sortBySizeCmd.label "Kích thước">
+<!ENTITY sortBySizeCmd.accesskey "z">
+<!ENTITY sortByStatusCmd.label "Trạng thái">
+<!ENTITY sortByStatusCmd.accesskey "u">
+<!ENTITY sortByTagsCmd.label "Nhãn">
+<!ENTITY sortByTagsCmd.accesskey "g">
+<!ENTITY sortByJunkStatusCmd.label "Trạng thái thư rác">
+<!ENTITY sortByJunkStatusCmd.accesskey "J">
+<!ENTITY sortBySubjectCmd.label "Tiêu đề">
+<!ENTITY sortBySubjectCmd.accesskey "b">
+<!ENTITY sortByFromCmd.label "Người gửi">
+<!ENTITY sortByFromCmd.accesskey "F">
+<!ENTITY sortByRecipientCmd.label "Người nhận">
+<!ENTITY sortByRecipientCmd.accesskey "c">
+<!ENTITY sortByCorrespondentCmd.label "Người viết">
+<!ENTITY sortByCorrespondentCmd.accesskey "n">
+<!ENTITY sortByUnreadCmd.label "Đã đọc">
+<!ENTITY sortByUnreadCmd.accesskey "R">
+<!ENTITY sortByOrderReceivedCmd.label "Thứ tự nhận được">
+<!ENTITY sortByOrderReceivedCmd.accesskey "O">
+<!ENTITY sortAscending.label "Tăng dần">
+<!ENTITY sortAscending.accesskey "A">
+<!ENTITY sortDescending.label "Giảm dần">
+<!ENTITY sortDescending.accesskey "D">
+<!ENTITY sortThreaded.label "Theo chủ đề">
+<!ENTITY sortThreaded.accesskey "T">
+<!ENTITY sortUnthreaded.label "Không theo chủ đề">
+<!ENTITY sortUnthreaded.accesskey "h">
+<!ENTITY groupBySort.label "Được nhóm theo sắp xếp">
+<!ENTITY groupBySort.accesskey "G">
+<!ENTITY msgsMenu.label "Thư">
+<!ENTITY msgsMenu.accesskey "M">
+<!ENTITY threads.label "Chủ đề">
+<!ENTITY threads.accesskey "e">
+<!ENTITY allMsgsCmd.label "Tất cả">
+<!ENTITY allMsgsCmd.accesskey "A">
+<!ENTITY expandAllThreadsCmd.label "Mở rộng tất cả các chủ đề">
+<!ENTITY expandAllThreadsCmd.accesskey "E">
+<!ENTITY expandAllThreadsCmd.key "*">
+<!ENTITY collapseAllThreadsCmd.label "Thu gọn tất cả các chủ đề">
+<!ENTITY collapseAllThreadsCmd.accesskey "C">
+<!ENTITY collapseAllThreadsCmd.key "\">
+<!ENTITY unreadMsgsCmd.label "Chưa đọc">
+<!ENTITY unreadMsgsCmd.accesskey "U">
+<!ENTITY threadsWithUnreadCmd.label "Chủ đề có thư chưa đọc">
+<!ENTITY threadsWithUnreadCmd.accesskey "T">
+<!ENTITY watchedThreadsWithUnreadCmd.label "Chủ đề đã đăng kí có thư chưa đọc">
+<!ENTITY watchedThreadsWithUnreadCmd.accesskey "W">
+<!ENTITY ignoredThreadsCmd.label "Chủ đề đã bỏ qua">
+<!ENTITY ignoredThreadsCmd.accesskey "i">
+
+<!ENTITY headersMenu.label "Thông tin thư">
+<!ENTITY headersMenu.accesskey "H">
+<!ENTITY headersAllCmd.label "Tất cả">
+<!ENTITY headersAllCmd.accesskey "A">
+<!ENTITY headersNormalCmd.label "Bình thường">
+<!ENTITY headersNormalCmd.accesskey "N">
+<!ENTITY bodyMenu.label "Nội dung thư dưới dạng">
+<!ENTITY bodyMenu.accesskey "B">
+<!ENTITY bodyAllowHTML.label "HTML gốc">
+<!ENTITY bodyAllowHTML.accesskey "H">
+<!ENTITY bodySanitized.label "HTML đơn giản">
+<!ENTITY bodySanitized.accesskey "S">
+<!ENTITY bodyAsPlaintext.label "Văn bản thuần túy">
+<!ENTITY bodyAsPlaintext.accesskey "P">
+<!ENTITY bodyAllParts.label "Tất cả các phần thân">
+<!ENTITY bodyAllParts.accesskey "A">
+
+<!ENTITY bodyMenuFeed.label "Nội dung nguồn cấp dưới dạng">
+<!ENTITY bodyMenuFeed.accesskey "B">
+<!ENTITY viewFeedWebPage.label "Trang web">
+<!ENTITY viewFeedWebPage.accesskey "W">
+<!ENTITY viewFeedSummary.label "Tóm tắt">
+<!ENTITY viewFeedSummary.accesskey "m">
+<!ENTITY viewFeedSummaryFeedPropsPref.label "Định dạng mặc định">
+<!ENTITY viewFeedSummaryFeedPropsPref.accesskey "D">
+
+<!ENTITY viewAttachmentsInlineCmd.label "Hiển thị đính kèm trong nội dung thư">
+<!ENTITY viewAttachmentsInlineCmd.accesskey "A">
+
+<!ENTITY pageSourceCmd.label "Mã nguồn của thư">
+<!ENTITY pageSourceCmd.accesskey "o">
+<!ENTITY pageSourceCmd.key "u">
+<!ENTITY getNewMessagesCmd.key "y">
+<!ENTITY getAllNewMessagesCmd.key "Y">
+
+<!-- Search Menu -->
+<!ENTITY findMenu.label "Tìm">
+<!ENTITY findMenu.accesskey "F">
+<!ENTITY findCmd.label "Tìm trong thư này…">
+<!ENTITY findCmd.accesskey "F">
+<!ENTITY findCmd.key "f">
+<!ENTITY findAgainCmd.label "Tìm tiếp">
+<!ENTITY findAgainCmd.accesskey "g">
+<!ENTITY findAgainCmd.key "g">
+<!ENTITY findAgainCmd.key2 "VK_F3">
+<!ENTITY findPrevCmd.key "g">
+<!ENTITY findPrevCmd.key2 "VK_F3">
+<!ENTITY searchMailCmd.label "Tìm kiếm thư…">
+<!ENTITY searchMailCmd.accesskey "M">
+<!ENTITY searchMailCmd.key "f">
+<!ENTITY glodaSearchCmd.label "Tìm kiếm tổng quát…">
+<!ENTITY glodaSearchCmd.accesskey "G">
+<!ENTITY searchAddressesCmd.label "Tìm kiếm địa chỉ…">
+<!ENTITY searchAddressesCmd.accesskey "S">
+
+<!-- Go Menu -->
+<!ENTITY goMenu.label "Đi">
+<!ENTITY goMenu.accesskey "G">
+<!ENTITY nextMenu.label "Tiếp">
+<!ENTITY nextMenu.accesskey "N">
+<!ENTITY nextMsgCmd.label "Thư">
+<!ENTITY nextMsgCmd.accesskey "M">
+<!ENTITY nextMsgCmd.key "f">
+<!ENTITY nextUnreadMsgCmd.label "Thư chưa đọc">
+<!ENTITY nextUnreadMsgCmd.accesskey "U">
+<!ENTITY nextUnreadMsgCmd.key "n">
+<!ENTITY nextStarredMsgCmd.label "Thư được gắn dấu sao">
+<!ENTITY nextStarredMsgCmd.accesskey "S">
+<!ENTITY nextUnreadThread.label "Chủ đề chưa đọc">
+<!ENTITY nextUnreadThread.accesskey "T">
+<!ENTITY nextUnreadThread.key "t">
+<!ENTITY prevMenu.label "Trước">
+<!ENTITY prevMenu.accesskey "P">
+<!ENTITY prevMsgCmd.label "Thư">
+<!ENTITY prevMsgCmd.accesskey "M">
+<!ENTITY prevMsgCmd.key "b">
+<!ENTITY prevUnreadMsgCmd.label "Thư chưa đọc">
+<!ENTITY prevUnreadMsgCmd.accesskey "U">
+<!ENTITY prevUnreadMsgCmd.key "p">
+<!ENTITY goForwardCmd.label "Tiến">
+<!ENTITY goForwardCmd.accesskey "F">
+<!ENTITY goForwardCmd.commandKey "]">
+<!ENTITY goBackCmd.label "Quay lại">
+<!ENTITY goBackCmd.accesskey "B">
+<!ENTITY goBackCmd.commandKey "[">
+<!ENTITY goChatCmd.label "Trò chuyện">
+<!ENTITY goChatCmd.accesskey "c">
+<!ENTITY prevStarredMsgCmd.label "Thư được gắn dấu sao">
+<!ENTITY prevStarredMsgCmd.accesskey "S">
+<!ENTITY folderMenu.label "Thư mục">
+<!ENTITY folderMenu.accesskey "O">
+<!ENTITY goRecentlyClosedTabs.label "Thẻ mới đóng gần đây">
+<!ENTITY goRecentlyClosedTabs.accesskey "R">
+<!ENTITY startPageCmd.label "Trang bắt đầu thư">
+<!ENTITY startPageCmd.accesskey "S">
+
+<!-- Message Menu -->
+<!ENTITY msgMenu.label "Thư">
+<!ENTITY msgMenu.accesskey "M">
+<!ENTITY newMsgCmd.label "Thư mới">
+<!ENTITY newMsgCmd.accesskey "N">
+<!ENTITY newNewMsgCmd.label "Thư">
+<!ENTITY newNewMsgCmd.accesskey "M">
+<!ENTITY archiveMsgCmd.label "Lưu trữ">
+<!ENTITY archiveMsgCmd.accesskey "A">
+<!ENTITY archiveMsgCmd.key "a">
+<!ENTITY cancelNewsMsgCmd.label "Hủy thư">
+<!ENTITY cancelNewsMsgCmd.accesskey "C">
+<!ENTITY replyMsgCmd.label "Trả lời">
+<!ENTITY replyMsgCmd.accesskey "R">
+<!ENTITY replyMsgCmd.key "r">
+<!ENTITY replySenderCmd.label "Chỉ trả lời người gửi">
+<!ENTITY replySenderCmd.accesskey "R">
+<!ENTITY replyNewsgroupCmd2.label "Theo dõi nhóm tin">
+<!ENTITY replyNewsgroupCmd2.accesskey "u">
+<!ENTITY replyToAllMsgCmd.label "Trả lời tất cả">
+<!ENTITY replyToAllMsgCmd.accesskey "p">
+<!ENTITY replyToAllMsgCmd.key "r">
+<!ENTITY replyToListMsgCmd.label "Trả lời danh sách">
+<!ENTITY replyToListMsgCmd.accesskey "L">
+<!ENTITY replyToListMsgCmd.key "l">
+<!ENTITY forwardMsgCmd.label "Chuyển tiếp">
+<!ENTITY forwardMsgCmd.accesskey "F">
+<!ENTITY forwardMsgCmd.key "l">
+<!ENTITY forwardAsMenu.label "Chuyển tiếp dưới dạng">
+<!ENTITY forwardAsMenu.accesskey "w">
+<!ENTITY forwardAsInline.label "Ngay trong thư">
+<!ENTITY forwardAsInline.accesskey "I">
+<!ENTITY forwardAsAttachmentCmd.label "Đính kèm">
+<!ENTITY forwardAsAttachmentCmd.accesskey "A">
+<!ENTITY editAsNewMsgCmd.label "Chỉnh sửa như thư mới">
+<!ENTITY editAsNewMsgCmd.accesskey "E">
+<!ENTITY editAsNewMsgCmd.key "e">
+<!ENTITY editDraftMsgCmd.label "Chỉnh sửa thư nháp">
+<!ENTITY editDraftMsgCmd.accesskey "D">
+<!ENTITY editTemplateMsgCmd.label "Chỉnh sửa mẫu">
+<!ENTITY editTemplateMsgCmd.accesskey "T">
+<!ENTITY newMsgFromTemplateCmd.label "Thư mới từ mẫu">
+<!ENTITY newMsgFromTemplateCmd.keycode "VK_RETURN"><!-- do not change "VK_RETURN" -->
+<!ENTITY createFilter.label "Tạo bộ lọc từ thư…">
+<!ENTITY createFilter.accesskey "o">
+<!ENTITY moveMsgToMenu.label "Di chuyển đến">
+<!ENTITY moveMsgToMenu.accesskey "D">
+<!ENTITY moveCopyMsgRecentMenu.label "Gần đây">
+<!ENTITY moveCopyMsgRecentMenu.accesskey "G">
+<!ENTITY copyMessageLocation.label "Sao chép địa chỉ thư">
+<!ENTITY copyMessageLocation.accesskey "p">
+<!ENTITY copyMsgToMenu.label "Sao chép đến">
+<!ENTITY copyMsgToMenu.accesskey "C">
+<!ENTITY moveToFolderAgain.label "Thử di chuyển lại">
+<!ENTITY moveToFolderAgain.accesskey "n">
+<!ENTITY moveToFolderAgainCmd.key "m">
+<!ENTITY killThreadMenu.label "Bỏ qua chủ đề">
+<!ENTITY killThreadMenu.accesskey "B">
+<!ENTITY killThreadMenu.key "k">
+<!ENTITY killSubthreadMenu.label "Bỏ qua chủ đề con">
+<!ENTITY killSubthreadMenu.accesskey "q">
+<!ENTITY killSubthreadMenu.key "k">
+<!ENTITY watchThreadMenu.label "Theo dõi chủ đề">
+<!ENTITY watchThreadMenu.accesskey "e">
+<!ENTITY watchThreadMenu.key "w">
+<!ENTITY tagMenu.label "Nhãn">
+<!ENTITY tagMenu.accesskey "h">
+<!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 "Đánh dấu">
+<!ENTITY markMenu.accesskey "u">
+<!ENTITY toggleReadCmd.key "m">
+<!ENTITY markAsReadCmd.label "Đã đọc">
+<!ENTITY markAsReadCmd.accesskey "c">
+<!ENTITY markAsUnreadCmd.label "Chưa đọc">
+<!ENTITY markAsUnreadCmd.accesskey "C">
+<!ENTITY markThreadAsReadCmd.label "Chủ đề là đã đọc">
+<!ENTITY markThreadAsReadCmd.accesskey "h">
+<!ENTITY markThreadAsReadCmd.key "r">
+<!ENTITY markReadByDateCmd.label "Đã đọc theo ngày…">
+<!ENTITY markReadByDateCmd.accesskey "y">
+<!ENTITY markReadByDateCmd.key "c">
+<!ENTITY markAllReadCmd.label "Tất cả là đã đọc">
+<!ENTITY markAllReadCmd.accesskey "T">
+<!ENTITY markAllReadCmd.key "c">
+<!ENTITY markStarredCmd.label "Thêm sao">
+<!ENTITY markStarredCmd.accesskey "S">
+<!ENTITY markStarredCmd.key "S">
+<!ENTITY markAsJunkCmd.label "Thư rác">
+<!ENTITY markAsJunkCmd.accesskey "r">
+<!ENTITY markAsJunkCmd.key "j">
+<!ENTITY markAsNotJunkCmd.label "Không phải thư rác">
+<!ENTITY markAsNotJunkCmd.accesskey "K">
+<!ENTITY markAsNotJunkCmd.key "j">
+<!ENTITY recalculateJunkScoreCmd.label "Chạy điều khiển thư rác">
+<!ENTITY recalculateJunkScoreCmd.accesskey "B">
+<!ENTITY openMessageWindowCmd.label "Mở thư">
+<!ENTITY openMessageWindowCmd.accesskey "M">
+<!ENTITY openMessageWindowCmd.key "o">
+<!ENTITY openInConversationCmd.label "Mở trong hội thoại">
+<!ENTITY openInConversationCmd.accesskey "s">
+<!ENTITY openInConversationCmd.key "o">
+<!ENTITY openAttachmentListCmd.label "Đính kèm">
+<!ENTITY openAttachmentListCmd.accesskey "h">
+<!ENTITY openFeedMessage1.label "Khi mở thư nguồn cấp dữ liệu">
+<!ENTITY openFeedMessage1.accesskey "O">
+<!ENTITY openFeedWebPage.label "Mở dưới dạng trang web">
+<!ENTITY openFeedWebPage.accesskey "W">
+<!ENTITY openFeedSummary.label "Mở dưới dạng tóm tắt">
+<!ENTITY openFeedSummary.accesskey "S">
+<!ENTITY openFeedWebPageInMP.label "Bật-tắt trang web và tóm tắt trong khung đọc thư">
+<!ENTITY openFeedWebPageInMP.accesskey "K">
+
+<!-- Windows Menu -->
+<!ENTITY windowMenu.label "Cửa sổ">
+
+<!-- Tools Menu -->
+<!ENTITY tasksMenu.label "Công cụ">
+<!ENTITY tasksMenu.accesskey "g">
+<!ENTITY messengerCmd.label "Thư &amp; nhóm tin">
+<!ENTITY messengerCmd.accesskey "N">
+<!ENTITY addressBookCmd.label "Sổ địa chỉ">
+<!ENTITY addressBookCmd.accesskey "S">
+<!ENTITY addressBookCmd.key "B">
+<!ENTITY addonNoPrefs.label "Không tìm thấy cài đặt tiện ích.">
+<!ENTITY activitymanager.label "Trình quản lý hoạt động">
+<!ENTITY activitymanager.accesskey "Q">
+<!ENTITY imAccountsStatus.label "Trạng thái trò chuyện">
+<!ENTITY imAccountsStatus.accesskey "C">
+<!ENTITY imStatus.available "Có mặt">
+<!ENTITY imStatus.unavailable "Không sẵn sàng">
+<!ENTITY imStatus.offline "Ngoại tuyến">
+<!ENTITY imStatus.showAccounts "Hiển thị tài khoản…">
+<!ENTITY joinChatCmd.label "Tham gia trò chuyện…">
+<!ENTITY joinChatCmd.accesskey "t">
+<!ENTITY savedFiles.label "Tập tin đã lưu">
+<!ENTITY savedFiles.accesskey "u">
+<!ENTITY savedFiles.key "j">
+<!ENTITY filtersCmd2.label "Bộ lọc tin nhắn">
+<!ENTITY filtersCmd2.accesskey "F">
+<!ENTITY filtersApply.label "Chạy bộ lọc trên thư mục">
+<!ENTITY filtersApply.accesskey "C">
+<!ENTITY filtersApplyToSelection.label "Chạy bộ lọc trên các thư được chọn">
+<!ENTITY filtersApplyToSelection.accesskey "r">
+<!ENTITY filtersApplyToMessage.label "Chạy bộ lọc trên thư">
+<!ENTITY filtersApplyToMessage.accesskey "r">
+<!ENTITY runJunkControls.label "Chạy điều khiển thư rác trên thư mục">
+<!ENTITY runJunkControls.accesskey "k">
+<!ENTITY deleteJunk.label "Xóa thư được đánh dấu là thư rác trong thư mục">
+<!ENTITY deleteJunk.accesskey "X">
+<!ENTITY importCmd.label "Nhập…">
+<!ENTITY importCmd.accesskey "N">
+<!ENTITY exportCmd.label "Xuất…">
+<!ENTITY exportCmd.accesskey "x">
+<!ENTITY clearRecentHistory.label "Xóa lịch sử gần đây…">
+<!ENTITY clearRecentHistory.accesskey "H">
+<!ENTITY accountManagerCmd2.label "Cài đặt tài khoản">
+<!ENTITY accountManagerCmd2.accesskey "S">
+<!-- LOCALIZATION NOTE (accountManagerCmdUnix.accesskey):
+ Belongs to accountManagerCmd.label, which is placed under the Edit menu
+ on Unix systems
+ -->
+<!ENTITY accountManagerCmdUnix2.accesskey "A">
+
+<!-- Developer Tools Submenu -->
+<!ENTITY devtoolsMenu.label "Công cụ dành cho nhà phát triển">
+<!ENTITY devtoolsMenu.accesskey "e">
+<!ENTITY devToolboxCmd.label "Hộp công cụ dành cho nhà phát triển">
+<!ENTITY devToolboxCmd.accesskey "T">
+<!ENTITY devToolboxCmd.commandkey "i">
+<!ENTITY debugAddonsCmd.label "Gỡ lỗi tiện ích">
+<!ENTITY debugAddonsCmd.accesskey "A">
+<!ENTITY errorConsoleCmd.label "Bảng kiểm soát lỗi">
+<!ENTITY errorConsoleCmd.accesskey "L">
+<!ENTITY errorConsoleCmd.commandkey "j">
+
+<!-- Mail Toolbar -->
+<!ENTITY getMsgButton1.label "Nhận thư">
+<!ENTITY newMsgButton.label "Viết thư">
+<!ENTITY replyButton.label "Trả lời">
+<!ENTITY replyAllButton.label "Trả lời tất cả">
+<!ENTITY replyListButton.label "Trả lời danh sách">
+<!ENTITY forwardButton.label "Chuyển tiếp">
+<!ENTITY fileButton.label "Xếp">
+<!ENTITY archiveButton.label "Lưu trữ">
+<!ENTITY openConversationButton.label "Hội thoại">
+<!ENTITY nextButton.label "Tiếp theo">
+<!ENTITY nextButtonToolbarItem.label "Thư chưa đọc tiếp theo">
+<!ENTITY nextMsgButton.label "Tiếp theo">
+<!ENTITY previousButton.label "Trước">
+<!ENTITY previousButtonToolbarItem.label "Thư chưa đọc trước đó">
+<!ENTITY previousMsgButton.label "Trước">
+<!ENTITY backButton1.label "Quay lại">
+<!ENTITY goForwardButton1.label "Tiến">
+<!ENTITY deleteItem.title "Xóa">
+<!ENTITY markButton.label "Đánh dấu">
+<!ENTITY printButton.label "In">
+<!ENTITY stopButton.label "Dừng">
+<!ENTITY throbberItem.title "Chỉ báo hoạt động">
+<!ENTITY junkItem.title "Thư rác">
+<!ENTITY addressBookButton.label "Sổ địa chỉ">
+<!ENTITY chatButton.label "Trò chuyện">
+<!ENTITY glodaSearch.title "Tìm kiếm toàn bộ">
+<!ENTITY searchItem.title "Tìm kiếm nhanh">
+<!ENTITY mailViewsToolbarItem.title "Cách hiển thị thư">
+<!ENTITY folderLocationToolbarItem.title "Địa chỉ thư mục">
+<!ENTITY tagButton.label "Nhãn">
+<!ENTITY compactButton.label "Làm gọn">
+<!ENTITY appmenuButton.label "Trình đơn ứng dụng">
+
+<!-- Mail Toolbar Tooltips-->
+<!ENTITY advancedButton.tooltip "Tìm kiếm thư nâng cao">
+<!ENTITY getMsgButton.tooltip "Nhận thư mới">
+<!ENTITY getAllNewMsgCmd.label "Nhận tất cả thư mới">
+<!ENTITY getAllNewMsgCmd.accesskey "y">
+<!ENTITY newMsgButton.tooltip "Tạo một thư mới">
+<!ENTITY replyButton.tooltip "Trả lời thư">
+<!ENTITY replyAllButton.tooltip "Trả lời người gửi và tất cả người nhận">
+<!ENTITY replyListButton.tooltip "Trả lời danh sách thư">
+<!ENTITY forwardButton.tooltip "Chuyển tiếp thư đã chọn">
+<!ENTITY forwardAsInline.tooltip "Chuyển tiếp thư được chọn dưới dạng văn bản ngay trong thư">
+<!ENTITY forwardAsAttachment.tooltip "Chuyển tiếp thư được chọn dưới dạng đính kèm">
+<!ENTITY fileButton.tooltip "Xếp thông điệp được chọn vào thư mục">
+<!ENTITY archiveButton.tooltip "Lưu trữ các thư đã chọn">
+<!ENTITY openMsgConversationButton.tooltip "Hiển thị cuộc hội thoại của thư đã chọn">
+<!ENTITY nextButton.tooltip "Chuyển sang thư chưa đọc tiếp theo">
+<!ENTITY nextMsgButton.tooltip "Di chuyển đến thư kế tiếp">
+<!ENTITY previousButton.tooltip "Chuyển sang thư chưa đọc phía trước">
+<!ENTITY previousMsgButton.tooltip "Di chuyển đến thư trước">
+<!ENTITY goForwardButton.tooltip "Đi tới một thư">
+<!ENTITY goBackButton.tooltip "Trở lại một thư">
+<!ENTITY markButton.tooltip "Đánh dấu thư">
+<!ENTITY printButton.tooltip "In thư này">
+<!ENTITY stopButton.tooltip "Dừng việc truyền tải hiện tại">
+<!ENTITY addressBookButton.tooltip "Vào sổ địa chỉ">
+<!ENTITY chatButton.tooltip "Hiển thị thẻ trò chuyện">
+<!ENTITY tagButton.tooltip "Dán nhãn cho thư">
+<!ENTITY compactButton.tooltip "Dọn các thư bị xóa ra khỏi thư mục đã chọn">
+<!ENTITY appmenuButton1.tooltip "Hiển thị menu &brandShortName;">
+
+<!-- Toolbar Button Popup -->
+<!ENTITY buttonMenuForwardAsInline.label "Chuyển tiếp ngay trong thư">
+<!ENTITY buttonMenuForwardAsAttachment.label "Chuyển tiếp dưới dạng đính kèm">
+
+<!-- Remote Content Button Popup -->
+<!ENTITY remoteContentOptionsAllowForMsg.label "Hiển thị nội dung từ xa trong thư này">
+<!ENTITY remoteContentOptionsAllowForMsg.accesskey "S">
+<!ENTITY editRemoteContentSettings.label "Chỉnh sửa tùy chọn nội dung từ xa…">
+<!ENTITY editRemoteContentSettings.accesskey "E">
+<!ENTITY editRemoteContentSettingsUnix.label "Chỉnh sửa tùy chỉnh nội dung từ xa…">
+<!ENTITY editRemoteContentSettingsUnix.accesskey "E">
+
+<!-- Phishing Button Popup -->
+<!ENTITY phishingOptionIgnore.label "Bỏ qua cảnh báo cho thư này">
+<!ENTITY phishingOptionIgnore.accesskey "n">
+<!ENTITY phishingOptionSettings.label "Chỉnh sửa tùy chọn phát hiện lừa đảo…">
+<!ENTITY phishingOptionSettings.accesskey "d">
+<!ENTITY phishingOptionSettingsUnix.label "Chỉnh sửa tùy chỉnh phát hiện lừa đảo…">
+<!ENTITY phishingOptionSettingsUnix.accesskey "d">
+
+<!-- AppMenu Popup -->
+<!ENTITY appmenuNewMsgCmd.label "Thư mới">
+<!ENTITY appmenuNewContactCmd.label "Liên hệ trong sổ địa chỉ…">
+<!ENTITY appmenuEditMenu.label "Chỉnh sửa">
+<!ENTITY appmenuToolbarLayout.label "Bố cục thanh công cụ…">
+<!ENTITY appmenuSelectThread.label "Chọn chủ đề">
+<!ENTITY appmenuSelectFlagged.label "Chọn thư được gắn dấu sao">
+
+<!-- Tags Menu Popup -->
+<!ENTITY addNewTag.label "Nhãn mới…">
+<!ENTITY addNewTag.accesskey "N">
+<!ENTITY manageTags.label "Quản lý nhãn…">
+<!ENTITY manageTags.accesskey "M">
+
+<!-- Folder Pane -->
+<!ENTITY folderNameColumn.label "Tên">
+<!ENTITY folderUnreadColumn.label "Chưa đọc">
+<!ENTITY folderTotalColumn.label "Tổng">
+<!ENTITY folderSizeColumn.label "Dung lượng">
+
+<!-- Folder Pane Context Menu -->
+<!ENTITY folderContextGetMessages.label "Nhận thư">
+<!ENTITY folderContextGetMessages.accesskey "G">
+<!ENTITY folderContextMarkAllFoldersRead.label "Đánh dấu tất cả thư mục là đã đọc">
+<!ENTITY folderContextPauseAllUpdates.label "Tạm dừng tất cả cập nhật">
+<!ENTITY folderContextPauseUpdates.label "Tạm dừng cập nhật">
+<!ENTITY folderContextPauseUpdates.accesskey "U">
+<!ENTITY folderContextOpenInNewWindow.label "Mở trong cửa sổ mới">
+<!ENTITY folderContextOpenInNewWindow.accesskey "O">
+<!ENTITY folderContextOpenNewTab.label "Mở trong thẻ mới">
+<!ENTITY folderContextOpenNewTab.accesskey "o">
+<!ENTITY folderContextNew.label "Thư mục con mới…">
+<!ENTITY folderContextNew.accesskey "c">
+<!ENTITY folderContextRename.label "Đổi tên">
+<!ENTITY folderContextRename.accesskey "i">
+<!ENTITY folderContextRemove.label "Xóa">
+<!ENTITY folderContextRemove.accesskey "X">
+<!ENTITY folderContextCompact.label "Làm gọn">
+<!ENTITY folderContextCompact.accesskey "g">
+<!ENTITY folderContextEmptyTrash.label "Dọn sạch thùng rác">
+<!ENTITY folderContextEmptyTrash.accesskey "D">
+<!ENTITY folderContextEmptyJunk.label "Dọn sạch thư rác">
+<!ENTITY folderContextEmptyJunk.accesskey "r">
+<!ENTITY folderContextSendUnsentMessages.label "Gửi các thư chưa gửi">
+<!ENTITY folderContextSendUnsentMessages.accesskey "G">
+<!ENTITY folderContextUnsubscribe.label "Dừng theo dõi">
+<!ENTITY folderContextUnsubscribe.accesskey "D">
+<!ENTITY folderContextMarkNewsgroupRead.label "Đánh dấu nhóm tin là đã đọc">
+<!ENTITY folderContextMarkNewsgroupRead.accesskey "u">
+<!ENTITY folderContextMarkMailFolderRead.label "Đánh dấu thư mục là đã đọc">
+<!ENTITY folderContextMarkMailFolderRead.accesskey "u">
+<!ENTITY folderContextSubscribe.label "Theo dõi…">
+<!ENTITY folderContextSubscribe.accesskey "e">
+<!ENTITY folderContextSearchForMessages.label "Tìm kiếm thư…">
+<!ENTITY folderContextSearchForMessages.accesskey "S">
+<!ENTITY folderContextProperties2.label "Thuộc tính">
+<!ENTITY folderContextProperties2.accesskey "P">
+<!ENTITY folderContextFavoriteFolder.label "Thư mục yêu thích">
+<!ENTITY folderContextFavoriteFolder.accesskey "a">
+<!ENTITY folderContextSettings2.label "Cài đặt">
+<!ENTITY folderContextSettings2.accesskey "e">
+
+<!-- Search Bar -->
+<!ENTITY SearchNameOrEmail.label "Tên hoặc email chứa:">
+<!ENTITY SearchNameOrEmail.accesskey "N">
+
+<!-- Gloda Search Bar -->
+<!ENTITY glodaSearchBar.placeholder "Tìm kiếm thư…">
+
+<!-- Quick Search Menu Bar -->
+<!ENTITY searchSubjectMenu.label "Tiêu đề">
+<!ENTITY searchFromMenu.label "Người gửi">
+<!ENTITY searchSubjectOrFromMenu.label "Tiêu đề hoặc Từ">
+<!ENTITY searchRecipient.label "Người nhận hoặc Cc">
+<!ENTITY searchSubjectOrRecipientMenu.label "Tiêu đề, người nhận hoặc Cc">
+<!ENTITY searchMessageBody.label "Toàn bộ thư">
+<!ENTITY saveAsVirtualFolderMenu.label "Lưu tìm kiếm dưới dạng thư mục…">
+
+<!-- Thread Pane -->
+<!ENTITY selectColumn.label "Chọn thư">
+<!ENTITY threadColumn.label "Chủ đề">
+<!ENTITY fromColumn.label "Từ">
+<!ENTITY recipientColumn.label "Người nhận">
+<!ENTITY correspondentColumn.label "Người viết">
+<!ENTITY subjectColumn.label "Tiêu đề">
+<!ENTITY dateColumn.label "Ngày">
+<!ENTITY priorityColumn.label "Ưu tiên">
+<!ENTITY tagsColumn.label "Nhãn">
+<!ENTITY accountColumn.label "Tài khoản">
+<!ENTITY statusColumn.label "Trạng thái">
+<!ENTITY sizeColumn.label "Dung lượng">
+<!ENTITY junkStatusColumn.label "Trạng thái thư rác">
+<!ENTITY unreadColumn.label "Chưa đọc">
+<!ENTITY totalColumn.label "Tổng">
+<!ENTITY readColumn.label "Đã đọc">
+<!ENTITY receivedColumn.label "Nhận được">
+<!ENTITY starredColumn.label "Đã gắn dấu sao">
+<!ENTITY locationColumn.label "Địa chỉ">
+<!ENTITY idColumn.label "Thứ tự nhận được">
+<!ENTITY attachmentColumn.label "Đính kèm">
+<!ENTITY deleteColumn.label "Xóa">
+
+<!-- Thread Pane Tooltips -->
+<!ENTITY columnChooser2.tooltip "Chọn các cột để hiển thị">
+<!ENTITY selectColumn.tooltip "Chuyển đổi chọn tất cả các tin nhắn">
+<!ENTITY threadColumn2.tooltip "Hiển thị chủ đề thư">
+<!ENTITY fromColumn2.tooltip "Sắp xếp theo người gửi">
+<!ENTITY recipientColumn2.tooltip "Sắp xếp theo người nhận">
+<!ENTITY correspondentColumn2.tooltip "Sắp xếp theo người viết">
+<!ENTITY subjectColumn2.tooltip "Sắp xếp theo chủ đề">
+<!ENTITY dateColumn2.tooltip "Sắp xếp theo ngày">
+<!ENTITY priorityColumn2.tooltip "Sắp xếp theo mức độ ưu tiên">
+<!ENTITY tagsColumn2.tooltip "Sắp xếp theo nhãn">
+<!ENTITY accountColumn2.tooltip "Sắp xếp theo tài khoản">
+<!ENTITY statusColumn2.tooltip "Sắp xếp theo trạng thái">
+<!ENTITY sizeColumn2.tooltip "Sắp xếp theo kích thước">
+<!ENTITY junkStatusColumn2.tooltip "Sắp xếp theo trạng thái thư rác">
+<!ENTITY unreadColumn2.tooltip "Số lượng tin nhắn chưa đọc trong chủ đề">
+<!ENTITY totalColumn2.tooltip "Tổng số tin nhắn trong chủ đề">
+<!ENTITY readColumn2.tooltip "Sắp xếp theo đã đọc">
+<!ENTITY receivedColumn2.tooltip "Sắp xếp theo ngày nhận">
+<!ENTITY starredColumn2.tooltip "Sắp xếp theo sao">
+<!ENTITY locationColumn2.tooltip "Sắp xếp theo địa chỉ">
+<!ENTITY idColumn2.tooltip "Sắp xếp theo thứ tự nhận được">
+<!ENTITY attachmentColumn2.tooltip "Sắp xếp theo đính kèm">
+<!ENTITY deleteColumn.tooltip "Xóa tin nhắn">
+
+<!-- Thread Pane Context Menu -->
+<!ENTITY contextNewMsgFromTemplate.label "Thư mới từ mẫu">
+<!ENTITY contextOpenNewWindow.label "Mở thư trong cửa sổ mới">
+<!ENTITY contextOpenNewWindow.accesskey "M">
+<!-- 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 "Mở thư trong thẻ mới">
+<!ENTITY contextOpenNewTab.accesskey "T">
+<!ENTITY contextOpenConversation.label "Mở thư trong hội thoại">
+<!ENTITY contextOpenConversation.accesskey "o">
+<!ENTITY contextOpenContainingFolder.label "Mở thư trong thư mục chứa">
+<!ENTITY contextOpenContainingFolder.accesskey "n">
+<!ENTITY contextEditMsgAsNew.label "Chỉnh sửa như thư mới">
+<!ENTITY contextEditMsgAsNew.accesskey "E">
+<!ENTITY contextEditDraftMsg.label "Chỉnh sửa thư nháp">
+<!ENTITY contextEditTemplate.label "Chỉnh sửa mẫu">
+<!ENTITY contextEditTemplate.accesskey "T">
+<!ENTITY contextArchive.label "Lưu trữ">
+<!ENTITY contextArchive.accesskey "L">
+<!ENTITY contextReplySender.label "Chỉ trả lời người gửi">
+<!ENTITY contextReplySender.accesskey "g">
+<!ENTITY contextReplyNewsgroup2.label "Theo dõi nhóm tin">
+<!ENTITY contextReplyNewsgroup2.accesskey "u">
+<!ENTITY contextReplyAll.label "Trả lời tất cả">
+<!ENTITY contextReplyAll.accesskey "r">
+<!ENTITY contextReplyList.label "Trả lời danh sách">
+<!ENTITY contextReplyList.accesskey "D">
+<!ENTITY contextForward.label "Chuyển tiếp">
+<!ENTITY contextForward.accesskey "y">
+<!ENTITY contextForwardAsMenu.label "Chuyển tiếp dưới dạng">
+<!ENTITY contextForwardAsMenu.accesskey "o">
+<!ENTITY contextForwardAsInline.label "Ngay trong thư">
+<!ENTITY contextForwardAsInline.accesskey "I">
+<!ENTITY contextForwardAsAttachmentItem.label "Đính kèm">
+<!ENTITY contextForwardAsAttachmentItem.accesskey "A">
+<!ENTITY contextMultiForwardAsAttachment.label "Chuyển tiếp dưới dạng đính kèm">
+<!ENTITY contextMultiForwardAsAttachment.accesskey "o">
+<!ENTITY contextMoveMsgMenu.label "Di chuyển đến">
+<!ENTITY contextMoveMsgMenu.accesskey "D">
+<!ENTITY contextMoveCopyMsgRecentMenu.label "Gần đây">
+<!ENTITY contextMoveCopyMsgRecentMenu.accesskey "G">
+<!ENTITY contextMoveCopyMsgFavoritesMenu.label "Ưa thích">
+<!ENTITY contextMoveCopyMsgFavoritesMenu.accesskey "F">
+<!ENTITY contextCopyMsgMenu.label "Sao chép đến">
+<!ENTITY contextCopyMsgMenu.accesskey "C">
+<!ENTITY contextKillThreadMenu.label "Bỏ qua chủ đề">
+<!ENTITY contextKillSubthreadMenu.accesskey "b">
+<!ENTITY contextKillThreadMenu.accesskey "I">
+<!ENTITY contextKillSubthreadMenu.label "Bỏ qua chủ đề con">
+<!ENTITY contextWatchThreadMenu.label "Theo dõi chủ đề">
+<!-- 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 "Lưu thành…">
+<!ENTITY contextSaveAs.accesskey "L">
+<!ENTITY contextPrint.label "In…">
+<!ENTITY contextPrint.accesskey "I">
+<!ENTITY contextPrintPreview.label "Xem trước khi in">
+<!ENTITY contextPrintPreview.accesskey "e">
+
+<!-- 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 "Áp dụng cột cho…">
+<!-- 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 "Thư mục…">
+<!-- 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 "Thư mục và thư mục con của nó…">
+<!-- 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 "Thư mục này">
+
+<!-- Media (video/audio) controls -->
+<!ENTITY contextPlay.label "Phát">
+<!ENTITY contextPlay.accesskey "C">
+<!ENTITY contextPause.label "Tạm dừng">
+<!ENTITY contextPause.accesskey "d">
+<!ENTITY contextMute.label "Tắt tiếng">
+<!ENTITY contextMute.accesskey "g">
+<!ENTITY contextUnmute.label "Bật tiếng">
+<!ENTITY contextUnmute.accesskey "B">
+
+<!-- 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 "Tìm kiếm #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;&#x2318;K&gt;">
+
+<!-- Message Header Context Menu -->
+<!ENTITY AddToAddressBook.label "Thêm vào sổ địa chỉ…">
+<!ENTITY AddToAddressBook.accesskey "a">
+<!ENTITY AddDirectlyToAddressBook.label "Thêm vào sổ địa chỉ">
+<!ENTITY AddDirectlyToAddressBook.accesskey "a">
+<!ENTITY EditContact1.label "Chỉnh sửa liên hệ">
+<!ENTITY EditContact1.accesskey "E">
+<!ENTITY ViewContact.label "Xem liên hệ">
+<!ENTITY ViewContact.accesskey "H">
+<!ENTITY SubscribeToNewsgroup.label "Đăng kí theo dõi nhóm tin">
+<!ENTITY SubscribeToNewsgroup.accesskey "N">
+<!ENTITY SendMessageTo.label "Soạn thư đến">
+<!ENTITY SendMessageTo.accesskey "S">
+<!ENTITY CopyEmailAddress.label "Sao chép địa chỉ email">
+<!ENTITY CopyEmailAddress.accesskey "C">
+<!ENTITY CopyNameAndEmailAddress.label "Sao chép tên và địa chỉ email">
+<!ENTITY CopyNameAndEmailAddress.accesskey "N">
+<!ENTITY CopyNewsgroupName.label "Sao chép tên nhóm tin">
+<!ENTITY CopyNewsgroupName.accesskey "C">
+<!ENTITY CopyNewsgroupURL.label "Sao chép URL nhóm tin">
+<!ENTITY CopyNewsgroupURL.accesskey "U">
+<!ENTITY CreateFilterFrom.label "Tạo bộ lọc từ…">
+<!ENTITY CreateFilterFrom.accesskey "B">
+<!ENTITY reportPhishingURL.label "Báo cáo email lừa đảo">
+<!ENTITY reportPhishingURL.accesskey "o">
+
+<!-- Spell checker context menu items -->
+<!ENTITY spellAddDictionaries.label "Thêm từ điển…">
+<!ENTITY spellAddDictionaries.accesskey "m">
+
+<!-- Content Pane Context Menu -->
+<!ENTITY saveLinkAsCmd.label "Lưu liên kết dưới dạng…">
+<!ENTITY saveLinkAsCmd.accesskey "K">
+<!ENTITY saveImageAsCmd.label "Lưu ảnh dưới dạng…">
+<!ENTITY saveImageAsCmd.accesskey "L">
+<!ENTITY copyLinkCmd.label "Sao chép địa chỉ liên kết">
+<!ENTITY copyLinkCmd.accesskey "a">
+<!ENTITY copyImageAllCmd.label "Sao chép ảnh">
+<!ENTITY copyImageAllCmd.accesskey "p">
+<!ENTITY copyEmailCmd.label "Sao chép địa chỉ email">
+<!ENTITY copyEmailCmd.accesskey "E">
+<!ENTITY stopCmd.label "Dừng">
+<!ENTITY stopCmd.accesskey "D">
+<!ENTITY reloadCmd.label "Tải lại">
+<!ENTITY reloadCmd.accesskey "i">
+<!ENTITY openInBrowser.label "Mở trong trình duyệt">
+<!ENTITY openInBrowser.accesskey "o">
+<!ENTITY openLinkInBrowser.label "Mở liên kết trong trình duyệt">
+<!ENTITY openLinkInBrowser.accesskey "o">
+
+<!-- Statusbar -->
+<!ENTITY statusText.label "Xong">
+
+<!-- Mac OS X Window Menu -->
+<!ENTITY minimizeWindow.label "Thu nhỏ">
+<!ENTITY minimizeWindow.key "m">
+<!ENTITY bringAllToFront.label "Đưa tất cả ra phía trước">
+<!ENTITY zoomWindow.label "Thu phóng">
+
+<!-- Mac OS X Application Menu (Cocoa widgets) -->
+<!ENTITY preferencesCmdMac2.label "Tùy chỉnh">
+<!ENTITY preferencesCmdMac.commandkey ",">
+<!ENTITY preferencesCmdMac.modifiers "accel">
+<!ENTITY servicesMenuMac.label "Dịch vụ">
+<!ENTITY hideThisAppCmdMac.label "Ẩn &brandShortName;">
+<!ENTITY hideThisAppCmdMac.commandkey "H">
+<!ENTITY hideThisAppCmdMac.modifiers "accel">
+<!ENTITY hideOtherAppsCmdMac.label "Ẩn các chương trình khác">
+<!ENTITY hideOtherAppsCmdMac.commandkey "H">
+<!ENTITY hideOtherAppsCmdMac.modifiers "accel,alt">
+<!ENTITY showAllAppsCmdMac.label "Hiện tất cả">
+
+<!-- Mac OS X Dock Icon pop-up menu -->
+<!ENTITY dockOptions.label "Tùy chọn biểu tượng ứng dụng…">
+<!ENTITY writeNewMessageDock.label "Viết thư mới">
+<!ENTITY openAddressBookDock.label "Mở sổ địa chỉ">
+
+<!-- Content tab Navigation buttons -->
+<!ENTITY browseBackButton.tooltip "Trở lại trang trước">
+<!ENTITY browseForwardButton.tooltip "Tiến tới trang sau">
diff --git a/l10n-vi/mail/chrome/messenger/messenger.properties b/l10n-vi/mail/chrome/messenger/messenger.properties
new file mode 100644
index 0000000000..f01b707fc9
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/messenger.properties
@@ -0,0 +1,768 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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=Xóa tài khoản…
+newFolderMenuItem=Thư mục…
+newSubfolderMenuItem=Thư mục con…
+newFolder=Thư mục mới…
+newSubfolder=Thư mục con mới…
+markFolderRead=Đánh dấu thư mục là đã đọc;Đánh dấu các thư mục là đã đọc
+markNewsgroupRead=Đánh dấu nhóm tin là đã đọc;Đánh dấu các nhóm tin là đã đọc
+folderProperties=Thuộc tính thư mục
+newTag=Nhãn mới…
+# LOCALIZATION NOTE (getNextNewsMessages): Semi-colon list of plural forms.
+# #1 is the number of news messages to get.
+getNextNewsMessages=Nhận #1 tin tức tiếp theo;Nhận #1 tin tức tiếp theo
+advanceNextPrompt=Đi tới thư chưa đọc tiếp theo trong %S?
+titleNewsPreHost=trên
+replyToSender=Trả lời người gửi
+reply=Trả lời
+EMLFiles=Tập tin thư
+OpenEMLFiles=Mở thư
+# 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=Lưu thư dưới dạng
+SaveAttachment=Lưu đính kèm
+SaveAllAttachments=Lưu tất cả đính kèm
+DetachAttachment=Tách đính kèm
+DetachAllAttachments=Tách tất cả đính kèm
+ChooseFolder=Chọn thư mục
+MessageLoaded=Thư đã được nạp…
+PreviewTitle=%S - %S
+saveAttachmentFailed=Không thể lưu tập tin đính kèm. Vui lòng kiểm tra tên tập tin và thử lại sau.
+saveMessageFailed=Không thể lưu thư. Vui lòng kiểm tra tên tập tin và thử lại sau.
+fileExists=%S đã tồn tại. Bạn có muốn thay thế nó?
+# LOCALIZATION NOTE(failedToReadFile): %1$S is replaced by the file name, %2$S is replaced by the reason the file load failed.
+failedToReadFile=Không thể đọc tập tin: %1$S lý do: %2$S
+
+downloadingNewsgroups=Đang tải xuống các nhóm tin để sử dụng ngoại tuyến
+downloadingMail=Đang tải xuống thư để sử dụng ngoại tuyến
+sendingUnsent=Đang gửi thư chưa được gửi
+
+folderExists=Tên thư mục đó đã tồn tại. Vui lòng nhập một tên khác.
+# 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=Thư mục con có tên '%1$S' đã tồn tại trong thư mục '%2$S'. Bạn có muốn di chuyển thư mục này bằng tên mới '%3$S' không?
+folderCreationFailed=Không thể tạo thư mục vì tên mà bạn nhập vào chứa một kí tự không thể nhận dạng. Vui lòng nhập một tên khác và thử lại.
+
+compactingFolder=Đang làm gọn thư mục %S…
+# LOCALIZATION NOTE(compactingDone): %1$S is the compaction gain.
+compactingDone=Đã xong việc nén (khoảng %1$S đã lưu).
+
+confirmFolderDeletionForFilter=Xóa thư mục '%S' cũng sẽ vô hiệu hóa các bộ lọc của nó. Bạn có chắc là bạn muốn xóa thư mục không?
+alertFilterChanged=Bộ lọc trong thư mục này sẽ được cập nhật.
+filterDisabled=Không thể tìm thấy thư mục '%S', cho nên bộ lọc đi cùng với nó sẽ bị vô hiệu hóa. Hãy xác minh xem thư mục có tồn tại không, và bộ lọc có chỉ đến đúng thư mục hợp lệ không.
+filterFolderDeniedLocked=Không thể lọc thư vào thư mục '%S' vì đang diễn ra một thao tác khác.
+parsingFolderFailed=Không thể mở thư mục %S vì nó đang được dùng trong thao tác khác. Vui lòng đợi cho đến khi thao tác đó hoàn thành rồi chọn thư mục lại.
+deletingMsgsFailed=Không thể xóa thư mục %S vì nó đang được dùng trong thao tác khác. Vui lòng đợi cho đến khi thao tác đó hoàn thành rồi chọn thư mục lại.
+alertFilterCheckbox=Đừng cảnh báo tôi nữa.
+compactFolderDeniedLock=Không thể làm gọn thư mục '%S' vì đang diễn ra thao tác khác. Vui lòng thử lại sau.
+compactFolderWriteFailed=Không thể làm gọn thư mục '%S' vì việc ghi vào thư mục bị thất bại. Hãy xác minh xem bạn có đủ dung lượng đĩa, và bạn có quyền ghi lên hệ thống tập tin không, rồi thử lại.
+compactFolderInsufficientSpace=Một số thư mục (ví dụ: '%S') không thể nén vì không đủ dung lượng đĩa trống. Vui lòng xóa một số tập tin và thử lại.
+filterFolderHdrAddFailed=Các thư không thể được lọc vào thư mục '%S' vì không thể thêm một thư vào nó. Xác minh rằng thư mục đang hiển thị đúng hoặc thử sửa chữa nó từ các thuộc tính thư mục.
+filterFolderWriteFailed=Không thể lọc thư vào thư mục '%S' việc ghi vào thư mục bị thất bại. Hãy xác minh xem bạn có đủ dung lượng đĩa, và bạn có quyền ghi lên hệ thống tập tin không, rồi thử lại.
+copyMsgWriteFailed=Không thể sao chép hoặc di chuyển thư vào thư mục '%S' vì việc ghi vào thư mục bị thất bại. Để lấy thêm dung lượng đĩa, từ menu Tập tin, đầu tiên chọn Dọn sạch thùng rác, rồi chọn Làm gọn thư mục, rồi thử lại.
+cantMoveMsgWOBodyOffline=Khi làm việc ngoại tuyến, bạn không thể di chuyển hoặc chép những thư chưa được tải cho việc dùng ngoại tuyến. Từ cửa sổ Thư, mở trình đơn Tập tin, chọn Ngoại tuyến, rồi bỏ chọn Làm việc Ngoại tuyến, rồi thử lại.
+operationFailedFolderBusy=Thao tác bị thất bại vì một thao tác khác đang dùng thư mục. Vui lòng đợi cho đến khi thao tác đó hoàn thành rồi thử lại.
+folderRenameFailed=Không thể đổi tên thư mục. Có thể thư mục đang được phân tích, hoặc tên mới không phải là tên hợp lệ.
+# LOCALIZATION NOTE(verboseFolderFormat): %1$S is folder name, %2$S is server name
+verboseFolderFormat=%1$S trên %2$S
+# LOCALIZATION NOTE(filterFolderTruncateFailed): %1$S is replaced by the folder name, %2$S is replaced by the brandShortName
+filterFolderTruncateFailed=Có lỗi khi xóa sạch Hộp thư sau khi lọc một thư vào thư mục '%1$S'. Có thể bạn cần tắt %2$S và xóa INBOX.msf.
+
+mailboxTooLarge=Thư mục %S đã đầy, và không thể giữ thêm thư nữa. Để có thêm chỗ chứa thư, hãy xóa những thư cũ hoặc không mong muốn, và làm gọn thư mục.
+outOfDiskSpace=Không có đủ dung lượng đĩa để tải thư mới. Hãy thử xóa thư cũ, làm trống thư mục Thùng rác và nén thư mục thư của bạn, sau đó thử lại.
+errorGettingDB=Không thể mở tập tin tóm tắt cho %S. Có lẽ có lỗi trên đĩa, hoặc đường dẫn đầy đủ quá dài.
+defaultServerTag=(Mặc định)
+
+# Used in message database list view to provide a text value for graphic based cells.
+messageUnread=Chưa đọc
+messageHasFlag=Đã gắn dấu sao
+messageHasAttachment=Có đính kèm
+messageJunk=Thư rác
+messageExpanded=Mở rộng
+messageCollapsed=Thu gọn
+
+# Used in the SMTP Account Settings panel when a server value has no properties
+smtpServerList-NotSpecified=<không chỉ định>
+smtpServer-ConnectionSecurityType-0=Không
+smtpServer-ConnectionSecurityType-1=STARTTLS, nếu có
+smtpServer-ConnectionSecurityType-2=STARTTLS
+smtpServer-ConnectionSecurityType-3=SSL/TLS
+smtpServers-confirmServerDeletionTitle=Xóa máy chủ
+smtpServers-confirmServerDeletion=Bạn có chắc là bạn muốn xóa máy chủ: \n %S?
+
+# Account Settings - Both Incoming and SMTP server
+authNo=Không xác thực
+authOld=Mật khẩu, phương thức gốc (không an toàn)
+authPasswordCleartextInsecurely=Mật khẩu, truyền không an toàn
+authPasswordCleartextViaSSL=Mật khẩu bình thường
+authPasswordEncrypted=Mật khẩu được mã hóa
+authKerberos=Kerberos / GSSAPI
+authExternal=Chứng chỉ TLS
+authNTLM=NTLM
+authOAuth2=OAuth2
+authAnySecure=Bất kỳ phương pháp an toàn (không dùng nữa)
+authAny=Bất kỳ phương pháp nào (không an toàn)
+
+# 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=Nhập thông tin đăng nhập cho %1$S trên %2$S
+
+# LOCALIZATION NOTE(serverType-nntp): Do not translate "NNTP" in the line below
+serverType-nntp=Máy chủ tin tức (NNTP)
+# LOCALIZATION NOTE(serverType-pop3): Do not translate "POP" in the line below
+serverType-pop3=Máy chủ thư POP
+# LOCALIZATION NOTE(serverType-imap): Do not translate "IMAP" in the line below
+serverType-imap=Máy chủ thư IMAP
+serverType-none=Lưu trữ thư nội bộ
+
+sizeColumnTooltip2=Sắp xếp theo kích thước
+sizeColumnHeader=Kích thước
+linesColumnTooltip2=Sắp xếp theo dòng
+linesColumnHeader=Dòng
+
+# 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=Nhận thư mới cho %S
+# Used to separate email addresses in a list. Note the trailing space ', '
+getMsgButtonTooltip.listSeparator=,\u0020
+
+# status feedback stuff
+documentDone=
+documentLoading=Đang tải thư…
+
+# 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=Đồng bộ hóa thư mục %1$S từ %2$S…
+
+unreadMsgStatus=Chưa đọc: %S
+selectedMsgStatus=Đã chọn: %S
+totalMsgStatus=Tổng: %S
+
+# localized folder names
+
+localFolders=Thư mục cục bộ
+
+# LOCALIZATION NOTE (inboxFolderName): OK to translate all foldernames, bugzilla #57440 & bugzilla #23625 fixed
+inboxFolderName=Hộp thư
+trashFolderName=Thùng rác
+sentFolderName=Thư đã gửi
+draftsFolderName=Thư nháp
+templatesFolderName=Thư mẫu
+outboxFolderName=Thư chờ gửi
+junkFolderName=Thư rác
+archivesFolderName=Lưu trữ
+
+# "Normal" priority is often blank,
+# depending on the consumers of these strings
+priorityLowest=Thấp nhất
+priorityLow=Thấp
+priorityNormal=Bình thường
+priorityHigh=Cao
+priorityHighest=Cao nhất
+
+#Group by date thread pane titles
+today=Hôm nay
+yesterday=Hôm qua
+lastWeek=Tuần trước
+last7Days=7 ngày qua
+twoWeeksAgo=Hai tuần trước
+last14Days=14 ngày qua
+older=Cũ hơn
+futureDate=Tương lai
+
+#Grouped By Tags
+untaggedMessages=Thư không dán nhãn
+
+# Grouped by status
+messagesWithNoStatus=Không trạng thái
+
+#Grouped by priority
+noPriority=Không ưu tiên
+
+#Grouped by has attachments
+noAttachments=Không đính kèm
+attachments=Đính kèm
+
+#Grouped by starred
+notFlagged=Không gắn sao
+groupFlagged=Gắn sao
+
+# defaults descriptions for tag prefs listed in mailnews.js
+# (we keep the .labels. names for backwards compatibility)
+mailnews.tags.remove=Xóa tất cả các nhãn
+mailnews.labels.description.1=Quan trọng
+mailnews.labels.description.2=Làm việc
+mailnews.labels.description.3=Cá nhân
+mailnews.labels.description.4=Sẽ làm
+mailnews.labels.description.5=Để sau
+
+# 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=Đã trả lời
+forwarded=Đã chuyển tiếp
+redirected=Đã chuyển hướng
+new=Mới
+read=Đã đọc
+flagged=Gắn sao
+
+# for junk status picker in search and mail views
+junk=Thư rác
+
+# for junk score origin picker in search and mail views
+junkScoreOriginPlugin=Phần bổ trợ
+junkScoreOriginFilter=Bộ lọc
+junkScoreOriginWhitelist=Danh sách trắng
+junkScoreOriginUser=Người dùng
+junkScoreOriginImapFlag=Cờ IMAP
+
+# for the has attachment picker in search and mail views
+hasAttachments=Có đính kèm
+
+# for the Tag picker in search and mail views.
+tag=Nhãn
+
+# 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=và những người khác.
+
+# 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=Nội dung của thư này chưa được tải xuống từ \
+máy chủ để đọc ngoại tuyến. Để đọc thư này, \
+bạn phải kết nối lại với mạng, chọn Ngoại tuyến từ \
+menu Tập tin và sau đó bỏ chọn Làm việc ngoại tuyến. \
+Trong tương lai, bạn có thể chọn thư hoặc thư mục để đọc ngoại tuyến. Để \
+làm điều này, chọn Ngoại tuyến từ menu Tập tin, sau đó chọn Tải xuống/Đồng bộ hóa ngay. \
+Bạn có thể điều chỉnh tùy chọn Dung lượng đĩa để ngăn việc tải xuống thư quá lớn.
+
+# 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=Thư
+newsAcctType=Tin tức
+feedsAcctType=Nguồn cấp
+
+# LOCALIZATION NOTE(nocachedbodytitle): Do not translate "<TITLE>" or "</TITLE>" in the line below
+nocachedbodytitle=<TITLE>Chuyển sang trực tuyến để xem thư này</TITLE>\n
+
+# mailWindowOverlay.js
+confirmUnsubscribeTitle=Xác nhận dừng theo dõi
+confirmUnsubscribeText=Bạn có chắc chắn muốn dừng theo dõi %S?
+confirmUnsubscribeManyText=Bạn có chắc chắn muốn dừng theo dõi khỏi các nhóm tin này?
+restoreAllTabs=Mở lại tất cả các thẻ
+
+confirmMarkAllFoldersReadTitle=Đánh dấu tất cả thư mục là đã đọc
+confirmMarkAllFoldersReadMessage=Bạn có chắc chắn muốn đánh dấu tất cả các thư trong tất cả các thư mục của tài khoản này là đã đọc không?
+
+# LOCALIZATION NOTE(junkBarMessage): %S is brand
+junkBarMessage=%S nghĩ rằng thư này là thư rác.
+junkBarButton=Không phải thư rác
+junkBarButtonKey=N
+junkBarInfoButton=Tìm hiểu thêm
+junkBarInfoButtonKey=L
+
+# LOCALIZATION NOTE(remoteContentBarMessage): %S is brand
+remoteContentBarMessage=Để bảo vệ quyền riêng tư của bạn, %S đã chặn nội dung từ xa trong thư này.
+remoteContentPrefLabel=Tùy chọn
+remoteContentPrefAccesskey=O
+remoteContentPrefLabelUnix=Tùy chỉnh
+remoteContentPrefAccesskeyUnix=P
+
+# LOCALIZATION NOTE(remoteAllowResource): %S is origin
+remoteAllowResource=Cho phép nội dung từ xa từ %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=Cho phép nội dung từ xa từ tất cả #1 nguồn gốc được liệt kê ở trên
+
+phishingBarMessage=Thư này có vẻ như lừa đảo.
+phishingBarPrefLabel=Tùy chọn
+phishingBarPrefAccesskey=O
+phishingBarPrefLabelUnix=Tùy chỉnh
+phishingBarPrefAccesskeyUnix=P
+
+mdnBarIgnoreButton=Bỏ qua yêu cầu
+mdnBarIgnoreButtonKey=n
+mdnBarSendReqButton=Gửi biên nhận
+mdnBarSendReqButtonKey=S
+
+draftMessageMsg=Đây là một thư nháp.
+draftMessageButton=Chỉnh sửa
+draftMessageButtonKey=E
+
+# msgHdrViewOverlay.js
+openLabel=Mở
+openLabelAccesskey=M
+saveLabel=Lưu thành…
+saveLabelAccesskey=L
+detachLabel=Tách rời…
+detachLabelAccesskey=a
+deleteLabel=Xóa
+deleteLabelAccesskey=a
+openFolderLabel=Mở thư mục chứa
+openFolderLabelAccesskey=F
+deleteAttachments=Các phần đính kèm sau đây sẽ bị xóa vĩnh viễn khỏi thư này:\n%S\nThao tác này sẽ không thể hoàn tác được. Bạn có muốn tiếp tục không?
+detachAttachments=Các phần đính kèm sau đây đã được lưu thành công và sẽ bị xóa vĩnh viễn khỏi thư này:\n%S\nThao tác này sẽ không thể hoàn tác được. Bạn có muốn tiếp tục không?
+deleteAttachmentFailure=Không xóa được các tập tin đính kèm đã chọn.
+emptyAttachment=Phần đính kèm này có vẻ rỗng.\nVui lòng hỏi lại người đã gửi tập tin này.\nThông thường, tường lửa hoặc trình diệt virút sẽ xóa các tập tin đính kèm.
+externalAttachmentNotFound=Tập tin tách rời hoặc tập tin đính kèm liên kết này không được tìm thấy hoặc không thể truy cập được tại vị trí này nữa.
+
+# LOCALIZATION NOTE (attachmentCount): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# #1 number of attachments
+attachmentCount=#1 đính kèm
+
+# 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 đính kèm:
+
+# LOCALIZATION NOTE (attachmentSizeUnknown): The string to show for the total
+# size of all attachments when none of the attachments' sizes can be detected.
+attachmentSizeUnknown=kích cỡ không rõ
+
+# 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=ít nhất %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=Đính kèm:
+
+# Connection Error Messages
+# LOCALIZATION NOTE(unknownHostError): %S is the server name
+unknownHostError=Không thể kết nối với máy chủ %S.
+# LOCALIZATION NOTE(connectionRefusedError): %S is the server name
+connectionRefusedError=Không thể kết nối với máy chủ %S; kết nối đã bị từ chối.
+# LOCALIZATION NOTE(netTimeoutError): %S is the server name
+netTimeoutError=Đã hết thời gian kết nối tới máy chủ %S.
+# LOCALIZATION NOTE(netResetError): %S is the server name
+netResetError=Kết nối với máy chủ %S đã được đặt lại.
+# LOCALIZATION NOTE(netInterruptError): %S is the server name
+netInterruptError=Kết nối với máy chủ %S bị gián đoạn.
+
+recipientSearchCriteria=Tiêu đề hoặc người nhận chứa:
+fromSearchCriteria=Tiêu đề hoặc người gửi chứa:
+
+# LOCALIZATION NOTE(biffNotification): %1$S is the number of new messages
+biffNotification_message=có %1$S thư mới
+biffNotification_messages=có %1$S thư mới
+
+# LOCALIZATION NOTE(newMailNotification_message): %1$S is the name of the account %2$S is the number of new messages
+newMailNotification_message=%1$S đã nhận %2$S thư mới
+
+# LOCALIZATION NOTE(newMailNotification_messages): %1$S is the name of the account %2$S is the number of new messages
+newMailNotification_messages=%1$S đã nhận %2$S thư mới
+
+# 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 từ %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 đã nhận #2 thư mới
+
+# For the Quota tab in the mail folder properties dialog
+quotaPercentUsed=%S%% đủ
+# for quota in main window (commandglue.js)
+percent=%S%%
+quotaTooltip2=Hạn mức IMAP: Đã dùng %S trên tổng số %S. Nhấp để biết thêm chi tiết.
+
+# for message views
+confirmViewDeleteTitle=Xác nhận
+confirmViewDeleteMessage=Bạn có chắc là bạn muốn xóa cách hiển thị này?
+
+# for virtual folders
+confirmSavedSearchTitle=Xác nhận xóa
+confirmSavedSearchDeleteMessage=Bạn có chắc là bạn muốn xóa tìm kiếm đã được lưu này?
+
+## @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=Nhập mật khẩu cho %1$S trên %2$S:
+
+## @name ENTER_PASSWORD_PROMPT_TITLE
+## @loc None
+passwordTitle=Yêu cầu mật khẩu máy chủ thư
+
+# for checking if the user really wants to open lots of messages in separate windows.
+openWindowWarningTitle=Xác nhận
+# LOCALIZATION NOTE (openWindowWarningConfirmation): Semi-colon list of plural forms.
+# #1 is the number of messages the user is attempting to open.
+openWindowWarningConfirmation=Việc mở #1 thư có thể bị chậm. Tiếp tục?
+
+# for checking if the user really wants to open lots of messages in tabs.
+openTabWarningTitle=Xác nhận
+# LOCALIZATION NOTE (openTabWarningConfirmation): Semi-colon list of plural forms.
+# #1 is the number of messages the user is attempting to open.
+openTabWarningConfirmation=Việc mở #1 thư có thể bị chậm. Tiếp tục?
+
+# for warning the user that a tag they're trying to create already exists
+tagExists=Tên nhãn đã tồn tại.
+
+# title of the edit tag dialog
+editTagTitle=Chỉnh sửa nhãn
+
+# for the virtual folder list dialog title
+# %S is the name of the saved search folder
+editVirtualFolderPropertiesTitle=Chỉnh sửa thuộc tính tìm kiếm đã lưu cho %S
+# LOCALIZATION NOTE (foldersChosen): #1 number of chosen folders
+virtualFolderSourcesChosen=#1 thư mục được chọn
+
+#alert to inform the user to choose one or more folders to search for a saved search folder
+alertNoSearchFoldersSelected=Bạn phải chọn ít nhất một thư mục để tìm.
+
+# These are displayed in the message and folder pane windows
+# LOCALIZATION NOTE %.*f is the abbreviated size in the appropriate units
+byteAbbreviation2=%.*f byte
+kiloByteAbbreviation2=%.*f KB
+megaByteAbbreviation2=%.*f MB
+gigaByteAbbreviation2=%.*f GB
+teraByteAbbreviation2=%.*f TB
+petaByteAbbreviation2=%.*f PB
+
+## 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 trong thư mục này, %2$S trong thư mục con
+
+# Error message if message for a message id wasn't found
+errorOpenMessageForMessageIdTitle=Lỗi khi mở id-thư
+errorOpenMessageForMessageIdMessage=Không tìm thấy thư cho id-thư %S
+
+# Warnings to alert users about phishing urls
+confirmPhishingTitle=Báo động Lừa đảo Email
+linkMismatchTitle=Đã phát hiện liên kết không khớp
+#LOCALIZATION NOTE %1$S is the brand name, %2$S is the host name of the url being visited
+confirmPhishingUrl=%1$S nghĩ rằng thư này là thư lừa đảo. Liên kết trong thư có thể sẽ cố mạo danh trang web mà bạn muốn vào. Bạn có chắc là bạn muốn vào %2$S không?
+#LOCALIZATION NOTE %1$S is the host name of indicated host, %2$S is the host name of the actual host.
+confirmPhishingUrlAlternate=Liên kết bạn vừa nhấp dường như dẫn đến một trang web khác với những gì văn bản liên kết đã chỉ ra. Điều này đôi khi được sử dụng để theo dõi xem bạn có nhấp vào liên kết hay không, nhưng nó cũng có thể là một trò lừa đảo.\n\nVăn bản liên kết chỉ ra rằng liên kết sẽ dẫn đến %1$S, nhưng nó dẫn đến %2$S.
+#LOCALIZATION NOTE $1$S is the host name of the indicated host.
+confirmPhishingGoAhead=Tiếp tục đi đến %1$S
+#LOCALIZATION NOTE %1$S is the host name that was displayed to the user.
+confirmPhishingGoDirect=Đi đến %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=Tìm bản Cập nhật…
+updatesItem_defaultFallback=Tìm bản Cập nhật…
+updatesItem_default.accesskey=C
+updatesItem_downloading=Đang tải xuống %S…
+updatesItem_downloadingFallback=Đang tải bản cập nhật xuống…
+updatesItem_downloading.accesskey=D
+updatesItem_resume=Tiếp tục tải xuống %S…
+updatesItem_resumeFallback=Tiếp tục tải xuống bản cập nhật…
+updatesItem_resume.accesskey=T
+updatesItem_pending=Cài đặt bản cập nhật ngay…
+updatesItem_pendingFallback=Cài đặt bản cập nhật ngay…
+updatesItem_pending.accesskey=C
+
+# Folder Pane Header Title Strings
+folderPaneModeHeader_all=Tất cả Thư mục
+folderPaneModeHeader_unread=Thư mục Chưa đọc
+folderPaneModeHeader_favorite=Thư mục Ưa thích
+folderPaneModeHeader_recent=Thư mục Gần đây
+folderPaneModeHeader_smart=Thư mục Hợp nhất
+unifiedAccountName=Thư mục Hợp nhất
+
+# 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=Di chuyển đến "%1$S" Lần nữa
+moveToFolderAgainAccessKey=L
+#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=Sao chép đến "%1$S" một lần nữa
+copyToFolderAgainAccessKey=L
+
+#LOCALIZATION NOTE(mdnBarMessageNormal) %1$S is the name of the sender
+mdnBarMessageNormal=%1$S đã yêu cầu được thông báo khi bạn đọc thư này.
+#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 đã yêu cầu được thông báo (tại %2$S) khi bạn đọc thông báo này.
+
+# mailCommands.js
+emptyJunkFolderTitle=Làm trống "%S"
+emptyJunkFolderMessage=Xóa tất cả thư và thư mục con trong thư mục rác?
+emptyJunkDontAsk=Đừng hỏi lại tôi nữa.
+emptyTrashFolderTitle=Làm trống "%S"
+emptyTrashFolderMessage=Xóa tất cả thư và thư mục con trong thư mục rác?
+emptyTrashDontAsk=Đừng hỏi lại tôi nữa.
+
+# junkCommands.js
+junkAnalysisPercentComplete=Phân tích Thư rác đã hoàn tất %S
+processingJunkMessages=Đang xử lí Thư rác
+
+# Messenger bootstrapping messages
+fileNotFoundTitle = Không tìm thấy Tập tin
+#LOCALIZATION NOTE(fileNotFoundMsg): %S is the filename
+fileNotFoundMsg = Tập tin %S không tồn tại.
+
+fileEmptyTitle = Tập tin rỗng
+#LOCALIZATION NOTE(fileEmptyMsg): %S is the filename
+fileEmptyMsg = Tập tin %S rỗng.
+
+# 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=thêm #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=, và #1 khác
+
+# 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=Tôi
+
+# LOCALIZATION NOTE (headerfromFieldMe): first person prepositional object
+# pronoun used in the "from" header of the message header pane.
+headerfromFieldMe=Tôi
+
+# LOCALIZATION NOTE (headerreply-toFieldMe): first person prepositional
+# object pronoun used in the "reply-to" header of the message header pane.
+headerreply-toFieldMe=Tôi
+
+# LOCALIZATION NOTE (headerccFieldMe): first person prepositional object
+# pronoun used in the "cc" header of the message header pane.
+headerccFieldMe=Tôi
+
+# LOCALIZATION NOTE (headerbccFieldMe): first person prepositional object
+# pronoun used in the "bcc" header of the message header pane.
+headerbccFieldMe=Tôi
+
+expandAttachmentPaneTooltip=Hiển thị khung đính kèm
+collapseAttachmentPaneTooltip=Ẩn ngăn đính kèm
+
+# Shown when content tabs are being loaded.
+loadingTab=Đang tải…
+
+confirmMsgDelete.title=Xác nhận xóa
+confirmMsgDelete.collapsed.desc=Điều này sẽ xóa thư trong chủ đề đã thu gọn. Bạn có chắc chắn muốn tiếp tục?
+confirmMsgDelete.deleteNoTrash.desc=Thao tác này sẽ xóa thư ngay lập tức mà không chuyển vào thùng rác. Bạn có chắc chắn muốn tiếp tục?
+confirmMsgDelete.deleteFromTrash.desc=Thao tác này sẽ xóa vĩnh viễn thư khỏi thùng rác. Bạn có chắc chắn muốn tiếp tục?
+confirmMsgDelete.dontAsk.label=Đừng hỏi lại tôi nữa.
+confirmMsgDelete.delete.label=Xóa
+
+mailServerLoginFailedTitle=Đăng nhập bị Thất bại
+# LOCALIZATION NOTE (mailServerLoginFailedTitleWithAccount):
+# "%S" is the account name.
+mailServerLoginFailedTitleWithAccount=Không thể đăng nhập vào tài khoản "%S"
+# LOCALIZATION NOTE (mailServerLoginFailed2):
+# %1$S is the host name of the server, %2$S is the user name.
+mailServerLoginFailed2=Không thể đăng nhập vào máy chủ %1$S với tên người dùng %2$S.
+mailServerLoginFailedRetryButton=&Thử lại
+mailServerLoginFailedEnterNewPasswordButton=&Nhập Mật Khẩu Mới
+
+# 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=Áp dụng các thay đổi?
+# 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=Áp dụng các cột của thư mục hiện tại cho %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=Áp dụng các thay đổi?
+# 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=Áp dụng các cột của thư mục hiện tại cho %S và thư mục con của nó?
+
+# LOCALIZATION NOTE (lwthemeInstallRequest.message): %S will be replaced with
+# the host name of the site.
+lwthemeInstallRequest.message=Trang này (%S) có ý định cài đặt một giao diện.
+lwthemeInstallRequest.allowButton=Cho phép
+lwthemeInstallRequest.allowButton.accesskey=C
+
+lwthemePostInstallNotification.message=Một giao diện mới đã được cài đặt.
+lwthemePostInstallNotification.undoButton=Hoàn tác
+lwthemePostInstallNotification.undoButton.accesskey=H
+lwthemePostInstallNotification.manageButton=Quản lí Giao diện…
+lwthemePostInstallNotification.manageButton.accesskey=Q
+
+# troubleshootModeRestart
+troubleshootModeRestartPromptTitle=Khởi động lại trong chế độ xử lý sự cố
+troubleshootModeRestartPromptMessage=Chế độ xử lý sự cố sẽ tắt tất cả các tiện ích mở rộng và tạm thời sử dụng một số tùy chọn mặc định.\nBạn có chắc chắn muốn khởi động lại không?
+troubleshootModeRestartButton=Khởi động lại
+
+# LOCALIZATION NOTE (downloadAndInstallButton.label): %S is replaced by the
+# version of the update: "Update to 28.0".
+update.downloadAndInstallButton.label=Cập nhật lên bản %S
+update.downloadAndInstallButton.accesskey=U
+
+# 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=Xóa toàn bộ lịch sử
+sanitizeButtonOK=Xóa ngay
+# 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=Toàn bộ lịch sử sẽ bị xóa.
+# 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=Tất cả các mục đã chọn sẽ bị xóa.
+
+learnMoreAboutIgnoreThread=Tìm hiểu thêm…
+learnMoreAboutIgnoreThreadAccessKey = L
+undoIgnoreThread=Hoàn tác bỏ qua chủ đề
+undoIgnoreThreadAccessKey=U
+undoIgnoreSubthread=Hoàn tác bỏ qua chủ đề con
+undoIgnoreSubthreadAccessKey=U
+# LOCALIZATION NOTE (ignoredThreadFeedback): #1 is the message thread title
+ignoredThreadFeedback=Các câu trả lời cho chủ đề "#1" sẽ không được hiển thị.
+# LOCALIZATION NOTE (ignoredSubthreadFeedback): #1 is the message subthread title
+ignoredSubthreadFeedback=Các câu trả lời cho chủ đề con "#1" sẽ không được hiển thị.
+# LOCALIZATION NOTE (ignoredThreadsFeedback): Semi-colon list of plural forms.
+# #1 is the number of threads
+ignoredThreadsFeedback=Các câu trả lời cho chủ đề đã được chọn sẽ không được hiển thị.;Các câu trả lời đã được chọn cho chủ đề #1 sẽ không được hiển thị.
+# LOCALIZATION NOTE (ignoredSubthreadsFeedback): Semi-colon list of plural forms.
+# #1 is number of subthreads
+ignoredSubthreadsFeedback=Các câu trả lời cho chủ đề con đã được chọn sẽ không được hiển thị.;Các câu trả lời đã được chọn cho chủ đề con #1 sẽ không được hiển thị.
+# LOCALIZATION NOTE (saveAsType): replace %S with the extension of the file to be saved.
+saveAsType=Tập tin %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=Tìm kiếm %1$S cho "%2$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=Tìm kiếm %1$S cho "%2$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-bit
+aboutDialog.architecture.thirtyTwoBit = 32-bit
+
+errorConsoleTitle = Bảng điều khiển lỗi
+
+# 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 = Quay lại
+
+# LOCALIZATION NOTE (folderErrorAlertTitle):
+# %S is a pretty string to identify the folder and account.
+# EXAMPLE: Error - Inbox on bob@example.com
+folderErrorAlertTitle = Lỗi - %S
+
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EdAdvancedEdit.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EdAdvancedEdit.dtd
new file mode 100644
index 0000000000..b483cfe4d0
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Trình chỉnh sửa thuộc tính nâng cao">
+<!ENTITY AttName.label "Thuộc tính: ">
+<!ENTITY AttValue.label "Giá trị: ">
+<!ENTITY PropertyName.label "Thuộc tính (Property): ">
+<!ENTITY currentattributesfor.label "Thuộc tính hiện tại của: ">
+<!ENTITY tree.attributeHeader.label "Thuộc tính">
+<!ENTITY tree.propertyHeader.label "Thuộc tính">
+<!ENTITY tree.valueHeader.label "Giá trị">
+<!ENTITY tabHTML.label "Thuộc tính HTML">
+<!ENTITY tabCSS.label "Phong cách bên trong">
+<!ENTITY tabJSE.label "Sự kiện JavaScript">
+
+<!ENTITY editAttribute.label "Nhấn lên một mục ở trên để chỉnh sửa giá trị của nó">
+<!ENTITY removeAttribute.label "Xóa">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EdColorPicker.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EdColorPicker.dtd
new file mode 100644
index 0000000000..bd55840f0d
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Màu">
+<!ENTITY lastPickedColor.label "Màu mới chọn">
+<!ENTITY lastPickedColor.accessKey "M">
+<!ENTITY chooseColor1.label "Chọn một màu:">
+<!ENTITY chooseColor2.label "Nhập chuỗi màu HTML">
+<!ENTITY chooseColor2.accessKey "H">
+<!ENTITY setColorExample.label "(vd.: &quot;#0000ff&quot; hoặc &quot;blue&quot;):">
+<!ENTITY default.label "Mặc định">
+<!ENTITY default.accessKey "M">
+<!ENTITY palette.label "Bảng màu:">
+<!ENTITY standardPalette.label "Chuẩn">
+<!ENTITY webPalette.label "Tất cả màu của web">
+<!ENTITY background.label "Nền cho:">
+<!ENTITY background.accessKey "N">
+<!ENTITY table.label "Bảng">
+<!ENTITY table.accessKey "B">
+<!ENTITY cell.label "Các Ô">
+<!ENTITY cell.accessKey "C">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EdConvertToTable.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EdConvertToTable.dtd
new file mode 100644
index 0000000000..c2dcf17c0f
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Chuyển đổi sang bảng">
+<!ENTITY instructions1.label "Trình soạn thảo tạo một hàng mới trên bảng cho mỗi đoạn đã chọn.">
+<!ENTITY instructions2.label "Chọn kí tự dùng để tách các khối vào các cột:">
+<!ENTITY commaRadio.label "Dấu phẩy">
+<!ENTITY spaceRadio.label "Khoảng trống">
+<!ENTITY otherRadio.label "Kí tự khác:">
+<!ENTITY deleteCharCheck.label "Xóa kí tự phân tách">
+<!ENTITY collapseSpaces.label "Bỏ qua khoảng trống thừa">
+<!ENTITY collapseSpaces.tooltip "Chuyển đổi các khoảng trống kề cận thành một dấu ngăn cách">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EdDialogOverlay.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EdDialogOverlay.dtd
new file mode 100644
index 0000000000..9ce109fd6b
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/messengercompose/EdDialogOverlay.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 AdvancedEditButton.label "Chỉnh sửa nâng cao…">
+<!ENTITY AdvancedEditButton.accessKey "S">
+<!ENTITY AdvancedEditButton.tooltip "Thêm hoặc chỉnh sửa thuộc tính HTML, thuộc tính style và JavaScript">
+<!ENTITY chooseFileButton.label "Chọn tập tin…">
+<!ENTITY chooseFileButton.accessKey "C">
+<!ENTITY chooseFileLinkButton.label "Chọn tập tin…">
+<!ENTITY chooseFileLinkButton.accessKey "h">
+<!ENTITY makeUrlRelative.label "URL tương đối so với địa chỉ trang">
+<!ENTITY makeUrlRelative.accessKey "U">
+<!ENTITY makeUrlRelative.tooltip "Thay đổi giữa URL tuyệt đối và tương đối. Bạn phải lưu trang trước khi thay đổi.">
+
+<!-- Shared by Link and Image dialogs -->
+<!ENTITY LinkURLEditField2.label "Nhập vị trí trang web, tệp cục bộ hoặc chọn neo được đặt tên hoặc tiêu đề từ menu ngữ cảnh của trường:">
+<!ENTITY LinkURLEditField2.accessKey "w">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EdNamedAnchorProperties.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EdNamedAnchorProperties.dtd
new file mode 100644
index 0000000000..024bd84565
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/messengercompose/EdNamedAnchorProperties.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 windowTitle.label "Thuộc tính mỏ neo">
+<!ENTITY anchorNameEditField.label "Tên mỏ neo:">
+<!ENTITY anchorNameEditField.accessKey "N">
+<!ENTITY nameInput.tooltip "Nhập một tên cho mỏ neo (đích) này">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorColorProperties.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorColorProperties.dtd
new file mode 100644
index 0000000000..03e272e203
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/messengercompose/EditorColorProperties.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/. -->
+
+<!-- Window title -->
+<!ENTITY windowTitle.label "Màu và nền trang">
+<!ENTITY pageColors.label "Màu Trang">
+<!ENTITY defaultColorsRadio.label "Màu mặc định của người đọc (Không thiết lập màu trong trang)">
+<!ENTITY defaultColorsRadio.accessKey "M">
+<!ENTITY defaultColorsRadio.tooltip "Dùng thiết lập màu từ trình duyệt của người đọc">
+<!ENTITY customColorsRadio.label "Dùng màu tùy chọn:">
+<!ENTITY customColorsRadio.accessKey "D">
+<!ENTITY customColorsRadio.tooltip "Những thiết lập màu này sẽ hiển thị đè lên các thiết lập trình duyệt của người đọc">
+
+<!ENTITY normalText.label "Chữ thường">
+<!ENTITY normalText.accessKey "B">
+<!ENTITY linkText.label "Chữ liên kết">
+<!ENTITY linkText.accessKey "l">
+<!ENTITY activeLinkText.label "Chữ liên kết đang chọn">
+<!ENTITY activeLinkText.accessKey "C">
+<!ENTITY visitedLinkText.label "Chữ liên kết đã thăm">
+<!ENTITY visitedLinkText.accessKey "t">
+<!ENTITY background.label "Nền:">
+<!ENTITY background.accessKey "N">
+<!ENTITY colon.character ":">
+<!ENTITY backgroundImage.label "Hình nền:">
+<!ENTITY backgroundImage.accessKey "H">
+<!ENTITY backgroundImage.tooltip "Dùng một tập tin ảnh làm nền cho trang của bạn">
+<!ENTITY backgroundImage.shortenedDataURI "URI dữ liệu rút ngắn (bản sao sẽ đặt URI đầy đủ vào bảng tạm)">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorHLineProperties.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorHLineProperties.dtd
new file mode 100644
index 0000000000..a30cf6ea57
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thuộc tính đường ngang">
+
+<!ENTITY dimensionsBox.label "Chiều">
+<!ENTITY heightEditField.label "Cao:">
+<!ENTITY heightEditField.accessKey "C">
+<!ENTITY widthEditField.label "Rộng:">
+<!ENTITY widthEditField.accessKey "R">
+<!ENTITY pixelsPopup.value "điểm ảnh">
+<!ENTITY alignmentBox.label "Canh hàng">
+<!ENTITY leftRadio.label "Trái">
+<!ENTITY leftRadio.accessKey "T">
+<!ENTITY centerRadio.label "Giữa">
+<!ENTITY centerRadio.accessKey "G">
+<!ENTITY rightRadio.label "Phải">
+<!ENTITY rightRadio.accessKey "P">
+
+<!ENTITY threeDShading.label "Bóng 3-D">
+<!ENTITY threeDShading.accessKey "B">
+<!ENTITY saveSettings.label "Sử dụng làm mặc định">
+<!ENTITY saveSettings.accessKey "D">
+<!ENTITY saveSettings.tooltip "Lưu các thiết lập này để dùng khi chèn các đường kẻ ngang mới">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorImageProperties.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorImageProperties.dtd
new file mode 100644
index 0000000000..02772637e0
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thuộc tính hình ảnh…">
+
+<!ENTITY pixelsPopup.value "pixel">
+
+<!-- These are in the Location tab panel -->
+<!ENTITY locationEditField.label "Đường dẫn hình ảnh:">
+<!ENTITY locationEditField.accessKey "L">
+<!ENTITY locationEditField.tooltip "Gõ vào tên hoặc vị trí của hình ảnh">
+<!ENTITY locationEditField.shortenedDataURI "URI dữ liệu rút ngắn (bản sao sẽ đặt URI đầy đủ vào bảng tạm)">
+<!ENTITY title.label "Ghi chú:">
+<!ENTITY title.accessKey "T">
+<!ENTITY title.tooltip "Thuộc tính html 'title' hiển thị dưới dạng ghi chú">
+<!ENTITY altText.label "Văn bản thay thế:">
+<!ENTITY altText.accessKey "A">
+<!ENTITY altTextEditField.tooltip "Gõ văn bản hiển thị thay cho hình ảnh">
+<!ENTITY noAltText.label "Không dùng văn bản thay thế">
+<!ENTITY noAltText.accessKey "D">
+
+<!ENTITY previewBox.label "Xem trước hình ảnh">
+
+<!-- These controls are in the Dimensions tab panel -->
+<!-- actualSize.label should be same as actualSizeRadio.label + ":" -->
+<!ENTITY actualSize.label "Kích thước thực:">
+<!ENTITY actualSizeRadio.label "Kích thước thực">
+<!ENTITY actualSizeRadio.accessKey "A">
+<!ENTITY actualSizeRadio.tooltip "Chuyển ảnh về kích thước thực">
+<!ENTITY customSizeRadio.label "Kích thước tùy biến">
+<!ENTITY customSizeRadio.accessKey "S">
+<!ENTITY customSizeRadio.tooltip "Thay đổi kích thước như đang hiển thị trên trang">
+<!ENTITY heightEditField.label "Chiều rộng:">
+<!ENTITY heightEditField.accessKey "G">
+<!ENTITY widthEditField.label "Chiều dài:">
+<!ENTITY widthEditField.accessKey "W">
+<!ENTITY constrainCheckbox.label "Giữ nguyên">
+<!ENTITY constrainCheckbox.accessKey "G">
+<!ENTITY constrainCheckbox.tooltip "Giữ nguyên tỉ lệ ảnh">
+
+<!-- These controls are in the Image Map box of the expanded area -->
+<!ENTITY imagemapBox.label "Bản đồ hình ảnh">
+<!ENTITY removeImageMapButton.label "Xóa">
+<!ENTITY removeImageMapButton.accessKey "R">
+
+<!-- These are the options for image alignment -->
+<!ENTITY alignment.label "Căn chỉnh văn bản theo hình ảnh">
+<!ENTITY bottomPopup.value "Theo phần dưới">
+<!ENTITY topPopup.value "Theo phần trên">
+<!ENTITY centerPopup.value "Ở giữa">
+<!ENTITY wrapRightPopup.value "Bao lại ở bên phải">
+<!ENTITY wrapLeftPopup.value "Bao lại ở bên trái">
+
+<!-- These controls are in the Spacing Box -->
+<!ENTITY spacingBox.label "Khoảng cách">
+<!ENTITY leftRightEditField.label "Trái và phải:">
+<!ENTITY leftRightEditField.accessKey "L">
+<!ENTITY topBottomEditField.label "Trên và dưới:">
+<!ENTITY topBottomEditField.accessKey "T">
+<!ENTITY borderEditField.label "Đường viền Liên tục:">
+<!ENTITY borderEditField.accessKey "B">
+
+<!-- These controls are in the Link Box -->
+<!ENTITY showImageLinkBorder.label "Hiện viền xung quanh ảnh liên kết">
+<!ENTITY showImageLinkBorder.accessKey "B">
+<!ENTITY LinkAdvancedEditButton.label "Sửa đổi liên kết nâng cao…">
+<!ENTITY LinkAdvancedEditButton.accessKey "L">
+<!ENTITY LinkAdvancedEditButton.tooltip "Thêm hoặc chỉnh sửa thuộc tính HTML, thuộc tính style và JavaScript">
+
+<!-- These tabs are currently used in the image input dialog -->
+<!ENTITY imageInputTab.label "Biểu mẫu">
+<!ENTITY imageLocationTab.label "Địa chỉ">
+<!ENTITY imageDimensionsTab.label "Kích thước">
+<!ENTITY imageAppearanceTab.label "Diện mạo">
+<!ENTITY imageLinkTab.label "Liên kết">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertChars.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertChars.dtd
new file mode 100644
index 0000000000..f1ed0b16bf
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Chèn ký tự">
+<!ENTITY category.label "Phân mục">
+<!ENTITY letter.label "Chữ cái:">
+<!ENTITY letter.accessKey "L">
+<!ENTITY character.label "Kí tự:">
+<!ENTITY character.accessKey "C">
+<!ENTITY accentUpper.label "Dấu HOA">
+<!ENTITY accentLower.label "Dấu thường">
+<!ENTITY otherUpper.label "Chữ HOA khác">
+<!ENTITY otherLower.label "Chữ thường khác">
+<!ENTITY commonSymbols.label "Biểu tượng phổ biến">
+<!ENTITY insertButton.label "Chèn">
+<!ENTITY closeButton.label "Đóng">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertMath.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertMath.dtd
new file mode 100644
index 0000000000..c5c08ea2fa
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Chèn toán">
+
+<!ENTITY sourceEditField.label "Nhập mã nguồn LaTeX:">
+
+<!ENTITY options.label "Tùy chọn">
+<!ENTITY optionInline.label "Chế độ nội dòng">
+<!ENTITY optionInline.accesskey "N">
+<!ENTITY optionDisplay.label "Chế độ hiển thị">
+<!ENTITY optionDisplay.accesskey "D">
+<!ENTITY optionLTR.label "Hướng từ trái sang phải">
+<!ENTITY optionLTR.accesskey "L">
+<!ENTITY optionRTL.label "Hướng từ phải sang trái">
+<!ENTITY optionRTL.accesskey "R">
+
+<!ENTITY insertButton.label "Chèn">
+<!ENTITY insertButton.accesskey "I">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertSource.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertSource.dtd
new file mode 100644
index 0000000000..8c25abc2d9
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Chèn HTML">
+<!ENTITY sourceEditField.label "Chèn văn bản và thẻ HTML:">
+<!ENTITY example.label "Ví dụ: ">
+<!-- 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 "Xin chào thế giới!">
+<!ENTITY insertButton.label "Chèn">
+<!ENTITY insertButton.accesskey "I">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertTOC.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertTOC.dtd
new file mode 100644
index 0000000000..7000077b4b
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Mục lục">
+<!ENTITY buildToc.label "Tạo mục lục từ:">
+<!ENTITY tag.label "Nhãn:">
+<!ENTITY class.label "Lớp:">
+<!ENTITY header1.label "Cấp 1">
+<!ENTITY header2.label "Cấp 2">
+<!ENTITY header3.label "Cấp 3">
+<!ENTITY header4.label "Cấp 4">
+<!ENTITY header5.label "Cấp 5">
+<!ENTITY header6.label "Cấp 6">
+<!ENTITY makeReadOnly.label "Tạo mục lục chỉ-đọc">
+<!ENTITY orderedList.label "Đánh số tất cả các mục trong mục lục">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertTable.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorInsertTable.dtd
new file mode 100644
index 0000000000..5bf190007c
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Chèn bảng">
+
+<!ENTITY size.label "Kích thước">
+<!ENTITY numRowsEditField.label "Hàng:">
+<!ENTITY numRowsEditField.accessKey "R">
+<!ENTITY numColumnsEditField.label "Cột:">
+<!ENTITY numColumnsEditField.accessKey "C">
+<!ENTITY widthEditField.label "Rộng:">
+<!ENTITY widthEditField.accessKey "W">
+<!ENTITY borderEditField.label "Viền:">
+<!ENTITY borderEditField.accessKey "B">
+<!ENTITY borderEditField.tooltip "Gõ một số để tạo đường viền bảng, hoặc gõ số không (0) để không tạo viền">
+<!ENTITY pixels.label "điểm ảnh">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorLinkProperties.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorLinkProperties.dtd
new file mode 100644
index 0000000000..8111779711
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thuộc tính liên kết">
+<!ENTITY LinkURLBox.label "Địa chỉ liên kết">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorListProperties.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorListProperties.dtd
new file mode 100644
index 0000000000..34204478e8
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thuộc tính danh sách">
+
+<!ENTITY ListType.label "Kiểu danh sách">
+<!ENTITY bulletStyle.label "Kiểu Bullet:">
+<!ENTITY startingNumber.label "Bắt đầu từ:">
+<!ENTITY startingNumber.accessKey "S">
+<!ENTITY none.value "Không có">
+<!ENTITY bulletList.value "Danh sách Bullet (Không đánh số)">
+<!ENTITY numberList.value "Danh sách đánh số">
+<!ENTITY definitionList.value "Danh sách định nghĩa">
+<!ENTITY changeEntireListRadio.label "Thay đổi toàn bộ danh sách">
+<!ENTITY changeEntireListRadio.accessKey "C">
+<!ENTITY changeSelectedRadio.label "Chỉ thay đổi các mục được chọn">
+<!ENTITY changeSelectedRadio.accessKey "I">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorPersonalDictionary.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorPersonalDictionary.dtd
new file mode 100644
index 0000000000..d586c75f33
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Từ điển cá nhân">
+
+<!ENTITY wordEditField.label "Từ mới:">
+<!ENTITY wordEditField.accessKey "N">
+<!ENTITY AddButton.label "Thêm">
+<!ENTITY AddButton.accessKey "A">
+<!ENTITY DictionaryList.label "Các từ trong từ điển:">
+<!ENTITY DictionaryList.accessKey "W">
+<!ENTITY RemoveButton.label "Xóa">
+<!ENTITY RemoveButton.accessKey "e">
+
+<!ENTITY CloseButton.label "Đóng">
+<!ENTITY CloseButton.accessKey "C">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorReplace.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorReplace.dtd
new file mode 100644
index 0000000000..9766f32436
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tìm và thay thế">
+<!ENTITY findField.label "Tìm văn bản:">
+<!ENTITY findField.accesskey "n">
+<!ENTITY replaceField.label "Thay thế bằng:">
+<!ENTITY replaceField.accesskey "a">
+<!ENTITY caseSensitiveCheckbox.label "Phân biệt HOA-thường">
+<!ENTITY caseSensitiveCheckbox.accesskey "M">
+<!ENTITY wrapCheckbox.label "Bao lại xung quanh">
+<!ENTITY wrapCheckbox.accesskey "W">
+<!ENTITY backwardsCheckbox.label "Tìm kiếm ngược">
+<!ENTITY backwardsCheckbox.accesskey "b">
+<!ENTITY findNextButton.label "Tìm tiếp">
+<!ENTITY findNextButton.accesskey "F">
+<!ENTITY replaceButton.label "Thay thế">
+<!ENTITY replaceButton.accesskey "R">
+<!ENTITY replaceAndFindButton.label "Thay thế và tìm">
+<!ENTITY replaceAndFindButton.accesskey "d">
+<!ENTITY replaceAllButton.label "Thay thế tất cả">
+<!ENTITY replaceAllButton.accesskey "A">
+<!ENTITY closeButton.label "Đóng">
+<!ENTITY closeButton.accesskey "C">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorSpellCheck.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorSpellCheck.dtd
new file mode 100644
index 0000000000..3c017384cc
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Kiểm tra chính tả">
+
+<!ENTITY misspelledWord.label "Từ sai chính tả:">
+<!ENTITY wordEditField.label "Thay thế bằng:">
+<!ENTITY wordEditField.accessKey "w">
+<!ENTITY checkwordButton.label "Kiểm tra từ">
+<!ENTITY checkwordButton.accessKey "k">
+<!ENTITY suggestions.label "Đề xuất:">
+<!ENTITY suggestions.accessKey "u">
+<!ENTITY ignoreButton.label "Bỏ qua">
+<!ENTITY ignoreButton.accessKey "I">
+<!ENTITY ignoreAllButton.label "Bỏ qua tất cả">
+<!ENTITY ignoreAllButton.accessKey "n">
+<!ENTITY replaceButton.label "Thay thế">
+<!ENTITY replaceButton.accessKey "R">
+<!ENTITY replaceAllButton.label "Thay thế tất cả">
+<!ENTITY replaceAllButton.accessKey "A">
+<!ENTITY stopButton.label "Dừng">
+<!ENTITY stopButton.accessKey "o">
+<!ENTITY userDictionary.label "Từ điển cá nhân:">
+<!ENTITY moreDictionaries.label "Tải thêm từ điển…">
+<!ENTITY addToUserDictionaryButton.label "Thêm từ">
+<!ENTITY addToUserDictionaryButton.accessKey "d">
+<!ENTITY editUserDictionaryButton.label "Chỉnh sửa…">
+<!ENTITY editUserDictionaryButton.accessKey "C">
+<!ENTITY recheckButton2.label "Kiểm tra lại văn bản">
+<!ENTITY recheckButton2.accessKey "T">
+<!ENTITY closeButton.label "Đóng">
+<!ENTITY closeButton.accessKey "C">
+<!ENTITY sendButton.label "Gửi">
+<!ENTITY sendButton.accessKey "S">
+<!ENTITY languagePopup.label "Ngôn ngữ:">
+<!ENTITY languagePopup.accessKey "L">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/EditorTableProperties.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/EditorTableProperties.dtd
new file mode 100644
index 0000000000..1616736fc7
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thuộc tính bảng">
+<!ENTITY applyButton.label "Áp dụng">
+<!ENTITY applyButton.accesskey "A">
+<!ENTITY closeButton.label "Đóng">
+<!ENTITY tableTab.label "Bảng">
+<!ENTITY cellTab.label "Ô">
+<!ENTITY tableRows.label "Hàng:">
+<!ENTITY tableRows.accessKey "R">
+<!ENTITY tableColumns.label "Cột:">
+<!ENTITY tableColumns.accessKey "C">
+<!ENTITY tableHeight.label "Cao:">
+<!ENTITY tableHeight.accessKey "G">
+<!ENTITY tableWidth.label "Rộng:">
+<!ENTITY tableWidth.accessKey "W">
+<!ENTITY tableBorderSpacing.label "Viền và khoảng cách">
+<!ENTITY tableBorderWidth.label "Viền:">
+<!ENTITY tableBorderWidth.accessKey "V">
+<!ENTITY tableSpacing.label "Khoảng cách:">
+<!ENTITY tableSpacing.accessKey "S">
+<!ENTITY tablePadding.label "Khoảng đệm:">
+<!ENTITY tablePadding.accessKey "P">
+<!ENTITY tablePxBetwCells.label "điểm ảnh giữa các ô">
+<!ENTITY tablePxBetwBrdrCellContent.label "điểm ảnh giữa viền ô và nội dung">
+<!ENTITY tableAlignment.label "Căn chỉnh bảng:">
+<!ENTITY tableAlignment.accessKey "T">
+<!ENTITY tableCaption.label "Tiêu đề:">
+<!ENTITY tableCaption.accessKey "N">
+<!ENTITY tableCaptionAbove.label "Trên bảng">
+<!ENTITY tableCaptionBelow.label "Dưới bảng">
+<!ENTITY tableCaptionLeft.label "Bên trái bảng">
+<!ENTITY tableCaptionRight.label "Bên phải bảng">
+<!ENTITY tableCaptionNone.label "Không có">
+<!ENTITY tableInheritColor.label "(Để cho màu trang hiện xuyên suốt)">
+
+<!ENTITY cellSelection.label "Phần được chọn">
+<!ENTITY cellSelectCell.label "Ô">
+<!ENTITY cellSelectRow.label "Hàng">
+<!ENTITY cellSelectColumn.label "Cột">
+<!ENTITY cellSelectNext.label "Sau">
+<!ENTITY cellSelectNext.accessKey "N">
+<!ENTITY cellSelectPrevious.label "Trước">
+<!ENTITY cellSelectPrevious.accessKey "P">
+<!ENTITY applyBeforeChange.label "Thay đổi hiện tại sẽ được áp dụng sau khi thay đổi phần được chọn.">
+<!ENTITY cellContentAlignment.label "Căn chỉnh nội dung">
+<!ENTITY cellHorizontal.label "Ngang:">
+<!ENTITY cellHorizontal.accessKey "Z">
+<!ENTITY cellVertical.label "Dọc:">
+<!ENTITY cellVertical.accessKey "V">
+<!ENTITY cellStyle.label "Kiểu ô:">
+<!ENTITY cellStyle.accessKey "C">
+<!ENTITY cellNormal.label "Bình thường">
+<!ENTITY cellHeader.label "Header">
+<!ENTITY cellTextWrap.label "Ngắt dòng văn bản:">
+<!ENTITY cellTextWrap.accessKey "T">
+<!ENTITY cellWrap.label "Ngắt dòng">
+<!ENTITY cellNoWrap.label "Không ngắt dòng">
+<!ENTITY cellAlignTop.label "Trên cùng">
+<!ENTITY cellAlignMiddle.label "Giữa">
+<!ENTITY cellAlignBottom.label "Dưới cùng">
+<!ENTITY cellAlignJustify.label "Hai Bên">
+<!ENTITY cellInheritColor.label "(Để màu bảng hiện xuyên suốt)">
+<!ENTITY cellUseCheckboxHelp.label "Sử dụng hộp kiểm để xác định thuộc tính nào sẽ được áp dụng cho tất cả các ô được chọn">
+
+<!-- Used in both Table and Cell panels -->
+<!ENTITY size.label "Kích thước">
+<!ENTITY pixels.label "điểm ảnh">
+<!ENTITY backgroundColor.label "Màu nền:">
+<!ENTITY backgroundColor.accessKey "B">
+<!ENTITY AlignLeft.label "Trái">
+<!ENTITY AlignCenter.label "Giữa">
+<!ENTITY AlignRight.label "Phải">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/composeMsgs.properties b/l10n-vi/mail/chrome/messenger/messengercompose/composeMsgs.properties
new file mode 100644
index 0000000000..738887f255
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/messengercompose/composeMsgs.properties
@@ -0,0 +1,460 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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=Không thể mở tập tin %S.
+unableToOpenTmpFile=Không thể mở tập tin tạm thời %S. Hãy kiểm tra thiết lập 'Thư mục Tạm' của bạn.
+unableToSaveTemplate=Không thể lưu thư của bạn dưới dạng mẫu.
+unableToSaveDraft=Không thể lưu thư của bạn dưới dạng bản nháp.
+couldntOpenFccFolder=Không thể mở thư mục Thư đã gửi. Vui lòng xác minh rằng cài đặt tài khoản của bạn là chính xác.
+noSender=Không có người gửi nào được chỉ định. Vui lòng thêm địa chỉ email của bạn trong cài đặt tài khoản.
+noRecipients=Không có người nhận nào được chỉ định. Vui lòng nhập người nhận hoặc nhóm tin vào khu vực địa chỉ.
+errorWritingFile=Lỗi khi ghi tập tin tạm thời.
+
+## LOCALIZATION NOTE (errorSendingFromCommand): argument %s is the Outgoing server (SMTP) response
+errorSendingFromCommand=Đã xảy ra lỗi khi gửi thư. Máy chủ thư đã phản hồi: %s. Vui lòng xác minh rằng địa chỉ email của bạn là chính xác trong cài đặt tài khoản của bạn và thử lại.
+
+## LOCALIZATION NOTE (errorSendingDataCommand): argument %s is the Outgoing server (SMTP) response
+errorSendingDataCommand=Đã xảy ra lỗi máy chủ gửi thư (SMTP) khi gửi thư. Máy chủ đã phản hồi: %s.
+
+## LOCALIZATION NOTE (errorSendingMessage): argument %s is the Outgoing server (SMTP) response
+errorSendingMessage=Đã xảy ra lỗi khi gửi thư. Máy chủ thư đã phản hồi: %s. Vui lòng kiểm tra thư và thử lại.
+postFailed=Không thể đăng tin vì kết nối với máy chủ tin tức không thành công. Máy chủ có thể không khả dụng hoặc đang từ chối kết nối. Vui lòng xác minh rằng cài đặt máy chủ tin tức của bạn là chính xác và thử lại.
+errorQueuedDeliveryFailed=Đã xảy ra lỗi khi gửi thư chưa gửi.
+sendFailed=Không thể gửi thư.
+
+## LOCALIZATION NOTE (sendFailedUnexpected): argument %X is a hex error code value
+sendFailedUnexpected=Không thành công do lỗi %X không mong muốn. Không có mô tả có sẵn.
+
+## LOCALIZATION NOTE (smtpSecurityIssue): argument %S is the Outgoing server (SMTP) response
+smtpSecurityIssue=Cấu hình liên quan đến %S phải chính xác.
+
+## LOCALIZATION NOTE (smtpServerError): argument %s is the Outgoing server (SMTP) response
+smtpServerError=Đã xảy ra lỗi khi gửi thư: Lỗi ở máy chủ gửi thư (SMTP). Máy chủ phản hồi: %s.
+unableToSendLater=Xin lỗi, chúng tôi không thể lưu thư của bạn để gửi sau.
+
+## LOCALIZATION NOTE (communicationsError): argument %d is the error code
+communicationsError=Đã xảy ra lỗi giao tiếp: %d. Vui lòng thử lại.
+dontShowAlert=ĐÂY CHỈ LÀ PLACEHOLDER. BẠN KHÔNG BAO GIỜ XEM ĐƯỢC CHUỖI VĂN BẢN NÀY.
+
+couldNotGetUsersMailAddress2=Đã xảy ra lỗi khi gửi thư: địa chỉ của người gửi (Từ:) không hợp lệ. Vui lòng xác minh rằng địa chỉ email này là chính xác và thử lại.
+couldNotGetSendersIdentity=Đã xảy ra lỗi khi gửi thư: danh tính người gửi không hợp lệ. Vui lòng xác minh cấu hình danh tính của bạn và thử lại.
+
+mimeMpartAttachmentError=Lỗi đính kèm.
+failedCopyOperation=Thư đã được gửi thành công, nhưng không thể sao chép vào thư mục Đã gửi của bạn.
+nntpNoCrossPosting=Bạn chỉ có thể gửi một tin nhắn đến một máy chủ tin tức tại một thời điểm.
+msgCancelling=Đang hủy bỏ…
+sendFailedButNntpOk=Tin nhắn của bạn đã được đăng lên nhóm tin nhưng chưa được gửi đến người nhận khác.
+errorReadingFile=Lỗi khi đọc tập tin.
+followupToSenderMessage=Tác giả của tin nhắn này đã yêu cầu rằng các câu trả lời chỉ được gửi cho tác giả. Nếu bạn cũng muốn trả lời nhóm tin tức, hãy thêm một hàng mới vào khu vực địa chỉ, chọn nhóm tin từ danh sách người nhận và nhập tên của nhóm tin.
+
+## LOCALIZATION NOTE (errorAttachingFile): argument %S is the file name/URI of the object to be attached
+errorAttachingFile=Đã xảy ra lỗi khi đính kèm %S. Vui lòng kiểm tra xem bạn có quyền truy cập vào tập tin hay không.
+
+## LOCALIZATION NOTE (incorrectSmtpGreeting): argument %s is the Outgoing server (SMTP) greeting
+incorrectSmtpGreeting=Đã xảy ra lỗi khi gửi thư: Máy chủ thư đã gửi một greeting không chính xác: %s.
+
+## LOCALIZATION NOTE (errorSendingRcptCommand): argument %1$S is the Outgoing server (SMTP) response, argument %2$S is the intended message recipient.
+errorSendingRcptCommand=Đã xảy ra lỗi khi gửi thư. Máy chủ thư đã phản hồi:\n%1$S.\nVui lòng kiểm tra người nhận thư "%2$S" và thử lại.
+
+## LOCALIZATION NOTE (startTlsFailed): argument %S is the Outgoing server (SMTP)
+startTlsFailed=Đã xảy ra lỗi khi gửi thư: Không thể thiết lập liên kết an toàn với máy chủ gửi thư (SMTP) %S bằng cách sử dụng STARTTLS vì nó không sử dụng tính năng đó. Tắt STARTTLS cho máy chủ hoặc liên hệ với nhà cung cấp dịch vụ của bạn.
+
+## LOCALIZATION NOTE (smtpPasswordUndefined): argument %S is the Outgoing server (SMTP) account
+smtpPasswordUndefined=Đã xảy ra lỗi khi gửi thư: Không thể lấy mật khẩu cho %S. Thư đã không được gửi đi.
+
+## LOCALIZATION NOTE (smtpSendNotAllowed): argument %s is the Outgoing server (SMTP) response
+smtpSendNotAllowed=Đã xảy ra lỗi khi gửi thư. Máy chủ thư đã phản hồi:\n%s.\nVui lòng đảm bảo rằng bạn đang sử dụng danh tính chính xác để gửi và phương pháp xác thực đã sử dụng là chính xác. Cần xác nhận rằng bạn được phép gửi qua máy chủ SMTP này bằng thông tin đăng nhập hiện tại của bạn từ mạng hiện tại của bạn.
+
+## LOCALIZATION NOTE (smtpTempSizeExceeded): argument %s is the Outgoing server (SMTP) response
+smtpTempSizeExceeded=Kích thước thư của bạn đang cố gửi vượt quá giới hạn kích thước tạm thời của máy chủ. Thư không được gửi đi; thử giảm kích thước thư hoặc đợi một lúc và thử lại. Máy chủ đã trả lời: %s.
+
+## LOCALIZATION NOTE (smtpClientid): argument %s is the Outgoing server (SMTP) response
+smtpClientid=Máy chủ gửi thư (SMTP) đã phát hiện lỗi trong lệnh CLIENTID. Thư đã không được gửi đi. Máy chủ đã phản hồi: %s
+
+## LOCALIZATION NOTE (smtpClientidPermission): argument %s is the Outgoing server (SMTP) response
+smtpClientidPermission=Phản hồi của máy chủ gửi thư (SMTP) đối với lệnh CLIENTID cho biết rằng thiết bị của bạn không được phép gửi thư. Máy chủ đã phản hồi: %s
+
+## LOCALIZATION NOTE (smtpPermSizeExceeded1): argument %d is the Outgoing server (SMTP) size limit
+smtpPermSizeExceeded1=Kích thước thư bạn đang cố gửi vượt quá giới hạn kích thước chung (%d byte) của máy chủ. Thư sẽ không được gửi; giảm kích thước thư và thử lại.
+
+## LOCALIZATION NOTE (smtpPermSizeExceeded2): argument %s is the Outgoing server (SMTP) response
+smtpPermSizeExceeded2=Kích thước thư của bạn đang cố gửi vượt quá giới hạn kích thước chung của máy chủ. Thư đã không được gửi đi; giảm kích thước thư và thử lại. Máy chủ đã phản hồi: %s.
+
+## LOCALIZATION NOTE (smtpSendFailedUnknownServer): argument %S is the Outgoing server (SMTP)
+smtpSendFailedUnknownServer=Đã xảy ra lỗi khi gửi thư: Máy chủ gửi thư (SMTP) %S không xác định. Máy chủ có thể được định cấu hình không chính xác. Vui lòng xác minh rằng cài đặt máy chủ gửi thư (SMTP) của bạn là chính xác và thử lại.
+
+## LOCALIZATION NOTE (smtpSendRequestRefused): argument %S is the Outgoing server (SMTP)
+smtpSendRequestRefused=Không thể gửi thư vì không kết nối được với máy chủ gửi thư (SMTP) %S. Máy chủ có thể không khả dụng hoặc đang từ chối kết nối SMTP. Vui lòng xác minh rằng cài đặt máy chủ gửi thư (SMTP) của bạn là chính xác và thử lại.
+
+## LOCALIZATION NOTE (smtpSendInterrupted): argument %S is the Outgoing server (SMTP)
+smtpSendInterrupted=Không thể gửi thư vì kết nối với máy chủ gửi thư (SMTP) %S bị mất khi đang giao dịch. Vui lòng thử lại.
+
+## LOCALIZATION NOTE (smtpSendTimeout): argument %S is the Outgoing server (SMTP)
+smtpSendTimeout=Không thể gửi thư vì đã hết thời gian chờ kết nối với máy chủ gửi thư (SMTP) %S. Vui lòng thử lại.
+
+## LOCALIZATION NOTE (smtpSendFailedUnknownReason): argument %S is the Outgoing server (SMTP)
+smtpSendFailedUnknownReason=Không thể gửi thư bằng máy chủ gửi thư (SMTP) %S vì lý do không xác định. Vui lòng xác minh rằng cài đặt máy chủ gửi thư (SMTP) của bạn là chính xác và thử lại.
+
+# LOCALIZATION NOTE (smtpHintAuthEncryptToPlainNoSsl): %S is the server hostname
+smtpHintAuthEncryptToPlainNoSsl=Máy chủ gửi thư (SMTP) %S dường như không hỗ trợ mật khẩu được mã hóa. Nếu bạn vừa thiết lập tài khoản, hãy thử thay đổi 'Phương thức xác thực' trong 'Cài đặt tài khoản | Máy chủ gửi thư (SMTP)' thành 'Mật khẩu, truyền không an toàn'. Nếu trước đây nó hoạt động nhưng bây giờ thì không, bạn có thể dễ bị đánh cắp mật khẩu.
+
+# LOCALIZATION NOTE (smtpHintAuthEncryptToPlainSsl): %S is the server hostname
+smtpHintAuthEncryptToPlainSsl=Máy chủ gửi thư (SMTP) %S dường như không hỗ trợ mật khẩu được mã hóa. Nếu bạn vừa thiết lập tài khoản, hãy thử thay đổi 'Phương thức xác thực' trong 'Cài đặt tài khoản | Máy chủ gửi thư (SMTP)' thành 'Mật khẩu bình thường'.
+
+# LOCALIZATION NOTE (smtpHintAuthPlainToEncrypt): %S is the server hostname
+smtpHintAuthPlainToEncrypt=Máy chủ gửi thư (SMTP) %S không cho phép mật khẩu văn bản thuần túy. Vui lòng thử thay đổi 'Phương thức xác thực' trong 'Cài đặt tài khoản | Máy chủ gửi thư (SMTP)' thành 'Mật khẩu được mã hóa'.
+
+# LOCALIZATION NOTE (smtpAuthFailure): %S is the server hostname
+smtpAuthFailure=Không thể xác thực với máy chủ gửi thư (SMTP) %S. Vui lòng kiểm tra mật khẩu và xác minh 'Phương thức xác thực' trong 'Cài đặt tài khoản | Máy chủ gửi thư (SMTP)'.
+
+# LOCALIZATION NOTE (smtpAuthGssapi): %S is the server hostname
+smtpAuthGssapi=Kerberos/GSSAPI không được máy chủ gửi thư (SMTP) %S chấp nhận. Vui lòng kiểm tra xem bạn đã đăng nhập vào Kerberos/GSSAPI chưa.
+
+# LOCALIZATION NOTE (smtpAuthMechNotSupported): %S is the server hostname
+smtpAuthMechNotSupported=Máy chủ gửi thư (SMTP) %S không hỗ trợ phương thức xác thực đã chọn. Vui lòng thay đổi 'Phương thức xác thực' trong 'Cài đặt tài khoản | Máy chủ gửi thư (SMTP)'.
+
+# LOCALIZATION NOTE (errorIllegalLocalPart2): %s is an email address with an illegal localpart
+errorIllegalLocalPart2=Có các ký tự không phải ASCII trong phần cục bộ của địa chỉ người nhận %s và máy chủ của bạn không hỗ trợ SMTPUTF8. Vui lòng thay đổi địa chỉ này và thử lại.
+
+## Strings used for the save message dialog shown when the user closes a message compose window
+saveDlogTitle=Lưu Thư
+
+## 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=Lưu thư này vào thư mục nháp của bạn (%1$S) và đóng cửa sổ soạn thảo?
+discardButtonLabel=&Loại bỏ những thay đổi
+
+## generics string
+defaultSubject=(không tiêu đề)
+chooseFileToAttach=Đính kèm Tập tin
+genericFailureExplanation=Vui lòng xác minh rằng cài đặt tài khoản của bạn là chính xác và thử lại.
+
+## LOCALIZATION NOTE (undisclosedRecipients): this string must use only US_ASCII characters
+undisclosedRecipients=người nhận không được tiết lộ
+
+# LOCALIZATION NOTE (chooseFileToAttachViaCloud): %1$S is the cloud
+# provider to save the file to.
+chooseFileToAttachViaCloud=Đính kèm tập tin qua %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=Viết thư: %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=Xem trước khi in: %1$S - %2$S
+
+## From field
+msgIdentityPlaceholder=Nhập tùy chỉnh địa chỉ Từ sẽ được sử dụng thay vì %S
+customizeFromAddressTitle=Tùy chỉnh từ địa chỉ
+customizeFromAddressWarning=Nếu nhà cung cấp e-mail của bạn hỗ trợ nó, Tùy chỉnh từ địa chỉ cho phép bạn thực hiện một thay đổi nhỏ đối với địa chỉ Từ của bạn mà không cần phải tạo danh tính mới trong Cài đặt tài khoản. Ví dụ: nếu địa chỉ người gửi của bạn là John Doe <john@example.com>, bạn có thể muốn thay đổi địa chỉ này thành John Doe <john+doe@example.com> hoặc John <john@example.com>.
+customizeFromAddressIgnore=Không bao giờ thông báo tôi về điều này lần nữa
+
+## Strings used by the empty subject dialog
+subjectEmptyTitle=Nhắc về Tiêu đề
+subjectEmptyMessage=Thư này chưa có tiêu đề.
+sendWithEmptySubjectButton=&Gửi thư Không có Tiêu đề
+cancelSendingButton=&Hủy việc gửi
+
+## Strings used by the dialog that informs about the lack of newsgroup support.
+noNewsgroupSupportTitle=Nhóm tin Không được Hỗ trợ
+recipientDlogMessage=Tài khoản này chỉ hỗ trợ người nhận email. Nếu tiếp tục thì sẽ bỏ qua nhóm tin.
+
+## Strings used by the alert that tells the user that an email address is invalid.
+addressInvalidTitle=Địa chỉ Người nhận Không hợp lệ
+addressInvalid=%1$S không phải là một địa chỉ email hợp lệ vì nó không có dạng ngườidùng@tênmiền. Bạn phải sửa lại trước khi gửi e-mail.
+
+## String used by the dialog that asks the user to attach a web page
+attachPageDlogTitle=Vui lòng chọn địa chỉ để đính kèm
+attachPageDlogMessage=Trang Web (URL):
+
+## String used for attachment pretty name, when the attachment is a message
+messageAttachmentSafeName=Thư được Đính kèm
+
+## String used for attachment pretty name, when the attachment is a message part
+partAttachmentSafeName=Một phần Thư được Đính kèm
+
+# LOCALIZATION NOTE (attachmentBucketAttachFilesTooltip):
+# This tooltip should be same as attachFile.label in messengercompose.dtd,
+# but without ellipsis (…).
+attachmentBucketAttachFilesTooltip=Đính kèm tập tin
+attachmentBucketClearSelectionTooltip=Xóa lựa chọn
+attachmentBucketHeaderShowTooltip=Hiển thị ngăn đính kèm
+attachmentBucketHeaderMinimizeTooltip=Ẩn ngăn đính kèm
+attachmentBucketHeaderRestoreTooltip=Khôi phục ngăn đính kèm
+
+## String used by the Initialization Error dialog
+initErrorDlogTitle=Soạn thư
+initErrorDlgMessage=Đã xảy ra lỗi khi tạo cửa sổ soạn thư. Vui lòng thử lại.
+
+## String used if a file to attach does not exist when passed as
+## a command line argument
+errorFileAttachTitle=Đính kèm tập tin
+
+## LOCALIZATION NOTE (errorFileAttachMessage): %1$S will be replaced by the non-existent file name.
+errorFileAttachMessage=Tập tin %1$S không tồn tại nên không thể được đính kèm vào thư.
+
+## 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=Tập tin thư
+
+## LOCALIZATION NOTE (errorFileMessageMessage): %1$S will be replaced by the non-existent file name.
+errorFileMessageMessage=Tập tin %1$S không tồn tại và không thể được sử dụng làm nội dung thư.
+
+## LOCALIZATION NOTE (errorLoadFileMessageMessage): %1$S will be replaced by the name of the file that can't be loaded.
+errorLoadFileMessageMessage=Không thể tải tập tin %1$S dưới dạng nội dung thư.
+
+## Strings used by the Save as Draft/Template dialog
+SaveDialogTitle=Lưu thư
+
+## LOCALIZATION NOTE (SaveDialogMsg): %1$S is the folder name, %2$S is the host name
+SaveDialogMsg=Thư của bạn đã được lưu vào thư mục %1$S dưới %2$S.
+CheckMsg=Không hiện lại hộp thoại này.
+
+## Strings used by the prompt when Quitting while in progress
+quitComposeWindowTitle=Đang gửi thư
+
+## LOCALIZATION NOTE (quitComposeWindowMessage2): don't translate \n
+quitComposeWindowMessage2=%1$S hiện đang trong quá trình gửi thư.\nBạn có muốn đợi cho đến khi thư được gửi xong rồi mới thoát hay thoát ngay bây giờ?
+quitComposeWindowQuitButtonLabel2=&Thoát
+quitComposeWindowWaitButtonLabel2=&Chờ đợi
+quitComposeWindowSaveTitle=Đang lưu thư
+
+## LOCALIZATION NOTE (quitComposeWindowSaveMessage): don't translate \n
+quitComposeWindowSaveMessage=%1$S hiện đang trong quá trình lưu thư.\nBạn có muốn đợi cho đến khi thư được lưu xong rồi mới thoát hay thoát ngay bây giờ?
+
+## Strings used by the prompt for Ctrl-Enter check before sending message
+sendMessageCheckWindowTitle=Gửi thư
+sendMessageCheckLabel=Bạn có chắc là bạn đã sẵn sàng gửi thư này không?
+sendMessageCheckSendButtonLabel=Gửi
+assemblingMessageDone=Tập hợp thư…Xong
+assemblingMessage=Tập hợp thư…
+smtpDeliveringMail=Đang gửi thư…
+smtpMailSent=Đã gửi thư thành công
+assemblingMailInformation=Đang tập hợp thông tin thư…
+
+## LOCALIZATION NOTE (gatheringAttachment): argument %S is the file name/URI of attachment
+gatheringAttachment=Đang đính kèm %S…
+creatingMailMessage=Đang tạo thư…
+
+## LOCALIZATION NOTE (copyMessageStart): argument %S is the folder name
+copyMessageStart=Đang sao chép thư đến thư mục %S…
+copyMessageComplete=Sao chép hoàn tất.
+copyMessageFailed=Sao chép thất bại.
+filterMessageComplete=Đã lọc xong.
+filterMessageFailed=Có lỗi khi lọc.
+
+## LOCALIZATION NOTE (largeMessageSendWarning):
+## Do not translate %S. It is the size of the message in user-friendly notation.
+largeMessageSendWarning=Cảnh báo! Bạn sắp gửi một thư có kích thước %S. Bạn có chắc chắn muốn làm điều này?
+sendingMessage=Đang gửi thư…
+sendMessageErrorTitle=Lỗi khi gửi thư
+postingMessage=Đang xuất bản thư…
+sendLaterErrorTitle=Lỗi khi gửi sau
+saveDraftErrorTitle=Lỗi khi lưu bản nháp
+saveTemplateErrorTitle=Lỗi khi lưu mẫu
+
+## LOCALIZATION NOTE (failureOnObjectEmbeddingWhileSaving): argument %.200S is the file name/URI of object to be embedded
+failureOnObjectEmbeddingWhileSaving=Có một vấn đề bao gồm tập tin %.200S trong thư. Bạn có muốn tiếp tục lưu thư mà không có tập tin này?
+
+## LOCALIZATION NOTE (failureOnObjectEmbeddingWhileSending): argument %.200S is the file name/URI of object to be embedded
+failureOnObjectEmbeddingWhileSending=Có một vấn đề bao gồm tập tin %.200S trong thư. Bạn có muốn tiếp tục gửi thư mà không có tập tin này?
+returnToComposeWindowQuestion=Bạn có muốn quay lại cửa sổ soạn thảo?
+
+## 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 đã viết:
+
+## LOCALIZATION NOTE (mailnews.reply_header_ondateauthorwrote): #1 is the author, #2 is the date, #3 is the time
+mailnews.reply_header_ondateauthorwrote=Vào lúc #3 #2, #1 đã viết:
+
+## LOCALIZATION NOTE (mailnews.reply_header_authorwroteondate): #1 is the author, #2 is the date, #3 is the time
+mailnews.reply_header_authorwroteondate=#1 đã viết vào lúc #3 #2:
+
+## reply header in composeMsg
+## user specified
+mailnews.reply_header_originalmessage=-------- Thư gốc --------
+
+## forwarded header in composeMsg
+## user specified
+mailnews.forward_header_originalmessage=-------- Tin nhắn đã được chuyển tiếp --------
+
+## Strings used by the rename attachment dialog
+renameAttachmentTitle=Đổi tên đính kèm
+renameAttachmentMessage=Tên phần đính kèm mới:
+
+## 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=Nhắc tôi sau
+remindLaterButton.accesskey=L
+disableAttachmentReminderButton=Vô hiệu hóa lời nhắc đính kèm cho thư hiện tại
+attachmentReminderTitle=Nhắc nhở đính kèm
+attachmentReminderMsg=Bạn có quên thêm phần đính kèm?
+
+# LOCALIZATION NOTE (attachmentReminderKeywordsMsgs): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+# #1 number of keywords
+attachmentReminderKeywordsMsgs=Đã tìm thấy #1 từ khóa đính kèm:
+attachmentReminderOptionsMsg=Lời nhắc nhở cho phần đính kèm có thể được thiết lập trong tùy chỉnh
+attachmentReminderYesIForgot=Oh, tôi đã làm!
+attachmentReminderFalseAlarm=Không, gửi ngay
+
+# Strings used by the Filelink offer notification bar.
+learnMore.label=Tìm hiểu thêm…
+learnMore.accesskey=m
+
+# 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=Đây là những tập tin lớn. Có thể tốt hơn nếu sử dụng Filelink.
+bigFileShare.label=Liên kết
+bigFileShare.accesskey=l
+bigFileAttach.label=Bỏ qua
+bigFileAttach.accesskey=i
+bigFileChooseAccount.title=Chọn tài khoản
+bigFileChooseAccount.text=Chọn một tài khoản đám mây để tải tệp đính kèm lên
+bigFileHideNotification.title=Không tải lên tập tin của tôi
+bigFileHideNotification.text=Bạn sẽ không được thông báo nếu bạn đính kèm nhiều tệp lớn hơn vào thư này.
+bigFileHideNotification.check=Không bao giờ thông báo tôi về điều này lần nữa.
+
+# 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=Đang tải lên vào %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=Đã tải lên vào %S
+cloudFileUploadingNotification=Tập tin của bạn đang được liên kết. Nó sẽ xuất hiện trong phần nội dung thư khi hoàn tất.;Các tập tin của bạn đang được liên kết. Chúng sẽ xuất hiện trong nội dung thư khi hoàn tất.
+cloudFileUploadingCancel.label=Hủy bỏ
+cloudFileUploadingCancel.accesskey=c
+cloudFilePrivacyNotification=Liên kết đã hoàn tất. Xin lưu ý rằng những người có thể xem hoặc đoán các liên kết có thể truy cập được các đính kèm được liên kết.
+
+## LOCALIZATION NOTE(smtpEnterPasswordPrompt): Do not translate the
+## word %S. Place the word %S where the host name should appear.
+smtpEnterPasswordPrompt=Nhập mật khẩu cho %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=Nhập mật khẩu cho %2$S trên %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=Yêu cầu mật khẩu cho máy chủ gửi thư (SMTP) %1$S
+
+# LOCALIZATION NOTE (removeAttachmentMsgs): Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/Localization_and_Plurals
+removeAttachmentMsgs=Xóa (các) phần đính kèm
+
+## 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=Thư của bạn đã được gửi nhưng bản sao không được đặt trong thư mục đã gửi của bạn (%1$S) do lỗi truy cập tập tin hoặc mạng.\nBạn có thể thử lại hoặc lưu thư cục bộ đến %3$S/%1$S-%2$S.
+errorFilteringMsg=Thư của bạn đã được gửi và lưu, nhưng đã xảy ra lỗi khi chạy các bộ lọc thư trên đó.
+errorCloudFileAuth.title=Lỗi khi xác thực
+
+## 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=Thư nháp của bạn không được sao chép vào thư mục thư nháp (%1$S) do lỗi truy cập mạng hoặc tập tin.\nBạn có thể thử lại hoặc lưu bản nháp cục bộ đến %3$S/%1$S-%2$S.
+buttonLabelRetry2=&Thử lại
+
+## 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=Mẫu của bạn không được sao chép vào thư mục mẫu của bạn (%1$S) do lỗi truy cập mạng hoặc tập tin.\nBạn có thể thử lại hoặc lưu mẫu cục bộ vào %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=Không thể lưu thư của bạn vào các thư mục địa phương. Có thể hết không gian trống để lưu trữ tập tin.
+
+## LOCALIZATION NOTE(errorCloudFileAuth.message):
+## %1$S is the name of the online storage service against which the authentication failed.
+errorCloudFileAuth.message=Không thể xác thực với %1$S.
+errorCloudFileUpload.title=Lỗi khi tải lên
+
+## 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=Không thể tải %2$S lên %1$S.
+errorCloudFileQuota.title=Lỗi hạn mức
+
+## 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=Tải lên %2$S lên %1$S sẽ vượt quá dung lượng không gian trống của bạn.
+errorCloudFileLimit.title=Lỗi kích thước tập tin
+
+## 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 vượt quá kích thước tối đa cho %1$S.
+errorCloudFileOther.title=Lỗi không xác định
+
+## LOCALIZATION NOTE(errorCloudFileOther.message):
+## %1$S is the name of the online storage service that cannot be communicated with.
+errorCloudFileOther.message=Đã xảy ra lỗi không xác định khi giao tiếp với %1$S.
+errorCloudFileDeletion.title=Lỗi khi xóa
+
+## 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=Đã xảy ra sự cố khi xóa %2$S khỏi %1$S.
+errorCloudFileUpgrade.label=Nâng cấp
+
+## LOCALIZATION NOTE(stopShowingUploadingNotification): This string is used in the Filelink
+## upload notification bar to allow the user to dismiss the notification permanently.
+stopShowingUploadingNotification.accesskey=N
+stopShowingUploadingNotification.label=Đừng hiển thị lại điều này
+replaceButton.label=Thay thế…
+replaceButton.accesskey=x
+replaceButton.tooltip=Hiển thị hộp thoại Tìm và thay thế
+
+## LOCALIZATION NOTE(blockedAllowResource): %S is the URL to load.
+blockedAllowResource=Bỏ chặn %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 đã chặn một số tập tin tải vào thư này. Bỏ chặn tập tin sẽ bao gồm nó trong thư đã gửi của bạn.
+
+blockedContentPrefLabel=Tùy chọn
+blockedContentPrefAccesskey=O
+
+blockedContentPrefLabelUnix=Tùy chỉnh
+blockedContentPrefAccesskeyUnix=P
+
+## Recipient pills fields.
+## LOCALIZATION NOTE(confirmRemoveRecipientRowTitle2): %S will be replaced with the field name.
+confirmRemoveRecipientRowTitle2=Xóa địa chỉ %S
+## LOCALIZATION NOTE(confirmRemoveRecipientRowBody2): %S will be replaced with the field name.
+confirmRemoveRecipientRowBody2=Bạn có chắc chắn muốn xóa địa chỉ %S không?
+confirmRemoveRecipientRowButton=Xóa
+
+## 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/l10n-vi/mail/chrome/messenger/messengercompose/editor.properties b/l10n-vi/mail/chrome/messenger/messengercompose/editor.properties
new file mode 100644
index 0000000000..b66a546c69
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Không
+Save=Lưu
+More=Nhiều hơn
+Less=Ít hơn
+MoreProperties=Nhiều thuộc tính hơn
+FewerProperties=Ít thuộc tính hơn
+PropertiesAccessKey=P
+None=Không có
+none=không có
+OpenHTMLFile=Mở tập tin HTML
+OpenTextFile=Mở tập tin văn bản
+SelectImageFile=Chọn tập tin ảnh
+SaveDocument=Lưu trang
+SaveDocumentAs=Lưu trang dưới dạng
+SaveTextAs=Lưu văn bản dưới dạng
+EditMode=Chế độ chỉnh sửa
+Preview=Xem trước
+Publish=Xuất bản
+PublishPage=Xuất bản trang
+DontPublish=Không xuất bản
+SavePassword=Sử dụng trình quản lý mật khẩu để lưu mật khẩu này
+CorrectSpelling=(đúng chính tả)
+NoSuggestedWords=(không có từ gợi ý)
+NoMisspelledWord=Không có lỗi chính tả
+CheckSpellingDone=Kiểm tra chính tả hoàn tất.
+CheckSpelling=Kiểm tra chính tả
+InputError=Lỗi
+Alert=Cảnh báo
+CantEditFramesetMsg=Trình soạn thảo không thể mở các bộ khung HTML, hoặc các trang có khung nội bộ. Để soạn thảo bộ khung, hãy thử mở trang của các khung riêng rẽ. Để soạn thảo trang có khung nội bộ, hãy lưu một bản sao của trang và xóa thẻ <iframe>.
+CantEditMimeTypeMsg=Không thể chỉnh sửa loại trang này.
+CantEditDocumentMsg=Không thể chỉnh sửa trang này vì không rõ lí do.
+BeforeClosing=trước khi đóng
+BeforePreview=trước khi xem trong trình duyệt
+BeforeValidate=trước khi kiểm định tài liệu
+# LOCALIZATION NOTE (SaveFilePrompt, PublishPrompt): Don't translate %title% and %reason% (this is the reason for asking user to close, such as "before closing")
+SaveFilePrompt=Bạn có muốn lưu các thay đổi trong “%title%” %reason%?
+PublishPrompt=Bạn có muốn lưu các thay đổi trong “%title%” %reason%?
+SaveFileFailed=Lưu tập tin thất bại!
+
+# Publishing error strings:
+# LOCALIZATION NOTE Don't translate %dir% or %file% in the Publishing error strings:
+FileNotFound=Không tìm thấy %file%.
+SubdirDoesNotExist=Thư mục con "%dir%" không tồn tại trên trang này hoặc tên tệp "%file%" đã được sử dụng bởi thư mục con khác.
+FilenameIsSubdir=Tên tập tin “%file%” đã được sử dụng bởi một thư mục con khác.
+ServerNotAvailable=Máy chủ không có sẵn. Kiểm tra kết nối của bạn và thử lại sau.
+Offline=Bạn hiện đang ngoại tuyến. Hãy nhấn biểu tượng gần góc dưới bên phải của bất kì cửa sổ nào để trực tuyến.
+DiskFull=Không đủ dung lượng trống trên đĩa để lưu tập tin "%file%."
+NameTooLong=Tên tệp hoặc tên thư mục con quá dài.
+AccessDenied=Bạn không có quyền xuất bản đến vị trí này.
+UnknownPublishError=Xảy ra lỗi xuất bản không rõ lí do.
+PublishFailed=Xuất bản thất bại.
+PublishCompleted=Xuất bản đã hoàn tất.
+AllFilesPublished=Đã xuất bản các tập tin
+# LOCALIZATION NOTE Don't translate %x% or %total%
+FailedFileMsg=%x% của %total% tập tin không thể xuất bản.
+# End-Publishing error strings
+Prompt=Lời nhắc
+# LOCALIZATION NOTE (PromptFTPUsernamePassword): Don't translate %host%
+PromptFTPUsernamePassword=Hãy nhập tên người dùng và mật khẩu cho máy chủ FTP ở %host%
+RevertCaption=Hoàn nguyên về lần lưu cuối cùng
+Revert=Hoàn nguyên
+SendPageReason=trước khi gửi trang này
+Send=Gửi
+## LOCALIZATION NOTE (PublishProgressCaption, PublishToSite, AbandonChanges): Don't translate %title%
+PublishProgressCaption=Đang xuất bản: %title%
+PublishToSite=Đang xuất bản lên trang: %title%
+AbandonChanges=Bạn có muốn từ bỏ những thay đổi chưa lưu của “%title%” và tải lại trang?
+DocumentTitle=Tiêu đề trang
+NeedDocTitle=Vui lòng nhập một tiêu đề cho trang hiện tại.
+DocTitleHelp=Tiêu đề sẽ hiện ra ở thanh tiêu đề của cửa sổ và trang đánh dấu.
+CancelPublishTitle=Hủy bỏ việc xuất bản?
+## LOCALIZATION NOTE: "Continue" in this sentence must match the text for
+## the CancelPublishContinue key below
+CancelPublishMessage=Hủy bỏ trong khi đang xuất bản có thể khiến tập tin của bạn không được truyền đầy đủ. Bạn muốn Tiếp tục hay Hủy bỏ?
+CancelPublishContinue=Tiếp tục
+MissingImageError=Xin hãy nhập hay chọn hình ở dạng GIF, JPEG, hoặc PNG.
+EmptyHREFError=Xin hãy chọn địa chỉ để tạo liên kết mới.
+LinkText=Liên kết văn bản
+LinkImage=Liên kết ảnh
+MixedSelection=[Lựa chọn Hỗn hợp]
+Mixed=(hỗn hợp)
+# LOCALIZATION NOTE (NotInstalled): %S is the name of the font
+NotInstalled=%S (chưa cài đặt)
+EnterLinkText=Nhập văn bản để hiển thị trong liên kết:
+EnterLinkTextAccessKey=T
+EmptyLinkTextError=Xin hãy nhập văn bản cho liên kết này.
+EditTextWarning=Nội dung hiện có sẽ được thay thế.
+#LOCALIZATION NOTE (ValidateNumber):Don't translate: %n% %min% %max%
+ValidateRangeMsg=Số bạn đã nhập (%n%) nằm ở ngoài khoảng cho phép.
+ValidateNumberMsg=Xin hãy nhập số giữa %min% và %max%.
+MissingAnchorNameError=Xin hãy nhập tên cho mỏ neo này.
+#LOCALIZATION NOTE (DuplicateAnchorNameError): Don't translate %name%
+DuplicateAnchorNameError="%name%" đã tồn tại trong trang này. Vui lòng nhập một tên khác.
+BulletStyle=Kiểu Bullet
+SolidCircle=Vòng tròn tô đậm
+OpenCircle=Vòng tròn trống
+SolidSquare=Hình vuông tô đậm
+NumberStyle=Kiểu đánh số
+Automatic=Tự động
+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=điểm ảnh
+Percent=phần trăm
+PercentOfCell=% ô
+PercentOfWindow=% cửa sổ
+PercentOfTable=% bảng
+#LOCALIZATION NOTE (untitledTitle): %S is the window #. No plural handling needed.
+untitledTitle=không-tên-%S
+untitledDefaultFilename=không-tên
+ShowToolbar=Hiển thị thanh công cụ
+HideToolbar=Ẩn thanh công cụ
+ImapError=Không thể tải ảnh
+ImapCheck=\nXin hãy chọn địa chỉ (URL) mới và thử lại.
+SaveToUseRelativeUrl=Chỉ có thể sử dụng các URL tương đối trong các trang được lưu
+NoNamedAnchorsOrHeadings=(Trang này không có mỏ neo hoặc đầu đề)
+TextColor=Màu chữ
+HighlightColor=Màu tô sáng
+PageColor=Màu nền trang
+BlockColor=Màu nền khối
+TableColor=Màu nền bảng
+CellColor=Màu nền ô
+TableOrCellColor=Màu bảng hoặc ô
+LinkColor=Màu liên kết văn bản
+ActiveLinkColor=Màu liên kết kích hoạt
+VisitedLinkColor=Màu liên kết đã truy cập
+NoColorError=Nhấp vào màu hoặc nhập chuỗi màu HTML hợp lệ
+Table=Bảng
+TableCell=Ô bảng
+NestedTable=Bảng lồng nhau
+HLine=Đường ngang
+Link=Liên kết
+Image=Hình
+ImageAndLink=Ảnh và liên kết
+NamedAnchor=Mỏ neo
+List=Danh sách
+ListItem=Danh sách mục
+Form=Biểu mẫu
+InputTag=Trường biểu mẫu
+InputImage=Hình biểu mẫu
+TextArea=Vùng văn bản
+Select=Danh sách chọn
+Button=Nút
+Label=Nhãn
+FieldSet=Bộ trường
+Tag=Nhãn
+MissingSiteNameError=Vui lòng nhập tên để xuất bản trang web này.
+MissingPublishUrlError=Vui lòng nhập vị trí để xuất bản trang này.
+MissingPublishFilename=Vui lòng nhập tên tập tin cho trang hiện tại.
+#LOCALIZATION NOTE (DuplicateSiteNameError): Don't translate %name%
+DuplicateSiteNameError="%name%" đã tồn tại. Vui lòng nhập một tên khác.
+AdvancedProperties=Thuộc tính nâng cao…
+AdvancedEditForCellMsg=Chỉnh sửa nâng cao không khả dụng khi nhiều ô được chọn
+# LOCALIZATION NOTE (ObjectProperties):Don't translate "%obj%" it will be replaced with one of above object nouns
+ObjectProperties=Thuộc tính %obj%…
+# LOCALIZATION NOTE This character must be in the above string and not conflict with other accesskeys in Format menu
+ObjectPropertiesAccessKey=o
+# LOCALIZATION NOTE (JoinSelectedCells): This variable should contain the "tableJoinCells.accesskey"
+# letter as defined in editorOverlay.dtd
+JoinSelectedCells=Hợp nhất các ô được chọn
+# LOCALIZATION NOTE (JoinCellToRight): This variable should contain the "tableJoinCells.accesskey"
+# letter as defined in editorOverlay.dtd
+JoinCellToRight=Hợp nhất với ô bên phải
+JoinCellAccesskey=j
+# 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=Xóa
+DeleteCells=Xóa các ô
+DeleteTableTitle=Xóa các hàng hoặc cột
+DeleteTableMsg=Nếu xóa hàng hay cột thì sẽ xóa những ô (và nội dung trong đó) thuộc hàng hay cột đó. Bạn có chắc muốn làm vậy không?
+Clear=Xóa trắng
+#Mouse actions
+Click=Nhấp
+Drag=Kéo
+Unknown=Không rõ
+#
+# LOCALIZATION NOTE "RemoveTextStylesAccesskey" is used for both
+# menu items: "RemoveTextStyles" and "StopTextStyles"
+RemoveTextStylesAccesskey=x
+RemoveTextStyles=Xóa tất cả các kiểu văn bản
+StopTextStyles=Ngừng kiểu văn bản
+#
+# LOCALIZATION NOTE "RemoveLinksAccesskey" is used for both
+# menu items: "RemoveLinks" and "StopLinks"
+RemoveLinksAccesskey=n
+RemoveLinks=Xóa liên kết
+StopLinks=Ngừng liên kết
+#
+NoFormAction=Bạn nên nhập một hành động cho biểu mẫu này. Biểu mẫu tự đệ trình dùng một kĩ thuật nâng cao, và có thể không hoạt động giống nhau trong các trình duyệt.
+NoAltText=Nếu hình này có liên quan đến nội dung của tài liệu, bạn cần phải cung cấp văn bản thay thế để hiển thị trong những trình duyệt văn-bản-thuần, và cũng để hiển thị khi hình đang được tải hoặc khi việc tải hình bị vô hiệu hóa.
+#
+Malformed=Nguồn không thể được chuyển đổi lại thành tài liệu vì nó không phải là XHTML hợp lệ.
+NoLinksToCheck=Không có phần tử chứa liên kết để kiểm tra
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/editorOverlay.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/editorOverlay.dtd
new file mode 100644
index 0000000000..ea8c0b8039
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Dán mà không cần định dạng">
+<!ENTITY pasteNoFormatting.accesskey "n">
+<!ENTITY pasteNoFormatting.key "V">
+<!ENTITY pasteAsQuotationCmd.label "Dán dưới dạng trích dẫn">
+<!ENTITY pasteAsQuotationCmd.accesskey "Q">
+
+<!-- Insert menu items -->
+<!ENTITY insertMenu.label "Chèn">
+<!ENTITY insertMenu.accesskey "I">
+<!ENTITY insertLinkCmd2.label "Liên kết…">
+<!ENTITY insertLinkCmd2.accesskey "L">
+<!ENTITY insertLinkCmd2.key "K">
+<!ENTITY insertAnchorCmd.label "Mỏ neo…">
+<!ENTITY insertAnchorCmd.accesskey "A">
+<!ENTITY insertImageCmd.label "Hình…">
+<!ENTITY insertImageCmd.accesskey "I">
+<!ENTITY insertHLineCmd.label "Đường ngang">
+<!ENTITY insertHLineCmd.accesskey "o">
+<!ENTITY insertTableCmd.label "Bảng…">
+<!ENTITY insertTableCmd.accesskey "T">
+<!ENTITY insertHTMLCmd.label "HTML…">
+<!ENTITY insertHTMLCmd.accesskey "H">
+<!ENTITY insertMathCmd.label "Toán học…">
+<!ENTITY insertMathCmd.accesskey "M">
+<!ENTITY insertCharsCmd.label "Kí hiệu và biểu tượng…">
+<!ENTITY insertCharsCmd.accesskey "C">
+<!ENTITY insertBreakAllCmd.label "Ngắt đoạn sau (các) hình">
+<!ENTITY insertBreakAllCmd.accesskey "k">
+
+<!-- Used just in context popup. -->
+<!ENTITY createLinkCmd.label "Tạo liên kết…">
+<!ENTITY createLinkCmd.accesskey "k">
+<!ENTITY editLinkCmd.label "Chỉnh sửa liên kết trong trình soạn thảo mới">
+<!ENTITY editLinkCmd.accesskey "i">
+
+<!-- Font Face SubMenu -->
+<!ENTITY FontFaceSelect.tooltip "Chọn phông chữ">
+<!ENTITY fontfaceMenu.label "Phông chữ">
+<!ENTITY fontfaceMenu.accesskey "F">
+<!ENTITY fontVarWidth.label "Chiều rộng thay đổi">
+<!ENTITY fontVarWidth.accesskey "V">
+<!ENTITY fontFixedWidth.label "Chiều rộng cố định">
+<!ENTITY fontFixedWidth.accesskey "x">
+<!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 "Chọn cỡ chữ">
+<!ENTITY decreaseFontSize.label "Nhỏ hơn">
+<!ENTITY decreaseFontSize.accesskey "r">
+<!ENTITY decrementFontSize.key "&lt;">
+<!ENTITY decrementFontSize.key2 ","> <!-- < is above this key on many keyboards -->
+<!ENTITY increaseFontSize.label "Lớn hơn">
+<!ENTITY increaseFontSize.accesskey "g">
+<!ENTITY incrementFontSize.key "&gt;">
+<!ENTITY incrementFontSize.key2 "."> <!-- > is above this key on many keyboards -->
+
+<!ENTITY fontSizeMenu.label "Cỡ chữ">
+<!ENTITY fontSizeMenu.accesskey "z">
+<!ENTITY size-tinyCmd.label "Rất nhỏ">
+<!ENTITY size-tinyCmd.accesskey "T">
+<!ENTITY size-smallCmd.label "Nhỏ">
+<!ENTITY size-smallCmd.accesskey "S">
+<!ENTITY size-mediumCmd.label "Trung bình">
+<!ENTITY size-mediumCmd.accesskey "M">
+<!ENTITY size-largeCmd.label "Lớn">
+<!ENTITY size-largeCmd.accesskey "L">
+<!ENTITY size-extraLargeCmd.label "Rất lớn">
+<!ENTITY size-extraLargeCmd.accesskey "x">
+<!ENTITY size-hugeCmd.label "Siêu lớn">
+<!ENTITY size-hugeCmd.accesskey "H">
+
+<!-- Font Style SubMenu -->
+<!ENTITY fontStyleMenu.label "Kiểu chữ">
+<!ENTITY fontStyleMenu.accesskey "S">
+<!ENTITY styleBoldCmd.label "Đậm">
+<!ENTITY styleBoldCmd.accesskey "B">
+<!ENTITY styleBoldCmd.key "B">
+<!ENTITY styleItalicCmd.label "Nghiêng">
+<!ENTITY styleItalicCmd.accesskey "I">
+<!ENTITY styleItalicCmd.key "I">
+<!ENTITY styleUnderlineCmd.label "Gạch dưới">
+<!ENTITY styleUnderlineCmd.accesskey "U">
+<!ENTITY styleUnderlineCmd.key "U">
+<!ENTITY styleStrikeThruCmd.label "Gạch ngang">
+<!ENTITY styleStrikeThruCmd.accesskey "k">
+<!ENTITY styleSuperscriptCmd.label "Chữ nhỏ bên trên">
+<!ENTITY styleSuperscriptCmd.accesskey "p">
+<!ENTITY styleSubscriptCmd.label "Chữ nhỏ bên dưới">
+<!ENTITY styleSubscriptCmd.accesskey "S">
+<!ENTITY styleNonbreakingCmd.label "Không ngắt dòng">
+<!ENTITY styleNonbreakingCmd.accesskey "N">
+<!ENTITY styleEm.label "Nhấn mạnh">
+<!ENTITY styleEm.accesskey "E">
+<!ENTITY styleStrong.label "Nhấn mạnh hơn">
+<!ENTITY styleStrong.accesskey "t">
+<!ENTITY styleCite.label "Nguồn trích dẫn">
+<!ENTITY styleCite.accesskey "C">
+<!ENTITY styleAbbr.label "Viết tắt">
+<!ENTITY styleAbbr.accesskey "A">
+<!ENTITY styleAcronym.label "Viết tắt chữ cái đầu">
+<!ENTITY styleAcronym.accesskey "r">
+<!ENTITY styleCode.label "Đoạn mã">
+<!ENTITY styleCode.accesskey "o">
+<!ENTITY styleSamp.label "Ví dụ mẫu">
+<!ENTITY styleSamp.accesskey "m">
+<!ENTITY styleVar.label "Biến">
+<!ENTITY styleVar.accesskey "V">
+
+<!ENTITY formatFontColor.label "Màu chữ…">
+<!ENTITY formatFontColor.accesskey "C">
+<!ENTITY tableOrCellColor.label "Màu nền bảng hoặc ô…">
+<!ENTITY tableOrCellColor.accesskey "B">
+
+<!ENTITY formatRemoveStyles.key "Y">
+<!ENTITY formatRemoveLinks.key "K">
+<!ENTITY formatRemoveNamedAnchors.label "Xóa mỏ neo">
+<!ENTITY formatRemoveNamedAnchors.accesskey "R">
+<!ENTITY formatRemoveNamedAnchors2.key "R">
+
+<!ENTITY paragraphMenu.label "Đoạn văn">
+<!ENTITY paragraphMenu.accesskey "P">
+<!ENTITY paragraphParagraphCmd.label "Đoạn văn">
+<!ENTITY paragraphParagraphCmd.accesskey "P">
+<!ENTITY heading1Cmd.label "Đầu đề cấp 1">
+<!ENTITY heading1Cmd.accesskey "1">
+<!ENTITY heading2Cmd.label "Đầu đề cấp 2">
+<!ENTITY heading2Cmd.accesskey "2">
+<!ENTITY heading3Cmd.label "Đầu đề cấp 3">
+<!ENTITY heading3Cmd.accesskey "3">
+<!ENTITY heading4Cmd.label "Đầu đề cấp 4">
+<!ENTITY heading4Cmd.accesskey "4">
+<!ENTITY heading5Cmd.label "Đầu đề cấp 5">
+<!ENTITY heading5Cmd.accesskey "5">
+<!ENTITY heading6Cmd.label "Đầu đề cấp 6">
+<!ENTITY heading6Cmd.accesskey "6">
+<!ENTITY paragraphAddressCmd.label "Địa chỉ">
+<!ENTITY paragraphAddressCmd.accesskey "A">
+<!ENTITY paragraphPreformatCmd.label "Định dạng sẵn">
+<!ENTITY paragraphPreformatCmd.accesskey "f">
+
+<!-- List menu items -->
+<!ENTITY formatlistMenu.label "Danh sách">
+<!ENTITY formatlistMenu.accesskey "L">
+<!ENTITY noneCmd.label "Không có">
+<!ENTITY noneCmd.accesskey "K">
+<!ENTITY listBulletCmd.label "Gạch đầu dòng">
+<!ENTITY listBulletCmd.accesskey "B">
+<!ENTITY listNumberedCmd.label "Được đánh số">
+<!ENTITY listNumberedCmd.accesskey "m">
+<!ENTITY listTermCmd.label "Thuật ngữ">
+<!ENTITY listTermCmd.accesskey "T">
+<!ENTITY listDefinitionCmd.label "Định nghĩa">
+<!ENTITY listDefinitionCmd.accesskey "D">
+<!ENTITY listPropsCmd.label "Danh sách thuộc tính…">
+<!ENTITY listPropsCmd.accesskey "L">
+
+<!ENTITY ParagraphSelect.tooltip "Chọn một định dạng đoạn văn">
+<!-- Shared in Paragraph, and Toolbar menulist -->
+<!ENTITY bodyTextCmd.label "Nội dung">
+<!ENTITY bodyTextCmd.accesskey "T">
+
+<!-- Align menu items -->
+<!ENTITY alignMenu.label "Căn chỉnh">
+<!ENTITY alignMenu.accesskey "A">
+<!ENTITY alignLeft.label "Trái">
+<!ENTITY alignLeft.accesskey "L">
+<!ENTITY alignLeft.tooltip "Căn trái">
+<!ENTITY alignCenter.label "Giữa">
+<!ENTITY alignCenter.accesskey "C">
+<!ENTITY alignCenter.tooltip "Căn giữa">
+<!ENTITY alignRight.label "Phải">
+<!ENTITY alignRight.accesskey "R">
+<!ENTITY alignRight.tooltip "Căn phải">
+<!ENTITY alignJustify.label "Hai bên">
+<!ENTITY alignJustify.accesskey "J">
+<!ENTITY alignJustify.tooltip "Căn hai bên">
+
+<!ENTITY increaseIndent.label "Tăng lề">
+<!ENTITY increaseIndent.accesskey "I">
+<!ENTITY increaseIndent.key "]">
+<!ENTITY decreaseIndent.label "Giảm lề">
+<!ENTITY decreaseIndent.accesskey "D">
+<!ENTITY decreaseIndent.key "[">
+
+<!ENTITY colorsAndBackground.label "Nền và màu trang…">
+<!ENTITY colorsAndBackground.accesskey "u">
+
+<!-- Table Menu -->
+<!ENTITY tableMenu.label "Bảng">
+<!ENTITY tableMenu.accesskey "b">
+
+<!-- Select Submenu -->
+<!ENTITY tableSelectMenu.label "Chọn">
+<!ENTITY tableSelectMenu.accesskey "S">
+
+<!ENTITY tableSelectMenu2.label "Chọn bảng">
+<!ENTITY tableSelectMenu2.accesskey "S">
+<!ENTITY tableInsertMenu2.label "Chèn bảng">
+<!ENTITY tableInsertMenu2.accesskey "I">
+<!ENTITY tableDeleteMenu2.label "Xóa bảng">
+<!ENTITY tableDeleteMenu2.accesskey "D">
+
+<!-- Insert SubMenu -->
+<!ENTITY tableInsertMenu.label "Chèn">
+<!ENTITY tableInsertMenu.accesskey "I">
+<!ENTITY tableTable.label "Bảng">
+<!ENTITY tableTable.accesskey "T">
+<!ENTITY tableRow.label "Hàng">
+<!ENTITY tableRows.label "Các hàng">
+<!ENTITY tableRow.accesskey "R">
+<!ENTITY tableRowAbove.label "Hàng trên">
+<!ENTITY tableRowAbove.accesskey "R">
+<!ENTITY tableRowBelow.label "Hàng dưới">
+<!ENTITY tableRowBelow.accesskey "B">
+<!ENTITY tableColumn.label "Cột">
+<!ENTITY tableColumns.label "Các cột">
+<!ENTITY tableColumn.accesskey "o">
+<!ENTITY tableColumnBefore.label "Cột trước">
+<!ENTITY tableColumnBefore.accesskey "o">
+<!ENTITY tableColumnAfter.label "Cột sau">
+<!ENTITY tableColumnAfter.accesskey "A">
+<!ENTITY tableCell.label "Ô">
+<!ENTITY tableCells.label "Các ô">
+<!ENTITY tableCell.accesskey "C">
+<!ENTITY tableCellContents.label "Nội dung ô">
+<!ENTITY tableCellContents.accesskey "n">
+<!ENTITY tableAllCells.label "Tất cả các ô">
+<!ENTITY tableAllCells.accesskey "A">
+<!ENTITY tableCellBefore.label "Ô trước">
+<!ENTITY tableCellBefore.accesskey "C">
+<!ENTITY tableCellAfter.label "Ô sau">
+<!ENTITY tableCellAfter.accesskey "f">
+<!-- Delete SubMenu -->
+<!ENTITY tableDeleteMenu.label "Xóa">
+<!ENTITY tableDeleteMenu.accesskey "D">
+
+<!-- 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 "Chia ô">
+<!ENTITY tableSplitCell.accesskey "C">
+<!ENTITY convertToTable.label "Tạo bảng từ phần đã chọn">
+<!ENTITY convertToTable.accesskey "r">
+<!ENTITY tableProperties.label "Thuộc tính bảng…">
+<!ENTITY tableProperties.accesskey "o">
+
+<!ENTITY imageToolbarCmd.label "Hình">
+<!ENTITY imageToolbarCmd.tooltip "Chèn hình mới hoặc chỉnh sửa thuộc tính của hình">
+<!ENTITY hruleToolbarCmd.label "Đ.Ngang">
+<!ENTITY hruleToolbarCmd.tooltip "Chèn đường kẻ ngang hoặc chỉnh sửa thuộc tính của đường kẻ">
+<!ENTITY tableToolbarCmd.label "Bảng">
+<!ENTITY tableToolbarCmd.tooltip "Chèn bảng mới hoặc chỉnh sửa thuộc tính của bảng">
+<!ENTITY linkToolbarCmd.label "Liên kết">
+<!ENTITY linkToolbarCmd.tooltip "Chèn liên kết mới hoặc chỉnh sửa thuộc tính của liên kết đã chọn">
+<!ENTITY anchorToolbarCmd.label "Mỏ neo">
+<!ENTITY anchorToolbarCmd.tooltip "Chèn neo mới hoặc chỉnh sửa thuộc tính của neo được chọn">
+<!ENTITY TextColorButton.tooltip "Chọn màu chữ">
+<!ENTITY BackgroundColorButton.tooltip "Chọn màu nền">
+
+<!-- Editor toolbar -->
+<!ENTITY absoluteFontSizeToolbarCmd.tooltip "Đặt cỡ chữ">
+<!ENTITY decreaseFontSizeToolbarCmd.tooltip "Cỡ chữ nhỏ hơn">
+<!ENTITY increaseFontSizeToolbarCmd.tooltip "Cỡ chữ lớn hơn">
+<!ENTITY boldToolbarCmd.tooltip "Đậm">
+<!ENTITY italicToolbarCmd.tooltip "Nghiêng">
+<!ENTITY underlineToolbarCmd.tooltip "Gạch dưới">
+<!ENTITY bulletListToolbarCmd.tooltip "Áp dụng hoặc xóa danh sách bullet">
+<!ENTITY numberListToolbarCmd.tooltip "Áp dụng hoặc xóa danh sách số">
+<!ENTITY outdentToolbarCmd.tooltip "Giảm lề văn bản (chuyển trái)">
+<!ENTITY indentToolbarCmd.tooltip "Tăng lề văn bản (chuyển phải)">
+<!ENTITY AlignPopupButton.tooltip "Chọn cách căn văn bản">
+<!ENTITY InsertPopupButton.tooltip "Chèn một liên kết, neo, hình ảnh, đường ngang hoặc bảng">
+<!ENTITY alignLeftButton.tooltip "Căn theo lề trái">
+<!ENTITY alignCenterButton.tooltip "Căn vào giữa">
+<!ENTITY alignRightButton.tooltip "Căn theo lề phải">
+<!ENTITY alignJustifyButton.tooltip "Căn theo hai bên lề">
+
+<!-- TOC manipulation -->
+<!ENTITY insertTOC.label "Chèn">
+<!ENTITY insertTOC.accesskey "i">
+<!ENTITY updateTOC.label "Cập nhật">
+<!ENTITY updateTOC.accesskey "u">
+<!ENTITY removeTOC.label "Xóa">
+<!ENTITY removeTOC.accesskey "r">
+<!ENTITY tocMenu.label "Mục lục…">
+<!ENTITY tocMenu.accesskey "b">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/mailComposeEditorOverlay.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/mailComposeEditorOverlay.dtd
new file mode 100644
index 0000000000..9e9f66d690
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/messengercompose/mailComposeEditorOverlay.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 attachImageSource.label "Đính kèm ảnh này vào thư">
+<!ENTITY attachImageSource.accesskey "k">
+
+<!ENTITY attachLinkSource.label "Đính kèm nguồn của liên kết này vào thư">
+<!ENTITY attachLinkSource.accesskey "k">
+
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/messengercompose.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/messengercompose.dtd
new file mode 100644
index 0000000000..f6ba06efe7
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/messengercompose/messengercompose.dtd
@@ -0,0 +1,305 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.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 "Viết thư: (chưa có tiêu đề)">
+
+<!-- File Menu -->
+<!ENTITY fileMenu.label "Tập tin">
+<!ENTITY fileMenu.accesskey "T">
+<!ENTITY newMenu.label "Mới">
+<!ENTITY newMenu.accesskey "M">
+<!ENTITY newMessage.label "Thư">
+<!ENTITY newMessage.accesskey "M">
+<!ENTITY newMessageCmd2.key "N">
+<!ENTITY newContact.label "Liên hệ trong sổ địa chỉ…">
+<!ENTITY newContact.accesskey "S">
+<!ENTITY attachMenu.label "Đính kèm">
+<!ENTITY attachMenu.accesskey "k">
+<!ENTITY attachCloudCmd.label "Filelink">
+<!ENTITY attachCloudCmd.accesskey "i">
+<!ENTITY attachPageCmd.label "Trang web…">
+<!ENTITY attachPageCmd.accesskey "W">
+<!ENTITY remindLater.label "Nhắc tôi sau">
+<!ENTITY remindLater.accesskey "L">
+<!ENTITY closeCmd.label "Đóng">
+<!ENTITY closeCmd.key "W">
+<!ENTITY closeCmd.accesskey "g">
+<!ENTITY saveCmd.label "Lưu">
+<!ENTITY saveCmd.key "S">
+<!ENTITY saveCmd.accesskey "L">
+<!ENTITY saveAsCmd.label "Lưu Thành">
+<!ENTITY saveAsCmd.accesskey "u">
+<!ENTITY saveAsFileCmd.label "Tập tin…">
+<!ENTITY saveAsFileCmd.accesskey "T">
+<!ENTITY saveAsDraftCmd.label "Thư nháp">
+<!ENTITY saveAsDraftCmd.accesskey "N">
+<!ENTITY saveAsTemplateCmd.label "Thư mẫu">
+<!ENTITY saveAsTemplateCmd.accesskey "M">
+<!ENTITY sendNowCmd.label "Gửi ngay">
+<!ENTITY sendCmd.keycode "VK_RETURN">
+<!ENTITY sendNowCmd.accesskey "N">
+<!ENTITY sendLaterCmd.label "Gửi sau">
+<!ENTITY sendLaterCmd.keycode "VK_RETURN">
+<!ENTITY sendLaterCmd.accesskey "S">
+<!ENTITY printCmd.label "In…">
+<!ENTITY printCmd.key "P">
+<!ENTITY printCmd.accesskey "I">
+
+<!-- Edit Menu -->
+<!ENTITY editMenu.label "Chỉnh sửa">
+<!ENTITY editMenu.accesskey "e">
+<!ENTITY undoCmd.label "Hoàn tác">
+<!ENTITY undoCmd.key "Z">
+<!ENTITY undoCmd.accesskey "H">
+<!ENTITY redoCmd.label "Làm lại">
+<!ENTITY redoCmd.key "Y">
+<!ENTITY redoCmd.accesskey "L">
+<!ENTITY cutCmd.key "X">
+<!ENTITY copyCmd.key "C">
+<!ENTITY pasteCmd.key "V">
+<!ENTITY pasteNoFormattingCmd.key "V">
+<!ENTITY pasteAsQuotationCmd.key "o">
+<!ENTITY editRewrapCmd.accesskey "w">
+<!ENTITY deleteCmd.label "Xóa">
+<!ENTITY deleteCmd.accesskey "X">
+<!ENTITY editRewrapCmd.label "Gói lại">
+<!ENTITY editRewrapCmd.key "R">
+<!ENTITY renameAttachmentCmd.label "Đổi tên đính kèm…">
+<!ENTITY renameAttachmentCmd.accesskey "e">
+<!ENTITY reorderAttachmentsCmd.label "Sắp xếp lại đính kèm…">
+<!ENTITY reorderAttachmentsCmd.accesskey "s">
+<!ENTITY reorderAttachmentsCmd.key "x">
+<!ENTITY selectAllCmd.accesskey "B">
+<!ENTITY findBarCmd.label "Tìm kiếm…">
+<!ENTITY findBarCmd.accesskey "F">
+<!ENTITY findBarCmd.key "F">
+<!ENTITY findReplaceCmd.label "Tìm và thay thế…">
+<!ENTITY findReplaceCmd.accesskey "l">
+<!ENTITY findReplaceCmd.key "H">
+<!ENTITY findAgainCmd.label "Tìm tiếp">
+<!ENTITY findAgainCmd.accesskey "i">
+<!ENTITY findAgainCmd.key "G">
+<!ENTITY findAgainCmd.key2 "VK_F3">
+<!ENTITY findPrevCmd.label "Tìm phía trước">
+<!ENTITY findPrevCmd.accesskey "r">
+<!ENTITY findPrevCmd.key "G">
+<!ENTITY findPrevCmd.key2 "VK_F3">
+
+<!-- Reorder Attachment Panel -->
+<!ENTITY reorderAttachmentsPanel.label "Sắp xếp lại đính kèm">
+<!ENTITY moveAttachmentBundleUpPanelBtn.label "Di chuyển cung nhau">
+
+<!-- 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 "Sắp xếp: A - Z">
+<!ENTITY sortAttachmentsPanelBtn.Sort.ZA.label "Sắp xếp: Z - A">
+<!-- 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 "Sắp xếp phần đã chọn: A - Z">
+<!ENTITY sortAttachmentsPanelBtn.SortSelection.ZA.label "Sắp xếp phần đã chọn: Z - A">
+<!ENTITY sortAttachmentsPanelBtn.key "t">
+
+<!-- View Menu -->
+<!ENTITY viewMenu.label "Hiển thị">
+<!ENTITY viewMenu.accesskey "H">
+<!ENTITY viewToolbarsMenuNew.label "Thanh công cụ">
+<!ENTITY viewToolbarsMenuNew.accesskey "C">
+<!ENTITY menubarCmd.label "Thanh menu">
+<!ENTITY menubarCmd.accesskey "M">
+<!ENTITY showCompositionToolbarCmd.label "Thanh công cụ soạn thảo">
+<!ENTITY showCompositionToolbarCmd.accesskey "S">
+<!ENTITY showFormattingBarCmd.label "Thanh định dạng">
+<!ENTITY showFormattingBarCmd.accesskey "a">
+<!ENTITY showTaskbarCmd.label "Thanh trạng thái">
+<!ENTITY showTaskbarCmd.accesskey "h">
+<!ENTITY customizeToolbar.label "Tùy biến…">
+<!ENTITY customizeToolbar.accesskey "y">
+
+<!ENTITY addressSidebar.label "Thanh bên liên hệ">
+<!ENTITY addressSidebar.accesskey "o">
+
+<!-- Format Menu -->
+<!ENTITY formatMenu.label "Định dạng">
+<!ENTITY formatMenu.accesskey "d">
+
+<!-- Options Menu -->
+<!ENTITY optionsMenu.label "Tùy chọn">
+<!ENTITY optionsMenu.accesskey "y">
+<!ENTITY checkSpellingCmd2.label "Kiểm tra chính tả…">
+<!ENTITY checkSpellingCmd2.key "p">
+<!ENTITY checkSpellingCmd2.key2 "VK_F7">
+<!ENTITY checkSpellingCmd2.accesskey "a">
+<!ENTITY enableInlineSpellChecker.label "Kiểm tra chính tả khi bạn nhập">
+<!ENTITY enableInlineSpellChecker.accesskey "S">
+<!ENTITY quoteCmd.label "Trích dẫn Thư">
+<!ENTITY quoteCmd.accesskey "r">
+
+<!--LOCALIZATION NOTE attachVCard.label Don't translate the term 'vCard' -->
+<!ENTITY attachVCard.label "Đính kèm thẻ cá nhân (vCard)">
+<!ENTITY attachVCard.accesskey "v">
+
+<!ENTITY returnReceiptMenu.label "Xác nhận đã nhận thư">
+<!ENTITY returnReceiptMenu.accesskey "t">
+<!ENTITY dsnMenu.label "Thông báo trạng thái gửi thư">
+<!ENTITY dsnMenu.accesskey "G">
+<!ENTITY priorityMenu.label "Ưu tiên">
+<!ENTITY priorityMenu.accesskey "u">
+<!ENTITY priorityButton.title "Ưu tiên">
+<!ENTITY priorityButton.tooltiptext "Thay đổi mức độ ưu tiên của thư">
+<!ENTITY priorityButton.label "Ưu tiên:">
+<!ENTITY lowestPriorityCmd.label "Thấp nhất">
+<!ENTITY lowestPriorityCmd.accesskey "T">
+<!ENTITY lowPriorityCmd.label "Thấp">
+<!ENTITY lowPriorityCmd.accesskey "h">
+<!ENTITY normalPriorityCmd.label "Bình thường">
+<!ENTITY normalPriorityCmd.accesskey "n">
+<!ENTITY highPriorityCmd.label "Cao">
+<!ENTITY highPriorityCmd.accesskey "a">
+<!ENTITY highestPriorityCmd.label "Cao nhất">
+<!ENTITY highestPriorityCmd.accesskey "C">
+<!ENTITY fileCarbonCopyCmd.label "Gửi một bản sao đến">
+<!ENTITY fileCarbonCopyCmd.accesskey "m">
+<!ENTITY fileHereMenu.label "Xếp vào đây">
+
+<!-- Tools Menu -->
+<!ENTITY tasksMenu.label "Công cụ">
+<!ENTITY tasksMenu.accesskey "g">
+<!ENTITY messengerCmd.label "Thư &amp; nhóm tin">
+<!ENTITY messengerCmd.accesskey "T">
+<!ENTITY messengerCmd.commandkey "1">
+<!ENTITY addressBookCmd.label "Sổ địa chỉ">
+<!ENTITY addressBookCmd.accesskey "S">
+<!ENTITY addressBookCmd.key "B">
+<!ENTITY accountManagerCmd2.label "Cài đặt tài khoản">
+<!ENTITY accountManagerCmd2.accesskey "S">
+<!ENTITY accountManagerCmdUnix2.accesskey "S">
+
+<!-- Mac OS X Window Menu -->
+<!ENTITY minimizeWindow.key "m">
+<!ENTITY minimizeWindow.label "Thu nhỏ">
+<!ENTITY bringAllToFront.label "Đưa tất cả ra phía trước">
+<!ENTITY zoomWindow.label "Thu phóng">
+<!ENTITY windowMenu.label "Cửa sổ">
+
+<!-- Mail Toolbar -->
+<!ENTITY sendButton.label "Gửi">
+<!ENTITY quoteButton.label "Trích dẫn">
+<!ENTITY addressButton.label "Danh bạ">
+<!ENTITY spellingButton.label "Chính tả">
+<!ENTITY saveButton.label "Lưu">
+<!ENTITY printButton.label "In">
+
+<!-- Mail Toolbar Tooltips -->
+<!ENTITY sendButton.tooltip "Gửi thư này ngay">
+<!ENTITY sendlaterButton.tooltip "Gửi thư này sau">
+<!ENTITY quoteButton.tooltip "Trích dẫn thư trước">
+<!ENTITY addressButton.tooltip "Chọn một người nhận từ sổ địa chỉ">
+<!ENTITY spellingButton.tooltip "Kiểm tra chính tả của phần đã chọn hoặc toàn bộ thư">
+<!ENTITY saveButton.tooltip "Lưu thư này">
+<!ENTITY cutButton.tooltip "Cắt">
+<!ENTITY copyButton.tooltip "Sao chép">
+<!ENTITY pasteButton.tooltip "Dán">
+<!ENTITY printButton.tooltip "In thư này">
+
+<!-- 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 "Từ">
+<!ENTITY fromAddr.accesskey "i">
+<!ENTITY replyAddr2.label "Trả lời đến">
+<!ENTITY newsgroupsAddr2.label "Nhóm tin">
+<!ENTITY subject2.label "Tiêu đề">
+<!ENTITY subject.accesskey "u">
+<!ENTITY attachmentBucketCloseButton.tooltip "Ẩn ngăn đính kèm">
+
+<!-- Format Toolbar, imported from editorAppShell.xhtml -->
+<!ENTITY SmileButton.tooltip "Chèn mặt cười">
+<!ENTITY smiley1Cmd.label "Cười">
+<!ENTITY smiley2Cmd.label "Cau có">
+<!ENTITY smiley3Cmd.label "Nháy mắt">
+<!ENTITY smiley4Cmd.label "Thè lưỡi">
+<!ENTITY smiley5Cmd.label "Cười lớn">
+<!ENTITY smiley6Cmd.label "Ngượng ngùng">
+<!ENTITY smiley7Cmd.label "Phân vân">
+<!ENTITY smiley8Cmd.label "Ngạc nhiên">
+<!ENTITY smiley9Cmd.label "Chụt chụt">
+<!ENTITY smiley10Cmd.label "La hét">
+<!ENTITY smiley11Cmd.label "Ngầu">
+<!ENTITY smiley12Cmd.label "Miệng đầy tiền">
+<!ENTITY smiley13Cmd.label "Bị chặn họng">
+<!ENTITY smiley14Cmd.label "Ngây thơ">
+<!ENTITY smiley15Cmd.label "Khóc">
+<!ENTITY smiley16Cmd.label "Ngậm tăm">
+
+<!-- Message Pane Context Menu -->
+<!ENTITY spellCheckNoSuggestions.label "Không tìm thấy đề xuất nào">
+<!ENTITY spellCheckIgnoreWord.label "Bỏ qua từ">
+<!ENTITY spellCheckIgnoreWord.accesskey "u">
+<!ENTITY spellCheckAddToDictionary.label "Thêm vào từ điển">
+<!ENTITY spellCheckAddToDictionary.accesskey "v">
+<!ENTITY undo.label "Hoàn tác">
+<!ENTITY undo.accesskey "H">
+<!ENTITY cut.label "Cắt">
+<!ENTITY cut.accesskey "t">
+<!ENTITY copy.label "Sao chép">
+<!ENTITY copy.accesskey "C">
+<!ENTITY paste.label "Dán">
+<!ENTITY paste.accesskey "D">
+<!ENTITY pasteQuote.label "Dán dưới dạng trích dẫn">
+<!ENTITY pasteQuote.accesskey "n">
+
+<!-- Attachment Item and List Context Menus -->
+<!ENTITY openAttachment.label "Mở">
+<!ENTITY openAttachment.accesskey "M">
+<!ENTITY delete.label "Xóa">
+<!ENTITY delete.accesskey "X">
+<!ENTITY removeAttachment.label "Xóa đính kèm">
+<!ENTITY removeAttachment.accesskey "M">
+<!ENTITY renameAttachment.label "Đổi tên…">
+<!ENTITY renameAttachment.accesskey "i">
+<!ENTITY reorderAttachments.label "Sắp xếp lại đính kèm…">
+<!ENTITY reorderAttachments.accesskey "s">
+<!ENTITY removeAllAttachments.label "Xóa tất cả đính kèm">
+<!ENTITY removeAllAttachments.accesskey "v">
+<!ENTITY selectAll.label "Chọn tất cả">
+<!ENTITY selectAll.accesskey "B">
+<!ENTITY attachCloud.label "Filelink…">
+<!ENTITY attachCloud.accesskey "i">
+<!ENTITY convertCloud.label "Chuyển đổi thành…">
+<!ENTITY convertCloud.accesskey "C">
+<!ENTITY cancelUpload.label "Hủy tải lên">
+<!ENTITY cancelUpload.accesskey "n">
+<!ENTITY convertRegularAttachment.label "Đính kèm chung">
+<!ENTITY convertRegularAttachment.accesskey "A">
+<!ENTITY attachPage.label "Đính kèm trang web…">
+<!ENTITY attachPage.accesskey "W">
+
+<!-- Attachment Pane Header Bar Context Menu -->
+<!-- LOCALIZATION NOTE (initiallyShowAttachmentPane.label):
+ Should use the same wording as startExpandedCmd.label
+ in msgHdrViewOverlay.dtd. -->
+<!ENTITY initiallyShowAttachmentPane.label "Ban đầu hiển thị ngăn đính kèm">
+<!ENTITY initiallyShowAttachmentPane.accesskey "S">
+
+<!-- Spell checker context menu items -->
+<!ENTITY spellAddDictionaries.label "Thêm từ điển…">
+<!ENTITY spellAddDictionaries.accesskey "A">
+
+<!-- Title for the address picker panel -->
+<!ENTITY addressesSidebarTitle.label "Danh bạ">
+
+<!-- Identity popup customize menuitem -->
+<!ENTITY customizeFromAddress.label "Tùy chỉnh từ địa chỉ…">
+<!ENTITY customizeFromAddress.accesskey "A">
+
+<!-- Accessibility name for the document -->
+<!ENTITY aria.message.bodyName "Phần thân của thư">
+
+<!-- Status Bar -->
+<!ENTITY languageStatusButton.tooltip "Ngôn ngữ kiểm tra chính tả">
+<!ENTITY encodingStatusPanel.tooltip "Mã hóa văn bản">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/sendProgress.dtd b/l10n-vi/mail/chrome/messenger/messengercompose/sendProgress.dtd
new file mode 100644
index 0000000000..28eccab1c5
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Đang xử lý tin nhắn">
+<!ENTITY status.label "Trạng thái:">
+<!ENTITY progress.label "Tiến trình:">
diff --git a/l10n-vi/mail/chrome/messenger/messengercompose/sendProgress.properties b/l10n-vi/mail/chrome/messenger/messengercompose/sendProgress.properties
new file mode 100644
index 0000000000..5df11302d9
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Đang gửi thư - %S
+titleSendMsg=Đang gửi thư
+# LOCALIZATION NOTE (titleSaveMsgSubject):
+# %S will be replaced by the message subject.
+titleSaveMsgSubject=Đang lưu thư - %S
+titleSaveMsg=Đang lưu thư
+
+# 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=Thư của bạn đã được gửi.
+messageSaved=Thư của bạn đã được lưu.
diff --git a/l10n-vi/mail/chrome/messenger/migration/migration.dtd b/l10n-vi/mail/chrome/messenger/migration/migration.dtd
new file mode 100644
index 0000000000..585cf8320e
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Trình thuật sĩ Nhập">
+
+<!ENTITY importFromWin.label "Nhập tùy chọn, cài đặt tài khoản, sổ địa chỉ, bộ lọc và các dữ liệu khác từ:">
+<!ENTITY importFromNonWin.label "Nhập tùy chỉnh, cài đặt tài khoản, sổ địa chỉ, bộ lọc và các dữ liệu khác từ:">
+<!ENTITY importSourceNotFound.label "Không có ứng dụng để nhập dữ liệu từ tìm thấy.">
+
+<!ENTITY importFromNothing.label "Không nhập gì cả">
+<!ENTITY importFromNothing.accesskey "K">
+<!ENTITY importFromSeamonkey3.label "SeaMonkey 2 trở lên">
+<!ENTITY importFromSeamonkey3.accesskey "S">
+<!ENTITY importFromOutlook.label "Outlook">
+<!ENTITY importFromOutlook.accesskey "O">
+
+<!ENTITY importSource.title "Nhập Thiết lập và Thư mục Thư">
+<!ENTITY importItems.title "Các mục cần Nhập">
+<!ENTITY importItems.label "Chọn các mục để nhập:">
+
+<!ENTITY migrating.title "Đang nhập…">
+<!ENTITY migrating.label "Các mục sau đang được nhập…">
+
+<!ENTITY selectProfile.title "Chọn Hồ Sơ">
+<!ENTITY selectProfile.label "Các hồ sơ có thể nhập được từ:">
+
+<!ENTITY done.title "Nhập Xong">
+<!ENTITY done.label "Các mục sau đã được nhập thành công:">
diff --git a/l10n-vi/mail/chrome/messenger/migration/migration.properties b/l10n-vi/mail/chrome/messenger/migration/migration.properties
new file mode 100644
index 0000000000..f7f375a35c
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tùy chỉnh
+
+1_thunderbird=Tùy chỉnh
+
+2_seamonkey=Cài đặt tài khoản
+2_thunderbird=Cài đặt tài khoản
+2_outlook=Cài đặt tài khoản
+
+4_seamonkey=Sổ địa chỉ
+4_thunderbird=Sổ địa chỉ
+4_outlook=Sổ địa chỉ
+
+8_seamonkey=Huấn luyện Nhận dạng Thư rác
+
+16_seamonkey=Mật khẩu đã lưu
+
+32_seamonkey=Dữ liệu Khác
+
+64_seamonkey=Thư mục Nhóm tin
+
+64_thunderbird=Thư mục nhóm tin
+
+128_seamonkey=Thư mục Thư
+128_thunderbird=Thư mục thư
+128_outlook=Thư mục Thư
diff --git a/l10n-vi/mail/chrome/messenger/mime.properties b/l10n-vi/mail/chrome/messenger/mime.properties
new file mode 100644
index 0000000000..9990cf4e22
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tiêu đề
+
+# Resent-Comments
+## @name MIME_MHTML_RESENT_COMMENTS
+## @loc
+1001=Gửi tiếp - Bình luận
+
+# Resent-Date
+## @name MIME_MHTML_RESENT_DATE
+## @loc
+1002=Gửi tiếp - Ngày
+
+# Resent-Sender
+## @name MIME_MHTML_RESENT_SENDER
+## @loc
+1003=Gửi tiếp - Nhờ
+
+# Resent-From
+## @name MIME_MHTML_RESENT_FROM
+## @loc
+1004=Gửi tiếp - Từ
+
+# Resent-To
+## @name MIME_MHTML_RESENT_TO
+## @loc
+1005=Gửi tiếp - Tới
+
+# Resent-CC
+## @name MIME_MHTML_RESENT_CC
+## @loc
+1006=Gửi tiếp - CC
+
+# Date
+## @name MIME_MHTML_DATE
+## @loc
+1007=Ngày
+
+# Sender
+## @name MIME_MHTML_SENDER
+## @loc
+1008=Người gửi Cho
+
+# From
+## @name MIME_MHTML_FROM
+## @loc
+1009=Từ
+
+# Reply-To
+## @name MIME_MHTML_REPLY_TO
+## @loc
+1010=Trả lời Tới
+
+# Organization
+## @name MIME_MHTML_ORGANIZATION
+## @loc
+1011=Tổ chức
+
+# To
+## @name MIME_MHTML_TO
+## @loc
+1012=Tới
+
+# CC
+## @name MIME_MHTML_CC
+## @loc
+1013=CC
+
+# Newsgroups
+## @name MIME_MHTML_NEWSGROUPS
+## @loc
+1014=Nhóm tin
+
+# Followup-To
+## @name MIME_MHTML_FOLLOWUP_TO
+## @loc
+1015=Trả lời Tin tại
+
+# References
+## @name MIME_MHTML_REFERENCES
+## @loc
+1016=Tham khảo
+
+# Message ID
+## @name MIME_MHTML_MESSAGE_ID
+## @loc
+1021=ID Thư
+
+# BCC
+## @name MIME_MHTML_BCC
+## @loc
+1023=BCC
+
+# Link to doc
+## @name MIME_MSG_LINK_TO_DOCUMENT
+## @loc
+1026=Liên kết tới Tài liệu
+
+# Get Doc info
+## @name MIME_MSG_DOCUMENT_INFO
+## @loc
+1027=<B>Thông tin Tài liệu:</B>
+
+# Msg Attachment
+## @name MIME_MSG_ATTACHMENT
+## @loc
+1028=Đính kèm
+
+# 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=Phần %s
+
+# default forwarded message prefix
+## @name MIME_FORWARDED_MESSAGE_HTML_USER_WROTE
+## @loc
+1041=-------- Thư Gốc --------
+
+# Partial Message Truncated
+## @name MIME_MSG_PARTIAL_TRUNCATED
+## @loc
+MIME_MSG_PARTIAL_TRUNCATED=Đã cắt ngắn!
+
+# Partial Message Truncated Explanation
+## @name MIME_MSG_PARTIAL_TRUNCATED_EXPLANATION
+## @loc
+MIME_MSG_PARTIAL_TRUNCATED_EXPLANATION=Thông báo này vượt quá kích thước thư tối đa được đặt trong cài đặt tài khoản, vì vậy chúng tôi chỉ tải xuống một vài dòng đầu tiên từ máy chủ thư.
+
+# Partial Message Not Downloaded
+## @name MIME_MSG_PARTIAL_NOT_DOWNLOADED
+## @loc
+MIME_MSG_PARTIAL_NOT_DOWNLOADED=Chưa tải xuống
+
+# Partial Message Not Downloaded Explanation
+## @name MIME_MSG_PARTIAL_NOT_DOWNLOADED_EXPLANATION
+## @loc
+MIME_MSG_PARTIAL_NOT_DOWNLOADED_EXPLANATION=Chỉ các tiêu đề cho thư này được tải xuống từ máy chủ thư.
+
+# MIME_MSG_PARTIAL_CLICK_FOR_REST
+## @name MIME_MSG_PARTIAL_CLICK_FOR_REST
+## @loc
+MIME_MSG_PARTIAL_CLICK_FOR_REST=Tải phần còn lại của tin nhắn.
diff --git a/l10n-vi/mail/chrome/messenger/mimeheader.properties b/l10n-vi/mail/chrome/messenger/mimeheader.properties
new file mode 100644
index 0000000000..aa53bbb4b8
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Đến
+BCC=BCC
+CC=CC
+DATE=Ngày
+DISTRIBUTION=Phân phối
+FCC=FCC
+FOLLOWUP-TO=Trả lời Tin tại
+FROM=Từ
+STATUS=Trạng thái
+LINES=Dòng
+MESSAGE-ID=ID Thư
+MIME-VERSION=Phiên bản MIME
+NEWSGROUPS=Nhóm tin
+ORGANIZATION=Tổ chức
+REFERENCES=Tham khảo
+REPLY-TO=Trả lời Tới
+RESENT-COMMENTS=Gửi tiếp - Bình luận
+RESENT-DATE=Gửi tiếp - Ngày
+RESENT-FROM=Gửi tiếp - Từ
+RESENT-MESSAGE-ID=Gửi tiếp - ID Thư
+RESENT-SENDER=Gửi tiếp - Nhờ
+RESENT-TO=Gửi tiếp - Tới
+RESENT-CC=Gửi tiếp - CC
+SENDER=Người gửi Cho
+SUBJECT=Tiêu đề
+APPROVED-BY=Chấp-thuận-Bởi
+USER-AGENT=Chương Trình Gửi
+FILENAME=Tên tập tin
diff --git a/l10n-vi/mail/chrome/messenger/morkImportMsgs.properties b/l10n-vi/mail/chrome/messenger/morkImportMsgs.properties
new file mode 100644
index 0000000000..61d22e59ad
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 = Sổ địa chỉ Mork
+
+# Short name of import module
+morkImportName = Cơ sở dữ liệu Mork (.mab)
+
+# Description of import module
+morkImportDescription = Nhập sổ địa chỉ từ SeaMonkey hoặc các phiên bản trước đó của Thunderbird.
+
+morkImportSuccess = Thành công!
diff --git a/l10n-vi/mail/chrome/messenger/msgAccountCentral.dtd b/l10n-vi/mail/chrome/messenger/msgAccountCentral.dtd
new file mode 100644
index 0000000000..5ddd6fdae5
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Email">
+<!ENTITY readMsgsLink.label "Thư đã đọc">
+<!ENTITY composeMsgLink.label "Viết thư mới">
+
+<!ENTITY newsSectionHdr.label "Nhóm tin">
+<!ENTITY subscribeNewsLink.label "Quản lí phần đăng kí nhóm tin">
+
+<!ENTITY feedsSectionHdr.label "Nguồn cấp">
+<!ENTITY subscribeFeeds.label "Quản lí đăng kí">
+
+<!ENTITY chat.label "Trò chuyện">
+
+<!ENTITY accountsSectionHdr.label "Tài khoản">
+<!ENTITY subscribeImapFolders.label "Quản lí phần đăng kí thư mục">
+<!ENTITY settingsLink.label "Xem cài đặt cho tài khoản này">
+<!ENTITY setupNewAcct.label "Thiết lập một tài khoản:">
+
+<!ENTITY advFeaturesSectionHdr.label "Tính năng nâng cao">
+<!ENTITY searchMsgsLink.label "Tìm kiếm thư">
+<!ENTITY filtersLink.label "Quản lí bộ lọc thư">
+<!ENTITY junkSettings.label "Cài đặt thư rác">
+<!ENTITY offlineLink.label "Thiết lập ngoại tuyến">
diff --git a/l10n-vi/mail/chrome/messenger/msgHdrViewOverlay.dtd b/l10n-vi/mail/chrome/messenger/msgHdrViewOverlay.dtd
new file mode 100644
index 0000000000..3dbc240e7a
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/msgHdrViewOverlay.dtd
@@ -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/. -->
+
+<!ENTITY toField4.label "Đến">
+<!ENTITY fromField4.label "Từ">
+<!ENTITY senderField4.label "Người gửi">
+<!ENTITY author.label "Tác giả">
+<!ENTITY organizationField4.label "Tổ chức">
+<!ENTITY replyToField4.label "Trả lời đến">
+
+<!ENTITY subjectField4.label "Tiêu đề">
+<!ENTITY ccField4.label "Cc">
+<!ENTITY bccField4.label "Bcc">
+<!ENTITY newsgroupsField4.label "Nhóm tin">
+<!ENTITY tagsHdr4.label "Nhãn">
+<!ENTITY dateField4.label "Ngày">
+<!ENTITY userAgentField4.label "Chuỗi đại diện người dùng">
+<!ENTITY referencesField4.label "Tài liệu tham khảo">
+<!ENTITY messageIdField4.label "ID thư">
+<!ENTITY originalWebsite4.label "Trang web">
+
+<!ENTITY hdrArchiveButton1.label "Lưu trữ">
+<!ENTITY hdrArchiveButton1.tooltip "Lưu trữ thư này">
+<!ENTITY hdrSmartReplyButton1.label "Trả lời thông minh">
+<!ENTITY hdrReplyButton1.label "Trả lời">
+<!ENTITY hdrReplyButton2.tooltip "Trả lời người gửi thư này">
+<!ENTITY hdrReplyAllButton1.label "Trả lời tất cả">
+<!ENTITY hdrReplyAllButton1.tooltip "Trả lời người gửi và tất cả người nhận">
+<!ENTITY hdrReplyListButton1.label "Trả lời danh sách">
+<!ENTITY hdrReplyListButton1.tooltip "Trả lời danh sách thư">
+<!ENTITY hdrFollowupButton1.tooltip "Đăng một bài theo dõi cho nhóm tin này">
+<!ENTITY hdrForwardButton1.label "Chuyển tiếp">
+<!ENTITY hdrForwardButton1.tooltip "Chuyển tiếp thư này">
+<!ENTITY hdrJunkButton1.label "Thư rác">
+<!ENTITY hdrJunkButton1.tooltip "Đánh dấu thư này là thư rác">
+<!ENTITY hdrTrashButton1.label "Xóa">
+<!ENTITY hdrTrashButton1.tooltip "Xóa thư này">
+
+<!ENTITY hdrViewToolbarShowFull.label "Hiển thị biểu tượng và văn bản">
+<!ENTITY hdrViewToolbarShowFull.accesskey "a">
+<!ENTITY hdrViewToolbarShowIcons.label "Chỉ hiển thị biểu tượng">
+<!ENTITY hdrViewToolbarShowIcons.accesskey "I">
+<!ENTITY hdrViewToolbarShowText.label "Chỉ hiển thị văn bản">
+<!ENTITY hdrViewToolbarShowText.accesskey "T">
+<!ENTITY hdrViewToolbarAlwaysReplySender.label "Luôn hiển thị trả lời cho người gửi">
+<!ENTITY hdrViewToolbarAlwaysReplySender.accesskey "R">
+
+<!ENTITY otherActionsButton2.label "Thêm">
+<!ENTITY otherActionsButton.tooltip "Nhiều hành động hơn">
+<!ENTITY otherActionsOpenConversation1.label "Mở trong hội thoại">
+<!ENTITY otherActionsOpenConversation1.accesskey "C">
+<!ENTITY otherActionsOpenInNewWindow1.label "Mở trong cửa sổ mới">
+<!ENTITY otherActionsOpenInNewWindow1.accesskey "W">
+<!ENTITY otherActionsOpenInNewTab1.label "Mở trong thẻ mới">
+<!ENTITY otherActionsOpenInNewTab1.accesskey "T">
+<!ENTITY markAsReadMenuItem1.label "Đánh dấu là đã đọc">
+<!ENTITY markAsReadMenuItem1.accesskey "R">
+<!ENTITY markAsUnreadMenuItem1.label "Đánh dấu là chưa đọc">
+<!ENTITY markAsUnreadMenuItem1.accesskey "r">
+<!ENTITY saveAsMenuItem1.label "Lưu thành…">
+<!ENTITY saveAsMenuItem1.accesskey "S">
+<!ENTITY viewSourceMenuItem1.label "Xem mã nguồn">
+<!ENTITY viewSourceMenuItem1.accesskey "V">
+<!ENTITY otherActionsPrint1.label "In…">
+<!ENTITY otherActionsPrint1.accesskey "P">
+
+<!-- Attachment bar context menu items -->
+<!ENTITY startExpandedCmd.label "Hiển thị ngăn đính kèm ban đầu">
+<!ENTITY startExpandedCmd.accesskey "S">
+
+<!-- Attachment context menu items -->
+<!ENTITY openAttachmentCmd.label "Mở">
+<!ENTITY openAttachmentCmd.accesskey "O">
+<!ENTITY saveAsAttachmentCmd.label "Lưu thành…">
+<!ENTITY saveAsAttachmentCmd.accesskey "S">
+<!ENTITY detachAttachmentCmd.label "Tách rời…">
+<!ENTITY detachAttachmentCmd.accesskey "D">
+<!ENTITY deleteAttachmentCmd.label "Xóa">
+<!ENTITY deleteAttachmentCmd.accesskey "e">
+<!ENTITY openAllAttachmentsCmd.label "Mở tất cả…">
+<!ENTITY openAllAttachmentsCmd.accesskey "O">
+<!ENTITY saveAllAttachmentsCmd.label "Lưu tất cả…">
+<!ENTITY saveAllAttachmentsCmd.accesskey "S">
+<!ENTITY detachAllAttachmentsCmd.label "Tách rời tất cả…">
+<!ENTITY detachAllAttachmentsCmd.accesskey "D">
+<!ENTITY deleteAllAttachmentsCmd.label "Xóa tất cả…">
+<!ENTITY deleteAllAttachmentsCmd.accesskey "e">
+
+<!ENTITY openAttachment.tooltip "Mở tập tin đính kèm">
+
+<!ENTITY detachedAttachmentFolder.show.label "Mở thư mục chứa">
+<!ENTITY detachedAttachmentFolder.show.accesskey "F">
+<!ENTITY detachedAttachmentFolder.showMac.label "Hiển thị trong Finder">
+<!ENTITY detachedAttachmentFolder.showMac.accesskey "F">
+
+<!-- Attachment toolbar items -->
+<!ENTITY saveAttachmentButton1.label "Lưu">
+<!ENTITY saveAttachmentButton1.tooltip "Lưu tập tin đính kèm">
+<!ENTITY saveAllAttachmentsButton1.label "Lưu tất cả">
+<!ENTITY saveAllAttachmentsButton1.tooltip "Lưu tất cả tập tin đính kèm">
+
+<!ENTITY copyLinkCmd.label "Sao chép địa chỉ liên kết">
+<!ENTITY copyLinkCmd.accesskey "C">
+
+<!ENTITY CopyMessageId.label "Sao chép ID thư">
+<!ENTITY CopyMessageId.accesskey "C">
+<!ENTITY OpenMessageForMsgId.label "Mở thư cho ID">
+<!ENTITY OpenMessageForMsgId.accesskey "O">
+<!ENTITY OpenBrowserWithMsgId.label "Mở trình duyệt với ID thư">
+<!ENTITY OpenBrowserWithMsgId.accesskey "B">
diff --git a/l10n-vi/mail/chrome/messenger/msgSynchronize.dtd b/l10n-vi/mail/chrome/messenger/msgSynchronize.dtd
new file mode 100644
index 0000000000..f24e0cab0e
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/msgSynchronize.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 MsgSynchronize.xul and msgSelectOfflineFolders.xul-->
+
+<!-- extracted from MsgSynchronize.xhtml and msgSelectOfflineFolders.xhtml-->
+
+<!ENTITY MsgSynchronize.label "Tải xuống và đồng bộ hóa thư">
+<!ENTITY MsgSelect.label "Các mục để Sử dụng Ngoại tuyến">
+<!ENTITY MsgSyncDesc.label "Nếu bạn đã chọn thư mục hoặc nhóm tin để dùng ngoại tuyến, bạn có thể tải/đồng bộ chúng ngay bây giờ. Nếu chưa, hãy sử dụng nút &quot;Chọn&quot; để chọn thư mục thư và nhóm tin để dùng ngoại tuyến.">
+<!ENTITY MsgSyncDirections.label "Tải và/hoặc đồng bộ những mục sau:">
+<!ENTITY syncTypeMail.label "Thư">
+<!ENTITY syncTypeMail.accesskey "T">
+<!ENTITY syncTypeNews.label "Nhóm tin">
+<!ENTITY syncTypeNews.accesskey "N">
+<!ENTITY sendMessage.label "Gửi các thư chưa gửi">
+<!ENTITY sendMessage.accesskey "G">
+<!ENTITY workOffline.label "Làm việc ngoại tuyến khi tải và/hoặc đồng bộ xong">
+<!ENTITY workOffline.accesskey "o">
+<!ENTITY selectButton.label "Chọn…">
+<!ENTITY selectButton.accesskey "C">
+<!ENTITY MsgSelectDesc.label "Chọn thư mục và nhóm tin để dùng ngoại tuyến.">
+<!ENTITY MsgSelectInd.label "Tải">
+<!ENTITY MsgSelectItems.label "Thư mục và Nhóm tin">
diff --git a/l10n-vi/mail/chrome/messenger/msgViewPickerOverlay.dtd b/l10n-vi/mail/chrome/messenger/msgViewPickerOverlay.dtd
new file mode 100644
index 0000000000..c8951249c0
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Xem:">
+<!ENTITY viewPicker.accesskey "i">
+<!ENTITY viewAll.label "Tất cả">
+<!ENTITY viewAll.accesskey "A">
+<!ENTITY viewUnread.label "Chưa đọc">
+<!ENTITY viewUnread.accesskey "U">
+<!ENTITY viewNotDeleted.label "Chưa xóa">
+<!ENTITY viewNotDeleted.accesskey "D">
+<!ENTITY viewTags.label "Nhãn">
+<!ENTITY viewTags.accesskey "T">
+<!ENTITY viewCustomViews.label "Tùy biến chế độ xem">
+<!ENTITY viewCustomViews.accesskey "V">
+<!ENTITY viewVirtualFolder.label "Lưu chế độ xem dưới dạng thư mục…">
+<!ENTITY viewVirtualFolder.accesskey "S">
+<!ENTITY viewCustomizeView.label "Tùy biến…">
+<!ENTITY viewCustomizeView.accesskey "C">
diff --git a/l10n-vi/mail/chrome/messenger/msgmdn.properties b/l10n-vi/mail/chrome/messenger/msgmdn.properties
new file mode 100644
index 0000000000..563ac5a880
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Lưu ý: Xác nhận đã nhận thư này chỉ xác nhận rằng thư đã được hiển thị trên máy tính của người nhận. Không có gì đảm bảo rằng người nhận đã đọc hoặc hiểu nội dung thư.
+MsgMdnDispatched=Thư đã được in, fax, hoặc chuyển tiếp mà không được hiển thị tới người nhận. Không có gì đảm bảo rằng người nhận sẽ đọc nó sau này cả.
+MsgMdnProcessed=Thư đã được xử lí bởi chương trình gửi thư của người dùng và không được hiển thị. hông có gì đảm bảo rằng người nhận sẽ đọc nó sau này cả.
+MsgMdnDeleted=Thư đã bị xóa. Người mà bạn gửi thư có thể thấy hoặc không thấy nó. Có thể họ sẽ khôi phục nó và đọc sau.
+MsgMdnDenied=Người nhận thư không muốn gửi xác nhận đã nhận thư cho bạn.
+MsgMdnFailed=Đã xảy ra lỗi. Không thể tạo hoặc gửi xác nhận đã nhận thư thích hợp cho bạn.
+# LOCALIZATION NOTE : Do not translate the word "%S" below.
+MsgMdnMsgSentTo=Đây là xác nhận đã nhận thư cho thư bạn đã gửi đến %S.
+MdnDisplayedReceipt=Xác nhận đã nhận thư (đã hiển thị)
+MdnDispatchedReceipt=Xác nhận đã nhận thư (đã gửi)
+MdnProcessedReceipt=Chứng nhận Hồi báo (đã xử lí)
+MdnDeletedReceipt=Chứng nhận Hồi báo (đã xóa)
+MdnDeniedReceipt=Chứng nhận Hồi báo (bị từ chối)
+MdnFailedReceipt=Xác nhận đã nhận thư (thất bại)
diff --git a/l10n-vi/mail/chrome/messenger/multimessageview.dtd b/l10n-vi/mail/chrome/messenger/multimessageview.dtd
new file mode 100644
index 0000000000..8ad733c4c8
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Tóm tắt Thư">
+<!ENTITY selectedmessages.label "Các thư Đã chọn">
+<!ENTITY archiveButton.label "Lưu trữ">
+<!ENTITY deleteButton.label "Xóa">
diff --git a/l10n-vi/mail/chrome/messenger/multimessageview.properties b/l10n-vi/mail/chrome/messenger/multimessageview.properties
new file mode 100644
index 0000000000..8de70ba3a0
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 cuộc hội thoại
+
+# 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+ cuộc hội thoại
+
+# 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 thư
+
+# 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 chưa đọc
+
+# 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 đã bỏ qua
+
+# 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+ đã bỏ qua
+
+# LOCALIZATION NOTE (noSubject): What to display for a message if it has no
+# subject.
+noSubject=(không tiêu đề)
+
+# LOCALIZATION NOTE (messagesTotalSize): A message indicating the total size on
+# disk of the selected messages. #1 is the size, e.g. "123 KB".
+messagesTotalSize=Những thư này chiếm #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=Những thư này chiếm hơn #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= (Lưu ý: #1 thư được chọn, #2 đầu tiên được hiển thị)
+
+# 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= (Lưu ý: #1 chủ đề được chọn, #2 đầu tiên được hiển thị)
diff --git a/l10n-vi/mail/chrome/messenger/newFolderDialog.dtd b/l10n-vi/mail/chrome/messenger/newFolderDialog.dtd
new file mode 100644
index 0000000000..fa95df5682
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/newFolderDialog.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/. -->
+
+<!-- Labels -->
+<!ENTITY newFolderDialog.title "Thư mục Mới">
+<!ENTITY name.label "Tên:">
+<!ENTITY name.accesskey "T">
+<!ENTITY description.label "Tạo thành thư mục con cho:">
+<!ENTITY description.accesskey "c">
+<!ENTITY folderRestriction1.label "Máy chủ này giới hạn thư mục trong hai dạng đặc biệt.">
+<!ENTITY folderRestriction2.label "Cho phép thư mục mới của bạn chứa:">
+<!ENTITY foldersOnly.label "Chỉ Thư Mục">
+<!ENTITY messagesOnly.label "Chỉ Thư">
+<!ENTITY accept.label "Tạo Thư Mục">
+<!ENTITY accept.accesskey "o">
+
diff --git a/l10n-vi/mail/chrome/messenger/news.properties b/l10n-vi/mail/chrome/messenger/news.properties
new file mode 100644
index 0000000000..411dd9e3d2
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tải xuống header
+downloadHeadersInfoText=Có %S đầu đề mới để tải cho nhóm tin này.
+cancelDisallowed=Tin bài này có vẻ không phải của bạn. Bạn chỉ có thể hủy bài của bạn, chứ không thể hủy bài của người khác.
+cancelConfirm=Bạn có chắc là bạn muốn hủy thư này?
+messageCancelled=Đã hủy thư.
+enterUserPassTitle=Yêu cầu tên người dùng và mật khẩu cho máy chủ tin tức
+# LOCALIZATION NOTE (enterUserPassServer): %S is the server being accessed
+enterUserPassServer=Vui lòng nhập tên người dùng và mật khẩu cho %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=Vui lòng nhập tên người dùng và mật khẩu cho %1$S trên %2$S:
+okButtonText=Tải xuống
+
+noNewMessages=Không có thư mới trên máy chủ.
+# 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=Đang tải %1$S trên tổng %2$S đầu đề cho %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=Đang lấy đầu đề cho bộ lọc: %1$S (%2$S/%3$S) trên tổng %4$S
+downloadingArticles=Đang tải tin bài %S-%S
+bytesReceived=Đang tải nhóm tin: Đã nhận %S (đã đọc %S kB ở tốc độ %S kB/giây)
+downloadingArticlesForOffline=Đang tải tin các bài %S-%S trên tổng %S
+
+# LOCALIZATION NOTE (autoUnsubscribeText): %1$S is the newsgroup and %2$S is the newsgroup-server it is being removed from.
+autoUnsubscribeText=Nhóm tin %1$S có vẻ không tồn tại trên máy chủ %2$S. Bạn có muốn bỏ đăng kí nó?
+
+# LOCALIZATION NOTE (autoSubscribeText): %1$S is the newsgroup.
+autoSubscribeText=Bạn có muốn đăng kí %1$S?
+
+# LOCALIZATION NOTE (Error -304): In the following item, don't translate "NNTP"
+# Error - server error
+## @name NNTP_ERROR_MESSAGE
+## @loc None
+-304=Một lỗi Tin (NNTP) xảy ra:
+
+# Error - newsgroup scan error
+## @name NNTP_NEWSGROUP_SCAN_ERROR
+## @loc None
+-305=Một lỗi tin xảy ra. Việc quét toàn bộ nhóm tin đã không hoàn thành. Hãy thử Hiển thị Tất cả Nhóm tin lại lần nữa
+
+# Error - NNTP authinfo failure
+## @name NNTP_AUTH_FAILED
+## @loc None
+-260=Một lỗi xác thực xảy ra. Vui lòng nhập lại tên và/hoặc mật khẩu.
+
+# Error - TCP error
+## @name TCP_ERROR
+## @loc None
+-206=Một lỗi liên lạc xảy ra. Hãy thử kết nối lại. Lỗi TCP:
diff --git a/l10n-vi/mail/chrome/messenger/newsError.dtd b/l10n-vi/mail/chrome/messenger/newsError.dtd
new file mode 100644
index 0000000000..08a9b4966d
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Gặp vấn đề khi tải bài viết">
+
+<!-- LOCALIZATION NOTE (articleNotFound.title): The main heading for the news
+ error page. -->
+<!ENTITY articleNotFound.title "Không tìm thấy bài viết">
+
+<!-- LOCALIZATION NOTE (articleNotFound.desc): A longer description for the news
+ error page. -->
+<!ENTITY articleNotFound.desc "Máy chủ nhóm tin báo cáo rằng nó không tìm thấy bài viết nào.">
+
+<!-- LOCALIZATION NOTE (serverResponded.title): A string preceding the text
+ response from the newsgroup server describing the error. -->
+<!ENTITY serverResponded.title "Máy chủ nhóm tin đã trả lời:">
+
+<!-- LOCALIZATION NOTE (articleExpired.title): A string explaining that the
+ article may have expired. -->
+<!ENTITY articleExpired.title "Có lẽ bài viết đã hết hạn?">
+
+<!-- LOCALIZATION NOTE (trySearching.title): A string preceding the message's
+ ID. -->
+<!ENTITY trySearching.title "Hãy thử tìm kiếm bài viết:">
+
+<!-- LOCALIZATION NOTE (removeExpiredArticles.title): The label for the button
+ to remove all expired articles from the newsgroup. -->
+<!ENTITY removeExpiredArticles.title "Xóa tất cả các bài viết đã hết hạn">
diff --git a/l10n-vi/mail/chrome/messenger/offline.properties b/l10n-vi/mail/chrome/messenger/offline.properties
new file mode 100644
index 0000000000..4884d1628c
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tải thư
+downloadMessagesLabel1=Bạn có muốn tải thư để dùng ngoại tuyến trước khi rời mạng không?
+downloadMessagesCheckboxLabel1=Luôn hỏi mỗi khi tôi chuyển sang ngoại tuyến
+downloadMessagesNow2=Tải ngay (&D)
+
+# Send Messages Prompt
+sendMessagesWindowTitle1=Thư chưa gửi
+sendMessagesLabel2=Bạn có muốn gửi những thư chưa gửi của bạn ngay bây giờ không?
+sendMessagesCheckboxLabel1=Luôn hỏi mỗi khi tôi trực tuyến
+sendMessagesNow2=Gửi ngay (&S)
+
+processMessagesLater2=Để sau (&L)
+
+# GetMessages While Offline Prompt
+getMessagesOfflineWindowTitle1=Nhận thư
+getMessagesOfflineLabel1=Bạn hiện đang ngoại tuyến. Bạn có muốn quay lại trực tuyến để nhận thư mới không?
+
+# Send Messages Offline Prompt
+sendMessagesOfflineWindowTitle1=Thư chưa gửi
+sendMessagesOfflineLabel1=Bạn hiện đang ngoại tuyến. Bạn có muốn quay lại trực tuyến để gửi những thư chưa gửi không?
+
+offlineTooltip=Bạn hiện đang ngoại tuyến.
+onlineTooltip=Bạn hiện đang trực tuyến.
diff --git a/l10n-vi/mail/chrome/messenger/offlineStartup.properties b/l10n-vi/mail/chrome/messenger/offlineStartup.properties
new file mode 100644
index 0000000000..c02d5fb0d9
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Làm việc trực tuyến
+desc=Bạn có muốn trực tuyến ngay bây giờ không?\n\n(Nếu bạn chọn làm việc ngoại tuyến, bạn có thể trở lại trực tuyến sau - chọn `Ngoại tuyến' từ menu `Tập tin', rồi bỏ chọn `Làm việc ngoại tuyến'.)
+workOnline=Làm việc trực tuyến
+workOffline=Làm việc ngoại tuyến
diff --git a/l10n-vi/mail/chrome/messenger/outlookImportMsgs.properties b/l10n-vi/mail/chrome/messenger/outlookImportMsgs.properties
new file mode 100644
index 0000000000..df524f9c4c
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/outlookImportMsgs.properties
@@ -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/.
+
+#
+# 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=Thư, sổ địa chỉ, và thiết lập 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=Hộp thư %S, đã nhập %d thư
+
+# Error message
+## @name OUTLOOKIMPORT_MAILBOX_BADPARAM
+## @loc None
+2003=Tham số xấu được đưa qua để nhập hộp thư.
+
+# 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=Lỗi khi đang nhập hộp thư %S, có thể tất cả thư sẽ được nhập từ hộp thư này.
+
+# Address book name
+## @name OUTLOOKIMPORT_ADDRNAME
+## @loc None
+## LOCALIZATION NOTE (2005): In this item, don't translate "Outlook"
+2005=Sổ địa chỉ 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=Đã nhập sổ địa chỉ %S
+
+# Error message
+## @name OUTLOOKIMPORT_ADDRESS_BADPARAM
+## @loc None
+2007=Tham số xấu xen vào việc nhập sổ địa chỉ.
+
+# 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=Lỗi khi đang truy cập tập tin cho sổ địa chỉ %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=Lỗi khi đang nhập sổ địa chỉ %S, có thể tất cả địa chỉ đã không được nhập hết.
+
diff --git a/l10n-vi/mail/chrome/messenger/pgpmime.properties b/l10n-vi/mail/chrome/messenger/pgpmime.properties
new file mode 100644
index 0000000000..b44ac456fc
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Đây là thư OpenPGP được mã hóa, nhưng không hỗ trợ giải mã OpenPGP.
diff --git a/l10n-vi/mail/chrome/messenger/preferences/applicationManager.properties b/l10n-vi/mail/chrome/messenger/preferences/applicationManager.properties
new file mode 100644
index 0000000000..4150e29137
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Các chương trình sau có thể được dùng để xử lí %S.
+
+handleProtocol=%S liên kết
+handleFile=%S nội dung
+
+descriptionWebApp=Ứng dụng web này được đặt tại:
+descriptionLocalApp=Ứng dụng này được đặt tại:
diff --git a/l10n-vi/mail/chrome/messenger/preferences/applications.properties b/l10n-vi/mail/chrome/messenger/preferences/applications.properties
new file mode 100644
index 0000000000..c3cf03faae
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Bạn có chắc chắn muốn xóa tài khoản "%S" không?
+
+# LOCALIZATION NOTE (addProvider):
+# %S will be replace with the display name of a provider, e.g. DropBox
+addProvider=Thêm %S
+
+notConfiguredYet=Tài khoản này chưa được cấu hình
diff --git a/l10n-vi/mail/chrome/messenger/preferences/messagestyle.properties b/l10n-vi/mail/chrome/messenger/preferences/messagestyle.properties
new file mode 100644
index 0000000000..162f783432
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Mặc định
+nick1=Florian
+buddy1=florian@im.instantbird.org
+nick2=Patrick
+buddy2=patrick@im.instantbird.org
+message1=Chào! :-)
+message2=Chuyện gì thế?
+message3=Tôi đang thử Thunderbird! ;-)
diff --git a/l10n-vi/mail/chrome/messenger/preferences/preferences.properties b/l10n-vi/mail/chrome/messenger/preferences/preferences.properties
new file mode 100644
index 0000000000..b0a59b6989
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Xác nhận
+confirmResetJunkTrainingText=Bạn có chắc chắn muốn đặt lại dữ liệu đào tạo bộ lọc thích ứng?
+
+#### Downloads
+desktopFolderName=Bàn làm việc
+myDownloadsFolderName=Tải xuống của tôi
+chooseAttachmentsFolderTitle=Chọn thư mục
+
+#### Applications
+
+fileEnding=Tập tin %S
+saveFile=Lưu tập tin
+
+# LOCALIZATION NOTE (useApp, useDefault): %S = Application name
+useApp=Dùng %S
+useDefault=Dùng %S (mặc định)
+
+useOtherApp=Dùng chương trình khác…
+fpTitleChooseApp=Chọn ứng dụng trợ giúp
+manageApp=Chi tiết ứng dụng…
+alwaysAsk=Luôn hỏi
+delete=Xóa thao tác
+confirmDeleteTitle=Xóa thao tác
+confirmDeleteText=Bạn có chắc là mình muốn xóa thao tác này không?
+
+# 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=Chọn âm thanh
+
+#### Remote content
+imagepermissionstext=Bạn có thể chỉ định từ đó hình ảnh trang web và nội dung từ xa khác được phép tải. Bạn cũng có thể cho phép tất cả nội dung từ xa dựa trên địa chỉ e-mail của người gửi. Nhập địa chỉ của trang web hoặc e-mail bạn muốn quản lý, sau đó bấm Chặn hoặc Cho phép.
+imagepermissionstitle=Ngoại lệ - Nội dung từ xa
+
+#### Cookies
+cookiepermissionstitle=Ngoại lệ - Cookie
+cookiepermissionstext=Bạn có thể chỉ định trang web nào luôn luôn hoặc không bao giờ được đặt cookie. Gõ chính xác địa chỉ trang bạn muốn quản lí sau đó nhấp Chặn, Cho phép hoặc Cho phép theo phiên.
+
+#### Cookie Viewer
+hostColon=Máy chủ:
+domainColon=Tên miền:
+forSecureOnly=Chỉ những kết nối đã mã hóa
+forAnyConnection=Mọi loại kết nối
+expireAtEndOfSession=Khi kết thúc phiên
+
+noCookieSelected=<không cookie nào được chọn>
+cookiesAll=Các cookie sau được lưu trong máy tính của bạn:
+cookiesFiltered=Những cookie sau khớp với thông tin bạn tìm:
+# 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=Xóa mục đã chọn
+defaultUserContextLabel=Không
+
+####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=Bộ đệm của bạn đang chiếm %1$S %2$S dung lượng đĩa
+actualDiskCacheSizeCalculated=Đang tính toán kích thước bộ nhớ đệm…
+
+# LOCALIZATION NOTE (labelDefaultFont): %S = font name
+labelDefaultFont=Mặc định (%S)
+labelDefaultFontUnnamed=Mặc định
+
+# LOCALIZATION NOTE (appLocale.label): %S = Name of the application locale,
+# e.g. English (United States)
+appLocale.label=Ngôn ngữ ứng dụng: %S
+appLocale.accesskey=o
+# LOCALIZATION NOTE (rsLocale.label): %S = Name of the locale chosen in regional settings,
+# e.g. German (Germany)
+rsLocale.label=Ngôn ngữ cài đặt khu vực: %S
+rsLocale.accesskey=e
+
+applications-type-pdf = Định dạng tài liệu di động (PDF)
+
+# LOCALIZATION NOTE (previewInApp): %S = brandShortName
+previewInApp=Xem trước trong %S
diff --git a/l10n-vi/mail/chrome/messenger/prefs.properties b/l10n-vi/mail/chrome/messenger/prefs.properties
new file mode 100644
index 0000000000..0d54b8af0e
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Vui lòng nhập một địa chỉ email hợp lệ.
+accountNameExists=Tài khoản có tên này đã tồn tại. Vui lòng nhập một tên tài khoản khác.
+accountNameEmpty=Tên tài khoản không thể để trống.
+modifiedAccountExists=Đã tồn tại một tài khoản có cùng tên người dùng hoặc tên máy chủ đó. Vui lòng nhập một tên máy chủ và/hoặc tên người dùng khác.
+userNameChanged=Tên người dùng của bạn đã được cập nhật. Bạn cũng có thể cần cập nhật địa chỉ email và/hoặc tên người dùng được liên kết với tài khoản này.
+serverNameChanged=Cài đặt tên máy chủ đã thay đổi. Vui lòng xác minh rằng mọi thư mục được sử dụng bởi các bộ lọc đều tồn tại trên máy chủ mới.
+# LOCALIZATION NOTE (junkSettingsBroken): %1$S is the account name
+junkSettingsBroken=Cài đặt thư rác trên tài khoản "%1$S" có thể xảy ra sự cố. Bạn có muốn xem lại chúng trước khi lưu cài đặt tài khoản?
+# LOCALIZATION NOTE (localDirectoryChanged): %1$S is program name (&brandShortName;)
+localDirectoryChanged=%1$S cần khởi động lại ngay để áp dụng thay đổi cho cài đặt thư mục cục bộ.
+localDirectoryRestart=Khởi động lại
+userNameEmpty=Tên người dùng không thể để trống.
+# LOCALIZATION NOTE (localDirectoryInvalid): %1$S is path to folder
+localDirectoryInvalid=Đường dẫn thư mục cục bộ "%1$S" không hợp lệ. Vui lòng chọn một thư mục khác.
+# LOCALIZATION NOTE (localDirectoryNotAllowed): %1$S is path to folder
+localDirectoryNotAllowed=Đường dẫn thư mục cục bộ "%1$S" không phù hợp để lưu trữ thư. Vui lòng chọn một thư mục khác.
+# 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=Bạn có chắc chắn muốn thoát trình hướng dẫn tài khoản không?\n\nNếu bạn thoát, mọi thông tin bạn đã nhập sẽ bị mất và tài khoản sẽ không được tạo.
+accountWizard=Trình hướng dẫn tài khoản
+WizardExit=Thoát
+WizardContinue=Hủy bỏ
+# when the wizard already has a domain (Should we say something different?)
+enterValidServerName=Vui lòng nhập tên máy chủ hợp lệ.
+failedRemoveAccount=Không thể xóa tài khoản này.
+#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ếu bạn lưu trữ thư mới của tài khoản này trong hộp thư đến của tài khoản khác, bạn sẽ không còn có thể truy cập email đã tải xuống cho tài khoản này. Nếu bạn có thư trong tài khoản này, vui lòng sao chép nó sang tài khoản khác trước.\n\nNếu bạn có bộ lọc thư vào tài khoản này, bạn nên vô hiệu hóa chúng hoặc thay đổi thư mục đích. Nếu bất kỳ tài khoản nào có thư mục đặc biệt trong tài khoản này (đã gửi, thư nháp, mẫu, lưu trữ, thư rác), bạn nên thay đổi chúng thành tài khoản khác.\n\nBạn có muốn lưu email của tài khoản này vào một tài khoản khác không?
+confirmDeferAccountTitle=Trì hoãn tài khoản?
+
+directoryAlreadyUsedByOtherAccount=Thư mục được chỉ định trong cài đặt thư mục cục bộ đã được sử dụng bởi tài khoản "%S". Vui lòng chọn một thư mục khác.
+directoryParentUsedByOtherAccount=Thư mục mẹ của thư mục được chỉ định trong cài đặt thư mục cục bộ đã được sử dụng bởi tài khoản "%S". Vui lòng chọn một thư mục khác.
+directoryChildUsedByOtherAccount=Thư mục con của thư mục được chỉ định trong cài đặt thư mục cục bộ đã được sử dụng bởi tài khoản "%S". Vui lòng chọn một thư mục khác.
+#Provide default example values for sample email address
+exampleEmailUserName=user
+exampleEmailDomain=example.net
+emailFieldText=Địa chỉ email:
+#LOCALIZATION NOTE: defaultEmailText: %1$S is user name, %2$S is domain
+defaultEmailText=Nhập địa chỉ email của bạn. Đây là địa chỉ mà người khác sẽ dùng để gửi email cho bạn (ví dụ, "%1$S@%2$S").
+#LOCALIZATION NOTE: customizedEmailText: %1$S is provider, %2$S is email username, %3$S is sample email, %4$S is sample username
+customizedEmailText=Nhập %1$S %2$S của bạn (ví dụ, nếu địa chỉ email %1$S của bạn là "%3$S", %2$S của bạn sẽ là "%4$S").
+
+# account manager stuff
+prefPanel-server=Cài đặt máy chủ
+prefPanel-copies=Bản sao & thư mục
+prefPanel-synchronization=Đồng bộ hóa & lưu trữ
+prefPanel-diskspace=Dung lượng đĩa
+prefPanel-addressing=Soạn thảo & giải quyết
+prefPanel-junk=Cài đặt thư rác
+## LOCALIZATION NOTE (prefPanel-smtp): Don't translate "SMTP"
+prefPanel-smtp=Máy chủ gửi thư (SMTP)
+
+# account manager multiple identity support
+#LOCALIZATION NOTE: accountName: %1$S
+identity-list-title=Danh tính cho %1$S
+
+identityDialogTitleAdd=Danh tính mới
+## LOCALIZATION NOTE (identityDialogTitleEdit): %S is the identity name
+identityDialogTitleEdit=Chỉnh sửa %S
+
+identity-edit-req=Bạn phải xác định một địa chỉ email hợp lệ cho danh tính này.
+identity-edit-req-title=Lỗi khi tạo danh tính
+
+## 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=Bạn có chắc chắn muốn xóa danh tính này không?\n%S
+## LOCALIZATION NOTE (identity-delete-confirm-title): %S is the account name
+identity-delete-confirm-title=Xóa danh tính cho %S
+identity-delete-confirm-button=Xóa
+
+choosefile=Chọn một tập tin
+
+forAccount=Đối với tài khoản "%S"
+
+removeFromServerTitle=Xác nhận xóa thư vĩnh viễn, tự động
+removeFromServer=Cài đặt này sẽ xóa vĩnh viễn các thư cũ khỏi máy chủ từ xa và bộ nhớ cục bộ của bạn. Bạn có chắc muốn tiếp tục?
+
+confirmSyncChangesTitle=Xác nhận thay đổi đồng bộ hóa
+confirmSyncChanges=Cài đặt đồng bộ hóa thư đã được thay đổi.\n\nBạn có muốn lưu chúng không?
+confirmSyncChangesDiscard=Loại bỏ
+
diff --git a/l10n-vi/mail/chrome/messenger/quickFilterBar.dtd b/l10n-vi/mail/chrome/messenger/quickFilterBar.dtd
new file mode 100644
index 0000000000..d730336a4e
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/quickFilterBar.dtd
@@ -0,0 +1,269 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.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 (quickFilterBar.toggleBarVisibility.menu.label):
+ The label to display for the "View... Toolbars..." menu item that controls
+ whether the quick filter bar is visible.
+ -->
+<!ENTITY quickFilterBar.toggleBarVisibility.menu.label
+ "Thanh bộ lọc nhanh">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.toggleBarVisibility.menu.accesskey):
+ The access key for the "View... Toolbars..." menu item label that controls
+ whether the quick filter bar is visible.
+ -->
+<!ENTITY quickFilterBar.toggleBarVisibility.menu.accesskey
+ "Q">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.toggleBarVisibility.appmenu.label):
+ The label to display for the "App Menu... Preferences..." menu item that
+ controls whether the quick filter bar is visible.
+ -->
+<!ENTITY quickFilterBar.toggleBarVisibility.appmenu.label
+ "Thanh bộ lọc nhanh">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.toggleBarVisibility.button.tooltip):
+ The tooltip to display when hovering over the button on the tab bar that
+ toggles the visibility of the quick filter bar.
+ -->
+<!ENTITY quickFilterBar.toggleBarVisibility.button.tooltip
+ "Bật/tắt thanh bộ lọc nhanh">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.sticky.tooltip):
+ 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.)
+ -->
+<!ENTITY quickFilterBar.sticky.tooltip
+ "Giữ các bộ lọc được áp dụng khi chuyển đổi thư mục">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.unread.label):
+ The label for the filter button that causes us to filter results to only
+ include unread messages.
+ -->
+<!ENTITY quickFilterBar.unread.label
+ "Chưa đọc">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.unread.tooltip):
+ The tooltip for the filter button that causes us to filter results to only
+ include unread messages.
+ -->
+<!ENTITY quickFilterBar.unread.tooltip
+ "Chỉ hiện các thư chưa đọc">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.starred.label):
+ The label for the filter button that causes us to filter results to only
+ include messages that have been starred/flagged.
+ -->
+<!ENTITY quickFilterBar.starred.label
+ "Gắn sao">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.starred.tooltip):
+ The tooltip for the filter button that causes us to filter results to only
+ include messages that have been starred/flagged.
+ -->
+<!ENTITY quickFilterBar.starred.tooltip
+ "Chỉ hiện các thư gắn sao">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.inaddrbook.label):
+ 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.
+ -->
+<!ENTITY quickFilterBar.inaddrbook.label
+ "Liên hệ">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.inaddrbook.tooltip):
+ 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.
+ -->
+<!ENTITY quickFilterBar.inaddrbook.tooltip
+ "Chỉ hiện thư tin từ những người trong sổ địa chỉ của bạn">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.tags.label):
+ The label for the filter button that causes us to filter results to only
+ include messages with at least one tag on them.
+ -->
+<!ENTITY quickFilterBar.tags.label
+ "Nhãn">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.tags.tooltip):
+ The tooltip for the filter button that causes us to filter results to only
+ include messages with at least one tag on them.
+ -->
+<!ENTITY quickFilterBar.tags.tooltip
+ "Chỉ hiện các thư có dán nhãn">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.attachment.label):
+ The label for the filter button that causes us to filter results to only
+ include messages with attachments.
+ -->
+<!ENTITY quickFilterBar.attachment.label
+ "Đính kèm">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.attachment.tooltip):
+ The tooltip for the filter button that causes us to filter results to only
+ include messages with attachments.
+ -->
+<!ENTITY quickFilterBar.attachment.tooltip
+ "Chỉ hiện các thư có phần đính kèm">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.resultsLabel.some.formatString):
+ 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 quickFilterBar.resultsLabel.none), or the box is hidden.
+ This is a pluralizable string used to express the number of messages in
+ the results. We replace the '#1' with the number of messages, otherwise
+ see the following URL For more information:
+ https://developer.mozilla.org/En/Localization_and_Plurals
+ -->
+<!ENTITY quickFilterBar.resultsLabel.some.formatString
+ "#1 thư;#1 thư">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.resultsLabel.none):
+ The contents of the results box when there is a filter active but there
+ are no messages matching the filter.
+ -->
+<!ENTITY quickFilterBar.resultsLabel.none
+ "Không có kết quả">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.resultsLabel.minWidth):
+ The minimum width, in pixels, of the results label. Please size this
+ so that a 3 or 4 digit number of messages in the results can be displayed
+ without growing the size of the box. You can tell this has been
+ accomplished if adding a filter constraint that changes the displayed
+ string to your "no results" string does not result in any changes to the
+ size of the text box to the label's right. (If your string for
+ "no results" is longer than the "#### messages" case, then size for that.
+ -->
+<!ENTITY quickFilterBar.resultsLabel.minWidth
+ "100">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textbox.emptyText.base1):
+ This is the base of the empty text for the text search box. We replace
+ #1 with the contents of the appropriate
+ quickFilterBar.textbox.emptyText.keyLabel.* value for the platform.
+ 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.
+ -->
+<!ENTITY quickFilterBar.textbox.emptyText.base1
+ "Lọc các tin nhắn này #1">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.show.key2):
+ This is the key used to show the quick filter bar. -->
+<!ENTITY quickFilterBar.show.key2
+ "k">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textbox.emptyText.keyLabel.nonmac):
+ The description of the key-binding to get into the box on windows and
+ linux (which use the control key). This should match the value of
+ quickFilterBar.show.key above.
+ -->
+<!ENTITY quickFilterBar.textbox.emptyText.keyLabel2.nonmac
+ "&lt;Ctrl+Shift+K&gt;">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textbox.emptyText.keyLabel.mac):
+ The description of the key-binding to get into the box on mac systems.
+ This should match the value of quickFilterBar.show.key above.
+ -->
+<!ENTITY quickFilterBar.textbox.emptyText.keyLabel2.mac
+ "&lt;&#x21E7;&#x2318;K&gt;">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.booleanMode.tooltip):
+ Tooltip of the Any of / All of tagging mode selector.
+ -->
+<!ENTITY quickFilterBar.booleanMode.tooltip "Chế độ lọc nhãn">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.booleanModeAny.label):
+ Tooltip of the Any of / All of tagging mode selector.
+ -->
+<!ENTITY quickFilterBar.booleanModeAny.label "Bất kỳ của">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.booleanModeAny.tooltip):
+ Tooltip of the Any of / All of tagging mode selector.
+ -->
+<!ENTITY quickFilterBar.booleanModeAny.tooltip "Ít nhất một trong các tiêu chí nhãn được chọn phải phù hợp">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.booleanModeAll.label):
+ Tooltip of the Any of / All of tagging mode selector.
+ -->
+<!ENTITY quickFilterBar.booleanModeAll.label "Nguyên văn của">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.booleanModeAll.tooltip):
+ Tooltip of the Any of / All of tagging mode selector.
+ -->
+<!ENTITY quickFilterBar.booleanModeAll.tooltip "Tất cả các tiêu chí nhãn được chọn phải phù hợp">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textbox.idealWidth):
+ The number of pixels for the ideal width of the quick filter box textbox.
+ Choose this value so that the emptyText fits nicely with a little bit of
+ extra whitespace.
+ -->
+<!ENTITY quickFilterBar.textbox.idealWidth
+ "320">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textbox.minWidth):
+ The minimum width of the quick filter textbox in pixels. This is the size
+ which we should refuse to flex below. When we hit this size, the buttons
+ with labels will have their labels collapsed.
+ -->
+<!ENTITY quickFilterBar.textbox.minWidth
+ "280">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textFilter.explanation.label):
+ 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.)
+ -->
+<!ENTITY quickFilterBar.textFilter.explanation.label
+ "Lọc thư tin theo:">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textFilter.sender.label):
+ The button label that toggles whether the text filter searches the message
+ sender for the string.
+ -->
+<!ENTITY quickFilterBar.textFilter.sender.label
+ "Người gửi">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textFilter.recipients.label):
+ The button label that toggles whether the text filter searches the message
+ recipients (to, cc) for the string.
+ -->
+<!ENTITY quickFilterBar.textFilter.recipients.label
+ "Người nhận">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textFilter.subject.label):
+ The button label that toggles whether the text filter searches the message
+ subject for the string.
+ -->
+<!ENTITY quickFilterBar.textFilter.subject.label
+ "Tiêu đề">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.textFilter.body.label):
+ The button label that toggles whether the text filter searches the message
+ body for the string.
+ -->
+<!ENTITY quickFilterBar.textFilter.body.label
+ "Nội dung">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.glodaUpsell.continueSearch):
+ 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.
+ -->
+<!ENTITY quickFilterBar.glodaUpsell.continueSearch
+ "Tiếp tục tìm kiếm này trên tất cả các thư mục">
+
+<!-- LOCALIZATION NOTE (quickFilterBar.glodaUpsell.pressEnterAndCurrent):
+ The second line of the panel popup that tells the user we found no matches.
+ This line will have #1 replaced with what the user has typed so far.
+ -->
+<!ENTITY quickFilterBar.glodaUpsell.pressEnterAndCurrent
+ "Nhấn 'Enter' một lần nữa để tiếp tục tìm kiếm của bạn cho: #1">
diff --git a/l10n-vi/mail/chrome/messenger/removeAccount.dtd b/l10n-vi/mail/chrome/messenger/removeAccount.dtd
new file mode 100644
index 0000000000..79117b760e
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Xóa tài khoản và dữ liệu">
+<!ENTITY removeButton.label "Xóa">
+<!ENTITY removeButton.accesskey "R">
+<!ENTITY removeAccount.label "Xóa thông tin tài khoản">
+<!ENTITY removeAccount.accesskey "a">
+<!ENTITY removeAccount.desc "Chỉ xóa kiến thức &brandShortName; của tài khoản này. Không ảnh hưởng đến chính tài khoản trên máy chủ.">
+<!ENTITY removeData.label "Xóa dữ liệu thư">
+<!ENTITY removeData.accesskey "d">
+<!ENTITY removeDataChat.label "Xóa dữ liệu hội thoại">
+<!ENTITY removeDataChat.accesskey "d">
+<!ENTITY removeDataLocalAccount.desc "Xóa tất cả các thư, thư mục và bộ lọc được liên kết với tài khoản này khỏi đĩa cục bộ của bạn. Điều này không ảnh hưởng đến một số thư vẫn có thể được lưu trên máy chủ. Không chọn điều này nếu bạn có kế hoạch lưu trữ dữ liệu cục bộ hoặc sử dụng lại nó sau trong &brandShortName;.">
+<!ENTITY removeDataServerAccount.desc "Xóa tất cả thư, thư mục và bộ lọc được liên kết với tài khoản này khỏi đĩa cục bộ của bạn. Thư và thư mục của bạn vẫn được giữ trên máy chủ.">
+<!ENTITY removeDataChatAccount.desc "Xóa tất cả nhật ký của các cuộc hội thoại được lưu trữ cho tài khoản này trên đĩa cục bộ của bạn.">
+<!ENTITY showData.label "Hiển thị vị trí dữ liệu">
+<!ENTITY showData.accesskey "S">
+<!ENTITY progressPending "Đang xóa dữ liệu đã chọn…">
+<!ENTITY progressSuccess "Xóa bỏ thành công.">
+<!ENTITY progressFailure "Xóa bỏ thất bại.">
diff --git a/l10n-vi/mail/chrome/messenger/removeAccount.properties b/l10n-vi/mail/chrome/messenger/removeAccount.properties
new file mode 100644
index 0000000000..edab6c1792
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Bạn có chắc chắn muốn xóa tài khoản "%S" không?
diff --git a/l10n-vi/mail/chrome/messenger/renameFolderDialog.dtd b/l10n-vi/mail/chrome/messenger/renameFolderDialog.dtd
new file mode 100644
index 0000000000..79965b9e91
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/renameFolderDialog.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 renameFolderDialog.title "Đổi tên Thư mục">
+<!ENTITY rename.label "Nhập tên mới cho thư mục của bạn:">
+<!ENTITY rename.accesskey "N">
+<!ENTITY accept.label "Đổi tên">
+<!ENTITY accept.accesskey "i">
+
diff --git a/l10n-vi/mail/chrome/messenger/sanitize.dtd b/l10n-vi/mail/chrome/messenger/sanitize.dtd
new file mode 100644
index 0000000000..6475e0d473
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Xóa lịch sử gần đây">
+
+<!-- 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 "Khoảng thời gian để xóa: ">
+<!ENTITY clearTimeDuration.accesskey "T">
+<!ENTITY clearTimeDuration.lastHour "Một tiếng gần đây">
+<!ENTITY clearTimeDuration.last2Hours "Hai tiếng gần đây">
+<!ENTITY clearTimeDuration.last4Hours "Bốn tiếng gần đây">
+<!ENTITY clearTimeDuration.today "Hôm nay">
+<!ENTITY clearTimeDuration.everything "Mọi thứ">
+<!-- Localization note (clearTimeDuration.suffix) - trailing entity for languages
+that require it. -->
+<!ENTITY clearTimeDuration.suffix "">
+
+
+<!ENTITY historyGroup.label "Lịch sử">
+
+<!ENTITY itemHistory.label "Lịch sử duyệt web">
+<!ENTITY itemHistory.accesskey "B">
+<!ENTITY itemCookies.label "Cookie">
+<!ENTITY itemCookies.accesskey "C">
+<!ENTITY itemCache.label "Bộ nhớ đệm">
+<!ENTITY itemCache.accesskey "A">
+
+<!-- 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 "Thao tác này không thể hoàn tác được.">
+
+<!ENTITY dialog.width "28em">
diff --git a/l10n-vi/mail/chrome/messenger/seamonkeyImportMsgs.properties b/l10n-vi/mail/chrome/messenger/seamonkeyImportMsgs.properties
new file mode 100644
index 0000000000..10b6514596
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Nhập sổ địa chỉ, thư và tài khoản từ SeaMonkey.
+
+# Success Message for addressbook import
+SeamonkeyImportAddressSuccess=Sổ địa chỉ đã được nhập thành công.
+
+# Success Message for mail import
+SeamonkeyImportSettingsSuccess=Thư và tài khoản cục bộ đã được nhập thành công.
diff --git a/l10n-vi/mail/chrome/messenger/search-attributes.properties b/l10n-vi/mail/chrome/messenger/search-attributes.properties
new file mode 100644
index 0000000000..4e0bf7a95a
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Chủ đề
+From=Từ
+Body=Nội dung
+Date=Ngày
+Priority=Ưu tiên
+Status=Trạng thái
+To=Tới
+Cc=Cc
+ToOrCc=Tới hoặc Cc
+AgeInDays=Ngày tuổi
+SizeKB=Dung lượng (kB)
+Tags=Nhãn
+# for AB and LDAP
+AnyName=Tên bất kì
+DisplayName=Tên hiển thị
+Nickname=Tên hiệu
+ScreenName=Tên Screen
+Email=Email
+AdditionalEmail=Email phụ
+AnyNumber=Bất Cứ Số
+WorkPhone=Điện thoại công ty
+HomePhone=Điện thoại nhà
+Fax=Fax
+Pager=Máy nhắn tin
+Mobile=Di động
+City=Thành phố
+Street=Đường
+Title=Chức vụ
+Organization=Tổ chức
+Department=Bộ phận
+# more mailnews
+FromToCcOrBcc=Người gửi, người nhận, Cc hoặc Bcc
+JunkScoreOrigin=Gốc Điểm Thư Rác
+JunkPercent=Phần trăm Thư rác
+AttachmentStatus=Trạng thái Phần đính kèm
+JunkStatus=Trạng thái Thư rác
+Label=Nhãn
+Customize=Tùy biến…
+MissingCustomTerm=Thuật ngữ Tùy biến Đang thiếu
diff --git a/l10n-vi/mail/chrome/messenger/search-operators.properties b/l10n-vi/mail/chrome/messenger/search-operators.properties
new file mode 100644
index 0000000000..26cff6ec67
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/search-operators.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/.
+
+0=chứa
+1=không chứa
+2=là
+3=không là
+4=là rỗng
+
+5=trước
+6=sau
+
+7=cao hơn
+8=thấp hơn
+
+9=bắt đầu bằng
+10=kết thúc bằng
+
+11=nghe giống như
+12=LdapDwim
+
+13=lớn hơn
+14=nhỏ hơn
+
+15=Hoàn tất Tên
+16=có trong sổ địa chỉ của tôi
+17=không có trong sổ địa chỉ của tôi
+18=không rỗng
+19=phù hợp
+20=không phù hợp
+
diff --git a/l10n-vi/mail/chrome/messenger/search.properties b/l10n-vi/mail/chrome/messenger/search.properties
new file mode 100644
index 0000000000..9fa690b729
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Đang tìm kiếm…
+# LOCALIZATION NOTE (matchesFound): #1 number of matches found
+matchesFound=#1 kết quả phù hợp;#1 kết quả phù hợp
+noMatchesFound=Không tìm thấy
+labelForStopButton=Dừng
+labelForSearchButton=Tìm kiếm
+labelForStopButton.accesskey=S
+labelForSearchButton.accesskey=S
+
+moreButtonTooltipText=Thêm một quy tắc mới
+lessButtonTooltipText=Xóa quy luật này
diff --git a/l10n-vi/mail/chrome/messenger/searchTermOverlay.dtd b/l10n-vi/mail/chrome/messenger/searchTermOverlay.dtd
new file mode 100644
index 0000000000..37dc5f88e9
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/searchTermOverlay.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 matchAll.label "Phù hợp tất cả những tìm kiếm sau">
+<!ENTITY matchAll.accesskey "s">
+<!ENTITY matchAny.label "Phù hợp bất kì tìm kiếm nào">
+<!ENTITY matchAny.accesskey "n">
+<!ENTITY matchAllMsgs.label "Phù hợp tất cả thư">
+<!ENTITY matchAllMsgs.accesskey "P">
+
+<!-- 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 "5">
+<!ENTITY searchTermListOperatorsFlexValue "5">
+<!ENTITY searchTermListValueFlexValue "5">
+
diff --git a/l10n-vi/mail/chrome/messenger/shutdownWindow.properties b/l10n-vi/mail/chrome/messenger/shutdownWindow.properties
new file mode 100644
index 0000000000..a7ad008670
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Cửa sổ tiến trình tắt
+taskProgress=Đang xử lí %1$S trên tổng %2$S tác vụ
+
+# These strings are loaded by the individual shutdown tasks.
diff --git a/l10n-vi/mail/chrome/messenger/smime.properties b/l10n-vi/mail/chrome/messenger/smime.properties
new file mode 100644
index 0000000000..eae2a9291e
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/smime.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/.
+
+#
+# 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=Đây là một thư <B>ĐÃ MÃ HÓA</B> hoặc <B>ĐÃ KÝ</B>.<br> Ứng dụng thư này không hỗ trợ thư đã mã hóa hoặc đã ký.
diff --git a/l10n-vi/mail/chrome/messenger/smtpEditOverlay.dtd b/l10n-vi/mail/chrome/messenger/smtpEditOverlay.dtd
new file mode 100644
index 0000000000..df1e4121a5
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thiết lập">
+<!ENTITY security.caption "Bảo mật và Xác thực">
+<!ENTITY serverName.label "Tên Máy Chủ:">
+<!ENTITY serverName.accesskey "T">
+<!ENTITY serverDescription.label "Mô tả:">
+<!ENTITY serverDescription.accesskey "M">
+<!ENTITY serverPort.label "Cổng:">
+<!ENTITY serverPort.accesskey "C">
+<!ENTITY userName.label "Tên đăng nhập:">
+<!ENTITY userName.accesskey "m">
+<!ENTITY connectionSecurity.label "Bảo mật kết nối:">
+<!ENTITY connectionSecurity.accesskey "k">
+<!ENTITY connectionSecurityType-0.label "Không có">
+<!ENTITY connectionSecurityType-1.label "STARTTLS, nếu có">
+<!ENTITY connectionSecurityType-2.label "STARTTLS">
+<!ENTITY connectionSecurityType-3.label "SSL/TLS">
+<!ENTITY smtpEditTitle.label "Máy chủ SMTP">
+<!ENTITY serverPortDefault.label "Mặc định:">
+<!ENTITY authMethod.label "Phương thức xác thực:">
+<!ENTITY authMethod.accesskey "x">
diff --git a/l10n-vi/mail/chrome/messenger/subscribe.dtd b/l10n-vi/mail/chrome/messenger/subscribe.dtd
new file mode 100644
index 0000000000..01cf9cacaf
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Đăng kí">
+<!ENTITY subscribeButton.label "Theo dõi">
+<!ENTITY subscribeButton.accesskey "e">
+<!ENTITY unsubscribeButton.label "Dừng theo dõi">
+<!ENTITY unsubscribeButton.accesskey "D">
+<!ENTITY newGroupsTab.label "Nhóm Mới">
+<!ENTITY newGroupsTab.accesskey "N">
+<!ENTITY refreshButton.label "Làm tươi">
+<!ENTITY refreshButton.accesskey "L">
+<!ENTITY stopButton.label "Dừng">
+<!ENTITY stopButton.accesskey "D">
+<!ENTITY server.label "Tài khoản:">
+<!ENTITY server.accesskey "T">
+<!ENTITY subscribedHeader.label "Theo dõi">
+<!-- commenting out until bug 38906 is fixed
+<!ENTITY messagesHeader.label "Messages"> -->
+<!ENTITY namefield.label "Hiện các mục có chứa:">
+<!ENTITY namefield.accesskey "H">
diff --git a/l10n-vi/mail/chrome/messenger/subscribe.properties b/l10n-vi/mail/chrome/messenger/subscribe.properties
new file mode 100644
index 0000000000..fc7dd293bb
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Chọn các nhóm tin để đăng ký:
+subscribeLabel-imap=Chọn thư mục để theo dõi:
+currentListTab-nntp.label=Danh sách nhóm hiện tại
+currentListTab-nntp.accesskey=L
+currentListTab-imap.label=Danh sách thư mục
+currentListTab-imap.accesskey=L
+pleaseWaitString=Vui lòng chờ…
+offlineState=Bạn đang ngoại tuyến. Các mục không thể được lấy từ máy chủ.
+errorPopulating=Lỗi khi lấy các mục từ máy chủ.
diff --git a/l10n-vi/mail/chrome/messenger/tabmail.dtd b/l10n-vi/mail/chrome/messenger/tabmail.dtd
new file mode 100644
index 0000000000..030168d12e
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Đóng thẻ">
+<!ENTITY listAllTabs.label "Liệt kê tất cả các thẻ">
+<!-- LOCALIZATION NOTE(defaultTabTitle.label): This is the default tab
+ title to show when the tab has no title. -->
+<!ENTITY defaultTabTitle.label "Trang chủ">
diff --git a/l10n-vi/mail/chrome/messenger/taskbar.properties b/l10n-vi/mail/chrome/messenger/taskbar.properties
new file mode 100644
index 0000000000..df332a956e
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/taskbar.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/.
+
+taskbar.tasks.composeMessage.label=Viết thư mới
+taskbar.tasks.composeMessage.description=Viết thư mới.
+taskbar.tasks.openAddressBook.label=Mở sổ địa chỉ
+taskbar.tasks.openAddressBook.description=Mở sổ địa chỉ của bạn.
+
diff --git a/l10n-vi/mail/chrome/messenger/telemetry.properties b/l10n-vi/mail/chrome/messenger/telemetry.properties
new file mode 100644
index 0000000000..162fb8e03e
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 = Bạn có muốn giúp cải thiện %1$S bằng cách tự động báo cáo mức sử dụng bộ nhớ, hiệu suất và khả năng phản hồi cho %2$S không?
+telemetryLinkLabel = Tìm hiểu thêm
+telemetryYesButtonLabel = Có
+telemetryYesButtonAccessKey = Y
+telemetryNoButtonLabel = Không
+telemetryNoButtonAccessKey = N
diff --git a/l10n-vi/mail/chrome/messenger/templateUtils.properties b/l10n-vi/mail/chrome/messenger/templateUtils.properties
new file mode 100644
index 0000000000..83b5f244d5
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=hôm qua
diff --git a/l10n-vi/mail/chrome/messenger/textImportMsgs.properties b/l10n-vi/mail/chrome/messenger/textImportMsgs.properties
new file mode 100644
index 0000000000..5c45674848
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/textImportMsgs.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/.
+
+#
+# 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=Tập tin văn bản (LDIF, .tab, .csv, .txt)
+
+# Description of import module
+## @name TEXTIMPORT_DESCRIPTION
+## @loc None
+2001=Nhập sổ địa chỉ từ tập tin văn bản, bao gồm: các định dạng LDIF (.ldif, .ldi), phân-cách-bằng-tab (.tab, .txt) hoặc ngăn-cách-bằng-dấu-phẩy (.csv).
+
+# Description of import module
+## @name TEXTIMPORT_ADDRESS_NAME
+## @loc None
+2002=Sổ địa chỉ văn bản
+
+# Description
+## @name TEXTIMPORT_ADDRESS_SUCCESS
+## @loc None
+2003=Đã nhập sổ địa chỉ %S
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_BADPARAM
+## @loc None
+2004=Tham số xấu xen vào việc nhập sổ địa chỉ.
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_BADSOURCEFILE
+## @loc None
+2005=Lỗi khi đang truy cập tập tin cho sổ địa chỉ %S.
+
+# Error message
+## @name TEXTIMPORT_ADDRESS_CONVERTERROR
+## @loc None
+2006=Lỗi khi đang nhập sổ địa chỉ %S, có thể tất cả địa chỉ đã không được nhập hết.
diff --git a/l10n-vi/mail/chrome/messenger/vCardImportMsgs.properties b/l10n-vi/mail/chrome/messenger/vCardImportMsgs.properties
new file mode 100644
index 0000000000..e5e1a39e60
--- /dev/null
+++ b/l10n-vi/mail/chrome/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=Tập tin vCard (.vcf)
+
+vCardImportDescription=Nhập sổ địa chỉ từ định dạng vCard
+
+vCardImportAddressName=Sổ địa chỉ vCard
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressSuccess=Đã nhập sổ địa chỉ %S
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressBadSourceFile=Lỗi khi đang truy cập tập tin cho sổ địa chỉ %S.
+
+# LOCALIZATION NOTE (vCardImportAddressSuccess): %S is replaced by the
+# name of the address book being imported.
+vCardImportAddressConvertError=Lỗi khi đang nhập sổ địa chỉ %S, có thể tất cả địa chỉ đã không được nhập hết.
diff --git a/l10n-vi/mail/chrome/messenger/viewLog.dtd b/l10n-vi/mail/chrome/messenger/viewLog.dtd
new file mode 100644
index 0000000000..074eb575fa
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/viewLog.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 viewLog.title "Lưu kí Bộ lọc">
+<!ENTITY viewLogInfo.text "Lưu kí Bộ lọc ghi lại các bộ lọc được chạy cho tài khoản này. Hãy dùng hộp kiểm bên dưới để kích hoạt lưu kí.">
+<!ENTITY clearLog.label "Xóa Lưu Kí">
+<!ENTITY clearLog.accesskey "X">
+<!ENTITY enableLog.label "Kích hoạt Lưu kí Bộ lọc">
+<!ENTITY enableLog.accesskey "K">
+<!ENTITY closeLog.label "Đóng">
+<!ENTITY closeLog.accesskey "g">
+
diff --git a/l10n-vi/mail/chrome/messenger/viewSource.dtd b/l10n-vi/mail/chrome/messenger/viewSource.dtd
new file mode 100644
index 0000000000..eeeb04d105
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/viewSource.dtd
@@ -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/. -->
+
+<!-- extracted from content/viewSource.xul -->
+
+<!-- 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 "Nguồn của: ">
+
+<!ENTITY editMenu.label "Chỉnh sửa">
+<!ENTITY editMenu.accesskey "E">
+<!ENTITY fileMenu.label "Tập tin">
+<!ENTITY fileMenu.accesskey "F">
+<!ENTITY savePageCmd.label "Lưu trang dưới dạng…">
+<!ENTITY savePageCmd.accesskey "A">
+<!ENTITY savePageCmd.commandkey "S">
+<!ENTITY printCmd.label "In…">
+<!ENTITY printCmd.accesskey "P">
+<!ENTITY printCmd.commandkey "P">
+<!ENTITY closeCmd.label "Đóng">
+<!ENTITY closeCmd.accesskey "C">
+<!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 "Đi tới dòng…">
+<!ENTITY goToLineCmd.accesskey "G">
+<!ENTITY goToLineCmd.commandkey "l">
+
+<!ENTITY viewMenu.label "Xem">
+<!ENTITY viewMenu.accesskey "V">
+<!ENTITY reloadCmd.label "Tải lại">
+<!ENTITY reloadCmd.accesskey "R">
+<!ENTITY reloadCmd.commandkey "r">
+<!ENTITY menu_wrapLongLines.title "Xuống hàng cho các dòng dài">
+<!ENTITY menu_wrapLongLines.accesskey "W">
+<!ENTITY menu_highlightSyntax.label "Tô sáng cú pháp">
+<!ENTITY menu_highlightSyntax.accesskey "H">
+<!ENTITY menu_textSize.label "Cỡ chữ">
+<!ENTITY menu_textSize.accesskey "Z">
+<!ENTITY menu_textEnlarge.label "Tăng">
+<!ENTITY menu_textEnlarge.accesskey "I">
+<!ENTITY menu_textReduce.label "Giảm">
+<!ENTITY menu_textReduce.accesskey "D">
+<!ENTITY menu_textReset.label "Bình thường">
+<!ENTITY menu_textReset.accesskey "N">
+
+<!ENTITY findOnCmd.label "Tìm trong trang này…">
+<!ENTITY findOnCmd.accesskey "F">
+<!ENTITY findOnCmd.commandkey "f">
+<!ENTITY findAgainCmd.label "Tìm tiếp">
+<!ENTITY findAgainCmd.accesskey "g">
+<!ENTITY findAgainCmd.commandkey "g">
+<!ENTITY findAgainCmd.commandkey2 "VK_F3">
+<!ENTITY findSelectionCmd.commandkey "e">
+
+<!ENTITY backCmd.label "Quay lại">
+<!ENTITY backCmd.accesskey "B">
+<!ENTITY forwardCmd.label "Tiến">
+<!ENTITY forwardCmd.accesskey "F">
+<!ENTITY goBackCmd.commandKey "[">
+<!ENTITY goForwardCmd.commandKey "]">
+
+<!ENTITY copyLinkCmd.label "Sao chép địa chỉ liên kết">
+<!ENTITY copyLinkCmd.accesskey "L">
+<!ENTITY copyEmailCmd.label "Sao chép địa chỉ email">
+<!ENTITY copyEmailCmd.accesskey "E">
diff --git a/l10n-vi/mail/chrome/messenger/viewSource.properties b/l10n-vi/mail/chrome/messenger/viewSource.properties
new file mode 100644
index 0000000000..79d3f0af13
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 = Đi tới dòng
+goToLineText = Nhập số dòng
+invalidInputTitle = Đầu vào không hợp lệ
+invalidInputText = Số dòng đã nhập không hợp lệ.
+outOfRangeTitle = Không tìm thấy dòng
+outOfRangeText = Không tìm thấy dòng được chỉ định.
+viewSelectionSourceTitle = Mã Nguồn DOM của phần đã chọn
+viewMathMLSourceTitle = Mã nguồn DOM của MathML
+
+context_goToLine_label = Đi tới dòng…
+context_goToLine_accesskey = L
+context_wrapLongLines_label = Cắt những dòng dài
+context_highlightSyntax_label = Tô sáng cú pháp
diff --git a/l10n-vi/mail/chrome/messenger/viewZoomOverlay.dtd b/l10n-vi/mail/chrome/messenger/viewZoomOverlay.dtd
new file mode 100644
index 0000000000..56a857b108
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Phóng to">
+<!ENTITY fullZoomEnlargeCmd.accesskey "I">
+<!ENTITY fullZoomEnlargeCmd.commandkey "+">
+<!ENTITY fullZoomEnlargeCmd.commandkey2 "="> <!-- + is above this key on many keyboards -->
+<!ENTITY fullZoomEnlargeCmd.commandkey3 "">
+
+<!ENTITY fullZoomReduceCmd.label "Thu nhỏ">
+<!ENTITY fullZoomReduceCmd.accesskey "O">
+<!ENTITY fullZoomReduceCmd.commandkey "-">
+<!ENTITY fullZoomReduceCmd.commandkey2 "">
+
+<!ENTITY fullZoomResetCmd.label "Đặt lại">
+<!ENTITY fullZoomResetCmd.accesskey "R">
+<!ENTITY fullZoomResetCmd.commandkey "0">
+<!ENTITY fullZoomResetCmd.commandkey2 "">
+
+<!ENTITY fullZoomToggleCmd.label "Chỉ phóng to văn bản">
+<!ENTITY fullZoomToggleCmd.accesskey "T">
+<!ENTITY fullZoom.label "Thu phóng">
+<!ENTITY fullZoom.accesskey "Z">
diff --git a/l10n-vi/mail/chrome/messenger/virtualFolderListDialog.dtd b/l10n-vi/mail/chrome/messenger/virtualFolderListDialog.dtd
new file mode 100644
index 0000000000..80c207f1ab
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/virtualFolderListDialog.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 virtualFolderListTitle.title "Chọn (các) thư mục">
+<!ENTITY virtualFolderDesc.label "Chọn các thư mục để tìm trong:">
+<!ENTITY folderName.label "Tên thư mục">
+<!ENTITY folderSearch.label "Tìm kiếm">
diff --git a/l10n-vi/mail/chrome/messenger/virtualFolderProperties.dtd b/l10n-vi/mail/chrome/messenger/virtualFolderProperties.dtd
new file mode 100644
index 0000000000..c9ce81c709
--- /dev/null
+++ b/l10n-vi/mail/chrome/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 "Thư mục Tìm kiếm Được lưu Mới">
+<!ENTITY name.label "Tên:">
+<!ENTITY name.accesskey "n">
+<!ENTITY description.label "Tạo thành thư mục con cho:">
+<!ENTITY description.accesskey "c">
+
+<!ENTITY searchTermCaption.label "Cấu hình tiêu chuẩn đưa vào thư mục tìm kiếm được lưu này: ">
+
+<!ENTITY folderSelectionCaption.label "Chọn các thư mục để tìm trong: ">
+<!ENTITY chooseFoldersButton.label "Chọn…">
+<!ENTITY chooseFoldersButton.accesskey "h">
+
+<!ENTITY searchOnline.label "Tìm kiếm trực tuyến (Cung cấp kết quả cập nhật cho các thư mục IMAP và tin tức nhưng tăng thời gian mở thư mục)">
+<!ENTITY searchOnline.accesskey "T">
+<!ENTITY newFolderButton.label "Tạo">
+<!ENTITY newFolderButton.accesskey "o">
+<!ENTITY editFolderButton.label "Cập nhật">
+<!ENTITY editFolderButton.accesskey "U">
diff --git a/l10n-vi/mail/chrome/messenger/wmImportMsgs.properties b/l10n-vi/mail/chrome/messenger/wmImportMsgs.properties
new file mode 100644
index 0000000000..339669c4e4
--- /dev/null
+++ b/l10n-vi/mail/chrome/messenger/wmImportMsgs.properties
@@ -0,0 +1,77 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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=Thiết lập 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=Hộp thư %1$S, đã nhập %2$d thư
+
+# Error message
+## @name WMIMPORT_MAILBOX_BADPARAM
+## @loc None
+2003=Tham số xấu được đưa qua để nhập hộp thư.
+
+# 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=Lỗi khi đang truy cập tập tin cho hộp thư %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=Lỗi khi đang nhập hộp thư %S, có thể tất cả thư sẽ được nhập từ hộp thư này.
+
+# Default name of imported addressbook
+## @name WMIMPORT_DEFAULT_NAME
+## @loc None
+2006=Sổ địa chỉ Windows Live Mail
+
+# Autofind description
+## @name WMIMPORT_AUTOFIND
+## @loc None
+2007=Sổ địa chỉ Windows Live Mail (sổ địa chỉ 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=Đã nhập sổ địa chỉ %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=Lỗi khi đang nhập sổ địa chỉ %S, có thể tất cả địa chỉ đã không được nhập hết.
+
+# Error message
+## @name WMIMPORT_ADDRESS_BADPARAM
+## @loc None
+2010=Tham số xấu được đưa qua để nhập sổ địa chỉ.
+
diff --git a/l10n-vi/mail/chrome/mozldap/ldap.properties b/l10n-vi/mail/chrome/mozldap/ldap.properties
new file mode 100644
index 0000000000..62563696c7
--- /dev/null
+++ b/l10n-vi/mail/chrome/mozldap/ldap.properties
@@ -0,0 +1,261 @@
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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=Yêu cầu mật khẩu máy chủ LDAP
+
+## @name AUTH_PROMPT_TEXT
+## @loc %1$S should not be localized. It is the hostname of the LDAP server.
+authPromptText=Vui lòng nhập mật khẩu cho %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.
+
+## @name OPERATIONS_ERROR
+## @loc none
+1=Lỗi hoạt động
+
+## @name PROTOCOL_ERROR
+## @loc none
+2=Lỗi giao thức
+
+## @name TIMELIMIT_EXCEEDED
+## @loc none
+3=Vượt quá định mức thời gian
+
+## @name SIZELIMIT_EXCEEDED
+## @loc none
+4=Vượt quá định mức kích cỡ
+
+## @name COMPARE_FALSE
+## @loc none
+5=So sánh sai
+
+## @name COMPARE_TRUE
+## @loc none
+6=So sánh đúng
+
+## @name STRONG_AUTH_NOT_SUPPORTED
+## @loc none
+7=Phương thức xác thực không được hỗ trợ
+
+## @name STRONG_AUTH_REQUIRED
+## @loc none
+8=Yêu cầu xác thực mạnh
+
+## @name PARTIAL_RESULTS
+## @loc none
+9=Đã nhận đường dẫn và một phần kết quả
+
+## @name REFERRAL
+## @loc none
+10=Đã nhận đường dẫn
+
+## @name ADMINLIMIT_EXCEEDED
+## @loc none
+11=Vượt quá giới hạn quản trị
+
+## @name UNAVAILABLE_CRITICAL_EXTENSION
+## @loc none
+12=Không có phần mở rộng chính yếu
+
+## @name CONFIDENTIALITY_REQUIRED
+## @loc none
+13=Yêu cầu tính mật
+
+## @name SASL_BIND_IN_PROGRESS
+## @loc none
+14=Đang trong quá trình gắn kết SASL
+
+## @name NO_SUCH_ATTRIBUTE
+## @loc none
+16=Không có thuộc tính như vậy
+
+## @name UNDEFINED_TYPE
+## @loc none
+17=Kiểu thuộc tính chưa định nghĩa
+
+## @name INAPPROPRIATE MATCHING
+## @loc none
+18=Kết hợp không phù hợp
+
+## @name CONSTRAINT_VIOLATION
+## @loc none
+19=Vi phạm liên tục
+
+## @name TYPE_OR_VALUE_EXISTS
+## @loc none
+20=Kiểu hoặc giá trị đã tồn tại
+
+## @name INVALID_SYNTAX
+## @loc none
+21=Cú pháp bất hợp lệ
+
+## @name NO_SUCH_OBJECT
+## @loc none
+32=Không có đối tượng như vậy
+
+## @name ALIAS_PROBLEM
+## @loc none
+33=Vấn đề biệt danh
+
+## @name INVALID_DN_ SYNTAX
+## @loc none
+34=Cú pháp DN bất hợp lệ
+
+## @name IS_LEAF
+## @loc none
+35=Đối tượng là một lá
+
+## @name ALIAS_DEREF_PROBLEM
+## @loc none
+36=Vấn đề chặn tham khảo biệt danh
+
+## @name INAPPROPRIATE_AUTH
+## @loc none
+48=Xác thực không phù hợp
+
+## @name INVALID_CREDENTIALS
+## @loc none
+49=Ủy nhiệm bất hợp lệ
+
+## @name INSUFFICIENT_ACCESS
+## @loc none
+50=Không đủ lượng truy cập
+
+## @name BUSY
+## @loc none
+51=Máy chủ LDAP đang bận
+
+## @name UNAVAILABLE
+## @loc none
+52=Máy chủ LDAP không hiện hữu
+
+## @name UNWILLING_TO_PERFORM
+## @loc none
+53=Máy chủ LDAP không sẵn sàng thực thi
+
+## @name LOOP_DETECT
+## @loc none
+54=Vòng lặp
+
+## @name SORT_CONTROL_MISSING
+## @loc none
+60=Không thấy Điều khiển Sắp xếp
+
+## @name INDEX_RANGE_ERROR
+## @loc none
+61=Kết quả tìm kiếm vượt quá khoảng được xác định bởi offsets
+
+## @name NAMING_VIOLATION
+## @loc none
+64=Vi phạm đặt tên
+
+## @name OBJECT_CLASS_VIOLATION
+## @loc none
+65=Vi phạm lớp đối tượng
+
+## @name NOT_ALLOWED_ON_NONLEAF
+## @loc none
+66=Hoạt động không được phép trên nonleaf
+
+## @name NOT_ALLOWED_ON_RDN
+## @loc none
+67=Hoạt động không được phép trên RDN
+
+## @name ALREADY_EXISTS
+## @loc none
+68=Đã tồn tại
+
+## @name NO_OBJECT_CLASS_MODS
+## @loc none
+69=Không thể sửa đổi lớp đối tượng
+
+## @name RESULTS_TOO_LARGE
+## @loc none
+70=Kết quả quá lớn
+
+## @name AFFECTS_MULTIPLE_DSAS
+## @loc none
+71=Ảnh hưởng nhiều máy chủ
+
+## @name OTHER
+## @loc none
+80=Lỗi chưa biết
+
+## @name SERVER_DOWN
+## @loc none
+81=Không thể liên hệ máy chủ LDAP
+
+## @name LOCAL_ERROR
+## @loc none
+82=Lỗi nội bộ
+
+## @name ENCODING_ERROR
+## @loc none
+83=Lỗi mã hóa
+
+## @name DECODING_ERROR
+## @loc none
+84=Lỗi giải mã
+
+## @name TIMEOUT
+## @loc none
+85=Máy chủ LDAP bị quá thời gian kết nối
+
+## @name AUTH_UNKNOWN
+## @loc none
+86=Phương thức xác thực chưa biết
+
+## @name FILTER_ERROR
+## @loc none
+87=Bộ lọc tìm kiếm bất hợp lệ
+
+## @name USER_CANCELLED
+## @loc none
+88=Người dùng hủy bỏ hoạt động
+
+## @name PARAM_ERROR
+## @loc none
+89=Tham số xấu đến mạch kết nối LDAP
+
+## @name NO_MEMORY
+## @loc none
+90=Hết bộ nhớ
+
+## @name CONNECT_ERROR
+## @loc none
+91=Không thể kết nối máy chủ LDAP
+
+## @name NOT_SUPPORTED
+## @loc none
+92=Không được hỗ trợ bởi phiên bản giao thức LDAP này
+
+## @name CONTROL_NOT_FOUND
+## @loc none
+93=Không tìm thấy điều khiển LDAP đã yêu cầu
+
+## @name NO_RESULTS_RETURNED
+## @loc none
+94=Không có kết quả trả về
+
+## @name MORE_RESULTS_TO_RETURN
+## @loc none
+95=Nhiều kết quả trả về hơn
+
+## @name CLIENT_LOOP
+## @loc none
+96=Máy khách phát hiện thấy vòng lặp
+
+## @name REFERRAL_LIMIT_EXCEEDED
+## @loc none
+97=Vượt quá định mức bước nhảy tham chiếu
diff --git a/l10n-vi/mail/chrome/overrides/netError.dtd b/l10n-vi/mail/chrome/overrides/netError.dtd
new file mode 100644
index 0000000000..0d03bb9dce
--- /dev/null
+++ b/l10n-vi/mail/chrome/overrides/netError.dtd
@@ -0,0 +1,184 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.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 % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
+%brandDTD;
+
+<!ENTITY loadError.label "Gặp vấn đề khi tải trang">
+<!ENTITY retry.label "Thử Lại">
+
+<!-- Specific error messages -->
+
+<!ENTITY connectionFailure.title "Không thể kết nối">
+<!ENTITY connectionFailure.longDesc "&sharedLongDesc;">
+
+<!ENTITY deniedPortAccess.title "Địa chỉ này đã bị chặn">
+<!ENTITY deniedPortAccess.longDesc "">
+
+<!ENTITY dnsNotFound.title "Không tìm thấy máy chủ">
+<!ENTITY dnsNotFound.longDesc "
+<ul>
+ <li>Kiểm tra các lỗi gõ địa chỉ như là
+ <strong>ww</strong>.example.com thay vì
+ <strong>www</strong>.example.com</li>
+ <li>Nếu bạn không thể mở bất kì trang nào, hãy kiểm tra kết nối mạng của bạn.</li>
+ <li>Nếu máy tính hoặc mạng của bạn được bảo vệ bởi tường lửa hoặc proxy, hãy chắc rằng &brandShortName; được phép truy cập Web.</li>
+</ul>
+">
+
+<!ENTITY fileNotFound.title "Không tìm thấy tập tin">
+<!ENTITY fileNotFound.longDesc "
+<ul>
+ <li>Kiểm tra tên xem có lỗi gõ HOA-thường hay lỗi nào khác không.</li>
+ <li>Kiểm tra xem tập tin có bị chuyển, đổi tên hay bị xóa không.</li>
+</ul>
+">
+
+<!ENTITY fileAccessDenied.title "Truy cập tập tin bị từ chối">
+<!ENTITY fileAccessDenied.longDesc "<ul>
+ <li>Nó có thể đã bị xóa, chuyển đi, hay quyền truy cập tập tin đã bị chặn.</li>
+</ul>">
+
+<!ENTITY generic.title "Oái.">
+<!ENTITY generic.longDesc "
+<p>&brandShortName; không thể mở trang này vì nguyên nhân nào đó.</p>
+">
+
+<!ENTITY malformedURI.title "Địa chỉ không hợp lệ">
+<!ENTITY malformedURI.longDesc "
+<ul>
+ <li>Địa chỉ Web thường được viết như sau
+ <strong>http://www.example.com/</strong></li>
+ <li>Hãy chắc rằng bạn đang dùng dấu chéo lên (vd.
+ <strong>/</strong>).</li>
+</ul>
+">
+
+<!ENTITY netInterrupt.title "Kết nối bị ngắt">
+<!ENTITY netInterrupt.longDesc "&sharedLongDesc;">
+
+<!ENTITY notCached.title "Tài liệu bị Hết hạn">
+<!ENTITY notCached.longDesc "<p>Tài liệu được yêu cầu không có sẵn trong bộ đệm.</p><ul><li>Để phòng ngừa bảo mật, &brandShortName; không tự động yêu cầu lại các tài liệu nhạy cảm.</li><li>Nhấp vào Thử lại để yêu cầu lại tài liệu từ trang web.</li></ul>">
+
+<!ENTITY netOffline.title "Chế độ ngoại tuyến">
+<!ENTITY netOffline.longDesc2 "<ul>
+ <li>Bấm &quot;Thử lại&quot; để vào chế độ trực tuyến và tải lại trang.</li>
+</ul>
+">
+
+<!ENTITY contentEncodingError.title "Lỗi bảng mã">
+<!ENTITY contentEncodingError.longDesc "
+<ul>
+ <li>Vui lòng liên hệ với chủ trang web để báo họ vấn đề này.</li>
+</ul>
+">
+
+<!ENTITY unsafeContentType.title "Kiểu tập tin nguy hiểm">
+<!ENTITY unsafeContentType.longDesc "
+<ul>
+ <li>Vui lòng liên hệ với chủ trang web để báo họ vấn đề này.</li>
+</ul>
+">
+
+<!ENTITY netReset.title "Kết nối bị khởi tạo lại">
+<!ENTITY netReset.longDesc "&sharedLongDesc;">
+
+<!ENTITY netTimeout.title "Đã hết thời gian kết nối">
+<!ENTITY netTimeout.longDesc "&sharedLongDesc;">
+
+<!ENTITY unknownProtocolFound.title "Không nhận dạng được địa chỉ này">
+<!ENTITY unknownProtocolFound.longDesc "<ul>
+ <li>Bạn có thể cần cài đặt phần mềm khác để mở địa chỉ này.</li>
+</ul>">
+
+<!ENTITY proxyConnectFailure.title "Máy chủ proxy từ chối kết nối">
+<!ENTITY proxyConnectFailure.longDesc "
+<ul>
+ <li>Kiểm tra thiết lập proxy để chắc chắn rằng mọi thứ đều đúng.</li>
+ <li>Liên hệ với quản trị mạng của bạn để chắc chắn rằng máy chủ proxy vẫn đang hoạt động.</li>
+</ul>
+">
+
+<!ENTITY proxyResolveFailure.title "Không thể tìm thấy máy chủ proxy">
+<!ENTITY proxyResolveFailure.longDesc "
+<ul>
+ <li>Kiểm tra thiết lập proxy để chắc chắn rằng mọi thứ đều đúng.</li>
+ <li>Kiểm tra để chắc rằng máy tính của bạn vẫn đang có kết nối mạng.</li>
+ <li>Nếu máy tính hoặc mạng của bạn được bảo vệ bởi tường lửa hoặc proxy, hãy chắc chắn rằng &brandShortName; được phép truy cập Web.</li>
+</ul>
+">
+
+<!ENTITY redirectLoop.title "Trang không chuyển hướng đúng">
+<!ENTITY redirectLoop.longDesc "
+<ul>
+ <li>Vấn đề này thỉnh thoảng có thể xảy ra do vô hiệu hóa hoặc từ chối cookie.</li>
+</ul>
+">
+
+<!ENTITY unknownSocketType.title "Phản hồi bất ngờ từ máy chủ">
+<!ENTITY unknownSocketType.longDesc "
+<ul>
+ <li>Kiểm tra để chắc chắn rằng hệ thống của bạn có Trình quản lí Bảo mật Cá nhân.</li>
+ <li>Điều này có thể là do cấu hình không chuẩn trên máy chủ.</li>
+</ul>
+">
+
+<!ENTITY nssFailure2.title "Kết nối An toàn bị Thất bại">
+<!ENTITY nssFailure2.longDesc2 "<ul>
+ <li>Không thể hiển thị trang bạn đang cố xem vì tính xác thực của dữ liệu nhận được không thể được xác minh.</li>
+ <li>Vui lòng liên hệ với chủ sở hữu trang web để thông báo cho họ về vấn đề này.</li>
+</ul>">
+
+<!ENTITY nssBadCert.title "Kết nối an toàn bị thất bại">
+<!ENTITY nssBadCert.longDesc2 "
+<ul>
+ <li>Đây có thể là vấn đề ở phần cấu hình của máy chủ, hoặc có thể do ai đó đang cố mạo nhận là máy chủ.</li>
+ <li>Nếu bạn đã từng kết nối tới máy chủ này thành công trong quá khứ, lỗi này có thể chỉ là tạm thời, bạn có thể thử lại sau.</li>
+</ul>
+">
+
+<!ENTITY sharedLongDesc "
+<ul>
+ <li>Trang có thể bị gián đoạn tạm thời hoặc do quá tải. Hãy thử lại trong chốc lát.</li>
+ <li>Nếu bạn không thể mở bất kì trang nào, hãy kiểm tra kết nối mạng của bạn.</li>
+ <li>Nếu máy tính hoặc mạng của bạn được bảo vệ bởi tường lửa hoặc proxy, hãy chắc chắn rằng &brandShortName; được phép truy cập Web.</li>
+</ul>
+">
+
+<!ENTITY cspBlocked.title "Bị chặn bởi Chính sách bảo mật nội dung">
+<!ENTITY cspBlocked.longDesc "<p>&brandShortName; không tải trang này vì nó có một chính sách bảo vệ nội dung không cho phép việc tải theo cách này.</p>">
+
+<!ENTITY xfoBlocked.title "Bị chặn bởi chính sách X-Frame-Options">
+<!ENTITY xfoBlocked.longDesc "<p>&brandShortName; đã ngăn trang này tải trong ngữ cảnh này vì trang có chính sách X-Frame-Options mà nó không cho phép.</p>">
+
+<!ENTITY corruptedContentErrorv2.title "Lỗi nội dung bị hỏng">
+<!ENTITY corruptedContentErrorv2.longDesc "<p>Không thể hiển thị được trang mà bạn muốn xem vì có lỗi trong truyền tải dữ liệu.</p><ul><li>Vui lòng liên hệ chủ trang web để báo họ về vấn đề này.</li></ul>">
+
+<!ENTITY securityOverride.linkText "Hoặc bạn có thể thêm một ngoại lệ…">
+<!ENTITY securityOverride.getMeOutOfHereButton "Đưa tôi ra khỏi đây!">
+<!ENTITY securityOverride.exceptionButtonLabel "Thêm Ngoại Lệ…">
+
+<!-- LOCALIZATION NOTE (securityOverride.warningContent) - Do not translate the
+contents of the <button> tags. It uses strings already defined above. The
+button is included here (instead of netError.xhtml) because it exposes
+functionality specific to thunderbird. -->
+
+<!ENTITY securityOverride.warningContent "<p>Bạn không nên thêm ngoại lệ nếu bạn đang dùng một kết nối mạng mà bạn không tin tưởng hoàn toàn hoặc bạn không quen thấy cảnh báo cho máy chủ này.</p>
+
+<button id='getMeOutOfHereButton'>&securityOverride.getMeOutOfHereButton;</button>
+<button id='exceptionDialogButton'>&securityOverride.exceptionButtonLabel;</button>
+">
+
+<!ENTITY remoteXUL.title "XUL từ xa">
+<!ENTITY remoteXUL.longDesc "<p><ul><li>Vui lòng liên hệ với chủ trang web để báo họ vấn đề này.</li></ul></p>">
+
+<!ENTITY inadequateSecurityError.title "Kết nối của bạn không an toàn">
+<!-- LOCALIZATION NOTE (inadequateSecurityError.longDesc) - Do not translate
+ "NS_ERROR_NET_INADEQUATE_SECURITY". -->
+<!ENTITY inadequateSecurityError.longDesc "<p><span class='hostname'></span> sử dụng công nghệ bảo mật lỗi thời và dễ bị tấn công. Một kẻ tấn công có thể dễ dàng làm lộ những thông tin mà bạn nghĩ là an toàn. Người quản lý trang web trước tiên sẽ cần phải sửa lỗi máy chủ trước khi bạn có thể vào trang.</p><p>Mã lỗi: NS_ERROR_NET_INADEQUATE_SECURITY</p>">
+
+<!ENTITY blockedByPolicy.title "Trang bị chặn">
+
+<!ENTITY networkProtocolError.title "Lỗi giao thức mạng">
+<!ENTITY networkProtocolError.longDesc "<p>Không thể hiển thị trang bạn đang cố xem vì lỗi trong giao thức mạng đã được phát hiện.</p><ul><li>Vui lòng liên hệ với chủ sở hữu trang web để thông báo cho họ về sự cố này.</li></ul>">
diff --git a/l10n-vi/mail/chrome/overrides/profileDowngrade.dtd b/l10n-vi/mail/chrome/overrides/profileDowngrade.dtd
new file mode 100644
index 0000000000..607b34299c
--- /dev/null
+++ b/l10n-vi/mail/chrome/overrides/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 "Bạn đã chạy một phiên bản cũ hơn của &brandProductName;">
+<!ENTITY window.style "width: 490px;">
+
+<!ENTITY window.nosync2 "Phiên bản mới hơn của &brandProductName; có thể đã thực hiện các thay đổi đối với hồ sơ của bạn mà nó không còn tương thích với phiên bản cũ hơn này. Chỉ sử dụng cấu hình này với phiên bản mới hơn hoặc tạo cấu hình mới cho bản cài đặt &brandShortName;. Tạo một hồ sơ mới yêu cầu thiết lập lại tài khoản, lịch và các tiện ích mở rộng của bạn.">
+
+<!ENTITY window.moreinfo "Thông tin chi tiết…">
+<!ENTITY window.create "Tạo hồ sơ mới">
+<!ENTITY window.quit-win "Thoát">
+<!ENTITY window.quit-nonwin "Thoát">
diff --git a/l10n-vi/mail/crashreporter/crashreporter-override.ini b/l10n-vi/mail/crashreporter/crashreporter-override.ini
new file mode 100644
index 0000000000..473ae1869f
--- /dev/null
+++ b/l10n-vi/mail/crashreporter/crashreporter-override.ini
@@ -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/.
+
+# This file is in the UTF-8 encoding
+[Strings]
+# LOCALIZATION NOTE (CrashReporterProductErrorText2): The %s is replaced with a string containing detailed information.
+CrashReporterProductErrorText2=Thunderbird gặp sự cố và đã bị đổ vỡ. Chúng tôi sẽ cố gắng khôi phục các thẻ và cửa sổ của bạn khi nó khởi động lại.\n\nRất tiếc, trình báo cáo sự cố không thể gửi báo cáo.\n\nChi tiết: %s
+CrashReporterDescriptionText2=Thunderbird gặp sự cố và đã bị đổ vỡ. Chúng tôi sẽ cố gắng khôi phục các thẻ và cửa sổ của bạn khi nó khởi động lại.\n\nĐể giúp chúng tôi chẩn đoán và khắc phục sự cố, bạn có thể gửi cho chúng tôi báo cáo sự cố.
diff --git a/l10n-vi/mail/defines.inc b/l10n-vi/mail/defines.inc
new file mode 100644
index 0000000000..00370a67a7
--- /dev/null
+++ b/l10n-vi/mail/defines.inc
@@ -0,0 +1,9 @@
+#filter emptyLines
+
+#define MOZ_LANGPACK_CREATOR mozilla.org
+
+# If non-English locales wish to credit multiple contributors, uncomment this
+# variable definition and use the format specified.
+#define MOZ_LANGPACK_CONTRIBUTORS <em:contributor>Nguyễn Xuân Minh</em:contributor> <em:contributor>Quế Tùng</em:contributor> <em:contributor>Nguyễn Mạnh Hùng</em:contributor> <em:contributor>Huỳnh Hải Đăng</em:contributor> <em:contributor>Bùi Việt Khoa</em:contributor> <em:contributor>Trần Nguyễn Sơn</em:contributor> <em:contributor>Pierre Neter</em:contributor>
+
+#unfilter emptyLines
diff --git a/l10n-vi/mail/installer/custom.properties b/l10n-vi/mail/installer/custom.properties
new file mode 100644
index 0000000000..2eb2898e58
--- /dev/null
+++ b/l10n-vi/mail/installer/custom.properties
@@ -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/.
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+REG_APP_DESC=$BrandShortName là một ứng dụng email đầy đủ tính năng. $BrandShortName hỗ trợ các giao thức thư IMAP và POP, cũng như định dạng thư HTML. Kiểm soát thư rác tích hợp, khả năng RSS, tìm kiếm nhanh mạnh mẽ, kiểm tra chính tả khi bạn nhập, hộp thư đến toàn cầu và lọc thư nâng cao hoàn thiện bộ tính năng hiện đại của $BrandShortName.
+CONTEXT_OPTIONS=&Tùy chọn $BrandShortName
+CONTEXT_SAFE_MODE=&Chế độ an toàn $BrandShortName
+OPTIONS_PAGE_TITLE=Kiểu thiết lập
+OPTIONS_PAGE_SUBTITLE=Tùy chọn cài đặt
+SHORTCUTS_PAGE_TITLE=Thiết lập lối tắt
+SHORTCUTS_PAGE_SUBTITLE=Tạo các biểu tượng chương trình
+COMPONENTS_PAGE_TITLE=Thiết lập các thành phần tùy chọn
+COMPONENTS_PAGE_SUBTITLE=Thành phần tùy chọn được đề xuất
+OPTIONAL_COMPONENTS_DESC=Dịch vụ bảo trì sẽ cho phép bạn cập nhật $BrandShortName một cách âm thầm.
+MAINTENANCE_SERVICE_CHECKBOX_DESC=&Cài đặt dịch vụ bảo trì
+SUMMARY_PAGE_TITLE=Tóm tắt
+SUMMARY_PAGE_SUBTITLE=Sẵn sàng cài đặt $BrandShortName
+SUMMARY_INSTALLED_TO=$BrandShortName sẽ được cài vào thư mục sau:
+SUMMARY_REBOOT_REQUIRED_INSTALL=Có thể cần khởi động lại máy tính để hoàn tất việc cài đặt.
+SUMMARY_REBOOT_REQUIRED_UNINSTALL=Có thể cần khởi động lại máy tính để hoàn tất việc gỡ bỏ.
+SUMMARY_TAKE_DEFAULTS=&Sử dụng $BrandShortName làm chương trình gửi thư mặc định của tôi
+SUMMARY_INSTALL_CLICK=Nhấp Cài đặt để tiếp tục.
+SUMMARY_UPGRADE_CLICK=Nhấp Nâng cấp để tiếp tục.
+SURVEY_TEXT=&Vui lòng cho chúng tôi biết bạn nghĩ gì về $BrandShortName
+LAUNCH_TEXT=&Chạy $BrandShortName ngay bây giờ
+CREATE_ICONS_DESC=Tạo biểu tượng cho $BrandShortName:
+ICONS_DESKTOP=Trên &Desktop
+ICONS_STARTMENU=Trong thư mục Programs của trình đơn &Start
+ICONS_QUICKLAUNCH=Trong thanh Quick &Launch
+ICONS_TASKBAR=Trên thanh &tác vụ của tôi
+WARN_MANUALLY_CLOSE_APP_INSTALL=$BrandShortName phải được đóng trước khi tiến hành cài đặt.\n\nVui lòng đóng $BrandShortName để tiếp tục.
+WARN_MANUALLY_CLOSE_APP_UNINSTALL=$BrandShortName phải được đóng trước khi tiến hành gỡ bỏ.\n\nVui lòng đóng $BrandShortName để tiếp tục.
+WARN_MANUALLY_CLOSE_APP_LAUNCH=$BrandShortName đang chạy trên máy.\n\nVui lòng đóng $BrandShortName trước khi chạy phiên bản bạn vừa mới cài đặt.
+WARN_WRITE_ACCESS=Bạn không có quyền ghi vào thư mục cài đặt.\n\nNhấn OK để chọn thư mục khác.
+WARN_DISK_SPACE=Bạn không có đủ dung lượng đĩa để cài vào thư mục này.\n\nNhấn OK để chọn thư mục khác.
+WARN_MIN_SUPPORTED_OSVER_MSG=Xin lỗi, $BrandShortName không thể cài đặt. Phiên bản này của $BrandShortName yêu cầu ${MinSupportedVer} hoặc mới hơn. Hãy nhấn nút OK để biết thêm thông tin.
+WARN_MIN_SUPPORTED_CPU_MSG=Xin lỗi, $BrandShortName không thể cài đặt. Phiên bản này của $BrandShortName yêu cầu bộ xử lý có hỗ trợ ${MinSupportedCPU}. Hãy nhấn nút OK để biết thêm thông tin.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=Xin lỗi, $BrandShortName không thể cài đặt. Phiên bản này của $BrandShortName yêu cầu ${MinSupportedVer} hoặc mới hơn và bộ xử lý có hỗ trợ ${MinSupportedCPU}. Hãy nhấn nút OK để biết thêm thông tin.
+WARN_RESTART_REQUIRED_UNINSTALL=Máy tính của bạn phải được khởi động lại để hoàn tất việc gỡ bỏ $BrandShortName. Bạn có muốn khởi động lại ngay bây giờ?
+WARN_RESTART_REQUIRED_UPGRADE=Máy tính của bạn phải được khởi động lại để hoàn tất việc nâng cấp $BrandShortName. Bạn có muốn khởi động lại ngay bây giờ?
+ERROR_CREATE_DIRECTORY_PREFIX=Gặp lỗi khi tạo thư mục:
+ERROR_CREATE_DIRECTORY_SUFFIX=Nhấn “Hủy bỏ” (Cancel) để dừng việc cài đặt hoặc\n“Thử lại” (Retry) để thử lần nữa.
+
+UN_CONFIRM_PAGE_TITLE=Gỡ bỏ $BrandFullName
+UN_CONFIRM_PAGE_SUBTITLE=Gỡ bỏ $BrandFullName khỏi máy bạn.
+UN_CONFIRM_UNINSTALLED_FROM=$BrandShortName sẽ được gỡ bỏ khỏi thư mục sau:
+UN_CONFIRM_CLICK=Nhấn “Gỡ bỏ” để tiếp tục.
+
+BANNER_CHECK_EXISTING=Đang kiểm tra phiên bản…
+
+STATUS_INSTALL_APP=Đang cài đặt $BrandShortName…
+STATUS_INSTALL_LANG=Đang cài đặt tập tin ngôn ngữ (${AB_CD})…
+STATUS_UNINSTALL_MAIN=Đang gỡ bỏ $BrandShortName…
+STATUS_CLEANUP=Đang làm việc…
+
+# _DESC strings support approximately 65 characters per line.
+# One line
+OPTIONS_SUMMARY=Chọn kiểu cài đặt bạn muốn, rồi nhấn “Tiếp tục”.
+# One line
+OPTION_STANDARD_DESC=$BrandShortName sẽ được cài đặt cùng các tùy chọn thông dụng.
+OPTION_STANDARD_RADIO=&Chuẩn
+# Two lines
+OPTION_CUSTOM_DESC=Bạn có thể chọn từng tùy chọn riêng lẻ. Dành cho người dùng có kinh nghiệm.
+OPTION_CUSTOM_RADIO=Tùy &biến
+
+# LOCALIZATION NOTE:
+# The following text replaces the Install button text on the summary page.
+# Verify that the access key for InstallBtn (in override.properties) and
+# UPGRADE_BUTTON is not already used by SUMMARY_TAKE_DEFAULTS.
+UPGRADE_BUTTON=Nâng cấp (&U)
diff --git a/l10n-vi/mail/installer/mui.properties b/l10n-vi/mail/installer/mui.properties
new file mode 100644
index 0000000000..16bb17f656
--- /dev/null
+++ b/l10n-vi/mail/installer/mui.properties
@@ -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/.
+
+# To make the l10n tinderboxen see changes to this file you can change a value
+# name by adding - to the end of the name followed by chars (e.g. Branding-2).
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+MUI_TEXT_WELCOME_INFO_TITLE=Chào mừng đến với trình cài đặt $BrandFullNameDA
+MUI_TEXT_WELCOME_INFO_TEXT=Trình cài đặt này sẽ hướng dẫn bạn việc cài đặt $BrandFullNameDA.\n\nBạn nên đóng tất cả các chương trình khác trước khi bắt đầu Cài đặt. Điều này sẽ giúp việc cập nhật các tập tin hệ thống có thể thực hiện được mà không cần phải khởi động lại.\n\n$_CLICK
+MUI_TEXT_COMPONENTS_TITLE=Chọn các thành phần
+MUI_TEXT_COMPONENTS_SUBTITLE=Chọn những tính năng của $BrandFullNameDA mà bạn muốn cài đặt.
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE=Mô tả
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO=Di chuột trên một thành phần để thấy mô tả của nó.
+MUI_TEXT_DIRECTORY_TITLE=Chọn đường dẫn cài đặt
+MUI_TEXT_DIRECTORY_SUBTITLE=Chọn thư mục để cài đặt $BrandFullNameDA.
+MUI_TEXT_INSTALLING_TITLE=Đang cài đặt
+MUI_TEXT_INSTALLING_SUBTITLE=Vui lòng chờ trong khi $BrandFullNameDA đang được cài đặt.
+MUI_TEXT_FINISH_TITLE=Cài đặt hoàn tất
+MUI_TEXT_FINISH_SUBTITLE=Trình cài đặt đã hoàn thành.
+MUI_TEXT_ABORT_TITLE=Cài đặt bị hủy bỏ
+MUI_TEXT_ABORT_SUBTITLE=Trình cài đặt chưa được hoàn thành.
+MUI_BUTTONTEXT_FINISH=&Hoàn thành
+MUI_TEXT_FINISH_INFO_TITLE=Hoàn tất cài đặt $BrandFullNameDA
+MUI_TEXT_FINISH_INFO_TEXT=$BrandFullNameDA đã được cài vào máy bạn.\n\nNhấn “Hoàn thành” để đóng trình cài đặt này.
+MUI_TEXT_FINISH_INFO_REBOOT=Máy tính phải được khởi động lại để có thể hoàn tất việc cài đặt $BrandFullNameDA. Bạn có muốn khởi động lại ngay bây giờ?
+MUI_TEXT_FINISH_REBOOTNOW=Khởi động lại ngay
+MUI_TEXT_FINISH_REBOOTLATER=Tôi muốn khởi động lại sau
+MUI_TEXT_STARTMENU_TITLE=Chọn thư mục trên trình đơn Start
+MUI_TEXT_STARTMENU_SUBTITLE=Chọn một thư mục trên trình đơn Start cho các lối tắt của $BrandFullNameDA.
+MUI_INNERTEXT_STARTMENU_TOP=Chọn thư mục trên trình đơn Start mà bạn muốn dùng để tạo lối tắt cho chương trình. Bạn cũng có thể nhập tên để tạo thư mục mới.
+MUI_TEXT_ABORTWARNING=Bạn có thật sự muốn thoát trình cài đặt $BrandFullName?
+MUI_UNTEXT_WELCOME_INFO_TITLE=Chào mừng đến với trình gỡ bỏ $BrandFullNameDA
+MUI_UNTEXT_WELCOME_INFO_TEXT=Trình gỡ bỏ này sẽ giúp bạn gỡ bỏ $BrandFullNameDA.\n\nTrước khi bắt đầu gỡ bỏ, hãy chắc chắn rằng $BrandFullNameDA đang không chạy.\n\n$_CLICK
+MUI_UNTEXT_CONFIRM_TITLE=Gỡ bỏ $BrandFullNameDA
+MUI_UNTEXT_CONFIRM_SUBTITLE=Gỡ bỏ $BrandFullNameDA khỏi máy bạn.
+MUI_UNTEXT_UNINSTALLING_TITLE=Đang gỡ bỏ
+MUI_UNTEXT_UNINSTALLING_SUBTITLE=Vui lòng chờ trong khi $BrandFullNameDA đang được gỡ bỏ.
+MUI_UNTEXT_FINISH_TITLE=Gỡ bỏ hoàn tất
+MUI_UNTEXT_FINISH_SUBTITLE=Trình gỡ bỏ đã hoàn thành.
+MUI_UNTEXT_ABORT_TITLE=Gỡ cài đặt bị hủy bỏ
+MUI_UNTEXT_ABORT_SUBTITLE=Gỡ bỏ không thành công.
+MUI_UNTEXT_FINISH_INFO_TITLE=Hoàn tất gỡ bỏ $BrandFullNameDA
+MUI_UNTEXT_FINISH_INFO_TEXT=$BrandFullNameDA đã được gỡ bỏ khỏi máy bạn.\n\nNhấn “Hoàn thành” để đóng trình pháp sư này.
+MUI_UNTEXT_FINISH_INFO_REBOOT=Máy tính phải được khởi động lại để có thể hoàn tất việc gỡ bỏ $BrandFullNameDA. Bạn có muốn khởi động lại ngay bây giờ?
+MUI_UNTEXT_ABORTWARNING=Bạn có thật sự muốn thoát trình gỡ bỏ $BrandFullName?
diff --git a/l10n-vi/mail/installer/override.properties b/l10n-vi/mail/installer/override.properties
new file mode 100644
index 0000000000..eb8c1602dc
--- /dev/null
+++ b/l10n-vi/mail/installer/override.properties
@@ -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/.
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+# Strings that require a space at the end should be enclosed with double
+# quotes and the double quotes will be removed. To add quotes to the beginning
+# and end of a string enclose the strin with an additional double quote
+# (e.g. ""This will include quotes"").
+
+SetupCaption=Trình cài đặt $BrandFullName
+UninstallCaption=Trình gỡ bỏ $BrandFullName
+BackBtn=< &Quay lại
+NextBtn=&Tiếp tục >
+AcceptBtn=Tôi &chấp nhận các điều khoản trong giấy phép thỏa thuận
+DontAcceptBtn=Tôi &không chấp nhận các điều khoản trong giấy phép thỏa thuận
+InstallBtn=&Cài đặt
+UninstallBtn=&Gỡ bỏ
+CancelBtn=Hủy bỏ
+CloseBtn=Đón&g
+BrowseBtn=&Duyệt…
+ShowDetailsBtn=&Hiện chi tiết
+ClickNext=Nhấn “Tiếp tục” để tiếp tục.
+ClickInstall=Nhấn “Cài đặt” để bắt đầu cài đặt.
+ClickUninstall=Nhấn “Gỡ bỏ” để bắt đầu gỡ bỏ.
+Completed=Hoàn tất
+LicenseTextRB=Vui lòng xem thỏa thuận giấy phép trước khi cài đặt $BrandFullNameDA. Nếu bạn chấp nhận tất cả điều khoản của bản thỏa thuận, hãy chọn ô đầu tiên bên dưới. $_CLICK
+ComponentsText=Chọn các thành phần bạn muốn cài đặt và bỏ chọn các thành phần mà bạn không muốn. $_CLICK
+ComponentsSubText2_NoInstTypes=Chọn các thành phần muốn cài đặt:
+DirText=Trình cài đặt sẽ cài đặt $BrandFullNameDA vào thư mục sau. Để cài vào thư mục khác, nhấn Duyệt và chọn một thư mục khác. $_CLICK
+DirSubText=Thư mục đích
+DirBrowseText=Chọn thư mục để cài đặt $BrandFullNameDA:
+SpaceAvailable="Dung lượng hiện có: "
+SpaceRequired="Dung lượng yêu cầu: "
+UninstallingText=$BrandFullNameDA sẽ được gỡ bỏ khỏi thư mục sau. $_CLICK
+UninstallingSubText=Đang gỡ bỏ khỏi:
+FileError=Gặp lỗi khi mở tập tin để ghi: \r\n\r\n$0\r\n\r\nNhấn “Hủy bỏ” (Cancel) để dừng cài đặt,\r\n“Thử lại” (Retry) để thử lần nữa, hoặc\r\n“Bỏ qua” (Ignore) để bỏ qua tập tin này.
+FileError_NoIgnore=Gặp lỗi khi mở tập tin để ghi: \r\n\r\n$0\r\n\r\nNhấn “Thử lại” (Retry) để thử lần nữa, hoặc\r\n“Hủy bỏ” (Cancel) để dừng việc cài đặt.
+CantWrite="Không thể ghi: "
+CopyFailed=Thao tác sao chép bị thất bại
+CopyTo="Sao chép đến "
+Registering="Đang đăng kí: "
+Unregistering="Đang bỏ đăng kí: "
+SymbolNotFound="Không thể tìm biểu tượng: "
+CouldNotLoad="Không thể tải: "
+CreateFolder="Tạo thư mục: "
+CreateShortcut="Tạo lối tắt: "
+CreatedUninstaller="Đã tạo trình gỡ bỏ: "
+Delete="Xóa tập tin: "
+DeleteOnReboot="Xóa khi khởi động lại: "
+ErrorCreatingShortcut="Gặp lỗi khi tạo lối tắt: "
+ErrorCreating="Gặp lỗi khi tạo: "
+ErrorDecompressing=Gặp lỗi khi giải nén dữ liệu! Có thể trình cài đặt đã bị hỏng?
+ErrorRegistering=Lỗi đăng kí DLL
+ExecShell="ExecShell: "
+Exec="Thực thi: "
+Extract="Giải nén: "
+ErrorWriting="Giải nén: lỗi khi ghi vào tập tin "
+InvalidOpcode=Trình cài đặt bị hỏng: mã tác vụ không hợp lệ
+NoOLE="Không có OLE cho: "
+OutputFolder="Thư mục đầu ra: "
+RemoveFolder="Gỡ bỏ thư mục: "
+RenameOnReboot="Đổi tên khi khởi động lại: "
+Rename="Đổi tên: "
+Skipped="Đã bỏ qua: "
+CopyDetails=Sao chép chi tiết vào bộ nhớ tạm
+LogInstall=Lưu nhật kí tiến trình cài đặt
+Byte=B
+Kilo=K
+Mega=M
+Giga=G
diff --git a/l10n-vi/mail/isp/isps.txt b/l10n-vi/mail/isp/isps.txt
new file mode 100644
index 0000000000..36bc4884b5
--- /dev/null
+++ b/l10n-vi/mail/isp/isps.txt
@@ -0,0 +1 @@
+gmail
diff --git a/l10n-vi/mail/messenger/aboutAddonsExtra.ftl b/l10n-vi/mail/messenger/aboutAddonsExtra.ftl
new file mode 100644
index 0000000000..d6eefacb5e
--- /dev/null
+++ b/l10n-vi/mail/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 = Tùy chọn tiện ích
+
+add-on-search-alternative-button-label = Tìm một tiện ích mở rộng thay thế
+
+atn-addons-heading-search-input =
+ .placeholder = Tìm kiếm addons.thunderbird.net
+
diff --git a/l10n-vi/mail/messenger/aboutDialog.ftl b/l10n-vi/mail/messenger/aboutDialog.ftl
new file mode 100644
index 0000000000..f7b6ea50a5
--- /dev/null
+++ b/l10n-vi/mail/messenger/aboutDialog.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/.
+
+about-update-whats-new = Có gì mới
+aboutDialog-title =
+ .title = Giới thiệu về { -brand-full-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 }-bit)
+# 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 }-bit)
diff --git a/l10n-vi/mail/messenger/aboutImport.ftl b/l10n-vi/mail/messenger/aboutImport.ftl
new file mode 100644
index 0000000000..e25364a31c
--- /dev/null
+++ b/l10n-vi/mail/messenger/aboutImport.ftl
@@ -0,0 +1,282 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Nhập
+
+export-page-title = Xuất
+
+## Header
+
+import-start = Công cụ nhập
+
+import-start-title = Nhập cài đặt hoặc dữ liệu từ ứng dụng hoặc tập tin.
+
+import-start-description = Chọn nguồn mà bạn muốn nhập. Sau đó, bạn sẽ được yêu cầu chọn dữ liệu nào cần được nhập.
+
+import-from-app = Nhập từ ứng dụng
+
+import-file = Nhập từ một tập tin
+
+import-file-title = Chọn một tập tin để nhập nội dung của nó.
+
+import-file-description = Chọn để nhập hồ sơ, sổ địa chỉ hoặc lịch đã sao lưu trước đó.
+
+import-address-book-title = Nhập tập tin sổ địa chỉ
+
+import-calendar-title = Nhập tập tin lịch
+
+export-profile = Xuất
+
+## Buttons
+
+button-back = Quay lại
+
+button-continue = Tiếp tục
+
+button-export = Xuất
+
+button-finish = Hoàn thành
+
+## 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 = Nhập từ cài đặt khác của { app-name-thunderbird }
+
+source-thunderbird-description = Nhập cài đặt, bộ lọc, thư và dữ liệu khác từ hồ sơ { app-name-thunderbird }.
+
+source-seamonkey = Nhập từ cài đặt { app-name-seamonkey }
+
+source-seamonkey-description = Nhập cài đặt, bộ lọc, thư và dữ liệu khác từ hồ sơ { app-name-seamonkey }.
+
+source-outlook = Nhập từ { app-name-outlook }
+
+source-outlook-description = Nhập tài khoản, sổ địa chỉ và thư từ { app-name-outlook }.
+
+source-becky = Nhập từ { app-name-becky }
+
+source-becky-description = Nhập sổ địa chỉ và thư từ { app-name-becky }.
+
+source-apple-mail = Nhập từ { app-name-apple-mail }
+
+source-apple-mail-description = Nhập thư từ { app-name-apple-mail }.
+
+source-file2 = Nhập từ một tập tin
+
+source-file-description = Chọn một tập tin để nhập sổ địa chỉ, lịch hoặc sao lưu hồ sơ (tập tin ZIP).
+
+## Import from file selections
+
+file-profile2 = Nhập hồ sơ sao lưu
+
+file-profile-description = Chọn một hồ sơ Thunderbird đã sao lưu trước đó
+
+file-calendar = Nhập lịch
+
+file-calendar-description = Chọn tập tin chứa lịch hoặc sự kiện đã xuất (.ics)
+
+file-addressbook = Nhập sổ địa chỉ
+
+file-addressbook-description = Chọn một tập tin chứa các sổ địa chỉ và danh sách liên hệ đã xuất
+
+## Import from app profile steps
+
+from-app-thunderbird = Nhập từ hồ sơ { app-name-thunderbird }
+
+from-app-seamonkey = Nhập từ hồ sơ { app-name-seamonkey }
+
+from-app-outlook = Nhập từ { app-name-outlook }
+
+from-app-becky = Nhập từ { app-name-becky }
+
+from-app-apple-mail = Nhập từ { app-name-apple-mail }
+
+profiles-pane-title-thunderbird = Nhập cài đặt và dữ liệu từ hồ sơ { app-name-thunderbird }.
+
+profiles-pane-title-seamonkey = Nhập cài đặt và dữ liệu từ hồ sơ { app-name-seamonkey }.
+
+profiles-pane-title-outlook = Nhập dữ liệu từ { app-name-outlook }.
+
+profiles-pane-title-becky = Nhập dữ liệu từ { app-name-becky }.
+
+profiles-pane-title-apple-mail = Nhập thư từ { app-name-apple-mail }.
+
+profile-source = Nhập từ hồ sơ
+
+# $profileName (string) - name of the profile
+profile-source-named = Nhập từ hồ sơ <strong>"{ $profileName }"</strong>
+
+profile-file-picker-directory = Chọn một thư mục hồ sơ
+
+profile-file-picker-archive = Chọn một tập tin <strong>ZIP</strong>
+
+profile-file-picker-archive-description = Tập tin ZIP phải nhỏ hơn 2GB.
+
+profile-file-picker-archive-title = Chọn một tập tin ZIP (nhỏ hơn 2GB)
+
+items-pane-title2 = Chọn những gì để nhập:
+
+items-pane-directory = Thư mục:
+
+items-pane-profile-name = Tên hồ sơ:
+
+items-pane-checkbox-accounts = Tài khoản và cài đặt
+
+items-pane-checkbox-address-books = Sổ địa chỉ
+
+items-pane-checkbox-calendars = Lịch
+
+items-pane-checkbox-mail-messages = Thư
+
+items-pane-override = Mọi dữ liệu hiện có hoặc giống hệt nhau sẽ không bị ghi đè.
+
+## Import from address book file steps
+
+import-from-addr-book-file-description = Chọn định dạng tập tin chứa dữ liệu sổ địa chỉ của bạn.
+
+addr-book-csv-file = Tệp được phân tách bằng dấu phẩy hoặc tab (.csv, .tsv)
+
+addr-book-ldif-file = Tập tin LDIF (.ldif)
+
+addr-book-vcard-file = Tập tin vCard (.vcf, .vcard)
+
+addr-book-sqlite-file = Tập tin cơ sở dữ liệu SQLite (.sqlite)
+
+addr-book-mab-file = Tập tin cơ sở dữ liệu Mork (.mab)
+
+addr-book-file-picker = Chọn một tập tin sổ địa chỉ
+
+addr-book-csv-field-map-title = Khớp tên trường
+
+addr-book-csv-field-map-desc = Chọn các trường sổ địa chỉ tương ứng với các trường nguồn. Bỏ chọn các trường bạn không muốn nhập.
+
+addr-book-directories-title = Chọn nơi để nhập dữ liệu đã chọn
+
+addr-book-directories-pane-source = Tập tin nguồn:
+
+# $addressBookName (string) - name of the new address book that would be created.
+addr-book-import-into-new-directory2 = Tạo một thư mục mới có tên là <strong>"{ $addressBookName }"</strong>
+
+# $addressBookName (string) - name of the address book to import into
+addr-book-summary-title = Nhập dữ liệu đã chọn vào thư mục "{ $addressBookName }"
+
+# $addressBookName (string) - name of the address book that will be created.
+addr-book-summary-description = Sổ địa chỉ mới có tên "{ $addressBookName }" sẽ được tạo.
+
+## Import from calendar file steps
+
+import-from-calendar-file-desc = Chọn tập tin iCalendar (.ics) bạn muốn nhập.
+
+calendar-items-title = Chọn các mục để nhập.
+
+calendar-items-loading = Đang tải các mục…
+
+calendar-items-filter-input =
+ .placeholder = Lọc các mục…
+
+calendar-select-all-items = Chọn tất cả
+
+calendar-deselect-all-items = Bỏ chọn tất cả
+
+calendar-target-title = Chọn nơi để nhập các mục đã chọn.
+
+# $targetCalendar (string) - name of the new calendar that would be created
+calendar-import-into-new-calendar2 = Tạo lịch mới có tên <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 ->
+ *[other] Nhập { $itemCount } mục vào lịch "{ $targetCalendar }"
+ }
+
+# $targetCalendar (string) - name of the calendar that will be created
+calendar-summary-description = Lịch mới có tên "{ $targetCalendar }" sẽ được tạo.
+
+## Import dialog
+
+# $progressPercent (string) - percent formatted progress (for example "10%")
+progress-pane-importing2 = Đang nhập… { $progressPercent }
+
+# $progressPercent (string) - percent formatted progress (for example "10%")
+progress-pane-exporting2 = Đang xuất… { $progressPercent }
+
+progress-pane-finished-desc2 = Hoàn tất.
+
+error-pane-title = Lỗi
+
+error-message-zip-file-too-big2 = Tập tin ZIP đã chọn lớn hơn 2GB. Vui lòng giải nén nó trước, sau đó nhập từ thư mục đã giải nén.
+
+error-message-extract-zip-file-failed2 = Không giải nén được tập tin ZIP. Vui lòng giải nén nó theo cách thủ công, sau đó nhập từ thư mục đã giải nén để thay thế.
+
+error-message-failed = Nhập không thành công đột ngột, có thể xem thêm thông tin trong bảng điều khiển.
+
+error-failed-to-parse-ics-file = Không tìm thấy mục có thể nhập trong tập tin.
+
+error-export-failed = Đã xảy ra lỗi không mong muốn khi xuất, có thể xem thêm thông tin trong bảng điều khiển lỗi.
+
+error-message-no-profile = Không tìm thấy hồ sơ.
+
+## <csv-field-map> element
+
+csv-first-row-contains-headers = Hàng đầu tiên chứa tên trường
+
+csv-source-field = Trường nguồn
+
+csv-source-first-record = Bản ghi đầu tiên
+
+csv-source-second-record = Bản ghi thứ hai
+
+csv-target-field = Trường sổ địa chỉ
+
+## Export tab
+
+export-profile-title = Xuất tài khoản, thư, sổ địa chỉ và cài đặt sang tập tin ZIP.
+
+export-profile-description = Nếu hồ sơ hiện tại của bạn lớn hơn 2GB, chúng tôi khuyên bạn nên tự sao lưu hồ sơ đó.
+
+export-open-profile-folder = Mở thư mục hồ sơ
+
+export-file-picker2 = Xuất sang tập tin ZIP
+
+export-brand-name = { -brand-product-name }
+
+## Summary pane
+
+summary-pane-title = Dữ liệu sẽ được nhập
+
+summary-pane-start = Bắt đầu nhập
+
+summary-pane-warning = { -brand-product-name } sẽ cần được khởi động lại khi quá trình nhập hoàn tất.
+
+summary-pane-start-over = Khởi động lại công cụ nhập
+
+## Footer area
+
+footer-help = Cần trợ giúp?
+
+footer-import-documentation = Nhập tài liệu
+
+footer-export-documentation = Xuất tài liệu
+
+footer-support-forum = Diễn đàn hỗ trợ
+
+## Step navigation on top of the wizard pages
+
+step-list =
+ .aria-label = Các bước nhập
+
+step-confirm = Xác nhận
+
+# Variables:
+# $number (number) - step number
+step-count = { $number }
diff --git a/l10n-vi/mail/messenger/aboutProfilesExtra.ftl b/l10n-vi/mail/messenger/aboutProfilesExtra.ftl
new file mode 100644
index 0000000000..dfb5acd926
--- /dev/null
+++ b/l10n-vi/mail/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 = Khởi chạy hồ sơ
diff --git a/l10n-vi/mail/messenger/aboutRights.ftl b/l10n-vi/mail/messenger/aboutRights.ftl
new file mode 100644
index 0000000000..915a7592df
--- /dev/null
+++ b/l10n-vi/mail/messenger/aboutRights.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/.
+
+rights-title = Về quyền lợi của bạn
+rights-intro = { -brand-full-name } là phần mềm tự do mã nguồn mở, được xây dựng bởi một cộng đồng gồm hàng nghìn người trên khắp thế giới. Có vài điều mà bạn nên biết:
+rights-intro-point-1 = { -brand-short-name } cung cấp cho bạn theo điều khoản của <a data-l10n-name="mozilla-public-license-link">giấy phép công cộng Mozilla</a>. Điều này có nghĩa là bạn có thể sử dụng, sao chép và phân phối { -brand-short-name } đến người khác. Bạn cũng được hoan nghênh trong việc chỉnh sửa mã nguồn của { -brand-short-name } cho phù hợp với nhu cầu của mình. Giấy phép công cộng Mozilla cũng cho bạn quyền phân phối phiên bản được chỉnh sửa đó.
+rights-intro-point-2 =
+ Bạn không được cấp bất kỳ quyền hoặc giấy phép nhãn hiệu nào cho các
+ nhãn hiệu của tổ chức Mozilla hoặc bất kỳ bên nào, bao gồm nhưng không
+ giới hạn tên hoặc logo Thunderbird. Thông tin bổ sung về nhãn hiệu có thể
+ được tìm thấy <a data-l10n-name="mozilla-trademarks-link">tại đây</a>.
+rights-intro-point-3 = Một số tính năng trong { -brand-short-name }, như Trình Báo Cáo Lỗi, cho bạn tùy chọn cung cấp phản hồi tới { -vendor-short-name }. Bằng việc chọn gửi phản hồi, bạn cho { -vendor-short-name } quyền sử dụng phản hồi đó để cải tiến sản phẩm, công bố phản hồi trên trang web, và phân phối phản hồi.
+rights-intro-point-4 = Cách chúng tôi dùng thông tin cá nhân của bạn và phản hồi được gửi tới { -vendor-short-name } thông qua { -brand-short-name } được mô tả trong <a data-l10n-name="mozilla-privacy-policy-link">chính sách riêng tư { -brand-short-name }</a>.
+rights-intro-point-4-unbranded = Bất kì chính sách riêng tư thích hợp nào cho sản phẩm này sẽ được liệt kê tại đây.
+rights-intro-point-5 = Một số tính năng { -brand-short-name } sử dụng dịch vụ thông tin dựa trên web, tuy nhiên, chúng tôi không thể đảm bảo chúng chính xác 100% hoặc không có lỗi. Chi tiết hơn, bao gồm thông tin về cách vô hiệu hóa tính năng dùng những dịch vụ này, có thể được tìm thấy trong <a data-l10n-name="mozilla-service-terms-link">điều khoản dịch vụ</a>.
+rights-intro-point-5-unbranded = Nếu sản phẩm này kết hợp các dịch vụ web, bất kì điều khoản dịch vụ thích hợp nào cho (các) dịch vụ cần phải được liên kết với <a data-l10n-name="mozilla-website-services-link">Các Dịch Vụ Đối Với Trang Web</a>.
+rights-intro-point-6 = Để có thể phát một số loại nội dung video, { -brand-short-name } cần tải xuống một số mô đun giải mã nội dung từ một bên thứ ba.
+rights-webservices-header = Dịch vụ Thông tin Dựa trên Web { -brand-full-name }
+rights-webservices2 =
+ { -brand-full-name } sử dụng các dịch vụ thông tin dựa trên web (“dịch vụ”) để
+ cung cấp một số tính năng được cung cấp cho bạn sử dụng với phiên bản
+ nhị phân này của { -brand-short-name } theo các điều khoản được mô tả bên
+ dưới. Nếu bạn không muốn sử dụng một hoặc nhiều Dịch vụ hoặc các điều
+ khoản dưới đây không được chấp nhận, bạn có thể vô hiệu hóa tính năng
+ hoặc (các) dịch vụ. Bạn có thể tìm thấy hướng dẫn về cách tắt một tính năng
+ hoặc dịch vụ cụ thể <a data-l10n-name="mozilla-disable-service-link">tại đây</a>.
+ Các tính năng và dịch vụ khác có thể tắt trong cài đặt ứng dụng.
+rights-locationawarebrowsing = <strong>Duyệt web Nhận diện Vị trí: </strong>luôn có sẵn. Không có thông tin địa điểm nào được gửi đi mà không có sự cho phép của bạn. Nếu bạn muốn vô hiệu hóa hoàn toàn tính năng này, làm theo các bước sau:
+rights-locationawarebrowsing-term-1 = Trong thanh URL, gõ <code>about:config</code>
+rights-locationawarebrowsing-term-2 = Gõ geo.enabled
+rights-locationawarebrowsing-term-3 = Nhấp đôi vào tùy chỉnh geo.enabled
+rights-locationawarebrowsing-term-4 = Duyệt web Nhận diện Địa điểm bây giờ đã bị vô hiệu hóa
+rights-webservices-unbranded = Tổng quan về các dịch vụ đối với trang web mà sản phẩm này kết hợp, cùng với các chỉ dẫn về cách vô hiệu hóa chúng, nếu thích hợp, sẽ được bao gồm ở đây.
+rights-webservices-term-unbranded = Bất kì điều khoản dịch vụ nào cho sản phẩm này sẽ được liệt kê tại đây.
+rights-webservices-term-1 = { -vendor-short-name } và những bên đóng góp, những bên cấp phép và những đối tác làm việc để cung cấp Dịch Vụ mới và chính xác nhất. Tuy nhiên, chúng tôi không thể đảm bảo rằng thông tin này là toàn diện và không có lỗi. Ví dụ, Dịch vụ Duyệt web An toàn có thể không nhận diện các trang nguy hiểm và có thể nhận diện nhầm các trang an toàn, và trong Dịch vụ Nhận diện Địa điểm, tất cả địa điểm trả lại bởi nhà cung cấp dịch vụ của chúng tôi chỉ là ước tính và chúng tôi lẫn nhà cung cấp dịch vụ không đảm bảo tính chính xác của các địa điểm đó.
+rights-webservices-term-2 = { -vendor-short-name } có thể ngừng hoặc thay đổi Dịch Vụ theo ý mình.
+rights-webservices-term-3 = Bạn được hoan nghênh sử dụng những dịch vụ này trong phiên bản { -brand-short-name } đi kèm, và { -vendor-short-name } trao cho bạn quyền làm vậy. { -vendor-short-name } và những bên cấp phép của nó bảo lưu tất cả quyền khác trong dịch vụ. Những điều khoản này không nhằm giới hạn bất kì quyền nào được trao theo giấy phép mã nguồn mở áp dụng cho { -brand-short-name } và phiên bản mã nguồn tương ứng của { -brand-short-name }.
+rights-webservices-term-4 = <strong>Dịch Vụ được cung cấp theo "nguyên trạng" { -vendor-short-name }, những người đóng góp, các bên cung cấp giấy phép và các bên phân phối không chịu trách nhiệm (trực tiếp hay gián tiếp), bảo đảm bất kỳ điều gì, bao gồm cả việc kinh doanh Dịch Vụ hay đảm bảo Dịch Vụ phục vụ mục đích của bạn. Bạn chịu hoàn toàn rủi ro về chất lượng và hiệu năng của Dịch Vụ khi sử dụng Dịch Vụ cho bất kỳ mục đích nào. Trong một vài phạm vi pháp lý, việc miễn trừ hoặc giới hạn đối với các trách nhiệm gián tiếp là không được phép, vì vậy văn bản từ chối trách nhiệm này có thể không áp dụng đối với bạn.</strong>
+rights-webservices-term-5 = <strong>Trừ khi được yêu cầu bởi luật pháp, { -vendor-short-name }, những người đóng góp, các bên cung cấp giấy phép và phân phối sẽ không có nghĩa vụ đối với bất kì tổn hại gián tiếp, đặc biệt, vô tình, mang tính hậu quả, mang tính trừng phạt hoặc cảnh cáo nào xảy ra bên ngoài hoặc trong bất kì cách thức nào liên quan đến việc sử dụng { -brand-short-name } và Dịch Vụ. Tổng các nghĩa vụ tập hợp trong các điều khoản này không vượt quá $500 (năm trăm đôla). Một số luật xét xử không cho phép sự miễn trừ hoặc giới hạn đối với những tổn hại nào đó, cho nên sự miễn trừ và giới hạn này có thể không áp dụng đối với bạn.</strong>
+rights-webservices-term-6 = { -vendor-short-name } đôi khi có thể cập nhật các điều khoản này khi cần thiết. Các điều khoản này không được sửa đổi hoặc hủy bỏ nếu không có thỏa thuận viết tay của { -vendor-short-name }.
+rights-webservices-term-7 = Những điều khoản này được chi phối theo luật của tiểu bang California, Hoa Kỳ, không bao gồm sự mâu thuẫn của nó với các điều khoản pháp lí. Nếu có bất kì phần nào trong các điều khoản bị xem là bất hợp lệ và không bắt buộc, các phần còn lại sẽ vẫn có đầy đủ tính hiệu lực và bắt buộc. Khi xảy ra mâu thuẫn giữa phiên bản được chuyển ngữ của các điều khoản này và phiên bản tiếng Anh, phiên bản tiếng Anh sẽ là phiên bản chủ đạo.
diff --git a/l10n-vi/mail/messenger/aboutSupportCalendar.ftl b/l10n-vi/mail/messenger/aboutSupportCalendar.ftl
new file mode 100644
index 0000000000..d6d183a594
--- /dev/null
+++ b/l10n-vi/mail/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 = Cài đặt lịch
+calendars-table-heading-property = Tên
+calendars-table-heading-value = Giá trị
+calendars-table-name = Tên
+calendars-table-type = Kiểu
+calendars-table-disabled = Đã tắt
+calendars-table-username = Tên đăng nhập
+calendars-table-uri = URI
+calendars-table-refreshinterval = Khoảng thời gian làm mới
+calendars-table-readonly = Chỉ đọc
+calendars-table-suppressalarms = Hạn chế thông báo
+calendars-table-cache-enabled = Đã bật bộ nhớ đệm
+calendars-table-imip-identity = Danh tính iMIP
+calendars-table-imip-identity-disabled = iMIP bị tắt
+calendars-table-imip-identity-account = Tài khoản iMIP
+calendars-table-organizerid = Id người tổ chức
+calendars-table-forceemailscheduling = Buộc lập lịch email
+calendars-table-capabilities-alarms-popup-supported = Thông báo bật lên được hỗ trợ
+calendars-table-capabilities-alarms-oninviations-supported = Thông báo về lời mời được hỗ trợ
+calendars-table-capabilities-alarms-maxcount = Thông báo tối đa cho mỗi sự kiện
+calendars-table-capabilities-attachments-supported = Tập tin đính kèm được hỗ trợ
+calendars-table-capabilities-categories-maxcount = Danh mục tối đa
+calendars-table-capabilities-privacy-supported = Trạng thái quyền riêng tư được hỗ trợ
+calendars-table-capabilities-priority-supported = Ưu tiên được hỗ trợ
+calendars-table-capabilities-events-supported = Sự kiện được hỗ trợ
+calendars-table-capabilities-tasks-supported = Tác vụ được hỗ trợ
+calendars-table-capabilities-timezones-floating-supported = Giờ địa phương được hỗ trợ
+calendars-table-capabilities-timezones-utc-supported = Giờ UTC/GMT được hỗ trợ
+calendars-table-capabilities-autoschedule-supported = Lập lịch tự động được hỗ trợ
diff --git a/l10n-vi/mail/messenger/aboutSupportChat.ftl b/l10n-vi/mail/messenger/aboutSupportChat.ftl
new file mode 100644
index 0000000000..cfdd52bc24
--- /dev/null
+++ b/l10n-vi/mail/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 = Tài khoản trò chuyện
+chat-table-heading-account = ID
+chat-table-heading-protocol = Giao thức
+chat-table-heading-name = Tên
+chat-table-heading-actions = Hành động
+chat-table-copy-debug-log = Sao chép nhật ký gỡ lỗi
+ .title = Sao chép lỗi và nhật ký khác từ tài khoản trò chuyện này vào khay nhớ tạm. Có thể chứa thông tin cá nhân như tin nhắn trò chuyện.
diff --git a/l10n-vi/mail/messenger/aboutSupportMail.ftl b/l10n-vi/mail/messenger/aboutSupportMail.ftl
new file mode 100644
index 0000000000..f8e4772177
--- /dev/null
+++ b/l10n-vi/mail/messenger/aboutSupportMail.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/.
+
+accounts-title = Tài khoản thư và tin tức
+show-private-data-main-text = Bao gồm tên tài khoản
+show-private-data-explanation-text = (thông tin có thể nhận diện cá nhân)
+accounts-ID = ID
+accounts-name = Tên
+accounts-incoming-server = Máy chủ nhận thư
+accounts-outgoing-servers = Máy chủ gửi thư
+accounts-server-name = Tên
+accounts-conn-security = Bảo mật kết nối
+accounts-auth-method = Phương thức xác thực
+accounts-default = Mặc định?
+identity-name = Danh tính
+
+send-via-email = Gửi qua email
+
+app-basics-telemetry = Dữ liệu từ xa
diff --git a/l10n-vi/mail/messenger/accountCentral.ftl b/l10n-vi/mail/messenger/accountCentral.ftl
new file mode 100644
index 0000000000..5f5cb17a3b
--- /dev/null
+++ b/l10n-vi/mail/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 = Chào mừng đến với { -brand-full-name }
+account-settings = Cài đặt tài khoản
+
+# $accounts (Number) - the number of configured accounts
+setup-title = Chọn những gì để thiết lập
+about-title = Về { -brand-full-name }
+resources-title = Tài nguyên
+
+release-notes =
+ .title = Về { -brand-full-name }
+
+email-label = Email
+ .aria-label = Kết nối với tài khoản email hiện tại của bạn
+email-description = { -brand-short-name } cho phép bạn kết nối với tài khoản email hiện tại của mình, để đọc email của bạn một cách thuận tiện và hiệu quả từ trong ứng dụng.
+
+calendar-label = Lịch
+ .aria-label = Tạo một lịch mới
+calendar-description = { -brand-short-name } cho phép bạn xử lý các sự kiện và giúp bạn tổ chức. Kết nối với lịch từ xa sẽ giữ cho tất cả các sự kiện của bạn được đồng bộ hóa trên tất cả các thiết bị của bạn.
+
+chat-label = Trò chuyện
+ .aria-label = Kết nối với tài khoản trò chuyện của bạn
+chat-description = { -brand-short-name } cho phép bạn kết nối với nhiều tài khoản nhắn tin tức thời, cung cấp hỗ trợ cho các nền tảng khác nhau.
+
+filelink-label = Filelink
+ .aria-label = Thiết lập Filelink
+filelink-description = { -brand-short-name } cho phép bạn thiết lập tài khoản đám mây filelink thuận tiện để dễ dàng gửi các tập tin đính kèm lớn.
+
+addressbook-label = Sổ địa chỉ
+ .aria-label = Tạo một sổ địa chỉ mới
+addressbook-description = { -brand-short-name } cho phép bạn sắp xếp tất cả các địa chỉ liên lạc của bạn trong một sổ địa chỉ. Bạn cũng có thể kết nối với sổ địa chỉ từ xa để giữ cho tất cả các địa chỉ liên lạc của bạn được đồng bộ hóa.
+
+feeds-label = Nguồn cấp
+ .aria-label = Kết nối đến nguồn cấp
+feeds-description = { -brand-short-name } cho phép bạn kết nối với nguồn cấp dữ liệu RSS/Atom để nhận tin tức và cập nhật từ khắp nơi.
+
+newsgroups-label = Nhóm tin
+ .aria-label = Kết nối đến một nhóm tin
+newsgroups-description = { -brand-short-name } cho phép bạn kết nối với tất cả các nhóm tin bạn muốn.
+
+import-title = Nhập dữ liệu từ chương trình khác…
+import-paragraph2 = { -brand-short-name } cho phép bạn nhập thư, mục nhập sổ địa chỉ, đăng ký nguồn cấp dữ liệu, cài đặt và/hoặc bộ lọc từ các chương trình thư khác và các định dạng sổ địa chỉ phổ biến.
+
+import-label = Nhập
+ .aria-label = Nhập dữ liệu từ các chương trình khác
+
+about-paragraph = Thunderbird là ứng dụng email và lịch trình đa nền tảng, mã nguồn mở hàng đầu, miễn phí cho doanh nghiệp và sử dụng cá nhân. Chúng tôi muốn nó được an toàn và trở nên tốt hơn. Việc quyên góp sẽ cho phép chúng tôi thuê các nhà phát triển, trả tiền cho cơ sở hạ tầng và tiếp tục cải thiện.
+
+about-paragraph-consider-donation = <b>Thunderbird được tài trợ bởi những người dùng như bạn! Nếu bạn thích Thunderbird, vui lòng xem xét việc quyên góp.</b> Cách tốt nhất để bạn đảm bảo Thunderbird vẫn khả dụng là <a data-l10n-name="donation-link">thực hiện quyên góp</a>.
+
+explore-link = Khám phá các tính năng
+support-link = Hỗ trợ
+involved-link = Tham gia
+developer-link = Tài liệu dành cho nhà phát triển
+
+read = Đọc thư
+compose = Viết thư mới
+search = Tìm kiếm thư
+filter = Quản lí bộ lọc thư
+nntp-subscription = Quản lí đăng kí nhóm tin
+rss-subscription = Quản lý đăng ký theo dõi
+e2e = Mã hóa đầu cuối
diff --git a/l10n-vi/mail/messenger/accountManager.ftl b/l10n-vi/mail/messenger/accountManager.ftl
new file mode 100644
index 0000000000..e1e75dff08
--- /dev/null
+++ b/l10n-vi/mail/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 = Cài đặt { -brand-short-name }
+
+open-addons-sidebar-button = Tiện ích mở rộng và chủ đề
+
+account-action-add-newsgroup-account =
+ .label = Thêm tài khoản nhóm tin…
+ .accesskey = N
+
+server-change-restart-required = Khởi động lại là bắt buộc để áp dụng thay đổi tên máy chủ hoặc tên người dùng.
+
+edit-vcard-dialog-accept-button = Lưu
+ .accesskey = S
+edit-vcard-dialog-cancel-button = Hủy bỏ
+ .accesskey = C
diff --git a/l10n-vi/mail/messenger/accountProvisioner.ftl b/l10n-vi/mail/messenger/accountProvisioner.ftl
new file mode 100644
index 0000000000..7e571e4dd3
--- /dev/null
+++ b/l10n-vi/mail/messenger/accountProvisioner.ftl
@@ -0,0 +1,77 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Nhận địa chỉ email mới từ nhà cung cấp dịch vụ
+
+provisioner-searching-icon =
+ .alt = Đang tìm kiếm…
+
+account-provisioner-title = Tạo một địa chỉ email mới
+
+account-provisioner-description = Sử dụng các đối tác đáng tin cậy của chúng tôi để có được một địa chỉ email mới riêng tư và an toàn.
+
+account-provisioner-start-help = Các cụm từ tìm kiếm được sử dụng được gửi đến { -vendor-short-name } (<a data-l10n-name="mozilla-privacy-link">Chính sách riêng tư</a>) và các nhà cung cấp email bên thứ 3 <strong>mailfence.com</strong> (<a data-l10n-name="mailfence-privacy-link">Chính sách riêng tư</a>, <a data-l10n-name="mailfence-tou-link">Điều khoản sử dụng</a>) và <strong>gandi.net</strong> (<a data-l10n-name="gandi-privacy-link">Chính sách riêng tư</a>, <a data-l10n-name="gandi-tou-link">Điều khoản sử dụng</a>) để tìm các địa chỉ email có sẵn.
+
+account-provisioner-mail-account-title = Mua một địa chỉ email mới
+
+account-provisioner-mail-account-description = Thunderbird hợp tác với <a data-l10n-name="mailfence-home-link">Mailfence</a> để cung cấp cho bạn một email mới riêng tư và an toàn. Chúng tôi tin rằng mọi người nên có một email an toàn.
+
+account-provisioner-domain-title = Mua một email và miền của riêng bạn
+
+account-provisioner-domain-description = Thunderbird hợp tác với <a data-l10n-name="gandi-home-link">Gandi</a> để cung cấp cho bạn một miền tùy chỉnh. Điều này cho phép bạn sử dụng bất kỳ địa chỉ nào trên miền đó.
+
+## Forms
+
+account-provisioner-mail-input =
+ .placeholder = Tên, nickname hoặc cụm từ tìm kiếm khác của bạn
+
+account-provisioner-domain-input =
+ .placeholder = Tên, nickname hoặc cụm từ tìm kiếm khác của bạn
+
+account-provisioner-search-button = Tìm kiếm
+
+account-provisioner-button-cancel = Hủy bỏ
+
+account-provisioner-button-existing = Sử dụng tài khoản email hiện có
+
+account-provisioner-button-back = Quay lại
+
+## Notifications
+
+account-provisioner-fetching-provisioners = Đang truy xuất từ ​​nhà cung cấp dịch vụ…
+
+account-provisioner-connection-issues = Không thể kết nối với máy chủ đăng ký của chúng tôi. Vui lòng kiểm tra kết nối của bạn.
+
+account-provisioner-searching-email = Đang tìm kiếm các tài khoản email có sẵn…
+
+account-provisioner-searching-domain = Đang tìm kiếm các miền khả dụng…
+
+account-provisioner-searching-error = Không thể tìm thấy bất kỳ địa chỉ nào để đề xuất. Hãy thử thay đổi các cụm từ tìm kiếm.
+
+## Illustrations
+
+account-provisioner-step1-image =
+ .title = Chọn tài khoản để tạo
+
+## Search results
+
+# Variables:
+# $count (Number) - The number of domains found during search.
+account-provisioner-results-title =
+ { $count ->
+ *[other] Đã tìm thấy { $count } địa chỉ khả dụng cho:
+ }
+
+account-provisioner-mail-results-caption = Bạn có thể thử tìm kiếm nickname hoặc bất kỳ thuật ngữ nào khác để tìm thêm email.
+
+account-provisioner-domain-results-caption = Bạn có thể thử tìm kiếm nickname hoặc bất kỳ thuật ngữ nào khác để tìm thêm miền.
+
+account-provisioner-free-account = Miễn phí
+
+account-provision-price-per-year = { $price } mỗi năm
+
+account-provisioner-all-results-button = Hiển thị tất cả kết quả
+
+account-provisioner-open-in-tab-img =
+ .title = Mở trong một thẻ mới
diff --git a/l10n-vi/mail/messenger/accountcreation/accountHub.ftl b/l10n-vi/mail/messenger/accountcreation/accountHub.ftl
new file mode 100644
index 0000000000..8aae4d37c1
--- /dev/null
+++ b/l10n-vi/mail/messenger/accountcreation/accountHub.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/.
+
+
+## Header
+
+account-hub-brand = { -brand-full-name }
+account-hub-welcome-line = Chào mừng đến với <span data-l10n-name="brand-name">{ -brand-full-name }</span>
+account-hub-title = Trung tâm tài khoản
+
+## Footer
+
+account-hub-release-notes = Ghi chú phát hành
+account-hub-support = Hỗ trợ
+account-hub-donate = Quyên góp
diff --git a/l10n-vi/mail/messenger/accountcreation/accountSetup.ftl b/l10n-vi/mail/messenger/accountcreation/accountSetup.ftl
new file mode 100644
index 0000000000..42fd5a091f
--- /dev/null
+++ b/l10n-vi/mail/messenger/accountcreation/accountSetup.ftl
@@ -0,0 +1,424 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Thiết lập tài khoản
+
+## Header
+
+account-setup-title = Thiết lập địa chỉ email hiện tại của bạn
+
+account-setup-description =
+ Để sử dụng địa chỉ email hiện tại của bạn, hãy điền thông tin đăng nhập của bạn.<br/>
+ { -brand-product-name } sẽ tự động tìm kiếm cấu hình máy chủ đang hoạt động và được đề xuất.
+
+account-setup-secondary-description = { -brand-product-name } sẽ tự động tìm kiếm cấu hình máy chủ đang hoạt động và được đề xuất.
+
+account-setup-success-title = Tạo tài khoản thành công
+
+account-setup-success-description = Bây giờ bạn có thể sử dụng tài khoản này với { -brand-short-name }.
+
+account-setup-success-secondary-description = Bạn có thể cải thiện trải nghiệm bằng cách kết nối các dịch vụ liên quan và định cấu hình cài đặt tài khoản nâng cao.
+
+## Form fields
+
+account-setup-name-label = Tên đầy đủ của bạn
+ .accesskey = n
+
+# 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 = John Doe
+
+account-setup-name-info-icon =
+ .title = Tên của bạn, như được hiển thị cho những người khác
+
+
+account-setup-name-warning-icon =
+ .title = { account-setup-name-warning }
+
+account-setup-email-label = Địa chỉ email
+ .accesskey = E
+
+account-setup-email-input =
+ .placeholder = john.doe@example.com
+
+account-setup-email-info-icon =
+ .title = Địa chỉ email hiện tại của bạn
+
+account-setup-email-warning-icon =
+ .title = { account-setup-email-warning }
+
+account-setup-password-label = Mật khẩu
+ .accesskey = P
+ .title = Tùy chọn, sẽ chỉ được sử dụng để xác thực tên người dùng
+
+account-provisioner-button = Tạo một địa chỉ email mới
+ .accesskey = G
+
+account-setup-password-toggle-show =
+ .title = Hiển thị mật khẩu dưới dạng văn bản rõ ràng
+
+account-setup-password-toggle-hide =
+ .title = Ẩn mật khẩu
+
+account-setup-remember-password = Ghi nhớ mật khẩu
+ .accesskey = m
+
+account-setup-exchange-label = Thông tin đăng nhập của bạn
+ .accesskey = l
+
+# YOURDOMAIN refers to the Windows domain in ActiveDirectory. yourusername refers to the user's account name in Windows.
+account-setup-exchange-input =
+ .placeholder = TENMIENCUABAN\tennguoidungcuaban
+
+# 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 = Thông tin đăng nhập trong miền
+
+## Action buttons
+
+account-setup-button-cancel = Hủy bỏ
+ .accesskey = a
+
+account-setup-button-manual-config = Cấu hình thủ công
+ .accesskey = m
+
+account-setup-button-stop = Dừng
+ .accesskey = S
+
+account-setup-button-retest = Kiểm tra lại
+ .accesskey = t
+
+account-setup-button-continue = Tiếp tục
+ .accesskey = C
+
+account-setup-button-done = Xong
+ .accesskey = D
+
+## Notifications
+
+account-setup-looking-up-settings = Đang tìm cấu hình…
+
+account-setup-looking-up-settings-guess = Đang tìm cấu hình: Đang thử các tên máy chủ phổ biến…
+
+account-setup-looking-up-settings-half-manual = Đang tìm cấu hình: Đang dò tìm máy chủ…
+
+account-setup-looking-up-disk = Đang tìm cấu hình: Bộ cài đặt { -brand-short-name }…
+
+account-setup-looking-up-isp = Đang tìm cấu hình: Nhà cung cấp dịch vụ email…
+
+# 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 = Đang tìm cấu hình: Cơ sở dữ liệu Mozilla ISP…
+
+account-setup-looking-up-mx = Đang tìm cấu hình: Tên miền thư đến…
+
+account-setup-looking-up-exchange = Đang tìm cấu hình: Máy chủ Exchange…
+
+account-setup-checking-password = Đang kiểm tra mật khẩu…
+
+account-setup-installing-addon = Đang tải xuống và cài đặt tiện ích mở rộng…
+
+account-setup-success-half-manual = Các cài đặt sau được tìm thấy bằng cách thăm dò máy chủ nhất định:
+
+account-setup-success-guess = Cấu hình được tìm thấy bằng cách thử các tên máy chủ phổ biến.
+
+account-setup-success-guess-offline = Bạn hiện đang ngoại tuyến. Chúng tôi đã thử đoán một số cài đặt nhưng bạn sẽ cần nhập đúng cài đặt.
+
+account-setup-success-password = Mật khẩu OK
+
+account-setup-success-addon = Đã cài đặt thành công tiện ích mở rộng
+
+# 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 = Cấu hình được tìm thấy trong cơ sở dữ liệu Mozilla ISP.
+
+account-setup-success-settings-disk = Cấu hình được tìm thấy trong bộ cài đặt { -brand-short-name }.
+
+account-setup-success-settings-isp = Cấu hình được tìm thấy tại nhà cung cấp email.
+
+# Note: Microsoft Exchange is a product name.
+account-setup-success-settings-exchange = Cấu hình được tìm thấy cho máy chủ Microsoft Exchange.
+
+## Illustrations
+
+account-setup-step1-image =
+ .title = Thiết lập ban đầu
+
+account-setup-step2-image =
+ .title = Đang tải…
+
+account-setup-step3-image =
+ .title = Cấu hình được tìm thấy
+
+account-setup-step4-image =
+ .title = Lỗi kết nối
+
+account-setup-step5-image =
+ .title = Đã tạo tài khoản
+
+account-setup-privacy-footnote2 = Thông tin đăng nhập của bạn sẽ chỉ được lưu trữ cục bộ trên máy tính của bạn.
+
+account-setup-selection-help = Không chắc chắn những gì để chọn?
+
+account-setup-selection-error = Cần trợ giúp?
+
+account-setup-success-help = Không chắc chắn về các bước tiếp theo của mình?
+
+account-setup-documentation-help = Tài liệu thiết lập
+
+account-setup-forum-help = Diễn đàn hỗ trợ
+
+account-setup-privacy-help = Chính sách riêng tư
+
+account-setup-getting-started = Bắt đầu
+
+## Results area
+
+# Variables:
+# $count (Number) - Number of available protocols.
+account-setup-results-area-title =
+ { $count ->
+ *[other] Các cấu hình có sẵn
+ }
+
+account-setup-result-imap-description = Giữ cho các thư mục và email của bạn được đồng bộ hóa trên máy chủ của bạn
+
+account-setup-result-pop-description = Giữ các thư mục và email của bạn trên máy tính của bạn
+
+# Note: Exchange, Office365 are the name of products.
+account-setup-result-exchange2-description = Sử dụng máy chủ Microsoft Exchange hoặc các dịch vụ đám mây Office365
+
+account-setup-incoming-title = Hộp thư đến
+
+account-setup-outgoing-title = Hộp thư đi
+
+account-setup-username-title = Tên người dùng
+
+account-setup-exchange-title = Máy chủ
+
+account-setup-result-no-encryption = Không mã hóa
+
+account-setup-result-ssl = SSL/TLS
+
+account-setup-result-starttls = STARTTLS
+
+account-setup-result-outgoing-existing = Sử dụng máy chủ gửi thư SMTP hiện tại
+
+# 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 = Nhận thư: { $incoming }, Gửi thư: { $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 = Quá trình xác thực thất bại. Thông tin đăng nhập đã nhập không chính xác hoặc cần có tên người dùng riêng để đăng nhập. Tên người dùng này thường là thông tin đăng nhập miền Windows của bạn có hoặc không có miền (ví dụ: janedoe hoặc AD\\janedoe)
+
+account-setup-credentials-wrong = Quá trình xác thực thất bại. Vui lòng kiểm tra tên người dùng và mật khẩu
+
+account-setup-find-settings-failed = { -brand-short-name } không tìm thấy cài đặt cho tài khoản email của bạn
+
+account-setup-exchange-config-unverifiable = Không thể xác minh cấu hình. Nếu tên người dùng và mật khẩu của bạn chính xác, có khả năng quản trị viên máy chủ đã vô hiệu hóa cấu hình đã chọn cho tài khoản của bạn. Hãy thử chọn một giao thức khác.
+
+account-setup-provisioner-error = Đã xảy ra lỗi khi thiết lập tài khoản mới của bạn trong { -brand-short-name }. Vui lòng thử thiết lập tài khoản của bạn theo cách thủ công bằng thông tin đăng nhập của bạn.
+
+## Manual configuration area
+
+account-setup-manual-config-title = Cài đặt máy chủ
+
+account-setup-incoming-server-legend = Máy chủ nhận thư
+
+account-setup-protocol-label = Giao thức:
+
+account-setup-hostname-label = Tên máy chủ:
+
+account-setup-port-label = Cổng:
+ .title = Đặt cổng thành 0 để tự động phát hiện
+
+account-setup-auto-description = { -brand-short-name } sẽ thử tự động phát hiện các trường bị bỏ trống.
+
+account-setup-ssl-label = Bảo mật kết nối:
+
+account-setup-outgoing-server-legend = Máy chủ gửi thư
+
+## Incoming/Outgoing SSL Authentication options
+
+ssl-autodetect-option = Tự động phát hiện
+
+ssl-no-authentication-option = Không xác thực
+
+ssl-cleartext-password-option = Mật khẩu bình thường
+
+ssl-encrypted-password-option = Mật khẩu được mã hóa
+
+## Incoming/Outgoing SSL options
+
+ssl-noencryption-option = Không
+
+account-setup-auth-label = Phương thức xác thực:
+
+account-setup-username-label = Tên đăng nhập:
+
+account-setup-advanced-setup-button = Cấu hình nâng cao
+ .accesskey = A
+
+## Warning insecure server dialog
+
+account-setup-insecure-title = Cảnh báo!
+
+account-setup-insecure-incoming-title = Cài đặt nhận thư:
+
+account-setup-insecure-outgoing-title = Cài đặt gửi thư:
+
+# 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> không sử dụng mã hóa.
+
+account-setup-warning-cleartext-details = Máy chủ thư không an toàn không sử dụng kết nối được mã hóa để bảo vệ mật khẩu và thông tin cá nhân của bạn. Bằng cách kết nối với máy chủ này, bạn có thể bị tiết lộ mật khẩu và thông tin cá nhân của mình.
+
+account-setup-insecure-server-checkbox = Tôi hiểu các rủi ro
+ .accesskey = u
+
+account-setup-insecure-description = { -brand-short-name } có thể cho phép bạn truy cập thư của mình bằng cách sử dụng các cấu hình được cung cấp. Tuy nhiên, bạn nên liên hệ với quản trị viên hoặc nhà cung cấp email của mình về những kết nối không đúng này. Xem <a data-l10n-name="thunderbird-faq-link">câu hỏi thường gặp về Thunderbird</a> để biết thêm thông tin.
+
+insecure-dialog-cancel-button = Thay đổi cài đặt
+ .accesskey = S
+
+insecure-dialog-confirm-button = Xác nhận
+ .accesskey = C
+
+## 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 } đã tìm thấy thông tin thiết lập tài khoản của bạn trên { $domain }. Bạn có muốn tiếp tục và gửi thông tin đăng nhập của mình không?
+
+exchange-dialog-confirm-button = Đăng nhập
+
+exchange-dialog-cancel-button = Huỷ bỏ
+
+## Dismiss account creation dialog
+
+exit-dialog-title = Không có tài khoản email nào được cấu hình
+
+exit-dialog-description = Bạn có chắc chắn muốn hủy quá trình thiết lập không? Bạn vẫn có thể sử dụng { -brand-short-name } mà không cần tài khoản email nhưng nhiều tính năng sẽ không khả dụng.
+
+account-setup-no-account-checkbox = Sử dụng { -brand-short-name } mà không cần tài khoản email
+ .accesskey = U
+
+exit-dialog-cancel-button = Tiếp tục thiết lập
+ .accesskey = C
+
+exit-dialog-confirm-button = Thoát thiết lập
+ .accesskey = E
+
+## Alert dialogs
+
+account-setup-creation-error-title = Lỗi khi tạo tài khoản
+
+account-setup-error-server-exists = Máy chủ nhận thư đã tồn tại.
+
+account-setup-confirm-advanced-title = Xác nhận cấu hình nâng cao
+
+account-setup-confirm-advanced-description = Hộp thoại này sẽ bị đóng và một tài khoản với các cài đặt hiện tại sẽ được tạo, ngay cả khi cấu hình không chính xác. Bạn có muốn tiếp tục?
+
+## Addon installation section
+
+account-setup-addon-install-title = Cài đặt
+
+account-setup-addon-install-intro = Một tiện ích mở rộng của bên thứ ba có thể cho phép bạn truy cập tài khoản email của mình trên máy chủ này:
+
+account-setup-addon-no-protocol = Máy chủ email này không hỗ trợ các giao thức mở. { account-setup-addon-install-intro }
+
+## Success view
+
+account-setup-settings-button = Cài đặt tài khoản
+
+account-setup-encryption-button = Mã hóa đầu cuối
+
+account-setup-signature-button = Thêm chữ ký
+
+account-setup-dictionaries-button = Tải xuống từ điển
+
+account-setup-address-book-carddav-button = Kết nối đến sổ địa chỉ CardDAV
+
+account-setup-address-book-ldap-button = Kết nối đến sổ địa chỉ LDAP
+
+account-setup-calendar-button = Kết nối đến lịch từ xa
+
+account-setup-linked-services-title = Kết nối các dịch vụ được liên kết của bạn
+
+account-setup-linked-services-description = { -brand-short-name } đã phát hiện thấy các dịch vụ khác được liên kết với tài khoản email của bạn.
+
+account-setup-no-linked-description = Thiết lập các dịch vụ khác để tận dụng tối đa trải nghiệm { -brand-short-name } của bạn.
+
+# Variables:
+# $count (Number) - The number of address books found during autoconfig.
+account-setup-found-address-books-description =
+ { $count ->
+ *[other] { -brand-short-name } đã tìm thấy { $count } sổ địa chỉ được liên kết với tài khoản email của bạn.
+ }
+
+# Variables:
+# $count (Number) - The number of calendars found during autoconfig.
+account-setup-found-calendars-description =
+ { $count ->
+ *[other] { -brand-short-name } đã tìm thấy { $count } lịch được liên kết với tài khoản email của bạn.
+ }
+
+account-setup-button-finish = Hoàn thành
+ .accesskey = F
+
+account-setup-looking-up-address-books = Đang tra cứu sổ địa chỉ…
+
+account-setup-looking-up-calendars = Đang tra cứu lịch…
+
+account-setup-address-books-button = Sổ địa chỉ
+
+account-setup-calendars-button = Lịch
+
+account-setup-connect-link = Kết nối
+
+account-setup-existing-address-book = Đã kết nối
+ .title = Sổ địa chỉ đã được kết nối trước đó
+
+account-setup-existing-calendar = Đã kết nối
+ .title = Lịch đã được kết nối trước đó
+
+account-setup-connect-all-calendars = Kết nối tất cả các lịch
+
+account-setup-connect-all-address-books = Kết nối tất cả các sổ địa chỉ
+
+## Calendar synchronization dialog
+
+calendar-dialog-title = Kết nối lịch
+
+calendar-dialog-cancel-button = Hủy bỏ
+ .accesskey = C
+
+calendar-dialog-confirm-button = Kết nối
+ .accesskey = n
+
+account-setup-calendar-name-label = Tên
+
+account-setup-calendar-name-input =
+ .placeholder = Lịch của tôi
+
+account-setup-calendar-color-label = Màu
+
+account-setup-calendar-refresh-label = Làm mới
+
+account-setup-calendar-refresh-manual = Thủ công
+
+account-setup-calendar-refresh-interval =
+ { $count ->
+ *[other] Mỗi { $count } phút một lần
+ }
+
+account-setup-calendar-read-only = Chỉ đọc
+ .accesskey = R
+
+account-setup-calendar-show-reminders = Hiển thị lời nhắc
+ .accesskey = S
+
+account-setup-calendar-offline-support = Hỗ trợ ngoại tuyến
+ .accesskey = O
diff --git a/l10n-vi/mail/messenger/addressbook/abCardDAVDialog.ftl b/l10n-vi/mail/messenger/addressbook/abCardDAVDialog.ftl
new file mode 100644
index 0000000000..c861425be5
--- /dev/null
+++ b/l10n-vi/mail/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 = Sổ địa chỉ CardDAV mới
+
+carddav-dialog =
+ .buttonlabelaccept = Tiếp tục
+ .buttonaccesskeyaccept = C
+
+carddav-username-label =
+ .value = Tên đăng nhập:
+ .accesskey = U
+carddav-location-label =
+ .value = Địa chỉ:
+ .accesskey = L
+carddav-location =
+ .default-placeholder = URL hoặc tên máy chủ của máy chủ sổ địa chỉ
+
+carddav-loading = Đang tìm cấu hình…
+carddav-known-incompatible = { $url } được biết là không tương thích với { -brand-short-name }.
+carddav-connection-error = Không thể kết nối.
+carddav-none-found = Không tìm thấy sổ địa chỉ để thêm cho tài khoản được chỉ định.
+carddav-already-added = Tất cả các sổ địa chỉ cho tài khoản được chỉ định đã được thêm vào.
+
+carddav-available-books = Sổ địa chỉ có sẵn:
diff --git a/l10n-vi/mail/messenger/addressbook/abCardDAVProperties.ftl b/l10n-vi/mail/messenger/addressbook/abCardDAVProperties.ftl
new file mode 100644
index 0000000000..18630862dd
--- /dev/null
+++ b/l10n-vi/mail/messenger/addressbook/abCardDAVProperties.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/.
+
+carddav-url-label =
+ .value = URL CardDAV:
+ .accesskey = V
+
+carddav-refreshinterval-label =
+ .label = Đồng bộ hoá:
+ .accesskey = S
+
+# Variables:
+# $minutes (integer) - Number of minutes between address book synchronizations
+carddav-refreshinterval-minutes-value =
+ .label =
+ { $minutes ->
+ *[other] mỗi { $minutes } phút
+ }
+
+# Variables:
+# $hours (integer) - Number of hours between address book synchronizations
+carddav-refreshinterval-hours-value =
+ .label =
+ { $hours ->
+ *[other] mỗi { $hours } giờ
+ }
+
+carddav-readonly-label =
+ .label = Chỉ đọc
+ .accesskey = R
diff --git a/l10n-vi/mail/messenger/addressbook/aboutAddressBook.ftl b/l10n-vi/mail/messenger/addressbook/aboutAddressBook.ftl
new file mode 100644
index 0000000000..6aa55e56d8
--- /dev/null
+++ b/l10n-vi/mail/messenger/addressbook/aboutAddressBook.ftl
@@ -0,0 +1,241 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Sổ địa chỉ
+
+## Toolbar
+
+about-addressbook-toolbar-new-address-book =
+ .label = Sổ địa chỉ mới
+about-addressbook-toolbar-add-carddav-address-book =
+ .label = Thêm sổ địa chỉ CardDAV
+about-addressbook-toolbar-add-ldap-address-book =
+ .label = Thêm sổ địa chỉ LDAP
+about-addressbook-toolbar-new-contact =
+ .label = Liên hệ mới
+about-addressbook-toolbar-new-list =
+ .label = Danh sách mới
+about-addressbook-toolbar-import =
+ .label = Nhập
+
+## Books
+
+all-address-books-row =
+ .title = Tất cả sổ địa chỉ
+all-address-books = Tất cả các sổ địa chỉ
+# 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 = Tổng số liên hệ trong { $name }: { $count }
+# Variables:
+# $count (Number) - The number of contacts in all address books.
+about-addressbook-card-count-all = Tổng số liên hệ trong tất cả sổ địa chỉ: { $count }
+about-addressbook-books-context-properties =
+ .label = Thuộc tính
+about-addressbook-books-context-edit-list =
+ .label = Chỉnh sửa danh sách
+about-addressbook-books-context-synchronize =
+ .label = Đồng bộ hoá
+about-addressbook-books-context-edit =
+ .label = Chỉnh sửa
+about-addressbook-books-context-print =
+ .label = In…
+about-addressbook-books-context-export =
+ .label = Xuất…
+about-addressbook-books-context-delete =
+ .label = Xóa
+about-addressbook-books-context-remove =
+ .label = Xóa
+about-addressbook-books-context-startup-default =
+ .label = Thư mục khởi động mặc định
+about-addressbook-confirm-delete-book-title = Xóa sổ địa chỉ
+# Variables:
+# $name (String) - Name of the address book to be deleted.
+about-addressbook-confirm-delete-book = Bạn có chắc chắn muốn xóa { $name } và tất cả các địa chỉ liên hệ của nó không?
+about-addressbook-confirm-remove-remote-book-title = Xóa sổ địa chỉ
+# Variables:
+# $name (String) - Name of the remote address book to be removed.
+about-addressbook-confirm-remove-remote-book = Bạn có chắc chắn muốn xóa { $name } không?
+
+## Cards
+
+# Variables:
+# $name (String) - Name of the address book that will be searched.
+about-addressbook-search =
+ .placeholder = Tìm kiếm { $name }
+about-addressbook-search-all =
+ .placeholder = Tìm kiếm tất cả các sổ địa chỉ
+about-addressbook-sort-button2 =
+ .title = Tùy chọn hiển thị liệt kê
+about-addressbook-name-format-display =
+ .label = Tên hiển thị
+about-addressbook-name-format-firstlast =
+ .label = Tên Họ
+about-addressbook-name-format-lastfirst =
+ .label = Họ, Tên
+about-addressbook-sort-name-ascending =
+ .label = Sắp xếp theo tên (A > Z)
+about-addressbook-sort-name-descending =
+ .label = Sắp xếp theo tên (Z > A)
+about-addressbook-sort-email-ascending =
+ .label = Sắp xếp theo địa chỉ e-mail (A > Z)
+about-addressbook-sort-email-descending =
+ .label = Sắp xếp theo địa chỉ e-mail (Z > A)
+about-addressbook-horizontal-layout =
+ .label = Chuyển sang bố cục ngang
+about-addressbook-vertical-layout =
+ .label = Chuyển sang bố cục dọc
+about-addressbook-table-layout =
+ .label = Bố cục bảng
+
+## Card column headers
+## Each string is listed here twice, and the values should match.
+
+about-addressbook-column-header-generatedname = Tên
+about-addressbook-column-label-generatedname =
+ .label = { about-addressbook-column-header-generatedname }
+about-addressbook-column-header-emailaddresses = Địa chỉ email
+about-addressbook-column-label-emailaddresses =
+ .label = { about-addressbook-column-header-emailaddresses }
+about-addressbook-column-header-nickname = Biệt danh
+about-addressbook-column-label-nickname =
+ .label = { about-addressbook-column-header-nickname }
+about-addressbook-column-header-phonenumbers = Số điện thoại
+about-addressbook-column-label-phonenumbers =
+ .label = { about-addressbook-column-header-phonenumbers }
+about-addressbook-column-header-addresses = Địa chỉ
+about-addressbook-column-label-addresses =
+ .label = { about-addressbook-column-header-addresses }
+about-addressbook-column-header-title = Chức danh
+about-addressbook-column-label-title =
+ .label = { about-addressbook-column-header-title }
+about-addressbook-column-header-department = Bộ phận
+about-addressbook-column-label-department =
+ .label = { about-addressbook-column-header-department }
+about-addressbook-column-header-organization = Tổ chức
+about-addressbook-column-label-organization =
+ .label = { about-addressbook-column-header-organization }
+about-addressbook-column-header-addrbook = Sổ địa chỉ
+about-addressbook-column-label-addrbook =
+ .label = { about-addressbook-column-header-addrbook }
+about-addressbook-cards-context-write =
+ .label = Viết
+about-addressbook-confirm-delete-mixed-title = Xóa liên hệ và danh sách
+# Variables:
+# $count (Number) - The number of contacts and lists to be deleted. Always greater than 1.
+about-addressbook-confirm-delete-mixed = Bạn có chắc chắn muốn xóa { $count } liên hệ và danh sách này không?
+# Variables:
+# $count (Number) - The number of lists to be deleted.
+about-addressbook-confirm-delete-lists-title =
+ { $count ->
+ *[other] Xóa các danh sách
+ }
+# 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 ->
+ *[other] Bạn có chắc chắn muốn xóa { $count } danh sách này không?
+ }
+# Variables:
+# $count (Number) - The number of contacts to be removed.
+about-addressbook-confirm-remove-contacts-title =
+ { $count ->
+ *[other] Xóa liên hệ
+ }
+# Variables:
+# $count (Number) - The number of contacts to be removed.
+# $name (String) - The name of the contact to be removed, if $count is 1.
+# $list (String) - The name of the list that contacts will be removed from.
+about-addressbook-confirm-remove-contacts =
+ { $count ->
+ *[other] Bạn có chắc chắn muốn xóa { $count } địa chỉ liên hệ này khỏi { $list } không?
+ }
+# Variables:
+# $count (Number) - The number of contacts to be deleted.
+about-addressbook-confirm-delete-contacts-title =
+ { $count ->
+ *[other] Xóa liên hệ
+ }
+# Variables:
+# $count (Number) - The number of contacts to be deleted.
+# $name (String) - The name of the contact to be deleted, if $count is 1.
+about-addressbook-confirm-delete-contacts =
+ { $count ->
+ *[other] Bạn có chắc chắn muốn xóa { $count } địa chỉ liên hệ này không?
+ }
+
+## Card list placeholder
+## Shown when there are no cards in the list
+
+about-addressbook-placeholder-empty-book = Không có liên hệ có sẵn
+about-addressbook-placeholder-new-contact = Liên hệ mới
+about-addressbook-placeholder-search-only = Sổ địa chỉ này chỉ hiển thị liên hệ sau khi tìm kiếm
+about-addressbook-placeholder-searching = Đang tìm kiếm…
+about-addressbook-placeholder-no-search-results = Không tìm thấy liên hệ
+
+## Details
+
+# Variables:
+# $count (Number) - The number of selected items (will never be fewer than two)
+about-addressbook-selection-mixed-header = { $count } liên hệ và danh sách đã chọn
+# Variables:
+# $count (Number) - The number of selected contacts
+about-addressbook-selection-contacts-header = { $count } liên hệ đã chọn
+# Variables:
+# $count (Number) - The number of selected lists
+about-addressbook-selection-lists-header = { $count } danh sách đã chọn
+about-addressbook-details-edit-photo =
+ .title = Chỉnh sửa ảnh liên hệ
+about-addressbook-new-contact-header = Liên hệ mới
+about-addressbook-prefer-display-name = Ưu tiên tên hiển thị hơn tiêu đề thư
+about-addressbook-write-action-button = Viết thư
+about-addressbook-event-action-button = Sự kiện
+about-addressbook-search-action-button = Tìm kiếm
+about-addressbook-new-list-action-button = Danh sách mới
+about-addressbook-begin-edit-contact-button = Chỉnh sửa
+about-addressbook-delete-edit-contact-button = Xóa
+about-addressbook-cancel-edit-contact-button = Hủy bỏ
+about-addressbook-save-edit-contact-button = Lưu
+about-addressbook-add-contact-to = Thêm vào:
+about-addressbook-details-email-addresses-header = Địa chỉ e-mail
+about-addressbook-details-phone-numbers-header = Số điện thoại
+about-addressbook-details-addresses-header = Địa chỉ
+about-addressbook-details-notes-header = Ghi chú
+about-addressbook-details-impp-header = Thư nhanh
+about-addressbook-details-websites-header = Trang web
+about-addressbook-details-other-info-header = Thông tin khác
+about-addressbook-entry-type-work = Công việc
+about-addressbook-entry-type-home = Nhà riêng
+about-addressbook-entry-type-fax = Fax
+# Or "Mobile"
+about-addressbook-entry-type-cell = Di động
+about-addressbook-entry-type-pager = Máy nhắn tin
+about-addressbook-entry-name-birthday = Ngày sinh
+about-addressbook-entry-name-anniversary = Ngày kỷ niệm
+about-addressbook-entry-name-title = Chức danh
+about-addressbook-entry-name-role = Vai trò
+about-addressbook-entry-name-organization = Tổ chức
+about-addressbook-entry-name-website = Trang web
+about-addressbook-entry-name-time-zone = Múi giờ
+about-addressbook-entry-name-custom1 = Tùy chỉnh 1
+about-addressbook-entry-name-custom2 = Tùy chỉnh 2
+about-addressbook-entry-name-custom3 = Tùy chỉnh 3
+about-addressbook-entry-name-custom4 = Tùy chỉnh 4
+about-addressbook-unsaved-changes-prompt-title = Các thay đổi chưa được lưu
+about-addressbook-unsaved-changes-prompt = Bạn có muốn lưu các thay đổi của mình trước khi rời khỏi chế độ chỉnh sửa không?
+
+# Photo dialog
+
+about-addressbook-photo-drop-target = Thả hoặc dán ảnh vào đây hoặc nhấp để chọn tập tin.
+about-addressbook-photo-drop-loading = Đang tải ảnh…
+about-addressbook-photo-drop-error = Không tải được ảnh.
+about-addressbook-photo-filepicker-title = Chọn một tập tin hình ảnh
+about-addressbook-photo-discard = Hủy ảnh hiện có
+about-addressbook-photo-cancel = Hủy bỏ
+about-addressbook-photo-save = Lưu
+
+# Keyboard shortcuts
+
+about-addressbook-new-contact-key = N
diff --git a/l10n-vi/mail/messenger/addressbook/fieldMapImport.ftl b/l10n-vi/mail/messenger/addressbook/fieldMapImport.ftl
new file mode 100644
index 0000000000..5c173e5351
--- /dev/null
+++ b/l10n-vi/mail/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 = Nhập sổ địa chỉ từ tập tin văn bản
+
+# $recordNumber (Number) - The current record number of the preview data.
+import-ab-csv-preview-record-number = Xem trước quá trình nhập dữ liệu cho bản ghi { $recordNumber }
+
+import-ab-csv-dialog =
+ .buttonlabelaccept = Nhập
+ .buttonaccesskeyaccept = I
diff --git a/l10n-vi/mail/messenger/addressbook/vcard.ftl b/l10n-vi/mail/messenger/addressbook/vcard.ftl
new file mode 100644
index 0000000000..b35f8698ea
--- /dev/null
+++ b/l10n-vi/mail/messenger/addressbook/vcard.ftl
@@ -0,0 +1,189 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Tên hiển thị
+
+vcard-displayname-placeholder =
+ .placeholder = { vcard-displayname }
+
+# Type selection
+
+vcard-entry-type-label = Kiểu
+
+vcard-entry-type-home = Nhà riêng
+
+vcard-entry-type-work = Công việc
+
+vcard-entry-type-none = Không có
+
+vcard-entry-type-custom = Tùy chỉnh
+
+# N vCard field
+
+vcard-name-header = Tên
+
+vcard-n-prefix = Tiền tố
+
+vcard-n-add-prefix =
+ .title = Thêm tiền tố
+
+vcard-n-firstname = Tên
+
+vcard-n-add-firstname =
+ .title = Thêm tên
+
+vcard-n-middlename = Tên đệm
+
+vcard-n-add-middlename =
+ .title = Thêm tên đệm
+
+vcard-n-lastname = Họ
+
+vcard-n-add-lastname =
+ .title = Thêm họ
+
+vcard-n-suffix = Hậu tố
+
+vcard-n-add-suffix =
+ .title = Thêm hậu tố
+
+# Nickname
+
+vcard-nickname = Biệt danh
+
+# Email vCard field
+
+vcard-email-header = Địa chỉ email
+
+vcard-email-add = Thêm địa chỉ email
+
+vcard-email-label = Địa chỉ email
+
+vcard-primary-email-label = Mặc định
+
+# URL vCard field
+
+vcard-url-header = Trang web
+
+vcard-url-add = Thêm trang web
+
+vcard-url-label = Trang web
+
+# Tel vCard field
+
+vcard-tel-header = Số điện thoại
+
+vcard-tel-add = Thêm số điện thoại
+
+vcard-tel-label = Số điện thoại
+
+# Or "Mobile"
+vcard-entry-type-cell = Di động
+
+vcard-entry-type-fax = Fax
+
+vcard-entry-type-pager = Máy nhắn tin
+
+# TZ vCard field
+
+vcard-tz-header = Múi giờ
+
+vcard-tz-add = Thêm múi giờ
+
+# IMPP vCard field
+
+vcard-impp2-header = Thư nhanh
+
+vcard-impp-add = Thêm tài khoản trò chuyện
+
+vcard-impp-label = Tài khoản trò chuyện
+
+vcard-impp-select = Giao thức
+vcard-impp-option-other = Khác
+
+vcard-impp-input-label = URI
+vcard-impp-input-title = URI cho thư nhanh
+
+# BDAY and ANNIVERSARY vCard field
+
+vcard-bday-anniversary-header = Ngày đặc biệt
+
+vcard-bday-anniversary-add = Thêm ngày đặc biệt
+
+vcard-bday-label = Ngày sinh
+
+vcard-anniversary-label = Ngày kỷ niệm
+
+vcard-date-day = Ngày
+
+vcard-date-month = Tháng
+
+vcard-date-year = Năm
+
+# ADR vCard field
+
+vcard-adr-header = Địa chỉ
+
+vcard-adr-add = Thêm địa chỉ
+
+vcard-adr-label = Địa chỉ
+
+vcard-adr-delivery-label = Nhãn giao hàng
+
+vcard-adr-street = Địa chỉ đường phố
+
+# Or "Locality"
+vcard-adr-locality = Thành phố
+
+# Or "Region"
+vcard-adr-region = Bang/Tỉnh
+
+# The term "ZIP code" only applies in USA. Most locales should use "Postal code" only.
+vcard-adr-code = ZIP/Mã bưu chính
+
+vcard-adr-country = Quốc gia
+
+# NOTE vCard field
+
+vcard-note-header = Ghi chú
+
+vcard-note-add = Thêm ghi chú
+
+# TITLE, ROLE and ORGANIZATION vCard fields
+
+vcard-org-header = Thuộc tính tổ chức
+
+vcard-org-add = Thêm thuộc tính tổ chức
+
+vcard-org-title = Tiêu đề
+
+vcard-org-title-input =
+ .title = Chức vụ hoặc công việc
+ .placeholder = Chức vụ
+
+vcard-org-role = Vai trò
+
+vcard-org-org = Tổ chức
+
+vcard-org-org-input =
+ .title = Tên tổ chức
+ .placeholder = Tên công ty
+vcard-org-org-unit = Bộ phận
+vcard-org-org-unit-input =
+ .title = Tên đơn vị của tổ chức
+ .placeholder = Phòng
+
+# Custom properties
+
+vcard-custom-header = Tùy chỉnh thuộc tính
+
+vcard-custom-add = Thêm thuộc tính tùy chỉnh
+
+vcard-remove-button-title =
+ .title = Xóa
+
+vcard-remove-button = Xóa
diff --git a/l10n-vi/mail/messenger/appmenu.ftl b/l10n-vi/mail/messenger/appmenu.ftl
new file mode 100644
index 0000000000..3739213945
--- /dev/null
+++ b/l10n-vi/mail/messenger/appmenu.ftl
@@ -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/.
+
+
+## Sync
+
+appmenu-sync-panel-title =
+ .title = Đồng bộ hóa
+appmenu-signin-panel =
+ .label = Đăng nhập để đồng bộ hóa
+ .accesskey = i
+appmenu-sync-sync =
+ .value = Đồng bộ hóa tài khoản
+ .accesskey = A
+appmenu-sync-manage =
+ .value = Quản lý tài khoản
+ .accesskey = M
+appmenu-sync-account =
+ .value = example@example.com
+appmenu-sync-now =
+ .label = Đồng bộ ngay
+ .accesskey = N
+appmenu-sync-settings =
+ .label = Cài đặt đồng bộ hóa
+ .accesskey = S
+appmenu-sync-sign-out =
+ .label = Đăng xuất…
+ .accesskey = O
+
+## New Account
+
+appmenu-new-account-panel-title =
+ .title = Tài khoản mới
+appmenu-new-account-panel =
+ .label = Tài khoản mới
+ .accesskey = N
+appmenu-create-new-mail-account =
+ .label = Tạo một email mới
+ .accesskey = G
+appmenu-new-mail-account =
+ .label = Email hiện có
+ .accesskey = E
+appmenu-new-calendar =
+ .label = Lịch
+ .accesskey = c
+appmenu-new-chat-account =
+ .label = Trò chuyện
+ .accesskey = h
+appmenu-new-feed =
+ .label = Nguồn cấp
+ .accesskey = F
+appmenu-new-newsgroup =
+ .label = Nhóm tin
+ .accesskey = N
+
+## New Account / Address Book
+
+appmenu-newab-panel-title =
+ .title = Sổ địa chỉ mới
+appmenu-newab-panel =
+ .label = Sổ địa chỉ mới
+ .accesskey = a
+appmenu-new-addressbook =
+ .label = Sổ địa chỉ nội bộ
+ .accesskey = a
+appmenu-new-carddav =
+ .label = Sổ địa chỉ CardDav…
+ .accesskey = C
+appmenu-new-ldap =
+ .label = Sổ địa chỉ LDAP
+ .accesskey = L
+
+## Create
+
+appmenu-create-panel-title =
+ .title = Tạo
+appmenu-create-panel =
+ .label = Tạo
+ .accesskey = C
+appmenu-create-message =
+ .label = Thư
+ .accesskey = M
+appmenu-create-event =
+ .label = Sự kiện
+ .accesskey = E
+appmenu-create-task =
+ .label = Nhiệm vụ
+ .accesskey = T
+appmenu-create-contact =
+ .label = Liên hệ
+ .accesskey = C
+
+## Open
+
+appmenu-open-file-panel =
+ .label = Mở từ tập tin
+ .accesskey = O
+appmenu-open-file-panel-title =
+ .title = Mở từ tập tin
+appmenu-open-message =
+ .label = Thư…
+ .accesskey = M
+appmenu-open-calendar =
+ .label = Lịch…
+ .accesskey = C
+
+## View / Layout
+
+appmenu-view-panel-title =
+ .title = Xem
+appmenu-view-panel =
+ .label = Xem
+ .accesskey = V
+appmenu-font-size-value = Cỡ chữ
+appmenu-mail-uidensity-value = Mật độ
+appmenu-uidensity-compact =
+ .tooltiptext = Thu gọn
+appmenu-uidensity-default =
+ .tooltiptext = Mặc định
+appmenu-uidensity-relaxed =
+ .tooltiptext = Thoải mái
+appmenuitem-font-size-enlarge =
+ .tooltiptext = Tăng cỡ chữ
+appmenuitem-font-size-reduce =
+ .tooltiptext = Giảm cỡ chữ
+# Variables:
+# $size (String) - The current font size.
+appmenuitem-font-size-reset =
+ .label = { $size }px
+ .tooltiptext = Đặt lại cỡ chữ
+
+## Tools
+
+appmenu-tools-panel-title =
+ .title = Công cụ
+appmenu-tools-panel =
+ .label = Công cụ
+ .accesskey = T
+appmenu-tools-import =
+ .label = Nhập
+ .accesskey = I
+appmenu-tools-export =
+ .label = Xuất
+ .accesskey = E
+appmenu-tools-message-search =
+ .label = Tìm kiếm thư
+ .accesskey = S
+appmenu-tools-message-filters =
+ .label = Bộ lọc thư
+ .accesskey = F
+appmenu-tools-download-manager =
+ .label = Trình quản lý tải xuống
+ .accesskey = D
+appmenu-tools-activity-manager =
+ .label = Trình quản lý hoạt động
+ .accesskey = A
+appmenu-tools-dev-tools =
+ .label = Công cụ phát triển
+ .accesskey = T
+
+## Help
+
+appmenu-help-panel-title =
+ .title = Trợ giúp
+appmenu-help-get-help =
+ .label = Nhận trợ giúp
+ .accesskey = H
+appmenu-help-explore-features =
+ .label = Khám phá tính năng
+ .accesskey = F
+appmenu-help-shortcuts =
+ .label = Phím tắt bàn phím
+ .accesskey = K
+appmenu-help-get-involved =
+ .label = Tham gia
+ .accesskey = G
+appmenu-help-donation =
+ .label = Quyên góp tài chính
+ .accesskey = D
+appmenu-help-share-feedback =
+ .label = Chia sẻ ý tưởng và phản hồi
+ .accesskey = S
+appmenu-help-enter-troubleshoot-mode2 =
+ .label = Chế độ xử lý sự cố…
+ .accesskey = T
+appmenu-help-exit-troubleshoot-mode2 =
+ .label = Tắt chế độ xử lý sự cố
+ .accesskey = D
+appmenu-help-troubleshooting-info =
+ .label = Thông tin xử lý sự cố
+ .accesskey = I
+appmenu-help-about-product =
+ .label = Về { -brand-short-name }
+ .accesskey = A
+
+## Application Update
+
+appmenuitem-banner-update-downloading =
+ .label = Đang tải xuống bản cập nhật { -brand-shorter-name }
+appmenuitem-banner-update-available =
+ .label = Đã có bản cập nhật — tải xuống ngay
+appmenuitem-banner-update-manual =
+ .label = Đã có bản cập nhật — tải xuống ngay
+appmenuitem-banner-update-unsupported =
+ .label = Không thể cập nhật — hệ thống không tương thích
+appmenuitem-banner-update-restart =
+ .label = Đã có bản cập nhật — khởi động lại ngay
diff --git a/l10n-vi/mail/messenger/chat-verifySession.ftl b/l10n-vi/mail/messenger/chat-verifySession.ftl
new file mode 100644
index 0000000000..55d0c13a0e
--- /dev/null
+++ b/l10n-vi/mail/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 = Xác minh danh tính
+
+# Variables:
+# $subject (String) - a human readable identifier for the other side of the verification flow.
+verify-window-subject-title = Xác minh danh tính của { $subject }
+
+verify-dialog =
+ .buttonlabelaccept = Phù hợp
+ .buttonaccesskeyaccept = M
+ .buttonlabelextra2 = Không phù hợp
+ .buttonaccesskeyextra2 = D
+
+challenge-label = Xác minh chuỗi được hiển thị khớp với màn hình ở đầu bên kia.
diff --git a/l10n-vi/mail/messenger/chat.ftl b/l10n-vi/mail/messenger/chat.ftl
new file mode 100644
index 0000000000..322a286444
--- /dev/null
+++ b/l10n-vi/mail/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 = Đang tham gia trò chuyện
+
+chat-left-chat-icon2 =
+ .alt = Đã rời khỏi cuộc trò chuyện
+
+chat-participant-owner-role-icon2 =
+ .alt = Chủ sở hữu
+
+chat-participant-administrator-role-icon2 =
+ .alt = Quản trị viên
+
+chat-participant-moderator-role-icon2 =
+ .alt = Người xét duyệt
+
+chat-participant-voiced-role-icon2 =
+ .alt = Người tham gia có thể gửi tin nhắn
+
+chat-verify-identity =
+ .label = Xác minh danh tính
+ .accesskey = I
+
+chat-identity-verified =
+ .label = Đã xác minh danh tính
+
+chat-buddy-identity-status = Mã hóa tin cậy
+chat-buddy-identity-status-verified = Đã xác minh
+chat-buddy-identity-status-unverified = Chưa xác minh
+
+## 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 = Bạn đã được mời vào cuộc trò chuyện trong { $conversation }
+chat-conv-invite-accept =
+ .label = Chấp nhận
+ .accesskey = A
+chat-conv-invite-deny =
+ .label = Từ chối
+ .accesskey = R
diff --git a/l10n-vi/mail/messenger/compactFoldersDialog.ftl b/l10n-vi/mail/messenger/compactFoldersDialog.ftl
new file mode 100644
index 0000000000..85c52c7526
--- /dev/null
+++ b/l10n-vi/mail/messenger/compactFoldersDialog.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/.
+
+compact-dialog-window =
+ .title = Làm gọn thư mục
+ .style = width: 50em;
+
+compact-dialog =
+ .buttonlabelaccept = Làm gọn ngay
+ .buttonaccesskeyaccept = C
+ .buttonlabelcancel = Nhắc tôi sau
+ .buttonaccesskeycancel = R
+ .buttonlabelextra1 = Tìm hiểu thêm…
+ .buttonaccesskeyextra1 = L
+
+# 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 } cần thực hiện bảo trì tập tin thường xuyên để cải thiện hiệu suất của các thư mục thư của bạn. Điều này sẽ phục hồi { $data } dung lượng trống mà không cần thay đổi thư của bạn. Để { -brand-short-name } thực hiện việc này tự động trong tương lai mà không cần hỏi, hãy chọn hộp bên dưới trước khi chọn ‘{ compact-dialog.buttonlabelaccept }’.
+
+compact-dialog-never-ask-checkbox =
+ .label = Tự động làm gọn các thư mục trong tương lai
+ .accesskey = a
+
diff --git a/l10n-vi/mail/messenger/exportDialog.ftl b/l10n-vi/mail/messenger/exportDialog.ftl
new file mode 100644
index 0000000000..feea9932f0
--- /dev/null
+++ b/l10n-vi/mail/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 = Xuất
+
+export-dialog =
+ .buttonlabelaccept = Tiếp
+
+export-dialog-button-finish = Hoàn thành
+
+export-dialog-file-picker = Xuất sang tập tin zip
+
+export-dialog-description1 = Xuất tài khoản email, tin nhắn email, sổ địa chỉ, cài đặt sang tập tin zip.
+
+export-dialog-desc2 = Khi cần, bạn có thể nhập tập tin zip để khôi phục hồ sơ của mình.
+
+export-dialog-exporting = Đang xuất…
+
+export-dialog-exported = Đã xuất!
diff --git a/l10n-vi/mail/messenger/extensions/popup.ftl b/l10n-vi/mail/messenger/extensions/popup.ftl
new file mode 100644
index 0000000000..cf521cd8b8
--- /dev/null
+++ b/l10n-vi/mail/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/l10n-vi/mail/messenger/importDialog.ftl b/l10n-vi/mail/messenger/importDialog.ftl
new file mode 100644
index 0000000000..85ea27154a
--- /dev/null
+++ b/l10n-vi/mail/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 = Nhập thư từ thư mục hồ sơ Thunderbird.
+
+import-from-thunderbird-zip =
+ .label = Thunderbird (sao lưu hồ sơ đã xuất; tập tin zip nhỏ hơn 2GB)
+ .accesskey = Z
+
+import-from-thunderbird-dir =
+ .label = Thunderbird (thư mục hồ sơ)
+ .accesskey = T
+
+import-select-profile-zip = Chọn một thư mục hồ sơ đã nén
+
+import-select-profile-dir = Chọn một thư mục hồ sơ
+
+zip-file-too-big-title = Tập tin zip quá lớn
+
+zip-file-too-big-message = Tập tin zip đã chọn lớn hơn 2GB. Vui lòng giải nén nó trước, sau đó nhập từ thư mục đã giải nén.
+
+wizardpage-failed =
+ .label = Nhập không thành công
+
+wizardpage-failed-message = Nhập không thành công đột ngột, thông tin thêm có thể xem trong bảng điều khiển.
diff --git a/l10n-vi/mail/messenger/mailWidgets.ftl b/l10n-vi/mail/messenger/mailWidgets.ftl
new file mode 100644
index 0000000000..8ea9a66550
--- /dev/null
+++ b/l10n-vi/mail/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 = Áp dụng chế độ xem hiện tại cho…
+
+threadpane-apply-changes-prompt-title = Áp dụng các thay đổi?
+# Variables:
+# $name (String): The name of the folder to apply to.
+threadpane-apply-changes-prompt-no-children-text = Áp dụng chế độ xem của thư mục hiện tại cho { $name }?
+# Variables:
+# $name (String): The name of the folder to apply to.
+threadpane-apply-changes-prompt-with-children-text = Áp dụng chế độ xem của thư mục hiện tại cho { $name } và các thư mục con của nó?
+
diff --git a/l10n-vi/mail/messenger/menubar.ftl b/l10n-vi/mail/messenger/menubar.ftl
new file mode 100644
index 0000000000..1ebafbd5de
--- /dev/null
+++ b/l10n-vi/mail/messenger/menubar.ftl
@@ -0,0 +1,160 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Thanh menu
+ .accesskey = M
+
+## Tools Menu
+
+menu-tools-settings =
+ .label = Cài đặt
+ .accesskey = e
+
+menu-addons-and-themes =
+ .label = Tiện ích mở rộng và chủ đề
+ .accesskey = A
+
+## Help Menu
+
+menu-help-help-title =
+ .label = Trợ giúp
+ .accesskey = H
+
+menu-help-get-help =
+ .label = Nhận trợ giúp
+ .accesskey = H
+
+menu-help-explore-features =
+ .label = Khám phá tính năng
+ .accesskey = F
+
+menu-help-shortcuts =
+ .label = Phím tắt bàn phím
+ .accesskey = K
+
+menu-help-get-involved =
+ .label = Tham gia
+ .accesskey = G
+
+menu-help-donation =
+ .label = Quyên góp tài chính
+ .accesskey = D
+
+menu-help-share-feedback =
+ .label = Chia sẻ ý tưởng và phản hồi
+ .accesskey = S
+
+menu-help-enter-troubleshoot-mode =
+ .label = Chế độ xử lý sự cố…
+ .accesskey = T
+
+menu-help-exit-troubleshoot-mode =
+ .label = Tắt chế độ xử lý sự cố
+ .accesskey = D
+
+menu-help-more-troubleshooting-info =
+ .label = Thông tin xử lý sự cố khác
+ .accesskey = M
+
+menu-help-troubleshooting-info =
+ .label = Thông tin xử lý sự cố
+ .accesskey = I
+
+menu-help-about-product =
+ .label = Về { -brand-short-name }
+ .accesskey = A
+
+# These menu-quit strings are only used on Windows and Linux.
+menu-quit =
+ .label =
+ { PLATFORM() ->
+ [windows] Thoát
+ *[other] Thoát
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] x
+ *[other] Q
+ }
+
+# This menu-quit-mac string is only used on macOS.
+menu-quit-mac =
+ .label = Thoát { -brand-shorter-name }
+
+quit-app-shortcut =
+ .key = Q
+
+## Mail Toolbar
+
+toolbar-junk-button =
+ .label = Thư rác
+ .tooltiptext = Đánh dấu các thư đã chọn là thư rác
+toolbar-not-junk-button =
+ .label = Không phải thư rác
+ .tooltiptext = Đánh dấu các thư đã chọn là không phải thư rác
+toolbar-delete-button =
+ .label = Xóa
+ .tooltiptext = Xóa thư hoặc thư mục đã chọn
+toolbar-undelete-button =
+ .label = Hoàn tác xóa
+ .tooltiptext = Phục hồi các thư đã chọn
+
+## View
+
+menu-view-repair-text-encoding =
+ .label = Sửa chữa mã hóa văn bản
+ .accesskey = c
+
+## View / Layout
+
+menu-font-size-label =
+ .label = Cỡ chữ
+ .accesskey = o
+
+menuitem-font-size-enlarge =
+ .label = Tăng cỡ chữ
+ .accesskey = I
+
+menuitem-font-size-reduce =
+ .label = Giảm cỡ chữ
+ .accesskey = D
+
+menuitem-font-size-reset =
+ .label = Đặt lại cỡ chữ
+ .accesskey = R
+
+mail-uidensity-label =
+ .label = Mật độ
+ .accesskey = D
+
+mail-uidensity-compact =
+ .label = Thu gọn
+ .accesskey = C
+
+mail-uidensity-normal =
+ .label = Bình thường
+ .accesskey = N
+
+mail-uidensity-touch =
+ .label = Chạm
+ .accesskey = T
+
+mail-uidensity-default =
+ .label = Mặc định
+ .accesskey = D
+
+mail-uidensity-relaxed =
+ .label = Thoải mái
+ .accesskey = R
+
+menu-spaces-toolbar-button =
+ .label = Thanh công cụ Spaces
+ .accesskey = S
+
+## File
+
+file-new-newsgroup-account =
+ .label = Tài khoản nhóm tin…
+ .accesskey = N
diff --git a/l10n-vi/mail/messenger/messageheader/headerFields.ftl b/l10n-vi/mail/messenger/messageheader/headerFields.ftl
new file mode 100644
index 0000000000..83abce36f9
--- /dev/null
+++ b/l10n-vi/mail/messenger/messageheader/headerFields.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/.
+
+
+## Header lists
+
+message-header-to-list-name = Đến
+
+message-header-from-list-name = Từ
+
+message-header-sender-list-name = Người gửi
+
+message-header-reply-to-list-name = Trả lời đến
+
+message-header-cc-list-name = Cc
+
+message-header-bcc-list-name = Bcc
+
+message-header-newsgroups-list-name = Nhóm tin
+
+message-header-tags-list-name = Nhãn
+
+## Other message headers.
+## The field-separator is for screen readers to separate the field name from the field value.
+
+message-header-author-field = Tác giả<span data-l10n-name="field-separator">:</span>
+
+message-header-organization-field = Tổ chức<span data-l10n-name="field-separator">:</span>
+
+message-header-subject-field = Chủ đề<span data-l10n-name="field-separator">:</span>
+
+
+message-header-date-field = Ngày<span data-l10n-name="field-separator">:</span>
+
+message-header-user-agent-field = Chuỗi tác nhân người dùng<span data-l10n-name="field-separator">:</span>
+
+message-header-message-id-field = ID thư<span data-l10n-name="field-separator">:</span>
+
+message-header-in-reply-to-field = Trả lời đến<span data-l10n-name="field-separator">:</span>
+
+message-header-website-field = Trang web<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 = Trong sổ địa chỉ
+
+message-header-address-not-in-address-book-icon2 =
+ .alt = Không có trong sổ địa chỉ
+
+message-header-address-not-in-address-book-button =
+ .title = Lưu địa chỉ này vào sổ địa chỉ
+
+message-header-address-in-address-book-button =
+ .title = Chỉnh sửa liên hệ
+
+message-header-field-show-more = Thêm
+ .title = Hiển thị tất cả người nhận
+
+message-ids-field-show-all = Hiện tất cả
diff --git a/l10n-vi/mail/messenger/messenger.ftl b/l10n-vi/mail/messenger/messenger.ftl
new file mode 100644
index 0000000000..4bf211c69b
--- /dev/null
+++ b/l10n-vi/mail/messenger/messenger.ftl
@@ -0,0 +1,337 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Cực tiểu hóa
+messenger-window-maximize-button =
+ .tooltiptext = Cực đại hoá
+messenger-window-restore-down-button =
+ .tooltiptext = Khôi phục kích thước
+messenger-window-close-button =
+ .tooltiptext = Đóng
+
+# Variables:
+# $count (Number) - Number of unread messages.
+unread-messages-os-tooltip =
+ { $count ->
+ *[other] { $count } tin nhắn chưa đọc
+ }
+
+about-rights-notification-text = { -brand-short-name } là phần mềm nguồn mở và miễn phí, được xây dựng bởi một cộng đồng gồm hàng ngàn người từ khắp nơi trên thế giới.
+
+## Content tabs
+
+content-tab-page-loading-icon =
+ .alt = Đang tải trang
+content-tab-security-high-icon =
+ .alt = Kết nối an toàn
+content-tab-security-broken-icon =
+ .alt = Kết nối không an toàn
+
+## Toolbar
+
+addons-and-themes-toolbarbutton =
+ .label = Tiện ích mở rộng và chủ đề
+ .tooltiptext = Quản lý tiện ích của bạn
+
+quick-filter-toolbarbutton =
+ .label = Bộ lọc nhanh
+ .tooltiptext = Lọc thư
+
+redirect-msg-button =
+ .label = Chuyển hướng
+ .tooltiptext = Chuyển hướng tin nhắn đã chọn
+
+## Folder Pane
+
+folder-pane-toolbar =
+ .toolbarname = Thanh công cụ ngăn thư mục
+ .accesskey = F
+
+folder-pane-toolbar-options-button =
+ .tooltiptext = Tùy chọn ngăn thư mục
+
+folder-pane-header-label = Thư mục
+
+## Folder Toolbar Header Popup
+
+folder-toolbar-hide-toolbar-toolbarbutton =
+ .label = Ẩn thanh công cụ
+ .accesskey = H
+
+show-all-folders-label =
+ .label = Tất cả thư mục
+ .accesskey = A
+
+show-unread-folders-label =
+ .label = Thư mục chưa đọc
+ .accesskey = n
+
+show-favorite-folders-label =
+ .label = Thư mục yêu thích
+ .accesskey = F
+
+show-smart-folders-label =
+ .label = Thư mục hợp nhất
+ .accesskey = U
+
+show-recent-folders-label =
+ .label = Thư mục gần đây
+ .accesskey = R
+
+folder-toolbar-toggle-folder-compact-view =
+ .label = Chế độ xem thu gọn
+ .accesskey = C
+
+## Menu
+
+redirect-msg-menuitem =
+ .label = Chuyển hướng
+ .accesskey = D
+
+menu-file-save-as-file =
+ .label = Tập tin…
+ .accesskey = F
+
+## AppMenu
+
+appmenu-save-as-file =
+ .label = Tập tin…
+
+appmenu-settings =
+ .label = Cài đặt
+
+appmenu-addons-and-themes =
+ .label = Tiện ích mở rộng và chủ đề
+
+appmenu-help-enter-troubleshoot-mode =
+ .label = Chế độ xử lý sự cố…
+
+appmenu-help-exit-troubleshoot-mode =
+ .label = Tắt chế độ xử lý sự cố
+
+appmenu-help-more-troubleshooting-info =
+ .label = Thông tin xử lý sự cố khác
+
+appmenu-redirect-msg =
+ .label = Chuyển hướng
+
+## Context menu
+
+context-menu-redirect-msg =
+ .label = Chuyển hướng
+
+mail-context-delete-messages =
+ .label =
+ { $count ->
+ *[other] Xóa các thư đã chọn
+ }
+
+context-menu-decrypt-to-folder =
+ .label = Sao chép dưới dạng giải mã thành
+ .accesskey = y
+
+## Message header pane
+
+other-action-redirect-msg =
+ .label = Chuyển hướng
+
+message-header-msg-flagged =
+ .title = Gắn sao
+ .aria-label = Gắn sao
+
+# Variables:
+# $address (String) - The email address of the recipient this picture belongs to.
+message-header-recipient-avatar =
+ .alt = Ảnh hồ sơ của { $address }.
+
+## Message header cutomize panel
+
+message-header-customize-panel-title = Cài đặt header thư
+
+message-header-customize-button-style =
+ .value = Kiểu nút
+ .accesskey = B
+
+message-header-button-style-default =
+ .label = Biểu tượng và văn bản
+
+message-header-button-style-text =
+ .label = Văn bản
+
+message-header-button-style-icons =
+ .label = Biểu tượng
+
+message-header-show-sender-full-address =
+ .label = Luôn hiển thị địa chỉ đầy đủ của người gửi
+ .accesskey = f
+
+message-header-show-sender-full-address-description = Địa chỉ email sẽ được hiển thị bên dưới tên hiển thị.
+
+message-header-show-recipient-avatar =
+ .label = Hiển thị ảnh hồ sơ của người gửi
+ .accesskey = P
+
+message-header-hide-label-column =
+ .label = Ẩn cột nhãn
+ .accesskey = l
+
+message-header-large-subject =
+ .label = Chủ đề lớn
+ .accesskey = s
+
+message-header-all-headers =
+ .label = Hiển thị tất cả header
+ .accesskey = a
+
+## Action Button Context Menu
+
+toolbar-context-menu-manage-extension =
+ .label = Quản lí tiện ích
+ .accesskey = E
+toolbar-context-menu-remove-extension =
+ .label = Xóa tiện ích mở rộng
+ .accesskey = v
+
+## Add-on removal warning
+
+# Variables:
+# $name (String): The name of the addon that will be removed.
+addon-removal-title = Xóa { $name }?
+addon-removal-confirmation-button = Xóa
+addon-removal-confirmation-message = Xóa { $name } cũng như cài đặt và dữ liệu của nó khỏi { -brand-short-name }?
+
+caret-browsing-prompt-title = Duyệt với con trỏ
+caret-browsing-prompt-text = Nhấn F7 sẽ bật hoặc tắt duyệt với con trỏ (Caret). Tính năng này đặt một con trỏ có thể di chuyển trong một số nội dung, cho phép bạn chọn văn bản bằng bàn phím. Bạn có muốn bật duyệt với con trỏ không?
+caret-browsing-prompt-check-text = Đừng hỏi lại.
+
+repair-text-encoding-button =
+ .label = Sửa chữa mã hóa văn bản
+ .tooltiptext = Đoán mã hóa văn bản chính xác từ nội dung tin nhắn
+
+## no-reply handling
+
+no-reply-title = Không hỗ trợ trả lời
+no-reply-message = Địa chỉ trả lời ({ $email }) dường như không phải là địa chỉ được giám sát. Thư đến địa chỉ này có thể sẽ không được đọc bởi bất kỳ ai.
+no-reply-reply-anyway-button = Vẫn trả lời
+
+## error messages
+
+decrypt-and-copy-failures = Không thể giải mã { $failures } trong tổng số { $total } thư.
+
+## Spaces toolbar
+
+spaces-toolbar-element =
+ .toolbarname = Thanh công cụ Spaces
+ .aria-label = Thanh công cụ Spaces
+ .aria-description = Thanh công cụ dọc để chuyển đổi giữa các không gian khác nhau. Sử dụng các phím mũi tên để điều hướng các nút có sẵn.
+
+spaces-toolbar-button-mail2 =
+ .title = Thư
+
+spaces-toolbar-button-address-book2 =
+ .title = Sổ địa chỉ
+
+spaces-toolbar-button-calendar2 =
+ .title = Lịch
+
+spaces-toolbar-button-tasks2 =
+ .title = Nhiệm vụ
+
+spaces-toolbar-button-chat2 =
+ .title = Trò chuyện
+
+spaces-toolbar-button-overflow =
+ .title = Thêm không gian…
+
+spaces-toolbar-button-settings2 =
+ .title = Cài đặt
+
+spaces-toolbar-button-hide =
+ .title = Ẩn thanh công cụ Spaces
+
+spaces-toolbar-button-show =
+ .title = Hiển thị thanh công cụ Spaces
+
+spaces-context-new-tab-item =
+ .label = Mở trong thẻ mới
+
+spaces-context-new-window-item =
+ .label = Mở trong cửa sổ mới
+
+# Variables:
+# $tabName (String) - The name of the tab this item will switch to.
+spaces-context-switch-tab-item =
+ .label = Chuyển sang { $tabName }
+
+settings-context-open-settings-item2 =
+ .label = Cài đặt
+
+settings-context-open-account-settings-item2 =
+ .label = Cài đặt tài khoản
+
+settings-context-open-addons-item2 =
+ .label = Tiện ích mở rộng và chủ đề
+
+## Spaces toolbar pinned tab menupopup
+
+spaces-toolbar-pinned-tab-button =
+ .tooltiptext = Mở menu Spaces
+
+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 ->
+ *[other] { $count } thư chưa đọc
+ }
+
+## Spaces toolbar customize panel
+
+menuitem-customize-label =
+ .label = Tùy biến…
+
+spaces-customize-panel-title = Cài đặt thanh công cụ Spaces
+
+spaces-customize-background-color = Màu nền:
+
+spaces-customize-icon-color = Màu nút
+
+# 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 = Màu nền của Nút đã chọn
+
+# 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 = Màu của Nút đã chọn
+
+spaces-customize-button-restore = Khôi phục về mặc định
+ .accesskey = R
+
+customize-panel-button-save = Xong
+ .accesskey = D
diff --git a/l10n-vi/mail/messenger/messengercompose/messengercompose.ftl b/l10n-vi/mail/messenger/messengercompose/messengercompose.ftl
new file mode 100644
index 0000000000..5b05022133
--- /dev/null
+++ b/l10n-vi/mail/messenger/messengercompose/messengercompose.ftl
@@ -0,0 +1,441 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Định dạng gửi
+ .accesskey = F
+
+compose-send-auto-menu-item =
+ .label = Tự động
+ .accesskey = A
+
+compose-send-both-menu-item =
+ .label = Cả HTML và văn bản thuần túy
+ .accesskey = B
+
+compose-send-html-menu-item =
+ .label = Chỉ HTML
+ .accesskey = H
+
+compose-send-plain-menu-item =
+ .label = Chỉ văn bản thuần túy
+ .accesskey = P
+
+## Addressing widget
+
+# $type (String) - the type of the addressing row
+remove-address-row-button =
+ .title = Xóa trường { $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 }
+ *[other] { $type } với { $count } địa chỉ, sử dụng phím mũi tên trái để chọn chúng.
+ }
+
+# $email (String) - the email address
+# $count (Number) - the number of address pills currently present in the addressing row
+pill-aria-label =
+ { $count ->
+ *[other] { $email }, 1 của { $count }: nhấn Enter để chỉnh sửa, Delete để xóa.
+ }
+
+# $email (String) - the email address
+pill-tooltip-invalid-address = { $email } không phải là địa chỉ e-mail hợp lệ
+
+# $email (String) - the email address
+pill-tooltip-not-in-address-book = { $email } không có trong sổ địa chỉ của bạn
+
+pill-action-edit =
+ .label = Chỉnh sửa địa chỉ
+ .accesskey = e
+
+# $type (String) - the type of the addressing row, e.g. Cc, Bcc, etc.
+pill-action-select-all-sibling-pills =
+ .label = Chọn tất cả địa chỉ trong { $type }
+ .accesskey = A
+
+pill-action-select-all-pills =
+ .label = Chọn tất cả địa chỉ
+ .accesskey = S
+
+pill-action-move-to =
+ .label = Chuyển sang Đến
+ .accesskey = t
+
+pill-action-move-cc =
+ .label = Chuyển sang Cc
+ .accesskey = c
+
+pill-action-move-bcc =
+ .label = Chuyển sang Bcc
+ .accesskey = b
+
+pill-action-expand-list =
+ .label = Mở rộng danh sách
+ .accesskey = x
+
+## 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 = Ngăn đính kèm
+ .accesskey = m
+ .acceltext = { ctrl-cmd-shift-pretty-prefix }{ toggle-attachment-pane-key }
+
+toolbar-button-add-attachment =
+ .label = Đính kèm
+ .tooltiptext = Thêm một đính kèm ({ ctrl-cmd-shift-pretty-prefix }{ trigger-attachment-picker-key })
+
+add-attachment-notification-reminder2 =
+ .label = Thêm đính kèm…
+ .accesskey = A
+ .tooltiptext = { toolbar-button-add-attachment.tooltiptext }
+
+menuitem-attach-files =
+ .label = Tập tin…
+ .accesskey = F
+ .acceltext = { ctrl-cmd-shift-pretty-prefix }{ trigger-attachment-picker-key }
+
+context-menuitem-attach-files =
+ .label = Đính kèm tập tin…
+ .accesskey = F
+ .acceltext = { ctrl-cmd-shift-pretty-prefix }{ trigger-attachment-picker-key }
+
+# Note: Do not translate the term 'vCard'.
+context-menuitem-attach-vcard =
+ .label = vCard của tôi
+ .accesskey = C
+
+context-menuitem-attach-openpgp-key =
+ .label = Khóa công khai OpenPGP của tôi
+ .accesskey = K
+
+# $count (Number) - the number of attachments in the attachment bucket
+attachment-bucket-count-value =
+ { $count ->
+ [1] { $count } đính kèm
+ *[other] { $count } đính kèm
+ }
+
+attachment-area-show =
+ .title = Hiển thị ngăn đính kèm ({ ctrl-cmd-shift-pretty-prefix }{ toggle-attachment-pane-key })
+
+attachment-area-hide =
+ .title = Ẩn ngăn đính kèm ({ ctrl-cmd-shift-pretty-prefix }{ toggle-attachment-pane-key })
+
+drop-file-label-attachment =
+ { $count ->
+ *[other] Thêm dưới dạng đính kèm
+ }
+
+## Reorder Attachment Panel
+
+move-attachment-first-panel-button =
+ .label = Di chuyển lên đầu
+move-attachment-left-panel-button =
+ .label = Di chuyển sang trái
+move-attachment-right-panel-button =
+ .label = Di chuyển sang phải
+move-attachment-last-panel-button =
+ .label = Di chuyển xuống cuối
+
+button-return-receipt =
+ .label = Xác nhận
+ .tooltiptext = Yêu cầu xác nhận đã nhận thư cho thư này
+
+## Encryption
+
+encryption-menu =
+ .label = Bảo mật
+ .accesskey = c
+
+encryption-toggle =
+ .label = Mã hóa
+ .tooltiptext = Sử dụng mã hóa đầu cuối cho tin nhắn này
+
+encryption-options-openpgp =
+ .label = OpenPGP
+ .tooltiptext = Xem hoặc thay đổi cài đặt mã hóa OpenPGP
+
+encryption-options-smime =
+ .label = S/MIME
+ .tooltiptext = Xem hoặc thay đổi cài đặt mã hóa S/MIME
+
+signing-toggle =
+ .label = Ký
+ .tooltiptext = Sử dụng chữ ký điện tử cho thư này
+
+menu-openpgp =
+ .label = OpenPGP
+ .accesskey = O
+
+menu-smime =
+ .label = S/MIME
+ .accesskey = S
+
+menu-encrypt =
+ .label = Mã hóa
+ .accesskey = E
+
+menu-encrypt-subject =
+ .label = Mã hóa chủ đề
+ .accesskey = B
+
+menu-sign =
+ .label = Chữ ký số
+ .accesskey = i
+
+menu-view-certificates =
+ .label = Xem chứng nhận của người nhận
+ .accesskey = V
+
+menu-open-key-manager =
+ .label = Quản lý khóa
+ .accesskey = M
+
+openpgp-key-issue-notification-one = Mã hóa đầu cuối yêu cầu giải quyết các vấn đề của khóa đối với { $addr }
+openpgp-key-issue-notification-many = Mã hóa đầu cuối yêu cầu giải quyết các vấn đề của khóa đối với { $count } người nhận.
+
+smime-cert-issue-notification-one = Mã hóa đầu cuối yêu cầu giải quyết các vấn đề về chứng chỉ đối với { $addr }.
+smime-cert-issue-notification-many = Mã hóa end-to-end yêu cầu giải quyết các vấn đề về chứng chỉ đối với { $count } người nhận.
+
+key-notification-disable-encryption =
+ .label = Không mã hóa
+ .accesskey = D
+ .tooltiptext = Tắt mã hóa đầu cuối
+
+key-notification-resolve =
+ .label = Giải quyết…
+ .accesskey = R
+ .tooltiptext = Mở trợ lý khóa OpenPGP
+
+can-encrypt-smime-notification = Có thể mã hóa đầu cuối S/MIME.
+
+can-encrypt-openpgp-notification = Có thể mã hóa đầu cuối OpenPGP.
+
+can-e2e-encrypt-button =
+ .label = Mã hóa
+ .accesskey = E
+
+## Addressing Area
+
+to-address-row-label =
+ .value = Đến
+
+# $key (String) - the shortcut key for this field
+show-to-row-main-menuitem =
+ .label = Trường Đến
+ .accesskey = T
+ .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 = Đến
+ .accesskey = T
+
+# $key (String) - the shortcut key for this field
+show-to-row-button = Đến
+ .title = Hiện trường Đến ({ ctrl-cmd-shift-pretty-prefix }{ $key })
+
+
+cc-address-row-label =
+ .value = Cc
+
+# $key (String) - the shortcut key for this field
+show-cc-row-main-menuitem =
+ .label = Trường Cc
+ .accesskey = C
+ .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 = Cc
+ .accesskey = C
+
+# $key (String) - the shortcut key for this field
+show-cc-row-button = Cc
+ .title = Hiện trường Cc ({ ctrl-cmd-shift-pretty-prefix }{ $key })
+
+
+bcc-address-row-label =
+ .value = Bcc
+
+# $key (String) - the shortcut key for this field
+show-bcc-row-main-menuitem =
+ .label = Trường Bcc
+ .accesskey = B
+ .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 = Bcc
+ .accesskey = B
+
+# $key (String) - the shortcut key for this field
+show-bcc-row-button = Bcc
+ .title = Hiện trường Bcc ({ ctrl-cmd-shift-pretty-prefix }{ $key })
+
+extra-address-rows-menu-button =
+ .title = Các trường địa chỉ khác để hiển thị
+
+# $count (Number) - the count of addresses in the "To" and "Cc" fields.
+many-public-recipients-notice =
+ { $count ->
+ *[other] { $count } người nhận trong Đến và Cc sẽ thấy địa chỉ của nhau. Thay vào đó, bạn có thể tránh tiết lộ người nhận bằng cách sử dụng Bcc.
+ }
+many-public-recipients-bcc =
+ .label = Sử dụng Bcc thay thế
+ .accesskey = U
+
+many-public-recipients-ignore =
+ .label = Giữ người nhận ở chế độ công khai
+ .accesskey = K
+
+many-public-recipients-prompt-title = Quá nhiều người nhận công khai
+
+# $count (Number) - the count of addresses in the public recipients fields.
+many-public-recipients-prompt-msg =
+ { $count ->
+ *[other] Thư của bạn có { $count } người nhận công khai, những người này sẽ có thể xem địa chỉ của nhau. Đây có thể là một mối quan tâm về quyền riêng tư. Thay vào đó, bạn có thể tránh tiết lộ người nhận bằng cách chuyển người nhận từ To/Cc sang Bcc.
+ }
+
+many-public-recipients-prompt-cancel = Hủy bỏ gửi
+many-public-recipients-prompt-send = Gửi ngay
+
+## Notifications
+
+# Variables:
+# $identity (string) - The name of the used identity, most likely an email address.
+compose-missing-identity-warning = Không tìm thấy danh tính duy nhất phù hợp với địa chỉ Từ. Thư sẽ được gửi bằng trường Từ hiện tại và cài đặt từ danh tính { $identity }.
+
+encrypted-bcc-warning = Khi gửi một thư được mã hóa, người nhận trong Bcc không bị ẩn hoàn toàn. Tất cả người nhận có thể xác định được họ.
+
+encrypted-bcc-ignore-button = Đã hiểu
+
+## Editing
+
+
+# Tools
+
+compose-tool-button-remove-text-styling =
+ .tooltiptext = Xóa kiểu định dạng văn bản
+
+## Filelink
+
+# A text used in a tooltip of Filelink attachments, whose account has been
+# removed or is unknown.
+cloud-file-unknown-account-tooltip = Đã tải lên tài khoản Filelink không xác định.
+
+# Placeholder file
+
+# Title for the html placeholder file.
+# $filename - name of the file
+cloud-file-placeholder-title = { $filename } - Đính kèm 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 = Tập tin { $filename } đã được đính kèm dưới dạng Filelink. Nó có thể được tải xuống từ liên kết bên dưới.
+
+# 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.
+cloud-file-count-header =
+ { $count ->
+ *[other] Tôi đã liên kết { $count } tập tin với email này:
+ }
+
+# 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 = Tìm hiểu thêm về { $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 = Tìm hiểu thêm về { $firstLinks } và { $lastLink }.
+
+# Tooltip for an icon, indicating that the link is protected by a password.
+cloud-file-tooltip-password-protected-link = Liên kết được bảo vệ bằng mật khẩu
+
+# 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 = Dịch vụ Filelink:
+cloud-file-template-size = Kích cỡ:
+cloud-file-template-link = Liên kết:
+cloud-file-template-password-protected-link = Liên kết được bảo vệ bằng mật khẩu:
+cloud-file-template-expiry-date = Ngày hết hạn:
+cloud-file-template-download-limit = Giới hạn tải xuống:
+
+# Messages
+
+# $provider (string) - name of the online storage service that reported the error
+cloud-file-connection-error-title = Lỗi kết nối
+cloud-file-connection-error = { -brand-short-name } đang ngoại tuyến. Không thể kết nối với { $provider }.
+
+# $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 = Không thể tải { $filename } lên { $provider }
+
+# $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-title = Lỗi đổi tên
+cloud-file-rename-error = Đã xảy ra sự cố khi đổi tên { $filename } trên { $provider }.
+
+# $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 = Không thể đổi tên { $filename } trên { $provider }
+
+# $provider (string) - name of the online storage service that reported the error
+cloud-file-rename-not-supported = { $provider } không hỗ trợ đổi tên các tập tin đã tải lên.
+
+# $filename (string) - name of the file that was renamed and caused the error
+cloud-file-attachment-error-title = Lỗi đính kèm Filelink
+cloud-file-attachment-error = Không cập nhật được đính kèm Filelink { $filename } vì tập tin cục bộ của nó đã bị di chuyển hoặc bị xóa.
+
+# $filename (string) - name of the file that was renamed and caused the error
+cloud-file-account-error-title = Lỗi tài khoản Filelink
+cloud-file-account-error = Không cập nhật được đính kèm Filelink { $filename } vì tài khoản Filelink của nó đã bị xóa.
+
+## Link Preview
+
+link-preview-title = Xem trước liên kết
+link-preview-description = { -brand-short-name } có thể thêm bản xem trước được nhúng khi dán các liên kết.
+link-preview-autoadd = Tự động thêm bản xem trước liên kết khi có thể
+link-preview-replace-now = Thêm bản xem trước cho liên kết này?
+link-preview-yes-replace = Đồng ý
+
+## Dictionary selection popup
+
+spell-add-dictionaries =
+ .label = Thêm từ điển…
+ .accesskey = A
diff --git a/l10n-vi/mail/messenger/migration.ftl b/l10n-vi/mail/messenger/migration.ftl
new file mode 100644
index 0000000000..2a933457ba
--- /dev/null
+++ b/l10n-vi/mail/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 = Chuẩn bị sẵn sàng { -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 = Kiểm tra một thay đổi nhanh
+migration-task-test-slow = Kiểm tra một thay đổi chậm
+migration-task-test-progress = Kiểm tra thanh tiến trình
diff --git a/l10n-vi/mail/messenger/openpgp/backupKeyPassword.ftl b/l10n-vi/mail/messenger/openpgp/backupKeyPassword.ftl
new file mode 100644
index 0000000000..9fcc0a4f26
--- /dev/null
+++ b/l10n-vi/mail/messenger/openpgp/backupKeyPassword.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/.
+
+set-password-window =
+ .title = Chọn mật khẩu để sao lưu khóa OpenPGP của bạn
+
+set-password-legend = Chọn mật khẩu
+
+set-password-message = Mật khẩu sao lưu chứng chỉ mà bạn đặt ở đây bảo vệ tập tin sao lưu mà bạn sẽ tạo. Bạn phải đặt mật khẩu để tiến hành sao lưu.
+
+set-password-backup-pw =
+ .value = Mật khẩu sao lưu khóa bí mật:
+
+set-password-repeat-backup-pw =
+ .value = Mật khẩu sao lưu khóa bí mật (một lần nữa):
+
+set-password-reminder = <b>Quan trọng!</b> Nếu bạn quên mật khẩu sao lưu khóa bí mật của mình, bạn sẽ không thể khôi phục bản sao lưu này sau này. Hãy ghi lại nó ở một vị trí an toàn.
+
+password-quality-meter = Độ an toàn mật khẩu
diff --git a/l10n-vi/mail/messenger/openpgp/changeExpiryDlg.ftl b/l10n-vi/mail/messenger/openpgp/changeExpiryDlg.ftl
new file mode 100644
index 0000000000..8d9647f5d0
--- /dev/null
+++ b/l10n-vi/mail/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 = Thay đổi thời hạn sử dụng khóa
+
+info-will-expire = Khóa này hiện được định cấu hình để hết hạn vào { $date }.
+info-already-expired = Khóa này đã hết hạn.
+info-does-not-expire = Khóa này hiện được định cấu hình để không bao giờ hết hạn.
+
+info-explanation-1 = <b>Sau khi khóa hết hạn</b>, bạn không thể sử dụng khóa đó để mã hóa hoặc ký kỹ thuật số nữa.
+
+info-explanation-2 = Để sử dụng khóa này trong thời gian dài hơn, hãy thay đổi ngày hết hạn của nó, sau đó chia sẻ lại khóa công khai với các đối tác trò chuyện của bạn.
+
+expire-dont-change =
+ .label = Không thay đổi hạn sử dụng
+expire-never-label =
+ .label = Khóa sẽ không bao giờ hết hạn
+expire-in-label =
+ .label = Khóa sẽ hết hạn sau:
+expire-in-months = Tháng
diff --git a/l10n-vi/mail/messenger/openpgp/composeKeyStatus.ftl b/l10n-vi/mail/messenger/openpgp/composeKeyStatus.ftl
new file mode 100644
index 0000000000..5d146c5574
--- /dev/null
+++ b/l10n-vi/mail/messenger/openpgp/composeKeyStatus.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/.
+
+openpgp-compose-key-status-intro-need-keys = Để gửi một tin nhắn được mã hóa đầu cuối, bạn phải lấy và chấp nhận một khóa công khai cho mỗi người nhận.
+openpgp-compose-key-status-keys-heading = Tính khả dụng của các khóa OpenPGP:
+openpgp-compose-key-status-title =
+ .title = Thư bảo mật OpenPGP
+openpgp-compose-key-status-recipient =
+ .label = Người nhận
+openpgp-compose-key-status-status =
+ .label = Trạng thái
+openpgp-compose-key-status-open-details = Quản lý khóa cho người nhận đã chọn…
+openpgp-recip-good = ok
+openpgp-recip-missing = không có sẵn khóa
+openpgp-recip-none-accepted = không có khóa được chấp nhận
+openpgp-compose-general-info-alias = { -brand-short-name } thường yêu cầu khóa công khai của người nhận phải chứa ID người dùng có địa chỉ email phù hợp. Điều này có thể được ghi đè bằng cách sử dụng quy tắc bí danh người nhận OpenPGP.
+openpgp-compose-general-info-alias-learn-more = Tìm hiểu thêm
+openpgp-compose-alias-status-direct =
+ { $count ->
+ *[other] được ánh xạ tới { $count } khóa bí danh
+ }
+openpgp-compose-alias-status-error = không thể sử dụng/không khả dụng khóa bí danh
diff --git a/l10n-vi/mail/messenger/openpgp/keyAssistant.ftl b/l10n-vi/mail/messenger/openpgp/keyAssistant.ftl
new file mode 100644
index 0000000000..604f48e959
--- /dev/null
+++ b/l10n-vi/mail/messenger/openpgp/keyAssistant.ftl
@@ -0,0 +1,107 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Trợ lý khóa OpenPGP
+openpgp-key-assistant-rogue-warning = Tránh chấp nhận một khóa giả mạo. Để đảm bảo bạn đã lấy đúng khóa, bạn nên xác minh nó. <a data-l10n-name="openpgp-link">Tìm hiểu thêm…</a>
+
+## Encryption status
+
+openpgp-key-assistant-recipients-issue-header = Không thể mã hóa
+# Variables:
+# $count (Number) - The number of recipients that need attention.
+openpgp-key-assistant-recipients-issue-description =
+ { $count ->
+ *[other] Để mã hóa, bạn phải lấy và chấp nhận các khóa có thể sử dụng cho { $count } người nhận. <a data-l10n-name="openpgp-link">Tìm hiểu thêm…</a>
+ }
+openpgp-key-assistant-info-alias = { -brand-short-name } thường yêu cầu khóa công khai của người nhận phải chứa ID người dùng có địa chỉ email phù hợp. Điều này có thể được ghi đè bằng cách sử dụng quy tắc bí danh người nhận OpenPGP. <a data-l10n-name="openpgp-link">Tìm hiểu thêm…</a>
+# Variables:
+# $count (Number) - The number of recipients that need attention.
+openpgp-key-assistant-recipients-description =
+ { $count ->
+ *[other] Bạn đã có các khóa có thể sử dụng và được chấp nhận cho { $count } người nhận.
+ }
+openpgp-key-assistant-recipients-description-no-issues = Thư này có thể được mã hóa. Bạn có các khóa có thể sử dụng và được chấp nhận cho tất cả người nhận.
+
+## 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 ->
+ *[other] { -brand-short-name } đã tìm thấy các khóa sau cho { $recipient }.
+ }
+openpgp-key-assistant-valid-description = Chọn khóa mà bạn muốn chấp nhận
+# Variables:
+# $numKeys (Number) - The number of available keys.
+openpgp-key-assistant-invalid-title =
+ { $numKeys ->
+ *[other] Không thể sử dụng các khóa sau, trừ khi bạn nhận được bản cập nhật.
+ }
+openpgp-key-assistant-no-key-available = Không có sẵn khóa.
+openpgp-key-assistant-multiple-keys = Nhiều khóa có sẵn.
+# Variables:
+# $count (Number) - The number of unaccepted keys.
+openpgp-key-assistant-key-unaccepted =
+ { $count ->
+ *[other] Nhiều khóa có sẵn, nhưng chưa có khóa nào được chấp nhận.
+ }
+# Variables:
+# $date (String) - The expiration date of the key.
+openpgp-key-assistant-key-accepted-expired = Khóa được chấp nhận đã hết hạn vào { $date }.
+openpgp-key-assistant-keys-accepted-expired = Nhiều khóa được chấp nhận đã hết hạn.
+# Variables:
+# $date (String) - The expiration date of the key.
+openpgp-key-assistant-this-key-accepted-expired = Khóa này trước đây đã được chấp nhận nhưng đã hết hạn vào { $date }.
+# Variables:
+# $date (String) - The expiration date of the key.
+openpgp-key-assistant-key-unaccepted-expired-one = Khóa hết hạn vào { $date }.
+openpgp-key-assistant-key-unaccepted-expired-many = Nhiều khóa đã hết hạn.
+openpgp-key-assistant-key-fingerprint = Vân tay
+openpgp-key-assistant-key-source =
+ { $count ->
+ *[other] Nguồn
+ }
+openpgp-key-assistant-key-collected-attachment = tập tin đính kèm email
+# Autocrypt is the name of a standard.
+openpgp-key-assistant-key-collected-autocrypt = Tiêu đề tự động mã hóa
+# Web Key Directory (WKD) is a concept.
+openpgp-key-assistant-key-collected-wkd = Thư mục khoá Web
+openpgp-key-assistant-keys-has-collected =
+ { $count ->
+ *[other] Nhiều khóa đã được tìm thấy, nhưng chưa có khóa nào được chấp nhận.
+ }
+openpgp-key-assistant-key-rejected = Khóa này đã bị từ chối trước đó.
+openpgp-key-assistant-key-accepted-other = Khóa này trước đây đã được chấp nhận cho một địa chỉ email khác.
+# Variables:
+# $recipient (String) - The email address of the recipient needing resolution.
+openpgp-key-assistant-resolve-discover-info = Khám phá các khóa bổ sung hoặc cập nhật trực tuyến cho { $recipient } hoặc nhập chúng từ tập tin.
+
+## Discovery section
+
+openpgp-key-assistant-discover-title = Đang khám phá trực tuyến.
+# Variables:
+# $recipient (String) - The email address which we're discovering keys.
+openpgp-key-assistant-discover-keys = Đang khám phá các khóa cho { $recipient }…
+# Variables:
+# $recipient (String) - The email address which we're discovering keys.
+openpgp-key-assistant-expired-key-update =
+ Đã tìm thấy bản cập nhật cho một trong các khóa được chấp nhận trước đó cho { $recipient }.
+ Bây giờ nó có thể được sử dụng vì nó không còn hết hạn.
+
+## Dialog buttons
+
+openpgp-key-assistant-discover-online-button = Khám phá khóa công khai trực tuyến…
+openpgp-key-assistant-import-keys-button = Nhập khóa công khai từ tập tin…
+openpgp-key-assistant-issue-resolve-button = Giải quyết…
+openpgp-key-assistant-view-key-button = Xem khóa…
+openpgp-key-assistant-recipients-show-button = Hiển thị
+openpgp-key-assistant-recipients-hide-button = Ẩn
+openpgp-key-assistant-cancel-button = Hủy bỏ
+openpgp-key-assistant-back-button = Quay lại
+openpgp-key-assistant-accept-button = Chấp nhận
+openpgp-key-assistant-close-button = Đóng
+# Variables:
+# $date (String) - The key creation date.
+openpgp-key-assistant-key-created = được tạo vào { $date }
diff --git a/l10n-vi/mail/messenger/openpgp/keyWizard.ftl b/l10n-vi/mail/messenger/openpgp/keyWizard.ftl
new file mode 100644
index 0000000000..692c67db81
--- /dev/null
+++ b/l10n-vi/mail/messenger/openpgp/keyWizard.ftl
@@ -0,0 +1,191 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Thêm Khóa OpenPGP Cá nhân cho { $identity }
+
+key-wizard-button =
+ .buttonlabelaccept = Tiếp tục
+ .buttonlabelhelp = Quay lại
+
+key-wizard-dialog =
+ .buttonlabelaccept = Tiếp tục
+ .buttonlabelextra1 = Quay lại
+
+key-wizard-warning = <b>Nếu bạn có khóa cá nhân hiện tại</b> cho địa chỉ email này, bạn nên nhập khóa đó. Nếu không, bạn sẽ không có quyền truy cập vào kho lưu trữ email được mã hóa của mình, cũng như không thể đọc các email được mã hóa đến từ những người vẫn đang sử dụng khóa hiện có của bạn.
+
+key-wizard-learn-more = Tìm hiểu thêm
+
+radio-create-key =
+ .label = Tạo khóa OpenPGP mới
+ .accesskey = C
+
+radio-import-key =
+ .label = Nhập khóa OpenPGP hiện có
+ .accesskey = I
+
+radio-gnupg-key =
+ .label = Sử dụng khóa ngoài của bạn thông qua GnuPG (ví dụ: từ thẻ thông minh)
+ .accesskey = U
+
+## Generate key section
+
+openpgp-generate-key-title = Tạo khóa OpenPGP
+
+openpgp-generate-key-info = <b>Quá trình tạo khóa có thể mất đến vài phút để hoàn tất.</b> Không thoát ứng dụng khi đang tiến hành tạo khóa. Tích cực duyệt hoặc thực hiện các thao tác sử dụng nhiều đĩa trong quá trình tạo khóa sẽ bổ sung 'nhóm ngẫu nhiên' và tăng tốc quá trình. Bạn sẽ được thông báo khi quá trình tạo khóa hoàn tất.
+
+openpgp-keygen-expiry-title = Khóa hết hạn
+
+openpgp-keygen-expiry-description = Xác định thời gian hết hạn của khóa mới tạo của bạn. Sau đó, bạn có thể kiểm soát ngày để gia hạn nếu cần.
+
+radio-keygen-expiry =
+ .label = Khóa hết hạn sau
+ .accesskey = e
+
+radio-keygen-no-expiry =
+ .label = Khóa không hết hạn
+ .accesskey = d
+
+openpgp-keygen-days-label =
+ .label = ngày
+openpgp-keygen-months-label =
+ .label = tháng
+openpgp-keygen-years-label =
+ .label = năm
+
+openpgp-keygen-advanced-title = Cài đặt nâng cao
+
+openpgp-keygen-advanced-description = Kiểm soát cài đặt nâng cao của khóa OpenPGP của bạn.
+
+openpgp-keygen-keytype =
+ .value = Loại khóa:
+ .accesskey = t
+
+openpgp-keygen-keysize =
+ .value = Kích thước khóa:
+ .accesskey = s
+
+openpgp-keygen-type-rsa =
+ .label = RSA
+
+openpgp-keygen-type-ecc =
+ .label = ECC (Elliptic Curve)
+
+openpgp-keygen-button = Tạo khóa
+
+openpgp-keygen-progress-title = Đang tạo khóa OpenPGP mới của bạn…
+
+openpgp-keygen-import-progress-title = Nhập khóa OpenPGP của bạn…
+
+openpgp-import-success = Đã nhập thành công khóa OpenPGP!
+
+openpgp-import-success-title = Hoàn tất quá trình nhập
+
+openpgp-import-success-description = Để bắt đầu sử dụng khóa OpenPGP đã nhập của bạn để mã hóa email, hãy đóng hộp thoại này và truy cập Cài đặt tài khoản của bạn để chọn nó.
+
+openpgp-keygen-confirm =
+ .label = Xác nhận
+
+openpgp-keygen-dismiss =
+ .label = Hủy bỏ
+
+openpgp-keygen-cancel =
+ .label = Hủy bỏ quá trình…
+
+openpgp-keygen-import-complete =
+ .label = Đóng
+ .accesskey = C
+
+openpgp-keygen-missing-username = Không có tên được chỉ định cho tài khoản hiện tại. Vui lòng nhập giá trị vào trường "Tên của bạn" trong cài đặt tài khoản.
+openpgp-keygen-long-expiry = Bạn không thể tạo khóa hết hạn sau hơn 100 năm.
+openpgp-keygen-short-expiry = Khóa của bạn phải có giá trị trong ít nhất một ngày.
+
+openpgp-keygen-ongoing = Đã ở trong quá trình tạo khóa!
+
+openpgp-keygen-error-core = Không thể khởi tạo OpenPGP Core Service
+
+openpgp-keygen-error-failed = Trình tạo khóa OpenPGP đột ngột không thành công
+
+# $identity (String) - the newly generate OpenPGP Key
+openpgp-keygen-error-revocation = Đã tạo thành công khóa OpenPGP nhưng không thể thu hồi khóa { $key }
+
+openpgp-keygen-abort-title = Hủy việc tạo khóa?
+openpgp-keygen-abort = Khóa OpenPGP hiện đang được tạo, bạn có chắc chắn muốn hủy nó không?
+
+# $identity (String) - the name and email address of the currently selected identity
+openpgp-key-confirm = Tạo khóa công khai và khóa bí mật cho { $identity }?
+
+## Import Key section
+
+openpgp-import-key-title = Nhập khóa OpenPGP cá nhân hiện có
+
+openpgp-import-key-legend = Chọn một tập tin đã sao lưu trước đó.
+
+openpgp-import-key-description = Bạn có thể nhập các khóa cá nhân đã được tạo bằng phần mềm OpenPGP khác.
+
+openpgp-import-key-info = Phần mềm khác có thể mô tả khóa cá nhân bằng các thuật ngữ thay thế như khóa riêng, khóa bí mật, khóa cá nhân hoặc cặp khóa.
+
+# $count (Number) - the number of keys found in the selected files
+openpgp-import-key-list-amount-2 =
+ { $count ->
+ *[other] { -brand-short-name } đã tìm thấy { $count } khóa có thể nhập.
+ }
+
+openpgp-import-key-list-description = Xác nhận khóa nào có thể được coi là khóa cá nhân của bạn. Chỉ những khóa do bạn tự tạo và thể hiện danh tính của riêng bạn mới được sử dụng làm khóa cá nhân. Bạn có thể thay đổi tùy chọn này sau trong hộp thoại Thuộc tính khóa.
+
+openpgp-import-key-list-caption = Các khóa được đánh dấu được coi là Khóa cá nhân sẽ được liệt kê trong phần Mã hóa đầu cuối. Những cái khác sẽ có sẵn bên trong Trình quản lý khóa.
+
+openpgp-passphrase-prompt-title = Yêu cầu cụm mật khẩu
+
+# $identity (String) - the id of the key being imported
+openpgp-passphrase-prompt = Vui lòng nhập cụm mật khẩu để mở khóa sau: { $key }
+
+openpgp-import-key-button =
+ .label = Chọn tập tin để nhập…
+ .accesskey = S
+
+import-key-file = Nhập tập tin khóa OpenPGP
+
+import-key-personal-checkbox =
+ .label = Coi khóa này như một khóa cá nhân
+
+gnupg-file = Tập tin GnuPG
+
+import-error-file-size = <b>Lỗi!</b> Các tập tin lớn hơn 5MB không được hỗ trợ.
+
+# $error (String) - the reported error from the failed key import method
+import-error-failed = <b>Lỗi!</b> Không thể nhập tập tin. { $error }
+
+# $error (String) - the reported error from the failed key import method
+openpgp-import-keys-failed = <b>Lỗi!</b> Không thể nhập khóa. { $error }
+
+openpgp-import-identity-label = Danh tính
+
+openpgp-import-fingerprint-label = Vân tay
+
+openpgp-import-created-label = Đã tạo
+
+openpgp-import-bits-label = Bit
+
+openpgp-import-key-props =
+ .label = Thuộc tính khóa
+ .accesskey = K
+
+## External Key section
+
+openpgp-external-key-title = Khóa GnuPG bên ngoài
+
+openpgp-external-key-description = Định cấu hình khóa GnuPG bên ngoài bằng cách nhập ID khóa
+
+openpgp-external-key-info = Ngoài ra, bạn phải sử dụng Trình quản lý khóa để nhập và chấp nhận khóa công khai tương ứng.
+
+openpgp-external-key-warning = <b>Bạn chỉ có thể định cấu hình một khóa GnuPG bên ngoài.</b> Mục nhập trước đó của bạn sẽ được thay thế.
+
+openpgp-save-external-button = Lưu ID khóa
+
+openpgp-external-key-label = ID khóa bí mật:
+
+openpgp-external-key-input =
+ .placeholder = 123456789341298340
diff --git a/l10n-vi/mail/messenger/openpgp/msgReadStatus.ftl b/l10n-vi/mail/messenger/openpgp/msgReadStatus.ftl
new file mode 100644
index 0000000000..f873391522
--- /dev/null
+++ b/l10n-vi/mail/messenger/openpgp/msgReadStatus.ftl
@@ -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/.
+
+
+## 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] Hiển thị bảo mật thư (⌘ ⌥ { message-header-show-security-info-key })
+ *[other] Hiển thị bảo mật thư (Ctrl+Alt+{ message-header-show-security-info-key })
+ }
+
+openpgp-view-signer-key =
+ .label = Xem khóa của người ký
+openpgp-view-your-encryption-key =
+ .label = Xem khóa giải mã của bạn
+openpgp-openpgp = OpenPGP
+
+openpgp-no-sig = Không có chữ ký số
+openpgp-no-sig-info = Thư này không có chữ kí điện tử của người gửi. Việc thiếu chữ kí điện tử có nghĩa là lá thư có thể đã được gửi bởi một người giả dạng địa chỉ email này. Cũng có thể lá thư đã bị sửa đổi trong khi truyền tải qua hệ thống mạng.
+openpgp-uncertain-sig = Chữ ký số không chắc chắn
+openpgp-invalid-sig = Chữ ký số không hợp lệ
+openpgp-good-sig = Chữ ký số tốt
+
+openpgp-sig-uncertain-no-key = Thư này có chứa chữ ký số, nhưng không chắc liệu nó có đúng hay không. Để xác minh chữ ký, bạn cần lấy bản sao khóa công khai của người gửi.
+openpgp-sig-uncertain-uid-mismatch = Thư này chứa chữ ký số nhưng đã phát hiện thấy không khớp. Thư được gửi từ một địa chỉ email không khớp với khóa công khai của người ký.
+openpgp-sig-uncertain-not-accepted = Thư này chứa chữ ký số, nhưng bạn vẫn chưa quyết định xem khóa của người ký có được bạn chấp nhận hay không.
+openpgp-sig-invalid-rejected = Thư này chứa chữ ký số, nhưng trước đó bạn đã quyết định từ chối khóa người ký.
+openpgp-sig-invalid-technical-problem = Thư này chứa chữ ký số, nhưng đã phát hiện ra lỗi kỹ thuật. Thư đã bị hỏng hoặc đã bị người khác sửa đổi.
+openpgp-sig-valid-unverified = Thư này bao gồm một chữ ký số hợp lệ từ một khóa mà bạn đã chấp nhận. Tuy nhiên, bạn vẫn chưa xác minh được rằng khóa có thực sự thuộc sở hữu của người gửi hay không.
+openpgp-sig-valid-verified = Thư này bao gồm một chữ ký số hợp lệ từ một khóa đã được xác minh.
+openpgp-sig-valid-own-key = Thư này bao gồm một chữ ký số hợp lệ từ khóa cá nhân của bạn.
+
+openpgp-sig-key-id = ID khóa người ký: { $key }
+openpgp-sig-key-id-with-subkey-id = ID khóa người ký: { $key } (ID khóa phụ: { $subkey })
+
+openpgp-enc-key-id = ID khóa giải mã của bạn: { $key }
+openpgp-enc-key-with-subkey-id = ID khóa giải mã của bạn: { $key } (ID khóa phụ: { $subkey })
+
+openpgp-enc-none = Thư không được mã hóa
+openpgp-enc-none-label = Thư này không được mã hóa trước khi gửi. Thông tin gửi qua Internet mà không mã hóa có thể bị thấy bởi người khác trong quá trình truyền tải.
+
+openpgp-enc-invalid-label = Thư không thể giải mã
+openpgp-enc-invalid = Thư này đã được mã hóa trước khi được gửi đến bạn, nhưng nó không thể giải mã được.
+
+openpgp-enc-clueless = Có những vấn đề chưa biết đối với thư mã hóa này.
+
+openpgp-enc-valid-label = Thư được mã hóa
+openpgp-enc-valid = Thư này đã được mã hóa trước khi nó được gửi cho bạn. Mã hóa đảm bảo chỉ những người nhận mới có thể đọc được thư đó.
+
+openpgp-unknown-key-id = Khóa không xác định
+
+openpgp-other-enc-additional-key-ids = Ngoài ra, thư đã được mã hóa cho chủ sở hữu của các khóa sau:
+openpgp-other-enc-all-key-ids = Thư đã được mã hóa cho chủ sở hữu của các khóa sau:
+
+openpgp-message-header-encrypted-ok-icon =
+ .alt = Giải mã thành công
+openpgp-message-header-encrypted-notok-icon =
+ .alt = Giải mã thất bại
+
+openpgp-message-header-signed-ok-icon =
+ .alt = Chữ ký tốt
+# Mismatch icon is used for notok state as well
+openpgp-message-header-signed-mismatch-icon =
+ .alt = Chữ ký lỗi
+openpgp-message-header-signed-unknown-icon =
+ .alt = Trạng thái chữ ký không xác định
+openpgp-message-header-signed-verified-icon =
+ .alt = Chữ ký đã xác minh
+openpgp-message-header-signed-unverified-icon =
+ .alt = Chữ ký chưa được xác minh
diff --git a/l10n-vi/mail/messenger/openpgp/oneRecipientStatus.ftl b/l10n-vi/mail/messenger/openpgp/oneRecipientStatus.ftl
new file mode 100644
index 0000000000..302219570e
--- /dev/null
+++ b/l10n-vi/mail/messenger/openpgp/oneRecipientStatus.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/.
+
+openpgp-one-recipient-status-title =
+ .title = Tin nhắn bảo mật OpenPGP
+openpgp-one-recipient-status-status =
+ .label = Trạng thái
+openpgp-one-recipient-status-key-id =
+ .label = ID khóa
+openpgp-one-recipient-status-created-date =
+ .label = Đã tạo lúc
+openpgp-one-recipient-status-expires-date =
+ .label = Hết hạn
+openpgp-one-recipient-status-open-details =
+ .label = Mở chi tiết và chỉnh sửa chấp nhận…
+openpgp-one-recipient-status-discover =
+ .label = Khám phá khóa mới hoặc khóa đã cập nhật
+
+openpgp-one-recipient-status-instruction1 = Để gửi một tin nhắn được mã hóa đầu-cuối đến người nhận, bạn cần lấy khóa công khai OpenPGP của họ và đánh dấu là đã chấp nhận.
+openpgp-one-recipient-status-instruction2 = Để lấy khóa công khai của họ, hãy nhập chúng từ email mà họ đã gửi cho bạn và bao gồm nó. Ngoài ra, bạn có thể thử khám phá khóa công khai của họ trên một thư mục.
+
+openpgp-key-own = Đã chấp nhận (khóa cá nhân)
+openpgp-key-secret-not-personal = Không sử dụng được
+openpgp-key-verified = Đã chấp nhận (đã xác minh)
+openpgp-key-unverified = Đã chấp nhận (chưa xác minh)
+openpgp-key-undecided = Không được chấp nhận (chưa quyết định)
+openpgp-key-rejected = Không được chấp nhận (bị từ chối)
+openpgp-key-expired = Đã hết hạn
+
+openpgp-intro = Các khóa công khai có sẵn cho { $key }
+
+openpgp-pubkey-import-id = ID: { $kid }
+openpgp-pubkey-import-fpr = Vân tay: { $fpr }
+
+openpgp-pubkey-import-intro =
+ { $num ->
+ *[other] Tập tin chứa { $num } khóa công khai như được hiển thị bên dưới:
+ }
+
+openpgp-pubkey-import-accept =
+ { $num ->
+ *[other] Bạn có chấp nhận các khóa này để xác minh chữ ký số và mã hóa thư, cho tất cả các địa chỉ email được hiển thị không?
+ }
+
+pubkey-import-button =
+ .buttonlabelaccept = Nhập
+ .buttonaccesskeyaccept = I
diff --git a/l10n-vi/mail/messenger/openpgp/openpgp-frontend.ftl b/l10n-vi/mail/messenger/openpgp/openpgp-frontend.ftl
new file mode 100644
index 0000000000..8e2e5beb98
--- /dev/null
+++ b/l10n-vi/mail/messenger/openpgp/openpgp-frontend.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/.
+
+openpgp-manage-keys-openpgp-cmd =
+ .label = Trình quản lý khóa OpenPGP
+ .accesskey = O
+
+openpgp-ctx-decrypt-open =
+ .label = Giải mã và mở
+ .accesskey = D
+openpgp-ctx-decrypt-save =
+ .label = Giải mã và lưu dưới dạng…
+ .accesskey = C
+openpgp-ctx-import-key =
+ .label = Nhập khóa OpenPGP
+ .accesskey = I
+openpgp-ctx-verify-att =
+ .label = Xác minh chữ ký
+ .accesskey = V
+
+openpgp-has-sender-key = Thư này chứa khóa công khai OpenPGP của người gửi.
+openpgp-be-careful-new-key = Cảnh báo: Khóa công khai OpenPGP mới trong thông báo này khác với các khóa công khai mà trước đây bạn đã chấp nhận cho { $email }.
+
+openpgp-import-sender-key =
+ .label = Nhập…
+
+openpgp-search-keys-openpgp =
+ .label = Khám phá khóa OpenPGP
+
+openpgp-missing-signature-key = Thư này đã được ký bằng một khóa mà bạn chưa có.
+
+openpgp-search-signature-key =
+ .label = Khám phá…
+
+# Don't translate the terms "OpenPGP" and "MS-Exchange"
+openpgp-broken-exchange-opened = Đây là thông báo OpenPGP dường như đã bị MS-Exchange làm hỏng và không thể sửa được thông báo này vì được mở từ một tập tin cục bộ. Sao chép thư vào một thư mục thư để thử sửa chữa tự động.
+openpgp-broken-exchange-info = Đây là thông báo OpenPGP dường như đã bị hỏng bởi MS-Exchange. Nếu nội dung thư không được hiển thị như mong đợi, bạn có thể thử sửa chữa tự động.
+openpgp-broken-exchange-repair =
+ .label = Sửa chữa thư
+openpgp-broken-exchange-wait = Vui lòng chờ…
+
+openpgp-cannot-decrypt-because-mdc =
+ Đây là một thư được mã hóa sử dụng một cơ chế cũ và dễ bị tấn công.
+ Nó có thể đã được sửa đổi khi đang chuyển, với ý định lấy cắp nội dung của nó.
+ Để ngăn ngừa rủi ro này, nội dung không được hiển thị.
+
+openpgp-cannot-decrypt-because-missing-key = Không có khóa bí mật cần thiết để giải mã thông báo này.
+
+openpgp-partially-signed =
+ Chỉ một tập hợp con của thông báo này được ký điện tử bằng OpenPGP.
+ Nếu bạn nhấp vào nút xác minh, các phần không được bảo vệ sẽ bị ẩn và trạng thái của chữ ký điện tử sẽ được hiển thị.
+
+openpgp-partially-encrypted =
+ Chỉ một tập hợp con của thông báo này được mã hóa bằng OpenPGP.
+ Các phần có thể đọc được của thư đã được hiển thị không được mã hóa.
+ Nếu bạn nhấp vào nút giải mã, nội dung của các phần được mã hóa sẽ được hiển thị.
+
+openpgp-reminder-partial-display = Nhắc nhở: Thông báo hiển thị bên dưới chỉ là một tập hợp con của thông báo gốc.
+
+openpgp-partial-verify-button = Xác minh
+openpgp-partial-decrypt-button = Giải mã
+
+openpgp-unexpected-key-for-you = Cảnh báo: Thư này chứa khóa OpenPGP không xác định đề cập đến một trong các địa chỉ email của riêng bạn. Nếu đây không phải là một trong những chìa khóa của riêng bạn, nó có thể là một nỗ lực để lừa những người trao đổi khác.
diff --git a/l10n-vi/mail/messenger/openpgp/openpgp.ftl b/l10n-vi/mail/messenger/openpgp/openpgp.ftl
new file mode 100644
index 0000000000..35c8370987
--- /dev/null
+++ b/l10n-vi/mail/messenger/openpgp/openpgp.ftl
@@ -0,0 +1,671 @@
+
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Để gửi thư được mã hóa hoặc được ký điện tử, bạn cần định cấu hình công nghệ mã hóa, OpenPGP hoặc S/MIME.
+e2e-intro-description-more = Chọn khóa cá nhân của bạn để cho phép sử dụng OpenPGP hoặc chứng chỉ cá nhân của bạn để cho phép sử dụng S/MIME. Đối với khóa cá nhân hoặc chứng chỉ, bạn sở hữu khóa bí mật tương ứng.
+
+e2e-signing-description = Chữ ký điện tử cho phép người nhận xác minh rằng thư đã được bạn gửi và nội dung của nó không bị thay đổi. Các thư được mã hóa luôn được ký theo mặc định.
+
+e2e-sign-message =
+ .label = Ký các thư không được mã hóa
+ .accesskey = u
+
+e2e-disable-enc =
+ .label = Tắt mã hóa cho thư mới
+ .accesskey = D
+e2e-enable-enc =
+ .label = Bật mã hóa cho thư mới
+ .accesskey = n
+e2e-enable-description = Bạn sẽ có thể tắt mã hóa cho từng thư.
+
+e2e-advanced-section = Cài đặt nâng cao
+e2e-attach-key =
+ .label = Đính kèm khóa công khai của tôi khi thêm chữ ký số OpenPGP
+ .accesskey = P
+e2e-encrypt-subject =
+ .label = Mã hóa chủ đề của thư OpenPGP
+ .accesskey = b
+e2e-encrypt-drafts =
+ .label = Lưu trữ thư nháp ở định dạng được mã hóa
+ .accesskey = r
+
+openpgp-key-user-id-label = Tài khoản / ID người dùng
+openpgp-keygen-title-label =
+ .title = Tạo khóa OpenPGP
+openpgp-cancel-key =
+ .label = Hủy bỏ
+ .tooltiptext = Hủy bỏ tạo khóa
+openpgp-key-gen-expiry-title =
+ .label = Khóa hết hạn
+openpgp-key-gen-expire-label = Khóa hết hạn sau
+openpgp-key-gen-days-label =
+ .label = ngày
+openpgp-key-gen-months-label =
+ .label = tháng
+openpgp-key-gen-years-label =
+ .label = năm
+openpgp-key-gen-no-expiry-label =
+ .label = Khóa không hết hạn
+openpgp-key-gen-key-size-label = Kích thước khóa
+openpgp-key-gen-console-label = Trình tạo khóa
+openpgp-key-gen-key-type-label = Loại khóa
+openpgp-key-gen-key-type-rsa =
+ .label = RSA
+openpgp-key-gen-key-type-ecc =
+ .label = ECC (Elliptic Curve)
+openpgp-generate-key =
+ .label = Tạo khóa
+ .tooltiptext = Tạo khóa tuân thủ OpenPGP mới để mã hóa và/hoặc ký
+openpgp-advanced-prefs-button-label =
+ .label = Nâng cao…
+openpgp-keygen-desc = <a data-l10n-name="openpgp-keygen-desc-link">LƯU Ý: Quá trình tạo khóa có thể mất đến vài phút để hoàn thành.</a> Không thoát ứng dụng khi đang trong quá trình tạo khóa. Tích cực duyệt hoặc thực hiện các thao tác sử dụng nhiều ổ đĩa trong quá trình tạo khóa sẽ bổ sung 'nhóm ngẫu nhiên' và tăng tốc quá trình. Bạn sẽ được thông báo khi quá trình tạo khóa hoàn tất.
+
+openpgp-key-created-label =
+ .label = Đã tạo
+
+openpgp-key-expiry-label =
+ .label = Hết hạn
+
+openpgp-key-id-label =
+ .label = ID khóa
+
+openpgp-cannot-change-expiry = Đây là khóa có cấu trúc phức tạp, việc thay đổi ngày hết hạn không được hỗ trợ.
+
+openpgp-key-man-title =
+ .title = Trình quản lý khóa OpenPGP
+openpgp-key-man-generate =
+ .label = Cặp khóa mới
+ .accesskey = K
+openpgp-key-man-gen-revoke =
+ .label = Chứng nhận thu hồi
+ .accesskey = R
+openpgp-key-man-ctx-gen-revoke-label =
+ .label = Tạo & lưu chứng nhận thu hồi
+
+openpgp-key-man-file-menu =
+ .label = Tập tin
+ .accesskey = F
+openpgp-key-man-edit-menu =
+ .label = Chỉnh sửa
+ .accesskey = E
+openpgp-key-man-view-menu =
+ .label = Xem
+ .accesskey = V
+openpgp-key-man-generate-menu =
+ .label = Tạo
+ .accesskey = G
+openpgp-key-man-keyserver-menu =
+ .label = Keyserver
+ .accesskey = K
+
+openpgp-key-man-import-public-from-file =
+ .label = Nhập (các) khóa công khai từ tập tin
+ .accesskey = I
+openpgp-key-man-import-secret-from-file =
+ .label = Nhập (các) khóa bí mật từ tập tin
+openpgp-key-man-import-sig-from-file =
+ .label = Nhập (các) chứng nhận thư hồi từ tập tin
+openpgp-key-man-import-from-clipbrd =
+ .label = Nhập (các) khóa từ bộ nhớ tạm
+ .accesskey = I
+openpgp-key-man-import-from-url =
+ .label = Nhập (các) khóa từ URL
+ .accesskey = U
+openpgp-key-man-export-to-file =
+ .label = Xuất (các) khóa công khai vào tập tin
+ .accesskey = E
+openpgp-key-man-send-keys =
+ .label = Gửi (các) khóa công khai qua email
+ .accesskey = S
+openpgp-key-man-backup-secret-keys =
+ .label = Sao lưu (các) khóa bí mật vào tập tin
+ .accesskey = B
+
+openpgp-key-man-discover-cmd =
+ .label = Khám phá khóa trực tuyến
+ .accesskey = D
+openpgp-key-man-discover-prompt = Để khám phá các khóa OpenPGP trực tuyến, trên máy chủ hoặc sử dụng giao thức WKD, hãy nhập địa chỉ email hoặc ID khóa.
+openpgp-key-man-discover-progress = Đang tìm kiếm…
+
+openpgp-key-copy-key =
+ .label = Sao chép khóa công khai
+ .accesskey = C
+
+openpgp-key-export-key =
+ .label = Xuất khóa công khai vào tập tin
+ .accesskey = E
+
+openpgp-key-backup-key =
+ .label = Sao lưu khóa bí mật vào tập tin
+ .accesskey = B
+
+openpgp-key-send-key =
+ .label = Gửi khóa công khai qua email
+ .accesskey = S
+
+openpgp-key-man-copy-key-ids =
+ .label =
+ { $count ->
+ *[other] Sao chép ID khóa vào khay nhớ tạm
+ }
+ .accesskey = K
+
+openpgp-key-man-copy-fprs =
+ .label =
+ { $count ->
+ *[other] Sao chép dấu vân tay vào khay nhớ tạm
+ }
+ .accesskey = F
+
+openpgp-key-man-copy-to-clipboard =
+ .label =
+ { $count ->
+ *[other] Sao chép khóa công khai vào khay nhớ tạm
+ }
+ .accesskey = P
+
+openpgp-key-man-ctx-expor-to-file-label =
+ .label = Xuất khóa sang tập tin
+
+openpgp-key-man-ctx-copy =
+ .label = Sao chép
+ .accesskey = C
+
+openpgp-key-man-ctx-copy-fprs =
+ .label =
+ { $count ->
+ *[other] Dấu vân tay
+ }
+ .accesskey = F
+
+openpgp-key-man-ctx-copy-key-ids =
+ .label =
+ { $count ->
+ *[other] ID khóa
+ }
+ .accesskey = K
+
+openpgp-key-man-ctx-copy-public-keys =
+ .label =
+ { $count ->
+ *[other] Khóa công khai
+ }
+ .accesskey = P
+
+openpgp-key-man-close =
+ .label = Đóng
+openpgp-key-man-reload =
+ .label = Tải lại bộ nhớ đệm khóa
+ .accesskey = R
+openpgp-key-man-change-expiry =
+ .label = Thay đổi ngày hết hạn
+ .accesskey = E
+openpgp-key-man-refresh-online =
+ .label = Làm mới trực tuyến
+ .accesskey = R
+openpgp-key-man-ignored-ids =
+ .label = Địa chỉ email
+openpgp-key-man-del-key =
+ .label = Xóa (các) khóa
+ .accesskey = D
+openpgp-delete-key =
+ .label = Xóa khóa
+ .accesskey = D
+openpgp-key-man-revoke-key =
+ .label = Thu hồi khóa
+ .accesskey = R
+openpgp-key-man-key-props =
+ .label = Thuộc tính khóa
+ .accesskey = K
+openpgp-key-man-key-more =
+ .label = Thêm
+ .accesskey = m
+openpgp-key-man-view-photo =
+ .label = ID ảnh
+ .accesskey = p
+openpgp-key-man-ctx-view-photo-label =
+ .label = Xem ID ảnh
+openpgp-key-man-show-invalid-keys =
+ .label = Hiển thị các khóa không hợp lệ
+ .accesskey = D
+openpgp-key-man-show-others-keys =
+ .label = Hiển thị chìa khóa từ người khác
+ .accesskey = O
+openpgp-key-man-user-id-label =
+ .label = Tên
+openpgp-key-man-fingerprint-label =
+ .label = Vân tay
+openpgp-key-man-select-all =
+ .label = Chọn tất cả các khóa
+ .accesskey = a
+openpgp-key-man-empty-tree-tooltip =
+ .label = Nhập cụm từ tìm kiếm vào ô bên trên
+openpgp-key-man-nothing-found-tooltip =
+ .label = Không có khóa nào phù hợp với cụm từ tìm kiếm của bạn
+openpgp-key-man-please-wait-tooltip =
+ .label = Vui lòng đợi trong khi các khóa đang được tải…
+
+openpgp-key-man-filter-label =
+ .placeholder = Tìm kiếm khóa
+
+openpgp-key-man-select-all-key =
+ .key = A
+openpgp-key-man-key-details-key =
+ .key = I
+
+openpgp-ign-addr-intro = Bạn chấp nhận sử dụng khóa này cho các địa chỉ email đã chọn sau:
+
+openpgp-key-details-doc-title = Thuộc tính khóa
+openpgp-key-details-signatures-tab =
+ .label = Chứng chỉ
+openpgp-key-details-structure-tab =
+ .label = Cấu trúc
+openpgp-key-details-uid-certified-col =
+ .label = ID người dùng / Được chứng nhận bởi
+openpgp-key-details-key-id-label = ID khóa
+openpgp-key-details-id-label =
+ .label = ID
+openpgp-key-details-key-type-label = Kiểu
+
+openpgp-key-details-attr-ignored = Cảnh báo: Khóa này có thể không hoạt động như mong đợi vì một số thuộc tính của nó không an toàn và có thể bị bỏ qua.
+openpgp-key-details-attr-upgrade-sec = Bạn nên nâng cấp các thuộc tính không an toàn.
+openpgp-key-details-attr-upgrade-pub = Bạn nên yêu cầu chủ khóa này nâng cấp các thuộc tính không an toàn.
+
+openpgp-key-details-upgrade-unsafe =
+ .label = Nâng cấp thuộc tính không an toàn
+ .accesskey = P
+
+openpgp-key-details-upgrade-ok = Đã nâng cấp khóa thành công. Bạn nên chia sẻ khóa công khai đã nâng cấp với các đối tác của mình.
+
+openpgp-key-details-algorithm-label =
+ .label = Thuật toán
+openpgp-key-details-size-label =
+ .label = Kích thước
+openpgp-key-details-created-label =
+ .label = Được tạo
+openpgp-key-details-created-header = Được tạo
+openpgp-key-details-expiry-label =
+ .label = Hết hạn
+openpgp-key-details-expiry-header = Hết hạn
+openpgp-key-details-usage-label =
+ .label = Sử dụng
+openpgp-key-details-fingerprint-label = Vân tay
+openpgp-key-details-legend-secret-missing = Đối với các khóa được đánh dấu bằng (!), khóa bí mật không khả dụng.
+openpgp-key-details-sel-action =
+ .label = Chọn hành động…
+ .accesskey = S
+openpgp-card-details-close-window-label =
+ .buttonlabelaccept = Đóng
+openpgp-acceptance-rejected-label =
+ .label = Không, từ chối khóa này.
+openpgp-acceptance-undecided-label =
+ .label = Chưa, để sau.
+openpgp-acceptance-unverified-label =
+ .label = Có, nhưng tôi chưa xác minh rằng đó là khóa chính xác.
+openpgp-acceptance-verified-label =
+ .label = Có, tôi đã trực tiếp xác minh chìa khóa này có vân tay chính xác.
+key-accept-personal =
+ Đối với khóa này, bạn có cả phần công khai và phần bí mật. Bạn có thể sử dụng nó như một chìa khóa cá nhân.
+ Nếu khóa này được người khác đưa cho bạn, thì đừng sử dụng nó làm khóa cá nhân.
+openpgp-personal-no-label =
+ .label = Không, đừng sử dụng nó làm khóa cá nhân của tôi.
+openpgp-personal-yes-label =
+ .label = Có, hãy coi khóa này như một khóa cá nhân.
+
+openpgp-copy-cmd-label =
+ .label = Sao chép
+
+## e2e encryption settings
+
+# $identity (String) - the email address of the currently selected identity
+openpgp-description-no-key = { -brand-short-name } không có khóa OpenPGP cá nhân cho <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 ->
+ *[other] { -brand-short-name } đã tìm thấy { $count } khóa OpenPGP cá nhân được liên kết với <b>{ $identity }</b>
+ }
+
+# $key (String) - the currently selected OpenPGP key
+openpgp-selection-status-have-key = Cấu hình hiện tại của bạn sử dụng ID khóa <b>{ $key }</b>
+
+# $key (String) - the currently selected OpenPGP key
+openpgp-selection-status-error = Cấu hình hiện tại của bạn sử dụng khóa <b>{ $key }</b>, khóa này đã hết hạn.
+
+openpgp-add-key-button =
+ .label = Thêm khóa…
+ .accesskey = A
+
+e2e-learn-more = Tìm hiểu thêm
+
+openpgp-keygen-success = Khóa OpenPGP đã được tạo thành công!
+
+openpgp-keygen-import-success = Đã nhập khóa OpenPGP thành công!
+
+## OpenPGP Key selection area
+
+openpgp-radio-none =
+ .label = Không có
+
+openpgp-radio-none-desc = Đừng sử dụng OpenPGP cho danh tính này.
+
+openpgp-radio-key-not-usable = Không thể sử dụng khóa này làm khóa cá nhân vì khóa bí mật bị thiếu!
+openpgp-radio-key-not-accepted = Để sử dụng khóa này, bạn phải phê duyệt nó như một khóa cá nhân!
+openpgp-radio-key-not-found = Không thể tìm thấy khóa này! Nếu bạn muốn sử dụng nó, bạn phải nhập nó vào { -brand-short-name }.
+
+# $key (String) - the expiration date of the OpenPGP key
+openpgp-radio-key-expires = Hết hạn vào: { $date }
+
+# $key (String) - the expiration date of the OpenPGP key
+openpgp-radio-key-expired = Đã hết hạn vào: { $date }
+
+openpgp-key-expires-within-6-months-icon =
+ .title = Khóa sẽ hết hạn sau chưa đầy 6 tháng
+
+openpgp-key-has-expired-icon =
+ .title = Khóa đã hết hạn
+
+openpgp-key-expand-section =
+ .tooltiptext = Thêm thông tin
+
+openpgp-key-revoke-title = Thu hồi khóa
+
+openpgp-key-edit-title = Thay đổi khóa OpenPGP
+
+openpgp-key-edit-date-title = Gia hạn ngày hết hạn
+
+openpgp-manager-description = Sử dụng Trình quản lý khóa OpenPGP để xem và quản lý khóa công khai của các đối tác của bạn và tất cả các khóa khác không được liệt kê ở trên.
+
+openpgp-manager-button =
+ .label = Trình quản lý khóa OpenPGP
+ .accesskey = K
+
+# Strings in keyDetailsDlg.xhtml
+key-type-public = khóa công khai
+key-type-primary = khóa chính
+key-type-subkey = khóa con
+key-type-pair = cặp khóa (khóa bí mật và khóa công khai)
+key-expiry-never = không bao giờ
+key-usage-encrypt = Mã hóa
+key-usage-sign = Ký
+key-usage-authentication = Xác thực
+key-does-not-expire = Khóa không hết hạn
+key-expired-date = Khóa hết hạn vào { $keyExpiry }
+key-expired-simple = Khóa đã hết hạn
+key-revoked-simple = Khóa đã bị thu hồi
+key-do-you-accept = Bạn có chấp nhận khóa này để xác minh chữ ký số và mã hóa tin nhắn không?
+key-verification = Xác minh dấu vân tay của khóa bằng kênh liên lạc an toàn không phải email để đảm bảo rằng đó thực sự là khóa của { $addr }.
+
+# Strings enigmailMsgComposeOverlay.js
+cannot-use-own-key-because = Không thể gửi tin nhắn vì có sự cố với khóa cá nhân của bạn. { $problem }
+cannot-encrypt-because-missing = Không thể gửi thư này bằng mã hóa đầu cuối vì có vấn đề với khóa của những người nhận sau: { $problem }
+window-locked = Cửa sổ soạn thảo bị khóa; đã hủy gửi
+
+# Strings in mimeDecrypt.jsm
+mime-decrypt-encrypted-part-concealed-data = Đây là một phần tin nhắn được mã hóa. Bạn cần mở nó trong một cửa sổ riêng tư bằng cách nhấp vào đính kèm.
+
+# Strings in keyserver.jsm
+keyserver-error-aborted = Đã hủy
+keyserver-error-unknown = Đã có lỗi xảy ra
+keyserver-error-import-error = Không thể nhập khóa đã tải xuống.
+
+# Strings in mimeWkdHandler.jsm
+wkd-message-body-req =
+ Nhà cung cấp dịch vụ email của bạn đã xử lý yêu cầu tải khóa công khai của bạn lên Thư mục khóa web OpenPGP.
+ Vui lòng xác nhận để hoàn tất việc xuất bản khóa công khai của bạn.
+wkd-message-body-process =
+ Đây là email liên quan đến quá trình xử lý tự động để tải khóa công khai của bạn lên Thư mục khóa web OpenPGP.
+ Bạn không cần phải thực hiện bất kỳ thao tác thủ công nào tại thời điểm này.
+
+# Strings in persistentCrypto.jsm
+converter-decrypt-body-failed =
+ Không thể giải mã thư có chủ đề
+ { $subject }.
+ Bạn muốn thử lại bằng một cụm mật khẩu khác hay bạn muốn bỏ qua tin nhắn?
+
+# Strings filters.jsm
+filter-folder-required = Bạn phải chọn một thư mục đích.
+filter-decrypt-move-warn-experimental =
+ Cảnh báo - hành động bộ lọc “Giải mã vĩnh viễn” có thể dẫn đến các thư bị phá hủy.
+ Chúng tôi thực sự khuyên bạn trước tiên nên thử bộ lọc “Tạo bản sao được giải mã”, kiểm tra kết quả một cách cẩn thận và chỉ bắt đầu sử dụng bộ lọc này khi bạn hài lòng với kết quả.
+filter-term-pgpencrypted-label = OpenPGP được mã hóa
+filter-key-required = Bạn phải chọn một khóa người nhận.
+filter-key-not-found = Không thể tìm thấy khóa mã hóa cho ‘{ $desc }’.
+filter-warn-key-not-secret =
+ Cảnh báo - hành động bộ lọc “Mã hóa thành khóa” thay thế người nhận.
+ Nếu bạn không có khóa bí mật cho ‘{ $desc }’, bạn sẽ không thể đọc email được nữa.
+
+# Strings filtersWrapper.jsm
+filter-decrypt-move-label = Giải mã vĩnh viễn (OpenPGP)
+filter-decrypt-copy-label = Tạo bản sao được giải mã (OpenPGP)
+filter-encrypt-label = Mã hóa thành khóa (OpenPGP)
+
+# Strings in enigmailKeyImportInfo.js
+import-info-title =
+ .title = Thành công! Các khóa đã được nhập
+import-info-bits = Bit
+import-info-created = Đã tạo
+import-info-fpr = Dấu vân tay
+import-info-no-keys = Không có khóa nào được nhập.
+
+# Strings in enigmailKeyManager.js
+import-from-clip = Bạn có muốn nhập (các) khóa từ khay nhớ tạm không?
+import-from-url = Tải xuống khóa công khai từ URL này:
+copy-to-clipbrd-failed = Không thể sao chép (các) khóa đã chọn vào khay nhớ tạm.
+copy-to-clipbrd-ok = Đã sao chép (các) khóa vào khay nhớ tạm
+delete-secret-key =
+ CẢNH BÁO: Bạn sắp xóa khóa bí mật!
+
+ Nếu bạn xóa khóa bí mật của mình, bạn sẽ không thể giải mã bất kỳ thông báo nào được mã hóa cho khóa đó nữa, cũng như không thể thu hồi nó.
+
+ Bạn có thực sự muốn xóa CẢ HAI, khóa bí mật và khóa công khai
+ ‘{ $userId }’?
+delete-mix =
+ CẢNH BÁO: Bạn sắp xóa khóa bí mật!
+ Nếu bạn xóa khóa bí mật của mình, bạn sẽ không thể giải mã bất kỳ thư nào được mã hóa cho khóa đó nữa.
+ Bạn có thực sự muốn xóa CẢ HAI, khóa bí mật và khóa công khai đã chọn không?
+delete-pub-key =
+ Bạn có muốn xóa khóa công khai không
+ "{ $userId }"?
+delete-selected-pub-key = Bạn có muốn xóa các khóa công khai không?
+refresh-all-question = Bạn đã không chọn bất kỳ khóa nào. Bạn có muốn làm mới TẤT CẢ các khóa không?
+key-man-button-export-sec-key = Xuất &khóa bí mật
+key-man-button-export-pub-key = Chỉ xuất khóa &công khai
+key-man-button-refresh-all = &Làm mới tất cả các khóa
+key-man-loading-keys = Đang tải khóa, vui lòng đợi…
+no-key-selected = Bạn nên chọn ít nhất một khóa để thực hiện thao tác đã chọn
+export-to-file = Xuất khóa công khai vào tập tin
+export-keypair-to-file = Xuất khóa bí mật và khóa công khai thành tập tin
+export-secret-key = Bạn có muốn đưa khóa bí mật vào tập tin khóa OpenPGP đã lưu không?
+save-keys-ok = Khóa đã được lưu thành công
+save-keys-failed = Không thể lưu khóa
+refresh-key-warn = Cảnh báo: tùy thuộc vào số lượng khóa và tốc độ kết nối, việc làm mới tất cả các khóa có thể là một quá trình khá dài!
+preview-failed = Không thể đọc tập tin khóa công khai.
+general-error = Lỗi: { $reason }
+dlg-button-delete = Xóa (&D)
+
+## Account settings export output
+
+openpgp-export-public-success = <b>Đã xuất thành công khóa công khai!</b>
+openpgp-export-public-fail = <b>Không thể xuất khóa công khai đã chọn!</b>
+
+openpgp-export-secret-success = <b>Đã xuất khóa bí mật!</b>
+openpgp-export-secret-fail = <b>Không thể xuất khóa bí mật đã chọn!</b>
+
+# Strings in keyObj.jsm
+key-ring-pub-key-revoked = Khóa { $userId } (ID khóa { $keyId }) đã bị thu hồi.
+key-ring-pub-key-expired = Khóa { $userId } (ID khóa { $keyId }) đã hết hạn.
+key-ring-no-secret-key = Dường như bạn không có khóa bí mật cho { $userId } (ID khóa { $keyId }) trên khóa của mình; bạn không thể sử dụng khóa để ký.
+key-ring-pub-key-not-for-signing = Không thể sử dụng khóa { $userId } (ID khóa { $keyId }) để ký.
+key-ring-pub-key-not-for-encryption = Không thể sử dụng khóa { $userId } (ID khóa { $keyId }) để mã hóa.
+key-ring-enc-sub-keys-revoked = Tất cả các khóa mã hóa con của khóa { $userId } (ID khóa { $keyId }) đã bị thu hồi.
+key-ring-enc-sub-keys-expired = Tất cả các khóa mã hóa con của khóa { $userId } (ID khóa { $keyId }) đã hết hạn.
+
+# Strings in gnupg-keylist.jsm
+keyring-photo = Hình ảnh
+user-att-photo = Thuộc tính người dùng (hình ảnh JPEG)
+
+# Strings in key.jsm
+already-revoked = Khóa này đã bị thu hồi trước đó.
+
+# $keyId (String) - the id of the key being revoked
+revoke-key-already-revoked = Khóa 0x{ $keyId } đã bị thu hồi trước đó.
+
+key-man-button-revoke-key = Thu hồi khóa (&R)
+
+openpgp-key-revoke-success = Đã thu hồi khóa thành công.
+
+after-revoke-info =
+ Khóa đã bị thu hồi.
+ Chia sẻ lại khóa công khai này bằng cách gửi qua email hoặc tải lên máy chủ để cho người khác biết rằng bạn đã thu hồi khóa của mình.
+ Ngay sau khi phần mềm được người khác sử dụng biết về việc thu hồi, nó sẽ ngừng sử dụng khóa cũ của bạn.
+ Nếu bạn đang sử dụng khóa mới cho cùng một địa chỉ email và bạn đính kèm khóa công khai mới vào các email bạn gửi, thì thông tin về khóa cũ đã thu hồi của bạn sẽ tự động được đưa vào.
+
+# Strings in keyRing.jsm & decryption.jsm
+key-man-button-import = Nhập (&I)
+
+delete-key-title = Xóa khóa OpenPGP
+
+key-in-use-title = Khóa OpenPGP hiện đang được sử dụng
+
+delete-key-in-use-description = Không thể tiếp tục! Chìa khóa bạn đã chọn để xóa hiện đang được sử dụng bởi danh tính này. Chọn một khóa khác hoặc chọn không có khóa nào và thử lại.
+
+revoke-key-in-use-description = Không thể tiếp tục! Chìa khóa bạn đã chọn để thu hồi hiện đang được sử dụng bởi danh tính này. Chọn một khóa khác hoặc chọn không có khóa nào và thử lại.
+
+key-error-not-accepted-as-personal = Bạn chưa xác nhận rằng khóa có ID ‘{ $keySpec }’ là khóa cá nhân của bạn.
+
+# Strings used in enigmailKeyManager.js & windows.jsm
+need-online = Chức năng bạn đã chọn không khả dụng ở chế độ ngoại tuyến. Vui lòng truy cập trực tuyến và thử lại.
+
+# Strings used in keyRing.jsm & keyLookupHelper.jsm
+no-key-found2 = Chúng tôi không thể tìm thấy bất kỳ khóa có thể sử dụng nào phù hợp với tiêu chí tìm kiếm được chỉ định.
+no-update-found = Bạn đã có các khóa được phát hiện trực tuyến.
+
+import-key-confirm = Nhập (các) khóa công khai được nhúng trong thư?
+fail-key-import = Lỗi - nhập khóa không thành công
+file-write-failed = Không thể ghi vào tập tin { $output }
+confirm-permissive-import = Nhập không thành công. Khóa bạn đang cố gắng nhập có thể bị hỏng hoặc sử dụng các thuộc tính không xác định. Bạn có muốn cố gắng nhập các bộ phận chính xác không? Điều này có thể dẫn đến việc nhập các khóa không đầy đủ và không sử dụng được.
+
+# Strings used in trust.jsm
+key-valid-unknown = không rõ
+key-valid-invalid = không hợp lệ
+key-valid-disabled = đã vô hiệu hóa
+key-valid-revoked = bị thu hồi
+key-valid-expired = đã hết hạn
+key-trust-untrusted = không đáng tin cậy
+key-trust-full = đáng tin cậy
+key-trust-group = (nhóm)
+
+# Strings used in commonWorkflows.js
+import-key-file = Nhập tập tin khóa OpenPGP
+gnupg-file = Tập tin GnuPG
+import-keys-failed = Nhập khóa không thành công
+passphrase-prompt = Vui lòng nhập cụm mật khẩu để mở khóa sau: { $key }
+file-to-big-to-import = Tập tin này quá lớn. Vui lòng không nhập một bộ khóa lớn cùng một lúc.
+
+gen-going = Đã ở trong quá trình tạo khóa!
+keygen-missing-user-name = Không có tên được chỉ định cho tài khoản/danh tính đã chọn. Vui lòng nhập một giá trị vào trường “Tên của bạn” trong cài đặt tài khoản.
+expiry-too-short = Khóa của bạn phải có giá trị trong ít nhất một ngày.
+expiry-too-long = Bạn không thể tạo khóa hết hạn sau hơn 100 năm.
+key-confirm = Tạo khóa công khai và khóa bí mật cho ‘{ $id }’?
+key-man-button-generate-key = &Tạo khóa
+key-abort = Hủy việc tạo khóa?
+key-man-button-generate-key-abort = &Huỷ bỏ tạo khoá
+key-man-button-generate-key-continue = &Tiếp tục tạo khóa
+
+# Strings used in enigmailMessengerOverlay.js
+
+failed-decrypt = Lỗi - giải mã không thành công
+fix-broken-exchange-msg-failed = Không thể sửa chữa thư này.
+
+attachment-no-match-from-signature = Tập tin chữ ký ‘{ $attachment }’ với tập tin đính kèm không khớp
+attachment-no-match-to-signature = Tập tin đính kèm ‘{ $attachment }’ với tập tin chữ ký không khớp
+signature-verified-ok = Chữ ký cho tập tin đính kèm { $attachment } đã được xác minh thành công
+signature-verify-failed = Không thể xác minh chữ ký cho tập tin đính kèm { $attachment }
+decrypt-ok-no-sig =
+ Cảnh báo
+ Giải mã thành công nhưng không thể xác minh chính xác chữ ký
+msg-ovl-button-cont-anyway = &Vẫn tiếp tục
+enig-content-note = *Các tập tin đính kèm cho thư này chưa được ký hoặc chưa được mã hóa*
+
+# Strings used in enigmailMsgComposeOverlay.js
+msg-compose-button-send = &Gửi thư
+msg-compose-details-button-label = Chi tiết…
+msg-compose-details-button-access-key = D
+send-aborted = Thao tác gửi đã bị hủy bỏ.
+key-not-trusted = Không đủ tin cậy cho khóa ‘{ $key }’
+key-not-found = Không tìm thấy khóa ‘{ $key }’
+key-revoked = Đã thu hồi khóa ‘{ $key }’
+key-expired = Khóa ‘{ $key }’ đã hết hạn
+msg-compose-internal-error = Đã xảy ra một lỗi nội bộ.
+keys-to-export = Chọn khóa OpenPGP để chèn
+msg-compose-partially-encrypted-inlinePGP =
+ Thư bạn đang trả lời chứa cả phần không được mã hóa và phần được mã hóa. Nếu ban đầu người gửi không thể giải mã một số phần thư, bạn có thể đang làm rò rỉ thông tin bí mật mà ban đầu người gửi không thể giải mã.
+ Vui lòng xem xét xóa tất cả văn bản được trích dẫn khỏi thư trả lời của bạn cho người gửi này.
+msg-compose-cannot-save-draft = Lỗi khi lưu bản nháp
+msg-compose-partially-encrypted-short = Cẩn thận với việc rò rỉ thông tin nhạy cảm - email được mã hóa một phần.
+minimal-line-wrapping =
+ Bạn đã đặt số lượng ký tự trong một dòng là { $width } kí tự. Để mã hóa và/hoặc ký chính xác, giá trị này ít nhất phải là 68.
+ Bạn có muốn đặt lại giá trị của nó thành 68 kí tự ngay bây giờ không?
+sending-news =
+ Thao tác gửi được mã hóa đã bị hủy bỏ.
+ Không thể mã hóa thư này vì có người nhận trong nhóm tin. Vui lòng gửi lại tin nhắn mà không mã hóa.
+send-to-news-warning =
+ Cảnh báo: bạn sắp gửi một email được mã hóa đến một nhóm tin.
+ Điều này không được khuyến khích vì nó chỉ có ý nghĩa nếu tất cả các thành viên trong nhóm có thể giải mã thông điệp, tức là tin nhắn cần được mã hóa bằng khóa của tất cả những người tham gia nhóm. Vui lòng chỉ gửi tin nhắn này nếu bạn biết chính xác những gì bạn đang làm.
+ Tiếp tục?
+save-attachment-header = Lưu tập tin đính kèm được giải mã
+cannot-send-sig-because-no-own-key = Không thể ký điện tử thông báo này vì bạn chưa định cấu hình mã hóa đầu cuối cho <{ $key }>
+cannot-send-enc-because-no-own-key = Không thể gửi thư đã mã hóa này vì bạn chưa định cấu hình mã hóa đầy cuối cho <{ $key }>
+
+# Strings used in decryption.jsm
+do-import-multiple =
+ Nhập các khóa sau?
+ { $key }
+do-import-one = Nhập { $name } ({ $id })?
+cant-import = Lỗi khi nhập khóa công khai
+unverified-reply = Phần thư thụt lề (trả lời) có thể đã được sửa đổi
+key-in-message-body = Một khóa đã được tìm thấy trong nội dung thư. Nhấp vào 'Nhập khóa' để nhập khóa
+sig-mismatch = Lỗi - Chữ ký không khớp
+invalid-email = Lỗi - (Các) địa chỉ email không hợp lệ
+attachment-pgp-key =
+ Tập tin đính kèm ‘{ $name }’ mà bạn đang mở có vẻ là một tập tin khóa OpenPGP.
+ Nhấp vào 'Nhập' để nhập các khóa có trong hoặc 'Xem' để xem nội dung tập tin trong cửa sổ trình duyệt
+dlg-button-view = &Xem
+
+# Strings used in enigmailMsgHdrViewOverlay.js
+decrypted-msg-with-format-error = Thư đã được giải mã (đã khôi phục định dạng email PGP bị hỏng có thể do máy chủ Exchange cũ gây ra, do đó, kết quả có thể không hoàn hảo để đọc)
+
+# Strings used in encryption.jsm
+not-required = Lỗi - không cần mã hóa
+
+# Strings used in windows.jsm
+no-photo-available = Không có sẵn ảnh
+error-photo-path-not-readable = Không thể đọc đường dẫn ảnh ‘{ $photo }’
+debug-log-title = Nhật ký gỡ lỗi OpenPGP
+
+# Strings used in dialog.jsm
+repeat-prefix = Cảnh báo này sẽ lặp lại { $count }
+repeat-suffix-singular = lần nữa.
+repeat-suffix-plural = lần nữa.
+no-repeat = Cảnh báo này sẽ không được hiển thị lại.
+dlg-keep-setting = Nhớ câu trả lời của tôi và không hỏi lại tôi
+dlg-button-ok = &OK
+dlg-button-close = Đóng (&C)
+dlg-button-cancel = &Hủy bỏ
+dlg-no-prompt = Không hiện lại hộp thoại này
+enig-prompt = Lời nhắc OpenPGP
+enig-confirm = Xác nhận OpenPGP
+enig-alert = Cảnh báo OpenPGP
+enig-info = Thông tin OpenPGP
+
+# Strings used in persistentCrypto.jsm
+dlg-button-retry = &Thử lại
+dlg-button-skip = &Bỏ qua
+
+# Strings used in enigmailMsgBox.js
+enig-alert-title =
+ .title = Cảnh báo OpenPGP
diff --git a/l10n-vi/mail/messenger/otr/add-finger.ftl b/l10n-vi/mail/messenger/otr/add-finger.ftl
new file mode 100644
index 0000000000..b9fa37cfa3
--- /dev/null
+++ b/l10n-vi/mail/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 = Thêm dấu vân tay OTR
+
+# Variables:
+# $name (String) - name of a chat contact person
+# Do not translate 'OTR' (name of an encryption protocol)
+otr-add-finger-description = Nhập dấu vân tay khóa OTR cho { $name }.
+
+otr-add-finger-fingerprint = Dấu vân tay:
+otr-add-finger-tooltip-error = Ký tự đã nhập không hợp lệ. Chỉ cho phép chữ cái ABCDEF và số
+
+otr-add-finger-input =
+ .placeholder = Dấu vân tay OTR dài 40 ký tự
diff --git a/l10n-vi/mail/messenger/otr/am-im-otr.ftl b/l10n-vi/mail/messenger/otr/am-im-otr.ftl
new file mode 100644
index 0000000000..7e2824ff66
--- /dev/null
+++ b/l10n-vi/mail/messenger/otr/am-im-otr.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/.
+
+account-encryption =
+ .label = Mã hóa đầu cuối
+account-otr-label = Nhắn tin ngoài luồng (OTR)
+account-otr-description2 = { -brand-short-name } hỗ trợ mã hóa đầu cuối của các cuộc trò chuyện 1-1 dựa trên OTR. Điều này ngăn các bên thứ ba nghe trộm cuộc trò chuyện. Loại mã hóa đầu cuối này chỉ có thể được sử dụng khi người kia cũng sử dụng phần mềm hỗ trợ OTR.
+otr-encryption-title = Mã hóa đã được xác minh
+otr-encryption-caption = Để cho phép người khác xác minh danh tính của bạn trong các cuộc trò chuyện OTR, hãy chia sẻ dấu vân tay OTR của riêng bạn bằng cách sử dụng kênh liên lạc bên ngoài (ngoài băng tần).
+otr-fingerprint-label = Dấu vân tay của bạn:
+view-fingerprint-button =
+ .label = Quản lý dấu vân tay của liên hệ
+ .accesskey = F
+otr-settings-title = Cài đặt OTR
+otr-require-encryption =
+ .label = Yêu cầu mã hóa đầu cuối cho các cuộc hội thoại một-một
+otr-require-encryption-info =
+ Khi yêu cầu mã hóa đầu cuối, các tin nhắn trong cuộc trò chuyện 1-1
+ sẽ không được gửi trừ khi chúng có thể được mã hóa. Tin nhắn không được mã hóa đã nhận
+ sẽ không được hiển thị như một phần của cuộc trò chuyện thông thường và cũng không được ghi lại.
+otr-verify-nudge =
+ .label = Luôn nhắc tôi xác minh một liên hệ chưa được xác minh
+
+otr-not-yet-available = chưa có sẵn
+
diff --git a/l10n-vi/mail/messenger/otr/auth.ftl b/l10n-vi/mail/messenger/otr/auth.ftl
new file mode 100644
index 0000000000..9b1ac366db
--- /dev/null
+++ b/l10n-vi/mail/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 = Xác minh danh tính liên hệ
+ .buttonlabelaccept = Xác minh
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+auth-title = Xác minh danh tính của { $name }
+
+# Variables:
+# $own_name (String) - the user's own screen name
+auth-your-fp-value = Dấu vân tay cho bạn, { $own_name }:
+
+# Variables:
+# $their_name (String) - the screen name of a chat contact
+auth-their-fp-value = Dấu vân tay cho { $their_name }:
+
+auth-help = Xác minh danh tính của người liên hệ giúp đảm bảo rằng cuộc trò chuyện thực sự riêng tư, khiến cho bên thứ ba rất khó nghe lén hoặc thao túng cuộc trò chuyện.
+
+auth-help-title = Trợ giúp xác minh
+
+auth-question-received = Đây là câu hỏi do người liên hệ của bạn hỏi:
+
+auth-yes =
+ .label = Có
+
+auth-no =
+ .label = Không
+
+auth-verified = Tôi đã xác minh rằng trên thực tế đây là dấu vân tay chính xác.
+
+auth-manual-verification = Xác minh dấu vân tay thủ công
+auth-question-and-answer = Câu hỏi và trả lời
+auth-shared-secret = Đã chia sẻ bí mật
+
+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 = Liên hệ với đối tác trò chuyện dự định của bạn qua một số kênh được xác thực khác, chẳng hạn như email được ký bởi OpenPGP hoặc qua điện thoại. Bạn nên cho nhau biết dấu vân tay của bạn. (Dấu vân tay là một tổng kiểm tra xác định khóa mã hóa.) Nếu dấu vân tay khớp, bạn nên cho biết trong hộp thoại bên dưới rằng bạn đã xác minh dấu vân tay.
+
+auth-how = Bạn muốn xác minh danh tính liên hệ của bạn như thế nào?
+
+auth-qa-instruction = Hãy nghĩ về một câu hỏi mà câu trả lời chỉ được biết cho bạn và liên hệ của bạn. Nhập câu hỏi và câu trả lời, sau đó đợi liên hệ của bạn nhập câu trả lời. Nếu câu trả lời không khớp, kênh liên lạc bạn đang sử dụng có thể bị giám sát.
+
+auth-secret-instruction = Hãy nghĩ về một bí mật chỉ được biết đến với bạn và liên lạc của bạn. Không sử dụng cùng một kết nối Internet để trao đổi bí mật. Nhập bí mật, sau đó chờ liên hệ của bạn để nhập nó. Nếu các bí mật không khớp, kênh liên lạc bạn đang sử dụng có thể bị giám sát.
+
+auth-question = Nhập câu hỏi:
+
+auth-answer = Nhập câu trả lời (phân biệt chữ hoa/thường):
+
+auth-secret = Nhập bí mật:
diff --git a/l10n-vi/mail/messenger/otr/chat.ftl b/l10n-vi/mail/messenger/otr/chat.ftl
new file mode 100644
index 0000000000..a15f7bf51b
--- /dev/null
+++ b/l10n-vi/mail/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 = Trạng thái mã hóa:
+
+start-text = Bắt đầu một cuộc trò chuyện được mã hóa
+
+start-label =
+ .label = { start-text }
+
+start-tooltip =
+ .tooltiptext = { start-text }
+
+end-label =
+ .label = Kết thúc cuộc trò chuyện được mã hóa
+
+auth-label =
+ .label = Xác minh danh tính liên hệ của bạn
diff --git a/l10n-vi/mail/messenger/otr/finger-sync.ftl b/l10n-vi/mail/messenger/otr/finger-sync.ftl
new file mode 100644
index 0000000000..3d88c9751e
--- /dev/null
+++ b/l10n-vi/mail/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 = Đã xác minh
+finger-no = Chưa được xác minh
+
+finger-subset-title = Xóa dấu vân tay
+finger-subset-message = Ít nhất một dấu vân tay không thể bị xóa, bởi vì khóa tương ứng hiện đang được sử dụng trong một cuộc trò chuyện đang hoạt động.
+
+finger-remove-all-title = Xóa tất cả dấu vân tay
+finger-remove-all-message = Bạn có chắc chắn muốn xóa tất cả dấu vân tay đã thấy trước đó? Tất cả các xác minh danh tính OTR trước đó sẽ bị mất.
diff --git a/l10n-vi/mail/messenger/otr/finger.ftl b/l10n-vi/mail/messenger/otr/finger.ftl
new file mode 100644
index 0000000000..ea60938aa9
--- /dev/null
+++ b/l10n-vi/mail/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 = Trước đây đã xem dấu vân tay OTR
+
+finger-intro = Dấu vân tay OTR từ các cuộc hội thoại được mã hóa đầu cuối trước đó.
+
+finger-screen-name =
+ .label = Liên hệ
+finger-verified =
+ .label = Tình trạng xác minh
+finger-fingerprint =
+ .label = Dấu vân tay
+
+finger-remove =
+ .label = Xóa mục đã chọn
+
+finger-remove-all =
+ .label = Xóa tất cả
diff --git a/l10n-vi/mail/messenger/otr/otr.ftl b/l10n-vi/mail/messenger/otr/otr.ftl
new file mode 100644
index 0000000000..5d38fc9859
--- /dev/null
+++ b/l10n-vi/mail/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 = Bạn đã cố gửi một tin nhắn không được mã hóa tới { $name }. Là một chính sách, tin nhắn không được mã hóa sẽ không được phép.
+
+msgevent-encryption-required-part2 = Đang thử bắt đầu một cuộc trò chuyện riêng tư. Tin nhắn của bạn sẽ được gửi lại khi cuộc trò chuyện riêng tư bắt đầu.
+msgevent-encryption-error = Đã xảy ra lỗi khi mã hóa thư của bạn. Tin nhắn đã không được gửi.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-connection-ended = { $name } đã đóng kết nối được mã hóa của họ với bạn. Để tránh việc bạn vô tình gửi tin nhắn mà không mã hóa, tin nhắn của bạn đã không được gửi. Vui lòng kết thúc cuộc trò chuyện được mã hóa của bạn hoặc khởi động lại nó.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-setup-error = Đã xảy ra lỗi khi thiết lập cuộc trò chuyện riêng tư với { $name }.
+
+# Do not translate 'OTR' (name of an encryption protocol)
+msgevent-msg-reflected = Bạn đang nhận được tin nhắn OTR của chính mình. Bạn đang nói chuyện với chính mình hoặc ai đó đang lặp lại tin nhắn của bạn.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-msg-resent = Tin nhắn cuối cùng tới { $name } đã được gửi lại.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg-not-private = Không thể đọc được tin nhắn mã hóa nhận được từ { $name } vì bạn hiện không liên lạc riêng tư.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg-unreadable = Bạn đã nhận được một tin nhắn mã hóa không đọc được từ { $name }
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg-malformed = Bạn đã nhận được một thông báo dữ liệu không đúng định dạng từ { $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 = Đã nhận Heartbeat từ { $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 = Đã gửi Heartbeat đến { $name }.
+
+# Do not translate 'OTR' (name of an encryption protocol)
+msgevent-rcvdmsg-general-err = Đã xảy ra lỗi không mong muốn khi cố gắng bảo vệ cuộc trò chuyện của bạn bằng OTR.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+# $msg (string) - the message that was received.
+msgevent-rcvdmsg-unencrypted = Tin nhắn sau nhận được từ { $name } không được mã hóa: { $msg }
+
+# Do not translate 'OTR' (name of an encryption protocol)
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg-unrecognized = Bạn đã nhận được một tin nhắn OTR không xác định từ { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+msgevent-rcvdmsg-for-other-instance = { $name } đã gửi một tin nhắn dành cho một phiên khác. Nếu bạn đăng nhập nhiều lần, một phiên khác có thể đã nhận được thông báo.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+context-gone-secure-private = Đã bắt đầu cuộc trò chuyện riêng tư với { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+context-gone-secure-unverified = Cuộc trò chuyện được mã hóa nhưng chưa được xác thực đã bắt đầu với { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+context-still-secure = Đã làm mới cuộc trò chuyện được mã hóa với { $name }.
+
+error-enc = Đã xảy ra lỗi khi mã hóa tin nhắn.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+error-not-priv = Bạn đã gửi dữ liệu được mã hóa đến { $name }, nhưng bên kia không nhận được như mong đợi.
+
+error-unreadable = Bạn đã truyền đi một tin nhắn được mã hóa không đọc được.
+error-malformed = Bạn đã truyền một tin nhắn dữ liệu không đúng định dạng.
+
+resent = [đã gửi lại]
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+tlv-disconnected = { $name } đã kết thúc cuộc trò chuyện được mã hóa của họ với bạn; bạn cũng nên làm vậy.
+
+# 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 } đã yêu cầu một cuộc trò chuyện được mã hóa Off-the-Record (OTR). Tuy nhiên, bạn không có một plugin để hỗ trợ điều đó. Xem tại https://en.wikipedia.org/wiki/Off-the-Record_Messaging để biết thêm thông tin.
diff --git a/l10n-vi/mail/messenger/otr/otrUI.ftl b/l10n-vi/mail/messenger/otr/otrUI.ftl
new file mode 100644
index 0000000000..efc9efdc28
--- /dev/null
+++ b/l10n-vi/mail/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 = Bắt đầu một cuộc trò chuyện được mã hóa
+refresh-label = Làm mới cuộc hội thoại được mã hóa
+auth-label = Xác minh danh tính liên hệ của bạn
+reauth-label = Xác minh lại danh tính liên hệ của bạn
+
+auth-cancel = Hủy bỏ
+auth-cancel-access-key = C
+
+auth-error = Đã xảy ra lỗi trong khi xác minh danh tính của liên hệ của bạn.
+auth-success = Hoàn tất xác minh danh tính liên hệ của bạn.
+auth-success-them = Liên hệ của bạn đã xác minh thành công danh tính của bạn. Bạn có thể muốn xác minh danh tính của họ bằng cách đặt câu hỏi của riêng bạn.
+auth-fail = Không thể xác minh danh tính của liên hệ của bạn.
+auth-waiting = Đang chờ liên hệ để hoàn tất xác minh…
+
+finger-verify = Xác minh
+finger-verify-access-key = V
+
+finger-ignore = Bỏ qua
+finger-ignore-access-key = I
+
+# Do not translate 'OTR' (name of an encryption protocol)
+buddycontextmenu-label = Thêm dấu vân tay OTR
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+alert-start = Đang thử bắt đầu một cuộc trò chuyện được mã hóa với { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+alert-refresh = Đang thử làm mới cuộc hội thoại được mã hóa bằng { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+alert-gone-insecure = Cuộc trò chuyện được mã hóa với { $name } đã kết thúc.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+finger-unseen = Danh tính của { $name } chưa được xác minh. Việc nghe lén thông thường là không thể, nhưng với một số nỗ lực ai đó có thể nghe được. Ngăn chặn sự giám sát bằng cách xác minh danh tính của người liên hệ này.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+finger-seen = { $name } đang liên hệ với bạn từ một máy tính không được nhận dạng. Việc nghe lén thông thường là không thể, nhưng với một số nỗ lực ai đó có thể nghe được. Ngăn chặn sự giám sát bằng cách xác minh danh tính của người liên hệ này.
+
+state-not-private = Cuộc trò chuyện hiện tại không riêng tư.
+state-generic-not-private = Cuộc trò chuyện hiện tại không riêng tư.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+state-unverified = Cuộc hội thoại hiện tại được mã hóa nhưng không riêng tư, vì danh tính của { $name } vẫn chưa được xác minh.
+
+state-generic-unverified = Cuộc trò chuyện hiện tại được mã hóa nhưng không riêng tư, vì một số danh tính vẫn chưa được xác minh.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+state-private = Danh tính của { $name } đã được xác minh. Cuộc trò chuyện hiện tại được mã hóa và riêng tư.
+
+state-generic-private = Cuộc trò chuyện hiện tại đã được mã hóa và riêng tư.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+state-finished = { $name } đã kết thúc cuộc trò chuyện được mã hóa của họ với bạn; bạn nên làm như vậy.
+
+state-not-private-label = Không an toàn
+state-unverified-label = Chưa xác minh
+state-private-label = Riêng tư
+state-finished-label = Hoàn tất
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+verify-request = { $name } đã yêu cầu xác minh danh tính của bạn.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+afterauth-private = Bạn đã xác minh danh tính của { $name }.
+
+# Variables:
+# $name (String) - the screen name of a chat contact person
+afterauth-unverified = Danh tính của { $name } chưa được xác minh.
+
+# 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 = Tạo khóa riêng OTR không thành công: { $error }
diff --git a/l10n-vi/mail/messenger/policies/aboutPolicies.ftl b/l10n-vi/mail/messenger/policies/aboutPolicies.ftl
new file mode 100644
index 0000000000..e6d6970138
--- /dev/null
+++ b/l10n-vi/mail/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 = Chính sách doanh nghiệp
+
+# 'Active' is used to describe the policies that are currently active
+active-policies-tab = Hoạt động
+errors-tab = Lỗi
+documentation-tab = Tài liệu
+
+no-specified-policies-message = Dịch vụ chính sách doanh nghiệp đang hoạt động nhưng không có chính sách nào được kích hoạt.
+inactive-message = Dịch vụ chính sách doanh nghiệp không hoạt động.
+
+policy-name = Tên chính sách
+policy-value = Giá trị chính sách
+policy-errors = Lỗi chính sách
diff --git a/l10n-vi/mail/messenger/policies/policies-descriptions.ftl b/l10n-vi/mail/messenger/policies/policies-descriptions.ftl
new file mode 100644
index 0000000000..557c75a86f
--- /dev/null
+++ b/l10n-vi/mail/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 = Đặt chính sách mà WebExtensions có thể truy cập thông qua chrome.storage.managed.
+
+policy-AppAutoUpdate = Bật hoặc tắt cập nhật chương trình tự động.
+
+policy-AppUpdatePin = Ngăn không cho cập nhật { -brand-short-name } ngoài phiên bản đã chỉ định.
+
+policy-AppUpdateURL = Đặt URL cập nhật ứng dụng tùy chỉnh.
+
+policy-Authentication = Định cấu hình xác thực tích hợp cho các trang web hỗ trợ nó.
+
+policy-BackgroundAppUpdate2 = Kích hoạt hoặc vô hiệu hóa trình cập nhật dưới nền.
+
+policy-BlockAboutAddons = Chặn quyền truy cập vào trình quản lý tiện ích (about:addons).
+
+policy-BlockAboutConfig = Chặn quyền truy cập vào trang about:config.
+
+policy-BlockAboutProfiles = Chặn quyền truy cập vào trang about:profiles.
+
+policy-BlockAboutSupport = Chặn quyền truy cập vào trang about:support.
+
+policy-CaptivePortal = Kích hoạt hoặc vô hiệu hóa hỗ trợ cổng bị khóa.
+
+policy-CertificatesDescription = Thêm chứng chỉ hoặc sử dụng chứng chỉ tích hợp.
+
+policy-Cookies = Cho phép hoặc từ chối các trang web để đặt cookie.
+
+policy-DisableBuiltinPDFViewer = Vô hiệu hóa PDF.js, trình xem PDF tích hợp trong { -brand-short-name }.
+
+policy-DisabledCiphers = Vô hiệu hóa thuật toán mã hóa.
+
+policy-DefaultDownloadDirectory = Đặt thư mục tải xuống mặc định.
+
+policy-DisableAppUpdate = Ngăn { -brand-short-name } cập nhật.
+
+policy-DisableDefaultClientAgent = Ngăn không cho tác nhân khách mặc định thực hiện bất kỳ hành động nào. Chỉ áp dụng cho Windows; các nền tảng khác không có tác nhân.
+
+policy-DisableDeveloperTools = Chặn quyền truy cập vào các công cụ dành cho nhà phát triển.
+
+policy-DisableFeedbackCommands = Tắt các lệnh để gửi phản hồi từ bảng chọn trợ giúp (gửi phản hồi và báo cáo trang web lừa đảo).
+
+policy-DisableForgetButton = Ngăn chặn truy cập vào nút Quên.
+
+policy-DisableFormHistory = Không lưu lịch sử tìm kiếm và biểu mẫu.
+
+policy-DisableMasterPasswordCreation = Nếu đúng, mật khẩu chính không thể được tạo ra.
+
+policy-DisablePasswordReveal = Không cho phép mật khẩu được tiết lộ trong thông tin đăng nhập đã lưu.
+
+policy-DisableProfileImport = Vô hiệu hóa lệnh menu để nhập dữ liệu từ một ứng dụng khác.
+
+policy-DisableSafeMode = Tắt tính năng này để khởi động lại ở chế độ an toàn. Lưu ý: phím Shift để vào chế độ an toàn chỉ có thể tắt trên Windows bằng Group Policy.
+
+policy-DisableSecurityBypass = Ngăn chặn người dùng bỏ qua các cảnh báo bảo mật nhất định.
+
+policy-DisableSystemAddonUpdate = Ngăn { -brand-short-name } cài đặt và cập nhật các tiện ích hệ thống.
+
+policy-DisableTelemetry = Tắt Telemetry.
+
+policy-DisplayMenuBar = Hiển thị thanh menu theo mặc định.
+
+policy-DNSOverHTTPS = Định cấu hình DNS qua HTTPS.
+
+policy-DontCheckDefaultClient = Vô hiệu hóa kiểm tra cho máy khách mặc định khi khởi động.
+
+policy-DownloadDirectory = Đặt và khóa thư mục tải xuống.
+
+# “lock” means that the user won’t be able to change this setting
+policy-EnableTrackingProtection = Bật hoặc tắt chặn nội dung và tùy chọn khóa nó.
+
+# “lock” means that the user won’t be able to change this setting
+policy-EncryptedMediaExtensions = Bật hoặc tắt tiện ích mở rộng phương tiện được mã hóa và tùy chọn khóa nó.
+
+# 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 = Cài đặt, gỡ cài đặt hoặc khóa tiện ích mở rộng. Tùy chọn cài đặt lấy URL hoặc đường dẫn làm tham số. Các tùy chọn gỡ cài đặt và khóa có ID tiện ích mở rộng.
+
+policy-ExtensionSettings = Quản lý các cài đặt cài đặt khác nhau cho tiện ích mở rộng.
+
+policy-ExtensionUpdate = Bật hoặc tắt cập nhật tiện ích mở rộng tự động.
+
+policy-Handlers = Cấu hình trình xử lý ứng dụng mặc định.
+
+policy-HardwareAcceleration = Nếu sai, tắt tăng tốc phần cứng.
+
+policy-InstallAddonsPermission = Cho phép các trang web nhất định để cài đặt tiện ích.
+
+policy-LegacyProfiles = Vô hiệu hóa tính năng thực thi một cấu hình riêng cho mỗi cài đặt.
+
+## Do not translate "SameSite", it's the name of a cookie attribute.
+
+policy-LegacySameSiteCookieBehaviorEnabled = Bật cài đặt hành vi cookie SameSite cũ mặc định.
+
+policy-LegacySameSiteCookieBehaviorEnabledForDomainList = Hoàn nguyên hành vi SameSite cũ cho cookie trên các trang web được chỉ định.
+
+##
+
+policy-LocalFileLinks = Cho phép các trang web cụ thể để liên kết đến các tập tin cục bộ.
+
+policy-ManualAppUpdateOnly = Chỉ cho phép cập nhật thủ công và không thông báo cho người dùng về các bản cập nhật.
+
+policy-NetworkPrediction = Kích hoạt hoặc vô hiệu hóa dự đoán mạng (tìm nạp trước DNS).
+
+policy-OfferToSaveLogins = Thực thi cài đặt để cho phép { -brand-short-name } cung cấp và ghi nhớ thông tin đăng nhập và mật khẩu đã lưu. Cả hai giá trị đúng và sai đều được chấp nhận.
+
+policy-OfferToSaveLoginsDefault = Đặt giá trị mặc định để cho phép { -brand-short-name } đề nghị ghi nhớ thông tin đăng nhập và mật khẩu đã lưu. Cả giá trị đúng và sai đều được chấp nhận.
+
+policy-OverrideFirstRunPage = Ghi đè trang chạy đầu tiên. Bỏ trống chính sách này nếu bạn muốn vô hiệu hóa trang chạy đầu tiên.
+
+policy-OverridePostUpdatePage = Ghi đè lên trang cập nhật "Có gì mới". Bỏ trống chính sách này nếu bạn muốn tắt trang cập nhật sau.
+
+policy-PasswordManagerEnabled = Cho phép lưu mật khẩu vào trình quản lý mật khẩu.
+
+# PDF.js and PDF should not be translated
+policy-PDFjs = Vô hiệu hóa hoặc định cấu hình PDF.js, trình xem PDF tích hợp trong { -brand-short-name }.
+
+policy-Permissions2 = Cấu hình quyền truy cập cho máy ảnh, micrô, vị trí, thông báo và tự động phát.
+
+policy-Preferences = Đặt và khóa giá trị cho một tập hợp con ưu tiên.
+
+policy-PrimaryPassword = Yêu cầu hoặc ngăn chặn việc sử dụng mật khẩu chính.
+
+policy-PromptForDownloadLocation = Hỏi nơi lưu tập tin khi tải xuống.
+
+policy-Proxy = Định cấu hình cài đặt proxy.
+
+policy-RequestedLocales = Đặt danh sách các ngôn ngữ được yêu cầu cho ứng dụng theo thứ tự ưu tiên.
+
+policy-SanitizeOnShutdown2 = Xóa dữ liệu điều hướng khi tắt máy.
+
+policy-SearchEngines = Cấu hình cài đặt công cụ tìm kiếm. Chính sách này chỉ có sẵn trên phiên bản phát hành hỗ trợ mở rộng (ESR).
+
+policy-SearchSuggestEnabled = Bật hoặc tắt đề xuất tìm kiếm.
+
+# For more information, see https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/PKCS11/Module_Installation
+policy-SecurityDevices = Cài đặt các mô-đun PKCS #11.
+
+policy-SSLVersionMax = Đặt phiên bản SSL tối đa.
+
+policy-SSLVersionMin = Đặt phiên bản SSL tối thiểu.
+
+policy-SupportMenu = Thêm một mục menu hỗ trợ tùy chỉnh vào menu trợ giúp.
+
+policy-UserMessaging = Không hiển thị một số thông điệp nhất định cho người dùng.
+
+# “format” refers to the format used for the value of this policy.
+policy-WebsiteFilter = Chặn các trang web không được truy cập. Xem tài liệu để biết thêm chi tiết về định dạng.
diff --git a/l10n-vi/mail/messenger/preferences/am-copies.ftl b/l10n-vi/mail/messenger/preferences/am-copies.ftl
new file mode 100644
index 0000000000..11dee6b327
--- /dev/null
+++ b/l10n-vi/mail/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 = Để trống trường địa chỉ để luôn hiển thị hàng địa chỉ khi bắt đầu một thư mới.
diff --git a/l10n-vi/mail/messenger/preferences/am-im.ftl b/l10n-vi/mail/messenger/preferences/am-im.ftl
new file mode 100644
index 0000000000..4b327bd121
--- /dev/null
+++ b/l10n-vi/mail/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 = Cài đặt xác thực
+account-channel-title = Kênh mặc định
+
+chat-autologin =
+ .label = Đăng nhập khi khởi động
+
+chat-encryption-generic = Chung
+chat-encryption-log =
+ .label = Bao gồm các thư được mã hóa đầu cuối trong nhật ký hội thoại
+chat-encryption-label = Mã hóa đầu cuối
+chat-encryption-description = { $protocol } cung cấp mã hóa đầu cuối cho các tin nhắn trò chuyện. Điều này ngăn các bên thứ ba nghe trộm cuộc trò chuyện. Có thể yêu cầu thiết lập bổ sung bên dưới để mã hóa hoạt động.
+chat-encryption-status = Trạng thái mã hóa
+chat-encryption-placeholder = Chưa khởi tạo mã hóa.
+chat-encryption-sessions = Phiên
+chat-encryption-sessions-description = Để mã hóa đầu cuối hoạt động chính xác, bạn phải tin tưởng vào các phiên khác hiện đã đăng nhập vào tài khoản của bạn. Tương tác với client khác là cần thiết để xác minh một phiên. Việc xác minh một phiên có thể dẫn đến tất cả các phiên mà phiên đó tin tưởng cũng được { -brand-short-name } tin cậy.
+chat-encryption-session-verify = xác nhận
+ .title = Xác minh danh tính của phiên này
+chat-encryption-session-trusted = đáng tin cậy
+ .title = Danh tính của phiên này đã được xác minh
diff --git a/l10n-vi/mail/messenger/preferences/application-manager.ftl b/l10n-vi/mail/messenger/preferences/application-manager.ftl
new file mode 100644
index 0000000000..1a776f2d5b
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/application-manager.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/.
+
+app-manager-window-dialog =
+ .title = Chi tiết ứng dụng
+ .style = width: 30em; min-height: 20em;
+
+app-manager-window-dialog2 =
+ .title = Chi tiết ứng dụng
+
+remove-app-button =
+ .label = Xóa
+ .accesskey = R
diff --git a/l10n-vi/mail/messenger/preferences/attachment-reminder.ftl b/l10n-vi/mail/messenger/preferences/attachment-reminder.ftl
new file mode 100644
index 0000000000..9670be9ef0
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/attachment-reminder.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/.
+
+attachment-reminder-window =
+ .title = Từ khóa lời nhắc về đính kèm
+
+attachment-reminder-label = { -brand-short-name } sẽ cảnh báo bạn về các tập tin đính kèm bị thiếu nếu bạn sắp gửi e-mail chứa một trong những từ khóa này.
+
+keyword-new-button =
+ .label = Mới…
+ .accesskey = N
+
+keyword-edit-button =
+ .label = Chỉnh sửa…
+ .accesskey = E
+
+keyword-remove-button =
+ .label = Xóa
+ .accesskey = D
+
+new-keyword-title = Từ khóa mới
+new-keyword-label = Từ khóa:
+
+edit-keyword-title = Chỉnh sửa từ khóa
+edit-keyword-label = Từ khóa:
diff --git a/l10n-vi/mail/messenger/preferences/colors.ftl b/l10n-vi/mail/messenger/preferences/colors.ftl
new file mode 100644
index 0000000000..118ac82201
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/colors.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/.
+
+colors-dialog-window =
+ .title = Màu sắc
+ .style =
+ { PLATFORM() ->
+ [macos] width: 41em !important
+ *[other] width: 38em !important
+ }
+
+colors-dialog-window2 =
+ .title = Màu
+
+colors-dialog-legend = Văn bản và nền
+
+text-color-label =
+ .value = Văn bản:
+ .accesskey = T
+
+background-color-label =
+ .value = Nền:
+ .accesskey = B
+
+use-system-colors =
+ .label = Dùng màu sắc của hệ thống
+ .accesskey = s
+
+colors-link-legend = Màu liên kết
+
+link-color-label =
+ .value = Liên kết chưa truy cập:
+ .accesskey = L
+
+visited-link-color-label =
+ .value = Liên kết đã truy cập:
+ .accesskey = V
+
+underline-link-checkbox =
+ .label = Các liên kết được gạch chân
+ .accesskey = U
+
+override-color-label =
+ .value = Ghi đè các màu được chỉ định bởi nội dung bằng các lựa chọn của tôi ở trên:
+ .accesskey = O
+
+override-color-always =
+ .label = Luôn luôn
+
+override-color-auto =
+ .label = Chỉ trong các chủ đề có độ tương phản cao
+
+override-color-never =
+ .label = Không bao giờ
diff --git a/l10n-vi/mail/messenger/preferences/connection.ftl b/l10n-vi/mail/messenger/preferences/connection.ftl
new file mode 100644
index 0000000000..0d13b9025d
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/connection.ftl
@@ -0,0 +1,127 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Sử dụng nhà cung cấp
+ .accesskey = r
+
+# Variables:
+# $name (String) - Display name or URL for the DNS over HTTPS provider
+connection-dns-over-https-url-item-default =
+ .label = { $name } (Mặc định)
+ .tooltiptext = Sử dụng URL mặc định để xử lý DNS qua HTTPS
+
+connection-dns-over-https-url-custom =
+ .label = Tùy chỉnh
+ .accesskey = C
+ .tooltiptext =
+ Nhập URL ưa thích của bạn để giải quyết DNS qua HTTPS
+ Nhập URL ưa thích của bạn để giải quyết DNS qua HTTPS
+ Nhập URL ưa thích của bạn để giải quyết DNS qua HTTPS
+ Nhập URL ưa thích của bạn để xử lí DNS qua HTTPS
+
+connection-dns-over-https-custom-label = Tùy chỉnh
+
+connection-dialog-window =
+ .title = Cài đặt kết nối
+ .style =
+ { PLATFORM() ->
+ [macos] width: 44em !important
+ *[other] width: 49em !important
+ }
+
+connection-dialog-window2 =
+ .title = Cài đặt kết nối
+
+disable-extension-button = Vô hiệu hóa tiện ích mở rộng
+
+# 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 = Một tiện ích mở rộng, <img data-l10n-name="extension-icon" alt="" /> { $name }, đang kiểm soát cách { -brand-short-name } kết nối internet.
+
+connection-proxy-legend = Định cấu hình proxy để truy cập Internet
+
+proxy-type-no =
+ .label = Không dùng proxy
+ .accesskey = y
+
+proxy-type-wpad =
+ .label = Tự động phát hiện cài đặt proxy cho mạng này
+ .accesskey = w
+
+proxy-type-system =
+ .label = Sử dụng cài đặt proxy của hệ thống
+ .accesskey = u
+
+proxy-type-manual =
+ .label = Cấu hình proxy thủ công:
+ .accesskey = m
+
+proxy-http-label =
+ .value = Proxy HTTP:
+ .accesskey = h
+
+http-port-label =
+ .value = Cổng:
+ .accesskey = p
+
+proxy-http-sharing =
+ .label = Đồng thời sử dụng proxy này cho HTTPS
+ .accesskey = x
+
+proxy-https-label =
+ .value = HTTPS Proxy:
+ .accesskey = S
+
+ssl-port-label =
+ .value = Cổng:
+ .accesskey = o
+
+proxy-socks-label =
+ .value = Máy chủ SOCKS:
+ .accesskey = c
+
+socks-port-label =
+ .value = Cổng:
+ .accesskey = t
+
+proxy-socks4-label =
+ .label = SOCKS v4
+ .accesskey = k
+
+proxy-socks5-label =
+ .label = SOCKS v5
+ .accesskey = v
+
+proxy-type-auto =
+ .label = URL cấu hình proxy tự động:
+ .accesskey = A
+
+proxy-reload-label =
+ .label = Tải lại
+ .accesskey = l
+
+no-proxy-label =
+ .value = Không dùng proxy cho:
+ .accesskey = n
+
+no-proxy-example = Ví dụ: .mozilla.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 = Kết nối đến localhost, 127.0.0.1/8, và ::1 không bao giờ dùng proxy.
+
+proxy-password-prompt =
+ .label = Không yêu cầu xác nhận nếu đã lưu mật khẩu
+ .accesskey = i
+ .tooltiptext = Tùy chọn này âm thầm xác thực bạn với proxy khi bạn đã lưu thông tin đăng nhập cho họ. Bạn sẽ được nhắc nếu xác thực thất bại.
+
+proxy-remote-dns =
+ .label = DNS của proxy khi dùng SOCKS v5
+ .accesskey = d
+
+proxy-enable-doh =
+ .label = Kích hoạt DNS qua HTTPS
+ .accesskey = b
diff --git a/l10n-vi/mail/messenger/preferences/cookies.ftl b/l10n-vi/mail/messenger/preferences/cookies.ftl
new file mode 100644
index 0000000000..5d71ff5922
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/cookies.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/.
+
+cookies-window-dialog =
+ .title = Cookie
+ .style = width: 36em;
+
+cookies-window-dialog2 =
+ .title = Cookie
+
+window-close-key =
+ .key = w
+
+window-focus-search-key =
+ .key = f
+
+window-focus-search-alt-key =
+ .key = k
+
+filter-search-label =
+ .value = Tìm:
+ .accesskey = S
+
+cookies-on-system-label = Các cookie sau được lưu trong máy tính của bạn:
+
+treecol-site-header =
+ .label = Trang
+
+treecol-name-header =
+ .label = Tên cookie
+
+props-name-label =
+ .value = Tên:
+props-value-label =
+ .value = Nội dung:
+props-domain-label =
+ .value = Máy chủ:
+props-path-label =
+ .value = Đường dẫn:
+props-secure-label =
+ .value = Gửi cho:
+props-expires-label =
+ .value = Hết hạn:
+props-container-label =
+ .value = Ngăn chứa:
+
+remove-cookie-button =
+ .label = Xóa cookie
+ .accesskey = R
+
+remove-all-cookies-button =
+ .label = Xóa tất cả cookie
+ .accesskey = A
+
+cookie-close-button =
+ .label = Đóng
+ .accesskey = C
diff --git a/l10n-vi/mail/messenger/preferences/dock-options.ftl b/l10n-vi/mail/messenger/preferences/dock-options.ftl
new file mode 100644
index 0000000000..a27f3beb8e
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/dock-options.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/.
+
+dock-options-window-dialog =
+ .title = Tùy chọn biểu tượng ứng dụng
+ .style = width: 35em;
+
+dock-options-window-dialog2 =
+ .title = Tùy chọn biểu tượng ứng dụng
+
+dock-options-show-badge =
+ .label = Hiển thị biểu tượng huy hiệu
+ .accesskey = b
+
+bounce-system-dock-icon =
+ .label = Hoạt ảnh biểu tượng ứng dụng khi có thư mới
+ .accesskey = i
+
+dock-icon-legend = Huy hiệu biểu tượng ứng dụng
+
+dock-icon-show-label =
+ .value = Biểu tượng ứng dụng huy hiệu với:
+
+count-unread-messages-radio =
+ .label = Đếm số tin nhắn chưa đọc
+ .accesskey = u
+
+count-new-messages-radio =
+ .label = Đếm số tin nhắn mới
+ .accesskey = n
+
+notification-settings-info2 = Bạn có thể tắt huy hiệu trên ngăn thông báo của cài đặt hệ thống.
diff --git a/l10n-vi/mail/messenger/preferences/fonts.ftl b/l10n-vi/mail/messenger/preferences/fonts.ftl
new file mode 100644
index 0000000000..c1dda3702a
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/fonts.ftl
@@ -0,0 +1,151 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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-window-close =
+ .key = w
+
+# Variables:
+# $name {string, "Arial"} - Name of the default font
+fonts-label-default =
+ .label = Mặc định ({ $name })
+fonts-label-default-unnamed =
+ .label = Mặc định
+
+fonts-encoding-dialog-title =
+ .title = Phông chữ & bảng mã
+
+fonts-language-legend =
+ .value = Phông chữ cho:
+ .accesskey = t
+
+fonts-proportional-label =
+ .value = Tỷ lệ:
+ .accesskey = P
+
+## Languages
+
+# Note: Translate "Latin" as the name of Latin (Roman) script, not as the name of the Latin language.
+font-language-group-latin =
+ .label = Latin
+font-language-group-japanese =
+ .label = Nhật Bản
+font-language-group-trad-chinese =
+ .label = Hoa Phồn Thể (Đài Loan)
+font-language-group-simpl-chinese =
+ .label = Hoa Giản Thể
+font-language-group-trad-chinese-hk =
+ .label = Hoa Phồn Thể (Hồng Kông)
+font-language-group-korean =
+ .label = Hàn Quốc
+font-language-group-cyrillic =
+ .label = Kirin
+font-language-group-el =
+ .label = Hi Lạp
+font-language-group-other =
+ .label = Hệ thống chữ viết khác
+font-language-group-thai =
+ .label = Thái
+font-language-group-hebrew =
+ .label = Do Thái
+font-language-group-arabic =
+ .label = Ả Rập
+font-language-group-devanagari =
+ .label = Devanagari
+font-language-group-tamil =
+ .label = Tamil
+font-language-group-armenian =
+ .label = Armenia
+font-language-group-bengali =
+ .label = Băng-gan
+font-language-group-canadian =
+ .label = Kí hiệu Âm tiết Canađa Thống nhất
+font-language-group-ethiopic =
+ .label = Ethiopic
+font-language-group-georgian =
+ .label = Gruzia
+font-language-group-gujarati =
+ .label = Gujarat
+font-language-group-gurmukhi =
+ .label = Gurmukhi
+font-language-group-khmer =
+ .label = Khơ-me
+font-language-group-malayalam =
+ .label = Malayalam
+font-language-group-math =
+ .label = Mathematics
+font-language-group-odia =
+ .label = Tiếng Odia
+font-language-group-telugu =
+ .label = Tiếng Telugu
+font-language-group-kannada =
+ .label = Tiếng Kannada
+font-language-group-sinhala =
+ .label = Tiếng Sinhala
+font-language-group-tibetan =
+ .label = Tiếng Tibetan
+
+## Default font type
+
+default-font-serif =
+ .label = Serif
+
+default-font-sans-serif =
+ .label = Sans Serif
+
+font-size-proportional-label =
+ .value = Kích cỡ:
+ .accesskey = e
+
+font-size-monospace-label =
+ .value = Kích cỡ:
+ .accesskey = i
+
+font-serif-label =
+ .value = Serif:
+ .accesskey = S
+
+font-sans-serif-label =
+ .value = Sans-serif:
+ .accesskey = n
+
+font-monospace-label =
+ .value = Monospace:
+ .accesskey = M
+
+font-min-size-label =
+ .value = Cỡ phông tối thiểu:
+ .accesskey = z
+
+min-size-none =
+ .label = Không
+
+## Fonts in message
+
+font-control-legend = Điều chỉnh phông chữ
+
+use-document-fonts-checkbox =
+ .label = Cho phép thư sử dụng phông chữ khác
+ .accesskey = o
+
+use-fixed-width-plain-checkbox =
+ .label = Sử dụng phông chữ có chiều rộng cố định cho thư văn bản thuần túy
+ .accesskey = x
+
+## Language settings
+
+text-encoding-legend = Bảng mã văn bản
+
+text-encoding-description = Đặt mã hóa văn bản mặc định để gửi và nhận thư
+
+font-outgoing-email-label =
+ .value = Thư gửi đi:
+ .accesskey = u
+
+font-incoming-email-label =
+ .value = Thư đến:
+ .accesskey = I
+
+default-font-reply-checkbox =
+ .label = Khi có thể, sử dụng mã hóa văn bản mặc định trong trả lời
+ .accesskey = h
diff --git a/l10n-vi/mail/messenger/preferences/languages.ftl b/l10n-vi/mail/messenger/preferences/languages.ftl
new file mode 100644
index 0000000000..456299ea81
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/languages.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/.
+
+languages-customize-moveup =
+ .label = Di chuyển lên
+ .accesskey = U
+
+languages-customize-movedown =
+ .label = Di chuyển xuống
+ .accesskey = D
+
+languages-customize-remove =
+ .label = Xóa
+ .accesskey = R
+
+languages-customize-select-language =
+ .placeholder = Chọn một ngôn ngữ để thêm...
+
+languages-customize-add =
+ .label = Thêm
+ .accesskey = A
+
+messenger-languages-window =
+ .title = Cài đặt ngôn ngữ { -brand-short-name }
+ .style = width: 40em
+
+messenger-languages-window2 =
+ .title = Cài đặt ngôn ngữ { -brand-short-name }
+
+messenger-languages-description = { -brand-short-name } sẽ hiển thị ngôn ngữ mà bạn đã chọn làm mặc định và sẽ hiển thị ngôn ngữ khác nếu cần thiết được sắp xếp theo thứ tự mà chúng xuất hiện.
+
+messenger-languages-search = Tìm kiếm thêm ngôn ngữ...
+
+messenger-languages-searching =
+ .label = Đang tìm kiếm ngôn ngữ...
+
+messenger-languages-downloading =
+ .label = Đang tải xuống…
+
+messenger-languages-select-language =
+ .label = Chọn một ngôn ngữ để thêm...
+ .placeholder = Chọn một ngôn ngữ để thêm...
+
+messenger-languages-installed-label = Ngôn ngữ đã cài đặt
+messenger-languages-available-label = Ngôn ngữ có sẵn
+
+messenger-languages-error = { -brand-short-name } không thể cập nhật ngôn ngữ của bạn ngay bây giờ. Kiểm tra kết nối internet và thử lại.
diff --git a/l10n-vi/mail/messenger/preferences/new-tag.ftl b/l10n-vi/mail/messenger/preferences/new-tag.ftl
new file mode 100644
index 0000000000..69aaf79891
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/new-tag.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/.
+
+tag-dialog-window =
+ .title = Nhãn mới
+
+tag-name-label =
+ .value = Tên nhãn:
+ .accesskey = T
+
+tag-color-label =
+ .value = Màu:
+ .accesskey = C
diff --git a/l10n-vi/mail/messenger/preferences/notifications.ftl b/l10n-vi/mail/messenger/preferences/notifications.ftl
new file mode 100644
index 0000000000..883fe9aea3
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/notifications.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/.
+
+notifications-dialog-window =
+ .title = Tùy chỉnh thông báo thư mới
+
+customize-alert-description = Chọn các trường muốn hiện trong thông báo:
+
+preview-text-checkbox =
+ .label = Xem trước thư văn bản
+ .accesskey = M
+
+subject-checkbox =
+ .label = Tiêu đề
+ .accesskey = S
+
+sender-checkbox =
+ .label = Người gửi
+ .accesskey = e
+
+## 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 = Hiển thị thông báo thư mới trong
+ .accesskey = N
+
+open-time-label-after =
+ .value = giây
diff --git a/l10n-vi/mail/messenger/preferences/offline.ftl b/l10n-vi/mail/messenger/preferences/offline.ftl
new file mode 100644
index 0000000000..3ea9d3bc7f
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/offline.ftl
@@ -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/.
+
+offline-dialog-window =
+ .title = Cài đặt ngoại tuyến
+
+autodetect-online-label =
+ .label = Tự động theo dõi trạng thái trực tuyến được phát hiện
+ .accesskey = d
+
+offline-preference-startup-label = Trạng thái thủ công khi khởi động:
+
+status-radio-remember =
+ .label = Ghi nhớ tình trạng trực tuyến trước đó
+ .accesskey = R
+
+status-radio-ask =
+ .label = Hỏi tôi về trạng thái trực tuyến
+ .accesskey = k
+
+status-radio-always-online =
+ .label = Trực tuyến
+ .accesskey = l
+
+status-radio-always-offline =
+ .label = Ngoại tuyến
+ .accesskey = f
+
+going-online-label = Gửi những thư chưa gửi khi trực tuyến?
+
+going-online-auto =
+ .label = Có
+ .accesskey = Y
+
+going-online-not =
+ .label = Không
+ .accesskey = N
+
+going-online-ask =
+ .label = Hỏi tôi
+ .accesskey = s
+
+going-offline-label = Tải thư để sử dụng ngoại tuyến khi rời mạng?
+
+going-offline-auto =
+ .label = Có
+ .accesskey = e
+
+going-offline-not =
+ .label = Không
+ .accesskey = o
+
+going-offline-ask =
+ .label = Hỏi tôi
+ .accesskey = a
diff --git a/l10n-vi/mail/messenger/preferences/passwordManager.ftl b/l10n-vi/mail/messenger/preferences/passwordManager.ftl
new file mode 100644
index 0000000000..66b50c8a57
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/passwordManager.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/.
+
+saved-logins =
+ .title = Đăng nhập đã lưu
+window-close =
+ .key = w
+focus-search-primary-shortcut =
+ .key = f
+focus-search-alt-shortcut =
+ .key = k
+copy-provider-url-cmd =
+ .label = Sao chép URL
+ .accesskey = y
+copy-username-cmd =
+ .label = Sao chép tên đăng nhập
+ .accesskey = U
+edit-username-cmd =
+ .label = Chỉnh sửa tên đăng nhập
+ .accesskey = d
+copy-password-cmd =
+ .label = Sao chép mật khẩu
+ .accesskey = C
+edit-password-cmd =
+ .label = Chỉnh sửa mật khẩu
+ .accesskey = E
+search-filter =
+ .accesskey = S
+ .placeholder = Tìm kiếm
+column-heading-provider =
+ .label = Nhà cung cấp
+column-heading-username =
+ .label = Tên đăng nhập
+column-heading-password =
+ .label = Mật khẩu
+column-heading-time-created =
+ .label = Sử dụng lần đầu
+column-heading-time-last-used =
+ .label = Sử dụng lần cuối
+column-heading-time-password-changed =
+ .label = Thay đổi lần cuối
+column-heading-times-used =
+ .label = Số lần sử dụng
+remove =
+ .label = Xóa
+ .accesskey = R
+import =
+ .label = Nhập…
+ .accesskey = I
+
+password-close-button =
+ .label = Đóng
+ .accesskey = C
+
+show-passwords =
+ .label = Hiện mật khẩu
+ .accesskey = P
+hide-passwords =
+ .label = Ẩn mật khẩu
+ .accesskey = P
+logins-description-all = Thông tin đăng nhập cho các nhà cung cấp sau được lưu trữ trên máy tính của bạn
+logins-description-filtered = Các thông tin đăng nhập sau phù hợp với tìm kiếm của bạn:
+remove-all =
+ .label = Xóa tất cả
+ .accesskey = A
+remove-all-shown =
+ .label = Xóa tất cả được hiển thị
+ .accesskey = A
+remove-all-passwords-prompt = Bạn có chắc bạn muốn xóa tất cả mật khẩu?
+remove-all-passwords-title = Xóa tất cả mật khẩu
+no-master-password-prompt = Bạn có chắc bạn muốn hiện các mật khẩu của mình?
+
+## OS Authentication dialog
+
+# This message can be seen by trying to show or copy the passwords.
+password-os-auth-dialog-message = Xác nhận danh tính của bạn để hiển thị mật khẩu đã lưu.
+
+# 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 = hiển thị mật khẩu đã lưu
+
+# Don't change this label.
+password-os-auth-dialog-caption = { -brand-full-name }
diff --git a/l10n-vi/mail/messenger/preferences/permissions.ftl b/l10n-vi/mail/messenger/preferences/permissions.ftl
new file mode 100644
index 0000000000..9b3ac13b2b
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/permissions.ftl
@@ -0,0 +1,59 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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-window =
+ .title = Ngoại trừ
+ .style = width: 36em;
+
+permissions-reminder-window2 =
+ .title = Ngoại trừ
+
+permission-preferences-close-window =
+ .key = w
+
+website-address-label =
+ .value = Địa chỉ của trang web:
+ .accesskey = d
+
+block-button =
+ .label = Chặn
+ .accesskey = B
+
+allow-session-button =
+ .label = Cho phép theo phiên
+ .accesskey = n
+
+allow-button =
+ .label = Cho phép
+ .accesskey = A
+
+treehead-sitename-label =
+ .label = Trang
+
+treehead-status-label =
+ .label = Trạng thái
+
+remove-site-button =
+ .label = Xóa trang
+ .accesskey = R
+
+remove-all-site-button =
+ .label = Xóa hết các trang này
+ .accesskey = e
+
+cancel-button =
+ .label = Hủy bỏ
+ .accesskey = C
+
+save-button =
+ .label = Lưu thay đổi
+ .accesskey = S
+
+permission-can-label = Cho phép
+permission-can-access-first-party-label = Chỉ chấp nhận bên thứ nhất
+permission-can-session-label = Cho phép theo phiên
+permission-cannot-label = Chặn
+
+invalid-uri-message = Vui lòng nhập tên máy chủ hợp lệ
+invalid-uri-title = Tên máy chủ không hợp lệ
diff --git a/l10n-vi/mail/messenger/preferences/preferences.ftl b/l10n-vi/mail/messenger/preferences/preferences.ftl
new file mode 100644
index 0000000000..85a5b34afd
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/preferences.ftl
@@ -0,0 +1,932 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = Đóng
+
+preferences-doc-title2 = Cài đặt
+
+category-list =
+ .aria-label = Thể loại
+
+pane-general-title = Tổng quát
+category-general =
+ .tooltiptext = { pane-general-title }
+
+pane-compose-title = Soạn thảo
+category-compose =
+ .tooltiptext = Soạn thảo
+
+pane-privacy-title = Riêng tư & Bảo mật
+category-privacy =
+ .tooltiptext = Riêng tư & Bảo mật
+
+pane-chat-title = Trò chuyện
+category-chat =
+ .tooltiptext = Trò chuyện
+
+pane-calendar-title = Lịch
+category-calendar =
+ .tooltiptext = Lịch
+
+general-language-and-appearance-header = Ngôn ngữ & giao diện
+
+general-incoming-mail-header = Thư đến:
+
+general-files-and-attachment-header = Tập tin & đính kèm
+
+general-tags-header = Nhãn
+
+general-reading-and-display-header = Đọc & hiển thị
+
+general-updates-header = Cập nhật
+
+general-network-and-diskspace-header = Mạng & dung lượng trống
+
+general-indexing-label = Chỉ mục
+
+composition-category-header = Soạn thảo
+
+composition-attachments-header = Đính kèm
+
+composition-spelling-title = Chính tả
+
+compose-html-style-title = Phong cách HTML
+
+composition-addressing-header = Địa chỉ
+
+privacy-main-header = Riêng tư
+
+privacy-passwords-header = Mật khẩu
+
+privacy-junk-header = Thư rác
+
+collection-header = Thu thập và sử dụng dữ liệu { -brand-short-name }
+
+collection-description = Chúng tôi cố gắng cung cấp cho bạn sự lựa chọn và chỉ thu thập những gì chúng tôi cần để cung cấp và cải thiện { -brand-short-name } cho tất cả mọi người. Chúng tôi luôn xin phép trước khi thu thập thông tin cá nhân.
+collection-privacy-notice = Chính sách riêng tư
+
+collection-health-report-telemetry-disabled = Bạn không còn cho phép { -vendor-short-name } thu thập dữ liệu kỹ thuật và tương tác. Tất cả dữ liệu trong quá khứ sẽ bị xóa trong vòng 30 ngày.
+collection-health-report-telemetry-disabled-link = Tìm hiểu thêm
+
+collection-health-report =
+ .label = Cho phép { -brand-short-name } gửi dữ liệu kỹ thuật và tương tác tới { -vendor-short-name }
+ .accesskey = r
+collection-health-report-link = Tìm hiểu thêm
+
+# This message is displayed above disabled data sharing options in developer builds
+# or builds with no Telemetry support available.
+collection-health-report-disabled = Dữ liệu báo cáo bị vô hiệu hóa với cấu hình này
+
+collection-backlogged-crash-reports =
+ .label = Cho phép { -brand-short-name } thay bạn gửi các báo cáo sự cố còn tồn đọng
+ .accesskey = c
+collection-backlogged-crash-reports-link = Tìm hiểu thêm
+
+privacy-security-header = Bảo mật
+
+privacy-scam-detection-title = Phát hiện lừa đảo
+
+privacy-anti-virus-title = Trình chống vi-rút
+
+privacy-certificates-title = Chứng nhận
+
+chat-pane-header = Trò chuyện
+
+chat-status-title = Trạng thái
+
+chat-notifications-title = Thông báo
+
+chat-pane-styling-header = Kiểu dáng
+
+choose-messenger-language-description = Chọn ngôn ngữ được sử dụng để hiển thị menu, tin nhắn và thông báo từ { -brand-short-name }.
+manage-messenger-languages-button =
+ .label = Tùy chỉnh…
+ .accesskey = l
+confirm-messenger-language-change-description = Khởi động lại { -brand-short-name } để áp dụng những thay đổi này
+confirm-messenger-language-change-button = Áp dụng và khởi động lại
+
+update-setting-write-failure-title = Lỗi khi lưu tùy chọn cập nhật
+
+# 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 } đã gặp lỗi và đã không lưu thay đổi này. Lưu ý rằng thiết lập tùy chọn cập nhật này yêu cầu quyền ghi vào tập tin bên dưới. Bạn hoặc quản trị viên hệ thống có thể giải quyết lỗi bằng cách cấp cho nhóm người dùng toàn quyền kiểm soát tập tin này.
+
+ Không thể ghi vào tập tin: { $path }
+
+update-in-progress-title = Đang cập nhật
+
+update-in-progress-message = Bạn có muốn { -brand-short-name } tiếp tục với bản cập nhật này không?
+
+update-in-progress-ok-button = &Loại bỏ
+# 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 = &Tiếp tục
+
+account-button = Cài đặt tài khoản
+open-addons-sidebar-button = Tiện ích mở rộng và chủ đề
+
+## OS Authentication dialog
+
+# This message can be seen by trying to add a Primary Password.
+primary-password-os-auth-dialog-message-win = Để tạo mật khẩu chính, hãy nhập thông tin đăng nhập Windows của bạn. Điều này giúp bảo vệ tính bảo mật của tài khoản của bạn.
+
+# 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 = tạo một mật khẩu chính
+
+# 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 = Trang khởi động { -brand-short-name }
+
+start-page-label =
+ .label = Khi { -brand-short-name } khởi động, hiển thị trang bắt đầu trong vùng hiển thị thư
+ .accesskey = W
+
+location-label =
+ .value = Địa chỉ:
+ .accesskey = o
+restore-default-label =
+ .label = Khôi phục về mặc định
+ .accesskey = R
+
+default-search-engine = Công cụ tìm kiếm mặc định
+add-web-search-engine =
+ .label = Thêm…
+ .accesskey = a
+remove-search-engine =
+ .label = Xóa
+ .accesskey = v
+
+add-opensearch-provider-title = Thêm nhà cung cấp OpenSearch
+add-opensearch-provider-text = Nhập URL của nhà cung cấp OpenSearch để thêm. Sử dụng URL trực tiếp của dập tin mô tả OpenSearch, hoặc một URL mànó có thể được tự động phát hiện.
+
+adding-opensearch-provider-failed-title = Thêm nhà cung cấp OpenSearch không thành công
+adding-opensearch-provider-failed-text = Không thể thêm nhà cung cấp OpenSearch cho { $url }.
+
+minimize-to-tray-label =
+ .label = Khi { -brand-short-name } đã thu nhỏ, di chuyển nó vào khay
+ .accesskey = m
+
+new-message-arrival = Khi có thư mới:
+mail-play-sound-label =
+ .label =
+ { PLATFORM() ->
+ [macos] Phát tập tin âm thanh sau:
+ *[other] Phát ra âm thanh
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] d
+ *[other] d
+ }
+mail-play-button =
+ .label = Phát
+ .accesskey = P
+
+change-dock-icon = Thay đổi tùy chọn cho biểu tượng ứng dụng
+app-icon-options =
+ .label = Tùy chọn biểu tượng ứng dụng…
+ .accesskey = n
+
+notification-settings2 = Có thể tắt cảnh báo và âm thanh mặc định trên ngăn thông báo của cài đặt hệ thống.
+
+animated-alert-label =
+ .label = Hiển thị thông báo
+ .accesskey = S
+customize-alert-label =
+ .label = Tùy biến…
+ .accesskey = C
+
+biff-use-system-alert =
+ .label = Sử dụng thông báo hệ thống
+
+tray-icon-unread-label =
+ .label = Hiển thị biểu tượng khay cho các tin nhắn chưa đọc
+ .accesskey = t
+
+tray-icon-unread-description = Được đề xuất khi sử dụng các nút trên thanh tác vụ nhỏ
+
+mail-system-sound-label =
+ .label = Âm thanh mặc định của hệ thống khi có thư mới
+ .accesskey = D
+mail-custom-sound-label =
+ .label = Sử dụng tập tin âm thanh sau
+ .accesskey = U
+mail-browse-sound-button =
+ .label = Duyệt…
+ .accesskey = B
+
+enable-gloda-search-label =
+ .label = Cho phép tìm kiếm và lập chỉ mục đầy đủ
+ .accesskey = G
+
+datetime-formatting-legend = Định dạng ngày và giờ
+language-selector-legend = Ngôn ngữ
+
+allow-hw-accel =
+ .label = Sử dụng chế độ tăng tốc phần cứng khi khả dụng
+ .accesskey = h
+
+store-type-label =
+ .value = Kiểu lưu trữ thư cho tài khoản mới:
+ .accesskey = T
+
+mbox-store-label =
+ .label = Tập tin trên mỗi thư mục (mbox)
+maildir-store-label =
+ .label = Tập tin trên mỗi thư (maildir)
+
+scrolling-legend = Cuộn
+autoscroll-label =
+ .label = Sử dụng tự động cuộn
+ .accesskey = U
+smooth-scrolling-label =
+ .label = Cuộn uyển chuyển
+ .accesskey = m
+browsing-gtk-use-non-overlay-scrollbars =
+ .label = Luôn hiển thị thanh cuộn
+ .accesskey = c
+
+system-integration-legend = Hệ thống tích hợp
+always-check-default =
+ .label = Luôn kiểm tra xem { -brand-short-name } có phải là ứng dụng thư mặc định khi khởi động
+ .accesskey = A
+check-default-button =
+ .label = Kiểm tra ngay…
+ .accesskey = N
+
+# 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] Tìm kiếm Windows
+ *[other] { "" }
+ }
+
+search-integration-label =
+ .label = Cho phép { search-engine-name } tìm kiếm thư
+ .accesskey = S
+
+config-editor-button =
+ .label = Trình chỉnh sửa cấu hình…
+ .accesskey = C
+
+return-receipts-description = Xác định cách { -brand-short-name } xử lý xác nhận đã nhận thư
+return-receipts-button =
+ .label = Xác nhận đã nhận thư…
+ .accesskey = R
+
+update-app-legend = Cập nhật { -brand-short-name }
+
+# Variables:
+# $version (String): version of Thunderbird, e.g. 68.0.1
+update-app-version = Phiên bản { $version }
+
+allow-description = Cho phép { -brand-short-name }
+automatic-updates-label =
+ .label = Tự động cài đặt các cập nhật (nên làm vì tăng tính bảo mật)
+ .accesskey = A
+check-updates-label =
+ .label = Kiểm tra cập nhật, nhưng hãy để tôi chọn có cài đặt chúng không
+ .accesskey = C
+
+update-history-button =
+ .label = Hiển thị lịch sử cập nhật
+ .accesskey = p
+
+use-service =
+ .label = Sử dụng dịch vụ chạy nền để cài đặt các cập nhật
+ .accesskey = b
+
+cross-user-udpate-warning = Cài đặt này sẽ áp dụng cho tất cả các tài khoản Windows và các cấu hình của { -brand-short-name } sử dụng cài đặt này của { -brand-short-name }.
+
+networking-legend = Kết nối
+proxy-config-description = Định cấu hình cách { -brand-short-name } kết nối Internet
+
+network-settings-button =
+ .label = Cài đặt…
+ .accesskey = S
+
+offline-legend = Ngoại tuyến
+offline-settings = Cấu hình thiết lập ngoại tuyến
+
+offline-settings-button =
+ .label = Ngoại tuyến…
+ .accesskey = O
+
+diskspace-legend = Dung lượng đĩa
+offline-compact-folder =
+ .label = Nén tất cả các thư mục khi nó sẽ lưu lại
+ .accesskey = a
+
+offline-compact-folder-automatically =
+ .label = Hỏi mọi lúc trước khi thu gọn
+ .accesskey = b
+
+compact-folder-size =
+ .value = MB tổng cộng
+
+## 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 = Sử dụng tối đa
+ .accesskey = U
+
+use-cache-after = MB dung lượng đĩa cho bộ đệm
+
+##
+
+smart-cache-label =
+ .label = Ghi đè quản lý bộ đệm tự động
+ .accesskey = v
+
+clear-cache-button =
+ .label = Xóa ngay
+ .accesskey = C
+
+fonts-legend = Phông chữ & màu sắc
+
+default-font-label =
+ .value = Phông chữ mặc định:
+ .accesskey = D
+
+default-size-label =
+ .value = Kích cỡ:
+ .accesskey = S
+
+font-options-button =
+ .label = Nâng cao…
+ .accesskey = A
+
+color-options-button =
+ .label = Màu sắc…
+ .accesskey = C
+
+display-width-legend = Thư văn bản thuần túy
+
+# Note : convert-emoticons-label 'Emoticons' are also known as 'Smileys', e.g. :-)
+convert-emoticons-label =
+ .label = Hiển thị biểu tượng cảm xúc dưới dạng đồ họa
+ .accesskey = e
+
+display-text-label = Khi hiển thị các thư văn bản thuần túy được trích dẫn:
+
+style-label =
+ .value = Kiểu:
+ .accesskey = y
+
+regular-style-item =
+ .label = Thông thường
+bold-style-item =
+ .label = Đậm
+italic-style-item =
+ .label = Nghiêng
+bold-italic-style-item =
+ .label = Nghiêng đậm
+
+size-label =
+ .value = Kích thước:
+ .accesskey = z
+
+regular-size-item =
+ .label = Thông thường
+bigger-size-item =
+ .label = Lớn hơn
+smaller-size-item =
+ .label = Nhỏ hơn
+
+quoted-text-color =
+ .label = Màu sắc:
+ .accesskey = o
+
+search-handler-table =
+ .placeholder = Lọc các loại nội dung và hành động
+
+type-column-header = Kiểu dữ liệu
+
+action-column-header = Thao tác
+
+save-to-label =
+ .label = Lưu các tập tin vào
+ .accesskey = S
+
+choose-folder-label =
+ .label =
+ { PLATFORM() ->
+ [macos] Chọn…
+ *[other] Duyệt…
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] C
+ *[other] B
+ }
+
+always-ask-label =
+ .label = Luôn hỏi tôi nơi lưu tập tin
+ .accesskey = A
+
+
+display-tags-text = Thẻ có thể được sử dụng để phân loại và ưu tiên thư của bạn.
+
+new-tag-button =
+ .label = Mới…
+ .accesskey = N
+
+edit-tag-button =
+ .label = Chỉnh sửa…
+ .accesskey = E
+
+delete-tag-button =
+ .label = Xóa
+ .accesskey = D
+
+auto-mark-as-read =
+ .label = Tự động đánh dấu thư là đã đọc
+ .accesskey = A
+
+mark-read-no-delay =
+ .label = Ngay lập tức trên màn hình
+ .accesskey = o
+
+view-attachments-inline =
+ .label = Xem tập tin đính kèm nội tuyến
+ .accesskey = V
+
+## Note: This will concatenate to "After displaying for [___] seconds",
+## using (mark-read-delay) and a number (seconds-label).
+
+mark-read-delay =
+ .label = Sau khi hiển thị
+ .accesskey = d
+
+seconds-label = giây
+
+##
+
+open-msg-label =
+ .value = Mở thư trong:
+
+open-msg-tab =
+ .label = Một thẻ mới
+ .accesskey = t
+
+open-msg-window =
+ .label = Một cửa sổ thư mới
+ .accesskey = n
+
+open-msg-ex-window =
+ .label = Một cửa sổ thư hiện có
+ .accesskey = e
+
+close-move-delete =
+ .label = Đóng cửa sổ thư/thẻ khi di chuyển hoặc xóa
+ .accesskey = C
+
+display-name-label =
+ .value = Tên hiển thị:
+
+condensed-addresses-label =
+ .label = Chỉ hiển thị tên cho những người trong sổ địa chỉ của tôi
+ .accesskey = S
+
+## Compose Tab
+
+forward-label =
+ .value = Chuyển tiếp thư:
+ .accesskey = y
+
+inline-label =
+ .label = Ngay trong thư
+
+as-attachment-label =
+ .label = Dưới dạng đính kèm
+
+extension-label =
+ .label = thêm phần mở rộng cho tên tập tin
+ .accesskey = e
+
+## Note: This will concatenate to "Auto Save every [___] minutes",
+## using (auto-save-label) and a number (auto-save-end).
+
+auto-save-label =
+ .label = Tự động lưu mỗi
+ .accesskey = A
+
+auto-save-end = phút
+
+##
+
+warn-on-send-accel-key =
+ .label = Xác nhận khi sử dụng phím tắt để gửi thư
+ .accesskey = C
+
+add-link-previews =
+ .label = Thêm bản xem trước liên kết khi dán URL
+ .accesskey = i
+
+spellcheck-label =
+ .label = Kiểm tra chính tả trước khi gửi
+ .accesskey = C
+
+spellcheck-inline-label =
+ .label = Kiểm tra chính tả ngay khi đang gõ
+ .accesskey = E
+
+language-popup-label =
+ .value = Ngôn ngữ:
+ .accesskey = L
+
+download-dictionaries-link = Tải thêm từ điển
+
+font-label =
+ .value = Phông chữ:
+ .accesskey = n
+
+font-size-label =
+ .value = Cỡ chữ:
+ .accesskey = z
+
+default-colors-label =
+ .label = Sử dụng màu mặc định của trình đọc
+ .accesskey = d
+
+font-color-label =
+ .value = Màu chữ:
+ .accesskey = T
+
+bg-color-label =
+ .value = Màu nền:
+ .accesskey = B
+
+restore-html-label =
+ .label = Khôi phục về mặc định
+ .accesskey = R
+
+default-format-label =
+ .label = Sử dụng định dạng của đoạn thay vì phần thân văn bản theo mặc định
+ .accesskey = P
+
+compose-send-format-title = Định dạng gửi
+
+compose-send-automatic-option =
+ .label = Tự động
+
+compose-send-automatic-description = Nếu không có kiểu nào được sử dụng trong tin nhắn, hãy gửi văn bản thuần túy. Nếu không, hãy gửi HTML có dự phòng văn bản thuần túy.
+
+compose-send-both-option =
+ .label = Cả HTML và văn bản thuần túy
+
+compose-send-both-description = Ứng dụng email của người nhận sẽ xác định phiên bản nào sẽ hiển thị.
+
+compose-send-html-option =
+ .label = Chỉ HTML
+
+compose-send-html-description = Một số người nhận có thể không đọc được thư nếu không có văn bản thuần túy dự phòng.
+
+compose-send-plain-option =
+ .label = Chỉ văn bản thuần túy
+
+compose-send-plain-description = Một số kiểu sẽ được chuyển đổi thành một kiểu thay thế đơn giản, trong khi các tính năng thành phần khác sẽ bị tắt.
+
+autocomplete-description = Khi tìm địa chỉ trong thư, tra cứu các mục khớp nhau trong:
+
+ab-label =
+ .label = Sổ địa chỉ nội bộ
+ .accesskey = L
+
+directories-label =
+ .label = Máy chủ thư mục:
+ .accesskey = D
+
+directories-none-label =
+ .none = Không có
+
+edit-directories-label =
+ .label = Chỉnh sửa thư mục…
+ .accesskey = E
+
+email-picker-label =
+ .label = Tự động thêm địa chỉ email gửi đi vào:
+ .accesskey = A
+
+default-directory-label =
+ .value = Thư mục khởi động mặc định trong cửa sổ của sổ địa chỉ:
+ .accesskey = S
+
+default-last-label =
+ .none = Thư mục được sử dụng lần cuối
+
+attachment-label =
+ .label = Kiểm tra các tập tin đính kèm bị thiếu
+ .accesskey = m
+
+attachment-options-label =
+ .label = Từ khóa…
+ .accesskey = K
+
+enable-cloud-share =
+ .label = Đề nghị chia sẻ cho các tập tin lớn hơn
+cloud-share-size =
+ .value = MB
+
+add-cloud-account =
+ .label = Thêm…
+ .accesskey = A
+ .defaultlabel = Thêm…
+
+remove-cloud-account =
+ .label = Xóa
+ .accesskey = R
+
+find-cloud-providers =
+ .value = Tìm thêm nhà cung cấp…
+
+cloud-account-description = Thêm dịch vụ lưu trữ Filelink mới
+
+## Privacy Tab
+
+mail-content = Nội dung thư
+
+remote-content-label =
+ .label = Cho phép nội dung từ xa trong thư
+ .accesskey = m
+
+exceptions-button =
+ .label = Ngoại lệ…
+ .accesskey = E
+
+remote-content-info =
+ .value = Tìm hiểu thêm về các vấn đề riêng tư của nội dung từ xa
+
+web-content = Nội dung web
+
+history-label =
+ .label = Ghi nhớ các trang web và liên kết tôi đã truy cập
+ .accesskey = R
+
+cookies-label =
+ .label = Cho phép cookie từ các trang
+ .accesskey = A
+
+third-party-label =
+ .value = Cho phép cookie từ bên thứ ba:
+ .accesskey = c
+
+third-party-always =
+ .label = Luôn luôn
+third-party-never =
+ .label = Không bao giờ
+third-party-visited =
+ .label = Từ các trang đã truy cập
+
+keep-label =
+ .value = Lưu cho tới khi:
+ .accesskey = K
+
+keep-expire =
+ .label = chúng hết hạn
+keep-close =
+ .label = Tôi đóng { -brand-short-name }
+keep-ask =
+ .label = hỏi tôi mọi lúc
+
+cookies-button =
+ .label = Hiện cookie…
+ .accesskey = S
+
+do-not-track-label =
+ .label = Gửi tín hiệu “Không theo dõi” tới trang web để cho biết bạn không muốn bị theo dõi
+ .accesskey = n
+
+learn-button =
+ .label = Tìm hiểu thêm
+
+passwords-description = { -brand-short-name } có thể ghi nhớ mật khẩu cho tất cả tài khoản của bạn.
+
+passwords-button =
+ .label = Mật khẩu đã lưu…
+ .accesskey = S
+
+primary-password-description = Mật khẩu chính bảo vệ tất cả mật khẩu của bạn, nhưng bạn phải nhập mật khẩu một lần mỗi phiên.
+
+primary-password-label =
+ .label = Sử dụng mật khẩu chính
+ .accesskey = U
+
+primary-password-button =
+ .label = Thay đổi mật khẩu chính…
+ .accesskey = C
+
+forms-primary-pw-fips-title = Bạn hiện đang ở chế độ FIPS. FIPS yêu cầu tính năng mật khẩu chính.
+forms-master-pw-fips-desc = Thay đổi mật khẩu không thành công
+
+
+junk-description = Đặt cài đặt thư rác mặc định của bạn. Cài đặt thư rác dành riêng cho tài khoản có thể được định cấu hình trong cài đặt tài khoản.
+
+junk-label =
+ .label = Khi tôi đánh dấu thư là thư rác:
+ .accesskey = W
+
+junk-move-label =
+ .label = Di chuyển chúng vào thư mục "Thư rác" của tài khoản
+ .accesskey = o
+
+junk-delete-label =
+ .label = Xóa chúng
+ .accesskey = D
+
+junk-read-label =
+ .label = Đánh dấu thư được xác định là thư rác khi đọc
+ .accesskey = M
+
+junk-log-label =
+ .label = Cho phép ghi nhật ký bộ lọc thư rác thích ứng
+ .accesskey = E
+
+junk-log-button =
+ .label = Hiển thị nhật ký
+ .accesskey = S
+
+reset-junk-button =
+ .label = Đặt lại dữ liệu đào tạo
+ .accesskey = R
+
+phishing-description = { -brand-short-name } có thể phân tích tin nhắn cho các vụ lừa đảo email đáng ngờ bằng cách tìm kiếm các kỹ thuật phổ biến được sử dụng để đánh lừa bạn.
+
+phishing-label =
+ .label = Hãy cho tôi biết nếu thư tôi đang đọc là một email lừa đảo đáng ngờ
+ .accesskey = T
+
+antivirus-description = { -brand-short-name } có thể giúp phần mềm chống vi-rút dễ dàng phân tích thư đến của vi-rút trước khi chúng được lưu trữ cục bộ.
+
+antivirus-label =
+ .label = Cho phép máy khách chống vi-rút cách ly các thư đến riêng lẻ
+ .accesskey = A
+
+certificate-description = Khi một máy chủ yêu cầu chứng chỉ cá nhân của tôi:
+
+certificate-auto =
+ .label = Tự động chọn một cái
+ .accesskey = S
+
+certificate-ask =
+ .label = Hỏi tôi mọi lúc
+ .accesskey = A
+
+ocsp-label =
+ .label = Truy vấn máy chủ đáp ứng giao thức OCSP để xác minh hiệu lực của các chứng chỉ
+ .accesskey = Q
+
+certificate-button =
+ .label = Quản lý chứng chỉ…
+ .accesskey = M
+
+security-devices-button =
+ .label = Thiết bị bảo mật…
+ .accesskey = D
+
+## Chat Tab
+
+startup-label =
+ .value = Khi { -brand-short-name } khởi động:
+ .accesskey = s
+
+offline-label =
+ .label = Giữ tài khoản trò chuyện của tôi ngoại tuyến
+
+auto-connect-label =
+ .label = Tự động kết nối tài khoản trò chuyện của tôi
+
+## 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 = Hãy để những người liên hệ của tôi biết rằng tôi đang nhàn rỗi sau
+ .accesskey = I
+
+idle-time-label = phút không hoạt động
+
+##
+
+away-message-label =
+ .label = và đặt trạng thái của tôi thành vắng với thông báo trạng thái này:
+ .accesskey = A
+
+send-typing-label =
+ .label = Gửi thông báo về việc gõ trong các cuộc hội thoại
+ .accesskey = t
+
+notification-label = Khi có tin nhắn đến:
+
+show-notification-label =
+ .label = Hiển thị thông báo:
+ .accesskey = c
+
+notification-all =
+ .label = với tên người xem và tin nhắn xem trước
+notification-name =
+ .label = chỉ với tên người gửi
+notification-empty =
+ .label = không có bất kỳ thông tin nào
+
+notification-type-label =
+ .label =
+ { PLATFORM() ->
+ [macos] Hoạt ảnh biểu tượng trên dock
+ *[other] Nhấp nháy mục trên thanh tác vụ
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] o
+ *[other] F
+ }
+
+chat-play-sound-label =
+ .label = Phát một âm thanh
+ .accesskey = d
+
+chat-play-button =
+ .label = Phát
+ .accesskey = P
+
+chat-system-sound-label =
+ .label = Âm thanh mặc định của hệ thống khi có thư mới
+ .accesskey = D
+
+chat-custom-sound-label =
+ .label = Sử dụng tập tin âm thanh sau
+ .accesskey = U
+
+chat-browse-sound-button =
+ .label = Duyệt…
+ .accesskey = B
+
+theme-label =
+ .value = Chủ đề:
+ .accesskey = T
+
+style-mail =
+ .label = { -brand-short-name }
+style-bubbles =
+ .label = Bong bóng
+style-dark =
+ .label = Tối
+style-paper =
+ .label = Những trang giấy
+style-simple =
+ .label = Đơn giản
+
+preview-label = Xem trước:
+no-preview-label = Không có bản xem trước
+no-preview-description = Chủ đề này không hợp lệ hoặc hiện không khả dụng (tiện ích bị tắt, chế độ an toàn, …).
+
+chat-variant-label =
+ .value = Biến thể:
+ .accesskey = V
+
+# 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 = Tìm trong Cài đặt
+
+## Settings UI Search Results
+
+search-results-header = Kết quả tìm kiếm
+
+# `<span data-l10n-name="query"></span>` will be replaced by the search term.
+search-results-empty-message2 =
+ { PLATFORM() ->
+ [windows] Xin lỗi! Không có kết quả nào trong Tùy chọn cho “<span data-l10n-name="query"></span>”.
+ *[other] Xin lỗi! Không có kết quả nào trong Cài đặt cho “<span data-l10n-name="query"></span>”.
+ }
+
+search-results-help-link = Cần trợ giúp? Đi đến <a data-l10n-name="url">Hỗ trợ { -brand-short-name }</a>
diff --git a/l10n-vi/mail/messenger/preferences/receipts.ftl b/l10n-vi/mail/messenger/preferences/receipts.ftl
new file mode 100644
index 0000000000..199e984490
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/receipts.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/.
+
+receipts-dialog-window =
+ .title = Xác nhận đã nhận thư
+
+return-receipt-checkbox-control =
+ .label = Khi gửi thư, luôn luôn yêu cầu xác nhận đã nhận thư
+ .accesskey = W
+
+receipt-arrive-label = Khi một chứng nhận đến:
+
+receipt-leave-radio-control =
+ .label = Để nó trong hộp thư đến của tôi
+ .accesskey = i
+
+receipt-move-radio-control =
+ .label = Chuyển nó vào thư mục “Đã gửi” của tôi
+ .accesskey = m
+
+receipt-request-label = Khi tôi nhận được một yêu cầu xác nhận đã nhận thư:
+
+receipt-return-never-radio-control =
+ .label = Không bao giờ gửi xác nhận đã nhận thư
+ .accesskey = n
+
+receipt-return-some-radio-control =
+ .label = Cho phép xác nhận đã nhận thư cho một số thư
+ .accesskey = r
+
+receipt-not-to-cc-label =
+ .value = Nếu tôi không ở mục Tới hoặc Cc của thư:
+ .accesskey = f
+
+receipt-send-never-label =
+ .label = Không bao giờ gửi
+
+receipt-send-always-label =
+ .label = Luôn luôn gửi
+
+receipt-send-ask-label =
+ .label = Hỏi tôi
+
+sender-outside-domain-label =
+ .value = Nếu người gửi nằm ngoài tên miền của tôi:
+ .accesskey = t
+
+other-cases-text-label =
+ .value = Trong mọi trường hợp khác:
+ .accesskey = a
diff --git a/l10n-vi/mail/messenger/preferences/system-integration.ftl b/l10n-vi/mail/messenger/preferences/system-integration.ftl
new file mode 100644
index 0000000000..13ef119559
--- /dev/null
+++ b/l10n-vi/mail/messenger/preferences/system-integration.ftl
@@ -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/.
+
+system-integration-title =
+ .title = Tích hợp Hệ thống
+
+system-integration-dialog =
+ .buttonlabelaccept = Đặt làm mặc định
+ .buttonlabelcancel = Bỏ qua tích hợp
+ .buttonlabelcancel2 = Hủy bỏ
+
+default-client-intro = Dùng { -brand-short-name } làm chương trình mặc định cho:
+
+unset-default-tooltip = Không thể bỏ đặt { -brand-short-name } là ứng dụng khách mặc định trong { -brand-short-name }. Để đặt ứng dụng khác thành mặc định, bạn phải sử dụng hộp thoại 'Đặt làm mặc định'.
+
+checkbox-email-label =
+ .label = Thư điện tử (E-Mail)
+ .tooltiptext = { unset-default-tooltip }
+checkbox-newsgroups-label =
+ .label = Nhóm tin
+ .tooltiptext = { unset-default-tooltip }
+checkbox-feeds-label =
+ .label = Nguồn cấp
+ .tooltiptext = { unset-default-tooltip }
+
+checkbox-calendar-label =
+ .label = Lịch
+ .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] Tìm kiếm Windows
+ *[other] { "" }
+ }
+
+system-search-integration-label =
+ .label = Cho phép { system-search-engine-name } tìm kiếm thư
+ .accesskey = t
+
+check-on-startup-label =
+ .label = Luôn thực hiện việc kiểm tra này mỗi khi khởi động { -brand-short-name }
+ .accesskey = L
diff --git a/l10n-vi/mail/messenger/shortcuts.ftl b/l10n-vi/mail/messenger/shortcuts.ftl
new file mode 100644
index 0000000000..672a161a05
--- /dev/null
+++ b/l10n-vi/mail/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/l10n-vi/mail/messenger/troubleshootMode.ftl b/l10n-vi/mail/messenger/troubleshootMode.ftl
new file mode 100644
index 0000000000..c4c1644349
--- /dev/null
+++ b/l10n-vi/mail/messenger/troubleshootMode.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/.
+
+troubleshoot-mode-window =
+ .title = Chế độ xử lý sự cố của { -brand-short-name }
+ .style = width: 37em;
+
+troubleshoot-mode-description = Sử dụng chế độ xử lý sự cố { -brand-short-name } để chẩn đoán sự cố. Các tiện ích mở rộng và tùy chỉnh của bạn sẽ tạm thời bị vô hiệu hóa.
+
+troubleshoot-mode-description2 = Bạn có thể chuyển một số hoặc tất cả các thiết lập sau đây thành những thay đổi vĩnh viễn:
+
+troubleshoot-mode-disable-addons =
+ .label = Vô hiệu hóa tất cả tiện ích
+ .accesskey = D
+
+troubleshoot-mode-reset-toolbars =
+ .label = Đặt lại các thanh công cụ và điều khiển về mặc định
+ .accesskey = R
+
+troubleshoot-mode-change-and-restart =
+ .label = Lưu thay đổi và khởi động lại
+ .accesskey = M
+
+troubleshoot-mode-continue =
+ .label = Tiếp tục ở chế độ xử lý sự cố
+ .accesskey = C
+
+troubleshoot-mode-quit =
+ .label =
+ { PLATFORM() ->
+ [windows] Thoát
+ *[other] Thoát
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] x
+ *[other] Q
+ }
diff --git a/l10n-vi/mail/messenger/viewSource.ftl b/l10n-vi/mail/messenger/viewSource.ftl
new file mode 100644
index 0000000000..2e993c2ceb
--- /dev/null
+++ b/l10n-vi/mail/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 = Tìm
+ .accesskey = F
+
+context-text-action-find-again =
+ .label = Tìm lại
+ .accesskey = g
+
+text-action-find =
+ .label = Tìm
+ .accesskey = F
+
+text-action-find-again =
+ .label = Tìm lại
+ .accesskey = g
diff --git a/l10n-vi/mail/updater/updater.ini b/l10n-vi/mail/updater/updater.ini
new file mode 100644
index 0000000000..f7852a6fbc
--- /dev/null
+++ b/l10n-vi/mail/updater/updater.ini
@@ -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/.
+
+; This file is in the UTF-8 encoding
+[Strings]
+TitleText=Cập nhật %MOZ_APP_DISPLAYNAME%
+InfoText=%MOZ_APP_DISPLAYNAME% đang cài đặt cập nhật và sẽ khởi động trong chốc lát…
+