suda is a plugin to read or write files with sudo
command.
This plugin was built while :w !sudo tee % > /dev/null
trick does not work on neovim.
This plugin is strongly inspired by sudo.vim but the interfaces was aggressively modified for modern Vim script.
Use SudaRead
to open unreadable files like:
" Re-open a current file with sudo
:SudaRead
" Open /etc/sudoers with sudo
:SudaRead /etc/sudoers
Or SudaWrite
to write unwritable files like:
" Forcedly save a current file with sudo
:SudaWrite
" Write contents to /etc/profile
:SudaWrite /etc/profile
You can change the prompt string with g:suda#prompt
.
" 'Password' in french
let g:suda#prompt = 'Mot de passe: '
When let g:suda_smart_edit = 1
is written in your vimrc, suda automatically switch a buffer name when the target file is not readable or writable.
In short,
$ vim /etc/hosts
or
:e /etc/shadow
Will open suda:///etc/hosts
or suda:///etc/shadow
instead of /etc/hosts
or /etc/shadow
because that files are not writable or not readable.
Install mattn/sudo or gerardog/gsudo to enable this plugin in Windows.
Make sure that the following shows 1
.
: echo executable('sudo')
When let g:suda#noninteractive = 1
is written in your vimrc, suda won't ask you for a password. Use at your own risk.