terminfoは/usr/local/shareオプションを提供しますか?

terminfoは/usr/local/shareオプションを提供しますか?

グローバルterminfoファイルをどこにインストールする必要がありますか?あなたは持っていますか/usr/local/share/terminfo?私はディストリビューションのterminfoファイルを汚染したくありません/usr/share/terminfo

答え1

グローバルterminfoファイルをどこにインストールする必要がありますか?

/etc/terminfo一般的なGNU / Linuxシステムでは、デフォルトで検索されるに入れる必要があります。

これは、ほとんどのDebianまたはFedora / Redhatベースのディストリビューションの場合であり、Gentoo、Alpineなども同様です。infocmp -Dこれが実際にシステムに該当するかどうかをお知らせします。 Debianベースのディストリビューションでは、ticルートとして実行したときにコンパイルされたエントリもデフォルトでここに書き込まれます(確認に使用tic -D)。

/etc/terminfoこのディレクトリは、たとえばterminfoエントリを上書きしようとするときに便利です。項目の機能とカーソルがcnorm再び点滅しないいくつかの機能に置き換えます。cvvislinux

他のシステムには、これらの良い組み込みオーバーライド機能はありません。適切なディレクトリ(または他のディレクトリ)を手動で作成するか、環境変数を使用して明示的に指定する必要がTERMINFOあります。詳しくはシステムを確認してください。TERMINFO_DIRS/usr/share/terminfo//usr/gnu/share/terminfo/man ncurses

terminfoをまったくサポートせずにまだtermcap形式を使用するシステム(FreeBSDなど)もあります。そして仕事をより複雑にするために、いくつかのシステムにはncursesの基本的な実装と「ポート」の両方の実装があり、それぞれのデフォルトが何であるかについての独自のアイデアがあります。

答え2

位置していますマニュアルページ:

  • すべてのterminfoの実装は次のことを認識します。TERMINFOterminfo データベースの選択に使用される変数です。
  • ncurses はディレクトリ検索リストも認識します。TERMINFO_DIRS
  • デフォルトの場所(TERMINFOまたはTERMINFO_DIRS)はでコンパイルされ、システムによって異なる場合があります。時々、パッケージがデフォルト値を無視する場合、場所を記録します。

infocmp出力の最初のコメントで端末の説明がある場所を表示するのが一般的です(さまざまな実装では)。

n呪いticそしてinfocmp -Dオプションは、それが使用される場所を示します。

追加資料:

関連情報