Emacs sucks. Vim is so much better. And vscode is okay.
Go ahead. Down vote me. I don’t care. This isn’t Reddit lol.
Vim is a pain to configure
Try Lunarvim, it’s neovim with a bunch of great Plugins and configuration settings out of the box.
I’m going to give what I’ve realized newer folks to Vim think is a scorching hot take: VimL is nice. Theyre the same editor commands you use in your day to day life, even if you’re using NeoVim + Lua, just all written out in a file.
That said, using NeoVim + Lua makes it far easier to organize your config, which also makes it easier to write more complex configs. It’s like the difference between building a shed around back for your home office vs building a cathedral. Its fine to work in a shed, but once you know you can build a cathedral, you’re kinda tempted to just up and do it
Vim has vim9 script now which is very similar to common scripting languages like Typescript.
Vim also doesn’t need tons of configuration.
Fennel > Lua > VimScript
At first maybe. But when you get your vim config well honed over time you’re good. Plus there’s things like pathogen or other frameworks to add plugins and stuff.
Vim sucks, Emacs is the best editor in the world
Nuh uh!!! Vim is better! So much better!!! Emacs sucks balls!
I use vscode with vim key bindings. It’s amazing!
Removed by mod
I use both emacs and vim, each have their own use cases
stock emacs sucks, doom emacs ftw
This isn’t Reddit lol.
Genuinely curious what you think the difference is
sigma vim user
Omega neovim user
gigachad ed user
enlightened echo user
My serial killer trait is that I use vi instead of vim cause I’m too lazy to type the extra character. Tho if for some reason, vi tab completed to vim, I’d probably use vim
alias v=vim. There, just saved you two keystrokes.
{
vi
} = 2 {vim
} = 3 {v=vim
} = 5I’d need to run vi at least 5 times to have a net gain in saving keystrokes. I’m typically in effemerial systems created by the users of our env, so rarely am I going to gain those strokes back
But also, why am I trying to apply logic to this? I’ll often cat a file before editing it. This shit is just illogical idiosyncrasies I’ve picked up over the years. I’m probably creating posthoc justifications for insane things I do cause it’s hard to override muscle memory
effemerial is new to me
Here’s a link I found that might be good if you are interested in more:
https://cloudnativenow.com/topics/ephemeral-idempotent-and-immutable-infrastructure/
https://guymorton.medium.com/persistent-and-ephemeral-infrastructure-as-code-in-aws-42b33939dcf1
There are different levels of effemeriality. The simplest example I use daily would be an autoscaling group in AWS. Especially if you use Spot Instances to save money, thi gs may scale in and out whenever.
So if a development team creates a new autoscaling group and I need to get into an instance to test something, unless I add stuff to their IaC, I’m stuck with their configuration. I need to assume that every time I ssh into one of those instances, it’s a brand new instance. But it’d be a big challenge for me to go to their repo and make a PR to alias a command whenever an instance in that resource is created
Stuff can be even more temporary if it’s something like an ECS task which creates a container with a read only filesystem only when a task is needed to be done. But I don’t want to get too deep in the weeds (or deeper than I already have)
terraform workspace will at least stick around for a while so you might be in and out of the same system multiple times.
I use nano.
Nano >> vi/vim, emacs
4 letters < 2 letters.
vi forever.
Simplicity > Complexity
Not if you need any work done.
That’s when you switch to a IDE.
Neovim and emacs are IDEs.
Yes, if you can remember the shortcuts…
M-x IDE
By default they are not, but you can turn them into IDEs. In fact, you can turn them into better IDEs than stuff like IntelliJ or Visual Studio will ever be.
Nano is the best when you just need an editor, you can as well use an IDE instead of vi(m) or Emacs.
Ok but why use nano when micro literally exists
Alias?
Aliases are just bloat! You can do just fine without them. Heck, why not remove the ASCII conversion and read everything in hex or binary?
It’s all about SPEED and efficiency here!
I’m in DevOps so I’m in a lot of effemerial systems so in practice, I will run into systems where profile hasn’t been set up. Tho I do like the idea of making sure all systems properly have that aliased cause it’d be serial killer vibes to spend hours of time to make sure that I can save a keystroke.
Tho it’d never make it through PR. Also, wild require explaining to my coworkers that I do this
Most all distros alias
vi
tovim
already, so it makes no difference.I’ll have to check tomarrow if RHEL and UBI do this.
Did some quick googling and looks like cent has that alias by default but doesn’t do it when root. Which would explain why I do get inconsistent results with vi. I never thought about it in detail besides just knowing that there are some visual changes. Thanks for the info, I’ll be noticing this now that I know!
Vi is totally fine to quickly make small changes to e.g. a config file on a server. I wouldn’t like to program in vi though.
I do most of my programming in vscode but when I need a cli editor, I use vi
You are missing out! I used to only use vim to edit config files. So I knew my way around (albeit, slowly). I installed the IdeaVim plugin a week ago and learned some new key bindings I wasn’t using. A week in I’m almost faster than before! And it’s only going to get better after I’ve acquired muscle memory (I’m nearly there.) and move on to complex key bindings/sequences. Then it will probably be as if the cursor is directly connected to my mind. I’m hopeful because I’ve seen a mentor of mine do it.
deleted by creator
What am I missing out on? I use vi to change values in files on servers. What would you use for that task? Most of my other text-based work like writing Emails, taking notes or programming happens in Emacs.
I don’t think you understood what I said. I started using vim key bindings ALSO in my IDE and my speed improved because of it. I didn’t ask you to stop using vi. I merely suggested that you used MORE of it. If your Emacs setup already use vim keybindings that’s exactly what I’m doing too.
Oh thanks, now I got it. I agree, vi/vim bindings are awesome. I use them everywhere, in Emacs, in my shell, my browser, and in my tiling window manager. When I said, that I wouldn’t want to program in vi, I didn’t mean that because of the keybindings, I meant that because vi just lacks many useful features for programming and you can’t add plugins to it. I have programmed in Neovim for over a year though. Just switched to Emacs, because it has even more features, possibilities and customizability. I will never drop Vim keybindings though.
Awesome! How did you get them in the shell and browser? Now I am also curious.
I use the fish shell. In fish, you can just add
fish_vi_key_bindings
to your config file and now Vi bindings will be automatically enabled when you start fish. For bash, it’sset -o vi
and for zsh it’sbindkey -v
. For the browser, you can install plugins like Vimium (Vimium-FF for Firefox) or Tridactyl. I find these to be incredibly useful, I love navigating around websites with j and k or d and u, jumping up with gg and down with G, searching with /, closing tabs with x, reloading websites with r, opening new tabs with t, going back and forward with H and L, etc.
Meanwhile webstorm/intelliJ users:
signature look of superiority
empty wallet
deleted by creator
Nope 😉
https://www.jetbrains.com/community/opensource/#support
https://www.jetbrains.com/community/dev-recognition/
Plus their Java and Python IDEs have free community versions as well.
Codium you dorks
VS code is pretty amazing though
You guys recommend VSCodium over VSCode. Is there a working sync solution similar to the one built into VSCode where you can sync all settings and extensions between machines?
Yes! It’s this one https://open-vsx.org/extension/zokugun/sync-settings I really like it for using a normal repository over a “gist” and so you can also use any git server provider, I think the developer is also a contributor of VSCodium itself
I generally code in VSCode, and manage org-roam notes and information in Emacs. Works well enough for me.
Any particular reason why you don’t code in Emacs? Since you already set up Org Mode and Org Roam, I’m sure you know how the configuration works and how to write some Elisp. It’s actually not that much work to set up all the things you would need for programming (lsp-mode, etc.)
I guess I just preferred VSCode for coding? Every time I’ve tried to use Emacs for my coding workflows I’ve given up, I think I’m just used to VSCode in that respect. It is weird, I know.
deleted by creator
I genuinely think it’s funny that in a post that isn’t making fun of Emacs you felt the need to defend Emacs.
It’s making fun of Emacs users for always finding ways to talk about Emacs. (Which I don’t think is a real problem anymore)
deleted by creator
I use vscode with vim plugin. I find this to be a pretty great combo, for me at least
VS Code + vim plugin is sooo slooow. I’m happy it works for you but I can’t wait to finish on boarding my onboarding buddy so I can go back to vim where I belong
I do too… but it’s not perfect. If you use the extension that uses neovim in the background is seems is the best option but still I miss my “never needing a mouse” feeling I had on emacs. I mean maybe is just lack of knowing keybindings… but back on the day when I used spacemacs it was all so intuitive.
I also miss magit…
What does CUI mean?
deleted by creator
What’s a plugin? What’s VSCode?
DBase IV does not need any of this.