cygwin + ssh X forwarding + emacs

因为有时需要在Windows上开发客户端,在Linux上开发服务端,所以用cygwin + ssh X forwarding + emacs来写server程序。但是,一拖动emacs或者选择emacs中的区域,emacs就崩溃,错误消息是“X protocol error: BadWindow (invalid Window parameter) on protocol request 38”。

解决方法是用ssh 0.9.8或后续版本中的Trusted X11 Forwarding选项可以避免这个崩溃问题。

ssh -Y host

   -Y      Enables trusted X11 forwarding.  Trusted X11 forwardings are not
           subjected to the X11 SECURITY extension controls.

或者

在.ssh/config文件中增加ForwardX11Trusted命令

Host *
  ForwardX11 yes
  ForwardX11Trusted yes