Редакторы


ramok аватар

Сохранение файла без прав на запись в vim используя sudo

Часто случается когда открываешь конфиг файл под обычным пользователем, и долго и упорно правишь. А при при попытке сохранения, оказывается что прав записывать в этот файл нет.
Обычно выходишь из положения сохранив в каком нибуть временном файле, выходишь из vim и из под sudo перезаписываешь. Нудота..

Но можно занести в ~/.vimrc простенькую команду, которая этот процесс немного автоматизирует Ж:-)

: command Wsudo set buftype=nowrite | silent execute ':%w !sudo tee %' | set buftype= | e! %

После чего можно сохранятся используя sudo выполнив команду

: Wsudo

кстати, если у вас нет пользовательских команд начинающихся с :W, то можно сохранятся только :W

UPD: усложнил команду, что бы нормально обрабатывался случай когда запись на файл есть, но случайно использован :W, и после этого :w нормально работал (не ругался мол файл кто то уже изменил..)

0
Ваша оценка: Ничего