wishlist icon indicating copy to clipboard operation
wishlist copied to clipboard

JetBrains Rider like features

Open MordechaiHadad opened this issue 3 years ago • 3 comments

What? So I have made a list based on stuff i really enjoyed seeing in Rider:

  • Context Action Menu via Alt + Enter

    • Could be a really useful feature first show code actions and then user mapped actions such as renaming etc instead of remembering a command/10 million keybinds, with the ability to search mapped actions
  • Generate variable name suggestions if type is not a primitive type

  • Move function/class/struct/etc to another file using treesitter(?)

  • Alt + {button} for quick action

    • When cursor hovering on symbol function/class/variable do quick actions such as: quick delete/rename/move up/down and could be used for many other symbol specific actions
  • symbol rearranging using something like CTRL(or ALT when GUI) + Up/Down/Left/Right when cursor hovering symbol

Why? JetBrains rider and or more generally JetBrains IDEs have some of the best programmer-language supporting features which really does boost the efficiency of the programmer using whatever the programmer is using, and could be somewhat "easily" implemented considering we have LSPs and tree-sitter

Potential existing implementations: Not that I could find.

Potential pitfalls: No idea to be honest

MordechaiHadad avatar Oct 15 '21 11:10 MordechaiHadad

Context Action Menu via Alt + Enter Alt + {button} for quick action

Sounds like lighbulb/lspsaga

Move function/class/struct/etc to another file using treesitter(?)

That sounds more like a per-language lsp-specific feature since for this edit to be correct module exports/imports and other semantic things should modified too and treesitter just doesn't know that.

Anrock avatar Oct 15 '21 12:10 Anrock

Context Action Menu via Alt + Enter Alt + {button} for quick action

Sounds like lighbulb/lspsaga

Yeah but that's only a very basic feature Context Menu by jetbrains has

Move function/class/struct/etc to another file using treesitter(?)

That sounds more like a per-language lsp-specific feature since for this edit to be correct module exports/imports and other semantic things should modified too and treesitter just doesn't know that.

Yeah i agree.

MordechaiHadad avatar Oct 16 '21 16:10 MordechaiHadad

Move function/class/struct/etc to another file using treesitter(?)

Maybe refactoring.nvim?

AnatoleLucet avatar Nov 04 '21 10:11 AnatoleLucet