web-dev-qa-db-ja.com

「man x-terminal-emulator」が「man gnome-terminal」の出力を返すのはなぜですか?

x-terminal-emulatorが何であるかは知っていますが、gnome-terminalのマニュアルページにリダイレクトされる特別なマニュアルページが存在しない理由がわかりません。 x-terminal-emulatorが正確に行うことを説明するマニュアルページと、そのページでman gnome-terminalへの参照を参照したいと思います。

これは正しいですか(はいの場合、たとえば、man dirの出力がman lsの出力を返さない理由)?この事実の背後にある良い動機はありますか?

6
user283450

x-terminal-emulatorは、 仮想パッケージ です。端末エミュレータは、Debianの 代替システム で構成されます。

Ubuntuでは、このシンボリックリンクの構築を簡単にたどることができます。 gnome-terminalの場合:

$ which x-terminal-emulator
/usr/bin/x-terminal-emulator
$ ll /usr/bin/x-terminal-emulator
/usr/bin/x-terminal-emulator -> /etc/alternatives/x-terminal-emulator*
$ ls -al /etc/alternatives/x-terminal-emulator
/etc/alternatives/x-terminal-emulator -> /usr/bin/gnome-terminal.wrapper*

マニュアルページについては、update-alternativesマニュアルで説明されているように、gnome-terminalx-terminal-emulatorのマニュアルページもupdate-alternativesにリンクしています。

   It is often useful for a number of alternatives to be synchronized,  so
   that they are changed as a group; for example, when several versions of
   the  vi(1)  editor  are  installed,  the   man   page   referenced   by
   /usr/share/man/man1/vi.1 should correspond to the executable referenced
   by /usr/bin/vi.  update-alternatives handles this by  means  of  master
   and  slave links; when the master is changed, any associated slaves are
   changed too.  A master link and its associated slaves make  up  a  link
   group.

ソース

5
Sylvain Pineau

リンクをたどるには、bashで実行できます。

$ readlink -f $(command -v x-terminal-emulator)
/usr/bin/gnome-terminal.wrapper

および/または:

$ update-alternatives --display x-terminal-emulator
x-terminal-emulator - auto mode
  link currently points to /usr/bin/gnome-terminal.wrapper
/usr/bin/gnome-terminal.wrapper - priority 40
  slave x-terminal-emulator.1.gz: /usr/share/man/man1/gnome-terminal.1.gz
/usr/bin/lxterm - priority 30
  slave x-terminal-emulator.1.gz: /usr/share/man/man1/lxterm.1.gz
/usr/bin/uxterm - priority 20
  slave x-terminal-emulator.1.gz: /usr/share/man/man1/uxterm.1.gz
/usr/bin/xterm - priority 20
  slave x-terminal-emulator.1.gz: /usr/share/man/man1/xterm.1.gz
Current 'best' version is '/usr/bin/gnome-terminal.wrapper'.

注意:manページはgnome-terminal.1.gzにもリンクされています。

0
jfs