如何强制 Chromium 呈现没有 HTML 扩展名的打开的文件?

如何强制 Chromium 呈现没有 HTML 扩展名的打开的文件?

我的本地机器上有一个 HTML 文件:

echo '<h1>Hello Chromium</h1>' > test

如果我使用 打开它chromium test,它不会呈现页面,但会显示源代码。使用 命名test.html和打开的相同文件chromium test.html会在 Chromium 中打开并呈现。

我如何强制 Chromium 呈现文件名中不带 HTML 扩展名的本地文件?

注意:上下文是我想从 mutt 打开存储时/tmp不带.html扩展名的 HTML 文档。

答案1

假设您的文件不是太长(对我来说 25kB 就足够了),您可以加载其内容并将它们作为数据 URL 直接传递给 Chromium。

chromium "data:text/html;charset=utf-8,<h1>Hello Chromium</h1>"

编辑:

如果你想使用的不仅仅是简单的 HTML,你可能需要转义破坏命令行的字符(例如#"或者'- 参见https://www.w3schools.com/tags/ref_urlencode.ASP

例如,在python中可以执行以下操作:

os.system('chromium "data:text/html;charset=utf-8,' + open('myfile.html').read().replace('\'','%27').replace('"','%22').replace('#','%23') + '"')
# or
subprocess.call(['chromium','data:text/html;charset=utf-8,' + open('myfile.html').read().replace('#','%23')])

答案2

如果您使用的是 Windows,最简单的解决方案是启动命令提示符 (cmd),导航到该文件夹​​,然后输入命令:

ren * *.html

这样做的好处是不会更改 Chrome 的设置。
您需要将文件下载到一个空文件夹中。

相关内容