الأمر elide lsp خادم لغة Java يعمل عبر stdio. ويمكن لأي محرر فيه عميل LSP استخدامه؛ أما VS Code و IntelliJ IDEA
و Zed فلكل منها تكامله الخاص (VS Code، IntelliJ IDEA، Zed).
خادم لغة Java
elide lspاضبطه أمرًا للخادم الخاص بلغة java وشغّله من مجلد المشروع. وإذا لم يرسل العميل جذر مساحة العمل، يستخدم الخادم
المجلد الذي بدأ فيه. وداخل مشروع Elide يقرأ الخادم classpath المشروع، فتُحَلّ التبعيات.
| الميزة | طلب LSP |
|---|---|
| التشخيصات | publishDiagnostics، والتشخيصات بالسحب |
| الإكمال، ومساعدة التوقيع | completion، signatureHelp |
| التلميح عند التمرير، والتلميحات المضمّنة | hover، inlayHint |
| التنقل | التعريف، والتصريح، وتعريف النوع، والتنفيذ، والمراجع |
| التسلسلات الهرمية | تسلسل الاستدعاءات وتسلسل الأنواع |
| الرموز | رموز المستند ومساحة العمل |
| التحرير | إعادة التسمية، والتنسيق، وإجراءات الشيفرة، وعدسات الشيفرة |
| العرض | الرموز الدلالية، والطي، ونطاقات التحديد، والتمييز |
يتبع التنسيق Google Java Format، كما يفعل elide javaformat.
Neovim
الإصدار 0.11 من Neovim أو أحدث، في init.lua:
vim.lsp.config("elide", {
cmd = { "elide", "lsp" },
filetypes = { "java" },
root_markers = { "elide.pkl" },
})
vim.lsp.enable("elide")يبدأ الخادم عند فتح ملف Java داخل مجلد فيه elide.pkl؛ ويعرض :checkhealth vim.lsp العميل.
Helix
في ~/.config/helix/languages.toml:
[language-server.elide]
command = "elide"
args = ["lsp"]
[[language]]
name = "java"
roots = ["elide.pkl"]
language-servers = ["elide"]يعرض hx --health java السطر ✓ elide مع مسار الملف التنفيذي عندما يكون elide في PATH.
Debug Adapter Protocol
يخدم Elide بروتوكول Debug Adapter Protocol (DAP) للغات JavaScript و TypeScript و Python. شغّل البرنامج مع
--debugger=dap؛ فيستمع Elide على 127.0.0.1:4711 وينتظر اتصال عميل:
elide run --debugger=dap app.ts
elide test --debugger=dap app.test.tsوجّه أي عميل DAP إلى ذلك العنوان بطلب attach؛ وتعمل نقاط التوقف والتنفيذ خطوة بخطوة والمتغيرات ووحدة تحكم التصحيح
كما في محوّلات DAP الأخرى. ويغيّر --debugger-port و --debugger-host العنوان. أما برامج Java و Kotlin فتستخدم
JDWP بدلًا من ذلك (راجع تصحيح الأخطاء).
Neovim (nvim-dap)
local dap = require("dap")
dap.adapters.elide = { type = "server", host = "127.0.0.1", port = 4711 }
for _, lang in ipairs({ "javascript", "typescript", "python" }) do
dap.configurations[lang] = {
{ type = "elide", request = "attach", name = "Attach to Elide" },
}
endشغّل elide run --debugger=dap في الطرفية، ثم :DapContinue واختر Attach to Elide.
وكلاء البرمجة
يتصل الوكلاء في محررك بـ Elide عبر MCP: الأمر elide mcp للمشروع، و https://elide.help/mcp لهذا التوثيق. راجع
الهندسة الوكيلية.