gitoriaLog in with ident

calendar

All repositories: gitoria

ReadmeCodePull requestsReleasesTicketsSettings
Commit6722b72d6722b72ddeploy.sh: never send .git or .gitignore to Byrodinmre6722b72d/plugins/proc/stdin.hl

806 B

  1. // hl:proc — THE TERMINAL'S OWN INPUT as instance events, the Process pattern
  2. // applied to fd 0:
  3. //
  4. // input = stdin()
  5. // on input.line(text) { … } \\ one typed line, without its newline
  6. // on input.eof() { … } \\ the terminal closed (Ctrl-D)
  7. //
  8. // A joined terminal realm (SPEC "Joining a realm") is what this exists for: the
  9. // peer's entry reads lines here and `emit`s across the edge.
  10. Number #srcId = 0
  11. start() {
  12. #srcId = __native("eventloop.register", __native("proc.stdin"), "__stdinEvent")
  13. return this
  14. }
  15. on __stdinEvent(ev) {
  16. if (ev.eof == true) {
  17. // the closed terminal retires its source, so a program whose only
  18. // source was the keyboard simply ends
  19. __native("eventloop.unregister", #srcId)
  20. emit eof()
  21. return null
  22. }
  23. emit line(ev.line)
  24. return null
  25. }

Branches

Latest commits

  • 6722b72ddeploy.sh: never send .git or .gitignore to Byrodinmre
  • be099807State of 2026-09-27, before the move to gitoriamre