Documentație / IDE-ul

Editor și limbaje

Limbaje cu evidențiere de sintaxă, servere de limbaj, motorul Java nativ și uneltele de editare de zi cu zi.

Editorul Yuli are evidențiere semantică, completare automată, code lens, formatare și diagnostice în timp real. Munca grea o face motorul nativ, așa că editorul rămâne agil chiar și în depozite mari.

Limbaje cu evidențiere de sintaxă

Familie Limbaje și fișiere
JVM Java, Kotlin, Scala, Groovy și Gradle
Web JavaScript, TypeScript, JSX și TSX, HTML, CSS, SCSS și LESS
Java web clasic JSP, JSPF, JSPX, TAG, TLD și XHTML
Sisteme C, C++, C#, Go, Rust, Swift și Dart
Scripting Python, Ruby, PHP, Perl, Lua, R, Shell, PowerShell și Batch
Date SQL, JSON, YAML, TOML, XML, GraphQL și Protobuf
Configurare .properties, .env, INI, Dockerfile, Jenkinsfile, Terraform, Makefile și .gitignore
Documente Markdown

Codul PL/SQL este recunoscut după conținut.

Servere de limbaj

Pentru unele limbaje, Yuli folosește un server de limbaj (LSP) care oferă completare automată și diagnostice complete.

Server Limbaje
Eclipse JDT LS Java
typescript-language-server TypeScript și JavaScript
vscode-css-language-server CSS, SCSS și LESS
Pyright Python
rust-analyzer Rust

Instalare cu permisiunea ta

Nimic nu se descarcă în tăcere. Dacă lipsește serverul unui limbaj, apare avertismentul „Niciun server de limbaj pentru…” cu Instalează…. Când accepți, Yuli îl descarcă și îi verifică suma SHA-256.

Gestionează serverele în Opțiuni globale → Servere de limbaj.

Motorul Java nativ

Java are în plus un motor propriu de inteligență a codului, scris în Rust:

  • Analizează cu Tree-sitter și salvează un graf de simboluri în SQLite.
  • Rezolvă tipurile cu compilatorul Java, pentru exactitate.
  • Citește classpath-ul Maven și Gradle fără să depindă de uneltele lor și înțelege proiectele Ant și Eclipse fără migrare.
  • Cunoaște Spring, JPA și Hibernate, Lombok, Jakarta, Struts și JBoss.
  • Reindexează doar ce s-a schimbat.

Vezi Inteligența codului.

Editare

Funcție Cum
Completare automată Ctrl+Space
Acțiuni rapide (quick fix, import, întreabă agentul) Alt+Enter sau Ctrl+.
Reformatare Ctrl+Alt+L
Optimizarea importurilor Ctrl+Alt+O
Comentare sau decomentare Ctrl+/
Căutare în fișier Ctrl+F
Căutare și înlocuire în fișiere Ctrl+Shift+S
Salt la linie Ctrl+G
Încadrarea liniilor Alt+Z

Salvare automată

Yuli salvează după o pauză în scriere și la schimbarea ferestrei. Se configurează în Opțiuni globale → Build, rulare și depanare, împreună cu restul build-ului.

Vizualizare împărțită

Ctrl+\ împarte la dreapta, iar Ctrl+Shift+\ în jos. Poți deschide alături orice fișier din proiect, o clasă dintr-o bibliotecă externă (sursă sau decompilată, doar citire) sau un fișier din alt proiect. Selectorul are căutare fuzzy.

Comparator

Instrumente → Comparator de text… compară două texte, iar Compară fișierul activ cu vizualizarea împărțită compară cele două părți, cu diff alăturat sau în linie.

Fișiere speciale

Fișier Ce oferă Yuli
.properties Editor de mesaje: tabel cheie × limbă pentru fiecare bundle (Struts, JSTL, Spring), chei lipsă sau în plus, cu respectarea Latin-1 sau UTF-8.
hbm.xml și hibernate.cfg.xml Ctrl+Clic de la clasă la entitate și de la proprietate la câmp; validarea tabelelor și coloanelor față de baza de date.
XML-ul proiectului Formatează documentul pentru pom.xml, web.xml, struts-config.xml, descriptorii Eclipse, TLD și JSPX, cu respectarea comentariilor și a secțiunilor CDATA.
Markdown, OpenAPI și documente Previzualizare.
Configurația echipei, pluginuri și CI Validare și completare automată cu scheme JSON.

Diagnostice care nu deranjează

Nimic nu este scris lângă cod. Fragmentul cu o problemă capătă nuanța ei și o linie subțire dedesubt; mesajul apare când treci cu mouse-ul peste el.

Nuanță Semnificație
Roșu Eroare
Galben Avertisment
Albastru Informație
Gri cursiv Cod nefolosit

Severitățile analizei se împart în blocantă, critică, majoră, minoră și informativă.

Completare automată

Completarea în linie a motorului local este mereu disponibilă. Completarea cu IA vine dezactivată și se activează la alegere, cu furnizorul și modelul preferat.

Aspect

Teme luminoase și întunecate, cu o paletă de cod sobră, gândită pentru zile lungi de lucru. Fontul, minimap-ul, ligaturile și spațierea se ajustează în Opțiuni globale → Editor.