参考:
http://blog.csdn.net/snleo/article/details/4204640
http://blog.csdn.net/flag_and_leg/article/details/2900278
http://stackoverflow.com/questions/15540223/emacs-24-3-for-windows-tramp-byte-code-couldnt-find-a-proper-ls-command/18764972
问题来源:
通过Emacs访问远程机器上的代码
解决方法:
1、安装emacs24.3 for windows,下载地址:http://ftp.gnu.org/pub/gnu/emacs/windows/
2、设置home目录,如果不设置,默认的.emacs和.emacs.d文件就不在emacs的安装目录下,设置方法为:打开注册表,找到HKEY_LOCAL_MACHINE/SOFTWARE/GNU/Emacs(如果没有则手动添加项),在此项下添加字符串值,名称为HOME,值为D:/Emacs24.3。这样做的目的是让D:/Emacs24.3成为Emacs的home路径(传说中的home path,以后你将会经常看到“home目录”、“home directory”等等)。
3、创建.emacs.d目录和.emacs文件
相信.emacs.d目录和.emacs文件是困扰大家很久的问题了,其实有个简单的办法可以解决此问题。启动emacs,用鼠标点击Options菜单,随便点击一两个选项,比如点击一下Active Region Highlighting,然后点击Save Options。先不要担心你会破坏了什么东西,这样做的目的是让emacs自动创建.emacs.d目录以及.emacs文件!观察你的Emacs窗口最后一行,是否显示“Wrote d:/Emacs22.2/.emacs”?如果是的话就对了,当你选择Save Options的时候,Emacs会在home路径下产生.emacs文件,并把配置信息写进这个文件。现在看看你的d:/Emacs22.2/目录下是否产生了这两个东西?
4、修改.emacs文件,添加如下内容:
(require 'tramp)
(setq tramp-default-method "plink")
注:plink就是PuTTY下的一个程序:plink.exe(下载地址:http://download.csdn.net/detail/fandroid/8223845)。我把它拷贝到emacs的bin目录,并且添加到系统Path变量中去,即将D:/Emacs24.3/bin加入path中。
5、重启emacs连接远程机器
C-x C-f /username@remote_ip:/home/username
6、连接时出现如下问题
"byte-code: Couldn't find a proper `ls' command"
解决如下:
Byte compile tramp-sh.el
(adapt path accordingly):
(byte-compile-file "C:/Program Files (X86)/emacs/lisp/net/tramp-sh.el")
Exit Emacs.
Delete Tramp cache: ~/.emacs.d/tramp
Start Emacs.