Linux

為什麼我們需要這麼多終端仿真器包,它們的用途是什麼?

  • February 1, 2014

這是一個讓我很困惑很長時間的事情。

我正在使用 Linux,但我對某些方面的理解存在差距,其中之一是關於終端。

據我了解,我們所說的控制台是舊終端的模擬器。

但我不明白這是怎麼回事。

當我讀到最好的舊終端是 VT 系列和矢量圖形類型(泰克)。

所以我假設目前的模擬器模擬這些。

現在我在 Linux 中關於顯示展示的需求已經達到了使用 vim 的顏色方案和在文件中進行差異時欣賞顏色的程度。

但是當我遇到問題時,我通常會找到設置等建議xterm-256screen-256此外

,當我這樣做時:ls /lib/terminfo/我看到大約十幾個目錄配置了(我假設)不同類型的模擬器類型。

所以我的問題是,這些xterm-256screen-256其餘部分如何適應過去幾十年僅模擬頂級終端的想法?

有什麼需要有這麼多終端類型?這是我應該更多研究的東西嗎?

為什麼今天使用現代技術需要模仿這些像 VT 這樣的舊終端,而沒有新的東西呢?

也許我的需求太簡單了,太欣賞其中的微妙之處,但這一直讓我很困惑。因為例如,如果我對顏色方案有問題,我只是複制粘貼我在Google中找到的關於 TERM 等的內容,而沒有真正理解我在做什麼或問題是什麼。

如果有人幫助我理解這一點,將不勝感激

Unix 的怪異方面通常是有充分理由存在的,因此您應該尋找一個。但是,在這種情況下,充分的理由早已過時,而您正在尋找的是過去時代的古董文物。

今天存在的唯一“終端” xterm和變體。它們的功能差異很小,僅對少數程序很重要。如果您只使用 xterm,並且從不接觸 TERM 變數或查看 terminfo 數據庫,那麼您的生活通常會更好。

TERM 變數通過環境將有關終端的資訊傳遞給應用程序,參見。人 xterm。改變它不會改變終端;它只是代表應用程序的不同終端功能。

在硬接線端子的時代,有必要設置 TERM 來表示連接的端子。在 xterm 的情況下,軟體可以自行設置變數。vim 文件的快速瀏覽顯示(正如您在評論中提到的那樣)您必須更改它以支持顏色。這對你來說是進步。

為什麼今天……模仿這些像VT這樣的舊終端而沒有新的東西?

答案既是人類學的,也是技術的。

在 GUI 之前,對 Unix 機器的訪問是通過啞終端,例如 VT-100。像top這樣的 shell 和實用程序已經存在。當 1980 年代 GUI 在技術上變得實用(其中 X 發揮了作用)時,Unix 使用者仍然需要使用這些程序,因此發明了xterm來模擬 ye olde VT-100。

這是一個權宜之計。“每個人都知道”終端是過去,GUI 是未來,每個人都希望通過 GUI 訪問“一切”。例如,最初的 Macintosh 沒有方向鍵,因為你為什麼需要它們?當然是神秘的 Unix 命令行,缺少元音和無助的幫助

$ help
help: not found

很快就會走上鼓記憶和打孔卡的道路。在某種程度上,這確實發生了:在執行 Windows 或 OS X 的 10 個使用者中,有 9 個使用者永遠不會看到命令行,除非技術支持人員來解決問題。

然後 Unix GUI 發生了兩件事,例如。尤其是 Windows 將資金從市場中抽走。對其進行了標準化的重大舉措(參見 Sun News 和 OSF Motif),然後在 1990 年左右陷入停頓。就在那時網際網路起飛,Unix 中的圖形化內容轉移到了 Web 瀏覽器中。為 Unix 設計一個完整的 GUI 並使手冊第 8 節中的所有內容過時的動機和金錢(幾乎相同)消失了。

還有另一個很少有人預見到的原因:命令行比 GUI 具有某些優勢。管道和正則表達式非常強大,更不用說可重複使用 shell 歷史記錄和腳本了。即使在 GUI 的上下文中,命令行仍然很有用。如此之多,以至於即使在今天它仍在繼續增強。

正如您的問題所暗示的那樣,需要重新審視 GUI 將獲勝的假設,並將終端重新發明為它的一個組成部分。我們需要一個新的終端,在終端中具有比例字型和可位定址的圖形。

不幸的是,似乎沒有人準備好這樣做。任何公司實體都不會承擔;市場是巨大的,但仍然只佔電腦使用者的一小部分。合乎邏輯的資助者應該是像 DARPA 這樣的政府機構,但如今人機界面研究被認為“完成”了(我們不是已經發明了 GUI 嗎?)。直到更多的人——更多的人——認識到需要,xterm 是您的朋友,也可能是您孫子的朋友。

引用自:https://unix.stackexchange.com/questions/111746