The following gif demonstrates folding:

  • HayadSont@discuss.onlineOP
    link
    fedilink
    arrow-up
    1
    ·
    17 hours ago

    Thank you for the raving endorsement and otherwise very informative reply!

    Also I have migrated from Emacs to Nvim, the reasons are purely ergonomical (pinky fatigue is a real issue) but after switching I found a jump in the way to think about an editor. Emacs is great, don’t get me wrong, and if you decide to learn Emacs I can assure you it will be the best editor you’ve used, but it still edits things at a character level, while there are concepts for matching brackets or quotes changing the text inside quotes in Emacs is very character oriented, I.e. go to start of quote, start marking, move to matching quote, delete, whereas in vim is sort of a higher level language where you say Change Inside Next Quote using cin", and expanded with some plugins you can even do srnq' to Surround Replace Next Quote with ’ (which will change the quotations on the next text from whatever to '). And that’s a lot closer to the way I think so it skips a mental step (plus it’s a lot less keystrokes and no Ctrl for my pinky).

    Hmm…, interesting. I’m still pretty new to evil-mode, but doesn’t that bridge the gap here? Btw, I don’t know why, but I wasn’t able to see for myself how cin" worked within Vim*.

    • Nibodhika@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      15 hours ago

      Yes, evil-mode would have bridged the gap, however I didn’t go emacs -> vim in one step, I left emacs back in 2017 because of pinky strain, and other ergonomic issues that made me switch keyboard layout as well (which made me lose lots of agility on emacs) and started using Pycharm for python dev, VSCode for other languages (including Markdown for note taking) and nano for system file edition. I tried some of the other suggestions here like atom, sublime, Kate, etc, but they never became my everything tool like emacs used to be. Very recently I discovered Helix, and I gave it a try and loved it, however the lack of plugin support made me have reservations on diving in. But the interaction mode is very close to vim, so I decided to give vim another go and went through a few tutorials on how to set Nvim up while refreshing muscle memory for vim movements and learning new stuff and it’s slowly becoming the everything tool that emacs once was for me.

      All of that being said, I don’t think I would use evil-mode on Emacs, the reason is that vim is made with those motions from the ground up, whereas in emacs they will be an after-thought so it will probably not be integrated enough (or more likely will require lots of configurations).

      I wasn’t able to see for myself how cin" worked within Vim*.

      It’s simple, imagine you have a line of code like so:

      my_var = "some string with spaces"
      

      If your cursor is almost anywhere on that line pressing ci" will erase the contents of inside the string and place you in insert mode, i.e. the line will look line this:

      my_var = "|"
      

      With | being the cursor in insert mode. There are other similar things, for example ca" (Change Around ") will also erase the quotes, very useful for example to change a hard coded string with a variable.