nvim-tree.lua/release-notes.md
2023-12-09 00:36:31 +00:00

71 KiB

🤖 I have created a release beep boop

1.0.0 (2023-12-09)

Features

Bug Fixes

  • #1270: ensure explorer exists at startup before propagating FS changes (55aa006)
  • #1270: open_on_setup_file does not override open_on_setup, hijack_directories does not override startup behaviour (#1618) (c5536db)
  • #1354: add missing :hi NvimTreeFileIgnored (#1358) (1fc0eee)
  • #1356: view.close switch_buf_if_last_buf prefers alt buf (#1357) (d9aaa2f)
  • #1366: warn when trash cmd missing (#1378) (7285898)
  • #1406: allow nvim-tree.renderer.icons.show.folder_arrow (fd562ed)
  • #1479: apply remove_keymaps to default mappings (cfc4692)
  • #1480: break symlink cycle on find-file, search-node (#1482) (261a5c3)
  • #1484: better error handling in git utils get_toplevel (ff6e796)
  • #1494: git showUntracked value and log (#1504) (09a5126)
  • #1500: focusing directories with a trailing slash in their path doesn't work (#1501) (b314b3a)
  • #1503: focus last win before close (#1509) (d9edddb)
  • #1514: inverted git navigation keymaps (#1515) (9fd7b7a)
  • #1518: sort_by=modification_time not reordering on refresh. (#1519) (049cdd3)
  • #1520: file type changes are not detected. (#1521) (c5fba1e)
  • #1529: ensure tree window exists before closing (#1537) (e3353c4)
  • #1533: make toggle_mark ignore non-togglable nodes. (#1534) (90dcf42)
  • #1539: Fix closing nvim-tree float when file is removed (#1546) (07f59e7)
  • #1540: watcher ignore directories with name exactly '.git' (259efee)
  • #1543: Do not resize nvim-tree window if float is enabled (#1556) (ce5d0a6)
  • #1545: dispatch Event.Resize on all window resizes, requires nvim 0.9+ (#2238) (0345117)
  • #1547: pass explicit system arguments to for git toplevel and untracked actions (9914780)
  • #1551: handle git status TT as staged (c272c88)
  • #1553: set correct side on vim open directory (#1594) (5cb87c0)
  • #1555: incorrect exe highlight in Windows filesystem from WSL (#1557) (4a725c0)
  • #1564: reset &bufhidden when opening an existing (maybe previewed) buffer (#1573) (e282420)
  • #1568: show relative path of symlink destination (#1569) (951e10a)
  • #1615: focus created file when command line prompt requires confirmation (#1622) (be2b4f5)
  • #1626: obey splitright/below when splitting existing windows (#1641) (c4ac723)
  • #1628: quit_on_open e: do not open in the tree's window (#1637) (b01e7be)
  • #1629: nvim start with file named NvimTree opens tree instead of buffer (#1634) (c66cbdf)
  • #1632: autocenter: avoid use of feedkeys (#1632) (187388b)
  • #1639: ensure tree autocommands match filetype as well as name (#1640) (48992fd)
  • #1643: preview on floating window (#1648) (c995ce0)
  • #1664: respect hijack_directories.enable on startup when not open_on_setup (#1665) (4e24505)
  • #1668: revert all startup behaviour changes back to 540055b (3a2f68b)
  • #1668: update issue link (2b97063)
  • #1671: split with no window picker will always find an available window (#1677) (dd90bfa)
  • #1675: open-file sanity check mode (e94f517)
  • #1679: renderer.full_name correctly shows for one character outside (#1688) (fba9751)
  • #1697: remove notify plugin auto-detection (#2135) (68f485b)
  • #1711: open in a new window when no window picker and no available window (#1715) (33ce8e3)
  • #1712: invalid window ID on colorscheme (#1714) (ada2c64)
  • #1716: focus file/directory when created in a sub-directory, don't dispatch FolderCreated on file creation (#1722) (bdc4ec6)
  • #1720: .git watch only FETCH_HEAD, HEAD, HEAD.lock, config, index (#1732) (bcb2a5a)
  • #1723: find_file for externally created new file results in folder unable to be opened (be2ccd4)
  • #1728: escape cwd changes to prevent environment variable expansion (#1729) (e204a7d)
  • #1731 #1723 #1716: handle all external file system changes (#1757) (b17358f)
  • #1740: Error while running :NvimTreeCollapseKeepBuffers (#1741) (cf90837)
  • #1785: retain focused node on filter toggles (#2202) (d5d6950)
  • #1804: do not refresh watched nodes that have been destroyed (deleted) (d949af7)
  • #1815: don't schedule find_file calls, debounce update_focused_file with 15ms default (#1820) (623cecb)
  • #1815: don't schedule find_file calls, debounce update_focused_file with 15ms default (#1828) (87409bb)
  • #1824: Don't modify jumplist when edit_in_place. (#1825) (e8ea62c)
  • #1831: improve fs_scandir error handling, add profiling (89c79cb)
  • #1831: remove error messages that were previously unreachable and add no value (547db6e)
  • #1831: remove instrumentation (#1968) (e0166d1)
  • #1831: remove instrumentation (#1969) (7eb33d2)
  • #1831: remove windows executable functionality due to occasional vim freeze and performance concerns (#1868) (3c4958a)
  • #1833: do not find file when view is not visible on the current tab (#1845) (9e4c395)
  • #1836: add view.debounce_delay (#1871) (951b6e7)
  • #1841: do not refresh on buffer events when highlight_opened_files is none (4fc74ca)
  • #1841: do not refresh on buffer events when not a file buffer (#1843) (e14c289)
  • #1858: deprecation warning for config.mappings.active and default (#2084) (886d852)
  • #1858: fire TreeAttachedPost event following on_attach call (f0a1c6a)
  • #1878: nvim frozen on no name buffer when modified.enable (#1879) (cdbd7da)
  • #1916: suppress EPERM watcher failures on windows (#1919) (1b13a49)
  • #1923: handle empty git icons (#1952) (8505b6e)
  • #1923: handle empty git icons (#1987) (ba1778e)
  • #1931: do not execute git status in git ignored directories (#2326) (273c170)
  • #1940: NvimTreeFindFileToggle focus tree (9e87ee2)
  • #1942: nvim-tree window options do not trigger OptionSet event (#1945) (55028e3)
  • #1946: only change vim's global cwd on startup when opening the tree (#1947) (8567841)
  • #1950: disable most API until nvim-tree setup has been called (#2125) (56cdb58)
  • #1961: cycle detection on refresh, preventing infinite loop (#1996) (4222bb8)
  • #1961: harden profiling functions (#1986) (b712b82)
  • #1961: stop unnecessary find file refreshes, avoid find file refresh cycles (#2010) (9c97e64)
  • #1970: additional log function gating for efficiency when not logging (#1971) (02fdc26)
  • #1970: disable git integration after 5 timeouts (#1990) (36e29c3)
  • #1976: support non-standard $GIT_DIR (#2012) (517dee6)
  • #1989: cut/paste over open buffer (#2279) (4af5722)
  • #1993: always fire TreeOpen event (#1994) (8b8d457)
  • #2003: obey user split command for modified buffers when hidden not set (#2008) (04f99f1)
  • #2004: relative path detection handles regex magic (#2005) (66c15af)
  • #2024: help handles empty mapping description (59bcb01)
  • #2024: revert removal of deprecated nvim-tree.config nvim_tree_callback (362ecbe)
  • #2057: update focused file on new terminal (#2060) (31d8e24)
  • #2078: :NvimTreeFindFile focuses tree (#2080) (6319ad9)
  • #2081: do not change root for inexistent files (#2082) (6515a1e)
  • #2086: "Rename: Omit Filename" not removing file name (#2087) (a38f9a5)
  • #2088: actions change dir enable false does not update tree root (#2095) (3e9509e)
  • #2104: remove experimental.git.async, always used (#2234) (164eb10)
  • #2109: floating help window (#2120) (0a144ba)
  • #2114: remove deprecated non-API from lib, events (#2121) (920d5c8)
  • #2126: custom window pickers may create windows (#2140) (8f392fa)
  • #2132: focus file after rename and paste (#2151) (061a05b)
  • #2133: harden hide_root_folder deprecation (#2134) (b601b5a)
  • #2139: API functions not passing arguments (#2141) (a8a4834)
  • #2154: find_file doesn't work when group_empty option is enabled (#2100) (d8b154c)
  • #2154: selection incorrect after find-file when renderer.group_empty (#2437) (d8e495b)
  • #2157: use stdpath cache for nvim-tree-on-attach.lua (#2159) (13c7146)
  • #2175: check number of actions.open_file.window_picker.chars before picking window (#2177) (9c60947)
  • #2191: edit: disregard floating windows (#2209) (89816ac)
  • #2191: edit: disregard floating windows (#2212) (b657405)
  • #2240: disable watchers following EMFILE (#2268) (d4f6d33)
  • #2293: remove unnecessary git status during find file (#2294) (1fe3228)
  • #2301: do not show git status on grouped dirs when show_on_open_dirs (#2303) (d17389c)
  • #2301: various git folder status fixes (#2373) (4e36850)
  • #2327: set parent folder git ignore status following file update (#2328) (c1466f9)
  • #2343: tree is now correctly abandoned upon an in-place open with eject=false (#2344) (0a89dcb)
  • #2352: windows: escape special filename characters on edit (#2374) (7c4c7e4)
  • #2370: Better "y/N" prompts (#2377) (920868d)
  • #2382: git watcher handles worktrees and submodules, via --absolute-git-dir when it is available (#2389) (28c3980)
  • #2386: kill git zombies (#2401) (5897b36)
  • #2392: bookmarks icon placement when group_empty (#2402) (b856d0a)
  • #2440: view.width.padding may be a number or function returning a number (#2442) (e153d9f)
  • #2450: apply NvimTreeImageFile for webp and jxl files (#2451) (94e572e)
  • #2459: disable cygwin git support by default, see :help nvim-tree.git.cygwin_support to enable (#2486) (db8145c)
  • #2467: remove newline in git paths when using cygwin_support (#2478) (7c5c074)
  • #2468: always apply filters to subdirectories (#2537) (fb89297)
  • #2473: remove problematic <S-Tab> default mapping (#2475) (40b9b88)
  • #2495: skip API action if node == nil (#2499) (7630cf4)
  • #2507: icon in message after rename-file (#2510) (20a0707)
  • #2512: file creation in empty folder without root_folder_label (#2514) (4ee6366)
  • #2516: diagnostics icon highlight group matches the documentation: NvimTreeLspDiagnosticsInfo -> Information (#2518) (46e1f77)
  • #2523: live filter overlay width calculation (#2524) (80cfead)
  • #549: add more profiling ~tree init (95ed588)
  • api.node.open.preview should toggle directories (#2099) (7ad1c20)
  • actions: change_dir to wrong directory (#1398) (269820e)
  • actions: close_node doesn't close for grouped node (#1385) (ec09b80)
  • actions: create file should defer more to focus (0fa2ec1)
  • actions: dispatching filter should not match for "live" keyword (0f96e32), closes #1420
  • add legacy options safety (f742b86)
  • api: copy is a table, copy -> copy.name (a044818), closes #1461
  • api: use copy.node instead of copy.name (e95bfbf), closes #1461
  • change-dir: cd command concatenation (eb6dde4)
  • ci: stylua action version number (43fd138)
  • cleanup live filter scratch buffers (#2522) (74ddb8f)
  • close view before hijacking current window (28c4bb0)
  • colorscheme: update winhl on colorscheme change (65c2ba8), closes #1696
  • copy-paste: fix message on clipboard clear (#1838) (e0cfbbb)
  • count unicode codepoints instead of bytes (#1445) (1e3c578)
  • create-file: pass file in parameter (1018a83)
  • create-file: when node is nil, create the file at root (e632ac7), closes #1467
  • diagnostics: coc obey diagnostics.severity (#2072) (874b7be)
  • diagnostics: do not show on file/dir with same prefix (fee6801)
  • diagnostics: do not show on file/dir with same prefix (#1832) (3000797)
  • dispatch: dispatch help toggle when its not shown (95c57e0), closes #1411
  • doc: duplicate help tag in README (#2066) (a50723e)
  • docs: typos (#1470) (2928f8f)
  • ensure startup warnings are visible with a multiline message, to work around https://github.com/neovim/neovim/issues/17832 planned for fix in nvim 0.10 (#2387) (807dc05)
  • error when deleting opened file from floating window (#2503) (24bb0ed)
  • executable: prevent nil extensions in executable check (630305c), closes #1444
  • expand and collapse whole folder groups (#2380) (0074120)
  • explorer: reload executable stat (#1427) (b754eb8)
  • file rename: edit buffer when renaming to reset filetype (90bf140)
  • find-file: do not recurse on closed nodes (9d3602e)
  • focus visible parent on collapse all (#2261) (f873625)
  • fs_watcher not started for .git folders (windows) (#2265) (f5804ce)
  • fs: create file failure when reloading watch path for node (3d58a9b), closes #1633
  • get-node-from-path: group dirs should be returned before nodes (4bd919a)
  • git highlight for new staged files (#2534) (8f9169a)
  • git: fix inverted condition logic introduced in #1433 (#1443) (c964fa2)
  • git: git folder fixes and improvements (#1809) (29788cc)
  • git: git rename not showing up for the renamed file (#1783) (f8489c9)
  • git: prevent execution of git commands when git integration is disabled (#1433) (203bb7e)
  • harden git status updates (#2533) (633811c)
  • harden tree root cwd fetch (#2557) (5e4475d)
  • help window header is minimum width (#2149) (5b53732)
  • help: clear git signs before draw (b81ab19)
  • Implicit current buf on centralize selection (#1792) (0cd8ac4)
  • info size suffix and formatting (#2492) (a31dfad)
  • inverted diagnostic navigation keymaps (81eb718)
  • iterators: the index does not increase (#1399) (418fc97)
  • keymaps: get_keymaps takes remove_keymaps as parameter (9bbf95e)
  • keypress: use <cmd> instead of : to avoid triggering CmdLineEnter (7087af8), closes #1417
  • nerd font 3 bookmark icon (#2203) (498e879)
  • notify: log file notice info->debug (cc18122)
  • notify: remove unused varargs, log file notice debug->info (a65063c)
  • open-file: focus file if already opened (4900d66)
  • open-file: vim.op -> vim.opt (2edbe75)
  • paste: allow pasting into empty root directory (1837751), closes #1736
  • paste: paste into empty root directory (059e4ca)
  • perf: explorer was creating new table for each new entry (665813b)
  • prompt uses first character of response - allow "yy" (#2357) (904f95c)
  • prompt: add select_prompts to suit UI decorator plugins such as dressing and telescope (ac8d259)
  • reload tree on BufEnter if cwd is different (#2527) (874ae6e)
  • remove redundant file existence check in create file operation (#1936) (16f2806)
  • remove unnecessary conditions (#1614) (45d386a)
  • renderer: indent markers + folder arrows should offset (8632ac2), closes #1421
  • renderer: indent markers with arrows (9a02ded)
  • renderer: padding indent with folders only (449b5bd)
  • replace vim.* "requires" with explicit calls to vim functions (#1701) (8cc3696)
  • restore eventignore (#1612) (11b5248)
  • schedule notifications to avoid UI freeze on startup (#2432) (ce3495b)
  • scripts: default mappings should put a comma at the end of each line (08ab346)
  • sort_by "extension" falls back to name (#2306) (04b2c1e)
  • styling: empty line (4aef454)
  • system-open: use notify for system-open failures and tidy messages (9d241e5)
  • trash.cmd defaults to 'trash' on macos and windows, document option (#2336) (0a54dcb)
  • trash: do not run trash command when trash is not executable (cbbc799)
  • type annotations for utils.is_nvim_tree_buf (#2180) (270c955)
  • typo on clipboard notify (#2032) (6117582)
  • use pcall to prevent live-filter regex errors (#1689) (3845039)
  • view: do not close window when NvimTree buffer is replaced (#1391) (40e515d)
  • view: file filter and info popup above floating view (d753a1d)
  • view: prevent buffer override when actions.open_file.quit_on_open (e82a921)
  • view: refresh opened files highlight on buffer read, unload (#1827) (18272f8)
  • watcher: failure on watcher teardown message (#1726) (6d6a446)
  • watcher: only purge on subsequent setup calls, add git_purge log (899ed45)
  • watchers: disable watchers on kernel filesystems (ac90664), closes #1465
  • window picker can't be correctly rendered when cmdheight = 0 (#1349) (79258f1)
  • wipe: wipe all nvim-tree rogue buffers (ec530e7), closes #1438

This PR was generated with Release Please. See documentation.