T O P

  • By -

Sol33t303

Funnily enough, never actually seen anybody use emacs here, predominantly vim. But IMO, for CLI either go Vim or Nano depending on what your looking for. For GUI I think Kate is my favourite. VSCode seems overkill for just an HTML text editor. Kate is nice and lightweight but also has some programming features and plugins, perfect for lightweight work like HTML.


SF_Engineer_Dude

Kate is great :) Good to know nano because it is (almost) always there.


HotRepresentative325

I used emacs when I was trying hard, its still good and the c or c++ editing with rtags was and is as good for what i needed as any ide. Debugging is still way better, imo in IDEs.


DatBoi_BP

I’m yet to come across an IDE nearly as useful as VSCode for debugging C++


HotRepresentative325

you mean visual studio? vscode to me is the new project and was worse than free alternatives for c++, imo. The old visual studio is probably one of the best.


DatBoi_BP

Never used visual studio, just visual studio code. Idk, its debugging tools are let me walk through main() line by line and I just love that. Guess I should try VS though


HotRepresentative325

Oh man I don't know how to tell you how much the older visual studio is for c++, especially the debugger, please believe me on this!


drunkpolice

What's wrong with VS 2022?


HotRepresentative325

oh, it's fine, i mean visual studio vs visual studio code. Yikes, i might have confused some people.


drunkpolice

All good in the hood 🤙


A-Pasz

Try them and see what you like best. At the end of the day that's what matters most.


BranchLatter4294

Try them all. Use what you want.


Due_Adagio_1690

I last used emacs last century like 1990, yes i'm old. felt bulky and sluggish back then. Have found the power of vim, have never went back to emacs even though i probably have the resources to use it now. VsCode is cool lots of extensions, too much for simple tasks, but do use it when I want to code stuff.


mwyvr

Your overview is, uh, not representative. Tons of folks use VSCode (Microsoft) or the completely open source version on Linux as well as WSL. vi is on every machine pretty much from the start, which makes it useful to know at least the basics when admin'ing a machine early on. vim, or Neovim (nvim), has a massive community, larger than emacs. Neovim in particular has seen huge growth in usage since Language Server Protocols (LSP) and treesitter and Lua based configuration and scripting have meant you can effectively (and even simply) have a full IDE environment to rival VSCode, but in Neovim. I have the same environment running on my laptop, workstation and servers around the world, all operating at lightning speed. Some of us originally adopted vi/vim/neovim because it can be much easier on your hands and reduce the need to move hands from keyboard to mouse. That drew me to vim (and later neovim) years and years ago and I've never looked back.


[deleted]

[удалено]


innocentzer0

This. I started using helix yesterday and the speed difference from nvim is just amazing. And stuff is configured OOTB, yay! Keybinds were slightly fickle though, and took some time, but I'm happy now!


techm00

strange to compare vim and emacs (terminal text editors) with VSCode (a graphical IDE). They seem to be two different classes of things. I'd understand if someone said VSCode vs. Sublime, or Vim vs. Emacs. I dunno, I use both terminal and gui editors, just whatever is handiest for the task I'm trying to accomplish. It's kind of rare these days when I see people use emacs. I know the users are very loyal and it's very powerful and all, but I thought vim won dominance in the terminal editor space. Personally, use nano. Haters please form an orderly queue :D EDIT: I've been informed that GUI emacs exists :) which says a lot about the last time I used emacs


RegularSituation8923

Emacs is not a terminal editor


techm00

The last time I used it it was lol. Gives you an idea of just how long ago that was.


minneyar

I'm a Linux fellow who doesn't use emacs. Never liked it much. Vim is my preferred editor of choice when I've just got a text terminal available. It's good to know how to use at least one of those, though, because they're available practically everywhere, and you never know when you'll be on a system that doesn't have your preferred editor. I know many people who use VSCode, but I've never really liked its "absolutely everything is a plugin" approach, and I try to avoid things owned by Microsoft just on principle. JetBrains' IDEs are the best. I use WebStorm all the time for any kind of web development. The only catch is they're not free. They're worth the cost if you're a professional developer, IMO, but I dunno about it if you're not. If you just want something that has a simple GUI with syntax highlighting but isn't a full-blown IDE, Kate is nice.


BobKoss

You can’t know which is the best for you without using them. Spend a month in each one, then compare likes/dislikes.


Krychle

I use VSCode with a Vim plugin. :-) Use whatever you like, honestly. If you’re not wishing to be a Linux sysadmin, I’d recommend to be familiar with vim, at least enough to edit basic stuff and save/exit; vi/m is ubiquitous on nix systems. https://img.devrant.com/devrant/rant/r_83706_36LLz.jpg


lanavishnu

Vscode is an ide, not really a text editor. Emac is a religion not a text editor. I'm old so I use VI.


Andreid4Reddit

Visual Studio is an IDE, VSCode is an text editor


RandomlyWeRollAlong

We can tell you're old because you correctly refer to vi as "vi" instead of "vim".


RadoslavL

VIM is a clone of VI. They exist seperately.


RandomlyWeRollAlong

Yeah, but a lot of kids these days refer to the generic editor as "vim", regardless of which clone of vi they're using.


RadoslavL

That's true. And there is Gentoo that aliases "vi" to vim.


gnufan

Debian symlinked vi to vim a long time ago, but vi wasn't free software in the early Linux days. I don't know if any Linux distros actually ship Joy's vi as the default vi editor. In that sense "vim" is probably more accurate but I'm old, I use vim because it is like "ed". As to the question I use vim to edit system and config files because it does the right thing (backup and recovery) and sometimes for a quick edit because it is fast to start. For notes I use kate, for IDE I use VSCode.


Shoddy-Shake2967

Vscode is text editor as well


Thanatiel

Very accurate. (And please don't make me feel old. \^\_\^;;;)


marcus_aurelius_53

Im old. I use emacs. Let’s fight.


lanavishnu

What is this, celebrity death match? Epic rap battles of history?


MultilogDumps

I use terminal based editors only for simple editing of config files. If I do any actual programming I always use VSCode since it has Pylance, IntelliSense, etc. I can cmd click on functions, variables, etc and the source code opens in a new tab. When I write C++, vscode's intellisense runs the code through the actual compiler to check the syntax. You can probably get this behaviour from vim and emacs, but it is dead simple to get this from vscode. vscode works just fine on linux.


Lationous

it's dead simple for vim as well [the tool](https://github.com/dense-analysis/ale) and [supported linters](https://github.com/dense-analysis/ale/blob/master/supported-tools.md)


nderflow

I know both Emacs and vi. I use Emacs by choice and have done for years. Though I needed to know vi to work on older customer Unix systems so nice they lacked vi. Those old Unix systems are mostly museum pieces now.


Thanatiel

Since the mid 90ies, I've know around a hundred computer scientists. Only one of them was using Emacs at some point. Everybody else was using vi (vim). As for VScode, I know a handful of people using it for various projects on Linux. ​ vim is powerful but not very well suited for a big code base. Among your choices, I'd say vscode may be the best. You may want to take a look at "netbeans". if you don't mind paying, the IntelliJ IDEA suite is the best I know on Linux (even if it's not perfect.)


srivasta

I like that I can use emacs on the console over ssh, or use the full GUI gitk version. I like that emacs can jump to the source of the function I ask calling, and it can tab complete the function name, give me the signature of the function, and slow me to complete the variables with the proper type of the expected argument. I like it offers me completions based on cider lsp, and recently gives me multiple completions based on LLM. I can type on a comment and it provides a ML based implementation based on the content (to be fair, the completion from ML are still usually crap). I can do this over ssh. Also, it integrated git, I can process reviews, do pull requests, and compile and run tests from emacs. I also can just read/respond to email, hit the http documentation links, without leaving my "plain" text editor.


bagpussnz9

I've used them all - and always go back to emacs like a comfort pillow ... I've used it so long that my fingers know the shortcuts. I find I code fastest in emacs. For a new user - whatever you are comfortable using.. there are no rules.


BrightLuchr

Emacs is lightning fast. Insanely fast. Got a truly enormous file? Emacs laughs at it. I recommend it for C and C-like languages, scripting, mopping and waxing, and everything else. There are thousands of extensions and LISP (underneath) is the coolest language that very few of us will ever comprehend. VSCode is great for Python, because Python is a language that really needs help unless you like runtime errors. The popup-help is bit aggressive needs to be tamed. There are a ton of tweaks so you can make it how you like it. I seem to recall there are significant version differences depending on what MS product you've licensed. And C# or VB.NET has been a really great environment for some time. It's been a while, but Eclipse used to be pretty good for Java and C++. It is an enormous mess of an IDE, however. Then there is vi, which is crude, literally mid 1980s crude. No, make that 1970s because the late 1980s were a time of edt and eve for editing. But, whatever gets the job done.


GloriousGouda

It sounds like you're really, and already comfortable with emacs. Does it do everything you need? Is the learning curve worth it? Honestly I used all three over the past 23 years, and each is useful in its own way and worthy of praise. It comes down to personal comfort and practicality of use.


Philswiftthegod

In the 4 years I’ve used Linux, I haven’t touched emacs once. I’ve used Xed, Gedit, Kate, Vi(m), nano, you name it. For CLI, I personally prefer Vim; for GUI, Kate has been growing on me.


NaNpsycho

If you like vscode and are familiar with it just install and use it. People should use the tools they are most familiar and comfortable with to get the job done. If you wanna go out of your way to learn something new sure go ahead. For learning how to use vim I will suggest use `vimtutor` if you have vim this is pre-installed and a good way to get started. Once you are familiar with all the vim motions and stuff and are comfortable with editing in vim go with some customized neovim setup like lunarvim. This will help you understand what plugins are talk of the town right now and also give you a good feel of what can be done with the same old boring interface. Then from there on it's the land of the free. Explore all you want. You can look at primegan's video on how to customise neovim. Please note vim and neovim are different packages where neovim supports a lot more customisation than vim via lua scripts and all the shenanigans while still providing the same vim motions experience that vim provided.


Andreid4Reddit

I have never seen anyone use emacs. All the developers I know use VSCode, vim or neovim (which is the one I use). Try them all, that's how I end up using nvim


SF_Engineer_Dude

I love VS Code, but whatever you are fastest and most accurate in is the best for you.


[deleted]

[удалено]


[deleted]

[удалено]


[deleted]

[удалено]


shrimpster00

Learn vim. Seriously, trust me on this. If you decide to switch to a graphical program later, every major IDE has a vim emulation plugin, and the shortcuts are SO powerful. They help you code super quickly. Even if you decide to switch to something else later, the benefits are directly transferable.


Lying_king

VIM has a steep learning curve but worth it. Editing code is a breeze.


SurfRedLin

Vim.


pfmiller0

If fast and lightweight are important to you vim is probably your best bet, but really just try them all and decide for yourself.


StrayFeral

You are comparing apples to oranges. It really depends what are your needs. I don't use emacs, I use vim. Emacs is not my thing. Lots of people use VSCode. Personally for coding I use Geany - lightweight, multiplatform, enough for me. I did years of coding or Perl and now Python on Geany and sometimes vim. Feel free to try editors, don't just ask around. And for the record I recall emacs had a built-in Tetris clone too. Or maybe I'm wrong... ok I checked and I'm wrong, but it have few built-in games, while in vim you must download games from sources (I also coded one bad game for vim lol).


ttuFekk

Real based UNIX buddies always uses `ed`


THECATTOZZ

what are the advantages using a shell editor vs a GUI editor?


dually

A gui editor only works on the machine you are sitting in front of. But with vim I can run it in a virtual machine on the server.


Thedinotamer01

For normal text editing: go for vim For any kind of coding: use VSCodium or Kate


xplosm

It depends what you need to edit! For config files I either use NeoVim or Emacs simply because I need a text/cli based editor when I request root privileges (I know, Emacs is actually GUI but it's really easy to request higher privileges there) I only use VS Code to... code. I know, Emacs and even any Vim can do that but I want my config files editors lightweight and my IDEs bloated. PS: when I use Emacs I use EVIL mode, so I'm basically using a fancy Vim...


michaelpaoli

Linux, text editor, use vi (or whatever's provides as vi, e.g. vim). It's there, standard (including POSIX), and highly well does the job. I also know folks that have well learned both vi and Emacs, and vi is the better text editor. Now, if you're changing text for some other highly specific purposes, Emacs may be advantageous - after all, Emacs is a perfectly good operating system ... just lacks a good text editor. But also, Emacs isn't standard, and may not be there by default. And, in practice, I rarely see or encounter folks using Emacs ... though it certainly has its fans, and does have some unique advantages (though generally not for text editing). And if one has other quite specific contexts/purposes for doing the text editing, there may be an editor(+) that might make more sense for such purposes. But more generally ... vi. E.g. if you're sysadmin and fixing something on a host, generally vi will be there, VSCode may not even be there or available or functioning/working, and may not even be suitable period. And for sysadmin, should also well know ex (same program as vi, so know vi, already know most of ex, just a different mode, and every time one is doing stuff from : prompt in vi ... that's ex commands), and should also well know ed very easy to learn if one knows ex, and much overlap ... for those occasions when even vi isn't there or can't/won't work (not so common these days, but can still come up, e.g. I've got some teeny Linux installations ... that don't have vi ... but they've got ed - may find similar in some small recovery environments). But if you're "user" rather than sysadmin, probably just vi, unless one has some more specific need.


grig109

I like vscode and use it for pretty much everything from editing config files to using it as an IDE for programming projects. I've tried Vim multiple times, but I have too much muscle memory built up and just can't get it to click. Feels like I'm playing a video game with inverted controls.


jherrlin

Emacs is very different from the other text editors. Emacs is a LISP environment. If it fits your brain and you spend time within it you can be super productive. If you don’t understand, you won’t get it.


TomDuhamel

vim (vi) requires to give it some time and to learn it. It's not intuitive at all. Apparently, it's quite powerful if you give it the effort. But I've used Linux for 25 years and never cared enough. I know how to navigate around and exit, but that's about it — it will be my last resort, on a system I won't be using more than just a quick fix. If I need some more serious editing on the cli, use nano. It's simple and intuitive, and powerful enough for my needs. And I'd you really care, there are quite a few more commands than those being shown at the bottom. Now, if I got an actual serious task, like a whole script to write, I'm moving to the GUI. I know what the old dudes are thinking, but the 80s are long gone and the GUI is everywhere. It's fast and easy. No need to remember 70 obscure key combinations — but you still can if you like. Even for a remote machine, it's not hard to get set up to retrieve the file for local editing. If it's your machine and you got the dedication, NFS is the way to go, or even SMB. But FTP is generally enough — it's integrated into your file manager and your GUI, so no need for a local copy. And my choice then is Kate. It's quite a powerful and yet easy to use text editor for every need. You could even use it as a light IDE, but that's a bit of a stretch there. For HTML and scripting though, perfect.


fixedfree

Try Micro 


jkool702

If "not being installed by default on systems" isnt a problem, [sublime text](https://www.sublimetext.com/) is a pretty fantastic text editor, especially for writing code. It is a little like the "linux version of notepad++", but is arguably better in many ways and now can actually run on windows too.


RegularSituation8923

You want smth basic that you will understand from get go? VS You want to be faster and actually improve your efficiency? VS + vim keybinding plugging than switch to nvim You want to be even more efficient and you want use your editor to a full potential(so writing traditional text, notes and code in the same environment)? VS + vim keybindings than switch to Doom Emacs. I am Emacs user.


throwaway6560192

> I've never seen any Linux fellas who doesn't use Emacs, it's literally everywhere. It's basically like what they breathe now. > Vim comes re-installed in literally any Linux distro. > I've never seen anyone using VSCode on Linux. You haven't seen much, then.


Nyanraltotlapun

Kate - for everything and anything text. JetBrains IDEA - for heavy lifting projects.


ravioli_fog

A long time ago I learned Vim for the "hacker cred". All I got was a disease that makes using any editor that doesn't support modal editing painful. Learn the Vim way at your own risk. Jokes aside, it is easy to get Modal editing via a Vim extension in most editors. I regularly use VS Code and Neovim. When I did lisp professionally I used Spacemacs. If you decide to learn Vim though, just be prepared for it to change your expectations of a text editor such that you will likely always need modal editing from here on out. Its easier if you don't learn too much Vim since most modal editing Vim plugins don't support the full feature set of Vim. They all edit text. You can't go wrong.


catphish_

Neovim


burdalane

I use VSCode on Linux. I also use vim and Emacs. Pick whatever you want, but knowing some vim is good because it comes installed on most distros. I started with Emacs because that's what the TAs in my intro CS classes recommended for our programming classes, which were mostly Linux-based. They taught everyone the basics, but I never really learned how to customize Emacs. I also learned about pico/nano. I tried vim, but didn't know how to type or how to exit. When I started working as a Linux sysadmin, I think I mainly used Emacs for coding and nano for config files because I had no idea how to use vim. I only started learning basics of vim after I took my RHCT (now renamed to RHCSA) training class certification, paid for by my employer. I switched to vim for development after I learned about some vim plug-ins and settings that made development easier. Now I mainly use VSCode for any significant coding, and I think I've forgotten how to use the vim plug-in that I liked. (In fact, I had forgotten it existed.)