localizzazione di pagine man su Linux (Ubuntu)


12

Esiste un'opzione per produrre una pagina di manuale in una lingua diversa? Non voglio cambiare completamente la lingua del computer, ma solo pagine di manuale specifiche. Per esempio

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

Risposte:


17

Se il vostro manè dal man-db pacchetto (uomo 2.x, come nella maggior parte delle distribuzioni GNU / Linux), il modo più veloce è quello di utilizzare la -Lbandiera del man. Devi solo conoscere l'abbreviazione della locale desiderata.

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

Se usi l' implementazione dell'altro man (man 1.x), l'unico modo è cambiare le variabili d'ambiente $LC_MESSAGESo $LANGsimili descritte nelle altre risposte .


1
Ho trovato le cose che ho inserito nel mio post solo quando ho cercato man man"lingua" nella pagina. Ma se cerchi "locale", trovi l'opzione molto utile del post di jofel. Questo potrebbe essere utile da ricordare se hai mai fatto un'altra configurazione linguistica.
Emanuel Berg,

$ man -Len man man: invalid option -- 'L' man, version 1.6gsu gentoo
d.C.

1
@AD Ho esteso la mia risposta. Non ero a conoscenza del fatto, che manha biforcuto molto tempo fa. Usa man dal man-dbpacchetto se vuoi usare l' -Lopzione.
Jofel,

5

Per ottenere una pagina di manuale localizzata, impostare la variabile di ambiente della LC_MESSAGES locale . Per una singola invocazione di man:

LC_MESSAGES=ru_RU man man

Se vuoi sempre pagine di manuale in russo, ma vuoi che altri comandi parlino inglese, puoi impostare un alias nel tuo .bashrco altro file di inizializzazione della shell:

alias man='LC_MESSAGES=ru_RU man'

Le manpage in diverse lingue in Debian sembrano venire in pacchetti come manpages-ru per il russo, manpages-fr per il francese, ecc. Ma non riesco a trovare un -se (per lo svedese). Sai (o sai come scoprirlo) se questo è effettivamente così? Le pagine man nella tua lingua madre sarebbero un sogno !
Emanuel Berg,

1
@EmanuelBerg Questo è un buon punto, in Ubuntu (e Debian e molte altre distribuzioni) c'è un pacchetto con traduzioni di manpage da molte fonti comuni. Non c'è manpages-svperò, presumibilmente perché poche persone si preoccupano di tradurre l'inglese in svedese. Penso che questo è dove vengono coordinati gli sforzi di traduzione attivi, non c'è alcuna menzione di svedese.
Gilles 'SO- smetti di essere malvagio' il

Ho scritto una mail al ragazzo sul tuo link, se tutto funziona, inizierò a tradurre subito. Conosco anche altri ragazzi che vorrebbero un simile progetto. Naturalmente è un progetto enorme, ma se fosse possibile per tutte quelle altre lingue, è possibile anche per lo svedese. Non ho mai fatto nulla di simile prima, quindi se pensi che dovrei parlare con qualcuno o leggere qualcosa (o qualsiasi altra cosa), non esitare a contattarmi.
Emanuel Berg,

1

Leggendo man man, sembra che dovresti cambiare le tue variabili ambientali e quindi usare man come al solito. Se non è presente nella tua lingua, mostrerà comunque la versione inglese.

   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.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.