Snippets
Use the snippets: configure snippets
action to create a new snippets file or edit a existing snippets file for a specified scope.
The snippets are located in ~/.config/zed/snippets
directory to which you can navigate to with the snippets: open folder
action.
Example configuration
{
// Each snippet must have a name and body, but the prefix and description are optional.
// The prefix is used to trigger the snippet, but when omitted then the name is used.
// Use placeholders like $1, $2 or ${1:defaultValue} to define tab stops.
// The $0 determines the final cursor position.
// Placeholders with the same value are linked.
"Log to console": {
"prefix": "log",
"body": ["console.info(\"Hello, ${1:World}!\")", "$0"],
"description": "Logs to console"
}
}
Scopes
The scope is determined by the language name in lowercase e.g. python.json
for Python, shell script.json
for Shell Script, but there are some exceptions to this rule:
Scope | Filename |
---|---|
Global | snippets.json |
JSX | javascript.json |
Plain Text | plaintext.json |
To create JSX snippets you have to use javascript.json
snippets file, instead of jsx.json
, but this does not apply to TSX and Typescript which follow the above rule.
Known Limitations
- Only the first prefix is used when an list of prefixes is passed in.
- Currently only the
json
snippet file format is supported, even though thesimple-completion-language-server
supports bothjson
andtoml
file formats.
See also
For more configuration information, see the simple-completion-language-server
instructions.