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

Rewrite the whole api #14

Merged
merged 1 commit into from May 29, 2020
Merged

Rewrite the whole api #14

merged 1 commit into from May 29, 2020

Conversation

kyazdani42
Copy link
Member

@kyazdani42 kyazdani42 commented May 19, 2020

Big rewrite of the tree:

Goals:

  • The tree is created with libuv functions, which makes it blazingly fast.
  • The tree may now be faster than any other vim trees, it can handle directories with thousands of files without any latency at all (tested on 40K files, works flawlessly).
  • More solid logic for opening and closing the tree.
  • tree state is saved (closing / opening a folder should keep opened subdiretories open)
  • detection of multiple git projects in the tree (so git infos are properly added to different files)
  • user icons (default for files without icons and git icons)
  • smart updates (do not reload the whole tree when doing an update)
  • implement gx function to spawn file with xdg-open/open(macos)
  • fix: use noautocmd on wincmd when editing a new buffer
  • filesystem operations based on libuv instead of spawning unix processes

closes #12
closes #22
closes #15
closes #18
closes #17

@kyazdani42 kyazdani42 changed the title WIP: Rewrite: rewrite the whole api WIP: rewrite the whole api May 19, 2020
@kyazdani42 kyazdani42 force-pushed the rewrite branch 3 times, most recently from 13954a5 to 30abd97 Compare May 20, 2020 09:24
@akinsho
Copy link
Contributor

akinsho commented May 20, 2020

@kyazdani42 regarding multiple workspaces, in vscode this is done based on the language server integration which I don't think is necessary for this feature.

If the objective is simply to have two trees, which I think is what the feature essentially is (without the vscode lsp magic). Btw this PR sounds great without that feature anyway (I've never really used vscode so no idea how useful multi root workspaces is or not). If you did decide to do it I wonder if a good approach would be just having a mode where you can open two parallel LuaTree windows 🤷‍♂️ . Anyway just butting my nose in this looks great 🙌 . I work in a giant mono repo so this will be awesome to have

|-------------|
| Tree 1      |
| ~/Project 1 |
|             |
|             |
|-------------|
| Tree 2      |
| ~/project 2 |
|             |
|             |

@kyazdani42
Copy link
Member Author

thanks for the tips.
Well i don't really know how useful it could be, and how it would impact performance, or introduce new bugs so im still wondering about adding this feature. I'll add that at the end and see if it behaves properly.
And i wonder if i could handle icons differently because the vim devicon package takes way too much time and i could make it much faster with lua. Still some work to do !

@akinsho
Copy link
Contributor

akinsho commented May 20, 2020

Regarding dev icons being slow one thing I saw in someone else's dotfiles was this he maintains a list of icons in lua, the issue with this approach is you have to keep the list of icons updated whenever a new language or extension gets added. Although I guess that's not that often.

@kyazdani42
Copy link
Member Author

that's what i just did :) it super fast now. But still a lot of colors and file extensions to manage...

@akinsho
Copy link
Contributor

akinsho commented May 20, 2020

I wonder if a separate lua library for devicons will be a useful project. I was thinking of doing something similar with a tiny project of mine, not sure how dependencies like that would work in lua but if it was a community thing and it caught on it wouldn't have to be just one person maintaining the list hopefully 🤷

@kyazdani42
Copy link
Member Author

kyazdani42 commented May 20, 2020

your project looks cool !
Well it would be quite easy, we would have to expose a function that takes an extension, a filename and that would return an icon. We could even return the color of the icon. and in a dev code, it would look like:

local icon, color = require'devicon-lua'.get_icon(fname, ext)

and the package could event set highlight groups to reuse

@kyazdani42 kyazdani42 force-pushed the rewrite branch 2 times, most recently from 6c04bf3 to 612c07f Compare May 20, 2020 14:09
@akinsho
Copy link
Contributor

akinsho commented May 20, 2020

I guess that means a user would have to install an extra plugin though 🤔 , that might be a blocker for some people but I guess you have to do the same with vim-devicons anyway.

@kyazdani42
Copy link
Member Author

well just use git submodules

@kyazdani42 kyazdani42 force-pushed the rewrite branch 15 times, most recently from cf64a84 to b364458 Compare May 23, 2020 13:00
@kyazdani42 kyazdani42 force-pushed the rewrite branch 8 times, most recently from 4ff163d to 476d5b9 Compare May 26, 2020 12:12
@kyazdani42 kyazdani42 mentioned this pull request May 26, 2020
@kyazdani42 kyazdani42 force-pushed the rewrite branch 7 times, most recently from c52f51a to b8dc120 Compare May 28, 2020 18:03
@romgrk
Copy link

romgrk commented May 28, 2020

hey :) a few question/comments:

  • why do you keep force-pushing your whole branch when there are changes? isn't it easier to simply git commit/git push?
  • if you split your PR in smaller chunks (and multiple commits) it's easier to review, so people lurking around can give feedback, spot typos, etc. Also people who wanna help can better gage where they can help.

Feel free to ignore, I'm just eager to use help, I like the approach of this plugin.

@kyazdani42
Copy link
Member Author

well, i just kept an habit when doing PR's to make only one commit because i'm always worried to blow everything up with git rebase ^^'
That's something i've got to work on, i agree it's not easy for people to review a big commit like this :)

@kyazdani42 kyazdani42 changed the title WIP: rewrite the whole api Rewrite the whole api May 29, 2020
- The tree is created with libuv functions, which makes it blazingly fast.
- The tree may now be faster than any other vim trees, it can handle directories with thousands of files without any latency at all (tested on 40K files, works flawlessly).
- More solid logic for opening and closing the tree.
- tree state is remembered (closing / opening a folder keeps opened subdirectories open)
- detection of multiple git projects in the tree
- more icon support
- smart rendering
- smart updates
- ms windows support
- gx replacement function running xdg-open on linux, open on macos
@kyazdani42 kyazdani42 merged commit bbeae1d into master May 29, 2020
mosheavni pushed a commit to mosheavni/nvim-tree.lua that referenced this pull request May 22, 2022
…25012996ed32f0

parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

# This is a combination of 13 commits.
# This is the 1st commit message:

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)


# This is the commit message nvim-tree#2:

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)


# This is the commit message nvim-tree#3:

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

# This is the commit message nvim-tree#4:

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

# This is the commit message nvim-tree#5:

fix(renderer): empty space at end of line

fixes nvim-tree#1253

# This is the commit message nvim-tree#6:

add fish performance tip to README.md
# This is the commit message nvim-tree#7:

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)


# This is the commit message nvim-tree#8:

feat: reload explorer on buf enter (nvim-tree#1265)


# This is the commit message nvim-tree#9:

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

# This is the commit message nvim-tree#10:

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

# This is the commit message nvim-tree#11:

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

# This is the commit message nvim-tree#12:

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)


# This is the commit message nvim-tree#13:

Ignore case when removing default mappings

# This is the commit message nvim-tree#14:

issue#362: File Management popup menu UI. First Iteration.
mosheavni added a commit to mosheavni/nvim-tree.lua that referenced this pull request May 22, 2022
parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

# This is a combination of 13 commits.
# This is the 1st commit message:

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)


# This is the commit message nvim-tree#2:

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)


# This is the commit message nvim-tree#3:

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

# This is the commit message nvim-tree#4:

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

# This is the commit message nvim-tree#5:

fix(renderer): empty space at end of line

fixes nvim-tree#1253

# This is the commit message nvim-tree#6:

add fish performance tip to README.md
# This is the commit message nvim-tree#7:

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)


# This is the commit message nvim-tree#8:

feat: reload explorer on buf enter (nvim-tree#1265)


# This is the commit message nvim-tree#9:

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

# This is the commit message nvim-tree#10:

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

# This is the commit message nvim-tree#11:

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

# This is the commit message nvim-tree#12:

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)


# This is the commit message nvim-tree#13:

Ignore case when removing default mappings

# This is the commit message nvim-tree#14:

issue#362: File Management popup menu UI. First Iteration.

# This is the commit message nvim-tree#15:

Workin on menu refactoring

# This is the commit message nvim-tree#17:

Working MVP of NvimTree menu. Added Readme.md with explanation of the current state of feature and DEFAULT_OPTIONS to test.

# This is the commit message nvim-tree#18:

Update README.md

# This is the commit message nvim-tree#19:

updated popup-menu/init.lua

# This is the commit message nvim-tree#20:

Update init.lua
# This is the commit message nvim-tree#21:

Update README.md
mosheavni pushed a commit to mosheavni/nvim-tree.lua that referenced this pull request May 22, 2022
# This is the 1st commit message:

refactor: use lua api for user commands and autocommands (nvim-tree#1206)

BREAKING: plugin now requires nvim-0.7
# This is the commit message nvim-tree#2:

# This is a combination of 14 commits.tree a88ac1bf9454ffa72e8002a79b25012996ed32f0
parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

# This is a combination of 13 commits.
# This is the 1st commit message:

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)


# This is the commit message nvim-tree#2:

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)


# This is the commit message nvim-tree#3:

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

# This is the commit message nvim-tree#4:

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

# This is the commit message nvim-tree#5:

fix(renderer): empty space at end of line

fixes nvim-tree#1253

# This is the commit message nvim-tree#6:

add fish performance tip to README.md
# This is the commit message nvim-tree#7:

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)


# This is the commit message nvim-tree#8:

feat: reload explorer on buf enter (nvim-tree#1265)


# This is the commit message nvim-tree#9:

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

# This is the commit message nvim-tree#10:

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

# This is the commit message nvim-tree#11:

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

# This is the commit message nvim-tree#12:

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)


# This is the commit message nvim-tree#13:

Ignore case when removing default mappings

# This is the commit message nvim-tree#14:

issue#362: File Management popup menu UI. First Iteration.

# This is the commit message nvim-tree#3:

parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

fix(renderer): empty space at end of line

fixes nvim-tree#1253

add fish performance tip to README.md

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)

feat: reload explorer on buf enter (nvim-tree#1265)

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)

Ignore case when removing default mappings

issue#362: File Management popup menu UI. First Iteration.

Workin on menu refactoring

# This is the commit message nvim-tree#4:

parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

fix(renderer): empty space at end of line

fixes nvim-tree#1253

add fish performance tip to README.md

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)

feat: reload explorer on buf enter (nvim-tree#1265)

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)

Ignore case when removing default mappings

issue#362: File Management popup menu UI. First Iteration.

Workin on menu refactoring

Working MVP of NvimTree menu. Added Readme.md with explanation of the current state of feature and DEFAULT_OPTIONS to test.

# This is the commit message nvim-tree#5:

parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

fix(renderer): empty space at end of line

fixes nvim-tree#1253

add fish performance tip to README.md

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)

feat: reload explorer on buf enter (nvim-tree#1265)

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)

Ignore case when removing default mappings

issue#362: File Management popup menu UI. First Iteration.

Workin on menu refactoring

Working MVP of NvimTree menu. Added Readme.md with explanation of the current state of feature and DEFAULT_OPTIONS to test.

Update README.md

# This is the commit message nvim-tree#6:

# This is a combination of 21 commits.
parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

# This is a combination of 13 commits.
# This is the 1st commit message:

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)


# This is the commit message nvim-tree#2:

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)


# This is the commit message nvim-tree#3:

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

# This is the commit message nvim-tree#4:

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

# This is the commit message nvim-tree#5:

fix(renderer): empty space at end of line

fixes nvim-tree#1253

# This is the commit message nvim-tree#6:

add fish performance tip to README.md
# This is the commit message nvim-tree#7:

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)


# This is the commit message nvim-tree#8:

feat: reload explorer on buf enter (nvim-tree#1265)


# This is the commit message nvim-tree#9:

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

# This is the commit message nvim-tree#10:

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

# This is the commit message nvim-tree#11:

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

# This is the commit message nvim-tree#12:

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)


# This is the commit message nvim-tree#13:

Ignore case when removing default mappings

# This is the commit message nvim-tree#14:

issue#362: File Management popup menu UI. First Iteration.

# This is the commit message nvim-tree#15:

Workin on menu refactoring

# This is the commit message nvim-tree#17:

Working MVP of NvimTree menu. Added Readme.md with explanation of the current state of feature and DEFAULT_OPTIONS to test.

# This is the commit message nvim-tree#18:

Update README.md

# This is the commit message nvim-tree#19:

updated popup-menu/init.lua

# This is the commit message nvim-tree#20:

Update init.lua
# This is the commit message nvim-tree#21:

Update README.md
# This is the commit message nvim-tree#7:

parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

fix(renderer): empty space at end of line

fixes nvim-tree#1253

add fish performance tip to README.md

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)

feat: reload explorer on buf enter (nvim-tree#1265)

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)

Ignore case when removing default mappings

issue#362: File Management popup menu UI. First Iteration.

Workin on menu refactoring

Working MVP of NvimTree menu. Added Readme.md with explanation of the current state of feature and DEFAULT_OPTIONS to test.

Update README.md

updated popup-menu/init.lua

Update init.lua

Update README.md

Done
parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

fix(renderer): empty space at end of line

fixes nvim-tree#1253

add fish performance tip to README.md

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)

feat: reload explorer on buf enter (nvim-tree#1265)

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)

Ignore case when removing default mappings

issue#362: File Management popup menu UI. First Iteration.

Workin on menu refactoring

Working MVP of NvimTree menu. Added Readme.md with explanation of the current state of feature and DEFAULT_OPTIONS to test.

Update README.md

updated popup-menu/init.lua

Update init.lua

Update README.md

Done

# This is the commit message nvim-tree#8:

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)


# This is the commit message nvim-tree#9:

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)
mosheavni added a commit to mosheavni/nvim-tree.lua that referenced this pull request May 22, 2022
# This is the 1st commit message:

refactor: use lua api for user commands and autocommands (nvim-tree#1206)

BREAKING: plugin now requires nvim-0.7
# This is the commit message nvim-tree#2:

# This is a combination of 14 commits.tree a88ac1bf9454ffa72e8002a79b25012996ed32f0
parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

# This is a combination of 13 commits.
# This is the 1st commit message:

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)


# This is the commit message nvim-tree#2:

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)


# This is the commit message nvim-tree#3:

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

# This is the commit message nvim-tree#4:

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

# This is the commit message nvim-tree#5:

fix(renderer): empty space at end of line

fixes nvim-tree#1253

# This is the commit message nvim-tree#6:

add fish performance tip to README.md
# This is the commit message nvim-tree#7:

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)


# This is the commit message nvim-tree#8:

feat: reload explorer on buf enter (nvim-tree#1265)


# This is the commit message nvim-tree#9:

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

# This is the commit message nvim-tree#10:

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

# This is the commit message nvim-tree#11:

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

# This is the commit message nvim-tree#12:

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)


# This is the commit message nvim-tree#13:

Ignore case when removing default mappings

# This is the commit message nvim-tree#14:

issue#362: File Management popup menu UI. First Iteration.

# This is the commit message nvim-tree#3:

parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

fix(renderer): empty space at end of line

fixes nvim-tree#1253

add fish performance tip to README.md

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)

feat: reload explorer on buf enter (nvim-tree#1265)

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)

Ignore case when removing default mappings

issue#362: File Management popup menu UI. First Iteration.

Workin on menu refactoring

# This is the commit message nvim-tree#4:

parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

fix(renderer): empty space at end of line

fixes nvim-tree#1253

add fish performance tip to README.md

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)

feat: reload explorer on buf enter (nvim-tree#1265)

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)

Ignore case when removing default mappings

issue#362: File Management popup menu UI. First Iteration.

Workin on menu refactoring

Working MVP of NvimTree menu. Added Readme.md with explanation of the current state of feature and DEFAULT_OPTIONS to test.

# This is the commit message nvim-tree#5:

parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

fix(renderer): empty space at end of line

fixes nvim-tree#1253

add fish performance tip to README.md

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)

feat: reload explorer on buf enter (nvim-tree#1265)

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)

Ignore case when removing default mappings

issue#362: File Management popup menu UI. First Iteration.

Workin on menu refactoring

Working MVP of NvimTree menu. Added Readme.md with explanation of the current state of feature and DEFAULT_OPTIONS to test.

Update README.md

# This is the commit message nvim-tree#6:

# This is a combination of 21 commits.
parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

# This is a combination of 13 commits.
# This is the 1st commit message:

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)


# This is the commit message nvim-tree#2:

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)


# This is the commit message nvim-tree#3:

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

# This is the commit message nvim-tree#4:

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

# This is the commit message nvim-tree#5:

fix(renderer): empty space at end of line

fixes nvim-tree#1253

# This is the commit message nvim-tree#6:

add fish performance tip to README.md
# This is the commit message nvim-tree#7:

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)


# This is the commit message nvim-tree#8:

feat: reload explorer on buf enter (nvim-tree#1265)


# This is the commit message nvim-tree#9:

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

# This is the commit message nvim-tree#10:

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

# This is the commit message nvim-tree#11:

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

# This is the commit message nvim-tree#12:

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)


# This is the commit message nvim-tree#13:

Ignore case when removing default mappings

# This is the commit message nvim-tree#14:

issue#362: File Management popup menu UI. First Iteration.

# This is the commit message nvim-tree#15:

Workin on menu refactoring

# This is the commit message nvim-tree#17:

Working MVP of NvimTree menu. Added Readme.md with explanation of the current state of feature and DEFAULT_OPTIONS to test.

# This is the commit message nvim-tree#18:

Update README.md

# This is the commit message nvim-tree#19:

updated popup-menu/init.lua

# This is the commit message nvim-tree#20:

Update init.lua
# This is the commit message nvim-tree#21:

Update README.md
# This is the commit message nvim-tree#7:

parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

fix(renderer): empty space at end of line

fixes nvim-tree#1253

add fish performance tip to README.md

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)

feat: reload explorer on buf enter (nvim-tree#1265)

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)

Ignore case when removing default mappings

issue#362: File Management popup menu UI. First Iteration.

Workin on menu refactoring

Working MVP of NvimTree menu. Added Readme.md with explanation of the current state of feature and DEFAULT_OPTIONS to test.

Update README.md

updated popup-menu/init.lua

Update init.lua

Update README.md

Done
parent 4601444
author Kiyan <yazdani.kiyan@protonmail.com> 1652514867 +0200
committer Moshe Avni <mavni@netapp.com> 1653224067 +0300

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253

fix(renderer): empty space at end of line

fixes nvim-tree#1253

add fish performance tip to README.md

feat(live-filter): add ability to live filter out nodes in the tree (nvim-tree#1056)

feat: reload explorer on buf enter (nvim-tree#1265)

chore(config): auto resize the tree by default when opening a file.

config.open_file.auto_resize is now true by default.
Breaking change for default configurations.
See nvim-tree#1275 (comment)

chore: remove custom set local implementation

Seems vim.opt_local has been fixed.
see neovim/neovim#14670

refactor: simplify opening file in new tab

fixes nvim-tree#1271. Also fixes opening a file in new tab when close_on_open was
true.

This introduces breaking change since we don't do any extra behavior
and let the buffer be opened by the tree.
The previous behavior was a bit old and i believe this should've been
fixed by now.
Reference this commit if unexpected behavior appears while opening files
in new tabs from nvim-tree.

feat: optional path argument for NvimTreeToggle and NvimTreeFindFileToggle (nvim-tree#1276)

Ignore case when removing default mappings

issue#362: File Management popup menu UI. First Iteration.

Workin on menu refactoring

Working MVP of NvimTree menu. Added Readme.md with explanation of the current state of feature and DEFAULT_OPTIONS to test.

Update README.md

updated popup-menu/init.lua

Update init.lua

Update README.md

Done

# This is the commit message nvim-tree#8:

feat(renderer): add ability to set git icons in signcolumn (nvim-tree#1242)


# This is the commit message nvim-tree#9:

feat: extension sorter (nvim-tree#1181) (nvim-tree#1264)


# This is the commit message nvim-tree#10:

Revert "nvim-tree#1253 only pad git icons when they are present (nvim-tree#1259)"

This reverts commit 90d7b8e.
fixes nvim-tree#1267

# This is the commit message nvim-tree#11:

fix(renderer): padding when git icons are after the name

fixes nvim-tree#1253
Almo7aya pushed a commit to Almo7aya/nvim-tree.lua that referenced this pull request Oct 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants