Add some modules documentation
This commit is contained in:
parent
e97f4fada9
commit
fb359520dd
7 changed files with 121 additions and 7 deletions
28
doc/modules/clojure.md
Normal file
28
doc/modules/clojure.md
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
# Prelude Clojure
|
||||||
|
|
||||||
|
!!! Note
|
||||||
|
|
||||||
|
This module builds on top of the shared [Lisp Base](lisp.md) module.
|
||||||
|
|
||||||
|
## Clojure Mode
|
||||||
|
|
||||||
|
This module bundles `clojure-mode`, a major mode for programming in Clojure,
|
||||||
|
and some sensible defaults for it.
|
||||||
|
|
||||||
|
## CIDER
|
||||||
|
|
||||||
|
This module also bundles [CIDER](https://docs.cider.mx), a popular interactive
|
||||||
|
programming environment for Clojure.
|
||||||
|
|
||||||
|
Intentionally, Prelude doesn't install by default popular CIDER plugins like
|
||||||
|
`clj-refactor`, `sayid`, etc, as those can be overwhelming to newcomers and
|
||||||
|
are easy to setup if you need them.
|
||||||
|
|
||||||
|
## CIDER Alternatives
|
||||||
|
|
||||||
|
Depending on your preferences you might want to use `inf-clojure` or `clojure-lsp`
|
||||||
|
alongside/instead of CIDER, but you'll have to set them up yourselves.
|
||||||
|
|
||||||
|
## Fun trivia
|
||||||
|
|
||||||
|
I'm the author of CIDER and `inf-clojure` and the primary maintainer of `clojure-mode`. I'm also a co-maintainer of `clj-refactor`. I guess I love Clojure! :-)
|
20
doc/modules/common_lisp.md
Normal file
20
doc/modules/common_lisp.md
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
# Prelude Common Lisp
|
||||||
|
|
||||||
|
!!! Note
|
||||||
|
|
||||||
|
This module builds on top of the shared [Lisp Base](lisp.md) module.
|
||||||
|
|
||||||
|
## lisp-mode
|
||||||
|
|
||||||
|
Not much to say here, as `lisp-mode` is configured in the "Lisp Base" module.
|
||||||
|
|
||||||
|
## SLIME
|
||||||
|
|
||||||
|
This module bundles [SLIME](https://docs.cider.mx), a popular interactive
|
||||||
|
programming environment for SLIME, and enables many of its essential features.
|
||||||
|
|
||||||
|
The default config assumes the usage of [Clozure CL](https://github.com/Clozure/ccl) on macOS and
|
||||||
|
of [SBCL](http://www.sbcl.org/) everywhere else. That's something you can easily
|
||||||
|
tweak via `slime-default-lisp`.
|
||||||
|
|
||||||
|
You can fire SLIME with `M-x slime`.
|
33
doc/modules/emacs_lisp.md
Normal file
33
doc/modules/emacs_lisp.md
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
# Prelude Emacs Lisp
|
||||||
|
|
||||||
|
!!! Note
|
||||||
|
|
||||||
|
This module builds on top of the shared [Lisp Base](lisp.md) module.
|
||||||
|
|
||||||
|
## Elisp-mode
|
||||||
|
|
||||||
|
The module establishes some sensible defaults for `elisp-mode` and
|
||||||
|
shortens its modeline name to "EL".
|
||||||
|
|
||||||
|
It establishes a few extra keybidings (inspired by SLIME):
|
||||||
|
|
||||||
|
* `C-c C-z` (`prelude-visit-ielm`)
|
||||||
|
* `C-c C-c` (`eval-defun`)
|
||||||
|
* `C-c C-b` (`eval-buffer`)
|
||||||
|
|
||||||
|
The module also enables auto-recompilation of Elisp files on save.
|
||||||
|
|
||||||
|
## IELM
|
||||||
|
|
||||||
|
IELM is an Elisp REPL bundled with Emacs. Prelude tweaks a bit it's default
|
||||||
|
configuration to align it with the `elisp-mode` configuration.
|
||||||
|
|
||||||
|
## elisp-slime-nav
|
||||||
|
|
||||||
|
The module bundles [elisp-slime-nav](https://github.com/purcell/elisp-slime-nav),
|
||||||
|
which allows you to jump to definitions with `C-.` (use `C-,` to jump back) and describe a symbol with
|
||||||
|
`C-c C-d (C-)d`.
|
||||||
|
|
||||||
|
## Minibuffer evaluation
|
||||||
|
|
||||||
|
`smartparens-mode` is conditionally enabled for `eval-expression` (`M-:`) command.
|
|
@ -52,26 +52,25 @@ To use a module you simple have to require it. No new concepts. No magic.
|
||||||
The following programming languages have enhanced support in Prelude:
|
The following programming languages have enhanced support in Prelude:
|
||||||
|
|
||||||
- C/C++
|
- C/C++
|
||||||
- Clojure
|
- [Clojure](clojure.md)
|
||||||
- CoffeeScript
|
- CoffeeScript
|
||||||
- Common Lisp
|
- [Common Lisp](common_lisp.md)
|
||||||
- CSS
|
- CSS
|
||||||
- [Dart](dart.md)
|
- [Dart](dart.md)
|
||||||
- Emacs Lisp
|
- [Emacs Lisp](emacs_lisp.md)
|
||||||
- Erlang
|
- Erlang
|
||||||
- Elixir
|
- Elixir
|
||||||
- Go
|
- Go
|
||||||
- Haskell
|
- Haskell
|
||||||
- JavaScript
|
- JavaScript
|
||||||
- LaTeX
|
- LaTeX
|
||||||
- Lisp Base (common foundation for Lisp modules)
|
- [Lisp Base](lisp.md) (common foundation for Lisp modules)
|
||||||
- Markdown
|
- Markdown
|
||||||
- OCaml
|
- OCaml
|
||||||
- Org Mode
|
|
||||||
- Perl
|
- Perl
|
||||||
- [Python](python.md)
|
- [Python](python.md)
|
||||||
- [Programming Base](programming.md) (common foundation for programming modules)
|
- [Programming Base](programming.md) (common foundation for programming modules)
|
||||||
- Ruby
|
- [Ruby](ruby.md)
|
||||||
- Rust
|
- Rust
|
||||||
- Scala
|
- Scala
|
||||||
- Scheme
|
- Scheme
|
||||||
|
@ -91,3 +90,4 @@ The following programming languages have enhanced support in Prelude:
|
||||||
- ido
|
- ido
|
||||||
- ivy
|
- ivy
|
||||||
- key-chord
|
- key-chord
|
||||||
|
- Org Mode
|
||||||
|
|
7
doc/modules/lisp.md
Normal file
7
doc/modules/lisp.md
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
# Prelude Lisp
|
||||||
|
|
||||||
|
Basic shared configuration for Lisp-like programming languages. Currently
|
||||||
|
it does only two things:
|
||||||
|
|
||||||
|
* Enables `smartparens-strict-mode` in Lisp major modes and REPL buffers
|
||||||
|
* Enables `rainbow-delimiters` in Lisp major modes and REPL buffers
|
25
doc/modules/ruby.md
Normal file
25
doc/modules/ruby.md
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
# Prelude Ruby
|
||||||
|
|
||||||
|
!!! Note
|
||||||
|
|
||||||
|
This module builds on top of the shared [Programming](programming.md) module.
|
||||||
|
|
||||||
|
## Ruby Mode
|
||||||
|
|
||||||
|
Emacs comes with Ruby programming support through the built-in
|
||||||
|
`ruby-mode`. Whenever you are editing Ruby code run `C-h m` to
|
||||||
|
look at the Python mode key bindings. Alternatively look at the
|
||||||
|
menu bar entries under Ruby. To toggle the menu bar press `F12`.
|
||||||
|
|
||||||
|
Prelude enables `CamelCase` aware editing in Ruby code (via `subword-mode`).
|
||||||
|
|
||||||
|
## inf-ruby
|
||||||
|
|
||||||
|
The module bundles the [inf-ruby](https://github.com/nonsequitur/inf-ruby) package which allows you to run a Ruby
|
||||||
|
REPL (e.g. `irb` or `pry`) in an Emacs buffer and interact with it from
|
||||||
|
Ruby source buffers.
|
||||||
|
|
||||||
|
## yari
|
||||||
|
|
||||||
|
The module bundles the [yari](https://github.com/hron/yari.el) package which allows you to search in Ruby's RI
|
||||||
|
documentation. Use `C-h R` to invoke it.
|
|
@ -9,7 +9,8 @@
|
||||||
|
|
||||||
;;; Commentary:
|
;;; Commentary:
|
||||||
|
|
||||||
;; Some basic configuration for clojure-mode.
|
;; A basic setup for Clojure programming based on clojure-mode
|
||||||
|
;; and CIDER.
|
||||||
|
|
||||||
;;; License:
|
;;; License:
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue