Commit 689de28e authored by Pierre Balaye's avatar Pierre Balaye

~/emacs/layers/ can now be used with symlinks for private layers

parent f40791ed
#+TITLE: smartparens layer
# Document tags are separated with "|" char
# The example below contains 2 tags: "layer" and "web service"
# Avaliable tags are listed in <spacemacs_root>/.ci/spacedoc-cfg.edn
# under ":spacetools.spacedoc.config/valid-tags" section.
#+TAGS: layer|web service
# The maximum height of the logo should be 200 pixels.
[[img/smartparens.png]]
# TOC links should be GitHub style anchors.
* Table of Contents :TOC_4_gh:noexport:
- [[#description][Description]]
- [[#features][Features:]]
- [[#install][Install]]
- [[#key-bindings][Key bindings]]
* Description
This layer adds support for something.
** Features:
- Autocomplete
- Lint
- Refactor
- ...
* Install
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
add =smartparens= to the existing =dotspacemacs-configuration-layers= list in this
file.
* Key bindings
| Key Binding | Description |
|-------------+----------------|
| ~SPC x x x~ | Does thing01 |
# Use GitHub URLs if you wish to link a Spacemacs documentation file or its heading.
# Examples:
# [[https://github.com/syl20bnr/spacemacs/blob/master/doc/VIMUSERS.org#sessions]]
# [[https://github.com/syl20bnr/spacemacs/blob/master/layers/%2Bfun/emoji/README.org][Link to Emoji layer README.org]]
# If space-doc-mode is enabled, Spacemacs will open a local copy of the linked file.
;;; packages.el --- smartparens layer packages file for Spacemacs.
;;
;; Copyright (c) 2012-2018 Sylvain Benner & Contributors
;;
;; Author: Pierre Balayé <ulys@ITAK>
;; URL: https://github.com/syl20bnr/spacemacs
;;
;; This file is not part of GNU Emacs.
;;
;;; License: GPLv3
;;; Commentary:
;; See the Spacemacs documentation and FAQs for instructions on how to implement
;; a new layer:
;;
;; SPC h SPC layers RET
;;
;;
;; Briefly, each package to be installed or configured by this layer should be
;; added to `smartparens-packages'. Then, for each package PACKAGE:
;;
;; - If PACKAGE is not referenced by any other Spacemacs layer, define a
;; function `smartparens/init-PACKAGE' to load and initialize the package.
;; - Otherwise, PACKAGE is already referenced by another Spacemacs layer, so
;; define the functions `smartparens/pre-init-PACKAGE' and/or
;; `smartparens/post-init-PACKAGE' to customize the package as it is loaded.
;;; Code:
(defconst smartparens-packages
'(
yasnippet
yasnippet-snippets
smartparens
evil-smartparens
)
"The list of Lisp packages required by the smartparens layer.
Each entry is either:
1. A symbol, which is interpreted as a package to be installed, or
2. A list of the form (PACKAGE KEYS...), where PACKAGE is the
name of the package to be installed or loaded, and KEYS are
any number of keyword-value-pairs.
The following keys are accepted:
- :excluded (t or nil): Prevent the package from being loaded
if value is non-nil
- :location: Specify a custom installation location.
The following values are legal:
- The symbol `elpa' (default) means PACKAGE will be
installed using the Emacs package manager.
- The symbol `local' directs Spacemacs to load the file at
`./local/PACKAGE/PACKAGE.el'
- A list beginning with the symbol `recipe' is a melpa
recipe. See: https://github.com/milkypostman/melpa#recipe-format")
(defun smartparens/init-yasnippet ()
(use-package yasnippet :ensure t)
)
(defun smartparens/init-yasnippet-snippets ()
(use-package yasnippet-snippets :ensure t)
)
(defun smartparens/init-evil-smartparens ()
(use-package evil-smartparens :ensure t)
)
(defun smartparens/post-init-smartparens ()
(use-package smartparens
:diminish ""
:bind (("C-}" . sp-forward-slurp-sexp)
("C-{" . sp-forward-barf-sexp)
("C-)" . sp-splice-sexp))
:config (add-hook 'smartparens-enabled-hook #'evil-smartparens-mode)
)
)
;;; packages.el ends here
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment