diff options
Diffstat (limited to 'libre-testing/vi')
-rw-r--r-- | libre-testing/vi/PKGBUILD | 51 | ||||
-rw-r--r-- | libre-testing/vi/fix-tubesize-short-overflow.patch | 12 | ||||
-rw-r--r-- | libre-testing/vi/navkeys.patch | 55 | ||||
-rw-r--r-- | libre-testing/vi/preserve-dir.patch | 99 |
4 files changed, 217 insertions, 0 deletions
diff --git a/libre-testing/vi/PKGBUILD b/libre-testing/vi/PKGBUILD new file mode 100644 index 000000000..dc7860a51 --- /dev/null +++ b/libre-testing/vi/PKGBUILD @@ -0,0 +1,51 @@ +# Maintainer: Evangelos Foutras <evangelos@foutrelis.com> +# Contributor: Eric BĂ©langer <eric@archlinux.org> + +pkgname=vi +pkgver=070224 +pkgrel=3 +epoch=1 +pkgdesc="The original ex/vi text editor" +arch=('x86_64' 'ppc64le') +url="http://ex-vi.sourceforge.net/" +license=('custom:ex') +groups=('base') +depends=('ncurses') +optdepends=('s-nail: used by the preserve command for notification') +source=(https://sources.archlinux.org/other/$pkgname/ex-$pkgver.tar.xz{,.sig} + fix-tubesize-short-overflow.patch + navkeys.patch + preserve-dir.patch) +sha256sums=('c3e52dd44edd1f6bf0b52207f717c56149dc50aac0d131fff3851d589727f52f' + 'SKIP' + '42167fabebe30a13d594346b1d254db82090ba41742a9f35b8895d37092053f0' + '0e9e2d381f1d8cb86daae68462b3849825b003c08007725c0db9939d3d5bf58d' + 'f0ef9ed2ccea98bf47b08dd3faa2abb911b4e6c0579f5294e9d0e8742282ff65') +validpgpkeys=('86CFFCA918CF3AF47147588051E8B148A9999C34') + +prepare() { + cd ex-$pkgver + + patch -Np1 -i ../fix-tubesize-short-overflow.patch + patch -Np1 -i ../navkeys.patch + + # https://bugs.archlinux.org/task/20653 + patch -Np1 -i ../preserve-dir.patch +} + +build() { + cd ex-$pkgver + + make PREFIX=/usr LIBEXECDIR=/usr/lib/ex PRESERVEDIR=/var/lib/ex \ + TERMLIB=ncurses FEATURES="-DCHDIR -DFASTTAG -DUCVISUAL -DMB -DBIT8" +} + +package() { + cd ex-$pkgver + + make PREFIX=/usr LIBEXECDIR=/usr/lib/ex PRESERVEDIR=/var/lib/ex \ + INSTALL=/usr/bin/install DESTDIR="$pkgdir" install + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +# vim:set ts=2 sw=2 et: diff --git a/libre-testing/vi/fix-tubesize-short-overflow.patch b/libre-testing/vi/fix-tubesize-short-overflow.patch new file mode 100644 index 000000000..46cc2af28 --- /dev/null +++ b/libre-testing/vi/fix-tubesize-short-overflow.patch @@ -0,0 +1,12 @@ +diff -upr ex-070224.orig/ex_vis.h ex-070224/ex_vis.h +--- ex-070224.orig/ex_vis.h 2005-08-06 14:41:15.000000000 +0300 ++++ ex-070224/ex_vis.h 2015-05-02 20:41:13.938665281 +0300 +@@ -104,7 +104,7 @@ var enum { + */ + var short TUBELINES; + var short TUBECOLS; +-var short TUBESIZE; ++var int TUBESIZE; + + /* + * The screen in visual and crtopen is of varying size; the basic diff --git a/libre-testing/vi/navkeys.patch b/libre-testing/vi/navkeys.patch new file mode 100644 index 000000000..46924379c --- /dev/null +++ b/libre-testing/vi/navkeys.patch @@ -0,0 +1,55 @@ +diff -ru ex-050325/ex_tty.c ex-050325-du/ex_tty.c +--- ex-050325/ex_tty.c 2005-03-04 13:42:58.000000000 +0100 ++++ ex-050325-du/ex_tty.c 2009-06-25 20:06:57.000000000 +0200 +@@ -132,7 +132,8 @@ + &ED, &EI, &F0, &F1, &F2, &F3, &F4, &F5, &F6, &F7, &F8, &F9, + &HO, &IC, &IM, &IP, &KD, &KE, &KH, &KL, &KR, &KS, &KU, &LL, &ND, &xNL, + &xPC, &RC, &SC, &SE, &SF, &SO, &SR, &TA, &TE, &TI, &UP, &VB, &VS, &VE, +- &AL_PARM, &DL_PARM, &UP_PARM, &DOWN_PARM, &LEFT_PARM, &RIGHT_PARM ++ &AL_PARM, &DL_PARM, &UP_PARM, &DOWN_PARM, &LEFT_PARM, &RIGHT_PARM, ++ &kI, &kD, &kh, &at7, &kP, &kN + }; + bool *sflags[] = { + &AM, &BS, &DA, &DB, &EO, &HC, +@@ -170,7 +171,12 @@ + addmac1(KD, "j", "down", arrows, 1); + addmac1(KL, "h", "left", arrows, 1); + addmac1(KR, "l", "right", arrows, 1); +- addmac1(KH, "H", "home", arrows, 1); ++ addmac1(kI, "i", "insert", arrows, 1); ++ addmac1(kD, "x", "delete", arrows, 1); ++ addmac1(kh, "^", "home", arrows, 1); ++ addmac1(at7, "$", "end", arrows, 1); ++ addmac1(kP, "", "pgup", arrows, 1); ++ addmac1(kN, "", "pgdn", arrows, 1); + + /* + * Handle funny termcap capabilities +@@ -341,7 +347,7 @@ + *(*fp++) = flag; + namp += 2; + } while (*namp); +- namp = "albcbtcdceclcmcrcsdcdldmdoedeik0k1k2k3k4k5k6k7k8k9hoicimipkdkekhklkrkskullndnlpcrcscsesfsosrtatetiupvbvsveALDLUPDOLERI"; ++ namp = "albcbtcdceclcmcrcsdcdldmdoedeik0k1k2k3k4k5k6k7k8k9hoicimipkdkekhklkrkskullndnlpcrcscsesfsosrtatetiupvbvsveALDLUPDOLERIkIkDkh@7kPkN"; + sp = sstrs; + do { + string = tgetstr(namp, &aoftspace); +diff -ru ex-050325/ex_tty.h ex-050325-du/ex_tty.h +--- ex-050325/ex_tty.h 2004-12-01 19:21:06.000000000 +0100 ++++ ex-050325-du/ex_tty.h 2009-06-25 20:06:05.000000000 +0200 +@@ -183,6 +183,15 @@ + var bool XX; /* Tektronix 4025 insert line */ + /* X? is reserved for severely nauseous glitches */ + /* If there are enough of these we may need bit masks! */ ++/* ++ * Insert, Delete, Home, End, PgUp an PgDown keys ++ */ ++var char *kI; ++var char *kD; ++var char *kh; ++var char *at7; ++var char *kP; ++var char *kN; + + /* + * From the tty modes... diff --git a/libre-testing/vi/preserve-dir.patch b/libre-testing/vi/preserve-dir.patch new file mode 100644 index 000000000..ddfe8783a --- /dev/null +++ b/libre-testing/vi/preserve-dir.patch @@ -0,0 +1,99 @@ +diff -Naur ex-050325.ori/ex.1 ex-050325/ex.1 +--- ex-050325.ori/ex.1 2005-02-17 07:39:36.000000000 -0500 ++++ ex-050325/ex.1 2011-02-01 16:21:51.496666674 -0500 +@@ -1950,7 +1950,7 @@ + .B /var/tmp/Rx\fInnnnnnnnnn\fP + named buffer temporary + .TP +-.B /var/preserve ++.B /var/lib/ex + preservation directory + .SH DOCUMENTATION + The document +diff -Naur ex-050325.ori/expreserve.c ex-050325/expreserve.c +--- ex-050325.ori/expreserve.c 2005-03-04 07:44:46.000000000 -0500 ++++ ex-050325/expreserve.c 2011-02-01 16:22:06.583333342 -0500 +@@ -272,7 +272,7 @@ + #ifdef notdef + char pattern[] = "/usr/preserve/Exaa`XXXXX"; + #else +-char pattern[] = "/var/preserve/Exa`XXXXXXXXXX"; ++char pattern[] = "/var/lib/ex/Exa`XXXXXXXXXX"; + #endif + + /* +@@ -296,7 +296,7 @@ + timestamp = ctime(&time); + timestamp[16] = 0; /* blast from seconds on */ + putenv("MAILRC=/dev/null"); +- sprintf(cmd, "/bin/mail %s", pp->pw_name); ++ sprintf(cmd, "/usr/bin/mail %s", pp->pw_name); + setuid(getuid()); + mf = popen(cmd, "w"); + if (mf == NULL) +diff -Naur ex-050325.ori/exrecover.c ex-050325/exrecover.c +--- ex-050325.ori/exrecover.c 2005-03-04 07:44:46.000000000 -0500 ++++ ex-050325/exrecover.c 2011-02-01 16:21:51.496666674 -0500 +@@ -167,7 +167,7 @@ + #ifdef notdef + char mydir[] = "/usr/preserve"; + #else +-char mydir[] = "/var/preserve"; ++char mydir[] = "/var/lib/ex"; + #endif + + /* +diff -Naur ex-050325.ori/Makefile ex-050325/Makefile +--- ex-050325.ori/Makefile 2005-03-24 18:50:09.000000000 -0500 ++++ ex-050325/Makefile 2011-02-01 16:21:51.496666674 -0500 +@@ -83,7 +83,7 @@ + BINDIR = $(PREFIX)/bin + LIBEXECDIR = $(PREFIX)/libexec + MANDIR = $(PREFIX)/share/man +-PRESERVEDIR = /var/preserve ++PRESERVEDIR = /var/lib/ex + + # + # DESTDIR is prepended to the installation paths. It is mostly useful +diff -Naur ex-050325.ori/vi.1 ex-050325/vi.1 +--- ex-050325.ori/vi.1 2005-02-17 07:39:36.000000000 -0500 ++++ ex-050325/vi.1 2011-02-01 16:21:51.496666674 -0500 +@@ -979,7 +979,7 @@ + .B /var/tmp/Rx\fInnnnnnnnnn\fP + named buffer temporary + .TP +-.B /var/preserve ++.B /var/lib/ex + preservation directory + .SH SEE ALSO + ex(1), +--- ex-050325.original/ex.1 2012-01-27 20:43:00.602119283 +0100 ++++ ex-050325/ex.1 2012-01-27 20:47:24.535436516 +0100 +@@ -1932,10 +1932,10 @@ + Determines the terminal type. + .SH FILES + .TP +-.B /usr/libexec/expreserve ++.B /usr/lib/ex/expreserve + preserve command + .TP +-.B /usr/libexec/exrecover ++.B /usr/lib/ex/exrecover + recover command + .TP + .B /etc/termcap +--- ex-050325.original/vi.1 2012-01-27 20:43:00.602119283 +0100 ++++ ex-050325/vi.1 2012-01-27 20:46:33.815439611 +0100 +@@ -961,10 +961,10 @@ + Determines the terminal type. + .SH FILES + .TP +-.B /usr/libexec/expreserve ++.B /usr/lib/ex/expreserve + preserve command + .TP +-.B /usr/libexec/exrecover ++.B /usr/lib/ex/exrecover + recover command + .TP + .B /etc/termcap |