如何在Visual Studio代码中切换高亮文本的情况?VS允许通过CTRL+SHIFT+U和CTRL+U。

是否有我可以设置的命令绑定来执行此操作,或者它是默认的一些其他组合键?


当前回答

以下是justanotherdev的评论:

令人兴奋和有用的:

命令面板:CTRL + SHIFT + p (Mac: CMD + SHIFT + p) 输入>transform pick大写/小写并按enter

其他回答

我写了一个Visual Studio Code扩展来更改大小写(不仅仅是大写,还有许多其他选项):https://github.com/wmaurer/vscode-change-case

要将大写命令映射到按键绑定(例如Ctrl+T U),单击File -> Preferences -> Keyboard shortcuts,并将以下内容插入到json配置中:

{
  "key": "ctrl+t u",
  "command": "extension.changeCase.upper",
  "when": "editorTextFocus"
}




编辑:

随着2016年11月VSCode的更新(发布说明),内置了通过命令editor.action.transformToUppercase和editor.action.transformToLowercase转换为大写和小写的支持。这些没有默认的键绑定。

更改大小写扩展对于其他文本转换仍然有用,例如camelCase, PascalCase, snake-case等。

以下是justanotherdev的评论:

令人兴奋和有用的:

命令面板:CTRL + SHIFT + p (Mac: CMD + SHIFT + p) 输入>transform pick大写/小写并按enter

根据v1.47.3 2020年6月版本,现在可以通过正则表达式替换(regex, CtrlH + AltR)在所选字符串中同时进行大写和小写切换:

这是通过4个“单字符”字符类(Perl文档)完成的,即,对于它后面的匹配组:

\l <=> [[:lower:]]:第一个字符变为小写 \u <=> [[:upper:]]:第一个字符变为大写 \L <=> [^[:lower:]]:所有字符变为小写 \U <=> [^[:upper:]]:所有字符变为大写

$0匹配所有选中的组,$1匹配第一组,$2匹配第二组,以此类推。

点击搜索栏左侧的Match Case按钮(或AltC),从一个旧的Sublime文本答案中借用一些例子,现在这是可能的:

大写的单词

Find: (\s)([a-z]) (\s匹配空格和新行,即“金星”=>“金星”) 替换:$ 1 \ u 2美元

Uncapitalize的话

发现:(\ s) ([a - z]) 替换:$ 1 \ l 2美元

删除一个骆驼箱子(例如cAmelCAse => cAmelCAse => cAmelCAse)

发现:([a - z]) ([a - z]) 替换:$ 1 \ l 2美元

小写字母全部来自单词中的大写字母(例如小写字母=>小写字母)

发现:(\ w) ([a - z] +) 替换:$ 1 \ L 2美元 可替换:\L$0

大写字母全部来自单词中的小写字母(例如Uppercase => Uppercase)

发现:(\ w) ([a - z] +) 替换:$ 1 \ U 2美元

大写字母优先(例如:Uppercase => Uppercase)

发现:(\ w +) ([a - z]) 替换:\ U $ 1 $ 2

小写字母在前面(例如小写字母=>小写字母)

发现:(\ w +) ([a - z]) 替换:\ L $ 1 $ 2

其余的大写字母(例如:Uppercase => Uppercase)

发现:([a - z]) (\ w +) 替换:$ 1 \ U 2美元

小写其余部分(例如小写=>小写)

发现:([a - z]) (\ w +) 替换:$ 1 \ L 2美元

shift -右大写(例如Case => Case => Case => Case)

发现:([a - z \ s]) ([a - z]) (\ w) 替换:$ 1 \ \ u l 2美元3美元

Shift-left-uppercase(例如CasE => CasE => CasE => CasE)

发现:(\ w) ([a - z]) ([a - z \ s]) 替换:\ u $ 1 \ l $ 2 $ 3

我认为这是目前缺少的功能。

我注意到,当我做一个指南,键盘快捷键之间的区别,它和Sublime。

虽然这是一个新的编辑器,但如果他们在新版本中添加它,我不会感到惊讶。

来源:https://code.visualstudio.com/Docs/customization

在Visual Studio Code中,你可以在Sublime Text (CTRL+K CTRL+U和CTRL+K CTRL+L)中做这些事情:

打开“键盘快捷键”,点击“文件->首选项->键盘快捷键” 点击“keybindings”。出现在“搜索键绑定”字段下的链接 在[]括号之间添加: { 键:“ctrl+k ctrl+u”, “命令”:“editor.action.transformToUppercase”, “当”:“editorTextFocus” }, { 键:“ctrl+k ctrl+l”, “命令”:“editor.action.transformToLowercase”, “当”:“editorTextFocus” } 保存并关闭"keybindings.json"

另一种方法: 微软发布了“Sublime Text Keymap and Settings Importer”,这是一个从Sublime Text导入按键绑定和设置到VS Code的扩展。 ——https://marketplace.visualstudio.com/items?itemName=ms-vscode.sublime-keybindings