ビルドしようとしているプロジェクトでは、エディター コードを使用しました。私はモナコエディタを使用しようとしています。
エディターにサポートしてもらいたい主なものは次のとおりです。
- カスタム言語のキーワード、関数などをマーク...
- 私のカスタム言語のインテリセンス。
- プレビュー関数のパラメーター。
だから今まで:
公式サイトのモナコエディターの例を注意深く見ました。
結果は私が探していたものに非常に近いですが、私にとっての主な問題は、コードに 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 追加キーワードを無効にする方法はありますか?
- モナコ エディターの例のようにカスタム言語を使用し、上の図のように関数のプレビューを追加する方法はありますか? (js/ts 言語を使用せずに)。