Notepad++ 从命令行加载时假定文件扩展名为 .txt

Notepad++ 从命令行加载时假定文件扩展名为 .txt

Dockerfile我的目录中有一个名为的文件:

在此处输入图片描述

我尝试在 Notepad++ 中编辑该文件,因此我输入以下命令:

notepad Dockerfile

Notepad++ 出现了,但是它尝试打开一个Dockerfile.txt不存在的文件:

在此处输入图片描述

有没有办法配置 Notepad++ 来加载命令行给出的文件,而不是假设它有任何特定的扩展名?谢谢!

笔记:在我的计算机上,Notepad.exe 已被覆盖以指向 Notepad++

答案1

  1. Notepad++ 的标准文件名是Notepad++.exe,不是notepad.exe。最后一个是 Windows 标准记事本。因此尝试

    notepad++ Dockerfile
    
  2. 如果没有帮助,在文件名后附加句点 ( .):

    notepad++ Dockerfile.
    

    或者 - 如果您的 Notepad++ 文件名仍然是notepad.exe

    notepad Dockerfile.
    

答案2

对此进行了更多研究,发现这似乎是设计使然。实际上不是如果您以正常方式运行 Notepad++,则可以使用注册表中的notepad++ Dockerfile重写,而不是覆盖。Notepad++ 在Image File ExecutionconvertParamsToNotepadStyle 方法这基本上模仿者Windows 记事本默认会执行的操作,即.txt默认添加扩展名。

那么,是什么导致 Notepad++ 模仿 Notepad 呢?原来是参数-notepadStyleCmdline,它是包含在说明书中关于如何替换记事本。如果您删除参数并覆盖记事本,如下所示:

reg add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" /v "Debugger" /t REG_SZ /d "\"%ProgramFiles%\Notepad++\notepad++.exe\" -z" /f

然后 Notepad++ 将会表现得像 Notepad++。

相关内容