Fix editing remote unwriteable file
With the original advice, if we try to find a not writeable file on a remote machine, the extra tramp prefix would be inserted. As a result, we actually end up in a blank new file.
This commit is contained in:
parent
7ece99d281
commit
2f22cb2684
1 changed files with 4 additions and 5 deletions
|
@ -303,11 +303,10 @@ buffer is not visiting a file."
|
||||||
|
|
||||||
(defadvice ido-find-file (after find-file-sudo activate)
|
(defadvice ido-find-file (after find-file-sudo activate)
|
||||||
"Find file as root if necessary."
|
"Find file as root if necessary."
|
||||||
(unless (or (equal major-mode 'dired-mode)
|
(unless (or (tramp-tramp-file-p buffer-file-name)
|
||||||
(and (buffer-file-name)
|
(equal major-mode 'dired-mode)
|
||||||
(not (file-exists-p (file-name-directory (buffer-file-name)))))
|
(not (file-exists-p (file-name-directory buffer-file-name)))
|
||||||
(and (buffer-file-name)
|
(file-writable-p buffer-file-name))
|
||||||
(file-writable-p buffer-file-name)))
|
|
||||||
(find-alternate-file (concat "/sudo:root@localhost:" buffer-file-name))))
|
(find-alternate-file (concat "/sudo:root@localhost:" buffer-file-name))))
|
||||||
|
|
||||||
(defun prelude-start-or-switch-to (function buffer-name)
|
(defun prelude-start-or-switch-to (function buffer-name)
|
||||||
|
|
Loading…
Reference in a new issue