I’d like actual examples instead of “I work faster”, something like “I can move straight to the middle of the file with 7mv” or “I can keep 4 different text snippets in memory and paste each with a number+pt, like 2pt”, things that you actually use somewhat frequently instead of what you can do, but probably only did once.

  • @[email protected]
    link
    fedilink
    English
    11
    edit-2
    2 months ago

    Just being able to jump to the top of the file, bottom of the file, beginning or end of the line, or directly to a regex pattern match or particular character already gives me some of the same satisfaction as a video game with really tight movement controls. (I also like being able to jump to lines by number, manipulate lines by number or range, and I like being able to get to the top, bottom, or middle of the screen with one or two keypresses.)

    In the same vein, deleting arbitrary lines at a time, performing external operations only on lines that match a particular pattern, and saving macro recordings of repetitive manual changes all feel like multiplicative powerups. Heck, incrementing and decrementing with ^a and ^x feels like one more little cheat code. Bouncing on parentheses with % makes structured files easy to get around in.

    These are all things I’ve done with some regularity over the years.

    • I Cast FistOP
      link
      fedilink
      62 months ago

      Bouncing on parentheses with % makes structured files easy to get around in.

      That’s something I wasn’t aware you could do in vim. % jumps to the next parentheses character, whether ( or )? Does it work with brackets and curly braces too?

      • @[email protected]
        link
        fedilink
        English
        62 months ago

        So far as I’m aware, yes. As a C engineer, it’s also useful for jumping from #ifdef to #endif .

      • @[email protected]
        link
        fedilink
        22 months ago

        It generally works with a wide variety of delimiters. There’s a widely used plugin to make it work with even more, including language-specific keyword pairs.