aaditeynair / conduct.nvim

A project management plugin for Neovim
MIT License
64 stars 0 forks source link

Enhance DX #4

Open ansidev opened 1 year ago

ansidev commented 1 year ago

IMO, the current workflow needs enhancements. It would be better if

I'm not sure if my suggestions are better, however, please take a look at them (ideas come from VS Code)

Principal: Plugin should provide a default behavior, and the ability to be customized by users.

aaditeynair commented 1 year ago

I was a bit busy in the last week and I couldn't block enough time to address this. I apologize for that. I can see some of these suggestions being helpful but I noticed some potential issues:

  1. I can see why having automatic project saving can make things easier but I have questions about its implementation. One way to do it is to just create a project for the current directory on exit. This can toggled in the plugin setup. However, what about some directories we open just for a quick edit? Neovim is used as an IDE and a lightweight text editor. Another option is to provide some sort of pattern recognition. Like all sub-directories in this folder are projects or all folders containing a .git/ folder are projects. I feel like this might not be useful for enough people to bother creating.
  2. Each project does have a default session called default. As for loading the project of the current directory, conduct provides a the command ConductLoadCwdProject for that.
  3. I'm assuming you're talking about vim tabs. Conduct saves the sessions for each project using vim's builtin mksession. This also saves the content for tabs. As far I understand, Vim tabs are meant to be used as a window multiplexer, not to separate projects or such. I think Tmux or a terminal multiplexer is more appropriate for such a thing.
  4. I'm not sure I understand what you meant by 'context menu'. As for loading sessions, pressing Enter on the selected item on Telescope conduct projects loads the project with its last opened sessions.