我已经从节点包管理器全局安装了MJML,然后在PhpStorm中创建了一个mjml文件类型,并为MJML文件添加了一个新的File Watcher,其设置如下。
Name: MJML
Type: MJML from the dropdown
Program: /usr/bin/mjml
Argument: --watch $FileName$ -o $FileNameWithoutExtension$.html
Working Directory: $FileDir$
PhpStorm版本
PhpStorm 2016.3.2
Build #PS-163.10504.2, built on December 20, 2016
Licensed to PhpStorm Evaluator
Expiration date: April 3, 2017
JRE: 1.8.0_112-release-408-b6 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
由于某些原因,它不会监视并生成输出文件。
答案 0 :(得分:3)
刚刚检查过 - 观察者
会生成输出文件。但您需要使用File | Synchronize
手动刷新项目以查看生成的文件,并且观察者永远不会完成。
这是预期的行为:PhpStorm等待来自作为文件观察程序运行的工具的退出代码,以刷新虚拟文件系统。由于运行--watch
选项的MJML一直运行,直到你杀死它,因此在文件生成完成时没有返回退出代码,VFS不会自动同步,并且观察者继续运行。因此,解决方案是使用-r
代替--watch
:
-r $FileName$ -o $FileNameWithoutExtension$.html
您已在PHPStorm中注册mjml作为观察者,无需将--watch
传递给它