gpt4 book ai didi

monaco-editor - 如何根据 Monaco Editor 中的文件扩展名动态设置语言?

转载 作者:行者123 更新时间:2023-12-04 05:53:55 39 4
gpt4 key购买 nike

我正在使用 monaco-editor 来显示本地代码文件的内容,这些文件可能是用各种语言编写的,所以我想知道如何根据文件的扩展名或文件的第一行动态设置/更改 monaco 编辑器的语言没有扩展名(如#!/usr/bin/env python)。

似乎 monaco-editor 本身没有这个功能,但 VSCode 显然有。

我想定义一个名为 checkLanguage(file_path) 的方法,它接受一个文件路径并返回代表 monaco-editor 支持的语言的字符串。如果无法确定语言,则返回纯文本。

monaco.editor.setModelLanguage(model, checkLanguage(file_path))

支持的语言: https://github.com/microsoft/monaco-languages

最佳答案

这些语言已经定义了它们可以处理的文件扩展名,因此可以通过给它文件名来允许摩纳哥选择合适的语言:

const model = monaco.editor.createModel(
value,
undefined, // language
monaco.Uri.file(filename) // uri
)

editor.setModel(model)

关于monaco-editor - 如何根据 Monaco Editor 中的文件扩展名动态设置语言?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56681345/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com