bản địa hóa các trang man trên Linux (Ubuntu)


12

Có một tùy chọn để xuất một trang thủ công bằng một ngôn ngữ khác không? Tôi không muốn thay đổi hoàn toàn ngôn ngữ máy tính mà chỉ có các trang hướng dẫn cụ thể. Ví dụ

$ man -English man
Man is a manual program
…
$ man -Russian man
Инструцтия для Unix, BSD и Linux.
…

Câu trả lời:


17

Nếu bạn manđến từ gói man-db (man 2.x, giống như trên hầu hết các bản phân phối GNU / Linux), cách nhanh nhất là sử dụng -Lcờ của man. Bạn chỉ cần biết tên viết tắt của miền địa phương mong muốn.

man -Len man   # -> English man-page of man
man -Lru man   # -> Russian man-page of man

Nếu bạn sử dụng triển khai người đàn ông khác (người đàn ông 1.x), cách duy nhất là thay đổi các biến môi trường $LC_MESSAGEShoặc $LANGgiống như được mô tả trong các câu trả lời khác .


1
Tôi chỉ tìm thấy những thứ tôi đặt trong bài viết của mình khi tôi tìm kiếm man mantrang "ngôn ngữ". Nhưng nếu bạn tìm kiếm "miền địa phương", bạn sẽ thấy tùy chọn rất hữu ích của bài đăng của jofel. Điều này có thể hữu ích để nhớ nếu bạn từng làm cấu hình liên quan đến ngôn ngữ khác.
Emanuel Berg

$ man -Len man man: invalid option -- 'L' man, version 1.6gtrên gentoo
AD

1
@AD Tôi mở rộng câu trả lời của mình. Tôi đã không nhận thức được thực tế, điều đó manđã rẽ nhánh từ lâu. Sử dụng man từ man-dbgói nếu bạn muốn sử dụng -Ltùy chọn.
jofel

5

Để có được một trang hướng dẫn địa phương, hãy đặt biến môi trường LC_MESSAGES miền địa phương . Đối với một lời mời duy nhất của man:

LC_MESSAGES=ru_RU man man

Nếu bạn luôn muốn các trang thủ công bằng tiếng Nga, nhưng muốn các lệnh khác nói tiếng Anh, bạn có thể thiết lập bí danh trong .bashrctệp khởi tạo shell của mình hoặc khác:

alias man='LC_MESSAGES=ru_RU man'

Các trang web trong các ngôn ngữ khác nhau trong Debian dường như có các gói như manpages-ru cho tiếng Nga, manpages-fr cho tiếng Pháp, v.v. Nhưng tôi không thể tìm thấy một -se (cho tiếng Thụy Điển). Bạn có biết (hoặc bạn có biết cách tìm hiểu) nếu điều này thực tế là như vậy không? Trang người đàn ông trong ngôn ngữ mẹ đẻ của bạn sẽ là một giấc mơ !
Emanuel Berg

1
@EmanuelBerg Đó là một điểm tốt, trong Ubuntu (và Debian và nhiều bản phân phối khác) có một gói với các bản dịch của các trang web từ nhiều nguồn phổ biến. Không có manpages-svtuy nhiên, có lẽ vì ít người bận tâm để dịch tiếng Anh sang tiếng Thụy Điển. Tôi nghĩ rằng đây là nơi phối hợp các nỗ lực dịch thuật tích cực, không đề cập đến tiếng Thụy Điển.
Gilles 'SO- đừng trở nên xấu xa'

Tôi đã viết một bức thư cho anh chàng trong liên kết của bạn, nếu mọi thứ đều ổn, tôi sẽ bắt đầu dịch ngay lập tức. Tôi biết những người khác cũng sẽ thích một dự án như vậy. Tất nhiên đó là một dự án lớn nhưng nếu có thể với tất cả các ngôn ngữ khác, thì tiếng Thụy Điển cũng có thể. Tôi chưa bao giờ làm bất cứ điều gì như thế này trước đây, vì vậy nếu bạn nghĩ rằng tôi nên nói chuyện với một người nào đó hoặc đọc một cái gì đó (hoặc bất cứ điều gì), đừng ngần ngại liên hệ với tôi.
Emanuel Berg

1

Đọc man man, có vẻ như bạn nên thay đổi các biến môi trường của bạn và sau đó sử dụng con người như bình thường. Nếu nó không có trong ngôn ngữ của bạn, nó vẫn sẽ hiển thị phiên bản tiếng Anh.

   International support is available with this package.   Native  lan‐
   guage  manual pages are accessible (if available on your system) via
   use of locale functions.  To activate such support, it is  necessary
   to  set either $LC_MESSAGES, $LANG or another system dependent envi‐
   ronment variable to your language locale, usually specified  in  the
   POSIX 1003.1 based format:

   <language>[_<territory>[.<character-set>[,<version>]]]

   If  the  desired  page  is available in your locale, it will be dis‐
   played in lieu of the standard (usually American English) page.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.