15

I always run emacs as daemon but when I want to make something alike

sudo emacsclient /etc/make.conf

I can't do it because root is using another emacs and I don't really want to run 2 daemons or wait usual emacs load for simple file.

I need some solution alike emacsclientsudo /etc/make.conf :) to edit system files with user emacs client.

Chris Stryczynski
  • 30,145
  • 48
  • 175
  • 286
cnd
  • 32,616
  • 62
  • 183
  • 313

2 Answers2

23

add to your ~/.profile:

alias E="SUDO_EDITOR=\"emacsclient\" sudo -e"

then

E /etc/hosts

You should be able to use sudoedit instead of sudo -e, but I couldn't find the former on my Mac.

event_jr
  • 17,467
  • 4
  • 47
  • 62
  • 4
    Neat. I think you can just set SUDO_EDITOR in your init scripts and directly call `sudo -e` or `sudoedit` on whatever file you want though. – Noufal Ibrahim Apr 17 '12 at 13:27
9

I'm not sure about it directly but here's a trick

emacsclient -e '(find-file "/sudo::/etc/passwd")'

Uses tramp and the sudo method to open /etc/passwd as root.

You can alias this and use it directly from your shell.

Noufal Ibrahim
  • 71,383
  • 13
  • 135
  • 169