Date: Tue, 16 Mar 2021 10:35:09 +0000 (UTC) From: Li-Wen Hsu <lwhsu@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r568549 - in head/editors: . sly sly/files Message-ID: <202103161035.12GAZ9nD068769@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: lwhsu Date: Tue Mar 16 10:35:08 2021 New Revision: 568549 URL: https://svnweb.freebsd.org/changeset/ports/568549 Log: Add editors/sly, Common Lisp IDE for Emacs PR: 253991 Submitted by: Olivier Certner <olivier.freebsd@free.fr> Added: head/editors/sly/ head/editors/sly/Makefile (contents, props changed) head/editors/sly/distinfo (contents, props changed) head/editors/sly/files/ head/editors/sly/files/patch-doc_Makefile (contents, props changed) head/editors/sly/files/patch-doc_sly.texi (contents, props changed) head/editors/sly/files/patch-sly.el (contents, props changed) head/editors/sly/pkg-descr (contents, props changed) head/editors/sly/pkg-message (contents, props changed) head/editors/sly/pkg-plist (contents, props changed) Modified: head/editors/Makefile Modified: head/editors/Makefile ============================================================================== --- head/editors/Makefile Tue Mar 16 09:36:07 2021 (r568548) +++ head/editors/Makefile Tue Mar 16 10:35:08 2021 (r568549) @@ -231,6 +231,7 @@ SUBDIR += setzer SUBDIR += shed SUBDIR += slime + SUBDIR += sly SUBDIR += ssed SUBDIR += sted SUBDIR += tamago Added: head/editors/sly/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/editors/sly/Makefile Tue Mar 16 10:35:08 2021 (r568549) @@ -0,0 +1,67 @@ +# $FreeBSD$ + +PORTNAME= sly +DISTVERSION= 1.0.43 +CATEGORIES= editors elisp +PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX} + +MAINTAINER= olce.freebsd.ports@certner.fr +COMMENT= Sylvester the Cat's Common Lisp IDE for Emacs + +LICENSE= PD + +USES= emacs gmake +USE_GITHUB= yes +GH_ACCOUNT= joaotavora + +NO_ARCH= yes + +INFO= sly + +ALL_TARGET= all doc-sly.info + +PLIST_THIS_LISPDIR= ${EMACS_VERSION_SITE_LISPDIR}/sly +THIS_LISPDIR= ${PREFIX}/${PLIST_THIS_LISPDIR} +PLIST_SUB+= THIS_LISPDIR=${PLIST_THIS_LISPDIR} + +OPTIONS_DEFINE= DOCS DOCS_PDF +OPTIONS_DEFAULT=DOCS DOCS_PDF + +DOCS_PDF_DESC= Build PDF documentation (requires DOCS) + +ROOT_DOCS_FILES= CONTRIBUTING.md NEWS.md PROBLEMS.md README.md +GENERATED_DOCS_FILES= sly.html +DOCS_BUILD_DEPENDS= texinfo>=5.2:print/texinfo + +DOCS_PDF_IMPLIES= DOCS +DOCS_PDF_USE= tex=latex:build tex=pdftex:build tex=dvipsk:build + +.include <bsd.port.options.mk> + +.if !empty(PORT_OPTIONS:MDOCS_PDF) +GENERATED_DOCS_FILES+= sly.pdf sly-refcard.pdf +.endif + +ALL_TARGET+= ${GENERATED_DOCS_FILES:%=doc-%} + +PORTDOCS:= CONTRIBUTING.md NEWS.md PROBLEMS.md README.md \ + ${GENERATED_DOCS_FILES} + +do-install: + @${MKDIR} ${STAGEDIR}${THIS_LISPDIR} + (cd ${WRKSRC} && \ + ${COPYTREE_SHARE} . ${STAGEDIR}${THIS_LISPDIR} \ + "! ( -depth 1 ( -name Makefile -o -name *\.md -o \ + -name \.[^.]* ) -o \ + -path \./doc* )") + ${INSTALL_DATA} ${WRKSRC}/doc/${INFO}.info \ + ${STAGEDIR}${PREFIX}/${INFO_PATH} + +# DOCS_PDF depends on DOCS +post-install-DOCS-on: + ${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${ROOT_DOCS_FILES:%=${WRKSRC}/%} \ + ${GENERATED_DOCS_FILES:%=${WRKSRC}/doc/%} \ + ${STAGEDIR}${DOCSDIR} + +.include <bsd.port.mk> Added: head/editors/sly/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/editors/sly/distinfo Tue Mar 16 10:35:08 2021 (r568549) @@ -0,0 +1,3 @@ +TIMESTAMP = 1613556780 +SHA256 (joaotavora-sly-1.0.43_GH0.tar.gz) = 84b2d8326a429dcc621022d2ebbde7ed4813594d7445f264cb6ff5bf5f3bf9e9 +SIZE (joaotavora-sly-1.0.43_GH0.tar.gz) = 1835404 Added: head/editors/sly/files/patch-doc_Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/editors/sly/files/patch-doc_Makefile Tue Mar 16 10:35:08 2021 (r568549) @@ -0,0 +1,20 @@ +--- doc/Makefile.orig 2021-01-14 09:12:56 UTC ++++ doc/Makefile +@@ -14,7 +14,7 @@ INSTALL_CMD=install -m 644 + # Info files generated here. + infofiles=sly.info + +-TEXI = sly.texi contributors.texi ++TEXI = sly.texi + + help: + @echo -e "\ +@@ -38,7 +38,7 @@ sly.info: $(TEXI) + makeinfo $< + + sly.html: $(TEXI) +- texi2html --css-include=sly.css $< ++ makeinfo -o $@ --css-include=sly.css --html --no-split $< + + html/index.html: $(TEXI) + makeinfo -o html --css-include=sly.css --html $< Added: head/editors/sly/files/patch-doc_sly.texi ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/editors/sly/files/patch-doc_sly.texi Tue Mar 16 10:35:08 2021 (r568549) @@ -0,0 +1,25 @@ +--- doc/sly.texi.orig 2021-01-14 09:12:56 UTC ++++ doc/sly.texi +@@ -3157,17 +3157,13 @@ buffer you can enter Lisp expressions and evaluate the + @unnumberedsec Hackers of the good hack + + @SLY{} is a fork of SLIME which is itself an Extension +-of @acronym{SLIM} by Eric Marsden. At the time of writing, the authors +-and code-contributors of @SLY{} are: ++of @acronym{SLIM} by Eric Marsden. Please consult the Git repository ++for a list of authors and code-contributors of @SLY{}, as well as the ++bundled code from @file{hyperspec.el}, @cite{CLOCC}, and the @cite{CMU ++AI Repository}. + +-@include contributors.texi +- +-... not counting the bundled code from @file{hyperspec.el}, +-@cite{CLOCC}, and the @cite{CMU AI Repository}. +- + Many people on the @code{sly-devel} mailing list have made non-code +-contributions to @SLY{}. Life is hard though: you gotta send code to +-get your name in the manual. @code{:-)} ++contributions to @SLY{}. + + @unnumberedsec Thanks! + Added: head/editors/sly/files/patch-sly.el ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/editors/sly/files/patch-sly.el Tue Mar 16 10:35:08 2021 (r568549) @@ -0,0 +1,46 @@ +--- sly.el.orig 2021-01-14 09:12:56 UTC ++++ sly.el +@@ -7463,22 +7463,30 @@ can be found." + ;;;###autoload + (add-hook 'lisp-mode-hook 'sly-editing-mode) + +-(cond +- ((or (not (memq 'slime-lisp-mode-hook lisp-mode-hook)) +- noninteractive +- (prog1 +- (y-or-n-p "[sly] SLIME detected in `lisp-mode-hook', causes keybinding conflicts. Remove it for this Emacs session?") +- (warn "To restore SLIME in this session, customize `lisp-mode-hook' +-and replace `sly-editing-mode' with `slime-lisp-mode-hook'."))) +- (remove-hook 'lisp-mode-hook 'slime-lisp-mode-hook) ++(let ((proceed-p ++ (if noninteractive ++ (lambda () t) ++ (let (asked resp) ++ (lambda () ++ (unless asked ++ (setq resp ++ (y-or-n-p ++ (eval-when-compile ++ (concat "[sly] SLIME detected. Try to disable it " ++ "for this Emacs session?"))) ++ asked t)) ++ resp))))) ++ (when (and (memq 'slime-lisp-mode-hook lisp-mode-hook) ++ (funcall proceed-p)) ++ (warn "To restore SLIME in this session, customize `lisp-mode-hook' and ++replace `sly-editing-mode' with `slime-lisp-mode-hook'.") ++ (remove-hook 'lisp-mode-hook 'slime-lisp-mode-hook)) + (dolist (buffer (buffer-list)) + (with-current-buffer buffer + (when (eq major-mode 'lisp-mode) +- (sly-editing-mode 1) +- (ignore-errors (funcall 'slime-mode -1)))))) +- (t +- (warn +- "`sly.el' loaded OK. To use SLY, customize `lisp-mode-hook' and remove `slime-lisp-mode-hook'."))) ++ (when (and (boundp 'slime-mode) slime-mode (funcall proceed-p)) ++ (ignore-errors (funcall 'slime-mode -1))) ++ (sly-editing-mode 1))))) + + (provide 'sly) + Added: head/editors/sly/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/editors/sly/pkg-descr Tue Mar 16 10:35:08 2021 (r568549) @@ -0,0 +1,19 @@ +SLY is a fork of SLIME. We track its bugfixes, particularly to the +implementation backends. All SLIME's familiar features (debugger, inspector, +xref, etc...) are still available, with improved overall UX. + +SLY's highlights are: +- A full-featured REPL based on Emacs's comint.el. Everything can be copied to + the REPL. +- Stickers, or live code annotations that record values as code traverses them. +- Flex-style completion out-of-the-box, using Emacs's completion API. Company, + Helm, and other supported natively, no plugin required. +- An interactive Trace Dialog. +- Cleanly ASDF-loaded by default, including contribs, enabled out-of-the-box. +- Multiple inspectors and multiple REPLs. +- "Presentations" replaced by interactive backreferences which highlight the + object and remain stable throughout the REPL session. +- Support for NAMED-READTABLES, macrostep.el and quicklisp. +- A portable, annotation-based stepper in early but functional prototype stage. + +WWW: https://github.com/joaotavora/sly Added: head/editors/sly/pkg-message ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/editors/sly/pkg-message Tue Mar 16 10:35:08 2021 (r568549) @@ -0,0 +1,27 @@ +[ +{ type: install + message: <<EOM +To enable autoloading of SLY, add this to some Emacs init file: +(require 'sly-autoloads) + +You should specify some Lisp implementation. This works for both SLY and SLIME: +(setq inferior-lisp-program "path_to_your_lisp_binary") +SLY however has convenient specific variables for more complex +configurations. E.g.: +(setq sly-default-lisp 'sbcl + sly-lisp-implementations '((sbcl ("sbcl")))) +Please see their documentation. + +Contribs in `sly-contribs' list are automatically loaded and enabled (and those +not in it are disabled) each time a new session is launched, or `sly-setup' is +called. If you define `sly-contribs' in some initialization file, be sure to +include sly-fancy in it (instead, you can add to the list using `add-to-list', +after the `require' above). + +If you just want to immediately enable a contrib, you can instead use +`sly-enable-contrib', but be aware that the effect will be temporary. It will +last up to the next connection established or `sly-setup' call, unless you add +the contrib to `sly-contribs' in the meantime. +EOM +} +] Added: head/editors/sly/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/editors/sly/pkg-plist Tue Mar 16 10:35:08 2021 (r568549) @@ -0,0 +1,91 @@ +%%THIS_LISPDIR%%/contrib/sly-autodoc.el +%%THIS_LISPDIR%%/contrib/sly-autodoc.elc +%%THIS_LISPDIR%%/contrib/sly-fancy-inspector.el +%%THIS_LISPDIR%%/contrib/sly-fancy-inspector.elc +%%THIS_LISPDIR%%/contrib/sly-fancy-trace.el +%%THIS_LISPDIR%%/contrib/sly-fancy-trace.elc +%%THIS_LISPDIR%%/contrib/sly-fancy.el +%%THIS_LISPDIR%%/contrib/sly-fancy.elc +%%THIS_LISPDIR%%/contrib/sly-fontifying-fu.el +%%THIS_LISPDIR%%/contrib/sly-fontifying-fu.elc +%%THIS_LISPDIR%%/contrib/sly-indentation.el +%%THIS_LISPDIR%%/contrib/sly-indentation.elc +%%THIS_LISPDIR%%/contrib/sly-mrepl.el +%%THIS_LISPDIR%%/contrib/sly-mrepl.elc +%%THIS_LISPDIR%%/contrib/sly-package-fu.el +%%THIS_LISPDIR%%/contrib/sly-package-fu.elc +%%THIS_LISPDIR%%/contrib/sly-profiler.el +%%THIS_LISPDIR%%/contrib/sly-profiler.elc +%%THIS_LISPDIR%%/contrib/sly-retro.el +%%THIS_LISPDIR%%/contrib/sly-retro.elc +%%THIS_LISPDIR%%/contrib/sly-scratch.el +%%THIS_LISPDIR%%/contrib/sly-scratch.elc +%%THIS_LISPDIR%%/contrib/sly-stickers.el +%%THIS_LISPDIR%%/contrib/sly-stickers.elc +%%THIS_LISPDIR%%/contrib/sly-trace-dialog.el +%%THIS_LISPDIR%%/contrib/sly-trace-dialog.elc +%%THIS_LISPDIR%%/contrib/sly-tramp.el +%%THIS_LISPDIR%%/contrib/sly-tramp.elc +%%THIS_LISPDIR%%/contrib/slynk-arglists.lisp +%%THIS_LISPDIR%%/contrib/slynk-fancy-inspector.lisp +%%THIS_LISPDIR%%/contrib/slynk-indentation.lisp +%%THIS_LISPDIR%%/contrib/slynk-mrepl.lisp +%%THIS_LISPDIR%%/contrib/slynk-package-fu.lisp +%%THIS_LISPDIR%%/contrib/slynk-profiler.lisp +%%THIS_LISPDIR%%/contrib/slynk-retro.lisp +%%THIS_LISPDIR%%/contrib/slynk-stickers.lisp +%%THIS_LISPDIR%%/contrib/slynk-trace-dialog.lisp +%%THIS_LISPDIR%%/contrib/sylvesters.txt +%%THIS_LISPDIR%%/lib/.nosearch +%%THIS_LISPDIR%%/lib/hyperspec.el +%%THIS_LISPDIR%%/lib/hyperspec.elc +%%THIS_LISPDIR%%/lib/sly-buttons.el +%%THIS_LISPDIR%%/lib/sly-buttons.elc +%%THIS_LISPDIR%%/lib/sly-cl-indent.el +%%THIS_LISPDIR%%/lib/sly-cl-indent.elc +%%THIS_LISPDIR%%/lib/sly-common.el +%%THIS_LISPDIR%%/lib/sly-common.elc +%%THIS_LISPDIR%%/lib/sly-completion.el +%%THIS_LISPDIR%%/lib/sly-completion.elc +%%THIS_LISPDIR%%/lib/sly-messages.el +%%THIS_LISPDIR%%/lib/sly-messages.elc +%%THIS_LISPDIR%%/lib/sly-parse.el +%%THIS_LISPDIR%%/lib/sly-parse.elc +%%THIS_LISPDIR%%/lib/sly-tests.el +%%THIS_LISPDIR%%/lib/sly-tests.elc +%%THIS_LISPDIR%%/sly-autoloads.el +%%THIS_LISPDIR%%/sly.el +%%THIS_LISPDIR%%/sly.elc +%%THIS_LISPDIR%%/slynk/backend/abcl.lisp +%%THIS_LISPDIR%%/slynk/backend/allegro.lisp +%%THIS_LISPDIR%%/slynk/backend/ccl.lisp +%%THIS_LISPDIR%%/slynk/backend/clasp.lisp +%%THIS_LISPDIR%%/slynk/backend/clisp.lisp +%%THIS_LISPDIR%%/slynk/backend/cmucl.lisp +%%THIS_LISPDIR%%/slynk/backend/corman.lisp +%%THIS_LISPDIR%%/slynk/backend/ecl.lisp +%%THIS_LISPDIR%%/slynk/backend/lispworks.lisp +%%THIS_LISPDIR%%/slynk/backend/mkcl.lisp +%%THIS_LISPDIR%%/slynk/backend/sbcl.lisp +%%THIS_LISPDIR%%/slynk/backend/scl.lisp +%%THIS_LISPDIR%%/slynk/metering.lisp +%%THIS_LISPDIR%%/slynk/slynk-apropos.lisp +%%THIS_LISPDIR%%/slynk/slynk-backend.lisp +%%THIS_LISPDIR%%/slynk/slynk-completion.lisp +%%THIS_LISPDIR%%/slynk/slynk-gray.lisp +%%THIS_LISPDIR%%/slynk/slynk-loader.lisp +%%THIS_LISPDIR%%/slynk/slynk-match.lisp +%%THIS_LISPDIR%%/slynk/slynk-rpc.lisp +%%THIS_LISPDIR%%/slynk/slynk-source-file-cache.lisp +%%THIS_LISPDIR%%/slynk/slynk-source-path-parser.lisp +%%THIS_LISPDIR%%/slynk/slynk.asd +%%THIS_LISPDIR%%/slynk/slynk.lisp +%%THIS_LISPDIR%%/slynk/start-slynk.lisp +%%THIS_LISPDIR%%/slynk/xref.lisp +%%THIS_LISPDIR%%/test/sly-autodoc-tests.el +%%THIS_LISPDIR%%/test/sly-cl-indent-test.txt +%%THIS_LISPDIR%%/test/sly-fontifying-fu-tests.el +%%THIS_LISPDIR%%/test/sly-indentation-tests.el +%%THIS_LISPDIR%%/test/sly-mrepl-tests.el +%%THIS_LISPDIR%%/test/sly-parse-tests.el +%%THIS_LISPDIR%%/test/sly-stickers-tests.el
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202103161035.12GAZ9nD068769>