ユーザーがアプリケーションのメニューからオプションを選択した後、端末画面をクリアするにはどうすればよいですか?
8 に答える
:! シェルコマンドを実行します
:! 窓の下のcls
:! LinuxおよびOSXでクリア
これはあなたが探しているかもしれないものです:
ansi-terminal: Windowsと互換性のあるシンプルなANSI端末サポート
Hackageで見つけて、を使用してインストールできますcabal install ansi-terminal
。具体的には、画面のクリア、色の表示、カーソルの移動などの機能があります。画面をクリアするためにそれを使用するのは簡単です:(これはGHCIでです)
import System.Console.ANSI
clearScreen
ANSIエスケープシーケンスを理解する端末(Unix/Linuxシステムのすべての用語を信じています)では、次のように簡単に実行できます。
clear = putStr "\ESC[2J"
2
画面全体をクリアします。カーソルから画面の最後まで、またはカーソルから画面の最初までをクリアする場合は、それぞれ0
またはを使用できます。1
ただし、これは Windows シェルでは機能しないと思います。
System.system "clear"
Unix システムでは、コマンドライン ユーティリティ clear を呼び出すだけで実行できます。外部ツールに依存しないソリューションの場合、ansi-terminalなどのさまざまな端末タイプを抽象化するライブラリが必要です。
Windowsでの簡単な方法は、
import System.Process
clear :: IO ()
clear = system "cls"
Linux(少なくともUbuntu)では、ターミナルをクリアするために使用するコードです:
import qualified System.Process as SP
clearScreen :: IO ()
clearScreen = do
_ <- SP.system "reset"
return ()