
4 changed files with 5 additions and 101 deletions
-
4src/model/es/provider/ElasticCodeLensProvider.ts
-
96src/model/es/provider/ElasticDecoration.ts
-
2src/model/es/provider/ElasticMatch.ts
-
4syntaxes/es.tmLanguage.json
@ -1,96 +0,0 @@ |
|||
import * as vscode from 'vscode'; |
|||
import { ElasticMatches } from './ElasticMatches'; |
|||
|
|||
export class ElasticDecoration { |
|||
pHighlight: vscode.TextEditorDecorationType; |
|||
bHighlight: vscode.TextEditorDecorationType; |
|||
bHighlightSelected: vscode.TextEditorDecorationType; |
|||
mHighlight: vscode.TextEditorDecorationType; |
|||
errHighlight: vscode.TextEditorDecorationType; |
|||
|
|||
context: vscode.ExtensionContext; |
|||
|
|||
public constructor(context: vscode.ExtensionContext) { |
|||
this.context = context |
|||
|
|||
this.pHighlight = vscode.window.createTextEditorDecorationType({ |
|||
light: { |
|||
color: 'rgb(0,191,171)', |
|||
// after: { contentText: ' • ' + host, color: 'lightgray' }
|
|||
}, |
|||
dark: { |
|||
color: 'rgb(0,191,171)', |
|||
// after: { contentText: ' • ' + host, color: 'gray' }
|
|||
} |
|||
}); |
|||
|
|||
this.bHighlight = vscode.window.createTextEditorDecorationType({ |
|||
isWholeLine: true, |
|||
light: { |
|||
gutterIconSize: 'contain', |
|||
backgroundColor: 'rgba(200, 200, 200, 0.2)', |
|||
gutterIconPath: this.context.asAbsolutePath("./media/gutter-dis-light.svg"), |
|||
}, |
|||
dark: { |
|||
gutterIconSize: 'contain', |
|||
backgroundColor: 'rgba(50, 50, 50, 0.3)', |
|||
gutterIconPath: vscode.Uri.parse('data:image/svg+xml;base64,PHN2ZyB4b+'), |
|||
} |
|||
}); |
|||
|
|||
this.bHighlightSelected = vscode.window.createTextEditorDecorationType({ |
|||
isWholeLine: true, |
|||
gutterIconPath: vscode.Uri.parse('data:image/svg+xml;base64,PHN2ZyB4b+'), |
|||
gutterIconSize: 'contain', |
|||
light: { |
|||
backgroundColor: 'rgba(200, 200, 200, 0.2)' |
|||
}, |
|||
dark: { |
|||
backgroundColor: 'rgba(50, 50, 50, 0.3)' |
|||
} |
|||
}); |
|||
|
|||
this.mHighlight = vscode.window.createTextEditorDecorationType({ |
|||
rangeBehavior: vscode.DecorationRangeBehavior.ClosedClosed, |
|||
light: { |
|||
color: '#EF5098' |
|||
}, |
|||
dark: { |
|||
color: '#EF5098' |
|||
}, |
|||
overviewRulerColor: '#0271bc', |
|||
overviewRulerLane: vscode.OverviewRulerLane.Left |
|||
}); |
|||
|
|||
this.errHighlight = vscode.window.createTextEditorDecorationType({ |
|||
borderWidth: '1px', |
|||
borderStyle: 'solid', |
|||
light: |
|||
{ |
|||
borderColor: 'rgba(255,0,0,0.5)', |
|||
backgroundColor: 'rgba(255,0,0,0.25)' |
|||
}, |
|||
dark: |
|||
{ |
|||
borderColor: 'rgba(255,0,0,0.5)', |
|||
backgroundColor: 'rgba(255,0,0,0.25)' |
|||
}, |
|||
overviewRulerColor: 'rgba(255,0,0,0.5)', |
|||
overviewRulerLane: vscode.OverviewRulerLane.Left |
|||
}); |
|||
} |
|||
|
|||
public UpdateDecoration(esMatches: ElasticMatches) { |
|||
|
|||
var editor = esMatches.Editor |
|||
var matches = esMatches.Matches |
|||
|
|||
editor.setDecorations(this.mHighlight, matches.map(m => m.Method.Range).filter(x => !!x)); |
|||
editor.setDecorations(this.pHighlight, matches.map(p => p.Path.Range).filter(x => !!x)); |
|||
editor.setDecorations(this.bHighlight, matches.filter(x => !x.Selected).map(b => b.Range).filter(x => !!x)); |
|||
editor.setDecorations(this.errHighlight, matches.map(e => e.Error.Range).filter(x => !!x)); |
|||
editor.setDecorations(this.bHighlightSelected, matches.filter(x => x.Selected).map(b => b.Range)); |
|||
|
|||
|
|||
} |
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue