Some ideas from helix-like emacs #1649
Replies: 4 comments 2 replies
-
Magit is probably a bit too ambitious, indeed, but others like hydras, bookmarks and multiple file editing using grep are making a lot of sense for Helix I think! |
Beta Was this translation helpful? Give feedback.
-
Would like to also mention the |
Beta Was this translation helpful? Give feedback.
-
@MartinDrees I noticed "set mark" ( |
Beta Was this translation helpful? Give feedback.
-
I don't think most of this makes sense to implement in helix proper, especially not Magit, or Project Management. If Emacs has shown one thing, it's that there isn't a "right" or "proper" way, and people have preferences. Some folks love project and workspace management, others make do without. I think these would be an excellent target for a community effort based on an eventual extension system, however. After all, that is how all of these are implemented within Emacs. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I am using emacs (with evil-mode) as my primary editor and have actually configured it very helix-like. Emacs is quite bloated, has some performance problems and is very unfriendly to new users. I think that helix can solve these problems while also staying an editor (instead of an operating system).
Thus I want to propose some ideas for features that fit well into the selection-action mindset.
Hydras
The hydra package of emacs is actually very similar to the modes in helix. View mode and sticky view mode for example are basically a hydra.
I think that it would make sense to move the "sticky" not to the mode, but to the commands itself. Also calling a hydra in a hydra is very powerful. For example from space-mode, one could call other (custom modes).
It would be also really nice to let users write their own modes in the config file. This allows for very powerful customization in the spirit of helix without using a plugin.
Multiple file editing
Inspired by wgrep, the following workflow is incredibly powerful:
Write the output of a ripgrep-search to a buffer. Edit that buffer via multiple selection. Apply changes to all files.
I am not sure how hard this is to implement in the current ecosystem, but it would certainly be a job for an editor.
File management
A simple file manager (something like dired) should in my opinion be part of an editor. If you are editing files, you should also be able to edit directories. Ideally, you would also be able to edit the buffer and apply changes to edit directories in a chunk.
Project management
This is already implemented in some way by the file picker. I think it would make sense to move features related to project management to a mode and provide functions similar to projectile, e.g.
find-file-in-project
(this is basically the file picker)find-buffer-in-project
switch-project
search-in-project
find-directory-in-project
(with file manager)Bookmarks
Save, load and delete bookmarks to quickly jump to often used files/directories.
Magit
This would probably an ambitious project, but in my opinion this would fit very well into the selection-action model. Version control is definitely a part of editing and magit shows that if done right, people will use this instead of an external tool. Therefore it is a reasonable default.
What are your thoughts?
Beta Was this translation helpful? Give feedback.
All reactions