neoCLASH icon indicating copy to clipboard operation
neoCLASH copied to clipboard

CLASH taken to the very next level.

== neoCLASH

link:https://clisp.sourceforge.io/clash.html[CLASH] (CLisp As a SHell) is a document describing the steps to turn CLisp into a basic shell on GNU/Linux. + This repository is based upon this document to provide a modern and handy LISPy shell experience.

=== Features

==== Running commands

The +#{ * }+ form can be used to evaluate shell commands directly in the REPL.

[source,lisp]

#{ls --color=always . }

==== Evaluating LISP forms inside commands

In a command, the S-Expression after the +expansion-start+ (default: +#$+) character is evaluated as a LISP form, instead of being turned into a string.

[source,lisp]

#{ls $(cd) --color=always }

=== Roadmap

  • [ ] Pipelines
  • [x] LISP code expansion in strings.
  • [ ] Job control.

=== Usage

  • From a POSIX shell:

[source,bash]

$ $([ -z ${PREFIX+x} ] && echo "/usr/" || echo ${PREFIX})/bin/nch

=== Installation

Prerequisties: link:https://clisp.sourceforge.io/[+CLISP+].

[source,bash]

[PREFIX=/path/(default:/usr)] clisp install.lisp

=== License

++++ GPL3 License ++++

neoCLASH is licensed under the GNU General Public License version 3.0 or later. + The full text of the license can be accessed via link:https://www.gnu.org/licenses/gpl-3.0-standalone.html[this link] and is also included in the link:COPYING[COPYING] file of this software package.