1 coreutils の日本語版 info マニュアルのインストール方法と
2 使用法を簡単に説明します。コマンドラインから "info coreutils-ja" と
3 打ち込むと、日本語 info が読めるようなら、coreutils-ja.info がすでに
4 きちんとインストールされています。「1 インストール」の項目を飛ばして、
10 1.1 インストール、あるいは dir ファイルへの登録
12 1.3 /usr/share/info ディレクトリ以外へのインストール
13 1.4 info ファイルの作成 (おまけ 1)
14 1.5 html ファイルの作成 (おまけ 2)
17 2.1 日本語版 coreutils info マニュアルの呼び出し方
18 2.2 info マニュアルにおける基本的なキー操作
25 1.1 インストール、あるいは dir ファイルへの登録
26 -----------------------------------------------
28 インストール方法と言うより、coreutils-ja を info のトップレベル・
29 メニューに登録して、"info coreutils-ja" や "info cat-ja" などで
30 日本語の info マニュアルが読めるようにする方法です。
32 この登録をしないでも、coreutils-ja.info ファイルをカレントディレクトリに
35 info -f ./coreutils-ja.info
37 と打ち込めば、coreutis-ja の最初のページを開くことができます。さらに、
38 そのページをスクロールすると見ることのできるメニューをたどって
39 (あるいは、info の m コマンドを使って)、各コマンドの説明に飛ぶことが
40 できます。しかし、それでは不便でしょう。"info ls-ja" や "info cat-ja" で、
41 誰でも直接 ls や cat の日本語マニュアルが読めた方が便利です。そこで、
42 coreutils-ja.info を info のトップレベル・メニューに登録します。
44 作業は、root ユーザになって行います。info のトップレベル・メニューが
45 記載されているファイルは、標準では /usr/share/info/dir です。
46 coreutils-ja.info を /usr/share/info ディレクトリにコピーしてください。
48 cp coreutils-ja.info /usr/share/info
51 info ファイルは、gzip などで圧縮することができます。
53 GNU の install-info コマンドで coreutils-ja.info を dir ファイルに
54 登録します (注 1)。install-info の書式はこうです。
56 install-info [OPTION]... [INFO-FILE [DIR-FILE]]
58 カレントディレクトリが /usr/share/info なら、具体的なコマンドは、
61 install-info coreutils-ja.info dir
63 注 1: debian のようにディストリビューション独自の install-info
64 コマンドが入っていることがあります。その場合は、マニュアルで
65 使用法を調べるか、GNU の install-info (debian では、ginstall-info
66 という名前で入っている) を使ってください。
68 圧縮ファイルの場合でも ".gz" まで指定する必要はありません。もちろん、
69 付けても構いません。これで、インストール完了です。"info dd-ja" などで
75 coreutils-ja.info をアンインストールしたい場合は (登録から削除したい
76 場合は)、次のように --delete オプションを使います。
78 install-info --delete coreutils-ja.info dir
80 そして、coreutils-ja.info (または、coreutils-ja.info.gz) を消去します。
84 1.3 /usr/share/info ディレクトリ以外へのインストール
85 ----------------------------------------------------
87 coreutils-ja.info は、一応 /usr/share/info ディレクトリにコピーする
88 ことを想定して、作ってありますが、/usr/local/share/info のような、
89 info のサーチパスにあるディレクトリなら、そこにコピーしても、たぶん
92 その場合、install-info コマンドの引数の dir には、/usr/share/info/dir を
93 指定してもよく、coreutils-ja.info をコピーしたディレクトリ中の dir
94 (たとえば、/usr/local/share/info/dir) を指定してもよいでしょう。
95 後者の場合、info コマンドが、実行時に両方の dir を統合して、トップ
98 info コマンドのサーチパスは、info 実行中に h または ? キーを押せば、
99 見ることができます。また、環境変数 INFOPATH によって設定することが
102 coreutils-ja.info を /usr/share/info/ja といった、info のサーチパスに
103 ないディレクトリにコピーする場合は、環境変数 INFOPATH を利用すればよい
104 と思います。その場合、dir ファイルはそのディレクトリの中に作るように
105 すればよいでしょう。他にも方法がありますが、説明は省略します。
107 1.4 info ファイルの作成 (おまけ 1)
108 ----------------------------------
110 coreutils-ja.info の配布には、texi ファイルも含まれているかもしれ
111 ません。coreutils-ja.info が既に存在する場合、以下を実行する必要は
112 ありませんが、texi ファイルを修正して、自家特製の info ファイルを
113 作りたいこともあるかもしれません。そこで、念のため、texi ファイルから
114 info ファイルを作成する方法を書いておきます。
116 同一バージョンの次の 6 ファイルを一つのディレクトリに集めます。
118 constants.texi (英語日本語共通)
121 coreutils-ja.texi (日本語に翻訳したもの)
122 parse-datetime-ja.texi (同上)
125 そのディレクトリで、makeinfo コマンドを実行します。
127 makeinfo --no-split coreutils-ja.texi
129 --no-split オプションを付けずに makeinfo を実行すると、複数に分割
130 された info ファイルが生成されます。しかし、この分割された info
131 ファイルを info コマンドで表示すると、ページによっては白黒が反転して
132 しまうことがあります。ですから、makeinfo は --no-split を付けて実行した
135 なお、細かい話になりますが、makeinfo 4.13 で info ファイルを作成した場合、
136 「21.1.6 `date' のオプション」から「21.1.7 `date' の使用例」へのリンクが
137 うまく作れません。言い換えると、「21.1.6 `date' のオプション」から
138 「21.1.7 `date' の使用例」へ移動することができないのです (その逆も
139 できない)。そこで、私は、ちょっと乱暴ですが、coreutils-ja.info を
140 直接手で書き変えてしまいました。次の 2 箇所です。
142 1) 「21.1.6 `date' のオプション」の Node 行
143 (version 8.22 の coreutils-ja.info だと 13325 行目あたり)
145 File: coreutils-ja.info, Node: Options for date, Prev: Setting the time, Up: date invocation
147 File: coreutils-ja.info, Node: Options for date, Next: Examples of date, Prev: Setting the time, Up: date invocation
149 # つまり、"Next: Examples of date," を追加。
151 2) 「21.1.7 `date' の使用例」の Node 行
152 (version 8.22 の coreutils-ja.info だと 13442 行目あたり)
154 File: coreutils-ja.info, Node: Examples of date, Up: date invocation
156 File: coreutils-ja.info, Node: Examples of date, Prev: Options for date, Up: date invocation
158 # こちらは、"Prev: Options for date," を追加。
160 これで、「21.1.6 `date' のオプション」と「21.1.7 `date' の使用例」の
161 間の移動が、n キーや p キーで可能になります。もっと行儀のよい変更方法が
162 あるかもしれませんし、makeinfo のバージョンによっては、こんなことを
165 注意: makeinfo のバージョンによっては、日本語をうまく扱えないことが
166 あります。たとえば、Debian jessie の makeinfo 5.2 がそうです。
168 1.5 html ファイルの作成 (おまけ 2)
169 ----------------------------------
171 info 形式のマニュアルの閲覧法は、あまり直感的とは言えません。
172 そこで、html 形式に変換したくなるかもしれません。それには、texi2html
175 texi2html がすでにインストールされているとします。たとえば、各章を
176 1 ファイルにした html ファイルを作るには、次のようにします。
178 まず、必要な texi ファイルがあることを確認してください。必要な texi
179 ファイルは、info ファイルを作成する場合と同じで、次の 6 個です。
185 parse-datetime-ja.texi
188 上記の texi ファイルのあるディレクトリの直下に html ディレクトリを
189 作って移動し、texi2html コマンドを実行します。
193 texi2html --split node ../coreutils-ja.texi
195 node ごとではなく、章ごとに分割したかったら、"--split chapter" です。
196 texi2html の詳しい使い方については、"man texi2html" で調べてください。
198 なお、makeinfo に --html オプションを付けても、texi ファイルから html
199 ファイルを作ることができます。こちらについての詳細は、"info texinfo" の
200 "Generating HTML" をご覧ください。
205 注意: 現在のところ、マニュアルの印刷はうまく行きません。
207 本来なら、texi ファイルからは、info ファイルを作成できるだけでなく、
208 texi2dvi コマンドを使用して dvi ファイルを作成し、印刷することも
209 できるはずです。確かに、英語の coreutils.texi などからなら、それが
210 可能です。しかし、日本語版の coreutils-ja.texi の場合は、texi2dvi で
211 dvi ファイルがうまく作れません。出来上がった dvi ファイルを xdvi で
212 見ても、日本語の部分がまったく表示されないのです。私は、texi2dvi 4.13
213 と 5.2 で試しました (debian では、texi2dvi や makeinfo コマンドは、
214 texinfo パッケージに入っています)。何か工夫が必要なのかもしれません。
220 2.1 日本語版 coreutils info マニュアルの呼び出し方
221 ---------------------------------
223 coreutils-ja.info のインストールが済んでいるなら、コマンドラインから、
225 info coreutils-ja (coreutils マニュアル全体の最初のページ)
226 info chmod-ja (chmod コマンドの info マニュアル)
228 のように打ち込めば、coreutils 全体や coreutils に属する個々のコマンドの
229 日本語 info マニュアルを開くことができます (注 1)。英語版のマニュアルを
230 読むには、"info coreutils" や "info chmod" とタイプします (注 2)。
232 注 1: なお、"info coreutils-ja 'chmod invocation'" といった
233 呼び出し方もあります。一般に info コマンドの書式は、
234 "info [OPTION]... [メニュー項目名] [メニュー項目名]..."
235 です。メニューが階層を持っているとき、メニュー項目の連鎖を
236 指定することで、深いところにあるセクションを直接呼び出せる
237 わけです。たとえば、"info mew copyright" とすれは、他の
238 プログラムのマニュアルの Copyright セクションではなく、
239 Mew プログラムの Copyright セクションを直接開くことができます。
241 注 2: お使いの coreutils のバージョンが 8.22 までなら、info コマンドの
242 引数を指定するとき、大文字小文字に注意を払う必要はありません。
243 しかし、coreutils-8.23 の場合は、info マニュアルのトップレベル・
244 メニューに、Coreutils のほかに coreutils という小文字の
245 メニュー項目もあるので、英語版 coreutils マニュアルの最初の
246 ページを info コマンドで開くときは、"info Coreutils" と大文字で
249 info マニュアルの読み方の基本は、「メニューの項目にカーソルを
250 合わせてリターンキーを押せば、そのページに飛ぶ。スペースで先へ進み、
251 バックスペースで後戻りする。q キーで終了する」です。もっと複雑な
252 (便利な) 使い方については、以下で説明します。
254 日本語版 coreutils info マニュアルの呼び出し方は、もう一つあります。
255 info プログラムを引数なしで実行すると (注 3)、info マニュアルの
256 トップレベル・メニューが開きます。そこで、coreutils-ja, chmod-ja
257 などのメニュー項目を探して、カーソルを合わせ、リターンキーを押せば、
258 日本語マニュアルが表示されます。でも、キー操作を使った方が手間が
259 かかりません。トップレベル・メニューの画面で m キーを押すと、最下行に
260 (Emacs でいうミニバッファに) 「メニュー項目:」(英語なら 「Menu item:」)
261 というプロンプトが出ます。それに対して、コマンド名に -ja を付けて
262 打ち込み、リターンキーを押せばよいのです。たとえば、m キーを押して出た
263 「メニュー項目:」プロンプトに対して chmod-ja と打ち込めば、日本語版の
264 chmod コマンドのマニュアルが、chmod だけなら、英語版のマニュアルが
267 注 3: info マニュアルは info コマンドだけでなく、Emacs でも読めます。
268 Emacs の info リーダーを呼び出すには、Emacs 上で C-h i、または
269 M-x info とタイプします。そうすると、info のトップレベル・
270 メニューが開きます。古めの Emacs (たとえば、Emacs22) をご使用に
271 なっている場合は、日本語が文字化けして、読めないかもしれません。
272 Emacs23 以降なら、たぶん大丈夫です。Emacs の info リーダーの
273 使い方は、info コマンドとほぼ同じです。
275 coreutils-ja、chmod-ja などと -ja を付けるのは、info プログラムを
276 起動するときと、info のトップレベル・メニューにいるときだけです。
277 coreutils-ja であれ、dd-ja であれ、すでに日本語版の coreutils
278 マニュアルのどれかを開いている場合は、-ja をコマンド名の後ろに付ける
279 必要がありません。と言うより、付けてはいけません。
281 coreutils-ja の内部では、コマンドのメニューがあるページなら
282 (スクロールしないとメニューが見えませんが、coreutils-ja の最初の
283 ページもその一つです)、m に chmod などとコマンド名を続けて、リターンキー
284 を押すだけで、たいていの場合、そのコマンドのマニュアルが開きます (注 4)。
285 また、g キーでノード (ほぼ章や節や項に当たります) に直接飛ぶ場合も、
286 g キーを押すと最下行に出る「ノードへ移動:」(英語なら 「Goto node:」)
287 というプロンプトに対して chmod invocation などとノード名を打ち込んで、
288 リターンキーを押せば、そのノードが開きます (注 5)。メニューにリストされて
289 いる項目のノード名は、たいていメニュー項目名 (英語) と同じです (注 6)。
290 m の場合はタブやスペースで、g の場合はタブで、文字列の補完ができます。
292 注 4: 厳密な言い方をすると、m ではメニュー項目名を指定します。
293 ただし、メニュー項目名の先頭から、他の項目と区別するのに
294 必要なだけの部分を指定すれば充分です。ですから、メニュー
295 項目名が chmod invocation なら、chmod というコマンド名
296 だけでよいことになります。とは言え、pr, sort、comm、tr、dir、
297 rm, date コマンドのような例外もあります。たとえば、coreutils-ja
298 の最初のページでは、sort で始まるメニュー項目名が二つあるので
299 (sort invocation と Sorting the output)、m に sort と続けた
300 だけでは足りません。sort に続けて、さらにスペースを二回押して
301 ください。それで sort invocation と補完されるはずです。rm や
302 tr などのコマンドについても同様です。date コマンドの場合は、
303 coreutils-ja のメニューに date invocation のほかに Date input
304 formats という項目もあるので、"date inv" まで指定する必要が
307 注 5: m はメニューのあるところでしか使えませんが、g はたいてい
308 どこでも使えます。しかし、ノード名はメニュー項目名と違って、
309 省略を受付けません。そこで、g では、タブによる補完を多用する
312 注 6: メニュー項目名とノード名が違う場合もあります。たとえば、
313 引数なしで info コマンドを実行したときに表示されるトップ
314 レベル・メニューでは、日本語 cat マニュアルのメニュー項目名は
315 cat-ja ですが、ノード名は (coreutils-ja.info ファイルの)
318 なお、m に続けるメニュー項目名では、たいていの場合、大文字小文字を
319 区別しません。g に続けるノード名の場合は、原則として大文字小文字の区別が
320 行われますが、ユーザが大文字で指定しようと、小文字で指定しようと、タブに
321 よる補完を使用すると、補完と同時に正しい表記に変更されます。
323 2.2 info マニュアルにおける基本的なキー操作
324 -------------------------------------------
326 info プログラムではキー操作をコマンドと言います。スペースを押すのも、
327 q や n キーを押すのもコマンドの実行です。
329 スペースで先へ進み、バックスペースで後へ戻ることができます
330 (スクロールします)。矢印キーで上下左右にカーソルが動きます。
331 メニューの項目やクロスリファレンスにカーソルを合わせて、リターン
332 キーを押すと、その項目に飛びます。q キーを押すと、info が終了します。
333 それに m, g, n, p, u, t, l コマンドを知っていれば、たいてい用が足ります
334 (こうしたコマンドの動作については、下記を参照してください)。Emacs の
335 info リーダーのキー操作も、ほとんど同じです。
337 ああ、二つ書き忘れました。C-l (Ctrl と l (エル) を同時に押します) と
338 C-g も重要です。info プログラムは、日本語の行末の表示が上手ではない
339 ので、行末にゴミが入ることがあります。そういうときは、C-l を押して
340 画面を再描画すると、表示が正常になります。
342 C-g の方は、コマンドを途中でキャンセルするときに使います。
344 info 中でのキー操作の詳細は、"info info" や "info info-stnd" を
345 実行して、マニュアルを読んでください (残念ながら、英語です)。
346 ここでは、基本的なコマンドのみを挙げておきます。なお、info 中で
347 h または ? キーを押すと、キー操作の簡単な説明表が表示されます。
348 説明表を抜けて、マニュアルの本文に戻るには、l キーを押します。
350 Space: 1 画面スクロール (最下部の 2 行が最上部に残る)。
351 Backspace: 1 画面スクロールバック。
352 矢印キー: カーソルが上下左右に移動する。
353 Return: メニューやクロスリファレンスで、カーソル位置にある
359 h または ?: コマンドの簡単な説明 (Emacs の info リーダでは、
364 ]: レベルが違っても、ドキュメントの次のノードに進む。
365 [: レベルが違っても、ドキュメントの前のノードに戻る。
367 mメニュー項目名: 指定したメニュー項目に飛ぶ。
371 d: info マニュアル全体のトップレベル・メニューに飛ぶ。
374 l: 元のページ (すなわち、直前に読んでいたノード) に戻る。
376 s または /: 指定した文字列を検索する (現在のところ、info
377 プログラムでは日本語の検索ができないようだ。
378 Emacs の info リーダーでは / は使えないが、
380 C-s: インクリメンタル検索をする (info プログラムでは
381 日本語の検索が不安定である。成功することもあるが、
382 "Unknown command" で失敗することも多い。Emacs の
383 info リーダーでは日本語の検索も問題なくできる)。
384 C-r: 逆方向のインクリメンタル検索 (問題点は上と同じ)。
386 f または r: クロスリファレンスをたどる (Emacs の info リーダーでは
387 クロスリファレンスをたどるのは f だけであり、r は l の
389 i: 指定した文字列をインデックス中で探して、その説明に
390 飛ぶ (coreutils-ja のインデックスは日本語化されて
391 いない。従って、日本語によるインデックス検索は、
392 今のところできない。英語によるインデックス検索は
394 ,: i コマンドでインデックス検索をしているとき、i で
395 指定した文字列にマッチする次のインデックス項目の
397 ESC C-f: 脚注があるとき、ウインドウを分割して、下のウインドウに
398 脚注を表示する (Emacs の info リーダーでは使えない)。
399 脚注のウインドウを消すには、本文のウインドウにカーソル
400 があることを確認して、C-x 1 とキーを押す (Ctrl と x の
403 2.3 g コマンドのちょっと複雑な使用法
404 ------------------------------------
406 "info ls-ja" を実行して、ls の日本語マニュアルを読んでいるとします。
407 そのとき、原文が読みたくなったら、どうしますか。info を一度終了して、
408 "info ls" を実行する。d コマンドで info のトップレベル・メニューに飛び、
409 m に続けて ls とタイプする。別の端末エミュレータから、"info ls " を
410 実行する。もちろんどれも正解です。特に 3 番目は、原文と翻訳を並べて
411 見ることができますから、有用な方法だと思います。
413 しかし、日本語マニュアルを表示している現在の info から、ls の英語版
414 マニュアルに直接飛ぶこともできます。g コマンドをこんなふうに使います。
416 g(coreutils)ls invocation
418 g キーを押すと最下行に出るプロンプトに対して (coreutils)ls invocation
421 g コマンドの正規の使用法は、次のようなものです。
425 上の書式中、同じマニュアル中での移動ならば (たとえば、coreutils-ja の
426 あるコマンドの説明から、coreutils-ja の他のコマンドの説明に飛ぶのならば)、
427 ファイル名は省略できます。また、他のマニュアル中のノードに飛ぶとしても、
428 そのマニュアルが /usr/share/info のような info のサーチパスの下にある
429 ファイルならば (注 7)、そのサーチパスを基点とする相対パスで、ファイル名を
430 指定することができます (たとえば、/usr/share/info/ja/something.info.gz
431 ならば、ja/something.info.gz)。しかも、info や info.gz のような拡張子は
432 省略できます。そこで、日本語マニュアルから ls の英語マニュアルに飛ぶ
435 g(coreutils)ls invocation"
437 でよいことになります。英語版 ls マニュアルから日本語版に戻るには、
438 l コマンドを使えば済みます。"g(coreutils-ja)ls invocation" と
441 なお、g コマンド書式中のファイル名は、絶対パスやカレントディレクトリ
444 注 7: 現在のサーチパスは、info コマンド実行中に h または ? キーを