如何从 Notepad++ 运行 HTML 文件?

如何从 Notepad++ 运行 HTML 文件?

我想要运行一个 HTML 页面,因此我配置了Execute / F5以下命令:

chrome.exe http://localhost:8080/$(FILE_NAME)

当 HTML 文件位于我的工作区根目录中时,它可以工作(因为我的 HTTP Web 服务器就是这样设置的)。但是当文件位于子文件夹中时,它不起作用。

是否有一个预定义变量(即$(RELATIVE_PATH))可用于获取相对于工作区目录的文件路径?

提前感谢您的帮助。

答案1

从当前版本的 Notepad++ 6.9.1 开始,Web 服务器中子文件夹路径中的文件问题尚未修复。文件路径的唯一变量是$(FULL_CURRENT_PATH)

查看:配置 Notepad++ 在本地主机上运行 php

也许这个问题将在 Notepad++ 的未来版本中得到修复。

答案2

您可以使用.bat 文件,而不必直接使用 Chrome。

下面是此类 .bat 文件的一个版本,应在 Notepadd++ 中像这样执行:

"path\to\file.bat" "$(FULL_CURRENT_PATH)"

对于 Windows,文档根目录位于C:\inetpub\wwwroot,.bat 文件为:

@echo off
set "param=%~1"
set "url=http://localhost/%param:C:\inetpub\wwwroot\=%"
start "" chrome.exe "%url%"

上面用于替换变量中的字符串的一般 DOS 语法是:

"%variable-name:search-string=replacement-string%"

在我们的例子中,其中replacement-string为空。

这个简单的.bat 文件可以轻松改进,以接受字符串C:\inetpub\wwwroot\作为第二个参数,等等。

该批处理文件可能会导致黑色 DOS 窗口暂时出现,并在 Chrome 启动后立即消失。如果仍然太烦人,请参阅这个答案

答案3

Python 解决方案

使用 Np++ 插件甚至可以创造奇迹。我编写了一个简单的 Np++ Python 脚本,它实现了这个功能。此解决方案只需要 Notepad++ 和 PythonScript 插件。

  1. 从插件 > 插件管理器安装 Python 脚本
  2. 插件 > Python 脚本 > 新脚本
  3. 将其命名为“OpenInBrowser.py”(例如)并粘贴脚本:http://pastebin.com/wS4jThcp
  4. 在脚本中,记得配置你的browserExeFullPath浏览器网址以及你的网页根目录(顶层 index.html 位于其下)。
  5. 插件 > Python 脚本 > 配置并将您的用户脚本添加到菜单(左侧列表)
  6. 重新启动 Notepad++,设置 > 快捷键映射器 > 插件命令并将脚本映射到一个键,例如 F9。现在按下该键将在浏览器中打开您的活动文档。无需外部解决方案。

答案4

Node.js 解决方案

根据@harrymc 的第一条评论,我将 PHP 解决方法移植到我的节点服务器。

1° 在 Notepad++ 中

更改<Command>文件中的内容shortcuts.xml(你可以在文件夹下找到%appdata%/Notepad++),例如:

chrome http://localhost:8080/npp?path=$(FULL_CURRENT_PATH) 

2° 在 Node.js 中

在服务器脚本(server.js)中添加一条路由来处理 HTTP GET 请求:

//redirection for Notepad++
app.get( '/npp', function ( req, res ) 
{
    res.redirect( req.query.path.substr( __dirname.length + 8 ) )
} )

在哪里:

  • app我的表达成分 (app = express()),
  • +8是必要的,因为我的网页位于子文件夹中/public/

相关内容