summaryrefslogtreecommitdiffstats
path: root/thunderbird-l10n/ms/chrome/ms/locale/ms/chat
diff options
context:
space:
mode:
Diffstat (limited to 'thunderbird-l10n/ms/chrome/ms/locale/ms/chat')
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/accounts.dtd41
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/accounts.properties9
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/commands.properties27
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/contacts.properties8
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/conversations.properties80
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/facebook.properties6
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/imtooltip.properties10
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/irc.properties209
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/logger.properties7
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/matrix.properties250
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/status.properties23
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/twitter.properties122
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/xmpp.properties280
-rw-r--r--thunderbird-l10n/ms/chrome/ms/locale/ms/chat/yahoo.properties5
14 files changed, 1077 insertions, 0 deletions
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/accounts.dtd b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/accounts.dtd
new file mode 100644
index 0000000000..70a9100193
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/accounts.dtd
@@ -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/. -->
+
+<!-- Account manager window for Instantbird -->
+<!ENTITY accounts.title "Akaun - &brandShortName;">
+<!ENTITY accountManager.width "450">
+<!-- Instant messaging account status window for Thunderbird -->
+<!ENTITY accountsWindow.title "Status pesanan segera">
+<!ENTITY accountsWindow2.style "width: 41em; height: 27em;">
+
+<!ENTITY accountManager.newAccount.label "Akaun Baru">
+<!ENTITY accountManager.newAccount.accesskey "B">
+<!ENTITY accountManager.close.label "Tutup">
+<!ENTITY accountManager.close.accesskey "p">
+<!-- This should match account.commandkey in instantbird.dtd -->
+<!ENTITY accountManager.close.commandkey "a">
+<!-- This title must be short, displayed with a big font size -->
+<!ENTITY accountManager.noAccount.title "Akaun tidak dikonfigurasikan lagi">
+<!ENTITY accountManager.noAccount.description "Klik butang &accountManager.newAccount.label; untuk membolehkan &brandShortName; membimbing anda melaksanakan proses mengkonfigurasi.">
+<!ENTITY account.autoSignOn.label "Daftar masuk semasa permulaan">
+<!ENTITY account.autoSignOn.accesskey "D">
+<!ENTITY account.connect.label "Sambung">
+<!ENTITY account.connect.accesskey "b">
+<!ENTITY account.disconnect.label "Memutuskan">
+<!ENTITY account.disconnect.accesskey "t">
+<!ENTITY account.delete.label "Buang">
+<!ENTITY account.delete.accesskey "B">
+<!ENTITY account.edit.label "Sifat">
+<!ENTITY account.edit.accesskey "S">
+<!ENTITY account.moveup.label "Pindah atas">
+<!ENTITY account.movedown.label "Pindah bawah">
+<!ENTITY account.cancelReconnection.label "Batal sambungan semula">
+<!ENTITY account.cancelReconnection.accesskey "B">
+<!ENTITY account.copyDebugLog.label "Salin Log Nyahpepijat">
+<!ENTITY account.copyDebugLog.accesskey "S">
+<!ENTITY account.showDebugLog.label "Papar Log Nyahpepijat">
+<!ENTITY account.showDebugLog.accesskey "P">
+<!ENTITY account.connecting "Sedang menyambung…">
+<!ENTITY account.disconnecting "Memutuskan…">
+<!ENTITY account.disconnected "Tidak Bersambung">
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/accounts.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/accounts.properties
new file mode 100644
index 0000000000..001bcc56a4
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/accounts.properties
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (passwordPromptTitle, passwordPromptText):
+# %S is replaced with the name of the account
+passwordPromptTitle=Kata laluan untuk %S
+passwordPromptText=Sila masukkan kata laluan %S supaya anda boleh menyambungkannya.
+passwordPromptSaveCheckbox=Guna Pengurus Kata laluan untuk mengingati kata laluan ini.
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/commands.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/commands.properties
new file mode 100644
index 0000000000..2c2f285317
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/commands.properties
@@ -0,0 +1,27 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (commands):
+# %S is a comma separated list of command names.
+commands=Arahan: %S.\nGuna /help &lt;arahan&gt; untuk maklumat lanjut.
+# LOCALIZATION NOTE (noCommand, noHelp):
+# %S is the command name the user typed.
+noCommand=Tiada arahan '%S'.
+noHelp=Tiada mesej bantuan untuk arahan '%S', maaf!
+
+sayHelpString=say &lt;mesej&gt;: hantar mesej tanpa memproses arahan.
+rawHelpString=raw &lt;mesej&gt;: hantar mesej tanpa mengabaikan entiti HTML.
+helpHelpString=help&lt;nama&gt; papar mesej bantuan untuk arahan &lt;nama&gt;, atau senarai arahan jika digunakan tanpa parameter.
+
+# LOCALIZATION NOTE (statusCommand):
+# %1$S is replaced with a status command name
+# (one of "back", "away", "busy", "dnd", or "offline").
+# %2$S is replaced with the localized version of that status type
+# (one of the 5 strings below).
+statusCommand=%1$S &lt;mesej status&gt;: tetapkan status ke %2$S dengan mesej status pilihan.
+back=ada
+away=tiada
+busy=tiada
+dnd=tiada
+offline=luar talian
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/contacts.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/contacts.properties
new file mode 100644
index 0000000000..7b2ca7d67c
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/contacts.properties
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (defaultGroup):
+# This is the name of the group that will automatically be created when adding a
+# buddy without specifying a group.
+defaultGroup=Kenalan
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/conversations.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/conversations.properties
new file mode 100644
index 0000000000..6cc020e858
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/conversations.properties
@@ -0,0 +1,80 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (targetChanged):
+# %1$S is the new conversation title (display name of the new target),
+# %2$S is the protocol name used for the new target.
+targetChanged=Perbualan akan diteruskan dengan %1$S, menggunakan %2$S.
+
+# LOCALIZATION NOTE (statusChanged):
+# %1$S is the display name of the contact.
+# %2$S is the new status type (a value from status.properties).
+statusChanged=Status %1$S kini menjadi %2$S.
+# LOCALIZATION NOTE (statusChangedWithStatusText):
+# %1$S is the display name of the contact.
+# %2$S is the new status type (a value from status.properties).
+# %3$S is the status text (eg. "I'm currently away from the computer").
+statusChangedWithStatusText=Status %1$S kini menjadi %2$S: %3$S.
+# LOCALIZATION NOTE (statusChangedFromUnknown[WithStatusText]):
+# special case of the previous 2 strings for when the status was
+# previously unknown. These 2 strings should not mislead the user
+# into thinking the person's status has just changed.
+statusChangedFromUnknown=Status %1$S adalah %2$S.
+statusChangedFromUnknownWithStatusText=Status %1$S adalah %2$S: %3$S.
+# LOCALIZATION NOTE (statusKnown[WithStatusText]):
+# special case of the previous 2 strings for when an account has just
+# been reconnected, so the status is now known. These 2 strings should not
+# mislead the user into thinking the person's status has just changed.
+statusKnown=Akaun anda telah disambungkan semula (status %1$S adalah %2$S).
+statusKnownWithStatusText=Akaun anda telah disambungkan semula (status %1$S adalah %2$S: %3$S).
+# LOCALIZATION NOTE (statusUnknown):
+# %S is the display name of the contact.
+statusUnknown=Akaun anda telah diputuskan sambungan (status %S tidak lagi diketahui).
+
+accountDisconnected=Akaun anda telah diputuskan sambungan.
+accountReconnected=Akaun anda telah disambungkan semula.
+
+# LOCALIZATION NOTE (autoReply):
+# %S is replaced by the text of a message that was sent as an automatic reply.
+autoReply=Auto-balas - %S
+
+# LOCALIZATION NOTE (noTopic):
+# Displayed instead of the topic when no topic is set.
+noTopic=Tiada mesej topik untuk bilik ini.
+
+# LOCALIZATION NOTE (topicSet):
+# %1$S is the conversation name, %2$S is the topic.
+topicSet=Topik untuk %1$S ialah: %2$S.
+# LOCALIZATION NOTE (topicNotSet):
+# %S is the conversation name.
+topicNotSet=Tiada topik untuk %S.
+# LOCALIZATION NOTE (topicChanged):
+# %1$S is the user who changed the topic, %2$S is the new topic.
+topicChanged=%1$S telah menukar topik menjadi : %2$S.
+# LOCALIZATION NOTE (topicCleared):
+# %1$S is the user who cleared the topic.
+topicCleared=%1$S telah membuang topik ini.
+
+# LOCALIZATION NOTE (nickSet):
+# This is displayed as a system message when a participant changes his/her
+# nickname in a conversation.
+# %1$S is the old nick.
+# %2$S is the new nick.
+nickSet=%1$S kini dikenali sebagai %2$S.
+# LOCALIZATION NOTE (nickSet.you):
+# This is displayed as a system message when your nickname is changed.
+# %S is your new nick.
+nickSet.you=Anda kini dikenali sebagai %S.
+
+# LOCALIZATION NOTE (messenger.conversations.selections.ellipsis):
+# ellipsis is used when copying a part of a message to show that the message was cut
+messenger.conversations.selections.ellipsis=[…]
+
+# LOCALIZATION NOTE (messenger.conversations.selections.{system,content,action}MessagesTemplate):
+# These 3 templates are used to format selected messages before copying them.
+# Do not translate the texts between % characters, but feel free to adjust
+# whitespace and separators to make them fit your locale.
+messenger.conversations.selections.systemMessagesTemplate=%time% - %message%
+messenger.conversations.selections.contentMessagesTemplate=%time% - %sender%: %message%
+messenger.conversations.selections.actionMessagesTemplate=%time% * %sender% %message%
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/facebook.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/facebook.properties
new file mode 100644
index 0000000000..db9305fa30
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/facebook.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+facebook.chat.name=Sembang Facebook
+facebook.disabled=Sembang Facebook tidak lagi disokong kerana Facebook menyahdayakan get laluan XMPP mereka.
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/imtooltip.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/imtooltip.properties
new file mode 100644
index 0000000000..adb50cd41a
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/imtooltip.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/.
+
+buddy.username=Nama pengguna
+buddy.account=Akaun
+contact.tags=Tag
+
+encryption.tag=Encryption Status
+message.status=Message encrypted
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/irc.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/irc.properties
new file mode 100644
index 0000000000..25b60aad0a
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/irc.properties
@@ -0,0 +1,209 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (irc.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring an IRC account.
+irc.usernameHint=gelaran
+
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if the account is
+# disconnected because of an error.
+connection.error.lost=Hilang sambungan dengan pelayan
+connection.error.timeOut=Sambungan tamat masa
+connection.error.invalidUsername=%S tidak boleh digunakan sebagai nama pengguna
+connection.error.invalidPassword=Kata laluan pelayan tidak sah
+connection.error.passwordRequired=Kata laluan diperlukan
+
+# LOCALIZATION NOTE (joinChat.*):
+# These show up on the join chat menu. An underscore is for the access key.
+joinChat.channel=_Saluran
+joinChat.password=_Kata laluan
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.server=Pelayan
+options.port=Port
+options.ssl=Guna SSL
+options.encoding=Set Aksara
+options.quitMessage=Mesej keluar
+options.partMessage=Mesej bahagian
+options.showServerTab=Papar mesej daripada pelayan
+options.alternateNicks=Nama gelaran alternatif
+
+# LOCALIZATION NOTE (ctcp.version):
+# %1$S is the nickname of the user whose version was requested.
+# %2$S is the version response from the client.
+ctcp.version=%1$S menggunakan "%2$S".
+# LOCALIZATION NOTE (ctcp.time):
+# %1$S is the nickname of the user whose time was requested.
+# %2$S is the time response.
+ctcp.time=Masa di tempat %1$S ialah %2$S.
+
+# LOCALZIATION NOTE (command.*):
+# These are the help messages for each command, the %S is the command name
+# Each command first gives the parameter it accepts and then a description of
+# the command.
+command.action=%S &lt;action to perform&gt;: Melaksanakan tindakan.
+command.ban=%S &lt;nick!user@host&gt;: Sekat pengguna yang sepadan dengan corak yang diberikan.
+command.ctcp=%S &lt;nick&gt; &lt;msg&gt;: Hantar mesej CTCP kepada gelaran.
+command.chanserv=%S &lt;command&gt;: Hantar arahan kepada ChanServ.
+command.deop=%S &lt;nick1&gt;[,&lt;nick2&gt;]*: Menghapuskan status operator saluran daripada seseorang. Anda hendaklah seorang operator untuk melakukan ini.
+command.devoice=%S &lt;nick1&gt;[,&lt;nick2&gt;]*: Menghapuskan status suara saluran daripada seseorang, yang menghalang mereka bercakap jika saluran ini dipengerusikan (+m). Anda hendaklah operator saluran untuk melakukan ini.
+command.invite2=%S &lt;nick&gt;[ &lt;nick&gt;]* [&lt;channel&gt;]: Jemput seorang atau lebih ramai pengguna menyertai anda dalam saluran semasa, atau menyertai saluran tertentu.
+command.join=%S &lt;room1&gt;[ &lt;key1&gt;][,&lt;room2&gt;[ &lt;key2&gt;]]*: Sertai satu atau lebih saluran, pilihan untuk menyediakan kunci setiap saluran, jika perlu.
+command.kick=%S &lt;nick&gt; [&lt;message&gt;]: Singkir seseorang daripada saluran. Anda hendaklah operator saluran untuk melakukan ini.
+command.list=%S: Memaparkan senarai bilik sembang di dalam rangkaian. Amaran, beberapa pelayan mungkin memutuskan sambungan anda semasa melakukan perkara ini.
+command.memoserv=%S &lt;command&gt;: Hantar arahan kepada MemoServ.
+command.modeUser2=%S &lt;nick&gt; [(+|-)&lt;mode&gt;]: Dapatkan, tetapkan atau buang tetapan mod pengguna.
+command.modeChannel2=%S [&lt;channel&gt;] [(+|-)&lt;new mode&gt; [&lt;parameter&gt;][,&lt;parameter&gt;]*]: Dapatkan, tetapkan atau buang tetapan mod saluran.
+command.msg=%S &lt;nick&gt; &lt;message&gt;: Hantar mesej peribadi kepada pengguna (bukannya dalam saluran).
+command.nick=%S &lt;new nickname&gt;: Tukar nama gelaran anda.
+command.nickserv=%S &lt;command&gt;: Hantar arahan kepada NickServ.
+command.notice=%S &lt;target&gt; &lt;message&gt;: Hantar notis kepada pengguna atau saluran.
+command.op=%S &lt;nick1&gt;[,&lt;nick2&gt;]*: Maklumkan status operator saluran kepada seseorang. Anda hendaklah operator saluran untuk melakukan ini.
+command.operserv=%S &lt;command&gt;: Hantar arahan kepada OperServ.
+command.part=%S [message]: Tinggalkan mesej saluran semasa dengan mesej pilihan.
+command.ping=%S [&lt;nick&gt;]: Tanyakan sela waktu yang dialami pengguna (atau pelayan jika tiada pengguna yang ditentukan).
+command.quit=%S &lt;message&gt;: Putuskan sambungan daripada pelayan dengan mesej pilihan.
+command.quote=%S &lt;command&gt;: Hantar arahan mentah kepada pelayan.
+command.time=%S: Memaparkan masa tempatan semasa pada pelayan IRC.
+command.topic=%S [&lt;new topic&gt;]: Tetapkan topik saluran ini.
+command.umode=%S (+|-)&lt;new mode&gt;: Tetapkan atau buang tetapan mod pengguna.
+command.version=%S &lt;nick&gt;: Tanyakan versi klien pengguna.
+command.voice=%S &lt;nick1&gt;[,&lt;nick2&gt;]*: Maklumkan status suara saluran kepada seseorang. Anda hendaklah operator saluran untuk melakukan ini.
+command.whois2=%S [&lt;nick&gt;]: Dapatkan maklumat pengguna.
+
+# LOCALIZATION NOTE (message.*):
+# These are shown as system messages in the conversation.
+# %1$S is the nick and %2$S is the nick and host of the user who joined.
+message.join=%1$S [%2$S] memasuki bilik.
+message.rejoined=Anda telah kembali ke dalam bilik.
+# %1$S is the nick of who kicked you.
+# %2$S is message.kicked.reason, if a kick message was given.
+message.kicked.you=Anda telah disingkirkan oleh %1$S%2$S.
+# %1$S is the nick that is kicked, %2$S the nick of the person who kicked
+# %1$S. %3$S is message.kicked.reason, if a kick message was given.
+message.kicked=%1$S telah disingkirkan oleh %2$S%3$S.
+# %S is the kick message
+message.kicked.reason=: %S
+# %1$S is the new mode, %2$S is the nickname of the user whose mode
+# was changed, and %3$S is who set the mode.
+message.usermode=Mod %1$S untuk %2$S ditetapkan oleh %3$S.
+# %1$S is the new channel mode and %2$S is who set the mode.
+message.channelmode=Mod saluran %1$S ditetapkan oleh %2$S.
+# %S is the user's mode.
+message.yourmode=Mod anda adalah %S.
+# Could not change the nickname. %S is the user's nick.
+message.nick.fail=Tidak boleh menggunakan nama gelaran yang dikehendaki. Nama gelaran anda masih %S.
+# The parameter is the message.parted.reason, if a part message is given.
+message.parted.you=Anda telah meninggalkan bilik (Bahagian%1$S).
+# %1$S is the user's nick, %2$S is message.parted.reason, if a part message is given.
+message.parted=%1$S telah meninggalkan bilik (Bahagian %2$S).
+# %S is the part message supplied by the user.
+message.parted.reason=: %S
+# %1$S is the user's nick, %2$S is message.quit2 if a quit message is given.
+message.quit=%1$S telah meninggalkan bilik (Keluar %2$S).
+# The parameter is the quit message given by the user.
+message.quit2=: %S
+# %1$S is the nickname of the user that invited us, %2$S is the conversation
+# name.
+message.inviteReceived=%1$S telah menjemput anda ke %2$S.
+# %1$S is the nickname of the invited user, %2$S is the conversation name
+# they were invited to.
+message.invited=%1$S telah berjaya dijemput ke %2$S.
+# %1$S is the nickname of the invited user, %2$S is the conversation name
+# they were invited to but are already in
+message.alreadyInChannel=%1$S sudah berada dalam %2$S.
+# %S is the nickname of the user who was summoned.
+message.summoned=%S telah dipanggil.
+# %S is the nickname of the user whose WHOIS information follows this message.
+message.whois=Maklumat WHOIS untuk %S:
+# %1$S is the nickname of the (offline) user whose WHOWAS information follows this message.
+message.whowas=%1$S berada di luar talian. Maklumat WHOWAS untuk %1$S:
+# %1$S is the entry description (from tooltip.*), %2$S is its value.
+message.whoisEntry=\ua0\ua0\ua0\ua0%1$S: %2$S
+# %S is the nickname that is not known to the server.
+message.unknownNick=%S adalah nama gelaran yang tidak diketahui.
+# %1$S is the nickname of the user who changed the mode and %2$S is the new
+# channel key (password).
+message.channelKeyAdded=%1$S menukar kata laluan saluran kepada %2$S.
+message.channelKeyRemoved=%S telah menghapuskan kata laluan saluran.
+# This will be followed by a list of ban masks.
+message.banMasks=Pengguna yang disambungkan dari lokasi berikut telah dilarang daripada %S:
+message.noBanMasks=Tiada lokasi yang dilarang untuk %S.
+message.banMaskAdded=Pengguna yang disambungkan dari lokasi yang sepadan dengan %1$S telah dilarang oleh %2$S.
+message.banMaskRemoved=Pengguna yang disambungkan dari lokasi yang sepadan dengan %1$S tidak lagi dilarang oleh %2$S.
+# LOCALIZATION NOTE (message.ping): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# %1$S is the nickname of the user or the server that was pinged.
+# #2 is the delay (in milliseconds).
+message.ping=Balasan ping daripada %1$S dalam #2 mili-saat.
+
+
+# LOCALIZATION NOTE (error.*):
+# These are shown as error messages in the conversation or server tab.
+# %S is the channel name.
+error.noChannel=Tiada saluran: %S.
+error.tooManyChannels=Tidak boleh menyertai %S; anda telah menyertai terlalu banyak saluran.
+# %1$S is your new nick, %2$S is the kill message from the server.
+error.nickCollision=Nama gelaran sudah digunakan, tukar nama gelaran kepada %1$S [%2$S].
+error.erroneousNickname=%S adalah nama gelaran yang tidak diizinkan.
+error.banned=Anda telah dilarang daripada pelayan ini.
+error.bannedSoon=Anda akan tidak lama lagi dilarang daripada pelayan ini.
+error.mode.wrongUser=Anda tidak boleh menukar mod pengguna lain.
+# %S is the nickname or channel name that isn't available.
+error.noSuchNick=%S tidak atas talian.
+error.wasNoSuchNick=Tiada nama gelaran: %S
+error.noSuchChannel=Tiada saluran: %S.
+error.unavailable=%S tidak tersedia buat seketika.
+# %S is the channel name.
+error.channelBanned=Anda telah disekat daripada %S.
+error.cannotSendToChannel=Anda tidak boleh menghantar mesej kepada %S.
+error.channelFull=Saluran %S sudah penuh.
+error.inviteOnly=Anda mesti dijemput untuk menyertai %S.
+error.nonUniqueTarget=%S bukan user@host atau nama singkatan unik, atau anda cuba menyertai terlalu banyak saluran sekali gus.
+error.notChannelOp=Anda bukan operator saluran %S.
+error.notChannelOwner=Anda bukan pemilik saluran %S.
+error.wrongKey=Tidak dapat menyertai %S, kata laluan saluran tidak sah.
+error.sendMessageFailed=Ada ralat semasa menghantar mesej anda yang terakhir. Sila cuba lagi sebaik sahaja ada sambungan.
+# %1$S is the channel the user tried to join, %2$S is the channel
+# he was forwarded to.
+error.channelForward=Anda tidak boleh sertai %1$S, dan secara automatik dilencongkan ke %2$S.
+# %S is the mode that the user tried to set but was not recognized
+# by the server as a valid mode.
+error.unknownMode='%S' bukan mod pengguna yang sah dalam pelayan ini.
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the descriptions given in a tooltip with information received
+# from a whois response.
+# The human readable ("realname") description of the user.
+tooltip.realname=Nama
+tooltip.server=Disambungkan ke
+# The username and hostname that the user connects from (usually based on the
+# reverse DNS of the user's IP, but often mangled by the server to
+# protect users).
+tooltip.connectedFrom=Disambungkan daripada
+tooltip.registered=Berdaftar
+tooltip.registeredAs=Berdaftar sebagai
+tooltip.secure=Menggunakan sambungan selamat
+# The away message of the user
+tooltip.away=Tiada
+tooltip.ircOp=Operator IRC
+tooltip.bot=Bot
+tooltip.lastActivity=Aktiviti terakhir
+# %S is the timespan elapsed since the last activity.
+tooltip.timespan=%S yang lepas
+tooltip.channels=Sekarang dalam
+
+# %1$S is the server name, %2$S is some generic server information (usually a
+# location or the date the user was last seen).
+tooltip.serverValue=%1$S (%2$S)
+
+# LOCALIZATION NOTE (yes, no):
+# These are used to turn true/false values into a yes/no response.
+yes=Ya
+no=Tidak
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/logger.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/logger.properties
new file mode 100644
index 0000000000..61dd177f4a
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/logger.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (badLogfile):
+# %S is the filename of the log file.
+badLogfile=Fail log kosong atau rosak: %S
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/matrix.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/matrix.properties
new file mode 100644
index 0000000000..90cb8ffcee
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/matrix.properties
@@ -0,0 +1,250 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.connectServer=Pelayan
+options.connectPort=Port
+
+# LOCALIZATION NOTE (chatRoomField.*):
+# These are the name of fields displayed in the 'Join Chat' dialog
+# for Matrix accounts.
+# The _ character won't be displayed; it indicates the next
+# character of the string should be used as the access key for this
+# field.
+chatRoomField.room=_Bilik
+
+# LOCALIZATION NOTE (matrix.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Matrix account.
+matrix.usernameHint=Matrix ID
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.saveToken=Store access token
+options.deviceDisplayName=Device display name
+options.homeserver=Server
+options.backupPassphrase=Key Backup Passphrase
+# LOCALIZATION NOTE (options.encryption.*):
+# These are strings used to build the status information of the encryption
+# storage, shown in the account manager. %S is one of the statuses and the
+# strings are combined with a pipe (|) between.
+options.encryption.enabled=Cryptographic Functions: %S
+options.encryption.secretStorage=Secret Storage: %S
+options.encryption.keyBackup=Encryption Key Backup: %S
+options.encryption.crossSigning=Cross Signing: %S
+options.encryption.statusOk=ok
+options.encryption.statusNotOk=not ready
+options.encryption.needBackupPassphrase=Please enter your backup key passphrase in the protocol options.
+options.encryption.setUpSecretStorage=To set up secret storage, please use another client and afterwards enter the generated backup key passphrase in the "General" tab.
+options.encryption.setUpBackupAndCrossSigning=To activate encryption key backups and cross signing, enter your backup key passphrase in the "General" tab or verify the identity of one of the sessions below.
+# %1$S is the session ID, %2$S is the session display name
+options.encryption.session=%1$S (%2$S)
+# LOCALIZATION NOTE (connection.*):
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds … at the end, so do not include
+# periods at the end of these messages.)
+connection.requestAuth=Waiting for your authorization
+connection.requestAccess=Finalizing authentication
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.noSupportedFlow=Server offers no compatible login flow.
+connection.error.authCancelled=You cancelled the authorization process.
+connection.error.sessionEnded=Session was logged out.
+connection.error.serverNotFound=Could not identify the Matrix server for the given Matrix account.
+# LOCALIZATION NOTE (tooltip.*):
+# These are the descriptions given in a tooltip with information received
+# from the "User" object.
+# The human readable name of the user.
+tooltip.displayName=Display name
+# %S is the timespan elapsed since the last activity.
+tooltip.timespan=%S ago
+tooltip.lastActive=Last activity
+# LOCALIZATION NOTE (powerLevel.*):
+# These are the string representations of different standard power levels and strings.
+# %S are one of the power levels, Default/Moderator/Admin/Restricted/Custom.
+powerLevel.default=Default
+powerLevel.moderator=Moderator
+powerLevel.admin=Admin
+powerLevel.restricted=Restricted
+powerLevel.custom=Custom
+# %1$S is the power level name
+# %2$S is the power level number
+powerLevel.detailed=%1$S (%2$S)
+powerLevel.defaultRole=Default role: %S
+powerLevel.inviteUser=Invite users: %S
+powerLevel.kickUsers=Kick users: %S
+powerLevel.ban=Ban users: %S
+powerLevel.roomAvatar=Change room avatar: %S
+powerLevel.mainAddress=Change main address for the room: %S
+powerLevel.history=Change history visibility: %S
+powerLevel.roomName=Change room name: %S
+powerLevel.changePermissions=Change permissions: %S
+powerLevel.server_acl=Send m.room.server_acl events: %S
+powerLevel.upgradeRoom=Upgrade the room: %S
+powerLevel.remove=Remove messages: %S
+powerLevel.events_default=Events default: %S
+powerLevel.state_default=Change setting: %S
+powerLevel.encryption=Enable Room encryption: %S
+powerLevel.topic=Set room topic: %S
+# LOCALIZATION NOTE (detail.*):
+# These are the string representations of different matrix properties.
+# %S will typically be strings with the actual values.
+# Example placeholder: "Foo bar"
+detail.name=Name: %S
+# Example placeholder: "My first room"
+detail.topic=Topic: %S
+# Example placeholder: "5"
+detail.version=Room Version: %S
+# Example placeholder: "#thunderbird:mozilla.org"
+detail.roomId=RoomID: %S
+# %S are all admin users. Example: "@foo:example.com, @bar:example.com"
+detail.admin=Admin: %S
+# %S are all moderators. Example: "@lorem:mozilla.org, @ipsum:mozilla.org"
+detail.moderator=Moderator: %S
+# Example placeholder: "#thunderbird:matrix.org"
+detail.alias=Alias: %S
+# Example placeholder: "can_join"
+detail.guest=Guest Access: %S
+# This is a heading, followed by the powerLevel.* strings
+detail.power=Power Levels:
+# LOCALIZATION NOTE (command.*):
+# These are the help messages for each command, the %S is the command name
+# Each command first gives the parameter it accepts and then a description of
+# the command.
+command.ban=%S &lt;userId&gt; [&lt;reason&gt;]: Ban the user with the userId from the room with optional reason message. Requires permission to ban users.
+command.invite=%S &lt;userId&gt;: Invite the user to the room.
+command.kick=%S &lt;userId&gt; [&lt;reason&gt;]: Kick the user with the userId from the room with optional reason message. Requires permission to kick users.
+command.nick=%S &lt;display_name&gt;: Change your display name.
+command.op=%S &lt;userId&gt; [&lt;power level&gt;]: Define the power level of the user. Enter an integer value, User: 0, Moderator: 50 and Admin: 100. Default will be 50 if no argument is provided. Requires permission to change member's power levels. Does not work on admins other than yourself.
+command.deop=%S &lt;userId&gt;: Reset the user to power level 0 (User). Requires permission to change member's power levels. Does not work on admins other than yourself.
+command.leave=%S: Leave the current room.
+command.topic=%S &lt;topic&gt;: Set the topic for the room. Requires permissions to change the room topic.
+command.unban=%S &lt;userId&gt;: Unban a user who is banned from the room. Requires permission to ban users.
+command.visibility=%S [&lt;visibility&gt;]: Set the visibility of the current room in the current Home Server's room directory. Enter an integer value, Private: 0 and Public: 1. Default will be Private (0) if no argument is provided. Requires permission to change room visibility.
+command.guest=%S &lt;guest access&gt; &lt;history visibility&gt;: Set the access and history visibility of the current room for the guest users. Enter two integer values, the first for the guest access (not allowed: 0 and allowed: 1) and the second for the history visibility (not visible: 0 and visible: 1). Requires permission to change history visibility.
+command.roomname=%S &lt;name&gt;: Set the name for the room. Requires permission to change the room name.
+command.detail=%S: Display the details of the room.
+command.addalias=%S &lt;alias&gt;: Create an alias for the room. Expected room alias of the form '#localname:domain'. Requires permission to add aliases.
+command.removealias=%S &lt;alias&gt;: Remove the alias for the room. Expected room alias of the form '#localname:domain'. Requires permission to remove aliases.
+command.upgraderoom=%S &lt;newVersion&gt;: Upgrade room to given version. Requires permission to upgrade the room.
+command.me=%S &lt;action&gt;: Perform an action.
+command.msg=%S &lt;userId&gt; &lt;message&gt;: Send a direct message to the given user.
+command.join=%S &lt;roomId&gt;: Join the given room.
+# LOCALIZATION NOTE (message.*):
+# These are shown as system messages in the conversation.
+# %1$S is the name of the user who banned.
+# %2$S is the name of the user who got banned.
+message.banned=%1$S banned %2$S.
+# Same as message.banned but with a reason.
+# %3$S is the reason the user was banned.
+message.bannedWithReason=%1$S banned %2$S. Reason: %3$S
+# %1$S is the name of the user who accepted the invitation.
+# %2$S is the name of the user who sent the invitation.
+message.acceptedInviteFor=%1$S accepted the invitation for %2$S.
+# %S is the name of the user who accepted an invitation.
+message.acceptedInvite=$S accepted an invitation.
+# %1$S is the name of the user who invited.
+# %2$S is the name of the user who got invited.
+message.invited=%1$S invited %2$S.
+# %1$S is the name of the user who changed their display name.
+# %2$S is the old display name.
+# %3$S is the new display name.
+message.displayName.changed=%1$S changed their display name from %2$S to %3$S.
+# %1$S is the name of the user who set their display name.
+# %2$S is the newly set display name.
+message.displayName.set=%1$S set their display name to %2$S.
+# %1$S is the name of the user who removed their display name.
+# %2$S is the old display name which has been removed.
+message.displayName.remove=%1$S removed their display name %2$S.
+# %S is the name of the user who has joined the room.
+message.joined=%S has joined the room.
+# %S is the name of the user who has rejected the invitation.
+message.rejectedInvite=%S has rejected the invitation.
+# %S is the name of the user who has left the room.
+message.left=%S has left the room.
+# %1$S is the name of the user who unbanned.
+# %2$S is the name of the user who got unbanned.
+message.unbanned=%1$S unbanned %2$S.
+# %1$S is the name of the user who kicked.
+# %2$S is the name of the user who got kicked.
+message.kicked=%1$S kicked %2$S.
+# Same as message.kicked but with a third parameter for the reason.
+# %3$S is the reason for the kick.
+message.kickedWithReason=%1$S kicked %2$S. Reason: %3$S
+# %1$S is the name of the user who withdrew invitation.
+# %2$S is the name of the user whose invitation has been withdrawn.
+message.withdrewInvite=%1$S withdrew %2$S's invitation.
+# Same as message.withdrewInvite but with a third parameter for the reason.
+# %3$S is the reason the invite was withdrawn.
+message.withdrewInviteWithReason=%1$S withdrew %2$S's invitation. Reason: %3$S
+# %S is the name of the user who has removed the room name.
+message.roomName.remove=%S removed the room name.
+# %1$S is the name of the user who changed the room name.
+# %2$S is the new room name.
+message.roomName.changed=%1$S changed the room name to %2$S.
+# %1$S is the name of the user who changed the power level.
+# %2$S is a list of "message.powerLevel.fromTo" strings representing power level changes separated by commas
+# power level changes, separated by commas if there are multiple changes.
+message.powerLevel.changed=%1$S changed the power level of %2$S.
+# %1$S is the name of the target user whose power level has been changed.
+# %2$S is the old power level.
+# %2$S is the new power level.
+message.powerLevel.fromTo=%1$S from %2$S to %3$S
+# %S is the name of the user who has allowed guests to join the room.
+message.guest.allowed=%S has allowed guests to join the room.
+# %S is the name of the user who has prevented guests to join the room.
+message.guest.prevented=%S has prevented guests from joining the room.
+# %S is the name of the user who has made future room history visible to anyone.
+message.history.anyone=%S made future room history visible to anyone.
+# %S is the name of the user who has made future room history visible to all room members.
+message.history.shared=%S made future room history visible to all room members.
+# %S is the name of the user who has made future room history visible to all room members, from the point they are invited.
+message.history.invited=%S made future room history visible to all room members, from the point they are invited.
+# %S is the name of the user who has made future room history visible to all room members, from the point they joined.
+message.history.joined=%S made future room history visible to all room members, from the point they joined.
+# %1$S is the name of the user who changed the address.
+# %2$S is the old address.
+# %3$S is the new address.
+message.alias.main=%1$S set the main address for this room from %2$S to %3$S.
+# %1$S is the name of the user who added the address.
+# %2$S is a comma delimited list of added addresses.
+message.alias.added=%1$S added %2$S as alternative address for this room.
+# %1$S is the name of the user who removed the address.
+# %2$S is a comma delimited list of removed addresses.
+message.alias.removed=%1$S removed %2$S as alternative address for this room.
+# %1$S is the name of the user that edited the alias addresses.
+# %2$S is a comma delimited list of removed addresses.
+# %3$S is a comma delmited list of added addresses.
+message.alias.removedAndAdded=%1$S removed %2$S and added %3$S as address for this room.
+message.spaceNotSupported=This room is a space, which is not supported.
+message.encryptionStart=Messages in this conversation are now end-to-end encrypted.
+# %1$S is the name of the user who sent the verification request.
+# %2$S is the name of the user that is receiving the verification request.
+message.verification.request2=%1$S wants to verify %2$S.
+# %1$S is the name of the user who cancelled the verification request.
+# %2$S is the reason given why the verification was cancelled.
+message.verification.cancel2=%1$S cancelled the verification with the reason: %2$S
+message.verification.done=Verification completed.
+message.decryptionError=Could not decrypt the contents of this message. To request encryption keys from your other devices, right click this message.
+message.decrypting=Decrypting…
+message.redacted=Message was redacted.
+# %1$S is the username of the user that reacted.
+# %2$S is the username of the user that sent the message the reaction was added to.
+# %3$S is the content (typically an emoji) of the reaction.
+message.reaction=%1$S reacted to %2$S with %3$S.
+# Label in the message context menu
+message.action.requestKey=Re-request Keys
+message.action.redact=Redact
+message.action.report=Report Message
+message.action.retry=Retry Sending
+message.action.cancel=Cancel Message
+# LOCALIZATION NOTE (error.*)
+# These are strings shown as system messages when an action the user took fails.
+error.sendMessageFailed=An error occurred while sending your message "%1$S".
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/status.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/status.properties
new file mode 100644
index 0000000000..3b325b0c0b
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/status.properties
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+availableStatusType=Ada
+awayStatusType=Tiada
+unavailableStatusType=Tiada
+offlineStatusType=Luar talian
+invisibleStatusType=Halimunan
+idleStatusType=Melahu
+mobileStatusType=Mudah alih
+# LOCALIZATION NOTE (unknownStatusType):
+# the status of a buddy is unknown when it's in the list of a disconnected account
+unknownStatusType=Tidak diketahui
+
+# LOCALIZATION NOTE (statusWithStatusMessage):
+# Used to display the status of a buddy together with its status message.
+# %1$S is the status type, %2$S is the status message text.
+statusWithStatusMessage=%1$S - %2$S
+
+# LOCALIZATION NOTE (messenger.status.defaultIdleAwayMessage):
+# This will be the away message put automatically when the user is idle.
+messenger.status.defaultIdleAwayMessage=Tiada di hadapan komputer.
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/twitter.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/twitter.properties
new file mode 100644
index 0000000000..32412da5da
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/twitter.properties
@@ -0,0 +1,122 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (twitter.protocolName)
+# This name is used whenever the name of the protocol is shown.
+twitter.protocolName=Twitter
+
+# LOCALIZATION NOTE (error.*):
+# These are errors that will be shown to the user in conversation.
+error.tooLong=Status melebihi 140 aksara.
+# LOCALIZATION NOTE (error.general, error.retweet, error.delete):
+# %1$S will be either the error string returned by the twitter server,
+# in English, inside parenthesis, or the empty string if we have no specific
+# message for the error.
+# %2$S is the message that caused the error.
+error.general=Ada ralat %1$S semasa menghantar: %2$S
+error.retweet=Ada ralat %1$S semasa menghantar semula tweet: %2$S
+error.delete=Ada ralat %1$S semasa menghapuskan: %2$S
+error.like=Ada ralat %1$S semasa menggemari: %2$S
+error.unlike=Ada ralat %1$S semasa tidak-menggemari: %2$S
+# LOCALIZATION NOTE (error.descriptionTooLong)
+# %S is the truncated string that was sent to the server.
+error.descriptionTooLong=Keterangan melebihi panjang maksimum (160 aksara), secara automatik diringkaskan: %S.
+
+# LOCALIZATION NOTE (timeline):
+# This is the title of the conversation tab, %S will be replaced by
+# @<username>.
+timeline=Garis masa %S
+
+# LOCALIZATION NOTE (action.*):
+# This will be an action in the context menu of displayed tweets.
+action.copyLink=Salin Pautan ke Tweet
+action.retweet=Tweet semula
+action.reply=Balas
+action.delete=Buang
+# LOCALIZATION NOTE (action.follow, action.stopFollowing):
+# %S will be replaced by the screen name of a twitter user.
+action.follow=Ikuti %S
+action.stopFollowing=Berhenti ikuti %S
+action.like=Gemar
+action.unlike=Buang Menggemari
+
+# LOCALIZATION NOTE (event.follow, event.unfollow, event.followed):
+# This will be displayed in system messages inside the timeline conversation.
+# %S will be replaced by the screen name of a twitter user.
+event.follow=Anda kini mengikuti %S.
+event.unfollow=Anda kini tidak lagi mengikuti %S.
+event.followed=%S kini mengikuti anda.
+# LOCALIZATION NOTE (event.deleted):
+# %S will be replaced by the text of the deleted tweet.
+event.deleted=Anda telah menghapuskan tweet ini: "%S".
+
+# LOCALIZATION NOTE (replyingToStatusText):
+# This will be visible in the status bar of the conversation window
+# while the user is typing a reply to a tweet.
+# %S will be replaced by the text of the tweet the user is replying to.
+replyingToStatusText=Membalas: %S
+
+# LOCALIZATION NOTE (connection.*):
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds … at the end, so do not include
+# periods at the end of these messages.)
+connection.initAuth=Memulakan proses pengesahan
+connection.requestAuth=Menunggu pengesahan anda
+connection.requestAccess=Memuktamadkan pengesahan
+connection.requestTimelines=Meminta garis masa pengguna
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.userMismatch=Nama pengguna tidak sepadan.
+connection.error.failedToken=Gagal mendapatkan permintaan token.
+connection.error.authCancelled=Anda membatalkan proses pengesahan.
+connection.error.authFailed=Gagal mendapatkan pengesahan.
+connection.error.noNetwork=Tiada sambungan rangkaian tersedia.
+
+# LOCALIZATION NOTE (authPrompt):
+# This is the prompt in the browser window that pops up to authorize us
+# to use a Twitter account. It is shown in the title bar of the authorization
+# window.
+authPrompt=Beri izin untuk menggunakan akaun Twitter anda
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.track=Kata kunci dikesan
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the Twitter information that will appear in the tooltip
+# for each participant on the home timeline.
+# LOCALIZATION NOTE (tooltip.created_at): the date the user joined.
+tooltip.created_at=Pengguna Sejak
+tooltip.location=Lokasi
+tooltip.lang=Bahasa
+tooltip.time_zone=Zon masa
+tooltip.url=Laman
+# LOCALIZATION NOTE (tooltip.protected):
+# whether the user's tweets are publicly visible.
+tooltip.protected=Perlindungan Tweets
+# LOCALIZATION NOTE (tooltip.following):
+# whether you are subscribed to the user's tweets.
+tooltip.following=Sedang Mengikuti
+tooltip.name=Nama
+tooltip.description=Keterangan
+# LOCALIZATION NOTE (tooltip.*_count):
+# Please see the right side of the official Twitter website UI.
+tooltip.friends_count=Mengikuti
+tooltip.statuses_count=Tweets
+tooltip.followers_count=Pengikut
+tooltip.listed_count=Disenaraikan
+
+# LOCALIZATION NOTE (yes, no):
+# These are used to turn true/false values into a yes/no response.
+yes=Ya
+no=Tidak
+
+command.follow=%S &lt;username&gt;[ &lt;username&gt;]*: Mula mengikuti pengguna.
+command.unfollow=%S &lt;username&gt;[ &lt;username&gt;]*: Berhenti mengikuti pengguna.
+
+twitter.disabled=Twitter is no longer supported due to Twitter disabling their streaming protocol.
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/xmpp.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/xmpp.properties
new file mode 100644
index 0000000000..fa27e105f8
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/xmpp.properties
@@ -0,0 +1,280 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (connection.*)
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds … at the end, so do not include
+# periods at the end of these messages.)
+connection.initializingStream=Memulakan penstriman
+connection.initializingEncryption=Memulakan enkripsi
+connection.authenticating=Mengesahkan
+connection.gettingResource=Mendapatkan sumber
+connection.downloadingRoster=Memuat turun senarai kenalan
+connection.srvLookup=Mencari rekod SRV
+
+# LOCALIZATION NOTE (connection.error.*)
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.invalidUsername=Nama pengguna tidak sah (nama pengguna perlu mengandungi satu aksara ' @')
+connection.error.failedToCreateASocket=Gagal mencipta soket (Anda di luar talian?)
+connection.error.serverClosedConnection=Pelayan menutup sambungan
+connection.error.resetByPeer=Sambungan semula oleh rakan
+connection.error.timedOut=Sambungan tamat masa
+connection.error.receivedUnexpectedData=Menerima data tidak dijangka
+connection.error.incorrectResponse=Menerima respons yang tidak betul
+connection.error.startTLSRequired=Pelayan memerlukan enkripsi tapi anda menyahdayakannya
+connection.error.startTLSNotSupported=Pelayan tidak menyokong enkripsi tapi konfigurasi anda memerlukannya
+connection.error.failedToStartTLS=Gagal memulakan enkripsi
+connection.error.noAuthMec=Tiada mekanisma pengesahan yang disediakan oleh pelayan
+connection.error.noCompatibleAuthMec=Tiada mekanisma pengesahan yang disediakan oleh pelayan ini yang disokong
+connection.error.notSendingPasswordInClear=Pelayan hanya menyokong pengesahan yang menghantar kata laluan dalam teks jelas
+connection.error.authenticationFailure=Gagal pengesahan
+connection.error.notAuthorized=Tiada autoriti (Anda masukkan kata laluan yang salah?)
+connection.error.failedToGetAResource=Gagal mendapatkan sumber
+connection.error.failedMaxResourceLimit=Akaun ini disambungkan daripada terlalu banyak tempat sekali gus.
+connection.error.failedResourceNotValid=Sumber tidak sah.
+connection.error.XMPPNotSupported=Pelayan ini tidak menyokong XMPP
+
+# LOCALIZATION NOTE (conversation.error.notDelivered):
+# This is displayed in a conversation as an error message when a message
+# the user has sent wasn't delivered.
+# %S is replaced by the text of the message that wasn't delivered.
+conversation.error.notDelivered=Mesej ini tidak dapat dihantar: %S
+# This is displayed in a conversation as an error message when joining a MUC
+# fails.
+# %S is the name of the MUC.
+conversation.error.joinFailed=Tidak dapat menyertai: %S
+# This is displayed in a conversation as an error message when the user is
+# banned from a room.
+# %S is the name of the MUC room.
+conversation.error.joinForbidden=Tidak dapat menyertai %S kerana anda disekat dalam bilik ini.
+conversation.error.joinFailedNotAuthorized=Perlu pendaftaran: anda tiada autoriti untuk menyertai bilik ini.
+conversation.error.creationFailedNotAllowed=Akses terhad: anda tidak dibenarkan mencipta bilik.
+# This is displayed in a conversation as an error message when remote server
+# is not found.
+# %S is the name of MUC room.
+conversation.error.joinFailedRemoteServerNotFound=Tidak boleh menyertai bilik %S kerana hos pelayan bilik ini tidak dapat dihubungi.
+conversation.error.changeTopicFailedNotAuthorized=Anda tiada autoriti untuk menetapkan topik dalam bilik ini.
+# This is displayed in a conversation as an error message when the user sends
+# a message to a room that he is not in.
+# %1$S is the name of MUC room.
+# %2$S is the text of the message that wasn't delivered.
+conversation.error.sendFailedAsNotInRoom=Mesej tidak dapat dihantar kepada %1$S kerana anda tidak lagi berada dalam bilik: %2$S
+# This is displayed in a conversation as an error message when the user sends
+# a message to a room that the recipient is not in.
+# %1$S is the jid of the recipient.
+# %2$S is the text of the message that wasn't delivered.
+conversation.error.sendFailedAsRecipientNotInRoom=Mesej tidak dapat dihantar kepada %1$S kerana penerrima tidak lagi berada dalam bilik: %2$S
+# These are displayed in a conversation as a system error message.
+conversation.error.remoteServerNotFound=Tidak dapat menghubungi pelayan penerima.
+conversation.error.unknownSendError=Ada ralat yang tidak diketahui semasa menghantar mesej ini.
+# %S is the name of the message recipient.
+conversation.error.sendServiceUnavailable=Tidak boleh menghantar mesej kepada %S buat masa ini.
+# %S is the nick of participant that is not in room.
+conversation.error.nickNotInRoom=%S tiada dalam bilik.
+conversation.error.banCommandAnonymousRoom=Anda tidak boleh sekat peserta dari bilik anonimus. Cuba /kick sahaja.
+conversation.error.banKickCommandNotAllowed=Anda tidak ada keistimewaan yang diperlukan untuk menyingkirkan peserta ini daripada bilik.
+conversation.error.banKickCommandConflict=Maaf, anda tidak boleh singkirkan diri sendiri daripada bilik.
+conversation.error.changeNickFailedConflict=Tidak dapat menukar gelaran anda kepada %S kerana sudah digunakan.
+conversation.error.changeNickFailedNotAcceptable=Tidak dapat menukar gelaran anda kepada %S kerana sudah dikuncikan dalam bilik ini.
+conversation.error.inviteFailedForbidden=Anda tidak ada keistimewaan yang diperlukan untuk menjemput pengguna menyertai bilik ini.
+# %S is the jid of user that is invited.
+conversation.error.failedJIDNotFound=Tidak dapat menghubungi: %S.
+# %S is the jid that is invalid.
+conversation.error.invalidJID=%S adalah jid yang tidak sah (pengenal Jabber hendaklah dalam bentuk user@domain).
+conversation.error.commandFailedNotInRoom=Anda perlu sertai semula bilik untuk boleh menggunakan arahan ini.
+# %S is the name of the recipient.
+conversation.error.resourceNotAvailable=Anda perlu hubungi dahulu kerana %S mungkin disambungkan kepada lebih daripada satu klien.
+
+# LOCALIZATION NOTE (conversation.error.version.*):
+# %S is the name of the recipient.
+conversation.error.version.unknown=Klien %S tidak menyokong pertanyaan berkaitan versi perisian.
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the titles of lines of information that will appear in
+# the tooltip showing details about a contact or conversation.
+# LOCALIZATION NOTE (tooltip.status):
+# %S will be replaced by the XMPP resource identifier
+tooltip.status=Status (%S)
+tooltip.statusNoResource=Status
+tooltip.subscription=Langganan
+tooltip.fullName=Nama Penuh
+tooltip.nickname=Nama gelaran
+tooltip.email=E-mel
+tooltip.birthday=Tarikh lahir
+tooltip.userName=Nama pengguna
+tooltip.title=Gelaran
+tooltip.organization=Organisasi
+tooltip.locality=Lokaliti
+tooltip.country=Negara
+
+# LOCALIZATION NOTE (chatRoomField.*):
+# These are the name of fields displayed in the 'Join Chat' dialog
+# for XMPP accounts.
+# The _ character won't be displayed; it indicates the next
+# character of the string should be used as the access key for this
+# field.
+chatRoomField.room=_Bilik
+chatRoomField.server=_Pelayan
+chatRoomField.nick=_Gelaran
+chatRoomField.password=_Kata laluan
+
+# LOCALIZATION NOTE (conversation.muc.*):
+# These are displayed as a system message when a chatroom invitation is
+# received.
+# %1$S is the inviter.
+# %2$S is the room.
+# %3$S is the reason which is a message provided by the person sending the
+# invitation.
+conversation.muc.invitationWithReason2=%1$S telah menjemput anda menyertai %2$S: %3$S
+# %3$S is the password of the room.
+# %4$S is the reason which is a message provided by the person sending the
+# invitation.
+conversation.muc.invitationWithReason2.password=%1$S telah menjemput anda menyertai %2$S dengan kata laluan %3$S: %4$S
+conversation.muc.invitationWithoutReason=%1$S telah menjemput anda menyertai %2$S
+# %3$S is the password of the room.
+conversation.muc.invitationWithoutReason.password=%1$S telah menjemput anda menyertai %2$S dengan kata laluan %3$S
+
+# LOCALIZATION NOTE (conversation.muc.join):
+# This is displayed as a system message when a participant joins room.
+# %S is the nick of the participant.
+conversation.message.join=%S memasuki bilik.
+
+# LOCALIZATION NOTE (conversation.muc.rejoined):
+# This is displayed as a system message when a participant rejoins room after
+# parting it.
+conversation.message.rejoined=Anda telah kembali ke dalam bilik.
+
+# LOCALIZATION NOTE (conversation.message.parted.*):
+# These are displayed as a system message when a participant parts a room.
+# %S is the part message supplied by the user.
+conversation.message.parted.you=Anda telah meninggalkan bilik.
+conversation.message.parted.you.reason=Anda telah meninggalkan bilik: %S
+# %1$S is the participant that is leaving.
+# %2$S is the part message supplied by the participant.
+conversation.message.parted=%1$S telah meninggalkan bilik.
+conversation.message.parted.reason=%1$S telah meninggalkan bilik: %2$S
+
+# LOCALIZATION NOTE (conversation.message.invitationDeclined*):
+# %1$S is the invitee that declined the invitation.
+# %2$S is the decline message supplied by the invitee.
+conversation.message.invitationDeclined=%1$S telah menolak jemputan anda.
+conversation.message.invitationDeclined.reason=%1$S telah menolak jemputan anda: %2$S
+
+# LOCALIZATION NOTE (conversation.message.banned.*):
+# These are displayed as a system message when a participant is banned from
+# a room.
+# %1$S is the participant that is banned.
+# %2$S is the reason.
+# %3$S is the person who is banning.
+conversation.message.banned=%1$S telah disekat daripada bilik ini.
+conversation.message.banned.reason=%1$S telah disekat daripada bilik ini: %2$S
+# %1$S is the person who is banning.
+# %2$S is the participant that is banned.
+# %3$S is the reason.
+conversation.message.banned.actor=%1$S telah menyekat %2$S daripada bilik ini.
+conversation.message.banned.actor.reason=%1$S telah menyekat %2$S daripada bilik ini: %3$S
+conversation.message.banned.you=Anda telah disekat daripada bilik ini.
+# %1$S is the reason.
+conversation.message.banned.you.reason=Anda telah disekat daripada bilik ini: %1$S
+# %1$S is the person who is banning.
+# %2$S is the reason.
+conversation.message.banned.you.actor=%1$S telah menyekat anda daripada bilik ini.
+conversation.message.banned.you.actor.reason=%1$S telah menyekat anda daripada bilik ini: %2$S
+
+# LOCALIZATION NOTE (conversation.message.kicked.*):
+# These are displayed as a system message when a participant is kicked from
+# a room.
+# %1$S is the participant that is kicked.
+# %2$S is the reason.
+conversation.message.kicked=%1$S telah disingkirkan daripada bilik ini.
+conversation.message.kicked.reason=%1$S telah disingkirkan daripada bilik ini: %2$S
+# %1$S is the person who is kicking.
+# %2$S is the participant that is kicked.
+# %3$S is the reason.
+conversation.message.kicked.actor=%1$S telah menyingkirkan %2$S daripada bilik ini.
+conversation.message.kicked.actor.reason=%1$S telah menyingkirkan %2$S daripada bilik ini: %3$S
+conversation.message.kicked.you=Anda telah disingkirkan daripada bilik ini.
+# %1$S is the reason.
+conversation.message.kicked.you.reason=Anda telah disingkirkan daripada bilik ini: %1$S
+# %1$S is the person who is kicking.
+# %2$S is the reason.
+conversation.message.kicked.you.actor=%1$S telah menyingkirkan anda daripada bilik ini.
+conversation.message.kicked.you.actor.reason=%1$S telah menyingkirkan anda daripada bilik ini: %2$S
+
+# LOCALIZATION NOTE (conversation.message.removedNonMember.*):
+# These are displayed as a system message when a participant is removed from
+# a room because the room has been changed to members-only.
+# %1$S is the participant that is removed.
+# %2$S is the person who changed the room configuration.
+conversation.message.removedNonMember=%1$S telah disingkirkan daripada bilik kerana konfigurasinya telah diubah kepada anggota-sahaja.
+conversation.message.removedNonMember.actor=%1$S telah disingkirkan daripada bilik kerana %2$S telah mengubahnya kepada anggota-sahaja.
+conversation.message.removedNonMember.you=Anda telah disingkirkan daripada bilik kerana konfigurasinya telah diubah kepada anggota-sahaja.
+# %1$S is the person who changed the room configuration.
+conversation.message.removedNonMember.you.actor=Anda telah disingkirkan daripada bilik kerana %1$S telah mengubahnya kepada anggota-sahaja.
+
+# LOCALIZATION NOTE (conversation.message.MUCShutdown):
+# These are displayed as a system message when a participant is removed from
+# a room because of a system shutdown.
+conversation.message.mucShutdown=Anda telah disingkirkan daripada bilik kerana penutupan sistem.
+
+# LOCALIZATION NOTE (conversation.message.version*):
+# %1$S is the name of the user whose version was requested.
+# %2$S is the client name response from the client.
+# %3$S is the client version response from the client.
+# %4$S is the operating system(OS) response from the client.
+conversation.message.version=%1$S menggunakan "%2$S %3$S".
+conversation.message.versionWithOS=%1$S menggunakan "%2$S %3$S" dalam %4$S.
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.resource=Sumber
+options.priority=Prioriti
+options.connectionSecurity=Keselamatan sambungan
+options.connectionSecurity.requireEncryption=Perlu enkripsi
+options.connectionSecurity.opportunisticTLS=Guna enkripsi, jika tersedia
+options.connectionSecurity.allowUnencryptedAuth=Izinkan menghantar kata laluan tanpa enkripsi
+options.connectServer=Pelayan
+options.connectPort=Port
+options.domain=Domain
+
+# LOCALIZATION NOTE (*.protocolName)
+# This name is used whenever the name of the protocol is shown.
+gtalk.protocolName=Google Talk
+odnoklassniki.protocolName=Odnoklassniki
+
+# LOCALIZATION NOTE (gtalk.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Google Talk account.
+gtalk.usernameHint=alamat e-mel
+
+# LOCALIZATION NOTE (odnoklassniki.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Odnoklassniki account.
+odnoklassniki.usernameHint=ID Profil
+
+# LOCALZIATION NOTE (command.*):
+# These are the help messages for each command.
+command.join3=%S [&lt;bilik&gt;[@&lt;pelayan&gt;][/&lt;nick&gt;]] [&lt;kata laluan&gt;]: Sertai bilik, pilihan menyediakan pelayan yang berbeza, atau nama panggilan, atau kata laluan bilik.
+command.part2=%S [&lt;message&gt;]: Tinggalkan bilik semasa dengan mesej pilihan.
+command.topic=%S [&lt;new topic&gt;]: Tetapkan topik bilik ini.
+command.ban=%S &lt;nick&gt;[&lt;message&gt;]: Sekat seseorang daripada bilik. Anda hendaklah pentadbir bilik untuk melakukan ini.
+command.kick=%S &lt;nick&gt;[&lt;message&gt;]: Singkir seseorang daripada bilik. Anda hendaklah moderator bilik untuk melakukan ini.
+command.invite=%S &lt;jid&gt;[&lt;message&gt;]: Jemput pengguna menyertai bilik semasa dengan mesej pilihan.
+command.inviteto=%S &lt;room jid&gt;[&lt;password&gt;]: Jemput rakan perbualan anda menyertai bilik berserta kata laluan, jika perlu.
+command.me=%S &lt;action to perform&gt;: Melaksanakan tindakan.
+command.nick=%S &lt;new nickname&gt;: Tukar nama gelaran anda.
+command.msg=%S &lt;nick&gt; &lt;message&gt;: Hantar mesej peribadi kepada peserta dalam bilik.
+command.version=%S: Tanyakan maklumat berkaitan klien yang digunakan rakan perbualan anda.
+
+tooltip.telephone=Telephone number
+# LOCALIZATION NOTE (gtalk.disabled):
+# Google Talk was disabled on June 16, 2022. The message below is a localized
+# error message to be displayed to users with Google Talk accounts.
+gtalk.disabled=Google Talk is no longer supported due to Google disabling their XMPP gateway.
diff --git a/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/yahoo.properties b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/yahoo.properties
new file mode 100644
index 0000000000..4bc5431af1
--- /dev/null
+++ b/thunderbird-l10n/ms/chrome/ms/locale/ms/chat/yahoo.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+yahoo.disabled=Yahoo Messenger tidak lagi disokong kerana Yahoo menyahdayakan protokol legasi mereka.