2

我要解决的问题是自定义 SQL 类 DSL 的编辑器,它要求用户输入属性的唯一标识符,而不是正确的详细标题。想想 /obj/12075f8459499 之类的东西,而不是人类可读的“firstName”。有问题的应用程序在网络上,我想为用户提供一个很好的编辑器,它隐藏了具有唯一 URI 的对象的实现细节。

我把它想象成一个内容可编辑的 DIV,如果你开始输入一个字符串,它也是一个属性标题的开头,你会看到一个下拉菜单,以确认这个属性确实是你想要的。选择一个项目后,将插入一个占位符,然后应用程序知道如何将其序列化为我的 DSL 语法。您还可以从侧边栏中的列表中选择要插入可编辑区域的属性。

我的问题是如何解析用户输入,以便生成的界面具有合理的响应性。我应该从定义语法开始然后解析输入还是应该开始寻找其他地方?似乎这样的问题已经在许多应用程序中得到解决,所以我正在寻找通常如何实现的指针。

注意:我还需要对语言进行语法突出显示,因此无论如何可能都必须使用某种语法。

4

1 回答 1

0

最后,我使用了CodeMirror JavaScript 编辑器。它标记一系列文本并用其他一些 HTML 标记表示的能力被证明特别有用。我用它来显示“友好”的对象名称来代替 URI。

于 2014-06-30T06:02:12.997 回答