Saya ingin menggunakan fitur auto-save emacs dengan tramp, tetapi hanya untuk file yang saya tidak buka menggunakan sudo. Konfigurasi saya saat ini, berdasarkan pada dokumentasi tramp , terlihat seperti ini:
;;;;;;;; BAKUCP ;;;;;;;;
;; Backup remote files locally to stop autosave pain
(setq tramp-backup-directory "~/.emacs-backup")
(unless (file-directory-p tramp-backup-directory)
(make-directory tramp-backup-directory))
(if (file-accessible-directory-p tramp-backup-directory)
(setq tramp-auto-save-directory tramp-backup-directory)
(error "Cannot write to ~/.emacs-backup"))
;; Don't backup su and sudo files
(setq backup-enable-predicate
(lambda (name)
(and (normal-backup-enable-predicate name)
(not
(let ((method (file-remote-p name 'method)))
(when (stringp method)
(member method '("su" "sudo"))))))))
Itu dilarang membuat backup jarak jauh dari file yang diedit sebagai superuser tetapi file yang disimpan otomatis masih dibuat di mesin lokal saya. Apakah ada cara untuk menonaktifkannya tanpa menonaktifkan simpan otomatis sama sekali?
.emacs
, itu tidak akan dibaca jika emacs dibuka dengansudo
benar? Jadi kapan kode ini berlaku?emacs
dengansudo emacs
itu tidak akan membaca file konfigurasi di direktori home pengguna. Saya menyadari sekarang ini mungkin jawaban yang baik ketika sesuatu dibuka sebagai sudo dari instance emacs yang dibuka sebagai pengguna./sudo::/
metode gelandangan)?default-directory
adalah variabel buffer-local, yang memberitahu Anda direktori saat ini dari buffer itu.(file-remote-p default-directory)
mengembalikan non-nil, ketika Anda jauh.(file-remote-p default-directory 'user)
memberi Anda nama pengguna jarak jauh,"root"
misalnya.