-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -- This config is DEPRECATED. -- Use the configs in `lsp/` instead (requires Nvim 0.11). -- -- ALL configs in `lua/lspconfig/configs/` will be DELETED. -- They exist only to support Nvim 0.10 or older. -- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! local util = require 'lspconfig.util' return { default_config = { filetypes = { 'apexcode' }, root_dir = util.root_pattern 'sfdx-project.json', on_new_config = function(config) if not config.cmd and config.apex_jar_path then config.cmd = { vim.env.JAVA_HOME and (vim.env.JAVA_HOME .. '/bin/java') or 'java', '-cp', config.apex_jar_path, '-Ddebug.internal.errors=true', '-Ddebug.semantic.errors=' .. tostring(config.apex_enable_semantic_errors or false), '-Ddebug.completion.statistics=' .. tostring(config.apex_enable_completion_statistics or false), '-Dlwc.typegeneration.disabled=true', } if config.apex_jvm_max_heap then table.insert(config.cmd, '-Xmx' .. config.apex_jvm_max_heap) end table.insert(config.cmd, 'apex.jorje.lsp.ApexLanguageServerLauncher') end end, }, docs = { description = [[ https://github.com/forcedotcom/salesforcedx-vscode Language server for Apex. For manual installation, download the JAR file from the [VSCode extension](https://github.com/forcedotcom/salesforcedx-vscode/tree/develop/packages/salesforcedx-vscode-apex). ```lua require'lspconfig'.apex_ls.setup { apex_jar_path = '/path/to/apex-jorje-lsp.jar', apex_enable_semantic_errors = false, -- Whether to allow Apex Language Server to surface semantic errors apex_enable_completion_statistics = false, -- Whether to allow Apex Language Server to collect telemetry on code completion usage } ``` ]], }, }