Help me choose between those two, Sup Forums.
Help me choose between those two, Sup Forums
Other urls found in this thread:
scintilla.org
bocoup.com
exvim.github.io
twitter.com
no
both: spacemacs
choose that one
legit answer, both. I use vim for quick edits and emacs for "heavy" stuff.
Spacemacs is good to try but I'd recommend rolling your own config at least for a little while to see how it works.
just use atom
multitool vs samurai sword
Vi is easier according to Brian Kernighan e-Macs takes longer to learn!
vim user here - what are some heavy stuff emacs does that vim isn't suitable for?
But spacemacs is bloated. If I use emacs, I don't need vim, and if I use vim I don't need emacs.
>vim for quick edits and emacs for "heavy" stuff
Why? See
Has much better support for implementing "ide-like" features. I used vim for a long time, but after switching to emacs, it has much better solutions for things like code tags, project management, autocomplete, and searching. Evil mode works great as well. elisp is miles better than vimscript. Basically, I can do everything I can do in vim in emacs, but I can't do everything I can do in emacs in vim.
There's also things like being able to inline previews in latex, and other bits related to being a gui program over terminal.
sublime
> protip: /thread
I'll help. Ditch emacs. Install vim. Oh wait, you probably don't have to install vim because it's already there.
this desu
Vim supports a lot of IDE features like debugging, file management and autocompletion. You don't need much more than that anyway.
>gui program over terminal
But GUI vim exists doesn't it?
The thing about vim is that vimscript is absolute shit.
V I M
I
M
gvim is shit unfortunately. Vim's ide features in my experience always had issues for one reason or another. I never did get autocomplete working quite the way I wanted it to do.
I wish I had the patience to learn emacs
>gvim is shit unfortunately
Isn't it inconvenient to have to start up a terminal session and launch vim manually every time you want to work?
I've been using it for over 5 years and still don't think I've learned it.
I'd say it's the oposite. If you read through the Emacs tutorial you know enough to do something and you know how to use the help system as well.
I've never delved into vi(m) deep enough, nor have I read official tutorials for it, but I guess modal is a bigger difference than Emacs' approach.
I guess Kerninghan used ed back in the day, which was more similar to ex and vi.
Sublime text fag here
I tried out Spacemacs but it seems like such a pain to set up and learn
Trying out Vim at the moment and I still don't see the point when ST is fast enough
Nah, terminal vim is far better than gvim
Just do $mod+enter, "vim " and I've opened my file in vim
no its not fuck off
gvim is literally the same as terminal vim except shit like proper colors just work
Vim user here, I'm tempted to try Emacs with Evil mode. Those who already use that, how do you remap ctrl/esc keys? Vim users usually remap caps lock to esc, Emacs users to ctrl, but both? I don't want to have to reach for the ctrl/esc every time I want to use it.
b l o a t
Yeah but for example when I want to pick up where I left off, I click on my emacs icon, the GUI starts up and automatically displays the files I've been working on. This is more convenient for larger projects.
i dont use emacs but you can remap your caps lock key to act as ctrl when you are holding it down and as esc when you are just tapping it
Unpopular opinion: SciTE. I think it's great. Only thing it lacks (IIRC) is the ability to use it in a CLI.
does it do autocompletions / suggestions?
Yes
muh dik
installing
I suppose I can see how that would be convenient for larger projects. I generally only open the files I'm working on, which usually isn't too many since my projects are fairly small
the one that doesn't take forever to open.
You'll need to tweak it a bit until you like it, try my SciTEUser.properties if you want:
# Taskbar at top
if PLAT_WIN
position.left=100
position.top=100
# 800x600 window size
position.width=$(scale 800)
position.height=$(scale 600)
# Monospace default
font.base=$(font.monospace)
font.small=$(font.monospace)
font.comment=$(font.monospace)
font.text=$(font.monospace)
font.text.comment=$(font.monospace)
font.embedded.base=$(font.monospace)
font.embedded.comment=$(font.monospace)
font.vbs=$(font.monospace)
# Line numbers
line.margin.visible=1
line.margin.width=1+
margin.width=$(scale 1)
# Dynamically sized scrollbar
horizontal.scroll.width = 1
# Highlight selected line
caret.line.back=#000000
caret.line.back.alpha=20
# Press ESC to close "find"
find.close.on.find=0
Vim doesn't have a plugin that saves recently open files or something?
Gedit
already set monospace from options, that looks good though, thanks!
this
vim if you have onli cli, other than that sublime text is best so far
>nonfree nagware
>Not just hex editing the activation and nag out
>feed nigger babies SJW alert
still nonfree, it's not possible to change the source if you don't like something about it
the only session saving plugins I've ever tried in vim were horribly broken
Just use NetBeans with JVi plugin. Emacs/Vim will never be as powerfull as NetBeans :V
And yes in NetbBeans you can do everything that Emacs/Vim gives you.
Welp, I've yet to see a program from the GNU project do that.
NetBeans takes a while to start up
Same as VIM/Emacs with tons of plugins that allows you to work with huge projects.
to save your spot on any file when you quit:
au BufReadPost * if line("'\"") > 1 && line("'\"")
And it's not about how fast your IDE will start. Autocompletion in VIM/Emacs sucks and lags in bigger projects which never acured in NetBeans ;)
Emacs it is, then.
Which is too bad because I don't like bloated shit but session saving is too important.
>bloated shit
What's so bloated about it?
VIM has built in feature for session handing:
bocoup.com
It has a ton of unnecessary features besides its text editor. It really is closer to a shell or an OS than an actual text editor.
No one will pay you for knowing how to use Emacs features. Just learn linux tools that you could use in simple scripts.
Next learn how to use VIM but don't spend much time in it. All you need to know is:
+ Ctrl+v -- visual block
+ movement
+ search/replace with regexp -- right after the movement the most usefull feature of VIM
Your boss will pay you for being faster with writing repetitive code.
Then use VIM as a editor for simple scripts. Don't use it for real projects. That's just waste of time.
For bigger projects use NetBeans with JVi. It will do everything that Emacs and VIM can do + even more. You won't spend time on configuring stuff which noone will also pay for.
And if you really want to use VIM as a IDE try exvim.github.io
And they're lazy loaded. I don't see your point.
In fact, having Emacs come with things like it's own JSON parser is nice when you're programming it.
Most good companies allow you to use whichever editor you want.
notepadqq
Yes but they will pay you for code that you have created, not for time that you spend learning how to use editor.
You can waste your time learning emacs in home but if there are some many features in for example C++ to learn then spending time for learning how to create code faster is just wasted.
And don't get me wrong. VIM keybindings are great and I think they boost your productivity but Emacs is just pice of technology that waste your time. All the things that Emacs can do can be also made with comand line tools in Linux. You can use them on every system and create scripts that everyone will understand.
Then how come most programmers and sysadmins use either vim or emacs?
Emacs undo system is trash compared to Vim, that's probably my only gripe with it.
Sysadmins use VIM because they can use it through SSH and it's avaiable in almost any Linux distribution.
And real programmers use proper IDE which help them writing good, easy to read and well documented code that everyone will understand.
Today Emacs is just a meme. Deal with it. If you use it and it fits your needs than use it! But don't repeat to others that you can create better code in it than in IDE because it's a lie.
To conclude:
Emacs = waste of time
VIM = simple scripts, fixing fuckups throught SSH
Real IDE like NetBeans, VisualStudioCode, Eclipse = XXI century programmers workbanch full of tools that you will actualy need
VSCode isn't even an ide
>vim over ssh meme
Stop spewing that nonsense and consider using a setup where your editor works locally on files downloaded over ssh.
It is for example for typescript. Easy to use and has plugins that actually works without changing configuration files.
And what's so great about one in vim? The one in emacs can undo in region and requires some time to understand.
You are right. It's not the best way but when you need to configure your server right after first boot then VIM is an old friend that will help you with it ;)
And if you have better tools than can you post them? I would be glad to learn something new.
What's the best IDE for mostly writing C, assembly, and occasionally Lisp programs and Python or Perl scripts?
Short answer:
I prefer Vim, but YOU should use each of them for one month and then see what you like more. Some people hate Vim's mode changing, some people hate that you constantly have to press [Esc] in Emacs.
Long answer:
They have very different concepts.
[Vim]
Vim is all about being meta. It's like having a secretary where you can say WHAT you want instead of doing it yourself: "take the last paragraph and surround it by braces, then change the delete every second word, but ask me before deleting it. Then jump to the next paragraph and raise every number in this paragraph by one.."
It's incredibly powerful and you are lighting fast when you get beyond the noob stage, but the first two weeks are difficult and it feels weird.
All in all it's like a Ferrari:
Lightweight, fast as hell and IF you can drive it, you are the king of the road.
[Emacs]
Emacs is more the swiss army knife: you have a bugzillion different keybindings and can customize about everything. You can check your mails from emacs, you can write your own sub programs and so on..
It's more like a "normal text editor" + "a lot of funky functions".
All in all it's like a M1A2 tank:
Heavy, but versatile and there is nothing you can't do with it, you can basically live in it.
I was speaking about persistent undo history, the current Emacs undo-tree package always mangles history.
Do you have any good vim config examples?
>file searching and managing projects
>integrated debugging/compiling
That's really all I need, with stuff like auto complete, version control and session handling being nice but not mandatory.
Also, how do you deal with vim not having mouse support? I often need to select a bunch of lines and delete them quickly, which I do with mouse selection. I doubt it's faster to hjkl your way to the paragraph, select it and delete it.
C - NetBeans/Eclipse. I use Eclipse for AVR programming and it's just excelent.
ASSEMBLY - does not matter. If you need to write more than 300 lines of code in assembly then propably you should use C which will build better code than you.
Python - NetBeans
Perl - NetBeans
And if you know VIM JVi plugin will be so fucking confy that you would not go back to VIM for bigger projects.
Instalation is bit fucked because you need to install it in NetBeans package manager and then download plugin from JVi website. But it's worth it! ;)
Thanks.
>>integrated debugging/compiling
Just use d-i-{ or d-i-( which will delete all code inside block of code.
And if you don't know it before you will be gladly surprised. It works like magic ;)
TRAMP. It ships with GNU Emacs.
It's a matter of using a path like /ssh:user@host:/path/to/file to edit files remotely.
>I often need to select a bunch of lines and delete them quickly, which I do with mouse selection. I doubt it's faster to hjkl your way to the paragraph, select it and delete it.
You have different ways to make selections to go faster : lines, blocks, words, etc.
>I was speaking about persistent undo history
Well, make it clear then. I thought you were thinking about JUST undoing edits as you're working on a file.
So now I need to know how to use TRAMP in Emacs. ;)
Why not just log throught SSH and edit it remotly?
I think it's much easier. Also as a programmer you always have opened terminal which gives you much more flexibility.
>remembering a simple name scheme is too much for me
You use another instance of your editor, possibly without your config and you don't get to take advantage of the state that your editor is in.
But then, vimfags use their editor with tmux to do tiling.
It's XXI century man :D You don't have to use tmux or screen. Try terminator as terminal emulator. It gives you tilling, spliting etc.
Is using another instance of your editor something bad? As long as you can copying and paste it without using mouse it's another feature that you are missing by using emacs as editor for everything.
tmux is so much better if you use ssh.
emacs with vim keybindings.
One gotcha with emacs is it flails and shits the bed with extremely long lines of text.
Why do you compare a full bloat de with an text editor.
But in fact Spacemac is nice
$ echo .vimrc >> set shortmess+=I
I don't think that's one question. Here's what I'd ask:
1. Preferred key bindings
emacs versus vi bindings, aka mg versus vi. Of course there's also nano, god-mode, and others.
2. Editing environment
whether to use emacs, an IDE, or another thing entirely regardless of bindings
> If I use emacs, I don't need vim, and if I use vim I don't need emacs.
The only good part of vim is the modal editing. And even that has many features that work either subtly or completely different. For example, some settings are managed with set foo=bar, while others take colorscheme baz. It's just shit bolted on older shit ad infinitum. But after you know how to use it, the modal editing approach is better than anything else.
So you bring modal editing into emacs, which can already do async fuzzy search over predefined, project or arbitrary folders, invoke various tools for compiling, running, formatting, linting, autocompletion, search, version control, project management, etc. Have you seen magit? There is no decent vim alternative. And if you use spacemacs, all this stuff is baked in or just a small config change away.
>file searching and managing projects
>integrated debugging/compiling
You can run terminal instructions from within Vim:
// run a shell command
:! ls -a
// run multiple shell commands, then return when you are done
:! bash
>Also, how do you deal with vim not having mouse support?
Vim has Mouse support (you just have to enable it), but trust me when I say:
With Vim you don't NEED a mouse.
It sounds strange if you never tried it, but as I said: Vim is all about being meta. so you press a few buttons and say (with a few strokes):
-move 5 paragraphs ahead
-select this whole paragraph
-cut it
-move to line 300
-paste it
>I doubt it's faster to hjkl your way to the paragraph, select it and delete it.
No, it's much faster with keystrokes, believe it or not. It's hard to explain, but Vim has incredibly powerful keywords for text editing..
For example (regular mode):
-Press "Ctrl + F" and search for "keyword"
-Mark this line and the next two lines with the mouse
-right click
-"copy"
-click into line 300
-right click
-"paste"
-right click
-"paste"
-right click
-"paste"
Now the same in Vim:
/keyword
3yy
300gg
p
>nano
Does anyone even use nano?
I found both to be a waste of time.
Vi is still somehow useful cuz POSIX but Emacs is kinda a thing of the past. It's not comfortable enough for a modern programming (copy from stackoverflow - paste in text editor).
>modern programming (copy from stackoverflow - paste in text editor)
Is gVim worth using?
I was just giving an example. I mean idk, some people (idiots) like nano
Poor nano :(
Where can I get the spacemacs-dark color theme for vim?
Pretty much this except I'm sticking with sublime.
If you have to take an entire college course on shortcuts and inner workings of a fucking editor maybe it's not all that great after all and memorizing all that shit isn't worth the Sup Forumsentooman cred.
what are you even on about
just use atom
>Is using another instance of your editor something bad?
Yes, you're losing access to open files (which in turn makes things like dabbrev less effective) as well as losing your kill ring (previously copied things).
I vote for Vim. But it doesn't make much of difference which you choose.
Emacs integrates with the clipboard nicely unless you're still using it in terminal ALL the time.