Readonly Characters Are a Big Deal
11 days ago
- #Text Editing
- #Emacs
- #User Interface
- Emacs UX, exemplified by Magit, is a significant user interface paradigm comparable to UNIX pipes.
- Emacs features interactive mutable 2D buffers of attributed text, unlike UNIX pipes which handle 1D read-only streams.
- A key feature of Emacs is the ability to mark individual substrings as read-only, allowing edits everywhere except specific ranges.
- This read-only functionality is crucial for bidirectional interaction, such as in-editor terminals where different parts (command input, status line, output) have different edit permissions.
- VS Code lacks the ability to enforce read-only ranges effectively, making it less suitable for certain interactive applications.
- Implementing read-only ranges is technically challenging, requiring intelligent tracking of text attributes under modifications.
- The presence of sticky read-only attributes is a good indicator of an editor's capability to support interactive applications like those in Emacs.