基于javascript的自定义语言语法代码编辑器

时间:2012-07-26 12:48:29

标签: javascript editor

我需要基于javascript / html的代码编辑器,我将为非常简单的自定义编码语言进行自定义。

此编辑器工具需要在离线解决方案中使用,因此源代码必须可下载或打开。 即使没有变量,语言语法看起来也会非常简化 我将为自定义语言定义'if then'和'built in function name'。

所以它必须具有自定义编码语言语法的配置支持

如果您可以参考一些现成的解决方案,那将非常有用

2 个答案:

答案 0 :(得分:5)

我为自己的问题找到了解决方案

我使用了代码镜像

http://codemirror.net/

它内置了对许多编码语言的支持,包括JavaScript / C#/ VB / C / C ++ / CSS /等

根据语言文件,您还可以修改支持的关键字列表

答案 1 :(得分:-2)

我不确定您是否认为这是“代码编辑器”,但您可以使用gedit。您可以创建一个新的语言定义并将其放入“mylanguage.lang”文件中,并将其用于语法着色(查看here)。

您还可以为gedit制作插件,使其为您的语言做更多的事情,比如构建AST或编译代码等。插件是用Python编写的(无论好坏)。请看this page

Here's one example Gedit插件的整洁程度如何。这是Gedit的一个插件,它与Clang(一个C / C ++ / ObjC编译器)连接,为程序员提供即时警告和错误代码。因此,您可以创建一个可以分析新语言代码并检查问题/提供代码完成等的插件。

虽然这看起来有些单调乏味,但我认为你找不到现成的问题解决方案。由于您的语言的语法在技术上与任何其他语言不同(尽管可能类似于少数语言),因此您将找不到一个神奇地了解您的语法的编辑器。但如果您想要的只是代码着色,那么Gedit将不难设置。不幸的是,编辑器更强大的功能并不容易制作,但绝对可能!