•  tetris11   ( @tetris11@lemmy.ml ) 
      link
      fedilink
      12
      edit-2
      16 days ago

      Cmon dude, what’s most likely to be Skynet?

      • Vim: Clearly evil, lightning fast. Relies on vimscript for any interactivity and can barely be used outside of the editor.

      • Emacs: the hippie brain child of some of the brightest minds at the MIT AI lab, funded by military contracts. Slow, but uses a near-universal language that can easily escape the bounds of the editor, (and often does (, and holy shit where did those parentheses come from. (Oh no, it’s becoming self-aware - fly you fools…!

      • Vim: Clearly evil, lightning fast. Relies on vimscript for any interactivity and can barely be used outside of the editor.

        I don’t know why you want use Vimscript for anything outside of the editor. But if that your issue, then there is Neovim. It uses Lua instead Vimscript, but what is the benefit of using Lua outside of Vim? That changes nothing.

        • It uses Lua instead Vimscript, but what is the benefit of using Lua outside of Vim?

          The only other (in fact, the first) place I’ve run into Lua is WoW plugins.

        • Lua outside of Vim has huge applications in embedded products. Dude I would kill for Lua. Do you know what we have? Common Lisp. Yeah, it’s great and fancy and all, but try adding that to your CV and applying for an embedded system job.

          • My point is, then use Lua outside of Vim. What does this have anything to do with the language used in Vim? You can use Vimscript in Vim, and still use Lua outside of Vim. So what’s the problem? It’s not like Lua gets available to you outside of Vim, just because you switch to Neovim. What do I miss here?

            • (it was mostly a joke, but) the skills you acquire tinkering your Vim to your needs using vimscript can’t be used elsewhere, whereas Emacs has the (small) advantage that at least most of one’s elisp skills can be translated to common lisp quite easily (with the joke being that common lisp really isn’t that useful, hence my Lua jealousy rant).

    • Better? Maybe!

      More efficient? Surley!

      But easier?! Hell no! Easy means you can use it without a lot of training or studying. It is self explanatory. And there is no way on earth that vim is easier than nano. I don’t need to know anything to use nano I need to check docs for hours before I can even start using vim

    • And how often does that happen in the real world?

      VIM may have been a very useful tool 20 or 30 years ago, but today it’s nothing else but a tool for one’s sense of superiority. It’s the vinyl of editors.

      If you have to type that much code in a terminal, your infrastructure is outdated. Simple as that.

      • You seem to believe that people only use the terminal if they HAVE to. I doubt anybody these days HAS to type any amount of code in the terminal, but choose to anyway. Like probably anyone else I have access to modern tools and infrastructure, but I choose to do work in the terminal because I’m more productive there. I use (neo)vim because I like it more than any other text editor I’ve used, and have no problem writing code and debugging in the terminal.

        • You’re using the terminal, because you’re used to it. It is not the better tool, it’s simply what you happen to know already.

          People who argue with productivity because of some key bindings live in the world of the 80s. You don’t just sit there and type code 12h a day, that’s not how modern software development works.

          And all those blockheads down voting me are caught up in their weird superiority complex. They are the powerful superhackers, and don’t understand that we are just highly qualified plumbers.

          • I’m actually fairly young and wasn’t around in the 80s. I graduated college with a CS degree in the past 5 years, where I was exposed to many different tools and software. What did I come out of that experience with? I like the terminal more than any IDE I had to use in any class.

            Now in the real world, we don’t always get to use our favorite tools for every task, obviously. I do need to use other, more enterprise, software from time to time for work. But whenever possible I go to the terminal because I’m faster there, and I can quickly automate things.

            I’m not saying the terminal is the best tool for every job, I’m just saying it is the best for ME. Notice I’m also not putting down other tools here. It seems to me like you might be the one with a superiority complex.

            • No, I’d argue you simply didn’t want to invest in the other tools.

              Think about it, you probably spent hours on customizing and automating vim, and then say you’re faster in that. Well, that’s called a habit.

              IDE are objectively more powerful and since you can actually see options and navigate quickly, you don’t need to memorize every obscure feature.

              All the terminal editor enthusiasts are actively holding us back, because they insist everything outside vim is garbage for enterprise and kiddies.

              If your tool of choice is actively hostile to new users for no reason other than “that’s how it’s always been, and thus it’s better”, well then you’re digging a moat to automate your gatekeeping.

              •  Chewt   ( @Chewt@beehaw.org ) 
                link
                fedilink
                3
                edit-2
                16 days ago

                vim + terminal is actually objectively more powerful than any IDE, and most IDEs include a way to pull up a terminal as a crutch for things they can’t do. In any case It seems you can’t be reasoned with. Your argument is just a strawman about what you say other people are saying.

      • VIM may have been a very useful tool 20 or 30 years ago, but today it’s nothing else but a tool for one’s sense of superiority. It’s the vinyl of editors.

        So, because you don’t understand something, it’s outdated?

        If you have to type that much code in a terminal, your infrastructure is outdated. Simple as that.

        Ok, I can see you have no idea what you’re talking about.

        • I understand it very well. And that’s exactly why I’m writing this.

          Ok, I can see you have no idea what you’re talking about.

          Then say, grandmaster delusion, what purpose does vim serve, where it is actually the best tool? Writing code? Hardly, it’s way too limited and requires a ton of upfront investment and headspace. Writing config files? Hardly, because if you write these by hand, you’re living in the 90s, that’s what Ansible, Terraform etc are for.

          You just don’t want to admit, that vim is nothing more than a habit. Muscle memory.

  • Sometimes you don’t even have the luxury of nano. Any moderately advanced Linux user should probably learn the basics of vi. Just knowing how to insert text and save it can fix a system that’s stuck in recovery. Even if it’s just to add a comment in front of a line in a config file.

      •  pedz   ( @pedz@lemmy.ca ) 
        link
        fedilink
        11
        edit-2
        16 days ago

        Not in rescue mode. If you can’t mount your root partition because something was fudged in /etc/fstab, for example, you may be stuck in recovery and depending on your distribution, it may not have nano in that minimalist mode.

        For me it also happens when I install a VM of Debian using the small image, on my dedicated server in a data center. The company hosting the server requires a special network configuration and AFAIK, there’s only vi. So i need to use the console to access the VM and from there, edit /etc/network/something with vi to setup the network. Once done I can reboot and install the rest of the software over the network, including nano.

        I’ve been using Linux for more than two decades. Before nano I was using pico, but it also required to have pine/alpine installed. So knowing the basics of vi has often been helpful over the years for me.

        Maybe it’s because I like tinkering with VMs and SBCs, and most people will not encounter situations where they don’t have nano, but it can happen. And you’ll be glad to know at least “i” and “:wq!”.

      • In a professional context, you might end up on servers that don’t have nano installed, but do have vi. Or if you’re helping out a friend on their laptop, they might not have the same software as you. Or if you often end up tinkering with random devices and/or setting up new systems it might be tedious to install the same applications every time.

        It’s basically an argument for learning the very basics of the most common editors so you have flexibility no matter where you end up. Even when you have the ability to download and install your preferred software, it’s still an extra step that might not be desirable for a variety of reasons. But if it’s just your own personal device, I see no problem with just installing whatever you prefer and running with it.

        EDIT: Personally, I find that I don’t end up using those other editors often enough to remember the abstruse commands of tools like vim, so I’m not worried about it. When it does happen, 99% of the time I can just whip out a smartphone and look up the directions for the n-dozenth time.

    • Sometimes you don’t even have the luxury of vi. Any moderately advanced Linux user should probably learn the basics of sed. Just knowing how to insert text and save it can fix a system that’s stuck in recovery. Even if it’s just to add a comment in front of a line in a config file.

    • Opposite here. I got started with Gentoo back in the day of building things from the ground up. Their tutorials all used nano and I just got used to using that. I think when I had casually tried to mess with linux previously, old Mandrake and Redhat in the '90s, I always used the GUI editors, but I also didn’t have a ton of time to mess with it and my hardware wasn’t well-supported.

    • I was Nano user and I liked it. After I learned to use Vim, I liked it more. Now when I use nano it’s frustrating to use and I can do things much faster and easier in vim 😅

  • Easy is relative. What are you trying to do? Replace a value in an yaml file? Then nano is easier. Trying to refactor a business critical perl/brainfuck polyglot script in production? Then you probably want to use vim (or emacs if you are one of those people)

    • Honestly, roll back to previous release for production and use best IDE your developers are used to on their local machines, test the fix in a non production environment then release to prod. When is editing business critical scripts in production really needed?

        • I’m a bit slow on the uptake there haha. I started with vi and moved over to nano at some point and never looked back. I can refactor code in production with the best of them. There’s still some tricks I’ve seen done in vi that amazes me that I haven’t tried to figure out in nano, but for the most part it’s fairly easy to use to do nearly anything in. Even supports color for supported files, YAML, etc.

  • Nano isn’t even that simple. Ctrl+X to quit? I guess if you use phonetic sounds to figure out how to exit a program. At least Vim uses the idea of “use what the words start with.”

    I personally use micro in the terminal, and Kate if I want a GUI to write. Vim and Emacs are fine for those who want it, I have no stakes in the editor wars beyond “I just want my program to do what I want, and I want it to be simple to learn.”

      • Meanwhile I can just use the same shortcuts every other program made in the last 40 years uses. Ctrl+Q to quit, Ctrl+S to save, Ctrl+Z for undo. If I wanted to consult a cheatsheet to relearn keyboard shortcuts, I’ll use vim and emacs.

        • To be fair, you can easily rebind all the keys to be more normal by adding a .nanorc. Though, Ctrl-Z conflicts with suspend in many terminals, so I keep that one as Ctrl-U. A .nanorc also allows turning on mouse support, changing the color scheme, etc.

    • it actually does work by default, you just probably missed how to do it in the help pages in vim. For those curious, the system clipboard is its own named register in vim (:help registers to learn more) and can be accessed with either “* or “+ depending on your how your system is configured.

      To copy a line: ”*yy or ”+yy

      To paste a line: ”*p or ”+p

      • So I need to dive into the manual to do something as basic and universal as “copy and paste”? Why not make it Ctrl+shift+c or have it shown in the info text when pressing this almost universally accepted keypairs? Or at least make it somewhat similar to this. I find it bonkers why some programs decide to just have radically different shortcuts or defaults, the complete opposite of what feels intuitive. Same with the design of some doors that need actual SIGNS on them to tell you which direction they open. Just bad design choice.

        Edit: just remembered. Same story with tmux. Want to copy something? Surprise, it’s not anything you expect it to be. Some ctrl+b + [ or some shit

    • A text editor that doesn’t need a tutor because the interface is intuitive enough that someone who has been using text editors (as a concept) for years can more or less instantly pick it up and start working without needing a tutorial to simply edit a config file.

      • a text editor that has a tutor because it’s been around for so long and it’s had so many years to establish itself with an outside control interface that’s quite literally about as optimal as it can be. Vim basically allows you to never move your hands away from the homerow keys, even when navigating and doing bulk edits. The sheer amount of gained speed and productivity you get from this combined with the amount of times you’ll have to deal with text editing throughout your life is probably going to outweight any potential learned annoyances.

        • with an outside control interface that’s quite literally about as optimal as it can be.

          Which is probably true, as long as you make one assumption- that the operator dedicates a significant amount of time to learning it. With that assumption being true- I’ll assume you’re correct and it becomes much more efficient than a Nano/Notepad style editor.

          I’m happy to concede without any personal knowledge that if you’re hardcore editing code, it may well be worth the time to learn Vim, on the principle that it may well be the very most efficient terminal-based text editor.

          But what if you’re NOT hardcore editing code? What if you just need to edit a config file here and there? You don’t need the ‘absolute most efficient’ system because it’s NOT efficient for you to take the time to learn it. You just want to comment out a line and type a replacement below it. And you’ve been using Notepad-style text editors for years.

          Thus my point-- there is ABSOLUTELY a place for Vim. But wanting to just edit a file without having to learn a whole new editor doesn’t make one lazy. It means you’re being efficient, focusing your time on getting what you need done, done.

    •  Luccus   ( @Luccus@feddit.org ) 
      link
      fedilink
      13
      edit-2
      15 days ago

      it even has a tutor

      Yes, people are just lazy. I remember when I invented a new login screen and was told it was “difficult”, “confusing” and “took some getting used to”.

      It even came with a free 100-page manual and a 4-hour master class. Some people, I tell you!

      ^This is meant more as a joke than an actual critique, even if it kind of reflects my thoughts. But ultimatly, I thought it was a funny bit.^