2026. gada 29. martā notika izlaidums teksta redaktora Neovim versijas 0.12, savukārt 6. aprīlī iznāca labojuma izlaidums 0.12.1. Tas ir viens no lielākajiem izlaidumiem pēdējā laikā: aizvērtas vairāk nekā 340 uzdevumu, pievienots iebūvēts spraudņu pārvaldnieks, HTTP klients, restartēšanas komanda, ievērojami paplašināts iebūvētais LSP klients un eksperimentāli pārstrādāta ziņojumu apakšsistēma.
Nesavietojamas izmaiņas:
- izņemti novecojusi API vim.diagnostic;
- Ctrl-R ievadīšanas režīmā tagad strādā līdzīgi kā ievadīšana;
- pārtraukta atbalsta Python 3.7 un 3.8 sniedzējiem;
- spraudnis shellmenu noņemts, tohtml pārvietots pakotnē/dist/opt/;
- Treesitter: direktīva offset! attiecās uz visiem atvērumiem, get_parser atgriež nil, ja rodas kļūda, pārņemta opcija «all» Query:iter_matches;
- LSP: textDocument/codeLens pārveidots par dekorāciju nodrošinātāju;
- UI: ext_messages atvienots no ziņojumu tīkla;
- Atbalsts RFC 3986 path_with_url.
Iebūvēts spraudņu pārvaldnieks (vim.pack):
Pievienots eksperimentāls iebūvēts spraudņu pārvaldnieks vim.pack. Atbalsta lockfile versiju fiksēšanai, offline atjauninājumus, mērķa versiju norādīšana, apstiprinājuma buferis ar navigāciju pa [[[/] un code actions. Informācija par VCS pieejama, izmantojot vim.pack.get. Darbību progress parādīta caur nvim_echo ar kind=progress. Iebūvēts ar checkhealth.
LSP:
Iebūvētais LSP klients ir saņēmis plašu atjauninājumu:
- jauna komanda :lsp interaktīvai klientu pārvaldībai;
- vim.lsp.enable un vim.lsp.is_enabled LSP serveru pārvaldībai pēc vajadzības;
- iebūvēta automātiskā pabeigšana ievadīšanas režīmā ar atbalstu completionItem/resolve (ja completeopt=popup), sniegums iepriekšskatu un krāsām, atbalsts CompletionItem.labelDetails;
- inkrementālā izcelšana caur textDocument/selectionRange, tostarp operator-pending režīmā;
- textDocument/documentColor ir ieslēgts pēc noklusējuma, pievienots atbalsts colorPresentation;
- atbalsts textDocument/documentLink, textDocument/inlineCompletion, textDocument/onTypeFormatting;
- codeLens parādās virtuālajās rindās caur dekorāciju nodrošinātāju;
- uzlabojumi semantiskajiem simboliem: vairāku rindu simboli, pieprasījumi range un full;
- atbalsts darba telpas diagnostika, dinamiska reģistrācija, pieprasījums diagnostic/refresh;
- simbola pārsaukšanas izcelšana, atbalsts annotated text edits un saistītās rediģēšanas jomas;
- jauni noklusējuma mappingi: grt — pāreja uz tips definīciju, grx — uzsākt codeLens;
- LSP klienti automātiski atvienojas, mainoties filetype;
- novecojusi tiek uzskatīta par vim.lsp.stop_client un vim.lsp.util.stylize_markdown.
Komanda :restart un :detach:
Jauna komanda :restart restartē Nvim un atkārtoti pievieno pašreizējo UI. Atbalsts :detach un :restart Windows. Abas darbojas visās platformās.
Tīkla (vim.net):
Iebūvēts HTTP klients pievienots vim.net.request un :edit url. Variant vim.net.request ar outbuf argumentu ieraksta servera atbildi tieši norādītajā buferī.
UI un ziņojumi:
- ui2 — eksperimentāls ziņojumu un komandrindas apakšsistēmas pārveidojums, ext_cmdline/messages TUI;
- jaunas izcelšanas grupas hl-StderrMsg un hl-StdoutMsg;
- nvim_echo atbalsta progresa notikumus ar kind=progress;
- pārlūka statusa josla parāda diagnostikas skaitītājus, progresu un LSP statusu, aizņemts buferis;
- iznirstošo izvēlņu rāmis pumborder ar ritināšanas joslu.
Lua API:
- jauni tipi vim.Pos un vim.Range darbošanās ar pozīcijām un diapazoniem, konvertēšana starp pozīciju formātiem kursors, extmark, Vim un LSP;
- vim.list.bisect, vim.list.unique;
- Iter:unique, Iter:peek un Iter:skip non-list itereatoriem;
- vim.wait atgriež callback rezultātus;
- vim.json.encode atbalsta pretty-print un sort_keys;
- parametrs behavior kā funkcija tbl_extend un tbl_deep_extend;
- jauns modulis vim._async.
Diagnostika:
- diagnostic.status ar lietotāja formatēšanai un izcelšanai;
- filtra iespēja enabled, format iespēja setloclist/setqflist;
- Callback on_jump;
- pāreja pie saistītās informācijas no open_float;
- izcelšanas pārklājumi DiagnosticUnnecessary un DiagnosticDeprecated.
Treesitter:
- Markdown izcelšana ir ieslēgta pēc noklusējuma;
- inkrementālā izcelšana pamatojoties uz Treesitter.
Citi izmaiņas:
- :wall ++p izveido vecāku direktorijas katram buferim;
- exrc meklē konfigurācijas failus vecākajās direktorijās ar obligāti apstiprinot ar :trust;
- :source var izpildīt Lua blokos un Treesitter injekcijas;
- nvim_open_tabpage — API programmatiskai cilpu veidošanai;
- nvim_set_hl ar atjaunināšanas parametru atjaunina konkrētus izcelšanas atribūtus, nepārsvītrojot pārējos;
- stils bold un pielāgoti simboli winborder;
- atbalsts statusline peldošajos logā;
- nomaina .nvimlog uz nvim.log;
- aktīvā tabstop izcelšana uzsnippetiem;
- Iebūvēts runtime priekš undotree;
- shelltemp=false pēc noklusējuma;
- Spellfile tiek uzglabāta stdpath data;
- meklēšanas rezultātu maksimums palielināts līdz 999;
- SSH konfigurācijas parser;
- saskanīgs izvades terminālī (mode 2026);
- termināls parāda exit kodu caur virtuālo tekstu.
Neovim 0.12.1:
Korekcijas izdevums no 2026. gada 6. aprīļa ar 26 kļūdu labojumiem un vienu jaunu iespēju — :restart pārstartē visus UI. Starp svarīgākajiem labojumiem:
- :restart: inherit stderr uz Unix, pareiza apstrāde —headless;
- LSP: atkārtots pieprasījums codeLens atjauninājumam, sniegums iepriekšskatu, document color versijas atjaunošana;
- ui2: mirgošana, ieejot pager, nepareizas atsauces uz buferi, spill indicator atjaunināšana;
- Treesitter: izcelšana ar unicode simboliem mezgla beigās;
- vim.net: arhivāro URL apstrāde, izmantojot tar/zip;
- vim.pack: uv.available_parallelism izmantošana lai aprēķinātu pavedienu skaitu;
- Vim drošības ielāpi: drošības modeļa apietšana caur modeline, ceļa apietšana zip.vim;
- vim.pos optimizācija: nvim_buf_line_count izmantošana, nevis visu rindiņu ielāde.
Avots: linux.org.ru
