Move Racket to its own layer

This commit is contained in:
Tristan Hume 2015-03-25 19:16:55 -04:00 committed by syl20bnr
parent 94176bc4bf
commit 4f9ee49f58
5 changed files with 46 additions and 26 deletions

View file

@ -3,11 +3,13 @@
Adds many more language modes for less common languages, some more niche than others.
These include:
- Racket
- Idris
- OpenScad
- Nix Expressions
- Nim
- QML
- YAML
- Rust
- The Wolfram Language / Mathematica
- The Wolfram Language / Mathematica
**Note:** Racket has been moved to it's own layer: `racket`

View file

@ -6,7 +6,6 @@
nim-mode
nix-mode
qml-mode
racket-mode
rust-mode
scad-mode
wolfram-mode
@ -49,26 +48,3 @@
(use-package wolfram-mode
:defer t
:interpreter "\\(Wolfram\\|Mathematica\\)Script\\( -script\\)?"))
(defun extra-langs/init-racket-mode ()
(use-package racket-mode
:defer t
:config
(progn
(use-package smartparens :config
(progn (add-to-list 'sp--lisp-modes 'racket-mode)
(when (fboundp 'sp-local-pair) (sp-local-pair 'racket-mode "`" nil :actions nil))))
(sp-local-pair 'racket-mode "'" nil :actions nil)
(evil-leader/set-key-for-mode 'racket-mode
"ml" 'evil-lisp-state
"mt" 'racket-test
"mg" 'racket-visit-definition
"mhd" 'racket-doc)
;; Bug exists in Racket company backend that opens docs in new window when
;; company-quickhelp calls it. Note hook is appendended for proper ordering.
(when (configuration-layer/package-declaredp 'company-quickhelp)
(add-hook 'company-mode-hook
'(lambda () (when (equal major-mode 'racket-mode) (company-quickhelp-mode -1))) t))
(add-hook 'racket-mode-hook
'(lambda ()
(define-key racket-mode-map (kbd "H-r") 'racket-run))))))

View file

@ -0,0 +1,16 @@
# Racket
![logo_racket](img/racket.png)
Adds support for the [Racket](http://racket-lang.org/) programming language.
## Key Bindings
Key Binding | Description
----------------------|------------------------------------------------------------
<kbd>SPC m r</kbd> | Run current file and open REPL
<kbd>SPC m l</kbd> | Enter [Evil Lisp State](https://github.com/syl20bnr/evil-lisp-state)
<kbd>SPC m t</kbd> | Run tests
<kbd>SPC m g</kbd> | Visit definition
<kbd>SPC m h d</kbd> | Visit Documentation
<kbd>H-r</kbd> | Run current file and open REPL (`H` is hyper, *may* be bound to command on OSX)

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

View file

@ -0,0 +1,26 @@
(defvar racket-packages
'(racket-mode))
(defun racket/init-racket-mode ()
(use-package racket-mode
:defer t
:config
(progn
(use-package smartparens :config
(progn (add-to-list 'sp--lisp-modes 'racket-mode)
(when (fboundp 'sp-local-pair) (sp-local-pair 'racket-mode "`" nil :actions nil))))
(sp-local-pair 'racket-mode "'" nil :actions nil)
(evil-leader/set-key-for-mode 'racket-mode
"ml" 'evil-lisp-state
"mt" 'racket-test
"mr" 'racket-run
"mg" 'racket-visit-definition
"mhd" 'racket-doc)
;; Bug exists in Racket company backend that opens docs in new window when
;; company-quickhelp calls it. Note hook is appendended for proper ordering.
(when (configuration-layer/package-declaredp 'company-quickhelp)
(add-hook 'company-mode-hook
'(lambda () (when (equal major-mode 'racket-mode) (company-quickhelp-mode -1))) t))
(add-hook 'racket-mode-hook
'(lambda ()
(define-key racket-mode-map (kbd "H-r") 'racket-run))))))