1

I'm using tramp to edit files remotely. Now I would like to ediff two files which are at the remote location.

The problem is, I get the following warning, which prevents using ediff completely.

cygwin warning:
  MS-DOS style path detected: c:\Users\beginner\AppData\Local\Temp\beginner.cpp
  Preferred POSIX equivalent is: /cygdrive/c/Users/beginner/AppData/Local/Temp/beginner.cpp
  CYGWIN environment variable option "nodosfilewarning" turns off this warning.
  Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames

I tried to export nodosfilewarning, but this does not seem to affect the environment Emacs is running in.

How can I get ediff to work with tramp?


The emacs is windows native and I am connecting to the remote via putty link.

  • Can you please edit in what protocols you're trying to use over tramp (probably just ssh?) and how you're using Emacs? Are you using Windows-native Emacs with Cygwin's bin folder in your path? or are you using Cygwin's Emacs? Or whatever you're particular configuration is. – nanny Mar 11 '15 at 13:07
  • Thanks for the edits, I have another question. Is the remote server running Cygwin's sshd? And can you find-file each of the files without any problems? – nanny Mar 20 '15 at 13:35
  • @nanny Would using cygwin in my path allow me to use ssh instead of plink? plink seems kind of unstable, i.e. I get file enconding problems sometimes. – Beginner Mar 20 '15 at 13:35
  • the remote server is running a solaris ssh daemon. How do I check how if find-file works without problems? I can open them in a buffer interactively. – Beginner Mar 20 '15 at 13:38
  • I suspect Cygwin is already in your path, since you're getting a Cygwin warning message. I really did not have a good experience trying to get Windows-native Emacs to work with plink or Cygwin. Since you already have Cygwin installed, I'd really recommend installing the packages emacs-w32 and inetutils. It's a Cygwin native Emacs, but with the Windows gui. It looks like you're using Windows Emacs, but it feels like you're in Cygwin (e.g., when you do find-file you use the Cygwin-style paths). This allows ssh into nix boxes without any configuration, and ediff'ing two remote files works. – nanny Mar 20 '15 at 13:48
1
+50

As I've mentioned in the comments, I highly recommend that people using Emacs on Windows use it through Cygwin.

With the emacs-w32 package, you'll also get a Windows-native GUI.

With the packages openssh, gnutls, and inetutils you'll be able to use TRAMP on Windows transparently, as intended, with no configuration. Fiddling around with plink or trying to combine Windows Emacs with Cygwin (or Cygwin-lite software like msys/mingw) is just asking for a headache. In addition, you can install an up-to-date aspell.

You'll also obviously get the benefit of working in a POSIX environment. If Cygwin doesn't officially package some software that you'd like, try checking Cygwin Ports.

If they don't support it either, I've had much success compiling libraries and programs from source. I've even compiled more complex software like GNU Global, LLVM, GDB, and Python 3. (One of the only big things I'm missing is Valgrind, which is impossible to build on Cygwin.)

I also use apt-cyg as a command line package manager.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.