-
-
Notifications
You must be signed in to change notification settings - Fork 49
[feature] universal fern #402
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
Comments
Hi I thought that PR is enough to bring back the universal fern. What is missing here? I am willing to help on the coding side if any gap need filled. |
At that time, there is no right side drawer. That's why the PR probably does not support it. |
Hi Alisue, can you take a look at the PR? The main idea is to preserve a global copy of fern instance and always retrieve it for all the buffers. But I am not sure how vimscript handle the assignment of buffer local variable. If it is a deep copy, then maybe I need to find another way to avoid unnecessary memory wasting. |
Looks like we are allowing both left and right drawer displayed in the same window. I am not understanding the purpose of that. But following this design choice, I create a new PR to treat the left and right drawer as two separate things. We will have one universal drawer on the left and another one on the right. Personally I think the What do you think about it? |
Because fern is not just a file explorer but a general purpose tree viewer. User may want to see JSON structure or vim-iced-fern-debugger or whatever on the right side, addition to the file explorer on the left side.
If the behavior is an opt-in feature, I think it's fair enough. However, that's a bit out of the topic so the PR should be separated if you'll do it. |
Wow, great to hear that Fern can do so many things! Still I think, drawer concept is a little confusing to me. The reason why I discuss drawer here is because that I feel like current code has many hardcode parts to handle My understanding is that the difference between a drawer and a Fern tree is that a drawer is unique per tab, thus it can be toggled and its content can be perserved. Is that correct? Should we just introduce a type of Fern tree called For the new tree, it can be
|
I'm sorry but I couldn't find the benefit of your suggestion. "Making two options generic" is not enough for me to apply massive changes to the current code. |
Yeah not much actual customer benefits, it is more of a refactoring so that we can support more cases easier. But I understand the return on investment for this work is very uncertain and we do not need to proceed unless you are seeing a clear benefit. |
Hi Alisue I am thinking to introduce a feature, it looks like this. When you open a drawer, it will stay opened in other tabs. When you close a draw, it will stay closed in other tabs. For example, This feature makes fern behave similar to sidebar for file tree in some IDEs. How do you like it? |
It's interesting but a bit different from the feature described in this issue I think. Please create a new feature request for clarify the feature. |
I would like to see an universal fern similar to what is in this PR
We will have essentially one fern across all the buffers for this vim instance.
The text was updated successfully, but these errors were encountered: