svn commit: r491303 - in head/editors: . parinfer-rust parinfer-rust/files
Tobias Kortkamp
tobik at FreeBSD.org
Sat Jan 26 17:03:50 UTC 2019
Author: tobik
Date: Sat Jan 26 17:03:48 2019
New Revision: 491303
URL: https://svnweb.freebsd.org/changeset/ports/491303
Log:
New port: editors/parinfer-rust
A full-featured, super fast implementation of Shaun Lebron's parinfer.
Parinfer is a proof-of-concept editor mode for Lisp programming
languages. It simplifies the way we write Lisp by auto-adjusting
parens when indentation changes and vice versa. The hope is to
make basic Lisp-editing easier for newcomers and experts alike,
while still allowing existing plugins like Paredit to satisfy the
need for more advanced operations.
Parinfer-rust comes with plugins for Kakoune, Vim8, and Neovim.
The Rust library can be called from other editors that can load
dynamic libraries.
This plugin implements "smart" mode. Rather than switching between
"paren" mode and "indent" mode, parinfer uses information about how
the user is changing the file to decide what to do.
WWW: https://github.com/eraserhd/parinfer-rust
Added:
head/editors/parinfer-rust/
head/editors/parinfer-rust/Makefile (contents, props changed)
head/editors/parinfer-rust/distinfo (contents, props changed)
head/editors/parinfer-rust/files/
head/editors/parinfer-rust/files/patch-plugin_parinfer.vim (contents, props changed)
head/editors/parinfer-rust/pkg-descr (contents, props changed)
Modified:
head/editors/Makefile
Modified: head/editors/Makefile
==============================================================================
--- head/editors/Makefile Sat Jan 26 16:39:44 2019 (r491302)
+++ head/editors/Makefile Sat Jan 26 17:03:48 2019 (r491303)
@@ -207,6 +207,7 @@
SUBDIR += p5-Proc-InvokeEditor
SUBDIR += p5-Vimana
SUBDIR += paredit-mode.el
+ SUBDIR += parinfer-rust
SUBDIR += pdfedit
SUBDIR += pico-alpine
SUBDIR += picpas
Added: head/editors/parinfer-rust/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/editors/parinfer-rust/Makefile Sat Jan 26 17:03:48 2019 (r491303)
@@ -0,0 +1,65 @@
+# $FreeBSD$
+
+PORTNAME= parinfer-rust
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.2.0-198
+DISTVERSIONSUFFIX= -g506ae2b
+CATEGORIES= editors
+
+MAINTAINER= tobik at FreeBSD.org
+COMMENT= Infer parentheses for Clojure, Lisp, and Scheme
+
+LICENSE= ISCL
+LICENSE_FILE= ${WRKSRC}/LICENSE.md
+
+USES= cargo
+USE_GITHUB= yes
+GH_ACCOUNT= eraserhd
+USE_LDCONFIG= yes
+
+CARGO_CRATES= base-x-0.2.2 \
+ discard-1.0.3 \
+ dtoa-0.4.2 \
+ getopts-0.2.18 \
+ itoa-0.4.1 \
+ libc-0.2.40 \
+ proc-macro2-0.2.3 \
+ proc-macro2-0.3.8 \
+ quote-0.4.2 \
+ quote-0.5.2 \
+ serde-1.0.55 \
+ serde_derive-1.0.55 \
+ serde_json-1.0.17 \
+ stdweb-0.4.5 \
+ stdweb-derive-0.4.0 \
+ stdweb-internal-macros-0.1.0 \
+ syn-0.12.15 \
+ syn-0.13.10 \
+ unicode-segmentation-1.2.1 \
+ unicode-width-0.1.5 \
+ unicode-xid-0.1.0 \
+ winapi-0.3.6 \
+ winapi-i686-pc-windows-gnu-0.4.0 \
+ winapi-x86_64-pc-windows-gnu-0.4.0
+
+PLIST_FILES= bin/parinfer-rust \
+ lib/libparinfer_rust.so \
+ share/kak/rc/extra/parinfer.kak \
+ share/vim/vimfiles/doc/parinfer.txt \
+ share/vim/vimfiles/plugin/parinfer.vim
+
+post-install:
+ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/parinfer-rust
+ ${INSTALL_LIB} ${CARGO_TARGET_DIR}/*/libparinfer_rust.so \
+ ${STAGEDIR}${PREFIX}/lib
+ @${MKDIR} ${STAGEDIR}${PREFIX}/share/kak/rc/extra \
+ ${STAGEDIR}${PREFIX}/share/vim/vimfiles/doc \
+ ${STAGEDIR}${PREFIX}/share/vim/vimfiles/plugin
+ ${INSTALL_DATA} ${WRKSRC}/rc/parinfer.kak \
+ ${STAGEDIR}${PREFIX}/share/kak/rc/extra
+ ${INSTALL_DATA} ${WRKSRC}/doc/parinfer.txt \
+ ${STAGEDIR}${PREFIX}/share/vim/vimfiles/doc
+ ${INSTALL_DATA} ${WRKSRC}/plugin/parinfer.vim \
+ ${STAGEDIR}${PREFIX}/share/vim/vimfiles/plugin
+
+.include <bsd.port.mk>
Added: head/editors/parinfer-rust/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/editors/parinfer-rust/distinfo Sat Jan 26 17:03:48 2019 (r491303)
@@ -0,0 +1,51 @@
+TIMESTAMP = 1548517117
+SHA256 (rust/crates/base-x-0.2.2.tar.gz) = 2f59103b47307f76e03bef1633aec7fa9e29bfb5aa6daf5a334f94233c71f6c1
+SIZE (rust/crates/base-x-0.2.2.tar.gz) = 9636
+SHA256 (rust/crates/discard-1.0.3.tar.gz) = 9a9117502da3c5657cb8e2ca7ffcf52d659f00c78c5127d1ebadc2ebe76465be
+SIZE (rust/crates/discard-1.0.3.tar.gz) = 4191
+SHA256 (rust/crates/dtoa-0.4.2.tar.gz) = 09c3753c3db574d215cba4ea76018483895d7bff25a31b49ba45db21c48e50ab
+SIZE (rust/crates/dtoa-0.4.2.tar.gz) = 14227
+SHA256 (rust/crates/getopts-0.2.18.tar.gz) = 0a7292d30132fb5424b354f5dc02512a86e4c516fe544bb7a25e7f266951b797
+SIZE (rust/crates/getopts-0.2.18.tar.gz) = 18416
+SHA256 (rust/crates/itoa-0.4.1.tar.gz) = c069bbec61e1ca5a596166e55dfe4773ff745c3d16b700013bcaff9a6df2c682
+SIZE (rust/crates/itoa-0.4.1.tar.gz) = 10563
+SHA256 (rust/crates/libc-0.2.40.tar.gz) = 6fd41f331ac7c5b8ac259b8bf82c75c0fb2e469bbf37d2becbba9a6a2221965b
+SIZE (rust/crates/libc-0.2.40.tar.gz) = 327272
+SHA256 (rust/crates/proc-macro2-0.2.3.tar.gz) = cd07deb3c6d1d9ff827999c7f9b04cdfd66b1b17ae508e14fe47b620f2282ae0
+SIZE (rust/crates/proc-macro2-0.2.3.tar.gz) = 21558
+SHA256 (rust/crates/proc-macro2-0.3.8.tar.gz) = 1b06e2f335f48d24442b35a19df506a835fb3547bc3c06ef27340da9acf5cae7
+SIZE (rust/crates/proc-macro2-0.3.8.tar.gz) = 24412
+SHA256 (rust/crates/quote-0.4.2.tar.gz) = 1eca14c727ad12702eb4b6bfb5a232287dcf8385cb8ca83a3eeaf6519c44c408
+SIZE (rust/crates/quote-0.4.2.tar.gz) = 14756
+SHA256 (rust/crates/quote-0.5.2.tar.gz) = 9949cfe66888ffe1d53e6ec9d9f3b70714083854be20fd5e271b232a017401e8
+SIZE (rust/crates/quote-0.5.2.tar.gz) = 14982
+SHA256 (rust/crates/serde-1.0.55.tar.gz) = 97f6a6c3caba0cf8f883b53331791036404ce3c1bd895961cf8bb2f8cecfd84b
+SIZE (rust/crates/serde-1.0.55.tar.gz) = 68121
+SHA256 (rust/crates/serde_derive-1.0.55.tar.gz) = f51b0ef935cf8a41a77bce553da1f8751a739b7ad82dd73669475a22e6ecedb0
+SIZE (rust/crates/serde_derive-1.0.55.tar.gz) = 45154
+SHA256 (rust/crates/serde_json-1.0.17.tar.gz) = f3ad6d546e765177cf3dded3c2e424a8040f870083a0e64064746b958ece9cb1
+SIZE (rust/crates/serde_json-1.0.17.tar.gz) = 64689
+SHA256 (rust/crates/stdweb-0.4.5.tar.gz) = 742b8202779433bf7a405bffe9921dd9bee497a46fb9024f5b6cfb92823c5843
+SIZE (rust/crates/stdweb-0.4.5.tar.gz) = 162013
+SHA256 (rust/crates/stdweb-derive-0.4.0.tar.gz) = 6aa46e9b38ea028a8a327ae6db35a486ace3eb834f5600bb3b6a71c0b6b1bd4b
+SIZE (rust/crates/stdweb-derive-0.4.0.tar.gz) = 3660
+SHA256 (rust/crates/stdweb-internal-macros-0.1.0.tar.gz) = b0bb3289dfd46bba44d80ed47a9b3d4c43bf6c1d7931b29e2fa86bd6697ccf59
+SIZE (rust/crates/stdweb-internal-macros-0.1.0.tar.gz) = 4089
+SHA256 (rust/crates/syn-0.12.15.tar.gz) = c97c05b8ebc34ddd6b967994d5c6e9852fa92f8b82b3858c39451f97346dcce5
+SIZE (rust/crates/syn-0.12.15.tar.gz) = 132636
+SHA256 (rust/crates/syn-0.13.10.tar.gz) = 77961dcdac942fa8bc033c16f3a790b311c8a27d00811b878ebd8cf9b7ba39d5
+SIZE (rust/crates/syn-0.13.10.tar.gz) = 134334
+SHA256 (rust/crates/unicode-segmentation-1.2.1.tar.gz) = aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1
+SIZE (rust/crates/unicode-segmentation-1.2.1.tar.gz) = 68223
+SHA256 (rust/crates/unicode-width-0.1.5.tar.gz) = 882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526
+SIZE (rust/crates/unicode-width-0.1.5.tar.gz) = 15761
+SHA256 (rust/crates/unicode-xid-0.1.0.tar.gz) = fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc
+SIZE (rust/crates/unicode-xid-0.1.0.tar.gz) = 16000
+SHA256 (rust/crates/winapi-0.3.6.tar.gz) = 92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0
+SIZE (rust/crates/winapi-0.3.6.tar.gz) = 1029391
+SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.tar.gz) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6
+SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.tar.gz) = 2918815
+SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
+SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.tar.gz) = 2947998
+SHA256 (eraserhd-parinfer-rust-v0.2.0-198-g506ae2b_GH0.tar.gz) = e6365486b7b94c51c3d04a83b1a0948eba18cbde42ed960ecd64f5e22d48e3cd
+SIZE (eraserhd-parinfer-rust-v0.2.0-198-g506ae2b_GH0.tar.gz) = 274654
Added: head/editors/parinfer-rust/files/patch-plugin_parinfer.vim
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/editors/parinfer-rust/files/patch-plugin_parinfer.vim Sat Jan 26 17:03:48 2019 (r491303)
@@ -0,0 +1,13 @@
+--- plugin/parinfer.vim.orig 2019-01-26 15:56:17 UTC
++++ plugin/parinfer.vim
+@@ -9,6 +9,10 @@ if !exists('g:parinfer_force_balance')
+ endif
+
+ if !exists('g:parinfer_dylib_path')
++ let g:parinfer_dylib_path = 'libparinfer_rust.so'
++endif
++
++if !exists('g:parinfer_dylib_path')
+ if has('macunix')
+ let g:parinfer_dylib_path = expand('<sfile>:p:h:h'). '/target/release/libparinfer_rust.dylib'
+ elseif has('unix')
Added: head/editors/parinfer-rust/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/editors/parinfer-rust/pkg-descr Sat Jan 26 17:03:48 2019 (r491303)
@@ -0,0 +1,18 @@
+A full-featured, super fast implementation of Shaun Lebron's parinfer.
+
+Parinfer is a proof-of-concept editor mode for Lisp programming
+languages. It simplifies the way we write Lisp by auto-adjusting
+parens when indentation changes and vice versa. The hope is to
+make basic Lisp-editing easier for newcomers and experts alike,
+while still allowing existing plugins like Paredit to satisfy the
+need for more advanced operations.
+
+Parinfer-rust comes with plugins for Kakoune, Vim8, and Neovim.
+The Rust library can be called from other editors that can load
+dynamic libraries.
+
+This plugin implements "smart" mode. Rather than switching between
+"paren" mode and "indent" mode, parinfer uses information about how
+the user is changing the file to decide what to do.
+
+WWW: https://github.com/eraserhd/parinfer-rust
More information about the svn-ports-head
mailing list