diff --git a/x-pack/plugins/code/public/monaco/monaco.ts b/x-pack/plugins/code/public/monaco/monaco.ts index 4ea115993d089..fcfa93a5544f1 100644 --- a/x-pack/plugins/code/public/monaco/monaco.ts +++ b/x-pack/plugins/code/public/monaco/monaco.ts @@ -63,7 +63,7 @@ import lightTheme from '@elastic/eui/dist/eui_theme_light.json'; // import 'monaco-editor/esm/vs/basic-languages/css/css.contribution.js'; // import 'monaco-editor/esm/vs/basic-languages/dockerfile/dockerfile.contribution.js'; // import 'monaco-editor/esm/vs/basic-languages/fsharp/fsharp.contribution.js'; -// import 'monaco-editor/esm/vs/basic-languages/go/go.contribution.js'; +import 'monaco-editor/esm/vs/basic-languages/go/go.contribution.js'; // import 'monaco-editor/esm/vs/basic-languages/handlebars/handlebars.contribution.js'; // import 'monaco-editor/esm/vs/basic-languages/html/html.contribution.js'; // import 'monaco-editor/esm/vs/basic-languages/ini/ini.contribution.js'; diff --git a/x-pack/plugins/code/public/monaco/monaco_helper.ts b/x-pack/plugins/code/public/monaco/monaco_helper.ts index d5884e98998c6..9d56388cf6215 100644 --- a/x-pack/plugins/code/public/monaco/monaco_helper.ts +++ b/x-pack/plugins/code/public/monaco/monaco_helper.ts @@ -5,6 +5,7 @@ */ import { editor } from 'monaco-editor'; +import chrome from 'ui/chrome'; import { ResizeChecker } from 'ui/resize_checker'; import { EditorActions } from '../components/editor/editor'; import { provideDefinition } from './definition/definition_provider'; @@ -43,6 +44,9 @@ export class MonacoHelper { this.monaco.languages.registerDefinitionProvider('java', definitionProvider); this.monaco.languages.registerDefinitionProvider('typescript', definitionProvider); this.monaco.languages.registerDefinitionProvider('javascript', definitionProvider); + if (chrome.getInjected('enableLangserversDeveloping', false) === true) { + this.monaco.languages.registerDefinitionProvider('go', definitionProvider); + } const codeEditorService = new EditorService(); codeEditorService.setMonacoHelper(this); this.editor = monaco.editor.create( diff --git a/x-pack/plugins/code/server/init.ts b/x-pack/plugins/code/server/init.ts index 2463e05112397..99893259e9cc4 100644 --- a/x-pack/plugins/code/server/init.ts +++ b/x-pack/plugins/code/server/init.ts @@ -133,14 +133,18 @@ async function initCodeNode(server: Server, serverOptions: ServerOptions, log: L log.info('Initializing Code plugin as code-node.'); const queueIndex: string = server.config().get('xpack.code.queueIndex'); const queueTimeout: number = server.config().get('xpack.code.queueTimeout'); + const devMode: boolean = server.config().get('env.dev'); const adminCluster = server.plugins.elasticsearch.getCluster('admin'); // @ts-ignore const esClient: EsClient = adminCluster.clusterClient.client; const repoConfigController = new RepositoryConfigController(esClient); + server.injectUiAppVars('code', () => ({ + enableLangserversDeveloping: devMode, + })); // Enable the developing language servers in development mode. - if (server.config().get('env.dev') === true) { + if (devMode === true) { LanguageServers.push(...LanguageServersDeveloping); }