如何在自定义代码片段中大写字母?



我正在尝试使用vs code (javascript.json)创建一个片段来执行以下代码。

const [click, setClick] = useState(false)

我创建了下面的代码片段,它可以工作。

"My Custom useState": {
"prefix": "myus",
"body": [
"const [${1:name}, set${1:name}] = useState(${2|true,false|})"
],
"description": "My Custom useState"
}

但是在这个例子中,我想尝试找到一种将第二个单词大写的方法。所以上面的代码片段输出是

const [click, setclick] = useState(false)

目前,我回到代码中并手工更改为大写字母,但它减少了我编写的代码量。

试试这样做正文:

"const [${1:name}, set${1/(.)/${1:/capitalize}/}] = useState(${2|true,false|})"

那将会"将捕获组1的第一个字母(.)转换为大写字母${1:/capitalize}

在您的示例中,${1:/upcase}将执行相同的操作,因为捕获组仅包含第一个字母。通常,${1:/upcase}会大写整个捕获组,而不像${1:/capitalize}那样只大写第一个字母。

不能工作的是set${1:name/(.)/${1:/capitalize}/},其中使用默认的:name。您不能转换默认值。见https://github.com/microsoft/vscode/issues/56703

最新更新