Compare commits

..

37 commits

Author SHA1 Message Date
Zdenek Dohnal
eae4b5cd79 - patchlevel 2068 2026-01-09 12:59:59 +01:00
Zdenek Dohnal
676006795a - patchlevel 1999 2025-12-19 07:07:16 +01:00
Zdenek Dohnal
07501bca7a - patchlevel 1972 2025-12-12 07:37:49 +01:00
Zdenek Dohnal
6bbeb2d904 - patchlevel 1952 2025-12-05 06:58:19 +01:00
Zdenek Dohnal
19faaa187e F41 is EOL 2025-11-28 07:56:40 +01:00
Zdenek Dohnal
fef106b849 - patchlevel 1914 2025-11-14 10:30:03 +01:00
Zdenek Dohnal
e847a50297 - patchlevel 1888 2025-10-31 08:34:06 +01:00
Zdenek Dohnal
c8b04c80dd vimrc: Use RestoreCursor from defaults.vim (fedora#2404651)
Fixes setting the cursor at the start of file when committing in Git
2025-10-31 08:08:06 +01:00
Zdenek Dohnal
71c059abc5 - patchlevel 1863 2025-10-17 09:15:06 +02:00
Zdenek Dohnal
5ee4f534a6 Remove make depend workaround 2025-10-17 08:59:22 +02:00
Zdenek Dohnal
0c4cede346 Fix building without wayland
Currently, due broken dependency generation, wayland support is
hardcoded in Makefile. We have to run dependency generation and auto
generation at every `make` call.

Additionally, function prototypes are now generated by python3 and its
clang module during build - added buildrequires for it.
2025-10-10 11:42:54 +02:00
Zdenek Dohnal
61cfcde9de - patchlevel 1845 2025-10-10 07:17:01 +02:00
Zdenek Dohnal
ae2db1ff1d - patchlevel 1818 2025-10-03 10:25:29 +02:00
Zdenek Dohnal
c8b1dc9498 remove XPM support - GVim icons work without it 2025-09-29 18:21:43 +02:00
Zdenek Dohnal
07b3394cbc - patchlevel 1775 2025-09-19 08:58:02 +02:00
Zdenek Dohnal
bc2a0c97cc Restore lost --remote-tab... functionality on wayland (fedora#2393716) 2025-09-10 15:01:43 +02:00
Zdenek Dohnal
b97a8f0977 - patchlevel 1723 2025-09-01 17:25:26 +02:00
Zdenek Dohnal
d38db4ff3c vim-common has broken manpages (fedora#2392178) 2025-09-01 17:23:12 +02:00
Zdenek Dohnal
f114e7eb65 broken /usr/bin/ex symlink in vim-9.1.1706-1.fc42 (fedora#2392249) 2025-09-01 10:52:44 +02:00
Zdenek Dohnal
fd5559a02c - patchlevel 1706 2025-08-29 09:13:35 +02:00
Zdenek Dohnal
66e2923218 Enable F43 2025-08-29 09:12:15 +02:00
Carl George
d957d1e818 Switch to https URL 2025-08-14 14:37:56 -05:00
Zdenek Dohnal
beb553458e Remove vimspell conditions and subpackage
The source used for spell package was removed in Vim 7.1, and the
package was not built at least for 9 years, so IMO no need to obsolete
the package.
2025-08-12 12:24:50 +02:00
Zdenek Dohnal
dbca97ea24 SPEC file cleanup
- renumber patches
- move conditional stuff at the end of each sections
2025-08-12 11:56:05 +02:00
František Hrdina
698ce32e16 Update of fmf plans 2025-08-12 10:15:09 +02:00
Zdenek Dohnal
7d940e947b Remove old conflicts 2025-08-12 08:41:08 +02:00
Zdenek Dohnal
9e0e978fbb - patchlevel 1623 2025-08-11 11:33:32 +02:00
Zdenek Dohnal
4e61579ba3 - patchlevel 1591 2025-08-01 07:31:30 +02:00
Fedora Release Engineering
7c60feb6e2 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 20:05:12 +00:00
Zdenek Dohnal
c1048c7930 - patchlevel 1552 2025-07-16 07:24:18 +02:00
Zdenek Dohnal
dc29a314a5 2379759 - remove wayland-libs from vim and vi (fedora#2379759) 2025-07-14 09:47:17 +02:00
Zdenek Dohnal
97b3fbd6e5 - patchlevel 1537 2025-07-11 09:18:09 +02:00
Zdenek Dohnal
47571c96d7 - patchlevel 1484 2025-06-27 06:46:53 +02:00
Zdenek Dohnal
4d63e8a53c FTBFS with Python 3.14 (fedora#2373314) 2025-06-19 14:50:43 +02:00
Zdenek Dohnal
d1c415d036 - patchlevel 1435 2025-06-06 07:03:55 +02:00
Zdenek Dohnal
f158e7ec35 - patchlevel 1418 2025-05-30 10:23:04 +02:00
Zdenek Dohnal
ca6e36ab21 F40 is EOL 2025-05-30 09:49:03 +02:00
11 changed files with 394 additions and 376 deletions

View file

@ -4,8 +4,8 @@ product_versions:
decision_context: bodhi_update_push_testing
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/public.functional}
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/tier1-public.functional}
#Rawhide
--- !Policy
product_versions:
@ -13,13 +13,13 @@ product_versions:
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/public.functional}
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/tier1-public.functional}
#gating rhel
--- !Policy
product_versions:
- rhel-*
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/tier1-public.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/tier1-internal.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/public.functional}

35
plans.fmf Normal file
View file

@ -0,0 +1,35 @@
/tier1-internal:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/vim.git
name: /plans/tier1/internal
/tier1-public:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/vim.git
name: /plans/tier1/public
/tier2-tier3-internal:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/vim.git
name: /plans/tier2-tier3/internal
/tier2-tier3-public:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/vim.git
name: /plans/tier2-tier3/public
/others-internal:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/vim.git
name: /plans/others/internal
/others-public:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/vim.git
name: /plans/others/public

View file

@ -1,6 +0,0 @@
summary: Test plan with all Fedora tests
discover:
how: fmf
url: https://src.fedoraproject.org/tests/vim.git
execute:
how: tmt

View file

@ -1,12 +0,0 @@
summary: CI plan, picks internal Tier1 tests, runs in beakerlib.
discover:
- name: rhel
how: fmf
filter: 'tier: 1'
url: https://pkgs.devel.redhat.com/git/tests/vim
execute:
how: tmt
adjust:
enabled: false
when: distro == centos-stream or distro == fedora
because: They don't have access to internal repos.

View file

@ -1 +1 @@
SHA512 (vim-9.1-1291.tar.bz2) = 66b9f4f81e33f3e9ef61e8e9d792d5f0896833912434c204697b71686a4d21996d1030a4a2549f3d82f7be3f47578fed87f12b9b2b2a4473bf695c164f8851c6
SHA512 (vim-9.1-2068.tar.bz2) = f19ae5898f7c388f437fe03af23d956ef66706c2a629a3389622e0b583d9bd831dd4e250badb181fceacb2b52b1f8a6bda4f72fbece122b5f5097153daf774f3

View file

@ -1,7 +1,7 @@
diff -up vim91/runtime/syntax/spec.vim.spec-syntax vim91/runtime/syntax/spec.vim
--- vim91/runtime/syntax/spec.vim.spec-syntax 2024-03-08 07:18:14.000000000 +0100
+++ vim91/runtime/syntax/spec.vim 2024-03-08 07:37:57.157339625 +0100
@@ -35,7 +35,7 @@ syn match specNoNumberHilite 'X11\|X11R6
--- vim91/runtime/syntax/spec.vim.spec-syntax 2025-11-14 07:38:27.000000000 +0100
+++ vim91/runtime/syntax/spec.vim 2025-11-14 07:52:56.081212607 +0100
@@ -38,7 +38,7 @@ syn match specNoNumberHilite 'X11\|X11R6
syn match specManpageFile '[a-zA-Z]\.1'
"Day, Month and most used license acronyms
@ -10,24 +10,12 @@ diff -up vim91/runtime/syntax/spec.vim.spec-syntax vim91/runtime/syntax/spec.vim
syn keyword specWeekday contained Mon Tue Wed Thu Fri Sat Sun
syn keyword specMonth contained Jan Feb Mar Apr Jun Jul Aug Sep Oct Nov Dec
syn keyword specMonth contained January February March April May June July August September October November December
@@ -58,9 +58,9 @@ syn cluster specListedFiles contains=spe
"specCommands
syn match specConfigure contained '\./configure'
-syn match specTarCommand contained '\<tar\s\+[cxvpzIf]\{,5}\s*'
+syn match specTarCommand contained '\<tar\s\+[cxvpzIjf]\{,5}\s*'
syn keyword specCommandSpecial contained root
-syn keyword specCommand contained make xmkmf mkdir chmod ln find sed rm strip moc echo grep ls rm mv mkdir install cp pwd cat tail then else elif cd gzip rmdir ln eval export touch
+syn keyword specCommand contained make xmkmf mkdir chmod ln find sed rm strip moc echo grep ls rm mv mkdir install cp pwd cat tail then else elif cd gzip rmdir ln eval export touch bzip2 bunzip2 gunzip
syn cluster specCommands contains=specCommand,specTarCommand,specConfigure,specCommandSpecial
"frequently used rpm env vars
@@ -102,7 +102,7 @@ syn case ignore
@@ -105,7 +105,7 @@ syn case ignore
"%% PreAmble Section %%
"Copyright and Serial were deprecated by License and Epoch
syn region specPreAmbleDeprecated oneline matchgroup=specError start='^\(Copyright\|Serial\)' end='$' contains=specEmail,specURL,specURLMacro,specLicense,specColon,specVariables,specSpecialChar,specMacroIdentifier
-syn region specPreAmble oneline matchgroup=specCommand start='^\(Prereq\|Summary\|Name\|Version\|Packager\|Requires\|Recommends\|Suggests\|Supplements\|Enhances\|Icon\|URL\|SourceLicense\|Source\d*\|Patch\d*\|Prefix\|Packager\|Group\|License\|Release\|BuildRoot\|Distribution\|Vendor\|Provides\|ExclusiveArch\|ExcludeArch\|ExclusiveOS\|Obsoletes\|BuildArch\|BuildArchitectures\|BuildRequires\|BuildConflicts\|BuildPreReq\|Conflicts\|AutoRequires\|AutoReq\|AutoReqProv\|AutoProv\|Epoch\)' end='$' contains=specEmail,specURL,specURLMacro,specLicense,specColon,specVariables,specSpecialChar,specMacroIdentifier
+syn region specPreAmble oneline matchgroup=specCommand start='^\(Prereq\|Summary\|Name\|Version\|Packager\|Requires\|Recommends\|Suggests\|Supplements\|Enhances\|Icon\|URL\|SourceLicense\|Source\d*\|Patch\d*\|Prefix\|Packager\|Group\|License\|Release\|BuildRoot\|Distribution\|Vendor\|Provides\|ExclusiveArch\|ExcludeArch\|ExcludeOS\|ExclusiveOS\|Obsoletes\|BuildArch\|BuildArchitectures\|BuildRequires\|BuildConflicts\|BuildPreReq\|Conflicts\|AutoRequires\|AutoReq\|AutoReqProv\|AutoProv\|Epoch\)' end='$' contains=specEmail,specURL,specURLMacro,specLicense,specColon,specVariables,specSpecialChar,specMacroIdentifier
-syn region specPreAmble oneline matchgroup=specCommand start='^\(Prereq\|Summary\|Name\|Version\|Packager\|Requires\|Recommends\|Suggests\|Supplements\|Enhances\|Icon\|URL\|SourceLicense\|Source\d*\|Patch\d*\|Prefix\|Packager\|Group\|License\|Release\|BuildRoot\|Distribution\|DistTag\|Vendor\|Provides\|ExclusiveArch\|ExcludeArch\|ExclusiveOS\|Obsoletes\|BuildArch\|BuildArchitectures\|BuildRequires\|BuildConflicts\|BuildPreReq\|Conflicts\|AutoRequires\|AutoReq\|AutoReqProv\|AutoProv\|Epoch\|ModularityLabel\)' end='$' contains=specEmail,specURL,specURLMacro,specLicense,specColon,specVariables,specSpecialChar,specMacroIdentifier
+syn region specPreAmble oneline matchgroup=specCommand start='^\(Prereq\|Summary\|Name\|Version\|Packager\|Requires\|Recommends\|Suggests\|Supplements\|Enhances\|Icon\|URL\|SourceLicense\|Source\d*\|Patch\d*\|Prefix\|Packager\|Group\|License\|Release\|BuildRoot\|Distribution\|DistTag\|Vendor\|Provides\|ExclusiveArch\|ExcludeArch\|ExcludeOS\|ExclusiveOS\|Obsoletes\|BuildArch\|BuildArchitectures\|BuildRequires\|BuildConflicts\|BuildPreReq\|Conflicts\|AutoRequires\|AutoReq\|AutoReqProv\|AutoProv\|Epoch\|ModularityLabel\)' end='$' contains=specEmail,specURL,specURLMacro,specLicense,specColon,specVariables,specSpecialChar,specMacroIdentifier
"%% Description Section %%
syn region specDescriptionArea matchgroup=specSection start='^%description' end='^%'me=e-1 contains=specDescriptionOpts,specEmail,specURL,specNumber,specMacroIdentifier,specComment

View file

@ -1,8 +1,7 @@
diff --git a/runtime/defaults.vim b/runtime/defaults.vim
index ff8ce8e..2ed8542 100644
--- a/runtime/defaults.vim
+++ b/runtime/defaults.vim
@@ -75,18 +75,6 @@ sunmap Q
diff -up vim91/runtime/defaults.vim.copypaste vim91/runtime/defaults.vim
--- vim91/runtime/defaults.vim.copypaste 2025-06-27 06:43:53.000000000 +0200
+++ vim91/runtime/defaults.vim 2025-07-11 09:16:19.013363739 +0200
@@ -70,18 +70,6 @@ sunmap Q
" Revert with ":iunmap <C-U>".
inoremap <C-U> <C-G>u<C-U>
@ -21,23 +20,21 @@ index ff8ce8e..2ed8542 100644
" Only do this part when Vim was compiled with the +eval feature.
if 1
diff --git a/src/testdir/test_balloon.vim b/src/testdir/test_balloon.vim
index 80d5831..713f580 100644
--- a/src/testdir/test_balloon.vim
+++ b/src/testdir/test_balloon.vim
@@ -9,6 +9,7 @@ source screendump.vim
CheckScreendump
diff -up vim91/src/testdir/test_balloon.vim.copypaste vim91/src/testdir/test_balloon.vim
--- vim91/src/testdir/test_balloon.vim.copypaste 2025-07-11 09:16:19.013500976 +0200
+++ vim91/src/testdir/test_balloon.vim 2025-07-11 09:17:20.168187029 +0200
@@ -7,6 +7,7 @@ CheckFeature balloon_eval_term
source util/screendump.vim
let s:common_script =<< trim [CODE]
+ set mouse=a
call setline(1, ["one one one", "two tXo two", "three three three"])
set balloonevalterm balloonexpr=MyBalloonExpr()..s:trailing balloondelay=100
let s:trailing = '<' " check that script context is set
diff --git a/src/testdir/test_popup.vim b/src/testdir/test_popup.vim
index d930133..0c74032 100644
--- a/src/testdir/test_popup.vim
+++ b/src/testdir/test_popup.vim
@@ -945,6 +945,7 @@ func Test_mouse_popup_position()
diff -up vim91/src/testdir/test_popup.vim.copypaste vim91/src/testdir/test_popup.vim
--- vim91/src/testdir/test_popup.vim.copypaste 2025-07-11 08:58:40.000000000 +0200
+++ vim91/src/testdir/test_popup.vim 2025-07-11 09:16:19.013692144 +0200
@@ -957,6 +957,7 @@ func Test_mouse_popup_position()
let script =<< trim END
set mousemodel=popup_setpos
source $VIMRUNTIME/menu.vim
@ -45,11 +42,10 @@ index d930133..0c74032 100644
call setline(1, join(range(20)))
func Trigger(col)
call test_setmouse(1, a:col)
diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim
index 64aa654..1a1261c 100644
--- a/src/testdir/test_popupwin.vim
+++ b/src/testdir/test_popupwin.vim
@@ -558,6 +558,7 @@ func Test_popup_drag()
diff -up vim91/src/testdir/test_popupwin.vim.copypaste vim91/src/testdir/test_popupwin.vim
--- vim91/src/testdir/test_popupwin.vim.copypaste 2025-07-11 08:58:40.000000000 +0200
+++ vim91/src/testdir/test_popupwin.vim 2025-07-11 09:16:19.013971633 +0200
@@ -556,6 +556,7 @@ func Test_popup_drag()
" create a popup that covers the command line
let lines =<< trim END
call setline(1, range(1, 20))
@ -57,7 +53,7 @@ index 64aa654..1a1261c 100644
split
vsplit
$wincmd w
@@ -625,6 +626,7 @@ func Test_popup_drag_minwidth()
@@ -623,6 +624,7 @@ func Test_popup_drag_minwidth()
" create a popup that does not fit
let lines =<< trim END
@ -65,7 +61,7 @@ index 64aa654..1a1261c 100644
call range(40)
\ ->map({_,i -> string(i)})
\ ->popup_create({
@@ -672,6 +674,7 @@ func Test_popup_drag_termwin()
@@ -670,6 +672,7 @@ func Test_popup_drag_termwin()
let lines =<< trim END
set foldmethod=marker
call setline(1, range(100))
@ -73,7 +69,7 @@ index 64aa654..1a1261c 100644
for nr in range(7)
call setline(nr * 12 + 1, "fold {{{")
call setline(nr * 12 + 11, "end }}}")
@@ -724,6 +727,7 @@ func Test_popup_close_with_mouse()
@@ -722,6 +725,7 @@ func Test_popup_close_with_mouse()
let lines =<< trim END
call setline(1, range(1, 20))
@ -89,7 +85,7 @@ index 64aa654..1a1261c 100644
set balloonevalterm
set balloonexpr=BalloonExpr()
set balloondelay=100
@@ -2255,6 +2260,7 @@ func Test_popup_scrollbar()
@@ -2269,6 +2274,7 @@ func Test_popup_scrollbar()
let lines =<< trim END
call setline(1, range(1, 20))

View file

@ -1,7 +1,7 @@
diff -up vim90/src/config.h.in.fips-warning vim90/src/config.h.in
--- vim90/src/config.h.in.fips-warning 2023-05-29 09:30:59.000000000 +0200
+++ vim90/src/config.h.in 2023-05-29 09:34:47.261645612 +0200
@@ -498,5 +498,14 @@
diff -up vim91/src/config.h.in.fips-warning vim91/src/config.h.in
--- vim91/src/config.h.in.fips-warning 2025-10-31 08:12:59.598267544 +0100
+++ vim91/src/config.h.in 2025-10-31 08:14:45.661859595 +0100
@@ -526,5 +526,14 @@
/* Define if _SC_SIGSTKSZ is available via sysconf() */
#undef HAVE_SYSCONF_SIGSTKSZ
@ -16,10 +16,10 @@ diff -up vim90/src/config.h.in.fips-warning vim90/src/config.h.in
+
/* Define if you want to load libgpm dynamically */
#undef DYNAMIC_GPM
diff -up vim90/src/configure.ac.fips-warning vim90/src/configure.ac
--- vim90/src/configure.ac.fips-warning 2023-05-29 09:34:47.257645645 +0200
+++ vim90/src/configure.ac 2023-05-29 09:34:47.262645604 +0200
@@ -589,6 +589,38 @@ else
diff -up vim91/src/configure.ac.fips-warning vim91/src/configure.ac
--- vim91/src/configure.ac.fips-warning 2025-10-31 08:12:59.596711911 +0100
+++ vim91/src/configure.ac 2025-10-31 08:12:59.598566242 +0100
@@ -631,6 +631,38 @@ else
AC_SUBST(XDIFF_OBJS_USED)
fi
@ -58,10 +58,10 @@ diff -up vim90/src/configure.ac.fips-warning vim90/src/configure.ac
dnl Check for Lua feature.
AC_MSG_CHECKING(--enable-luainterp argument)
AC_ARG_ENABLE(luainterp,
diff -up vim90/src/crypt.c.fips-warning vim90/src/crypt.c
--- vim90/src/crypt.c.fips-warning 2023-05-29 09:34:47.263645596 +0200
+++ vim90/src/crypt.c 2023-05-29 09:51:23.209779115 +0200
@@ -795,6 +795,21 @@ crypt_check_method(int method)
diff -up vim91/src/crypt.c.fips-warning vim91/src/crypt.c
--- vim91/src/crypt.c.fips-warning 2025-10-10 07:16:11.000000000 +0200
+++ vim91/src/crypt.c 2025-10-31 08:12:59.598872032 +0100
@@ -806,6 +806,21 @@ crypt_check_method(int method)
msg_scroll = TRUE;
msg(_("Warning: Using a weak encryption method; see :help 'cm'"));
}

View file

@ -1,12 +1,12 @@
#!/bin/bash
debug=""
#debug="echo "
branches=( "rawhide" "f42" "f41" "f40" )
releases=( "fc43" "fc42" "fc41" "fc40" )
branches=( "rawhide" "f43" "f42" )
releases=( "fc44" "fc43" "fc42" )
# the first bodhi enabled release is the last without \| - all
# others need to have \|
regexps=( "fc43" "fc42" "\|fc41" "\|fc40" )
bodhi_enabled=( "0" "1" "1" "1" )
regexps=( "fc44" "fc43" "\|fc42" )
bodhi_enabled=( "0" "1" "1" )
needs_update=()
#releases_regexp=fc28\\\|fc27\\\|fc28

593
vim.spec
View file

@ -1,5 +1,6 @@
%bcond_without gui
%if 0%{?fedora}
%bcond_without default_editor
%bcond_without gpm
@ -10,7 +11,23 @@
%bcond_with libsodium_crypt
%endif
%define patchlevel 1291
%define patchlevel 2068
%define withnetbeans 1
%define withhunspell 0
%define withlua 1
%define withperl 1
# VIm upstream wants to build with FORTIFY_SOURCE=1,
# because higher levels causes crashes of valid code constructs
# and their reimplementation would cost unnecessary maintenance
# https://github.com/vim/vim/pull/3507
%define _fortify_level 1
%define baseversion 9.1
%define vimdir vim91
%if %{?WITH_SELINUX:0}%{!?WITH_SELINUX:1}
%define WITH_SELINUX 1
@ -26,29 +43,15 @@
%define desktop_file_utils_version 0.2.93
%endif
%define withnetbeans 1
%define withvimspell 0
%define withhunspell 0
%define withlua 1
%define withperl 1
%if 0%{?flatpak}
%define withruby 0
%else
%define withruby 1
%endif
# VIm upstream wants to build with FORTIFY_SOURCE=1,
# because higher levels causes crashes of valid code constructs
# and their reimplementation would cost unnecessary maintenance
# https://github.com/vim/vim/pull/3507
%define _fortify_level 1
%define baseversion 9.1
%define vimdir vim91
Summary: The VIM editor
URL: http://www.vim.org/
URL: https://www.vim.org/
Name: vim
Version: %{baseversion}.%{patchlevel}
Release: 1%{?dist}
@ -77,39 +80,27 @@ Source11: vim-default-editor.fish
Source12: view_wrapper
Source13: vi_wrapper
%if %{withvimspell}
Source100: vim-spell-files.tar.bz2
%endif
Patch2000: vim-7.0-fixkeys.patch
Patch2001: vim-7.4-specsyntax.patch
%if %{withhunspell}
Patch2002: vim-7.0-hunspell.patch
BuildRequires: hunspell-devel
%endif
Patch3000: vim-7.3-manpage-typo-668894-675480.patch
Patch3001: vim-manpagefixes-948566.patch
Patch3002: vim-7.4-globalsyntax.patch
Patch1: vim-7.0-fixkeys.patch
Patch2: vim-7.4-specsyntax.patch
Patch3: vim-7.3-manpage-typo-668894-675480.patch
Patch4: vim-manpagefixes-948566.patch
Patch5: vim-7.4-globalsyntax.patch
# migrate shebangs in script to /usr/bin/python3 and use python2 when necessary
Patch3003: vim-python3-tests.patch
Patch6: vim-python3-tests.patch
# fips warning (Fedora downstream patch)
Patch3004: vim-crypto-warning.patch
Patch7: vim-crypto-warning.patch
# don't ever set mouse (Fedora downstream patch)
Patch3005: vim-8.0-copy-paste.patch
Patch8: vim-8.0-copy-paste.patch
# patch only when hunspell is enabled
Patch10000: vim-7.0-hunspell.patch
# uses autoconf in spec file
BuildRequires: autoconf
%if %{desktop_file}
# for /usr/bin/desktop-file-install
BuildRequires: desktop-file-utils >= %{desktop_file_utils_version}
Requires: desktop-file-utils
%endif
# gcc is no longer in buildroot by default
BuildRequires: gcc
# for translations
@ -120,16 +111,38 @@ BuildRequires: gettext
# formats during compilation.
BuildRequires: glibc-gconv-extra
# for setting ACL on created files
BuildRequires: libacl-devel
# uses libtool for linking
BuildRequires: libtool
# uses make
BuildRequires: make
# screen handling library
BuildRequires: ncurses-devel
# for building function prototypes
BuildRequires: python3
BuildRequires: python3-clang
# for python plugin
BuildRequires: python3-devel
%if %{desktop_file}
# for /usr/bin/desktop-file-install
BuildRequires: desktop-file-utils >= %{desktop_file_utils_version}
Requires: desktop-file-utils
%endif
%if %{with gpm}
# for mouse support in console
BuildRequires: gpm-devel
%endif
# for setting ACL on created files
BuildRequires: libacl-devel
# selinux support
%if %{WITH_SELINUX}
BuildRequires: libselinux-devel
%if %{withhunspell}
BuildRequires: hunspell-devel
%endif
# for xchacha20 encryption
@ -137,18 +150,11 @@ BuildRequires: libselinux-devel
BuildRequires: libsodium-devel
%endif
# uses libtool for linking
BuildRequires: libtool
# for lua plugin
%if "%{withlua}" == "1"
BuildRequires: lua-devel
%endif
# uses make
BuildRequires: make
# screen handling library
BuildRequires: ncurses-devel
# for perl plugin
%if "%{withperl}" == "1"
BuildRequires: perl-devel
@ -156,8 +162,6 @@ BuildRequires: perl-generators
BuildRequires: perl(ExtUtils::Embed)
BuildRequires: perl(ExtUtils::ParseXS)
%endif
# for python plugin
BuildRequires: python3-devel
# for ruby plugin
%if "%{withruby}" == "1"
@ -165,6 +169,11 @@ BuildRequires: ruby
BuildRequires: ruby-devel
%endif
# selinux support
%if %{WITH_SELINUX}
BuildRequires: libselinux-devel
%endif
%description
VIM (VIsual editor iMproved) is an updated and improved version of the
@ -172,26 +181,17 @@ vi editor. Vi was the first real screen-based editor for UNIX, and is
still very popular. VIM improves on vi by adding new features:
multiple windows, multi-level undo, block highlighting and more.
%package common
Summary: The common files needed by any version of the VIM editor
# conflicts in package because of manpage move (bug #1599663)
# conflicts because of defaults.vim (bug #2026651)
# remove after F36 EOL+after release CentOS Stream > 9
Conflicts: %{name}-minimal < %{epoch}:8.2.3642-2
# move evim manpage to common - remove the conflict after C11S is branched
Conflicts: %{name}-X11 < 2:9.1.1706-2
# shared files between common and minimal
Requires: %{name}-data = %{epoch}:%{version}-%{release}
Requires: %{name}-filesystem
# the hexdump binary was part of the package for long time, ship it with it
# still for convenience
Requires: xxd
# vim-toml was a separate package but the runtime files have been included
# directly in vim since 8.2.3519. The vim-toml package has been retired in
# Fedora, obsolete it so it doesn't get left on users' systems. Added in F38,
# can be removed in F40.
# https://github.com/cespare/vim-toml/commit/2c8983cc391287e5e26e015c3ab9c38de9f9b759
# https://github.com/vim/vim/commit/2286304cdbba53ceb52b3ba2ba4a521b0a2f8d0f
Provides: vim-toml = %{epoch}:%{version}-%{release}
Obsoletes: vim-toml < 0^1.717bd87-4
%description common
VIM (VIsual editor iMproved) is an updated and improved version of the
@ -204,20 +204,9 @@ order to run.
If you are installing vim-enhanced or vim-X11, you'll also need
to install the vim-common package.
%package spell
Summary: The dictionaries for spell checking. This package is optional
Requires: vim-common = %{epoch}:%{version}-%{release}
%description spell
This subpackage contains dictionaries for vim spell checking in
many different languages.
%package minimal
Summary: A minimal version of the VIM editor
# conflicts in package because of manpage move (bug #1599663)
# conflicts because of defaults.vim (bug #2026651)
# remove after F36 EOL+after release CentOS Stream > 9
Conflicts: %{name}-common < %{epoch}:8.2.3642-2
Provides: vi
Provides: %{_bindir}/vi
# shared files between common and minimal
@ -232,6 +221,7 @@ vim-minimal package includes a minimal version of VIM, providing
the commands vi, view, ex, rvi, and rview. NOTE: The online help is
only available when the vim-common package is installed.
%package enhanced
Summary: A version of the VIM editor which includes recent enhancements
# vim bundles libvterm, which is used during build - so we need to provide
@ -244,6 +234,9 @@ Provides: %{_bindir}/vim
Requires: vim-common = %{epoch}:%{version}-%{release}
# required for vimtutor (#395371)
Requires: which
Suggests: python3
Suggests: python3-libs
# suggest python3, python2, lua, ruby and perl packages because of their
# embedded functionality in Vim/GVim
%if "%{withlua}" == "1"
@ -254,9 +247,6 @@ Suggests: lua-libs
Suggests: perl-devel
%endif
Suggests: python3
Suggests: python3-libs
%if "%{withruby}" == "1"
Suggests: ruby
Suggests: ruby-libs
@ -275,6 +265,7 @@ VIM editor which includes recently added enhancements like
interpreters for the Python and Perl scripting languages. You'll also
need to install the vim-common package.
%package filesystem
Summary: VIM filesystem layout
BuildArch: noarch
@ -283,9 +274,41 @@ BuildArch: noarch
This package provides some directories which are required by other
packages that add vim files, p.e. additional syntax files or filetypes.
%package data
Summary: Shared data for Vi and Vim
BuildArch: noarch
%description data
The subpackage is used for shipping files and directories, which need to be
shared between vim-minimal and vim-common packages.
%package -n xxd
Summary: A hex dump utility
%description -n xxd
xxd creates a hex dump of a given file or standard input. It can also convert
a hex dump back to its original binary form.
%if %{with default_editor}
%package default-editor
Summary: Set vim as the default editor
BuildArch: noarch
Conflicts: system-default-editor
Provides: system-default-editor
Requires: vim-enhanced
%description default-editor
This subpackage contains files needed to set Vim as the default editor.
%endif
%if %{with gui}
%package X11
Summary: The VIM version of the vi editor for the X Window System - GVim
# move evim manpage to common - remove the conflict after C11S is branched
Conflicts: %{name}-common < 2:9.1.1706-2
# devel of libICE, gtk3, libSM, libX11, libXpm and libXt are needed in buildroot
# so configure script can have correct macros enabled for GUI (#1603272)
# generic gnome toolkit for graphical support
@ -296,8 +319,6 @@ BuildRequires: libICE-devel
BuildRequires: libSM-devel
# core X11 protocol client library
BuildRequires: libX11-devel
# X PixMap library for X11 - for creating images in X PixMap format
BuildRequires: libXpm-devel
# X Toolkit Intrinsics library - working with widgets?
BuildRequires: libXt-devel
# for testing validity of appdata file
@ -310,25 +331,22 @@ Provides: vim(plugins-supported)
Provides: %{_bindir}/mergetool
Provides: %{_bindir}/gvim
%if 0%{?fedora} >= 40 || 0%{?rhel} > 9
# glib2 in Fedora 40 introduced a new function, which is not used in GVim, but it is present
# in compiled gvim binary as symbol when Vim is compiled with glib2-2.79.1
# there does not seem to be a better solution than version based requires on glib2...
# https://bugzilla.redhat.com/show_bug.cgi?id=2262371
Requires: glib2 >= 2.79.1
%endif
# GVIM graphics are based on GTK3
Requires: gtk3
# needed for icons (#226526)
Requires: hicolor-icon-theme
%if 0%{?fedora} >= 41
# needed for icons (#2277751)
Requires: gdk-pixbuf2-modules-extra%{?_isa}
%endif
# for getting/setting extended attributes - they are pairs (name:value)
# from inodes (files, dirs etc.)
Requires: libattr >= 2.4
Requires: vim-common = %{epoch}:%{version}-%{release}
Suggests: python3
Suggests: python3-libs
# suggest python3, python2, lua, ruby and perl packages because of their
# embedded functionality in Vim/GVim
%if "%{withlua}" == "1"
@ -339,9 +357,6 @@ Suggests: lua-libs
Suggests: perl-devel
%endif
Suggests: python3
Suggests: python3-libs
%if "%{withruby}" == "1"
Suggests: ruby
Suggests: ruby-libs
@ -361,71 +376,30 @@ with graphics and mouse capabilities. You'll also need to install the
vim-common package.
%endif
%package data
Summary: Shared data for Vi and Vim
BuildArch: noarch
# moved files from filesystem, common and minimal to data
# remove after F36 EOL+after release of CentOS Stream > 9
Conflicts: %{name}-common < 2:8.2.3642-2
Conflicts: %{name}-filesystem < 2:8.2.3642-2
Conflicts: %{name}-minimal < 2:8.2.3642-2
%description data
The subpackage is used for shipping files and directories, which need to be
shared between vim-minimal and vim-common packages.
%if %{with default_editor}
%package default-editor
Summary: Set vim as the default editor
BuildArch: noarch
Conflicts: system-default-editor
Provides: system-default-editor
Requires: vim-enhanced
%description default-editor
This subpackage contains files needed to set Vim as the default editor.
%endif
%package -n xxd
Summary: A hex dump utility
# the xxd related file were shipped in vim-common in the past,
# we have to conflict with the old ones
# remove this Conflicts once C10S is released
Conflicts: %{name}-common < 2:9.0.1440-2
%description -n xxd
xxd creates a hex dump of a given file or standard input. It can also convert
a hex dump back to its original binary form.
%prep
%setup -q -b 0 -n %{vimdir}
# use %%{__python3} macro for defining shebangs in python3 tests
sed -i -e 's,/usr/bin/python3,%{__python3},' %{PATCH3005}
sed -i -e 's,/usr/bin/python3,%{__python3},' %{PATCH6}
# fix rogue dependencies from sample code
chmod -x runtime/tools/mve.awk
%patch -P 2000 -p1 -b .fixkeys
%patch -P 2001 -p1 -b .spec-syntax
%if %{withhunspell}
%patch -P 2002 -p1
%endif
%patch -P 1 -p1 -b .fixkeys
%patch -P 2 -p1 -b .spec-syntax
perl -pi -e "s,bin/nawk,bin/awk,g" runtime/tools/mve.awk
# install spell files
%if %{withvimspell}
%{__tar} xjf %{SOURCE100}
%endif
%patch -P 3 -p1 -b .mantypo
%patch -P 4 -p1 -b .manpagefixes
%patch -P 5 -p1 -b .globalsyntax
%patch -P 6 -p1 -b .python-tests
%patch -P 7 -p1 -b .fips-warning
%patch -P 8 -p1 -b .copypaste
%patch -P 3000 -p1 -b .mantypo
%patch -P 3001 -p1 -b .manpagefixes
%patch -P 3002 -p1 -b .globalsyntax
%patch -P 3003 -p1 -b .python-tests
%patch -P 3004 -p1 -b .fips-warning
%patch -P 3005 -p1 -b .copypaste
%if %{withhunspell}
%patch -P 10000 -p1
%endif
%build
@ -470,75 +444,17 @@ perl -pi -e "s/vimrc/virc/" os_unix.h
--enable-fips-warning \
--enable-fail-if-missing \
--disable-canberra \
--without-wayland \
--enable-year2038 \
--disable-libsodium
%make_build
cp vim minimal-vim
make clean
mv -f os_unix.h.save os_unix.h
%if %{with gui}
# More configure options:
# --enable-xim - enabling X Input Method - international input module for X,
# it is for multibyte languages in Vim with X
# --enable-termtruecolor - use terminal with true colors
%configure CFLAGS="${CFLAGS} -DSYS_VIMRC_FILE='\"/etc/vimrc\"'" \
--with-features=huge \
--enable-python3interp=dynamic \
--with-python3-stable-abi \
--disable-tclinterp --with-x=yes \
--enable-xim --enable-multibyte \
--with-tlib=ncurses \
--enable-gtk3-check --enable-gui=gtk3 \
--enable-fips-warning \
--with-compiledby="<bugzilla@redhat.com>" --enable-cscope \
--with-modified-by="<bugzilla@redhat.com>" \
%if %{with gpm}
--enable-gpm \
%else
--disable-gpm \
%endif
%if "%{withnetbeans}" == "1"
--enable-netbeans \
%else
--disable-netbeans \
%endif
%if %{WITH_SELINUX}
--enable-selinux \
%else
--disable-selinux \
%endif
%if "%{withperl}" == "1"
--enable-perlinterp=dynamic \
--with-xsubpp=$(which xsubpp) \
%else
--disable-perlinterp \
%endif
%if "%{withruby}" == "1"
--enable-rubyinterp=dynamic \
%else
--disable-rubyinterp \
%endif
%if "%{withlua}" == "1"
--enable-luainterp=dynamic \
%else
--disable-luainterp \
%endif
%if %{with libsodium_crypt}
--enable-libsodium \
%else
--disable-libsodium \
%endif
--enable-fail-if-missing \
--enable-canberra
%make_build
cp vim gvim
make clean
%endif
%configure CFLAGS="${CFLAGS} -DSYS_VIMRC_FILE='\"/etc/vimrc\"'" \
--prefix=%{_prefix} --with-features=huge \
--enable-python3interp=dynamic \
@ -587,11 +503,79 @@ make clean
--disable-libsodium \
%endif
--enable-fail-if-missing \
--without-wayland \
--enable-year2038 \
--disable-canberra
%make_build
cp vim enhanced-vim
%if %{with gui}
# More configure options:
# --enable-xim - enabling X Input Method - international input module for X,
# it is for multibyte languages in Vim with X
# --enable-termtruecolor - use terminal with true colors
%configure CFLAGS="${CFLAGS} -DSYS_VIMRC_FILE='\"/etc/vimrc\"'" \
--with-features=huge \
--enable-python3interp=dynamic \
--with-python3-stable-abi \
--disable-tclinterp --with-x=yes \
--enable-xim --enable-multibyte \
--with-tlib=ncurses \
--enable-gtk3-check --enable-gui=gtk3 \
--enable-fips-warning \
--with-compiledby="<bugzilla@redhat.com>" --enable-cscope \
--with-modified-by="<bugzilla@redhat.com>" \
%if %{with gpm}
--enable-gpm \
%else
--disable-gpm \
%endif
%if "%{withnetbeans}" == "1"
--enable-netbeans \
%else
--disable-netbeans \
%endif
%if %{WITH_SELINUX}
--enable-selinux \
%else
--disable-selinux \
%endif
%if "%{withperl}" == "1"
--enable-perlinterp=dynamic \
--with-xsubpp=$(which xsubpp) \
%else
--disable-perlinterp \
%endif
%if "%{withruby}" == "1"
--enable-rubyinterp=dynamic \
%else
--disable-rubyinterp \
%endif
%if "%{withlua}" == "1"
--enable-luainterp=dynamic \
%else
--disable-luainterp \
%endif
%if %{with libsodium_crypt}
--enable-libsodium \
%else
--disable-libsodium \
%endif
--enable-fail-if-missing \
--with-wayland \
--enable-year2038 \
--enable-socketserver \
--enable-canberra
%make_build
cp vim gvim
make clean
%endif
%install
mkdir -p %{buildroot}/%{_bindir}
mkdir -p %{buildroot}/%{_datadir}/%{name}/vimfiles/{after,autoload,colors,compiler,doc,ftdetect,ftplugin,indent,keymap,lang,plugin,print,spell,syntax,tutor}
@ -600,12 +584,15 @@ cp -f %{SOURCE7} %{buildroot}/%{_datadir}/%{name}/vimfiles/template.spec
# Those aren't Linux info files but some binary files for Amiga:
rm -f README*.info
cd src
# related to the issue with `make depend`, auto/osdef.h
# has to be generated
make auto/osdef.h auto/gui_gtk_gresources.h auto/wayland/wlr-data-control-unstable-v1.h
# Adding STRIP=/bin/true, because Vim wants to strip the binaries by himself
# and put the stripped files into correct dirs. Build system (koji/brew)
# does it for us, so there is no need to do it in Vim
%make_install BINDIR=%{_bindir} STRIP=/bin/true
# make install creates vim binary and view symlink, they will be wrappers
# so remove them here
rm -f %{buildroot}%{_bindir}/{vim,view}
@ -692,10 +679,12 @@ EOF
appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/*.appdata.xml
for i in gvim.1 gex.1 gview.1 vimx.1; do
# do not put gvim.1, gview.1, eview.1, rgvim and rgview here - they already contains the link,
# and changing it here will rewrite original vim.1 - bz#2392178
for i in gex.1 vimx.1 evim.1; do
echo ".so man1/vim.1" > %{buildroot}/%{_mandir}/man1/$i
done
echo ".so man1/vimdiff.1" > %{buildroot}/%{_mandir}/man1/gvimdiff.1
echo ".so man1/vimtutor.1" > %{buildroot}/%{_mandir}/man1/gvimtutor.1
%else
# Remove files included in X11 subpackage, but built by default:
@ -705,9 +694,9 @@ rm %{buildroot}/%{_datadir}/icons/{hicolor,locolor}/*/apps/gvim.png
%endif
( cd %{buildroot}
ln -sf %{_libexecdir}/vi .%{_bindir}/rvi
ln -sf %{_libexecdir}/vi .%{_bindir}/rview
ln -sf %{_libexecdir}/vi .%{_bindir}/ex
ln -sf ../..%{_libexecdir}/vi .%{_bindir}/rvi
ln -sf ../..%{_libexecdir}/vi .%{_bindir}/rview
ln -sf ../..%{_libexecdir}/vi .%{_bindir}/ex
ln -sf vim .%{_bindir}/rvim
ln -sf vim .%{_bindir}/vimdiff
perl -pi -e "s,%{buildroot},," .%{_mandir}/man1/vim.1 .%{_mandir}/man1/vimtutor.1
@ -720,10 +709,13 @@ rm %{buildroot}/%{_datadir}/icons/{hicolor,locolor}/*/apps/gvim.png
ln -sf vim.1.gz .%{_mandir}/man1/vimdiff.1.gz
%if %{with gui}
ln -sf gvim ./%{_bindir}/evim
ln -sf gvim ./%{_bindir}/eview
ln -sf gvim ./%{_bindir}/gview
ln -sf gvim ./%{_bindir}/gex
ln -sf gvim ./%{_bindir}/evim
ln -sf gvim ./%{_bindir}/gvimdiff
ln -sf gvim ./%{_bindir}/rgvim
ln -sf gvim ./%{_bindir}/rgview
ln -sf gvim ./%{_bindir}/vimx
%if "%{desktop_file}" == "1"
@ -753,21 +745,6 @@ mkdir -p %{buildroot}%{_sysconfdir}
install -p -m644 %{SOURCE1} %{buildroot}%{_sysconfdir}/virc
install -p -m644 %{SOURCE2} %{buildroot}%{_sysconfdir}/vimrc
# if Vim isn't built for Fedora, use redhat augroup
%if 0%{?rhel} >= 7
sed -i -e "s/augroup fedora/augroup redhat/" %{buildroot}/%{_sysconfdir}/vimrc
sed -i -e "s/augroup fedora/augroup redhat/" %{buildroot}/%{_sysconfdir}/virc
%endif
%if %{with default_editor}
mkdir -p %{buildroot}/%{_sysconfdir}/profile.d
install -p -m644 %{SOURCE9} %{buildroot}/%{_sysconfdir}/profile.d/vim-default-editor.sh
install -p -m644 %{SOURCE10} %{buildroot}/%{_sysconfdir}/profile.d/vim-default-editor.csh
mkdir -p %{buildroot}/%{_datadir}/fish/vendor_conf.d/
install -p -m644 %{SOURCE11} %{buildroot}/%{_datadir}/fish/vendor_conf.d/vim-default-editor.fish
mkdir -p %{buildroot}/%{_datadir}/fish/vendor_functions.d/
%endif
mkdir -p %{buildroot}%{_rpmconfigdir}/macros.d/
install -p -m644 %{SOURCE8} %{buildroot}%{_rpmconfigdir}/macros.d/
@ -804,6 +781,21 @@ touch %{buildroot}/%{_datadir}/%{name}/vimfiles/doc/tags
rm %{buildroot}%{_datadir}/%{name}/%{vimdir}/LICENSE
rm %{buildroot}%{_datadir}/%{name}/%{vimdir}/README.txt
# if Vim isn't built for Fedora, use redhat augroup
%if 0%{?rhel} >= 7
sed -i -e "s/augroup fedora/augroup redhat/" %{buildroot}/%{_sysconfdir}/vimrc
sed -i -e "s/augroup fedora/augroup redhat/" %{buildroot}/%{_sysconfdir}/virc
%endif
%if %{with default_editor}
mkdir -p %{buildroot}/%{_sysconfdir}/profile.d
install -p -m644 %{SOURCE9} %{buildroot}/%{_sysconfdir}/profile.d/vim-default-editor.sh
install -p -m644 %{SOURCE10} %{buildroot}/%{_sysconfdir}/profile.d/vim-default-editor.csh
mkdir -p %{buildroot}/%{_datadir}/fish/vendor_conf.d/
install -p -m644 %{SOURCE11} %{buildroot}/%{_datadir}/fish/vendor_conf.d/vim-default-editor.fish
mkdir -p %{buildroot}/%{_datadir}/fish/vendor_functions.d/
%endif
# Refresh documentation helptags
%transfiletriggerin common -- %{_datadir}/%{name}/vimfiles/doc
@ -838,13 +830,8 @@ rm %{buildroot}%{_datadir}/%{name}/%{vimdir}/README.txt
%{_datadir}/%{name}/%{vimdir}/print
%{_datadir}/%{name}/%{vimdir}/syntax
%{_datadir}/%{name}/%{vimdir}/tutor
%if ! %{withvimspell}
%{_datadir}/%{name}/%{vimdir}/spell
%endif
%lang(af) %{_datadir}/%{name}/%{vimdir}/lang/af
%lang(am) %{_datadir}/%{name}/%{vimdir}/lang/am
%lang(ca) %{_datadir}/%{name}/%{vimdir}/lang/ca
%lang(cs) %{_datadir}/%{name}/%{vimdir}/lang/cs
%lang(cs.cp1250) %{_datadir}/%{name}/%{vimdir}/lang/cs.cp1250
@ -857,6 +844,7 @@ rm %{buildroot}%{_datadir}/%{name}/%{vimdir}/README.txt
%lang(fr) %{_datadir}/%{name}/%{vimdir}/lang/fr
%lang(ga) %{_datadir}/%{name}/%{vimdir}/lang/ga
%lang(hu) %{_datadir}/%{name}/%{vimdir}/lang/hu
%lang(hy) %{_datadir}/%{name}/%{vimdir}/lang/hy
%lang(it) %{_datadir}/%{name}/%{vimdir}/lang/it
%lang(ja) %{_datadir}/%{name}/%{vimdir}/lang/ja
%lang(ja.euc-jp) %{_datadir}/%{name}/%{vimdir}/lang/ja.euc-jp
@ -893,9 +881,13 @@ rm %{buildroot}%{_datadir}/%{name}/%{vimdir}/README.txt
%{_mandir}/man5/vimrc.*
%if %{with gui}
%{_mandir}/man1/eview.*
%{_mandir}/man1/evim.*
%{_mandir}/man1/gex.*
%{_mandir}/man1/gview.*
%{_mandir}/man1/gvim*
%{_mandir}/man1/rgvim.*
%{_mandir}/man1/rgview.*
%{_mandir}/man1/vimx.*
%endif
@ -908,63 +900,6 @@ rm %{buildroot}%{_datadir}/%{name}/%{vimdir}/README.txt
%lang(ru) %{_mandir}/ru/man1/*
%lang(tr) %{_mandir}/tr/man1/*
%if %{withvimspell}
%files spell
%dir %{_datadir}/%{name}/%{vimdir}/spell
%{_datadir}/%{name}/vim70/spell/cleanadd.vim
%lang(af) %{_datadir}/%{name}/%{vimdir}/spell/af.*
%lang(am) %{_datadir}/%{name}/%{vimdir}/spell/am.*
%lang(bg) %{_datadir}/%{name}/%{vimdir}/spell/bg.*
%lang(ca) %{_datadir}/%{name}/%{vimdir}/spell/ca.*
%lang(cs) %{_datadir}/%{name}/%{vimdir}/spell/cs.*
%lang(cy) %{_datadir}/%{name}/%{vimdir}/spell/cy.*
%lang(da) %{_datadir}/%{name}/%{vimdir}/spell/da.*
%lang(de) %{_datadir}/%{name}/%{vimdir}/spell/de.*
%lang(el) %{_datadir}/%{name}/%{vimdir}/spell/el.*
%lang(en) %{_datadir}/%{name}/%{vimdir}/spell/en.*
%lang(eo) %{_datadir}/%{name}/%{vimdir}/spell/eo.*
%lang(es) %{_datadir}/%{name}/%{vimdir}/spell/es.*
%lang(fo) %{_datadir}/%{name}/%{vimdir}/spell/fo.*
%lang(fr) %{_datadir}/%{name}/%{vimdir}/spell/fr.*
%lang(ga) %{_datadir}/%{name}/%{vimdir}/spell/ga.*
%lang(gd) %{_datadir}/%{name}/%{vimdir}/spell/gd.*
%lang(gl) %{_datadir}/%{name}/%{vimdir}/spell/gl.*
%lang(he) %{_datadir}/%{name}/%{vimdir}/spell/he.*
%lang(hr) %{_datadir}/%{name}/%{vimdir}/spell/hr.*
%lang(hu) %{_datadir}/%{name}/%{vimdir}/spell/hu.*
%lang(id) %{_datadir}/%{name}/%{vimdir}/spell/id.*
%lang(it) %{_datadir}/%{name}/%{vimdir}/spell/it.*
%lang(ku) %{_datadir}/%{name}/%{vimdir}/spell/ku.*
%lang(la) %{_datadir}/%{name}/%{vimdir}/spell/la.*
%lang(lt) %{_datadir}/%{name}/%{vimdir}/spell/lt.*
%lang(lv) %{_datadir}/%{name}/%{vimdir}/spell/lv.*
%lang(mg) %{_datadir}/%{name}/%{vimdir}/spell/mg.*
%lang(mi) %{_datadir}/%{name}/%{vimdir}/spell/mi.*
%lang(ms) %{_datadir}/%{name}/%{vimdir}/spell/ms.*
%lang(nb) %{_datadir}/%{name}/%{vimdir}/spell/nb.*
%lang(nl) %{_datadir}/%{name}/%{vimdir}/spell/nl.*
%lang(nn) %{_datadir}/%{name}/%{vimdir}/spell/nn.*
%lang(ny) %{_datadir}/%{name}/%{vimdir}/spell/ny.*
%lang(pl) %{_datadir}/%{name}/%{vimdir}/spell/pl.*
%lang(pt) %{_datadir}/%{name}/%{vimdir}/spell/pt.*
%lang(ro) %{_datadir}/%{name}/%{vimdir}/spell/ro.*
%lang(ru) %{_datadir}/%{name}/%{vimdir}/spell/ru.*
%lang(rw) %{_datadir}/%{name}/%{vimdir}/spell/rw.*
%lang(sk) %{_datadir}/%{name}/%{vimdir}/spell/sk.*
%lang(sl) %{_datadir}/%{name}/%{vimdir}/spell/sl.*
%lang(sr) %{_datadir}/%{name}/%{vimdir}/spell/sr.*
%lang(sv) %{_datadir}/%{name}/%{vimdir}/spell/sv.*
%lang(sw) %{_datadir}/%{name}/%{vimdir}/spell/sw.*
%lang(tet) %{_datadir}/%{name}/%{vimdir}/spell/tet.*
%lang(th) %{_datadir}/%{name}/%{vimdir}/spell/th.*
%lang(tl) %{_datadir}/%{name}/%{vimdir}/spell/tl.*
%lang(tn) %{_datadir}/%{name}/%{vimdir}/spell/tn.*
%lang(uk) %{_datadir}/%{name}/%{vimdir}/spell/uk.*
%lang(yi) %{_datadir}/%{name}/%{vimdir}/spell/yi.*
%lang(yi-tr) %{_datadir}/%{name}/%{vimdir}/spell/yi-tr.*
%lang(zu) %{_datadir}/%{name}/%{vimdir}/spell/zu.*
%endif
%files minimal
%config(noreplace) %{_sysconfdir}/virc
%{_bindir}/ex
@ -1025,7 +960,9 @@ rm %{buildroot}%{_datadir}/%{name}/%{vimdir}/README.txt
%{_bindir}/vimtutor
%{_bindir}/vimx
%{_bindir}/evim
%{_mandir}/man1/evim.*
%{_bindir}/eview
%{_bindir}/rgvim
%{_bindir}/rgview
%dir %{_datadir}/icons/hicolor
%dir %{_datadir}/icons/hicolor/*
%dir %{_datadir}/icons/hicolor/*/apps
@ -1058,6 +995,82 @@ rm %{buildroot}%{_datadir}/%{name}/%{vimdir}/README.txt
%changelog
* Fri Jan 09 2026 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.2068-1
- patchlevel 2068
* Fri Dec 19 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1999-1
- patchlevel 1999
* Fri Dec 12 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1972-1
- patchlevel 1972
* Fri Dec 05 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1952-1
- patchlevel 1952
* Fri Nov 14 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1914-1
- patchlevel 1914
* Fri Oct 31 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1888-1
- patchlevel 1888
* Fri Oct 17 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1863-1
- patchlevel 1863
* Fri Oct 10 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1845-1
- patchlevel 1845
* Fri Oct 03 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1818-1
- patchlevel 1818
* Mon Sep 29 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1775-2
- remove XPM support - GVim icons work without it
* Fri Sep 19 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1775-1
- patchlevel 1775
* Wed Sep 10 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1723-2
- Restore lost --remote-tab... functionality on wayland (fedora#2393716)
* Mon Sep 01 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1723-1
- patchlevel 1723
* Mon Sep 01 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1706-2
- broken /usr/bin/ex symlink in vim-9.1.1706-1.fc42 (fedora#2392249)
- vim-common has broken manpages (fedora#2392178)
* Fri Aug 29 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1706-1
- patchlevel 1706
* Mon Aug 11 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1623-1
- patchlevel 1623
* Fri Aug 01 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1591-1
- patchlevel 1591
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2:9.1.1552-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Wed Jul 16 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1552-1
- patchlevel 1552
* Mon Jul 14 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1537-2
- 2379759 - remove wayland-libs from vim and vi (fedora#2379759)
* Fri Jul 11 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1537-1
- patchlevel 1537
* Fri Jun 27 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1484-1
- patchlevel 1484
* Thu Jun 19 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1435-2
- FTBFS with Python 3.14 (fedora#2373314)
* Fri Jun 06 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1435-1
- patchlevel 1435
* Fri May 30 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1418-1
- patchlevel 1418
* Fri Apr 11 2025 Zdenek Dohnal <zdohnal@redhat.com> - 2:9.1.1291-1
- patchlevel 1291

10
vimrc
View file

@ -54,10 +54,14 @@ if has("autocmd")
" In text files, always limit the width of text to 78 characters
" autocmd BufRead *.txt set tw=78
" When editing a file, always jump to the last cursor position
" (taken from Vim's defaults.vim)
autocmd BufReadPost *
\ if line("'\"") > 0 && line ("'\"") <= line("$") |
\ exe "normal! g'\"" |
\ endif
\ let line = line("'\"")
\ | if line >= 1 && line <= line("$") && &filetype !~# 'commit'
\ && index(['xxd', 'gitrebase', 'tutor'], &filetype) == -1
\ && !&diff
\ | execute "normal! g`\""
\ | endif
" don't write swapfile on most commonly used directories for NFS mounts or USB sticks
autocmd BufNewFile,BufReadPre /media/*,/run/media/*,/mnt/* set directory=~/tmp,/var/tmp,/tmp
" start with spec file template