neovim/neovim.spec

234 lines
7.1 KiB
RPMSpec
Raw Normal View History

#
# spec file for package neovim
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
Accepting request 706262 from home:marxin:branches:editors - Update to version 0.3.7: * 4553fc5 #10082 vim-patch:8.1.1365: :source should check sandbox * 877d539 #10027 genappimage.sh: migrate to linuxdeploy - Update to version 0.3.5: Maintenance release to fix issues found in v0.3.4: * f891131 #9894 options: properly reset directories on 'autochdir' * 9a5488c Remove MSVC optimization workaround for SHM_ALL * 1793ba8 Make SHM_ALL to a variable instead of a compound literal #define * 947069b doc: mention "pynvim" module rename * 46c7e12 #9629 screen: don't crash when drawing popupmenu with 'rightleft' option * f1843c0 vim-patch:8.1.0677: look-behind match may use the wrong line number * 1204421 #8325 :terminal : set topline based on window height * aaa8c3d #9504 :recover : Fix crash on non-existent *.swp - Update to version 0.3.5. - Update to version 0.3.4: * Merge pull request #9492 from bfredl/cul_cole * test: add tests for conceal cursor movement * display: unify ursorline and concealcursor redraw logic * Merge pull request #9490 from bfredl/vim-patch-8.1.0726 - Update to version 0.3.3: * Fixes - Merge pull request from jamessan/revert-pynvim - health/provider: Check for available pynvim when neovim mod is missing - python#CheckForModule: Use the given module string instead of hard-coding pynvim - (health.provider)/python: Import the neovim, rather than pynvim, module - #9423 TUI: Konsole DECSCUSR fixup - Remove not used neovim-0.3.1.tar.gz. - Update to version 0.3.2: * Features - clipboard: support Custom VimL functions (#9304) - win/TUI: improve terminal/console support (#9401) - startup: Use $XDG_CONFIG_DIRS/nvim/sysinit.vim if exists (#9077) - support mapping in more places (#9299) - diff/highlight: show underline for low-priority CursorLine (#9028) - signs: Add "nuhml" argument (#9113) - clipboard: support Wayland (#9230) - TUI: add support for undercurl and underline color (#9052) - man.vim: soft (dynamic) wrap (#9023) * API - API: implement object namespaces (#6920) - API: implement nvim_win_set_buf() (#9100) - API: virtual text annotations (nvim_buf_set_virtual_text) (#8180) - API: add nvim_buf_is_loaded() (#8660) - API: nvm_buf_get_offset_for_line (#8221) - API/UI: ext_newgrid, ext_histate (#8221) * UI - TUI: use BCE again more often (smoother resize) (#8806) - screen: add missing status redraw when redraw_later(CLEAR) was used (#9315) - TUI: clip invalid regions on resize (#8779) - TUI: improvements for scrolling and clearing (#9193) - TUI: disable clearing almost everywhere (#9143) - TUI: always use safe cursor movement after resize (#9079) - ui_options: also send when starting or from OptionSet (#9211) - TUI: Avoid reset_color_cursor_color in old VTE (#9191) - Don't erase screen on :hi Normal during startup (#9021) - TUI: Hint wrapped lines to terminals (#8915) * FIXES - RPC: turn errors from async calls into notifications - TUI: Restore terminal title via "title stacking" (#9407) - genappimage: Unset $ARGV0 at invocation (#9376) - TUI: Konsole 18.07.70 supports DECSCUSR (#9364) - provider: improve error message (#9344) - runtime/syntax: Fix highlighting of autogroup contents (#9328) - VimL/confirm(): Show dialog even if :silent (#9297) - clipboard: prefer xclip (#9302) - provider/nodejs: fix npm, yarn detection - channel: avoid buffering output when only terminal is active (#9218) - ruby: detect rbenv shims for other versions (#8733) - third party/unibilium: Fix parsing of extended capabilitiy entries (#9123) - jobstart(): Fix hang on non-executable cwd (#9204) - provide/nodejs: Simultaneously query npm and yarn (#9054) - undo: Fix infinite loop if undo_read_byte returns EOF (#2880) - 'swapfile: always show dialog' (#9034) - Add to the system-wide configuration file extension of runtimepath by /usr/share/vim/site, so that neovim uses other Vim plugins installed from packages. - Add /usr/share/vim/site tree of directories to be owned by neovim as well. - Use cmake macro for building - Switch used to LuaJIT and run SPEC file through spec-cleaner. - Put the system-wide config in /etc, and just a symlink to $VIM (hopefully finally fixes boo#1098800) - Proper name of the systemwide configuration file is sysinit.vim not init.vim and it should be stored in /usr/share/nvim/sysinit.vim not in /etc/xdg/nvim. - Add default system-wide configuration file to /etc/xdg/nvim/init.vim (boo#1098800) - Add proper location of the default SPEC file templates - Add some packages needed for more robust builds * neovim.patch fix building system * neovim-0.1.7-bitop.patch for use external bit module * neovim-0.2.0-gcc-prototype.patch fix build issue on ppc64 - Update to version 0.3.1: * Features - 07499a8 #8709 man.vim: C highlighting for EXAMPLES section - 07f82ad #8699 TUI: urxvt: also send xterm focus-reporting seqs - 40911e4 #8616 API: emit nvim_buf_lines_event from :terminal - c46997a #8546 fillchars: Add "eob" flag * Fixes - 74d19f6 #8576 startup: avoid blank stdin buffer if other files were opened - 4874214 #8737 Only waitpid() for processes that we care about - cd6e7e8 #8743 Check all child processes for exit in SIGCHLD handler - c230ef2 #8746 channel.c: Prevent channel_destroy_early() from freeing uninitialized rpc stuff - 0ed8b12 #8681 transstr_buf: fix length comparison - d241f27 #8708 TUI: Fix standout mode - 9afed40 #8698 man.vim: fix for mandoc - e889640 #8682 provider/node: npm --loglevel silent - 1cbc830 #8613 API: nvim_win_set_cursor: set curswant - bf6048e #8628 checkhealth: Python: fix VIRTUAL_ENV check - 3cc3506 #8528 checkhealth: node.js: also search yarn * Changes - b751449 #8619 defaults: shortmess+=F - 1248178 #8578 highlight: high-priority CursorLine if fg is set. - 01570f1 #8726 terminal: handle &confirm and :confirm on unloading - 56065bb #8721 screen: truncate showmode messages - bf2460e #7551 buffer: fix copying :setlocal options - c1c14fa #8520 Ex mode: always "improved" (gQ) - 050f397 #7992 options: remove 'maxcombine` option (always 6) * Internal - 463da84 #7992 screen: use UTF-8 representation - Require exact version of libtermkey1 because it does not bump SONAME (boo#1100496). - Remove update-alternatives as it's not 1:1. Upstream is not willing to do that: https://github.com/neovim/neovim/issues/8535 - Update to version 0.3.0 - Add a support for update-alternatives, so users can change their "vim" to neovim - Mark LICENSE file as %license - The library bump fixes boo#1094627. - Require libtermkey version >= 0.20. - Make build result independent from build hostname and username - Update to version 0.2.2: * Features + 'viewoptions': add "curdir" flag + node.js remote-plugin support + :checkhealth : validate 'runtimepath' * Fixes + :terminal : fix crash on resize + work around gnome-terminal memory leak + 'guicursor': use DECSCUSR for xterm-likes + 'os_open: UV_EINVAL on NULL filename' + :checkhealth : fix check for npm and yarn + health.vim: normalize slashes for script path + cmake: install runtime/rgb.txt + runtime: syntax error in `runtime/syntax/tex.vim` + tutor: some fixes + windows: provider: Detect(): return *.cmd path * Changes + remove legacy alias to `v:count` + runtime: revert netrw update + defaults: scrollback=10000 + process_close(): uv_unref() detached processes - Change license to `Apache-2.0 AND Vim` as per babelworx request. - Run spec-cleaner. - Remove files `neovim.svg` and `neovim.desktop` since upstream included `nvim.png` and `nvim.desktop` that provide the same functionality. - Update to version 0.2.1: * Features - 0e873a3 Lua(Jit) built-in #4411 - 5b32bce Windows: `:terminal` #7007 - 7b0ceb3 UI/API: externalize cmdline #7173 - b67f58b UI/API: externalize wildmenu #7454 - b23aa1c UI: 'winhighlight' #6597 - 17531ed UI: command-line coloring (`:help input()-highlight`) #6364 - 244a1f9 API: execute lua directly from the remote api #6704 - 45626de API: `get_keymap()` #6236 - db99982 API: `nvim_get_hl_by_name()`, `nvim_get_hl_by_id()` #7082 - dc68538 menu_get() function #6322 - 9db42d4 :cquit : take an error code argument #7336 - 9cc185d job-control: serverstart(): support ipv6 #6680 - 1b7a9bf job-control: sockopen() #6594 - 6efe84a clipboard: fallback to tmux clipboard #6894 - 6016ac2 clipboard: customize clipboard with `g:clipboard` #6030 - 3a86dd5 ruby: override ruby host via `g:ruby_host_prog` #6841 - 16cce1a debug: $NVIM_LOG_FILE #6827 - 0cba3da `:checkhealth` built-in, validates $VIMRUNTIME #7399 * Fixes - 105d680 TUI: more terminals, improve scroll/resize #6816 - cb912a3 :terminal : handle F1-F12, other keys #7241 - 619838f inccommand: improve performance #6949 - 04b3c32 inccommand: Fix matches for zero-width #7487 - 60b1e8a inccommand: multiline, other fixes #7315 - f1f7f3b inccommand: Ignore leading modifiers in the command #6967 - 1551f71 inccommand: fix 'gdefault' lockup #7262 - 6338199 API: bufhl: support creating new groups #7414 - 541dde3 API: allow K_EVENT during operator-pending - 8c732f7 terminal: adjust for 'number' #7440 - 5bec946 UI: preserve wildmenu during jobs/events #7110 - c349083 UI: disable 'lazyredraw' during ui_refresh. #6259 - 51808a2 send FocusGained/FocusLost event instead of pseudokey #7221 - 133f8bc shada: preserve unnamed register on restart #4700 - 1b70a1d shada: avoid assertion on corrupt shada file #6958 - 9f534f3 mksession: Restore tab-local working directory #6859 - de1084f fix buf_write() crash #7140 - 7f76986 syntax: register 'Normal' highlight group #6973 - 6e7a8c3 RPC: close channel if stream was closed #7081 - 85f3084 clipboard: disallow recursion; show hint only once #7203 - 8d1ccb6 clipboard: performance, avoid weird edge-cases #7193 - 01487d4 'titleold' #7358 - 01e53a5 Windows: better path-handling, separator (slash) hygiene #7349 - 0f2873c Windows: multibyte startup arguments #7060 * Changes - 9ff0cc7 :terminal : start in normal-mode #6808 - 032b088 lower priority of 'cursorcolumn', 'colorcolumn' #7364 - 2a3bcd1 RPC: Don't delay notifications when request is pending #6544 - 023f67c :terminal : Do not change 'number', 'relativenumber' #6796 - 1ef2d76 socket.c: Disable Nagle's algorithm on TCP sockets #6915 - 6720fe2 help: `K` tries Vim help instead of manpage #3104 - 7068370 help, man.vim: change "outline" map to `gO` #7405 - Run spec-cleaner. - Add `libnsl` as a build requirement. The new glibc version in Factory deprecated support to libnsl. - Run spec-cleaner. - Update to version 0.2.0: * Features - bc4a2e1 help, man.vim: "outline" (TOC) feature #5169 - 58422f1 'guicursor' works in the TUI (and sends info to UIs) #6423 - 129f107 api: nvim_get_mode() #6247 - 0b59f98 api/ui: externalize tabline #6583 - bc6d868 'listchars': Whitespace highlight group #6367 - 6afa7d6 writefile() obeys 'fsync' option #6427 - c60e409 eval.c refactor (also improves some error messages) #5119 - 9d200cd getcompletion("cmdline") #6376 - 2ea7bfc terminal: Support extra arguments in 'shell'. #4504 - bf51102 DirChanged autocmd #5928 #6262 - 1743df8 'cpoptions': "_" flag to toggle cw behaviour #6235 - 22337b1 CTRL-R omits trailing ^M when pasting to cmdline #6137 - 0e44916 :edit allows unescaped spaces in filename #6119 - abdbfd2 eval: Add id() function and make printf("%p") useful #6095 - bdfa147 findfile(), :find, gf work in :terminal. #6009 - 2f38ed1 providers: Disable if g:loaded_* exists. - b5560a6 setpos() can set lowercase marks in other buffers #5753 - 7c513d6 Throttle :! output, pulse "..." message. #5396 - d2e8c76 v:exiting #5651 - :terminal improvements #6185 #6142 * cursor keeps position after leaving insert-mode. 4ceec30 * Follows output only if cursor is at end of buffer. e7bbd35 * new option: 'scrollback' fedb844 quasi-support for undo and * 'modifiable' b45ddf7 disables 'list' by default disables * 'relativenumber' by default - :help now contains full API documentation at :help api. - man.vim saw numerous improvements. - Windows support: * Windows is no longer "experimental", it is fully supported. * Windows package includes a GUI, curl.exe and other utilities. * :terminal is not supported on Windows, yet. (Planned for 0.2.1) * Security fixes - CVE-2017-5953 - CVE-2017-6349 - CVE-2017-6350 - #6485 * Changes - NVIM_TUI_ENABLE_CURSOR_SHAPE was removed. Use 'guicursor' instead. See https://github.com/neovim/neovim/wiki/Following-HEAD#20170402 - 81525dc 'mouse=a' is no longer the default. (This may change again after it is improved.) #6022 - 0c1f783 defaults: 'showcmd', 'belloff', 'ruler' #6087 - eb0e94f api: {get,set}_option update local options as appropriate #6405 - bdcb2a3 "Reading from stdin..." message was removed. #6298 * Fixes - 12fc1de ops: fix i<c-r> with multi-byte text #6524 - dd391bf Windows: system() and friends #6497 - 13352c0 Windows: os_get_hostname() #6413 - 16babc6 tui: Less-noisy mouse seqs #6411 - 3a9dd13 (vim bug) folding edge-cases #6207 - f6946c6 job-control: set CLOEXEC on pty processes. #5986 - d1afd43 rplugin: Call s:LoadRemotePlugins() on startup. - 1215084 backtick-expansion works with shell=fish #6224 - e32ec03 tui: Improved behavior after resize. #6202 - 86c2adc edit.c: CTRL-SPC: Insert previously-inserted text. #6090 - c318d8e b:changedtick now follows VimL rules #6112 - 34e24cb terminal: Initialize colors in reverse order #6160 - e889917 undo: Don't set b_u_curhead in ex_undojoin() #5869 - d25649f undo: :earlier, g-: Set b_u_seq_cur correctly. (#6016) - 043d8ba 'Visual-mode put from @. register' #5782 - 42c922b open_buffer(): Do BufEnter for directories. - 50d0d89 inccommand: Preview :sub commands only after delimiter #5932 - 1420e10 CheckHealth improvements #5519 - c8d5e92 jobstart(): Return -1 if cmd is not executable. #5671 - Update to version 0.1.7: * Features - 0213e99 PR #5561 'inccommand' * Fixes - c685879 PR #5632 SECURITY FIX - d28d108 CheckHealth: Fix version comparison. - 7be113d PR #5670 shell_write_cb: Schedule error message. - 1d45637 jobs: ensure calling jobclose() on a pty job sends SIGHUP. - 36c0ec6 tui/suspend_event(): set STDIN to "blocking" - 7a4d069, cf52b88 man.vim: avoid errors in unusual circumstances - ed19873 PR #5546 ex_global: Catch CTRL-C even if it is mapped. * Changes - 9147331 PR #2905 encoding: only allow encoding=utf-8 - 5f02608 PR #5636 build: Upgrade jemalloc - f1fed42 PR #5567 l10n: Update Ukrainian translation - Update to version 0.1.6: * Features: - 0b5a7e4 #4432 API: external UIs can render custom popupmenu - c6ac4f8 #4934 API: call any API method from vimscript - 31df051 #4568 API: nvim_call_atomic(): multiple calls in a single request - b268ba3 #5424 API: nvim_win_get_number(), nvim_tabpage_get_number() - e7e2844 has("nvim-1.2.3") checks for a specific Nvim version - 522b885 #5295, #5493 `:CheckHealth` checks tmux, terminfo, performance - 719dae2 #5384 events: allow event processing in getchar() - f25797f #5386 API: metadata: Nvim version & API level - 22dfe69 #5389 API: metadata: "since", "deprecated_since" - 605e743 Added QuickFixLine highlight group * Changes: - 4af6ec7 #5253 perf: Disable clipboard in do_cmdline() - 6e9f329 #5299 perf: Skip foldUpdate() in insert-mode. - 9d4fcec #5426 perf: Do not auto-update folds for some foldmethods. - eeec0ca #5419 tui: Default to normal-mode cursor shape. * Fixes: - e838452 #5436 tui: Fix "weird characters" / "bleeding termcodes" - 10a54ad #5243 signal_init: Always unblock SIGCHLD. - bccb49b #5316 eval.c: Fix memory leak for detached pty job - 626065d #5227 tchdir: New tab should inherit CWD. - cd321b7 #5292 getcwd(): Return empty string if CWD is invalid. - 6127eae shada: Fix non-writeable ShaDa directory handling - ca65514 #2789 system(): Respect shellxescape, shellxquote - 2daf54e #4874 Restore vim-like tab dragging - 0c536b5 #5319 syntax.c: Support bg/fg special color-names. - 3c53371 #4972 from justinmk/schedule-ui_refresh - 68bcb32 #4789 tui.c: Do not wait for tui loop on teardown. - c8b6ec2 #5409 v:count broken in command-line window - 6bc3bce #5461 fix emoji display - 51937e1 #5470 fix :terminal with :argadd, :argu - 79d77da #5481 external UIs: opening multiple files from command-line - 657ba62 #5501 rplugin: resolve paths in manifest file - 6a6f188 #5502 system('foo &', 'bar'): Show error, don't crash. - 1ff162c #5515 os_nodetype: open fd with O_NONBLOCK - 2a6c5bb #5450 modeline: Handle version number overflow. - 0ade1bb #5225 CI tests now run against Windows! - Add gperf as a build dependency. - Update to version 0.1.5: * Breaking changes: + 'termguicolors' option enables "true color". NVIM_TUI_ENABLE_TRUE_COLOR is now ignored. + Remove ":oldfiles!", replaced by Vim's ":browse oldfiles". * Features: + Full :ruby support! + timers: timer_start(), timer_stop(). + :CheckHealth command. + file: Add buffered reading and writing. Much faster shada file reading (important for startup time). + jobstart() learned 'rpc': - jobs and RPC channel IDs share the same "namespace". - jobstart() can start RPC channels, which allows scripts to handle 'stderr' on a RPC channel, like a typical non-RPC job. - jobpid()/jobstop() works on RPC jobs. - Deprecates rpcstart(). + man.vim rewrite: - :Man command is enabled by default. - New features: completion, window handling, better parsing, and more. + capture() function (renamed to execute()) - Supports nesting, including nested :redir. + rplugin manifest: default to XDG dir. + Better handling of mouse-clicks on concealed chars. + terminal: Ensure b:term_title always has a value. + tui: Assume 256 colours in most cases. + Always resize the :terminal. + api_info(). + allow setting cwd in jobstart(), termopen(). + support "special" highlight (undercurl). + mouse: Implement horizontal scroll. * Fixes: + Prevent data loss for process output streams. + 'process.c: Fix block in teardown'. + Prevent endless loop in printdigraph() (gh#neovim/neovim#5215). + timers: Avoid crash after processing events. + Set the default value for 'packpath'. + Restore double click. + readfile(): Less-disruptive readonly check. Fixes an issue where nvim unnecessarily "touched" open files. + Handle very long $XDG_DATA_DIRS. + option: Do not expand options in XDG vars. + server_init: Handle server_address_new() failure. + Fix v:register for clipboard=unnamed,unnamedplus. + 'Trigger TabNewEntered with T'. + synIDattr(): Return RRGGBB value for fg#. - Correct group: Productivity/Text/Editors. - Separate locales into neovim-lang. - Some spec cleanup. - Update to version 0.1.4. - Run spec-cleaner in `neovim.spec`. - Replace lua51-MessagePack build dependency to lua51-mpack. - Changelog: Features: * 5ebffaa :tcd for tab-local working directory (like :lcd, but for tabs) * d835c03 remote/define.vim: support remote function "range" * 007d573 json_encode/json_decode (with sophisticated error detection) #4131 * b50afb4 clipboard: support "lemonade" tool Fixes: * cc1beec eval.c: Fix heap corruption error. #4592 * 4043725 mbyte.c: Fix invalid memory access in utfc_ptr2char_len #4574 * 4eb5827 Enable syntax/filetype by default. #4558 Changes: * 5c6592f v:windowid is writeable (useful for GUIs) #4608A - Change icon 'neovim.svg' installation directory from %{_datadir}/pixmaps/%{name}.svg to %{_datadir}/icons/hicolor/scalable/apps/%{name}.svg as per dimstar request. - Fix neovim.changes indentation. - Remove unneeded patches that were applied by upstream: * neovim_fix_locale_dir_01.patch * neovim_fix_locale_dir_02.patch - Update to version 0.1.3. - Changelog: Features: * f2ae5a9 Add TextYankPost and TextDeletePost autocmds * 44b2cef bufhl: new mechanism for plugins to add highlights to a buffer * 39c3842 Make set{qf,loc}list() take {title} * 77a7ca4 'shortmess': Add "F" flag. #4446 * 99d4c8c keymap: Support <D-...> (super/command key). Fixes: * 14c9b30 terminal.c: temporary fix for incorrect paste handling Notable changes: * 50e129f defaults: Enable syntax and filetype plugins. * 4e39eee upgrade libvterm (improves terminal reflow) - Backport two patches that fix translations in Neovim: * neovim_fix_locale_dir_01.patch * neovim_fix_locale_dir_02.patch - Update to version 0.1.2. - Changelog: Features: * ef66249 tabline: Add %[] atom to the tabline, for random commands on click * f338ea7 job control: implement jobpid() to get PID of job * d0d5d17 job control: add 'detach' option to jobstart * 7ad3f07 Add support for binary numbers Fixes: * 291495a regexp_nfa.c: Speed up find_match_text() * 317d5ca input: Do not set high-bit; preserve ALT modifier. * 3b7c409 shell: Unquote &shell* options before using them Notable changes: * 49b06a8 encoding: Always use "utf-8" as default for &encoding * 79a6983 ui: revert "gui_running" hack Other changes: * b4b4536 version: semver.org compliance * c6aa716 reproducible builds: Stop using __{DATE,TIME}__ * 46bd3c0 clipboard: Check $DISPLAY. Prefer xsel. #4150 * f6ecd12 job control: don't kill PTY processes on exit * 49f0417 clipboard: Detach clipboard helper, so contents is kept after nvim exit * 38435e8 python: Add missing I/O methods to RedirectStream * d26b01d eval: Use better error messages when failing to dump values * 62d137c Remove swapsync. - Add neovim desktop file. - Add neovim logo to the package. - Update to version 0.1.1. - Changelog: * shada/msgpack editor plugin #3270 * VimL Dict notifications #3603 * Note: API for this feature may change. * :profile dump, :profile stop #2427 * :oldfiles! #3611 * TermOpen, TermClose events #3653 * fix: shada/viminfo: Do not save unlisted and quickfix buffers #3581 - Remove xclip of recommended packages list. - Add python-neovim and python3-neovim as recommended packages. - Initial version based on home:darix:neovim/neovim OBS-URL: https://build.opensuse.org/request/show/706262 OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=54
2019-05-29 12:26:43 +02:00
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define luv_min_ver 1.30.0
# Luajit not available on all platforms
%ifarch %{arm} %{ix86} x86_64 aarch64
%bcond_without luajit
%else
%bcond_with luajit
%endif
%define luaver 5.1
%define luaver_nopoint 51
Name: neovim
Version: 0.8.3
Release: 0
Summary: Vim-fork focused on extensibility and agility
License: Apache-2.0 AND Vim
Group: Productivity/Text/Editors
URL: https://neovim.io/
Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{version}.tar.gz
Source1: sysinit.vim
Source2: spec-template
Source3: suse-spec-template
# Our packaged busted script has a shebang pointing to regular Lua interepreter,
# we need /usr/bin/luajit. Fake it.
Source10: lj-busted.sh
Source99: neovim-rpmlintrc
# PATCH-FIX-UPSTREAM snprintf-buf-ovrflw-FORTIFY-3.patch gh#neovim/neovim#22779 mcepl@suse.com
# fix snprintf buffer overflow (crash on :he)
Patch0: snprintf-buf-ovrflw-FORTIFY-3.patch
BuildRequires: cmake
BuildRequires: desktop-file-utils
BuildRequires: fdupes
BuildRequires: filesystem
BuildRequires: gcc-c++
BuildRequires: gettext
BuildRequires: git-core
BuildRequires: gperf
BuildRequires: hicolor-icon-theme
BuildRequires: libtermkey-devel
BuildRequires: libtool
BuildRequires: libuv-devel
BuildRequires: libvterm-devel >= 0.3
BuildRequires: lua-macros
BuildRequires: make
BuildRequires: msgpack-c-devel
BuildRequires: pkgconfig
BuildRequires: python-rpm-macros
BuildRequires: tree-sitter-devel
BuildRequires: unibilium-devel
BuildRequires: unzip
BuildRequires: update-desktop-files
Requires: gperf
Requires: libvterm0 >= 0.3
Recommends: python3-neovim
Requires(post): desktop-file-utils
Requires(postun):desktop-file-utils
# XSel provides access to the system clipboard
Recommends: xsel
%if %{with luajit}
BuildRequires: luajit-devel
%else
BuildRequires: lua51-BitOp
BuildRequires: lua51-devel
%endif
# luajit implements version 5.1 of the lua language spec, so it needs the
# compat versions of libs.
BuildRequires: lua51-LPeg
BuildRequires: libluv-devel >= %{luv_min_ver}
BuildRequires: lua51-luarocks
BuildRequires: lua51-luv >= %{luv_min_ver}
BuildRequires: lua51-mpack
Requires: lua51-luv >= %{luv_min_ver}
%if 0%{?suse_version} < 1330
BuildRequires: hicolor-icon-theme
Requires(post): gtk3-tools
Requires(postun):gtk3-tools
%endif
%if 0%{?suse_version} > 1500
# Modern *SUSE … tests are enabled
# For tests
BuildRequires: lua51-busted
BuildRequires: hostname
# end of test requirements
%endif
%description
Neovim is a refactor - and sometimes redactor - in the tradition of
Vim, which itself derives from Stevie. It is not a rewrite, but a
continuation and extension of Vim. Many rewrites, clones, emulators
and imitators exist; some are very clever, but none are Vim. Neovim
strives to be a superset of Vim, notwithstanding some intentionally
removed misfeatures; excepting those few and carefully-considered
excisions, Neovim is Vim. It is built for users who want the good
parts of Vim, without compromise, and more.
%lang_package
%define vimplugin_dir %{_datadir}/vim/site
%prep
%autosetup -p1
install -p -m 0755 %{SOURCE10} .
# Remove __DATE__ and __TIME__.
BUILD_TIME=$(LC_ALL=C date -ur %{_sourcedir}/%{name}.changes +'%{H}:%{M}')
BUILD_DATE=$(LC_ALL=C date -ur %{_sourcedir}/%{name}.changes +'%{b} %{d} %{Y}')
sed -i "s/__TIME__/\"$BUILD_TIME\"/" $(grep -rl '__TIME__')
sed -i "s/__DATE__/\"$BUILD_DATE\"/" $(grep -rl '__DATE__')
%build
# set vars to make build reproducible in spite of config/CMakeLists.txt
HOSTNAME=OBS
USERNAME=OBS
mkdir -p build
pushd build
export CFLAGS="%{optflags} -fcommon"
export CXXFLAGS="%{optflags} -fcommon"
%{__cmake} .. -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DPREFER_LUA=%{?with_luajit:OFF}%{!?with_luajit:ON} \
-DLUA_PRG=%{_bindir}/%{?with_luajit:luajit}%{!?with_luajit:lua} \
%if %{with luajit}
-DBUSTED_PRG="$(readlink -f ../lj-busted.sh)" \
%endif
-DUSE_BUNDLED=OFF -DLUAJIT_USE_BUNDLED=ON \
-DCMAKE_SKIP_RPATH=ON -DCMAKE_VERBOSE_MAKEFILE=ON \
-DUSE_BUNDLED=OFF -DLUAJIT_USE_BUNDLED=OFF \
-DCMAKE_COLOR_MAKEFILE=OFF \
-DCMAKE_C_FLAGS_RELWITHDEBINFO="$opts" \
-DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \
-DLUA_INCLUDE_DIR:PATH=%{lua_incdir}
%make_build
popd
%install
%cmake_install
# system-wide configuration file
install -D -m 644 -p %{SOURCE1} %{buildroot}%{_sysconfdir}/nvim/sysinit.vim
ln -sf %{_sysconfdir}/nvim/sysinit.vim %{buildroot}%{_datadir}/nvim/sysinit.vim
%if 0%{?suse_version}
Accepting request 630090 from home:mcepl:work - Proper name of the systemwide configuration file is sysinit.vim not init.vim and it should be stored in /usr/share/nvim/sysinit.vim not in /etc/xdg/nvim. - Add default system-wide configuration file to /etc/xdg/nvim/init.vim (boo#1098800) - Add proper location of the default SPEC file templates - Add some packages needed for more robust builds * neovim.patch fix building system * neovim-0.1.7-bitop.patch for use external bit module * neovim-0.2.0-gcc-prototype.patch fix build issue on ppc64 - Update to version 0.3.1: * Features - 07499a8 #8709 man.vim: C highlighting for EXAMPLES section - 07f82ad #8699 TUI: urxvt: also send xterm focus-reporting seqs - 40911e4 #8616 API: emit nvim_buf_lines_event from :terminal - c46997a #8546 fillchars: Add "eob" flag * Fixes - 74d19f6 #8576 startup: avoid blank stdin buffer if other files were opened - 4874214 #8737 Only waitpid() for processes that we care about - cd6e7e8 #8743 Check all child processes for exit in SIGCHLD handler - c230ef2 #8746 channel.c: Prevent channel_destroy_early() from freeing uninitialized rpc stuff - 0ed8b12 #8681 transstr_buf: fix length comparison - d241f27 #8708 TUI: Fix standout mode - 9afed40 #8698 man.vim: fix for mandoc - e889640 #8682 provider/node: npm --loglevel silent - 1cbc830 #8613 API: nvim_win_set_cursor: set curswant - bf6048e #8628 checkhealth: Python: fix VIRTUAL_ENV check - 3cc3506 #8528 checkhealth: node.js: also search yarn * Changes - b751449 #8619 defaults: shortmess+=F - 1248178 #8578 highlight: high-priority CursorLine if fg is set. - 01570f1 #8726 terminal: handle &confirm and :confirm on unloading - 56065bb #8721 screen: truncate showmode messages - bf2460e #7551 buffer: fix copying :setlocal options - c1c14fa #8520 Ex mode: always "improved" (gQ) - 050f397 #7992 options: remove 'maxcombine` option (always 6) * Internal - 463da84 #7992 screen: use UTF-8 representation - Require exact version of libtermkey1 because it does not bump SONAME (boo#1100496). - Remove update-alternatives as it's not 1:1. Upstream is not willing to do that: https://github.com/neovim/neovim/issues/8535 - Update to version 0.3.0 - Add a support for update-alternatives, so users can change their "vim" to neovim - Mark LICENSE file as %license - The library bump fixes boo#1094627. - Require libtermkey version >= 0.20. - Make build result independent from build hostname and username - Update to version 0.2.2: * Features + 'viewoptions': add "curdir" flag + node.js remote-plugin support + :checkhealth : validate 'runtimepath' * Fixes + :terminal : fix crash on resize + work around gnome-terminal memory leak + 'guicursor': use DECSCUSR for xterm-likes + 'os_open: UV_EINVAL on NULL filename' + :checkhealth : fix check for npm and yarn + health.vim: normalize slashes for script path + cmake: install runtime/rgb.txt + runtime: syntax error in `runtime/syntax/tex.vim` + tutor: some fixes + windows: provider: Detect(): return *.cmd path * Changes + remove legacy alias to `v:count` + runtime: revert netrw update + defaults: scrollback=10000 + process_close(): uv_unref() detached processes - Change license to `Apache-2.0 AND Vim` as per babelworx request. - Run spec-cleaner. - Remove files `neovim.svg` and `neovim.desktop` since upstream included `nvim.png` and `nvim.desktop` that provide the same functionality. - Update to version 0.2.1: * Features - 0e873a3 Lua(Jit) built-in #4411 - 5b32bce Windows: `:terminal` #7007 - 7b0ceb3 UI/API: externalize cmdline #7173 - b67f58b UI/API: externalize wildmenu #7454 - b23aa1c UI: 'winhighlight' #6597 - 17531ed UI: command-line coloring (`:help input()-highlight`) #6364 - 244a1f9 API: execute lua directly from the remote api #6704 - 45626de API: `get_keymap()` #6236 - db99982 API: `nvim_get_hl_by_name()`, `nvim_get_hl_by_id()` #7082 - dc68538 menu_get() function #6322 - 9db42d4 :cquit : take an error code argument #7336 - 9cc185d job-control: serverstart(): support ipv6 #6680 - 1b7a9bf job-control: sockopen() #6594 - 6efe84a clipboard: fallback to tmux clipboard #6894 - 6016ac2 clipboard: customize clipboard with `g:clipboard` #6030 - 3a86dd5 ruby: override ruby host via `g:ruby_host_prog` #6841 - 16cce1a debug: $NVIM_LOG_FILE #6827 - 0cba3da `:checkhealth` built-in, validates $VIMRUNTIME #7399 * Fixes - 105d680 TUI: more terminals, improve scroll/resize #6816 - cb912a3 :terminal : handle F1-F12, other keys #7241 - 619838f inccommand: improve performance #6949 - 04b3c32 inccommand: Fix matches for zero-width #7487 - 60b1e8a inccommand: multiline, other fixes #7315 - f1f7f3b inccommand: Ignore leading modifiers in the command #6967 - 1551f71 inccommand: fix 'gdefault' lockup #7262 - 6338199 API: bufhl: support creating new groups #7414 - 541dde3 API: allow K_EVENT during operator-pending - 8c732f7 terminal: adjust for 'number' #7440 - 5bec946 UI: preserve wildmenu during jobs/events #7110 - c349083 UI: disable 'lazyredraw' during ui_refresh. #6259 - 51808a2 send FocusGained/FocusLost event instead of pseudokey #7221 - 133f8bc shada: preserve unnamed register on restart #4700 - 1b70a1d shada: avoid assertion on corrupt shada file #6958 - 9f534f3 mksession: Restore tab-local working directory #6859 - de1084f fix buf_write() crash #7140 - 7f76986 syntax: register 'Normal' highlight group #6973 - 6e7a8c3 RPC: close channel if stream was closed #7081 - 85f3084 clipboard: disallow recursion; show hint only once #7203 - 8d1ccb6 clipboard: performance, avoid weird edge-cases #7193 - 01487d4 'titleold' #7358 - 01e53a5 Windows: better path-handling, separator (slash) hygiene #7349 - 0f2873c Windows: multibyte startup arguments #7060 * Changes - 9ff0cc7 :terminal : start in normal-mode #6808 - 032b088 lower priority of 'cursorcolumn', 'colorcolumn' #7364 - 2a3bcd1 RPC: Don't delay notifications when request is pending #6544 - 023f67c :terminal : Do not change 'number', 'relativenumber' #6796 - 1ef2d76 socket.c: Disable Nagle's algorithm on TCP sockets #6915 - 6720fe2 help: `K` tries Vim help instead of manpage #3104 - 7068370 help, man.vim: change "outline" map to `gO` #7405 - Run spec-cleaner. - Add `libnsl` as a build requirement. The new glibc version in Factory deprecated support to libnsl. - Run spec-cleaner. - Update to version 0.2.0: * Features - bc4a2e1 help, man.vim: "outline" (TOC) feature #5169 - 58422f1 'guicursor' works in the TUI (and sends info to UIs) #6423 - 129f107 api: nvim_get_mode() #6247 - 0b59f98 api/ui: externalize tabline #6583 - bc6d868 'listchars': Whitespace highlight group #6367 - 6afa7d6 writefile() obeys 'fsync' option #6427 - c60e409 eval.c refactor (also improves some error messages) #5119 - 9d200cd getcompletion("cmdline") #6376 - 2ea7bfc terminal: Support extra arguments in 'shell'. #4504 - bf51102 DirChanged autocmd #5928 #6262 - 1743df8 'cpoptions': "_" flag to toggle cw behaviour #6235 - 22337b1 CTRL-R omits trailing ^M when pasting to cmdline #6137 - 0e44916 :edit allows unescaped spaces in filename #6119 - abdbfd2 eval: Add id() function and make printf("%p") useful #6095 - bdfa147 findfile(), :find, gf work in :terminal. #6009 - 2f38ed1 providers: Disable if g:loaded_* exists. - b5560a6 setpos() can set lowercase marks in other buffers #5753 - 7c513d6 Throttle :! output, pulse "..." message. #5396 - d2e8c76 v:exiting #5651 - :terminal improvements #6185 #6142 * cursor keeps position after leaving insert-mode. 4ceec30 * Follows output only if cursor is at end of buffer. e7bbd35 * new option: 'scrollback' fedb844 quasi-support for undo and * 'modifiable' b45ddf7 disables 'list' by default disables * 'relativenumber' by default - :help now contains full API documentation at :help api. - man.vim saw numerous improvements. - Windows support: * Windows is no longer "experimental", it is fully supported. * Windows package includes a GUI, curl.exe and other utilities. * :terminal is not supported on Windows, yet. (Planned for 0.2.1) * Security fixes - CVE-2017-5953 - CVE-2017-6349 - CVE-2017-6350 - #6485 * Changes - NVIM_TUI_ENABLE_CURSOR_SHAPE was removed. Use 'guicursor' instead. See https://github.com/neovim/neovim/wiki/Following-HEAD#20170402 - 81525dc 'mouse=a' is no longer the default. (This may change again after it is improved.) #6022 - 0c1f783 defaults: 'showcmd', 'belloff', 'ruler' #6087 - eb0e94f api: {get,set}_option update local options as appropriate #6405 - bdcb2a3 "Reading from stdin..." message was removed. #6298 * Fixes - 12fc1de ops: fix i<c-r> with multi-byte text #6524 - dd391bf Windows: system() and friends #6497 - 13352c0 Windows: os_get_hostname() #6413 - 16babc6 tui: Less-noisy mouse seqs #6411 - 3a9dd13 (vim bug) folding edge-cases #6207 - f6946c6 job-control: set CLOEXEC on pty processes. #5986 - d1afd43 rplugin: Call s:LoadRemotePlugins() on startup. - 1215084 backtick-expansion works with shell=fish #6224 - e32ec03 tui: Improved behavior after resize. #6202 - 86c2adc edit.c: CTRL-SPC: Insert previously-inserted text. #6090 - c318d8e b:changedtick now follows VimL rules #6112 - 34e24cb terminal: Initialize colors in reverse order #6160 - e889917 undo: Don't set b_u_curhead in ex_undojoin() #5869 - d25649f undo: :earlier, g-: Set b_u_seq_cur correctly. (#6016) - 043d8ba 'Visual-mode put from @. register' #5782 - 42c922b open_buffer(): Do BufEnter for directories. - 50d0d89 inccommand: Preview :sub commands only after delimiter #5932 - 1420e10 CheckHealth improvements #5519 - c8d5e92 jobstart(): Return -1 if cmd is not executable. #5671 - Update to version 0.1.7: * Features - 0213e99 PR #5561 'inccommand' * Fixes - c685879 PR #5632 SECURITY FIX - d28d108 CheckHealth: Fix version comparison. - 7be113d PR #5670 shell_write_cb: Schedule error message. - 1d45637 jobs: ensure calling jobclose() on a pty job sends SIGHUP. - 36c0ec6 tui/suspend_event(): set STDIN to "blocking" - 7a4d069, cf52b88 man.vim: avoid errors in unusual circumstances - ed19873 PR #5546 ex_global: Catch CTRL-C even if it is mapped. * Changes - 9147331 PR #2905 encoding: only allow encoding=utf-8 - 5f02608 PR #5636 build: Upgrade jemalloc - f1fed42 PR #5567 l10n: Update Ukrainian translation - Update to version 0.1.6: * Features: - 0b5a7e4 #4432 API: external UIs can render custom popupmenu - c6ac4f8 #4934 API: call any API method from vimscript - 31df051 #4568 API: nvim_call_atomic(): multiple calls in a single request - b268ba3 #5424 API: nvim_win_get_number(), nvim_tabpage_get_number() - e7e2844 has("nvim-1.2.3") checks for a specific Nvim version - 522b885 #5295, #5493 `:CheckHealth` checks tmux, terminfo, performance - 719dae2 #5384 events: allow event processing in getchar() - f25797f #5386 API: metadata: Nvim version & API level - 22dfe69 #5389 API: metadata: "since", "deprecated_since" - 605e743 Added QuickFixLine highlight group * Changes: - 4af6ec7 #5253 perf: Disable clipboard in do_cmdline() - 6e9f329 #5299 perf: Skip foldUpdate() in insert-mode. - 9d4fcec #5426 perf: Do not auto-update folds for some foldmethods. - eeec0ca #5419 tui: Default to normal-mode cursor shape. * Fixes: - e838452 #5436 tui: Fix "weird characters" / "bleeding termcodes" - 10a54ad #5243 signal_init: Always unblock SIGCHLD. - bccb49b #5316 eval.c: Fix memory leak for detached pty job - 626065d #5227 tchdir: New tab should inherit CWD. - cd321b7 #5292 getcwd(): Return empty string if CWD is invalid. - 6127eae shada: Fix non-writeable ShaDa directory handling - ca65514 #2789 system(): Respect shellxescape, shellxquote - 2daf54e #4874 Restore vim-like tab dragging - 0c536b5 #5319 syntax.c: Support bg/fg special color-names. - 3c53371 #4972 from justinmk/schedule-ui_refresh - 68bcb32 #4789 tui.c: Do not wait for tui loop on teardown. - c8b6ec2 #5409 v:count broken in command-line window - 6bc3bce #5461 fix emoji display - 51937e1 #5470 fix :terminal with :argadd, :argu - 79d77da #5481 external UIs: opening multiple files from command-line - 657ba62 #5501 rplugin: resolve paths in manifest file - 6a6f188 #5502 system('foo &', 'bar'): Show error, don't crash. - 1ff162c #5515 os_nodetype: open fd with O_NONBLOCK - 2a6c5bb #5450 modeline: Handle version number overflow. - 0ade1bb #5225 CI tests now run against Windows! - Add gperf as a build dependency. - Update to version 0.1.5: * Breaking changes: + 'termguicolors' option enables "true color". NVIM_TUI_ENABLE_TRUE_COLOR is now ignored. + Remove ":oldfiles!", replaced by Vim's ":browse oldfiles". * Features: + Full :ruby support! + timers: timer_start(), timer_stop(). + :CheckHealth command. + file: Add buffered reading and writing. Much faster shada file reading (important for startup time). + jobstart() learned 'rpc': - jobs and RPC channel IDs share the same "namespace". - jobstart() can start RPC channels, which allows scripts to handle 'stderr' on a RPC channel, like a typical non-RPC job. - jobpid()/jobstop() works on RPC jobs. - Deprecates rpcstart(). + man.vim rewrite: - :Man command is enabled by default. - New features: completion, window handling, better parsing, and more. + capture() function (renamed to execute()) - Supports nesting, including nested :redir. + rplugin manifest: default to XDG dir. + Better handling of mouse-clicks on concealed chars. + terminal: Ensure b:term_title always has a value. + tui: Assume 256 colours in most cases. + Always resize the :terminal. + api_info(). + allow setting cwd in jobstart(), termopen(). + support "special" highlight (undercurl). + mouse: Implement horizontal scroll. * Fixes: + Prevent data loss for process output streams. + 'process.c: Fix block in teardown'. + Prevent endless loop in printdigraph() (gh#neovim/neovim#5215). + timers: Avoid crash after processing events. + Set the default value for 'packpath'. + Restore double click. + readfile(): Less-disruptive readonly check. Fixes an issue where nvim unnecessarily "touched" open files. + Handle very long $XDG_DATA_DIRS. + option: Do not expand options in XDG vars. + server_init: Handle server_address_new() failure. + Fix v:register for clipboard=unnamed,unnamedplus. + 'Trigger TabNewEntered with T'. + synIDattr(): Return RRGGBB value for fg#. - Correct group: Productivity/Text/Editors. - Separate locales into neovim-lang. - Some spec cleanup. - Update to version 0.1.4. - Run spec-cleaner in `neovim.spec`. - Replace lua51-MessagePack build dependency to lua51-mpack. - Changelog: Features: * 5ebffaa :tcd for tab-local working directory (like :lcd, but for tabs) * d835c03 remote/define.vim: support remote function "range" * 007d573 json_encode/json_decode (with sophisticated error detection) #4131 * b50afb4 clipboard: support "lemonade" tool Fixes: * cc1beec eval.c: Fix heap corruption error. #4592 * 4043725 mbyte.c: Fix invalid memory access in utfc_ptr2char_len #4574 * 4eb5827 Enable syntax/filetype by default. #4558 Changes: * 5c6592f v:windowid is writeable (useful for GUIs) #4608A - Change icon 'neovim.svg' installation directory from %{_datadir}/pixmaps/%{name}.svg to %{_datadir}/icons/hicolor/scalable/apps/%{name}.svg as per dimstar request. - Fix neovim.changes indentation. - Remove unneeded patches that were applied by upstream: * neovim_fix_locale_dir_01.patch * neovim_fix_locale_dir_02.patch - Update to version 0.1.3. - Changelog: Features: * f2ae5a9 Add TextYankPost and TextDeletePost autocmds * 44b2cef bufhl: new mechanism for plugins to add highlights to a buffer * 39c3842 Make set{qf,loc}list() take {title} * 77a7ca4 'shortmess': Add "F" flag. #4446 * 99d4c8c keymap: Support <D-...> (super/command key). Fixes: * 14c9b30 terminal.c: temporary fix for incorrect paste handling Notable changes: * 50e129f defaults: Enable syntax and filetype plugins. * 4e39eee upgrade libvterm (improves terminal reflow) - Backport two patches that fix translations in Neovim: * neovim_fix_locale_dir_01.patch * neovim_fix_locale_dir_02.patch - Update to version 0.1.2. - Changelog: Features: * ef66249 tabline: Add %[] atom to the tabline, for random commands on click * f338ea7 job control: implement jobpid() to get PID of job * d0d5d17 job control: add 'detach' option to jobstart * 7ad3f07 Add support for binary numbers Fixes: * 291495a regexp_nfa.c: Speed up find_match_text() * 317d5ca input: Do not set high-bit; preserve ALT modifier. * 3b7c409 shell: Unquote &shell* options before using them Notable changes: * 49b06a8 encoding: Always use "utf-8" as default for &encoding * 79a6983 ui: revert "gui_running" hack Other changes: * b4b4536 version: semver.org compliance * c6aa716 reproducible builds: Stop using __{DATE,TIME}__ * 46bd3c0 clipboard: Check $DISPLAY. Prefer xsel. #4150 * f6ecd12 job control: don't kill PTY processes on exit * 49f0417 clipboard: Detach clipboard helper, so contents is kept after nvim exit * 38435e8 python: Add missing I/O methods to RedirectStream * d26b01d eval: Use better error messages when failing to dump values * 62d137c Remove swapsync. - Add neovim desktop file. - Add neovim logo to the package. - Update to version 0.1.1. - Changelog: * shada/msgpack editor plugin #3270 * VimL Dict notifications #3603 * Note: API for this feature may change. * :profile dump, :profile stop #2427 * :oldfiles! #3611 * TermOpen, TermClose events #3653 * fix: shada/viminfo: Do not save unlisted and quickfix buffers #3581 - Remove xclip of recommended packages list. - Add python-neovim and python3-neovim as recommended packages. - Initial version based on home:darix:neovim/neovim OBS-URL: https://build.opensuse.org/request/show/630090 OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=36
2018-08-18 22:29:13 +02:00
install -p -m 644 %{SOURCE3} %{buildroot}%{_datadir}/nvim/template.spec
%else
Accepting request 630090 from home:mcepl:work - Proper name of the systemwide configuration file is sysinit.vim not init.vim and it should be stored in /usr/share/nvim/sysinit.vim not in /etc/xdg/nvim. - Add default system-wide configuration file to /etc/xdg/nvim/init.vim (boo#1098800) - Add proper location of the default SPEC file templates - Add some packages needed for more robust builds * neovim.patch fix building system * neovim-0.1.7-bitop.patch for use external bit module * neovim-0.2.0-gcc-prototype.patch fix build issue on ppc64 - Update to version 0.3.1: * Features - 07499a8 #8709 man.vim: C highlighting for EXAMPLES section - 07f82ad #8699 TUI: urxvt: also send xterm focus-reporting seqs - 40911e4 #8616 API: emit nvim_buf_lines_event from :terminal - c46997a #8546 fillchars: Add "eob" flag * Fixes - 74d19f6 #8576 startup: avoid blank stdin buffer if other files were opened - 4874214 #8737 Only waitpid() for processes that we care about - cd6e7e8 #8743 Check all child processes for exit in SIGCHLD handler - c230ef2 #8746 channel.c: Prevent channel_destroy_early() from freeing uninitialized rpc stuff - 0ed8b12 #8681 transstr_buf: fix length comparison - d241f27 #8708 TUI: Fix standout mode - 9afed40 #8698 man.vim: fix for mandoc - e889640 #8682 provider/node: npm --loglevel silent - 1cbc830 #8613 API: nvim_win_set_cursor: set curswant - bf6048e #8628 checkhealth: Python: fix VIRTUAL_ENV check - 3cc3506 #8528 checkhealth: node.js: also search yarn * Changes - b751449 #8619 defaults: shortmess+=F - 1248178 #8578 highlight: high-priority CursorLine if fg is set. - 01570f1 #8726 terminal: handle &confirm and :confirm on unloading - 56065bb #8721 screen: truncate showmode messages - bf2460e #7551 buffer: fix copying :setlocal options - c1c14fa #8520 Ex mode: always "improved" (gQ) - 050f397 #7992 options: remove 'maxcombine` option (always 6) * Internal - 463da84 #7992 screen: use UTF-8 representation - Require exact version of libtermkey1 because it does not bump SONAME (boo#1100496). - Remove update-alternatives as it's not 1:1. Upstream is not willing to do that: https://github.com/neovim/neovim/issues/8535 - Update to version 0.3.0 - Add a support for update-alternatives, so users can change their "vim" to neovim - Mark LICENSE file as %license - The library bump fixes boo#1094627. - Require libtermkey version >= 0.20. - Make build result independent from build hostname and username - Update to version 0.2.2: * Features + 'viewoptions': add "curdir" flag + node.js remote-plugin support + :checkhealth : validate 'runtimepath' * Fixes + :terminal : fix crash on resize + work around gnome-terminal memory leak + 'guicursor': use DECSCUSR for xterm-likes + 'os_open: UV_EINVAL on NULL filename' + :checkhealth : fix check for npm and yarn + health.vim: normalize slashes for script path + cmake: install runtime/rgb.txt + runtime: syntax error in `runtime/syntax/tex.vim` + tutor: some fixes + windows: provider: Detect(): return *.cmd path * Changes + remove legacy alias to `v:count` + runtime: revert netrw update + defaults: scrollback=10000 + process_close(): uv_unref() detached processes - Change license to `Apache-2.0 AND Vim` as per babelworx request. - Run spec-cleaner. - Remove files `neovim.svg` and `neovim.desktop` since upstream included `nvim.png` and `nvim.desktop` that provide the same functionality. - Update to version 0.2.1: * Features - 0e873a3 Lua(Jit) built-in #4411 - 5b32bce Windows: `:terminal` #7007 - 7b0ceb3 UI/API: externalize cmdline #7173 - b67f58b UI/API: externalize wildmenu #7454 - b23aa1c UI: 'winhighlight' #6597 - 17531ed UI: command-line coloring (`:help input()-highlight`) #6364 - 244a1f9 API: execute lua directly from the remote api #6704 - 45626de API: `get_keymap()` #6236 - db99982 API: `nvim_get_hl_by_name()`, `nvim_get_hl_by_id()` #7082 - dc68538 menu_get() function #6322 - 9db42d4 :cquit : take an error code argument #7336 - 9cc185d job-control: serverstart(): support ipv6 #6680 - 1b7a9bf job-control: sockopen() #6594 - 6efe84a clipboard: fallback to tmux clipboard #6894 - 6016ac2 clipboard: customize clipboard with `g:clipboard` #6030 - 3a86dd5 ruby: override ruby host via `g:ruby_host_prog` #6841 - 16cce1a debug: $NVIM_LOG_FILE #6827 - 0cba3da `:checkhealth` built-in, validates $VIMRUNTIME #7399 * Fixes - 105d680 TUI: more terminals, improve scroll/resize #6816 - cb912a3 :terminal : handle F1-F12, other keys #7241 - 619838f inccommand: improve performance #6949 - 04b3c32 inccommand: Fix matches for zero-width #7487 - 60b1e8a inccommand: multiline, other fixes #7315 - f1f7f3b inccommand: Ignore leading modifiers in the command #6967 - 1551f71 inccommand: fix 'gdefault' lockup #7262 - 6338199 API: bufhl: support creating new groups #7414 - 541dde3 API: allow K_EVENT during operator-pending - 8c732f7 terminal: adjust for 'number' #7440 - 5bec946 UI: preserve wildmenu during jobs/events #7110 - c349083 UI: disable 'lazyredraw' during ui_refresh. #6259 - 51808a2 send FocusGained/FocusLost event instead of pseudokey #7221 - 133f8bc shada: preserve unnamed register on restart #4700 - 1b70a1d shada: avoid assertion on corrupt shada file #6958 - 9f534f3 mksession: Restore tab-local working directory #6859 - de1084f fix buf_write() crash #7140 - 7f76986 syntax: register 'Normal' highlight group #6973 - 6e7a8c3 RPC: close channel if stream was closed #7081 - 85f3084 clipboard: disallow recursion; show hint only once #7203 - 8d1ccb6 clipboard: performance, avoid weird edge-cases #7193 - 01487d4 'titleold' #7358 - 01e53a5 Windows: better path-handling, separator (slash) hygiene #7349 - 0f2873c Windows: multibyte startup arguments #7060 * Changes - 9ff0cc7 :terminal : start in normal-mode #6808 - 032b088 lower priority of 'cursorcolumn', 'colorcolumn' #7364 - 2a3bcd1 RPC: Don't delay notifications when request is pending #6544 - 023f67c :terminal : Do not change 'number', 'relativenumber' #6796 - 1ef2d76 socket.c: Disable Nagle's algorithm on TCP sockets #6915 - 6720fe2 help: `K` tries Vim help instead of manpage #3104 - 7068370 help, man.vim: change "outline" map to `gO` #7405 - Run spec-cleaner. - Add `libnsl` as a build requirement. The new glibc version in Factory deprecated support to libnsl. - Run spec-cleaner. - Update to version 0.2.0: * Features - bc4a2e1 help, man.vim: "outline" (TOC) feature #5169 - 58422f1 'guicursor' works in the TUI (and sends info to UIs) #6423 - 129f107 api: nvim_get_mode() #6247 - 0b59f98 api/ui: externalize tabline #6583 - bc6d868 'listchars': Whitespace highlight group #6367 - 6afa7d6 writefile() obeys 'fsync' option #6427 - c60e409 eval.c refactor (also improves some error messages) #5119 - 9d200cd getcompletion("cmdline") #6376 - 2ea7bfc terminal: Support extra arguments in 'shell'. #4504 - bf51102 DirChanged autocmd #5928 #6262 - 1743df8 'cpoptions': "_" flag to toggle cw behaviour #6235 - 22337b1 CTRL-R omits trailing ^M when pasting to cmdline #6137 - 0e44916 :edit allows unescaped spaces in filename #6119 - abdbfd2 eval: Add id() function and make printf("%p") useful #6095 - bdfa147 findfile(), :find, gf work in :terminal. #6009 - 2f38ed1 providers: Disable if g:loaded_* exists. - b5560a6 setpos() can set lowercase marks in other buffers #5753 - 7c513d6 Throttle :! output, pulse "..." message. #5396 - d2e8c76 v:exiting #5651 - :terminal improvements #6185 #6142 * cursor keeps position after leaving insert-mode. 4ceec30 * Follows output only if cursor is at end of buffer. e7bbd35 * new option: 'scrollback' fedb844 quasi-support for undo and * 'modifiable' b45ddf7 disables 'list' by default disables * 'relativenumber' by default - :help now contains full API documentation at :help api. - man.vim saw numerous improvements. - Windows support: * Windows is no longer "experimental", it is fully supported. * Windows package includes a GUI, curl.exe and other utilities. * :terminal is not supported on Windows, yet. (Planned for 0.2.1) * Security fixes - CVE-2017-5953 - CVE-2017-6349 - CVE-2017-6350 - #6485 * Changes - NVIM_TUI_ENABLE_CURSOR_SHAPE was removed. Use 'guicursor' instead. See https://github.com/neovim/neovim/wiki/Following-HEAD#20170402 - 81525dc 'mouse=a' is no longer the default. (This may change again after it is improved.) #6022 - 0c1f783 defaults: 'showcmd', 'belloff', 'ruler' #6087 - eb0e94f api: {get,set}_option update local options as appropriate #6405 - bdcb2a3 "Reading from stdin..." message was removed. #6298 * Fixes - 12fc1de ops: fix i<c-r> with multi-byte text #6524 - dd391bf Windows: system() and friends #6497 - 13352c0 Windows: os_get_hostname() #6413 - 16babc6 tui: Less-noisy mouse seqs #6411 - 3a9dd13 (vim bug) folding edge-cases #6207 - f6946c6 job-control: set CLOEXEC on pty processes. #5986 - d1afd43 rplugin: Call s:LoadRemotePlugins() on startup. - 1215084 backtick-expansion works with shell=fish #6224 - e32ec03 tui: Improved behavior after resize. #6202 - 86c2adc edit.c: CTRL-SPC: Insert previously-inserted text. #6090 - c318d8e b:changedtick now follows VimL rules #6112 - 34e24cb terminal: Initialize colors in reverse order #6160 - e889917 undo: Don't set b_u_curhead in ex_undojoin() #5869 - d25649f undo: :earlier, g-: Set b_u_seq_cur correctly. (#6016) - 043d8ba 'Visual-mode put from @. register' #5782 - 42c922b open_buffer(): Do BufEnter for directories. - 50d0d89 inccommand: Preview :sub commands only after delimiter #5932 - 1420e10 CheckHealth improvements #5519 - c8d5e92 jobstart(): Return -1 if cmd is not executable. #5671 - Update to version 0.1.7: * Features - 0213e99 PR #5561 'inccommand' * Fixes - c685879 PR #5632 SECURITY FIX - d28d108 CheckHealth: Fix version comparison. - 7be113d PR #5670 shell_write_cb: Schedule error message. - 1d45637 jobs: ensure calling jobclose() on a pty job sends SIGHUP. - 36c0ec6 tui/suspend_event(): set STDIN to "blocking" - 7a4d069, cf52b88 man.vim: avoid errors in unusual circumstances - ed19873 PR #5546 ex_global: Catch CTRL-C even if it is mapped. * Changes - 9147331 PR #2905 encoding: only allow encoding=utf-8 - 5f02608 PR #5636 build: Upgrade jemalloc - f1fed42 PR #5567 l10n: Update Ukrainian translation - Update to version 0.1.6: * Features: - 0b5a7e4 #4432 API: external UIs can render custom popupmenu - c6ac4f8 #4934 API: call any API method from vimscript - 31df051 #4568 API: nvim_call_atomic(): multiple calls in a single request - b268ba3 #5424 API: nvim_win_get_number(), nvim_tabpage_get_number() - e7e2844 has("nvim-1.2.3") checks for a specific Nvim version - 522b885 #5295, #5493 `:CheckHealth` checks tmux, terminfo, performance - 719dae2 #5384 events: allow event processing in getchar() - f25797f #5386 API: metadata: Nvim version & API level - 22dfe69 #5389 API: metadata: "since", "deprecated_since" - 605e743 Added QuickFixLine highlight group * Changes: - 4af6ec7 #5253 perf: Disable clipboard in do_cmdline() - 6e9f329 #5299 perf: Skip foldUpdate() in insert-mode. - 9d4fcec #5426 perf: Do not auto-update folds for some foldmethods. - eeec0ca #5419 tui: Default to normal-mode cursor shape. * Fixes: - e838452 #5436 tui: Fix "weird characters" / "bleeding termcodes" - 10a54ad #5243 signal_init: Always unblock SIGCHLD. - bccb49b #5316 eval.c: Fix memory leak for detached pty job - 626065d #5227 tchdir: New tab should inherit CWD. - cd321b7 #5292 getcwd(): Return empty string if CWD is invalid. - 6127eae shada: Fix non-writeable ShaDa directory handling - ca65514 #2789 system(): Respect shellxescape, shellxquote - 2daf54e #4874 Restore vim-like tab dragging - 0c536b5 #5319 syntax.c: Support bg/fg special color-names. - 3c53371 #4972 from justinmk/schedule-ui_refresh - 68bcb32 #4789 tui.c: Do not wait for tui loop on teardown. - c8b6ec2 #5409 v:count broken in command-line window - 6bc3bce #5461 fix emoji display - 51937e1 #5470 fix :terminal with :argadd, :argu - 79d77da #5481 external UIs: opening multiple files from command-line - 657ba62 #5501 rplugin: resolve paths in manifest file - 6a6f188 #5502 system('foo &', 'bar'): Show error, don't crash. - 1ff162c #5515 os_nodetype: open fd with O_NONBLOCK - 2a6c5bb #5450 modeline: Handle version number overflow. - 0ade1bb #5225 CI tests now run against Windows! - Add gperf as a build dependency. - Update to version 0.1.5: * Breaking changes: + 'termguicolors' option enables "true color". NVIM_TUI_ENABLE_TRUE_COLOR is now ignored. + Remove ":oldfiles!", replaced by Vim's ":browse oldfiles". * Features: + Full :ruby support! + timers: timer_start(), timer_stop(). + :CheckHealth command. + file: Add buffered reading and writing. Much faster shada file reading (important for startup time). + jobstart() learned 'rpc': - jobs and RPC channel IDs share the same "namespace". - jobstart() can start RPC channels, which allows scripts to handle 'stderr' on a RPC channel, like a typical non-RPC job. - jobpid()/jobstop() works on RPC jobs. - Deprecates rpcstart(). + man.vim rewrite: - :Man command is enabled by default. - New features: completion, window handling, better parsing, and more. + capture() function (renamed to execute()) - Supports nesting, including nested :redir. + rplugin manifest: default to XDG dir. + Better handling of mouse-clicks on concealed chars. + terminal: Ensure b:term_title always has a value. + tui: Assume 256 colours in most cases. + Always resize the :terminal. + api_info(). + allow setting cwd in jobstart(), termopen(). + support "special" highlight (undercurl). + mouse: Implement horizontal scroll. * Fixes: + Prevent data loss for process output streams. + 'process.c: Fix block in teardown'. + Prevent endless loop in printdigraph() (gh#neovim/neovim#5215). + timers: Avoid crash after processing events. + Set the default value for 'packpath'. + Restore double click. + readfile(): Less-disruptive readonly check. Fixes an issue where nvim unnecessarily "touched" open files. + Handle very long $XDG_DATA_DIRS. + option: Do not expand options in XDG vars. + server_init: Handle server_address_new() failure. + Fix v:register for clipboard=unnamed,unnamedplus. + 'Trigger TabNewEntered with T'. + synIDattr(): Return RRGGBB value for fg#. - Correct group: Productivity/Text/Editors. - Separate locales into neovim-lang. - Some spec cleanup. - Update to version 0.1.4. - Run spec-cleaner in `neovim.spec`. - Replace lua51-MessagePack build dependency to lua51-mpack. - Changelog: Features: * 5ebffaa :tcd for tab-local working directory (like :lcd, but for tabs) * d835c03 remote/define.vim: support remote function "range" * 007d573 json_encode/json_decode (with sophisticated error detection) #4131 * b50afb4 clipboard: support "lemonade" tool Fixes: * cc1beec eval.c: Fix heap corruption error. #4592 * 4043725 mbyte.c: Fix invalid memory access in utfc_ptr2char_len #4574 * 4eb5827 Enable syntax/filetype by default. #4558 Changes: * 5c6592f v:windowid is writeable (useful for GUIs) #4608A - Change icon 'neovim.svg' installation directory from %{_datadir}/pixmaps/%{name}.svg to %{_datadir}/icons/hicolor/scalable/apps/%{name}.svg as per dimstar request. - Fix neovim.changes indentation. - Remove unneeded patches that were applied by upstream: * neovim_fix_locale_dir_01.patch * neovim_fix_locale_dir_02.patch - Update to version 0.1.3. - Changelog: Features: * f2ae5a9 Add TextYankPost and TextDeletePost autocmds * 44b2cef bufhl: new mechanism for plugins to add highlights to a buffer * 39c3842 Make set{qf,loc}list() take {title} * 77a7ca4 'shortmess': Add "F" flag. #4446 * 99d4c8c keymap: Support <D-...> (super/command key). Fixes: * 14c9b30 terminal.c: temporary fix for incorrect paste handling Notable changes: * 50e129f defaults: Enable syntax and filetype plugins. * 4e39eee upgrade libvterm (improves terminal reflow) - Backport two patches that fix translations in Neovim: * neovim_fix_locale_dir_01.patch * neovim_fix_locale_dir_02.patch - Update to version 0.1.2. - Changelog: Features: * ef66249 tabline: Add %[] atom to the tabline, for random commands on click * f338ea7 job control: implement jobpid() to get PID of job * d0d5d17 job control: add 'detach' option to jobstart * 7ad3f07 Add support for binary numbers Fixes: * 291495a regexp_nfa.c: Speed up find_match_text() * 317d5ca input: Do not set high-bit; preserve ALT modifier. * 3b7c409 shell: Unquote &shell* options before using them Notable changes: * 49b06a8 encoding: Always use "utf-8" as default for &encoding * 79a6983 ui: revert "gui_running" hack Other changes: * b4b4536 version: semver.org compliance * c6aa716 reproducible builds: Stop using __{DATE,TIME}__ * 46bd3c0 clipboard: Check $DISPLAY. Prefer xsel. #4150 * f6ecd12 job control: don't kill PTY processes on exit * 49f0417 clipboard: Detach clipboard helper, so contents is kept after nvim exit * 38435e8 python: Add missing I/O methods to RedirectStream * d26b01d eval: Use better error messages when failing to dump values * 62d137c Remove swapsync. - Add neovim desktop file. - Add neovim logo to the package. - Update to version 0.1.1. - Changelog: * shada/msgpack editor plugin #3270 * VimL Dict notifications #3603 * Note: API for this feature may change. * :profile dump, :profile stop #2427 * :oldfiles! #3611 * TermOpen, TermClose events #3653 * fix: shada/viminfo: Do not save unlisted and quickfix buffers #3581 - Remove xclip of recommended packages list. - Add python-neovim and python3-neovim as recommended packages. - Initial version based on home:darix:neovim/neovim OBS-URL: https://build.opensuse.org/request/show/630090 OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=36
2018-08-18 22:29:13 +02:00
install -p -m 644 %{SOURCE2} %{buildroot}%{_datadir}/nvim/template.spec
%endif
%suse_update_desktop_file -r nvim ConsoleOnly Application Utility TextEditor
install -d -m0755 %{buildroot}%{_datadir}/pixmaps
install -m0644 runtime/nvim.png %{buildroot}%{_datadir}/pixmaps/nvim.png
# Fix exec bits
find %{buildroot}%{_datadir} \( -name \*.bat -o -name \*.awk \) \
-print -exec chmod -x '{}' \;
# vim/site directories for plugins shared with vim
mkdir -p %{buildroot}%{vimplugin_dir}/{after,after/syntax,autoload,colors,doc,ftdetect,plugin,syntax}
%fdupes %{buildroot}%{_datadir}/
%find_lang nvim
# We have to have rpath
# https://en.opensuse.org/openSUSE:Packaging_checks
export NO_BRP_CHECK_RPATH=true
%check
# Unit tests require the ffi module which is only available with luajit
%if %{with luajit}
# Tests fail on aarch64 gh#neovim/neovim#18176
%ifnarch aarch64
# set vars to make build reproducible in spite of config/CMakeLists.txt
HOSTNAME=OBS
USERNAME=OBS
pushd build
%make_build BUSTED_PRG=$(readlink -f ../lj-busted.sh) unittest
popd
%endif
%endif
%if 0%{?suse_version} < 1330
%post
%desktop_database_post
%icon_theme_cache_post
%endif
%if 0%{?suse_version} < 1330
%postun
%desktop_database_postun
%icon_theme_cache_postun
%endif
%files
%doc BACKERS.md CONTRIBUTING.md README.md
Accepting request 970507 from home:uncomfyhalomacro:branches:editors - Upgrade to 0.7.0: - api: add support for lua function & description in keymap (b411f43) - api: add api and lua autocmds (991e472) - api: nvim_clear_autocmd (b80651e) - api: pass args table to autocommand callbacks (30bc02c) - api: remove Lua autocommand callbacks when they return true (#17784) (be35d3c) - api: implement nvim_{add,del}_user_command (eff11b3) - api: implement nvim_buf_get_text (#15181) (11f7aee) - api: add nvim_get_option_value (71ac00c) - highlight: ns=0 to set :highlight namespace (4aa0cdd) - highlight: support for blend in nvim_set_hl (#17516) (b5bf487) - api: add strikethrough, nocombine to set_hl (cb18545) - api: relax statusline fillchar width check (3011794) - lua: add vim.keymap (6d41f65) - lua: add vim.spell (#16620) (e11a44a) - lua: add proper support of luv threads (b87867e) - lua: make :lua =expr print result of expr (d442546) - lua: handle lazy submodules in :lua vim. wildmenu completion (5ed6080) - lua: add notify_once() (#16956) (d78e466) - lua: add support for multiple optional types in vim.validate (#16864) (55c4393) - lua: show proper verbose output for lua configuration (ebfe083) - lua: more conversions between LuaRef and Vim Funcref (c8656e4) - lua: support converting nested Funcref back to LuaRef (#17749) (cac90d2) - call __tostring on lua errors if possible before reporting to user (81bffbd) - filetype.lua (#16600) (3fd454b) - filetype.lua: add support for files under .git (7a574e5) - filetype.lua: add support for patch files (27b664a) - filetype.lua: add support for tmux.conf files (94d5358) - filetype.lua: add support for txt files (#16926) (a45b578) - filetype.lua: Add typescript extension to filetype detection (#16923) (8ade800) - filetype.lua: fix .cc file not detected (c38d602) - filetype.lua: fix .env file not detected (19864bd) - filetype: convert patterns for mail buffers (#17238) (4458413) - filetype: support scripts.vim with filetype.lua (#17517) (fdea157) - decorations: support signs (30e4cc3) - extmarks: add strict option (11142f6) - api: expose extmark more details (5971b86) - api: expose extmark right_gravity and end_right_gravity (3d9ae9d) - use nvim_buf_set_extmark for vim.highlight (#16963) (b455e01) - statusline: support multibyte fillchar (be15ac0) - add support for global statusline (5ab1229), closes #9342 - ui: allow conceal to be defined in decorations and tree-sitter queries (6eca9b6) - tree-sitter: allow Atom-style capture fallbacks (#14196) (8ab5ec4) - treesitter: add more default groups to highlight map (#17835) (6d648f5) - treesitter: multiline match predicates (6e6c36c) - treesitter: set allocator when possible (b1e0aa6) - ts: add support for multiline nodes in get_node_text (#14999) (1f3c059) - ts: expose minimum language version to lua (#17186) (8c140be) - runtime: add query filetype (#17905) (2e85af4) - diagnostic: add "code" to the diagnostic structure (#17510) (5d6006f) - diagnostic: allow retrieving current diagnostic config (c915571) - lsp,diagnostic: open folds in jump-related functions (#16520) (222ef0c) - lsp: add buf_detach_client (#16250) (1b04da5) - lsp: add handler for workspace/workspaceFolders (#17149) (8e702c1) - lsp: dynamically generate list title in response_to_list (#17081) (574a582) - lsp: enable default debounce of 150 ms (#16908) (55a59e5) - lsp: skip or reduce debounce after idle (#16881) (b680392) - lsp: use vim.ui.select for selecting lsp client (#16531) (f99f3d9) - ui_client: connect to remote ui (a4400bf) - ui_client: implement event handlers (794d274) - ui_client: handle resize events (c6640d0) - ui_client: implement async paste handling (55b6ade) - ui_client: pass user input to remote server (6636160) - --headless: add on_print callback to stdioopen (a4069a3) - add autocommand event when search wraps around (#8487) (8ad6015) - add vim.tbl_get (#17831) (69f1de8) - autocmd: add Recording autocmds (8a4e26c) - autocmd: populate v:event in RecordingLeave (#16828) (f65b0d4) - completion: support selecting item via API from Lua mapping (c7aa646) - eval/method: partially port v8.1.1993 (4efcb72), closes #10848 - eval/method: partially port v8.1.1996 (2ee0bc0) - eval/method: partially port v8.1.2004 (0f4510c) - eval: partially port v8.2.0878 (d746f5a), closes vim/vim#5481 - eval: port emsg from v8.2.3284 (8adbba7) - events: add DirChangedPre (059d36e), closes vim/vim#9721 - events: support SIGWINCH for Signal event #18029 (b2cb05b), closes #15411 - hardcopy: check gui colours for highlights first (e5b5cbd) - highlight: support color names for cterm (dc24eeb) - ignore nore on maps (0347875) - input: delay some conversions to vgetc() (d7488bf) - input: enable /, /, /<c-[> pairs unconditionally (ed88ca7) - keymap: add F38-F63 keys (#17893) (9da0023) - keymap: return nil from an expr keymap (58140a9) - mappings: considering map description when filtering (#17423) (9a74c2b) - provider: remove support for python2 and python3.[3-5] (baec0d3) - remote: add basic --remote support (5862176) - runtime: import cleanadd.vim from Vim (#17699) (d33aebb) - runtime: include Lua in C++ ftplugin (#17843) (02fd00c) - runtime: new checkhealth filetype (#16660) (734fba0) - term: use vterm_output_set_callback() (7813b48) - test: use nvim_exec in helpers.source() #16064 (72652cb), closes #16071 - trigger ModeChanged for terminal modes (fdfd1ed) - tui: add error logging (#16615) (34d88ed) - tui: add support for CSI 4 : [2,4,5] m (f89fb41), closes #17362 - tui: enable CSI u keys (a11ff55) - vim-patch.sh: support additional args for -s (0ec92bb) - lsp: request only changed portions of the buffer in changetracking (#17118) (9055ec5) - only redraw concealed line if cursor has moved horizontally (595c1a7), closes #17889 - pre-compile embedded Lua source into bytecode (#16631) (4240ce8) - screen: reduce cursorline redrawing when jumping around (c29a14d), closes vim/vim#9996 - treesitter: cache query parsing (9c26939) - api: elide luaref copy when setting 'callback' in nvim_set_keymap (9f489f5) - --headless: do not block on press-enter prompts when no UI (5b34c2a), closes #9358 #11718 #15910 - not shown in :map commands (07a98b1) - add forkpty for SunOS variants (2c8f4d0) - add STRNLEN compatability macro (8f1fdbc) - anonymous sid not working (7b6ee3e) - api, lua: return NIL on failure to find converted function (#17779) (77eb6f9) - api/nvim_win_call: share common win_execute logic (452b46f) - api: allow empty list for cterm in nvim_set_hl (e35a2d8) - api: allow nvim_buf_set_extmark to accept end_row key (#16548) (cf32053) - api: convert blob to NUL-terminated API string (f6cc604) - api: correctly handle negative line numbers for nvim_buf_set_text (#17498) (1500447), closes #15181 - api: correctly pass f-args for nvim_create_user_command (#18098) (e463eb8) - api: delete all autocmds with the same ID (dc3bbd3) - api: force redefinition of user commands by default (#16918) (3923843) - api: highlight attribute for underline (96bb178), closes #17624 - api: improve autocmd error handling (9292938) - api: include event in get_autocmds (#17553) (37a86a2) - api: make nil value in nvim_set_option_value clear local value (#16710) (33cd1ba) - api: nvim__set_hl_ns causes extra redraws (505c12c) - api: nvim_win_set_cursor() redraw for cursorline and statusline (f92e749) - api: re-route nvim_get_runtime_file errors (d512be5) - api: use changedir_func() in nvim_set_current_dir() (23c3f7f) - api: validate command names in nvim_add_user_command (#17406) (238b944) - api: validate user_command name (#17004) (a34652e) - append test for checking zero width node range (58d81ef) - aucmd_win: always make aucmd_win the last window (89712dc) - aucmd_win: ensure aucmd_win stays floating (2deffb5) - autocmd: clean up autocmds only when needed (#17593) (d5bd7ff) - autocmd: restore autocmd showing behavior (74a2774) - autoload variables not loaded with vim.g & nvim_get_var (f292dd2) - bounds check for underdot (7fd1182) - build: check for empty value of LUAC_PRG (#16711) (eceb0b3) - build: check that LuaJIT has required modules for compilation (#16714) (abdf3a8) - build: install luajit modules on windows (#16658) (2abd178) - channel: fix channel consistency (5051510) - check for interrupt in nvim_echo, write_msg and nlua_print (#16537) (db4bc32) - checkhealth: make provider checkhealth output more consistent (#17722) (33ada23) - ci/backport: check for event_name == "pull_request_target" (50c8cc3) - ci: provide necessary permissions for calling workflow (b55e659) - clang/'Dead store': do not assign endcol (#17788) (876d22f) - close floating windows when calling win_close() (85ae04d) - completion: prevent K_LUA from closing pum (42e5fd3) - completion: update submode message when selecting from API (#17022) (69f3719) - correct vertical dragging room calculation with global statusline (#17928) (0d4bd42) - coverity/175977: big parameter passed by value (da89725) - coverity/188749: nullify pointer to fix use-after-free (d224957) - coverity/340720: error if nvim_eval_statusline given invalid winid (e850a92) - coverity: dead code and operands don't affect result #17662 (c3a6ff6) - decorations: do not put empty virt_text (#17872) (ba257d7) - define NAME_MAX from _XOPEN_NAME_MAX (8fdf1b2) - diagnostic: allow setting arbitrary config values (984270c) - diagnostic: assert that diagnostics have line number and column (#16683) (b515160) - diagnostic: clamp diagnostics on negative line numbers (#16496) (254c22a) - diagnostic: escape special chars in file names (#16527) (62f0157) - diagnostic: improve validation for list arguments (#16855) (838631e) - diagnostic: make open_float respect global diagnostic options (#17879) (a8e2c45), closes #17878 - diagnostic: only set default handler config if unset (8a27205) - diagnostic: resolve nil opts tables (fc8af96) - diagnostic: respect "if_many" source option for virtual text (#16653) (818ae74) - diagnostic: set effective buffer number for DiagnosticChanged autocmd (#16474) (99f6260) - diagnostic: set effective buffer number in autocmd (again) (#16589) (6063e07), closes #16474 - diagnostic: use botright copen for qflist (#17475) (d80c9b9) - diff: make algorithm work for vim.diff (#17300) (92e92f0), closes #17207 - do not cast offset to char_u (1a88729) - do not pass aucmd to the callback (#17650) (4f007a7) - do not save K_EVENT as lastc in Insert mode (ab1ceaa) - docs: add bufnr and user_data to diagnostic-structure (#16619) (3aff3d6) - docs: spelling in new underlines docs (4472820) - don't include pty.h on SunOS (435dd04) - don't use cfsetspeed, use i and o variants (05f9f63) - enable filetype detection and syntax highlighting with --clean (#17566) (ed1a9c3) - eval/method: add missing method support for existing built-ins (752ca2c) - eval: v:lua support for - in module names (fb8cd34) - event-loop: call vpeekc() directly first to check for character (74998b0) - event-loop: check if executed register has ended (64802da) - event-loop: duplicate display updating logic in vgetorpeek() (#17913) (a9665bb) - events: make v:event readonly in more events (#18070) (f89ca71) - ex_normal: spam \n in Ex mode only if in Cmdline mode (#17977) (a783cdd) - extmarks: fix signs (2ab2af5), closes #17638 - extmarks: splice extmarks on accepting spell (ea71c26) - filetype.lua: always return a string in getline helper function (#17852) (5e64d65) - filetype: expand tildes in filetype patterns (#17091) (59ea8fa) - filetype: fix foam pattern detection (6e04c86) - filetype: match negative priority patterns after extensions (#16980) (e92b816) - filetype: match on rather than (#16943) (f40ce34) - filetype: normalize slashes in file paths (6c86079) - filetype: set default ft_ignore_pat in filetype.lua (#16917) (60d3bb7) - float: do not switch window before deleting last listed buffer (#17840) (a72f338) - float: don't always switch window when deleting last listed buffer (#17836) (ff82b27) - float: handle buffer deletion with floating windows (3fdb7b5) - float: make laststatus=1 behave consistently with floating windows (a9359dc) - healthcheck: handle empty reports (300b009) - health: do not run external processes in a shell (a87ecf5) - highlight: accept NONE as a color name (#17487) (1e7cb2d), closes #17478 - highlight: allow globals to be cleared (876aaf2), closes #17420 - highlight: always update window highlight if highlight changed (23dcef9) - inccommand: do not change reg_prev_sub when previewing (d11bbac) - input: do not translate scroll keys into multiclicks (5499736) - input: fix clearing of reg_executing (2a574f7) - input: never escape CSI bytes (ff7c3d1) - input: put modifiers back into typeahead buffer when needed (8184564) - input: remove reinterpreted ALT/META chords from recorded macro (75f4741) - keymap: don't coerce false to '' (3cc29b7) - keywordprg: retain terminal buffer after K (#17046) (3ee1ba3) - line continuation: set growsize to correct value (#17655) (f24121a) - lsp and diagnostic highlight priority (#17461) (791e400) - lsp: always split text edits on \r, \r\n, and \n (#17087) (b72aae8) - lsp: always use target bufnr in location handler (#16876) (e42c906) - lsp: avoid attaching to unloaded buffers (#16723) (d6b939a) - lsp: avoid nil workspace/symbol query (#17107) (7085e5b) - lsp: call config on_exit handler before context is cleared (#16638) (6a92a53) - lsp: correct prefix when filterText is present (#17051) (f6329ea) - lsp: correctly align start and end range to codepoints during incremental sync (#16670) (36c401d), closes #16624 - lsp: create lsp requests with position offsets considering client encoding (#16382) (22d7dd2) - lsp: ensure pending changes are flushed on skipped debounce (#17015) (3f2fbb8) - lsp: explicitly pass bufnr in didSave handler (#16906) (207307d) - lsp: fetch offset_encoding from client in references (#17104) (a0201b6) - lsp: fix nil-index behavior for UTF-8 in _str_*index_enc methods (#16731) (9625832) - lsp: fix applying multiple out-of-range TextEdits (#17037) (43ef7df) - lsp: fix lookup of boolean values in workspace/configuration (#18026) (6160973) - lsp: forward offset_encoding in rename handler (#17079) (8066abc) - lsp: forward offset_encoding to apply_text_edits (#17075) (9304ee3) - lsp: handle insertion of previous line (#17618) (3800615) - lsp: handle negative activeSignature in signatureHelp (#17064) (e7cd811) - lsp: only send valid params in executeCommand (#16987) (e41e8b3) - lsp: pass offset_encoding in formatexpr() (#18084) (392cb7a) - lsp: progress handlers should return vim.NIL on error (#16472) (730a951) - lsp: resolve bufnr for get_lines (#16986) (b65a23a) - lsp: resolve nil bufnr (#16902) (e6c1545), closes #16889 #16745 - lsp: respect all of 'fixeol', 'eol', and 'binary' applying edits (#17574) (d477788) - lsp: set tabSize from 'shiftwidth', not 'softtabstop' (#17787) (af427de) - lsp: start incremental sync range at previous newline character (#17610) (a5e475f) - lsp: strictly enforce passing offset encoding (#17049) (bc722c8) - lsp: suppress ContentModified errors from UI (#16904) (d6f0c95) - lsp: use "text" filetype for plaintext (#17898) (4d3acd6) - lsp: use botright copen for all handlers (#17471) (6a3accc) - lua: don't use nlua_error when exiting early (1479083) - lua: print multiple return values with =expr (#16933) (287d356) - lua: restore priority of the preloader (b518b57) - lua: stricter type check when calling API function (#16745) (297ff97), closes #13651 - make mode() return correct value in ex mode (600e7e3) - man.vim: fix search function on some systems (#13709) (7165e77) - man.vim: support calling :Man without a section again (#17119) (ad2dbd4) - msgpack#strptime: use calendar.timegm to get seconds since epoch (fb14e2a) - ops: str_to_reg passing NULL to memcpy (8170260) - options: disallow empty 'fdc' and 'scl' (#16765) (70a68dc) - paste: avoid edges cases caused by empty chunk (fcc6f66) - paste: deal with eol and eof in Visual mode (bfb7754) - paste: deal with trailing new line in chunk (a6eafc7) - paste: don't move cursor past the end of pasted text in Normal mode (2601e08) - paste: escape control characters in Cmdline mode (e263afc) - paste: use getcmdtype() to determine whether in cmdline mode (9b1e1fb) - prompt: add missing changes from v8.1.0036 (d6ea074) - pty_process_win/wait_eof_timer_cb: also check for proc->out.did_eof (4154bf9) - pum_redraw: use grid_puts_len() to truncate the text (e6d35b9) - PVS/V1019: compound assignment expression is used inside condition (93e0d9b) - PVS/V560: ignore false "conditional expression is always false" (#17830) (d3af109), closes /github.com/vim/vim/pull/9993#issuecomment-1076544168 - PVS/V583: the '?:' operator always returns one and the same value (#17790) (e9b53f3) - query.lua: check empty table for lines (afcf644) - quickfix: avoid O(N^2) when filling from string typval (#16654) (5ba45a7) - remote: make compile again (70d2ab1) - remote: report connection error, missing return values (2be938a) - remote: report on missing wait commands, typecheck lua results (29c3632) - remote: respect silent in error reporting (1dbf867) - remote: use STATIC_CSTR_AS_STRING (1201145) - resolve nil arguments to API functions (#16889) (36662c9), closes #16745 #16745 - respect os_proc_children rv of pid not found (045422e) - runtime: add missing release metadata (5c1b8b7) - runtime: add syntax file for query (#18101) (7d1142b), closes #17905 - runtime: check markdownError before syn-clear (#16930) (b435755) - screen: do not do syntax highlighting at filler or folded lines (#17818) (7735163) - screen: do not draw filler lines post eof if already at last row (b326bf5) - screen: do not update syntax_last_parsed when drawing folded line (#17826) (52fe8ea) - screen: don't put empty sign text in line number column (4ddd6c5) - screenpos, float: add top and left border adjustment (ffe3003) - screen: truncate double-width character correctly (bc75544) - screen: truncate when overwriting right half of a double-width char (28dadd5) - set nested before executing callback (#17801) (7fb2310) - set RedrawingDisabled before entering aucmd_win (dd21e21) - signcol: always trigger a redraw (8ba8f1a), closes #17693 - signcol: handle edge case with maximum value (e67cd22) - signcol: update cursor when signcol changes (9d53791), closes #14195 - skip libutil on SunOS (b8ae43d) - substitute: properly check for empty command line (9955209) - syntax.c: correct hunk from Vim patch 8.0.0647 (#17761) (9e66d27) - syntax: remove trailing spaces in vim.vim (6795c97) - tabpage: correct check for failure to close window (ae0a43e) - termdebug: handle exiting during startup properly (#16790) (315858b) - terminal: correctly forward mouse events (e0956f7) - terminal: fix resize crash with pending scrollback (#14891) (0a1391f) - terminal: ignore left-release mouse action (c96f7e2), closes #9483 #8691 - terminal: return early if there are no invalid rows (c83fedf) - terminal: use coladvance() to calculate buffer cursor position (2784a5d) - test: only use buffer completion in popupmenu timer test (5ecb2cb) - tests: update legacy tab switch test to be sane (6dc31ee) - translation: po file for Russian (#17767) (e0fe91f) - translation: po file for Ukrainian (#18100) (4dc09f3) - ts: escape lang when loading parsers (#16668) (f9080b2) - tui: avoid using uninitialized memory in kitty (#17866) (a70b399) - tui: correct CSI sequence (#17844) (b81c310), closes #17771 /invisible-island.net/xterm/manpage/xterm.html#VT100 - tui: end streamed paste correctly when key buffer is empty (40ed2b5) - tui: remove ESC NUL forced escape (#17198) (a2f1572) - ui: close floating window on BufLeave event (#16557) (576408d) - ui: inccomand performance degradation (54cec45) - ui: make window resize commands manage cmdheight (463174b) - update last cursor on first CursorMoved (#16698) (b42e0c4) - uri: change scheme pattern to not include the comma character (#16797) (56f3c41) - use normal! in default mapping (#17695) (f291a03) - vim-patch.sh: fix N/A files patterns (#18073) (8f95f3e) - win_close: count the window the be closed instead of curwin (3539456) - win_split_ins: do not fail when oldwin is not valid (0cf2dc6), closes #14240 OBS-URL: https://build.opensuse.org/request/show/970507 OBS-URL: https://build.opensuse.org/package/show/editors/neovim?expand=0&rev=102
2022-04-18 10:39:39 +02:00
%license LICENSE.txt
%{_bindir}/nvim
%{_datadir}/nvim/
%{_datadir}/applications/nvim.desktop
%{_datadir}/pixmaps/nvim.png
%{_datadir}/icons/hicolor/*/apps/nvim.png
%{_mandir}/man1/nvim.1%{?ext_man}
%dir %{_sysconfdir}/nvim
%config(noreplace) %{_sysconfdir}/nvim/sysinit.vim
%dir %{_datadir}/vim
%dir %{vimplugin_dir}/
%dir %{vimplugin_dir}/after
%dir %{vimplugin_dir}/after/syntax
%dir %{vimplugin_dir}/autoload
%dir %{vimplugin_dir}/colors
%dir %{vimplugin_dir}/doc
%dir %{vimplugin_dir}/ftdetect
%dir %{vimplugin_dir}/plugin
%dir %{vimplugin_dir}/syntax
%files lang -f nvim.lang
%changelog