2017-06-26 1 views
1

モナコの例とタイピングを見てみると、defineTheme APIを使ってテーマを設定できるようです。私はモナコのインスタンスにVSCodeテーマを適用しようとしており、背景色を設定する方法(トーナメントだけでなく、エディタ全体で)に苦労しています。モナコのエディタのカスタム背景色ですか?

ルールはこのような形状を持つオブジェクトの配列として定義されています。

IThemeRule { 
    token: string; 
    foreground?: string; 
    background?: string; 
    fontStyle?: string; 
} 

tokenエディタの背景を設定するために何をすべきですか?

もっと一般的には、this themeをMonacoインスタンスに適用する方法がありますか?VSCodeソースからテーマ解析ロジックを取り出すことはありませんか?ロジックを取り除くための素早い試みの後、単純なカスタムパーサー(すなわち、JSONテーマ定義の解析 - >IThemeRuleのフラットリスト)のように見えるのが良い方法です。

答えて

1

あなたはこの

const theme = { 
    base: 'vs', 
    inherit: true, 
    rules: [ 
    { token: 'custom-info', foreground: 'a3a7a9', background: 'ffffff' }, 
    { token: 'custom-error', foreground: 'ee4444' }, 
    { token: 'custom-notice', foreground: '1055af' }, 
    { token: 'custom-date', foreground: '20aa20' }, 
    ] 
} 

のようなあなたのテーマを定義し、この

monaco.editor.defineTheme('myTheme', theme) 

var editor = monaco.editor.create(document.getElementById('container'), { 
    value: getCode(), 
    language: 'myCustomLanguage', 
    theme: 'myTheme' 
}); 
のようにそれを適用することができます
関連する問題