you are viewing a single comment's thread
view the rest of the comments
[–] 1 point 3 years ago (1 child)

You raise a valid point. Personally, I used to read and write a lot of code, but I no longer do that. I still maintain a open source project, but my job no longer involves writing code that runs.

IIRC, the most useful functionality I used to use are:

  • peak/goto definitions,
  • mouse over to peak doc and type signature,
  • find usage in project,
  • refractor the name/signature of a function,
  • real time linting and quick fix.

I am quite curious on why go to beginning or end of the file useful? Also I am not sure that the basic find/replace is more useful than find usage/refactor.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 2 points 3 years ago (1 child)

    peak/goto definition

    Plugins are available for most popular languages. I rarely need to see the type of a value, and if I want to see the signature of a function, I usually want to go to the implementation as well.

    find usage

    I just use grep. I'm already in a terminal, so I have all of those features available. Since I use tmux, I just switch over to another pane and run my search there. For changing the name of a function (which is very rare), I just use sed or do the change manually with vim $(grep ...) if it's more than just a name change (usually I'm changing the signature too).

    real time linting

    I use a plugin for that, and it works really well.

    beginning or end of file useful

    Beginning of file: look for an import/constant

    End of file: add new function, or a shortcut to the last brace to jump to the start of the class/function. I try to keep files small and single-purpose, so it's usually what I want (jump to end and match braces).

    And yeah, I occasionally miss context-aware search/refactor, but again, it's so rare that it's not a big deal. I save far more time with macros than I lose doing manual renames. If I know I'll be doing a lot of that (and usually it comes in bursts), I have VSCode installed as well. But I don't launch it very often.

    My whole workflow is very command-line oriented, so using a GUI tool just gets in the way for me.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 3 years ago (1 child)

    That is valid man, we all have different workflow, hence different priorities.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 2 points 3 years ago (1 child)

    Yup, use what works. Most of my coworkers use VSCode, and I'm the oddball with ViM (though I have VSCode installed w/ ViM extension).

    Whatever you use, master it. I recommend learning some CLI editor in case you end up needing one.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 3 years ago* (last edited 3 years ago) (1 child)

    That is great advice. Vim was actually the first editor I properly learned. I find many of the keybinding very nice and useful especially for cursor movement.

    I eventually moved away from it since I find I spend more time learning it than using it. I personally dont use that many feature of a editor, I find IDE features more important to me.

    But I still have many global keybinding inspired by vim, like ctrl + jkhl;^ for cursor movement. They are absolutely essential for me at this point.

  • source
  • parent
  • hideshow 2 child comments
  • Hjkl is the one core ViM feature that I actually rarely use. I use Dvorak keyboard layout, so those keys are in an awkward location, so I use other movements instead.

    I have just enough IDE features in ViM that I don't feel the need to switch for most tasks, and if I ever did, there are plugins that fill in the gaps.

    So I guess we're just opposite sides of the same coin. :)

  • source
  • parent