• 🦄🦄🦄@feddit.org
    link
    fedilink
    arrow-up
    17
    ·
    12 hours ago

    Have been a professional software engineer for 8 years now. Have yet to find a reason to use vim for anything (other than availability of course, but if nano isn’t installed for some godforsaken reason I have other problems lol).

    • toynbee@lemmy.world
      link
      fedilink
      arrow-up
      21
      ·
      edit-2
      11 hours ago

      I’ve been in various forms of coding and administration for around fifteen years now. Despite trying lots of editors, I have yet to find a reason to use anything but vim.

      I do like obsidian for note taking.

      edit: Removed typo.

    • AntY@lemmy.world
      link
      fedilink
      arrow-up
      7
      ·
      10 hours ago

      Vim is a way more competent editor than nano. If you spend a lot of time editing files via ssh, vim is amazing. And when you get bitten by it, you’re infected. ;-)

    • Bo7a@lemmy.ca
      link
      fedilink
      arrow-up
      3
      ·
      11 hours ago

      Fair. But to a sysadmin or devops engineer availability is pretty important.

    • CubitOom@infosec.pub
      link
      fedilink
      English
      arrow-up
      2
      ·
      9 hours ago

      I used to think this way. Until I found that with emacs you can edit any file on an SSH enabled computer remotely. Meaning that not only are you no longer constrained by what the computer has installed. But you can use your personality configured editor while editing that file. It’s called tramp.

      BTW, with Emacs you can use vim key bindings evil-mode, so don’t stress about that.

      • folkrav@lemmy.ca
        link
        fedilink
        arrow-up
        5
        ·
        5 hours ago

        Tramp is more featured, but if all one cares about is being able to edit remote files using a local editor, vim can edit remote files with scp too: scp://user@server[:port]//remote/file.txt

        I tried tramp-mode at some point, but I seem to remember some gotchas with LSP and pretty bleh latency, which didn’t make it all that useful to me… But I admittedly didn’t spend much time in emacs land.

      • calcopiritus@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        7 hours ago

        You can do that with vscode too. And probably many IDEs.

        The only real reason for which you would need to use vim in such cases is if the target computer can’t run the vscode server, which I’ve never encountered yet.

        • CubitOom@infosec.pub
          link
          fedilink
          English
          arrow-up
          3
          ·
          6 hours ago

          I’m talking about not needing anything installed on the server though. Like you don’t need sudo. If the server has ssh then you can use Emacs to edit a file on it

          • calcopiritus@lemmy.world
            link
            fedilink
            arrow-up
            1
            ·
            4 hours ago

            Don’t need sudo or anything pre installed for vscode either. It will send the server to the machine via SSH and then run it automagically.

  • udon@lemmy.world
    link
    fedilink
    arrow-up
    15
    ·
    9 hours ago

    tbh, one of the essential things vim gets right for me is that it’s designed as a text editor, not (only) a code editor. I use it for so much non-code text as well, but it feels weird opening a coding tool for such things.

    • corsicanguppy@lemmy.ca
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      20 minutes ago

      It’s great to use an editor designed and built when vietnam and leaded gas were all the rage.

  • Lettuce eat lettuce@lemmy.ml
    link
    fedilink
    arrow-up
    10
    ·
    10 hours ago

    I plan on moving to a nice Neovim setup eventually, but VSCodium is so convenient out of the box for a baby developer like me.

    • Integrate777@discuss.online
      link
      fedilink
      arrow-up
      4
      ·
      edit-2
      9 hours ago

      You’ll be glad to know that the difficulty comes from the syntax and very little from any programming skill level. You learn new ways of writing certain code structures like indented curly braces for example. Programming python might be easier than cpp in vim, not due to the language, but just cpp having more complex syntax to type.

      Tldr, almost exactly the same amount of effort whether you’ve been coding for two weeks or two years.

    • Nester@feddit.uk
      link
      fedilink
      English
      arrow-up
      4
      ·
      10 hours ago

      Just out of interest, what are the reasons someone would move from neovim to helix?

      • lime!@feddit.nu
        link
        fedilink
        English
        arrow-up
        6
        ·
        edit-2
        8 hours ago

        i have sort of done this. the main thing is that the reversed object-verb command model just… latches onto your brain. this is from kakoune of course, but it just makes a lot of sense coming from vimland. multicursor is also nice because it removes some modes, meaning there is less state to keep in your head. finally, the plug-and-play nature of helix means you can have an lsp-enabled environment from the word go, with no configuration.

      • count_duckula@discuss.tchncs.de
        link
        fedilink
        arrow-up
        6
        ·
        10 hours ago

        I switched after development ended on the package manager I was using on neovim. I didn’t at that moment want to simplify my vimconfig, so I looked into helix.

        Helix highlights the action you take, so if for example, you are deleting 5 lines, you select the lines first then hit delete. Sometimes the vim actions end up taking fewer keystrokes though. And I still prefer some ways vim does things. And I don’t always agree with the kakoune inspiration of helix (I haven’t used kakoune, just going by what the docs say) - for example, movement always selects text which I then have to unhighlight.

        But the biggest reason I stuck to helix was sane LSP defaults out of the box with minimal config. I was tired of having to fix LSP related bugs in my vim config after package updates.

        TLDR: saner defaults for helix + lazy to fix my bloated vimconfig.

      • fxomt@lemm.ee
        link
        fedilink
        English
        arrow-up
        5
        ·
        9 hours ago

        Immediately after you install helix, you can start working, no config required. It’s really nice.

        It also has OOTB LSP, unlike in neovim where you have to setup manually for each installed LSP, helix just detects it. I also personally think it has better keybinds than neovim.

        But it still doesn’t have a plugin system, and it’s quite opinionated. They’re both amazing, and great options. Just depends on what you want in an editor; customizability, or do you want it to just work.

        • Nester@feddit.uk
          link
          fedilink
          English
          arrow-up
          4
          ·
          8 hours ago

          Personally, I love to tinker (especially on my main machine) so I don’t mind the complexities of setting up neovim. However, I do mess around with a bunch of servers, and I like to edit code on those servers, meaning I am often installing/compiling neovim and copying over my config before I can get to work.

          What I am liking about helix is the idea that its default setup has what I need to get started straight away.

          I am looking forward to giving helix a go.

          • fxomt@lemm.ee
            link
            fedilink
            English
            arrow-up
            3
            ·
            8 hours ago

            So do i :) but i think helix is especially powerful with nix, for example. instead of having 5 compilers, lsps and such installed, you can create a nix flake for your project and it’ll install all that stuff for you. But for neovim you’d have to manually configure those LSPs in your config, so it is kind of just pointless anyway. But helix automatically loads all your installed LSPs, no config required. I love that about it, but neovim has grown on me.

            Plus, helix’s keybinds are amazing, even better than neovims. God i miss it.

    • 1984@lemmy.today
      link
      fedilink
      arrow-up
      4
      ·
      9 hours ago

      I switched to zed too. It’s not perfect but it’s just nice to use a different editor that is not sluggish.

  • dejected_warp_core@lemmy.world
    link
    fedilink
    arrow-up
    7
    ·
    7 hours ago

    I would argue that vim is fantastic for a lot of editing and coding tasks, just not all of them.

    Where it utterly fails is with deep trees of files in codebases, like you see in Java or some Javascript/Typescript apps. Even with a robust suite of add-ons, you wind up backing into full-bore IDE territory to manage that much filesystem complexity. Only difference is that navigating and managing a large file tree w/o a mouse is kind of torture.

    • ivn@jlai.lu
      link
      fedilink
      arrow-up
      9
      ·
      6 hours ago

      Fuzzy finding really shine for this use case, no need for a mouse.

    • murtaza64@programming.dev
      link
      fedilink
      arrow-up
      3
      ·
      6 hours ago

      Once I got used to single-directory filetree browsing plus fuzzy finding, I have never been able to comfortably use a traditional filetree anymore. most of them are not designed for efficient keyboard use (vscode and intellij at least) and don’t really help understanding the structure of the project imo (unless there arent that many files). For massive projects I find it easier to spend the initial effort of learning a few directory names and the vague structure using oil.nvim, and then eventually I can just find what I need almost instantly by fuzzy finding.

    • expr@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      3 hours ago

      File-based navigation is often inefficient anyway (symbolic navigation is much better when you can), but if you do need it, that’s what fuzzy finders are for. Blows any mouse-based navigation out of the water.

      The only time a visual structure is useful is when you are actually just interested in learning how things are structured for whatever reason, but for that task, tree works just fine anyway.

  • Bysmuth@lemmy.zip
    link
    fedilink
    English
    arrow-up
    7
    ·
    11 hours ago

    Code and intellij have plugins available to use vim keybindings on them. I like this approach to get the best of both worlds

  • TrickDacy@lemmy.world
    link
    fedilink
    arrow-up
    6
    ·
    9 hours ago

    It always surprises me how complicated some of the editor tooling sounds in threads like this. Obviously once you learn how to use these things they are powerful, but how do people have the patience to deal with all of that in the beginning? This is coming from a guy who writes scripts constantly to avoid doing tedious, error-prone things.

    Also I keep seeing people say vscode is slow. One of the reasons I switched to it is that it’s insanely fast compared to other editors I used (even those with far-inferior featuresets) 🤷‍♂️