Download raw body.
NEW: editors/issy (resubmit)
Submitting editors/issy: a small console text editor written in Zig,
BSD 3-Clause licensed. Source at https://github.com/davidemerson/issy.
What it is:
A gap-buffer editor with syntax highlighting for 17 languages
(including TeX/LaTeX), multi-cursor editing, incremental search,
undo/redo, and PDF export via a hand-rolled PDF 1.4 writer with
TTF/OTF font embedding. No runtime dependencies beyond libc.
Build notes:
`zig build -Doptimize=ReleaseSafe`. BUILD_DEPENDS on lang/zig and
redirects the zig cache into ${WRKBUILD} via MAKE_ENV (same pattern
as lang/zig's own Makefile) so the ports build doesn't write to
$HOME. Unit tests run under `zig build test`, wired to do-test.
As far as I can tell this is the first port in the tree consuming
lang/zig as a build tool — lang/zig itself bootstraps from
CMake+LLVM — so there's no existing zig module to inherit. If you'd
like a lang/zig consumer module (à la lang/go) factored out, happy
to help.
Arches:
ONLY_FOR_ARCHS = amd64 arm64, matching lang/zig. powerpc64 is
excluded because lang/zig is marked BROKEN there.
Testing:
Re-submission. The first round failed at do-build with
`std.fs.Dir.realpath ... unsupported on this host` — Zig's stdlib
reaches for /proc/self/fd/ which OpenBSD lacks. Fixed upstream in
commit 4438a2d by switching to std.posix.getcwd (plain libc).
Build and test now verified end-to-end on a real OpenBSD 7.8 amd64
VM with lang/zig 0.15.1 from packages: 666/666 unit tests pass,
and all 14 integration suites under `bash tests/run_tests.sh`
pass. Upstream CI runs the same sequence on every push via
cross-platform-actions/action, so future regressions will block
main.
Upstream build.zig calls linkLibC() on OpenBSD so native builds go
through libc rather than raw syscalls.
Port directory attached as a gzipped tarball; extract into
ports/editors/ to produce ports/editors/issy/.
Thanks for the feedback last time,
David Emerson
NEW: editors/issy (resubmit)