Skip to content

Discover editing structures lazily starting from the ground #18

@countvajhula

Description

@countvajhula

Currently, Rigpa comes with some editing structures pre-defined, such as modes, towers, and complexes. There is an implicit top-down ordering here, where editing complexes contain towers which contain modes. Instead, it would be better to start from the ground, and find some way to delegate the UX to structures "discovered" when escaping into larger scales and meta levels. For instance, an inner level should not know that it is contained in a particular type of larger-scale structure.

This might necessitate:

  • discovering containing structures using a lambda rather than through a hardcoded access of a known containing structure
  • basic mutable structures (e.g. a simple list) to be able to add containing structures dynamically, so that they can be discovered through the discovery mechanism. When there is no containing structure discovered, it may need to be dynamically and automatically created in some cases.
  • A UX abstraction layer that allows the discovery process to discover new keybindings that are appropriate for the containing structure's topology. E.g. a tower may involve up/down, but a ring may involve left/right rotation, and an array may involve translation in four directions. Most likely, we can just enter an appropriate mode here, and it won't involve making anything new, aside from possibly needing to have a mechanism to tie a structure to a mode.
  • There may also be built-in ways to represent different types of structures (e.g. buffers for a complex, a single buffer for a tower, TBD for a ring), which could be determined by the type of structure.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions