From nobody Tue Mar 14 01:09:41 2023
X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PbFmk1ckqz3yRc9;
Tue, 14 Mar 2023 01:09:42 +0000 (UTC)
(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
client-signature RSA-PSS (4096 bits) client-digest SHA256)
(Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK))
by mx1.freebsd.org (Postfix) with ESMTPS id 4PbFmk10lwz3q8P;
Tue, 14 Mar 2023 01:09:42 +0000 (UTC)
(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
t=1678756182;
h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
to:to:cc:mime-version:mime-version:content-type:content-type:
content-transfer-encoding:content-transfer-encoding;
bh=f6hqn/wWCbpyVUp/j28ouYi5K3e/jhK0rrh8ANSGpXY=;
b=QqD1H3HUaNUa8ujWkKITht3L1IeHtbjBUzGF6O6Lm8/drFwPgBn2BS2ydVqYWhSi0UXlgP
Zn47VJP+cqZkWl0F4gnxJ9vCDY7By1d0eVPbHR7q7Kqg/7PbQkLRgPiZoahGbwYRhrGRcB
ivHck2BIXZR7pezX8d9S5cHcQ65dN4o4wIMkW/rKxpG4DOSfoDFkGIV2AqzE2/9zEWBzJm
DkqzUhW8Df0xYZkkz9h2PvrtEFyFUA1LcrCLYdE5ReiipDdP4dKmyiz4omxPKixGscQylA
tXlht+1QbipujPrP0colo7WnZxw7VlJD/hXpw819SLwoECtCk/n87t4mnyCazA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
s=dkim; t=1678756182;
h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
to:to:cc:mime-version:mime-version:content-type:content-type:
content-transfer-encoding:content-transfer-encoding;
bh=f6hqn/wWCbpyVUp/j28ouYi5K3e/jhK0rrh8ANSGpXY=;
b=Ix047cjBt61T8MrhZaLkaDgT7Ki2ZYbLOt6xTP3unz5sRLxf7EgyQJc02YyC0w6hxnGlug
errdGkBoMia5OmY7ki3hHahLfeNJVPI3evnQVb4j/wMj5ZT/PUgiXCC2m0f0q0yTWDlUhZ
4BFKNlTLvE62gblSHBpnttmBnnHM0kG36OPchjbtOmoe1ongSVugHbhhGCBg/FfHxc2I7j
6kgS+uc3C3Xn4wICVH5Robh1HgQUhw8lcpRmdSoxey0gSOxiMf09iI6LXmBljsonNuDzmX
mbQ8C2xJJSvYoYu308778ghy0kKj9FKGyeJCoaQVOnOim8o1twJnXC4PMtVCUQ==
ARC-Authentication-Results: i=1;
mx1.freebsd.org;
none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1678756182; a=rsa-sha256; cv=none;
b=nTh5G6S88PmLhUGcXAmEwH6CtX5VWFWNwXdgxmhfXjC8RPzXVFfKFHq/lQxOTt6730XqIw
yd2sNEeaCvEeh32oNlYMAEGvu4kQun/IixV/PbYmkf/a0PXrLk46Q6lSxod4oBjTT5F2rc
bsmprV7tYULUHcdS9KNbqMAbYIRxtnOOMvdImNjNIBIQGyAUO4AbfLDC+ImOaY1PPMpqy7
CrSPp8U4nW4uB8GS9+NahNv3de5CK4+iPdGPbN0QOG7riIb0JnBrSq639YwmvK4wMRp+lj
SQ0IZXdujhgafse4u1LG7/DjQ7ZLfREBJcz5pn2uH7V6FAUYRE59rTtbdrtvfQ==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
(Client did not present a certificate)
by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PbFmj6s4bzGG5;
Tue, 14 Mar 2023 01:09:41 +0000 (UTC)
(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32E19f3m045236;
Tue, 14 Mar 2023 01:09:41 GMT
(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32E19feb045235;
Tue, 14 Mar 2023 01:09:41 GMT
(envelope-from git)
Date: Tue, 14 Mar 2023 01:09:41 GMT
Message-Id: <202303140109.32E19feb045235@gitrepo.freebsd.org>
To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org,
dev-commits-ports-main@FreeBSD.org
From: Koichiro Iwao
Subject: git: 01820ee3d085 - main - editors/vis: New port: Vi-like editor based on Plan 9's structural regular expressions
List-Id: Commits to the main branch of the FreeBSD ports repository
List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main
List-Help:
List-Post:
List-Subscribe:
List-Unsubscribe:
Sender: owner-dev-commits-ports-main@freebsd.org
X-BeenThere: dev-commits-ports-main@freebsd.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: meta
X-Git-Repository: ports
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: 01820ee3d085596d83efa14d8dc0efaa5856a9cd
Auto-Submitted: auto-generated
X-ThisMailContainsUnwantedMimeParts: N
The branch main has been updated by meta:
URL: https://cgit.FreeBSD.org/ports/commit/?id=01820ee3d085596d83efa14d8dc0efaa5856a9cd
commit 01820ee3d085596d83efa14d8dc0efaa5856a9cd
Author: Jesús Daniel Colmenares Oviedo
AuthorDate: 2023-03-09 11:09:07 +0000
Commit: Koichiro Iwao
CommitDate: 2023-03-14 01:07:55 +0000
editors/vis: New port: Vi-like editor based on Plan 9's structural regular expressions
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.
Efficient syntax highlighting is provided using Parsing Expression
Grammars, which can be conveniently expressed using Lua in the form
of LPeg.
The editor core is written in a reasonable amount of clean, modern
and legacy-free C code, enabling it to run in resource-constrained
environments. There is also a Lua API for in-process extensions.
Vis strives to be simple and focuses on its core task: efficient
text management. Clipboard and digraph handling as well as a fuzzy
file open dialog are all provided by independent utilities.
WWW: https://www.brain-dump.org/projects/vis/
PR: 270063
---
editors/Makefile | 1 +
editors/vis/Makefile | 61 +++++++++++++
editors/vis/distinfo | 5 ++
editors/vis/files/patch-configure | 19 +++++
editors/vis/files/patch-man_vis.1 | 11 +++
editors/vis/pkg-descr | 18 ++++
editors/vis/pkg-message | 7 ++
editors/vis/pkg-plist | 174 ++++++++++++++++++++++++++++++++++++++
8 files changed, 296 insertions(+)
diff --git a/editors/Makefile b/editors/Makefile
index 3dffef28cbaa..9a101dcfafe9 100644
--- a/editors/Makefile
+++ b/editors/Makefile
@@ -277,6 +277,7 @@
SUBDIR += vile
SUBDIR += vim
SUBDIR += vim-colorschemes-legacy
+ SUBDIR += vis
SUBDIR += vscode
SUBDIR += web-mode
SUBDIR += with-editor
diff --git a/editors/vis/Makefile b/editors/vis/Makefile
new file mode 100644
index 000000000000..72eb8c5c7690
--- /dev/null
+++ b/editors/vis/Makefile
@@ -0,0 +1,61 @@
+PORTNAME= vis
+DISTVERSION= 0.8
+CATEGORIES= editors
+MASTER_SITES= https://github.com/martanne/${PORTNAME}/releases/download/v${VIS_VER}/:source \
+ https://github.com/martanne/${PORTNAME}-test/releases/download/v${VIS_TEST_VER}/:test
+DISTFILES= ${PORTNAME}-${VIS_VER}${EXTRACT_SUFX}:source \
+ ${VIS_TEST_NAME}-${VIS_TEST_VER}${EXTRACT_SUFX}:test
+
+MAINTAINER= DtxdF@disroot.org
+COMMENT= Vi-like editor based on Plan 9's structural regular expressions
+WWW= https://www.brain-dump.org/projects/vis/
+
+LICENSE= CC0-1.0 ISCL MIT
+LICENSE_COMB= multi
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+LIB_DEPENDS+= libtermkey.so:devel/libtermkey
+TEST_DEPENDS= vim>0:editors/vim
+
+USES+= gmake lua pkgconfig
+
+HAS_CONFIGURE= yes
+CONFIGURE_ARGS= --prefix=${PREFIX}
+
+INSTALL_TARGET= install-strip
+TEST_TARGET= test
+
+OPTIONS_DEFINE= LPEG NLS TRE
+OPTIONS_DEFAULT= LPEG TRE
+OPTIONS_RADIO= CLIPBOARD
+OPTIONS_RADIO_CLIPBOARD= WL_COPY XCLIP XSEL
+OPTIONS_SUB= yes
+
+LPEG_DESC= Syntax highlighting
+TRE_DESC= More memory efficient regex search
+WL_COPY_DESC= Use wl-copy
+XCLIP_DESC= Use xclip
+XSEL_DESC= Use xsel-conrad
+
+LPEG_RUN_DEPENDS= ${LUA_PKGNAMEPREFIX}lpeg>=0.8.1:devel/lua-lpeg@${LUA_FLAVOR}
+NLS_USES= gettext-runtime
+TRE_IMPLIES= NLS
+TRE_LIB_DEPENDS= libtre.so:textproc/libtre
+WL_COPY_RUN_DEPENDS= wl-clipboard>0:x11/wl-clipboard
+XCLIP_RUN_DEPENDS= xclip>0:x11/xclip
+XSEL_RUN_DEPENDS= xsel-conrad>0:x11/xsel-conrad
+
+# To be consistent with VIS_TEST_VERSION.
+VIS_VER= ${DISTVERSION}
+VIS_TEST_VER= 0.5
+VIS_TEST_NAME= ${PORTNAME}-test
+
+post-extract:
+ ${RMDIR} ${WRKSRC}/test
+ ${MV} ${WRKDIR}/${VIS_TEST_NAME}-${VIS_TEST_VER}/ ${WRKSRC}/test
+
+post-install:
+ @(cd ${STAGEDIR}${PREFIX}/bin; ${MV} vis vise)
+ @(cd ${STAGEDIR}${PREFIX}/share/man/man1; ${MV} vis.1 vise.1)
+
+.include
diff --git a/editors/vis/distinfo b/editors/vis/distinfo
new file mode 100644
index 000000000000..a9e5ef1236f7
--- /dev/null
+++ b/editors/vis/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1677331839
+SHA256 (vis-0.8.tar.gz) = 61b10d40f15c4db2ce16e9acf291dbb762da4cbccf0cf2a80b28d9ac998a39bd
+SIZE (vis-0.8.tar.gz) = 404496
+SHA256 (vis-test-0.5.tar.gz) = 0098ad933ec1f87bba4b2da9fa84e00cab5612ec3623622c1e5003a245aec7d1
+SIZE (vis-test-0.5.tar.gz) = 99314
diff --git a/editors/vis/files/patch-configure b/editors/vis/files/patch-configure
new file mode 100644
index 000000000000..e5068c93cec1
--- /dev/null
+++ b/editors/vis/files/patch-configure
@@ -0,0 +1,19 @@
+--- configure.orig 2023-02-25 11:16:23 UTC
++++ configure
+@@ -236,7 +236,6 @@ esac
+ tryflag CFLAGS -pipe
+
+ # Try flags to optimize binary size
+-tryflag CFLAGS -O2
+ tryflag CFLAGS -ffunction-sections
+ tryflag CFLAGS -fdata-sections
+ tryldflag LDFLAGS_AUTO -Wl,--gc-sections
+@@ -443,7 +442,7 @@ int main(int argc, char *argv[]) {
+ }
+ EOF
+
+- for liblua in lua lua5.4 lua5.3 lua5.2 lua-5.3 lua-5.2 lua54 lua53 lua52; do
++ for liblua in lua lua5.4 lua5.3 lua5.2 lua-5.4 lua-5.3 lua-5.2 lua54 lua53 lua52; do
+ printf " checking for %s... " "$liblua"
+
+ if test "$have_pkgconfig" = "yes" ; then
diff --git a/editors/vis/files/patch-man_vis.1 b/editors/vis/files/patch-man_vis.1
new file mode 100644
index 000000000000..93195eefb294
--- /dev/null
+++ b/editors/vis/files/patch-man_vis.1
@@ -0,0 +1,11 @@
+--- man/vis.1.orig 2023-02-24 18:24:37 UTC
++++ man/vis.1
+@@ -260,7 +260,7 @@ currently defers regular expression matching to the un
+ It uses what POSIX refers to as
+ .Dq Extended Regular Expressions
+ as described in
+-.Xr regex 7 .
++.Xr re_format 7 .
+ The anchors
+ .Ic ^
+ and
diff --git a/editors/vis/pkg-descr b/editors/vis/pkg-descr
new file mode 100644
index 000000000000..2d87ea204362
--- /dev/null
+++ b/editors/vis/pkg-descr
@@ -0,0 +1,18 @@
+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.
+
+Efficient syntax highlighting is provided using Parsing Expression
+Grammars, which can be conveniently expressed using Lua in the form
+of LPeg.
+
+The editor core is written in a reasonable amount of clean, modern
+and legacy-free C code, enabling it to run in resource-constrained
+environments. There is also a Lua API for in-process extensions.
+
+Vis strives to be simple and focuses on its core task: efficient
+text management. Clipboard and digraph handling as well as a fuzzy
+file open dialog are all provided by independent utilities.
diff --git a/editors/vis/pkg-message b/editors/vis/pkg-message
new file mode 100644
index 000000000000..ce6da775401b
--- /dev/null
+++ b/editors/vis/pkg-message
@@ -0,0 +1,7 @@
+[
+{ type: install
+ message: <