Skip to content

Vietnamese localization guide

Use these rules with the localization principles, Qt interface rules and Vietnamese language guide. Examples tagged FB, CT, FF or MS are quoted from Font Book, CoreText, FontForge or Microsoft's Vietnamese style guide and help; the others are constructed. Glyphs, Illustrator and Qt have no Vietnamese interface: macOS and Windows are the models.

Locale and register

  • Vietnamese for Vietnam, Qt locale vi_VN, northern standard words (MS).
  • Address the reader as bạn, lowercase, and omit it when the verb is enough: Kiểm tra kết nối mạng và thử lại sau. (FB, "Check network connection and try again later."). Never anh, chị, quý vị. Drop của bạn ("your") unless ownership matters.
  • Tone: plain and neutral. Vui lòng only where the source says "please"; no Xin, no chúng tôi for the product. Hãy belongs to help prose after an opening clause (Để lưu, hãy chọn…), never to a label.

Grammar of interface strings

String Form Example
Menu command, button, step Bare verb, then object Xuất phông chữ (FB, "Export Fonts")
Checkbox, option Bare verb or noun phrase Hiển thị thanh bộ lọc (FB, "Show filter bar")
Panel or dialog title Noun phrase; bare verb for "-ing", "-tion" Hỗ trợ ngôn ngữ (FB, "Language Support")
Status, in progress Đang, verb, ellipsis Đang xác thực phông chữ… (FB, "Validating fonts…")
Success, result Đã, verb, object; no subject Đã đặt lại cảnh báo (FB, "Warnings Reset")
"Cannot", "Could not", "Failed to", "… failed" Không thể, verb, object Không thể xóa phông chữ (FB, "Cannot Remove Font")
Confirmation Bạn có chắc chắn muốn … không? or a bare question Tiếp tục đặt lại phông chữ? (FB)
Empty state Không có … nào Không có phông chữ nào được chọn (FB, "No Fonts Selected")
Tooltip Bare verb, no subject Đặt lại mẫu đã sửa… (FB, "Resets the edited sample…")
  • A command never takes Hãy, Đang or Đã: Lưu, Mở…, Thêm ngôn ngữ… (FB).
  • A verb also names its action: "Font Validation" is Xác thực phông chữ (FB), never Sự xác thực.
  • One action, four strings: Lưu tệp, Đang lưu tệp…, Đã lưu tệp, Không thể lưu tệp. Never Lưu tệp thất bại, Tệp đã được lưu.
  • Prefer an active clause without a subject to a passive. Bị only for damage (bị hỏng, bị thiếu). Never được … bởi (FB được quản lý bởi): write do … quản lý.
  • Sentence case: capitalize the first syllable of the label and proper names only, also in a translated feature name: Bộ sưu tập thông minh (FB, "Smart Collections"). Never Chọn Tất Cả (MS).
  • Standard commands, the same at Apple and Microsoft: Mở, Lưu, Đóng, In, Hủy (Cancel), Hoàn tác (Undo), Làm lại (Redo), Cắt, Sao chép, Dán, Xóa, Chọn tất cả, Thoát. Qt has no qtbase_vi catalog, so framework strings need these words too.
  • Platform words: tệp and thư mục (Apple, Microsoft, Google); tải xuống (Microsoft, Google; Apple says tải về); cài đặt for Settings and for Install (all three), thiết lập for "set up", tùy chọn for an option; bấm for click (Apple, Microsoft), nhấn for a key.

Compact labels

  • No article (một only where "a" means one) and no plural marker: Xuất phông chữ, not Xuất các phông chữ.
  • No của between nouns that read clearly side by side: Tên phông chữ (FB, "Font name"), not Tên của phông chữ.
  • Head first, modifiers after, the English stack reversed as a whole: Tiêu chí bộ sưu tập thông minh (FB, "Smart Collection Criteria").
  • Shorten with the shorter synonym: Hủy for Hủy bỏ, Nhập for Nhập vào (MS).
  • Never drop a tone mark. Never abbreviate by initials (FF TĐ for tự động), and never abbreviate a glossary term, a command verb, không or a name. Unit symbols stay as in the source: pt, not Apple's đ.

Plurals and placeholders

Qt gives Vietnamese one numerus form ("Universal Form", nplurals=1; plural=0) for every number, 0 and 1 included. CLDR 48 agrees.

  • Keep %n and put the unchanged noun right after it: %n tệp (FB %lld tệp). Never write một or a literal 1.
  • No các or những after a number or a quantifier: %n phông chữ, tất cả phông chữ (FB), not %n các phông chữ.
  • No classifier before a thing: %n tệp, not %n cái tệp. When English counts without a noun, supply the unit counted (tệp, mục…): "%n selected" is Đã chọn %n mục; "And %@ More…" is Và %@ phông chữ khác… (FB).
  • A count precedes its noun; a name follows its class noun: %n kiểu, thư viện “%1” (FB). Ask which of the two %1 is. An ordinal is thứ %1.
  • Vietnamese has no gender, case or agreement: a noun placeholder needs only the right position. A counter "%1 of %2" is %1 / %2 (FB).

Numbers, punctuation and spacing

  • Decimal comma, period for thousands: 1.526,75 (MS, CLDR). Versions, code and font data keep their source form.
  • Percent without a space: 25% (MS, CLDR). A unit takes a no-break space: 12 pt, 5,25 cm.
  • Quotation marks are “…”, with ‘…’ inside (FB, CLDR). Never «…» (FF); straight quotes in code only.
  • Ellipsis is the single character …, with no space before it, wherever the source has one: Xuất… (FB).
  • No space before : ; ? ! (FF has Đầu :). Final punctuation follows the source.
  • A language name takes lowercase tiếng: tiếng Việt.

Mnemonics and key names

  • Put & before a letter of the Vietnamese word that carries no mark, the first one free: &Lưu, Thê&m, Á&p dụng (as FF does).
  • Never mark ă â ê ô ơ ư đ or a vowel with a tone mark: they take several keystrokes (MS: "not recommended").
  • No trailing (&F): Microsoft allows it but does not encourage it. One letter per menu or dialog. Never change a shortcut.
  • Untranslated keys: Shift, Ctrl, Alt, Tab, Esc, Enter, Backspace, Delete, and on macOS Command, Option, Control, Return. Translated: Mũi tên lên, Mũi tên xuống, Mũi tên trái, Mũi tên phải (Apple, MS), Phím cách (MS; Apple says Thanh dấu cách). A key is a phím: nhấn phím Shift.

Names and loans

  • Keep unchanged: product and company names, format names (OpenType, UFO, VFJ), OpenType tags and table names, glyph names, code.
  • Embed a name after a class noun, without hyphen: tệp VFJ, phông chữ OpenType, bảng kern, trong FontLab.
  • A loan the term table keeps is a lowercase noun without English plural and may head a phrase: tên glyph, cặp kerning.
  • Do not respell a name by syllables: Algeria (CLDR), not FF's An-giê-ri.

Script-specific rules

  • Type precomposed letters (NFC). A decomposed tone mark breaks search and glyph lookup.
  • Tone marks in the old style: in open oa, oe, uy the mark sits on the first vowel: hóa, xóa, khóa, hủy, tùy, khỏe. Apple and Microsoft write so throughout (FB, CT, MS); Google mixes both; school textbooks now use the new style (hoá, huỷ). FontLab follows the platforms.
  • y, not i, in ký tự, kỹ thuật, xử lý, quy tắc, as the platforms write.
  • Capitals keep every mark: Ẩn, Đóng.

False friends and traps

FontForge's words are dated: write tệp, phông chữ, Hủy, Xóa, not tập tin, phông, Thôi, Gột.

Corporate catalogs are no authority for type terms. Apple has Nét (stroke) for Glyph, Trọng âm (spoken stress) for Accent, Số liệu (statistics) for Metrics and Tái bút (P.S.) for Postscript. FontForge has Mẹo (tip) for Hints and Chiều rộng sớm (early width) for Advance Width. The term table rules.

  • Font is phông chữ (Apple, Microsoft, Google), not font or kiểu chữ, Apple's word for typeface.
  • Letter case is never trường hợp, character never nhân vật, weight never trọng lượng or cân nặng, master never bậc thầy, family never gia đình.
  • Prefer the everyday word to the formal Sino-Vietnamese one: chạy, not thực thi; thử, not nỗ lực; Không thể xuất, not Không thể tiến hành xuất (FB).

Machine translation keeps English word order (Mới tab), copies title case, puts Hãy in menus and Sự or Việc before a verb used as a noun, and adds các for every plural, của for every "of", một for every "a", được or bị for every passive, nó for every "it" and rằng for every "that".

Review

Check in this order; report only checks performed:

  1. Placeholders, markup, the single %n form read with 0, 1 and 2.
  2. Diacritics: no missing mark, NFC, old-style tone placement.
  3. Bare verb, Đang, Đã, Không thể.
  4. Head first, count before noun; no reflex các, của, một, được.
  5. Sentence case.
  6. Mnemonics: unique per menu, on unmarked letters.
  7. Type terms against the term table; numbers, percent, quotation marks.

FontLab terminology and compact labels

Preserve deliberately uppercase source labels using the language’s case rules. Keep numeric controls compact with UPM, PPM and LSB/RSB (French AG/AD); explain the full terms in help. The Family Dimensions “Units Per eM:” label is an intentional expanded exception.

Use the current core memory and its approval status. OpenType lookup defaults to the translation of procedure, with a different term only when strong OpenType-specific evidence supports it. Explicit choices are German Lookup, French lookup, Polish procedura and Russian процедура. Ordinary searches, individual rules and OpenType features are separate concepts. Preserve literal code keywords and identifiers.

Translate Fusion with the fallback Welder. Use the core's phonetic FontAudit transliteration in non-Latin scripts, including Chinese; preserve FontAudit in code. Proposed spellings remain proposed. Before rebuilding a QPH, recover team edits and import their terms and notes into the core memory.

Compare mnemonic-split terms with unmarked labels. Keep labels compact, aiming for 120% of the English length in Dimensions and Glyph Window preferences without losing meaning. Omit redundant font, color or command wording when context supplies it. TTH labels can omit “use” and abbreviate TrueType hinting; help can explain more. A full harmonization requires three complete catalog reviews, then reconciliation of help with the final UI and verification of generated resources.

Current terminology

The Vietnamese term table, generated from localization/vi-core.tmx, is the terminology authority. Use its definitions to select the right concept and its notes for grammar and usage. Check each entry’s status: team-approved decisions and proposed translations are distinct. A proposed term still stays consistent across the interface and help; consistency does not confer approval. For a missing term, translate the fallback original term and record the proposal with its reason.

The terms that other strings are built from:

English Vietnamese
glyph glyph
character ký tự
family dimensions kích thước họ phông chữ
master master
instance instance
interpolation nội suy
axis trục
variable font phông chữ biến đổi
kerning kerning
kerning pair cặp kerning
kerning class class kerning
tracking tracking
metrics metrics
sidebearing lề bên
left sidebearing lề trái
right sidebearing lề phải
advance width độ rộng glyph
UPM số đơn vị mỗi em
font unit đơn vị phông chữ
baseline đường cơ sở
x-height chiều cao x
cap height chiều cao chữ hoa
ascender ascender
descender descender
overshoot overshoot
stem nét chính
counter lòng trong
serif chân chữ
terminal đầu nét
contour đường viền
node nút
handle tay cầm
segment đoạn
extremum điểm cực trị
element phần tử
component thành phần
reference tham chiếu
layer lớp
anchor neo
guide đường gióng
hint hint
hinting hinting
autohinting hinting tự động
feature tính năng
lookup thủ tục
OpenType class class OpenType
mark dấu
ligature chữ ghép
smart khéo
Smart Corner góc khéo
Power Brush siêu cọ
Power Guide siêu đường gióng
Power Nudge siêu nhích
Power Stroke siêu nét
Nudge nhích
Servant node nút bám theo
Genius node nút thiên tài
Tunni line đường Tunni
cousins họ hàng
Sketchboard giấy nháp
Skin vỏ
Matchmaker mai mối
match khớp
True Fill tô thật
Dream Up hô biến
Remove Overlap bỏ chồng lấp
decompose phân rã
panel bảng
property bar thanh thuộc tính

Rapid tool and Quick Help references

The tool name is Rapid. Use Vẽ bằng Rapid for Rapid draw and Sửa bằng Rapid for Rapid edit. Keep the name distinct from ordinary descriptions of speed and from the Vertical rapid and Horizontal rapid contrast classifications. Do not use Rapidograph as the tool name.

Keep Rapid in Latin letters; inflect the surrounding tool or action wording.

For Quick Help, match tool, panel, option and command references to the current TS catalog in the same control context. Keep inflection natural in sentences. If a core entry differs, reconcile it with the catalog before regenerating phrasebooks. A compact UI label and its full prose explanation can differ. Check the current English conditions and consequences: disabling Cloud also disables mark/mkmk generation, and mark generation requires Cloud. Preserve mark and mkmk as literal OpenType feature tags.