如何在 Visual Studio 代码中切换文本大小写

Posted

技术标签:

【中文标题】如何在 Visual Studio 代码中切换文本大小写【英文标题】:How to switch text case in visual studio code 【发布时间】:2015-07-27 18:14:56 【问题描述】:

如何在 Visual Studio Code 中切换高亮文本的大小写? VS 通过 CTRL+SHIFT+U 和 CTRL+U 允许这样做。

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

【问题讨论】:

我在键绑定中找不到任何相关的快捷方式。当前版本可能不支持此功能。 更新:现在支持。转到文件 > 首选项 > 键盘快捷键并搜索“转换”。 【参考方案1】:

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

当我为它和 Sublime 之间的键盘快捷键差异制作指南时,我注意到了。

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

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

【讨论】:

【参考方案2】:

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

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


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

编辑:

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

change-case 扩展对于其他文本转换仍然有用,例如camelCase、PascalCase、snake-case 等

【讨论】:

“ctrl+t u”在 mac 版本上对我不起作用。我改用“ctrl+u”,因为默认情况下它没有映射到任何操作。 懒人:选择文字,ctrl + p,输入>transform选择小写或大写然后回车 @justanotherdev 评论的附录:可以在 File > Preferences > Keyboard Shortcuts 上为此命令配置键绑定 有没有办法让这些选项显示在右键菜单中(Nptepad++ 的方式)? @justanotherdev 老实说,这对我来说是一个更快的过程,而且它已经完成并且不需要“另一个扩展”【参考方案3】:

呼应justanotherdev的评论:

令人兴奋和有用:

    命令面板:CTRL + SHIFT + p(Mac:CMD + SHIFT + p) 输入>transform选择大写/小写并回车

【讨论】:

可以在文件 > 首选项 > 键盘快捷键上为此命令配置键绑定 pycharm 使用相同的命令 CTRL+SHIFT+ "u" 进行切换。为什么要创建两个可以使用的快捷方式?我意识到这不是答案,只是评论。 有时您有“混合大小写文本”,您想直接转到“全部大写”或“全部小写”,因此分别转换为大写和转换为小写更有意义。 非常有用,特别是多选【参考方案4】:

引自post:

问题是关于如何让 CTRL+SHIFT+U 在 Visual Studio 中工作 代码。这是如何做到的。 (版本 1.8.1 或更高版本)。您也可以选择不同的组合键。

文件->首选项->键盘快捷键。

将出现一个带有keybindings.json 文件的编辑器。放置以下 JSON 在那里并保存。

[
 
    "key": "ctrl+shift+u",
    "command": "editor.action.transformToUppercase",
    "when": "editorTextFocus"
 ,
 
    "key": "ctrl+shift+l",
    "command": "editor.action.transformToLowercase",
    "when": "editorTextFocus"
 
]

现在 CTRL+SHIFT+U 将大写选定的文本,即使是多行。在 同理,CTRL+SHIFT+L 会使选中的文本变为小写。

这些命令内置于 VS Code 中,无需扩展 让它们发挥作用。

【讨论】:

酷!这就是问题所要的答案! 我在 macOS 上选择了 cmd+shift+ucmd+shift+l。感觉刚刚好。 对于 Linux ctrl+shift+u 不起作用,因此请改用键 ctrl+u 大写 & ctrl+l 小写 是否可以在每个选项中使用一个键盘快捷键循环,而不是为每个选项使用单独的键盘快捷键?也就是说,我可以设置它,以便点击 shift+f3 将其更改为大写,点击 shift+f3 将其更改为小写,再次点击它会更改为 ToSnakecase,再次点击它会更改为 ToTitlecase?【参考方案5】:

Visual Studio Code 中拥有您可以在 Sublime Text 中执行的操作(CTRL+ K CTRL+UCTRL+K CTRL+L )你可以这样做:

点击“文件 -> 首选项 -> 键盘快捷键”打开“键盘快捷键” 点击“搜索键绑定”字段下的“keybindings.json”链接

[]括号之间添加:


    "key": "ctrl+k ctrl+u",
    "command": "editor.action.transformToUppercase",
    "when": "editorTextFocus"
,

    "key": "ctrl+k ctrl+l",
    "command": "editor.action.transformToLowercase",
    "when": "editorTextFocus"

保存并关闭“keybindings.json


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

【讨论】:

我不知道它是否是新的,但是当我这样做时,我所要做的就是在出现的搜索框中输入“大写”,然后单击“+”以添加新映射.用“小写”重复以覆盖另一个方向,我已经准备好了。 ctrl+k ctrl+u 通常保留用于取消注释...我已将我的设置为 alt+k alt+u 和 alt+k alt+l。【参考方案6】:

对于那些害怕在你的 vscode json 设置中弄乱任何东西的人来说,这很容易理解。

    打开"File -> Preferences -> Keyboard Shortcuts""Code -> Preferences -> Keyboard Shortcuts" 适用于 Mac 用户

    在搜索栏中输入transform

    默认情况下,Keybinding 下没有任何内容。现在双击 Transform to LowercaseTransform to Uppercase

    按您想要的组合键来设置您的键绑定。在这种情况下,如果复制 Sublime,我将按 ctrl+shift+u 输入大写字母或按 ctrl+shift+l 输入小写字母。

    按键盘上的 Enter 保存并退出。对另一个选项执行相同操作。

    享受KEYBINDING

【讨论】:

【参考方案7】:

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

这是通过4个"Single character" character classes (Perl documentation)完成的,即对于其后的匹配组

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

$0 匹配所有选定的组,而$1 匹配第一组,$2 第二组,等等。

点击搜索栏左侧的匹配大小写按钮(或AltC),并从@987654324 中借用一些示例@,现在这是可能的:

    Capitalize的话
查找:(\s)([a-z])\s 匹配空格和换行符,即“venuS”=>“VenuS”) 替换:$1\u$2
    不大写单词
查找:(\s)([A-Z]) 替换:$1\l$2
    删除单个camel case(例如 cAmelCAse => camelcAse => camelcase)
查找:([a-z])([A-Z]) 替换:$1\l$2
    单词中的大写字母全部小写(例如,LowerCASe => 小写)
查找:(\w)([A-Z]+) 替换:$1\L$2 备用替换:\L$0
    单词中的小写字母全部大写(例如,upperCASe => uPPERCASE)
查找:(\w)([A-Z]+) 替换:$1\U$2
    上一个大写(例如,大写 => 大写)
查找:(\w+)([A-Z]) 替换:\U$1$2
    前一个小写(例如 LOWERCase => lowerCase)
查找:(\w+)([A-Z]) 替换:\L$1$2
    其余部分大写(例如 upperCase => upperCASE)
查找:([A-Z])(\w+) 替换:$1\U$2
    其余部分小写(例如 LOWERCASE => lOwercase)
查找:([A-Z])(\w+) 替换:$1\L$2
    Shift-right-uppercase(例如,Case => cAse => caSe => casE)
查找:([a-z\s])([A-Z])(\w) 替换:$1\l$2\u$3
    Shift-left-uppercase(例如,CasE => CaSe => CAse => Case)
查找:(\w)([A-Z])([a-z\s]) 替换:\u$1\l$2$3

【讨论】:

多么美妙的事情啊!这个答案是最好的!让我想起了 DreamWeaver 8,在那里我将使用正则表达式改造整个网站——尤其是臃肿的 MS 内容。无论如何,这在编写 DB2 到(小写)Postgres SQL 转换脚本时非常有用。【参考方案8】:

使用快捷键Ctrl + Shift + P打开命令面板提示符。

在命令中,调色板开始键入您希望转换为大写或大写的文本套件,然后选择您如下图所示呈现的相应选项。

【讨论】:

以上是关于如何在 Visual Studio 代码中切换文本大小写的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Visual Studio 中切换自动换行?

如何在 Visual Studio 中切换 .NET Core 项目的目标框架

在Visual Studio代码中查找和替换

如何在 Visual Studio 中突出显示文本中出现的搜索词?

visual studio 2015怎样切换团队tfs账号

如何从 Visual Studio 的文本编辑器中删除虚线?