diff --git a/spec/text-editor-component-spec.js b/spec/text-editor-component-spec.js index 2d58a291d..5020e82b8 100644 --- a/spec/text-editor-component-spec.js +++ b/spec/text-editor-component-spec.js @@ -421,6 +421,15 @@ describe('TextEditorComponent', () => { await component.getNextUpdatePromise() expect(element.dataset.grammar).toBe('source js') }) + + it('adds the data-encoding attribute and updates it when the encoding changes', async () => { + const {editor, element, component} = buildComponent() + expect(element.dataset.encoding).toBe('utf8') + + editor.setEncoding('ascii') + await component.getNextUpdatePromise() + expect(element.dataset.encoding).toBe('ascii') + }) }) describe('mini editors', () => { diff --git a/src/text-editor-component.js b/src/text-editor-component.js index 60c1e2ea2..15ec36541 100644 --- a/src/text-editor-component.js +++ b/src/text-editor-component.js @@ -361,7 +361,7 @@ class TextEditorComponent { className = className + ' mini' } - const dataset = {} + const dataset = {encoding: model.getEncoding()} const grammar = model.getGrammar() if (grammar && grammar.scopeName) { dataset.grammar = grammar.scopeName.replace(/\./g, ' ')