package zed

  1. Overview
  2. Docs
Abstract engine for text edition in OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

3.2.3.tar.gz
sha512=637f75129550f6459417549d44bed16bdc62721d2e9e0c6bb5bfab30c5bc6478de15faece8c091b56f238375cb79a7bc176375400e543120bb31d7ea626b7c5b

Description

Zed is an abstract engine for text edition. It can be used to write text editors, edition widgets, readlines, ... Zed uses Camomile to fully support the Unicode specification, and implements an UTF-8 encoded string type with validation, and a rope datastructure to achieve efficient operations on large Unicode buffers. Zed also features a regular expression search on ropes. To support efficient text edition capabilities, Zed provides macro recording and cursor management facilities.

Published: 22 Aug 2023

README

Zed

Zed is an abstract engine for text edition. It can be used to write text editors, edition widgets, readlines, ... You just have to connect an engine to your inputs and rendering functions to get an editor.

Zed provides:

  • edition state management,

  • multiple cursor support,

  • key-binding helpers,

  • general purpose unicode rope manipulation functions.

API Documentation

Installation

To build and install zed, use opam:

$ opam install zed

Modules

  • Zed_edit: the main module, it defines edition engines.

  • Zed_cursor: manages cursors. Cursors are automatically updated when the text is modified.

  • Zed_lines: maintains the offsets of beginning of lines.

  • Zed_input: helpers for implementing key bindings.

  • Zed_macro: helpers for writing macro systems.

  • Zed_utf8: general purpose UTF-8 strings manipulation.

  • Zed_rope: general purpose unicode ropes manipulation.

  • Zed_char: general purpose unicode characters manipulation.

  • Zed_string: general purpose unicode strings manipulation.

Dependencies (8)

  1. uuseg
  2. uucp >= "2.0.0"
  3. uutf
  4. uchar
  5. result
  6. react
  7. ocaml >= "4.02.3"
  8. dune >= "3.0"

Dev Dependencies (2)

  1. odoc with-doc
  2. alcotest with-test

Used by (6)

  1. cairn
  2. gufo
  3. inquire = "0.2.0"
  4. lambda-term >= "3.3.0"
  5. ocp-browser >= "1.2"
  6. utop >= "2.13.0"

Conflicts

None

OCaml

Innovation. Community. Security.