Go での端末サイズの取得
Go では、現在の端末のサイズを決定するのが難しい場合があります。一般的なアプローチの 1 つは stty size コマンドの実行ですが、これはプロセス分離の問題により常に効果的であるとは限りません。
この問題を解決するには、ssh パッケージ内のターミナル パッケージが便利なソリューションを提供します。 GetSize メソッドを使用すると、特定のファイル記述子の端末サイズを簡単に取得できます。
package main import ( "golang.org/x/crypto/ssh/terminal" "log" "os" ) func main() { width, height, err := terminal.GetSize(int(os.Stdin.Fd())) if err != nil { log.Fatal(err) } log.Printf("Terminal width: %d, height: %d", width, height) }
端末のファイル記述子は通常、os.Stdin.Fd() を使用して取得され、これは、サイズを表す整数を返します。現在の標準入力 (端末)。
GetSize メソッドを利用すると、端末のサイズを正確に決定でき、端末対応の実装が可能になります。 Go のアプリケーション。
以上がGoで端末のサイズを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。