spacemacs/layers/+lang/sml/README.org

48 lines
2.0 KiB
Org Mode
Raw Normal View History

#+TITLE: SML layer
#+TAGS: general|layer|multi-paradigm|programming
2019-05-05 17:26:40 +00:00
[[file:img/sml.png]]
2019-05-07 20:05:06 +00:00
* Table of Contents :TOC_5_gh:noexport:
2017-05-22 14:16:12 +00:00
- [[#description][Description]]
- [[#features][Features:]]
2017-05-22 14:16:12 +00:00
- [[#install][Install]]
- [[#key-bindings][Key bindings]]
2017-05-22 14:16:12 +00:00
- [[#form-completion][Form Completion]]
- [[#repl][REPL]]
* Description
Adds support for the [[http://www.smlnj.org][SML]] programming language to Spacemacs.
** Features:
- Syntax highlighting
- Integration of the =SML Repl= into emacs
- Basic completion of SML forms via =sml-electric-space=
* Install
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
add =sml= to the existing =dotspacemacs-configuration-layers= list in this
file.
* Key bindings
** Form Completion
| Key binding | Description |
|-------------+-------------------------------------------------------------------------------------------|
| ~M-SPC~ | Inserts a space and completes the form before the cursor. |
| ~\vert{}~ | Inserts a pipe and adds a double arrow or copies the function name. Generally just works. |
** REPL
| Key binding | Description |
|-------------+-------------------------------------------------------------------|
| ~SPC m s b~ | Send buffer to REPL |
| ~SPC m s B~ | Send buffer to REPL and switch to REPL buffer in =insert state= |
| ~SPC m s f~ | Send function to REPL |
| ~SPC m s F~ | Send function to REPL and switch to REPL buffer in =insert state= |
| ~SPC m s i~ | Run the sml REPL or switch to it if the REPL is already running |
| ~SPC m s r~ | Send region to REPL |
| ~SPC m s R~ | Send region to REPL and switch to REPL buffer in =insert state= |
| ~SPC m s s~ | Run the sml REPL or switch to it if the REPL is already running |