diff --git a/frontend/app/locales/vi.json b/frontend/app/locales/vi.json new file mode 100644 index 00000000..46a061d6 --- /dev/null +++ b/frontend/app/locales/vi.json @@ -0,0 +1,171 @@ +{ + "anonymousLoginForm.length-limit": "Tên người dùng phải có ít nhất 3 ký tự", + "anonymousLoginForm.log-in": "Đăng nhập", + "anonymousLoginForm.symbol-limit": "Tên người dùng chỉ được chứa các chữ cái, số, dấu gạch dưới hoặc dấu cách", + "anonymousLoginForm.user-name": "Tên người dùng", + "authPanel.anonymous-provider": "Ẩn danh", + "authPanel.disable-comments": "Tắt bình luận", + "authPanel.disabled-cookies": "Tắt tính năng chặn cookies của bên thứ ba để đăng nhập hoặc mở nhận xét trong", + "authPanel.enable-comments": "Mở bình luận", + "authPanel.enable-cookies": "Cho phép cookies đăng nhập và bình luận", + "authPanel.hide-settings": "Ẩn cài đặt", + "authPanel.logged-as": "Bạn đã đăng nhập bằng", + "authPanel.login": "Đăng nhập:", + "authPanel.logout": "Thoát?", + "authPanel.new-page": "trang mới", + "authPanel.or-provider": "hoặc", + "authPanel.other-provider": "Khác", + "authPanel.read-only": "Chỉ đọc", + "authPanel.request-to-delete-data": "Yêu cầu xóa dữ liệu của tôi", + "authPanel.show-settings": "Hiện cài đặt", + "blockingDuration.day": "Trong một ngày", + "blockingDuration.month": "Trong một tháng", + "blockingDuration.permanently": "Vĩnh viễn", + "blockingDuration.week": "Trong một tuần", + "comment.block": "Chặn", + "comment.block-user": "Bạn có muốn chặn {userName} {duration}?", + "comment.blocked-user": "Đã chặn", + "comment.blocking-period": "Thời gian chặn", + "comment.cancel": "Huỷ", + "comment.controversy": "Tranh luận: {value}", + "comment.copied": "Đã sao chép!", + "comment.copy": "Sao chép", + "comment.delete": "Xoá", + "comment.delete-message": "Bạn có muốn xoá bình luận này?", + "comment.deleted-comment": "Bình luận này đã bị xoá", + "comment.deleted-user": "Đã xoá", + "comment.edit": "Sửa", + "comment.expired-time": "Thời gian chỉnh sửa đã hết.", + "comment.go-to-parent": "Đi tới bình luận chính", + "comment.hide": "Ẩn", + "comment.hide-user-comment": "Bạn có muốn ẩn bình luận của {userName}?", + "comment.pin": "Ghim", + "comment.pin-comment": "Bạn có muốn ghim bình luận này?", + "comment.reply": "Trả lời", + "comment.time": "{day} lúc {time}", + "comment.toggle-verification": "Chuyển đổi xác thực", + "comment.unblock": "Bỏ chặn", + "comment.unblock-user": "Bạn có muốn bỏ chặn người dùng này?", + "comment.unpin": "Bỏ ghim", + "comment.unpin-comment": "Bạn có muốn bỏ ghim bình luận này?", + "comment.unverified-user": "Người dùng chưa được xác thực", + "comment.unverify-user": "Bạn có muốn bỏ xác thực {userName}?", + "comment.verified-user": "Người dùng đã xác thực", + "comment.verify-user": "Bạn có muốn xác thực {userName}?", + "comment.vote-error": "Vote bị lỗi: {voteErrorMessage}", + "commentForm.anonymous-uploading-disabled": "Upload ảnh bị tắt đối với người dùng ẩn danh. Vui lòng đăng nhập không phải ẩn danh để có thể đính kèm hình ảnh.", + "commentForm.exceeded-size": "{fileName} vượt kích thước giới hạn {maxImageSize}", + "commentForm.input-placeholder": "Bình luận của bạn ở đây", + "commentForm.new-comment": "Bình luận mới", + "commentForm.notice-about-styling": "Hỗ trợ định dạng Markdown", + "commentForm.preview": "Xem trước", + "commentForm.reply": "Trả lời", + "commentForm.save": "Lưu", + "commentForm.send": "Gửi", + "commentForm.subscribe-by": "Đăng kí bằng", + "commentForm.subscribe-or": "hoặc", + "commentForm.unauthorized-uploading-disabled": "Upload ảnh bị tắt đối với người dùng chưa đăng nhập. Hãy đăng nhập trước khi Upload.", + "commentForm.unexpected-error": "Có gì đó sai sai. Vui lòng thử lại sau", + "commentForm.upload-file-fail": "{fileName} upload thất bại với \"{errorMessage}\"", + "commentForm.uploading": "Đang tải lên...", + "commentForm.uploading-file": "đang tải lên {fileName}...", + "commentSort.sort-by": "Sắp xếp theo", + "commentsSort.best": "Tốt nhất", + "commentsSort.least-controversial": "Ít gây tranh cãi nhất", + "commentsSort.least-recently-updated": "Gần đây nhất", + "commentsSort.most-controversial": "Gây tranh cãi nhất", + "commentsSort.newest": "Mới nhất", + "commentsSort.oldest": "Cũ nhất", + "commentsSort.recently-updated": "Mới được cập nhật", + "commentsSort.worst": "Tệ nhất", + "emailLoginForm.back": "Quay lại", + "emailLoginForm.confirm": "Xác nhận", + "emailLoginForm.email-address": "Địa chỉ Email", + "emailLoginForm.empty-token": "Token không được bỏ trống", + "emailLoginForm.expired-token": "Token đã hết hạn", + "emailLoginForm.invalid-email": "Địa chỉ phải là địa chỉ Email chính xác", + "emailLoginForm.loading": "Đang tải...", + "emailLoginForm.send-verification": "Gửi xác thực", + "emailLoginForm.token": "Token", + "emailLoginForm.user-not-found": "Không tìm thấy người dùng nào", + "errors.0": "Có gì đó sai sai. Vui lòng thử lại sau.", + "errors.1": "Bình luận không được tìm thấy, xin hãy làm mới trang và thử lại.", + "errors.10": "Đã quá muộn để sửa bình luận.", + "errors.11": "Nhận xét đã có trả lời, không thể chỉnh sửa.", + "errors.12": "Không thể lưu kết quả vote. Một chút nữa rồi thử lại nhé.", + "errors.13": "Bạn không thể vote bình luận của bạn.", + "errors.14": "Bạn đã vote bình luận này rồi.", + "errors.15": "Có quá nhiều vote cho bình luận.", + "errors.16": "Bình luận đã đạt số điểm thấp nhất.", + "errors.17": "Thao tác bị từ chối. Một chút nữa rồi thử lại nhé.", + "errors.18": "Không tìm thấy file được yêu cầu.", + "errors.2": "Yêu cầu đến không quản lý được.", + "errors.3": "Bạn không có quyền thực hiện thao tác này.", + "errors.4": "Dữ liệu bình luận không hợp lệ.", + "errors.5": "Bình luận không được tìm thấy, xin hãy làm mới trang và thử lại.", + "errors.6": "Trang không được tìm thấy, xin hãy làm mới trang và thử lại.", + "errors.7": "Người dùng đã bị chặn.", + "errors.8": "Người dùng đã bị chặn.", + "errors.9": "Thay đổi bình luận không thành công. Một chút sau rồi thử lại nhé.", + "errors.failed-fetch": "Nhận dữ liệu thất bại. Vui lòng kiểm tra lại đường truyền hoặc thử lại sau.", + "errors.forbidden": "Bị cấm.", + "errors.not-authorized": "Không được phép.", + "errors.to-many-request": "Bạn đã đạt đến giới hạn yêu cầu tối đa.", + "errors.unexpected-error": "Có gì đó sai sai.", + "root.pinned-comments": "Bình buận đã ghim", + "root.powered-by": "Powered by Remark42", + "root.show-more": "Xem thêm", + "settings.block": "chặn", + "settings.block-time": "cho đến {day} lúc {time}", + "settings.block-user": "Bạn có muốn chặn {userName}?", + "settings.blocked-users-header": "Người dùng bị chặn:", + "settings.blocked-users-title": "Người dùng bị chặn", + "settings.hidden-user-header": "Người dùng đã ẩn:", + "settings.hidden-users-title": "Người dùng đã ẩn", + "settings.hide": "ẩn", + "settings.no-blocked-users": "Không có người dùng bị chặn.", + "settings.no-hidden-users": "Không có người dùng bị chặn.", + "settings.permanently": "vĩnh viễn", + "settings.show": "hiện", + "settings.unblock": "bỏ chặn", + "settings.unblock-user": "Bạn có muốn bỏ chặn {userName}?", + "settings.unknown": "không rõ", + "subscribeByEmail.back": "Quay lại", + "subscribeByEmail.close": "Đóng", + "subscribeByEmail.email": "Email", + "subscribeByEmail.expired-token": "token đã hết hạn", + "subscribeByEmail.have-been-subscribed": "Bạn đã đăng kí nhận thông báo qua email", + "subscribeByEmail.have-been-unsubscribed": "Bằng đã huỷ đăng kí nhận thông báo qua email", + "subscribeByEmail.only-registered-users": "Chỉ có sẵn cho người dùng đã đăng ký", + "subscribeByEmail.submit": "Gửi đi", + "subscribeByEmail.subscribe": "Đăng kí", + "subscribeByEmail.subscribe-by-email": "Đăng kí qua Email", + "subscribeByEmail.subscribe-to-replies": "Đăng kí trả lời", + "subscribeByEmail.subscribed": "Bạn đã đăng kí cập nhật qua email", + "subscribeByEmail.token": "Token", + "subscribeByEmail.unsubscribe": "Bỏ đăng kí", + "subscribeByRSS.button-title": "Đăng kí qua RSS", + "subscribeByRSS.replies": "Trả lời", + "subscribeByRSS.site": "Trang", + "subscribeByRSS.thread": "Chủ đề", + "subscribeByRSS.title": "RSS", + "toolbar.attach-image": "Đính kèm hình ảnh, kéo và thả hoặc dán từ khay nhớ tạm", + "toolbar.bold": "Thêm chử đậm {shortcut}", + "toolbar.code": "Chèn một đoạn code", + "toolbar.header": "Thêm tiêu đề", + "toolbar.italic": "Thêm chử nghiêng {shortcut}", + "toolbar.link": "Thêm đường link {shortcut}", + "toolbar.ordered-list": "Thêm danh sách số", + "toolbar.quote": "Thêm trích dẫn", + "toolbar.unordered-list": "Thêm danh sách", + "user-info.last-comments": "Bình luận cuối cùng của {userName}", + "user-info.unexpected-error": "Có gì đó sai sai", + "vote.anonymous": "Người dùng ẩn danh không thể vote", + "vote.deleted": "Không thể vote bình luận đã xoá", + "vote.guest": "Đăng nhập để vote", + "vote.only-positive": "Chỉ cho phép điểm số dương", + "vote.only-post-page": "Chỉ được phép vote trên trang của bài đăng", + "vote.own-comment": "Bạn không thể vote bình luận của bạn", + "vote.readonly": "Không thể Vote chủ đề chỉ đọc" + } + \ No newline at end of file diff --git a/frontend/tasks/supportedLocales.json b/frontend/tasks/supportedLocales.json index ebfb3ae2..28a7a68a 100644 --- a/frontend/tasks/supportedLocales.json +++ b/frontend/tasks/supportedLocales.json @@ -1 +1 @@ -["en", "ru", "de", "fi", "es", "zh", "tr", "bg", "ua", "pl"] +["en", "ru", "de", "fi", "es", "zh", "tr", "bg", "ua", "pl", "vi"]