別のGnu-Linux/Unix端末に大量のテキストを書き込むアプリケーションを作成する必要があります。私が参照できる標準または標準幅がありますか?ウェブデザインの世界では、1024ピクセルの幅を経験則として使用しています。Gnu-Linux/Unix-terminalの標準または標準幅はありますか?
お時間をいただきありがとうございます。
別のGnu-Linux/Unix端末に大量のテキストを書き込むアプリケーションを作成する必要があります。私が参照できる標準または標準幅がありますか?ウェブデザインの世界では、1024ピクセルの幅を経験則として使用しています。Gnu-Linux/Unix-terminalの標準または標準幅はありますか?
お時間をいただきありがとうございます。
プログラムが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;
}
簡潔には、80文字です。
実際にカードをパンチして以来、それは事実上の標準の一種でした。
伝統的に、80文字の制限(80文字を超える行が次の行に折り返されることを意味します)が標準です。しかし、この規格の関連性についての議論があった(here参照)。しかし私の大学の経験では、端末での快適な視聴は80文字であると教えられました。もしあなたがlinuxにデフォルトの12ptのモノスペースフォントを使っているなら、これは良い幅が約80 * 1文字の幅になることを意味するでしょう。よりよい解決策は、おそらく、各行をプログラム上80文字で切り捨てるだけです。
tldr:80文字