mirror of
https://codeberg.org/tyy/aspm
synced 2024-12-23 04:49:29 -07:00
41 lines
1.3 KiB
Text
41 lines
1.3 KiB
Text
|
{
|
||
|
// Place your aspm workspace snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and
|
||
|
// description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope
|
||
|
// is left empty or omitted, the snippet gets applied to all languages. The prefix is what is
|
||
|
// used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
|
||
|
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders.
|
||
|
// Placeholders with the same ids are connected.
|
||
|
// Example:
|
||
|
// "Print to console": {
|
||
|
// "scope": "javascript,typescript",
|
||
|
// "prefix": "log",
|
||
|
// "body": [
|
||
|
// "console.log('$1');",
|
||
|
// "$2"
|
||
|
// ],
|
||
|
// "description": "Log output to console"
|
||
|
// }
|
||
|
"Create aspm subcommand": {
|
||
|
"scope": "rust",
|
||
|
"prefix": "subcommand",
|
||
|
"body": [
|
||
|
"use clap::Parser;",
|
||
|
"",
|
||
|
"use crate::commands::AspmSubcommand;",
|
||
|
"",
|
||
|
"/// $2",
|
||
|
"#[derive(Parser, Debug)]",
|
||
|
"pub struct $1Command { }",
|
||
|
"",
|
||
|
"#[async_trait::async_trait]",
|
||
|
"impl AspmSubcommand for $1Command {",
|
||
|
"\tasync fn execute(&self, state: crate::AspmState) -> Result<(), anyhow::Error> {",
|
||
|
"\t\t",
|
||
|
"\t\t",
|
||
|
"\t\tOk(())",
|
||
|
"\t}",
|
||
|
"}",
|
||
|
],
|
||
|
"description": "Create a template for an aspm subcommand"
|
||
|
}
|
||
|
}
|