From 63f9dacb49870fe2e6d9afd413ff8f70d8a1dceb Mon Sep 17 00:00:00 2001 From: Gwyn Ciesla Date: Mon, 10 Feb 2020 08:27:26 -0600 Subject: [PATCH 01/15] "Adding package.cfg file" --- package.cfg | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 package.cfg diff --git a/package.cfg b/package.cfg new file mode 100644 index 0000000..66ea79d --- /dev/null +++ b/package.cfg @@ -0,0 +1,2 @@ +[koji] +targets = epel8 epel8-playground \ No newline at end of file From 4d454c1ff65c59b64daa48ef0e5d6b2b5eafa650 Mon Sep 17 00:00:00 2001 From: Michel Alexandre Salim Date: Mon, 27 Apr 2020 13:33:49 -0700 Subject: [PATCH 02/15] Adjust dependency names to build on EPEL 8 Apply patch for neovim 0.4.0 to handle new vterm --- neovim-0.3.8-vterm.patch | 220 +++++++++++++++++++++++++++++++++++++++ neovim.spec | 22 +++- 2 files changed, 239 insertions(+), 3 deletions(-) create mode 100644 neovim-0.3.8-vterm.patch diff --git a/neovim-0.3.8-vterm.patch b/neovim-0.3.8-vterm.patch new file mode 100644 index 0000000..928b0e1 --- /dev/null +++ b/neovim-0.3.8-vterm.patch @@ -0,0 +1,220 @@ +diff -ru neovim-0.3.8-orig/src/nvim/terminal.c neovim-0.3.8/src/nvim/terminal.c +--- neovim-0.3.8-orig/src/nvim/terminal.c 2019-07-02 18:11:42.000000000 -0700 ++++ neovim-0.3.8/src/nvim/terminal.c 2020-04-27 13:15:53.401051469 -0700 +@@ -151,9 +151,6 @@ + }; + + static PMap(ptr_t) *invalidated_terminals; +-static Map(int, int) *color_indexes; +-static int default_vt_fg, default_vt_bg; +-static VTermColor default_vt_bg_rgb; + + void terminal_init(void) + { +@@ -161,36 +158,6 @@ + time_watcher_init(&main_loop, &refresh_timer, NULL); + // refresh_timer_cb will redraw the screen which can call vimscript + refresh_timer.events = multiqueue_new_child(main_loop.events); +- +- // initialize a rgb->color index map for cterm attributes(VTermScreenCell +- // only has RGB information and we need color indexes for terminal UIs) +- color_indexes = map_new(int, int)(); +- VTerm *vt = vterm_new(24, 80); +- VTermState *state = vterm_obtain_state(vt); +- +- for (int color_index = 255; color_index >= 0; color_index--) { +- VTermColor color; +- // Some of the default 16 colors has the same color as the later +- // 240 colors. To avoid collisions, we will use the custom colors +- // below in non true color mode. +- if (color_index < 16) { +- color.red = 0; +- color.green = 0; +- color.blue = (uint8_t)(color_index + 1); +- } else { +- vterm_state_get_palette_color(state, color_index, &color); +- } +- map_put(int, int)(color_indexes, +- RGB_(color.red, color.green, color.blue), +- color_index + 1); +- } +- +- VTermColor fg, bg; +- vterm_state_get_default_colors(state, &fg, &bg); +- default_vt_fg = RGB_(fg.red, fg.green, fg.blue); +- default_vt_bg = RGB_(bg.red, bg.green, bg.blue); +- default_vt_bg_rgb = bg; +- vterm_free(vt); + } + + void terminal_teardown(void) +@@ -199,14 +166,12 @@ + multiqueue_free(refresh_timer.events); + time_watcher_close(&refresh_timer, NULL); + pmap_free(ptr_t)(invalidated_terminals); +- map_free(int, int)(color_indexes); + } + + // public API {{{ + + Terminal *terminal_open(TerminalOptions opts) + { +- bool true_color = ui_rgb_attached(); + // Create a new terminal instance and configure it + Terminal *rv = xcalloc(1, sizeof(Terminal)); + rv->opts = opts; +@@ -253,19 +218,6 @@ + ? SB_MAX : (size_t)MAX(1, curbuf->b_p_scbk); + rv->sb_buffer = xmalloc(sizeof(ScrollbackLine *) * rv->sb_size); + +- if (!true_color) { +- // Change the first 16 colors so we can easily get the correct color +- // index from them. +- for (int i = 0; i < 16; i++) { +- VTermColor color; +- color.red = 0; +- color.green = 0; +- color.blue = (uint8_t)(i + 1); +- vterm_state_set_palette_color(state, i, &color); +- } +- return rv; +- } +- + vterm_state_set_bold_highbright(state, true); + + // Configure the color palette. Try to get the color from: +@@ -284,9 +236,10 @@ + + if (color_val != -1) { + VTermColor color; +- color.red = (uint8_t)((color_val >> 16) & 0xFF); +- color.green = (uint8_t)((color_val >> 8) & 0xFF); +- color.blue = (uint8_t)((color_val >> 0) & 0xFF); ++ vterm_color_rgb(&color, ++ (uint8_t)((color_val >> 16) & 0xFF), ++ (uint8_t)((color_val >> 8) & 0xFF), ++ (uint8_t)((color_val >> 0) & 0xFF)); + vterm_state_set_palette_color(state, i, &color); + } + } +@@ -566,11 +519,19 @@ + vterm_screen_flush_damage(term->vts); + } + ++static int get_rgb(VTermState *state, VTermColor color) ++{ ++ vterm_state_convert_color_to_rgb(state, &color); ++ return RGB_(color.rgb.red, color.rgb.green, color.rgb.blue); ++} ++ ++ + void terminal_get_line_attributes(Terminal *term, win_T *wp, int linenr, + int *term_attrs) + { + int height, width; + vterm_get_size(term->vt, &height, &width); ++ VTermState *state = vterm_obtain_state(term->vt); + assert(linenr); + int row = linenr_to_row(term, linenr); + if (row >= height) { +@@ -581,19 +542,18 @@ + + for (int col = 0; col < width; col++) { + VTermScreenCell cell; +- fetch_cell(term, row, col, &cell); ++ bool color_valid = fetch_cell(term, row, col, &cell); ++ bool fg_default = !color_valid || VTERM_COLOR_IS_DEFAULT_FG(&cell.fg); ++ bool bg_default = !color_valid || VTERM_COLOR_IS_DEFAULT_BG(&cell.bg); ++ + // Get the rgb value set by libvterm. +- int vt_fg = RGB_(cell.fg.red, cell.fg.green, cell.fg.blue); +- int vt_bg = RGB_(cell.bg.red, cell.bg.green, cell.bg.blue); +- vt_fg = vt_fg != default_vt_fg ? vt_fg : - 1; +- vt_bg = vt_bg != default_vt_bg ? vt_bg : - 1; +- // Since libvterm does not expose the color index used by the program, we +- // use the rgb value to find the appropriate index in the cache computed by +- // `terminal_init`. +- int vt_fg_idx = vt_fg != -1 ? +- map_get(int, int)(color_indexes, vt_fg) : 0; +- int vt_bg_idx = vt_bg != -1 ? +- map_get(int, int)(color_indexes, vt_bg) : 0; ++ int vt_fg = fg_default ? -1 : get_rgb(state, cell.fg); ++ int vt_bg = bg_default ? -1 : get_rgb(state, cell.bg); ++ ++ int vt_fg_idx = ((!fg_default && VTERM_COLOR_IS_INDEXED(&cell.fg)) ++ ? cell.fg.indexed.idx + 1 : 0); ++ int vt_bg_idx = ((!bg_default && VTERM_COLOR_IS_INDEXED(&cell.bg)) ++ ? cell.bg.indexed.idx + 1 : 0); + + int hl_attrs = (cell.attrs.bold ? HL_BOLD : 0) + | (cell.attrs.italic ? HL_ITALIC : 0) +@@ -602,7 +562,7 @@ + + int attr_id = 0; + +- if (hl_attrs || vt_fg != -1 || vt_bg != -1) { ++ if (hl_attrs ||!fg_default || !bg_default) { + attr_id = hl_get_term_attr(&(HlAttrs) { + .cterm_ae_attr = (int16_t)hl_attrs, + .cterm_fg_color = vt_fg_idx, +@@ -1056,8 +1016,8 @@ + term->textbuf[line_len] = 0; + } + +-static void fetch_cell(Terminal *term, int row, int col, +- VTermScreenCell *cell) ++static bool fetch_cell(Terminal *term, int row, int col, ++ VTermScreenCell *cell) + { + if (row < 0) { + ScrollbackLine *sbrow = term->sb_buffer[-row - 1]; +@@ -1068,13 +1028,14 @@ + *cell = (VTermScreenCell) { + .chars = { 0 }, + .width = 1, +- .bg = default_vt_bg_rgb + }; ++ return false; + } + } else { + vterm_screen_get_cell(term->vts, (VTermPos){.row = row, .col = col}, + cell); + } ++ return true; + } + + // queue a terminal instance for refresh +Only in neovim-0.3.8/src/nvim: terminal.c.orig +diff -ru neovim-0.3.8-orig/test/functional/terminal/tui_spec.lua neovim-0.3.8/test/functional/terminal/tui_spec.lua +--- neovim-0.3.8-orig/test/functional/terminal/tui_spec.lua 2019-07-02 18:11:42.000000000 -0700 ++++ neovim-0.3.8/test/functional/terminal/tui_spec.lua 2020-04-27 13:15:53.402051462 -0700 +@@ -207,11 +207,11 @@ + screen:set_option('rgb', true) + screen:set_default_attr_ids({ + [1] = {reverse = true}, +- [2] = {foreground = 13}, ++ [2] = {foreground = tonumber('0x4040ff')}, + [3] = {bold = true, reverse = true}, + [4] = {bold = true}, +- [5] = {reverse = true, foreground = 4}, +- [6] = {foreground = 4}, ++ [5] = {reverse = true, foreground = tonumber('0xe0e000')}, ++ [6] = {foreground = tonumber('0xe0e000')}, + [7] = {reverse = true, foreground = Screen.colors.SeaGreen4}, + [8] = {foreground = Screen.colors.SeaGreen4}, + [9] = {bold = true, foreground = Screen.colors.Blue1}, +Only in neovim-0.3.8/test/functional/terminal: tui_spec.lua.orig +diff -ru neovim-0.3.8-orig/third-party/CMakeLists.txt neovim-0.3.8/third-party/CMakeLists.txt +--- neovim-0.3.8-orig/third-party/CMakeLists.txt 2019-07-02 18:11:42.000000000 -0700 ++++ neovim-0.3.8/third-party/CMakeLists.txt 2020-04-27 13:17:51.644207651 -0700 +@@ -147,8 +147,8 @@ + set(LIBTERMKEY_URL http://www.leonerd.org.uk/code/libtermkey/libtermkey-0.20.tar.gz) + set(LIBTERMKEY_SHA256 6c0d87c94ab9915e76ecd313baec08dedf3bd56de83743d9aa923a081935d2f5) + +-set(LIBVTERM_URL https://github.com/neovim/libvterm/archive/3f62ac6b7bdffda39d68f723fb1806dfd6d6382d.tar.gz) +-set(LIBVTERM_SHA256 1c8b318370f00f831f43e3ec86a48984250e3ee5c76beb106a421c9a42286ac5) ++set(LIBVTERM_URL https://github.com/neovim/libvterm/archive/4a5fa43e0dbc0db4fe67d40d788d60852864df9e.tar.gz) ++set(LIBVTERM_SHA256 49b3cf2dcb988b887671b1011cfeac98ff81bb5c23fb4ac34b91a59524992935) + + set(JEMALLOC_URL https://github.com/jemalloc/jemalloc/releases/download/4.5.0/jemalloc-4.5.0.tar.bz2) + set(JEMALLOC_SHA256 9409d85664b4f135b77518b0b118c549009dc10f6cba14557d170476611f6780) diff --git a/neovim.spec b/neovim.spec index 361f803..af91f24 100644 --- a/neovim.spec +++ b/neovim.spec @@ -7,7 +7,7 @@ Name: neovim Version: 0.3.8 -Release: 1%{?dist} +Release: 1%{?dist}.1 License: ASL 2.0 Summary: Vim-fork focused on extensibility and agility @@ -17,6 +17,16 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template Patch0: neovim-0.1.7-bitop.patch +# rebased from https://github.com/neovim/neovim/pull/9494.patch +Patch1: neovim-0.3.8-vterm.patch + +%if 0%{?el8} +# libuv-devel is from the CentOS Devel repo, only available on +# aarch64, ppc64le, and x86_64: +# https://mirrors.edge.kernel.org/centos/8-stream/Devel/ +# bz# 1828579 +ExcludeArch: s390x +%endif BuildRequires: gcc-c++ BuildRequires: cmake @@ -29,8 +39,8 @@ BuildRequires: gcc # luajit implements version 5.1 of the lua language spec, so it needs the # compat versions of libs. BuildRequires: luajit-devel -BuildRequires: compat-lua-lpeg -BuildRequires: compat-lua-mpack +BuildRequires: lua5.1-lpeg +BuildRequires: lua5.1-mpack %else BuildRequires: lua-devel BuildRequires: lua-lpeg @@ -71,6 +81,8 @@ parts of Vim, without compromise, and more. %patch0 -p1 -b .bitop %endif +%patch1 -p1 -b .vterm + %build mkdir -p build pushd build @@ -1548,6 +1560,10 @@ install -m0644 runtime/nvim.png %{buildroot}%{_datadir}/pixmaps/nvim.png %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Mon Apr 27 2020 Michel Alexandre Salim - 0.3.8-1.1 +- Adjust dependency names to build on EPEL 8 +- Apply patch for neovim 0.4.0 to handle new vterm + * Fri Jul 05 2019 Andreas Schneider - 0.3.8-1 - Update to version 0.3.8 From e1412377b3cca37f6a883181bc707fc68d79dae3 Mon Sep 17 00:00:00 2001 From: Troy Dawson Date: Thu, 24 Sep 2020 16:46:41 +0000 Subject: [PATCH 03/15] remove package.cfg per new epel-playground policy --- package.cfg | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 package.cfg diff --git a/package.cfg b/package.cfg deleted file mode 100644 index 66ea79d..0000000 --- a/package.cfg +++ /dev/null @@ -1,2 +0,0 @@ -[koji] -targets = epel8 epel8-playground \ No newline at end of file From 75b88a9f5d90f105525a1a19b6370302b314961c Mon Sep 17 00:00:00 2001 From: Michel Alexandre Salim Date: Tue, 22 Mar 2022 10:01:19 -0700 Subject: [PATCH 04/15] Revert "Adjust dependency names to build on EPEL 8" This reverts commit 4d454c1ff65c59b64daa48ef0e5d6b2b5eafa650. --- neovim-0.3.8-vterm.patch | 220 --------------------------------------- neovim.spec | 22 +--- 2 files changed, 3 insertions(+), 239 deletions(-) delete mode 100644 neovim-0.3.8-vterm.patch diff --git a/neovim-0.3.8-vterm.patch b/neovim-0.3.8-vterm.patch deleted file mode 100644 index 928b0e1..0000000 --- a/neovim-0.3.8-vterm.patch +++ /dev/null @@ -1,220 +0,0 @@ -diff -ru neovim-0.3.8-orig/src/nvim/terminal.c neovim-0.3.8/src/nvim/terminal.c ---- neovim-0.3.8-orig/src/nvim/terminal.c 2019-07-02 18:11:42.000000000 -0700 -+++ neovim-0.3.8/src/nvim/terminal.c 2020-04-27 13:15:53.401051469 -0700 -@@ -151,9 +151,6 @@ - }; - - static PMap(ptr_t) *invalidated_terminals; --static Map(int, int) *color_indexes; --static int default_vt_fg, default_vt_bg; --static VTermColor default_vt_bg_rgb; - - void terminal_init(void) - { -@@ -161,36 +158,6 @@ - time_watcher_init(&main_loop, &refresh_timer, NULL); - // refresh_timer_cb will redraw the screen which can call vimscript - refresh_timer.events = multiqueue_new_child(main_loop.events); -- -- // initialize a rgb->color index map for cterm attributes(VTermScreenCell -- // only has RGB information and we need color indexes for terminal UIs) -- color_indexes = map_new(int, int)(); -- VTerm *vt = vterm_new(24, 80); -- VTermState *state = vterm_obtain_state(vt); -- -- for (int color_index = 255; color_index >= 0; color_index--) { -- VTermColor color; -- // Some of the default 16 colors has the same color as the later -- // 240 colors. To avoid collisions, we will use the custom colors -- // below in non true color mode. -- if (color_index < 16) { -- color.red = 0; -- color.green = 0; -- color.blue = (uint8_t)(color_index + 1); -- } else { -- vterm_state_get_palette_color(state, color_index, &color); -- } -- map_put(int, int)(color_indexes, -- RGB_(color.red, color.green, color.blue), -- color_index + 1); -- } -- -- VTermColor fg, bg; -- vterm_state_get_default_colors(state, &fg, &bg); -- default_vt_fg = RGB_(fg.red, fg.green, fg.blue); -- default_vt_bg = RGB_(bg.red, bg.green, bg.blue); -- default_vt_bg_rgb = bg; -- vterm_free(vt); - } - - void terminal_teardown(void) -@@ -199,14 +166,12 @@ - multiqueue_free(refresh_timer.events); - time_watcher_close(&refresh_timer, NULL); - pmap_free(ptr_t)(invalidated_terminals); -- map_free(int, int)(color_indexes); - } - - // public API {{{ - - Terminal *terminal_open(TerminalOptions opts) - { -- bool true_color = ui_rgb_attached(); - // Create a new terminal instance and configure it - Terminal *rv = xcalloc(1, sizeof(Terminal)); - rv->opts = opts; -@@ -253,19 +218,6 @@ - ? SB_MAX : (size_t)MAX(1, curbuf->b_p_scbk); - rv->sb_buffer = xmalloc(sizeof(ScrollbackLine *) * rv->sb_size); - -- if (!true_color) { -- // Change the first 16 colors so we can easily get the correct color -- // index from them. -- for (int i = 0; i < 16; i++) { -- VTermColor color; -- color.red = 0; -- color.green = 0; -- color.blue = (uint8_t)(i + 1); -- vterm_state_set_palette_color(state, i, &color); -- } -- return rv; -- } -- - vterm_state_set_bold_highbright(state, true); - - // Configure the color palette. Try to get the color from: -@@ -284,9 +236,10 @@ - - if (color_val != -1) { - VTermColor color; -- color.red = (uint8_t)((color_val >> 16) & 0xFF); -- color.green = (uint8_t)((color_val >> 8) & 0xFF); -- color.blue = (uint8_t)((color_val >> 0) & 0xFF); -+ vterm_color_rgb(&color, -+ (uint8_t)((color_val >> 16) & 0xFF), -+ (uint8_t)((color_val >> 8) & 0xFF), -+ (uint8_t)((color_val >> 0) & 0xFF)); - vterm_state_set_palette_color(state, i, &color); - } - } -@@ -566,11 +519,19 @@ - vterm_screen_flush_damage(term->vts); - } - -+static int get_rgb(VTermState *state, VTermColor color) -+{ -+ vterm_state_convert_color_to_rgb(state, &color); -+ return RGB_(color.rgb.red, color.rgb.green, color.rgb.blue); -+} -+ -+ - void terminal_get_line_attributes(Terminal *term, win_T *wp, int linenr, - int *term_attrs) - { - int height, width; - vterm_get_size(term->vt, &height, &width); -+ VTermState *state = vterm_obtain_state(term->vt); - assert(linenr); - int row = linenr_to_row(term, linenr); - if (row >= height) { -@@ -581,19 +542,18 @@ - - for (int col = 0; col < width; col++) { - VTermScreenCell cell; -- fetch_cell(term, row, col, &cell); -+ bool color_valid = fetch_cell(term, row, col, &cell); -+ bool fg_default = !color_valid || VTERM_COLOR_IS_DEFAULT_FG(&cell.fg); -+ bool bg_default = !color_valid || VTERM_COLOR_IS_DEFAULT_BG(&cell.bg); -+ - // Get the rgb value set by libvterm. -- int vt_fg = RGB_(cell.fg.red, cell.fg.green, cell.fg.blue); -- int vt_bg = RGB_(cell.bg.red, cell.bg.green, cell.bg.blue); -- vt_fg = vt_fg != default_vt_fg ? vt_fg : - 1; -- vt_bg = vt_bg != default_vt_bg ? vt_bg : - 1; -- // Since libvterm does not expose the color index used by the program, we -- // use the rgb value to find the appropriate index in the cache computed by -- // `terminal_init`. -- int vt_fg_idx = vt_fg != -1 ? -- map_get(int, int)(color_indexes, vt_fg) : 0; -- int vt_bg_idx = vt_bg != -1 ? -- map_get(int, int)(color_indexes, vt_bg) : 0; -+ int vt_fg = fg_default ? -1 : get_rgb(state, cell.fg); -+ int vt_bg = bg_default ? -1 : get_rgb(state, cell.bg); -+ -+ int vt_fg_idx = ((!fg_default && VTERM_COLOR_IS_INDEXED(&cell.fg)) -+ ? cell.fg.indexed.idx + 1 : 0); -+ int vt_bg_idx = ((!bg_default && VTERM_COLOR_IS_INDEXED(&cell.bg)) -+ ? cell.bg.indexed.idx + 1 : 0); - - int hl_attrs = (cell.attrs.bold ? HL_BOLD : 0) - | (cell.attrs.italic ? HL_ITALIC : 0) -@@ -602,7 +562,7 @@ - - int attr_id = 0; - -- if (hl_attrs || vt_fg != -1 || vt_bg != -1) { -+ if (hl_attrs ||!fg_default || !bg_default) { - attr_id = hl_get_term_attr(&(HlAttrs) { - .cterm_ae_attr = (int16_t)hl_attrs, - .cterm_fg_color = vt_fg_idx, -@@ -1056,8 +1016,8 @@ - term->textbuf[line_len] = 0; - } - --static void fetch_cell(Terminal *term, int row, int col, -- VTermScreenCell *cell) -+static bool fetch_cell(Terminal *term, int row, int col, -+ VTermScreenCell *cell) - { - if (row < 0) { - ScrollbackLine *sbrow = term->sb_buffer[-row - 1]; -@@ -1068,13 +1028,14 @@ - *cell = (VTermScreenCell) { - .chars = { 0 }, - .width = 1, -- .bg = default_vt_bg_rgb - }; -+ return false; - } - } else { - vterm_screen_get_cell(term->vts, (VTermPos){.row = row, .col = col}, - cell); - } -+ return true; - } - - // queue a terminal instance for refresh -Only in neovim-0.3.8/src/nvim: terminal.c.orig -diff -ru neovim-0.3.8-orig/test/functional/terminal/tui_spec.lua neovim-0.3.8/test/functional/terminal/tui_spec.lua ---- neovim-0.3.8-orig/test/functional/terminal/tui_spec.lua 2019-07-02 18:11:42.000000000 -0700 -+++ neovim-0.3.8/test/functional/terminal/tui_spec.lua 2020-04-27 13:15:53.402051462 -0700 -@@ -207,11 +207,11 @@ - screen:set_option('rgb', true) - screen:set_default_attr_ids({ - [1] = {reverse = true}, -- [2] = {foreground = 13}, -+ [2] = {foreground = tonumber('0x4040ff')}, - [3] = {bold = true, reverse = true}, - [4] = {bold = true}, -- [5] = {reverse = true, foreground = 4}, -- [6] = {foreground = 4}, -+ [5] = {reverse = true, foreground = tonumber('0xe0e000')}, -+ [6] = {foreground = tonumber('0xe0e000')}, - [7] = {reverse = true, foreground = Screen.colors.SeaGreen4}, - [8] = {foreground = Screen.colors.SeaGreen4}, - [9] = {bold = true, foreground = Screen.colors.Blue1}, -Only in neovim-0.3.8/test/functional/terminal: tui_spec.lua.orig -diff -ru neovim-0.3.8-orig/third-party/CMakeLists.txt neovim-0.3.8/third-party/CMakeLists.txt ---- neovim-0.3.8-orig/third-party/CMakeLists.txt 2019-07-02 18:11:42.000000000 -0700 -+++ neovim-0.3.8/third-party/CMakeLists.txt 2020-04-27 13:17:51.644207651 -0700 -@@ -147,8 +147,8 @@ - set(LIBTERMKEY_URL http://www.leonerd.org.uk/code/libtermkey/libtermkey-0.20.tar.gz) - set(LIBTERMKEY_SHA256 6c0d87c94ab9915e76ecd313baec08dedf3bd56de83743d9aa923a081935d2f5) - --set(LIBVTERM_URL https://github.com/neovim/libvterm/archive/3f62ac6b7bdffda39d68f723fb1806dfd6d6382d.tar.gz) --set(LIBVTERM_SHA256 1c8b318370f00f831f43e3ec86a48984250e3ee5c76beb106a421c9a42286ac5) -+set(LIBVTERM_URL https://github.com/neovim/libvterm/archive/4a5fa43e0dbc0db4fe67d40d788d60852864df9e.tar.gz) -+set(LIBVTERM_SHA256 49b3cf2dcb988b887671b1011cfeac98ff81bb5c23fb4ac34b91a59524992935) - - set(JEMALLOC_URL https://github.com/jemalloc/jemalloc/releases/download/4.5.0/jemalloc-4.5.0.tar.bz2) - set(JEMALLOC_SHA256 9409d85664b4f135b77518b0b118c549009dc10f6cba14557d170476611f6780) diff --git a/neovim.spec b/neovim.spec index af91f24..361f803 100644 --- a/neovim.spec +++ b/neovim.spec @@ -7,7 +7,7 @@ Name: neovim Version: 0.3.8 -Release: 1%{?dist}.1 +Release: 1%{?dist} License: ASL 2.0 Summary: Vim-fork focused on extensibility and agility @@ -17,16 +17,6 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template Patch0: neovim-0.1.7-bitop.patch -# rebased from https://github.com/neovim/neovim/pull/9494.patch -Patch1: neovim-0.3.8-vterm.patch - -%if 0%{?el8} -# libuv-devel is from the CentOS Devel repo, only available on -# aarch64, ppc64le, and x86_64: -# https://mirrors.edge.kernel.org/centos/8-stream/Devel/ -# bz# 1828579 -ExcludeArch: s390x -%endif BuildRequires: gcc-c++ BuildRequires: cmake @@ -39,8 +29,8 @@ BuildRequires: gcc # luajit implements version 5.1 of the lua language spec, so it needs the # compat versions of libs. BuildRequires: luajit-devel -BuildRequires: lua5.1-lpeg -BuildRequires: lua5.1-mpack +BuildRequires: compat-lua-lpeg +BuildRequires: compat-lua-mpack %else BuildRequires: lua-devel BuildRequires: lua-lpeg @@ -81,8 +71,6 @@ parts of Vim, without compromise, and more. %patch0 -p1 -b .bitop %endif -%patch1 -p1 -b .vterm - %build mkdir -p build pushd build @@ -1560,10 +1548,6 @@ install -m0644 runtime/nvim.png %{buildroot}%{_datadir}/pixmaps/nvim.png %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog -* Mon Apr 27 2020 Michel Alexandre Salim - 0.3.8-1.1 -- Adjust dependency names to build on EPEL 8 -- Apply patch for neovim 0.4.0 to handle new vterm - * Fri Jul 05 2019 Andreas Schneider - 0.3.8-1 - Update to version 0.3.8 From fc40801ed60ce4ec123884bf4adbbd51ca116e49 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 15 Apr 2022 15:11:48 +0200 Subject: [PATCH 05/15] Update to version 0.7.0 --- .gitignore | 1 + ...m-libvterm-vterm_output_set_callback.patch | 88 ------------------- neovim.spec | 39 +++++--- sources | 2 +- 4 files changed, 31 insertions(+), 99 deletions(-) delete mode 100644 neovim-libvterm-vterm_output_set_callback.patch diff --git a/.gitignore b/.gitignore index 581a14b..908737a 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,4 @@ /neovim-0.5.1.tar.gz /neovim-0.6.0.tar.gz /neovim-0.6.1.tar.gz +/neovim-0.7.0.tar.gz diff --git a/neovim-libvterm-vterm_output_set_callback.patch b/neovim-libvterm-vterm_output_set_callback.patch deleted file mode 100644 index ccbdcf8..0000000 --- a/neovim-libvterm-vterm_output_set_callback.patch +++ /dev/null @@ -1,88 +0,0 @@ -From 7813b48645bf2af11c2d18f4e4154a74d4dad662 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Tue, 8 Feb 2022 10:50:17 +0100 -Subject: [PATCH] feat(term): use vterm_output_set_callback() - ---- - src/nvim/channel.c | 1 - - src/nvim/terminal.c | 20 ++++++-------------- - 2 files changed, 6 insertions(+), 15 deletions(-) - -Index: neovim-0.6.1/src/nvim/channel.c -=================================================================== ---- neovim-0.6.1.orig/src/nvim/channel.c 2022-02-09 21:04:03.103478757 +0100 -+++ neovim-0.6.1/src/nvim/channel.c 2022-02-09 21:05:54.198482470 +0100 -@@ -613,7 +613,6 @@ static void on_channel_output(Stream *st - } else { - if (chan->term) { - terminal_receive(chan->term, ptr, count); -- terminal_flush_output(chan->term); - } - - rbuffer_consumed(buf, count); -Index: neovim-0.6.1/src/nvim/terminal.c -=================================================================== ---- neovim-0.6.1.orig/src/nvim/terminal.c 2021-12-31 18:02:21.000000000 +0100 -+++ neovim-0.6.1/src/nvim/terminal.c 2022-02-09 21:06:25.507483517 +0100 -@@ -173,6 +173,11 @@ void terminal_teardown(void) - pmap_init(ptr_t, &invalidated_terminals); - } - -+static void term_output_callback(const char *s, size_t len, void *user_data) -+{ -+ terminal_send((Terminal *)user_data, (char *)s, len); -+} -+ - // public API {{{ - - Terminal *terminal_open(buf_T *buf, TerminalOptions opts) -@@ -196,6 +201,7 @@ Terminal *terminal_open(buf_T *buf, Term - vterm_screen_set_callbacks(rv->vts, &vterm_screen_callbacks, rv); - vterm_screen_set_damage_merge(rv->vts, VTERM_DAMAGE_SCROLL); - vterm_screen_reset(rv->vts, 1); -+ vterm_output_set_callback(rv->vt, term_output_callback, rv); - // force a initial refresh of the screen to ensure the buffer will always - // have as many lines as screen rows when refresh_scrollback is called - rv->invalid_start = 0; -@@ -633,7 +639,6 @@ void terminal_paste(long count, char_u * - return; - } - vterm_keyboard_start_paste(curbuf->terminal->vt); -- terminal_flush_output(curbuf->terminal); - size_t buff_len = STRLEN(y_array[0]); - char_u *buff = xmalloc(buff_len); - for (int i = 0; i < count; i++) { // -V756 -@@ -664,14 +669,6 @@ void terminal_paste(long count, char_u * - } - xfree(buff); - vterm_keyboard_end_paste(curbuf->terminal->vt); -- terminal_flush_output(curbuf->terminal); --} -- --void terminal_flush_output(Terminal *term) --{ -- size_t len = vterm_output_read(term->vt, term->textbuf, -- sizeof(term->textbuf)); -- terminal_send(term, term->textbuf, len); - } - - void terminal_send_key(Terminal *term, int c) -@@ -690,8 +687,6 @@ void terminal_send_key(Terminal *term, i - } else { - vterm_keyboard_unichar(term->vt, (uint32_t)c, mod); - } -- -- terminal_flush_output(term); - } - - void terminal_receive(Terminal *term, char *data, size_t len) -@@ -1268,9 +1263,6 @@ static bool send_mouse_event(Terminal *t - } - - mouse_action(term, button, row, col - offset, drag, 0); -- size_t len = vterm_output_read(term->vt, term->textbuf, -- sizeof(term->textbuf)); -- terminal_send(term, term->textbuf, len); - return false; - } - diff --git a/neovim.spec b/neovim.spec index 0df8c8f..99ec0b9 100644 --- a/neovim.spec +++ b/neovim.spec @@ -38,8 +38,8 @@ %endif Name: neovim -Version: 0.6.1 -Release: 4%{?dist} +Version: 0.7.0 +Release: 1%{?dist} License: ASL 2.0 Summary: Vim-fork focused on extensibility and agility @@ -49,8 +49,7 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template -Patch0: neovim-libvterm-vterm_output_set_callback.patch -Patch1: neovim-libvterm-0-2-support.patch +Patch0: neovim-libvterm-0-2-support.patch Patch1000: neovim-lua-bit32.patch Patch1001: neovim-cmake-lua-5.1.patch @@ -107,7 +106,6 @@ parts of Vim, without compromise, and more. %setup -q %patch0 -p1 -%patch1 -p1 %if %{without luajit} %patch1000 -p1 @@ -145,7 +143,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %find_lang nvim %files -f nvim.lang -%license LICENSE +%license LICENSE.txt %doc BACKERS.md CONTRIBUTING.md README.md %{_bindir}/nvim @@ -162,6 +160,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/bugreport.vim %{_datadir}/nvim/runtime/delmenu.vim %{_datadir}/nvim/runtime/filetype.vim +%{_datadir}/nvim/runtime/filetype.lua %{_datadir}/nvim/runtime/ftoff.vim %{_datadir}/nvim/runtime/ftplugin.vim %{_datadir}/nvim/runtime/ftplugof.vim @@ -185,6 +184,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/autoload/contextcomplete.vim %{_datadir}/nvim/runtime/autoload/csscomplete.vim %{_datadir}/nvim/runtime/autoload/decada.vim +%{_datadir}/nvim/runtime/autoload/freebasic.vim %{_datadir}/nvim/runtime/autoload/gnat.vim %{_datadir}/nvim/runtime/autoload/gzip.vim %{_datadir}/nvim/runtime/autoload/haskellcomplete.vim @@ -226,7 +226,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/autoload/provider/clipboard.vim %{_datadir}/nvim/runtime/autoload/provider/node.vim %{_datadir}/nvim/runtime/autoload/provider/perl.vim -%{_datadir}/nvim/runtime/autoload/provider/python.vim %{_datadir}/nvim/runtime/autoload/provider/python3.vim %{_datadir}/nvim/runtime/autoload/provider/pythonx.vim %{_datadir}/nvim/runtime/autoload/provider/ruby.vim @@ -373,6 +372,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/doc/api.txt %{_datadir}/nvim/runtime/doc/arabic.txt %{_datadir}/nvim/runtime/doc/autocmd.txt +%{_datadir}/nvim/runtime/doc/builtin.txt %{_datadir}/nvim/runtime/doc/change.txt %{_datadir}/nvim/runtime/doc/channel.txt %{_datadir}/nvim/runtime/doc/cmdline.txt @@ -397,7 +397,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/doc/help.txt %{_datadir}/nvim/runtime/doc/helphelp.txt %{_datadir}/nvim/runtime/doc/if_cscop.txt -%{_datadir}/nvim/runtime/doc/if_lua.txt %{_datadir}/nvim/runtime/doc/if_perl.txt %{_datadir}/nvim/runtime/doc/if_pyth.txt %{_datadir}/nvim/runtime/doc/if_ruby.txt @@ -416,7 +415,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/doc/message.txt %{_datadir}/nvim/runtime/doc/mlang.txt %{_datadir}/nvim/runtime/doc/motion.txt -%{_datadir}/nvim/runtime/doc/msgpack_rpc.txt %{_datadir}/nvim/runtime/doc/nvim.txt %{_datadir}/nvim/runtime/doc/nvim_terminal_emulator.txt %{_datadir}/nvim/runtime/doc/options.txt @@ -435,6 +433,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/doc/quickfix.txt %{_datadir}/nvim/runtime/doc/quickref.txt %{_datadir}/nvim/runtime/doc/recover.txt +%{_datadir}/nvim/runtime/doc/remote.txt %{_datadir}/nvim/runtime/doc/remote_plugin.txt %{_datadir}/nvim/runtime/doc/repeat.txt %{_datadir}/nvim/runtime/doc/rileft.txt @@ -565,7 +564,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/fstab.vim %{_datadir}/nvim/runtime/ftplugin/fvwm.vim %{_datadir}/nvim/runtime/ftplugin/gdb.vim -%{_datadir}/nvim/runtime/ftplugin/git.vim %{_datadir}/nvim/runtime/ftplugin/gitcommit.vim %{_datadir}/nvim/runtime/ftplugin/gitconfig.vim %{_datadir}/nvim/runtime/ftplugin/gitrebase.vim @@ -586,6 +584,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/hostsaccess.vim %{_datadir}/nvim/runtime/ftplugin/html.vim %{_datadir}/nvim/runtime/ftplugin/htmldjango.vim +%{_datadir}/nvim/runtime/ftplugin/i3config.vim %{_datadir}/nvim/runtime/ftplugin/indent.vim %{_datadir}/nvim/runtime/ftplugin/initex.vim %{_datadir}/nvim/runtime/ftplugin/ishd.vim @@ -665,6 +664,8 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/ps1xml.vim %{_datadir}/nvim/runtime/ftplugin/pyrex.vim %{_datadir}/nvim/runtime/ftplugin/python.vim +%{_datadir}/nvim/runtime/ftplugin/qb64.vim +%{_datadir}/nvim/runtime/ftplugin/query.lua %{_datadir}/nvim/runtime/ftplugin/qf.vim %{_datadir}/nvim/runtime/ftplugin/quake.vim %{_datadir}/nvim/runtime/ftplugin/r.vim @@ -701,6 +702,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/slpconf.vim %{_datadir}/nvim/runtime/ftplugin/slpreg.vim %{_datadir}/nvim/runtime/ftplugin/slpspi.vim +%{_datadir}/nvim/runtime/ftplugin/solution.vim %{_datadir}/nvim/runtime/ftplugin/spec.vim %{_datadir}/nvim/runtime/ftplugin/sql.vim %{_datadir}/nvim/runtime/ftplugin/sshconfig.vim @@ -753,6 +755,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/ant.vim %{_datadir}/nvim/runtime/indent/automake.vim %{_datadir}/nvim/runtime/indent/awk.vim +%{_datadir}/nvim/runtime/indent/basic.vim %{_datadir}/nvim/runtime/indent/bib.vim %{_datadir}/nvim/runtime/indent/bst.vim %{_datadir}/nvim/runtime/indent/bzl.vim @@ -786,6 +789,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/falcon.vim %{_datadir}/nvim/runtime/indent/fortran.vim %{_datadir}/nvim/runtime/indent/framescript.vim +%{_datadir}/nvim/runtime/indent/freebasic.vim %{_datadir}/nvim/runtime/indent/gitconfig.vim %{_datadir}/nvim/runtime/indent/gitolite.vim %{_datadir}/nvim/runtime/indent/go.vim @@ -830,6 +834,8 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/prolog.vim %{_datadir}/nvim/runtime/indent/pyrex.vim %{_datadir}/nvim/runtime/indent/python.vim +%{_datadir}/nvim/runtime/indent/qb64.vim +%{_datadir}/nvim/runtime/indent/query.lua %{_datadir}/nvim/runtime/indent/r.vim %{_datadir}/nvim/runtime/indent/raml.vim %{_datadir}/nvim/runtime/indent/readline.vim @@ -977,11 +983,15 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/lua/vim %{_datadir}/nvim/runtime/lua/vim/F.lua +%{_datadir}/nvim/runtime/lua/vim/_editor.lua +%{_datadir}/nvim/runtime/lua/vim/_init_packages.lua %{_datadir}/nvim/runtime/lua/vim/_meta.lua %{_datadir}/nvim/runtime/lua/vim/compat.lua %{_datadir}/nvim/runtime/lua/vim/diagnostic.lua +%{_datadir}/nvim/runtime/lua/vim/filetype.lua %{_datadir}/nvim/runtime/lua/vim/highlight.lua %{_datadir}/nvim/runtime/lua/vim/inspect.lua +%{_datadir}/nvim/runtime/lua/vim/keymap.lua %{_datadir}/nvim/runtime/lua/vim/lsp.lua %{_datadir}/nvim/runtime/lua/vim/shared.lua %{_datadir}/nvim/runtime/lua/vim/treesitter.lua @@ -1112,6 +1122,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/print/prolog.ps %dir %{_datadir}/nvim/runtime/spell +%{_datadir}/nvim/runtime/spell/cleanadd.vim %{_datadir}/nvim/runtime/spell/en.utf-8.spl %dir %{_datadir}/nvim/runtime/syntax @@ -1239,6 +1250,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/debsources.vim %{_datadir}/nvim/runtime/syntax/def.vim %{_datadir}/nvim/runtime/syntax/denyhosts.vim +%{_datadir}/nvim/runtime/syntax/dep3patch.vim %{_datadir}/nvim/runtime/syntax/desc.vim %{_datadir}/nvim/runtime/syntax/desktop.vim %{_datadir}/nvim/runtime/syntax/dictconf.vim @@ -1354,6 +1366,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/htmldjango.vim %{_datadir}/nvim/runtime/syntax/htmlm4.vim %{_datadir}/nvim/runtime/syntax/htmlos.vim +%{_datadir}/nvim/runtime/syntax/i3config.vim %{_datadir}/nvim/runtime/syntax/ia64.vim %{_datadir}/nvim/runtime/syntax/ibasic.vim %{_datadir}/nvim/runtime/syntax/icemenu.vim @@ -1541,6 +1554,8 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/purifylog.vim %{_datadir}/nvim/runtime/syntax/pyrex.vim %{_datadir}/nvim/runtime/syntax/python.vim +%{_datadir}/nvim/runtime/syntax/qb64.vim +%{_datadir}/nvim/runtime/syntax/query.lua %{_datadir}/nvim/runtime/syntax/qf.vim %{_datadir}/nvim/runtime/syntax/quake.vim %{_datadir}/nvim/runtime/syntax/r.vim @@ -1643,6 +1658,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/sqloracle.vim %{_datadir}/nvim/runtime/syntax/sqr.vim %{_datadir}/nvim/runtime/syntax/squid.vim +%{_datadir}/nvim/runtime/syntax/squirrel.vim %{_datadir}/nvim/runtime/syntax/srec.vim %{_datadir}/nvim/runtime/syntax/sshconfig.vim %{_datadir}/nvim/runtime/syntax/sshdconfig.vim @@ -1778,6 +1794,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Fri Apr 15 2022 Andreas Schneider - 0.7.0-1 +- Update to version 0.7.0 + * Thu Mar 17 2022 Michel Alexandre Salim - 0.6.1-4 - Support building on EPEL 8 diff --git a/sources b/sources index 9c2c738..6649da0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (neovim-0.6.1.tar.gz) = 399489f6aaabec2a89b695b22dcd860149acaad723372cced0b4d2cdae464e2db5758372b9123cd0d2a683e0ea42b871935eb85e550cecce620d896691cfda53 +SHA512 (neovim-0.7.0.tar.gz) = 3597c54fb925a4d607bca9ba0fdb37df90ecb816da99f52baf46cc2ec79727a55048ba1d8d22c8e7d61f0e8e35546326b1d0d15c0a91de8bf5bc529c45fb1ce0 From 0beb66ddf77d083a5eabcff1229ebf98f9ca1293 Mon Sep 17 00:00:00 2001 From: Michel Alexandre Salim Date: Wed, 6 Apr 2022 17:29:10 -0700 Subject: [PATCH 06/15] Bump runtime requirement for libvterm Signed-off-by: Michel Alexandre Salim --- neovim.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/neovim.spec b/neovim.spec index 99ec0b9..9d29193 100644 --- a/neovim.spec +++ b/neovim.spec @@ -85,6 +85,8 @@ BuildRequires: msgpack-devel >= 3.1.0 BuildRequires: libtermkey-devel BuildRequires: libuv-devel >= 1.42.0 BuildRequires: libvterm-devel >= 0.2 +# need the build with the fix for the resize buffer issue +Requires: libvterm >= 0.2-3 BuildRequires: unibilium-devel BuildRequires: libtree-sitter-devel >= 0.20.0 Suggests: (python2-neovim if python2) From a6b71fbe2d441f53bb4603727fa98ea44e85a8d0 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Sun, 26 Jun 2022 21:23:53 +0200 Subject: [PATCH 07/15] Update to version 0.7.2 --- .gitignore | 1 + neovim.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 908737a..e575aec 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,4 @@ /neovim-0.6.0.tar.gz /neovim-0.6.1.tar.gz /neovim-0.7.0.tar.gz +/neovim-0.7.2.tar.gz diff --git a/neovim.spec b/neovim.spec index 9d29193..69f1570 100644 --- a/neovim.spec +++ b/neovim.spec @@ -38,7 +38,7 @@ %endif Name: neovim -Version: 0.7.0 +Version: 0.7.2 Release: 1%{?dist} License: ASL 2.0 @@ -1796,6 +1796,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Sun Jun 26 2022 Andreas Schneider - 0.7.2-1 +- Update to version 0.7.2 + * Fri Apr 15 2022 Andreas Schneider - 0.7.0-1 - Update to version 0.7.0 diff --git a/sources b/sources index 6649da0..9a6fc6b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (neovim-0.7.0.tar.gz) = 3597c54fb925a4d607bca9ba0fdb37df90ecb816da99f52baf46cc2ec79727a55048ba1d8d22c8e7d61f0e8e35546326b1d0d15c0a91de8bf5bc529c45fb1ce0 +SHA512 (neovim-0.7.2.tar.gz) = 04d0fa5b23018531b70b53271821bf6944cde1bcec2210b99f5888e1339cd38f57feaa8e40874a3a504930e6614980947f31852185cbcd2ce106a0867896dd79 From b79f1d02075eb6dd1278d3a400fbe567a8d2a36b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 22 Jul 2022 00:22:51 +0000 Subject: [PATCH 08/15] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- neovim.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/neovim.spec b/neovim.spec index 69f1570..faad943 100644 --- a/neovim.spec +++ b/neovim.spec @@ -39,7 +39,7 @@ Name: neovim Version: 0.7.2 -Release: 1%{?dist} +Release: 2%{?dist} License: ASL 2.0 Summary: Vim-fork focused on extensibility and agility @@ -1796,6 +1796,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Fri Jul 22 2022 Fedora Release Engineering - 0.7.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Sun Jun 26 2022 Andreas Schneider - 0.7.2-1 - Update to version 0.7.2 From 5bef74fe5f43626be934a94ebfccc7a7a400215a Mon Sep 17 00:00:00 2001 From: Michel Alexandre Salim Date: Thu, 25 Aug 2022 15:30:20 -0500 Subject: [PATCH 09/15] Enforce the minimum tree-sitter version at runtime (Fixes: rhbz#2100577) Signed-off-by: Michel Alexandre Salim --- neovim.spec | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/neovim.spec b/neovim.spec index faad943..9d4fd88 100644 --- a/neovim.spec +++ b/neovim.spec @@ -22,6 +22,7 @@ %endif %global luv_min_ver 1.42.0 +%global tree_sitter_min_ver 0.20.3 %if %{with luajit} %global luajit_version 2.1 @@ -39,7 +40,7 @@ Name: neovim Version: 0.7.2 -Release: 2%{?dist} +Release: 3%{?dist} License: ASL 2.0 Summary: Vim-fork focused on extensibility and agility @@ -88,7 +89,10 @@ BuildRequires: libvterm-devel >= 0.2 # need the build with the fix for the resize buffer issue Requires: libvterm >= 0.2-3 BuildRequires: unibilium-devel -BuildRequires: libtree-sitter-devel >= 0.20.0 +BuildRequires: libtree-sitter-devel >= %{tree_sitter_min_ver} +# tree-sitter didn't do an soname bump. enforce the min version +# see https://github.com/nvim-treesitter/nvim-treesitter/pull/3055/files +Requires: libtree-sitter >= %{tree_sitter_min_ver} Suggests: (python2-neovim if python2) Suggests: (python3-neovim if python3) # XSel provides access to the system clipboard @@ -1796,6 +1800,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Thu Aug 25 2022 Michel Alexandre Salim - 0.7.2-3 +- Enforce the minimum tree-sitter version at runtime (Fixes: rhbz#2100577) + * Fri Jul 22 2022 Fedora Release Engineering - 0.7.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 284a52df3cbd468cdb621d5533dd11ea08ca8d06 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Wed, 21 Sep 2022 12:01:24 +0200 Subject: [PATCH 10/15] Build with libvterm 0.3 --- neovim-libvterm-0-2-support.patch | 94 ----------- neovim-libvterm-0-3-support.patch | 270 ++++++++++++++++++++++++++++++ neovim.spec | 11 +- 3 files changed, 277 insertions(+), 98 deletions(-) delete mode 100644 neovim-libvterm-0-2-support.patch create mode 100644 neovim-libvterm-0-3-support.patch diff --git a/neovim-libvterm-0-2-support.patch b/neovim-libvterm-0-2-support.patch deleted file mode 100644 index 569152a..0000000 --- a/neovim-libvterm-0-2-support.patch +++ /dev/null @@ -1,94 +0,0 @@ -From 7a1b90ed10e7626d061ee0ba7b0b321151c44c7d Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Tue, 8 Feb 2022 18:58:36 +0100 -Subject: [PATCH 1/2] refactor(term): use const for title and add len to - buf_set_term_title() - ---- - src/nvim/terminal.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -Index: neovim-0.6.1/src/nvim/terminal.c -=================================================================== ---- neovim-0.6.1.orig/src/nvim/terminal.c 2022-02-09 21:11:11.374493070 +0100 -+++ neovim-0.6.1/src/nvim/terminal.c 2022-02-09 21:11:11.407493071 +0100 -@@ -118,6 +118,10 @@ struct terminal { - // window height has increased) and must be deleted from the terminal buffer - int sb_pending; - -+ char *title; // VTermStringFragment buffer -+ size_t title_len; // number of rows pushed to sb_buffer -+ size_t title_size; // sb_buffer size -+ - // buf_T instance that acts as a "drawing surface" for libvterm - // we can't store a direct reference to the buffer because the - // refresh_timer_cb may be called after the buffer was freed, and there's -@@ -222,7 +226,7 @@ Terminal *terminal_open(buf_T *buf, Term - set_option_value("wrap", false, NULL, OPT_LOCAL); - set_option_value("list", false, NULL, OPT_LOCAL); - if (buf->b_ffname != NULL) { -- buf_set_term_title(buf, (char *)buf->b_ffname); -+ buf_set_term_title(buf, (char *)buf->b_ffname, strlen((char *)buf->b_ffname)); - } - RESET_BINDING(curwin); - // Reset cursor in current window. -@@ -588,6 +592,7 @@ void terminal_destroy(Terminal *term) - xfree(term->sb_buffer[i]); - } - xfree(term->sb_buffer); -+ xfree(term->title); - vterm_free(term->vt); - xfree(term); - } -@@ -810,13 +815,13 @@ static int term_movecursor(VTermPos new, - return 1; - } - --static void buf_set_term_title(buf_T *buf, char *title) -+static void buf_set_term_title(buf_T *buf, const char *title, size_t len) - FUNC_ATTR_NONNULL_ALL - { - Error err = ERROR_INIT; - dict_set_var(buf->b_vars, - STATIC_CSTR_AS_STRING("term_title"), -- STRING_OBJ(cstr_as_string(title)), -+ STRING_OBJ(((String){ .data = (char *)title, .size = len })), - false, - false, - &err); -@@ -839,7 +844,34 @@ static int term_settermprop(VTermProp pr - - case VTERM_PROP_TITLE: { - buf_T *buf = handle_get_buffer(term->buf_handle); -- buf_set_term_title(buf, val->string); -+#if VTERM_VERSION_MAJOR > 0 || (VTERM_VERSION_MAJOR == 0 && VTERM_VERSION_MINOR >= 2) -+ VTermStringFragment frag = val->string; -+ -+ if (frag.initial && frag.final) { -+ buf_set_term_title(buf, frag.str, frag.len); -+ break; -+ } -+ -+ if (frag.initial) { -+ term->title_len = 0; -+ term->title_size = MAX(frag.len, 1024); -+ term->title = xmalloc(sizeof(char *) * term->title_size); -+ } else if (term->title_len + frag.len > term->title_size) { -+ term->title_size *= 2; -+ term->title = xrealloc(term->title, sizeof(char *) * term->title_size); -+ } -+ -+ memcpy(term->title + term->title_len, frag.str, frag.len); -+ term->title_len += frag.len; -+ -+ if (frag.final) { -+ buf_set_term_title(buf, term->title, term->title_len); -+ xfree(term->title); -+ term->title = NULL; -+ } -+#else -+ buf_set_term_title(buf, val->string, strlen(val->string)); -+#endif - break; - } - diff --git a/neovim-libvterm-0-3-support.patch b/neovim-libvterm-0-3-support.patch new file mode 100644 index 0000000..5e9b902 --- /dev/null +++ b/neovim-libvterm-0-3-support.patch @@ -0,0 +1,270 @@ +From 74db632c978cc391c70d13673b468f80c452d932 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Tue, 8 Feb 2022 18:58:36 +0100 +Subject: [PATCH 1/4] refactor(term): use const for title and add len to + buf_set_term_title() + +--- + src/nvim/terminal.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c +index 90966bcfad89..125e4cb5861b 100644 +--- a/src/nvim/terminal.c ++++ b/src/nvim/terminal.c +@@ -230,7 +230,7 @@ Terminal *terminal_open(buf_T *buf, TerminalOptions opts) + set_option_value("wrap", false, NULL, OPT_LOCAL); + set_option_value("list", false, NULL, OPT_LOCAL); + if (buf->b_ffname != NULL) { +- buf_set_term_title(buf, buf->b_ffname); ++ buf_set_term_title(buf, buf->b_ffname, strlen((char *)buf->b_ffname)); + } + RESET_BINDING(curwin); + // Reset cursor in current window. +@@ -858,13 +858,13 @@ static int term_movecursor(VTermPos new, VTermPos old, int visible, void *data) + return 1; + } + +-static void buf_set_term_title(buf_T *buf, char *title) ++static void buf_set_term_title(buf_T *buf, const char *title, size_t len) + FUNC_ATTR_NONNULL_ALL + { + Error err = ERROR_INIT; + dict_set_var(buf->b_vars, + STATIC_CSTR_AS_STRING("term_title"), +- STRING_OBJ(cstr_as_string(title)), ++ STRING_OBJ(((String){ .data = (char *)title, .size = len })), + false, + false, + &err); +@@ -887,7 +887,7 @@ static int term_settermprop(VTermProp prop, VTermValue *val, void *data) + + case VTERM_PROP_TITLE: { + buf_T *buf = handle_get_buffer(term->buf_handle); +- buf_set_term_title(buf, val->string); ++ buf_set_term_title(buf, val->string, strlen(val->string)); + break; + } + + +From 2aeb8d976f0be298e23fca90463d2ff2c348ebf7 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Sat, 1 Jan 2022 07:28:55 +0100 +Subject: [PATCH 2/4] feat(term): add support for libvterm >= 0.2 + +Signed-off-by: Andreas Schneider +--- + src/nvim/terminal.c | 32 ++++++++++++++++++++++++++++++++ + 1 file changed, 32 insertions(+) + +diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c +index 125e4cb5861b..744579217bcf 100644 +--- a/src/nvim/terminal.c ++++ b/src/nvim/terminal.c +@@ -120,6 +120,10 @@ struct terminal { + // window height has increased) and must be deleted from the terminal buffer + int sb_pending; + ++ char *title; // VTermStringFragment buffer ++ size_t title_len; // number of rows pushed to sb_buffer ++ size_t title_size; // sb_buffer size ++ + // buf_T instance that acts as a "drawing surface" for libvterm + // we can't store a direct reference to the buffer because the + // refresh_timer_cb may be called after the buffer was freed, and there's +@@ -636,6 +640,7 @@ void terminal_destroy(Terminal **termpp) + xfree(term->sb_buffer[i]); + } + xfree(term->sb_buffer); ++ xfree(term->title); + vterm_free(term->vt); + xfree(term); + *termpp = NULL; // coverity[dead-store] +@@ -887,7 +892,34 @@ static int term_settermprop(VTermProp prop, VTermValue *val, void *data) + + case VTERM_PROP_TITLE: { + buf_T *buf = handle_get_buffer(term->buf_handle); ++#if VTERM_VERSION_MAJOR > 0 || (VTERM_VERSION_MAJOR == 0 && VTERM_VERSION_MINOR >= 2) ++ VTermStringFragment frag = val->string; ++ ++ if (frag.initial && frag.final) { ++ buf_set_term_title(buf, frag.str, frag.len); ++ break; ++ } ++ ++ if (frag.initial) { ++ term->title_len = 0; ++ term->title_size = MAX(frag.len, 1024); ++ term->title = xmalloc(sizeof(char *) * term->title_size); ++ } else if (term->title_len + frag.len > term->title_size) { ++ term->title_size *= 2; ++ term->title = xrealloc(term->title, sizeof(char *) * term->title_size); ++ } ++ ++ memcpy(term->title + term->title_len, frag.str, frag.len); ++ term->title_len += frag.len; ++ ++ if (frag.final) { ++ buf_set_term_title(buf, term->title, term->title_len); ++ xfree(term->title); ++ term->title = NULL; ++ } ++#else + buf_set_term_title(buf, val->string, strlen(val->string)); ++#endif + break; + } + + +From 9ecaa35f5541029f698cf93e4832b4b179074ab5 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Tue, 8 Feb 2022 09:09:30 +0100 +Subject: [PATCH 3/4] build(deps): use libvterm 0.3-rc1 + +--- + cmake.deps/CMakeLists.txt | 4 +- + cmake.deps/cmake/BuildLibvterm.cmake | 6 --- + .../libvterm-Remove-VLAs-for-MSVC.patch | 50 ------------------- + 3 files changed, 2 insertions(+), 58 deletions(-) + delete mode 100644 cmake.deps/patches/libvterm-Remove-VLAs-for-MSVC.patch + +diff --git a/cmake.deps/CMakeLists.txt b/cmake.deps/CMakeLists.txt +index 2c19aa6e6b13..578668e58e3f 100644 +--- a/cmake.deps/CMakeLists.txt ++++ b/cmake.deps/CMakeLists.txt +@@ -177,8 +177,8 @@ set(UNIBILIUM_SHA256 29815283c654277ef77a3adcc8840db79ddbb20a0f0b0c8f648bd8cd49a + set(LIBTERMKEY_URL https://www.leonerd.org.uk/code/libtermkey/libtermkey-0.22.tar.gz) + set(LIBTERMKEY_SHA256 6945bd3c4aaa83da83d80a045c5563da4edd7d0374c62c0d35aec09eb3014600) + +-set(LIBVTERM_URL https://www.leonerd.org.uk/code/libvterm/libvterm-0.1.4.tar.gz) +-set(LIBVTERM_SHA256 bc70349e95559c667672fc8c55b9527d9db9ada0fb80a3beda533418d782d3dd) ++set(LIBVTERM_URL https://www.leonerd.org.uk/code/libvterm/libvterm-0.3-RC1.tar.gz) ++set(LIBVTERM_SHA256 441d1c372b84a0df12525100ab06c0366260fb4f6252abd1665ee4fa571b5134) + + set(LUV_VERSION 1.44.2-0) + set(LUV_URL https://github.com/luvit/luv/archive/1.44.2-0.tar.gz) +diff --git a/cmake.deps/cmake/BuildLibvterm.cmake b/cmake.deps/cmake/BuildLibvterm.cmake +index a905733abc67..9c6a6c2888de 100644 +--- a/cmake.deps/cmake/BuildLibvterm.cmake ++++ b/cmake.deps/cmake/BuildLibvterm.cmake +@@ -32,12 +32,6 @@ function(BuildLibvterm) + endfunction() + + if(WIN32) +- if(MSVC) +- set(LIBVTERM_PATCH_COMMAND +- ${GIT_EXECUTABLE} -C ${DEPS_BUILD_DIR}/src/libvterm init +- COMMAND ${GIT_EXECUTABLE} -C ${DEPS_BUILD_DIR}/src/libvterm apply --ignore-whitespace +- ${CMAKE_CURRENT_SOURCE_DIR}/patches/libvterm-Remove-VLAs-for-MSVC.patch) +- endif() + set(LIBVTERM_CONFIGURE_COMMAND ${CMAKE_COMMAND} -E copy + ${CMAKE_CURRENT_SOURCE_DIR}/cmake/LibvtermCMakeLists.txt + ${DEPS_BUILD_DIR}/src/libvterm/CMakeLists.txt +diff --git a/cmake.deps/patches/libvterm-Remove-VLAs-for-MSVC.patch b/cmake.deps/patches/libvterm-Remove-VLAs-for-MSVC.patch +deleted file mode 100644 +index e999c0fa9b17..000000000000 +--- a/cmake.deps/patches/libvterm-Remove-VLAs-for-MSVC.patch ++++ /dev/null +@@ -1,50 +0,0 @@ +-From eb386b1d82f7d07363c9133b7aa06902ccd555fe Mon Sep 17 00:00:00 2001 +-Date: Tue, 27 Feb 2018 17:54:20 -0600 +-Subject: [PATCH] Remove VLAs for MSVC +- +-VLAs are replaced with calls to _alloca() because MSVC does not support them. +---- +- src/state.c | 7 ++++--- +- 1 file changed, 4 insertions(+), 3 deletions(-) +- +-diff --git a/src/state.c b/src/state.c +-index 84299df..f9aabb3 100644 +---- a/src/state.c +-+++ b/src/state.c +-@@ -1,5 +1,6 @@ +- #include "vterm_internal.h" +- +-+#include +- #include +- #include +- +-@@ -236,7 +237,7 @@ static int on_text(const char bytes[], size_t len, void *user) +- VTermPos oldpos = state->pos; +- +- // We'll have at most len codepoints +-- uint32_t codepoints[len]; +-+ uint32_t* codepoints = _alloca(len * sizeof(uint32_t)); +- int npoints = 0; +- size_t eaten = 0; +- +-@@ -313,7 +314,7 @@ static int on_text(const char bytes[], size_t len, void *user) +- +- int width = 0; +- +-- uint32_t chars[glyph_ends - glyph_starts + 1]; +-+ uint32_t* chars = _alloca((glyph_ends - glyph_starts + 1) * sizeof(uint32_t)); +- +- for( ; i < glyph_ends; i++) { +- chars[i - glyph_starts] = codepoints[i]; +-@@ -512,7 +513,7 @@ static int settermprop_int(VTermState *state, VTermProp prop, int v) +- +- static int settermprop_string(VTermState *state, VTermProp prop, const char *str, size_t len) +- { +-- char strvalue[len+1]; +-+ char* strvalue = _alloca(len+1); +- strncpy(strvalue, str, len); +- strvalue[len] = 0; +- +--- +-2.16.1.windows.4 +- + +From b76e33b5989dcdbc48cdb6f099c9c0c917efa610 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Wed, 9 Feb 2022 08:46:37 +0100 +Subject: [PATCH 4/4] fix(terminal): adopt altscreen test for libvterm 0.2 + changes + +Due to a rewrite of the resize handling logic in libvterm, the behavior +changed. It's actually fixing a bug. + +https://github.com/cryptomilk/libvterm/commit/16b857457575c3fd6ffdb0866d7a190b69c28312 +--- + test/functional/terminal/altscreen_spec.lua | 10 +++------- + 1 file changed, 3 insertions(+), 7 deletions(-) + +diff --git a/test/functional/terminal/altscreen_spec.lua b/test/functional/terminal/altscreen_spec.lua +index 155a156d1596..e4e1aa5fa27f 100644 +--- a/test/functional/terminal/altscreen_spec.lua ++++ b/test/functional/terminal/altscreen_spec.lua +@@ -126,13 +126,13 @@ describe(':terminal altscreen', function() + wait_removal() + feed('4k') + screen:expect([[ +- ^line3 | ++ ^ | + | + | + rows: 4, cols: 50 | + | + ]]) +- eq(8, curbuf('line_count')) ++ eq(9, curbuf('line_count')) + end) + + describe('and after exit', function() +@@ -142,15 +142,11 @@ describe(':terminal altscreen', function() + end) + + it('restore buffer state', function() +- -- FIXME(tarruda): Note that the last line was lost after restoring the +- -- screen. This is a libvterm bug: When the main screen is restored it +- -- seems to "cut" lines that would have been left below the new visible +- -- screen. + screen:expect([[ +- line4 | + line5 | + line6 | + line7 | ++ line8 | + {3:-- TERMINAL --} | + ]]) + end) diff --git a/neovim.spec b/neovim.spec index 9d4fd88..35ce4ae 100644 --- a/neovim.spec +++ b/neovim.spec @@ -40,7 +40,7 @@ Name: neovim Version: 0.7.2 -Release: 3%{?dist} +Release: 4%{?dist} License: ASL 2.0 Summary: Vim-fork focused on extensibility and agility @@ -50,7 +50,7 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template -Patch0: neovim-libvterm-0-2-support.patch +Patch0: https://github.com/neovim/neovim/pull/20222.patch#neovim-libvterm-0-3-support.patch Patch1000: neovim-lua-bit32.patch Patch1001: neovim-cmake-lua-5.1.patch @@ -85,9 +85,9 @@ BuildRequires: jemalloc-devel BuildRequires: msgpack-devel >= 3.1.0 BuildRequires: libtermkey-devel BuildRequires: libuv-devel >= 1.42.0 -BuildRequires: libvterm-devel >= 0.2 +BuildRequires: libvterm-devel >= 0.3 # need the build with the fix for the resize buffer issue -Requires: libvterm >= 0.2-3 +Requires: libvterm >= 0.3 BuildRequires: unibilium-devel BuildRequires: libtree-sitter-devel >= %{tree_sitter_min_ver} # tree-sitter didn't do an soname bump. enforce the min version @@ -1800,6 +1800,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Wed Sep 21 2022 Andreas Schneider - 0.7.2-4 +- Build with libvterm 0.3 + * Thu Aug 25 2022 Michel Alexandre Salim - 0.7.2-3 - Enforce the minimum tree-sitter version at runtime (Fixes: rhbz#2100577) From 72cdaa0642f701837ff48f7e25aecee66af95824 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Wed, 21 Sep 2022 13:03:27 +0200 Subject: [PATCH 11/15] Fix typo --- neovim.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/neovim.spec b/neovim.spec index 35ce4ae..be9d03f 100644 --- a/neovim.spec +++ b/neovim.spec @@ -50,7 +50,7 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template -Patch0: https://github.com/neovim/neovim/pull/20222.patch#neovim-libvterm-0-3-support.patch +Patch0: https://github.com/neovim/neovim/pull/20222.patch#/neovim-libvterm-0-3-support.patch Patch1000: neovim-lua-bit32.patch Patch1001: neovim-cmake-lua-5.1.patch From add1aacd4f4508d5eb04ce07591820e7071f6cea Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Wed, 21 Sep 2022 13:22:38 +0200 Subject: [PATCH 12/15] Fix libvterm 0.3 patch --- neovim-libvterm-0-3-support.patch | 223 +++++++----------------------- neovim.spec | 3 +- 2 files changed, 50 insertions(+), 176 deletions(-) diff --git a/neovim-libvterm-0-3-support.patch b/neovim-libvterm-0-3-support.patch index 5e9b902..1c7b74c 100644 --- a/neovim-libvterm-0-3-support.patch +++ b/neovim-libvterm-0-3-support.patch @@ -1,27 +1,45 @@ From 74db632c978cc391c70d13673b468f80c452d932 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Tue, 8 Feb 2022 18:58:36 +0100 -Subject: [PATCH 1/4] refactor(term): use const for title and add len to - buf_set_term_title() +Subject: refactor(term): Support libvterm 0.3 --- src/nvim/terminal.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) -diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c -index 90966bcfad89..125e4cb5861b 100644 ---- a/src/nvim/terminal.c -+++ b/src/nvim/terminal.c -@@ -230,7 +230,7 @@ Terminal *terminal_open(buf_T *buf, TerminalOptions opts) +Index: neovim-0.7.2/src/nvim/terminal.c +=================================================================== +--- neovim-0.7.2.orig/src/nvim/terminal.c 2022-06-26 17:08:22.000000000 +0200 ++++ neovim-0.7.2/src/nvim/terminal.c 2022-09-21 13:22:20.456525182 +0200 +@@ -118,6 +118,10 @@ struct terminal { + // window height has increased) and must be deleted from the terminal buffer + int sb_pending; + ++ char *title; // VTermStringFragment buffer ++ size_t title_len; // number of rows pushed to sb_buffer ++ size_t title_size; // sb_buffer size ++ + // buf_T instance that acts as a "drawing surface" for libvterm + // we can't store a direct reference to the buffer because the + // refresh_timer_cb may be called after the buffer was freed, and there's +@@ -228,7 +232,7 @@ Terminal *terminal_open(buf_T *buf, Term set_option_value("wrap", false, NULL, OPT_LOCAL); set_option_value("list", false, NULL, OPT_LOCAL); if (buf->b_ffname != NULL) { -- buf_set_term_title(buf, buf->b_ffname); +- buf_set_term_title(buf, (char *)buf->b_ffname); + buf_set_term_title(buf, buf->b_ffname, strlen((char *)buf->b_ffname)); } RESET_BINDING(curwin); // Reset cursor in current window. -@@ -858,13 +858,13 @@ static int term_movecursor(VTermPos new, VTermPos old, int visible, void *data) +@@ -605,6 +609,7 @@ void terminal_destroy(Terminal *term) + xfree(term->sb_buffer[i]); + } + xfree(term->sb_buffer); ++ xfree(term->title); + vterm_free(term->vt); + xfree(term); + } +@@ -827,13 +832,13 @@ static int term_movecursor(VTermPos new, return 1; } @@ -37,53 +55,11 @@ index 90966bcfad89..125e4cb5861b 100644 false, false, &err); -@@ -887,7 +887,7 @@ static int term_settermprop(VTermProp prop, VTermValue *val, void *data) +@@ -856,7 +861,34 @@ static int term_settermprop(VTermProp pr case VTERM_PROP_TITLE: { buf_T *buf = handle_get_buffer(term->buf_handle); - buf_set_term_title(buf, val->string); -+ buf_set_term_title(buf, val->string, strlen(val->string)); - break; - } - - -From 2aeb8d976f0be298e23fca90463d2ff2c348ebf7 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Sat, 1 Jan 2022 07:28:55 +0100 -Subject: [PATCH 2/4] feat(term): add support for libvterm >= 0.2 - -Signed-off-by: Andreas Schneider ---- - src/nvim/terminal.c | 32 ++++++++++++++++++++++++++++++++ - 1 file changed, 32 insertions(+) - -diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c -index 125e4cb5861b..744579217bcf 100644 ---- a/src/nvim/terminal.c -+++ b/src/nvim/terminal.c -@@ -120,6 +120,10 @@ struct terminal { - // window height has increased) and must be deleted from the terminal buffer - int sb_pending; - -+ char *title; // VTermStringFragment buffer -+ size_t title_len; // number of rows pushed to sb_buffer -+ size_t title_size; // sb_buffer size -+ - // buf_T instance that acts as a "drawing surface" for libvterm - // we can't store a direct reference to the buffer because the - // refresh_timer_cb may be called after the buffer was freed, and there's -@@ -636,6 +640,7 @@ void terminal_destroy(Terminal **termpp) - xfree(term->sb_buffer[i]); - } - xfree(term->sb_buffer); -+ xfree(term->title); - vterm_free(term->vt); - xfree(term); - *termpp = NULL; // coverity[dead-store] -@@ -887,7 +892,34 @@ static int term_settermprop(VTermProp prop, VTermValue *val, void *data) - - case VTERM_PROP_TITLE: { - buf_T *buf = handle_get_buffer(term->buf_handle); +#if VTERM_VERSION_MAJOR > 0 || (VTERM_VERSION_MAJOR == 0 && VTERM_VERSION_MINOR >= 2) + VTermStringFragment frag = val->string; + @@ -110,132 +86,16 @@ index 125e4cb5861b..744579217bcf 100644 + term->title = NULL; + } +#else - buf_set_term_title(buf, val->string, strlen(val->string)); ++ buf_set_term_title(buf, val->string, strlen(val->string)); +#endif break; } - -From 9ecaa35f5541029f698cf93e4832b4b179074ab5 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Tue, 8 Feb 2022 09:09:30 +0100 -Subject: [PATCH 3/4] build(deps): use libvterm 0.3-rc1 - ---- - cmake.deps/CMakeLists.txt | 4 +- - cmake.deps/cmake/BuildLibvterm.cmake | 6 --- - .../libvterm-Remove-VLAs-for-MSVC.patch | 50 ------------------- - 3 files changed, 2 insertions(+), 58 deletions(-) - delete mode 100644 cmake.deps/patches/libvterm-Remove-VLAs-for-MSVC.patch - -diff --git a/cmake.deps/CMakeLists.txt b/cmake.deps/CMakeLists.txt -index 2c19aa6e6b13..578668e58e3f 100644 ---- a/cmake.deps/CMakeLists.txt -+++ b/cmake.deps/CMakeLists.txt -@@ -177,8 +177,8 @@ set(UNIBILIUM_SHA256 29815283c654277ef77a3adcc8840db79ddbb20a0f0b0c8f648bd8cd49a - set(LIBTERMKEY_URL https://www.leonerd.org.uk/code/libtermkey/libtermkey-0.22.tar.gz) - set(LIBTERMKEY_SHA256 6945bd3c4aaa83da83d80a045c5563da4edd7d0374c62c0d35aec09eb3014600) - --set(LIBVTERM_URL https://www.leonerd.org.uk/code/libvterm/libvterm-0.1.4.tar.gz) --set(LIBVTERM_SHA256 bc70349e95559c667672fc8c55b9527d9db9ada0fb80a3beda533418d782d3dd) -+set(LIBVTERM_URL https://www.leonerd.org.uk/code/libvterm/libvterm-0.3-RC1.tar.gz) -+set(LIBVTERM_SHA256 441d1c372b84a0df12525100ab06c0366260fb4f6252abd1665ee4fa571b5134) - - set(LUV_VERSION 1.44.2-0) - set(LUV_URL https://github.com/luvit/luv/archive/1.44.2-0.tar.gz) -diff --git a/cmake.deps/cmake/BuildLibvterm.cmake b/cmake.deps/cmake/BuildLibvterm.cmake -index a905733abc67..9c6a6c2888de 100644 ---- a/cmake.deps/cmake/BuildLibvterm.cmake -+++ b/cmake.deps/cmake/BuildLibvterm.cmake -@@ -32,12 +32,6 @@ function(BuildLibvterm) - endfunction() - - if(WIN32) -- if(MSVC) -- set(LIBVTERM_PATCH_COMMAND -- ${GIT_EXECUTABLE} -C ${DEPS_BUILD_DIR}/src/libvterm init -- COMMAND ${GIT_EXECUTABLE} -C ${DEPS_BUILD_DIR}/src/libvterm apply --ignore-whitespace -- ${CMAKE_CURRENT_SOURCE_DIR}/patches/libvterm-Remove-VLAs-for-MSVC.patch) -- endif() - set(LIBVTERM_CONFIGURE_COMMAND ${CMAKE_COMMAND} -E copy - ${CMAKE_CURRENT_SOURCE_DIR}/cmake/LibvtermCMakeLists.txt - ${DEPS_BUILD_DIR}/src/libvterm/CMakeLists.txt -diff --git a/cmake.deps/patches/libvterm-Remove-VLAs-for-MSVC.patch b/cmake.deps/patches/libvterm-Remove-VLAs-for-MSVC.patch -deleted file mode 100644 -index e999c0fa9b17..000000000000 ---- a/cmake.deps/patches/libvterm-Remove-VLAs-for-MSVC.patch -+++ /dev/null -@@ -1,50 +0,0 @@ --From eb386b1d82f7d07363c9133b7aa06902ccd555fe Mon Sep 17 00:00:00 2001 --Date: Tue, 27 Feb 2018 17:54:20 -0600 --Subject: [PATCH] Remove VLAs for MSVC -- --VLAs are replaced with calls to _alloca() because MSVC does not support them. ----- -- src/state.c | 7 ++++--- -- 1 file changed, 4 insertions(+), 3 deletions(-) -- --diff --git a/src/state.c b/src/state.c --index 84299df..f9aabb3 100644 ----- a/src/state.c --+++ b/src/state.c --@@ -1,5 +1,6 @@ -- #include "vterm_internal.h" -- --+#include -- #include -- #include -- --@@ -236,7 +237,7 @@ static int on_text(const char bytes[], size_t len, void *user) -- VTermPos oldpos = state->pos; -- -- // We'll have at most len codepoints --- uint32_t codepoints[len]; --+ uint32_t* codepoints = _alloca(len * sizeof(uint32_t)); -- int npoints = 0; -- size_t eaten = 0; -- --@@ -313,7 +314,7 @@ static int on_text(const char bytes[], size_t len, void *user) -- -- int width = 0; -- --- uint32_t chars[glyph_ends - glyph_starts + 1]; --+ uint32_t* chars = _alloca((glyph_ends - glyph_starts + 1) * sizeof(uint32_t)); -- -- for( ; i < glyph_ends; i++) { -- chars[i - glyph_starts] = codepoints[i]; --@@ -512,7 +513,7 @@ static int settermprop_int(VTermState *state, VTermProp prop, int v) -- -- static int settermprop_string(VTermState *state, VTermProp prop, const char *str, size_t len) -- { --- char strvalue[len+1]; --+ char* strvalue = _alloca(len+1); -- strncpy(strvalue, str, len); -- strvalue[len] = 0; -- ---- --2.16.1.windows.4 -- - -From b76e33b5989dcdbc48cdb6f099c9c0c917efa610 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Wed, 9 Feb 2022 08:46:37 +0100 -Subject: [PATCH 4/4] fix(terminal): adopt altscreen test for libvterm 0.2 - changes - -Due to a rewrite of the resize handling logic in libvterm, the behavior -changed. It's actually fixing a bug. - -https://github.com/cryptomilk/libvterm/commit/16b857457575c3fd6ffdb0866d7a190b69c28312 ---- - test/functional/terminal/altscreen_spec.lua | 10 +++------- - 1 file changed, 3 insertions(+), 7 deletions(-) - -diff --git a/test/functional/terminal/altscreen_spec.lua b/test/functional/terminal/altscreen_spec.lua -index 155a156d1596..e4e1aa5fa27f 100644 ---- a/test/functional/terminal/altscreen_spec.lua -+++ b/test/functional/terminal/altscreen_spec.lua -@@ -126,13 +126,13 @@ describe(':terminal altscreen', function() +Index: neovim-0.7.2/test/functional/terminal/altscreen_spec.lua +=================================================================== +--- neovim-0.7.2.orig/test/functional/terminal/altscreen_spec.lua 2022-06-26 17:08:22.000000000 +0200 ++++ neovim-0.7.2/test/functional/terminal/altscreen_spec.lua 2022-09-21 13:22:20.457525181 +0200 +@@ -126,13 +126,13 @@ describe(':terminal altscreen', function wait_removal() feed('4k') screen:expect([[ @@ -251,7 +111,7 @@ index 155a156d1596..e4e1aa5fa27f 100644 end) describe('and after exit', function() -@@ -142,15 +142,11 @@ describe(':terminal altscreen', function() +@@ -142,15 +142,11 @@ describe(':terminal altscreen', function end) it('restore buffer state', function() @@ -268,3 +128,16 @@ index 155a156d1596..e4e1aa5fa27f 100644 {3:-- TERMINAL --} | ]]) end) +Index: neovim-0.7.2/CMakeLists.txt +=================================================================== +--- neovim-0.7.2.orig/CMakeLists.txt 2022-06-26 17:08:22.000000000 +0200 ++++ neovim-0.7.2/CMakeLists.txt 2022-09-21 13:22:24.923523896 +0200 +@@ -501,7 +501,7 @@ if(FEAT_TUI) + include_directories(SYSTEM ${LIBTERMKEY_INCLUDE_DIRS}) + endif() + +-find_package(LIBVTERM 0.1 REQUIRED) ++find_package(LIBVTERM 0.3 REQUIRED) + include_directories(SYSTEM ${LIBVTERM_INCLUDE_DIRS}) + + if(WIN32) diff --git a/neovim.spec b/neovim.spec index be9d03f..0139159 100644 --- a/neovim.spec +++ b/neovim.spec @@ -50,7 +50,8 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template -Patch0: https://github.com/neovim/neovim/pull/20222.patch#/neovim-libvterm-0-3-support.patch +# Based on https://github.com/neovim/neovim/pull/20222.patch +Patch0: neovim-libvterm-0-3-support.patch Patch1000: neovim-lua-bit32.patch Patch1001: neovim-cmake-lua-5.1.patch From 29b5f51f267f5077a74b408c7cc3b8de46430d78 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 30 Sep 2022 22:24:08 +0200 Subject: [PATCH 13/15] Update to version 0.8.0 --- .gitignore | 1 + neovim-libvterm-0-3-support.patch | 143 ------------------------------ neovim.spec | 138 ++++++++++++++++++++++------ sources | 2 +- 4 files changed, 115 insertions(+), 169 deletions(-) delete mode 100644 neovim-libvterm-0-3-support.patch diff --git a/.gitignore b/.gitignore index e575aec..7e2620b 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,4 @@ /neovim-0.6.1.tar.gz /neovim-0.7.0.tar.gz /neovim-0.7.2.tar.gz +/neovim-0.8.0.tar.gz diff --git a/neovim-libvterm-0-3-support.patch b/neovim-libvterm-0-3-support.patch deleted file mode 100644 index 1c7b74c..0000000 --- a/neovim-libvterm-0-3-support.patch +++ /dev/null @@ -1,143 +0,0 @@ -From 74db632c978cc391c70d13673b468f80c452d932 Mon Sep 17 00:00:00 2001 -From: Andreas Schneider -Date: Tue, 8 Feb 2022 18:58:36 +0100 -Subject: refactor(term): Support libvterm 0.3 - ---- - src/nvim/terminal.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -Index: neovim-0.7.2/src/nvim/terminal.c -=================================================================== ---- neovim-0.7.2.orig/src/nvim/terminal.c 2022-06-26 17:08:22.000000000 +0200 -+++ neovim-0.7.2/src/nvim/terminal.c 2022-09-21 13:22:20.456525182 +0200 -@@ -118,6 +118,10 @@ struct terminal { - // window height has increased) and must be deleted from the terminal buffer - int sb_pending; - -+ char *title; // VTermStringFragment buffer -+ size_t title_len; // number of rows pushed to sb_buffer -+ size_t title_size; // sb_buffer size -+ - // buf_T instance that acts as a "drawing surface" for libvterm - // we can't store a direct reference to the buffer because the - // refresh_timer_cb may be called after the buffer was freed, and there's -@@ -228,7 +232,7 @@ Terminal *terminal_open(buf_T *buf, Term - set_option_value("wrap", false, NULL, OPT_LOCAL); - set_option_value("list", false, NULL, OPT_LOCAL); - if (buf->b_ffname != NULL) { -- buf_set_term_title(buf, (char *)buf->b_ffname); -+ buf_set_term_title(buf, buf->b_ffname, strlen((char *)buf->b_ffname)); - } - RESET_BINDING(curwin); - // Reset cursor in current window. -@@ -605,6 +609,7 @@ void terminal_destroy(Terminal *term) - xfree(term->sb_buffer[i]); - } - xfree(term->sb_buffer); -+ xfree(term->title); - vterm_free(term->vt); - xfree(term); - } -@@ -827,13 +832,13 @@ static int term_movecursor(VTermPos new, - return 1; - } - --static void buf_set_term_title(buf_T *buf, char *title) -+static void buf_set_term_title(buf_T *buf, const char *title, size_t len) - FUNC_ATTR_NONNULL_ALL - { - Error err = ERROR_INIT; - dict_set_var(buf->b_vars, - STATIC_CSTR_AS_STRING("term_title"), -- STRING_OBJ(cstr_as_string(title)), -+ STRING_OBJ(((String){ .data = (char *)title, .size = len })), - false, - false, - &err); -@@ -856,7 +861,34 @@ static int term_settermprop(VTermProp pr - - case VTERM_PROP_TITLE: { - buf_T *buf = handle_get_buffer(term->buf_handle); -- buf_set_term_title(buf, val->string); -+#if VTERM_VERSION_MAJOR > 0 || (VTERM_VERSION_MAJOR == 0 && VTERM_VERSION_MINOR >= 2) -+ VTermStringFragment frag = val->string; -+ -+ if (frag.initial && frag.final) { -+ buf_set_term_title(buf, frag.str, frag.len); -+ break; -+ } -+ -+ if (frag.initial) { -+ term->title_len = 0; -+ term->title_size = MAX(frag.len, 1024); -+ term->title = xmalloc(sizeof(char *) * term->title_size); -+ } else if (term->title_len + frag.len > term->title_size) { -+ term->title_size *= 2; -+ term->title = xrealloc(term->title, sizeof(char *) * term->title_size); -+ } -+ -+ memcpy(term->title + term->title_len, frag.str, frag.len); -+ term->title_len += frag.len; -+ -+ if (frag.final) { -+ buf_set_term_title(buf, term->title, term->title_len); -+ xfree(term->title); -+ term->title = NULL; -+ } -+#else -+ buf_set_term_title(buf, val->string, strlen(val->string)); -+#endif - break; - } - -Index: neovim-0.7.2/test/functional/terminal/altscreen_spec.lua -=================================================================== ---- neovim-0.7.2.orig/test/functional/terminal/altscreen_spec.lua 2022-06-26 17:08:22.000000000 +0200 -+++ neovim-0.7.2/test/functional/terminal/altscreen_spec.lua 2022-09-21 13:22:20.457525181 +0200 -@@ -126,13 +126,13 @@ describe(':terminal altscreen', function - wait_removal() - feed('4k') - screen:expect([[ -- ^line3 | -+ ^ | - | - | - rows: 4, cols: 50 | - | - ]]) -- eq(8, curbuf('line_count')) -+ eq(9, curbuf('line_count')) - end) - - describe('and after exit', function() -@@ -142,15 +142,11 @@ describe(':terminal altscreen', function - end) - - it('restore buffer state', function() -- -- FIXME(tarruda): Note that the last line was lost after restoring the -- -- screen. This is a libvterm bug: When the main screen is restored it -- -- seems to "cut" lines that would have been left below the new visible -- -- screen. - screen:expect([[ -- line4 | - line5 | - line6 | - line7 | -+ line8 | - {3:-- TERMINAL --} | - ]]) - end) -Index: neovim-0.7.2/CMakeLists.txt -=================================================================== ---- neovim-0.7.2.orig/CMakeLists.txt 2022-06-26 17:08:22.000000000 +0200 -+++ neovim-0.7.2/CMakeLists.txt 2022-09-21 13:22:24.923523896 +0200 -@@ -501,7 +501,7 @@ if(FEAT_TUI) - include_directories(SYSTEM ${LIBTERMKEY_INCLUDE_DIRS}) - endif() - --find_package(LIBVTERM 0.1 REQUIRED) -+find_package(LIBVTERM 0.3 REQUIRED) - include_directories(SYSTEM ${LIBVTERM_INCLUDE_DIRS}) - - if(WIN32) diff --git a/neovim.spec b/neovim.spec index 0139159..0ab4f80 100644 --- a/neovim.spec +++ b/neovim.spec @@ -39,8 +39,8 @@ %endif Name: neovim -Version: 0.7.2 -Release: 4%{?dist} +Version: 0.8.0 +Release: 0%{?dist} License: ASL 2.0 Summary: Vim-fork focused on extensibility and agility @@ -50,9 +50,6 @@ Source0: https://github.com/neovim/neovim/archive/v%{version}/%{name}-%{v Source1: sysinit.vim Source2: spec-template -# Based on https://github.com/neovim/neovim/pull/20222.patch -Patch0: neovim-libvterm-0-3-support.patch - Patch1000: neovim-lua-bit32.patch Patch1001: neovim-cmake-lua-5.1.patch @@ -112,8 +109,6 @@ parts of Vim, without compromise, and more. %prep %setup -q -%patch0 -p1 - %if %{without luajit} %patch1000 -p1 %patch1001 -p1 @@ -185,6 +180,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/autoload/RstFold.vim %{_datadir}/nvim/runtime/autoload/ada.vim %{_datadir}/nvim/runtime/autoload/adacomplete.vim +%{_datadir}/nvim/runtime/autoload/bitbake.vim %{_datadir}/nvim/runtime/autoload/ccomplete.vim %{_datadir}/nvim/runtime/autoload/clojurecomplete.vim %{_datadir}/nvim/runtime/autoload/context.vim @@ -200,7 +196,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/autoload/health/provider.vim %{_datadir}/nvim/runtime/autoload/htmlcomplete.vim %{_datadir}/nvim/runtime/autoload/javascriptcomplete.vim -%{_datadir}/nvim/runtime/autoload/man.vim %{_datadir}/nvim/runtime/autoload/msgpack.vim %{_datadir}/nvim/runtime/autoload/netrw.vim %{_datadir}/nvim/runtime/autoload/netrwFileHandlers.vim @@ -209,6 +204,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/autoload/paste.vim %{_datadir}/nvim/runtime/autoload/phpcomplete.vim %{_datadir}/nvim/runtime/autoload/provider.vim +%{_datadir}/nvim/runtime/autoload/python.vim %{_datadir}/nvim/runtime/autoload/python3complete.vim %{_datadir}/nvim/runtime/autoload/pythoncomplete.vim %{_datadir}/nvim/runtime/autoload/rubycomplete.vim @@ -265,12 +261,15 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/colors/desert.vim %{_datadir}/nvim/runtime/colors/elflord.vim %{_datadir}/nvim/runtime/colors/evening.vim +%{_datadir}/nvim/runtime/colors/habamax.vim %{_datadir}/nvim/runtime/colors/industry.vim %{_datadir}/nvim/runtime/colors/koehler.vim +%{_datadir}/nvim/runtime/colors/lunaperche.vim %{_datadir}/nvim/runtime/colors/morning.vim %{_datadir}/nvim/runtime/colors/murphy.vim %{_datadir}/nvim/runtime/colors/pablo.vim %{_datadir}/nvim/runtime/colors/peachpuff.vim +%{_datadir}/nvim/runtime/colors/quiet.vim %{_datadir}/nvim/runtime/colors/ron.vim %{_datadir}/nvim/runtime/colors/shine.vim %{_datadir}/nvim/runtime/colors/slate.vim @@ -316,8 +315,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/compiler/gnat.vim %{_datadir}/nvim/runtime/compiler/go.vim %{_datadir}/nvim/runtime/compiler/haml.vim +%{_datadir}/nvim/runtime/compiler/hare.vim %{_datadir}/nvim/runtime/compiler/hp_acc.vim %{_datadir}/nvim/runtime/compiler/icc.vim +%{_datadir}/nvim/runtime/compiler/icon.vim %{_datadir}/nvim/runtime/compiler/ifort.vim %{_datadir}/nvim/runtime/compiler/intel.vim %{_datadir}/nvim/runtime/compiler/irix5_c.vim @@ -340,10 +341,16 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/compiler/onsgmls.vim %{_datadir}/nvim/runtime/compiler/pbx.vim %{_datadir}/nvim/runtime/compiler/perl.vim +%{_datadir}/nvim/runtime/compiler/perlcritic.vim %{_datadir}/nvim/runtime/compiler/php.vim +%{_datadir}/nvim/runtime/compiler/podchecker.vim %{_datadir}/nvim/runtime/compiler/powershell.vim %{_datadir}/nvim/runtime/compiler/pylint.vim %{_datadir}/nvim/runtime/compiler/pyunit.vim +%{_datadir}/nvim/runtime/compiler/raco.vim +%{_datadir}/nvim/runtime/compiler/racomake.vim +%{_datadir}/nvim/runtime/compiler/racosetup.vim +%{_datadir}/nvim/runtime/compiler/racotest.vim %{_datadir}/nvim/runtime/compiler/rake.vim %{_datadir}/nvim/runtime/compiler/rhino.vim %{_datadir}/nvim/runtime/compiler/rspec.vim @@ -415,6 +422,8 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/doc/lsp-extension.txt %{_datadir}/nvim/runtime/doc/lsp.txt %{_datadir}/nvim/runtime/doc/lua.txt +%{_datadir}/nvim/runtime/doc/luaref.txt +%{_datadir}/nvim/runtime/doc/luvref.txt %{_datadir}/nvim/runtime/doc/makehtml.awk %{_datadir}/nvim/runtime/doc/maketags.awk %{_datadir}/nvim/runtime/doc/map.txt @@ -460,6 +469,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/doc/uganda.txt %{_datadir}/nvim/runtime/doc/ui.txt %{_datadir}/nvim/runtime/doc/undo.txt +%{_datadir}/nvim/runtime/doc/userfunc.txt %{_datadir}/nvim/runtime/doc/usr_01.txt %{_datadir}/nvim/runtime/doc/usr_02.txt %{_datadir}/nvim/runtime/doc/usr_03.txt @@ -516,6 +526,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/bash.vim %{_datadir}/nvim/runtime/ftplugin/basic.vim %{_datadir}/nvim/runtime/ftplugin/bdf.vim +%{_datadir}/nvim/runtime/ftplugin/bitbake.vim %{_datadir}/nvim/runtime/ftplugin/bst.vim %{_datadir}/nvim/runtime/ftplugin/btm.vim %{_datadir}/nvim/runtime/ftplugin/bzl.vim @@ -525,6 +536,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/cfg.vim %{_datadir}/nvim/runtime/ftplugin/ch.vim %{_datadir}/nvim/runtime/ftplugin/changelog.vim +%{_datadir}/nvim/runtime/ftplugin/chatito.vim %{_datadir}/nvim/runtime/ftplugin/checkhealth.vim %{_datadir}/nvim/runtime/ftplugin/chicken.vim %{_datadir}/nvim/runtime/ftplugin/clojure.vim @@ -532,9 +544,11 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/cobol.vim %{_datadir}/nvim/runtime/ftplugin/conf.vim %{_datadir}/nvim/runtime/ftplugin/config.vim +%{_datadir}/nvim/runtime/ftplugin/confini.vim %{_datadir}/nvim/runtime/ftplugin/context.vim %{_datadir}/nvim/runtime/ftplugin/cpp.vim %{_datadir}/nvim/runtime/ftplugin/crm.vim +%{_datadir}/nvim/runtime/ftplugin/crontab.vim %{_datadir}/nvim/runtime/ftplugin/cs.vim %{_datadir}/nvim/runtime/ftplugin/csc.vim %{_datadir}/nvim/runtime/ftplugin/csh.vim @@ -544,6 +558,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/debchangelog.vim %{_datadir}/nvim/runtime/ftplugin/debcontrol.vim %{_datadir}/nvim/runtime/ftplugin/denyhosts.vim +%{_datadir}/nvim/runtime/ftplugin/desktop.vim %{_datadir}/nvim/runtime/ftplugin/dictconf.vim %{_datadir}/nvim/runtime/ftplugin/dictdconf.vim %{_datadir}/nvim/runtime/ftplugin/diff.vim @@ -557,11 +572,14 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/dune.vim %{_datadir}/nvim/runtime/ftplugin/eiffel.vim %{_datadir}/nvim/runtime/ftplugin/elinks.vim +%{_datadir}/nvim/runtime/ftplugin/elixir.vim %{_datadir}/nvim/runtime/ftplugin/elm.vim %{_datadir}/nvim/runtime/ftplugin/erlang.vim %{_datadir}/nvim/runtime/ftplugin/eruby.vim %{_datadir}/nvim/runtime/ftplugin/eterm.vim +%{_datadir}/nvim/runtime/ftplugin/expect.vim %{_datadir}/nvim/runtime/ftplugin/falcon.vim +%{_datadir}/nvim/runtime/ftplugin/fennel.vim %{_datadir}/nvim/runtime/ftplugin/fetchmail.vim %{_datadir}/nvim/runtime/ftplugin/flexwiki.vim %{_datadir}/nvim/runtime/ftplugin/fortran.vim @@ -571,8 +589,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/fstab.vim %{_datadir}/nvim/runtime/ftplugin/fvwm.vim %{_datadir}/nvim/runtime/ftplugin/gdb.vim +%{_datadir}/nvim/runtime/ftplugin/gitattributes.vim %{_datadir}/nvim/runtime/ftplugin/gitcommit.vim %{_datadir}/nvim/runtime/ftplugin/gitconfig.vim +%{_datadir}/nvim/runtime/ftplugin/gitignore.vim %{_datadir}/nvim/runtime/ftplugin/gitrebase.vim %{_datadir}/nvim/runtime/ftplugin/gitsendemail.vim %{_datadir}/nvim/runtime/ftplugin/go.vim @@ -581,9 +601,12 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/groovy.vim %{_datadir}/nvim/runtime/ftplugin/group.vim %{_datadir}/nvim/runtime/ftplugin/grub.vim +%{_datadir}/nvim/runtime/ftplugin/gyp.vim %{_datadir}/nvim/runtime/ftplugin/haml.vim %{_datadir}/nvim/runtime/ftplugin/hamster.vim +%{_datadir}/nvim/runtime/ftplugin/hare.vim %{_datadir}/nvim/runtime/ftplugin/haskell.vim +%{_datadir}/nvim/runtime/ftplugin/heex.vim %{_datadir}/nvim/runtime/ftplugin/help.vim %{_datadir}/nvim/runtime/ftplugin/hgcommit.vim %{_datadir}/nvim/runtime/ftplugin/hog.vim @@ -592,6 +615,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/html.vim %{_datadir}/nvim/runtime/ftplugin/htmldjango.vim %{_datadir}/nvim/runtime/ftplugin/i3config.vim +%{_datadir}/nvim/runtime/ftplugin/icon.vim %{_datadir}/nvim/runtime/ftplugin/indent.vim %{_datadir}/nvim/runtime/ftplugin/initex.vim %{_datadir}/nvim/runtime/ftplugin/ishd.vim @@ -602,6 +626,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/jproperties.vim %{_datadir}/nvim/runtime/ftplugin/json.vim %{_datadir}/nvim/runtime/ftplugin/jsonc.vim +%{_datadir}/nvim/runtime/ftplugin/jsonnet.vim %{_datadir}/nvim/runtime/ftplugin/jsp.vim %{_datadir}/nvim/runtime/ftplugin/julia.vim %{_datadir}/nvim/runtime/ftplugin/kconfig.vim @@ -619,7 +644,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/logtalk.dict %{_datadir}/nvim/runtime/ftplugin/logtalk.vim %{_datadir}/nvim/runtime/ftplugin/lprolog.vim +%{_datadir}/nvim/runtime/ftplugin/lua.lua %{_datadir}/nvim/runtime/ftplugin/lua.vim +%{_datadir}/nvim/runtime/ftplugin/lynx.vim %{_datadir}/nvim/runtime/ftplugin/m3build.vim %{_datadir}/nvim/runtime/ftplugin/m3quake.vim %{_datadir}/nvim/runtime/ftplugin/m4.vim @@ -662,6 +689,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/php.vim %{_datadir}/nvim/runtime/ftplugin/pinfo.vim %{_datadir}/nvim/runtime/ftplugin/plaintex.vim +%{_datadir}/nvim/runtime/ftplugin/pod.vim %{_datadir}/nvim/runtime/ftplugin/poke.vim %{_datadir}/nvim/runtime/ftplugin/postscr.vim %{_datadir}/nvim/runtime/ftplugin/procmail.vim @@ -672,11 +700,12 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/pyrex.vim %{_datadir}/nvim/runtime/ftplugin/python.vim %{_datadir}/nvim/runtime/ftplugin/qb64.vim -%{_datadir}/nvim/runtime/ftplugin/query.lua %{_datadir}/nvim/runtime/ftplugin/qf.vim %{_datadir}/nvim/runtime/ftplugin/quake.vim +%{_datadir}/nvim/runtime/ftplugin/query.lua %{_datadir}/nvim/runtime/ftplugin/r.vim %{_datadir}/nvim/runtime/ftplugin/racc.vim +%{_datadir}/nvim/runtime/ftplugin/racket.vim %{_datadir}/nvim/runtime/ftplugin/raku.vim %{_datadir}/nvim/runtime/ftplugin/readline.vim %{_datadir}/nvim/runtime/ftplugin/registry.vim @@ -694,9 +723,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/sass.vim %{_datadir}/nvim/runtime/ftplugin/sbt.vim %{_datadir}/nvim/runtime/ftplugin/scala.vim +%{_datadir}/nvim/runtime/ftplugin/scdoc.vim %{_datadir}/nvim/runtime/ftplugin/scheme.vim %{_datadir}/nvim/runtime/ftplugin/screen.vim -%{_datadir}/nvim/runtime/ftplugin/scdoc.vim %{_datadir}/nvim/runtime/ftplugin/scss.vim %{_datadir}/nvim/runtime/ftplugin/sensors.vim %{_datadir}/nvim/runtime/ftplugin/services.vim @@ -715,19 +744,21 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/sshconfig.vim %{_datadir}/nvim/runtime/ftplugin/sudoers.vim %{_datadir}/nvim/runtime/ftplugin/svg.vim +%{_datadir}/nvim/runtime/ftplugin/swayconfig.vim %{_datadir}/nvim/runtime/ftplugin/swift.vim %{_datadir}/nvim/runtime/ftplugin/swiftgyb.vim %{_datadir}/nvim/runtime/ftplugin/sysctl.vim %{_datadir}/nvim/runtime/ftplugin/systemd.vim %{_datadir}/nvim/runtime/ftplugin/systemverilog.vim +%{_datadir}/nvim/runtime/ftplugin/tap.vim %{_datadir}/nvim/runtime/ftplugin/tcl.vim %{_datadir}/nvim/runtime/ftplugin/tcsh.vim %{_datadir}/nvim/runtime/ftplugin/terminfo.vim %{_datadir}/nvim/runtime/ftplugin/tex.vim %{_datadir}/nvim/runtime/ftplugin/text.vim %{_datadir}/nvim/runtime/ftplugin/tidy.vim -%{_datadir}/nvim/runtime/ftplugin/toml.vim %{_datadir}/nvim/runtime/ftplugin/tmux.vim +%{_datadir}/nvim/runtime/ftplugin/toml.vim %{_datadir}/nvim/runtime/ftplugin/treetop.vim %{_datadir}/nvim/runtime/ftplugin/tt2html.vim %{_datadir}/nvim/runtime/ftplugin/tutor.vim @@ -738,11 +769,15 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/ftplugin/udevrules.vim %{_datadir}/nvim/runtime/ftplugin/updatedb.vim %{_datadir}/nvim/runtime/ftplugin/vb.vim +%{_datadir}/nvim/runtime/ftplugin/vdf.vim %{_datadir}/nvim/runtime/ftplugin/verilog.vim %{_datadir}/nvim/runtime/ftplugin/vhdl.vim %{_datadir}/nvim/runtime/ftplugin/vim.vim %{_datadir}/nvim/runtime/ftplugin/vroom.vim +%{_datadir}/nvim/runtime/ftplugin/vue.vim %{_datadir}/nvim/runtime/ftplugin/wast.vim +%{_datadir}/nvim/runtime/ftplugin/wget.vim +%{_datadir}/nvim/runtime/ftplugin/wget2.vim %{_datadir}/nvim/runtime/ftplugin/xdefaults.vim %{_datadir}/nvim/runtime/ftplugin/xf86conf.vim %{_datadir}/nvim/runtime/ftplugin/xhtml.vim @@ -762,8 +797,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/ant.vim %{_datadir}/nvim/runtime/indent/automake.vim %{_datadir}/nvim/runtime/indent/awk.vim +%{_datadir}/nvim/runtime/indent/bash.vim %{_datadir}/nvim/runtime/indent/basic.vim %{_datadir}/nvim/runtime/indent/bib.vim +%{_datadir}/nvim/runtime/indent/bitbake.vim %{_datadir}/nvim/runtime/indent/bst.vim %{_datadir}/nvim/runtime/indent/bzl.vim %{_datadir}/nvim/runtime/indent/c.vim @@ -771,6 +808,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/ch.vim %{_datadir}/nvim/runtime/indent/chaiscript.vim %{_datadir}/nvim/runtime/indent/changelog.vim +%{_datadir}/nvim/runtime/indent/chatito.vim %{_datadir}/nvim/runtime/indent/clojure.vim %{_datadir}/nvim/runtime/indent/cmake.vim %{_datadir}/nvim/runtime/indent/cobol.vim @@ -788,20 +826,26 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/dosbatch.vim %{_datadir}/nvim/runtime/indent/dtd.vim %{_datadir}/nvim/runtime/indent/dtrace.vim +%{_datadir}/nvim/runtime/indent/dune.vim %{_datadir}/nvim/runtime/indent/dylan.vim %{_datadir}/nvim/runtime/indent/eiffel.vim +%{_datadir}/nvim/runtime/indent/elm.vim %{_datadir}/nvim/runtime/indent/erlang.vim %{_datadir}/nvim/runtime/indent/eruby.vim %{_datadir}/nvim/runtime/indent/eterm.vim +%{_datadir}/nvim/runtime/indent/expect.vim %{_datadir}/nvim/runtime/indent/falcon.vim +%{_datadir}/nvim/runtime/indent/fennel.vim %{_datadir}/nvim/runtime/indent/fortran.vim %{_datadir}/nvim/runtime/indent/framescript.vim %{_datadir}/nvim/runtime/indent/freebasic.vim %{_datadir}/nvim/runtime/indent/gitconfig.vim %{_datadir}/nvim/runtime/indent/gitolite.vim %{_datadir}/nvim/runtime/indent/go.vim +%{_datadir}/nvim/runtime/indent/gyp.vim %{_datadir}/nvim/runtime/indent/haml.vim %{_datadir}/nvim/runtime/indent/hamster.vim +%{_datadir}/nvim/runtime/indent/hare.vim %{_datadir}/nvim/runtime/indent/hog.vim %{_datadir}/nvim/runtime/indent/html.vim %{_datadir}/nvim/runtime/indent/htmldjango.vim @@ -815,6 +859,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/jsonc.vim %{_datadir}/nvim/runtime/indent/jsp.vim %{_datadir}/nvim/runtime/indent/julia.vim +%{_datadir}/nvim/runtime/indent/krl.vim %{_datadir}/nvim/runtime/indent/ld.vim %{_datadir}/nvim/runtime/indent/less.vim %{_datadir}/nvim/runtime/indent/lifelines.vim @@ -825,6 +870,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/mail.vim %{_datadir}/nvim/runtime/indent/make.vim %{_datadir}/nvim/runtime/indent/matlab.vim +%{_datadir}/nvim/runtime/indent/meson.vim %{_datadir}/nvim/runtime/indent/mf.vim %{_datadir}/nvim/runtime/indent/mma.vim %{_datadir}/nvim/runtime/indent/mp.vim @@ -839,11 +885,14 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/postscr.vim %{_datadir}/nvim/runtime/indent/pov.vim %{_datadir}/nvim/runtime/indent/prolog.vim +%{_datadir}/nvim/runtime/indent/ps1.vim %{_datadir}/nvim/runtime/indent/pyrex.vim %{_datadir}/nvim/runtime/indent/python.vim %{_datadir}/nvim/runtime/indent/qb64.vim %{_datadir}/nvim/runtime/indent/query.lua %{_datadir}/nvim/runtime/indent/r.vim +%{_datadir}/nvim/runtime/indent/racket.vim +%{_datadir}/nvim/runtime/indent/raku.vim %{_datadir}/nvim/runtime/indent/raml.vim %{_datadir}/nvim/runtime/indent/readline.vim %{_datadir}/nvim/runtime/indent/rhelp.vim @@ -862,9 +911,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/sdl.vim %{_datadir}/nvim/runtime/indent/sh.vim %{_datadir}/nvim/runtime/indent/sml.vim +%{_datadir}/nvim/runtime/indent/solidity.vim %{_datadir}/nvim/runtime/indent/sql.vim %{_datadir}/nvim/runtime/indent/sqlanywhere.vim -%{_datadir}/nvim/runtime/indent/systemd.vim +%{_datadir}/nvim/runtime/indent/sshconfig.vim %{_datadir}/nvim/runtime/indent/systemverilog.vim %{_datadir}/nvim/runtime/indent/tcl.vim %{_datadir}/nvim/runtime/indent/tcsh.vim @@ -879,6 +929,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/vhdl.vim %{_datadir}/nvim/runtime/indent/vim.vim %{_datadir}/nvim/runtime/indent/vroom.vim +%{_datadir}/nvim/runtime/indent/vue.vim %{_datadir}/nvim/runtime/indent/wast.vim %{_datadir}/nvim/runtime/indent/xf86conf.vim %{_datadir}/nvim/runtime/indent/xhtml.vim @@ -890,13 +941,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/indent/yaml.vim %{_datadir}/nvim/runtime/indent/zimbu.vim %{_datadir}/nvim/runtime/indent/zsh.vim -%{_datadir}/nvim/runtime/indent/bash.vim -%{_datadir}/nvim/runtime/indent/dune.vim -%{_datadir}/nvim/runtime/indent/elm.vim -%{_datadir}/nvim/runtime/indent/meson.vim -%{_datadir}/nvim/runtime/indent/ps1.vim -%{_datadir}/nvim/runtime/indent/raku.vim -%{_datadir}/nvim/runtime/indent/sshconfig.vim %dir %{_datadir}/nvim/runtime/indent/testdir/ %{_datadir}/nvim/runtime/indent/testdir/runtest.vim @@ -993,9 +1037,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/lua/vim/_editor.lua %{_datadir}/nvim/runtime/lua/vim/_init_packages.lua %{_datadir}/nvim/runtime/lua/vim/_meta.lua -%{_datadir}/nvim/runtime/lua/vim/compat.lua %{_datadir}/nvim/runtime/lua/vim/diagnostic.lua %{_datadir}/nvim/runtime/lua/vim/filetype.lua +%{_datadir}/nvim/runtime/lua/vim/fs.lua +%{_datadir}/nvim/runtime/lua/vim/health.lua %{_datadir}/nvim/runtime/lua/vim/highlight.lua %{_datadir}/nvim/runtime/lua/vim/inspect.lua %{_datadir}/nvim/runtime/lua/vim/keymap.lua @@ -1005,6 +1050,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/lua/vim/ui.lua %{_datadir}/nvim/runtime/lua/vim/uri.lua +%dir %{_datadir}/nvim/runtime/lua/vim/filetype/ +%{_datadir}/nvim/runtime/lua/vim/filetype/detect.lua + %dir %{_datadir}/nvim/runtime/lua/vim/lsp/ %{_datadir}/nvim/runtime/lua/vim/lsp/_snippet.lua %{_datadir}/nvim/runtime/lua/vim/lsp/buf.lua @@ -1083,7 +1131,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/plugin %{_datadir}/nvim/runtime/plugin/gzip.vim %{_datadir}/nvim/runtime/plugin/health.vim -%{_datadir}/nvim/runtime/plugin/man.vim +%{_datadir}/nvim/runtime/plugin/man.lua %{_datadir}/nvim/runtime/plugin/matchit.vim %{_datadir}/nvim/runtime/plugin/matchparen.vim %{_datadir}/nvim/runtime/plugin/netrwPlugin.vim @@ -1128,6 +1176,22 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/print/mac-roman.ps %{_datadir}/nvim/runtime/print/prolog.ps +%dir %{_datadir}/nvim/runtime/queries/ +%dir %{_datadir}/nvim/runtime/queries/c/ +%{_datadir}/nvim/runtime/queries/c/highlights.scm +%{_datadir}/nvim/runtime/queries/c/injections.scm + +%dir %{_datadir}/nvim/runtime/queries/help/ +%{_datadir}/nvim/runtime/queries/help/highlights.scm + +%dir %{_datadir}/nvim/runtime/queries/lua/ +%{_datadir}/nvim/runtime/queries/lua/highlights.scm +%{_datadir}/nvim/runtime/queries/lua/injections.scm + +%dir %{_datadir}/nvim/runtime/queries/vim/ +%{_datadir}/nvim/runtime/queries/vim/highlights.scm +%{_datadir}/nvim/runtime/queries/vim/injections.scm + %dir %{_datadir}/nvim/runtime/spell %{_datadir}/nvim/runtime/spell/cleanadd.vim %{_datadir}/nvim/runtime/spell/en.utf-8.spl @@ -1185,6 +1249,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/bdf.vim %{_datadir}/nvim/runtime/syntax/bib.vim %{_datadir}/nvim/runtime/syntax/bindzone.vim +%{_datadir}/nvim/runtime/syntax/bitbake.vim %{_datadir}/nvim/runtime/syntax/blank.vim %{_datadir}/nvim/runtime/syntax/bsdl.vim %{_datadir}/nvim/runtime/syntax/bst.vim @@ -1207,6 +1272,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/change.vim %{_datadir}/nvim/runtime/syntax/changelog.vim %{_datadir}/nvim/runtime/syntax/chaskell.vim +%{_datadir}/nvim/runtime/syntax/chatito.vim %{_datadir}/nvim/runtime/syntax/checkhealth.vim %{_datadir}/nvim/runtime/syntax/cheetah.vim %{_datadir}/nvim/runtime/syntax/chicken.vim @@ -1225,6 +1291,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/conaryrecipe.vim %{_datadir}/nvim/runtime/syntax/conf.vim %{_datadir}/nvim/runtime/syntax/config.vim +%{_datadir}/nvim/runtime/syntax/confini.vim %{_datadir}/nvim/runtime/syntax/context.vim %{_datadir}/nvim/runtime/syntax/cpp.vim %{_datadir}/nvim/runtime/syntax/crm.vim @@ -1326,12 +1393,17 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/fvwm2m4.vim %{_datadir}/nvim/runtime/syntax/gdb.vim %{_datadir}/nvim/runtime/syntax/gdmo.vim +%{_datadir}/nvim/runtime/syntax/gdresource.vim +%{_datadir}/nvim/runtime/syntax/gdscript.vim +%{_datadir}/nvim/runtime/syntax/gdshader.vim %{_datadir}/nvim/runtime/syntax/gedcom.vim %{_datadir}/nvim/runtime/syntax/gemtext.vim %{_datadir}/nvim/runtime/syntax/gift.vim %{_datadir}/nvim/runtime/syntax/git.vim +%{_datadir}/nvim/runtime/syntax/gitattributes.vim %{_datadir}/nvim/runtime/syntax/gitcommit.vim %{_datadir}/nvim/runtime/syntax/gitconfig.vim +%{_datadir}/nvim/runtime/syntax/gitignore.vim %{_datadir}/nvim/runtime/syntax/gitolite.vim %{_datadir}/nvim/runtime/syntax/gitrebase.vim %{_datadir}/nvim/runtime/syntax/gitsendemail.vim @@ -1352,8 +1424,10 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/gsp.vim %{_datadir}/nvim/runtime/syntax/gtkrc.vim %{_datadir}/nvim/runtime/syntax/gvpr.vim +%{_datadir}/nvim/runtime/syntax/gyp.vim %{_datadir}/nvim/runtime/syntax/haml.vim %{_datadir}/nvim/runtime/syntax/hamster.vim +%{_datadir}/nvim/runtime/syntax/hare.vim %{_datadir}/nvim/runtime/syntax/haskell.vim %{_datadir}/nvim/runtime/syntax/haste.vim %{_datadir}/nvim/runtime/syntax/hastepreproc.vim @@ -1364,6 +1438,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/hex.vim %{_datadir}/nvim/runtime/syntax/hgcommit.vim %{_datadir}/nvim/runtime/syntax/hitest.vim +%{_datadir}/nvim/runtime/syntax/hlsplaylist.vim %{_datadir}/nvim/runtime/syntax/hog.vim %{_datadir}/nvim/runtime/syntax/hollywood.vim %{_datadir}/nvim/runtime/syntax/hostconf.vim @@ -1408,6 +1483,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/kconfig.vim %{_datadir}/nvim/runtime/syntax/kivy.vim %{_datadir}/nvim/runtime/syntax/kix.vim +%{_datadir}/nvim/runtime/syntax/krl.vim %{_datadir}/nvim/runtime/syntax/kscript.vim %{_datadir}/nvim/runtime/syntax/kwt.vim %{_datadir}/nvim/runtime/syntax/lace.vim @@ -1440,6 +1516,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/lss.vim %{_datadir}/nvim/runtime/syntax/lua.vim %{_datadir}/nvim/runtime/syntax/lynx.vim +%{_datadir}/nvim/runtime/syntax/lyrics.vim %{_datadir}/nvim/runtime/syntax/m3build.vim %{_datadir}/nvim/runtime/syntax/m3quake.vim %{_datadir}/nvim/runtime/syntax/m4.vim @@ -1511,6 +1588,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/omnimark.vim %{_datadir}/nvim/runtime/syntax/opam.vim %{_datadir}/nvim/runtime/syntax/openroad.vim +%{_datadir}/nvim/runtime/syntax/openscad.vim %{_datadir}/nvim/runtime/syntax/opl.vim %{_datadir}/nvim/runtime/syntax/ora.vim %{_datadir}/nvim/runtime/syntax/pamconf.vim @@ -1562,11 +1640,12 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/pyrex.vim %{_datadir}/nvim/runtime/syntax/python.vim %{_datadir}/nvim/runtime/syntax/qb64.vim -%{_datadir}/nvim/runtime/syntax/query.lua %{_datadir}/nvim/runtime/syntax/qf.vim %{_datadir}/nvim/runtime/syntax/quake.vim +%{_datadir}/nvim/runtime/syntax/query.lua %{_datadir}/nvim/runtime/syntax/r.vim %{_datadir}/nvim/runtime/syntax/racc.vim +%{_datadir}/nvim/runtime/syntax/racket.vim %{_datadir}/nvim/runtime/syntax/radiance.vim %{_datadir}/nvim/runtime/syntax/raku.vim %{_datadir}/nvim/runtime/syntax/raml.vim @@ -1590,8 +1669,8 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/rng.vim %{_datadir}/nvim/runtime/syntax/rnoweb.vim %{_datadir}/nvim/runtime/syntax/robots.vim -%{_datadir}/nvim/runtime/syntax/rpcgen.vim %{_datadir}/nvim/runtime/syntax/routeros.vim +%{_datadir}/nvim/runtime/syntax/rpcgen.vim %{_datadir}/nvim/runtime/syntax/rpl.vim %{_datadir}/nvim/runtime/syntax/rrst.vim %{_datadir}/nvim/runtime/syntax/rst.vim @@ -1604,11 +1683,11 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/sather.vim %{_datadir}/nvim/runtime/syntax/sbt.vim %{_datadir}/nvim/runtime/syntax/scala.vim +%{_datadir}/nvim/runtime/syntax/scdoc.vim %{_datadir}/nvim/runtime/syntax/scheme.vim %{_datadir}/nvim/runtime/syntax/scilab.vim %{_datadir}/nvim/runtime/syntax/screen.vim %{_datadir}/nvim/runtime/syntax/scss.vim -%{_datadir}/nvim/runtime/syntax/scdoc.vim %{_datadir}/nvim/runtime/syntax/sd.vim %{_datadir}/nvim/runtime/syntax/sdc.vim %{_datadir}/nvim/runtime/syntax/sdl.vim @@ -1623,6 +1702,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/sgmllnx.vim %{_datadir}/nvim/runtime/syntax/sh.vim %{_datadir}/nvim/runtime/syntax/shada.vim +%{_datadir}/nvim/runtime/syntax/shared/typescriptcommon.vim %{_datadir}/nvim/runtime/syntax/sicad.vim %{_datadir}/nvim/runtime/syntax/sieve.vim %{_datadir}/nvim/runtime/syntax/sil.vim @@ -1650,6 +1730,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/snnspat.vim %{_datadir}/nvim/runtime/syntax/snnsres.vim %{_datadir}/nvim/runtime/syntax/snobol4.vim +%{_datadir}/nvim/runtime/syntax/solidity.vim %{_datadir}/nvim/runtime/syntax/spec.vim %{_datadir}/nvim/runtime/syntax/specman.vim %{_datadir}/nvim/runtime/syntax/spice.vim @@ -1667,6 +1748,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/squid.vim %{_datadir}/nvim/runtime/syntax/squirrel.vim %{_datadir}/nvim/runtime/syntax/srec.vim +%{_datadir}/nvim/runtime/syntax/srt.vim %{_datadir}/nvim/runtime/syntax/sshconfig.vim %{_datadir}/nvim/runtime/syntax/sshdconfig.vim %{_datadir}/nvim/runtime/syntax/st.vim @@ -1677,6 +1759,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/sudoers.vim %{_datadir}/nvim/runtime/syntax/svg.vim %{_datadir}/nvim/runtime/syntax/svn.vim +%{_datadir}/nvim/runtime/syntax/swayconfig.vim %{_datadir}/nvim/runtime/syntax/swift.vim %{_datadir}/nvim/runtime/syntax/swiftgyb.vim %{_datadir}/nvim/runtime/syntax/synload.vim @@ -1721,7 +1804,6 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/tt2js.vim %{_datadir}/nvim/runtime/syntax/tutor.vim %{_datadir}/nvim/runtime/syntax/typescript.vim -%{_datadir}/nvim/runtime/syntax/typescriptcommon.vim %{_datadir}/nvim/runtime/syntax/typescriptreact.vim %{_datadir}/nvim/runtime/syntax/uc.vim %{_datadir}/nvim/runtime/syntax/udevconf.vim @@ -1738,6 +1820,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/usw2kagtlog.vim %{_datadir}/nvim/runtime/syntax/valgrind.vim %{_datadir}/nvim/runtime/syntax/vb.vim +%{_datadir}/nvim/runtime/syntax/vdf.vim %{_datadir}/nvim/runtime/syntax/vera.vim %{_datadir}/nvim/runtime/syntax/verilog.vim %{_datadir}/nvim/runtime/syntax/verilogams.vim @@ -1758,6 +1841,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/syntax/web.vim %{_datadir}/nvim/runtime/syntax/webmacro.vim %{_datadir}/nvim/runtime/syntax/wget.vim +%{_datadir}/nvim/runtime/syntax/wget2.vim %{_datadir}/nvim/runtime/syntax/whitespace.vim %{_datadir}/nvim/runtime/syntax/winbatch.vim %{_datadir}/nvim/runtime/syntax/wml.vim @@ -1791,6 +1875,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %dir %{_datadir}/nvim/runtime/tools %{_datadir}/nvim/runtime/tools/check_colors.vim +%{_datadir}/nvim/runtime/tools/emoji_list.vim %dir %{_datadir}/nvim/runtime/tutor %{_datadir}/nvim/runtime/tutor/tutor.tutor @@ -1801,6 +1886,9 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %{_datadir}/nvim/runtime/tutor/en/vim-01-beginner.tutor.json %changelog +* Fri Sep 30 2022 Andreas Schneider - 0.8.0-1 +- Update to version 0.8.0 + * Wed Sep 21 2022 Andreas Schneider - 0.7.2-4 - Build with libvterm 0.3 diff --git a/sources b/sources index 9a6fc6b..748a022 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (neovim-0.7.2.tar.gz) = 04d0fa5b23018531b70b53271821bf6944cde1bcec2210b99f5888e1339cd38f57feaa8e40874a3a504930e6614980947f31852185cbcd2ce106a0867896dd79 +SHA512 (neovim-0.8.0.tar.gz) = e9504e33df292043656b0ef064e465069c93d4be52bbe29ec33c111f3e00ed83647148d653e3f143e2243dac537eede6a9351990bd858ac20abc8edbc5249432 From f86bb1e7ea5669332cfec0d0ffb6b15d57c90775 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Sat, 1 Oct 2022 07:04:22 +0200 Subject: [PATCH 14/15] Update patches for s390 and ppc --- neovim-cmake-lua-5.1.patch | 13 ------------- neovim-lua-bit32.patch | 20 ++++++++++---------- neovim.spec | 2 -- 3 files changed, 10 insertions(+), 25 deletions(-) delete mode 100644 neovim-cmake-lua-5.1.patch diff --git a/neovim-cmake-lua-5.1.patch b/neovim-cmake-lua-5.1.patch deleted file mode 100644 index c62ad49..0000000 --- a/neovim-cmake-lua-5.1.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: neovim-0.5.0/CMakeLists.txt -=================================================================== ---- neovim-0.5.0.orig/CMakeLists.txt -+++ neovim-0.5.0/CMakeLists.txt -@@ -413,7 +413,7 @@ endif() - option(PREFER_LUA "Prefer Lua over LuaJIT in the nvim executable." OFF) - - if(PREFER_LUA) -- find_package(Lua 5.1 REQUIRED) -+ find_package(Lua 5.1 EXACT REQUIRED) - set(LUA_PREFERRED_INCLUDE_DIRS ${LUA_INCLUDE_DIR}) - set(LUA_PREFERRED_LIBRARIES ${LUA_LIBRARIES}) - # Passive (not REQUIRED): if LUAJIT_FOUND is not set, nvim-test is skipped. diff --git a/neovim-lua-bit32.patch b/neovim-lua-bit32.patch index 6454858..c339ee2 100644 --- a/neovim-lua-bit32.patch +++ b/neovim-lua-bit32.patch @@ -1,8 +1,8 @@ -Index: neovim-0.5.0/CMakeLists.txt +Index: neovim-0.8.0/CMakeLists.txt =================================================================== ---- neovim-0.5.0.orig/CMakeLists.txt -+++ neovim-0.5.0/CMakeLists.txt -@@ -517,7 +517,7 @@ endforeach() +--- neovim-0.8.0.orig/CMakeLists.txt 2022-09-30 17:15:13.000000000 +0200 ++++ neovim-0.8.0/CMakeLists.txt 2022-10-01 07:03:31.650272466 +0200 +@@ -548,7 +548,7 @@ endforeach() # Find Lua interpreter include(LuaHelpers) @@ -11,20 +11,20 @@ Index: neovim-0.5.0/CMakeLists.txt if(NOT LUA_PRG) foreach(CURRENT_LUA_PRG luajit lua5.1 lua5.2 lua) unset(_CHECK_LUA_PRG CACHE) -Index: neovim-0.5.0/src/nvim/ex_cmds.lua +Index: neovim-0.8.0/src/nvim/ex_cmds.lua =================================================================== ---- neovim-0.5.0.orig/src/nvim/ex_cmds.lua -+++ neovim-0.5.0/src/nvim/ex_cmds.lua +--- neovim-0.8.0.orig/src/nvim/ex_cmds.lua 2022-09-30 17:15:13.000000000 +0200 ++++ neovim-0.8.0/src/nvim/ex_cmds.lua 2022-10-01 07:03:31.651272464 +0200 @@ -1,4 +1,4 @@ -local bit = require 'bit' +local bit = require 'bit32' local module = {} -Index: neovim-0.5.0/src/nvim/generators/gen_ex_cmds.lua +Index: neovim-0.8.0/src/nvim/generators/gen_ex_cmds.lua =================================================================== ---- neovim-0.5.0.orig/src/nvim/generators/gen_ex_cmds.lua -+++ neovim-0.5.0/src/nvim/generators/gen_ex_cmds.lua +--- neovim-0.8.0.orig/src/nvim/generators/gen_ex_cmds.lua 2022-09-30 17:15:13.000000000 +0200 ++++ neovim-0.8.0/src/nvim/generators/gen_ex_cmds.lua 2022-10-01 07:03:31.651272464 +0200 @@ -22,7 +22,7 @@ local defsfname = autodir .. '/ex_cmds_d local enumfile = io.open(enumfname, 'w') local defsfile = io.open(defsfname, 'w') diff --git a/neovim.spec b/neovim.spec index 0ab4f80..b0f1047 100644 --- a/neovim.spec +++ b/neovim.spec @@ -51,7 +51,6 @@ Source1: sysinit.vim Source2: spec-template Patch1000: neovim-lua-bit32.patch -Patch1001: neovim-cmake-lua-5.1.patch BuildRequires: gcc-c++ BuildRequires: cmake @@ -111,7 +110,6 @@ parts of Vim, without compromise, and more. %if %{without luajit} %patch1000 -p1 -%patch1001 -p1 %endif %build From fa3799a48dfd12a8531d7c674908a8ea599eb0c9 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 7 Oct 2022 09:56:03 +0200 Subject: [PATCH 15/15] Add link to release notes --- neovim.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/neovim.spec b/neovim.spec index b0f1047..9f4d6fc 100644 --- a/neovim.spec +++ b/neovim.spec @@ -1886,6 +1886,7 @@ find %{buildroot}%{_datadir} \( -name "*.bat" -o -name "*.awk" \) \ %changelog * Fri Sep 30 2022 Andreas Schneider - 0.8.0-1 - Update to version 0.8.0 + * https://github.com/neovim/neovim/releases/tag/v0.8.0 * Wed Sep 21 2022 Andreas Schneider - 0.7.2-4 - Build with libvterm 0.3