尴尬的简单问题。在Windows 7 64位上使用Emacs 23.4.1中的CPerl模式时,当我使用
编辑:由于某种原因,我无法发表评论(可能是浏览器问题),因此我正在编辑原始帖子以回应@legoscia的评论:“C-c c运行命令模式编译”。在Perl菜单中,它标记为“Run”。
C-c c
运行脚本时,Emacs不会将路径用引号括起来,因此任何带有空格的目录都会导致Perl无法找到文件。
"C:/Perl64/bin\perl.exe -w g:/foo/bar/first second/myscript.pl"
会生成以下错误消息:
"Can't open perl script "g:/foo/bar/first": No such file or directory"
问题:如何使Emacs在将文件名传递给Perl本身时使用引号?编辑:由于某种原因,我无法发表评论(可能是浏览器问题),因此我正在编辑原始帖子以回应@legoscia的评论:“C-c c运行命令模式编译”。在Perl菜单中,它标记为“Run”。
C-c c
似乎是一个非标准的绑定。如果您键入C-h c C-c c
,会得到什么结果? - legosciamode-compile.el
不是标准的程序包。您是否正在使用 http://perso.tls.cena.fr/boubaker/distrib/mode-compile.el 或其他程序包? - philsmode-compile.el
- 我不记得曾尝试安装它,也没有必要直接这样做,因为我只使用解释型语言(R、Perl)。也许它是随 ESS 一起安装的...?当 Perl 脚本在缓冲区中时,主模式是 CPerl,次模式是 Abbrev。没有其他明显不同的东西。 - SlowLearnerM-x find-library RET mode-compile RET
打开该库的代码。顶部的注释可能会说明它来自哪里(并且该文件的位置可能会告诉您它是否随 ESS 一起保留在一个公共目录下的文件中?) - phils