web-dev-qa-db-ja.com

/ etc / termcaplinuxエントリの起源

$TERMで説明されているlinuxと呼ばれる/etc/termcapのタイプがあるのはなぜですか?なぜ、いつ作成されたのですか、そしてそれのポイントは何ですか? vt-genericにとどまることができませんでしたか? linuxはLinuxコンソールの単なる慣習的な名前と機能のセットです(たとえば、etchomeはルートの下のディレクトリの慣習的な名前であり、誰も気にしません)それとも、導入されたときの背後に技術的な理由がありましたか?

7
user1042840

端末の説明はLinuxにちなんで名付けられており、Linuxは独自のコンソールエミュレーターを提供します(他のいくつかのカーネルと同様)。

FreeBSDを除いて、すべてのLinuxおよび最新のBSDプラットフォームは、 ncurses のterminfoデータベースから派生することによって「termcap」を取得します。コンソールエントリは、それらが実装されているシステムに固有です(複数のプラットフォームで実行される多くのターミナルエミュレータとは異なります)。

linux端末の説明に対するncurses1.8.6(1994年10月)のコメントは次のとおりです。

# Note that the statdard Linux console is now called 'linux' instead
# of 'console'. terminals with sizes other than 80x25 need to append
# their size to linux and add an entry like the one for 132x43 below

これはLinuxに固有のものでしたが、ncursesが移植されるにつれて一般化が続きました。

Ncursesのソースでは、INSTALLのこのセクションは非常に古いです(1995年11月の 1.9.7a で見られます)が、古くはありません。

    Naming the Console Terminal                                            

    In various systems there has been a practice of designating the system
    console driver type as `console'.  Please do not do this!  It
    complicates peoples' lives, because it can mean that several different
    terminfo entries from different operating systems all logically want to
    be called `console'.

    Please pick a name unique to your console driver and set that up
    in the /etc/inittab table or local equivalent.  Send the entry to the
    terminfo maintainer (listed in the misc/terminfo file) to be included
    in the terminfo file, if it's not already there.  See the
    term(7) manual page included with this distribution for more on
    conventions for choosing type names.

    Here are some recommended primary console names:

            linux   -- Linux console driver
            freebsd -- FreeBSD
            netbsd  -- NetBSD
            bsdos   -- BSD/OS

    If you are responsible for integrating ncurses for one of these
    distributions, please either use the recommended name or get back
    to us explaining why you don't want to, so we can work out nomenclature
    that will make users' lives easier rather than harder.

ターミナルデータベースには、次のセクションがあります:ANSI、UNIXコンソール、および特殊タイプ、「vt-generic」の説明も(バリエーション間の違いを考えると)、もっともらしい選択があります。

「vt-generic」を探している場合、Informix(この ファイル で見られる)などのあまり普及していない実装でのみ見つかる可能性があります。

#   @(#)/etc/termcap    0.0 
#
#   Informix product aware termcap file
#
#   Author: Marco Greco, <[email protected]>, Catania, Italy
#
#   Initial release: Jun 97
#   Current release: Jul 98
#
#   Absolutely no warranty -- use at your own risk
#
#   Notes: Adapted from the default Slackware termcap file:
#   added gs, ge, gb, ZG, ZA capabilities, shifted function keys
#   down by one, added ki, kj, kf, kg
#
#   Limit the size of each entry - 4gl apps core dump if applicable
#   entry too long
#
#   Entries other than vt's, console & xterm *untested*
#
# From: [email protected] (Miquel van Smoorenburg)
#
# Okay guys, here is a shorter termcap that does have most
# capabilities and is ncurses compatible. If it works for you
# I'd like to hear about it.

参考文献:

11
Thomas Dickey