2011-07-28 14 views
2

別のGnu-Linux/Unix端末に大量のテキストを書き込むアプリケーションを作成する必要があります。私が参照できる標準または標準幅がありますか?ウェブデザインの世界では、1024ピクセルの幅を経験則として使用しています。Gnu-Linux/Unix-terminalの標準または標準幅はありますか?

お時間をいただきありがとうございます。

答えて

4

プログラムがTIOCGWINSZ要求コードとioctl()システムコールを用いて、端末ドライバから端子幅と高さを取得することができます。それが利用できない場合、80にデフォルト設定することは合理的です。例えば

#include <sys/ioctl.h> 

int get_term_width(void) { 
    struct winsize ws; 
    if (ioctl(1, TIOCGWINSZ, &ws) >= 0) 
    return ws.ws_col; 
    else 
    return 80; 
} 
1

簡潔には、80文字です。

実際にカードをパンチして以来、それは事実上の標準の一種でした。

2

80 colsおよび24は古いVT200標準であり、これは長時間保管されていました。

今日のグラフィカルモニタでは、それに固執することはできませんが、別の手段があります。 ncursesをご覧ください。これは、サイズ変更されているかどうかにかかわらず、コンソール上にテキストを配置する機能のセットです。WeechatおよびIrssiはncursesの著名ユーザーです。

4

伝統的に、80文字の制限(80文字を超える行が次の行に折り返されることを意味します)が標準です。しかし、この規格の関連性についての議論があった(here参照)。しかし私の大学の経験では、端末での快適な視聴は80文字であると教えられました。もしあなたがlinuxにデフォルトの12ptのモノスペースフォントを使っているなら、これは良い幅が約80 * 1文字の幅になることを意味するでしょう。よりよい解決策は、おそらく、各行をプログラム上80文字で切り捨てるだけです。

tldr:80文字

関連する問題