https://github.com/ailisp/commonlisp-vscode
Common Lisp Editing extension for Visual Studio Code
https://github.com/ailisp/commonlisp-vscode
Last synced: 8 months ago
JSON representation
Common Lisp Editing extension for Visual Studio Code
- Host: GitHub
- URL: https://github.com/ailisp/commonlisp-vscode
- Owner: ailisp
- Created: 2020-04-16T05:19:09.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2021-06-11T11:12:48.000Z (about 5 years ago)
- Last Synced: 2025-04-05T06:11:35.950Z (about 1 year ago)
- Language: TypeScript
- Size: 328 KB
- Stars: 38
- Watchers: 5
- Forks: 1
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# commonlisp-vscode
Common Lisp Editing Extension for vscode
## Update
**cl-lsp is updated with a cleaner REPL! Please update by do `git pull` in `~/.roswell/local-projects/ailisp/cl-lsp`**

## Features
- Common Lisp syntax highlight, Auto indenting/formating, folding.
- (Optional) Structural editing and navigation provided by [strict-paredit-vscode](https://github.com/ailisp/strict-paredit-vscode).
- Autocompletion, documentation on hover, go to definition, compile & load file, REPL backed by [cl-lsp](https://github.com/ailisp/cl-lsp) language server.
## Requirements
- Install [roswell](https://github.com/roswell/roswell) and have `~/.roswell/bin` in `PATH`
- Install [cl-lsp](https://github.com/ailisp/cl-lsp), above two is required because original package doesn't have readline support in prepl.
- `ros install ailisp/linedit`
- `ros install ailisp/prepl`
- `ros install ailisp/cl-lsp`
- (Recommend) Install [strict-paredit-vscode](https://github.com/ailisp/strict-paredit-vscode): `ext install ailisp.strict-paredit`, which provides best parens edit experience close to Emacs.
- (Recommend) Use sbcl instead of sbcl_bin in roswell, to get go to definition with symbols in `common-lisp` package:
- `ros install sbcl`
- `ros use sbcl`
## Known Issues
- No debugger, but planned to come soon.
## Credits
[cl-lsp](https://github.com/cxxxr/cl-lsp) provides a complete common lisp language server protocol and a mostly working LSP client for vscode. I forked cl-lsp to fix some issues on it and this repo is fix to its vscode plugin to support recent version of vscode and adding a few improvements: auto indenting on newline and run REPL.
## Release Notes
Users appreciate release notes as you update your extension.
### 0.3.2
- Fix path issue that requires cl-lsp in path, was not fixed properly in 0.3.1
### 0.3.1
- Use absolute path as default cl-lsp path
### 0.3.0
- avoid lsp server error mixed with REPL, record error in log
### 0.2.0
- support readline editing (arrow key works, history, etc.) in repl
- default keybinding to eval (Ctrl+Enter) and to start REPL (Ctrl+Shift+Enter)
### 0.1.1
- Support open multiple commonlisp-vscode in multiple vscode window
### 0.1.0
- REPL doesn't show lsp messages, is a clean PREPL now
### 0.0.4
- LSP and REPL use same lisp process, so evaluate in file is available to REPL now
### 0.0.3
- Fix auto indenting on newline, close to edit lisp file in emacs
### 0.0.2
- Fix on lsp side to recognize lisp symbols on hover
- Add option to set lsp path
### 0.0.1
Initial release of commonlisp-vscode, support all features mentioned in readme
**Enjoy!**