spacemacs/layers/+completion/templates/README.org
pancho horrillo 3c20a65ff4 Fix typo in README.org
The sample `00:test_*.py` should read `00:test_.*.py`, as per https://github.com/mineo/yatemplate#description
2018-05-27 20:02:00 +03:00

2.3 KiB

Templates layer

Description

This layer provides templates to Spacemacs. A template consists of text that is automatically inserted into a new file when it is opened. This is done via yatemplate, which leverages yasnippet.

Features:

  • Auto-insert snippets when creating specific new files.

Install

To use this configuration layer, add it to your ~/.spacemacs. You will need to add templates to the existing dotspacemacs-configuration-layers list in this file.

Configuration

Drop your templates in ~/.emacs.d/private/templates or ~/.spacemacs.d/templates depending on which method you are using.

You can also specify a different location with templates-private-directory:

  (setq-default dotspacemacs-configuration-layers
    '((templates :variables templates-private-directory "~/mytemplates")))

Each file in this directory must be of the form XXX:regexp where regexp is a regular expression that will be matched against filenames. The prefix XXX can be used to enforce an ordering (templates that come first will have priority). It is not part of the final regexp. Therefore, more specific templates should come first. For example,

00:test_.*.py
01:.*.py

See the yatemplate documentation for specifics. Full yasnippet syntax is supported, so consult the yasnippet documentation for details.

Default insertions

Note that Emacs ships with some default templates. If these are not to your liking, set the layer variable templates-use-defaults to nil.

  (setq-default dotspacemacs-configuration-layers
    '((templates :variables templates-use-defaults nil)))

Querying

To disable the automatic querying each time a new file is opened, set auto-insert-query to nil.

  (setq auto-insert-query nil)