2015-12-02 14:23:39 +00:00
|
|
|
#+TITLE: SML layer
|
2015-07-04 03:07:55 +00:00
|
|
|
|
2019-05-07 08:53:56 +00:00
|
|
|
#+TAGS: general|layer|multi-paradigm|programming
|
2019-05-05 17:26:40 +00:00
|
|
|
|
2015-07-04 03:07:55 +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]]
|
2018-01-28 19:58:25 +00:00
|
|
|
- [[#features][Features:]]
|
2017-05-22 14:16:12 +00:00
|
|
|
- [[#install][Install]]
|
2018-12-05 03:03:03 +00:00
|
|
|
- [[#key-bindings][Key bindings]]
|
2017-05-22 14:16:12 +00:00
|
|
|
- [[#form-completion][Form Completion]]
|
|
|
|
- [[#repl][REPL]]
|
2015-07-04 03:07:55 +00:00
|
|
|
|
|
|
|
* Description
|
2018-01-28 19:58:25 +00:00
|
|
|
Adds support for the [[http://www.smlnj.org][SML]] programming language to Spacemacs.
|
|
|
|
|
|
|
|
** Features:
|
|
|
|
- Syntax highlighting
|
2019-06-01 17:13:30 +00:00
|
|
|
- Integration of the =SML Repl= into Emacs
|
2018-01-28 19:58:25 +00:00
|
|
|
- Basic completion of SML forms via =sml-electric-space=
|
2015-07-04 03:07:55 +00:00
|
|
|
|
|
|
|
* Install
|
2016-01-06 05:21:55 +00:00
|
|
|
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.
|
2015-07-04 03:07:55 +00:00
|
|
|
|
2018-12-05 03:03:03 +00:00
|
|
|
* Key bindings
|
2015-07-04 03:07:55 +00:00
|
|
|
** Form Completion
|
|
|
|
|
2018-12-05 03:03:03 +00:00
|
|
|
| Key binding | Description |
|
2015-07-04 03:07:55 +00:00
|
|
|
|-------------+-------------------------------------------------------------------------------------------|
|
|
|
|
| ~M-SPC~ | Inserts a space and completes the form before the cursor. |
|
2018-01-28 19:58:25 +00:00
|
|
|
| ~\vert{}~ | Inserts a pipe and adds a double arrow or copies the function name. Generally just works. |
|
2015-07-04 03:07:55 +00:00
|
|
|
|
|
|
|
** REPL
|
|
|
|
|
2018-12-05 03:03:03 +00:00
|
|
|
| Key binding | Description |
|
2015-07-04 03:07:55 +00:00
|
|
|
|-------------+-------------------------------------------------------------------|
|
|
|
|
| ~SPC m s b~ | Send buffer to REPL |
|
2016-01-09 20:52:40 +00:00
|
|
|
| ~SPC m s B~ | Send buffer to REPL and switch to REPL buffer in =insert state= |
|
2015-07-04 03:07:55 +00:00
|
|
|
| ~SPC m s f~ | Send function to REPL |
|
2016-01-09 20:52:40 +00:00
|
|
|
| ~SPC m s F~ | Send function to REPL and switch to REPL buffer in =insert state= |
|
2015-07-04 03:07:55 +00:00
|
|
|
| ~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 |
|
2016-01-09 20:52:40 +00:00
|
|
|
| ~SPC m s R~ | Send region to REPL and switch to REPL buffer in =insert state= |
|
2015-07-04 03:07:55 +00:00
|
|
|
| ~SPC m s s~ | Run the sml REPL or switch to it if the REPL is already running |
|