[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y ] [Home]
4chanarchives logo
I've decided to finally learn to use a good text edior,
Images are sometimes not shown due to bandwidth/network limitations. Refreshing the page usually helps.

You are currently reading a thread in /g/ - Technology

Thread replies: 49
Thread images: 4
File: emacs-vs-vim2.jpg (82 KB, 569x400) Image search: [Google]
emacs-vs-vim2.jpg
82 KB, 569x400
I've decided to finally learn to use a good text edior, so I'm starting a Vim vs Emacs flamewar.
I have to choose between those two (not really interested in any other, they seem the most powerful of the bunch) and I'm having a hard time seeing the exact differences.

This is what I want to accomplish:
- Be able to start it to edit regular text files with no exotic features bothering me
- Detect when I open a source file and offer various options typical to IDEs such as code completion (with popups showing relevant documentation), syntax highlight, debugging (and showing watches, breakpoints, memory inspection windows, etc) and all those kinds of fancy features.
- Be able to create and manage projects with it, for example, track which files are part of the project and which are not, project-specific hotkeys, commands, tools, etc.
- Be able to customize the editor the maximum possible without using shitty esoteric or obscure languages (looking at you elisp, not fond of bash either).

Apparently emacs would be better because I heard it is more extensible, but if vim can do the above I have no need for emacs and would prefer vim's simplicity. After all I want to use a text editor with IDE features when needed, and not anything else (I see a lof of people that do EVERYTHING in Emacs, from reading email to managing files).

So, what do you think /g/?
>>
>>54890131
I like emacs better because of how insanely customizable and powerful it is. The default keyboard setup is a pain, but that's why evil mode was made.
>>
>>54890179
But it is really that much more customizable than Vim? I sort of expect both to have pretty much unlimited rooms for expansion nowadays, but I never used any so I don't really know.

Oh, also I have absolutely no intention of using Vim different edit modes, seems like a fucking pain in the ass and I very much prefer normal hotkeys, why is the default keyboard config bad on emacs?
>>
>>54890306
Look man, why not try out both and decide for yourself. It's not the 70s anymore where it really mattered what editor you used.
>>
>>54890489
Both have huge learning curves. It will most likely take me several days to figure out if I can do what I want on either of them, so I want to know if it is possible before I start trying.
>>
The answer is emacs. The only choice is whether to use evil-mode.
>>
>>54890306
Emacs is a Lisp environment with a standard interface for manipulating text. It's almost an OS unto itself, but this gives it some incredible power. Almost everything is fully modifiable and has inbuilt documentation, you can modify even in-built functions and instantly apply the changes on the fly.

While Vim's scripting language is turing complete, it's nowhere near as powerful and vim was never meant to have a whole environment crammed into it. Things quickly get painful. You learn to use Unix and the GNU coreutils as your development environment, which also appeals to a lot of people.
>>
>>54890131
If you're looking for a really damn good text editor with little to no setup, use vim. If you want some IDE-like features, grab spacemacs. It's a pre-configured emacs distro with vim keybinding and editing but also with a lot of the more powerful emacs packages ready for you to enable.
>>
>>54890864
But really how limited is vim compared to emacs in practice? I'm unlikely to ever edit the builtins and while I very much agree with the philosophy of emacs more than I agree with that of vim, if I can do what I said in the OP in vim without too much trouble, then the advantage emacs has in customization becomes a burden for me (since it will be harder to do what I want and I get no use out of the extra power).
>>
>>54890925
Interesting, will look into it. It may be worth to learn spacemacs first and see if I like better the vim or the emacs side of it, even if it is biased towards emacs.
Later I plan on making my own config independent on the editor I choose, but this seems like a nice middle ground to start with. Is the documentation that comes with it enough to learn from the ground up or should I first start with more traditional vim and emacs tutorials?
>>
>>54890943
Put it this way: you can completely implement Vim in Emacs, but not vice versa.

If you want a program just for editing text, you will probably prefer Vim. On the other hand, if you want to live in your editor and customise the whole environment to your tastes, Emacs is the better option.
One of the things I like about Emacs is that I can bring my computing home with me wherever I go on almost any platform, I only need to clone my .emacs.d folder.

You might also consider something like Spacemacs which does a lot of the tedious customisation for you, presenting you with a set of toggles if that's all you want to concern yourself with (of course the power of Emacs is still there if you want it). It brings together lots of extensions into combined packages for each programming language, making them work nicely together.
>>
>>54891008
Do both the tutorials first at least.
Spacemacs leans heavily towards Vim by default, Emacs is just a much better environment for everything.
>>
>>54890131

Well, since I have a bunch of emacs nerds in a single thread, I got a stupid question.

Been using emacs for about 5 months and know my way around it for the most part, but I'm having trouble with completion frameworks. Currently use company with gtags backend, but I can't get function signature hints.

Is there anything I can get on MELPA or something that can give me function signatures at the point as I'm typing, similar to Intellisense?
>>
>>54891069
That's the thing, I'm not looking for a simple text editor and not looking for a OS either. I want more of an IDE.
I plan to use a text editor to edit files and code (and editing code comes with a lot of requirements for turning it into an good IDE), but I have no intention of using it for anything else. I'm fine with firefox for web-browing (yes, using the mouse), thunderbird for reading emails, spacefm for managing files, etc.

Do you think vim is powerful enough to be used as a IDE for multiple programming languages or this is already in emacs territory?
>>
>>54891120
It depends on what language you're using.

There is built in support for Lisp and C called eldoc, Python has anaconda-mode.
>>
>>54891181

>depends on what language you're using

My bad. C++. Probably should have mentioned that.
>>
>>54891143
Emacs doubles as an IDE.
>>
Vim is lighter, Vim master race reporting in
>>
>>54891143
I recommend you try spacemacs. It seems to be what you want out of the box. You don't have to use every feature of Emacs, I don't think anyone does.

I don't think Vim as a single program is enough as an IDE, it needs to be complimented by other things.
>>
>>54890131
Whats better for C?
>>
>>54891241
Not him, but how different is spacemacs from GNU Emacs?
>>
Diehard vim user here. It sounds like emacs is closer to what you're looking for. Vim is an incredibly powerful interface for editing text. It's very extensible, and the plugin community is ridiculous. You can get most of what you want from vim with some customization, but after a certain point, the differences in philosophy start to show.

The "meme" is that vim is actually a text editor, while emacs is an operating system. Emacs allows and encourages you to do everything you need to in it. Vim assumes competency with the underlying OS, and the general workflow often involves using the unix command line for many IDE features. The meme is pretty accurate really. Vim users call emacs an operating system like it's a bad thing, but I definitely see the appeal.

If you're already good at the command line or want to become a command line wizard, vim is your text editor. Otherwise, emacs provides you one cohesive interface to do everything you can possibly want inside.
>>
>>54891242
They're both from an era when C was king, so they both kick ass at C.
>>
>>54891267
It's a set of configurations for GNU Emacs, not a septate program. It's Evil based and has a lot of well configured extensions like helm and key-bindings out of the box that make it very easy to pick up and use as an ide.
>>
>ganoo/leenocks users argue about a text editor
>huge learning curve for both
Can't make this shit up
>>
>>54890131
>Vim vs Emacs flamewar
Seems to be a thing of the past these days. We are united against the common plague of proprietary editors and bloated IDEs.
>>
File: 1463700709695.jpg (311 KB, 640x1136) Image search: [Google]
1463700709695.jpg
311 KB, 640x1136
>>54891318
OP acknowledges and seems to understand that they both have huge learning curves: >>54890603. And we all understand that they
do, hence why we are arguing rather than telling him to stop being a faggot and just try both. It's a commitment, and us arguing in theory helps him see the pros and cons of each and make a more informed decision.

Plus arguing about stupid shit is fun. Where do you think you are?
>>
>>54891318
Most of us were probably not even born when the great editor war started.
This is our heritage and culture.
>>
File: text editors.jpg (26 KB, 485x323) Image search: [Google]
text editors.jpg
26 KB, 485x323
>>54891318
Emacs is the one with a steep learning curve and it's because it has more to offer and significantly more customizable.
>>
>>54891268
I'm quite proficient at the command line, but I do not like it. I don't feel like it is very efficient, despise pretty much everyone else who does know how to properly use a terminal disagreeing.
I found that most (if not all) of the GNU tools are very powerful, but I always feel like their design is not elegant enough. Too many strange features, very very shitty syntax, and it sort of forces you to memorize a bunch of shit to use them well. I'm much more comfortable with tools that have just a few easily understandable base commands/syntax, but allow them to be expanded in order to do anything, even if that means the code that does more complicated stuff gets long easily. GNU in general seems to prefer more complex base structure which makes it better for heavy users, but problematic if you do not require all that power.
That is why I'm sort of afraid towards emacs (learning lisp just to customize a text editor is a prime example of why I'm hesitant), but at the same time I feel like I would need to use a lot of not-so-pretty hack to get vim to do all I want to, which is even worse than the alternative.

Anyhow, I guess I'm better off learning the basics of both and using spacemacs until I get a better feel for both.

Thanks /g/, you have all been very helpful.
>>
>>54891388
>>54891390
>>54891400
He wants to edit text. Just use patrician nano instead of editors which assume you have tentacles instead of fingers.

>popups
Gtfo
>>
>>54891437
Nano is for plebs who feel smug because they're not using notepad.
>>
>>54890131
I'll ask here, how can I create snippets in vim like in Sublime Text ?
>>
>>54891437
>>54891454
Man, I would much rather use notepad than nano. None of the common hotkeys work, mouse does not work, etc.
I quite like pluma as a simple editor, geany isn't too bad either.
>>
>>54891484
Leafpad is more or less the libre equivalent to notepad.
>>
>>54891412
That's a good analysis. However, you're not really going to be able to escape from GNU even with vim since it relies on being part of a workflow along with other tools.

I am hugely biased because I love Lisp and wish modern computers were lisp machines, but you really don't have to learn much to use Emacs, though it does help. It even has something like a gui for customising settings variables. Spacemacs also obscures some nitty gritty details and just gets you results, which is why I'm recommending it. But first you should do the vim tutorial.
>>
>>54890131
Here's your (You)

Just try them both and see which one you like better. They're fucking free and the extensions are a google search away.

I'll never understand these fucking "make my decisions for me, 4chan" threads. There's literally zero commitment/risk on your part.


You can always go back to notepad later, fag.
>>
File: 1464730036691.jpg (9 KB, 342x342) Image search: [Google]
1464730036691.jpg
9 KB, 342x342
>>54891190

Please still be here, anon.

Google is fucking me sideways.
>>
>>54891614
Go be a little bitch somewhere else. It's better than yet another consumer recommendation or tech support thread and this thread has been pleasant so far with actual discussion rather than fanboy dick waving.
>>
>>54891641
Install semantic and enable semantic-idle-summary-mode.
It doesn't work very nicely with overloaded functions and templates though, for obvious reasons.
>>
>>54891614
It is calling learning from other people mistakes, idiot.
I could waste days trying to do something and later find out it just won't work the way I want it to. Or I could make a quick thread on /g/ that elucidates a lot of shit I would spend a long time trying to figure out by myself.
If you have infinite time go ahead and try all the alternatives, it really is the best way. But if you have limited time, optimize your search.
I just learned that there is no definitive answer, I will most likely end up in emacs and there is a nice middle ground called spacemacs which eases the learning process and gives me a overview of both vim and emacs. That saved a lot of time on my part.
>>
>>54891614
see >>54891388 faggot

>>54890131
I'm using Vim and I'm quite happy with it. It's got an unbelievably shitty default config too, but it's actually EASIER to tweak than emacs - there's a setting for almost everything, and the config language is the same as its internal "command line language". It's only on the expert level where Emacs' flexibility starts to shine.

So, Vim is easier to start with, even though its modal editing paradigm takes time to adjust to. Emacs on the other hand tries to be more than a text editor, its advantages lie in its extra flexibility and its ability to perform tasks that aren't strictly related to text editing
>>
Also, If you're thinking about using Emacs I can't recommend this guide enough

https://tuhdo.github.io/index.html

It's much better than the GNU documentation when it comes to showing off why the editor is so powerful and getting new users excited.
>>
>>54891903
Thanks, bookmarked
>>
Emacs is a bloated pile of garbage with painful keybindings. It will cause you carpal tunnel syndrome.
>>
>>54892046
>what is evil-mode
>>
I'd say pick emacs if you are/plan to become an eldergod tier poweruser. It does have a shitton of functionalities but honestly it takes a lot of investment if you want to deeply customize it.
Vim on the other hand might look complicated at first but when you get the gist of it you realize how fucking great and life-changing its functionalities are, and it is even more apparent whenever you jump back to a "normal" text editor or really any kind of text formating tool for that matter.

But as stated previously in this thread, everything you can do in Vim you can do in emacs. But even if you do pick emacs in the end, I stongly advise you to enable vim mode.
>>
>>54892046
What this guy >>54892084 said, evil mode is fucking awesome.
>>
Regardless if you pick vim or emacs, knowing the vim commands is a benefit for both. There even is a fun game to play to learn vim.
http://vim-adventures.com/
Thread replies: 49
Thread images: 4

banner
banner
[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y] [Home]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
If a post contains personal/copyrighted/illegal content you can contact me at [email protected] with that post and thread number and it will be removed as soon as possible.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com, send takedown notices to them.
This is a 4chan archive - all of the content originated from them. If you need IP information for a Poster - you need to contact them. This website shows only archived content.