Skip to content

Add command to freeze navigation map #308

@pokey

Description

@pokey
  • Takes a target, indicating what section of the document to freeze, so can say eg "freeze funk air"
  • Any hats within that region will stay the same until unfrozen / refreshed
  • If new text is added within that region, it will be frozen once its hat is allocated
  • How to handle undo / redo?
  • How to handle deletion? Do we just remove tokens that become empty? (that's what happens to deleted tokens; they become an empty range)
  • When adding decorations, hatTokenMap will pass in a list of frozen tokens
  • addDecorations will use those tokens as start of new hat token map
  • addDecorations will not decorate tokens that are contained within an existing token range. For tokens that partially intersect an existing token, I guess it will decorate the part that is not intersecting the existing token range
  • addDecorations will not use any decorations that are already taken by a frozen token
  • Add command to "refresh" a target area. That will refresh any frozen section containing that target with new hats, but leave the area frozen
  • Add command to "unfreeze" target. That will unfreeze any frozen section containing that target
  • Add command to unfreeze all
  • Add indicator in status bar that there are frozen tokens
  • Decorate the frozen section with subtle blue transparent background color
  • Preserve frozen tokens even when editor goes out of view, so that can be used as basic version of bookmarks

The advantage of this approach over #432 is that it gives something akin to a lightweight bookmark / stable snippet

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions