Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,16 @@ See `AGENTS.md` for the full set of project constraints and architecture.

## Known Issues

- **A buffer split into a second window shows blank space, not the image.**
`show()` binds a placement to one specific window; if the same buffer is
also open in another window (`:split`/`:vsplit`), that window renders the
reserved blank `virt_lines` rows with no image in them β€” `show()` doesn't
auto-detect the split and place into it. Work around this today by calling
`show()` again with `opts.win` set to the second window and the same
`path`: blit reuses the already-transmitted image data instead of
re-sending it, adding an independent placement for the new window at no
extra transmission cost ([#10](https://github.com/optiflowic/blit.nvim/issues/10)).

- **WezTerm: process crash under sustained fast scrolling** ([#31](https://github.com/optiflowic/blit.nvim/issues/31)).
Scrolling quickly and continuously with an image anchored away from the top
of the buffer can crash the WezTerm process itself (not just the pane),
Expand Down
8 changes: 8 additions & 0 deletions doc/blit.txt
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,14 @@ show({path}, {opts})
for its real cell-pixel size, so this is an approximation; when both
{width} and {height} are supplied, they pass through unvalidated.

Calling |blit.show()| again for the same {path} (matching file content,
by `(path, mtime)`) reuses the already-transmitted image data instead of
re-sending it, adding an independent placement rather than a redundant
copy. This is also how to display the same image in more than one
window at once β€” e.g. after `:split` β€” since one handle is bound to one
{win}: call |blit.show()| a second time with {opts.win} set to the
second window and the same {path}.

*blit.clear()*
clear({handle})
Remove the placement and extmark for a handle returned by |blit.show()|.
Expand Down
Loading