diff --git a/core/modules/ckeditor/lib/Drupal/ckeditor/Plugin/Editor/CKEditor.php b/core/modules/ckeditor/lib/Drupal/ckeditor/Plugin/Editor/CKEditor.php
index f0124ba..3d62ed8 100644
--- a/core/modules/ckeditor/lib/Drupal/ckeditor/Plugin/Editor/CKEditor.php
+++ b/core/modules/ckeditor/lib/Drupal/ckeditor/Plugin/Editor/CKEditor.php
@@ -202,13 +202,25 @@ public function getJSSettings(EditorEntity $editor) {
       $settings += $plugin->getConfig($editor);
     }
 
+    // Fallback on English if no matching language code was found.
+    $display_langcode = 'en';
+
+    // @todo cache language list from CKEditor, to avoid costly file operations.
+    $ckeditor_languages = glob(DRUPAL_ROOT . '/core/assets/vendor/ckeditor/lang/*.js');
+    foreach ($ckeditor_languages as $language_filename) {
+      $langcode = basename($language_filename);
+      if ($langcode == $language_interface->id()) {
+        $display_langcode = $language_interface->id();
+      }
+    }
+
     // Next, set the most fundamental CKEditor settings.
     $external_plugin_files = $this->ckeditorPluginManager->getEnabledPluginFiles($editor);
     $settings += array(
       'toolbar' => $this->buildToolbarJSSetting($editor),
       'contentsCss' => $this->buildContentsCssJSSetting($editor),
       'extraPlugins' => implode(',', array_keys($external_plugin_files)),
-      'language' => $language_interface->id,
+      'language' => $display_langcode,
       // Configure CKEditor to not load styles.js. The StylesCombo plugin will
       // set stylesSet according to the user's settings, if the "Styles" button
       // is enabled. We cannot get rid of this until CKEditor will stop loading
