this post was submitted on 24 Mar 2024
355 points (95.6% liked)

linuxmemes

20880 readers
9 users here now

I use Arch btw


Sister communities:

Community rules

  1. Follow the site-wide rules and code of conduct
  2. Be civil
  3. Post Linux-related content
  4. No recent reposts

Please report posts and comments that break these rules!

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 11 points 8 months ago (2 children)
:w !sudo tee %

Warning: does not work for neovim

[–] [email protected] 2 points 8 months ago (1 children)

Neovim, the one true vim, why hast thou forsaken me.

[–] [email protected] 2 points 8 months ago (1 children)

Iirc the specific reason behind this is

  • sudo by default requires a tty to run
  • vim's bang spawns a tty to execute commands
  • nvim's bang executes the command directly, then pipes the output to nvim

As a result, sudo (without args) can't work in nvim as it doesn't have a tty to prompt the user for passwords. Nvim also used to do what vim did, but they found out spawning the tty was causing other issues (still present in vim) so they changed it.

[–] [email protected] 1 points 8 months ago* (last edited 8 months ago)

There must be more to this. I just launched a terminal and created a file to test with nvim on arch and it works perfectly fine.

Take a file, sudo chown root:root filename, sudo chmod 700 filename, edit with nvim and save with :w !sudo tee % then reload. Works fine.

I'm on arch with suckless st.

Edit:

Made a demo vid - https://youtu.be/YKZuAvoSW5g

[–] [email protected] 1 points 8 months ago

sure it works in neovim

I didn't do any editing since it's just to prove a point, but I think it does fine.