在Windows上的.npmrc中是否可能有带空格的路径?

时间:2018-12-16 16:39:03

标签: node.js windows npm

我在调用npm config edit时出错,就像找不到记事本++ exe。我得出的结论是,.npmrc中指定的路径不能包含空格,并解决了将其指向未安装在“程序文件”下的便携式版本notepad ++的问题。我仍在想是否有办法使它指向我最初的notepad ++安装,我曾尝试过转义或编码空间,但没有成功。

1 个答案:

答案 0 :(得分:0)

不幸的是,无论您如何逃逸,npm都会在所有空间上分裂。 Source Code NPM Module Editor - Line 12:

var args = editor.split(/\s+/);

因此,您必须设置没有任何空格的Editor File路径。

示例假设

    示例中使用了
  • VS代码。与您喜欢的编辑器交换VS代码文件路径。
  • NPM用户配置文件已更新,如果您喜欢全局配置文件,请在每个npm命令中使用-g

示例1-将编辑器目录添加到路径

这只会设置PATH临时目录。要在Windows 10上永久设置,请执行Start - Edit environment variables for your account并添加路径。

编辑:“ C:\ Program Files \ Microsoft VS Code \ bin”将安装Path VS Code。

> set PATH=%PATH%;"C:\Program Files\Microsoft VS Code\bin"

> npm config set editor code.cmd

> npm config edit

示例2-使用DOS短名称

获取文件的DOS简称,并将其用作npm config set editor的参数。简称因系统而异。如果VS Code已卸载并重新安装,则路径可能会更改。

  • 为()中的%I做... 处理<filelist>
  • 中的每个文件
  • 回声%〜sI 以短格式打印文件名
> for %I in ("C:\Program Files\Microsoft VS Code\Code.exe") do echo %~sI
C:\PROGRA~1\MICROS~3\Code.exe

> npm config set editor C:\PROGRA~1\MICROS~3\Code.exe