Merge branch 'master' of metalzone:etc/profile
[profile] / dot / emacs
index c291fdd..b2c35ec 100644 (file)
--- a/dot/emacs
+++ b/dot/emacs
 ;;; Rootly editingness.
 
 (eval-after-load "tramp"
-  '(progn
+  '(let ((fix-args (if (mdw-version-< tramp-version "2.1")
+                      #'append #'identity)))
      (setq tramp-methods
           (mdw-uniquify-alist
            `(("become"
               (tramp-copy-program nil)
               (tramp-copy-args nil)
               (tramp-copy-keep-date-arg nil)
-              (tramp-login-args (("TERM=dumb" "%u"))))
+              (tramp-login-args ,(funcall fix-args `("TERM=dumb" "%u"))))
              ("really"
               (tramp-connection-function tramp-open-connection-su)
               (tramp-login-program "really")
-              (tramp-login-args (("-u" "%u")
-                                 ("--")
-                                 ("env" "TERM=dumb" "/bin/sh")))
+              (tramp-login-args ,(funcall fix-args
+                                          `("-u" "%u")
+                                          `("--")
+                                          `("env" "TERM=dumb" "/bin/sh")))
               (tramp-copy-program nil)
               (tramp-copy-args nil)
               (tramp-copy-keep-date-arg nil)
              ,@tramp-methods)))
      (setq tramp-default-method "ssh")
      (setq tramp-default-method-alist
-          `(("\\`localhost\\'" ""
+          `(("\\`\\(localhost\\|\\)\\'" ""
              ,(cond ((executable-find "become") "become")
                     ((executable-find "really") "really")
                     (t "su")))))))