🔖

man pagesを一時的に日本語で読む

2021/12/31に公開

基本的には manpage を英語で読みたいが、どうしても意味が取れないときには日本語で読みたい、でも環境変数は汚したくない、ということがあったので、対策を考えました。
なお、debianの場合です。

TL;DR

-L オプションを使わず、コマンドの実行時限定で環境変数を渡す(デフォルトの文字コードがUTF-8ではないディストリビューション・バージョンの場合)

LANG=ja_JP.utf8 man ls

文字コードに UTF-8 が指定されている場合、-L オプションで問題ない。

# export LANG=C.UTF-8
man -L ja_JP.utf8 ls
# または、単に
man -L ja ls

前提

locale -aを実行してja_JP.utf8が表示される環境で実行しています。
また、manpages-jaをインストール済みです。

Dockerイメージはこちら。
docker-images/Dockerfile at main · xhiroga/docker-images

実験

コマンドライン/環境変数 unset LANG export LANG=C.UTF-8 export LANG=ja_JP.utf8
man ls English English 日本語
man -L C.UTF-8 ls English English English
man -L ja_JP.utf8 ls 日本語だがUTF-8が表示されない 日本語 日本語

補足

man -E UTF-8 -L ja_JP.UTF-8 lsだと、惜しいところまで行くのですが文字化けがあります(条件などは要調査)

まとめ

さすがに便利なオプション(-L)があることを知れてよかったです。
UTF-8がデフォルトかどうかはディストリビューションやバージョンにも寄りそうなので、あくまで私の環境(ubuntu:20.04)での結果、ということで。

GitHubで編集を提案

Discussion