vimrule

glizzyguzzler@lemmy.blahaj.zone to 196@lemmy.blahaj.zone – 635 points –

First time when you ssh into your Linux terminal and you gotta “sudo crontab -e” or something and it’s like “what editor do you want to use?” and nano sounds lame so you choose vim cause the sound is cool when you say it and then you have to wipe the whole comp and start over

63

How do I exit Vim?

escape colon w q

One of life's great mysteries

escape colon w q

I'm pretty sure it's impossible

it is literally. the first result on google.

The best way is to change to another terminal and forcequit it from there

escape then Shift+Z twice also works. or shift+Z shift+Q to quit without saving.

Or hard restart your entire computer

Are you people allergic to search engines or someth--

Bill Joy made vi impossible to exit because he wanted the source to always be open

siiiiiiiiigh

Yes, I'm an old man yelling at cloud, but Vim and Neovim are fantastic text editors that really are worth the half hour you'll spend running through the tutorial to learn them, and the subsequent two weeks you'll spend installing plugins and configuring it exactly to your liking. It really does make writing software more efficient and really doesn't deserve the reputation it gets from "vim is hard to exit lmao" memes made by people who haven't bothered to change their $EDITOR to nano, had it launch automatically when they tried to write a commit message, and instantly decided it was just yet another piece of arcane 80s Unix bullshit

vi isn't a text editor as much as it's a text manipulation language.

It has a syntax, grammar, idioms, and, yes, a learning curve.

But once you learn it, it's as close to a brain-computer interface as I've experienced. You start thinking about edits as chainable operations and it literally becomes muscle memory -- if you ask someone experienced with vi how they just did a complex sequence of edits, chances are they'll have to stop and consciously walk through it because they literally didn't have to think about it the first time.

got any online course recommendations? my college recommended missing semester for the basics of the basics, but i know there are so many more and other vim workflows (easy motions etc)

although i should first start getting into touch typing

At first I did now understand it, why would you even use it??(vim / neovim) It would take ages to learn it all. Then got around to try it, and in a span of like a week, I couldnt go back to editing text with a mouse. I wasnt efficient at first, but damn was it fun. Just cruising around the codebase without touching the mouse (as much as i could.)

Yeah, it makes you more efficient if youve learnt it enough, but at the same time, it makes editing literal text way more enjoyable. You need to edit some boilerplate, and it actually becomes somewhat interesting like: 'Can I use a macro here', or 'How can i do it the most efficient way?’.

I think it also gives you a state of mind as well (for me it definitely shaped it.) You want to learn your tools, you want to understand what makes a good text editor (ex. LSP), or just perfecting your usabilitx of a terminal / shell.

At the same time, damn sometimes its a straight up curse that i learnt vim. I open any other text editor and i just curse the whole time: 'Where are my vim motions?!!?

P.S. Remapping Escape to Caps Lock made vim usability to a 10 for me.

First time using Linux and in a job setting isn’t the time to get Vim’d, so yeah I dipped. Don’t judge too hard pls!

I am a professional linux sysadmin, and I don't use Vim. There is honestly no task you will ever do that will actually require familiarity with Vim. You can get by with Nano just fine.

I use nano on my servers because the default configuration can be used by pretty much anyone, even if I had to explain it to someone over the phone. And hopefully you rarely if ever have to make sophisticated changes to files on servers that would benefit from vim's model.

If you do need to do consistent heavy-duty file editing on a server, rmate is really nice for that: https://github.com/aurora/rmate

But honestly both of these strategies are dated and I don't use either of them professionally. These days it's all immutable infrastructure: I use my local editor to make build scripts for immutable server images that there's no point in editing files on running instances because none of the changes will be persisted.

Exactly. The days of doing long form editing directly on your server are gone. Most likely any editing I'm doing is happening in VSCode or Notepad++/qq.

I actually learned while writing docs for work because it was boring as fuck otherwise. Now I'm one of those people. Give it a shot if you want to spice up (and dramatically slow down at first) some tedious work for a bit.

it's literally the first result on Google

Okay, how do I Google in vim?

step 1. alt
step 2. tab

alternately:
step 1. switch VTs back to your desktop environment and Google it there

if you're using vim without a GUI running at all (I hate embedded systems too):
step 1. you still have your phone on you, right

Off-topic: never unplug this way, it’s bad for your cable and potentially dangerous.

emgimneer rule

I wanted the rest of the song. I asked Bing to make it, sorry Copilot. I am not disappointed

You heard there was a secret chord That you could use to meet the Lord 'Cause you don't care about power safety, do ya? You plugged it in without a thought And then you saw a bright blue spark And from your lips you screamed a loud "Hallelujah!"

Hallelujah, Hallelujah Hallelujah, Hallelu-u-u-u-jah

Your room was dark, you smelled some smoke You realized you made a joke Of basic rules of electricity, didn't ya? You tried to find another plug But all you got was just a shrug And from your phone you heard a low "Hallelujah!"

Hallelujah, Hallelujah Hallelujah, Hallelu-u-u-u-jah

You called the landlord right away He said he'd come and fix the fray But he would charge you extra for the labor, yeah You felt a pang of guilt and shame You knew you only had yourself to blame And from your wallet you let out a sigh "Hallelujah!"

Hallelujah, Hallelujah Hallelujah, Hallelu-u-u-u-jah

lawful good: alias vim=nano

chaotic evil: alias nano=vim

Setting vim to alias to nano seems just about as chaotic evil as making the VS Code icon take you to notepad.

I dunno, those both seem pretty chaotic evil to me.

I develop only in vim, i find it way better that any modern gui.

VSCode with the VIM mode plugin is kind of the best of both worlds.

I dislike the graphical interface. Console helps me to be more productive.

Maybe it was just me, but I found VSCode's undo/redo vim trees (u/r) to be kind of awkward when compared to real vim.

Native vim? Or with an elaborate preference file?

I personally have grown so accustomed to vim that if I have to ssh to a new (to me) server I would rather use stock vi (which in most systems is actually an alias for vim) to any other editor. But honestly I have made an alias for a script that ports over my elaborate vimrc file for every first login to a new server or instance lol. It makes me feel a little like a diva 💁💅

Vim with a minimal preference file, but sometimes vim only, i don't like vi cause it lacks syntax highlighting

How to use Vim: 1- Don't use it. 2- Use Nano or Gedit lmao.

Until those are not available.

This is a pisspoor attitude to have, just fire up vimtutor and you will know how to use it in no time.

Unless you're a sysadmin who deals with very obscure systems, you'll always have access to nano, so why bother?

Vim elitists love to brag about how cool Vim is, but pretty much never properly elaborate. Why should I learn all those obscure commands to just edit some text? What's the point?

it feels smooth
the movement is very fast and precise
you don't need to move your hand for arrow keys so it's nice when you're lazy
i dont use vim anymore though, i use helix because it's purple

I learned them and basically never use vim.

I use sed if i need to change things with a pattern, cat the file if i need to see the contents, use head or tail if its too much to fit on the screen.

If I am writing code, I use a code editor. Emacs and vim can do a lot, but they can also fuck off.

Even not being a vim wizard, editing code without vim keybindings feels... slow.

Yeah, I could grab the mouse, highlight everything between the arguments to a function and hit delete. Or I could just go to the open paren and just hit d%. I could grab the mouse, highlight the line and hit delete, or I could literally just type dd.

And trying to edit things in nano is positively masochistic.

Why would someone edit the actual code (not configs) from the terminal? That by itself sounds like a masochistic endeavor. But I might be missing something.

I used to do it more back in college where I'd ssh into the schools computers to work on assignments. It's still sometimes useful if you're in the console and want to edit something quickly.

However, there's e.g. macvim and gvim which are literally just vim in a gui; they give you menus and the ability to drag panes and click to move your cursor. With a decent LSP setup they can actually be pretty nice.

And most other decent editors have vim emulation of various quality levels. Emacs is a bit buggy, but it's really useful if you want to code in agda or clojure. And VS Code has fairly decent vim emulation.

Why, just use notepad, they're just text editors.

Quitting Vim is called 'escaping' because it was designed to be a trap and you've escaped. Congratulations to everyone who has.

Who told you to add a job to your root crontab? Vim was just protecting you from yourself

:q it's very easy. You could also just close the terminal window and easily escape that way.

I think someone else mentioned this but just run vimtutor in your command line for a pretty exhaustive tutorial.