- (preview) Add
jumpTop
andjumpBot
keymap actions (#109) - (highlight) Add
UfoCursorFoldedLine
(#103) - (render) Support inlay (#155)
- (render) Add support for concealed characters (#153) (#156)
- (api) Add cursor range and kind information for
UfoInspect
- (config) [breaking] Use
close_fold_kinds_for_ft
insteadclose_fold_kinds
- (decorator) Export fold kind in
fold_virt_text_handler
(#207) - (build) Luarocks support (#211)
- (preview) Respect
tabstop
andshiftwidth
opts - (provider) Respect 'tabstop' and 'shiftwidth' for indent
- (decorator) Reset winhl after detach
- (decorator) Keep last winid field
- (driver) Respect
foldminlines
(#108) - (decorator) Buffer may be changed in a window
- (decorator)
setl winhl
erase hl ofnvim_win_set_hl_ns
(#111) - (preview) Dispose preview window even if buffer is wiped out
- (buffer) Quickfix buftype can't detect line changed
- (decorator) Open fold should redraw at once (#132)
- (treesitter) Support
#make-range!
(#139) - (preview) Window height should more than zero
- (fold) Refresh fb table in closure function
- Throw UfoFallbackException on RequestFailed (#159)
- (render) Join text for default hlgroup (#163)
- (render) Skip error return by
synID
- (fold) Sync extmarks with foldedLines (#167)
- (treesitter) Use metadata.range prefer (#169)
- (window) Clear win highlight if buf changed
- (decorator) Ignore redraw request for closing fold (#176)
- (decorator) Ignore redundant redraw (#180,#181)
- (fold) Scan win folds if one buffer in multiple window
- (decorator) Correct bufnrSet logic
- (window) Don't clear winhl during first render (#183)
- (render) Replace
Normal
highlight withUfoFoldedFg
- (action) Check endLnum to avoid infinite loop (#184)
- (decorator) Highlight open fold for multiple windows correctly (#187)
- (decorator) Erase extmark even in multiple windows
- (decorator) Narrow the fold range for stale
- (treesitter) Fix errors when getting hlId on nvim 0.10.x (#188)
- (model) Use private field to avoid inherit (#186)
- (fold) Don't make scan flag if manual invoke (#192)
- (window) Upstream bug,
set winhl
change curswant (#194) - (preview) Nightly change
nvim_win_get_config
return val - (wffi)
changed_window_setting
signature changed - (decorator) Keep silent for
Keyboard interrupt
error (#202) - (decorator) Correct capture condition
- (fold) Return correct winid
- (decorator) Skip rendering of horizontal movement
- (decorator)
set winhl
will redraw all lines
- Use fallback if
buftype == 'nofile'
- Inspect current fold kinds
- Respect target buffer opts
- Stick to top left corner while scrolling in normal window
- Fix wrong row for upward display
- Window maybe changed before set opts
- Improve leaving diff mode behavior
- Substitute NUL byte for VimScript func
- Catch coc.nvim
Plugin not ready
error and resolve
- Explain
fold_virt_text_handler
(#98) - Make capabilities for all available lsp servers & remove "other_fields" (#100)
- Add
close_fold_kinds
option - Make the window display upward if
kind == 'comment'
(#73)
- Add
applyFolds
- Add
openFoldsExceptKinds
(#64)
- Support highlighting with
:match
- Show virtual winbar if preview is scrolled and export
UfoPreviewWinbar
highlight group - Highlight cursor line for preview and export
UfoPreviewCursorLine
highlight group
- Hint error for users' virtTextHandler (#79)
- Add
enable_get_fold_virt_text
option to get virt texts of all folded lines (#74)
enable_fold_end_virt_text
option is deprecated, useenable_get_fold_virt_text
instead- The signature of
peekFoldedLinesUnderCursor
API is changed
- Handle multiple windows with same buffers
set foldenable
forecdly after leaving diff mode- Restore topline after first applying folds to keep eyes comfortable
- EndLnum may exceed buffer line count because of the asynchronization
- Action should work after detach (#75)
- Dispose previous resources before a new attach
- Scroll bar reaches the bottom until the end of the line is visible
- Need more time to wait for the server
- Better bypass strategy, must reach the timeout and a certain number of requests
- Lsp provider always returns Promise object
- Validate buffer after requesting folds
- Dispose all providers properly
- Stop highlighting after opening folds during incsearch
- Keep refreshing even if nofoldenable
- Limit the end of range
- Treesitter extmarks may be overlapped, filter invalid extmarks out
- Reset foldlines if extmark range is backward
- Unexpected fired
on_lines
at nvim_buf_attach - Fix
winsaveview()
for scanning fold ranges - Always open folds if text content in range (#60)
- Scroll bar shouldn't be filled fully if it's scrollable
- Drop coc.nvim cancellation
- Filter out last same ranges
- Assert
provider_selector
return value (#61)
- Add
closeFoldsWith
API (#62) - Truncate top border for preview if possible
First release with 1.0.0 version.