我正在寻找像input_char stdin
这样的东西但不等待返回键。我不会依赖像lambda-term这样的大依赖。
答案 0 :(得分:9)
以实线处理输入很容易。一次处理一个字符有点依赖于系统。如果您使用的是类Unix系统,则可以使用Unix
模块执行此操作:
let get1char () =
let termio = Unix.tcgetattr Unix.stdin in
let () =
Unix.tcsetattr Unix.stdin Unix.TCSADRAIN
{ termio with Unix.c_icanon = false } in
let res = input_char stdin in
Unix.tcsetattr Unix.stdin Unix.TCSADRAIN termio;
res