如何使用emacs编辑颤振项目?

如何使用emacs编辑颤振项目?,emacs,process,flutter,signals,hot-reload,Emacs,Process,Flutter,Signals,Hot Reload,信息:我是一名Emacs用户,使用react native开发移动应用程序 描述 最近,我正在尝试开发一款颤振应用程序,一直使用热重新加载部分,我希望当我更改lib/*dart时,颤振可以自动重新加载 我想的是观察lib/*dart的修改,当它发生时,自动将r传递给颤振过程。 如何进入颤振运行流程 解决方案 Emacs解决方案 在反复阅读之后,我更新了Emacs的配置文件: (需要“省道模式”) (卸载自动重新加载() (炮弹命令“kill-s SIGUSR1$(cat/tmp/flatter.

信息:我是一名Emacs用户,使用react native开发移动应用程序

描述 最近,我正在尝试开发一款颤振应用程序,一直使用
热重新加载
部分,我希望当我更改
lib/*dart
时,颤振可以自动重新加载

我想的是观察
lib/*dart
的修改,当它发生时,自动将
r
传递给颤振过程。

如何进入
颤振运行
流程

解决方案 Emacs解决方案

在反复阅读之后,我更新了Emacs的配置文件:

(需要“省道模式”)
(卸载自动重新加载()
(炮弹命令“kill-s SIGUSR1$(cat/tmp/flatter.pid)和&echo“重新加载颤振…”)
(添加挂钩的省道模式挂钩
(lambda()
(在保存钩子“自动重新加载零”后添加钩子(使其成为本地的)))
这很简单,我简直不敢相信……杀死
flatterrun
进程,它将在通过shell脚本向
flatterrun
进程发送信号
kill-SIGUSR1
后自动重新加载

谢谢@pskink,我动了脑筋,再试了一次,然后问题就解决了

我再次检查了about
linux信号
kill
命令如下:

向指定进程、指定进程组的所有成员或系统上的所有进程发送信号

不仅仅是粗暴地终止进程……下面是命令行中对
kill
的描述:

kill [-s sigspec | -n signum | -sigspec] pid | jobspec
...or
kill -l [sigspec]
但是,颤振的标志
--pid文件
,描述如下:

指定要将进程id写入的文件。您可以发送SIGUSR1触发热重新加载,发送SIGUSR2触发热重启

我们
kill-SIGUSR1$(cat/tmp/flatter.pid)
,当我们向
flatter进程发送信号
SIGURS1
时,就是这样

我仍然在想,我们是否可以只发送一个
r
flatter run
进程的“屏幕”?

并且是用于服务器端开发的热重新加载支持包-在文件更改时热重新加载。
我希望这对弗利特也有用

您还可以调查源代码并创建自定义实现。
该功能由Dart observatory提供,这是一项内置于VM中的服务,您可以连接到该服务,并且可以通过命令进行控制


另请参见

您想在您在源.dart文件中键入的每一个键之后“热重新加载”吗?很抱歉我的模糊描述,在.dart文件
修改之后“热重新加载”
,特别是在emacs中的
C+x s
之后“热重新加载”。请参见
flatter run--pid文件xxxxx
-文档说明:“指定要将进程id写入的文件。您可以发送SIGUSR1触发热重新加载,发送SIGUSR2触发热重启“是的!这就是昨天压垮我整个晚上的原因,我找到了这个解决方案,但我仍然对它感到困惑,它是如何工作的,以及我在emacs中应该做什么?那么你是否尝试向该过程发送
SIGUSR1
信号?谢谢你的帮助!你的主意太棒了!但是,这似乎让我的问题更严重。。。我希望我能找出根本问题——关于
颤振运行
过程的工作原理,我可以处理类似的问题,超越颤振或飞镖的限制,在一眼中无限编程,哈哈~