a command tool to sync files using zed editor's protocal
npm install zed-sync自动监听本地文件改动并同步到 dae pre 环境
感谢我们的 dae 工程师们,我们终于可以在 dae pre 环境中通过 zed 编辑器在线编辑和热更新 pre 上的文件了(
但是 zed 编辑器存在以下问题:
1. 无法和本地文件同步
2. 功能有限,用起来也很不习惯..
考虑到 zed 编辑器是完全使用前端技术实现的,猜想和后端的通信方式应该也是通过普通的 web api 请求实现的。
于是看了下 zed-editor 的源码,果然找到了写文件请求的接口:
一开始是打算写成编辑器的插件,但是考虑到大家都习惯使用不同的编辑器/IDE,于是就用 nodejs 写了一个监听本地文件改动并自动上传到 zed 服务端的命令行工具,希望也能给大家在开发的过程中带来一些便利。。

1. 确保本地安装有 8 以上的 nodejs (查看 node 版本: node -v)
2. 安装 zed-sync 到全局
3. 在 doubandev3 上安装 dae sdk
``sh`
npm i -g zed-sync
1. 根据 pre number 和 doubandev2 用户名自动获取 zed url (via run command over SSH)
`sh自动获取 zed url 并监听当前目录
zed-sync -p e.g.
zed-sync -p yangzhen@69
2. 手动获取 zed url
dae prelease 环境可以通过
dae pre edit --pre 得到 zed 实时编辑的服务端链接,具体可以参考 dae 文档: http://readthedocs.dapps.douban.com/docs/dae/dev/pre.html#id2`需要注意的是一定要在项目的根目录下运行该命令,这样才能计算出正确的路径。
sh`
npm i -g zed-sync查看help
zed-sync -h监听当前文件夹
zed-sync -u http://diggle1:7337/fs/321f6881cf9546ce9d41f6e26fc10412监听指定文件夹
zed-sync -w-u http://diggle1:7337/fs/321f6881cf9546ce9d41f6e26fc10412 监听多个文件夹
zed-sync -w
... -u http://diggle1:7337/fs/321f6881cf9546ce9d41f6e26fc10412
zed-sync -u http://diggle1:7337/fs/321f6881cf9546ce9d41f6e26fc10412 -s /path/to/sync/*-v=false`验证和缓存
为了避免出现监听错误的项目,在监听前会有以下验证
1. 对第一次运行的分支进行缓存,如果同一个 zed 链接之后运行在了不同的分支,会提示错误并停止运行。过期时间为 5 天(重启后失效)。
2. 会对本地与远程的 readme 内容进行比对,如果不一致会提示警告。自动获取 zed 链接后会自动缓存到 tmp 目录(重启后失效,最多 5 天)。
跳过验证: