diff --git a/editors/kakoune/Makefile b/editors/kakoune/Makefile new file mode 100644 index 00000000000..881ddb373b6 --- /dev/null +++ b/editors/kakoune/Makefile @@ -0,0 +1,30 @@ +# $OpenBSD: Makefile,v 1.1.1.1 2020/06/14 13:07:04 solene Exp $ + +COMMENT = modal code editor with a focus on interactivity + +V = 2020.01.16 +DISTNAME = kakoune-${V} + +CATEGORIES = editors + +HOMEPAGE = https://kakoune.org/ + +MAINTAINER = Frederic Galusik + +WANTLIB = ${COMPILER_LIBCXX} c curses m + +MASTER_SITES = https://github.com/mawww/kakoune/releases/download/v${V}/ + +EXTRACT_SUFX = .tar.bz2 + +# Public domain +PERMIT_PACKAGE = Yes + +# -std=c++17 +COMPILER = base-clang ports-gcc +MAKE_ENV = CXX="${CXX}" CXXFLAGS="${CXXFLAGS}" gzip_man=no +FAKE_FLAGS = PREFIX="${TRUEPREFIX}" + +USE_GMAKE = Yes + +.include diff --git a/editors/kakoune/distinfo b/editors/kakoune/distinfo new file mode 100644 index 00000000000..6ceeeb1b0a8 --- /dev/null +++ b/editors/kakoune/distinfo @@ -0,0 +1,2 @@ +SHA256 (kakoune-2020.01.16.tar.bz2) = oJTxaJ8CKDCPYx43GzgrDAUiOR/ItsI6bLxx/0BKDa4= +SIZE (kakoune-2020.01.16.tar.bz2) = 478509 diff --git a/editors/kakoune/patches/patch-src_Makefile b/editors/kakoune/patches/patch-src_Makefile new file mode 100644 index 00000000000..c10f0a305cd --- /dev/null +++ b/editors/kakoune/patches/patch-src_Makefile @@ -0,0 +1,19 @@ +$OpenBSD: patch-src_Makefile,v 1.1.1.1 2020/06/14 13:07:04 solene Exp $ + +Remove optimization flags for debug or release builds + +Index: src/Makefile +--- src/Makefile.orig ++++ src/Makefile +@@ -12,11 +12,9 @@ endif + + ifeq ($(debug),yes) + CPPFLAGS += -DKAK_DEBUG +- CXXFLAGS += -O0 + suffix := .debug + else + ifeq ($(debug),no) +- CXXFLAGS += -O3 + suffix := .opt + else + $(error debug should be either yes or no) diff --git a/editors/kakoune/pkg/DESCR b/editors/kakoune/pkg/DESCR new file mode 100644 index 00000000000..7eeb9deabfe --- /dev/null +++ b/editors/kakoune/pkg/DESCR @@ -0,0 +1,18 @@ +Kakoune is a code editor that implements Vi's "keystrokes as a text +editing language" model. As it's also a modal editor, it is somewhat +similar to the Vim editor (after which Kakoune was originally +inspired). + +Kakoune can operate in two modes, normal and insertion. In insertion +mode, keys are directly inserted into the current buffer. In normal +mode, keys are used to manipulate the current selection and to enter +insertion mode. + +Kakoune has a strong focus on interactivity, most commands provide +immediate and incremental results, while still being competitive (as +in keystroke count) with Vim. + +Kakoune works on selections, which are oriented, inclusive range of +characters, selections have an anchor and a cursor character. Most +commands move both of them, except when extending selection where the +anchor character stays fixed and the cursor one moves around. diff --git a/editors/kakoune/pkg/PLIST b/editors/kakoune/pkg/PLIST new file mode 100644 index 00000000000..60f8be43bac --- /dev/null +++ b/editors/kakoune/pkg/PLIST @@ -0,0 +1,161 @@ +@comment $OpenBSD: PLIST,v 1.1.1.1 2020/06/14 13:07:04 solene Exp $ +@bin bin/kak +@man man/man1/kak.1 +share/doc/kak/ +share/doc/kak/README.asciidoc +share/kak/ +share/kak/autoload +share/kak/colors/ +share/kak/colors/base16.kak +share/kak/colors/default.kak +share/kak/colors/desertex.kak +share/kak/colors/github.kak +share/kak/colors/greyscale.kak +share/kak/colors/gruvbox.kak +share/kak/colors/kaleidoscope-dark.kak +share/kak/colors/kaleidoscope-light.kak +share/kak/colors/lucius.kak +share/kak/colors/palenight.kak +share/kak/colors/plain.kak +share/kak/colors/red-phoenix.kak +share/kak/colors/reeder.kak +share/kak/colors/solarized-dark-termcolors.kak +share/kak/colors/solarized-dark.kak +share/kak/colors/solarized-light-termcolors.kak +share/kak/colors/solarized-light.kak +share/kak/colors/tomorrow-night.kak +share/kak/colors/zenburn.kak +share/kak/doc/ +share/kak/doc/buffers.asciidoc +share/kak/doc/changelog.asciidoc +share/kak/doc/command-parsing.asciidoc +share/kak/doc/commands.asciidoc +share/kak/doc/execeval.asciidoc +share/kak/doc/expansions.asciidoc +share/kak/doc/faces.asciidoc +share/kak/doc/faq.asciidoc +share/kak/doc/highlighters.asciidoc +share/kak/doc/hooks.asciidoc +share/kak/doc/keymap.asciidoc +share/kak/doc/keys.asciidoc +share/kak/doc/mapping.asciidoc +share/kak/doc/modes.asciidoc +share/kak/doc/options.asciidoc +share/kak/doc/regex.asciidoc +share/kak/doc/registers.asciidoc +share/kak/doc/scopes.asciidoc +share/kak/kakrc +share/kak/rc/ +share/kak/rc/detection/ +share/kak/rc/detection/editorconfig.kak +share/kak/rc/detection/file.kak +share/kak/rc/detection/modeline.kak +share/kak/rc/filetype/ +share/kak/rc/filetype/arch-linux.kak +share/kak/rc/filetype/asciidoc.kak +share/kak/rc/filetype/awk.kak +share/kak/rc/filetype/c-family.kak +share/kak/rc/filetype/cabal.kak +share/kak/rc/filetype/clojure.kak +share/kak/rc/filetype/cmake.kak +share/kak/rc/filetype/coffee.kak +share/kak/rc/filetype/crystal.kak +share/kak/rc/filetype/css.kak +share/kak/rc/filetype/cucumber.kak +share/kak/rc/filetype/d.kak +share/kak/rc/filetype/dart.kak +share/kak/rc/filetype/dhall.kak +share/kak/rc/filetype/diff.kak +share/kak/rc/filetype/dockerfile.kak +share/kak/rc/filetype/elixir.kak +share/kak/rc/filetype/elm.kak +share/kak/rc/filetype/etc.kak +share/kak/rc/filetype/exherbo.kak +share/kak/rc/filetype/fish.kak +share/kak/rc/filetype/fsharp.kak +share/kak/rc/filetype/gas.kak +share/kak/rc/filetype/git.kak +share/kak/rc/filetype/gluon.kak +share/kak/rc/filetype/go.kak +share/kak/rc/filetype/haml.kak +share/kak/rc/filetype/haskell.kak +share/kak/rc/filetype/hbs.kak +share/kak/rc/filetype/html.kak +share/kak/rc/filetype/i3.kak +share/kak/rc/filetype/ini.kak +share/kak/rc/filetype/java.kak +share/kak/rc/filetype/javascript.kak +share/kak/rc/filetype/jinja.kak +share/kak/rc/filetype/json.kak +share/kak/rc/filetype/julia.kak +share/kak/rc/filetype/just.kak +share/kak/rc/filetype/kakrc.kak +share/kak/rc/filetype/kickstart.kak +share/kak/rc/filetype/latex.kak +share/kak/rc/filetype/ledger.kak +share/kak/rc/filetype/lisp.kak +share/kak/rc/filetype/lua.kak +share/kak/rc/filetype/mail.kak +share/kak/rc/filetype/makefile.kak +share/kak/rc/filetype/markdown.kak +share/kak/rc/filetype/mercurial.kak +share/kak/rc/filetype/moon.kak +share/kak/rc/filetype/nim.kak +share/kak/rc/filetype/nix.kak +share/kak/rc/filetype/ocaml.kak +share/kak/rc/filetype/perl.kak +share/kak/rc/filetype/php.kak +share/kak/rc/filetype/pony.kak +share/kak/rc/filetype/protobuf.kak +share/kak/rc/filetype/pug.kak +share/kak/rc/filetype/python.kak +share/kak/rc/filetype/r.kak +share/kak/rc/filetype/ragel.kak +share/kak/rc/filetype/restructuredtext.kak +share/kak/rc/filetype/ruby.kak +share/kak/rc/filetype/rust.kak +share/kak/rc/filetype/sass.kak +share/kak/rc/filetype/scala.kak +share/kak/rc/filetype/scheme.kak +share/kak/rc/filetype/scss.kak +share/kak/rc/filetype/sh.kak +share/kak/rc/filetype/sql.kak +share/kak/rc/filetype/swift.kak +share/kak/rc/filetype/systemd.kak +share/kak/rc/filetype/taskpaper.kak +share/kak/rc/filetype/terraform.kak +share/kak/rc/filetype/toml.kak +share/kak/rc/filetype/troff.kak +share/kak/rc/filetype/tupfile.kak +share/kak/rc/filetype/void-linux.kak +share/kak/rc/filetype/yaml.kak +share/kak/rc/tools/ +share/kak/rc/tools/autorestore.kak +share/kak/rc/tools/autowrap.kak +share/kak/rc/tools/clang.kak +share/kak/rc/tools/comment.kak +share/kak/rc/tools/ctags.kak +share/kak/rc/tools/doc.kak +share/kak/rc/tools/format.kak +share/kak/rc/tools/git.kak +share/kak/rc/tools/go/ +share/kak/rc/tools/go/go-tools.kak +share/kak/rc/tools/grep.kak +share/kak/rc/tools/lint.kak +share/kak/rc/tools/make.kak +share/kak/rc/tools/man.kak +share/kak/rc/tools/python/ +share/kak/rc/tools/python/jedi.kak +share/kak/rc/tools/rust/ +share/kak/rc/tools/rust/racer.kak +share/kak/rc/tools/spell.kak +share/kak/rc/windowing/ +share/kak/rc/windowing/iterm.kak +share/kak/rc/windowing/kitty.kak +share/kak/rc/windowing/new-client.kak +share/kak/rc/windowing/repl/ +share/kak/rc/windowing/repl/tmux.kak +share/kak/rc/windowing/repl/x11.kak +share/kak/rc/windowing/screen.kak +share/kak/rc/windowing/tmux.kak +share/kak/rc/windowing/x11.kak