【问题标题】:NppExec Notepadd++ not expected outputNppExec Notepadd++ 不是预期的输出
【发布时间】:2015-04-20 11:07:00
【问题描述】:

我有以下测试脚本:

<?php
    echo 'Hello'            // mistake - missing semicolon
    echo 'Hi';          
    echo $hi;               // mistake - undefined variable         
?>

我试图通过 NppExec 检查这个脚本 - 我使用了命令:

$(NPP_DIRECTORY)\notepad++.exe -n $(FULL_CURRENT_PATH)

我得到了一个意想不到的输出:

Process started >>>
<<< Process finished. (Exit code 0)
================ READY ================

我期待一些错误消息。这是否意味着我使用 NppExec 错误? 谢谢

【问题讨论】:

    标签: php notepad++ nppexec


    【解决方案1】:

    问题

    这个命令:

    $(NPP_DIRECTORY)\notepad++.exe -n $(FULL_CURRENT_PATH)
    

    我不知道你认为它在做什么,但这就是它在做什么:

    这将打开记事本++。不是 PHP 或任何东西,只是 Notepad++。但是,由于 Notepad++ 实例已经在运行,它就退出了。
    我不知道在参数生效之前是否会发生这种情况,但如果没有,那么$(FULL_CURRENT_PATH) 将作为文件打开,并且由于-n 选项,Notepad++ 将跳转到其中的第 0 行,这意味着“滚动到 X 行”。例如,由于您不提供-n15,而只提供-n,因此行号为零。

    解决办法

    我认为您的目标是验证 PHP 文件的语法。
    为此,您需要在系统上安装 PHP,并在 %PATH% 中拥有 PHP bin 文件夹(或使用下面 php.exe 的完整路径)。
    那么您要查找的 NppExec 命令应该是:

    php.exe -l $(FULL_CURRENT_PATH)
    

    -l(小写L)选项传递给PHP 可执行文件将使其验证输入文件的语法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-04-23
      • 2021-10-03
      • 1970-01-01
      • 1970-01-01
      • 2021-03-20
      • 2018-02-24
      相关资源
      最近更新 更多