Belgeler / IDE

Dil sunucuları ve build

Yuli'nin npm veya sistem Node'u olmadan sizin için kurup bakımını yaptığı dil sunucuları ve Python, Go, .NET, sbt, Bazel ve Node için build adaptörleri.

Yuli her dil için referans dil sunucusunu (LSP) kullanır ve onu sizin yerinize yönetir: izninizle indirir, doğrular ve projelerinizin dışında tutar. Java'nın kendine ait yerel bir motoru vardır; CSS, SCSS ve LESS ise düzenleyici tarafından çözümlenir.

Yönetilen sunucular

Dil Sunucu Nereden kurulur
TypeScript ve JavaScript typescript (gerçek tsserver) ile typescript-language-server npm kayıt deposu
Python Pyright npm kayıt deposu
Go gopls go install
Kotlin kotlin-language-server GitHub zip'i
C# csharp-ls dotnet tool
PHP Intelephense npm kayıt deposu
Ruby ruby-lsp gem
C ve C++ clangd 19.1.2 GitHub zip'i
Bash bash-language-server npm kayıt deposu
Dockerfile dockerfile-language-server-nodejs npm kayıt deposu
Rust rust-analyzer GitHub ikili dosyası

Bilgisayarınızda npm veya Node olmadan

  • Paketler doğrudan npm kayıt deposundan indirilir ve kayıt deposunun yayımladığı SHA-512 özetiyle karşılaştırılır.
  • Kurulum betikleri ve isteğe bağlı bağımlılıklar çalıştırılmaz.
  • Yuli'nin kendi Electron'u üzerinde Node kipinde ya da Yuli'nin indirdiği bir Node üzerinde çalışırlar. npm veya Node kurulu olması gerekmez.
  • <runtimes>/<sunucu>/<sürüm>/ içinde saklanırlar.
  • Bir indirme yalnızca 60 saniye boyunca hiç veri gelmezse kesilir; yavaş ama etkin bir indirme yarıda bırakılmaz.

Yuli'nin runtime klasörü (<runtimes>) sisteme göre değişir:

%LOCALAPPDATA%\.yulicode\runtimes

İzninizle

Bir dilin sunucusu eksikse düzenleyici şu seçeneklerle «… için dil sunucusu yok» uyarısını gösterir:

Seçenek Ne yapar
İndirmeye izin ver / Kuruluma izin ver Yuli sunucuyu kurar ve başlatır
Şimdi değil Bu oturum boyunca bir daha sormaz
Bir daha sorma O sunucu için kararınızı hatırlar

İzniniz olmadan hiçbir şey indirilmez veya çalıştırılmaz. Kararlar, ayarlarınızın yanındaki lsp-install-consent.json dosyasında sunucu ve hedef (bu bilgisayar veya uzak bir ana makine) bazında saklanır.

Genel seçenekler → Dil sunucuları bölümünde, zaten sahip olduğunuz bir sunucunun yolunu ya da güvendiğiniz bir URL'yi veya yansıyı belirtebilirsiniz.

Build adaptörleri

Yuli, her projenin nasıl derlendiğini dosyalarından, bunu öğrenmek için hiçbir şey çalıştırmadan algılar ve bu araçları derlemek, çalıştırmak, test etmek ve sonuçları Testler panelinde göstermek için kullanır.

  • Yöneticiler: pip (requirements*.txt, setup.py veya sade bir pyproject.toml), Poetry, uv, Pipenv ve Hatch.
  • Ortam: Projenin sanal ortamını kullanır (.venv/venv, Poetry ve Pipenv klasörleri ya da Hatch'inki). Ortam yoksa yöneticinin run komutunu, o da yoksa sistemin Python'unu kullanır.
  • Testler: Proje pytest'i yapılandırıyor veya ona bağımlıysa pytest; aksi hâlde unittest.
  • Aynı ortam Pyright'a da aktarılır; böylece otomatik tamamlama bağımlılıklarınızı görür.

Maven, Gradle, Ant ve Cargo her zamanki gibi çalışır; bkz. Çalıştırma ve hata ayıklama.

Kenar boşluğundaki ▶

Kodun yanında, önünüzdekini çalıştırmak veya hata ayıklamak için bir ▶ görünür. Yalnızca proje gerçekten o türdense gösterilir.

Dil Çalıştır Hata ayıkla
Python if __name__ == "__main__": ve pytest ya da unittest testleri if __name__ == "__main__":
Go func main ve func TestX func main ve func TestX
C# xUnit, NUnit ve MSTest testleri static void Main(

Ayrıca bir package.json içinde her betiğin kendi ▶ düğmesi vardır (projenin paket yöneticisiyle çalışır); Java'da ise main içeren sınıflar, testler ve Maven ile Gradle görevleri için ▶ bulunur.

Hata ayıklama oturumları için Hata ayıklama, düzenleyicinin geri kalanı için Düzenleyici ve diller sayfasına bakın.