[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
Vim vs Neovim vs Emacs
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: 255
Thread images: 24
File: vim3.gif (94 KB, 1122x820) Image search: [Google]
vim3.gif
94 KB, 1122x820
Argument- go!

Vim is clearly superior to everything btw. If you disagree then your birth was a mistake.
>>
>>55553603
I use ed.
>>
I u-use ee.
Pls no bully
>>
>>55553641
You da man now, dawg.
>>
>>55553603
Neovim is nice. I like XDG standards and fast software.
>>
i use neovim because it automatically lets me copy shit to my system clipboard and i dont feel like finding a package for vim that already does that
>>
>>55553655
don't speak nigger unless you're a nigger
>>
>>55553703
But I'm actual black, senpai.
>>
>>55553603
>Vim is clearly superior to everything btw. If you disagree then your birth was a mistake.
You're autistic, kill yourself. Real men use Line Editors and String Manipulation Oriented Languages, like DeviousYarn.
>>
>>55553743
blacktual ac*
>>
>>55553895
Ack.
>>
I use nano
>>
>>55553603
>2k16
>not using Atom

Tsk.
>>
>>55553603
List your plugins?
>>
btw emacs will never be as distraction-free as vim. enjoy your screen clutter emacsfags.
>>
I use nano.
>>
Notepad++
>>
>>55554618
>>55554641
Ew
>>
Vim is good, although I find pressing escape the shift+colon+w to save a bit annoying
>>
>>55553603
i use emacs
>emacs > vim
>>
Emacs has org-mode, so Emacs.
>>
55555555 getto desu
>>
55555555 getto desu senpai
>>
>>55554737
protip: remap ; to :

there's nothing you actually use semicolon for in command mode
>>
>>55555555
>>
>>55555668
>there's nothing you actually use semicolon for in command mode
that's not true, you use it to repeat f and t movements
>>
>>55554641
>not Notepad
>>
File: spacemacs.png (97 KB, 551x601) Image search: [Google]
spacemacs.png
97 KB, 551x601
>>55553603
that's cute
>>
>>55553641
Ed is the standard text editor.
>>
>>55556343
and that's bloat ware
>>
>>55557338
>emacs
>not bloatware in the first place
>>
it's just a text editor who cares lol
>>
>>55553603
IntelliJ CLion
>>
>>55554515
Can Atom handle files bigger than 2MB now?
>>
Does anyone here use org-mode?
What do you use it for? Do you have an example you could share? Also could you share your setup/config files for org-mode?
>>
>>55558923
i use it as a spreadsheet and todo list
>>
I just use notepad++ for random crap unless Its stuff from the company then I use what they tell me to.

Sorry for being a pleb.
>>
>>55553603
>Not using visual studio code
Why do you even live?
>>
>>55557348
$ time emacs -nw -Q --exec '(kill-emacs)'

real 0m0.075s
user 0m0.042s
sys 0m0.004s
$ time vim -u NONE +:q

real 0m0.922s
user 0m0.042s
sys 0m0.016s


Not that it matters since we both load copious amounts of things ontop of our editors anyway.
>>
>>55559116
>imblying i use either of those
i use nvi
>>
>>55559207
Then why are you complaining about bloat?
>>
>>55559237
im not

im just saying that saying emacs isn't bloated already is ridiculous
>>
>>55554641
Take a look at the Twitter account of the author of this abomination. He's a brain dead SJW that posts unfunny memes about how Donald Trump is a bad candidate for the president.
>>
>>55559304
Did someone get triggered?
>>
>>55553872
>String Manipulation Oriented Languages
Like Emacs Lisp?
>>
>>55559304
i'm not an sjw so i don't let author's political affiliations sway my choices
>>
>>55558444
No
>>
>>55556343
>Not using pure GNU Emacs and writing your own configuration
You're like a baby that needs everything handed to them.
>>
File: emacs-0.png (51 KB, 1364x750) Image search: [Google]
emacs-0.png
51 KB, 1364x750
>>55554574
topkek, even Vim can't get this minimal
>>
>>55559304
Donald Trump is a bad candidate though.
>>
>>55559304
All I care is about the text editor.
He could become a tranny and marry a black mexican man, I could care less.
>>
>>55555668
>there's nothing you actually use semicolon for in command mode
kek, this is the level of a Vim "pro"
>>
I support vim, though I grudgingly accept technological superiority of emacs.
>>
>>55554574
>couple of lines to remove pointless elements of the interface
Yeah, no
>>
>>55559116
Assuming that you run emacs daily and never use vim, then you probably had to get vim from the disk which caused the longer time. Run it after opening vim and opening emacs and post results.
>>
>>55559414
>he writes everything in assembly because he feels shame using work people has already done
>also, he mines his own graphite because he's not a baby that needs other people to make pencils
>>
>>55559453
;;Sizes
(tool-bar-mode 0)
(fringe-mode 0)

;; Toggling
(scroll-bar-mode -1)
(menu-bar-mode -1)


>>55559508
Ah, you were right. My bad.
$ time vim -u NONE +:q

real 0m0.115s
user 0m0.001s
sys 0m0.006s


I concede defeat.

Emacs is still pretty fast though. Vanilla Emacs definitely starts faster than most programs.
>>
>>55553700
vim needs to be compiled with clipboard suppport inorder to use it.
>>
>>55559508
Not really.

See, by default Emacs supports lazy loading, meaning it won't load any configuration files that it doesn't need at the moment. On the other hand, Vim will load everything, and distros often bundle a lot of configuration files with Vim that Vim will load every time on startup.

But like anon said, you'll have to add a lot more configuration for both editors. The only difference is that Emacs loads them lazily, and you generally only start Emacs once, unlike Vim where you load the configuration files again and again starting Vim multiple times.
>>
Should i bother setting up mail in emacs if i was too stupid to make mutt work?
>>
>>55559416
daily reminder that emacs 25 will have a graphical browser in it
>>
>>55559552
ACTUALLY no. My mind jumped to user time. Emacs still won two of those.
>>
Emacs has Asynchronous Processes.

VIMfags on suicide watch.
>>
>>55559591
Maybe? mutt is pretty old and poorly documented, so setting it up is a pain.

The only reason I use Emacs to browse my email is because I haven't found an email client that sucks less, since the only real alternatives are mutt and thunderbird.

If you do try it, I recommending using mu4e. The builtin gnus is complete shit, if only because it can't do anything asynchronously, forcing you to go get coffee while it fetches stuff.
>>
>>55559662
vim8 is getting async which is nice.
>>
>>55559689
the only big problem i see with mutt is there's no way to encrypt your passwords

then again this is easily fixed by encrypting a separate password file with openssl/gnupg
>>
>>55559717
I suggest using something like mbsync, which separates mail fetching/syncing from mail viewing.

mbsync supports using a password command, for example getting the password from an encrypted password store.
>>
>>55559552
I think that :q is closer to C-x C-c in Emacs than to M-x kill-emacs.
>>
>>55559689
Will try. Is it possible to write a shell script that opens a dedicated window with mu4e while i'm doing all the file editing stuff in a different window?
>>
>>55559698
It is, since Vim is getting nice Emacs features decades after Emacs had them.

Consider terminal emulators, which Neovim is now getting decades after Emacs had them.

Ten years from now, (neo)Vim will finally be self-documenting, and Vimmers will go nuts from the revelation.
>>
>>55559775
>vimfags can't ask their editor about the mode they're in and mode-specific keybindings it defines
>vimfags can't ask for functions based on their description
>>
Emacsfags pls no bully us vimfags
>>
>>55559772
>Is it possible to write a shell script that opens a dedicated window with mu4e while i'm doing all the file editing stuff in a different window?
Yes, but you should instead write an Emacs command that opens a dedicated window with mu4e. This also allows you to share stuff between mu4e and the rest of Emacs, for example your kill ring/registers (sort of like clipboards if you aren't familiar with them).
>>
>>55559768
Well, C-x C-c runs "(save-buffers-kill-terminal ...)". So I suppose so, but the test was more to see how quickly you can get in and out of the editors than it is to run anything in particular.

:q is faster than :q! with no edits. Try it..!
>>
>>55559835
I'm an Emacs user.
Does vim even have a command to kill itself?
>>
>>55559860
you could always send it a SIGINT i guess
>>
>>55559860
No idea. I'm an Emacs user too.
I just tested :q and :q! and picked the faster one.
>>
>>55558923
There's no point in sharing config files since it's very personal, and you don't need to do a lot to make org-mode work for you, just setting three or four variables.

I use it for all of my notes, todo list, and calendar. I also use it for outlining papers, documentation, and code that I'm going to write.

Here's a short example of adding todo items:

If I'm in the middle of doing something and I think of something I need to do, I just use the capture command, which opens up a split window where I can add the todo item. When I confirm it, Emacs will save the todo item in my task inbox and I can go back to working on whatever I was working on. Later when I'm free I can go review my task inbox and organize/schedule tasks.

The other possibility is that I'm planning some big project. I use org-mode for planning as well, since org-mode is an outliner, and I can just put task items wherever I want:

* Take over the world

** Find minions

*** TODO Buy candy for minions

** Invent superweapon

*** TODO Buy nukes


Imagine this file is a thousand lines long with TODO items nested in various places. I don't need to make a todo list because org-mode can consolidate these items into a list for me:

TODO Buy candy
TODO Buy nukes


You end up with a todo list that takes TODO items from dozens of different files, and you don't have to worry about forgetting one or which files they are in, you can do all of your task management from a centralized agenda view.
>>
post lesser-known ones!
kakoune
vis
joe's editor
>>
>>55559936
Thanks
>>
>>55559975
mg
>>
>>55559860
There is :qall!, but I'm not sure how it's implemented. Unlike Emacs, you can't just jump into the source code where a command is defined, and Vim's source code is shit.
>>
If I'm just learning haskell and python does it matter what text editor I use? I mean I'm just writing a few little programs and copying code from 'learning python'.
>>
>>55560026
>I use MicroEMACS, the best text editor ever made. And vi and GNU EMACS suck!
-- Torvalds
>>
File: received_10209487954212575.gif (813 KB, 450x302) Image search: [Google]
received_10209487954212575.gif
813 KB, 450x302
>>55553603
Lel. Nano is the best. In every way. Possible.ever.and.forever.
>>
Real programmers use cat

cat <<EOF
>>
>>55558923
I use Org mode all the time, but my actual config for it is quite small:
;; Org mode
(require 'org-install)
(require 'ob-tangle)

(add-hook
'org-mode-hook
(lambda ()
(progn
(flyspell-mode t)
(auto-fill-mode t)
(setq-default indent-tabs-mode nil)
(setq org-src-fontify-natively t)
(setq org-export-latex-listings 'minted)

;; LanguageTool setup
(require 'langtool))))


I use it primarily for org-babel when I am working my way though tough issues or devising some architecture.
I basically start little playground files where I incrementally work my way to solutions.

It also works really nicely as a configuration.

I also use it for notes when I am studying something.
>>
>>55560079
mg is a fork of microemacs.
I use it on my windows 98 SE vm, because GNU Emacs barely works, and the vm is too slow to use GNU Emacs in it,and I used mg once to fix /etc/fstab when I messed it up, and I didn't want to bother trying to load my .emacs as root.
>>
>Vim vs Neovim
>Vim is clearly superior to everything
But Anon, Neovim is better.
>>
>>55560075
https://www.emacswiki.org/emacs/PythonProgrammingInEmacs
https://wiki.haskell.org/Emacs
>>
File: kek.png (498 KB, 617x655) Image search: [Google]
kek.png
498 KB, 617x655
>>55554515
>unironically using a web browser to edit text
>>
>>55560075
Yes, since both languages are indentation sensitive, you should use an editor that understands semantic indentation.

Unfortunately, Emacs is the only one I know of that really understands indentation.
>>
in Gvim how to set default Color Scheme ??
>>
File: vs.png (5 KB, 600x315) Image search: [Google]
vs.png
5 KB, 600x315
I feel superior
>>
>>55559552
I'm not sure what you did to make vim take longer than emacs, but I don't approve.
>>
>>55560137
":colorscheme butts"
take off the colon if you want to put it in ur vimrc
>>
>>55560187
>take off the colon if you want to put it in ur vimrc
So ":colorscheme no-more-hemorrhoids"
>>
>>55556125
Not him but thanks anon, didn't know that one.
>>
>>55560112
this, it's the best

from what i've seen of the source, it seems highly modular too
>>
>>55560132
why unfortunately? Is emacs shitty in other areas?
>>
>>55555555
don't mind me

also, just use cat >
>>
>>55560265
>cat >
>not just using a magnetic needle and a steady hand
>>
time emacs -nw -Q --exec '(kill-emacs)'
real 0m0.055s
user 0m0.036s
sys 0m0.016s

time vim +n NONE +:q
real 0m0.157s
user 0m0.006s
sys 0m0.035s

time cat /dev/null
real 0m0.005s
user 0m0.002s
sys 0m0.003s
>>
Emacsfags, do you know that GNU bash has a lot of Emacs features in it, including even macros?
It blew my mind that someone bothered to add macros to readline.
>>
>>55560278
FINALLY! Someone on this board who understands me.
>>
>>55560252
Too bad that I couldn't get it to compile on termux. I have to use GNU zile if a want an Emacs that doesn't take 30 seconds to start up.
>>
>>55556343
>5 seconds to load plugins
>>
>>55559331
>>55559404
>>55559420
>>55559424
Have some self-respect you cucks.
>>
>>55560298
You mean libreadline, not Bash. readline also supports vi bindings.

Readline supports a lot of stuff, but many commands aren't bound to anything by default.

I admit that I didn't know the macro commands do have default bindings.
>>
>>55556343
I do this with Evil Mode turned on. It's pretty fucking sweet being one keypress away from a vim emacs hybrid. And Magit is the greatest git interface of all time.
>>
File: Screenshot_2016-07-13-23-29-26.png (42 KB, 600x1024) Image search: [Google]
Screenshot_2016-07-13-23-29-26.png
42 KB, 600x1024
wew lad
I made the font larger so it's easier to read.
>>
>>55561088
>10.898s
wat
>>
Acme is of course the best. Mouse Masterrace
>>
>>55553872

Real men know how to use any editor on the system, which they then use to write their own vi clone.
>>
>>55561088
what keyboard is that anon, it looks cool
>>
File: 1440443902004.png (18 KB, 325x172) Image search: [Google]
1440443902004.png
18 KB, 325x172
>arguing about which editor starts faster

>not about which one has better features or more features
>not about which one is easier to customize
>not about which one is easier to learn

For fuck's sake. This is why I remember this site being shit.

I've been using the same neovim instance/process at work for the past 2 months or so. Jesus.
>>
>not using notepad/txtedit
>>
>>55562228
Speed by the millisecond is a dick-measuring contest. When one person brags about it, everyone else will too.

>not about which one has better features or more features
Emacs has more and better features than the others. Org mode, Magit, etc...

>not about which one is easier to customize
When it comes to customization, Vim is far behind both Emacs and Neovim.
I'm not sure how Emacs and Neovim compare though.

>not about which one is easier to learn
This one is arguable either way. Emacs has a colossal learning curve, but it isn't very steep. Vim is steep, but short.
>>
File: 1448114889482.jpg (48 KB, 500x442) Image search: [Google]
1448114889482.jpg
48 KB, 500x442
>>55562328

Neovim is essentially a cleanup of vim codebase, throwing out of all of the legacy bullshit 0.001% of people use and implementing some pretty cool shit like:

* client server model based on msgpack rpc
* multi-threading for vimscript
* embedded terminal

Those are the major ones. But at the core of it's functionality it's still Vim. Just with a bit less abysmal C codebase.

I guess editors like vim or emacs are pretty complex tools and once you invest enough time - 9 years in my case - into using one or another you achieve a level of proficiency and comfiness that would be hard to reach if you switched to a different one.
>>
>>55562394
I had figured, though those three things are kind of a big deal.
Also, I heard you could script it in something besides VimScript.

>I guess editors like vim or emacs are pretty complex tools and once you invest enough time - 9 years in my case - into using one or another you achieve a level of proficiency and comfiness that would be hard to reach if you switched to a different one.
Yeah. I am a longtime Emacser here (~11 years) and, even though I use Evil for most in-buffer movement, I would miss so many things if I switched to Vim wholesale.

I could do it, but I would need a very substantial reason to do it.
>>
>>55562394
Actually, I'm curious now... What does a 9-year user of Vim's configuration look like?
>>
File: 1440442593586.jpg (16 KB, 480x360) Image search: [Google]
1440442593586.jpg
16 KB, 480x360
>>55562537
>Also, I heard you could script it in something besides VimScript.

You could do that with Vim too but in most cases it essentially amounted to using vimscript from another language.

The cool thing people are working on now for Neovim is "VimL => Lua translator" which essentially means that NeoVim will be scripted in Lua and will maintain it's compatibility with VimScript through this translator.

Pretty neat if you ask me.

>>55562552

Haven't updated this branch in a while because I'm mostly changing my work setup and that is not public, but it's something:

https://github.com/PonderingGrower/dotfiles/blob/master/.config/nvim/init.vim
>>
Lua is a neat language. I started liking it because of the crazy things I could get Conky to do.

>The config
Huh, that's a lot of bindings starting with space. It's interesting to see the conventions people have. Configurations like this are pretty much you developing an editor for yourself, and they really can grow, so it's sometimes interesting to see how others do things.

Actually, I'm not sure which editor has more configuration these days on average between the Vims and Emacs.
>>
>>55563280
Was meant to quote >>55562645
Accursed mobile viewport.
>>
>>55553603
Emacs is best, love it, our entire IT building uses it for making software
>>
>>55563324
Have you done Emacs Pong yet? (Where you start an Emacs server on a shared account and have multiple people connect to it with emacsclient and play pong for giggles)
>>
>>55554574
https://github.com/junegunn/goyo.vim
https://github.com/junegunn/limelight.vim

fag
>>
look its just emacs, theres nothing else to really talk about
>>
>>55563433
Oh, I thought Emacs pong was when you start emacsclient in a term buffer to itself and see how long you can go before it crashes.
>>
>>55565067
I thought it was just playing
M-x pong
in Emacs.
>>
I just use normal vi. I'm a sysadmin and everything has vi, so if I want to do configuration on switches and all that, vi is what I have to use, may as well be fluent in it.
>>
>>55553603
Notepad++ ;)
>>
>>55553603
if-elif chains in Python are ugly and bad style.
map keys to methods/functions with a map.
>>
nano masterrace for ssh/docker
>>
>>55553603
nano
>>
File: tidus.jpg (30 KB, 475x343) Image search: [Google]
tidus.jpg
30 KB, 475x343
>no mention of acme

you'll cowards don't even smoke unix
>>
>>55566868
literally coredumps if i run make too much with it
>>
I use Geany, or Nano when I don't have a GUI.
>>
spacemacs


if you use anything else you are literally missing out
>>
>>55553603
I use nano. :^)
>>
emacs + evil mode
>>
>>55559564
In most distros that's default, in Gentoo you come past it, in arch you encounter the problem.
>>
>>55565445
But TRAMP!
This entire thing is tab completable, and gets you inside a Docker container on a box you'd need to SSH to.
/sshx:sshbox|docker:container:/


It even works with crazy things like Org Mode code blocks (If you wanna run then remotely), writable dired (Basically, a buffer with the output of ls -la, and when you edit it and save it like a text file, the changes actually happen to the filesystem), or magit.
>>
>>55553641
niceme.me
>>
>>55559424
You could care less? So you DO care?

It's "COULDN'T care less" you retard.
>>
>>55554737
you can do ZZ to save and quit or ZQ to quit without saving.
>>
File: 1466509146942.gif (1001 KB, 640x480) Image search: [Google]
1466509146942.gif
1001 KB, 640x480
>>55559409
>>
>>55567372
I only know vim, and I'm just a beginner. How long will it take me to use spacemacs efficiently? Are there any videos that demonstrate cool features of it?
>>
>>55561282
It's termux, so it's running natively. ARM is just that slow, and maybe the built in storage is slow too.

>>55562206
ASK with the SSH layout. I downloaded it from F-droid.
>>
>>55553603
>Vim is clearly superior to everything btw

vim is a hack created for 1) teletype machines and 2) shitty keyboards.

#2 is solved by using a keyboard that's not from the early 1910s. With the Kinesis ergo, you can use navigation keys (arrow, PgUp/PgDn/Home/End) without moving your hands from their home row positions.

It's 2016. If you don't have a powerful IDE that accelerates your development, then you're doing something wrong. Honestly, most of the anti-IDE sentiment comes from a combination of not understanding their potential, not knowing how to customize them, and the alpha-geek retard belief that the harder something is, the more powerful and 1337 it must be.
>>
>>55553603
I use neovim for three reasons, essentially:

1. (The main one) It's an order of magnitude faster than vim. Even something as simple as loading a .c file takes 5 seconds in vim but only 0.5 in neovim

2. Keybindings work out of the box as I expected them to, including e.g. obscure bindings involving <Alt-x>. In vim, I have to basically hack around them by replicating the terminal's encoding for them (^]-whatever). Not the end of the world, but this shit should just work out of the box in 2016.

3. Some of the plugins I use (e.g. deoplete) don't have vim equivalents or the vim equivalents are much slower (and not asynchronous).
>>
>>55568516
IDEs are GUI garbage with shitty keybindings. They're about as retarded as MS Office.
>>
>>55568516
I don't think you understand. Vim *is* an IDE. In fact, vim is *the* IDE.

I'm a hardcore vim user and every other IDE I've tried absolutely pales in comparison to the sheer amount of features and flexibility vim gives me.
>>
>>55568585
what can you do in vim that you can't do in even meme editors like Atom.
>>
>>55568599
Well, let's start: Does atom support an undo tree? Even across sessions? (e.g. you can reboot your PC and still have full undo history available including all branches)

(I'll just keep asking questions about random things I can think of one at a time until we find something that vim can do which atom can't - that's more efficient than me trying to list everything)
>>
>>55553603
nano is goat
>>
>>55568634
It's only acceptable when you configure your stuff for the first time, and you haven't learnt any text editor (editors outside of vi and emacs families are memes.)

Do you have some serious brain damage?
Do you really need to waste space on your screen with a cheat sheet of keybindings?
>>
>>55568567
>IDEs are GUI garbage

" the alpha-geek retard belief that the harder something is, the more powerful and 1337 it must be."

While you're wasting time, I'm going to be over here creating real value.

>with shitty keybindings.

"not knowing how to customize them"

You are literally retarded.

>>55568585
>Vim *is* an IDE.

No, it isn't.

> every other IDE I've tried absolutely pales in comparison to the sheer amount of features and flexibility vim gives me.

"not understanding their potential, not knowing how to customize them"

vim is a highly-configurable text editor. Period. If you think it's an IDE, then you don't understand what the fuck an IDE is.
>>
>>55568683
>vim is a highly-configurable text editor. Period.
Sounds like you're the one who doesn't know how to configure vim or what vim is capable of.

Name any IDE feature in existence and I will show you a plugin or configuration that allows vim to do the same.
>>
>>55568621
there's no visual way to look at the undo history and it's not stored in a tree, but undo/redo is grouped unlike some editors (not one character at a time) and with the persistent-undo package the history is saved. i'm sure someone could write one but yes you win the functionality doesn't exist yet.
>>
>>55568714
So you can't undo a bunch of times, make a change, and then later redo to a newer version?
>>
>Vim
Dated and doomed. Will never be truly useful as more than a text editor, ever. As far as integrating with UNIX goes, it lives firmly placed in acme's shadow. Has a bunch of language bindings it shouldn't have (you use vimscript in the end no matter what, so why not just make vimscript better?). Doesn't actually make programmers that much more productive - used daily, it'll probably slow you down with all the menial tasks that take ages, despite the small handful of complex tasks you'll accomplish faster. Better called upon when you need it. May not be worth learning if you can grok sed and awk. Terribly slow for heavy processing, but intuitive to compose macros in.
>Neovim
Went out of scope, fast. Special snowflake everything, pull moar libraries in, add lua? Fuck man, we just wanted asynchronous behaviour without hacks.
>Emacs
Our last hope for a good editor, but improves at a glacial pace, packages 80mb of plugins that have no relevance to anyone today, has the worst C autoindent defaults ever and makes it a nightmare to actually configure them, and retains default macros and keybinds that make vim look sleek and modern for acting as fucking vi by default.
>>
>>55553603
notepad2.exe + wine
>>
>>55568714
>>55568741
Another one that I'd be interested in:

When navigating through a codebase using ctags (e.g. ^] in stock vim) or other large movement operations, does it also maintain a history/stack of locations you've visited recently and allow you to scroll through them (^O and ^I by default in vim)?

That's pretty much the #1 feature that I miss the most in every other program.
>>
If emacs had something similar to NERDTree it would be perfect. It's not superuseful, but it's comfy to have it sitting there.
>>
>>55568743
Emacs defaults to like 2 spaces per indentation level in C. I don't remember doing anything to C indentation and it just works well.

Even if you don't like it, you can easily customize it.
>>
>>55568741
>>55568756
no, undos are linear. now I'm kind of interested in writing an undo tree for Atom. anyway, I think atom-ctags does all that.
>>
>>55568757
you mean like dired?
>>
File: 1451123055614.jpg (75 KB, 600x838) Image search: [Google]
1451123055614.jpg
75 KB, 600x838
>>55559116
>>55559647
Installed emacs to test this shit out myself.
% time vim -u NONE +:q
vim -u NONE +:q 0.00s user 0.00s system 42% cpu 0.002 total

% time emacs -nw -Q --exec '(kill-emacs)'
emacs -nw -Q --exec '(kill-emacs)' 0.02s user 0.01s system 89% cpu 0.034 total

Both were loaded from the cache.
>>
>>55554737
You can map exiting insert mode to saving the file.
>>
>>55559116
What is an SSD? What is a shitty benchmark?
>>
>>55559116
Open it on a file containing 3000 lines with code folding and syntax highlighting enabled
>>
I am quite proficient in vim, dabbled in emacs a long time ago but can't be arsed to learn it. Is it worth switching to neovim? What are the advantages? Is development for neovim actually making progress?

Also, what's the best extension manager for vim? So far I still just manually copy my .vim folder.
>>
>>55570513
For me, neovim was pretty much a drop-in replacement. It's not so much a “switch” as it is simply gaining functionality / performance.
>>
>>55570489
Emacs has JIT font locking and large files aren't a big problem.
It has problems with very long lines in a file. Minified HTML pretty much kills it.
>>
>>55570513
>>55570541
As for extensions, I personally like pathogen. I have my entire ~/.vim inside a git repo, and I add plugins as git submodules (so I can clone them all out and update them in one go etc.)
>>
>>55570554
Both vim and emacs have this problem, and the reason is pretty simple: Both vim and emacs simply store files as a list of lines, where lines are not subdivided further. This is because they're both designed to be heavily line-based in their workflow (vim especially so), and because it simply works well for most code files.

A possible solution could be to subdivide long lines further (e.g. into finger trees), but I guess it's simply not a use case anybody has ever cared about enough to do so.
>>
>>55568755
How do you sleep at night?
>>
>>55568757
Ctrl-P and knowing your directory structure, pleb.
>>
Best setup to edit tex?
>>
>>55558979
Code monkey detected!
>>
>>55568477
Spacemacs maps almost all the bindings from vim so not long.

Spacemacs is also going to be far easier to learn, because it comes preconfigured, and more importantly will dynamically display help and hints at the bottom of the screen about keybindings and functions that you may want to learn.

Use vim for few weeks. Go through the built in tutorial.

Use emacs for a week. Go through the built in tutorial.

Then just install spacemacs and go nuts. It's fantastic and you keep the muscle memory from both vim and emacs layouts, which is necessary for working on servers where typically your only editor is v, and your shell always defaults to the emacs bindings.
>>
>>55571139
You can ask Emacs about keybindings if you know how to use help prefix commands and how to ask about keybindings in a specific prefix.
>>
Emacs is an amazing choice for everybody. if you dont care, dont want to put in the time or any other reason its alright. its just worth a look and please beware of RSI in pinky
>>
>>55571270
Binding caps lock to work as another control key works well for me.
>>
 # emerge -av emacs

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild N ] app-eselect/eselect-emacs-1.18::gentoo 9 KiB
[ebuild N ] net-libs/liblockfile-1.09::gentoo 32 KiB
[ebuild N ] app-emacs/emacs-common-gentoo-1.5::gentoo USE="X -games" 40 KiB
[ebuild N ] app-editors/emacs-24.5-r1:24::gentoo USE="X acl alsa dbus gif gtk3 inotify jpeg png ssl svg tiff xpm zlib -Xaw3d (-aqua) -athena -games -gconf -gfile -gpm -gsettings -gtk -gzip-el -hesiod -imagemagick -kerberos -libxml2 -livecd -m17n-lib -motif -pax_kernel (-selinux) -sound -source -toolkit-scroll-bars -wide-int -xft" 38,832 KiB
[ebuild N ] virtual/emacs-24::gentoo 0 KiB

Total: 5 packages (5 new), Size of downloads: 38,912 KiB

The following license changes are necessary to proceed:
(see "package.license" in the portage(5) man page for more details)
# required by virtual/emacs-24::gentoo
# required by app-emacs/emacs-common-gentoo-1.5::gentoo
>=app-editors/emacs-24.5-r1 GPL-3+
# required by app-editors/emacs-24.5-r1::gentoo
# required by virtual/emacs-24::gentoo
# required by app-emacs/emacs-common-gentoo-1.5::gentoo
>=app-eselect/eselect-emacs-1.18 GPL-2+
# required by app-editors/emacs-24.5-r1::gentoo
# required by virtual/emacs-24::gentoo
>=app-emacs/emacs-common-gentoo-1.5 GPL-3+

Would you like to add these changes to your config files? [Yes/No]n

More like, would you like to have a cancer? NO
>>
>>55571537
>He actually blacklists all GPL programs
holy shit the autism

hope you enjoy using absolutely no programs ever. Btw, what browser are you on?
>>
I use Suplemon. Multicursor like Sublime in the terminal. On github
>>
>>55568303
Or, maybe they legitimately could care less? And the fact they are addressing it is caring too much in their mind.
>>
File: screengrab.png (26 KB, 1920x1200) Image search: [Google]
screengrab.png
26 KB, 1920x1200
this thread has inspired me to rice my editor some more

why bother being productive when you can just play around with software all day long?
>>
>>55571578
Was obviously just a masterful bait as portage itself is GPL-2, but I'm quite surprised how little impact emerge is showing from the blacklisting, especially GPL-3. I mean, the GNU toolchain itself is in GPL-3, but it'd make an interesting project to do a GNUless system with LLVM and BSD versions of the usual systems tools.

>Btw, what browser are you on?
Webkit is BSD licensed, so surf or Midori (LGPL) for example
>>
>>55571927
>Was obviously just a masterful bait as portage itself is GPL-2
So is the linux kernel
>>
>>55568757
What about this? https://github.com/jaypei/emacs-neotree

Most people use Helm projectile for jumping to files these days, but Neotree and project-explorer both do this.
>>
>>55559414
/thread
>start feeling bloated
>want to get out
>spacemacs clusterfuck makes it impossible
>>
>>55571954
gentoo is however far more tied to GNU toolchain than it is to linux kernel itself. There's actually surprising amount of support for dropping in a BSD kernel for example
>>
>>55572024
Why use spacemacs then?
>>
>>55571909
Exactly! What's the point of writing awesome things if you can't feel cool while doing it?
>>
>>55572005
Yeah I use helm and projectile which I use all the time. That's why I said it's not very useful, it's just comfy to have it around sometimes.

Will check those out thanks
>>
File: My Emacs setup.jpg (295 KB, 2048x1536) Image search: [Google]
My Emacs setup.jpg
295 KB, 2048x1536
So, what's the craziest thing you've done with your editor of choice?
>>
Vimmer moving to spacemacs

Someone please describe your spacemacs/emacs workflow with buffers etc. Currently with vim I use a lot of tabs and splits and I cycle through tabs. It's not optimal so I don't want to replicate it.
>>
>>55553603
Vim is outdated, ugly, unintuitive shit that nobody should use. You fat fucking weeb inverse hipster retard.
>>
>>55575907
>using ffmpeg in M-x shell
>bringing Emacs to a halt by running emacsclient in M-x term and switching to the term buffer in that client
>editing svg in Emacs (it can preview svg files if you have a good compilation, official windows one probably won't support it)
>using eww to get autocompletion from Wikipedia when writing an essay (check out dabbrev, it's built into Emacs (bound to M-/ by default) and it's extremely useful)
>running Emacs 24.5 on Windows 98 SE
>reading PDFs as a reference in Emacs while programming in C
>writing, compiling and testing C++ programs all inside Emacs
>ERC (I use it constantly and it's amazing)
>crashing a vps by running Emacs inside of itself until it runs out of memory
>>
>>55576106
I forgot to mention that I wrote a macro that would decrypt a simple cipher during one class.
>>
>>55568756
:help tagstack

:tags list the stack i thing, read the manal :)
>>
>>55576433
I don't have atom installed
>>
>>55575907
I tangled and run Org Mode code blocks over a five-hop TRAMP connection.

My laptop -> Staging server -> Company NAS -> My Box -> A Docker-hosting VM -> A Docker container

The run blocks were SQL, and I tangled them to a volume mounted in the container.

SSHX is pretty boss with TRAMP. Just make sure you kill the sshx buffer for a connection if you need to reconnect.
>>
>>55570570
Emacs doesn't have this problem, since Emacs is a character editor, while Vim is a line editor.

However, if the syntax highlighting/language parsing in Emacs is line based, then the syntax highlighting will kill Emacs for long lines. Turn that off and Emacs is fine while Vim still chokes.
>>
>>55576700
>run
Ugh. *ran
>>
So... which should I use /g/?
I do mostly C/C++ programming.
>>
>>55576724
bumping for interest... Currently use a combination of Atom and XCode but know I could be doing better
>>
>>55576724
We're all just going to tell you to use our editors of choice.

That said, Emacs has nice built in support for C and C++ including things like jumping to definitions, completions, and pulling documentation, including from your systems header files.

It also comes with Flymake, which can underline errors as you type them. Though that requires a little bit of setup.
>>
>>55576011
Spacemacs has layouts and workspaces, which are horribly named.

Layouts are under SPC l and are used to separate projects. For example you work on project A in layer 1, project B in layer 2, etc.

Workspaces are under SPC l w and basically work like tabs, desktops, views, etc. You can open different files and keep different splits in each workspace, and also each layer has its own set of workspaces.

For example for layer 1 I can have file A and B open as a split in workspace 1, file C open in workspace 2, then for layer 1, I can have project B's file A open in workspace 1.

Normally, I only use one workspace per project and switch buffers using a fuzzy completion like CTRL-P. I split the window as needed. However, if I need to do something else because support is bugging be about some ticket, I can open a new workspace and work on that, and when I'm done, I can switch back to the first workspace and have the buffers and splits that I was working on back to the same state.
>>
>>55576823

Thanks man, this is whats currently keeping me from making the switch at work. Currently trying to get to grips with spacemacs by learning common lisp, and while I find it to be a very good editor I often end up confused as fuck with buffers, slime and all that stuff. The help function and documentation is pretty damn amazing though, makes it easier to overcome the hurdles imposed by the significant complexity
>>
So, when people said there was going to be a Web Browser in Emacs... I thought they were talking about Eww.

Noooope, they were talking about this optional new thingy: https://www.reddit.com/r/emacs/comments/4srze9/watching_youtube_inside_emacs_25/

Impressive the whole thing still manages to be so small.
>>
>>55553603
Vim is great because modal editing is great, and it's really snappy in every way. Emacs is great because it's so extensible and Lisp is fun to use.

At the same time, Vim can be very extensible, and Emacs has Evil mode (or other modal packages). Neither are IDEs, but with enough time and effort, you can make a kind of personalized IDE out of either one.

Whether or not Vim or Emacs is "better" is almost entirely subjective because of their similar capabilities.
>>
File: Whelp.gif (325 KB, 1400x900) Image search: [Google]
Whelp.gif
325 KB, 1400x900
>>55577387
>>
>>55577387
I'm considering compiling Emacs 25 on my computer to play around with the new web browser. It would be cool if I could have Chrome tabs inside of Emacs with bookmark syncing and everything. Maybe that's possible.

It should be easy to have multiple versions of Emacs installed at the same time, right? /bin/emacs is a symlink to /bin/emacs24.5 for me, so it should be easy.

I'm using Emacs 25 on Termux, but I can't play around with the new web browser there, because Termux doesn't have X.
>>
>>55577614
Another option is to not run "make install".

This should be enough to download and compile Emacs on a fresh-install of anything Debian-based:
su -c "apt-get install git libgtk-3-dev libwebkitgtk-3.0-dev automake"
su -c "apt-get build-dep emacs"
git clone https://github.com/emacs-mirror/emacs.git
cd emacs
./autogen.sh
./configure --with-xwidgets
make
>>
>>55577728
How does that last bit work, exactly? Is Emacs installed in the location of the git folder, or is it installed elsewhere (meaning I can safely delete the git folder)?

I would prefer Emacs is installed as normally as possible, as if I had "apt-get install"ed it.
>>
>>55577387
It's not a web browser, it's just embedding webkit. That's why it's so small, probably. If you compile it statically it'd be bigger
>>
>>55577922
Well, after you compile Emacs, a binary is made in the "src" folder. This binary, and the .el files in the Git repo are all you really need to run Emacs.

"sudo make install" simply copies them all to a place that can be run from anywhere.
>>
>>55578373
I should elaborate... The folder you compile Emacs becomes a self-contained Emacs install.

"make install" installs it in a more proper location, and "make uninstall" removes it.
>>
Wow, this actually works amazingly...
>>
>>55579058
I like how this is practically the polor opposite of Atom.
>>
>use Vim every day
>want to do something in lisp
>open emacs because slimv is awkward af
>can't do stuff like di% or f) to jump around
>I'm using a laptop so the touchpad gets int the way ALL THE FUCKING TIME switching me to another frame

And that's why I stick to Vim
But that's just because I'm very much used to vim, those keybindings are dope
inb5 evil-mode, yeah, I might use it.
>>
I do not think anyone in this thread would disagree with that
>>
>>55579176
This gave me a nice laugh.

>>55579205
>doesn't know about Evil mode (https://www.emacswiki.org/emacs/Evil)
Here's a helpful resource for Vim-users who want to start using Emacs + Evil mode: https://github.com/noctuid/evil-guide
>>
Guys I've been using vim a few years now and I'm completely out of things to customize, plugins to add, and bugs to report. Please share with me the cool obscure configurations and plugins you've recently added to vim.
>>
>>55568374
damn, thx
>>
>>55577471
Why the fuck you turn on line number for?
>>
>>55582346
That's not me, it was a GIF from the linked thread.
>>
>>55579058
Does this mean we'll be able to run JavaScript in Emacs eventually I wonder?

I also wonder what this will mean for Emacs web development tools...
>>
>>55583454
Maybe we'll have inferior Javascript mode based on that Xwidget webkit browser.
>>
>>55554574
Emacs can be run in a no window mode.
>>
>>55568556
>1. (The main one) It's an order of magnitude faster than vim. Even something as simple as loading a .c file takes 5 seconds in vim but only 0.5 in neovim

I haven't found a significant difference in speed.

>2. Keybindings work out of the box as I expected them to, including e.g. obscure bindings involving <Alt-x>. In vim, I have to basically hack around them by replicating the terminal's encoding for them (^]-whatever). Not the end of the world, but this shit should just work out of the box in 2016.

That is actually cool.

>3. Some of the plugins I use (e.g. deoplete) don't have vim equivalents or the vim equivalents are much slower (and not asynchronous).

What are the most "killer app" exclusive plugins for neovim in addition to deoplete?
>>
>>55559116
>-Q

Cheating. Nobody uses fucking vanilla emacs.
>>
>>55568755
Kek'ed irl
>>
I'm compiling Emacs 25 right now.
>>
File: 2016-07-15-11:17:16-scrot.png (578 KB, 1280x800) Image search: [Google]
2016-07-15-11:17:16-scrot.png
578 KB, 1280x800
>>55584783
The web browser barely works for me, and the screen refreshing is horrible. I hope I'm doing something wrong.
>>
>>55559116
look at this preloading faggot
>>
evil-mode!
>>
214

?

?

?
q
$


Get on my level.
>>
>>55583807
I do occasionally. I have an alias to it for quick edits or Git commits.
>>
>>55587145
Just run Emacs as a daemon.
>>
>>55553703
Don't you know he's speaking Scottish
>>
>>55583735
>What are the most "killer app" exclusive plugins for neovim in addition to deoplete?
I also use lldb-nvim. Both of these have the “killer advantage” that they run in the background therefore don't block the main thread.

One of the things I'm actually still looking for is a proper syntax highlighting plugin that also runs asynchronously. The only ones I've found are vim versions which block the main thread, so enabling full context-aware highlighting and stuff completely slows down vim to a crawl. (Instead of recomputing and updating the highlighting in the background, it's done in realtime, synchronously, on the main thread)

The next-best alternative I'm using right now is one that caches the highlighting information to an extra file and then uses vim's keyword-highlighting to highlight all of those words - the downside is that it can't distinguish between the same word used in two different contexts (e.g. if ‘foo’ is both a type and a variable, all usages will be colored the same), and it also requires me to manually update it using
:UpdateTypesFile
every now and then.

>I haven't found a significant difference in speed.
To me it makes a gigantic difference, but that's probably because I have code folding enabled, and I often work on relatively large files (2000-3000 lines of C).

Even just regular writing is near impossible with code folding enabled on stock vim on files of those size, so I need an extra plugin to disable auto-updates of code folds and recompute them only sparingly (e.g. on :w).
>>
>>55559432
>>55556125
that's why you also map , to ;
>>
>>55585191
Even though I know how to get rid of almost all of your problems with it right now. I still take >>55579058 back.
Basically, its defaults are a buggy mess, and I had a bunch of code to make it act better.

About half came from the linked thread, and the other half I wrote:
(defun xwidget-webkit-scroll-top ()
"Scroll webkit to the top of the page."
(interactive)
(xwidget-set-adjustment (xwidget-webkit-last-session) 'vertical nil 0))

(defun xwidget-webkit-scroll-bottom ()
"Scroll webkit to the bottom of the page."
(interactive)
(xwidget-webkit-execute-script
(xwidget-webkit-current-session)
"window.scrollTo(0, document.body.scrollHeight);"))

(add-hook
'xwidget-webkit-mode-hook
(lambda ()
(define-key xwidget-webkit-mode-map [mouse-4] 'xwidget-webkit-scroll-down)
(define-key xwidget-webkit-mode-map [mouse-5] 'xwidget-webkit-scroll-up)
(define-key xwidget-webkit-mode-map (kbd "<up>") 'xwidget-webkit-scroll-down)
(define-key xwidget-webkit-mode-map (kbd "<down>") 'xwidget-webkit-scroll-up)
(define-key xwidget-webkit-mode-map (kbd "M-w") 'xwidget-webkit-copy-selection-as-kill)
(define-key xwidget-webkit-mode-map (kbd "C-c") 'xwidget-webkit-copy-selection-as-kill)
(define-key xwidget-webkit-mode-map (kbd "<home>") 'xwidget-webkit-scroll-top)
(define-key xwidget-webkit-mode-map (kbd "<end>") 'xwidget-webkit-scroll-bottom)))

(add-hook
'window-configuration-change-hook
(lambda ()
(when (equal major-mode 'xwidget-webkit-mode)
(xwidget-webkit-adjust-size-dispatch))))


However, there are still problems with it. In particular, Editing textareas requires you to call "xwidget-webkit-end-edit-textarea" manually, and if you have multiple Webkit buffers open, earlier ones stop responding to input. Besides those two things, it's at least reasonably usable for an unstable newly merged incomplete feature.

Oh, also, any viewport problems you have should be fixable with "a".
>>
>>55588303
Oh by the way, yes, "xwidget-webkit-execute-script" and "xwidget-webkit-execute-script-rv" are a thing.

You can run JavaScript right from Emacs now without an inferior-process.

#+BEGIN_SRC emacs-lisp
(xwidget-webkit-execute-script-rv
(xwidget-webkit-current-session)

"[1,2,3].map(function(num){
return num * num;
}).reduce(function(x, y){
return x + y;
});")
#+END_SRC

#+RESULTS:
: 14
>>
I had an emacs dependency due to org mode

I tried ms onenote on a whim and liked it more than I expected. I now use onenote and outlook to manage notes and appointments, which eliminated most of my need for emacs and works a lot nicer for clipping information from various places.

Sometimes I wish it was as distraction free as the text editor environment though.

I'm into visual studio code for editing. The git integration is super convenient.
>>
Neovim fixes a lot of vim's historical drawbacks and is very production ready. I've been using it professionally for over a year now without issue.
>>
>>55588303
I couldn't do anything with a webkit buffer when I opened up another one, and I can't even search through them and use keyboard do basic things like selecting input boxes like I could in Conkeror.
Some ellisp might be able to fix some of the problems, but it probably won't get to the same level of usability like conkeror can do now.

There's also screen refreshing, but a composing WM might be enough to fix them. I use OpenBox without compton.
>>
What's wrong with Pluma?
>>
>>55589120
Yeah, I noticed these too.

I don't really feel like hacking together all of the browser functionality I want to be not-broken, though I do know that most of my complaints are solvable with ELISP.

Part of my problem is that I am not sure what will change before this is released for reals.
>>
>>55589179
Nothing if you are happy with it!
>>
File: 1428278551203.png (69 KB, 438x303) Image search: [Google]
1428278551203.png
69 KB, 438x303
This is probably the least heated argument thread I have ever seen
Thread replies: 255
Thread images: 24

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.