gpt4 book ai didi

monaco-editor - 如何在monaco编辑器中删除javascript模式的关键字

转载 作者:行者123 更新时间:2023-12-03 19:36:37 30 4
gpt4 key购买 nike

在我尝试构建的项目中,我使用了一个编辑器代码。
我尝试使用 Monaco Editor 。

我希望编辑器支持的主要内容是:

  • 标记我的自定义语言关键字、函数等...
  • 我的自定义语言的智能感知。
  • 预览功能参数。

  • 所以现在:
  • 我仔细看了官网的monaco editor示例。
  • 结果与我所寻找的非常接近,但 主要问题对我来说,虽然我在代码中添加了 noLib 选项,但还有其他关键字,请参见下图。
    https://imgur.com/pwDikZI
  • 其他事情有效。查看图片 https://imgur.com/0c4K8wE
  • 我知道因为我使用了 javascript/typescript 语言模式,所以标记是有问题的。

  • 这是我写的代码:

    require.config({paths: {'vs': 'lib/package/min/vs'}});

    require(['vs/editor/editor.main'], function() {
    let editor = monaco.editor.create(document.getElementById('editor'), {
    language: 'typescript',
    minimap: {enabled: false},
    });
    monaco.languages.typescript.typescriptDefaults.addExtraLib([
    'declare function Foo(a: number,b: number, name: string (optional)) :void',
    'const someString: string ',
    ].join('\n'));

    monaco.languages.typescript.typescriptDefaults.setCompilerOptions({
    noLib: true,
    allowNonTsExtensions: true,
    });

    editor.updateOptions({fontSize: 20});
    });


    我的问题是:
  • 有没有办法禁用 javascript/typescript 附加关键字,以便用户只能看到我的自定义语言?
  • 有一种方法可以像在 monaco 编辑器示例中一样使用自定义语言并添加功能预览,就像我上面显示的图片一样?
    (不使用 js/ts 语言)。
  • 最佳答案

    我有同样的需求,不想在自动完成中使用 javascript/typescript 关键字。我使用以下方法解决了它:

    monaco.editor.create(<your container DOM element here>, {
    . . . .
    suggest: {
    showKeywords: false,
    }
    });
    我在这里找到了一个较旧的答案: https://github.com/microsoft/monaco-editor/issues/1411 ,但此后 API 似乎发生了变化。

    关于monaco-editor - 如何在monaco编辑器中删除javascript模式的关键字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48265459/

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