绕口令: msys2中的emacs支持bash on windows的bash

这个是偶然发现的。

过程是这样的。

我知道emacs 25.2已经出来一段时间了。只是太忙,懒的换了。昨天有点时间,就决定升级下。

在gnu emacs的官方网站上,提到了msys2中如何安装emacs。

我在windows上用的是msys,大约是6年前左右的版本,现在是win10上的bash on windows的linux环境,因为很多脚本只能在完整的linux下运行,依赖太多。

msys2是个什么鬼,比msys更好吧,看着这么容易安装,就试试。

确实很容易安装,竟然有软件管理器,竟然可以安装emacs,试试。

安装后的emacs可以直接在windows上运行,非常不错。既然这样,我就将之前的emacs删除了,然后,将启动emacs的配置中关于msys的bash的路径删除了(exec-path),只所以删除,是因为我认为在msys2中安装的emacs已经解决了bash的问题,会使用msys2的bash了。

一个美丽的误会就这样产生了。

emacs启动的非常完美,shell的启动也非常的完美,但等等,为什么shell提示的路径是/mnt/c/work,而不是/c/work,而lsb_release -a出来竟然是ubuntu 16.04!!!.

然后,我可以在emacs的shell中运行我想要的任何命令。几乎和在linux上一样。

bash on windows在处理链接上,是有区别的。于是,我是用了下magit,或者直接用快捷键在emacs下调用make,发现emacs中提示的路径格式还是C:/这样的windows格式,于是,这种模式下就无法继续进行了。