MĂ« 29 mars 2026 u mbajt lĂ«shimi editori i tekstit Neovim nĂ« versionin 0.12, dhe mĂ« 6 prill doli njĂ« lĂ«shim 0.12.1. Ky Ă«shtĂ« njĂ« nga lĂ«shimet mĂ« tĂ« mĂ«dha nĂ« kohĂ«t e fundit: janĂ« mbyllur mbi 340 detyra, janĂ« shtuar menaxheri i brendshĂ«m i plugin-eve, klienti HTTP, komanda e rineÄejsĂ«s, si dhe Ă«shtĂ« zgjeruar ndjeshĂ«m klienti LSP i brendshĂ«m dhe Ă«shtĂ« riprojektuar nĂ« mĂ«nyrĂ« eksperimentale nĂ«n-sistemi i mesazheve.
Ndryshime të pa kompatibël:
- janë fshirë API i skaduar vim.diagnostic;
- Ctrl-R në modalitetin e vendosjes tani punon ashtu si vendosja;
- mbështetje për Python 3.7 dhe 3.8 në ofrues;
- plugin-i shellmenu u anulua, tohtml u zhvendos në pack/dist/opt/;
- Treesitter: direktiva offset! aplikohen për të gjitha captures, get_parser kthen nil në rast gabimi, u hoq opsioni 'all' në Query:iter_matches;
- LSP: textDocument/codeLens u rishkrua si provider dekorate;
- UI: ext_messages u ndan nga rrjeti i mesazheve;
- Mbështetje për RFC 3986 në path_with_url.
Menaxheri i brendshëm i plugin-eve (vim.pack):
Shtuar menaxher i brendshëm eksperimental i plugin-eve vim.pack. Mbështet lockfile për bllokimin e versioneve, përditësime offline, në caktimin e versioneve të synuara, buffer konfirmimi me navigim në [[[\/]] dhe veprimet e kodit. Informacioni mbi VCS është në dispozicion përmes vim.pack.get. Progresi i operacioneve në tabelën e aksesueshmërisë së shfletuesit). përmes nvim_echo me kind=progress. E integruar me checkhealth.
LSP:
Klienti LSP i brendshëm mori një përditësim të gjerë:
- një komandë :lsp për menaxhimin interaktiv të klientëve;
- vim.lsp.enable dhe vim.lsp.is_enabled për menaxhimin e serverëve LSP sipas nevojës;
- autodopimi i brendshëm në modalitetin e vendosjes me mbështetje completionItem/resolve (kur completeopt=popup), parapamjen e snippeteve dhe ngjyrave, mbështetje CompletionItem.labelDetails;
- shquar incrementale përmes textDocument/selectionRange, duke përfshirë në modalitetin operator-pending;
- textDocument/documentColor është aktivizuar automatikisht, mbështetje e shtuar për colorPresentation;
- mbështetje textDocument/documentLink, textDocument/inlineCompletion, textDocument/onTypeFormatting;
- codeLens shfaqen nëpërmjet rreshtash virtuale përmes provider-it të dekoratave;
- përmirësime të tokenëve semantikë: tokenë shumë-rreshtëshe, kërkesat range dhe full;
- mbështetje diagnoza e ambientit të punës, regjistrimi dinamik, kërkesa diagnostic/refresh;
- ndriçimi i simboleve të rinovuar, mbështetje redaktimet e tekstit të annotuara dhe rrethinat e redaktimit të lidhura;
- mapimet e reja nĂ« mĂ«nyrĂ« tĂ« parazgjedhur: grt â kalimi nĂ« llojin e pĂ«rcaktuar, grx â fillimi i codeLens;
- Klientët LSP automatizohen automatikisht kur ndryshohet filetype;
- u shpallën të skaduar vim.lsp.stop_client dhe vim.lsp.util.stylize_markdown.
Komanda :restart dhe :detach:
Komanda e re :restart e rindez Nvim dhe ripërqendron UI aktual. Mbështetje për :detach dhe :restart në Windows. Të dy punojnë në të gjitha platformat.
Rrjeti (vim.net):
Shtuar klienti HTTP i integruar vim.net.request dhe :edit url. Variant vim.net.request me argumentin outbuf shkruan përgjigjen e serverit drejtpërdrejt në buferin e caktuar.
UI dhe mesazhe:
- ui2 â ripĂ«rpunim eksperimental i nĂ«nsistemit tĂ« mesazheve dhe linjĂ«s sĂ« komandĂ«s, ext_cmdline/messages pĂ«r TUI;
- grupet e reja të theksimit hl-StderrMsg dhe hl-StdoutMsg;
- nvim_echo mbështet ngjarjet e progresit me kind=progress;
- barra e statusit e parazgjedhur tregon numrat e diagnostikimit, progresin dhe statusin LSP, gjendja e ngarkesës bufert;
- kornizën e menusë së shkonte pumborder me shiritin e skrollit.
API i Lua:
- lloje të reja vim.Pos dhe vim.Range për punën me pozitat dhe intervalet, konvertimi midis formateve të pozitave të kursorit, extmark, Vim dhe LSP;
- vim.list.bisect, vim.list.unique;
- Iter:unique, Iter:peek dhe Iter:skip për itera të non-list;
- vim.wait kthen rezultatet e callback;
- vim.json.encode mbështet printimin e bukur dhe sort_keys;
- parametri sjellja në formën e një funksioni për tbl_extend dhe tbl_deep_extend;
- moduli i ri vim._async.
Diagnostika:
- diagnostic.status me formatimi i personalizuar dhe theksimi;
- filtri i aktivizuar, opsioni format për setloclist/setqflist;
- Callback on_jump;
- kalimi në informacionin e lidhur nga open_float;
- mbivendosja e theksimeve DiagnosticUnnecessary dhe DiagnosticDeprecated.
Treesitter:
- theksimi i Markdown është aktivizuar nga defaulti;
- theksimi incremental bazuar në Treesitter.
Ndryshime të tjera:
- :wall ++p krijon direktoret prind për çdo bufer;
- exrc kërkon skedarë konfigurimi në direktoret prind me si një konfirmim të obligueshëm përmes :trust;
- :source mund të ekzekutojë blloqe Lua dhe injeksione Treesitter;
- nvim_open_tabpage â API pĂ«r krijimin programatik tĂ« skedave;
- nvim_set_hl me parametrin update përditëson atributet e veçanta të theksimit pa zëvendësuar të tjerat;
- stil bold dhe simboli personalizuar në winborder;
- mbështetje statusline në dritaret fluturuese;
- emri .nvimlog ndryshohet në nvim.log;
- theksimi i tabstop aktiv në snippete;
- Runtime i integruar për undotree;
- shelltemp=false si parazgjedhje;
- Spellfile ruan në stdpath data;
- maksimumi i rezultateve të kërkimit është rritur në 999;
- parseri i konfigurimit SSH;
- dalja e sinkronizuar në terminal (mode 2026);
- terminali tregon kodin e daljes nëpërmjet tekstit virtual.
Neovim 0.12.1:
ShpĂ«rndarja e korrigjimit nga 6 Prill 2026 me 26 korrigjime gabimesh dhe njĂ« mundĂ«si tĂ« re â :restart rikonketon tĂ« gjithĂ« UI-nĂ«. NĂ« mesin e korrigjimeve tĂ« rĂ«ndĂ«sishme:
- :restart: trashĂ«gimia stderr nĂ« Unix, pĂ«rpunimi i saktĂ« âheadless;
- LSP: ripërsëritja e kërkesës codeLens refresh, parapamjen e snippeteve, rikthimi i versionit të ngjyrës së dokumentit;
- ui2: përkëdhelje gjatë kalimit në pager, lidhet gabim nga buferi, përditësimi i spill indicator;
- Treesitter: the encoding with unicode characters at the end of the node;
- vim.net: archiving URL processing via tar/zip;
- vim.pack: using uv.available_parallelism to calculate the number of threads;
- Vim security patches: bypassing security model via modeline, bypassing the path in zip.vim;
- Optimizing vim.pos: using nvim_buf_line_count instead of loading all lines.
Burimi: linux.org.ru
