我想将 Monaco Editor 用于个人项目,但我看到它只是默认支持 html/css/javascript
我希望它支持更多语言,如 Java 或 Python
我找不到任何关于如何实现这一点的明确教程,所以如果有人已经这样做或知道如何做到这一点,我将不胜感激
最佳答案
Monaco 带有 Java 和 Python(以及许多其他语言)的基本着色。如果您有兴趣为特定语言编写自己的语言服务,this playground example应该给你足够的让原型(prototype)工作。
如果您想为某些语言自定义语法高亮,摩纳哥允许使用相关库 monarch它允许您使用 JSON 指定荧光笔。
由于您的问题有点含糊,您应该澄清您在项目中尝试做的事情。如果您希望复制 vscode 提供的功能和适当的语言服务器扩展(例如 vscode-java ),您需要为您的应用程序实现自定义语言服务器(第一段中提供的链接),这令人惊讶由于 monaco 提供了很好的 API,这很容易,但这仍然不是一项简单的任务。
另一方面,如果你想要的只是语言 A、B 等的语法高亮/着色,要么利用 monaco 提供的那些,要么查看第三方或自定义 monarch 荧光笔。希望这可以帮助。
关于javascript - 如何在 Monaco Editor 中实现更多语言支持?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62621443/