Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rework positioning/rendering and enable softwrap/virtual text #5420

Merged
merged 17 commits into from
Jan 31, 2023

Commits on Jan 23, 2023

  1. rework positioning/rendering, enables softwrap/virtual text

    This commit is a large rework of the core text positioning and
    rendering code in helix to remove the assumption that on-screen
    columns/lines correspond to text columns/lines.
    
    A generic `DocFormatter` is introduced that positions graphemes on
    and is used both for rendering and for movements/scrolling.
    Both virtual text support (inline, grapheme overlay and multi-line)
    and a capable softwrap implementation is included.
    
    fix picker highlight
    
    cleanup doc formatter, use word bondaries for wrapping
    
    make visual vertical movement a seperate commnad
    
    estimate line gutter width to improve performance
    
    cache cursor position
    
    cleanup and optimize doc formatter
    
    cleanup documentation
    
    fix typos
    
    Co-authored-by: Daniel Hines <d4hines@gmail.com>
    
    update documentation
    
    fix panic in last_visual_line funciton
    
    improve soft-wrap documentation
    
    add extend_visual_line_up/down commands
    
    fix non-visual vertical movement
    
    streamline virtual text highlighting, add softwrap indicator
    
    fix cursor position if softwrap is disabled
    
    improve documentation of text_annotations module
    
    avoid crashes if view anchor is out of bounds
    
    fix: consider horizontal offset when traslation char_idx -> vpos
    
    improve default configuration
    
    fix: mixed up horizontal and vertical offset
    
    reset view position after config reload
    
    apply suggestions from review
    
    disabled softwrap for very small screens to avoid endless spin
    
    fix wrap_indicator setting
    
    fix bar cursor disappearring on the EOF character
    
    add keybinding for linewise vertical movement
    
    fix: inconsistent gutter highlights
    
    improve virtual text API
    
    make scope idx lookup more ergonomic
    
    allow overlapping overlays
    
    correctly track char_pos for virtual text
    
    adjust configuration
    
    deprecate old position fucntions
    
    fix infinite loop in highlight lookup
    
    fix gutter style
    
    fix formatting
    
    document max-line-width interaction with softwrap
    
    change wrap-indicator example to use empty string
    
    fix: rare panic when view is in invalid state (bis)
    pascalkuthe committed Jan 23, 2023
    Configuration menu
    Copy the full SHA
    f1791db View commit details
    Browse the repository at this point in the history

Commits on Jan 25, 2023

  1. Apply suggestions from code review

    Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
    pascalkuthe and the-mikedavis authored Jan 25, 2023
    Configuration menu
    Copy the full SHA
    71345e5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3dbb0bc View commit details
    Browse the repository at this point in the history
  3. simplify tests

    pascalkuthe committed Jan 25, 2023
    Configuration menu
    Copy the full SHA
    692bbaa View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f743d9a View commit details
    Browse the repository at this point in the history

Commits on Jan 29, 2023

  1. Apply suggestions from code review

    Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
    pascalkuthe and the-mikedavis committed Jan 29, 2023
    Configuration menu
    Copy the full SHA
    d54df49 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a5d3c4b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9ff4750 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2c8faf2 View commit details
    Browse the repository at this point in the history
  5. fix a few typos

    pascalkuthe committed Jan 29, 2023
    Configuration menu
    Copy the full SHA
    39f2b4e View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1d49330 View commit details
    Browse the repository at this point in the history

Commits on Jan 30, 2023

  1. Configuration menu
    Copy the full SHA
    ed7782d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    bfd5355 View commit details
    Browse the repository at this point in the history

Commits on Jan 31, 2023

  1. Configuration menu
    Copy the full SHA
    7f6882f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cdac97b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5d1e53a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    1ec785b View commit details
    Browse the repository at this point in the history