I am trying to run javascript code blocks in Org Babel. My system is Cygwin on Windows 10 with Cygwin emacs-w32. (Beautiful setup in general, I love it. Makes Windows Unix-like and bearable to me. But it does have its quirks.) I have set CYGWIN=winsymlinks:native but I don't think that's an issue.

Code blocks in other languages work fine, but my node.js is a Windows program, so emacs-w32 Org Babel kindly translates paths from Cygwin to Windows. The problem is I get this: C:\cygdrive\c\Users\me\all\the\rest\of\it, which has an incorrect and unnecessary \cygdrive\c at the front. When I manually correct the path and type the command in at the bash command line, node produces the correct output. What do I have to do to correct the path munging done by emacs-w32|org|babel?

BTW node seems to work just fine with relative unix-style paths that don't include .../c/... . I would be happy to use relative paths for everything all the time ... would that be a viable strategy in general?

I have contemplated symlinking C:\cygdrive\c back to \ but that just seems like asking for trouble ... or maybe not?

1 Answer 1


So ... I did it:

cd /cygdrive/c
mkdir cygdrive
cd cygdrive
ln -s ../ c

Now my javascript block executes as expected.

Who knows what else might go wrong? But tomorrow is another day, and another adventure with Cygwin.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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