Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/koji-kojiro/cl-repl
A full-featured repl implementation designed to work with Roswell
https://github.com/koji-kojiro/cl-repl
common-lisp repl roswell
Last synced: 3 months ago
JSON representation
A full-featured repl implementation designed to work with Roswell
- Host: GitHub
- URL: https://github.com/koji-kojiro/cl-repl
- Owner: koji-kojiro
- License: gpl-3.0
- Created: 2017-07-17T10:31:10.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2021-08-01T07:09:11.000Z (over 3 years ago)
- Last Synced: 2024-08-01T03:41:49.179Z (6 months ago)
- Topics: common-lisp, repl, roswell
- Language: Common Lisp
- Size: 250 KB
- Stars: 151
- Watchers: 9
- Forks: 18
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- curated-awesome-cl - cl-repl - an ipython-like REPL. With completion, shell commands, magic commands, debugger, etc. [MIT][200]. With [colorthemes](https://github.com/koji-kojiro/lem-pygments-colorthemes). (REPLs ##)
README
# CL-REPL
[![Build Status](https://travis-ci.org/koji-kojiro/cl-repl.svg?branch=master)](https://travis-ci.org/koji-kojiro/cl-repl)
[![License](http://img.shields.io/badge/license-GPLv3-blue.svg?style=flat)](https://github.com/koji-kojiro/cl-repl/blob/master/LICENSE)
[![GitHub tag](https://img.shields.io/github/tag/koji-kojiro/cl-repl.svg?style=flat)](https://github.com/koji-kojiro/cl-repl/releases)
[![Quicklisp dist](http://quickdocs.org/badge/cl-repl.svg)](http://quickdocs.org/cl-repl/)# **Warning; WIP**
The software is still alpha quality.
The functionalities are incomplete and may cause unkown bugs.# Overview
This project aims to provide a beginner-friendly REPL for Common Lisp with rich functionalities, such as IPython for Python.What this project tries to achieve are listed here.
- [x] powerful line editting with gnu readline.
- [x] tab-completion of symbols.
- [x] simple installation instruction.
- [x] code editting with text editor.
- [ ] useful debugger & inspector. (incomplete)
- [x] syntax highlighting of input texts.
- [ ] implementation independence. (only SBCL supported)Screenshots can be found [here](./image/).
# Installation
We recommend to use roswell.
CL-REPL can be installed via roswell as follows.```
$ ros install koji-kojiro/cl-repl
```Before installation, please ensure that gnu readline is installed.
If you use OSX, you might need to execute following command.```
$ brew link --force readline
```Also, ensure that your terminal support 256 colors.
## Note about installation via Roswell
If you installed roswell with normal configurations, cl-repl will be located in `~/.roswell/bin`.
To use cl-repl from the command line, please ensure the PATH variable includes `~/.roswell/bin`.# Usage
```
$ cl-repl
```or
```
$ ros repl
```Some useful magic commands are ready to use. To list available commands:
```
CL-USER> %help
```## Configuration
You can customize CL-REPL by editting `~/.replrc`. You can change appearance, add your own commands, and do anything you want when startup.
An example can be found [here](./replrc-example).## Syntax highlighting
Syntax highlighiting of input area is new in v0.5.0.
If you want to disable it, put the following in your `.replrc`.```
(disable-syntax)
```## execute shell
If the line starts with `!`, excute it as shell command, e.g. `!ls -a`.## %edit magic
Line editting in repl is sometimes painful. CL-REPL allows yot to edit code with your favorite text editor.```
CL-REPL> %edit
```CL-REPL invokes a text editor specified by `$EDITOR`.
After editting code, save and close it. Then repl will start to evaluate it.
If `` is not supplied, a temporary file will be created and deleted after evaluation.We've be sure the following editors work properly.
- vi & vim
- GNU Emacs
- joe's own editor
- Lem# Contributing
Don't hesitate to open issues or to send PRs.
Any suggestions are always welcomed.# Author
[TANI Kojiro](https://github.com/koji-kojiro) ([email protected])# License
CL-REPL is distributed under [GPLv3](./LICENSE).