Commit Graph

23 Commits

Author SHA1 Message Date
Richard Li
18272f8df3
fix(view): refresh opened files highlight on buffer read, unload (#1827) 2022-12-16 14:36:00 +11:00
baahrens
0b319a1b28
feat(renderer): add NvimTreeOpenedFolderIcon NvimTreeClosedFolderIcon (#1768)
* feat: Add highlight group for opened folder

closes #1674

* docs: Add NvimTreeOpenedFolderIcon default

* feat: Add NvimTreeClosedFolderIcon highlight group

Defaults to NvimTreeFolderIcon
2022-11-28 11:17:09 +11:00
David Aguilera
99d713644d
feat(renderer): add renderer.root_folder_label (#1746)
* Add new renderer setting `add_root_updir` to fix #1743.

* Fix default value in docs.

* Remove proposed “add_root_updir” and rename “root_folder_modifier” to “root_folder_label”. Also, “root_folder_label” can be also a function now.

* chore: warn users about breaking change

* fix(#1743): use silent migration of root_folder_modifier

* fix(#1743): add example, document previous renderer.root_folder_modifier

* Add check to validate return type of “root_folder_label” is string.

* Change “root_folder_label” default value to “:~:s?$?/..?”.

* Add missing keyword “local” to local variable “label”.

Co-authored-by: David Aguilera <david.aguilera@neliosoftware.com>
Co-authored-by: gegoune <dev@clog.rocks>
Co-authored-by: Alexander Courtis <alex@courtis.org>
2022-11-26 14:02:05 +11:00
ADoyle
951e10a64e
fix(#1568): show relative path of symlink destination (#1569) 2022-09-04 12:23:56 +10:00
Mivort
e8bf3d778a
feat(renderer): add renderer.indent_width (#1505)
* feat: add config option for a tree indent width

add 'indent_width' option to configure visible indent for tree nesting
levels (default is 2).

* add 'bottom' char for a corner extension

* apply stylua formatting

* provide value constraints in documentation

* limit minimal indent width

* make marker symbols have one utf8 char width

* match stylua formatting

* add the commentary regarding utf-8 first symbol match
2022-08-30 09:44:30 +10:00
kiyan
ad1f3ef3bc feat(renderer): show symlink folder destination
fixes https://github.com/kyazdani42/nvim-tree.lua/issues/980
2022-07-10 10:47:51 +02:00
Alexander Courtis
fd562ede63
fix(#1406): allow nvim-tree.renderer.icons.show.folder_arrow
* fix(#1406): allow nvim-tree.renderer.icons.show.folder_arrow when not folder

* fix(#1406): allow nvim-tree.renderer.icons.show.folder_arrow when indent markers enabled

* fix(builder): highlight first iteration for arrow column

* fix stylua

Co-authored-by: kiyan <yazdani.kiyan@protonmail.com>
2022-07-10 12:14:18 +10:00
Toby O'Sullivan
38fabe86cb
Optionally suppress the symlink destination (#1396) 2022-07-05 10:05:21 +02:00
Alexander Courtis
3ba383d591
chore/remove globals (#1279)
* remove renderer globals: nvim_tree_add_trailing nvim_tree_highlight_opened_files nvim_tree_root_folder_modifier nvim_tree_special_files

* remove renderer globals: nvim_tree_icon_padding

* remove renderer globals: nvim_tree_symlink_arrow

* remove renderer globals: nvim_tree_show_icons, nvim_tree_show_icons

* remove renderer globals: nvim_tree_git_hl

* remove renderer globals: nvim_tree_group_empty

* remove renderer globals: respect_buf_cwd

* remove renderer globals: nvim_tree_create_in_closed_folder

* remove globals: consistency in legacy checks

* remove renderer globals: nvim_tree_special_files

* renderer.icons.symbols -> glyphs
2022-05-28 11:08:40 +10:00
Kiyan
6343813a35
feat(live-filter): add ability to live filter out nodes in the tree (#1056) 2022-05-17 10:03:49 +02:00
kiyan
9d26594b6c fix(renderer): empty space at end of line
fixes #1253
2022-05-15 10:28:17 +02:00
kiyan
7293f8dc70 fix(renderer): padding when git icons are after the name
fixes #1253
2022-05-14 13:41:58 +02:00
kiyan
d88d12f5bc Revert "#1253 only pad git icons when they are present (#1259)"
This reverts commit 90d7b8edb1.
fixes #1267
2022-05-14 13:31:37 +02:00
Kiyan
f8312cd06f
feat(renderer): add ability to set git icons in signcolumn (#1242) 2022-05-14 09:54:27 +02:00
Alexander Courtis
90d7b8edb1
#1253 only pad git icons when they are present (#1259) 2022-05-14 09:35:44 +02:00
Kiyan
a1600e57f2
feat(renderer): allow placing git icons after filename (#1203)
This feature allows placing git icons after the filename.
2022-05-07 14:05:51 +02:00
kiyan
ce2cf7131f refactor(renderer): refactor git handling
Concat and apply git highlight inside the builder.
This allows to not leak private data from builder to the git component.
This will also now allow us to customize git icon placement.
2022-04-26 22:59:16 +02:00
kiyan
0d6c0dda3d refactor(renderer): remove set_folder_hl function from icons
This greatly simplifies the folder highlighting logic. It wasn't clear
before and the code was probably doing more than it should. The logic
with highlight_opened_file wasn't working at all, so i just removed it.
This should allow us to greatly extend the order in which the components
are rendered.
2022-04-26 22:28:40 +02:00
kiyan
d8fe48a887 refactor(renderer): return hl group from get_file_icon
this allows to not pass private data from builder to component
2022-04-26 21:50:34 +02:00
kiyan
efcadc482b refactor(renderer): extract build line function 2022-04-24 15:08:05 +02:00
kiyan
15d5e0609a refactor(renderer): extract folder name creation 2022-04-23 15:36:27 +02:00
kiyan
ec6ccf33ff refactor(renderer): abstract configuration related code
- vim.g variables passed as configuration for builder in
  renderer/init.lua.
- pass special and pictures maps during configuration
2022-04-23 15:27:30 +02:00
kiyan
d44742bee5 refactor(renderer): line creation into a builder pattern
- use a builder pattern to mount the lines / highlights
- i think we lost a little performance, but gain in design
- code for file/folder icons is abstracted in components/icons.lua
- should also fix the issues where vim.g variables where loaded before
  setup.
2022-04-23 15:15:10 +02:00