请在2024年Clojure状态调查!中分享您的想法。

欢迎!请查看关于页面,了解更多关于这个系统如何工作的信息。

0投票
ClojureScript

我在cljs-devtools(以及dirac)中实现了一些“demunging”逻辑,以便在UI中展示原用户友好的名称。

在我的测试过程中,我发现了一些demunge的错误边缘情况和不当行为。

1) 它过于强硬地替换了美元符号 - 一些美元符号可能是原始名称的一部分。
2) 它不会撤销在munging过程中应用的js-reserved?转换。
3) 它对下划线和短横线视而不见 - 一些下划线在munging之前是真实的。
(这可能并不完整)

我已经对我的问题进行了处理,并实现了一些基于上下文的启发式策略(链接:1),但远远不够完美。

我不确定如何恰当地修复这些问题,因此我想打开一个讨论的工单。也许人们有一些巧妙的想法。

目前munging是有损的,我们可能因为兼容性的原因不想修改它。
也许我们可以以某种方式标记原始的下划线和美元符号,这样demunge就可以正确地跳过它们。

1) 一种策略可能是使用一些(罕见的)unicode字符,但这对人们来说是难以输入的。
2) 另一种策略可能是以某种方式逃避原始的美元和下划线(使用更多的美元和下划线)。
3) 有更好的想法吗?

(链接:1)https://github.com/binaryage/cljs-devtools/blob/52899e61e33373df36be8dcb23c69377936821b2/src/lib/devtools/munging.cljs#L154-L185

1 答案

0投票
...