# Vietnamese translation for Dselect.
# Copyright © 2006 Free Software Foundation, Inc.
# This file is distributed under the same license as the dpkg package.
# Phan Vinh Thinh <teppi@vnoss.org>, 2005.
# Clytie Siddall <clytie@riverland.net.au>, 2006.
msgid ""
msgstr ""
"Project-Id-Version: dselect\n"
"Report-Msgid-Bugs-To: debian-dpkg@lists.debian.org\n"
"POT-Creation-Date: 2011-10-14 07:11+0200\n"
"PO-Revision-Date: 2006-10-09 20:37+0930\n"
"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
"Language: vi\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"
"X-Generator: LocFactoryEditor 1.6fc1\n"

#: dselect/basecmds.cc:125
msgid "Search for ? "
msgstr "Tìm kiếm ? "

#: dselect/basecmds.cc:147
msgid "Error: "
msgstr "Lỗi: "

#: dselect/basecmds.cc:178
msgid "Help: "
msgstr "Trợ giúp: "

#: dselect/basecmds.cc:184
msgid "Press ? for help menu, . for next topic, <space> to exit help."
msgstr ""
"Nhấn:\n"
"\t? \t\t\t\tđể hiện trình đơn trợ giúp\n"
"\t.\t\t\t\t(dấu chấm) để xem chủ đề tiếp theo\n"
"\tphím dài \tđể thoát khỏi trợ giúp."

#: dselect/basecmds.cc:191
msgid "Help information is available under the following topics:"
msgstr "Có sẵn thông tin trợ giúp dưới những chủ đề sau :"

#: dselect/basecmds.cc:199
msgid ""
"Press a key from the list above, <space> or `q' to exit help,\n"
"  or `.' (full stop) to read each help page in turn. "
msgstr ""
"Nhấn:\n"
"\tmột phím từ danh sách ở trên,\n"
"\tphím dài hoặc phím Q để thoát, hoặc\n"
"\t.\t(dấu chấm) để đọc mỗi trang trợ giúp lần lượt. "

#: dselect/basecmds.cc:205
msgid "error reading keyboard in help"
msgstr "gặp lỗi khi đọc bàn phím trong trợ giúp"

#: dselect/baselist.cc:57
msgid "ioctl(TIOCGWINSZ) failed"
msgstr "ioctl(TIOCGWINSZ) thất bại"

#: dselect/baselist.cc:60
msgid "doupdate in SIGWINCH handler failed"
msgstr "doupdate (chạy cập nhật) trong phần điều khiển SIGWINCH bị lỗi"

#: dselect/baselist.cc:67
msgid "failed to restore old SIGWINCH sigact"
msgstr "việc phục hồi SIGWINCH sigact cũ bị lỗi"

#: dselect/baselist.cc:69
msgid "failed to restore old signal mask"
msgstr "việc phục hồi mặt nạ tín hiệu cũ bị lỗi"

#: dselect/baselist.cc:79
msgid "failed to get old signal mask"
msgstr "việc lấy mặt nạ tín hiệu cũ bị lỗi"

#: dselect/baselist.cc:80
msgid "failed to get old SIGWINCH sigact"
msgstr "việc lấy mặt nạ SIGWINCH sigact cũ bị lỗi"

#: dselect/baselist.cc:84
msgid "failed to block SIGWINCH"
msgstr "việc ngăn chặn SIGWINCH bị lỗi"

#: dselect/baselist.cc:89
msgid "failed to set new SIGWINCH sigact"
msgstr "việc đặt SIGWINCH sigact mới bị lỗi"

#: dselect/baselist.cc:126
msgid "failed to allocate colour pair"
msgstr "viếc cấp phát cặp màu bị lỗi"

#: dselect/baselist.cc:167
msgid "failed to create title window"
msgstr "việc tạo cửa sổ tiêu đề bị lỗi"

#: dselect/baselist.cc:171
msgid "failed to create whatinfo window"
msgstr "việc tạo cửa sổ whatinfo (thông tin nào?) bị lỗi"

#: dselect/baselist.cc:175
msgid "failed to create baselist pad"
msgstr "việc tạo phần đệm baselist (danh sách cơ bản) bị lỗi"

#: dselect/baselist.cc:178
msgid "failed to create heading pad"
msgstr "việc tạo phần đệm heading (tiêu đề) bị lỗi"

#: dselect/baselist.cc:182
msgid "failed to create thisstate pad"
msgstr "việc tạo phần đệm thisstate (tính trạng này) bị lỗi"

#: dselect/baselist.cc:186
msgid "failed to create info pad"
msgstr "việc tạo phần đệm info (thông tin) bị lỗi"

#: dselect/baselist.cc:191
msgid "failed to create query window"
msgstr "việc tạo cửa sổ truy vấn bị lỗi"

#: dselect/baselist.cc:255
#, fuzzy
msgid "Keybindings"
msgstr "tổ hợp phím"

#: dselect/baselist.cc:303
#, c-format
msgid "  -- %d%%, press "
msgstr "  -- %d%%, nhấn "

#: dselect/baselist.cc:306
#, c-format
msgid "%s for more"
msgstr "%s để xem thêm"

#: dselect/baselist.cc:310
#, c-format
msgid "%s to go back"
msgstr "%s để quay lại"

#: dselect/bindings.cc:78
msgid "[not bound]"
msgstr "[không có tổ hợp]"

#: dselect/bindings.cc:82
#, c-format
msgid "[unk: %d]"
msgstr "[không rõ: %d]"

#: dselect/bindings.cc:139
msgid "Scroll onwards through help/information"
msgstr "Cuộn về phía trước trong trợ giúp/thông tin"

#: dselect/bindings.cc:140
msgid "Scroll backwards through help/information"
msgstr "Cuộn ngược lại trong trợ giúp/thông tin"

#: dselect/bindings.cc:141
msgid "Move up"
msgstr "Đi lên"

#: dselect/bindings.cc:142
msgid "Move down"
msgstr "Đi xuống"

#: dselect/bindings.cc:143
msgid "Go to top of list"
msgstr "Đi tới đầu danh sách"

#: dselect/bindings.cc:144
msgid "Go to end of list"
msgstr "Đi tới cuối danh sách"

#: dselect/bindings.cc:145
msgid "Request help (cycle through help screens)"
msgstr "Yêu cầu trợ giúp (quay vòng qua các màn hình trợ giúp)"

#: dselect/bindings.cc:146
msgid "Cycle through information displays"
msgstr "Quay vòng qua các màn hình thông tin"

#: dselect/bindings.cc:147
msgid "Redraw display"
msgstr "Vẽ lại màn hình"

#: dselect/bindings.cc:148
msgid "Scroll onwards through list by 1 line"
msgstr "Cuộn về phía trước trong danh sách 1 dòng"

#: dselect/bindings.cc:149
msgid "Scroll backwards through list by 1 line"
msgstr "Cuộn ngược lại trong danh sách 1 dòng"

#: dselect/bindings.cc:150
msgid "Scroll onwards through help/information by 1 line"
msgstr "Cuộn về phía trước trong trợ giúp/thông tin 1 dòng"

#: dselect/bindings.cc:151
msgid "Scroll backwards through help/information by 1 line"
msgstr "Cuộn ngược lại trong trợ giúp/thông tin 1 dòng"

#: dselect/bindings.cc:152
msgid "Scroll onwards through list"
msgstr "Cuộn về phía trước trong danh sách"

#: dselect/bindings.cc:153
msgid "Scroll backwards through list"
msgstr "Cuộn ngược lại trong danh sách"

#: dselect/bindings.cc:156
msgid "Mark package(s) for installation"
msgstr "Đánh dấu (các) gói để cài đặt"

#: dselect/bindings.cc:157
msgid "Mark package(s) for deinstallation"
msgstr "Đánh dấu (các) gói để hủy cài đặt"

#: dselect/bindings.cc:158
msgid "Mark package(s) for deinstall and purge"
msgstr "Đánh dấu (các) gói để hủy cài đặt và tẩy"

#: dselect/bindings.cc:159
msgid "Make highlight more specific"
msgstr "Khiến chiếu sáng rõ ràng hơn"

#: dselect/bindings.cc:160
msgid "Make highlight less specific"
msgstr "Khiến chiếu sáng ít rõ ràng hơn"

#: dselect/bindings.cc:161
msgid "Search for a package whose name contains a string"
msgstr "Tìm kiếm một gói mà tên chứa một chuỗi"

#: dselect/bindings.cc:162
msgid "Repeat last search."
msgstr "Lặp lại tìm kiếm cuối cùng."

#: dselect/bindings.cc:163
msgid "Swap sort order priority/section"
msgstr "Trao đổi ưu tiên/phần của thứ tự sắp xếp"

#: dselect/bindings.cc:164
msgid "Quit, confirming, and checking dependencies"
msgstr "Thoát, xác nhận, và kiểm tra phụ thuộc"

#: dselect/bindings.cc:165
msgid "Quit, confirming without check"
msgstr "Thoát, xác nhận mà không kiểm tra"

#: dselect/bindings.cc:166
msgid "Quit, rejecting conflict/dependency suggestions"
msgstr "Thoát, từ chối những đề nghị xung đột/phụ thuộc"

#: dselect/bindings.cc:167
msgid "Abort - quit without making changes"
msgstr "Hủy bỏ — thoát mà không thay đổi gì"

#: dselect/bindings.cc:168
msgid "Revert to old state for all packages"
msgstr "Đưa mọi gói trở về tính trạng cũ"

#: dselect/bindings.cc:169
msgid "Revert to suggested state for all packages"
msgstr "Đưa mọi gói trở về tính trạng đã đề nghị"

#: dselect/bindings.cc:170
msgid "Revert to directly requested state for all packages"
msgstr "Đưa mọi gói trở về tính trạng đã đề nghị thẳng"

#: dselect/bindings.cc:171
#, fuzzy
msgid "Revert to currently installed state for all packages"
msgstr "Đưa mọi gói trở về tính trạng đã đề nghị thẳng"

#: dselect/bindings.cc:174
msgid "Select currently-highlighted access method"
msgstr "Chọn phương pháp truy cập đang được chiếu sáng"

#: dselect/bindings.cc:175
msgid "Quit without changing selected access method"
msgstr "Thoát mà không thay đổi phương pháp truy cập đã chọn"

#: dselect/helpmsgs.cc:29
msgid "Keystrokes"
msgstr "Phím tắt"

#: dselect/helpmsgs.cc:29
#, fuzzy
msgid ""
"Motion keys: Next/Previous, Top/End, Up/Down, Backwards/Forwards:\n"
"  j, Down-arrow         k, Up-arrow             move highlight\n"
"  N, Page-down, Space   P, Page-up, Backspace   scroll list by 1 page\n"
"  ^n                    ^p                      scroll list by 1 line\n"
"  t, Home               e, End                  jump to top/end of list\n"
"  u                     d                       scroll info by 1 page\n"
"  ^u                    ^d                      scroll info by 1 line\n"
"  B, Left-arrow         F, Right-arrow          pan display by 1/3 screen\n"
"  ^b                    ^f                      pan display by 1 character\n"
"\n"
"Mark packages for later processing:\n"
" +, Insert  install or upgrade      =, H  hold in present state\n"
" -, Delete  remove                  :, G  unhold: upgrade or leave "
"uninstalled\n"
" _          remove & purge config\n"
"                                             Miscellaneous:\n"
"Quit, exit, overwrite (note capitals!):       ?, F1 request help (also "
"Help)\n"
" Return  Confirm, quit (check dependencies)   i, I  toggle/cycle info "
"displays\n"
"   Q     Confirm, quit (override dep.s)       o, O  cycle through sort "
"options\n"
" X, Esc  eXit, abandoning any changes made    v, V  change status display "
"opts\n"
"   R     Revert to state before this list      ^l   redraw display\n"
"   U     set all to sUggested state             /   search (Return to "
"cancel)\n"
"   D     set all to Directly requested state  n, \\  repeat last search\n"
msgstr ""
"Phím di chuyển:\n"
"\tKế/Trước, Đầu/Cuối, Lên/Xuống, Lùi/Tiếp:\n"
"  Mũi tên xuống, J         Mũi tên lên, K             di chuyển chiếu sáng\n"
"  N, Page-down, Phím dài   \t\t\tP, Page-up, Backspace (Xóa lùi)\n"
"\t\t\t\t\t\t\tcuộn 1 trang danh sách\n"
"  ^n                    ^p                      \t\tcuộn 1 dòng danh sách\n"
"  t, Home            e, End                  \tnhảy tới đầu/cuối danh sách\n"
"  u                      d                       \tcuộn 1 trang thông tin\n"
"  ^u                    ^d                      \tcuộn 1 dòng thông tin\n"
"  B, Mũi tên trái   \t\tF, Mũi tên phải          kéo ngang 1/3 màn hình\n"
"  ^b                    ^f                   kéo ngang màn hình theo 1 ký "
"tự\n"
"\n"
"Đánh dấu gói để xử lý sau:\n"
"\t+, Insert  \t\t\tcài đặt hoặc cập nhật\n"
"\t=, H  \t\t\t\tgiữ trong tính trạng hiện thời\n"
" \t-, Delete  \t\t\txóa bỏ, gỡ bỏ\n"
"\t:, G  \t\t\t\t\tbỏ giữ: cập nhật hoặc để không cài đặt\n"
"\t_          \t\t\t\tgỡ bỏ và tẩy cấu hình\n"
"\n"
"Tính năng khác:\n"
"\tQuit\t\t\t\t\t(chữ hoa đầu!) thoát\n"
"\texit\t\t\t\t\tthoát lệnh này\n"
"\toverwrite\t\t\tghi đè\n"
"\t?, F1, Help \t\tyêu cầu trợ giúp\n"
" \tReturn  \t\t\txác nhận rồi thoát (kiểm tra phụ thuộc)\n"
"\ti, I  \t\t\t\t\tbật tắt/quay vòng màn hình thông tIn\n"
"   Q     \t\t\t\t\txác nhận rồi thoát (bỏ Qua phụ thuộc)\n"
"\to, O  \t\t\t\tquay vÒng qua các tùy chọn sắp xếp\n"
"\tX, Esc  \t\t\t\tthoát mà bỏ mọi thay đổi\n"
"\tv, V  \t\t\t\t\tthay đổi tùy chọn hiển thị trạng thái\n"
"   R     \t\t\t\t\tđặt lại tính tRạng tRước danh sách này\n"
"\t^l   \t\t\t\t\tvẽ Lại màn hình\n"
"   U     \t\t\t\t\tđặt tất cả thành trạng thái đã đệ nghị\n"
"\t/   \t\t\t\t\ttìm kiểm (Return để thôi)\n"
"   D     \t\t\t\t\tđặt tất cả thành trạng thái Yêu cầu thẳng\n"
"\tn, \\  \t\t\t\tlặp lại tìm kiếm cuối\n"

#: dselect/helpmsgs.cc:55
msgid "Introduction to package selections"
msgstr "Giới thiệu sự lựa chọn gói"

#: dselect/helpmsgs.cc:55
msgid ""
"Welcome to dselect's main package listing.\n"
"\n"
"You will be presented with a list of packages which are installed or "
"available\n"
"for installation.  You can navigate around the list using the cursor keys,\n"
"mark packages for installation (using `+') or deinstallation (using `-').\n"
"Packages can be marked either singly or in groups; initially you will see "
"that\n"
"the line `All packages' is selected.  `+', `-' and so on will affect all "
"the\n"
"packages described by the highlighted line.\n"
"\n"
"Some of your choices will cause conflicts or dependency problems; you will "
"be\n"
"given a sub-list of the relevant packages, so that you can solve the "
"problems.\n"
"\n"
"You should read the list of keys and the explanations of the display.\n"
"Much on-line help is available, please make use of it - press `?' at\n"
"any time for help.\n"
"\n"
"When you have finished selecting packages, press <enter> to confirm "
"changes,\n"
"or `X' to quit without saving changes. A final check on conflicts and\n"
"dependencies will be done - here too you may see a sublist.\n"
"\n"
"Press <space> to leave help and enter the list now.\n"
msgstr ""
"Xin chào mừng tới danh sách quản lý gói chính của dselect.\n"
"\n"
"Đây là danh sách những gói đã cài đặt hoặc sẵn sàng để cài đặt.\n"
"Có thể di chuyển quanh danh sách bằng các phím mũi tên,\n"
"đánh dấu các gói để cài đặt (dùng `+') hoặc hủy cài đặt (dùng `-').\n"
"Có thể đánh dấu các gói riêng rẽ hoặc theo nhóm;\n"
"đầu tiên dòng « Mọi gói » được chọn.\n"
"  `+', `-' v.v. ảnh hưởng mọi gói nằm trên dòng chiếu sáng.\n"
"\n"
"Một vài lựa chọn có thể tạo vấn đề xung đột hoặc phụ thuộc;\n"
"nếu vậy thì sẽ có một danh sách con của những gói liên quan,\n"
"để giúp giải quyết vấn đề.\n"
"\n"
"Nên đọc màn hình danh sách các phím tắt và tác động đều.\n"
"Có cả trợ giúp trực tiếp trong chương trình, bạn xem nhé.\n"
"Hiển thị trợ giúp này bất kỳ lúc nào bằng phím « ? ».\n"
"\n"
"Khi đã kết thúc việc chọn gói, nhấn phím <enter> để xác thực thay đổi,\n"
"hoặc phím « X » để thoát ra mà không ghi nhớ thay đổi.\n"
"Cuối cùng là việc kiểm tra xung đột và phụ thuộc — cũng có thể hiển thị một "
"danh sách con.\n"
"\n"
"Lúc này, bạn nhấn phím dài để dời khỏi trợ giúp và đi vào danh sách.\n"

#: dselect/helpmsgs.cc:80
msgid "Introduction to read-only package list browser"
msgstr "Giới thiệu bộ duyệt danh sách gói chỉ đọc"

#: dselect/helpmsgs.cc:80
msgid ""
"Welcome to dselect's main package listing.\n"
"\n"
"You will be presented with a list of packages which are installed or "
"available\n"
"for installation.  Since you do not have the privilege necessary to update\n"
"package states, you are in a read-only mode.  You can navigate around the\n"
"list using the cursor keys (please see the `Keystrokes' help screen), "
"observe\n"
"the status of the packages and read information about them.\n"
"\n"
"You should read the list of keys and the explanations of the display.\n"
"Much on-line help is available, please make use of it - press `?' at\n"
"any time for help.\n"
"\n"
"When you have finished browsing, press `Q' or <enter> to quit.\n"
"\n"
"Press <space> to leave help and enter the list now.\n"
msgstr ""
"Xin chào mừng tới danh sách quản lý gói chính của dselect.\n"
"\n"
"Đây là danh sách những gói đã cài đặt hoặc sẵn sàng để cài đặt.\n"
"Vì bạn không có đủ quyền cần thiết để cập nhật tính trạng các gói,\n"
"nên nằm trong chế độ chỉ đọc. Có thể di chuyển quanh danh sách\n"
"bằng các phím mũi tên (xin hãy xem màn hình trợ giúp « Phím tắt »),\n"
"theo dõi trạng thái các gói và đọc thông tin về chúng.\n"
"\n"
"Nên đọc màn hình danh sách các phím tắt và tác động đều.\n"
"Có cả trợ giúp trực tiếp trong chương trình, bạn xem nhé.\n"
"Hiển thị trợ giúp này bất kỳ lúc nào bằng phím « ? ».\n"
"\n"
"Khi đã kết thúc việc duyệt, hãy nhấn phím « Q » hoặc phím dài để thoát.\n"
"\n"
"Lúc này, bạn nhấn phím dài để dời khỏi trợ giúp và đi vào danh sách.\n"

#: dselect/helpmsgs.cc:99
msgid "Introduction to conflict/dependency resolution sub-list"
msgstr "Giới thiệu danh sách con các giải pháp cho xung đột/phụ thuộc"

#: dselect/helpmsgs.cc:99
msgid ""
"Dependency/conflict resolution - introduction.\n"
"\n"
"One or more of your choices have raised a conflict or dependency problem -\n"
"some packages should only be installed in conjunction with certain others, "
"and\n"
"some combinations of packages may not be installed together.\n"
"\n"
"You will see a sub-list containing the packages involved.  The bottom half "
"of\n"
"the display shows relevant conflicts and dependencies; use `i' to cycle "
"between\n"
"that, the package descriptions and the internal control information.\n"
"\n"
"A set of `suggested' packages has been calculated, and the initial markings "
"in\n"
"this sub-list have been set to match those, so you can just hit Return to\n"
"accept the suggestions if you wish.  You may abort the change(s) which "
"caused\n"
"the problem(s), and go back to the main list, by pressing capital `X'.\n"
"\n"
"You can also move around the list and change the markings so that they are "
"more\n"
"like what you want, and you can `reject' my suggestions by using the "
"capital\n"
"`D' or `R' keys (see the keybindings help screen).  You can use capital `Q' "
"to\n"
"force me to accept the situation currently displayed, in case you want to\n"
"override a recommendation or think that the program is mistaken.\n"
"\n"
"Press <space> to leave help and enter the sub-list; remember: press `?' for "
"help.\n"
msgstr ""
"Giải quyết phụ thuộc/xung đột — giới thiệu.\n"
"\n"
"Một hoặc vài lựa chọn đã gây ra vấn đề xung đột hay phụ thuộc —\n"
"một số gói nào đó chỉ cài đặt được cùng với một số gói khác, còn một số tổ "
"hợp gói không thể được cài đặt cùng với nhau.\n"
"Một danh sách con sẽ hiện ra cho biết những gói như vậy.\n"
"Nửa dưới của màn hình hiển thị cách xung đột và phụ thuộc tương ứng;\n"
"nhấn phím « i » để di chuyển giữa thông tin đó, mô tả gói và\n"
"thông tin điều khiển nội bộ.\n"
"\n"
"Chương trình đưa ra các gói « đề nghị », và sự đánh dấu ban đầu trong\n"
"danh sách con này tương ứng với những gói đó, vì thế có thể nhấn Return\n"
"để chấp nhận những đề nghị nếu muốn.  Có thể hủy bỏ (các) thay đổi gây\n"
"ra vấn đề, và quay lại màn hình chính bằng bấm phím « X » viết hoa.\n"
"\n"
"Đồng thời còn có thể di chuyển xung quanh danh sách\n"
"và thay đổi các dấu cho hợp với ý muốn,\n"
"và có thể « bỏ đi » các đề nghị của trình này bằng « D » hoặc « R » viết "
"hoa\n"
"(xem màn hình trợ giúp phím).\n"
"Có thể dùng « Q » viết hoa để bắt buộc chương trình chấp nhận\n"
"tình huống đã hiển thị, trong trường hợp muốn bỏ qua những lời khuyên\n"
"hoặc nghĩ rằng chương trình đã nhầm.\n"
"\n"
"Lúc này có thể nhấn phím dài để thoát khỏi trợ giúp và xem danh sách con;\n"
"hãy nhớ : nhấn « ? » để xem trợ giúp.\n"

#: dselect/helpmsgs.cc:125
msgid "Display, part 1: package listing and status chars"
msgstr "Màn hình, phần 1: danh sách gói và ký tự trạng thái"

#: dselect/helpmsgs.cc:125
#, fuzzy
msgid ""
"The top half of the screen shows a list of packages.  For each package you "
"see\n"
"four columns for its current status on the system and mark.  In terse mode "
"(use\n"
"`v' to toggle verbose display) these are single characters, from left to "
"right:\n"
"\n"
" Error flag: Space - no error (but package may be in broken state - see "
"below)\n"
"              `R'  - serious error during installation, needs "
"reinstallation;\n"
" Installed state:     Space    - not installed;\n"
"                       `*'     - installed;\n"
"                       `-'     - not installed but config files remain;\n"
"   packages in these { `U'     - unpacked but not yet configured;\n"
"   states are not    { `C'     - half-configured (an error happened);\n"
"   (quite) properly  { `I'     - half-installed (an error happened);\n"
"   installed         { `W',`t' - triggers are awaited resp. pending.\n"
" Old mark: what was requested for this package before presenting this list;\n"
" Mark: what is requested for this package:\n"
"  `*': marked for installation or upgrade;\n"
"  `-': marked for removal, but any configuration files will remain;\n"
"  `=': on hold: package will not be processed at all;\n"
"  `_': marked for purge completely - even remove configuration;\n"
"  `n': package is new and has yet to be marked for install/remove/&c.\n"
"\n"
"Also displayed are each package's Priority, Section, name, installed and\n"
"available version numbers (shift-V to display/hide) and summary "
"description.\n"
msgstr ""
"Nửa trên của màn hình hiển thị danh sách các gói.\n"
"Mỗi gói có bốn cột hiển thị trạng thái hiện thời trên hệ thống và đánh dấu.\n"
"Trong chế độ ngắn gọn (dùng « v » để chuyển sang chế độ chi tiết)\n"
"chúng là những ký tự đơn, từ trái sang phải:\n"
"\n"
" Cờ lỗi:\n"
"\tDấu cách\t\t  không lỗi (nhưng gói có thể ở trạng thái vỡ — xem dưới)\n"
"\tR\t\t\t\t\t  lỗi nghiêm trọng khi cài đặt, cần cài đặt lại;\n"
"Trạng thái cài đặt:\n"
"\tDấu cách\t\t  chưa cài đặt;\n"
"\t*\t\t\t\t\t  đã cài đặt;\n"
"\t-\t\t\t\t\t  không cài đặt nhưng có tập tin cấu hình còn lại;\n"
"   GÓI   {\tU\t\t\tđã mở gói nhưng chưa cấu hình;\n"
" \tBỊ      { \tC\t\t\tcấu hình một nửa (gặp lỗi);\n"
" \tVỠ    { \tI\t\t\tcài đặt một nửa (gặp lỗi).\n"
"Dấu cũ\t\tcái đã yêu cầu cho gói này trước khi đưa ra danh sách này;\n"
"Dấu\t\t\tcái hiện thời yêu cầu đối với gói này:\n"
"\t*\t\t\t\t\tcài đặt hoặc nâng cấp;\n"
"\t-\t\t\t\t\tgỡ bỏ, nhưng vẫn giữ lại các tập tin cấu hình;\n"
"\t=\t\t\t\t\tgiữ lại: sẽ không xử lý gói cả;\n"
"\t_\t\t\t\t\ttẩy hoàn toàn — thậm chí cả cấu hình;\n"
"\tn\t\t\t\t\tgói mới nên chưa đánh dấu để cài đặt/gỡ bỏ/v.v..\n"
"\n"
"Đồng thời còn hiển thị Ưu tiên, Phần, Tên, phiên bản Đã cài và Có thể cài\n"
"(phím tắt Shift-V để hiện/ẩn) mỗi gói và mô tả tóm tắt chung.\n"

#: dselect/helpmsgs.cc:152
msgid "Display, part 2: list highlight; information display"
msgstr "Màn hình, phần 2: chiếu sáng danh sách; màn hình thông tin"

#: dselect/helpmsgs.cc:152
msgid ""
"* Highlight: One line in the package list will be highlighted.  It "
"indicates\n"
"  which package(s) will be affected by presses of `+', `-' and `_'.\n"
"\n"
"* The dividing line in the middle of the screen shows a brief explanation "
"of\n"
"  the status of the currently-highlighted package, or a description of "
"which\n"
"  group is highlighted if a group line is.  If you don't understand the\n"
"  meaning of some of the status characters displayed, go to the relevant\n"
"  package and look at this divider line, or use the `v' key for a verbose\n"
"  display (press `v' again to go back to the terse display).\n"
"\n"
"* The bottom of the screen shows more information about the\n"
"  currently-highlighted package (if there is only one).\n"
"\n"
"  It can show an extended description of the package, the internal package\n"
"  control details (either for the installed or available version of the\n"
"  package), or information about conflicts and dependencies involving the\n"
"  current package (in conflict/dependency resolution sublists).\n"
"\n"
"  Use the `i' key to cycle through the displays, and `I' to hide the\n"
"  information display or expand it to use almost all of the screen.\n"
msgstr ""
"* Chiếu sáng: Sẽ chiếu sáng một dòng trong danh sách gói.  Chiếu sáng\n"
"  chỉ ra gói nào sẽ bị ảnh hưởng khi nhấn phím « + », « - » và « _ ».\n"
"\n"
"• Dòng chia ở giữa màn hình cho biết giải thích ngắn gọn về trạng thái của\n"
"  gói đang được chiếu sáng, hoặc một mô tả ngắn gọn của nhóm nếu dòng\n"
"  đó là một nhóm.  Nếu không hiểu ý nghĩa của một vài ký tự cho biết\n"
"  trạng thái, thì hãy đi tới gói thích hợp và nhìn vào dòng chia, hoặc sử\n"
"  dụng phím « v »  để bật/tắt hiển thị mô tả chi tiết/ngắn gọn.\n"
"• Phần đáy màn hình hiển thị thông tin thêm về gói đang được chiếu\n"
"  sáng (nếu có).\n"
"\n"
"  Nó có thể hiển thị mô tả chi tiết hơn về gói, chi tiết về điều khiển gói\n"
"  nội bộ (cho phiên bản đã cài, hoặc có thể cài của gói), hoặc thông tin về\n"
"  xung đột và phụ thuộc mà gói gây ra\n"
"  (trong danh sách con xung đột/phụ thuộc).\n"
"\n"
"  Dùng phím « i » để chuyển quanh các màn hình, và « I » để ẩn màn hình\n"
"  thông tin hay mở rộng để nó chiếu gần hết màn hình.\n"

#: dselect/helpmsgs.cc:176
msgid "Introduction to method selection display"
msgstr "Giới thiệu màn hình chọn phương pháp"

#: dselect/helpmsgs.cc:176
msgid ""
"dselect and dpkg can do automatic installation, loading the package files to "
"be\n"
"installed from one of a number of different possible places.\n"
"\n"
"This list allows you to select one of these installation methods.\n"
"\n"
"Move the highlight to the method you wish to use, and hit Enter.  You will "
"then\n"
"be prompted for the information required to do the installation.\n"
"\n"
"As you move the highlight a description of each method, where available, is\n"
"displayed in the bottom half of the screen.\n"
"\n"
"If you wish to quit without changing anything use the `x' key while in the "
"list\n"
"of installation methods.\n"
"\n"
"A full list of keystrokes is available by pressing `k' now, or from the "
"help\n"
"menu reachable by pressing `?'.\n"
msgstr ""
"dselect và dpkg có thể cài đặt tự động, tải tập tin của gói cần cài đặt\n"
"từ một trong số những nơi có thể dùng.\n"
"\n"
"Danh sách này cho phép chọn một trong số những phương pháp cài đặt này.\n"
"\n"
"Di chuyển chiếu sáng tới phương pháp muốn dùng, và nhấn phím Enter.\n"
"Sau đó sẽ có nhắc về thông tin cần thiết cho việc cài đặt.\n"
"\n"
"Khi di chuyển chiếu sáng tới mỗi phương pháp, sẽ có mô tả về nó (nếu có)\n"
"ở nửa dưới của màn hình.\n"
"\n"
"Nếu muốn thoát mà không thay đổi gì thì dùng phím « x » khi trong danh sách\n"
"các phương pháp cài đặt.\n"
"\n"
"Nhấn phím « k » để xem danh sách đầy đủ các phím tắt,\n"
"hoặc từ trình đơn trợ giúp bằng cách nhấn phím « ? ».\n"

#: dselect/helpmsgs.cc:196
msgid "Keystrokes for method selection"
msgstr "Phím tắt để chọn phương pháp"

#: dselect/helpmsgs.cc:196
#, fuzzy
msgid ""
"Motion keys: Next/Previous, Top/End, Up/Down, Backwards/Forwards:\n"
"  j, Down-arrow         k, Up-arrow             move highlight\n"
"  N, Page-down, Space   P, Page-up, Backspace   scroll list by 1 page\n"
"  ^n                    ^p                      scroll list by 1 line\n"
"  t, Home               e, End                  jump to top/end of list\n"
"  u                     d                       scroll info by 1 page\n"
"  ^u                    ^d                      scroll info by 1 line\n"
"  B, Left-arrow         F, Right-arrow          pan display by 1/3 screen\n"
"  ^b                    ^f                      pan display by 1 character\n"
"(These are the same motion keys as in the package list display.)\n"
"\n"
"Quit:\n"
" Return, Enter    select this method and go to its configuration dialogue\n"
" x, X             exit without changing or setting up the installation "
"method\n"
"\n"
"Miscellaneous:\n"
"  ?, Help, F1      request help\n"
" ^l                redraw display\n"
"  /                search (just return to cancel)\n"
"  \\                repeat last search\n"
msgstr ""
"Phím di chuyển: Kế/Trước, Đầu/Cuối, Lên/Xuống, Lùi/Tiếp:\n"
"  n, Mũi tên xuống         p, Mũi tên lên             di chuyển chiếu sáng\n"
"  N, Page-down, Phím dài   P, Page-up, Xóa lùi   cuộn 1 trang danh sách\n"
"  ^n                    ^p                      cuộn 1 dòng danh sách\n"
"  t, Home               e, End             nhảy tới đầu/cuối danh sách\n"
"  u                     d                        cuộn 1 trang thông tin\n"
"  ^u                    ^d                      cuộn 1 dòng thông tin\n"
"  B, Mũi tên trái         F, Mũi tên phải          kéo ngang 1/3 màn hình\n"
"  ^b                    ^f                      kéo ngang màn hình theo 1 ký "
"tự\n"
"(Các phím di chuyển trong danh sách gói là tương tự.)\n"
"\n"
"Thoát:\n"
"  Return, Enter    chọn phương pháp này và đi tới hộp thoại cấu hình nó\n"
"  x, X           thoát và bỏ mọi thay đổi hoặc thiết lập phương pháp cài "
"đặt\n"
"\n"
"Khác:\n"
"  ?, Help, F1      \tyêu cầu trợ giúp\n"
" ^l                \t\tvẽ lại màn hình\n"
"  /                \t\ttìm kiếm (đơn giản nhấn Return để thôi)\n"
"  \\                \t\tlặp lại tìm kiếm cuối cùng\n"

#: dselect/main.cc:60
msgid "Type dselect --help for help."
msgstr "Gõ « dselect --help » để xem trợ giúp."

#: dselect/main.cc:143
msgid "a"
msgstr "a"

#: dselect/main.cc:143
msgid "[A]ccess"
msgstr "[A]Truy cập"

#: dselect/main.cc:143
msgid "Choose the access method to use."
msgstr "Chọn phương pháp truy cập để sử dụng."

#: dselect/main.cc:144
msgid "u"
msgstr "u"

#: dselect/main.cc:144
msgid "[U]pdate"
msgstr "[U]Cập nhật"

#: dselect/main.cc:144
msgid "Update list of available packages, if possible."
msgstr "Cập nhật danh sách những gói có sẵn, nếu có thể."

#: dselect/main.cc:145
msgid "s"
msgstr "s"

#: dselect/main.cc:145
msgid "[S]elect"
msgstr "[S]Chọn"

#: dselect/main.cc:145
msgid "Request which packages you want on your system."
msgstr "Yêu cầu những gói muốn có trên hệ thống."

#: dselect/main.cc:146
msgid "i"
msgstr "i"

#: dselect/main.cc:146
msgid "[I]nstall"
msgstr "[I]Cài"

#: dselect/main.cc:146
msgid "Install and upgrade wanted packages."
msgstr "Cài đặt và nâng cấp các gói mong muốn."

#: dselect/main.cc:147
msgid "c"
msgstr "c"

#: dselect/main.cc:147
msgid "[C]onfig"
msgstr "[C]ấu hình"

#: dselect/main.cc:147
msgid "Configure any packages that are unconfigured."
msgstr "Cấu hình những gói còn chưa được cấu hình."

#: dselect/main.cc:148
msgid "r"
msgstr "r"

#: dselect/main.cc:148
msgid "[R]emove"
msgstr "[R]Gỡ bỏ"

#: dselect/main.cc:148
msgid "Remove unwanted software."
msgstr "Gỡ bỏ phần mềm không mong muốn."

#: dselect/main.cc:149
msgid "q"
msgstr "q"

#: dselect/main.cc:149
msgid "[Q]uit"
msgstr "[Q]Thoát"

#: dselect/main.cc:149
msgid "Quit dselect."
msgstr "Thoát khỏi dselect."

#: dselect/main.cc:150
msgid "menu"
msgstr "trình đơn"

#: dselect/main.cc:155
#, c-format
msgid "Debian `%s' package handling frontend version %s.\n"
msgstr "Tiền tiêu quản lý gói Debian « %s » phiên bản %s.\n"

#: dselect/main.cc:158
msgid ""
"Copyright (C) 1994-1996 Ian Jackson.\n"
"Copyright (C) 2000,2001 Wichert Akkerman.\n"
msgstr ""
"Bản quyền © nam 1994-1996 Ian Jackson.\n"
"Bản quyền © năm 2000,2001 Wichert Akkerman.\n"

#: dselect/main.cc:162
#, fuzzy
msgid ""
"This is free software; see the GNU General Public License version 2 or\n"
"later for copying conditions. There is NO warranty.\n"
msgstr ""
"Đây là phần mềm tự do, hãy xem Quyền Công Chung GNU (GPL)\n"
"phiên bản 2 hoặc mới hơn để biết điều kiện sao chép.\n"
"KHÔNG có bản đảm gì cả.\n"
"Hãy xem « %s --licence » để biết điều kiện _quyền phép_.\n"

#: dselect/main.cc:172 dselect/main.cc:220
msgid "<standard output>"
msgstr ""

#: dselect/main.cc:183
#, c-format
msgid ""
"Usage: %s [<option> ...] [<action> ...]\n"
"\n"
msgstr ""
"Cách sử dụng: %s [<tùy_chọn> ...] [<hành_động> ...]\n"
"\n"

#: dselect/main.cc:187
#, c-format
msgid ""
"Options:\n"
"  --admindir <directory>     Use <directory> instead of %s.\n"
"  --expert                   Turn on expert mode.\n"
"  --debug <file> | -D<file>  Turn on debugging, sending output to <file>.\n"
"  --colour | --color screenpart:[foreground],[background][:attr[+attr+..]]\n"
"                             Configure screen colours.\n"
"\n"
msgstr ""
"Tùy chọn:\n"
"  --admindir <thư_mục>\tdùng thư mục này thay cho %s.\n"
"\t[_thư mục quản trị_]\n"
"  --expert                   \tBật chế độ _cấp cao_.\n"
"  --debug <tập_tin> | -D<tập_tin>\n"
"\t\t\t\t\tBật khả năng _gỡ lỗi_, xuất vào tập tin này.\n"
"  --colour | --color screenpart:[cảnh_gần],[nền][:TT[+TT+..]]\n"
"\t[TT là thuộc tính]\tcấu hình màu sắc màn hình\n"
"\n"

#: dselect/main.cc:196
#, fuzzy, c-format
msgid ""
"  --help                     Show this help message.\n"
"  --version                  Show the version.\n"
"\n"
msgstr ""
"  --help                     Hiện _trợ giúp_ này.\n"
"  --version                  Hiện _phiên bản_.\n"
"  --license | --licence      Hiện _giấy phép_.\n"
"\n"

#: dselect/main.cc:201
#, c-format
msgid ""
"Actions:\n"
"  access update select install config remove quit\n"
"\n"
msgstr ""
"Hành động:\n"
" • access\t\ttruy cập\n"
" • update\t\tcập nhật\n"
" • select\t\tlựa chọn\n"
" • install\t\tcài đặt\n"
" • config\t\tcấu hình (viết tắt)\n"
" • remove\tgỡ bỏ\n"
" • quit\t\tthoát\n"

#: dselect/main.cc:205
#, c-format
msgid "Screenparts:\n"
msgstr "Các phần màn hình:\n"

#: dselect/main.cc:210
#, c-format
msgid "Colours:\n"
msgstr "Màu sắc:\n"

#: dselect/main.cc:215
#, c-format
msgid "Attributes:\n"
msgstr "Thuộc tính:\n"

#: dselect/main.cc:233
#, c-format
msgid "couldn't open debug file `%.255s'\n"
msgstr "không thể mở tập tin gỡ lỗi « %.250s »\n"

#: dselect/main.cc:253
#, c-format
msgid "Invalid %s `%s'\n"
msgstr "%s không hợp lệ « %s »\n"

#: dselect/main.cc:270
msgid "screen part"
msgstr "phần màn hình"

#: dselect/main.cc:276
msgid "Null colour specification\n"
msgstr "Đặc tả màu rỗng\n"

#: dselect/main.cc:284 dselect/main.cc:289
msgid "colour"
msgstr "màu"

#: dselect/main.cc:297
msgid "colour attribute"
msgstr "thuộc tính màu"

#: dselect/main.cc:329
msgid "Terminal does not appear to support cursor addressing.\n"
msgstr "Thiết bị cuỗi có vẻ không hỗ trợ cách gán địa chỉ cho con chạy.\n"

#: dselect/main.cc:331
msgid "Terminal does not appear to support highlighting.\n"
msgstr "Thiết bị cuỗi có vẻ không hỗ trợ chiếu sáng.\n"

#: dselect/main.cc:333
#, c-format
msgid ""
"Set your TERM variable correctly, use a better terminal,\n"
"or make do with the per-package management tool %s.\n"
msgstr ""
"Hãy đặt đúng giá trị biến TERM, dùng một thiết bị cuối tốt hơn,\n"
"hoặc làm việc với công cụ quản lý theo từng gói %s.\n"

#: dselect/main.cc:336
msgid "terminal lacks necessary features, giving up"
msgstr "thiết bị cuối thiếu tính năng cần thiết, đầu hàng"

#: dselect/main.cc:417
msgid ""
"\n"
"\n"
"Move around with ^P and ^N, cursor keys, initial letters, or digits;\n"
"Press <enter> to confirm selection.   ^L redraws screen.\n"
"\n"
msgstr ""
"\n"
"\n"
"Di chuyển bằng ^P và ^N, phím mũi tên, chữ cái đầu, hoặc chữ số;\n"
"Nhấn phím Enter để chọn.   ^L vẽ lại màn hình.\n"
"\n"

#: dselect/main.cc:428
msgid ""
"\n"
"\n"
"Read-only access: only preview of selections is available!"
msgstr ""
"\n"
"\n"
"Truy cập chỉ đọc: chỉ có sẵn xem trước các lựa chọn."

#: dselect/main.cc:448
msgid "failed to getch in main menu"
msgstr "việc getch (đọc từng ký tự khi gõ) vào trình đơn chính bị lỗi"

#: dselect/main.cc:531
#, c-format
msgid "unknown action string `%.50s'"
msgstr "chuỗi hành động không rõ « %.250s »"

#: dselect/methlist.cc:77
msgid "dselect - list of access methods"
msgstr "dselect — danh sách các phương pháp truy cập"

#: dselect/methlist.cc:86
#, c-format
msgid "Access method `%s'."
msgstr "Phương pháp truy cập « %s »"

#: dselect/methlist.cc:120
msgid "Abbrev."
msgstr "Viết tắt"

#: dselect/methlist.cc:121 dselect/pkginfo.cc:105 dselect/pkgtop.cc:291
msgid "Description"
msgstr "Mô tả"

#: dselect/methlist.cc:164 dselect/pkglist.cc:572
msgid "doupdate failed"
msgstr "việc doupdate (chạy tiến trình cập nhật) bị lỗi"

#: dselect/methlist.cc:166 dselect/pkglist.cc:575
msgid "failed to unblock SIGWINCH"
msgstr "việc bỏ ngăn chặn SIGWINCH bị lỗi"

#: dselect/methlist.cc:170 dselect/pkglist.cc:580
msgid "failed to re-block SIGWINCH"
msgstr "việc ngăn chặn lại SIGWINCH bị lỗi"

#: dselect/methlist.cc:171 dselect/pkglist.cc:582
msgid "getch failed"
msgstr "việc getch (đọc từng ký tự khi gõ) bị lỗi"

#: dselect/methlist.cc:188
#, fuzzy
msgid "Explanation"
msgstr "giải thích về "

#: dselect/methlist.cc:197
msgid "No explanation available."
msgstr "Không có giải thích sẵn sàng."

#: dselect/method.cc:67
#, c-format
msgid ""
"\n"
"\n"
"%s: %s\n"
msgstr ""
"\n"
"\n"
"%s: %s\n"

#: dselect/method.cc:70
msgid ""
"\n"
"Press <enter> to continue."
msgstr ""
"\n"
"Nhấn phím Enter để tiếp tục lại."

#: dselect/method.cc:161
#, c-format
msgid "Press <enter> to continue.\n"
msgstr "Nhấn phím Enter để tiếp tục lại.\n"

#: dselect/method.cc:162
#, fuzzy
msgid "<standard error>"
msgstr "lỗi ghi trên thiết bị lỗi chuẩn"

#: dselect/method.cc:165
msgid "error reading acknowledgement of program failure message"
msgstr "gặp lỗi khi đọc sự thừa nhận thông điệp lỗi của chương trình"

#: dselect/method.cc:196
msgid "update available list script"
msgstr "cập nhật tập lệnh danh sách có sẵn"

#: dselect/method.cc:200
msgid "installation script"
msgstr "tập lệnh cài đặt"

#: dselect/method.cc:246
msgid "query/setup script"
msgstr "tập lệnh truy vấn/thiết lập"

#: dselect/methparse.cc:53
#, c-format
msgid "syntax error in method options file `%.250s' -- %s"
msgstr "lỗi cú pháp trong tập tin tùy chọn phương pháp « %.250s » -- %s"

#: dselect/methparse.cc:59
#, c-format
msgid "error reading options file `%.250s'"
msgstr "gặp lỗi khi đọc tập tin tùy chọn « %.250s »"

#: dselect/methparse.cc:90
#, c-format
msgid "unable to read `%.250s' directory for reading methods"
msgstr "không thể đọc thư mục « %.250s » để các phương pháp đọc"

#: dselect/methparse.cc:106
#, c-format
msgid "method `%.250s' has name that is too long (%d > %d characters)"
msgstr "phương pháp « %.250s » có tên quá dài (%d > %d ký tự)"

#: dselect/methparse.cc:117
#, c-format
msgid "unable to access method script `%.250s'"
msgstr "không thể truy cập tập lệnh phương pháp « %.250s »"

#: dselect/methparse.cc:123
#, c-format
msgid "unable to read method options file `%.250s'"
msgstr "không thể đọc tập tin tùy chọn phương pháp « %.250s »"

#: dselect/methparse.cc:147
msgid "non-digit where digit wanted"
msgstr "không phải chữ số ở chỗ cần chữ số"

#: dselect/methparse.cc:150
msgid "EOF in index string"
msgstr "gặp kết thúc tập tin trong chuỗi chỉ mục"

#: dselect/methparse.cc:153
msgid "index string too long"
msgstr "chuỗi chỉ mục quá dài"

#: dselect/methparse.cc:156
msgid "newline before option name start"
msgstr "dòng mới trước khi bắt đầu tên tùy chọn"

#: dselect/methparse.cc:158
msgid "EOF before option name start"
msgstr "gặp kết thúc tập tin trước khi bắt đầu tên tùy chọn"

#: dselect/methparse.cc:162
msgid "nonalpha where option name start wanted"
msgstr "không phải chữ cái ở chỗ cần bắt đầu tên tùy chọn"

#: dselect/methparse.cc:164
msgid "non-alphanum in option name"
msgstr "không phải chữ cái hay số ở trong tên tùy chọn"

#: dselect/methparse.cc:167
msgid "EOF in option name"
msgstr "gặp kết thúc tập tin trong tên tùy chọn"

#: dselect/methparse.cc:172
msgid "newline before summary"
msgstr "dòng mới trước tổng kết"

#: dselect/methparse.cc:174
msgid "EOF before summary"
msgstr "gặp kết thúc tập tin trước tổng kết"

#: dselect/methparse.cc:180
msgid "EOF in summary - missing newline"
msgstr "gặp kết thúc tập tin trong tổng kết — thiếu dòng mới"

#: dselect/methparse.cc:190
#, c-format
msgid "unable to open option description file `%.250s'"
msgstr "không thể mở tập tin mô tả tùy chọn « %.250s »"

#: dselect/methparse.cc:194
#, c-format
msgid "unable to stat option description file `%.250s'"
msgstr "không thể lấy các thông tin về tập tin mô tả tùy chọn « %.250s »"

#: dselect/methparse.cc:198
#, c-format
msgid "failed to read option description file `%.250s'"
msgstr "không thể đọc tập tin mô tả tùy chọn « %.250s »"

#: dselect/methparse.cc:201
#, c-format
msgid "error during read of option description file `%.250s'"
msgstr "gặp lỗi trong khi đọc tập tin mô tả tùy chọn « %.250s »"

#: dselect/methparse.cc:224
#, c-format
msgid "error during read of method options file `%.250s'"
msgstr "gặp lỗi trong khi đọc tập tin tùy chọn phương pháp « %.250s »"

#: dselect/methparse.cc:247
#, c-format
msgid "unable to open current option file `%.250s'"
msgstr "không thể mở tập tin tùy chọn hiện thời « %.250s »"

#: dselect/methparse.cc:289
#, c-format
msgid "unable to open new option file `%.250s'"
msgstr "không thể mở tập tin tùy chọn mới « %.250s »"

#: dselect/methparse.cc:292
#, c-format
msgid "unable to write new option to `%.250s'"
msgstr "không thể ghi tùy chọn mới tới « %.250s »"

#: dselect/methparse.cc:295
#, c-format
msgid "unable to close new option file `%.250s'"
msgstr "không thể đóng tập tin tùy chọn mới « %.250s »"

#: dselect/methparse.cc:297
#, c-format
msgid "unable to install new option as `%.250s'"
msgstr "không thể cài đặt tùy chọn mới dạng « %.250s »"

#: dselect/pkgdisplay.cc:36
msgid "new package"
msgstr "gói mới"

#: dselect/pkgdisplay.cc:37
msgid "install"
msgstr "cài đặt"

#: dselect/pkgdisplay.cc:38
msgid "hold"
msgstr "giữ lại"

#: dselect/pkgdisplay.cc:39
msgid "remove"
msgstr "gỡ bỏ"

#: dselect/pkgdisplay.cc:40
msgid "purge"
msgstr "tẩy"

#. TRANSLATORS: The space is a trick to work around gettext which uses
#. * the empty string to store information about the translation. DO NOT
#. * CHANGE THAT IN A TRANSLATION! The code really relies on that being
#. * a single space.
#: dselect/pkgdisplay.cc:47
msgid " "
msgstr " "

#: dselect/pkgdisplay.cc:48
msgid "REINSTALL"
msgstr "CÀI_ĐẶT_LẠI"

#: dselect/pkgdisplay.cc:51
msgid "not installed"
msgstr "chưa cài đặt"

#: dselect/pkgdisplay.cc:52
msgid "removed (configs remain)"
msgstr "đã gỡ bỏ (vẫn còn cấu hình)"

#: dselect/pkgdisplay.cc:53
msgid "half installed"
msgstr "đã cài một nửa"

#: dselect/pkgdisplay.cc:54
msgid "unpacked (not set up)"
msgstr "đã mở gói (chưa thiết lập)"

#: dselect/pkgdisplay.cc:55
msgid "half configured (config failed)"
msgstr ""

#: dselect/pkgdisplay.cc:56
msgid "awaiting trigger processing"
msgstr ""

#: dselect/pkgdisplay.cc:57
msgid "triggered"
msgstr ""

#: dselect/pkgdisplay.cc:58
msgid "installed"
msgstr "đã cài đặt"

#: dselect/pkgdisplay.cc:61
msgid "Required"
msgstr "Yêu cầu"

#: dselect/pkgdisplay.cc:62
msgid "Important"
msgstr "Quan trọng"

#: dselect/pkgdisplay.cc:63
msgid "Standard"
msgstr "Cơ bản"

#: dselect/pkgdisplay.cc:64
msgid "Optional"
msgstr "Tùy chọn"

#: dselect/pkgdisplay.cc:65
msgid "Extra"
msgstr "Thêm"

#: dselect/pkgdisplay.cc:66
msgid "!Bug!"
msgstr "!Lỗi!"

#: dselect/pkgdisplay.cc:67
msgid "Unclassified"
msgstr "Chưa phân loại"

#: dselect/pkgdisplay.cc:70
msgid "suggests"
msgstr "đề nghị"

#: dselect/pkgdisplay.cc:71
msgid "recommends"
msgstr "khuyên"

#: dselect/pkgdisplay.cc:72
msgid "depends on"
msgstr "phụ thuộc vào"

#: dselect/pkgdisplay.cc:73
msgid "pre-depends on"
msgstr "phụ thuộc trước vào"

#: dselect/pkgdisplay.cc:74
msgid "breaks"
msgstr ""

#: dselect/pkgdisplay.cc:75
msgid "conflicts with"
msgstr "xung đột với"

#: dselect/pkgdisplay.cc:76
msgid "provides"
msgstr "cung cấp"

#: dselect/pkgdisplay.cc:77
msgid "replaces"
msgstr "thay thế"

#: dselect/pkgdisplay.cc:78
msgid "enhances"
msgstr "tăng cường"

#: dselect/pkgdisplay.cc:81
msgid "Req"
msgstr "Cần"

#: dselect/pkgdisplay.cc:82
msgid "Imp"
msgstr "Qtg"

#: dselect/pkgdisplay.cc:83
msgid "Std"
msgstr "Chn"

#: dselect/pkgdisplay.cc:84
msgid "Opt"
msgstr "TCh"

#: dselect/pkgdisplay.cc:85
msgid "Xtr"
msgstr "Nữa"

#: dselect/pkgdisplay.cc:86
msgid "bUG"
msgstr "lỗi"

#: dselect/pkgdisplay.cc:87
msgid "?"
msgstr "?"

#: dselect/pkgdisplay.cc:95 dselect/pkgdisplay.cc:115
msgid "Broken"
msgstr "Bị vỡ"

#: dselect/pkgdisplay.cc:96
msgid "New"
msgstr "Mới"

#: dselect/pkgdisplay.cc:97
msgid "Updated"
msgstr "Đã cập nhật"

#: dselect/pkgdisplay.cc:98
msgid "Obsolete/local"
msgstr "Đã cũ/nội bộ"

#: dselect/pkgdisplay.cc:99
msgid "Up-to-date"
msgstr "Hiện thời"

#: dselect/pkgdisplay.cc:100
msgid "Available"
msgstr "Có sẵn"

#: dselect/pkgdisplay.cc:101 dselect/pkgdisplay.cc:117
msgid "Removed"
msgstr "Đã gỡ bỏ"

#: dselect/pkgdisplay.cc:102 dselect/pkgdisplay.cc:111
msgid "Brokenly installed packages"
msgstr "Gói đã cài nhưng bị vỡ"

#: dselect/pkgdisplay.cc:103
msgid "Newly available packages"
msgstr "Những gói mới sẵn sàng"

#: dselect/pkgdisplay.cc:104
msgid "Updated packages (newer version is available)"
msgstr "Những gói cập nhật (có sẵn phiên bản mới hơn)"

#: dselect/pkgdisplay.cc:105
msgid "Obsolete and local packages present on system"
msgstr "Có những gói đã cũ và gói nội bộ trong hệ thống"

#: dselect/pkgdisplay.cc:106
msgid "Up to date installed packages"
msgstr "Những gói đã cài đặt phiên bản mới nhất"

#: dselect/pkgdisplay.cc:107
msgid "Available packages (not currently installed)"
msgstr "Những gói có sẵn (nhưng chưa cài đặt)"

#: dselect/pkgdisplay.cc:108
msgid "Removed and no longer available packages"
msgstr "Những gói đã gỡ bỏ và không còn nữa"

#: dselect/pkgdisplay.cc:112
msgid "Installed packages"
msgstr "Những gói đã cài đặt"

#: dselect/pkgdisplay.cc:113
msgid "Removed packages (configuration still present)"
msgstr "Những gói đã gỡ bỏ (nhưng vẫn còn cấu hình)"

#: dselect/pkgdisplay.cc:114
msgid "Purged packages and those never installed"
msgstr "Những gói đã tẩy và gói chưa bao giờ được cài đặt"

#: dselect/pkgdisplay.cc:116
msgid "Installed"
msgstr "Đã cài đặt"

#: dselect/pkgdisplay.cc:118
msgid "Purged"
msgstr "Đã tẩy"

#: dselect/pkgdisplay.cc:198
msgid "dselect - recursive package listing"
msgstr "dselect — danh sách gói đệ quy"

#: dselect/pkgdisplay.cc:199
msgid "dselect - inspection of package states"
msgstr "dselect — sự kiểm tra trạng thái các gói"

#: dselect/pkgdisplay.cc:200
msgid "dselect - main package listing"
msgstr "dselect — danh sách gói chính"

#: dselect/pkgdisplay.cc:208
msgid " (by section)"
msgstr " (theo phần)"

#: dselect/pkgdisplay.cc:211
msgid " (avail., section)"
msgstr " (sẵn, phần)"

#: dselect/pkgdisplay.cc:214
msgid " (status, section)"
msgstr " (trạng thái, phần)"

#: dselect/pkgdisplay.cc:223
msgid " (by priority)"
msgstr " (theo ưu tiên)"

#: dselect/pkgdisplay.cc:226
msgid " (avail., priority)"
msgstr " (sẵn, ưu tiên)"

#: dselect/pkgdisplay.cc:229
msgid " (status, priority)"
msgstr " (trạng thái, ưu tiên)"

#: dselect/pkgdisplay.cc:238 dselect/pkgdisplay.cc:250
msgid " (alphabetically)"
msgstr " (theo bảng chữ cái)"

#: dselect/pkgdisplay.cc:241
msgid " (by availability)"
msgstr " (theo khả năng sẵn)"

#: dselect/pkgdisplay.cc:244
msgid " (by status)"
msgstr " (theo trạng thái)"

#: dselect/pkgdisplay.cc:258
msgid " mark:+/=/- terse:v help:?"
msgstr " dấu:+/=/- ngắn gọn:v trợ giúp:?"

#: dselect/pkgdisplay.cc:259
msgid " mark:+/=/- verbose:v help:?"
msgstr " dấu:+/=/- chi tiết:v trợ giúp:?"

#: dselect/pkgdisplay.cc:260
msgid " terse:v help:?"
msgstr " ngắn gọn:v trợ giúp:?"

#: dselect/pkgdisplay.cc:261
msgid " verbose:v help:?"
msgstr " chi tiết:v trợ giúp:?"

#: dselect/pkginfo.cc:80
msgid ""
"The line you have highlighted represents many packages; if you ask to "
"install, remove, hold, etc. it you will affect all the packages which match "
"the criterion shown.\n"
"\n"
"If you move the highlight to a line for a particular package you will see "
"information about that package displayed here.\n"
"You can use `o' and `O' to change the sort order and give yourself the "
"opportunity to mark packages in different kinds of groups."
msgstr ""
"Dòng vừa chiếu sáng có nhiều gói; hành động cài đặt, gỡ bỏ, giữ lại, v.v... "
"sẽ ảnh hưởng đến mọi gói tương ứng với tiêu chuẩn chỉ ra.\n"
"\n"
"Nếu di chuyển chiếu sáng tới một dòng của một gói nào đó, thì sẽ thấy thông "
"tin về gói đó hiển thị ở đây.\n"
"Có thể dùng « o » và « O » để thay đổi thứ tự sắp xếp và tạo điều kiện cho "
"việc đánh dấu các gói trong các dạng nhóm khác nhau."

#: dselect/pkginfo.cc:93
#, fuzzy
msgid "Interrelationships"
msgstr "quan hệ qua lại"

#: dselect/pkginfo.cc:112
#, fuzzy
msgid "No description available."
msgstr "không có mô tả."

#: dselect/pkginfo.cc:130
#, fuzzy
msgid "Installed control file information"
msgstr "thông tin điều khiển đã cài đặt cho "

#: dselect/pkginfo.cc:146
#, fuzzy
msgid "Available control file information"
msgstr "phiên bản có sẵn của thông tin tập tin điều khiển"

#: dselect/pkglist.cc:416
msgid "There are no packages."
msgstr ""

#: dselect/pkglist.cc:507
msgid "invalid search option given"
msgstr "đưa ra tuỳ chọn tìm kiếm không hợp lệ"

#: dselect/pkglist.cc:521
msgid "error in regular expression"
msgstr "gặp lỗi trong biểu thức chính quy"

#: dselect/pkgsublist.cc:107
msgid " does not appear to be available\n"
msgstr " có vẻ không có sẵn\n"

#: dselect/pkgsublist.cc:127
msgid " or "
msgstr " hoặc "

#: dselect/pkgtop.cc:57
msgid "All"
msgstr "Mọi"

#: dselect/pkgtop.cc:79
msgid "All packages"
msgstr "Mọi gói"

#: dselect/pkgtop.cc:83
#, c-format
msgid "%s packages without a section"
msgstr "%s gói không nằm trong phần"

#: dselect/pkgtop.cc:85
#, c-format
msgid "%s packages in section %s"
msgstr "%s gói trong phần %s"

#: dselect/pkgtop.cc:91
#, c-format
msgid "%s %s packages"
msgstr "%s %s gói"

#: dselect/pkgtop.cc:95
#, c-format
msgid "%s %s packages without a section"
msgstr "%s %s gói không nằm trong phần"

#: dselect/pkgtop.cc:97
#, c-format
msgid "%s %s packages in section %s"
msgstr "%s %s gói trong phần %s"

#: dselect/pkgtop.cc:118
#, c-format
msgid "%-*s %s%s%s;  %s (was: %s).  %s"
msgstr "%-*s %s%s%s;  %s (đã là: %s).  %s"

#: dselect/pkgtop.cc:263
msgid "Error"
msgstr "Lỗi"

#: dselect/pkgtop.cc:267
msgid "Installed?"
msgstr "Đã cài?"

#: dselect/pkgtop.cc:271
msgid "Old mark"
msgstr "Dấu cũ"

#: dselect/pkgtop.cc:275
msgid "Marked for"
msgstr "Dấu cho"

#: dselect/pkgtop.cc:278
msgid "EIOM"
msgstr "EIOM"

#: dselect/pkgtop.cc:280
msgid "Section"
msgstr "Phần"

#: dselect/pkgtop.cc:281
msgid "Priority"
msgstr "Ưu tiên"

#: dselect/pkgtop.cc:282
msgid "Package"
msgstr "Gói"

#: dselect/pkgtop.cc:286
msgid "Inst.ver"
msgstr "Bản_cài"

#: dselect/pkgtop.cc:289
msgid "Avail.ver"
msgstr "Bản_có"

#~ msgid "returned error exit status %d.\n"
#~ msgstr "trả lại trạng thái thoát ra lỗi %d.\n"

#~ msgid "was interrupted.\n"
#~ msgstr "đã bị gián đoạn.\n"

#~ msgid "was terminated by a signal: %s.\n"
#~ msgstr "đã bị dừng bởi tín hiệu: %s.\n"

#~ msgid "(It left a coredump.)\n"
#~ msgstr "(Nó để lại một coredump (bộ đổ lõi).)\n"

#~ msgid "failed with an unknown wait return code %d.\n"
#~ msgstr "thất bại với một mã trả lại chờ không rõ %d.\n"

#~ msgid "unable to run %.250s process `%.250s'"
#~ msgstr "không thể chạy tiến trình %.250s « %.250s »"

#~ msgid "failed config"
#~ msgstr "cấu hình bị lỗi"

#~ msgid "unable to wait for %.250s"
#~ msgstr "không thể chờ %.250s"

#~ msgid "got wrong child's status - asked for %ld, got %ld"
#~ msgstr ""
#~ "nhận trạng thái của tiến trình con sai — yêu cầu %ld còn nhận được %ld"

#~ msgid "Recommended"
#~ msgstr "Khuyên"

#~ msgid "Contrib"
#~ msgstr "Góp"

#~ msgid "Rec"
#~ msgstr "Nên"

#~ msgid "Ctb"
#~ msgstr "Góp"

#~ msgid ""
#~ "baselist::startdisplay() done ...\n"
#~ "\n"
#~ " xmax=%d, ymax=%d;\n"
#~ "\n"
#~ " title_height=%d, colheads_height=%d, list_height=%d;\n"
#~ " thisstate_height=%d, info_height=%d, whatinfo_height=%d;\n"
#~ "\n"
#~ " colheads_row=%d, thisstate_row=%d, info_row=%d;\n"
#~ " whatinfo_row=%d, list_row=%d;\n"
#~ "\n"
#~ msgstr ""
#~ "danh sách cơ bản::startdisplay() (sở khởi bộ trình bày) đã xong ...\n"
#~ "\n"
#~ " x_tối_đa=%d, y_đối_đa=%d;\n"
#~ "\n"
#~ " cao_tựa=%d, cao_đầu_cột=%d, cao_danh_sách=%d;\n"
#~ " cao_tính_trạng_này=%d, cao_thông_tin=%d, cao_thông_tin_nào=%d;\n"
#~ "\n"
#~ " hàng_đầu_cột=%d, hàng_tính_trạng_này=%d, hàng_thông_tin=%d;\n"
#~ " hàng_thông_tin_nào=%d, hàng_danh_sách=%d;\n"
#~ "\n"

#~ msgid "[none]"
#~ msgstr "[không có]"

#~ msgid "error un-catching signal %d: %s\n"
#~ msgstr "gặp lỗi khi bỏ bắt tín hiệu %d: %s\n"

#~ msgid "unable to ignore signal %d before running %.250s"
#~ msgstr "không thể lời đi tín hiệu %d trước khi chạy %.250s"

#~ msgid "(no clientdata)"
#~ msgstr "(không dữ liệu khách)"

#~ msgid "<null>"
#~ msgstr "<rỗng>"

#~ msgid "interrelationships affecting "
#~ msgstr "ảnh hưởng quan hệ qua lại "

#~ msgid "description of "
#~ msgstr "mô tả về "

#~ msgid "description"
#~ msgstr "mô tả"

#~ msgid "currently installed control info"
#~ msgstr "thông tin điều khiển hiện thời đã cài đặt"

#~ msgid "available version of control info for "
#~ msgstr "phiên bản có sẵn của thông tin điều khiển cho "
