in

NVIM v0.4.0 · neovim / neovim @ e2cc5fe, Hacker News

NVIM v0.4.0 · neovim / neovim @ e2cc5fe, Hacker News


        

    

  

            

Permalink

  

Browse files

)       NVIM v0.4.0     

    

This release represents ~ 2700 commits since v0.3.4, the previous non-maintenance release. Besides the highlights listed below, this release features vast improvements to documentation, internal subsystems and test / CI infrastructure, and 700   patches merged from Vim.  FEATURES:  New API functions:   nvim_create_buf: create various kinds of buffers   nvim_get_context, nvim_load_context     8e6b0a7# 10619API: Context: save / restore / inspect editor state   nvim_input_mouse: perform mouse actions   nvim_open_win: create floating windows (and external, for supporting UIs)   nvim_paste: paste text at cursor   nvim_put: put text at cursor   nvim_select_popupmenu_item: perform popupmenu actions   nvim_set_keymap: create / delete mappings   nvim_set_vvar: set v: variables   nvim_ui_pum_set_height   nvim_ui_try_resize_grid   nvim_win_close: close windows   nvim_win_get_config: get window configuration   nvim_win_set_config: reconfigure windows  New UI events:   redraw.grid_destroy   redraw.hl_group_set     8a3f 858# 10504UI / highlight: expose builtin highlight groups using hl_group_set event   redraw.msg_clear   redraw.msg_history_show   redraw.msg_ruler   redraw.msg_set_pos   redraw.msg_show   redraw.msg_showcmd   redraw.msg_showmode   redraw.win_close   redraw.win_external_pos   redraw.win_float_pos   redraw.win_hide   redraw.win_pos  APIF5C  (F0)# 9170API / Lua: nvim_buf_attach: support Lua callback(d)  C0# 9896API: emit nvim_error_event on failed async requestb9ad 12 e# 9992UI / nvim_ui_attach (): add `override` option3d1ed7c# 9993UI / ext_messages: learn more message kinds8ed 54 bb# 9547proper multiline error message for rpcrequest, API wrappers  Lua This release introduces "Nvim-Lua standard library". See ": help lua-stdlib".(D7E)# 9463Lua stdlib: vim.inspect, string functions8e  (C5)# 9740Lua: generate documentation from docstrings1cbe0 14# 9301lua / stdlib: Introduce vim.shared(c) *********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************** C)# 10123Lua: introduce vim.loop (expose libuv event-loop)81 E1DBC# 10120Lua: vim.schedule (cb )(1f) ******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************** (f)# 10688Lua: minimal UTF - 16 support needed for LSP****** (6fb)  20# 10513Lua encoding support     ******** (C0)  edLua: support getting UTF - 32 and UTF - 16 sizes of replaced text     B0E 2619Lua: add {old_byte_size} to on_lines buffer change event  UI: - The Nvim 0.3.4 UI protocol introduced line-based updates instead of   legacy char-based updates. Nvim 0.4 continues to evolve the UI   protocol. See ": help ui". Legacy UI clients are supported. See   ": help api-contract".********** (9a) *********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************** (b)# 6619Floating windows   - Can be (re) positioned, anchored, external.   - Are real windows showing real buffers. No shortcuts, hacks, or compromises.   - Support all features and API of normal windows, plus more.6427894# 8455Multigrid: "windows drawn on separate grids"   - Windows are logically isolated internally.   - Windows are sent to UIs as distinct objects, so that UIs can control     layout instead of being stuck with the classic TUI layout.   - Per-window font-size, dimenions, line-spacing.   - Compositor: Internal subsystem for composing grids.3855204# 6917UIEnter, UILeave788 BCBB# 9923ui: ": syn blend=", 'winblend'7cf7c0a(#) ui: 'redrawdebug' option for flexible debugging of redrawing5C 836 D2# 9607wildoptions=pum (enabled by default)37 f8df8# 9571UI: 'pumblend' option for semi-transparent popupmenuC 403 A 95# 9446Visual: highlight char-at-cursor   - Traditionally Vim's visual selection does "reverse mode", which     perhaps conflicts with the non-blinking block cursor. But     'guicursor' defaults to a vertical bar for selection=exclusive, and     this confuses users who expect to see the text highlighted.  : terminalFC  (DC9)# 8550autocmds: TermEnter, TermLeaveD 13803 f# 9810keymap, terminal: more keycodes3b  (f)# 9535: terminal: Fix F1-F4 key codes2d4a  (e)# 10370: ls: show "R", "F" for terminal- jobsFD0FD 75# 9966terminal: swap priority of terminal, editor highlights7bb 858 c# 9494libvterm 0.1  TUI3afb 397syntax, TUI: support "strikethrough"ccbcd 39# 9408TUI: "title stacking" unconditionally(f)(#) TUI: detect background color, set bg=dark / light(f) *************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************** (a)# 9097TUI: handle Smulx extension capability (extended underline)424 DDD0# 10205TUI: support rgba background det ection(9b)# 9601TUI: italics in tmux, Terminal.appF6FB 370# 9793keymap: support more (keypad) keycodes(e)# 9423TUI: Konsole DECSCUSR fixup  : checkhealthD0FD 66 bhealth / provider.vim: check curl HTTPS support(c)  a# 10490checkhealth: try yarn if npm is missing(A4)# 9929health: check if tmux enabled true colorsec5a4d8# 9548checkhealth: validate locale  providers (clipboard, python, etc.):96 be8a2# 10161Allow reloading providers (useful for UIs / clients)(db3c)# 9487provider: improve error message if provider is missing  Various:36762 A0# 9295signs: support multiple columns801 fe 79# 10382eval: wait () (wait for any condition)9df3a 67# 10400MsgArea highlight; message grida9bea8c# 10790keymap : allow modifiers to multibyte chars, like25 E0A 44# 10878# 4448paste: redesign (10 x   faster pasting; extensible vim.paste Lua hook)EF 5037 e# 9706autocmd : introduce "   once" feature175398 f# 9616add CompleteChanged autocmd7fcf2f9# 9717TextYankPost: add v: event ["inclusive"]3A 699 A7# 8364termdebug.vim pluginCA1CE 59# 9709performance: use os_copy to create backupsed0e 96 cman.vim: set 'linebreak'70 f 6939# 9564events: add "Signal" eventf 89 d0d8# 9568inccommand: auto-disable if folding is slow  FIXES:(BB)  b# 10584process_stop: uv: do not close stdin first / explicitlye 50 aa2a# 10117normal: Don't exit CTRL-O mode after processing K_EVENT(fa)  c# 9504: recover: Fix crash on non-existent * .swp(5A)  d4# 9507screen: don't unconditionally clear messages on window scroll149 DCBF# 10021channel: refactor events, prevent recursive invocation of events(D)  FF 73# 10107Fix multiple c_CTRL-D showing statusline(b)  a7b7# 10103Fix wildmode=list, full and display =msgsep interaction0be6d3c# 9634fsync: Ignore ENOTSUP. Fix writing to SMB.B 247 C6F# 10025kbtree: pointer UB and unitialized value fixes018 e0d5# 9643API / buffer-updates: always detach on buf-reload(ee)# 9961API: fix cursor position when lines are added769 f 44 e# 9911win / defaults: Use "… / nvim-data / site" in 'runtimepath'83 d 5716# 9911spellfile.vim: store files in stdpath ('data')8dbf 231# 9887RPC: conform message-id type to msgpack-RPC spec5f  (E3)# 9894options: properly reset directories on 'autochdir'4c4a 570# 9807various CursorMoved fixes943 bedf# 9853event-loop: do not set CA_COMMAND_BUSY9d 207 fd# 9693dictwatcheradd (): support b: changedtick2D  (BF3)# 9789mac: fix locale detectionC 563133# 9754: mksession: restore tab-local working directories0 92 e7e6# 9703# 9703executable (): return false if user is not owner(a)  f# 9686env var fixes / improvements8e 54847# 9666# 7920os / env: Fix completion of multibyte env var names5193826# 10468Fix is_executable_in_path () on Windows8eaa 452# 9516win: exepath (), executable () fixesf 55 c1e4# 10544reltimefloat (): allow negative resultb 08 DC3e# 10561win: jobstart (), system (): $ PATHEXT-resolve exe7cc2b 72# 10392TextYankPost: spurious / too-early dispatch during delete(6e) ******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************** (ed6)OpenBSD : stop jobs / processes properly58 dd5fc# 10522jobstop (): close channel before process_stop ()8363202# 10959improved resize behavior (all UIs)c6eb1f4# 10830API: fix nvim_command_output buffer overflowcbfd 18 c# 10763startup: handle 'guicursor' after user config(B8F)# 10915jobwait (): fix race if job exits quickly2fafed6# 10765clipboard: handle / avoid SIGTERM with previous owner(8aca)# 9954clipboard: setreg ("*") with clipboard=unnamed(3f)  c5b# 9480performance: clipboard / macOS: assume that pbcopy works48 EFAFC# 10398screen: disable redrawing inside VimResized5e4b 93 a# 10389API / Lua: make nvim_execute_lua use native lua floats, not special tables8c6f5b7(#) Spurious quote mark in command line when typingA8A 38 f3Lua 5.2 / 5.3 compat  : terminal(B7B)(#) : terminal: update buffer when switching tabpage5225 C1E# 9605terminal: Fix potential invalid local 'scrollback'(f6be)# 8325: terminal: set topline based on window height8171 e 96# 9551Improve: terminal resizeD  (b)# 9856: stopinsert should leave terminal-mode3f 71218# 9926: terminal: fix: Using `: stopinsert` while in normal mode5020 daa# 9883ui / terminal: make terminal state redraw like any other state  TUI:9f 19 E8D# 9443TUI: Do not disable BCE for builtin terminfosA 4076 E5# 9474win / TUI: fix text overrides line numbers533 d4a3# 9645TUI: do not resize host-terminal on startupB 51 e5d8# 9688tui_tk_ti_getstr: handle weird value1f5eac1# 10785TUI: fix data-race during resize  CHANGES:9697 c7 f# 8194fix menu_get ()7f2e 43 C# 9520improve Lua error messages(c)# 9526Remove jemallocBAF 93 D9# 9581UI: always use concrete colors for default_colors_set91688 B4# 9563defaults: set 'scrollback' to -1 by defaultBB 24 fec# 10136defaults: exclude "S" from 'shortmess'ddd0eb6# 8540startup: -es / -Es (silent / batch mode): skip swapfile3536249# 9805jumplist: avoid extra tail entry939 d 905# 10573channels: reflect exit due to signals in exit status code45 C  (bd)# 10689: doautocmd : Never show "No matching autocommands"FB 19 aee# 9110API: make nvim_win_set_option () set window-global, not buffer-localabfc8b3(#) emsg_multiline: log Vim errors(D9CC7)# 10657exists ("$ FOO"): return false for empty env var6616 d1d# 10743win / env: Vim-compat: Empty string deletes env var7D 66483# 10662win: expand nested env var in $ HOME2816 BC8# 8349edit.c: Disable indent during completion58 f 505 d# 9829startup: remove TUI init special-case     Historically Vim / Nvim does backflips to handle input and show messages     before a UI is available. This logical contradiction was already fixed     for remote UIs (#C 236 e 80). Fixing it also for the TUI avoids     problems on Windows, simplifies the logic, and avoids races like# 9959.

  

  

  • Loading branch information
  •     

  

           

  

    

     

        

          

     @@ – 115, 12 115, 12 @@ set_property (CACHE CMAKE_BUILD_TYPE PROPERTY  

    

  

  

    

  

  

    

  

  

    

  

  

    

  

  

    

  

  

    

  

  

    

  

  

    

  

  

    

  

  

    

  

  

    

  

  

    

  

  

    

  

  

    

  

                          
       set(NVIM_VERSION_MAJOR 0)
       set(NVIM_VERSION_MINOR 4)
       set(NVIM_VERSION_PATCH 0)
       set(NVIM_VERSION_PRERELEASE– dev)#for package maintainers
       (set) NVIM_VERSION_PRERELEASE“”)(#) for package maintainers
       
       # (API level)
       set(NVIM_API_LEVEL 6)#Bump this after any API change.
       set(NVIM_API_LEVEL_COMPAT 0)# (Adjust this after a _breaking_ API change.)
       set(NVIM_API_PRERELEASE (true) )
       set(NVIM_API_PRERELEASE (false) )
       
       file(TO_CMAKE_PATH$ {CMAKE_CURRENT_LIST_DIR}/ .git F ORCED_GIT_DIR)
       include(GetGitRevisionDescription)
                          

  

       

  

    

     


Read More
Payeer

What do you think?

Leave a Reply

Your email address will not be published. Required fields are marked *

GIPHY App Key not set. Please check settings

Gold Price Makes Comeback Rally Over Mideast Tensions, Crypto Coins News

Gold Price Makes Comeback Rally Over Mideast Tensions, Crypto Coins News

Will Mapping Ancient Rome Save Western Urbanism — and Civilization ?, Hacker News

Will Mapping Ancient Rome Save Western Urbanism — and Civilization ?, Hacker News