Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Emacs 在Windows和WSL之间共享文件夹_Emacs_Windows Subsystem For Linux - Fatal编程技术网

Emacs 在Windows和WSL之间共享文件夹

Emacs 在Windows和WSL之间共享文件夹,emacs,windows-subsystem-for-linux,Emacs,Windows Subsystem For Linux,我使用XMing从WSL运行Emacs,它运行得非常好。我的问题是尝试在Windows和WSL之间共享文件夹时。我尝试了以下方法: 项目位于Windows文件系统中,通过WSL中的/mnt/访问 位于Windows文件系统中的项目的符号链接(在WSL bash中创建) 将项目复制到WSL文件系统 在列出的3个选项中,只有最后一个选项适用于Sproject(可能还有其他Emacs软件包)。但是我也需要能够从Windows访问/修改文件,所以这不是一个可行的选择 有人找到了解决这个问题的好方法吗

我使用XMing从WSL运行Emacs,它运行得非常好。我的问题是尝试在Windows和WSL之间共享文件夹时。我尝试了以下方法:

  • 项目位于Windows文件系统中,通过WSL中的/mnt/访问
  • 位于Windows文件系统中的项目的符号链接(在WSL bash中创建)
  • 将项目复制到WSL文件系统
在列出的3个选项中,只有最后一个选项适用于Sproject(可能还有其他Emacs软件包)。但是我也需要能够从Windows访问/修改文件,所以这不是一个可行的选择

有人找到了解决这个问题的好方法吗?

我这样做了(也是为了在Windows\u笔记本电脑和Ubuntu\u pc之间同步):

我有文件夹“工作区” 和它的符号链接:win下的windows符号链接和linux下的linux符号链接

%USERPROFILE%\Cloud\workspace

对于Win使用: 已生成windows符号链接:%USERPROFILE%\workspace->%USERPROFILE%\Cloud\workspace

对于Ubuntu使用(WSL): makelinux符号链接:~/workspace->/mnt/C/Users/USER/Cloud/workspace


这是否有帮助?

WSL已经可以通过
/mnt/[DRIVE\u LETTER]
访问整个文件系统。您指的是什么?如前所述,通过/mnt/访问文件在各种Emacs软件包(如Sproject)中都不起作用。我不知道为什么,但我猜是因为有两条路径([DRIVE_-LETTER]:/folder和/mnt/[DRIVE_-LETTER]/folder);Windows资源管理器可以访问WSL主目录。恐怕这也不是一个选项:问题似乎与我测试的存储库(hg)是使用Windows工具克隆的有关。如果我使用WSL(或cygwin)将一个存储库克隆到Windows文件系统,WSL Emacs/Sproject似乎没有任何问题。这并不能完全解释为什么使用Windows工具克隆的存储库不起作用,或者为什么将同一存储库复制到WSL文件系统可以解决这个问题。但我的问题解决了。