Pushpin: 从农场带来想法

创建于 2019-11-06  ·  4评论  ·  资料来源: automerge/pushpin

玩了一下图钉 #310 和 #316 我开始认识到我真正想要完成的或多或少是我想要的dat://code.gozala.io/实验(这不是太与 https://observablehq.com/ 不同,这是一种编写代码的方式,可以让我获取数据并创建一个关闭的小部件或可重用的小部件。 我想我一直在按照电子表格的方式使用它,除了为特定任务量身定制的界面。

事实上,农场就是这样,实际上要好得多,因为我发现板对于这种交互来说比你必须上下滚动的记事本或电子表格要好得多。

所以我一直想知道我们是否可以复活农场如此引人注目的原因。 从我与@pvh的对话中,我感觉到虽然 Elm 是一种非常好的语言,但它在实践中被证明是非常有限的😢(我担心这与我在尝试将它用于 https:// 时的经验相呼应github.com/browserhtml/browserhtml 甚至在提到的 https://observablehq.com/)。 然而,我认为农场更引人注目的元素是屏幕上的所有内容都使用(doc, lens)表示,其中lens本身是一段代码,也存储在一些文档中。

我想把它带回来,但省略(至少最初是)Elm 编译器。 碰巧我一直在使用https://github.com/mozilla/reflex/库,它或多或少是 JS 中的 Elm 架构,不需要任何编译步骤(类型检查器会很好) .

所以把所有这些放在一起,这就是我想尝试的:

  1. 将#310 变成一个“镜头编辑”组件,它本质上允许编写一点点 JS,然后可以通过 URL 引用和加载。 不幸的是,似乎hypermerge:/ URL 不能仅加载hyperfile:/...一个,但也许可以解决,或者在最坏的情况下,组件可能会在更改后创建新的hyperfile:/ URL。

  2. 创建另一个“管道”组件,该组件嵌入“镜头创作”组件,或者更确切地说是现有镜头的选择器和数据“文档”选择器以将一个与另一个一起投影。 _我希望管道不仅限于镜头项目(HTML)视图的(数据,镜头),而是允许数据到数据投影,因此可以将事情链接到更大的管道中,但这现在可能有点牵强) _。 默认镜头可以是检查器(参见#316),这样只有文档会渲染一些东西,然后可以选择使用另一个,或者创建一个。

请注意,使用这样的东西,我可以轻松地重新创建我经常使用的工具https://hackmd.io/在那里我可以使用“代码编辑器”组件来输入降价和“管道”组件来并排呈现它的预览或任何有意义的事情。

PS:我仍在考虑这个想法,但我会分享反馈并尝试记录它

最有用的评论

cc @pfrazee似乎与您在 Beaker 中使用“查看文件”所做的类似。

所有4条评论

cc @pfrazee似乎与您在 Beaker 中使用“查看文件”所做的类似。

我认为这也与 Wireline 正在尝试做的事情非常相似。

另一件在我脑海中不断旋转的事情是,当我想到data -> viewdata -> data时,不知何故,它总是从第一个飞跃到第二个。 我记得在http://offlinefirst.org/camp/的一个讨论中,有一个想法是为“渲染视图”附加到数据块的链接(图钉上下文中的 doc)和指向“源代码”的链接呈现这些视图。

如果我们将data -> view推广到data -> data会怎样,其中输出恰好是一个html文档(事实上,它甚至可能值得作为这样的文档持久化)。 这样,pushpin 可以直接渲染恰好是HTML的文档以及不是data inspector的文档。

对于现有的小部件,它们可以被认为是Note : data -> htmlThread: data -> html等......

持久化和恢复 html 的主要问题是事件侦听器,但这也恰好是我在尝试从主线程中获取所有应用程序逻辑时处理的问题,我想我有一些想法如何解决这个问题。

具体来说,使其脱离我已经确定的主线程解决方案是使用受Elm 的 JSON 解码器库启发的decoder.flow库,其中解码器是可以序列化、加载到主线程并使用的声明性解析器组合从事件中提取/编码相关信息并将其传递回程序运行的线程。

在这个特定的用例中,我认为组合编码器可以保存在与呈现的 html 输出相同的文档中,并使用它的地址在哈希中引用(可能是内容哈希)。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

edrex picture edrex  ·  7评论

canadaduane picture canadaduane  ·  9评论

radio-alice picture radio-alice  ·  7评论

Gozala picture Gozala  ·  13评论

pvh picture pvh  ·  4评论