package miaou-driver-term

  1. Overview
  2. Docs
Miaou terminal driver

Install

dune-project
 Dependency

Authors

Maintainers

Sources

v0.5.2.tar.gz
md5=60a3b9f181f24572a06a9492532bfdda
sha512=fcc35a275066be2900e6201782faf47503076fa4640f08cf78067835a6f447b74613009e55b2ac799adb7ca46f1bffa261fc5971753f2cc3c6bef327511c7ef6

doc/src/miaou-driver-term.driver/term_terminal_setup.ml.html

Source file term_terminal_setup.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
(******************************************************************************)
(*                                                                            *)
(* SPDX-License-Identifier: MIT                                               *)
(* Copyright (c) 2025 Nomadic Labs <contact@nomadic-labs.com>                 *)
(*                                                                            *)
(******************************************************************************)

(** Terminal setup for lambda-term driver - thin wrapper around Terminal_raw. *)

module Raw = Miaou_driver_common.Terminal_raw

(* Keep the same interface for backward compatibility with lambda_term_driver.ml *)
let setup_and_cleanup () =
  let t = Raw.setup () in
  let fd = Raw.fd t in
  let enter_raw () = Raw.enter_raw t in
  let cleanup () = Raw.cleanup t in
  let signal_exit_flag =
    Raw.install_signals
      t
      ~on_resize:(fun () -> ())
      ~on_exit:(fun () -> Raw.cleanup t)
  in
  let install_signal_handlers () =
    (* Signals already installed by Raw.install_signals, this is a no-op *)
    ()
  in
  (fd, enter_raw, cleanup, install_signal_handlers, signal_exit_flag)