11

So I'm a new CS student diving head first into programming. I've already made my choice in terms of what language to learn and indent style (bracket gets its own line 😁), but I'm having trouble choosing between vim and emacs...

Without this devolving into a flame war, could we have a discussion on the pros and cons of each editor? I'm curious to see what other developers use and their experiences with each of these editors.

Comments
  • 17
    Nano. Also, wrong choice with the braces there.
  • 1
    @hitchhiker42 I definitely feel I'm in the minority with how I use braces and white space but it is how I was taught so it has stuck with me.

    I haven't heard of nano before. Why choose that over vim/emacs?
  • 1
    So you're only choosing that the bracket gets its own line because visual studio standard does that?..
  • 2
    You don't have to chose.

    Pick the dark side. Spacemacs is the best of both worlds. The only con is that it's not completely as lightweight as vim or Emacs on their own
  • 2
    Also welcome to devRant!
  • 1
    @dontPanic I'll have to give Spacemacs a shot tonight when I get home. Looks interesting!

    Thank you for your suggestion and the welcome!
  • 3
    I support you on brackets and whitespaces here and there. I prefer my code to be more readable at glance than having less lines
  • 6
    I've always gravitated towards vi(m) because it feels simpler and lighter weight and I found emacs bloated and confusing.

    Not that vi is particularly intuitive, but once you learn the commands you need I find it quite quick to use.

    But the real reason is I chose vi way back and just never bothered to learn emacs. ;)
  • 9
    In addendum, this quote is rather fitting:

    "I've been using vim for about 2 years now, mostly because I can't figure out how to exit it."
  • 4
    VIM is more intuitive and simple to me, but try a few different editors and pick what fits you best. Vi will be available on pretty much any stock system, but that's becoming less of a factor.

    A working knowledge of a few different ones is invaluable though, even if you don't use them on the regular.
  • 10
    Don't get too attached to your choice of formatting. Many places you end up working for have their own coding standards. For instance, where I work we don't allow braces on their own line.

    Just a friendly heads-up 😁
  • 2
    Using spacemacs. It is if emacs and vim had baby and this baby has all good parts from both. :) try it your self.
  • 2
    Please don't put the opening curly brace on it's own line 😓 I'm begging you.
  • 0
  • 1
    @milkybarkid To me it's more irritating than spaces over tabs
  • 1
    @ctmalloy I get that, but why does it irritate you so much?
  • 1
    @milkybarkid It just isn't as beautiful, nor intuitive.
  • 1
    @ctmalloy I disagree, having bracing in one column to define a block makes code way more readable, you don't have to rely solely on indentation.
  • 3
    @milkybarkid We shall agree to disagree 🙃
  • 1
    @stryter I appreciate the heads up! Honestly, it's not a big deal to me where the top brace goes. Especially if I'm getting paid for my work :)
  • 1
    Try vscode.. as for the brackets.. well whatever floats your boat
  • 1
    @Shazbot311 no problem! And that's a good attitude to have lol.
  • 4
    Vim. Only because I love it.

    I'm not saying it's better or that you should use it, but you asked so I'm answering, Vim.
  • 3
    Ranked by hardcore-ness

    cat/echo is tied for first - using grep for search and sed for replace. This is truly as baller as it gets.

    ed - the most user-hostile editor ever created

    nano - because no-one used it anymore so no one can help you and there aren't any nice plugins as far as I'm aware

    Emacs - it has nyancat-mode and elisp. You could really not want for anything else. This is the people's editor, where people is defined as people willing to learn what M-x means. It will also give you RSI if you don't rebind Meta and Super. Trust me, I know from experience.

    Vi(m) - is always available when ssh:ing into another computer. Everyone should know at least a little vim even though you can open an emacs window inside a terminal.

    Atom/sublime/... You are a renaissance person, begone ye old ideas of yore. Give me something ergonomic, that is pretty out of the box, and that other non-peogrammers can use :)

    ---

    But seriously, Emacs with vim-keybindings is probably the best YMMV
  • 2
    No preference since I pretty much always use en IDE, however learning at least basic navigation, search and how to replace text using vi(m) is essential in my opinion. The reason being the fact that vi(m) and preinstalled on pretty much any unix-based OS (so it's nice for managing Linux servers). Emacs is almost never preinstalled and is a bit bloated for just editing scripts on a server.
  • 2
    Good move on the braces ;) . As others have said though you don't always get a choice...

    Personally I'm a vim-er I find it more intuitive and you don't need to be an octopus to access even the most basic commands. IDEs are a god send too but be aware that some places may force IDE choice.
  • 1
    You should know Vi(m) because it is always available on every Unix-like system. As to what you should be using, it depends on your workflow. Check both and see which suits you.
  • 1
    @quine There isn't much to help with nano. Everything you need can be found with `info nano`. And it is still widely used.
Add Comment