summaryrefslogtreecommitdiffstats
path: root/vis.spec
blob: 4f04d919048d024cd387053aa7e3160d23c207af (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#
# spec file for package vis
#
# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


%define test_version 0.5
Name:           vis
Version:        0.7+git
Release:        0
Summary:        An editor combining the strengths of both vi(m) and sam
License:        ISC
Group:          Productivity/Text/Editors
URL:            https://github.com/martanne/vis
#!RemoteAssetUrl: git+https://github.com/martanne/vis.git
#!RemoteAssetUrl: git+https://github.com/martanne/vis-test.git#v0.5
Source99:       vis-rpmlintrc
# PATCH-FEATURE-UPSTREAM 675-non-block_subproc.patch gh#martanne/vis#675 mcepl@suse.com
# adds function vis.commuincate which spawns a process and returns handles to its std files.
# seems to be the cause of crash in gh#martanne/vis#988
Patch0:         675-non-block_subproc.patch
# PATCH-FIX-UPSTREAM 699-no-crash-reenter-prompt.patch gh#martanne/vis#628 mcepl@suse.com
# don't crash on reenter of the prompt window
Patch1:         699-no-crash-reenter-prompt.patch
# PATCH-FIX-UPSTREAM 946-non-ASCII-completion.patch gh#martanne/vis#941 mcepl@suse.com
# make vis-menu handle non-ASCII characters better
Patch2:         946-non-ASCII-completion.patch
# # PATCH-FEATURE-UPSTREAM 948-soft-word-wrapping.patch gh#martanne/vis#948 mcepl@suse.com
# # adds soft word wrapping (linebreak in vim)
# Patch3:         948-soft-word-wrapping.patch
# PATCH-FEATURE-UPSTREAM 617-vis-highlight.patch gh#martanne/vis#617 mcepl@suse.com
# add vis-highlight command
Patch4:         617-vis-highlight.patch
# PATCH-FEATURE-UPSTREAM 959-flexible-insert-completion.patch gh#martanne/vis#959
# allow changes for https://github.com/jpaulogg/vis-ins-completion/tree/flex-completion
Patch5:         959-flexible-insert-completion.patch
# PATCH-FEATURE-UPSTREAM 977-makefile-multiple-targets.patch gh#martanne/vis#977
# lexers/makefile: Support multiple targets in a single definition
Patch6:         977-makefile-multiple-targets.patch
# PATCH-FIX-UPSTREAM 558-gf_reimplementation.patch gh#martanne/vis#558 mcepl@suse.com
# Implementation of the gf command, v2
# This patch seems to ignite gh#martanne/vis#827 again.
Patch7:         558-gf_reimplementation.patch
# PATCH-FIX-UPSTREAM no-EOL-to-wl-clipboard.patch mcepl@suse.com
# don't add \n on paste
# from https://lists.sr.ht/~martanne/devel/%3C20211231195631.12681-1-mcepl%40cepl.eu%3E
Patch8:         no-EOL-to-wl-clipboard.patch
# PATCH-FIX-UPSTREAM 881-linewise-inner-objects.patch gh#martanne/vis#881 mcepl@suse.com
# make linewise inner objects work differently from outer ones
Patch9:         881-linewise-inner-objects.patch
BuildRequires:  libselinux-devel
BuildRequires:  libtermkey-devel
BuildRequires:  ncurses-devel
BuildRequires:  tar
BuildRequires:  tre-devel
ExclusiveArch:  x86_64 %{ix86}
%if 0%{?suse_version} > 1500
BuildRequires:  lua54-devel
BuildRequires:  lua54-lpeg
Requires:       lua54
%else
BuildRequires:  lua-devel
BuildRequires:  lua-lpeg
Requires:       lua
%endif

%description
Vis aims to be a modern, legacy free, simple yet efficient editor combining the strengths of both vi(m) and sam.

It extends vi's modal editing with built-in support for multiple cursors/selections and combines it with sam's structural regular expression based command language.

%prep
%setup -q -n vis -c -T
cp -a %{_sourcedir}/vis/* .
cp -a %{_sourcedir}/vis-test/* test/
%autopatch -p1

%build
export CFLAGS="%{optflags} -fcommon"
%configure
%make_build debug

%install
%make_install

%check
# According to the debian/rules:
# The vim tests harness is not solid, let's skip them for the moment.
# Upstream mentioned the possibility of phasing them out entirely.
%make_build -C test/core
# No busted yet make -C test/lua
%make_build -C test/vis

%files
%{_bindir}/vis*
%{_datadir}/vis
%{_mandir}/man1/*
%dir %{_datadir}/doc/vis
%{_datadir}/doc/vis/LICENSE
%{_datadir}/doc/vis/README.md

%changelog