#
#       aegis - project change supervisor
#       Copyright (C) 2007-2008 Peter Miller
#
# Vietnamese translation for Aegis.
# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
# Copyright (C) 2007, 2008 Clytie Siddall
#
#       This program is free software; you can redistribute it and/or
#       modify it under the terms of the GNU General Public License as
#       published by the Free Software Foundation; either version 3 of
#       the License, or (at your option) any later version.
#
#       This program is distributed in the hope that it will be useful,
#       but WITHOUT ANY WARRANTY; without even the implied warranty of
#       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#       GNU General Public License for more details.
#
#       You should have received a copy of the GNU General Public License
#       along with this program. If not, see
#       <http://www.gnu.org/licenses/>.
#
# Just A Few Notes...
#
#       When translating these error messages, all of the substitutions
#       described in aesub(5) are also available.  Substitution variable
#       names and function names may be abbreviated, in the same way
#       that command line options are abbreviated, but abbreviation
#       should probably be avoided.
#
#       While Aegis was written by an English speaker, this English
#       localization file is necessary, to translate the "terse
#       programmer" style error messages into something more user
#       friendly.
#
#       Messages which include state names need to leave the state names
#       untranslated, because they will probably never be translated.
#
#       Messages which include command line options need to leave them
#       untranslated, because they are not yet internationalized, though
#       they will be one day.
#
#       The list names (known to ael) have not been internationalized (yet).
#
#       Substitution names will Never be internationalized.
#       Otherwise the substitutions will stop working, Catch-22.
#
# -------------------------------------------------------------------------
#
msgid ""
msgstr ""
"Project-Id-Version: aegis 4.24\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: Thu Jun 25 17:58:37 CEST 2009\n"
"PO-Revision-Date: 2008-04-11 21:39+0930\n"
"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"

#
# This error message is issued when an environment variable is meant to
# be a positive integer, and it is not.
#
#       $Name           The name of the environment variable.
#
#: libaegis/user/default.cc:103
msgid "$$$name must be positive"
msgstr "biến môi trường $name phải là một con số thập phân dương"

#
# This error message is issued when the parameter of the -UUid switch is
# not a valid uuid.
#
#       $Name           The -UUid switch
#
#: libaegis/help.cc:446
msgid "$Name needs an uuid"
msgstr "Tùy chọn $Name cần nhận một UUID hợp lệ"

#
# This error message is issued when the parameter of the given command
# line option is not a valid URL.
#
#       $Name           The option name
#
#: libaegis/help.cc:434
msgid "$Name needs url"
msgstr "Tùy chọn $Name cần một địa chỉ URL"

#
# This error message is issued when a file has been tampered with while
# in the 'being reviewed' or 'awaiting integration' state.  Files in
# these states must be left strictly alone, or Aegis will assume that
# the developer is trying to subvert the process.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aede.cc:416 aegis/aeib.cc:1066 aegis/aeib.cc:1096 aegis/aerb.cc:331
#: aegis/aerb.cc:356 aegis/aerp.cc:469 aegis/aerp.cc:493
msgid "$filename altered"
msgstr "tập tin « $filename » bị sửa đổi"

#
# This message is issued when an aefa is successfully completed.
#
#: aegis/aefa.cc:698 aegis/aefa.cc:883
msgid "$filename attributes changed"
msgstr "tập tin « $filename » có thuộc tính bị sửa đổi"

#
# This error message is issued when aenf is invoked on a file which is
# not a normal file and not a directory.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aenf.cc:559
msgid "$filename bad nf type"
msgstr ""
"Tập tin « $filename » có kiểu tập tin không thích hợp. Cho phép bạn dùng lệnh "
"này chỉ cho các tập tin bình thường. Các liên kết tượng trưng và kiểu tập "
"tin đặc biệt khác phải được tạo vào lúc xây dựng."

#
# This progress message is issued when a test run against the baseline
# fails.  This is what it is meant to do because either (a) it is new
# functionality, and will fail because it is not in the baseline, or (b)
# it is a bug fix, and failing against the baseline demonstrates that
# the test reproduces the bug.
#
#       $File_Name      The name of the test file.
#       $ARCHitecture   The name of the architecture.
#
#: libaegis/change/test/batch.cc:363
msgid "$filename baseline fail, architecture $architecture, good"
msgstr ""
"hàm thử « $filename » trên đường cơ bản thì trượt, kiến trúc $architecture, "
"tốt "

#
# This progress message is issued when a test run against the baseline
# fails.  This is what it is meant to do because either (a) it is new
# functionality, and will fail because it is not in the baseline, or (b)
# it is a bug fix, and failing against the baseline demonstrates that
# the test reproduces the bug.
#
#       $File_Name      The name of the test file.
#
#: libaegis/change/test/batch.cc:373 libaegis/change/test/batch_fake.cc:196
msgid "$filename baseline fail, good"
msgstr "hàm thử « $filename » trên đường cơ bản thì trượt (kết quả mong đợi)"

#
# This error message is issued when a test run against the baseline
# passes.  See above for why this is not good.
#
#       $File_Name      The name of the test file.
#       $ARCHitecture   The name of the architecture.
#
#: libaegis/change/test/batch.cc:412
msgid "$filename baseline pass, architecture $architecture, not good"
msgstr ""
"hàm thử « $filename » trên đường cơ bản đã đỗ, kiến trúc $architecture, không "
"tốt"

#
# This error message is issued when a test run against the baseline
# passes.  See above for why this is not good.
#
#       $File_Name      The name of the test file.
#
#: libaegis/change/test/batch.cc:422 libaegis/change/test/batch_fake.cc:217
msgid "$filename baseline pass, not good"
msgstr "hàm thử « $filename » trên đường cơ bản đã đỗ (nó phải trượt)"

#
# This error message is issued when a request is made to run a specific
# test file, but the file specified is being removed not created or modified.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aet.cc:976
msgid "$filename being removed"
msgstr "tập tin « $filename » đang được gỡ bỏ"

#
# This error message is issued when aede finds a file which has been
# modified since it was last built.
#
#       $File_Name      The name of the offending file.
#       $Outstanding    A list of outstanding architectures to be built,
#                       or empty if all are outstanding.  (Optional)
#
#: aegis/aede.cc:968
msgid "$filename changed after build"
msgstr ""
"tập tin « $filename » bị sửa đổi sau lần xây dựng cuối cùng; thay đổi này "
"phai chạy xong một tiến trình xây dựng « aegis -Build » $outstanding thêm nữa "
"trước khi nó có thể rời tình trạng « $state »"

#
# This error message is issued when aede finds a file which has been
# modified since it was last differenced.  Can occur in both the 'being
# developed' and 'being integrated' states.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aede.cc:562 aegis/aede.cc:577
msgid "$filename changed after diff"
msgstr ""
"tập tin « $filename » bị sửa đổi sau lần khác biệt cuối cùng; thay đổi này "
"phải chạy xong một tiến trình khác biệt « aegis -Diff » thêm nữa trước khi nó "
"có thể rời tình trạng « $state »"

#
# This progress message is issued when aed merges a file, and notifies the
# user that the merge has taken place.
#
#: aegis/aed.cc:1504
msgid "$filename diff3ed"
msgstr ""
"tập tin « $filename » quá cũ, xem « $filename,D » để tìm mã nguồn đã trộn"

#
# This error message is issued when a test against the change fails.
#
#       $File_Name      The name of the test file.
#
#: libaegis/change/test/batch.cc:393 libaegis/change/test/batch_fake.cc:203
msgid "$filename fail"
msgstr "hàm thử « $filename » đã trượt"

#
# This error message is issued when a test against the change fails.
#
#       $File_Name      The name of the test file.
#       $ARCHitecture   The name of the architecture tesed on.
#
#: libaegis/change/test/batch.cc:389
msgid "$filename fail, architecture $architecture"
msgstr "hàm thử « $filename » đã trượt, kiến trúc $architecture"

#
# This error message is issued when an aed is performed on a change
# which contains a new file which has been added to the baseline
# by another change.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aede.cc:846 aegis/aemv.cc:234 aegis/aenf.cc:688 aegis/aent.cc:449
msgid "$filename in baseline"
msgstr "tập tin « $filename » đã tồn tại trong dự án"

#
# This error message is issued when an attempt is made to copy a file
# marked as "built" (created by aenf -b) into a change.
#
#       $File_Name      The offending file name.
#
#: aegis/aecp.cc:1568
msgid "$filename is built"
msgstr ""
"tập tin « $filename » đã xây dựng nên không thể sao chép nó vào thay đổi"

#
# This error message is issued when an attempt is made to end
# development (aede) when a file copied for insulation (aecp -ro) is
# still present in the change.
#
#     $File_Name      The offending file name.
#
#: aegis/aede.cc:874
msgid "$filename is insulation"
msgstr ""
"tập tin « $filename » đã được sao chép « chỉ đọc » nên cần phải hủy sao chép "
"nó trước khi thay đổi này có thể rời tình trạng « $state »"

#
# This progress message is issued when aed merges a file, and notifies the
# user that the merge has taken place.
#
#: aegis/aed.cc:1502
msgid "$filename merged"
msgstr ""
"tập tin « $filename » quá cũ nên được trộn với phiên bản hiện thời, xem « "
"$filename,B » để tìm mã nguồn gốc"

#
# This error message is issued when a change file is modified by the
# history tool (history_put_command or history_create_command)
# during aeipass.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/change/history/trash.cc:90
msgid "$filename modified by history tool"
msgstr "công cụ lược sử đã sửa đổi tập tin mã nguồn « $filename »"

#
# This error message is issued by the aedb command when it finds
# a problem with the directory permissions above the development
# directory.  The directories need to be searchable (have the 'x'
# permission) for the project owner and the reviewers.
#
#       $File_Name      The name of the offending directory.
#       $Mode_Change    The additional mode bit required.
#       $Mode_Old       The current mode of the directory (optional).
#       $Mode_New       The desirable mode of the directory (optional).
#
#: libaegis/os/ck_path_trav.cc:135
msgid "$filename needs permissions $mode_change"
msgstr ""
"thư mục « $filename » không thể đi qua được, nó hiện thời có chế độ « "
"$mode_old » nhưng cần ít nhất « $mode_new », câu lệnh « chmod $mode_change "
"$filename » có thể đủ để sửa chữa trường hợp này"

#
# This error message is issued when aet runs a test which returns a "no
# result" exit status.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/change/test/batch.cc:484 libaegis/change/test/batch_fake.cc:245
msgid "$filename no result"
msgstr ""
"hàm thử « $filename » không có kết quả; vấn đề khác đã ngăn cản thực hiện "
"chức năng nằm bên dưới hàm thử"

#
# This error message is issued when aet runs a test which returns a "no
# result" exit status.
#
#       $File_Name      The name of the offending file.
#       $ARCHitecture   The name of the architecture.
#
#: libaegis/change/test/batch.cc:480
msgid "$filename no result, architecture $architecture"
msgstr ""
"hàm thử « $filename » trên kiến trúc $architecture chưa trả về kết quả; một "
"vấn đề nào đó khác đã ngăn cản thực hiện khả năng đang được thử"

#
# This error message is issued when aede cannot find a file in the
# development directory corresponding to a file listed as part of the
# change.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aede.cc:470 aegis/aede.cc:543
msgid "$filename not found"
msgstr "không tìm thấy tập tin « $filename »"

#
# This error message is issued when a request is made to run a specific
# test file, but the file specified is not a test.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aet.cc:966 aegis/aet.cc:1044 aegis/aet.cc:1841
msgid "$filename not test"
msgstr "tập tin « $filename » không phải là hàm thử"

#
# This progress message is issued when a test against the change passes.
#
#       $File_Name      The name of the test file.
#
#: libaegis/change/test/batch.cc:442 libaegis/change/test/batch_fake.cc:225
msgid "$filename pass"
msgstr "hàm thử « $filename » đã đỗ"

#
# This progress message is issued when a test against the change passes.
#
#       $File_Name      The name of the test file.
#       $ARCHitecture   The name of the architecture.
#
#: libaegis/change/test/batch.cc:438
msgid "$filename pass, architecture $architecture"
msgstr "hàm thử « $filename » đã đỗ, kiến trúc $architecture"

#
# This progress message is issued when a test against the change decides
# to skip itself.
#
#       $File_Name      The name of the test file.
#
#: libaegis/change/test/batch.cc:464 libaegis/change/test/batch_fake.cc:236
msgid "$filename skipped"
msgstr "tập tin « $filename » bị bỏ qua"

#
# This error message is issued when a test against the change fails
# decodes to skip itself.
#
#       $File_Name      The name of the test file.
#       $ARCHitecture   The name of the architecture tesed on.
#
#: libaegis/change/test/batch.cc:460
msgid "$filename skipped, architecture $architecture"
msgstr "hàm thử « $filename » đã trượt thì tự bỏ qua, kiến trúc $architecture"

#
# This error message is issued when aede discovers a file in the change
# that has not been altered.  (Sometimes it is a warning.)
#
#       $File_Name      The offending file.
#
#: aegis/aede.cc:312 aegis/aede.cc:321 aegis/aeip.cc:590
msgid "$filename unchanged"
msgstr "$filename chưa thay đổi"

#
# This error message is issued when a file named on the command
# cannot be related to the change being operated on.
#
#       $File_Name      The offending command line argument.
#
#: aefind/cmdline.y:259 aefind/cmdline.y:260 aegis/aeb.cc:419
#: aegis/aecp.cc:489 aegis/aecp.cc:1384 aegis/aecpu.cc:328 aegis/aed.cc:280
#: aegis/aed.cc:999 aegis/aemt.cc:366 aegis/aemtu.cc:312 aegis/aemv.cc:541
#: aegis/aemv.cc:578 aegis/aemvu.cc:301 aegis/aenf.cc:462 aegis/aenfu.cc:330
#: aegis/aent.cc:386 aegis/aentu.cc:346 aegis/aerm.cc:384 aegis/aermu.cc:363
#: aegis/aet.cc:875 aegis/aet.cc:1741 aels/main.cc:373 aels/main.cc:374
#: libaegis/change/file/resolve_name.cc:114
msgid "$filename unrelated"
msgstr ""
"đường dẫn « $filename » không nằm bên trong bất cứ thay đổi hay cây thư mục "
"dự án nào; có lẽ tùy chọn « -base-relative » sẽ giúp"

#
# This fatal error message is issued by the aefa -uuid command if the
# file already has a UUID set.
#
#       $File_Name      the offending filename
#
#: aegis/aefa.cc:834
msgid "$filename uuid already set"
msgstr "tập tin « $filename » đã có một UUID"

#
# This fatal error message is issued by the aefa -uuid command if the
# file already has a UUID set.
#
#       $File_Name      the offending filename
#       $Other          the other filename using the UUID (optional)
#
#: aegis/aefa.cc:861
msgid "$filename uuid duplicate"
msgstr ""
"UUID được ghi rõ cho tập tin « $filename » đang được tập tin « $other » dùng"

#
# This error message is issued when a substitution function is formed
# incorrectly.  See (+++) below.
#
#       $File_Name      The filename containg the message
#       $Line_Number    The line number of the message
#
#: libaegis/sub.cc:471
msgid "$filename: $linenumber: empty $${} substitution"
msgstr "$filename: $linenumber: hàm thay thế $${} rỗng"

#
# This error message is issued when one or more substitution variables
# are unused.  All of them are reported, and then the substitution stops
# with this error.
#
#       $File_Name      Name of file containing message
#       $Line_Number    Line number of message
#       $Message        The *msgstr* part of the offending message.
#                       (optional)
#       $Number         The number of unused substitution variables.
#                       (Optional)
#
#: libaegis/sub.cc:1094
msgid ""
"$filename: $linenumber: in substitution \"$message\" found unused variables"
msgstr ""
"$filename: $linenumber: trong hàm thay thế « $message » tìm thấy $number biến "
"không dùng (nên hủy bỏ)"

#
# This error message is issued when a substitution variable is not used
# in a substitution.  In indicates some kind of incompleteness in the
# use of the substitution.
#
#       $File_Name      The filename containg the message
#       $Line_Number    The line number of the message
#       $Message        The *msgstr* part of the offending message.
#                       (optional)
#       $Name           The name of the unused substitution variable.
#                       (optional)
#
#: libaegis/sub.cc:1068
msgid ""
"$filename: $linenumber: in substitution \"$message\" variable \"$name\" "
"unused"
msgstr ""
"$filename: $linenumber: trong hàm thay thế « $message » có biến « $name » "
"không dùng"

#
# This error message is issued when a substitution fails.  (It is VERY
# important that THIS substitution not fail, otherwise there will be an
# infinite loop - it is caught, but does not yield a particularly
# helpful message, nor will it impress the users.)
# This +++ message works with the other messages marked "See (+++)".
#
#       $File_Name      The filename containg the message
#       $Line_Number    The line number of the message
#       $Name           The name of the offending substitution.
#       $Message        What was wrong with it.
#
#: libaegis/sub.cc:502 libaegis/sub.cc:525
msgid "$filename: $linenumber: substitution $${$name} failed: $message"
msgstr ""
"$filename: $linenumber: hàm thay thế $${$name} không thành công: $message"

#
# This error message is issued when a substitution function is formed
# incorrectly.  See (+++) above.
#
#       $File_Name      The filename containg the message
#       $Line_Number    The line number of the message
#
#: libaegis/sub.cc:878
msgid "$filename: $linenumber: unterminated $${} \\ sequence"
msgstr "$filename: $linenumber: dãy $${} \\ chưa chấm dứt"

#
# This error message is issued when a substitution function is formed
# incorrectly.  See (+++) above.
#
#       $File_Name      The filename containg the message
#       $Line_Number    The line number of the message
#
#: libaegis/sub.cc:839
msgid "$filename: $linenumber: unterminated $${} quotes"
msgstr "$filename: $linenumber: dấu trích dẫn $${} chưa chấm dứt"

#
# This error message is issued when a substitution function is formed
# incorrectly.  See (+++) above.
#
#: libaegis/sub.cc:806
msgid "$filename: $linenumber: unterminated $${} substitution"
msgstr "$filename: $linenumber: hàm thay thế $${} chưa chấm dứt"

#
# This error message is issued when a generic error in a text file is required.
#
#       $File_Name      The name of the file being read or parsed.
#       $Message        The error message, formed previously.
#
#: aeimport/format/rcs/lex.cc:113 aeimport/format/sccs/lex.cc:69
#: libaegis/aer/pos.cc:124 libaegis/input/fatal_error.cc:31
#: libaegis/meta_lex.cc:701 libaegis/xmltextread.cc:151
#: libaegis/xmltextread.cc:210 libaegis/xmltextread.cc:263
msgid "$filename: $message"
msgstr "$filename: $message"

#
# This error message is issued when the project configuration file specifies
# architecture variants incompletely.
#
#       $File_Name      The name of the offending file
#
#: libaegis/change/pconf/get.cc:811
msgid "$filename: arch needs name and pattern"
msgstr "$filename: kiến trúc phải được ghi rõ theo cả hai tên và mẫu"

#
# This error message is issued when a aede-policy's white-space
# policy finds blank lines at the end of a file.
#
#       $File_Name      The name of the offending file.
#       $Number         The number of blank lines (optional)
#
#: aede-policy/validation/files/white_space.cc:134
msgid "$filename: blank lines at end of file"
msgstr "$filename: có dòng trắng ở kết thúc của tập tin"

#
# This error message is issued when aesvt is checking a file checksum,
# and finds something incorrect.
#
#       $File_Name      The name of the offending file.
#       $Number1        The checksum in the history header.
#       $Number2        The checksum calculated when reading the data.
#
#: libaegis/input/verify_check.cc:62
msgid "$filename: checksum mismatch ($number1 != $number2)"
msgstr "$filename: sai khớp tổng kiểm ($number1 != $number2)"

#
# This error message is issued when an Aegis database file is missing a
# field which should be present.
#
#       $File_Name      The name of the offending file, usually an
#                       absolute path, but not always.
#       $FieLD_Name     The name of the absent field.
#
#: libaegis/attrlistveri.cc:47 libaegis/attrlistveri.cc:62
#: libaegis/change/attributes/verify.cc:36
#: libaegis/change/attributes/verify.cc:47
#: libaegis/change/build/run_dev_com.cc:53
#: libaegis/change/build/run_int_com.cc:54 libaegis/change/cstate/get.cc:204
#: libaegis/change/cstate/get.cc:223 libaegis/change/cstate/get.cc:242
#: libaegis/change/diff/run_diff.cc:106 libaegis/change/diff/run_diff3.cc:93
#: libaegis/change/diff/run_merge.cc:93 libaegis/change/file/fstate.cc:168
#: libaegis/change/file/fstate.cc:185 libaegis/change/file/fstate.cc:202
#: libaegis/change/history/create_comma.cc:140
#: libaegis/change/history/get_command.cc:115
#: libaegis/change/history/put_command.cc:135
#: libaegis/change/history/query_comman.cc:72 libaegis/change/pconf/get.cc:61
#: libaegis/change/pconf/get.cc:156 libaegis/change/pconf/get.cc:173
#: libaegis/change/pconf/get.cc:188 libaegis/change/pconf/get.cc:203
#: libaegis/change/pconf/get.cc:218 libaegis/change/pconf/get.cc:250
#: libaegis/change/pconf/get.cc:265
msgid "$filename: contains no \"$field_name\" field"
msgstr "$filename: không chứa trường « $field_name »"

#
# This error message is issued by aede-policy when a change file
# contains tab characters.
#
#       $File_Name      The name of the offending file.
#
#: aede-policy/validation/files/no_tabs.cc:132
msgid "$filename: contains tab characters"
msgstr "$filename: chứa ký tự tab"

#
# This error message is issued when an Aegis database file has an
# illegal (impossible) value in a field.
#
#       $File_Name      The name of the offending file, usually an
#                       absolute path, but not always.
#       $FieLD_Name     The name of the absent field.
#
#: aegis/aeip.cc:1537 libaegis/change/cstate/get.cc:79
#: libaegis/change/cstate/get.cc:155 libaegis/change/cstate/get.cc:169
#: libaegis/change/cstate/get.cc:183 libaegis/change/file/metrics/get.cc:40
#: libaegis/change/file/metrics/get.cc:52 libaegis/change/pconf/get.cc:280
#: libaegis/change/test/batch.cc:272 libaegis/change/test/batch.cc:302
#: libaegis/change/test/batch.cc:327 libaegis/project.cc:254
#: libaegis/project/pstate/get.cc:65
msgid "$filename: corrupted \"$field_name\" field"
msgstr "$filename: trường « $field_name » bị hỏng"

#
# This error message is issued when aede-policy detects a file isung DOS
# line termination when it must use UNIX line termination.
#
#       $File_Name      The offending file.
#
#: aede-policy/validation/files/crlf.cc:79
msgid "$filename: dos line termination"
msgstr "$filename: kết thúc dòng kiểu DOS"

#
# This warning is issued when an obsolete field is used.
#
#      $Name1          The name of the obsolete field.
#      $Name2          The name of the preferred field.
#
#: libaegis/change/warning_obso.cc:36
msgid "$filename: field \"$name1\" obsolete, use \"$name2\" instead"
msgstr "$filename: trường « $name1 » quá cũ, thay thế bằng « $name2 »"

#
# This fatal error message is issued when Aegis is checking a project's
# ownership and finds something incorrect.
#
#: libaegis/project/owner/get.cc:93
msgid "$filename: gid $number1 invalid, must be >= $number2"
msgstr ""
"$filename: tập tin này có GID (mã số nhóm) quá nhỏ ($number1), nó phải lớn "
"hơn hay bằng AEGIS_MIN_GID ($number2). Rất có thể là kết quả của vấn đề khi "
"phục hồi từ bản sao lưu. Hãy dùng lệnh « chgrp -R <tên_nhóm> $filename » để "
"giải quyết trường hợp này, cho một tên nhóm thích hợp nào đó. [Bạn cần phải "
"là người chủ (root).]"

#
# This error message is issued when Aegis is checking a file's group,
# and finds something incorrect.
#
#       $File_Name      The name of the offending file.
#       $Number1        The file's gid.
#       $Number2        What Aegis expected as the file's gid.
#
#: libaegis/os/become.cc:194
msgid "$filename: group is $number1, should be $number2"
msgstr "$filename: nhóm là $number1, nên là $number2"

#
# This error message is issued when Aegis is checking a file,
# and found 1 or more things incorrect.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/os/become.cc:214
msgid "$filename: has been tampered with (fatal)"
msgstr "$filename: bị giả mạo (nghiêm trọng)"

#
# This error message is issued when a file parse fails.  Errors are
# printed out as they are found, but frequently errors happen together,
# so as many as possible are found before aborting.  This
# error is emitted when it aborts.
#
#       $File_Name      The name of the file being read or parsed.
#       $Number         Number of fatal errors found.
#                       (Optional)
#
#: libaegis/aer/lex.cc:174 libaegis/meta_lex.cc:114
#: libaegis/xmltextread.cc:112 libaegis/xmltextread.cc:200
msgid "$filename: has errors"
msgstr "$filename: tìm $number lỗi nghiêm trọng"

#
# This error message is issued when aede-policy detects a binary file,
# and you have specified a policy whis disallows such files.
#
#       $File_Name      The offending file name.
#
#: aede-policy/validation/files/printable.cc:106
#: aede-policy/validation/files/printable.cc:124
#: aede-policy/validation/files/text.cc:77
msgid "$filename: is binary"
msgstr "$filename: là nhị phân"

#
# This error message is issued when aede-policy detects unprintable
# (non-ASCII) characters in a file, and you have specified a policy whis
# disallows such files.
#
#       $File_Name      The offending file name.
#       $Number         The line number (optional)
#
#: aede-policy/validation/files/printable.cc:136
msgid "$filename: is unprintable"
msgstr "$filename: không thể in được"

#
# This error message is issued by aesvt when the file header within a
# history file is not in a legal RFC822 format.
#
#       $File_Name      The offending file name.
#
#: libaegis/rfc822.cc:457
msgid "$filename: malformed RFC 822 header line"
msgstr "$filename: dòng phần đầu RFC 822 dạng sai"

#
# This error message is issued by aede-policy when it detects that text
# file merge conflict artifacts remain in a source file.
#
#       $File_Name      The offending file name.
#
#: aede-policy/validation/files/merge-fhist.cc:70
#: aede-policy/validation/files/merge-rcs.cc:70
msgid "$filename: merge conflicts"
msgstr "$filename: trộn thì xung đột"

#
# This error message is issued when Aegis is checking a file's modes,
# and finds something incorrect.
#
#       $File_Name      The name of the offending file.
#       $Number1        The file's mode.
#       $Number2        What Aegis expected as the file's mode.
#
#: libaegis/os/become.cc:136
msgid "$filename: mode is $number1, should be $number2"
msgstr "$filename: chế độ là $number1, nên là $number2"

#
# This error message is issued by the aede-policy command when a file
# does not contain and up-to-date copyright notice.
#
#       $File_Name      The name of the offending file.
#       $Suggest        A suggested text for the missing notice (optional).
#
#: aede-policy/validation/files/copyright.cc:164
msgid "$filename: no current copyright notice"
msgstr ""
"$filename: tập tin không chứa thông báo tác quyền hiện thời; thông báo có "
"dạng « $suggest » là thích hợp."

#
# This fatal error message is issued bu aede-policy when the fsf-address
# policy check finds and out-of-date Free Software Foundation postal
# address in the first few kB of a source file.
#
#       $filename       The name of the offending file
#       $suggest        The correct FSF address (optional).
#
#: aede-policy/validation/files/fsf_address.cc:289
msgid "$filename: old FSF address"
msgstr "$filename: địa chỉ Tổ chức Phần mềm Tự do cũ"

#
# This fatal error message is issued bu aede-policy when the gpl-version
# policy check finds and out-of-date GNU GPL version number in the first
# few kB of a source file.
#
#       $filename       The name of the offending file
#       $suggest        The correct GPL version (optional).
#
#: aede-policy/validation/files/gpl-version.cc:279
msgid "$filename: old GPL version"
msgstr "$filename: phiên bản Giấy Phép Công Cộng GNU cũ"

#
# This error message is issued when Aegis is checking a file's owner,
# and finds something incorrect.
#
#       $File_Name      The name of the offending file.
#       $Number1        The file's uid.
#       $Number2        What Aegis expected as the file's uid.
#
#: libaegis/os/become.cc:156 libaegis/os/become.cc:178
#: libaegis/project/bind/keep.cc:58
msgid "$filename: owner is $number1, should be $number2"
msgstr "$filename: chủ sở hữu là $number1, nên là $number2"

#
# This error message is issued when a text file contains too many errors
# and the parse has been aborted.
#
#       $File_Name      The name of the file being read or parsed.
#
#: aeimport/format/rcs/lex.cc:120 aeimport/format/sccs/lex.cc:76
#: libaegis/aer/lex.cc:789 libaegis/aer/lex.cc:809 libaegis/meta_lex.cc:707
msgid "$filename: too many errors"
msgstr "$filename: quá nhiều lỗi nghiêm trọng nên hủy bỏ"

#
# This fatal error message is issued when Aegis is checking a project's
# ownership and finds something incorrect.
#
#: libaegis/project/owner/get.cc:77
msgid "$filename: uid $number1 invalid, must be >= $number2"
msgstr ""
"$filename: tập tin này có UID (mã số người dùng) quá nhỏ ($number1), nó phải "
"lớn hơn hay bằng AEGIS_MIN_UID ($number2). Rất có thể là kết quả của vấn đề "
"khi phục hồi từ bản sao lưu. Hãy dùng lệnh « chgrp -R <tên_người_dùng> "
"$filename » để giải quyết trường hợp này, cho một tên người dùng thích hợp "
"nào đó. [Bạn cần phải là người chủ (root).]"

#
# This fatal error message is issued by the aesvt -checkin command if
# the history file already contains a particular version.
#
#       $File_Name      the offending filename
#       $Number         the offending version number
#
#: libaegis/simpverstool/checkin.cc:135
msgid "$filename: version $number already exists"
msgstr "$filename: phiên bản $number đã có"

#
# This error message is issued when aesvt -checkin finds an
# inappropriate user-specified version number.
#
#       $File_Name      the history file name
#       $Number         the offending version number
#
#: libaegis/simpverstool/checkin.cc:89
msgid "$filename: version $number invalid"
msgstr "$filename: phiên bản $number không hợp lệ"

#
# This error message is issued when aesvt -checkout cannot find a
# version in the history files.
#
#       $File_Name      The name of the history file.
#       $Number         the offending version number
#
#: libaegis/input/svt_checkout.cc:87
msgid "$filename: version $number not found"
msgstr "$filename: không tìm thấy phiên bản $number"

#
# This error message is issued when an aede-policy's white space
# policy detects white space on the end of a line.
#
#       $File_Name      The name of the offending file (includes line number).
#
#: aede-policy/validation/files/white_space.cc:107
msgid "$filename: white space at end of line"
msgstr "$filename: có khoảng trắng ở kết thúc dòng"

#
# This error message is issued when a generic error in a function is required.
#
#       $Function       The name of the function being performed.
#       $Number         The line number on which the error occurred.
#       $Message        The error message, formed previously.
#
#: libaegis/aer/func/substitute.cc:199
msgid "$function: argument $number: $message"
msgstr "$function: đối số $number: $message"

#
# This error message is issued when the user requests to print a value
# which is unprintable.  It could be a structure or a list, etc.
#
#       $Function       The name of the function
#       $Number         The argument number
#
#: libaegis/aer/func/gettime.cc:126
msgid "$function: argument $number: cannot convert string into a time"
msgstr ""
"$function: đối số $number: không thể chuyển đổi chuỗi sang một thời gian nào "
"đó"

#
# This error message is issued when the sprintf function is
# given an argument of the wrong type, when an integer was expected.
#
#       $Function       The name of the function being called.
#       $Name           The type name of the offending argument.
#       $Number         The number of the offending argument (starts at 1).
#
#: libaegis/aer/func/sprintf.cc:209 libaegis/aer/func/substitute.cc:173
#: libaegis/aer/func/substr.cc:111 libaegis/aer/func/substr.cc:133
#: libaegis/aer/func/wrap.cc:113 libaegis/aer/func/wrap.cc:273
msgid "$function: argument $number: integer value required (was given $name)"
msgstr "$function: đối số $number: cần thiết giá trị số nguyên (đã cho $name)"

#
# This error message is issued when sprintf is given a precision in a
# format specifier which is too large.
#
#       $Function       The name of the function being called.
#       $Number         The number of the offending argument.
#       $Value          The value of the offending precision.
#
#: libaegis/aer/func/sprintf.cc:440 libaegis/aer/func/sprintf.cc:493
msgid "$function: argument $number: precision of $value is out of range"
msgstr "$function: đối số $number: độ chính xác của $value ở ngoại phạm vi"

#
# This error message is issued when the sprintf function is
# given an argument of the wrong type, when a real was expected.
#
#       $Function       The name of the function being called.
#       $Name           The type name of the offending argument.
#       $Number         The number of the offending argument (starts at 1).
#
#: libaegis/aer/func/round.cc:91 libaegis/aer/func/round.cc:164
#: libaegis/aer/func/round.cc:237 libaegis/aer/func/round.cc:310
#: libaegis/aer/func/sprintf.cc:235
msgid "$function: argument $number: real value required (was given $name)"
msgstr "$function: đối số $number: cần thiết giá trị thật (đã cho $name)"

#
# This error message is issued when a function is
# given an argument of the wrong type.
#
#       $Function       The name of the function being called.
#       $Number         The number of the offending argument (starts at 1).
#       $Name           The type name of the offending argument.
#
#: aefind/function/stat.cc:84 aefind/function/stat.cc:168
#: aefind/function/stat.cc:253 aefind/function/stat.cc:338
#: aefind/function/stat.cc:423 aefind/function/stat.cc:508
#: aefind/function/stat.cc:593 aefind/function/stat.cc:678
#: aefind/function/stat.cc:763 aefind/function/stat.cc:848
#: libaegis/aer/func/capitalize.cc:89 libaegis/aer/func/dirname.cc:90
#: libaegis/aer/func/dirname.cc:169 libaegis/aer/func/downcase.cc:89
#: libaegis/aer/func/getenv.cc:93 libaegis/aer/func/gettime.cc:104
#: libaegis/aer/func/length.cc:88 libaegis/aer/func/mtime.cc:99
#: libaegis/aer/func/quote.cc:89 libaegis/aer/func/quote.cc:157
#: libaegis/aer/func/quote.cc:232 libaegis/aer/func/quote.cc:307
#: libaegis/aer/func/split.cc:90 libaegis/aer/func/split.cc:111
#: libaegis/aer/func/sprintf.cc:173 libaegis/aer/func/strftime.cc:91
#: libaegis/aer/func/substitute.cc:95 libaegis/aer/func/substitute.cc:120
#: libaegis/aer/func/substitute.cc:145 libaegis/aer/func/substr.cc:89
#: libaegis/aer/func/upcase.cc:89 libaegis/aer/func/wrap.cc:92
#: libaegis/aer/func/wrap.cc:252
msgid "$function: argument $number: string value required (was given $name)"
msgstr "$function: đối số $number: cần thiết giá trị chuỗi (đã cho $name)"

#
# This error message is issued when a function is not
# given a time type as an argument.
#
#       $Function       The name of the function being called.
#       $Name           The type name of the offending argument.
#       $Number         The number of the offending argument (starts at 1).
#
#: libaegis/aer/func/now.cc:213 libaegis/aer/func/now.cc:232
#: libaegis/aer/func/strftime.cc:115
msgid "$function: argument $number: time value required (was given $name)"
msgstr "$function: đối số $number: cần thiết giá trị thời gian (đã cho $name)"

#
# This error message is issued when the user requests to print a value
# which is unprintable.  It could be a structure or a list, etc.
#
#       $Function       The name of the function
#       $Number         The argument number
#       $Name           The type name of the offending argument.
#
#: libaegis/aer/func/print.cc:148 libaegis/aer/func/title.cc:94
#: libaegis/aer/func/title.cc:120
msgid "$function: argument $number: unable to print $name value"
msgstr "$function: đối số $number: không thể in giá trị $name"

#
# This error message is issued when sprintf is given a print width in a
# format specifier which is too wide.
#
#       $Function       The name of the function being called.
#       $Number         The number of the offending argument.
#       $Value          The value of the offending width.
#
#: libaegis/aer/func/sprintf.cc:339 libaegis/aer/func/sprintf.cc:393
#: libaegis/aer/func/wrap.cc:130 libaegis/aer/func/wrap.cc:291
msgid "$function: argument $number: width $value out of range"
msgstr "$function: đối số $number: độ rộng $value ở ngoại phạm vi"

#
# This error message is issued when a function result is too large for
# an internal buffer.
#
#       $Function       The name of the function being called.
#
#: libaegis/aer/func/strftime.cc:130
msgid "$function: result too long"
msgstr "$function: kết quả quá dài"

#
# This error message is issued when a function is called with
# too few arguments.
#
#       $Function       The name of the function being called.
#
#: libaegis/aer/func/sprintf.cc:148
msgid "$function: too few arguments"
msgstr "$function: quá ít đối số"

#
# This error message is issued when a function is given too many arguments.
#
#       $Function       The name of the function being called.
#       $Number1        The number of arguments given to the function call.
#       $Number2        The number of arguments used by the format.
#
#: libaegis/aer/func/print.cc:110 libaegis/aer/func/sprintf.cc:689
msgid "$function: too many arguments ($number1 given, only $number2 used)"
msgstr "$function: quá nhiều đối số ($number1 đưa ra, chỉ $number2 được dùng)"

#
# This error message is issued when sprintf is given an unknown format
# specifier.
#
#       $Function       The name of the function being called.
#       $Name           The offending format character.
#
#: libaegis/aer/func/sprintf.cc:535
msgid "$function: unknown format specifier '$name'"
msgstr "$function: không rõ chỉ thị định dạng « $name »"

#
# This is a generic "echo me" format string.
#
#       $Message        The message to be issued.
#
#: aefind/cmdline.y:203 aegis/aede.cc:504 aegis/aenf.cc:580 aegis/aent.cc:553
#: libaegis/aer/value/error.cc:99 libaegis/aer/value/error.cc:101
#: libaegis/change/error.cc:57 libaegis/change/fatal.cc:57
#: libaegis/change/verbose.cc:57 libaegis/change/warning.cc:65
#: libaegis/os/execute_retc.cc:213 libaegis/undo/item/message.cc:40
msgid "$message"
msgstr "$message"

#
# This error message is issued when a command line option requires a
# small positive integer as its argument, and has been given a negative
# number or zero.
#
#       $Name           The name of the offending option.
#       $Number         The value given to the option.
#
#: aegis/aet.cc:569 aegis/aet.cc:617
msgid "$name $number must be pos"
msgstr ""
"tùy chọn $name $number ở ngoại phạm vi, tùy chọn $name cần thiết đối số là "
"số nguyên dương nhỏ"

#
# This error message is issued when a command line option requires a
# non-negative integer as its argument, and has been given a negative
# number.
#
#       $Name           The name of the offending option.
#       $Number         The value given to the option.
#
#: aegis/aet.cc:591
msgid "$name $number must not be neg"
msgstr ""
"tùy chọn $name $number ở ngoại phạm vi, tùy chọn $name cần thiết đối số là "
"số nguyên dương nhỏ hay số không"

#
# This error message is issued when aena is asked to add an
# administrator to a project, but the user is already an administrator.
#
#       $Name           The offending user name.
#
#: aegis/aena.cc:125
msgid "$name already administrator"
msgstr "người dùng « $name » đã là quản trị viên"

#
# This error message is issued when aena is asked to add a
# developer to a project, but the user is already an developer.
#
#       $Name           The offending user name.
#
#: aegis/aend.cc:125
msgid "$name already developer"
msgstr "người dùng « $name » đã là nhà phát triển"

#
# This error message is issued when aena is asked to add an
# integrator to a project, but the user is already an integrator.
#
#       $Name           The offending user name.
#
#: aegis/aeni.cc:125
msgid "$name already integrator"
msgstr "người dùng « $name » đã đã người hợp nhất"

#
# This error message is issued when aena is asked to add a
# reviewer to a project, but the user is already an reviewer.
#
#       $Name           The offending user name.
#
#: aegis/aenrv.cc:125
msgid "$name already reviewer"
msgstr "người dùng « $name » đã là người xem lại"

#
# This fatal error message is issued when a lock is not available.
#
#: libaegis/lock.cc:807 libaegis/lock.cc:821
msgid "$name lock not available"
msgstr "khoá $name không sẵn sàng"

#
# This error message is issued when an option which should be followed
# by a directory name, is not followed by any.
#
#       $Name           The name of the offending option.
#
#: libaegis/help.cc:410
msgid "$name needs dir"
msgstr "tùy chọn $name phải có đường dẫn thư mục theo sau"

#
# This error message is issued when an option which should be followed
# by one file name, is not followed by any.
#
#       $Name           The name of the offending option.
#
#: libaegis/help.cc:398
msgid "$name needs file"
msgstr "tùy chọn $name phải có tên tập tin theo sau"

#
# This error message is issued when an option which should be followed
# by one or more file names, is not followed by any.
#
#       $Name           The name of the offending option.
#
#: libaegis/help.cc:422
msgid "$name needs files"
msgstr "tùy chọn $name phải có một hay nhiều tên tập tin theo sau"

#
# This error message is issued when an option which should be followed
# by a name is not.
#
#       $Name           The name of the offending option.
#
#: libaegis/help.cc:386
msgid "$name needs name"
msgstr "tùy chọn $name phải có một tên theo sau"

#
# This error message is issued when an option which should be followed
# by a number is not.
#
#       $Name           The name of the offending option.
#
#: libaegis/help.cc:362
msgid "$name needs number"
msgstr "tùy chọn $name phải có một con số theo sau"

#
# This error message is issued when an option which should be followed
# by a string is not.
#
#       $Name           The name of the offending option.
#
#: libaegis/help.cc:374
msgid "$name needs string"
msgstr "tùy chọn $name phải có một chuỗi theo sau"

#
# This format string is used to glue together the last two items in the
# architecture names list.
#
#       $Name1          a quoted architecture name
#       $Name2          a quoted architecture name
#
#: libaegis/change/outstanding.cc:58
msgid "$name1 and $name2"
msgstr "$name1 và $name2"

#
# This error message is issued when an option which needs to be
# accompanied by another option, but that option is not present.
#
#       $Name1          The name of the offending option.
#       $Name2          The name of the offending option.
#
#: aegis/aecp.cc:1093
msgid "$name1 needs $name2"
msgstr "tùy chọn $name1 phải cùng với tùy chọn $name2"

#
# This format string is used to glue together two items in the
# architecture names list.  Not used for the last two.
#
#       $Name1          a quoted architecture name
#       $Name2          a quoted architecture name
#
#: libaegis/change/outstanding.cc:60
msgid "$name1, $name2"
msgstr "$name1, $name2"

#
# This error message is issued when an aechown command attempts to
# change the ownership of a change to a user who is not a developer.
#
#       $Target         The login name of the non-developer.
#
#: aegis/aechown.cc:189
msgid "$target not developer"
msgstr "người dùng « $target » không phải là nhà phát triển"

#
# This error message is issued a power returns an error.
# The error will be EDOM or ERANGE.
#
#       $Value1         The value of the left operand.
#       $Value2         The value of the right operand.
#
#: libaegis/aer/expr/power.cc:141
msgid "$value1 ** $value2: $errno"
msgstr "$value1 ** $value2: $errno"

#
# This warning message is issued when the -TRace option is used on a
# version of Aegis compiled without the DEBUG define in common/main.h
# turned on.
#
#: aefind/cmdline.y:1131 libaegis/help.cc:246
msgid "-TRace needs DEBUG"
msgstr ""
"Cảnh báo : tùy chọn « -TRace » chỉ có hiệu quả hi Aegis được biên dịch bằng "
"lời xác định DEBUG (gỡ lỗi) trong tập tin bao gồm « common/main.h »."

#
# This error message is issued when Aegis is misconfigured.
#
#       $Number1        the current AEGIS_USER_GID setting
#       $Number2        the current AEGIS_MIN_GID setting
#
#: libaegis/gonzo.cc:99
msgid "AEGIS_USER_GID ($number1) vs AEGIS_MIN_GID ($number2) misconfigured"
msgstr ""
"Chương trình này có cấu hình sai. Mã số nhóm của người dùng Aegis "
"(AEGIS_USER_GID), hiện thời xác định là $number1, phải nhỏ hơn mã số nhóm "
"tối thiểu (AEGIS_MIN_GID), hiện thời xác định là $number2. Quan trọng là "
"AEGIS_USER_GID không có khả năng sở hữu dự án. Đây là một lỗi nghiêm trọng."

#
# This error message is issued when Aegis is misconfigured.
#
#       $Number1        the current AEGIS_USER_UID setting
#       $Number2        the current AEGIS_MIN_UID setting
#
#: libaegis/gonzo.cc:84
msgid "AEGIS_USER_UID ($number1) vs AEGIS_MIN_UID ($number2) misconfigured"
msgstr ""
"Chương trình này có cấu hình sai. Mã số người dùng của người dùng Aegis "
"(AEGIS_USER_UID), hiện thời xác định là $number1, phải nhỏ hơn mã số người "
"dùng tối thiểu (AEGIS_MIN_UID), hiện thời xác định là $number2. Quan trọng "
"là AEGIS_USER_UID không có khả năng sở hữu dự án. Đây là một lỗi nghiêm "
"trọng."

#
# This text is used to describe change 1 of a new release.
#
#       $Name           The name of the old project.
#
#: aegis/aenrls.cc:754
msgid "New release derived from $name."
msgstr "Bản phát hành mới bắt nguồn từ $name."

#
# This text is used when a project name is inserted at the top of a file
# or listing.  Usually in the C locale, so avoid non-ascii characters if
# at all possible.
#
#       $Name           The name of a project.
#
#: aegis/aenc.cc:384
msgid "Project $name"
msgstr "Dự án « $name »"

#
# This text is used when a project name and change number are inserted
# at the top of a file or listing.  Usually in the C locale, so avoid
# non-ascii characters if at all possible.
#
#       $Name           The name of a project.
#       $Number         The number of a change.
#
#: aegis/aeca.cc:705
msgid "Project $name, Change $number"
msgstr "Dự án « $name », Thay đổi $number"

#
# This text is used when a project name, change number and file name are
# inserted at the top of a file or listing.  Usually in the C locale,
# so avoid non-ascii characters if at all possible.
#
#       $Name           The name of a project.
#       $Number         The number of a change.
#       $File_Name      The name of the file.
#
#: aegis/aefa.cc:604
msgid "Project $name, Change $number, File $filename"
msgstr "Dự án « $name », Thay đổi $number, Tập tin « $filename »"

#
# This error message is issued when the ${read_file} substitution is
# called incorrectly.  See (+++) above.
#
#: libaegis/sub/read_file.cc:62
msgid "absolute path required"
msgstr "cần thiết đường dẫn tuyệt đối"

#
# This verbose message is issued when aeipass is updating the modification
# times of all the files in the integration directory.
#
#: aegis/aeip.cc:2070
msgid "adjust file modification times"
msgstr "đang điều chỉnh các giờ sửa đổi tập tin"

#
# This error message is issued when a project administrator attempts to
# use aedbu on a change which has files.  The expected used of aedbu by
# an administrator is to undo a forced aedb; thus if the change has been
# worked on at all, this is probably not a good idea.
#
#: aegis/aedbu.cc:218
msgid "aedbu, has files"
msgstr ""
"thay đổi này có một số tập tin liên quan, nhưng bạn chỉ có thể dùng lệnh này "
"với thay đổi không có tập tin liên quan"

#
# This error message is issued when the aegis -new-project command is
# given the -keep option without the -directory option.  It doesn't know
# what to keep.
#
#: aegis/aenpr.cc:544
msgid "aenpr -keep needs -dir"
msgstr ""
"tùy chọn « -New-PRoject » « -Keep » của Aegis cũng cần thiết tùy chọn « -"
"DIRectory »"

#
# This fatal error message is issued if it appears that there is a
# reference loop of project aliases.
#
#: libaegis/project/bind/existing.cc:152
msgid "alias loop detected"
msgstr "phát hiện vòng lặp bí danh"

#
# This error messages is issued when a user attempts to create a new
# test, and all the test numbers appear to have been consumed.  This error
# message should be impossible.
#
#: aegis/aent.cc:479
msgid "all test numbers used"
msgstr "có vẻ là tất cả các con số thử đã được tiêu dùng"

#
# This error message is issued when an unknown substitution is
# referenced.  See (+++) above.
#
#: libaegis/sub.cc:515
msgid "ambiguous substitution name"
msgstr "tên thay thế mơ hồ"

#
# This progress message is issued when an 'aegis -diff -anticipate'
# command completes successfully.
#
#: aegis/aed.cc:508
msgid "anticipated merge complete"
msgstr "tiến trình trộn đã dự tính đã chạy xong"

#
# This information message is issued when Aegis appends the log to an
# existing log file.
#
#       $File_Name      The name of the log file.
#
#: libaegis/log.cc:283
msgid "appending log to $filename"
msgstr "đang phụ thêm bản ghi vào « $filename »"

#
# This progress message is issued when aeib copies the source files form
# the development directory into the integration directory.
#
#: aegis/aeib.cc:1158
msgid "apply change to integration directory"
msgstr "đang áp dụng thay đổi cho thư mục hợp nhất"

#
# This fatal error message is issued when Aegis determines that the
# architecture it is currently running on is forbidden by the (5)
# architecture field of the project configuration file.
#
#       $Name           The offending architecture name.
#
#: libaegis/change/architecture/check.cc:66
#: libaegis/change/architecture/name.cc:81
msgid "architecture \"$name\" forbidden"
msgstr ""
"kiến trúc « $name » bị cấm nên bạn không thể thực hiện lệnh này trên máy này"

#
# This error message is issued when Aegis is unable to determine which
# architecture it is currently running on.  This means that the
# architecture does not match any of the architecture patterns specified
# in the project configuration file.
#
#       $Name           The offending architecture name.
#
#: libaegis/change/architecture/name.cc:97
msgid "architecture \"$name\" unknown"
msgstr "kiến trúc « $name » không rõ"

#
# This error message is issued when an architecture appears in the list
# of architectures the change must apply to, but that architecture name
# is not present in the project's architecture list in the project
# configuration file.
#
#       $Name           The name of the offending architecture.
#
#: libaegis/change/architecture/check.cc:81
msgid "architecture \"$name\" unlisted"
msgstr ""
"kiến trúc « $name » xuất hiện trong danh sách các thuộc tính thay đổi, nhưng "
"không nằm trong tập tin cấu hình dự án"

#
# This fatal error message is issued when a file ches size while the
# archive is being constructed.
#
#       $File_Name      The name of the offending file.
#
#: aetar/output/tar_child.cc:98 libaegis/output/cpio_child.cc:84
msgid "archive member $filename changed size"
msgstr ""
"thành phần kho $filename đã thay đổi kích cỡ trong khi xử lý nên kết quả bị "
"hỏng"

#
# This message is issued when an inappropriate -- is attempted.
#
#       $Name           The type name of the offending operand.
#
#: libaegis/aer/expr/incr.cc:178 libaegis/aer/expr/incr.cc:331
msgid "arithmetic type required for decrement (was given $name)"
msgstr "kiểu số học cần thiết cho hàm giảm dần (đã cho $name)"

#
# This message is issued when an inappropriate ++ is attempted.
#
#       $Name           The type name of the offending operand.
#
#: libaegis/aer/expr/incr.cc:100 libaegis/aer/expr/incr.cc:256
msgid "arithmetic type required for increment (was given $name)"
msgstr "kiểu số học cần thiết cho hàm tăng dần (đã cho $name)"

#
# This fatal error message is issued when a user-supplied string can't
# be interpreted as an attribute name.
#
#       $Name           The offending attribute name.
#
#: aelock/lock.cc:92
msgid "attribute $name unknown"
msgstr "không rõ thuộc tính $name"

#
# This message is issued when an aeca is successfully completed.
#
#: aegis/aeca.cc:455 aegis/aeca.cc:991
msgid "attributes changed"
msgstr "thuộc tính bị sửa đổi"

#
# This error message is issued when an aenc command or aeca command
# fails, to inform the user where s/he may find the text of failed
# attributes file.
#
#       $File_Name      The absolute path of the file containing the
#                       offending attributes text file.
#
#: aegis/aefa.cc:331 libaegis/change/attributes/edit.cc:50
#: libaegis/project/pattr/edit.cc:51
msgid "attributes in $filename"
msgstr "chuỗi thuộc tính còn lại trong tập tin « $filename »"

#
# This error message is issued when the change is not in a suitable state
# to search within for files.
#
#: aefind/cmdline.y:433
msgid "bad aefind state"
msgstr ""
"thay đổi này ở tình trạng « $state », nhưng nó phải ở tình trạng « đang được "
"phát triển » để đi qua cây thư mục của nó"

#
# This fatal error message sis issued when the aels command is used on
# a change which is in the `aewaiting development' state.
#
#: aels/main.cc:316
msgid "bad aels state"
msgstr ""
"thay đổi này ở tình trạng « $state », nhưng nó phải ở tình trạng « đang được "
"phát triển » để liệt kê thông tin về tập tin"

#
# This error message is issued when a project alias is given to aenpa
# which contains unprintable characters or spaces, or looks like a
# branch specifier.
#
#       $Name           The offending project alias.
#
#: aegis/aenpa.cc:153
msgid "bad alias $name"
msgstr "bí danh dự án « $name » không hợp lệ"

#
# This error message is issued when an attempt is made to difference
# against a change which is in an inappropriate state.
#
#: aegis/aed.cc:173
msgid "bad anticipate diff"
msgstr ""
"thay đổi này ở tình trạng « $state », nhưng nó phải ở một của những tình "
"trạng « đang được xem lại », « đợi hợp nhất » hay « đang được hợp nhất » để "
"được trông chờ"

#
# This error message is issued when a user requests a build of a branch
# which is in the 'being developed' state.
#
#: aegis/aeb.cc:251
msgid "bad branch build"
msgstr ""
"nhánh này không thể được xây dựng trực tiếp ở tình trạng « $state »: nó phải "
"ở tình trạng « đang được hợp nhất » để làm như thế"

#
# This error message is issued when an attempt is made to copy files
# directly into a branch.  You must use a change on the branch for
# that.
#
#: aegis/aecp.cc:1212 aegis/aemv.cc:454
msgid "bad branch cp"
msgstr ""
"không cho phép bạn sao chép tập tin vào nhánh một cách trực tiếp; bạn phải "
"tạo một thay đổi, để sửa đổi tập tin"

#
# This error message is issued when an aed command is used on a branch
# which is not in the 'being integrated' state.
#
#: aegis/aed.cc:157 aegis/aed.cc:836
msgid "bad branch diff"
msgstr ""
"nhánh này ở tình trạng « $state »; nó phải ở tình trạng « đang được hợp nhất » "
"để chạy tiến trình khác biệt"

#
# This error message is issued when a user requests a build of a branch
# which is in the 'being developed' state.
#
#: aegis/aet.cc:743
msgid "bad branch test"
msgstr ""
"không cho phép thử nhánh này một cách trực tiếp ở tình trạng « $state »; nó "
"phải ở tình trạng « đang được hợp nhất » để làm như thế"

#
# This error message is issued when a user requests a build of a change
# from the wrong state.
#
#: aegis/aeb.cc:246
msgid "bad build state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » hay « đang được hợp nhất » để chạy tiến trình xây dựng"

#
# This error message is issued when a partial integration is requested
# for a change in the 'being integrated' state.
#
#: aegis/aeb.cc:272
msgid "bad build, partial"
msgstr ""
"không cho phép bạn chạy tiến trình xây dựng bộ phận ở tình trạng « $state »"

#
# This error message is issued when a developer who is not an administrator
# attempts to grant an architecture exemption to a change.
#
#: aegis/aeca.cc:916 aegis/aenc.cc:521
msgid "bad ca, no arch exempt"
msgstr "chỉ quản trị dự án có quyền cấp sự miễn kiến trúc"

#
# This error message is issued when a user who is not an administrator
# attempts to grant a test exemption to a change.
#
#: aegis/aeca.cc:855 aegis/aenc.cc:508
msgid "bad ca, no test exempt"
msgstr "chỉ quản trị dự án có quyền miễn hàm thử cho thay đổi"

#
# This error message is issued when a user without sufficient
# authorization attempts to modify a change's attributes.
#
#: aegis/aeca.cc:187 aegis/aeca.cc:369
msgid "bad ca, not auth"
msgstr ""
"người dùng « %user » không có quyền sửa đổi thuộc tính của thay đổi; chỉ quản "
"trị dự án, hoặc nhà phát triển trong khi phát triển, có quyền sửa đổi thuộc "
"tính"

#
# This error message is issued when a user attempts to set change
# attributes to include an architecture not named in the project
# configuration file.
#
#: aegis/aeca.cc:901 aegis/aenc.cc:538
msgid "bad ca, unknown architecture"
msgstr ""
"kiến trúc chứa một số biến đổi không được liệt kê trong tập tin cấu hình của "
"dự án"

#
# This error message is issued when a user attempts to set a change's
# UUID when the change already has a UUID.
#
#: aegis/aeca.cc:378
msgid "bad ca, uuid already set"
msgstr "UUID của thay đổi này đã được đặt"

#
# This error message is issued when a user attempts to set a change's
# UUID and the given UUID has already be used by another change.
#
#       $Other  The version of change using the specified UUID.
#               Optional.
#
#: aegis/aeca.cc:393 aegis/aenf.cc:394 aegis/aent.cc:315
msgid "bad ca, uuid duplicate"
msgstr "UUID đã ghi rõ đang được $other dùng"

#
# This error message is issued when an aecd is requested for a change
# which does not have a directory.
#
#: aegis/aecd.cc:151
msgid "bad cd, no dir"
msgstr "thay đổi này ở tình trạng « $state », không có thư mục có thể tới"

#
# This error message is issued when an attempt is made to change the
# owner of a change, when that change is not in the 'being developed'
# state.
#
#: aegis/aechown.cc:198
msgid "bad chown state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để thay đổi chủ sở hữu"

#
# This error message is issued when an attempt is made to clean a change
# which is not in the 'being developed' state.
#
#: aegis/aeclean.cc:438
msgid "bad clean state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để được làm sạch"

#
# This error message is issued when an attempt is made to copy files
# into a change which is not in the 'being developed' state.
#
#: aegis/aecp.cc:1204
msgid "bad cp state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để dùng khi sửa đổi tập tin"

#
# This error message is issued when an aecpu command is used
# on a file which is not suitable.  (also used by aed -ant)
#
#       $File_Name      The name of the offending file.
#
#: aegis/aecpu.cc:457 aegis/aed.cc:328 aegis/aed.cc:361 aegis/aemtu.cc:441
msgid "bad cp undo $filename"
msgstr ""
"tập tin « $filename » đã không được thêm vào thay đổi này, dùng lệnh « aegis -"
"CoPy_file »"

#
# This error message is issued when an aecpu command is used directly on
# a branch.  Branches may only be altered via a change.
#
#: aegis/aecpu.cc:254 aegis/aemtu.cc:246 aegis/aemvu.cc:235 aegis/aermu.cc:293
msgid "bad cp undo branch"
msgstr ""
"không cho phép bạn gỡ bỏ tập tin khỏi nhánh một cách trực tiếp; bạn phải tạo "
"một thay đổi để gỡ bỏ tập tin"

#
# This error message is issued when the aecpu command is used on a change
# which is not in the 'being developed' state.
#
#: aegis/aecpu.cc:252 aegis/aemtu.cc:244 aegis/aemvu.cc:233
msgid "bad cp undo state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để có khả năng gỡ bỏ khỏi nó một tập tin đã sao chép"

#
# This error message is issued when a file which is already in the
# change is copied into it again.  This is an error unless the
# -OverWriting option is specified.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aecp.cc:1500
msgid "bad cp, file $filename dup"
msgstr ""
"tập tin « $filename » đã trong thay đổi nên không ghi đè lên nó; hãy dùng tùy "
"chọn « -OverWriting » nếu bạn muốn ghi đè lên nó"

#
# This error message is issued when an attempt is made to begin
# development on a change which is not in the 'awaiting development'
# state.
#
#: aegis/aedb.cc:276
msgid "bad db state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đợi phát triển » "
"để bắt đầu tiến trình phát triển"

#
# This error message is issued when aedbu is asked to operate on
# a change which is not in the 'being developed' state.
#
#: aegis/aedbu.cc:198 aegis/aenbru.cc:232
msgid "bad dbu state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để hủy bước bắt đầu phát triển"

#
# This error message is issued when aede is invokes on a change which is
# not in the 'being developed' state.
#
#: aede-policy/policy.cc:117 aegis/aede.cc:240
msgid "bad de state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để kết thúc tiến trình phát triển"

#
# This error message is issued when aedeu is invoked for a change which
# is not in the 'being reviewed' or 'awaiting integration' state.
#
#: aegis/aedeu.cc:243 aegis/aedeu.cc:259
msgid "bad deu state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được xem lại "
"» hay « đợi hợp nhất » để hủy bước kết thúc phát triển"

#
# This error message is issued when an aed command used on a change
# which is not in the 'being developed' state.
#
#: aegis/aed.cc:159
msgid "bad diff state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để chạy tiến trình khác biệt"

#
# This error message is issued when a user without sufficient
# authorization attempts to modify a change file's attributes.
#
#: aegis/aefa.cc:301 aegis/aefa.cc:819 aegis/aefa.cc:846
msgid "bad fa, not auth"
msgstr ""
"người dùng « $user » không có quyền sửa đổi thuộc tính cua thay đổi; chỉ nhà "
"phát triển (trong khi phát triển) có quyền sửa đổi thuộc tính"

#
# This error message is issued when an aeib command is used on a change
# which is not in the 'awaiting integration' state.
#
#: aegis/aeib.cc:863
msgid "bad ib state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đợi hợp nhất » để "
"bắt đầu tiến trình hợp nhất"

#
# This error message is issued when aeibu is used on a change which is
# not in the 'being integrated' state.
#
#: aegis/aeibu.cc:215
msgid "bad ibu state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được hợp "
"nhất » để hủy bước bắt đầu hợp nhất"

#
# This error message is issued when an aed command used on a change
# which is not in the 'being developed' or 'being integrated' state.
#
#: aegis/aed.cc:843
msgid "bad idiff state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » hay « đang được hợp nhất » để chạy tiến trình khác biệt"

#
# This error message is issued when aeifail is invoked for a change which
# is not in the 'being integrated' state.
#
#: aegis/aeif.cc:133
msgid "bad if state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được hợp "
"nhất » để thất bại tiến trình hợp nhất"

#
# This error message is issued when an aeipass command is invoked on a
# change which is not in the 'being integrated' state.
#
#: aegis/aeip.cc:484
msgid "bad ip state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được hợp "
"nhất » để hợp nhất thành công"

#
# This error message is issued when aeipass finds a file which has not been
# built.
#
#       $Outstanding    A list of outstanding architectures to be built,
#                       or empty if all are outstanding.  (Optional)
#
#: aegis/aeip.cc:1225
msgid "bad ip, build required"
msgstr ""
"thay đổi này phải chạy xong thành công một tiến trình xây dựng « aegis -Build "
"» $outstanding trước khi nó có thể hợp nhất thành công"

#
# This error message is issued when aeipass finds a file which has not been
# tested against the baseline.
#
#       $Outstanding    A list of outstanding architectures to be tested,
#                       or empty if all are outstanding.  (Optional)
#
#: aegis/aeip.cc:1257
msgid "bad ip, test -bl required"
msgstr ""
"thay đổi này phải chạy xong thành công một tiến trình kiểm tra đường cơ bản « "
"aegis -Test -BaseLine » $outstanding trước khi nó có thể hợp nhất thành công"

#
# This error message is issued when aeipass finds a file which has not been
# regression tested.
#
#       $Outstanding    A list of outstanding architectures to be tested,
#                       or empty if all are outstanding.  (Optional)
#
#: aegis/aeip.cc:1277
msgid "bad ip, test -reg required"
msgstr ""
"thay đổi này phải chạy xong thành công một tiến trình kiểm tra sự đệ quy « "
"'aegis -Test -REGression » $outstanding trước khi nó có thể hợp nhất thành "
"công"

#
# This error message is issued when aede finds a file which has not been
# tested.
#
#       $Outstanding    A list of outstanding architectures to be tested,
#                       or empty if all are outstanding.  (Optional)
#
#: aegis/aeip.cc:1241
msgid "bad ip, test required"
msgstr ""
"thay đổi này phải chạy xong thành công một tiến trình kiểm tra « aegis -Test "
"» $outstanding trước khi nó có thể hợp nhất thành công"

#
# This error message is issued when aemv is asked to operate on a change
# which is not in the 'being developed' state.
#
#: aegis/aemv.cc:452
msgid "bad mv state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để dùng khi thay đổi tên của tập tin"

#
# This error message is issued when an aemvu command is used
# on a file which is not suitable.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aemvu.cc:425
msgid "bad mv undo $filename"
msgstr ""
"tập tin « $filename » đã không được thêm vào thay đổi này dùng lệnh « 'aegis -"
"MoVe_file »"

#
# This error message is issued when aencu is requested of a change which
# is not in the 'awaiting development' state.
#
#: aegis/aencu.cc:182
msgid "bad ncu state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đợi phát triển » "
"để hủy một bước thay đổi mới"

#
# This error message is issued when aenf is invoked on a branch in the
# 'being developed' state.  You must use a change on the branch for
# that.
#
#: aegis/aemt.cc:291 aegis/aenf.cc:375 aegis/aent.cc:296 aegis/aerm.cc:314
msgid "bad nf branch"
msgstr ""
"không cho phép bạn thêm tập tin vào nhánh một cách trực tiếp; bạn phải tạo "
"một thay đổi để có khả năng tạo tập tin mới"

#
# This error message is issued when aenf is invoked on a change which is
# not in the 'being developed' state.
#
#: aegis/aenf.cc:373
msgid "bad nf state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để dùng khi tạo tập tin mới"

#
# This error message is issued when an aenfu command is used
# on a file which is not suitable.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aenfu.cc:453
msgid "bad nf undo $filename"
msgstr ""
"tập tin « filename » đã không được thêm vào thay đổi này dùng lệnh « aegis -"
"New_File »"

#
# This error message is issued when aenfu is invoked on a branch in the
# 'being developed' state.  You must use a change on the branch for
# that.
#
#: aegis/aenfu.cc:260 aegis/aentu.cc:276
msgid "bad nfu branch"
msgstr ""
"không cho phép bạn gỡ bỏ tập tin khỏi nhánh một cách trực tiếp; bạn phải tạo "
"một thay đổi để có khả năng gỡ bỏ tập tin"

#
# This error message is issued when aenfu is invoked on a change which is
# not in the 'being developed' state.
#
#: aegis/aenfu.cc:258
msgid "bad nfu state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để dùng khi gỡ bỏ tập tin mới"

#
# This error message is issued when aenrls is asked to operate on a
# project which is already in the branch format, dating from aegis.3.0
# onwards.  The New_ReLeaSe command is only used to convert the old
# branch-less style to the new branch style.
#
#: aegis/aenrls.cc:348
msgid "bad nrls, too modern"
msgstr ""
"Lệnh « aegis -New_ReLeaSe » chỉ có thể được dùng để chuyển đổi dự án được tạo "
"bởi aegis phiên bản 2.3 và cũ hơn. Dự án này là mới hơn: hãy dùng lệnh « "
"aegis -New_BRanch » thay vào đó."

#
# This error message is issued when aent is invoked fro a change which
# is not in the 'being developed' state.
#
#: aegis/aent.cc:294
msgid "bad nt state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để dùng khi tạo một hàm thử mới"

#
# This error message is issued when an aentu command is used
# on a file which is not suitable.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aentu.cc:471
msgid "bad nt undo $filename"
msgstr ""
"tập tin « $filename » đã không được thêm vào thay đổi này dùng lệnh « aegis -"
"New_Test »"

#
# This error message is issued when aentu is invoked for a change which
# is not in the 'being developed' state.
#
#: aegis/aentu.cc:274
msgid "bad ntu state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để hủy bước thử mới"

#
# This error message is issued when aepa is given a default development
# directory which is not an absolute path.
#
#: libaegis/project/pattr/set.cc:211
msgid "bad pa, rel def dev dir"
msgstr ""
"thư mục phát triển mặc định phải được ghi rõ theo dạng đường dẫn tuyệt đối"

#
# This fatal error message is issued when a change is not in a suitable
# state from which to make a distribution change set.
#
#: aediff/diff.cc:67 aepatch/send.cc:556 aerevml/send.cc:237
msgid "bad patch send state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng sau hơn để được gửi"

#
# This error message is issued when an illegal filename pattern is specified.
#
#       $File_Name      The offending file name pattern.
#
#: libaegis/change/file/template.cc:56 libaegis/change/file/whiteout.cc:83
msgid "bad pattern $filename"
msgstr "không cho phép dùng mẫu tên tập tin « $filename »"

#
# This error message is issued when a project name is given to aenpr
# which contains unprintable characters or spaces.
#
#       $Name           The offending project name.
#
#: libaegis/help/badprojname.cc:31
msgid "bad project $name"
msgstr "tên dự án « $name » không hợp lệ"

#
# This error message is issued when aerb is invoked for a change which is
# not in the 'awaiting review' state.
#
#: aegis/aerb.cc:238
msgid "bad rb state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đợi xem lại » để "
"bắt đầu tiến trình xem lại"

#
# This error message is issued when aerbu is invoked for a change which is
# not in the 'being reviewed' state.
#
#: aegis/aerbu.cc:197
msgid "bad rbu state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được xem lại "
"» để dừng tiến trình xem lại"

#
# This error message is issued when a request is made to fail a review
# of a change, but that change is not in the 'being reviewed' state.
#
#: aegis/aerf.cc:111
msgid "bad rf state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được xem lại "
"» để thất bại tiến trình xem lại"

#
# This error message is issued when aerm is invoked for a change which
# is not in the 'being developed' state.
#
#: aegis/aerm.cc:312
msgid "bad rm state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để dùng khi gỡ bỏ tập tin"

#
# This error message is issued when an aermu command is used
# on a file which is not suitable.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aermu.cc:484
msgid "bad rm undo $filename"
msgstr ""
"tập tin « $filename » đã không được thêm vào thay đổi này dùng lệnh « aegis -"
"ReMove_file »"

#
# This error message is issued when aermu is invoked for a change which
# is not in the 'being developed' state.
#
#: aegis/aermu.cc:291
msgid "bad rmu state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » để hủy bước gỡ bỏ tập tin"

#
# This error message is issued when aerpass is invoked for a change which is
# not in the 'being reviewed' state.
#
#: aegis/aerp.cc:109
msgid "bad rp state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được xem lại "
"» để xem lại thành công"

#
# This error message is issued when aerpu is invoked for a change which is
# not in the 'awaiting integration' state.
#
#: aegis/aerpu.cc:238
msgid "bad rpu state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đợi hợp nhất » để "
"hủy bước xem lại"

#
# This fatal error message is issued when there would be no files in
# the distributed change set.
#
#: aedist/send.cc:1530 aepatch/send.cc:813 aerevml/send.cc:898
#: aetar/send.cc:767
msgid "bad send no files"
msgstr "không có tập tin cần phát hành"

#
# This fatal error message is issued when a change is not in a suitable
# state from which to make a distribution change set.
#
#: aedist/send.cc:964 aetar/send.cc:530
msgid "bad send state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng sau hơn để được gửi"

#
# This error message is issued when a user requests a test of a change
# from the wrong state.
#
#: aegis/aet.cc:793
msgid "bad test state"
msgstr ""
"thay đổi này ở tình trạng « $state »; nó phải ở tình trạng « đang được phát "
"triển » hay « đang được hợp nhất » để chạy hàm thử"

#
# This error message is issued when a version string is given to aenpr
# which can't be broken into "ispunct" separated number.
#
#       $Number         The offending version number.
#
#: aegis/aenpr.cc:444 aegis/aenrls.cc:460 aeimport/import.cc:278
#: libaegis/project.cc:812
msgid "bad version $number"
msgstr "phiên bản số « $number » không hợp lệ"

#
# This error message is issued when aede finds a file which has been
# modified in the baseline since it was last differenced.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aede.cc:683 aegis/aede.cc:789
msgid "baseline $filename changed"
msgstr ""
"tập tin « $filename » trên đường cơ bản đã thay đổi kể từ lần cuối cùng chạy "
"lệnh « aegis -DIFFerence »: bạn cần phải chạy một tiến trình trộn"

#
# This error message is issued when aede finds a file which has been
# modified in a branch's parent baseline.  It will be necessary to
# create a new change in the branch, and do a cross branch merge with
# the grand parent.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aede.cc:678
msgid "baseline $filename changed, merge in new change"
msgstr ""
"Tập tin « $filename » trên đường cơ bản mẹ của nhánh này đã thay đổi kể từ "
"khi nó bị nhánh này sửa đổi. Để giải quyết trường hợp này, bạn cần phải tạo "
"một thay đổi mới trong nhánh này, sao chép tập tin vào nó (aecp $filename) "
"và chạy một tiến trình trộn chéo nhánh với cái bà (aed -merge -grandparent "
"$filename). Một khi hợp nhất, tập tin là hiện thời với đường cơ bản mẹ của "
"nhánh. Xem chương « Branching » (chạy nhánh) của Sổ tay Người dùng Aegis "
"(Aegis User Guide) để tìm thêm thông tin."

#
# This fatal error message is issued when a lock is not available.
#
#: libaegis/project.cc:560
msgid "baseline read lock not available"
msgstr "không có sẵn khoá đọc đường cơ bản"

#
# This fatal error message is issued when a lock is not available.
#
#: libaegis/project.cc:599
msgid "baseline write lock not available"
msgstr "không có sẵn khoá ghi đường cơ bản"

#
# This error message is issued before running batch_test_command if
# progress messages were requested
#
#       $Current        Number of the first test in batch
#       $Last           Number of the last test in batch
#       $Total          Total number of tests
#       $REMaining      Estimated number of seconds remaining.
#
#: libaegis/change/test/batch.cc:216
msgid "batch test from $current to $last of $total"
msgstr "hàm thử $current-$last trên $total, ${date %H:%M}"

#
# This error message is issued when the bevel size specified is negative,
# or too big.
#
#: aerect/main.cc:98
msgid "bevel size $number out of range"
msgstr "kích cỡ cạnh xiên $number ở ngoại phạm vi (0-10)"

#
# This message is issued when an inappropriate e?e:e is attempted.
#
#       $Name           The type name of the offending operand.
#
#: libaegis/aer/expr/logical.cc:306
msgid "boolean value required for arithmetic if (was given $name)"
msgstr "cần thiết giá trị luận lý cho số học (đã nhận $name)"

#
# This error message is issued when a ternary "if" expression (e1 ? e2 :
# e3) expression is not given a boolean expression as for first argument (e1).
#
#       $name   The name of the type of e1.
#
#: aefind/tree/logical.cc:461 aefind/tree/logical.cc:530
msgid "boolean value required for if (was given $name)"
msgstr "cần thiết giá trị luận lý cho biểu thức « ?: » (đã cho $name)"

#
# This message is issued when an inappropriate && is attempted.
#
#       $Name           The type name of the offending operand.
#
#: aefind/tree/logical.cc:79 aefind/tree/logical.cc:101
#: libaegis/aer/expr/logical.cc:70 libaegis/aer/expr/logical.cc:98
msgid "boolean value required for logical and (was given $name)"
msgstr "cần thiết giá trị luận lý cho « và » logic (đã cho $name)"

#
# This message is issued when an inappropriate || is attempted.
#
#       $Name           The type name of the offending operand.
#
#: aefind/tree/logical.cc:203 aefind/tree/logical.cc:225
#: libaegis/aer/expr/logical.cc:149 libaegis/aer/expr/logical.cc:177
msgid "boolean value required for logical or (was given $name)"
msgstr "cần thiết giá trị luận lý cho « hoặc » logic] (đã cho $name)"

#
# This error message is issued when the control expression for an "if"
# statement does not evaluate to a boolean.
#
#       $Name           The type name of the offending operand.
#
#: libaegis/aer/stmt/if.cc:85
msgid "boolean value required in if statement (not $name)"
msgstr "cần thiết giá trị luận lý trong câu lệnh « nếu » (đã cho $name)"

#
# This error message is issued when an absurd branch number is given.
# This is different to an unknown but valid branch number.
#
#       $Number         The offending branch number.
#
#: libaegis/arglex/change.cc:224
msgid "branch $number out of range"
msgstr "nhánh $number ở ngoại phạm vi: nó phải là một con số dương nhỏ"

#
# This error message is issued when aenbr is given an explicit branch
# number, but that number has already been used as branch number or as
# a change number.
#
#       $Number         The offending branch number.
#
#: aegis/aenbr.cc:246
msgid "branch $number used"
msgstr ""
"số hiệu nhánh $number đang được dùng: hãy chọn con số khác, hoặc đừng ghi rõ "
"con số nếu bạn muốn tự động cấp phát một con số"

#
# This error message is issued when aenc or aenbr are issued against a
# project branch which is no longer in the `being developed' state.
#
#: aegis/aeclone.cc:291 aegis/aenbr.cc:211 aegis/aenc.cc:334
msgid "branch completed"
msgstr ""
"cho phép bạn tạo thay đổi và nhánh chỉ trên nhánh đang hoạt động; nhánh này "
"không phải ở tình trạng « đang được phát triển »"

#
# This error messages is issued when aede-policy finds a change set in
# which the brief description is empty, or has not been changed from the
# default.
#
#: aede-policy/validation/description.cc:60
msgid "brief_description not set"
msgstr "chưa đặt mô tả ngắn (brief_description)"

#
# This error message is issued when aede finds a file which has not been
# built.
#
#       $Outstanding    A list of outstanding architectures to be built,
#                       or empty if all are outstanding.  (Optional)
#
#: aegis/aede.cc:981
msgid "build required"
msgstr ""
"thay đổi này phải chạy xong thành công một tiến trình xây dựng « aegis -Build "
"» $outstanding trước khi nó có thể kết thúc tiến trình phát triển"

#
# This fatal error message is issued when aeipass detects that the
# build (or some other command between aeib and aeipass) has modified
# a source file.  This often occurs when a source files becomes a
# generated file.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aeip.cc:1045
msgid "build trashed $filename"
msgstr ""
"có vẻ là tiến trình xây dựng đã sửa đổi tập tin mã nguồn « $filename ». "
"Trường hợp này thường xảy ra khi một tập tin ma nguồn trở thành một tập tin "
"đã tạo ra. Trong một thay đổi riêng, bạn cần phải thay đổi cấu hình xây "
"dựng, hoặc chạy lệnh « aerm $filename », hoặc chạy lệnh « aerm $filename » rồi "
"lệnh « aenf -build $filename » trong một thay đổi theo sau."

#
# This error message is issued when copying a file to stdout fails.
# Exactly which file (the source or stdout) is at fault is not
# immediately available, because Aegis could have one this in a child
# process.
#
#       $File_Name      The name of the source file.
#
#: libaegis/file.cc:95
msgid "cat $filename: $errno"
msgstr "cat « $filename »: $errno"

#
# This information message is issued when Aegis is about to execute a
# command, to tell the user where the command is to be executed.
#
#: libaegis/os/execute_retc.cc:64
msgid "cd $filename"
msgstr "cd $filename"

#
# This is the format of change messages (error, fatal and verbose).
# Some changes are actually branches.
#
#       $Message        The message to be issued.
#
#: libaegis/arglex/change.cc:186 libaegis/change/error.cc:63
#: libaegis/change/fatal.cc:63 libaegis/change/verbose.cc:63
#: libaegis/change/warning.cc:71
msgid "change $change: $message"
msgstr "thay đổi $change: $message"

#
# This fatal error is issued when the --delta-from-change option is used
# with a change which has not yet been completed.
#
#       $Number         The offending change's number.
#
#: aeannotate/annotate.cc:160 libaegis/project/change2delta.cc:42
msgid "change $number not completed"
msgstr ""
"thay đổi $number ở tình trạng « $state »; nó phải ở tình trạng « hoàn tất » để "
"dùng cùng với tùy chọn « --delta-from-change »"

#
# This error message is issued when an absurd change number is given.
# This is different to an unknown but valid change number.
#
#       $Number         The offending change number.
#
#: aefind/cmdline.y:1180 aegis/aecp.cc:231 aegis/aecp.cc:951 aegis/aed.cc:655
#: aegis/aentu.cc:196 libaegis/arglex/change.cc:226
#: libaegis/arglex/change.cc:404
msgid "change $number out of range"
msgstr "thay đổi $number ở ngoài phạm vi, nó phải là một con số dương nhỏ"

#
# This error message is issued when aenbr is given an explicit change
# number, but that number has already been used as change number or as
# a change number.
#
#       $Number         The offending change number.
#
#: aegis/aeclone.cc:339 aegis/aenc.cc:414
msgid "change $number used"
msgstr ""
"thay đổi $number đã được dùng: hãy chọn con số khác, hoặc đừng ghi rõ con số "
"nếu bạn muốn tự động cấp phát con số"

#
# This message is issued when aedist --receive cancells a change because
# the change is alreday present in the repository.  No action required.
#
#: aedist/receive.cc:718 aedist/receive.cc:2446 aepatch/receive.cc:1200
msgid "change already present"
msgstr ""
"Thay đổi này đã bị hủy bỏ vì tập hợp thay đổi đã nằm trong kho lưu trữ."

#
# This message is issued when an aecd command is successfully completed.
#
#       $File_Name      The absolute path of the directory changed to.
#
#: aegis/aecd.cc:202
msgid "change directory $filename complete"
msgstr "$filename"

#
# This error message is issued when a chdir fails.
#
#       $File_Name      The name of the directory to chdir to.
#
#: libaegis/os/chdir.cc:37
msgid "chdir $filename: $errno"
msgstr "chdir « $filename »: $errno"

#
# This error message is issued when a chgrp fails.
#
#       $File_Name      The name of the file to be changed.
#       $Argument       The GID the file is to be set.
#
#: libaegis/os/mkdir.cc:64
msgid "chgrp(\"$filename\", $arg): $errno"
msgstr "chgrp(\"$filename\", $arg): $errno"

#
# This error message is issued when a chmod fails.
#
#       $File_Name      The name of the file to be changed.
#       $Argument       The mode desired.
#
#: libaegis/os/chmod/chmod.cc:51 libaegis/os/mkdir.cc:81
msgid "chmod(\"$filename\", $arg): $errno"
msgstr "chmod(\"$filename\", $arg): $errno"

#
# This message is issued when an aechown command completes successfully.
#
#       $ORiginal       The login name of the original owner.  (Optional)
#       $Target         The login name of the new owner.  (Optional)
#
#: aegis/aechown.cc:421
msgid "chown complete"
msgstr ""
"quyền sở hữu đã thay đổi từ người dùng « $original » sang người dùng « $target "
"»"

#
# This message is issued when an aeclean command completes successfully.
#
#: aegis/aeclean.cc:770
msgid "clean complete"
msgstr "tiến trình làm sạch (clean) đã chạy xong"

#
# This message is issued when an aeclone command completes successfully.
#
#       $ORiginal       The login the original change.  (Optional)
#
#: aegis/aeclone.cc:875
msgid "clone complete"
msgstr "tiến trình sao chép thay đổi $original đã chạy xong"

#
# This error message is issued when a file close fails
#
#       $File_Name      The name of the offending file.
#
#: libaegis/input/file.cc:50 libaegis/output/file.cc:49
msgid "close $filename: $errno"
msgstr "close « $filename »: $errno"

#
# This error message is issued when a file compare fails with a system
# error.  (Alike or unalike are normal returns, this is an exception.)
# Exactly which file is at fault is not immediately available, because
# Aegis could have one this in a child process.
#
#       $File_Name1     The name of the source file.
#       $File_Name2     The name of the destination file.
#
#: libaegis/file.cc:156
msgid "cmp $filename1 $filename2: $errno"
msgstr "cmp « $filename1 » « $filename2 »: $errno"

#
# This error message is issued when a color component is not in the
# range 0..255.
#
#: aerect/main.cc:124
msgid "color component $number out of range"
msgstr "thành phần màu $number ở ngoại phạm vi (0-255)"

#
# This error message is issued when a child process stops with a
# non-zero exit status.
#
#       $Command        The offending command.
#       $Number         The exit status of the child.
#
#: libaegis/os/execute.cc:77
msgid "command \"$command\" exit status $number"
msgstr "lệnh « $command » có trạng thái thoát $number"

#
# This error message is issued when a child process stops.
# Since Aegis didn't ask it to, this is treated as a fatal error.
#
#       $Command        The offending command.
#
#: libaegis/os/waitpid_st.cc:63
msgid "command \"$command\" stopped"
msgstr "lệnh « $command » bị dừng"

#
# This error message is issued when a child process terminates due to an
# uncaught signal.
#
#       $Command        The offending command.
#       $Signal         The name of the terminating signal.
#
#: libaegis/os/waitpid_st.cc:79
msgid "command \"$command\" terminated by $signal"
msgstr "lệnh « $command » bị chấm dứt bởi tín hiệu $signal"

#
# This error message is issued when a child process stops due to an
# uncaught signal, and also dumps core.
#
#       $Command        The offending command.
#       $Signal         The name of the terminating signal.
#
#: libaegis/os/waitpid_st.cc:85
msgid "command \"$command\" terminated by $signal (core dumped)"
msgstr "lệnh « $command » bị chấm dứt bởi tín hiệu $signal (lõi bị đổ)"

#
# This error message is issued when the command line is too short.
#
#: libaegis/help.cc:294
msgid "command line too short"
msgstr "dòng lệnh quá ngắn"

#
# This fatal error message is issued when an unrecognised compression
# algorithm name is given on the command line (aedist, aepatch, etc).
#
#       $name           The offending compression algorithm name.
#
#: libaegis/compres_algo.cc:63
msgid "compression algorithm \"$name\" unknown"
msgstr "không rõ thuật toán nén « $name »"

#
# This message is inserted into the top of the project configuration file
# automatically created by aeimport.
#
#: aeimport/config_file.cc:98
msgid "configuration file hint"
msgstr ""
"Tập tin này cần phải được tùy chỉnh cho dự án này. Xem trang hướng dẫn « "
"aepconf(5) » để tìm mô tả về những trường trong tập tin này. Xem « $datadir/"
"config.example/rcs » để tìm thêm thông tin về các lệnh lược sử. Xem « "
"$datadir/config.example/make » để tìm mẫu về cách cấu hình công cụ xây dựng. "
"Khuyên bạn duyệt qua các tập tin khác trong cùng thư mục, để tìm thêm thông "
"tin."

#
# This fatal error message is issued when aedist or aepatch don't
# recognize a content transfer encoding name.
#
#       $Name           The offending encoding name.
#
#: aedist/open.cc:84 aepatch/slurp.cc:105 libaegis/output/conten_encod.cc:64
#: test_cpio/main.cc:111
msgid "content transfer encoding $name unknown"
msgstr "không rõ bảng mã truyền nội dung « $name »"

#
# This progress message is issued for aecp file when aecp completes
# successfully.
#
#: aegis/aecp.cc:736 aegis/aecp.cc:2037
msgid "copied $filename"
msgstr "tập tin « $filename » đã được sao chép"

#
# This progress message is issued when aenrls creates a copy of the
# baseline in the new project.
#
#: aegis/aenrls.cc:850
msgid "copy baseline"
msgstr "đang sao chép đường cơ bản"

#
# This progress message is issued when aeib creates a copy of
# the baseline to construct the integration directory.
#
#: aegis/aeib.cc:1146
msgid "copy baseline to integration directory"
msgstr "đang sao chép đường cơ bản vào thư mục hợp nhất"

#
# This progress message is issued when copying the change source files
# during an aechown command.
#
#: aegis/aechown.cc:315 aegis/aeclone.cc:468
msgid "copy change source files"
msgstr "đang sao chép các tập tin mã nguồn thay đổi"

#
# This success message is issued when aecp has finished copying files
# into a change.
#
#       $Number         The number of files copied.
#                       (Optional)
#
#: aegis/aecp.cc:2081
msgid "copy file complete"
msgstr "đã sao chép $number tập tin"

#
# This progress message is issued when the aecpu command completes
# successfully.  It details files which have been removed from the
# change.  Please note: this is NOT the same as files added to the
# change by aerm, which are to be removed BY the change.
#
#       $File_Name      Name of the file removed from the change.
#
#: aegis/aecpu.cc:650
msgid "copy file undo $filename complete"
msgstr "tập tin « $filename » không còn được sửa đổi lại"

#
# This progress message is issued by aeimport when it starts to copy the
# history fierls from the old repository into the project history tree.
#
#: aeimport/import.cc:522
msgid "copy history files"
msgstr ""
"Đang sao chép các tập tin lược sử từ kho lưu trữ bên ngoài vào cây lược sử "
"dự án..."

#
# This error message is issued when a file copy fails.  Exactly which
# file is at fault is not immediately available, because Aegis could
# have one this in a child process.
#
#       $File_Name1     The name of the source file.
#       $File_Name2     The name of the destination file.
#
#: libaegis/file.cc:80
msgid "cp $filename1 $filename2: $errno"
msgstr "cp « $filename1 » « $filename2 »: $errno"

#
# This error message is issued when a file create fails
#
#       $File_Name      The name of the offending file.
#
#: libaegis/file/from_string.cc:45
msgid "create $filename: $errno"
msgstr "tạo « $filename »: $errno"

#
# This progress message is issued when Aegis creates the symbolic links
# from the development directory which point to the baseline.
#
#: libaegis/change/build/symlinks.cc:1063
msgid "creating symbolic links to baseline"
msgstr "đang tạo các liên kết tượng trưng tới đường cơ bản"

#
# This error message is issued when an aeib command is given, but there
# is already an integration in progress.  Only one integration may be
# performed at a time.
#
#       $Number         The change number of the current integration.
#
#: aegis/aeib.cc:890
msgid "currently integrating $number"
msgstr ""
"thay đổi $number là tiến trình hợp nhất đang chạy: chỉ một tiến trình hợp "
"nhất có thể chạy vào một lúc"

#
# This fatal error message is issued when a user-supplied string can't
# be interpreted as a date (time_t).
#
#       $Name           The offending string.
#
#: aegis/aecp.cc:922 libaegis/help/date_unknown.cc:31
msgid "date $name unknown"
msgstr "chuỗi « $name » không hình như ngày tháng"

#
# This warning message is issued when aecp -delta-date is given a time
# which is in the future.  Unlike times in the past, the answer could
# change at a later date.  This is Damon Poole's "time safe" property.
#
#: aedist/send.cc:918 aegis/aecp.cc:401 aegis/aecp.cc:1236 aepatch/send.cc:515
#: aetar/send.cc:492 libaegis/change/identifi_sub/set_change.cc:71
msgid "date in the future"
msgstr ""
"Cảnh báo : ngày tháng δ được ghi rõ nằm trong tương lai. Lệnh này có thể làm "
"kết quả khác khi chạy lại trong tương lai. "

#
# This error message is issued when an attempt is made to reuse an
# existing delta name, without the -OverWriting option.
#
#       $Name           The offending delta name.
#       $Number         The delta number the user wants to associate
#                       with the delta name.  (Optional)
#       $Other          The delta number already associated with the
#                       delta name.
#
#: aegis/aedn.cc:326
msgid "delta $name in use"
msgstr ""
"tên δ « $name » đã được gán cho δ $other; để gán lại tên này vào δ $number, "
"bạn phải dùng tùy chọn « -OverWriting »"

#
# This error message is issued when an absurd delta number is given.
# This is different to an unknown but valid delta number.
#
#       $Number         The offending delta number.
#
#: aedist/send.cc:580 aegis/aecp.cc:183 aegis/aecp.cc:898 aegis/aedn.cc:169
#: aepatch/send.cc:335 aetar/send.cc:290
#: libaegis/change/identifi_sub/cmd_lin_par.cc:83
msgid "delta $number out of range"
msgstr "δ $number ở ngoại phạm vi; nó phải là một con số dương nhỏ"

#
# This progress message is issued when aedn completes successfully.
#
#       $Name           The name of the delta.  (Optional)
#       $Number         The number of the delta.  (Optional)
#
#: aegis/aedn.cc:409
msgid "delta name complete"
msgstr "δ $number giờ này được gọi như là δ « $name »"

#
# This error messages is issued when aede-policy finds a change set in
# which the brief description is empty, or has not been changed from the
# default.
#
#: aede-policy/validation/description.cc:81
msgid "description not set"
msgstr "chưa đặt mô tả"

#
# This progress message is issued when aedb completes successfully.
#
#: aegis/aedb.cc:421
msgid "develop begin complete"
msgstr "người dùng « $user » đã bắt đầu tiến trình phát triển"

#
# This progress message is issued when aedbu completes successfully.
#
#: aegis/aedbu.cc:334
msgid "develop begin undo complete"
msgstr "không còn được phát triển lại"

#
# This error message is issued when all of the other errors in aede have
# been found.  Because they are often grouped, as many errors as
# possible are found before aede aborts.
#
#: aegis/aede.cc:1083
msgid "develop end fail"
msgstr "tìm $number lỗi; thay đổi này còn lại ở tình trạng « $state »"

#
# This progress message is issued when aedeu completes successfully.
#
#: aegis/aedeu.cc:374
msgid "develop end undo complete"
msgstr "tiến trình phát triển đã tiếp tục lại"

#
# This error message is issued when a developer attempts to integrate her
# own change, and the project is configured to disallow this.
#
#: aegis/aeib.cc:870
msgid "developer may not integrate"
msgstr "không cho phép nhà phát triển của thay đổi cũng hợp nhất nó"

#
# This error message is issued when a developer attempts to review her
# own change, and the project is configured to disallow this.
#
#: aegis/aerb.cc:247 aegis/aerbu.cc:213 aegis/aerf.cc:134 aegis/aerp.cc:133
msgid "developer may not review"
msgstr "không cho phép nhà phát triển của thay đổi cũng xem lại nó"

#
# This message is issued when development builds are completed.
#
#: aegis/aeb.cc:569
msgid "development build complete"
msgstr "tiến trình xây dựng kiểu phát triển đã chạy xong ${date %H:%M}"

#
# This message is issued when development builds are commenced.
#
#: aegis/aeb.cc:558
msgid "development build started"
msgstr "tiến trình xây dựng kiểu phát triển đã khởi chạy ${date %H:%M}"

#
# This progress message is issued when aede completes successfully.
#
#: aegis/aede.cc:1223
msgid "development completed"
msgstr "tiến trình phát triển đã chạy xong"

#
# This information message is issued when an Aegis command automatically
# generates a development directory, to inform the user of the action
# taken.
#
#       $File_Name      The absolute path of the generated development
#                       directory.
#
#: aegis/aechown.cc:289 aegis/aeclone.cc:430 aegis/aedb.cc:307
#: libaegis/project/new_branch.cc:133
msgid "development directory \"$filename\""
msgstr "thư mục phát triển « $filename »"

#
# This error message is issued when an aed command found errors in the
# specified list of files.
#
#       $Number         The number of errors found.
#                       (Optional)
#
#: aegis/aed.cc:376 aegis/aed.cc:1047
msgid "diff fail"
msgstr "tìm $number lỗi; chưa khác biệt tập tin"

#
# This error message is issued when aede finds a file which has not been
# differenced.  Can occur in both the 'being developed' and 'being
# integrated' states.
#
#: aegis/aede.cc:584 aegis/aeip.cc:667
msgid "diff required"
msgstr ""
"thay đổi này phải chạy xong thành công một tiến trình khác biệt « aegis -Diff "
"», trước khi nó có thể rời tình trạng « $state »"

#
# This progress message is issued when the aed command completes successfully.
#
#: aegis/aed.cc:2021
msgid "difference complete"
msgstr "tiến trình khác biệt đã chạy xong"

#
# This error message is issued when an option which must be a relative
# directory is specified as an absolute directory.
#
#: aegis/aecd.cc:121
msgid "dir must be rel"
msgstr "thư mục phải là tương đối (không thể bắt đầu với /)"

#
# This error message is issued when a directory has been named on the
# command line, and it has been examined for files.  While a file or files
# were found, none of them are suitable.
#
#       $File_Name      The name of the offending directory
#       $Number         The number of files found in the directory
#                       (Optional)
#
#: aegis/aecp.cc:1306 aegis/aecp.cc:1456 aegis/aecpu.cc:394 aegis/aemt.cc:416
#: aegis/aemtu.cc:378 aegis/aemvu.cc:356 aegis/aenf.cc:530 aegis/aenfu.cc:386
#: aegis/aentu.cc:404 aegis/aerm.cc:444 aegis/aermu.cc:419 aegis/aet.cc:934
#: aegis/aet.cc:1802
msgid "directory $filename contains no relevant files"
msgstr ""
"thư mục $filename chứa $number tập tin, rất có thể là ${plural $number tập "
"tin, tuy nhiên không có tập tin làm đối số thích hợp với lệnh này"

#
# This progress message is issued when aeipass is deleting the
# development directory and the old baseline directory.
#
#: aegis/aeip.cc:2208
msgid "discard old directories"
msgstr "đang hủy các thư mục cũ"

#
# This error message is issued when a division by zero is attempted.
#
#: aefind/tree/arithmetic.cc:222 libaegis/aer/expr/mul.cc:173
msgid "division by zero"
msgstr "chia cho không"

#
# This error message is issued when the obsolete -major or -minor
# options are used with the new modern better improved preferred -version
# option.
#
#: aegis/aenpr.cc:372 aegis/aenrls.cc:323
msgid "don't mix old and new version options"
msgstr ""
"hai tùy chọn « -MAJor » (chính) và « -MINOr » (phụ) đều không tương thích với "
"tùy chọn « -VERSion » (phiên bản)"

#
# This error message is issued when an option is used more than one on
# the command line.
#
#       $Name           The name of the offending option.
#
#: libaegis/change/develop_direct/set.cc:61
#: libaegis/change/integra_direct/set.cc:55 libaegis/change/top_path/set.cc:68
#: libaegis/help.cc:343 libaegis/project/home_path/set.cc:53
msgid "duplicate $name option"
msgstr "tùy chọn $name trùng, chỉ có thể đưa ra một tùy chọn"

#
# This error message is issued when the aerpass command detects that a
# user has already reviewed this change once since the last develop end.
# (This can occur when the review_policy_command is being used.)
#
#: aegis/aerp.cc:124
msgid "duplicate review"
msgstr "không cho phép bạn xem lại cùng một thay đổi hai lần"

#
# This error message is issued when an unterminated comment is seen.
# Comments may not span input files.
#
#: libaegis/aer/lex.cc:660 libaegis/meta_lex.cc:649
msgid "end-of-file within comment"
msgstr "kết thúc tập tin ở trong lời ghi chú"

#
# This error message is issued when an unterminated string is detected.
# Strings may not span input files.
#
#: libaegis/aer/lex.cc:393 libaegis/meta_lex.cc:332
msgid "end-of-file within string"
msgstr "kết thúc tập tin ở trong chuỗi"

#
# This error message is issued when an unterminated string is detected.
# Strings may not span multiple input lines.
#
#: libaegis/aer/lex.cc:398 libaegis/meta_lex.cc:337
msgid "end-of-line within string"
msgstr "kết thúc dòng ở trong chuỗi"

#
# This error message is issued when an environment variable has not been
# set, it it needs to be.
#
#       $Name           The name of the offending environment variable.
#
#: libaegis/user/editor.cc:42
msgid "environment variable $name not set"
msgstr "chưa đặt biến môi trường « $name »"

#
# This fatal error message is issued when the execution of a command
# fails.  The filename may, or may not, be absolute.
#
#       $File_Name      The name of the offending file.
#
#: aeget/get/command.cc:44 libaegis/os/execute_retc.cc:226
#: libaegis/output/pager.cc:126
msgid "exec \"$filename\": $errno"
msgstr "exec « $filename »: $errno"

#
# This error message is issued when aet completes unsuccessfully.
#
#       $Number         The number of tests which failed.
#
#: aegis/aet.cc:350 aegis/aet.cc:352
msgid "failed $number tests"
msgstr "đã trượt $number hàm thử"

#
# This error message is issued when a fatal error occurs while Aegis is
# attempting to recover from an earlier fatal error.
#
#: libaegis/undo.cc:232
msgid "fatal error during fatal error recovery"
msgstr ""
"Gặp lỗi nghiêm trọng khi thử phục hồi sau một lỗi nghiêm trọng trước. Một số "
"dữ liệu Aegis có thể đã bị hỏng. Xin hãy thông báo nhà phát triển Aegis càng "
"sớm càng có thể."

#
# This error message is issued when Aegis fails to get file descriptor flags.
# This message is so rare as to usually indicate a bug.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/lock.cc:597 libaegis/lock.cc:1221
msgid "fcntl(\"$filename\", F_GETFD): $errno"
msgstr "fcntl(\"$filename\", F_GETFD): $errno"

#
# This error message is issued when Aegis fails to get a lock status
# This message is so rare as to usually indicate a bug.
#
#       $File_Name      The name of the offending file.
#       $Argument       The argument to the fcntl call.
#
#: libaegis/lock.cc:1036
msgid "fcntl(\"$filename\", F_GETLK, $arg): $errno"
msgstr "fcntl(\"$filename\", F_GETLK, $arg): $errno"

#
# This error message is issued when Aegis fails to set file descriptor flags.
# This message is so rare as to usually indicate a bug.
#
#       $File_Name      The name of the offending file.
#       $Argument       The argument to the fcntl call.
#
#: libaegis/lock.cc:612 libaegis/lock.cc:1236
msgid "fcntl(\"$filename\", F_SETFD, $arg): $errno"
msgstr "fcntl(\"$filename\", F_SETFD, $arg): $errno"

#
# This error message is issued when Aegis fails to set a lock.
# This message is so rare as to usually indicate a bug.
#
#       $File_Name      The name of the offending file.
#       $Argument       The argument to the fcntl call.
#
#: libaegis/lock.cc:695
msgid "fcntl(\"$filename\", F_SETLK, $arg): $errno"
msgstr "fcntl(\"$filename\", F_SETLK, $arg): $errno"

#
# This error message is issued when Aegis fails to set a lock.
# This message is so rare as to usually indicate a bug.
#
#       $File_Name      The name of the offending file.
#       $Argument       The argument to the fcntl call.
#
#: libaegis/lock.cc:663 libaegis/lock.cc:725 libaegis/lock.cc:755
#: libaegis/lock.cc:783 libaegis/lock.cc:866 libaegis/lock.cc:889
#: libaegis/lock.cc:913 libaegis/lock.cc:984
msgid "fcntl(\"$filename\", F_SETLKW, $arg): $errno"
msgstr "fcntl(\"$filename\", F_SETLKW, $arg): $errno"

#
# This warning message is issued when aet has been asked to suggest a
# number of tests, and there are too few candidate tests.
#
#       $Number1        The number of tests available.
#       $Number2        The number of tests requested by the user.
#
#: aegis/aet.cc:149
msgid "few candidate tests"
msgstr ""
"cảnh báo : có chỉ $number1 hàm thử thích hợp, tuy nhiên bạn đã yêu cầu "
"$number2 được đề nghị; mọi $number1 hàm thử sẽ được dùng"

#
# This error message is issued when a field in an Aegis data file or
# configuration file is defined more than once.
#
#       $Name           The name of the offending field.
#
#: libaegis/meta_parse.cc:416
msgid "field \"$name\" redefined"
msgstr "trường « $name » đã được xác định lại"

#
# This error message is issued when a change file name is not acceptable
# to the filename pattern filters.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/change/file/name_check.cc:809
msgid "file \"$filename\" bombs filters"
msgstr ""
"tập tin « $filename » không thích hợp với các bộ lọc mẫu tên tập tin (xem tập "
"tin cấu hình của dự án)"

#
# This error message is issued when aeclean discovers that a change
# source file does not exist.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aeclean.cc:573
msgid "file \"$filename\" does not exist"
msgstr ""
"tập tin « $filename » không tồn tại, nhưng nó là một tập tin mã nguồn thay đổi"

#
# This error message is issued when a change file
# name is the same as the log file.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/change/file/name_check.cc:721
msgid "file \"$filename\" is log file"
msgstr "tập tin « $filename » nhân đôi tên tập tin của bản ghi"

#
# This error message is issued when aede finds a file which has been
# locked.  The user should try again later, after the file has been
# integrated.
#
#       $File_Name      The name of the offending file.
#       $Number         The change number of the change which locked the file.
#
#: aegis/aede.cc:701 aegis/aede.cc:808 aegis/aede.cc:837
msgid "file \"$filename\" locked for change $number"
msgstr "tập tin « $filename » bị khoá cho thay đổi $number, hãy thử lại sau"

#
# This error message is issued when a component of a change file name is
# not acceptable to the filename pattern filters.  Must be modifiable by
# (***) above.
#
#       $File_Name      The name of the offending file.
#       $PArt           The directory part in question.
#
#: libaegis/change/file/name_check.cc:818
msgid "file \"$filename\" part \"$part\" bombs filters"
msgstr ""
"tập tin « $filename » phần đường dẫn « $part » không thích hợp với các bộ lọc "
"mẫu tên tập tin (xem tập tin cấu hình của dự án)"

#
# This error message is issued when a component of a change file name
# contains illegal characters.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#       $PArt           The directory part in question.
#
#: libaegis/change/file/name_check.cc:762
msgid "file \"$filename\" part \"$part\" contains illegal characters"
msgstr "tập tin « $filename » phần đường dẫn « $part » chứa ký tự cấm"

#
# This error message is issued when a component of a change file name
# contains shell special characters.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#       $PArt           The directory part in question.
#
#: libaegis/change/file/name_check.cc:794
msgid "file \"$filename\" part \"$part\" contains shell special characters"
msgstr ""
"tập tin « $filename » phần đường dẫn « $part » chứa ký tự đặc biệt trình bao"

#
# This error message is issued when a component of a change file
# name is the same as the log file.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#       $PArt           The directory part in question.
#
#: libaegis/change/file/name_check.cc:730
msgid "file \"$filename\" part \"$part\" is log file"
msgstr ""
"tập tin « $filename » phần đường dẫn « $part » nhân đôi tên tập tin của bản ghi"

#
# This error message is issued when a component of a change file name
# is not suitable for DOS.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#       $PArt           The directory part in question.
#       $SUGgest        Suggested alternative.
#
#: libaegis/change/file/name_check.cc:628
msgid "file \"$filename\" part \"$part\" not suitable for DOS"
msgstr ""
"tập tin « $filename » phần đường dẫn « $part » không thích hợp với DOS; đề "
"nghị dùng « $suggest » thay vào đó "

#
# This error message is issued when a component of a change file name
# is not suitable for Windows.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#       $PArt           The directory part in question.
#
#: libaegis/change/file/name_check.cc:657
msgid "file \"$filename\" part \"$part\" not suitable for Windows"
msgstr ""
"tập tin « $filename » phần đường dẫn « $part » không thích hợp với Windows"

#
# This error message is issued when a directory component of a change file
# name is too long.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#       $PArt           The directory part in question.
#       $Number         How many characters too long, how many to remove.
#                       (Optional)
#       $SUGgest        Suggested abbreviated filename (optional).
#
#: libaegis/change/file/name_check.cc:701
msgid ""
"file \"$filename\" part \"$part\" too long, suggest \"$suggest\" instead"
msgstr ""
"tập tin « $filename » phần đường dẫn « $part » quá dài (theo $number), đề nghị "
"thay thế bằng « $suggest »"

#
# This error message is issued when the last component of a change file
# name is too long.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#       $Number         How many characters too long, how many to remove.
#                       (Optional)
#       $SUGgest        Suggested abbreviated filename (optional).
#
#: libaegis/change/file/name_check.cc:691
msgid "file \"$filename\" too long, suggest \"$suggest\" instead"
msgstr ""
"tập tin « $filename » quá dài (theo $number), đề nghị thay thế bằng « $suggest "
"»"

#
# This fatal error message is issued when aenf or aent detects a directory
# name conflict with a proposed new file name.
#
#       $File_Name      The name of the offending file.
#       $File_Name2     The name of the conflicting file.  (Optional)
#
#: aegis/aemv.cc:186 aegis/aemv.cc:204 aegis/aenf.cc:629 aegis/aenf.cc:648
#: aegis/aent.cc:517 aegis/aent.cc:536
msgid "file $filename directory name conflict"
msgstr "tập tin $filename cấm vì nó làm kết quả là một tên thư mục"

#
# This error message is issued when a command attempts to add a new file
# to a change, but the file is already part of the change.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aemt.cc:455 aegis/aemv.cc:112 aegis/aemv.cc:219 aegis/aenf.cc:673
#: aegis/aent.cc:434 aegis/aerm.cc:510
msgid "file $filename dup"
msgstr "tập tin $filename đã trong thay đổi"

#
# This error message is issued when a change file name
# contains illegal characters.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/change/file/name_check.cc:578
#: libaegis/change/file/name_check.cc:594
#: libaegis/change/file/name_check.cc:752
msgid "file name \"$filename\" contains illegal characters"
msgstr "tập tin « $filename » chứa ký tự cấm"

#
# This error message is issued when a change file name
# contains illegal characters.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/change/file/name_check.cc:784
msgid "file name \"$filename\" contains shell special characters"
msgstr "tập tin « $filename » chứa ký tự đặc biệt trình bao"

#
# This error message is issued when a change file name
# is not suitable for DOS.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#       $SUGgest        Suggested alternative file name.
#
#: libaegis/change/file/name_check.cc:618
msgid "file name \"$filename\" not suitable for DOS"
msgstr ""
"tập tin « $filename » không thích hợp với DOS, đề nghị thay thế bằng « "
"$suggest »"

#
# This error message is issued when a change file name
# is not suitable for Windows.  Must be modifiable by (***) above.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/change/file/name_check.cc:647
msgid "file name \"$filename\" not suitable for Windows"
msgstr "tập tin « $filename » không thích hợp với Windows"

#
# This error message is issued when a file qualifier in a substitution
# is an unknown name.  See (+++) above.
#
#: libaegis/sub/change/files.cc:105
msgid "file qualifier unknown"
msgstr "không rõ bộ hạn định tập tin"

#
# This error message is issued when an unknown file type name is given
# to the -type command line option.
#
#       $name   The offending type name.
#
#: aefind/shorthand/stat.cc:288
msgid "file type $name unknown"
msgstr "không rõ kiểu tập tin $name"

#
# This error message is a summary issued when one or more change
# files are modified by the history tool (history_put_command or
# history_create_commands) during aeipass.
#
#       $Number         The number of files modified.
#                       (Optional)
#
#: libaegis/change/history/trash.cc:114
msgid "files modified by history tool"
msgstr ""
"Công cụ lược sử đã sửa đổi $number tập tin. Số tập tin nguồn trong kho lưu "
"trữ không còn tương ứng với số tập tin đích trong kho lưu trữ. Công cụ lược "
"sử đã làm hại tính nguyên vẹn để tham khảo của kho lưu trữ."

#
# This progress message is issued when aeimport starts going through
# the history information looking for change sets.
#
#: aeimport/import.cc:334
msgid "find change sets"
msgstr "Đang tìm chùm thay đổi về tập tin để nội suy các tập hợp thay đổi..."

#
# This error message is issued when a file fingerprint fails
#
#       $File_Name      The file to be fingerprinted
#
#: libaegis/os/fingerprint.cc:44
msgid "fingerprint $filename: $errno"
msgstr "vân tay « $filename »: $errno"

#
# This error message is issued when a break statement is seen outside any
# enclosing loop or switch statement.
#
#: libaegis/aer/report.y:96
msgid "floating \"break\" statement"
msgstr "câu lệnh « break » (ngắt) nổi"

#
# This error message is issued when a continue statement is seen outside
# any enclosing loop or switch statement.
#
#: libaegis/aer/report.y:100
msgid "floating \"continue\" statement"
msgstr "câu lệnh « continue » (tiếp tục) nổi"

#
# This error message is issued when a return statement is used outside
# any function.
#
#: libaegis/aer/report.y:104
msgid "floating \"return\" statement"
msgstr "câu lệnh « return » (trả về) nổi"

#
# This format string is used when assembling the list of outstanding
# architectures for some other error message.
#
#       $Name_List      The list of names of outstanding architectures.
#       $Number         How many architectures are outstanding.
#                       (Optional)  Use to pluralize the message.
#
#: libaegis/change/outstanding.cc:69
msgid "for the $name_list architectures"
msgstr "cho các kiến trúc $name_list"

#
# This error message is issued as a summary when one or more
# architectures appear in the list of architectures the change must
# apply to, but are not present in the project's architecture list in
# the project configuration file.
#
#       $Number         The number of unknown architecture(s).
#                       (Optional)
#
#: libaegis/change/architecture/check.cc:93
msgid "found unlisted architectures"
msgstr ""
"tìm thấy $number kiến trúc không được liệt kê, hãy chỉnh sửa các thuộc tính "
"về thay đổi để gỡ bỏ chúng, hoặc chỉnh sửa tập tin cấu hình của dự án để "
"thêm chúng."

#
# This error message is issued when a function which requires exactly
# one argument has been given none, or too many.
#
#       $name   The function name.
#
#: aefind/function/needs.cc:36
msgid "function $name requires one argument"
msgstr "hàm « $name » cần thiết chính xác một đối số"

#
# This error message is issued when a function which requires exactly
# two arguments has been given too few, or too many.
#
#       $name   The function name.
#
#: aefind/function/needs.cc:49
msgid "function $name requires two arguments"
msgstr "hàm « $name » cần thiết chính xác hai đối số"

#
# This error message is issued when a getcwd fails.
#
#: libaegis/os/pathname.cc:104
msgid "getcwd: $errno"
msgstr "lấy thư mục hiện tại: $errno"

#
# This error message is issued when a group from the /etc/group file, or
# equivalent, cannot be found by number.
#
#       $Number         The offending group number.
#
#: libaegis/aer/value/group.cc:104 libaegis/user/create1.cc:106
#: libaegis/user/set_gid.cc:42
msgid "gid $number unknown"
msgstr "gid $number không rõ"

#
# This fatal error message is issued when a lock is not available.
#
#: libaegis/gonzo.cc:1051
msgid "global state lock not available"
msgstr "không có sẵn khoá tình trạng toàn cục"

#
# This error message is issued when a group from the /etc/group file, or
# equivalent, cannot be found by name.
#
#       $Name           The offending group name.
#
#: libaegis/aer/value/group.cc:119
msgid "group \"$name\" unknown"
msgstr "không rõ nhóm « $name »"

#
# This error message is issued when aena is asked to add an
# administrator to a project, but the group's gid is too low (too
# privileged).
#
#       $Name           The offending group name.
#
#: libaegis/help/grouptoopriv.cc:29
msgid "group $name too privileged"
msgstr "nhóm « $name » có quá nhiều quyền"

#
# This fatal error message is issued when something goes wrong decompressing
# a file using zlib.
#
#       $File_Name      The name of the output file
#       $ERRNO          Overridden to contain the error string from zlib
#                       (but sometimes not, because the real errno has it)
#
#: libaegis/input/bunzip2.cc:38 libaegis/input/gunzip.cc:57
msgid "gunzip $filename: $errno"
msgstr "trong khi giải nén dữ liệu nhập từ tập tin « $filename»: $errno"

#
# This fatal error message is issued when something goes wrong compressing
# a file using zlib.
#
#       $File_Name      The name of the output file
#       $ERRNO          Overridden to contain the error string from zlib
#                       (but sometimes not, because the real errno has it)
#
#: libaegis/output/bzip2.cc:35 libaegis/output/gzip.cc:43
msgid "gzip $filename: $errno"
msgstr "trong khi nén kết xuất cho tập tin « $filename »: $errno"

#
# This error message is issued when a request is made to run tests, but
# there are no files which are candidates of the options specified, or
# the project may have no tests at all.
#
#: aegis/aet.cc:1176 aegis/aet.cc:1890
msgid "has no tests"
msgstr "thay đổi này cần thiết hàm thử trước khi có thể sử dụng lệnh này"

#
# This information message is issued by the aeipass(1) command when it
# commits the first version of a file into the project history store.
#
# $File_Name    The name of the source file.
#
#: libaegis/change/history/create_comma.cc:81
msgid "history create $filename"
msgstr "tạo « $filename » lược sử"

#
# This fatal error message is issued when aeimport doesn't recognize a
# history file format name as specified on the command line.
#
#       $name           The offending format name.
#
#: aeimport/format/find.cc:58
msgid "history format \"$name\" unknown"
msgstr "không rõ định dạng lược sử « $name »"

#
# This information message is issued by the aegis when it extracts a
# version of a file from the project history store.
#
# $File_Name    The name of the source file.
# $Edit         The version to be extracted (optional)
#
#: libaegis/change/history/get_command.cc:70
msgid "history get $filename"
msgstr "lấy « $filename » lược sử"

#
# This information message is issued by the aeipass(1) command when it
# is labeling the head version of a history history file.
#
# $File_Name    The name of the source file.
#
#: libaegis/change/history/label_commnd.cc:80
msgid "history label $filename"
msgstr "nhãn « $filename » lược sử"

#
# This fatal error message is issued when a lock is not available.
#
#: libaegis/project.cc:626
msgid "history lock not available"
msgstr "không có sẵn khoá lược sử"

#
# This information message is issued by the aeipass(1) command when it
# commits another version of a file into the project history store.
#
# $File_Name    The name of the source file.  This will track file
#               renames, even though the history file's UUID never
#               changes.
#
#: libaegis/change/history/put_command.cc:79
msgid "history put $filename"
msgstr "để « $filename » lược sử"

#
# This error message is issued when the history query command returns an
# empty string.  It is meant to return a unique string to identify the
# top-most version number in the history file.
#
#: libaegis/change/history/query_comman.cc:87
msgid "history_query_command return empty"
msgstr ""
"history_query_command (lệnh truy vấn lược sử) đã trả lại chuỗi rỗng, không "
"phải là đáp ứng có ích"

#
# This error message is issued when an unprintable character is seen in
# an input file.  The character is unprintable in the C locale.
#
#       $Name           The offending character, as a C octal escape sequence.
#
#: libaegis/input/crlf.cc:119
msgid "illegal '$name' character"
msgstr "ký tự « $name » cấm"

#
# This error message is issued when an illegal e+e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/arithmetic.cc:801 libaegis/aer/expr/plus.cc:164
msgid "illegal addition ($name1 + $name2)"
msgstr "tính cộng cấm ($name1 + $name2)"

#
# This message is issued when an inappropriate ~ is attempted.
#
#       $Name           The type name of the offending operand.
#
#: aefind/tree/bitwise.cc:368 libaegis/aer/expr/bit.cc:304
msgid "illegal bit not ($name)"
msgstr "giá trị số nguyên cần thiết cho « not » theo vị trí bit (đã cho $name)"

#
# This error message is issued when an illegal e!=e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/relative.cc:900 libaegis/aer/expr/rel.cc:845
msgid "illegal comparison ($name1 != $name2)"
msgstr "so sánh cấm ($name1 != $name2)"

#
# This error message is issued when an illegal e!~e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: libaegis/aer/expr/rel.cc:997
msgid "illegal comparison ($name1 !~ $name2)"
msgstr "so sánh cấm ($name1 !~ $name2)"

#
# This error message is issued when an illegal e<e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/relative.cc:160 libaegis/aer/expr/rel.cc:166
msgid "illegal comparison ($name1 < $name2)"
msgstr "so sánh cấm ($name1 < $name2)"

#
# This error message is issued when an illegal e<=e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/relative.cc:308 libaegis/aer/expr/rel.cc:301
msgid "illegal comparison ($name1 <= $name2)"
msgstr "so sánh cấm ($name1 ≤ $name2)"

#
# This error message is issued when an illegal e==e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/relative.cc:752 libaegis/aer/expr/rel.cc:710
msgid "illegal comparison ($name1 == $name2)"
msgstr "so sánh cấm ($name1 == $name2)"

#
# This error message is issued when an illegal e>e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/relative.cc:456 libaegis/aer/expr/rel.cc:436
msgid "illegal comparison ($name1 > $name2)"
msgstr "so sánh cấm ($name1 > $name2)"

#
# This error message is issued when an illegal e>=e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/relative.cc:604 libaegis/aer/expr/rel.cc:571
msgid "illegal comparison ($name1 >= $name2)"
msgstr "so sánh cấm ($name1 ≥ $name2)"

#
# This error message is issued when an illegal e~~e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: libaegis/aer/expr/rel.cc:921
msgid "illegal comparison ($name1 ~~ $name2)"
msgstr "so sánh cấm ($name1 ~~ $name2)"

#
# This error message is issued when a request to count the keys of an
# inappropriate object is requested.
#
#       $Name           The type name of the offending operand.
#
#: libaegis/aer/value.cc:73
msgid "illegal count request ($name)"
msgstr "yêu cầu đếm cấm ($name)"

#
# This error message is issued when an illegal / is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/arithmetic.cc:323 libaegis/aer/expr/mul.cc:281
msgid "illegal division ($name1 / $name2)"
msgstr "tính chia cấm ($name1 ÷ $name2)"

#
# This error message is issued when an illegal e##e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/arithmetic.cc:1042 libaegis/aer/expr/plus.cc:397
msgid "illegal join ($name1 ## $name2)"
msgstr "nối cấm ($name1 ## $name2)"

#
# This error message is issued when a request for the keys of an
# inappropriate object is requested.  (Keys can be used as the right
# hand side of a lookup.)
#
#       $Name           The type name of the offending operand.
#
#: libaegis/aer/value.cc:61
msgid "illegal keys request ($name)"
msgstr "yêu cầu các khoá cấm ($name)"

#
# This message is issued when an inappropriate assignment is attempted.
#
#: libaegis/aer/expr/assign.cc:51 libaegis/aer/expr/assign.cc:218
#: libaegis/aer/expr/assign.cc:255 libaegis/aer/expr/assign.cc:292
#: libaegis/aer/expr/assign.cc:329 libaegis/aer/expr/assign.cc:366
#: libaegis/aer/expr/assign.cc:403 libaegis/aer/expr/assign.cc:440
#: libaegis/aer/expr/assign.cc:477 libaegis/aer/expr/assign.cc:514
#: libaegis/aer/expr/assign.cc:551 libaegis/aer/expr/assign.cc:588
#: libaegis/aer/expr/assign.cc:625
msgid "illegal left hand side of assignment"
msgstr "bên trái cấm của hàm gán, nó phải là một biến có thể gán được"

#
# This message is issued when an inappropriate assignment is attempted.
#
#       $Name           The type name of the left hand side.
#
#: libaegis/aer/expr/assign.cc:94 libaegis/aer/expr/assign.cc:159
msgid "illegal left hand side of assignment (was given $name)"
msgstr ""
"bên trái cấm của hàm gán (đã nhận $name), nó phải là một biến có thể gán được"

#
# This message is issued when an inappropriate ! is attempted.
#
#       $Name           The type name of the offending operand.
#
#: aefind/tree/logical.cc:324 libaegis/aer/expr/logical.cc:235
msgid "illegal logical not ($name)"
msgstr "giá trị luận lý cần thiết cho « not » lôgic (đã cho $name)"

#
# This error message is issued when an illegal lookup is attempted.
# This occurs both for associative arrays "e1[e2]", and also for
# structures "e1.e2" (which are implemented as associative arrays).
#
#       $Name1          The type name of the first operand.
#       $Name2          The type name of the second operand.
#
#: libaegis/aer/value.cc:49 libaegis/aer/value/group.cc:126
#: libaegis/aer/value/gstate.cc:119 libaegis/aer/value/list.cc:79
#: libaegis/aer/value/passwd.cc:146 libaegis/aer/value/struct.cc:67
#: libaegis/aer/value/uconf.cc:131
msgid "illegal lookup ($name1[$name2])"
msgstr "tra tìm cấm ($name1[$name2])"

#
# This error message is issued when one or more of the arguments to the
# match operator are inappropriate types.
#
#       $name1  The name of the type of argument 1
#       $name2  The name of the type of argument 2
#
#: aefind/tree/match.cc:68
msgid "illegal match ($name1 ~ $name2)"
msgstr "khớp cấm ($name1 ~ $name2)"

#
# This error message is issued when an illegal % is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/arithmetic.cc:479 libaegis/aer/expr/mul.cc:419
#, no-c-format
msgid "illegal modulo ($name1 % $name2)"
msgstr "môđulô cấm ($name1 % $name2)"

#
# This error message is issued when an illegal * is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/arithmetic.cc:168 libaegis/aer/expr/mul.cc:144
msgid "illegal multiplication ($name1 * $name2)"
msgstr "tính nhân cấm ($name1 * $name2)"

#
# This message is issued when an inappropriate -e is attempted.
#
#       $Name           The type name of the offending operand.
#
#: aefind/tree/arithmetic.cc:570 libaegis/aer/expr/neg.cc:81
msgid "illegal negative ($name)"
msgstr "giá trị số nguyên cần thiết cho âm (đã cho $name)"

#
# This message is issued when an inappropriate +e is attempted.
#
#       $Name           The type name of the offending operand.
#
#: aefind/tree/arithmetic.cc:651 libaegis/aer/expr/neg.cc:136
msgid "illegal positive ($name)"
msgstr "giá trị số nguyên cần thiết cho dương (đã cho $name)"

#
# This error message is issued when an illegal e**e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: libaegis/aer/expr/power.cc:104 libaegis/aer/expr/power.cc:127
msgid "illegal power ($name1 ** $name2)"
msgstr "số mũ cấm ($name1 ** $name2)"

#
# This error message is issued when an illegal e<<e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/bitwise.cc:445 libaegis/aer/expr/shift.cc:70
#: libaegis/aer/expr/shift.cc:123
msgid "illegal shift ($name1 << $name2)"
msgstr "dời cấm sang bên phải ($name1 << $name2)"

#
# This error message is issued when an illegal e>>e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/bitwise.cc:524
msgid "illegal shift ($name1 >> $name2)"
msgstr "dời cấm sang bên trái ($name1 >> $name2)"

#
# This error message is issued when an illegal e-e is attempted.
#
#       $Name1          The type name of the left operand.
#       $Name2          The type name of the right operand.
#
#: aefind/tree/arithmetic.cc:948 libaegis/aer/expr/plus.cc:287
msgid "illegal subtraction ($name1 - $name2)"
msgstr "tính trừ cấm ($name1 - $name2)"

#
# This progress message is issued when aeimport completed successfully.
#
#: aeimport/reconstruct.cc:186
msgid "import complete"
msgstr "tiến trình nhập khẩu đã chạy xong thành công"

#
# This error message is issued when a command is given an inappropriate
# command line option.
#
#       $Name           The name of the offending command line option.
#
#: libaegis/ael/change/inappropriat.cc:32
#: libaegis/ael/project/inappropriat.cc:32
msgid "inappropriate $name option"
msgstr "tùy chọn $name được dùng một cách không thích hợp"

#
# This error message is issued when an ambiguous information name is given
# to the aev command.
#
#       $Name           The offending info name.
#       $Name_List      The list of possible alternatives.
#
#: libaegis/version.cc:158
msgid "info $name ambig ($name_list)"
msgstr "thông tin phiên bản « $name » mơ hồ ($name_list)"

#
# This error message is issued when an aed command is used on a change in
# the being 'integrated state' and files are named on the command line.
# You must not name files, and thus you must difference all files in the
# change.
#
#: aegis/aed.cc:964
msgid "int must diff all"
msgstr ""
"khi khác biệt một thay đổi ở tình trạng « đang được hợp nhất », không cho "
"phép bạn đặt tên của tập tin trên dòng lệnh"

#
# This error message is issued when an aet command is used on a change in
# the being 'integrated state' and files are named on the command line.
# You must not name files, and thus you must run all tests in the change.
#
#: aegis/aet.cc:808
msgid "int must test all"
msgstr ""
"khi kiểm tra một thay đổi ở tình trạng « đang được hợp nhất », không cho phép "
"bạn đặt tên của tập tin trên dòng lệnh"

#
# This error message is issued when a non-integer change number is
# supplied when fetching a cstate value.
#
#       $Name           The type name of the offending argument.
#
#: libaegis/aer/value/cstate.cc:83
msgid "integer index required (was given $name)"
msgstr "cần thiết chỉ mục số nguyên (đã cho $name)"

#
# This message is issued when an inappropriate & is attempted.
#
#       $Name           The type name of the offending operand.
#
#: aefind/tree/bitwise.cc:78 aefind/tree/bitwise.cc:98
#: libaegis/aer/expr/bit.cc:73 libaegis/aer/expr/bit.cc:98
msgid "integer value required for bit and (was given $name)"
msgstr "giá trị số nguyên cần thiết cho « và » theo vị trí bit (đã cho $name)"

#
# This message is issued when an inappropriate | is attempted.
#
#       $Name           The type name of the offending operand.
#
#: aefind/tree/bitwise.cc:266 aefind/tree/bitwise.cc:286
#: libaegis/aer/expr/bit.cc:222 libaegis/aer/expr/bit.cc:243
msgid "integer value required for bit or (was given $name)"
msgstr "giá trị số nguyên cần thiết cho « hoặc » theo vị trí bit (đã cho $name)"

#
# This message is issued when an inappropriate ^ is attempted.
#
#       $Name           The type name of the offending operand.
#
#: aefind/tree/bitwise.cc:172 aefind/tree/bitwise.cc:192
#: libaegis/aer/expr/bit.cc:150 libaegis/aer/expr/bit.cc:171
msgid "integer value required for bit xor (was given $name)"
msgstr ""
"giá trị số nguyên cần thiết cho « xor » (hoặc loại từ) theo vị trí bit (đã "
"cho $name)"

#
# This progress message is issued when aeib complete successfully.
#
#: aegis/aeib.cc:1302
msgid "integrate begin complete"
msgstr "tiến trình hợp nhất đã bắt đầu"

#
# This verbose message is issued when integrate begin undo completes
# successfully.
#
#: aegis/aeibu.cc:319
msgid "integrate begin undo complete"
msgstr ""
"mới hủy bước bắt đầu tiến trình hợp nhất: thay đổi đã trở về tình trạng « "
"$state »"

#
# This progress message is issued when aeifail completes successfully.
#
#: aegis/aeif.cc:517
msgid "integrate fail complete"
msgstr "tiến trình hợp nhất bị lỗi nên trở về nhà phát triển"

#
# This progress message is issued when aeipass completes successfully.
#
#: aegis/aeip.cc:2228
msgid "integrate pass complete"
msgstr "tiến trình hợp nhất đã chạy thành công"

#
# This error message is issued when aeipass fails.  Errors tend to
# happen together, to aeipass finds as many as possible before aborting.
#
#       $Number         Number of fatal errors found.
#
#: aegis/aeip.cc:1292
msgid "integrate pass fail"
msgstr "tìm $number lỗi thì thay đổi này còn lại ở tình trạng « $state »"

#
# This message is issued when integration builds are completed.
#
#: aegis/aeb.cc:507
msgid "integration build complete"
msgstr "tiến trình xây dựng hợp nhất đã chạy xong ${date %H:%M}"

#
# This message is issued when integration builds are commenced.
#
#: aegis/aeb.cc:505
msgid "integration build started"
msgstr "tiến trình xây dựng hợp nhất đã khởi chạy ${date %H:%M}"

#
# This error message is issued when Aegis terminates, because an
# interrupt occurred while waiting for a child process to terminate.
# This is after the child terminated and its status has been collected.
#
#       $Signal         The name of the signal which interrupted us.
#
#: libaegis/os/interrupt.cc:49
msgid "interrupted by $signal"
msgstr "bị ngắt bởi tín hiệu $signal"

#
# This message is issued when a function is called with incorrect arguments.
#
#: libaegis/aer/expr/func.cc:77 libaegis/sub/change/number.cc:348
#: libaegis/sub/change/number.cc:369
msgid "invalid function arguments"
msgstr "lời gọi hàm này có số không đúng, hay kiểu đối số không đúng"

#
# This message is issued when a non-function is called.
#
#       $Name           The type name of the non-function expression.
#
#: libaegis/aer/expr/func.cc:65
msgid "invalid function name ($name)"
msgstr "một biểu thức kiểu $name đã được cho, còn mong đợi một tên hàm"

#
# This error message is issued when aeipass wants to delete the
# baseline, and the user issued the command from there.
# Some UNIX will allow to delete an active directory, and some will
# not, so it is an error.
#
#: aegis/aeip.cc:1366
msgid "leave baseline"
msgstr "hãy rời thư mục đường cơ bản"

#
# This error message is issued when aeipass wants to delete the
# development directory, and the user issued the command from there.
# Some UNIX will allow to delete an active directory, and some will
# not, so it is an error.
#
#: aegis/aeip.cc:1362
msgid "leave dev dir"
msgstr "hãy rời thư mục phát triển"

#
# This error message is issued when aeibu wants to delete the
# integration directory, and the user issued the command from there.
# Some UNIX will allow to delete an active directory, and some will
# not, so it is an error.
#
#: aegis/aeibu.cc:283 aegis/aeif.cc:117 aegis/aeip.cc:1364
msgid "leave int dir"
msgstr "hãy rời thư mục hợp nhất"

#
# This progress message is issued when aeib creates a virtual copy of
# the baseline to construct the integration directory.
#
#: aegis/aeib.cc:1136
msgid "link baseline to integration directory"
msgstr "đang liên kết đường cơ bản tới thư mục hợp nhất"

#
# This error message is issued when a link fails.
#
#       $File_Name1     The name of the source file.
#       $File_Name1     The name of the destination file.
#
#: libaegis/change/build/symlinks.cc:209 libaegis/os/link.cc:42
msgid "link(\"$filename1\", \"$filename2\"): $errno"
msgstr "liên kết(\"$filename1\", \"$filename2\"): $errno"

#
# This error message is issued when ael is given an ambiguous list name.
#
#       $Name           The offending list name.
#       $Name_List      A list of possible interpretations.  (Optional)
#
#: aegis/ael.cc:412 aexml/main.cc:193
msgid "list $name ambiguous"
msgstr "tên danh sách « $name » mơ hồ ($name_list)"

#
# This message is issued when an inappropriate "in" is attempted.
#
#       $Name           The type name of the offending operand.
#
#: libaegis/aer/expr/in.cc:68
msgid "list value required (was given $name)"
msgstr "cần thiết giá trị danh sách (đã cho $name)"

#
# This fatal error message is issued when a lock is not available.
#
#: libaegis/change/cstate/lock_prepare.cc:38
#: libaegis/project/lock/prepare.cc:36 libaegis/user/ustate_lock.cc:54
msgid "lock not available"
msgstr "không có sẵn khoá"

#
# This information message is issued when Aegis begins logging to a new
# file, or overwrites and existing log file.
#
#       $File_Name      The name of the log file.
#
#: libaegis/log.cc:285
msgid "logging to $filename"
msgstr "đang ghi lưu vào tập tin « $filename »"

#
# This message is issued when a for loop is given a control expression
# (the middle one) which is not boolean.  Also use for while loops.
#
#       $Name           The type name of the offending expression.
#
#: libaegis/aer/stmt/for.cc:101 libaegis/aer/stmt/while.cc:82
#: libaegis/aer/stmt/while.cc:191
msgid "loop condition must be boolean (not $name)"
msgstr "điều kiện vòng lặp phải là luận lý (đã cho $name)"

#
# This error message is issued when a file lstat fails
#
#       $File_Name      The name of the offending file.
#
#: aefind/descend.cc:77 aegis/aeip.cc:287 aels/list.cc:138 libaegis/dir.cc:62
#: libaegis/dir_stack.cc:111
msgid "lstat $filename: $errno"
msgstr "$filename: $errno"

#
# This fatal error message is issued when the aemt command is asked to
# make a file transparent which is not present the the branch, but is
# present in a deeper ancestor branch.
#
# $filename     The name of the offending file.
#
#: aegis/aemt.cc:488
msgid "make $filename transparent, fail, too deep"
msgstr ""
"không thể làm cho tập tin $filename trong suốt vì nó không nằm trên nhánh, "
"nhưng nằm ở nhánh tổ tiên sâu hơn"

#
# This fatal error message is issued when the aemt command is asked to
# make a file transparent which is present the the branch, but is not
# present in a deeper ancestor branch.
#
# $filename     The name of the offending file.
#
#: aegis/aemt.cc:548
msgid "make $filename transparent, fail, too shallow"
msgstr ""
"không thể làm cho tập tin $filename trong suốt vì nó không cũng nằm trên "
"nhánh tổ tiên sâu hơn"

#
# This fatal error message is issued when the aemt command is asked to
# make a file transparent, and the branch being operated on is the trunk.
#
# $filename     The name of the offending file.
#
#: aegis/aemt.cc:526
msgid "make $filename transparent, fail, trunk"
msgstr ""
"không thể làm cho tập tin $filename trong suốt vì nó nằm trong thân, và bạn "
"rất có thể muốn dùng lệnh « aerm » thay vào đó"

#
# This error message is issued when aemt is invoked for a change which
# is not in the 'being developed' state.
#
#: aegis/aemt.cc:289
msgid "make transparent bad state"
msgstr ""
"thay đổi này ở tình trạng « $state », nó phải ở tình trạng « đang được phát "
"triển » để dùng khi làm cho tập tin trong suốt"

#
# This information message is issued by the aemt command when it
# successfully complete.
#
# $number       The number of files (optional).
#
#: aegis/aemt.cc:742
msgid "make transparent complete"
msgstr "đang làm cho $number tập tin trong suốt"

#
# This progress message is issued when the aemtu command completes
# successfully.  It details files which have been removed from the
# change.  Please note: this is NOT the same as files added to the
# change by aerm, which are to be removed BY the change.
#
#       $File_Name      Name of the file removed from the change.
#
#: aegis/aemtu.cc:580
msgid "make transparent undo $filename complete"
msgstr "tập tin « $filename » không còn được làm lại trong suốt"

#
# This informational message is issued when the aede command makes the
# development directory read only.  This remindes the developer not to
# change anything.
#
#: libaegis/change/develop_direct/read_only.cc:198
msgid "making dev dir read only"
msgstr "đang đặt thư mục phát triển là « chỉ đọc »"

#
# This informational message is issued when the aedeu, aerfail or aeifail
# command make the development directory writable again.
#
#: libaegis/change/develop_direct/read_write.cc:196
msgid "making dev dir writable"
msgstr "đang đặt thư mục phát triển là « ghi được » lần nữa"

#
# This error message is issued when a number which looks like a floating
# point constant has an incomplete exponent.
#
#: libaegis/aer/lex.cc:359 libaegis/meta_lex.cc:311
msgid "malformed exponent"
msgstr "số mũ dạng sai"

#
# This error message is issued when a number which looks like a hex
# constant is not complete.
#
#: libaegis/aer/lex.cc:273 libaegis/meta_lex.cc:193
msgid "malformed hex constant"
msgstr "hằng thập lục dạng sai"

#
# This error message is issued when an attempt is made to assign into a
# member of a list value.
#
#       $Name1          The type name of the first operand.
#       $Name2          The type name of the second operand.
#
#: libaegis/aer/value/list.cc:67
msgid "may not assign to a list member ($name1[$name2])"
msgstr "không cho phép gán cho thành viên của danh sách ($name1[$name2])"

#
# This error message is issued when the user attempts to use the aerm
# command to remove the project configuration file.  There may be other files
# in the future, hence the variable.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aerm.cc:489
msgid "may not remove $filename"
msgstr "không cho phép gỡ bỏ tập tin « $filename »"

#
# This error message is issued when the user attempts to use the aent
# command to create the project configuration file as a test.  There may be
# other files in the future, hence the variable.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aent.cc:500
msgid "may not test $filename"
msgstr "không cho phép dùng tập tin « $filename » là hàm thử"

#
# This error message is used when -Edit is used when in the background.
#
#       $Name           The name of the -Edit option.
#
#: libaegis/os/edit.cc:58
msgid "may not use $name in the background"
msgstr "không cho phép dùng $name ở nền"

#
# This progress message is issued when aed successfully completes a merge.
#
#       $Number         The number of files merged.
#                       (Optional)
#
#: aegis/aed.cc:1515
msgid "merge complete"
msgstr ""
"đã trộn với nhau $number tập tin, cần thiết tiến trình xây dựng « aegis -"
"Build » mới"

#
# This error message is issued when there is a known but syntactically
# incorrect option on the command line.
#
#       $Name           The offending command line argument.
#
#: libaegis/help.cc:300
msgid "misplaced \"$name\" option"
msgstr "tùy chọn « $name » bị để không đúng chỗ trên dòng lệnh"

#
# This error message is issued when there is an extra string on the
# command line.  It is probably a file name.
#
#       $File_Name      The offending command line argument.
#
#: libaegis/help.cc:275
msgid "misplaced file name (\"$filename\")"
msgstr "tên tập tin bị để không đúng chỗ (\"$filename\") trên dòng lệnh"

#
# This error message is issued when there is an extra number on the
# command line.
#
#       $Number         The offending command line argument.
#
#: libaegis/help.cc:282
msgid "misplaced number ($number)"
msgstr "con số bị để không đúng chỗ ($number) trên dòng lệnh"

#
# This error message is issued when a mkdir fails.
#
#       $File_Name      The name of the directory to be created.
#       $Argument       The mode the directory is to be created.
#
#: libaegis/os/mkdir.cc:44
msgid "mkdir(\"$filename\", $arg): $errno"
msgstr "mkdir(\"$filename\", $arg): $errno"

#
# This message is issued when an inappropriate -- is attempted.
#
#: libaegis/aer/expr/incr.cc:117 libaegis/aer/expr/incr.cc:273
msgid "modifiable lvalue required for decrement"
msgstr "cần thiết giá trị lvalue có thể sửa đổi cho hàm giảm dần"

#
# This message is issued when an inappropriate -- is attempted.
#
#       $Name           The type name of the offending operand.
#
#: libaegis/aer/expr/incr.cc:145 libaegis/aer/expr/incr.cc:301
msgid "modifiable lvalue required for decrement (was given $name)"
msgstr ""
"cần thiết giá trị lvalue có thể sửa đổi cho hàm giảm dần (đã cho $name), nó "
"phải là một biến có thể gán được"

#
# This message is issued when an inappropriate ++ is attempted.
#
#: libaegis/aer/expr/incr.cc:39 libaegis/aer/expr/incr.cc:195
msgid "modifiable lvalue required for increment"
msgstr "cần thiết giá trị lvalue có thể sửa đổi cho hàm tăng dần"

#
# This message is issued when an inappropriate ++ is attempted.
#
#       $Name           The type name of the offending operand.
#
#: libaegis/aer/expr/incr.cc:67 libaegis/aer/expr/incr.cc:223
msgid "modifiable lvalue required for increment (was given $name)"
msgstr ""
"cần thiết giá trị lvalue có thể sửa đổi cho hàm tăng dần (đã cho $name), nó "
"phải là một biến có thể gán được"

#
# This error message is issued when a modulo by zero is attempted.
#
#: aefind/tree/arithmetic.cc:377 libaegis/aer/expr/mul.cc:310
msgid "modulo by zero"
msgstr "môđulô cho không"

#
# This progress message is issued when aemv completes successfully.
#
#       $File_Name1     The name of the original file.
#       $File_Name2     The name of the destination file.
#
#: aegis/aemv.cc:695
msgid "move $filename1 to $filename2 complete"
msgstr "tập tin « $filename1 » đã được di chuyển sang « $filename2 »"

#
# This progress message is issued when the aemtu command completes
# successfully.  It details files which have been removed from the
# change.  Please note: this is NOT the same as files added to the
# change by aerm, which are to be removed BY the change.
#
#       $File_Name      Name of the file removed from the change.
#
#: aegis/aemvu.cc:603
msgid "move file undo $filename complete"
msgstr "tập tin « $filename » không còn được di chuyển lại"

#
# This text is used when aenc -edit creates a template attributes file,
# and makes a suggestion as to how to obtain default settings.  Usually
# in the C locale, so avoid non-ascii characters if at all possible.
# (A leading newline is a good idea.  Internal newlines are also a good
# idea, because io_comment_append does not automatically wrap.)
#
#: aegis/aenc.cc:385
msgid "nc dflt hint"
msgstr ""
"Gợi ý: xoá mọi thứ bên dưới trường « cause » (nguyên nhân) sẽ đặt các giá trị "
"mặc định một cách thích hợp với nguyên nhân bạn đã chọn."

#
# This progress message is issued when aena completes successfully.
#
#       $Name           The user name of the new administrator.
#
#: aegis/aena.cc:159
msgid "new administrator $name complete"
msgstr "người dùng « $name » giờ này là quản trị viên"

#
# This progress message is issued when aenrls completes successfully.
#
#: aegis/aenpa.cc:192
msgid "new alias $name complete"
msgstr "bí danh mới « $name » đã được tạo"

#
# This progress message is issued when aenbr completes successfully.
#
#: libaegis/project/verbose/newbrancomp.cc:28
msgid "new branch complete"
msgstr "đã tạo"

#
# This progress message is issued when aenbru completes successfully.
#
#: aegis/aenbru.cc:287
msgid "new branch undo complete"
msgstr "bị gỡ bỏ"

#
# This progress message is issued when aenc completes successfully.
#
#: libaegis/change/verbose/newchancomp.cc:28
msgid "new change complete"
msgstr "đã tạo"

#
# This progress message is issued when aencu completes successfully.
#
#: aegis/aedbu.cc:336 aegis/aencu.cc:216
msgid "new change undo complete"
msgstr "bị gỡ bỏ"

#
# This progress message is issued when aend completes successfully.
#
#       $Name           The user name of the new developer.
#
#: aegis/aend.cc:159
msgid "new developer $name complete"
msgstr "người dùng « $name » giờ này là nhà phát triển"

#
# This progress message is issued when aenf completes successfully
#
#: aegis/aenf.cc:838
msgid "new file $filename completed"
msgstr "tập tin « $filename » đã được thêm"

#
# This fatal error message is issued when the aenf command runs a
# body_command to create a new file, and the command fails to create
# the file.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/change/file/template.cc:229
msgid "new file $filename not created"
msgstr "chưa tạo tập tin « $filename » "

#
# This progress message is issued when aenfu completes successfully.
#
#       $File_Name      The name of a removed file.
#
#: aegis/aenfu.cc:565
msgid "new file undo $filename complete"
msgstr "tập tin mới « $filename » bị gỡ bỏ"

#
# This error message is issued when an aenfu command fails.  Errors are
# printed out as they are found, but frequently errors happen together,
# so the aenfu command finds as many as possible before aborting.  This
# error is emitted when it aborts.
#
#       $Number         Number of fatal errors found.
#                       (Optional)
#
#: aegis/aenfu.cc:465
msgid "new file undo fail"
msgstr "tìm $number lỗi nghiêm trọng: không có tập tin bị gỡ bỏ khỏi thay đổi"

#
# This progress message is issued when aeni completes successfully.
#
#       $Name           The user name of the new integrator.
#
#: aegis/aeni.cc:159
msgid "new integrator $name complete"
msgstr "người dùng « $name » giờ này là người hợp nhất"

#
# This progress message is issued when aenpr completes successfully.
#
#: libaegis/project/verbose/newprojcomp.cc:28
msgid "new project complete"
msgstr "đã tạo"

#
# This progress message is issued when aenrls completes successfully.
#
#: aegis/aenrls.cc:1015 aegis/aenrls.cc:1017
msgid "new release complete"
msgstr "đã táo"

#
# This progress message is issued when aenrv completes successfully.
#
#       $Name           The user name of the new reviewer.
#
#: aegis/aenrv.cc:159
msgid "new reviewer $name complete"
msgstr "người dùng « $name » giờ này là người xem lại"

#
# This progress message is issued when aent completes successfully.
#
#: aegis/aent.cc:700
msgid "new test $filename complete"
msgstr "tập tin « $filename » hàm thử mới"

#
# This error message is issued when an aent command fails.  Errors are
# printed out as they are found, but frequently errors happen together,
# so the aent command finds as many as possible before aborting.  This
# error is emitted when it aborts.
#
#       $Number         Number of fatal errors found.
#                       (Optional)
#
#: aegis/aent.cc:566
msgid "new test failed"
msgstr ""
"tìm $number lỗi nghiêm trọng: không có hàm thử mới được thêm vào thay đổi"

#
# This progress message is issued when aentu completes successfully.
#
#       $File_Name      The name of the test removed.
#
#: aegis/aentu.cc:583
msgid "new test undo $filename complete"
msgstr "tập tin « $filename » hàm thử hủy bước"

#
# This error message is issued when an aentu command fails.  Errors are
# printed out as they are found, but frequently errors happen together,
# so the aentu command finds as many as possible before aborting.  This
# error is emitted when it aborts.
#
#       $Number         Number of fatal errors found.
#                       (Optional)
#
#: aegis/aentu.cc:483
msgid "new test undo fail"
msgstr "tìm $number lỗi nghiêm trọng: không có hàm thử bị gỡ bỏ khỏi thay đổi"

#
# This error message is issued when an aemv command is issued with the
# source and destination files the same.  Use aecp if you don't want to
# change the name of the file.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aemv.cc:156
msgid "nil move $filename"
msgstr "không cho phép bạn di chuyển tập tin « $filename » ở trên với nhau"

#
# This error message is issued when an unknown name is referenced,
# but a close match is found.
#
#       $Name           The undefined variable name.
#       $Guess          The closest match found for the name.
#
#: aede-policy/validation/factory.cc:192 aefind/function.cc:103
#: aelcf/main.cc:97 aelcf/main.cc:130 aelpf/main.cc:98 aelpf/main.cc:131
#: aemakegen/target/factory.cc:77 libaegis/aer/expr/name.cc:133
#: libaegis/meta_parse.cc:271 libaegis/meta_parse.cc:371
#: libaegis/sub/change/number.cc:327 libaegis/sub/project.cc:98
#: libaegis/sub/user.cc:112
msgid "no \"$name\", guessing \"$guess\""
msgstr "chưa xác định tên « $name »: đoán bạn định ghi « $guess » thay vào đó"

#
# This error message is issued when the named file cannot be found in a
# change or project (context will tell which) and no best guess is
# available.  This is used by many commands.
#
#       $File_Name      The offending file name.
#
#: aeannotate/annotate.cc:181 aediff/diff.cc:263 aediff/diff.cc:287
#: aegis/aecp.cc:558 aegis/aecp.cc:1550 aegis/aecpu.cc:441 aegis/aed.cc:307
#: aegis/aed.cc:340 aegis/aed.cc:1032 aegis/aefa.cc:117 aegis/aemt.cc:493
#: aegis/aemtu.cc:425 aegis/aemv.cc:141 aegis/aemvu.cc:403 aegis/aenfu.cc:441
#: aegis/aentu.cc:459 aegis/aerm.cc:535 aegis/aermu.cc:472 aegis/aet.cc:1022
#: aegis/aet.cc:1821 libaegis/change/identifi_sub/file_revisio.cc:108
#: libaegis/change/identifi_sub/filerevuuid.cc:87
msgid "no $filename"
msgstr "không rõ tập tin « $filename »"

#
# This error message is issued when an aed is performed on a change
# which contains a copied file which has been removed from the baseline
# by another change.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aed.cc:1270 aegis/aede.cc:630 aegis/aede.cc:731
#: libaegis/change/file/promote.cc:141
msgid "no $filename in baseline"
msgstr "tập tin « $filename » không còn nằm lại trên đường cơ bản"

#
# This error message is issued when the named file cannot be found in a
# change or project (context will tell which).  This is used by many
# commands.
#
#       $File_Name      The offending file name.
#       $Guess          The best guess as to the most possible filename
#                       the user may have meant.
#
#: aediff/diff.cc:257 aediff/diff.cc:281 aegis/aecp.cc:554 aegis/aecp.cc:1546
#: aegis/aecpu.cc:438 aegis/aefa.cc:112 aegis/aemt.cc:469 aegis/aemtu.cc:422
#: aegis/aemv.cc:131 aegis/aemvu.cc:400 aegis/aenfu.cc:432 aegis/aentu.cc:450
#: aegis/aerm.cc:526 aegis/aermu.cc:463 aegis/aet.cc:1013
#: libaegis/change/identifi_sub/file_revisio.cc:104
msgid "no $filename, closest is $guess"
msgstr "không rõ tập tin « $filename », gần nhất là tập tin « $guess »"

#
# This error message is issued when ael is given a list name it does not
# understand.
#
#       $Name           The offending list name.
#
#: aede-policy/validation/factory.cc:197 aegis/ael.cc:391 aexml/main.cc:152
msgid "no $name list"
msgstr "không rõ tên danh sách « $name »"

#
# This error message is issued when Aegis is given a project name which
# is not defined (along the AEGIS_PATH).
#
#       $Name           The offending project name.
#
#: libaegis/project/bind/existing.cc:201 libaegis/project/home_path/get.cc:45
msgid "no $name project"
msgstr "không rõ dự án « $name »"

#
# This error message is issued when Aegis is given a project name which
# is not defined (along the AEGIS_PATH).
#
#       $Name           The offending project name.
#       $Guess          The closest matching project name.
#
#: libaegis/project/bind/existing.cc:193
msgid "no $name project, closest is $guess"
msgstr "không rõ dự án « $name », gần nhất là dự án « $guess »"

#
# This error message is issued if no action was specified on the aesvt
# command line.  Exactly one is required.
#
#: aesvt/main.cc:323
msgid "no action specified"
msgstr "chưa xác định hành vi"

#
# This fatal error message is issued when an attempt is made to aechown
# a branch.
#
#: aegis/aechown.cc:240
msgid "no branch chown"
msgstr "thay đổi này là một nhánh: không thể thay đổi quyền sở hữu của nhánh"

#
# This information message is issued when aeb is invoked for a change in
# a project which is configured to not require builds.
#
#: aegis/aeb.cc:330
msgid "no build required"
msgstr "không cần xây dựng"

#
# This error message is issued when a command which requires an explicit
# change number is not given one.
#
#: aegis/aechown.cc:178 aegis/aeclone.cc:229 aegis/aedb.cc:256
#: libaegis/change/identifi_sub/erro_no_chan.cc:28
#: libaegis/user/default.cc:241
msgid "no change number"
msgstr "bạn phải đưa ra số hiệu thay đổi một cách dứt khoát trong câu lệnh này"

#
# This fatal error message is issued when a user attempts to perform a
# cross branch merge on a change in the "being integrated" state.
#
#: aegis/aed.cc:912
msgid "no cross branch int merge"
msgstr ""
"không cho phép bạn chạy tiến trình trộn chéo nhánh với một thay đổi ở tình "
"trạng « $state »"

#
# This error message is issued when an unknown delta name is requested.
#
#       $Name           The offending delta name.
#
#: aegis/aecp.cc:415 aegis/aecp.cc:1250
#: libaegis/change/history/delta_name/by.cc:90
#: libaegis/change/history/delta_name/to_change.cc:90
#: libaegis/project/delta2change.cc:57
msgid "no delta $name"
msgstr "không rõ tên δ « $name »"

#
# This error message is issued when an unknown delta name is requested.
#
#       $Name           The offending delta name.
#       $Guess          The closest matching known delta name.
#
#: libaegis/change/history/delta_name/by.cc:77
#: libaegis/change/history/delta_name/to_change.cc:77
msgid "no delta $name, closest is $guess"
msgstr "không rõ tên δ « $name », gần nhất là « $guess »"

#
# This error message is issued when an unknown delta number is given.
#
#       $Number         The offending delta number.
#
#: aegis/aedn.cc:284 aegis/aedn.cc:301
#: libaegis/change/history/delta2change.cc:53
msgid "no delta $number"
msgstr "không rõ δ $number"

#
# This error message is issued when a delta name should have been given
# on the command line, and was not.
#
#: aegis/aedn.cc:239
msgid "no delta name"
msgstr "chưa ghi rõ tên δ"

#
# This error message is issued when a user has requested that a delta
# name be attached to the "latest" delta, but the project (or branch)
# does not yet have an integrations, and so nothing to attache a delta
# name to.
#
#: aegis/aedn.cc:310
msgid "no delta yet"
msgstr "chưa chạy xong tiến trình hợp nhất, vậy chưa có thể gán một tên δ"

#
# This error message is issued when a request is made which requires the
# development directory of a change, but the change is in a state which
# has no development directory.
#
#: libaegis/change/top_path/get.cc:50
msgid "no dev dir"
msgstr "thay đổi ở tình trạng « $state », không có thư mục phát triển"

#
# This information message is issued when the aed command is run for a
# change which is in a project configured not to use aed.
#
#: aegis/aed.cc:184 aegis/aed.cc:1538
msgid "no diff required"
msgstr "không cần khác biệt"

#
# This error message is issued when an attempt is made to specify a
# directory name in combination with the -Output option of aecp.  Only
# single source file may be specified with the -Output option.
#
#       $Name           The name of the -Output option.
#
#: aegis/aecp.cc:515 aegis/aecp.cc:1417
msgid "no dir with $name"
msgstr "không cho phép đặt tên của thư mục và dùng tùy chọn $name"

#
# This error message is issued when a command which requires file names
# on the command line is not given any.
#
#: aeannotate/annotate.cc:762 aegis/aecp.cc:288 aegis/aecp.cc:1031
#: aegis/aecpu.cc:212 aegis/aecpu.cc:470 aegis/aefa.cc:217 aegis/aefa.cc:483
#: aegis/aefa.cc:783 aegis/aemt.cc:247 aegis/aemtu.cc:204 aegis/aemtu.cc:454
#: aegis/aemvu.cc:193 aegis/aenf.cc:304 aegis/aenfu.cc:216 aegis/aentu.cc:232
#: aegis/aerm.cc:253 aegis/aermu.cc:249 aesubunit/subunit.cc:206
msgid "no file names"
msgstr "chưa ghi rõ tên tập tin trên dòng lệnh"

#
# This error message is issued when an attempt is made to specify a
# file name in combination with a conflicting option.
#
#       $Name           The name of the conflicting option.
#
#: aegis/aet.cc:647 aegis/aet.cc:660 aegis/aet.cc:681 aegis/aet.cc:1629
#: aegis/aet.cc:1644
msgid "no file with $name"
msgstr "không cho phép đặt tên của tập tin và dùng tùy chọn $name"

#
# This error message is issued when an otherwise valid command is
# used for a change which does not yet have any files attached to it.
#
#: aegis/aeb.cc:260 aegis/aed.cc:940 aegis/aede.cc:244
msgid "no files"
msgstr ""
"thay đổi này không có tập tin, bạn phải thêm tập tin trước khi tiếp tục"

#
# This error message is issued when an aecp command fails.  Errors are
# printed out as they are found, but frequently errors happen together,
# so the aecp command finds as many as possible before aborting.  This
# error is emitted when it aborts.
#
#       $Number         Number of fatal errors found.
#                       (Optional)
#
#: aegis/aecp.cc:568 aegis/aecp.cc:1580
msgid "no files copied"
msgstr "tìm $number lỗi nghiêm trọng nên không có tập tin được sao chép"

#
# This error message is issued when an aediff command fails.  Errors are
# printed out as they are found, but frequently errors happen together,
# so the aediff command finds as many as possible before aborting.  This
# error is emitted when it aborts.
#
#          $Number        Number of fatal errors found.
#                         (Optional)
#
#: aediff/diff.cc:296
#, fuzzy
msgid "no files diffed"
msgstr "found $number fatal error${plural $number s}, no files diffed"

#
# This error message is issued when an aecpu command fails.  Errors are
# printed out as they are found, but frequently errors happen together,
# so the aecpu command finds as many as possible before aborting.  This
# error is emitted when it aborts.
#
#       $Number         Number of fatal errors found.
#                       (Optional)
#
#: aegis/aecpu.cc:478 aegis/aemtu.cc:462 aegis/aemvu.cc:441
msgid "no files uncopied"
msgstr ""
"tìm $number lỗi nghiêm trọng nên không có tập tin bị gỡ bỏ khỏi thay đổi"

#
# This fatal error message is issued when aesvt finds no history
# file on the command line.
#
#: aesvt/main.cc:255
msgid "no history file name specified"
msgstr "chưa ghi rõ tên tập tin lược sử"

#
# This fatal error message is issued when aeimport finds no history
# files in the directory tree specified on the command line.
#
#: aeimport/import.cc:312
msgid "no history files found"
msgstr "không tìm thấy tập tin lược sử bên dưới thư mục đã ghi rõ"

#
# This error message is issued when an unknown information name is given
# to the aev command.
#
#       $Name           The offending info name.
#
#: libaegis/version.cc:141
msgid "no info $name"
msgstr "không rõ tên thông tin phiên bản « $name »"

#
# This error message is issued if the assvt -checkin command is not
# given an input file name on the command line.
#
#: aesvt/main.cc:292
msgid "no input file"
msgstr "không có tập tin nhập vào"

#
# This error message is issued when a request is made which requires the
# integration directory of a change, but the change is in a state which
# has no integration directory.
#
#: libaegis/change/integra_direct/get.cc:50
msgid "no int dir"
msgstr "thay đổi này ở tình trạng « $state », không có thư mục hợp nhất"

#
# This error message is issued when an aed -merge command is issued for a
# change in the 'being integrated' state.  The integrator has no mandate
# to fix things, and so a merge in this state is illegal.
#
#: aegis/aed.cc:924
msgid "no int merge"
msgstr "không thể trộn một thay đổi ở tình trạng « đang được hợp nhất »"

#
# This error message is issued when ael is not given a list name.
#
#: aegis/ael.cc:378 aexml/main.cc:308
msgid "no list"
msgstr "chưa ghi rõ tên danh sách"

#
# This error message is issued when a request is made which requires the
# log file name of a change, but the change is in a state which
# has no log file.
#
#: libaegis/change/logfile/get.cc:48
msgid "no log file"
msgstr "thay đổi này ở tình trạng « $state », không có tập tin ghi lưu"

#
# This error message is issued when the user gives a merge option to
# aed, as well as the -anticipate option.
#
#: aegis/aed.cc:775
msgid "no merge anticipate"
msgstr "không cho phép bạn ghi rõ tùy chọn trộn với « -ANticipate »"

#
# This error message is issued when aenf command fails.  Errors are
# printed out as they are found, but frequently errors happen together,
# so the aenf command finds as many as possible before aborting.  This
# error is emitted when it aborts.
#
#       $Number         Number of fatal errors found.
#                       (Optional)
#
#: aegis/aenf.cc:298 aegis/aenf.cc:599 aegis/aenf.cc:701
msgid "no new files"
msgstr "tìm $number lỗi nghiêm trọng nên không có tập tin mới được thêm"

#
# This error message is issued if output file name was specified on the
# aesvt -checkout command line.
#
#: aesvt/main.cc:311
msgid "no output file"
msgstr "không có tập tin kết xuất"

#
# This error message is issued when a command which requires an explicit
# project name is not given one.
#
#: aegis/aenbr.cc:202 aegis/aenc.cc:325 aegis/aenpa.cc:126 aegis/aenpr.cc:365
#: aegis/aenrls.cc:318 aegis/aermpr.cc:126 aegis/aerpa.cc:129
#: aeimport/import.cc:247 libaegis/user/default.cc:405
msgid "no project name"
msgstr "bạn phải đưa ra tên dự án một cách dứt khoát tới câu lệnh nàu"

#
# This error message is issued when an unknown report name is requested.
#
#       $Name           The offending report name.
#
#: libaegis/aer/parse.cc:192
msgid "no report $name"
msgstr "không rõ tên báo cáo « $name »"

#
# This error message is issued when aer is not given a report name on
# the command line.
#
#: aegis/aer.cc:193 aereport/main.cc:185
msgid "no report name"
msgstr "chưa ghi rõ tên báo cáo"

#
# This error message is issued when aet completes unsuccessfully because
# one or more tests returned a "no result" exit code.
#
#       $Number         The number of tests which failed.
#
#: aegis/aet.cc:332 aegis/aet.cc:334 aegis/aet.cc:339 aegis/aet.cc:341
msgid "no result $number tests"
msgstr "có $number hàm thử không trả lại kết quả"

#
# This error message is issued if no size was specified on the command
# line.  Exactly two are required.
#
#: aerect/main.cc:251
msgid "no size specified"
msgstr "chưa xác định kích cỡ"

#
# This error message is issued when aed attempts to anticipate another
# change, and the two files don't have any suitable files in common.
#
#: aegis/aed.cc:239
msgid "no suitable files in common"
msgstr "không có tập tin thích hợp dùng chung"

#
# This error message is issued when a command which requires an explicit
# user name is not given one.
#
#: aegis/aechown.cc:180
msgid "no user name"
msgstr "bạn phải đưa ra tên người dùng một cách dứt khoát tới câu lệnh này"

#
# This error message is issued when a command which requires a list
# of user names is not given any name on the command line.
#
#: aegis/aena.cc:225 aegis/aend.cc:226 aegis/aeni.cc:226 aegis/aenrv.cc:234
#: aegis/aera.cc:225 aegis/aerd.cc:208 aegis/aeri.cc:208 aegis/aerrv.cc:204
msgid "no user names"
msgstr "chưa ghi rõ tên người dùng"

#
# This error message is issued when two (of 3) mutually exclusive options are
# both specified on the command line.
#
#       $Name1          The name of a command line option.
#       $Name2          The name of a command line option.
#       $Name3          The name of a command line option.
#
#: libaegis/help.cc:331
msgid "not $name1 and $name2 and $name3 together"
msgstr ""
"ba tùy chọn $name1, $name2, $name3 loại từ lẫn nhau : chỉ có thể ghi rõ một "
"của chúng"

#
# This error message is issued when two mutually exclusive options are
# both specified on the command line.
#
#       $Name1          The name of a command line option.
#       $Name2          The name of a command line option.
#
#: libaegis/help.cc:317
msgid "not $name1 and $name2 together"
msgstr ""
"hai  tùy chọn $name1, $name2 loại từ lẫn nhau : chỉ có thể ghi rõ một của "
"chúng"

#
# This fatal error message is issued when a change is used in a context
# which requires a branch.  (The change number will be supplied by the
# change_fatal function.)
#
#: libaegis/project/bind/existing.cc:107
msgid "not a branch"
msgstr "thay đổi này không phải là một nhánh"

#
# This error message is issued when a command which requires
# developer privileges is used, and the user is not a developer.
#
#: aegis/aedb.cc:288
msgid "not a developer"
msgstr "người dùng « $user » không phải là một nhà phát triển"

#
# This error message is issued when a command which requires
# reviewer privileges is used, and the user is not a reviewer.
#
#: aegis/aerb.cc:240 aegis/aerbu.cc:206 aegis/aerf.cc:126 aegis/aerp.cc:121
#: aegis/aet.cc:770
msgid "not a reviewer"
msgstr "người dùng « $user » không phải là một người xem lại"

#
# This error message is issued when a command which requires
# administrator privileges is used, and the user is not an administrator.
#
#: aegis/aechown.cc:217 aegis/aedb.cc:234 aegis/aedbu.cc:202 aegis/aedn.cc:270
#: aegis/aena.cc:106 aegis/aenbr.cc:231 aegis/aenbru.cc:187
#: aegis/aenbru.cc:225 aegis/aenc.cc:113 aegis/aencu.cc:189 aegis/aend.cc:106
#: aegis/aeni.cc:106 aegis/aenpa.cc:144 aegis/aenrls.cc:361 aegis/aenrv.cc:106
#: aegis/aepa.cc:111 aegis/aera.cc:106 aegis/aerd.cc:106 aegis/aeri.cc:106
#: aegis/aermpr.cc:185 aegis/aerpa.cc:161 aegis/aerrv.cc:106
#: aelock/lock.cc:103
msgid "not an administrator"
msgstr "người dùng « $user » không phải là một quản trị viên"

#
# This error message is issued when a command which requires an even
# number of file names is not given one.
#
#: aegis/aemv.cc:411
msgid "not an even number of args"
msgstr "đối với câu lệnh này thì bạn phải đưa ra số chẵn các tập tin"

#
# This error message is issued when a command which requires integrator
# privileges is run, and the user is not an integrator.
#
#: aegis/aeib.cc:861
msgid "not an integrator"
msgstr "người dùng « $user » không phải là một người hợp nhất"

#
# This error message is issued when a build request is given for a
# change which is in the being developed state, but the requesting user
# is not the change's developer.
#
#: aegis/aeb.cc:258 aegis/aeclean.cc:440 aegis/aecp.cc:1214 aegis/aecpu.cc:256
#: aegis/aed.cc:176 aegis/aed.cc:853 aegis/aedbu.cc:200 aegis/aede.cc:242
#: aegis/aemt.cc:293 aegis/aemtu.cc:248 aegis/aemv.cc:456 aegis/aemvu.cc:237
#: aegis/aenf.cc:377 aegis/aenfu.cc:262 aegis/aent.cc:298 aegis/aentu.cc:278
#: aegis/aerm.cc:316 aegis/aermu.cc:295 aegis/aet.cc:746
msgid "not developer"
msgstr ""
"người dùng « $user » không phải là nhà phát triển: chỉ người dùng « $developer "
"» có quyền thao tác thay đổi này"

#
# This error message is issued when a request is made to delete the last
# administrator of a project.  There must always be at least one project
# administrator at all times.
#
#: aegis/aera.cc:135
msgid "not enough admin"
msgstr "lúc nào cũng phải có ít nhất một quản trị viên"

#
# This error message is issued when a build request is given for a
# change which is in the 'being integrated' state, but the requesting user
# is not the change's integrator.
#
#: aegis/aeb.cc:270 aegis/aed.cc:848 aegis/aeibu.cc:222 aegis/aeif.cc:135
#: aegis/aeip.cc:486 aegis/aet.cc:777
msgid "not integrator"
msgstr ""
"người dùng « $user » không phải là người hợp nhất: chỉ người dùng « "
"$integrator » có quyền thao tác thay đổi này"

#
# This error message is issued when a review pass or review fail or review
# begin undo request is given for a change which is in the being reviewed
# state, but the requesting user is not the change's reviewer AND the
# project attribute "develop_end_action" is set to "goto_awaiting_review".
#
#: aegis/aerbu.cc:218 aegis/aerf.cc:117 aegis/aerp.cc:115 aegis/aet.cc:765
msgid "not reviewer"
msgstr ""
"người dùng « $user » không phải là người xem lại: chỉ người dùng « $reviewer » "
"có quyền thao tác thay đổi này"

#
# This error message is issued when a substitution function is called
# incorrectly.  See (+++) above.
#
#: libaegis/sub/architecture.cc:67 libaegis/sub/base_relativ.cc:71
#: libaegis/sub/base_relativ.cc:94 libaegis/sub/change/active_direc.cc:42
#: libaegis/sub/change/attribute.cc:35 libaegis/sub/change/delta.cc:62
#: libaegis/sub/change/develo_direc.cc:63
#: libaegis/sub/change/develop_list.cc:36 libaegis/sub/change/developer.cc:59
#: libaegis/sub/change/files.cc:61 libaegis/sub/change/integr_direc.cc:63
#: libaegis/sub/change/integrator.cc:58 libaegis/sub/change/number.cc:400
#: libaegis/sub/change/number.cc:446 libaegis/sub/change/reviewer.cc:58
#: libaegis/sub/change/reviewr_list.cc:36 libaegis/sub/change/state.cc:57
#: libaegis/sub/change/version.cc:81 libaegis/sub/change/version.cc:93
#: libaegis/sub/copyri_owner.cc:38 libaegis/sub/copyri_years.cc:83
#: libaegis/sub/histo_direc.cc:62 libaegis/sub/history_path.cc:45
#: libaegis/sub/history_path.cc:68 libaegis/sub/project.cc:133
#: libaegis/sub/project/adminis_list.cc:66 libaegis/sub/project/baseline.cc:61
#: libaegis/sub/project/develop_list.cc:65
#: libaegis/sub/project/integra_list.cc:65
#: libaegis/sub/project/reviewe_list.cc:65 libaegis/sub/project/specific.cc:78
#: libaegis/sub/search_path.cc:74 libaegis/sub/source.cc:76
#: libaegis/sub/source.cc:126
msgid "not valid in current context"
msgstr "không thích hợp ở ngữ cảnh hiện thời"

#
# This error message is issued when a file open fails
#
#       $File_Name      The name of the offending file.
#
#: aesubunit/subunit.cc:71 libaegis/gif/open.cc:480 libaegis/input/file.cc:127
#: libaegis/lock.cc:577 libaegis/lock.cc:1201 libaegis/os/edit/string.cc:42
#: libaegis/output/file.cc:185 libaegis/safe_freopen.cc:38
msgid "open $filename: $errno"
msgstr "mở « $filename »: $errno"

#
# This error message is issued when a file open fails because there was
# no curl library available when ./configure was run.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/input/curl.cc:620
msgid "open $filename: no curl library"
msgstr ""
"không thể mở tập tin « $filename » vì không có thư viện « -lcurl » sẵn sàng "
"khi xây dựng Aegis. Thư viện curl được dùng để đọc rất nhiều kiểu địa chỉ "
"URL khác nhau. Nếu bạn sử dụng bộ quản lý gói phần mềm, thư viện này thường "
"nằm trong gói « curl-devel ». Bạn cũng cần phải cấu hình lại và xây dựng lại "
"Aegis một khi cài đặt nó."

#
# This error message is issued by aede when attempting to end the
# development of a branch and there is still an outstanding change on
# the branch.  This message will be issued for each outstanding change.
#
#: libaegis/project/active.cc:64 libaegis/project/active.cc:87
msgid "outstanding change"
msgstr "thay đổi này ở tình trạng « $state »"

#
# This error message is issued by aede/aenbru/aermpr when attempting to
# end the development of a branch (kill off a branch) and there is one
# or more outstanding changes on the branch.
#
#       $Number         Number of changes outstanding.  (Optional)
#
#: libaegis/project/active.cc:113
msgid "outstanding changes"
msgstr ""
"có $number thay đổi còn lại; không cho phép bạn sử dụng câu lệnh này nếu có "
"thay đổi còn lại"

#
# This error message is issued when the argument to -Page_Length is absurd.
#
#       $Number         The offending page length.
#
#: libaegis/option.cc:151
msgid "page length $number out of range"
msgstr "chiều dài trang $number ở ngoại phạm vi"

#
# This error message is issued when the argument to -Page_Width is absurd.
#
#       $Number         The offending page width.
#
#: libaegis/option.cc:129
msgid "page width $number out of range"
msgstr "bề rộng trang $number ở ngoại phạm vi"

#
# This error message is issued when bison finds an error at parse time.
#
#: libaegis/aer/lex.cc:823
msgid "parse error"
msgstr "không thể hiểu được bạn muốn nói gì"

#
# This error message is issued when bison finds an error at parse time.
#
#: libaegis/aer/lex.cc:824
msgid "parse error; also virtual memory exceeded"
msgstr "không thể hiểu được bạn muốn nói gì, quá phức tạp để vừa bộ nhớ"

#
# This error message is issued when bison finds an error at parse time.
#
#: libaegis/aer/lex.cc:825
msgid "parse error; also virtual memory exhausted"
msgstr "không thể hiểu được bạn muốn nói gì, quá phức tạp để vừa bộ nhớ"

#
# This error message is issued when bison finds an error at parse time.
#
#: libaegis/aer/lex.cc:826
msgid "parser stack overflow"
msgstr "không thể hiểu được bạn muốn nói gì, quá phức tạp và tràn đống"

#
# This message is issued when partial development builds are completed.
#
#: aegis/aeb.cc:567
msgid "partial build complete"
msgstr "tiến trình xây dựng bộ phận đã chạy xong ${date %H:%M}"

#
# This message is issued when partial development builds are commenced.
#
#: aegis/aeb.cc:556
msgid "partial build started"
msgstr "tiến trình xây dựng bộ phận đã khởi chạy ${date %H:%M}"

#
# This progress message is issued when aet completes, both successfully
# or unsuccessfully.
#
#       $Number         The number of tests which passed.
#
#: aegis/aet.cc:311 aegis/aet.cc:313
msgid "passed $number tests"
msgstr "đã đỗ $number hàm thử"

#
# This error message is issued when a pathconf name max fails.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/os/pathconf.cc:145
msgid "pathconf(\"$filename\", {NAME_MAX}): $errno"
msgstr "pathconf(\"$filename\", {NAME_MAX}): $errno"

#
# This error message is issued when a pathconf path max fails.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/os/pathconf.cc:115
msgid "pathconf(\"$filename\", {PATH_MAX}): $errno"
msgstr "pathconf(\"$filename\", {PATH_MAX}): $errno"

#
# This information message is issued when aenpr automatically allocates
# the project home directory.
#
#       $File_Name      The absolute path of the project home directory.
#
#: aegis/aenrls.cc:547 libaegis/project/verbose/directory.cc:32
msgid "proj dir $filename"
msgstr "thư mục dự án « $filename »"

#
# This error message is issued when a request is made to run regression
# tests, but there are no files which are candidates of the options
# specified, or the project may have no tests at all.
#
#: aegis/aet.cc:1175
msgid "proj has no tests"
msgstr ""
"dự án này cần thiết chạy các hàm thử thích hợp trước khi có thể sử dụng câu "
"lệnh này"

#
# This is the format of project messages (error, fatal and verbose).
# Change messages also pass through this format indirectly.
#
#: libaegis/project.cc:968 libaegis/project.cc:1002 libaegis/project.cc:1036
msgid "project \"$project\": $message"
msgstr "dự án « $project »: $message"

#
# This string is used to format the various "file unacceptable" error messages
# to indicate that they refer to project files, not change files. (***)
#
#       $Message        The message to be supplemented.
#
#: aegis/aede.cc:926
msgid "project $message"
msgstr "dự án $message"

#
# This error message is issued when a user attempts to create a new
# project, using a project name which already exists.
#
#       $Name           The offending project name.
#
#: aegis/aenpa.cc:174 libaegis/project/bind/keep.cc:35
#: libaegis/project/bind/new.cc:43
msgid "project $name exists"
msgstr "dự án tên « $name » đang được dùng"

#
# This error message is issued when aenpr is given a project name which
# is too long.  The only restriction on project name length is the
# file system on which it must reside.
#
#       $Name           The offending project name.
#       $Number         How many characters too long (how many to remove)
#                       (Optional)
#
#: libaegis/help/pronamtoolon.cc:31
msgid "project $name too long"
msgstr "dự án tên « $name » quá dài (theo $number)"

#
# This error message is issued when a user attempts to create a new
# project alias, using a project name which already exists.
#
#       $Name           The offending project alias.
#
#: libaegis/help/projaliaexis.cc:31
msgid "project alias $name exists"
msgstr "bí danh dự án « $name » đang được dùng"

#
# This error message is issued when a user attempts to remove a
# non-existent project alias.
#
#       $Name           The offending project alias.
#
#: aegis/aerpa.cc:147
msgid "project alias $name exists not"
msgstr "tên « $name » không phải là một bí danh dự án"

#
# This progress message is issued when aepa completes successfully.
#
#: aegis/aepa.cc:145
msgid "project attributes complete"
msgstr "các thuộc tính bị thay đổi"

#
# This error message is issued when a file read fails.
# Also used when a directory read fails.
#
#       $File_Name      The name of the offending file.
#
#: aefind/descend.cc:135 aegis/aeip.cc:268 aels/list.cc:206
#: aesubunit/subunit.cc:90 libaegis/dir.cc:88 libaegis/dir_stack.cc:208
#: libaegis/gif/open.cc:81 libaegis/input/curl.cc:514
#: libaegis/input/file.cc:152 libaegis/input/stdin.cc:71
#: libaegis/os/magic_file.cc:69
msgid "read $filename: $errno"
msgstr "đọc « $filename »: $errno"

#
# This error message is issued when a file read fails due to the file
# being an incorrect format.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/gif/open.cc:59
msgid "read $filename: format error"
msgstr "đọc « $filename »: lỗi định dạng"

#
# This progress message is issued by aeimport when it starts to scan
# the directory tree specified on the command line.  It is looking for
# history files, and reading each one to extract the history information
# it will use to reconstruct the changes.
#
#: aeimport/import.cc:301
msgid "read history files"
msgstr ""
"đang đọc các tập tin lược sử để tìm biết mỗi tập tin bị thay đổi khi nào và "
"bởi ai"

#
# This error message is issued when a readlink fails.
#
#       $File_Name      The name of the file to be readlink()ed.
#
#: libaegis/os/pathname.cc:789 libaegis/os/pathname.cc:811
#: libaegis/os/readlink.cc:56
msgid "readlink $filename: $errno"
msgstr "readlink « $filename »: $errno"

#
# This progress message is issued when aeimport starts to checkout the
# head revision of each history file to form the baseline of the project.
#
#: aeimport/reconstruct.cc:154
msgid "reconstruct baseline"
msgstr ""
"đang xuất kiểm các bản sửa đổi HEAD của các tập tin đã nhập khẩu để cấu tạo "
"lại đường cơ bản của dự án"

#
# This verbose message is issued by the aecd command when a change is
# in the "awaiting review" state.  By reminding reviewers to use aerb,
# we make the statistics more meaningful, and also block other reviewes
# from wasting their time.
#
#: aegis/aecd.cc:165
msgid "remember to use the aerb command"
msgstr ""
"Nếu bạn định xem lại thay đổi này, hãy sử dụng câu lệnh « aegis -review-begin "
"» càng sớm càng có thề. Hành động này đảm bảo rằng người xem lại khác không "
"lãng phí thì giờ quý giá."

#
# This progress message is issued when aera completes successfully.
#
#       $Name           The name of the removed user.
#
#: aegis/aera.cc:153
msgid "remove administrator $name complete"
msgstr "người dùng « $name » không còn là quản trị viên lại"

#
# This progress message is issued when aerd completes successfully.
#
#       $Name           The name of the removed user.
#
#: aegis/aerd.cc:142
msgid "remove developer $name complete"
msgstr "người dùng « $name » không còn là nhà phát triển"

#
# This progress message is issued when removing the development
# directory during an aedbu command.
#
#: aegis/aedbu.cc:226 aegis/aenbru.cc:246
msgid "remove development directory"
msgstr "đang gỡ bỏ thư mục phát triển"

#
# This progress message is issued when aerm completes successfully.
#
#       $File_Name      The name of the file to be removed.
#
#: aegis/aerm.cc:636
msgid "remove file $filename complete"
msgstr "tập tin « $filename » đang bị gỡ bỏ"

#
# This error message is issued when an aerm command fails.  Errors are
# printed out as they are found, but frequently errors happen together,
# so the aerm command finds as many as possible before aborting.  This
# error is emitted when it aborts.
#
#       $Number         Number of fatal errors found.
#                       (Optional)
#
#: aegis/aemt.cc:631 aegis/aerm.cc:569
msgid "remove file fail"
msgstr "tìm thấy $number lỗi nghiêm trọng nên không thêm tập tin vào thay đổi"

#
# This progress message is issued when aerm completes successfully.
#
#       $File_Name      The name of the file to be removed.
#
#: aegis/aermu.cc:596
msgid "remove file undo $filename complete"
msgstr "tập tin « $filename » không còn bị gỡ bỏ lại"

#
# This error message is issued when an aermu command fails.  Errors are
# printed out as they are found, but frequently errors happen together,
# so the aermu command finds as many as possible before aborting.  This
# error is emitted when it aborts.
#
#       $Number         Number of fatal errors found.
#                       (Optional)
#
#: aegis/aermu.cc:498
msgid "remove file undo fail"
msgstr ""
"tìm thấy $number lỗi nghiêm trọng nên không gỡ bỏ tập tin khỏi thay đổi"

#
# This progress message is issued when removing the integration
# directory during an aeibu command.
#
#: aegis/aeibu.cc:291
msgid "remove integration directory"
msgstr "đang gỡ bỏ thư mục hợp nhất"

#
# This progress message is issued when aeri completes successfully.
#
#       $Name           The name of the removed user.
#
#: aegis/aeri.cc:142
msgid "remove integrator $name complete"
msgstr "người dùng « $name » không còn lạ người hợp nhất lại"

#
# This progress message is issued when removing the old development
# directory during an aechown command.
#
#: aegis/aechown.cc:373
msgid "remove old development directory"
msgstr "đang gỡ bỏ thư mục phát triển cũ"

#
# This progress message is issued when aerpa completes successfully.
#
#: aegis/aerpa.cc:180
msgid "remove project alias $name complete"
msgstr "bí danh « $name » bị gỡ bỏ"

#
# This progress message is issued when aermpr completes successfully.
#
#: aegis/aermpr.cc:220
msgid "remove project complete"
msgstr "bị gỡ bỏ"

#
# This progress message is issued to inform the user that the project's
# directory is being deleted.
#
#: aegis/aermpr.cc:198
msgid "remove project directory"
msgstr "đang gỡ bỏ thư mục dự án"

#
# This progress message is issued when aerrv completes successfully.
#
#       $Name           The user name of the removed reviewer.
#
#: aegis/aerrv.cc:142
msgid "remove reviewer $name complete"
msgstr "người dùng « $name » không còn lạ người xem lại"

#
# This progress message is issued when Aegis removes the symbolic links
# from the development directory which point to the baseline.
#
#: libaegis/change/build/symlinks.cc:1269
msgid "removing symbolic links to baseline"
msgstr "đang gỡ bỏ các liên kết tượng trưng tới đường cơ bản"

#
# This error message is issued when a rename fails.
#
#       $File_Name1     The name of the source file or directory.
#       $File_Name2     The name of the destination file or directory.
#
#: libaegis/os/rename.cc:40
msgid "rename(\"$filename1\", \"$filename2\"): $errno"
msgstr "thay tên(\"$filename1\", \"$filename2\"): $errno"

#
# This error message is issued when an ambiguous report name is specified.
#
#       $Name           The offending report name.
#       $Name_List      A list of possible alternatives.
#                       (Optional)
#
#: libaegis/aer/parse.cc:212
msgid "report $name ambig"
msgstr "tên báo cáo « $name » mơ hồ ($name_list)"

#
# This error message is issued when an error is discovered in a report
# at run-time.
#
#: libaegis/aer/report.y:114 libaegis/aer/lex.cc:783 libaegis/aer/lex.cc:803
msgid "report aborted"
msgstr "tiến trình báo cáo bị hủy bỏ"

#
# This error message is issued when a substitution function is called
# incorrectly.  See (+++) above.
#
#: libaegis/sub/addpathsuffi.cc:37 libaegis/sub/change/number.cc:343
#: libaegis/sub/expr.cc:38
msgid "requires at least one argument"
msgstr "cần thiết ít nhất một đối số"

#
# This error message is issued when a substitution function is called
# incorrectly.  See (+++) above.
#
#: libaegis/sub/base_relativ.cc:83 libaegis/sub/capitalize.cc:56
#: libaegis/sub/change/attribute.cc:42 libaegis/sub/change/developer.cc:85
#: libaegis/sub/change/integrator.cc:85 libaegis/sub/change/number.cc:361
#: libaegis/sub/change/reviewer.cc:85 libaegis/sub/dirname.cc:55
#: libaegis/sub/dirname_rel.cc:55 libaegis/sub/downcase.cc:56
#: libaegis/sub/getenv.cc:56 libaegis/sub/history_path.cc:57
#: libaegis/sub/identifier.cc:57 libaegis/sub/length.cc:33
#: libaegis/sub/namemax.cc:35 libaegis/sub/project.cc:153
#: libaegis/sub/project/adminis_list.cc:74
#: libaegis/sub/project/develop_list.cc:73
#: libaegis/sub/project/integra_list.cc:73
#: libaegis/sub/project/reviewe_list.cc:73 libaegis/sub/project/specific.cc:86
#: libaegis/sub/read_file.cc:55 libaegis/sub/source.cc:90
#: libaegis/sub/trim_directo.cc:36 libaegis/sub/trim_extensi.cc:33
#: libaegis/sub/upcase.cc:56 libaegis/sub/user.cc:168
msgid "requires one argument"
msgstr "cần thiết một đối số"

#
# This error message is issued when a substitution function is called
# incorrectly.  See (+++) above.
#
#: libaegis/sub/basename.cc:58
msgid "requires one or two arguments"
msgstr "cần thiết một hay hai đối số"

#
# This error message is issued when a substitution function is called
# incorrectly.  See (+++) above.
#
#: libaegis/sub/change/number.cc:367 libaegis/sub/substr.cc:33
msgid "requires three arguments"
msgstr "cần thiết ba đối số"

#
# This error message is issued when a substitution function is called
# incorrectly.  See (+++) above.
#
#: libaegis/sub/change/number.cc:364 libaegis/sub/left.cc:33
#: libaegis/sub/right.cc:33 libaegis/sub/split.cc:33
#: libaegis/sub/unsplit.cc:33 libaegis/sub/zero_pad.cc:36
msgid "requires two arguments"
msgstr "cần thiết hai đối số"

#
# This error message is issued when a substitution function is called
# incorrectly.  See (+++) above.
#
#: libaegis/sub/change/number.cc:346 libaegis/sub/substitute.cc:39
#: libaegis/sub/switch.cc:34
msgid "requires two or more arguments"
msgstr "cần thiết ít nhất hai đối số"

#
# This error message is issued when a substitution function is called
# incorrectly.  See (+++) above.
#
#: libaegis/sub/plural.cc:35 libaegis/sub/plural_forms.cc:131
msgid "requires two or three arguments"
msgstr "cần thiết hai hay ba đối số"

#
# This error message is issued when a substitution function is called
# incorrectly.  See (+++) above.
#
#: libaegis/sub.cc:202 libaegis/sub/architecture.cc:57
#: libaegis/sub/binary_direc.cc:54 libaegis/sub/change/active_direc.cc:34
#: libaegis/sub/change/delta.cc:54 libaegis/sub/change/develo_direc.cc:55
#: libaegis/sub/change/integr_direc.cc:55 libaegis/sub/change/number.cc:358
#: libaegis/sub/change/version.cc:71 libaegis/sub/common_direc.cc:55
#: libaegis/sub/copyri_owner.cc:44 libaegis/sub/copyri_years.cc:76
#: libaegis/sub/data_directo.cc:55 libaegis/sub/diff.cc:32
#: libaegis/sub/dollar.cc:55 libaegis/sub/histo_direc.cc:55
#: libaegis/sub/librar_direc.cc:54 libaegis/sub/perl.cc:54
#: libaegis/sub/project/baseline.cc:54 libaegis/sub/search_path.cc:61
#: libaegis/sub/shell.cc:56
msgid "requires zero arguments"
msgstr "không chấp nhận đối số"

#
# This error message is issued by aeipass when a change was being
# integrated when aegis was upgraded from 2.3 to 3.0.  The file
# fingerprints are absent, and restarting the integration will cause
# them to be created.
#
#: aegis/aeip.cc:948
msgid "restart integration after upgrade"
msgstr ""
"không có thay đổi nào nên ở tình trạng $state khi Aegis được nâng cấp, vì "
"một số tình trạng tập tin không sẵn sàng: hãy sử dụng hai câu lệnh « aegis -"
"ibu » rồi « aegis-ib » với thay đổi này, để khởi chạy lại tiến trình hợp nhất"

#
# This progress message is issued when aerb completes successfully.
#
#: aegis/aerb.cc:385
msgid "review begin complete"
msgstr "người dùng « $user » đã bắt đầu tiến trình xem lại"

#
# This progress message is issued when aerbu completes successfully.
#
#: aegis/aerbu.cc:251
msgid "review begin undo complete"
msgstr "bước bắt đầu tiến trình xem lại đã bị hủy"

#
# This progress message is issued when aerfail completes successfully.
#
#: aegis/aerf.cc:454
msgid "review fail complete"
msgstr "tiến trình xem lại bị trượt nên trở về nhà phát triển"

#
# This progress message is issued when aerpass completes successfully.
#
#: aegis/aerp.cc:530
msgid "review pass complete"
msgstr "đã đỗ tiến trình xem lại"

#
# This progress message is issued when aerpu completes successfully.
#
#: aegis/aerpu.cc:271
msgid "review pass undo complete"
msgstr "bước đỗ tiến trình xem lại đã bị hủy"

#
# This error message is issued when a reviewer attempts to integrate
# a change she reviewed, and the project is configured to disallow this.
#
#: aegis/aeib.cc:877
msgid "reviewer may not integrate"
msgstr "người xem lại một thay đổi nào đó thì không có quyển hợp nhất nó"

#
# This progress message is issued when aeifail is removing the
# integration directory.
#
#: aegis/aeif.cc:477
msgid "rm int dir"
msgstr "đang gỡ bỏ thư mục hợp nhất"

#
# This error message is issued when a rmdir fails.
#
#       $File_Name      The name of the directory to be removed.
#
#: libaegis/os/rmdir/rmdir.cc:40
msgid "rmdir $filename: $errno"
msgstr "rmdir « $filename »: $errno"

#
# This error message is issued when a substitution function is called
# incorrectly.  See (+++) above.
#
#: libaegis/sub/source.cc:112
msgid "second argument must be \"Absolute\" or \"Relative\""
msgstr ""
"đối số thứ hai phải là « Absolute » (tuyệt đối) hay « Relative » (tương đối)"

#
# This error message is issued when a setgid fails.
#
#       $Argument       The gid argument.
#
#: libaegis/os/become.cc:80
msgid "setgid $arg: $errno"
msgstr "setgid $arg: $errno"

#
# This error message is issued when a setuid fails.
#
#       $Argument       The uid argument.
#
#: libaegis/os/setuid.cc:42
msgid "setuid $arg: $errno"
msgstr "setuid $arg: $errno"

#
# This error message is issued when too many or too few source file
# names are given to the aecp -Output command.
#
#       $Number         The number of files actually given.
#                       (Optional)
#
#: aegis/aecp.cc:336 aegis/aecp.cc:1107
msgid "single file with -Output"
msgstr ""
"có thể ghi rõ chính xác một tập tin nguồn khi dùng tùy chọn « -Output » (bạn "
"đã chọn $number)"

#
# This information message is issued when aet completes with one or more
# skipped tests.
#
#       $Number         The number of tests which were skipped.
#
#: aegis/aet.cc:321 aegis/aet.cc:323
msgid "skipped $number tests"
msgstr "đã bỏ qua $number hàm thử"

#
# This error message is issued when an inappropriate argument is given
# to the sort function.
#
#       $Name           The type name of the offending argument.
#
#: libaegis/aer/func/sort.cc:182
msgid "sort requires a list argument (was given $name)"
msgstr "hàm sort (sắp xếp) cần thiết một đối số kiểu liệt kê (đã cho $name)"

#
# This error message is issued when too many arguments are given to the
# sort function.
#
#       $Number         The number of arguments given.
#
#: libaegis/aer/func/sort.cc:167
msgid "sort requires exactly 1 argument (was given $number)"
msgstr "hàm sort (sắp xếp) cần thiết chính xác một đối số (đã cho $number)"

#
# This error message is issued when the ${source} substitution is called
# incorrectly.  See (+++) above.
#
#: libaegis/sub/history_path.cc:80 libaegis/sub/source.cc:139
msgid "source file unknown"
msgstr "không rõ tập tin nguồn"

#
# This is the name of the program's standard input.  The place input
# from getchar (et al) comes from.
#
#: libaegis/input/stdin.cc:50
msgid "standard input"
msgstr "đầu vào tiêu chuẩn"

#
# This is the name of the program's standard output.  The place output
# from putchar (et al) goes.
#
#: libaegis/output/stdout.cc:41
msgid "standard output"
msgstr "đầu ra tiêu chuẩn"

#
# This error message is issued when a file stat fails
#
#       $File_Name      The name of the offending file.
#
#: aefind/descend.cc:92 aefind/descend.cc:101 aels/list.cc:150
#: aels/list.cc:159 libaegis/aer/func/mtime.cc:124
#: libaegis/aer/value/pstate.cc:89 libaegis/change/build/symlinks.cc:334
#: libaegis/dir.cc:72 libaegis/dir_stack.cc:131 libaegis/dir_stack.cc:169
#: libaegis/os/become.cc:116 libaegis/os/chmod/query.cc:54
#: libaegis/os/ck_path_trav.cc:97 libaegis/os/executable.cc:53
#: libaegis/os/exists.cc:58 libaegis/os/isa/directory.cc:55
#: libaegis/os/isa/special_file.cc:55 libaegis/os/isa/symlink.cc:49
#: libaegis/os/mtime/actual.cc:55 libaegis/os/mtime/range.cc:55
#: libaegis/os/owner_query.cc:47 libaegis/os/size.cc:45
#: libaegis/os/unlink/errok.cc:61 libaegis/os/unlink/unlink.cc:60
#: libaegis/user/creat_by_dir.cc:41
msgid "stat $filename: $errno"
msgstr "$filename: $errno"

#
# This error message is issued when a symlink fails.
#
#       $File_Name1     The name of the source file.
#       $File_Name1     The name of the destination file.
#
#: libaegis/change/build/symlinks.cc:262 libaegis/os/symlink/symlink.cc:56
msgid "symlink(\"$filename1\", \"$filename2\"): $errno"
msgstr "symlink(\"$filename1\", \"$filename2\"): $errno"

#
# This error message is issued when something checked before a lock was
# obtained, has changed by the time the lock was obtained.  This is only
# seen rarely.
#
#: aegis/aechown.cc:238
msgid "sync error, try again"
msgstr "cái gì đó đã thay đổi nên hủy bỏ thao tác, hãy thử lại"

#
# This error message is issued when yacc finds an error at parse time.
#
#: libaegis/aer/lex.cc:827 libaegis/xmltextread.cc:204
msgid "syntax error"
msgstr "không thể hiểu được bạn muốn nói gì"

#
# This error message is issued when yacc finds an error at parse time.
#
#: libaegis/meta_lex.cc:716
msgid "syntax error: cannot back up"
msgstr "không thể hiểu được bạn muốn nói gì"

#
# This error message is issued when bison finds an error at parse time.
#
#: libaegis/meta_lex.cc:717
msgid "syntax error; also virtual memory exhausted"
msgstr "không thể hiểu được bạn muốn nói gì, không phức tạp để vừa bộ nhớ"

#
# This error message is issued when the argument to -Tab_Width is absurd.
#
#       $Number         The offending tab width.
#
#: libaegis/option.cc:170
msgid "tab width $number out of range"
msgstr "khoảng tab $number ở ngoại phạm vi"

#
# This error message is issued before running test_command if
# progress messages were requested
#
#      $Current        Current test number
#      $Total          Total number of tests
#      $REMaining      Estimated number of seconds remaining.
#
#: libaegis/change/test/batch.cc:208 libaegis/change/test/batch_fake.cc:124
msgid "test $current of $total"
msgstr "thử $current trên $total, ${date %H:%M}"

#
# This verbose message is issued when aent determines the list of
# suggestions.  This allows the user to know which are exact, and which
# are noise.
#
#: aegis/aet.cc:283
msgid "test $filename scored $number"
msgstr "$number $filename"

#
# This error message is issued when aede finds a file which has not been
# tested against the baseline.
#
#       $Outstanding    A list of outstanding architectures to be tested,
#                       or empty if all are outstanding.  (Optional)
#
#: aegis/aede.cc:1040
msgid "test -bl required"
msgstr ""
"thay đổi này phải chạy xong thành công một tiến trình thử đường cơ bản « "
"aegis -Test -BaseLine » $outstanding trước khi nó có thể kết thúc phát triển"

#
# This error message is issued when aede finds a file which has not been
# regression tested.
#
#       $Outstanding    A list of outstanding architectures to be tested,
#                       or empty if all are outstanding.  (Optional)
#
#: aegis/aede.cc:1069
msgid "test -reg required"
msgstr ""
"thay đổi này phải chạy xong thành công một tiến trình thử đệ quy « aegis -"
"Test -REGression » $outstanding trước khi nó có thể kết thúc phát triển"

#
# This error message is issued when Aegis is invoked in test mode, but
# the -LIBrary option was not used to specify the test library path.
#
#       $Name   The name of the -LIBrary option.
#
#: libaegis/gonzo.cc:432
msgid "test mode needs $name"
msgstr ""
"Chưa ghi rõ tùy chọn $name. Bắt buộc phải ghi rõ nó ở chế độ « thử » (test)."

#
# This error message is issued when aede finds a file which has not been
# tested.
#
#       $Outstanding    A list of outstanding architectures to be tested,
#                       or empty if all are outstanding.  (Optional)
#
#: aegis/aede.cc:1011
msgid "test required"
msgstr ""
"thay đổi này phải chạy xong thành công một tiến trình thử « aegis -Test » "
"$outstanding trước khi nó có thể kết thúc phát triển"

#
# This message is printed when the variable named in a catch lause is
# not a modifiable lvalue.
#
#: libaegis/aer/stmt/try.cc:42
msgid "the catch variable must be modifiable"
msgstr "biến catch phải có thể sửa đổi được"

#
# This message is printed when the variable named in a catch lause is
# not a modifiable lvalue.
#
#       $Name           The type name of the offending expression.
#
#: libaegis/aer/stmt/try.cc:80
msgid "the catch variable must be modifiable (not $name)"
msgstr "biến catch phải có thể sửa đổi được (đã cho $name)"

#
# This message is issued when a for(a in b) loop is given a sequence expression
# (the second one) which is not a list.
#
#       $Name           The type name of the offending expression.
#
#: libaegis/aer/stmt/for.cc:253
msgid "the loop iteration value must be a list (not $name)"
msgstr "giá trị lặp lại vòng lặp phải là danh sách (đã cho $name)"

#
# This message is issued when a for(a in b) loop is given a control
# expression (the first one) which is not an lvalue.  This is determined
# at compile time, the other one is determined at run time.
#
#: libaegis/aer/stmt/for.cc:177
msgid "the loop variable must be modifiable"
msgstr "giá trị vòng lặp phải là một lvalue có thể sửa đổi được"

#
# This message is issued when a for(a in b) loop is given a control expression
# (the first one) which is not an lvalue.
#
#       $Name           The type name of the offending expression.
#
#: libaegis/aer/stmt/for.cc:215
msgid "the loop variable must be modifiable (not $name)"
msgstr "giá trị vòng lặp phải là một lvalue có thể sửa đổi được (đã cho $name)"

#
# This message is issued when a variable name is reused.
#
#       $Name           The offending variable name.
#
#: libaegis/aer/expr/name.cc:157
msgid "the name \"$name\" has already been used"
msgstr "tên « $name » đã được dùng"

#
# This error message is issued when an unknown name is referenced.
#
#       $Name           The undefined variable name.
#
#: aefind/function.cc:96 aelcf/main.cc:104 aelcf/main.cc:137 aelpf/main.cc:105
#: aelpf/main.cc:138 aemakegen/target/factory.cc:83
#: libaegis/aer/expr/name.cc:125 libaegis/meta_parse.cc:279
#: libaegis/meta_parse.cc:387
msgid "the name \"$name\" is undefined"
msgstr "chưa xác định tên « $name »"

#
# This information message is issued when Aegis needs to delay for a
# number fo seconds to ensure that file modification tikmes do not extend
# into the future.  Commonest sighting is when aeipass needs to sleep.
# Also used as a debug message, only visable when DEBUG is defined.
#
#: aegis/aeip.cc:2168 libaegis/os/throttle.cc:71
msgid "throttling $number seconds"
msgstr ""
"đang ngủ trong vòng $number giây để cho phép các thời gian sửa đổi tập tin "
"nhất quán với nhau"

#
# This message is issued whrn a throw statement is evaluated, and the
# value to be thrown is not a string.
#
#       $Name           The type name of the offending expression.
#
#: libaegis/aer/stmt/throw.cc:70
msgid "throw statement requires string argument (not $name)"
msgstr "câu lệnh throw (ném) cần thiết đối số kiểu chuỗi (đã cho $name)"

#
# This warning is issued when a delta date is specified which
# falls before the start of a branch.  This is not meaningful when
# recreating the contents of a branch.
#
#       $number         The offending date and time.
#
#: libaegis/project/file/roll_forward.cc:615
msgid "time $number after branch"
msgstr ""
"cảnh báo : thời gian « $number » xảy ra sau khi nhánh kết thúc, mà không có "
"nghĩa khi tạo lại nội dung của nhánh"

#
# This warning is issued when a delta date is specified which falls
# before the start of a branch.  This is not meaningful when recreating
# the contents of a branch.
#
#       $number         The offending date and time.
#
#: libaegis/project/file/roll_forward.cc:599
msgid "time $number before branch"
msgstr ""
"cảnh báo : thời gian « $number » xảy ra trước khi nhánh bắt đầu, mà không có "
"nghĩa khi tạo lại nội dung của nhánh"

#
# This error message is issued when too few files names are specified on
# the command line.
#
#: aediff/diff.cc:215 aegis/aemv.cc:404
msgid "too few files named"
msgstr "đặt tên của quá ít tập tin"

#
# This error message is issued when a file is named more than one in a
# list of file names on the command line.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aeb.cc:433 aegis/aecp.cc:1433 aegis/aecp.cc:1467 aegis/aecpu.cc:363
#: aegis/aecpu.cc:406 aegis/aed.cc:610 aegis/aemt.cc:394 aegis/aemt.cc:428
#: aegis/aemtu.cc:346 aegis/aemtu.cc:390 aegis/aemvu.cc:332 aegis/aemvu.cc:368
#: aegis/aenf.cc:473 aegis/aenfu.cc:362 aegis/aenfu.cc:400 aegis/aent.cc:396
#: aegis/aentu.cc:380 aegis/aentu.cc:418 aegis/aerm.cc:414 aegis/aerm.cc:464
#: aegis/aermu.cc:395 aegis/aermu.cc:433 aegis/aet.cc:906 aegis/aet.cc:991
#: aegis/aet.cc:1053 aegis/aet.cc:1772 aegis/aet.cc:1852
msgid "too many $filename"
msgstr "đã đặt nhiều lần tên « $filename »"

#
# This error message is issued when too many delta names are given on
# the command line.
#
#: aegis/aedn.cc:127
msgid "too many delta names"
msgstr "đã ghi rõ quá nhiều tên δ"

#
# This error message is issued when a command which expects one
# directory to be specified on the command line, receives more than one.
#
#: aegis/aecd.cc:118
msgid "too many dir"
msgstr "đã ghi rõ quá nhiều thư mục"

#
# This error message is issued when too many file names are specified on
# the command line.
#
#: aeannotate/annotate.cc:687 aegis/aenf.cc:314 aegis/aent.cc:249
#: aesubunit/subunit.cc:215 libaegis/help/toomanyfiles.cc:27
msgid "too many files"
msgstr "đã ghi rõ quá nhiều tên tập tin"

#
# This error message is issued when too many information names are
# specified to the aev command.  It only accepts one.
#
#: libaegis/version.cc:113
msgid "too many info names"
msgstr "đã ghi rõ quá nhiều tên thông tin phiên bản"

#
# This error message is issued when ael is given too many list names on
# the command line.
#
#: aegis/ael.cc:352 aexml/main.cc:301
msgid "too many lists"
msgstr "đã ghi rõ quá nhiều tên danh sách"

#
# This error message is issued when there are too many project names
# specified on the command line.
#
#: aegis/aenpa.cc:113 aegis/aenrls.cc:204
msgid "too many proj name"
msgstr "đã ghi rõ quá nhiều tên dự án"

#
# This error message is issued too many sizes are specified on the
# command line.  Exactly two are required.
#
#: aerect/main.cc:178
msgid "too many sizes specified"
msgstr "đã ghi rõ quá nhiều kích cỡ"

#
# This error message is issued when aena is given a user name more than once.
#
#       $Name           The offending user name.
#
#: aegis/aena.cc:203 aegis/aend.cc:204 aegis/aeni.cc:204 aegis/aenrv.cc:203
#: aegis/aera.cc:203 aegis/aerd.cc:186 aegis/aeri.cc:186 aegis/aerrv.cc:181
msgid "too many user $name"
msgstr "đã đặt nhiều lần tên của người dùng « $name » "

#
# This format string is used when assembling a change message
# (information, progress or fatal) for the trunk change of a project.
#
#       $Message        The message to be issued.
#
#: libaegis/change/error.cc:59 libaegis/change/fatal.cc:59
#: libaegis/change/verbose.cc:59 libaegis/change/warning.cc:67
msgid "trunk: $message"
msgstr "thân: $message"

#
# This error message is issued when a user from the /etc/passwd file, or
# equivalent, cannot be found by number.
#
#       $Number         The offending user number.
#
#: libaegis/aer/value/passwd.cc:122 libaegis/aer/value/uconf.cc:110
#: libaegis/user/create1.cc:76
msgid "uid $number unknown"
msgstr "uid $number không rõ"

#
# This error message is issued when the uname system call fails.
#
#: libaegis/uname.cc:49
msgid "uname: $errno"
msgstr "uname: $errno"

#
# This error message is issued when there is an unfinished recovery
# action to change the mode of a file or directory.
#
#       $Argument       The mode, in octal, the file is to be changed to.
#       $File_Name      The name of the file
#
#: libaegis/undo/item/chmod.cc:50 libaegis/undo/item/chmod_errok.cc:50
msgid "unfinished: chmod $arg $filename"
msgstr "tiến trình phục hồi chưa chạy xong: chmod $arg $filename"

#
# This error message is issued when there is an unfinished recovery
# action to move file file or directory.
#
#       $File_Name1     The name of the source file
#       $File_Name2     The name of the destination file
#
#: libaegis/undo/item/rename.cc:50
msgid "unfinished: mv $filename1 $filename2"
msgstr "tiến trình phục hồi chưa chạy xong: mv $filename1 $filename2"

#
# This error message is issued when there is an unfinished recovery
# action to remove a file.
#
#       $File_Name      The name of the file
#
#: libaegis/undo/item/unlink_errok.cc:48
msgid "unfinished: rm $filename"
msgstr "tiến trình phục hồi chưa chạy xong: rm $filename"

#
# This error message is issued when there is an unfinished recovery
# action to remove a directory.
#
#       $File_Name      The name of the directory
#
#: libaegis/undo/item/rmdir_bg.cc:48 libaegis/undo/item/rmdir_errok.cc:48
msgid "unfinished: rmdir $filename"
msgstr "tiến trình phục hồi chưa chạy xong: rmdir $filename"

#
# This error message is issued when there is an unknown option on the
# command line.
#
#       $Name           The offending command line argument.
#
#: libaegis/help.cc:289
msgid "unknown \"$name\" option"
msgstr "không rõ tùy chọn « $name » trên dòng lệnh"

#
# This error message is issued when an unknown C escape sequence is seen.
#
#       $Name           The offending escape sequence, including the backslash.
#
#: libaegis/aer/lex.cc:412 libaegis/meta_lex.cc:350
msgid "unknown '$name' escape"
msgstr "không rõ cái thoát « $name »"

#
# This error message is issued when an unknown change is referred to.
# The change number will be given in the surrounding "wrapper".
#
#: libaegis/arglex/change.cc:172 libaegis/change/bind/existing.cc:65
msgid "unknown change"
msgstr "dự án này không biết thay đổi hay nhánh có số này "

#
# This fatal error message is issued when the shell cannot be determined.
#
#: aecomplete/shell.cc:51
msgid "unknown shell"
msgstr "không thể quyết định trình bào nào đã yêu cầu sự làm xong"

#
# This error message is issued when an unknown substitution is
# referenced.  See (+++) above.
#
#: libaegis/sub.cc:492
msgid "unknown substitution name"
msgstr "không rõ tên hàm thay thế"

#
# This error message is issued when an unknown substitution variant
# is referenced.  See (+++) above.
#
#: libaegis/sub/change/developer.cc:73 libaegis/sub/change/integrator.cc:73
#: libaegis/sub/change/number.cc:417 libaegis/sub/change/reviewer.cc:73
#: libaegis/sub/project.cc:145 libaegis/sub/project/adminis_list.cc:87
#: libaegis/sub/project/develop_list.cc:86
#: libaegis/sub/project/integra_list.cc:86
#: libaegis/sub/project/reviewe_list.cc:85 libaegis/sub/user.cc:157
msgid "unknown substitution variant"
msgstr "không rõ biến thể hàm thay thế"

#
# This error message is issued when an unlink fails.
#
#       $File_Name      The name of the file to be unlinked.
#
#: libaegis/os/unlink/unlink.cc:68 libaegis/os/unlink/unlink.cc:77
msgid "unlink $filename: $errno"
msgstr "bỏ liên kết « $filename »: $errno"

#
# This fatal error message is issued when aedbu command is applied to
# a simple change.
#
#: aegis/aenbru.cc:201
msgid "use aedbu instead"
msgstr "hãy sử dụng câu lệnh « aegis -dbu » thay vào đó"

#
# This fatal error message is issued when the aedbu or aermpr commands
# are applied to a branch.
#
#: aegis/aedbu.cc:173 aegis/aermpr.cc:137
msgid "use aenbru instead"
msgstr "hãy sử dụng câu lệnh « aegis -nbru » thay vào đó"

#
# This error message is issued when a request is made to remove a
# developer from a project, and the user named is not a
# developer.
#
#       $Name           The offending user name.
#
#: aegis/aerd.cc:120
msgid "user \"$name\" is not a developer"
msgstr "người dùng « $name » không phải là một nhà phát triển"

#
# This error message is issued when a request is made to remove a
# reviewer from a project, and the user named is not a reviewer.
#
#       $Name           The offending user name.
#
#: aegis/aerrv.cc:120
msgid "user \"$name\" is not a reviewer"
msgstr "người dùng « $name » không phải là một người xem lại"

#
# This error message is issued when a request is made to remove an
# administrator from a project, and the user named is not an
# administrator.
#
#       $Name           The offending user name.
#
#: aegis/aera.cc:124
msgid "user \"$name\" is not an administrator"
msgstr "người dùng « $name » không phải là một quản trị viên"

#
# This error message is issued when a request is made to remove an
# integrator from a project, and the user named is not an
# integrator.
#
#       $Name           The offending user name.
#
#: aegis/aeri.cc:120
msgid "user \"$name\" is not an integrator"
msgstr "người dùng « $name » không phải là một người hợp nhất"

#
# This error message is issued when aena is asked to add an
# administrator to a project, but the user's uid is too low (too
# privileged).
#
#       $Name           The offending user name.
#
#: libaegis/help/user_toopriv.cc:37
msgid "user $name too privileged"
msgstr "người dùng « $name » có quá nhiều quyền"

#
# This error message is issued when a user from the /etc/passwd file, or
# equivalent, cannot be found by name.
#
#       $Name           The offending user name.
#
#: libaegis/aer/value/passwd.cc:138 libaegis/aer/value/uconf.cc:124
#: libaegis/user/create3.cc:69
msgid "user $name unknown"
msgstr "không rõ người dùng « $name »"

#
# This error message is issued when a user is named who does not appear
# in the /etc/passwd file, or equivalent.
#
#       $Name           The offending user name.
#       $Guess          The closest match in the /etc/passwd file.
#
#: libaegis/user/create3.cc:62
msgid "user $name unknown, closest is $guess"
msgstr "không rõ người dùng « $name », gần nhất là người dùng « $guess »"

#
# This information message is issued when Aegis is about to execute a
# command, to tell the user who the command will be executed as.
#
#       $Name1          The quoted user name.
#       $Name2          The quoted group name.
#
#: libaegis/os/execute_retc.cc:85
msgid "user $name1, group $name2"
msgstr "người dùng $name1, nhóm $name2"

#
# This is the format of user messages (error, fatal and verbose).
#
#: libaegis/user/ustate_lock.cc:49 libaegis/user/ustate_lock.cc:59
msgid "user $name: $message"
msgstr "người dùng « $name »: $message"

#
# This error message is issued when a utime fails.
#
#       $File_Name      The name of the file
#
#: libaegis/os/mtime/set.cc:58
msgid "utime $filename: $errno"
msgstr "utime \"$filename\": $errno"

#
# This error message is issued when an inappropriate data type is
# supplied in an Aegis data file or configuration file.
#
#       $Name           The type name of the *required* type.
#
#: libaegis/meta_parse.cc:172 libaegis/meta_parse.cc:207
#: libaegis/meta_parse.cc:228 libaegis/meta_parse.cc:256
#: libaegis/meta_parse.cc:299 libaegis/meta_parse.cc:344
msgid "value of type $name required"
msgstr "cần thiết giá trị kiểu $name"

#
# This fatal error message is issued when a version number handed to the
# -BRanch option has a non-branch it in somewhere.
#
#       $number The offending version number.
#
#: libaegis/project.cc:837
msgid "version $number not a branch"
msgstr "phiên bản « $number » không phải là một nhánh"

#
# This progress message is issued when Aegis is waiting for a lock.
# This message is seen often.
#
#       $Name           The type name of the lock being waited for.
#
#: libaegis/lock.cc:819
msgid "waiting for $name lock"
msgstr "đợi khoá $name"

#
# This progress message is issued when Aegis is waiting for a project
# baseline read lock.  This message is issued with a project indicator.
#
#: libaegis/project.cc:558
msgid "waiting for baseline read lock"
msgstr ""
"đợi khoá đường cơ bản dùng chung; đây là vì có một câu lệnh hợp nhất « aegis -"
"Integrate_PASS » đang chạy"

#
# This progress message is issued when Aegis is waiting for a project
# baseline write lock.  This message is issued with a project indicator.
#
#: libaegis/project.cc:597
msgid "waiting for baseline write lock"
msgstr ""
"đợi khoá đường cơ bản không kể ; đây là vì có một hay nhiều câu lệnh xây "
"dựng « aegis -Build » đang chạy"

#
# This progress message is issued when Aegis is waiting for a global state
# lock.  The global state remembers project names and where they are.
#
#: libaegis/gonzo.cc:1049
msgid "waiting for global state lock"
msgstr "đợi khoá chỉ mục vị trí dự án"

#
# This progress message is issued when Aegis is waiting for a project
# history lock.  This message is issued with a project indicator.
#
#: libaegis/project.cc:624
msgid "waiting for history lock"
msgstr ""
"đợi khoá lược sử ; đây là vì có một câu lệnh hợp nhất « aegis -Integrate_PASS "
"» đang chạy trên nhánh khác"

#
# This progress message is issued when Aegis is waiting for a lock.
# This message is seen often, usually with a change or project indicator.
#
#: libaegis/change/cstate/lock_prepare.cc:36
#: libaegis/project/lock/prepare.cc:34 libaegis/user/ustate_lock.cc:44
msgid "waiting for lock"
msgstr "đợi khoá"

#
# This warning message is issued when aed automatically alters the file
# action from create to modify.  This happens when two separate change
# create the same file, and the second change is differenced after the
# first change is integrated.
#
#       $File_Name      The name of the affected file.
#
#: libaegis/change/file/promote.cc:95
msgid "warning: $filename in baseline, copying"
msgstr ""
"cảnh báo : tập tin « $filename » đã tồn tại trong dự án, nên tự động thay đổi "
"hành động từ « create » (tạo) thành « modify » (sửa đổi)"

#
# This warning message is issued when a change file is modified by the
# history tool (history_put_command or history_create_command)
# during aeipass.
#
#       $File_Name      The name of the offending file.
#
#: libaegis/change/history/trash.cc:81
msgid "warning: $filename modified by history tool"
msgstr "cảnh báo : công cụ lược sử đã sửa đổi tập tin nguồn « $filename »"

#
# This warning message is issued by aedist when a patch in an incominmg
# change set cannot be used (it could be malformed, it may have one or
# more chunks that can't be applied, etc) and so the full source for
# the file from the incming change set has been used instead.
#
#       $filename       The name of the offending file.
#
#: aedist/receive.cc:2005
msgid "warning: $filename patch not used"
msgstr ""
"cảnh báo : không thể sử dụng đắp vá cho « $filename », nên dùng nguồn đầy đủ "
"đã gửi đến cho tập tin này; có lẽ bạn cần phải tự tháo gỡ trường hợp xung đột"

#
# This warning message is issued when the the old project configuration
# file name if given to the aenf command, without a -config or -noconfig
# option.  This has been obsoleted, and users are encouraged to use the
# new project configuration filename instead.
#
#       $File_Name1     The name of the old project configuration file.
#       $File_Name2     The name of the new project configuration file default.
#
#: aegis/aenf.cc:772
msgid "warning: $filename1 deprecated, use $filename2 file instead"
msgstr "cảnh báo : $filename1 bị phản đối nên dùng $filename2 thay vào đó"

#
# This generic message is used to turn what would otherwise be an error
# message into a warning message.
#
#       $MeSsaGe        The message to be printed as a warning.
#
#: libaegis/change/warning.cc:52
msgid "warning: $message"
msgstr "cảnh báo : $message"

#
# This warning message is issued when the AEGIS environment variable is
# detected.  This has been obsoleted, and users are encouraged to use
# the AEGIS_PATH environment variable instead.
#
#       $Name1  The name of the AEGIS environment variable.
#       $Name2  The name of the AEGIS_PATH environment variable.
#
#: libaegis/gonzo.cc:399
msgid "warning: $name1 is obsolete, use $name2 environment variable"
msgstr ""
"cảnh báo : biến môi trường $name1 quá cũ, hãy dùng biến môi tường $name2 "
"thay vào đó"

#
# This warning is issued when an obsolete option is used.
#
#       $Name1          The name of the obsolete option.
#       $Name2          The name of the preferred option.
#
#: aedist/send.cc:625 aedist/send.cc:656 aegis/aenpr.cc:266 aegis/aenpr.cc:297
#: aegis/aenrls.cc:274
msgid "warning: $name1 obsolete, use $name2 option"
msgstr "cảnh báo : tùy chọn $name1 quá cũ, sau này hãy dùng tùy chọn $name2"

#
# This warning message is issued when a chmod fails, but Aegis will continue.
#
#       $File_Name      The name of the file to be changed.
#       $Argument       The mode desired.
#
#: libaegis/os/chmod/errok.cc:52
msgid "warning: chmod(\"$filename\", $arg): $errno"
msgstr "cảnh báo : chmod(\"$filename\", $arg): $errno"

#
# This warning message is issued when a child process stops with a
# non-zero exit status, but Aegis will continue.
#
#       $Command        The offending command.
#       $Number         The exit status of the child.
#
#: libaegis/os/execute_retc.cc:237
msgid "warning: command \"$command\" exit status $number"
msgstr "cảnh báo : lệnh « $command » có trạng thái thoát $number"

#
# This warning message is issued when Aegis finds files which require
# merging, but has been (explicitly or implicitly) requested no to
# perform any merges.
#
#       $Number         The number of files requiring merging.
#                       (Optional)
#
#: aegis/aeclean.cc:642
msgid "warning: diffable files"
msgstr "cảnh báo : có $number tập tin cần khác biệt"

#
# This error message is issued when your search expression doesn't
# do anything.
#
#: aefind/cmdline.y:529
msgid "warning: expression has no side effects, assuming you meant -PRint"
msgstr ""
"cảnh báo : biểu thức không có hiệu ứng khác nên giả sử bạn đã dự định « -"
"PRint » (in ra) các tập tin tương ứng với biểu thức đã cho"

#
# This warning message is issued when aeclean notices that a file needs
# to be differenced.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aeclean.cc:620
msgid "warning: file \"$filename\" needs diff"
msgstr "cảnh báo : tập tin « $filename » cần thiết khác biệt"

#
# This warning message is issued when aeclean notices that a file needs
# to be merged.
#
#       $File_Name      The name of the offending file.
#
#: aegis/aeclean.cc:525
msgid "warning: file \"$filename\" needs merge"
msgstr "cảnh báo : tập tin « $filename » cần thiết trộn"

#
# This warning message is issued when aeipass adjust file modification
# times, and finds that one or more file have modification times a few
# seconds into the future.
#
#       $Number         The number of seconds into the future.
#                       (Optional)
#
#: aegis/aeip.cc:2193
msgid "warning: file times in future"
msgstr ""
"cảnh báo : các thời gian sửa đổi tập tin có kéo dài $number giây trong tương "
"lai"

#
# This warning message is a summary issued when one or more change
# files are modified by the history tool (history_put_command or
# history_create_commands) during aeipass.
#
#       $Number         The number of files modified.
#                       (Optional)
#
#: libaegis/change/history/trash.cc:109
msgid "warning: files modified by history tool"
msgstr ""
"cảnh báo : công cụ lược sử đã sửa đổi $number tập tin nguồn. Các tập tin "
"nguồn trong kho lưu trữ không còn tương ứng lại với $number tập tin đối "
"tượng trong kho. Công cụ đã làm hại tình trạng nguyên vẹn của kho, nếu các "
"thay đổi không xảy ra chỉ trong lời ghi chú."

#
# This warning message is issued when Aegis finds files which require
# merging, but has been (explicitly or implicitly) requested no to
# perform any merges.
#
#       $Number         The number of files requiring merging.
#                       (Optional)
#
#: aegis/aeclean.cc:634 aegis/aed.cc:1528
msgid "warning: mergable files"
msgstr "cảnh báo : có $number tập tin cần trộn"

#
# This warning message is issued when aed automatically alters the file
# action from modify to create.  This happens when two separate change
# act on the same file, one to remove it and another to modify it, and
# the second change is differenced after the first change is integrated.
#
#       $File_Name      The name of the affected file.
#
#: libaegis/change/file/promote.cc:192
msgid "warning: no $filename in baseline, creating"
msgstr ""
"cảnh báo : tập tin « $filename » không còn nằm lại trên đường cơ bản, nên tự "
"động thay đổi hành động từ « modify » (sửa đổi) thành « create » (tạo)"

#
# This warning message is issued when a non-intuitive default is
# taken by the program.
#
#       $Name1          The name of a command line option.
#       $Name2          The name of a command line option.
#
#: aegis/aeca.cc:659 aegis/aefa.cc:510 aegis/aeif.cc:303 aegis/aenc.cc:316
#: aegis/aepa.cc:284 aegis/aerf.cc:304
msgid "warning: no $name1, assuming $name2"
msgstr "cảnh báo : chưa ghi rõ $name1 nên giả sử $name2 đã muốn"

#
# This warning message is issued when an aechown command attempts to
# change the owner of a change to the current owner.
#
#: aegis/aechown.cc:215
msgid "warning: no chown"
msgstr ""
"cảnh báo : không cần thay đổi chủ sở hưu ; đang được phát triển bởi người "
"dùng « $developer »; một thư mục phát triển mới sẽ được cấu tạo"

#
# This warning is issued when a received file could have a Trojan horse
# attack in it, but the use said to keep going.
#
#: aedist/receive.cc:2249 aepatch/receive.cc:1213
msgid "warning: potential trojan, proceeding anyway"
msgstr ""
"Cảnh báo : thay đổi này chứa các tập tin có thể hỗ trợ sự tấn công con ngựa "
"thành Troa (Trojan horse). Vì bạn đã ghi rõ tùy chọn « --no-trojan », tiến "
"trình phát triển sẽ vẫn còn tiếp tục."

#
# This warning is issued when a received file could have a Trojan horse
# attack in it.
#
#: aedist/receive.cc:2306 aedist/receive.cc:2518 aepatch/receive.cc:1231
#: aepatch/receive.cc:1290
msgid "warning: potential trojan, review before completing development"
msgstr ""
"Cảnh báo : thay đổi này chứa các tập tin có thể hỗ trợ sự tấn công con ngựa "
"thành Troa (Trojan horse). Bạn nên xem lại trước khi xây dựng nó hay thử nó "
"hay làm xong tiến trình phát triển. Thay đổi này còn lại ở tình trạng « đang "
"được phát triển ». "

#
# This warning message is issued when a rmdir fails, but Aegis will continue.
#
#       $File_Name      The name of the directory to be removed.
#
#: aegis/aeclean.cc:156 libaegis/dir/functor/rmdir_bg.cc:60
#: libaegis/os/rmdir/bg.cc:39 libaegis/os/rmdir/errok.cc:40
#: libaegis/os/rmdir/tree.cc:39
msgid "warning: rmdir $filename: $errno"
msgstr "cảnh báo : rmdir \"$filename\": $errno"

#
# This warning message is issued when a setgid fails, but Aegis will continue.
#
#       $Argument       The gid argument.
#
#: libaegis/os/become.cc:77
msgid "warning: setgid $arg: $errno"
msgstr "cảnh báo : setgid $arg: $errno"

#
# This warning message is issued when a state fails, but Aegis will continue.
#
#       $File_Name      The name of the file to be stat()ed.
#
#: libaegis/os/unlink/errok.cc:62
msgid "warning: stat $filename: $errno"
msgstr "cảnh báo : stat \"$filename\": $errno"

#
# This warning message is issued when in Aegis runs in test mode.
#
#: libaegis/os/become.cc:303
msgid "warning: test mode"
msgstr ""
"Cảnh báo : bản sao này đang chạy ở chế độ « test » (thử). Nó có khả năng bị "
"giảm do quyền hạn cũng bị giảm. Chế độ này được cung cấp chỉ để thử nên "
"không phải là một chế độ thao tác khuyến khích."

#
# This warning message is issued when an unlink fails, but Aegis will continue.
#
#       $File_Name      The name of the file to be unlinked.
#
#: libaegis/dir/functor/rmdir_bg.cc:75 libaegis/os/unlink/errok.cc:70
#: libaegis/os/unlink/errok.cc:79
msgid "warning: unlink $filename: $errno"
msgstr "cảnh báo : bỏ liên kết « $filename »: $errno"

#
# This warning message is issued when a command which accepts both -Edit
# and -File is given a file name without the -File option.  This usage
# is being phased out, so that -Edit can become the default.
#
#       $Name           The name of the -File option,
#                       assuming option names will be internationalized RSN
#
#: aegis/aeca.cc:502 aegis/aeif.cc:178 aegis/aenc.cc:173 aegis/aepa.cc:185
#: aegis/aerf.cc:178
msgid "warning: use $name option"
msgstr ""
"cảnh báo : hãy sử dụng tùy chọn $name khi ghi rõ một tập tin thuộc tính; "
"dạng trần truồng trở thành quá cũ"

#
# This warning message is issued when a utime fails.
#
#       $File_Name      The name of the file
#
#: libaegis/os/mtime/set_errok.cc:52
msgid "warning: utime $filename: $errno"
msgstr "cảnh báo : utime \"$filename\": $errno"

#
# This error message is issued when a aedbu command is run by a
# user who was not the developer of the change being operated on.
#
#: aegis/aedeu.cc:261
msgid "was not developer"
msgstr ""
"người dùng « $user » đã không phải là nhà phát triển của thay đổi này nên chỉ "
"người dùng « $developer » có quyền hủy bước kết thúc tiến trình phát triển"

#
# This error message is issued when a aerpu command is run by a
# user who was not the reviewer of the change being operated on.
#
#: aegis/aerpu.cc:204
msgid "was not reviewer"
msgstr ""
"người dùng « $user » đã không phải là người xem lại của thay đổi này nên chỉ "
"người dùng « $developer » có quyền hủy bước chạy tiến trình xem lại"

#
# This error message is issued when a file write fails
#
#       $File_Name      The name of the offending file.
#
#: libaegis/output/file.cc:87 libaegis/output/pager.cc:162
#: libaegis/output/stdout.cc:103
msgid "write $filename: $errno"
msgstr "ghi « $filename »: $errno"

#
# This error message is issued when the input it too complicated for
# yacc to figure out.
#
#: libaegis/aer/lex.cc:828
msgid "yacc stack overflow"
msgstr "không thể hiểu được bạn muốn nói gì, quá phức tạp"

#
# This error message is issued when Aegis is unable to proceed because
# the user has not yet created an essential change file.
#
#       $File_Name      The name of the offending file
#
#: libaegis/change/pconf/get.cc:1079
msgid "you must create a \"$filename\" file"
msgstr "bạn phải tạo một tập tin kiểu « $filename »"
