21

upper_caselower_case命令:

{ "keys": ["ctrl+k", "ctrl+u"], "command": "upper_case" },
{ "keys": ["ctrl+k", "ctrl+l"], "command": "lower_case" },

我正在搜索将字符串的第一个字母大写的命令,可以将其分配给自定义快捷方式。

4

2 回答 2

49

Edit -> Convert CaseTitle Case选项。以下键绑定应该可以工作:

{ "keys": ["ctrl+k", "ctrl+t"], "command": "title_case" }

将此添加到您的自定义键盘映射中,它将覆盖CtrlK, CtrlT-的默认命令fold_tag_attributes。或者,您可以使用

{ "keys": ["ctrl+k", "ctrl+i"], "command": "title_case" }

它没有分配给默认 Sublime 键盘映射中的任何内容。

如果您对其他类型的转换感兴趣,请查看Case ConversionPackage Control 上的插件。它安装了snake_casecamelCasePascalCasedot.case和的命令dash-case,以及一些其他实用程序,例如用斜线分隔单词的功能。

于 2015-03-16T16:21:51.760 回答
1

答案是标题案例,但 OP 要求我可以收集到句子案例。

这是所有情况下的正则表达式‍♂️</p>

在 sublime 中按Ctrl+H调出替换对话框并单击正则表达式按钮。

在查找框中使用:(^|\.\s+|…\s|\t)([a-z])

在替换框中使用:\L\1\U\2


此外,您可以使用此处找到的名为 RegReplace 的插件:https ://packagecontrol.io/packages/regreplace ,以便您可以将其添加到菜单、命令或上下文菜单中。

我在这里添加了所有基本案例示例,只是为了展示如何将 RegReplace 项嵌套在上下文单击菜单的子菜单中。

安装后转到:Perferences>Package Settings>RegReplace>Rules - User并粘贴以下内容。

{
  "format": "3.0",
  "replacements": {

    "case_lower":
    {
      "find": "(.+)",
      "replace": "\\L\\1",
      "greedy": true,
    },

    "case_sentence":
    {
     "find": "(^|\\.\\s+|…\\s|\\t)([a-z])",
     "replace": "\\L\\1\\C\\2",
     "greedy": true
   },

   "case_title":
   {
    "find": "\\b(\\w)(\\w+)",
    "replace": "\\C\\1\\L\\2",
    "greedy": true,
  },

  "case_upper":
  {
    "find": "(.+)",
    "replace": "\\C\\1",
    "greedy": true,
  }

}
}

然后再次转到菜单并转到:Perferences>Package Settings>RegReplace>Settings并将以下内容粘贴到将出现在右侧面板上的用户文件中。

{

 "selection_only": true, // Optional but I prefer to only replace the selection.

 "extended_back_references": true // true allows the \l\1 to return the text to lowercase or others.

}

并将其设置为菜单转到文件:...\User\Context.sublime-menu并粘贴:

[
  {"caption" : "-"},

  // https://packagecontrol.io/packages/regreplace
  {
    "caption": "Reg Replace",
    "children":
    [
      { "caption": "Convert Case: Lower", "command": "reg_replace", "args": {"replacements": ["case_lower"]} },
      { "caption": "Convert Case: Sentence", "command": "reg_replace", "args": {"replacements": ["case_sentence"]} },
      { "caption": "Convert Case: Title", "command": "reg_replace", "args": {"replacements": ["case_title"]} },
      { "caption": "Convert Case: Upper", "command": "reg_replace", "args": {"replacements": ["case_upper"]} }
    ]

  }

]

可以在此处找到更多 RegReplace 示例:Perferences>Package Settings>RegReplace>Rules - Example

这是我的上下文菜单

上下文菜单

于 2021-04-13T15:21:49.603 回答