Sublime Text - 使第一个字符成为大写的命令

时间:2015-03-16 15:16:17

标签: keyboard-shortcuts sublimetext ucfirst

upper_caselower_case命令:

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

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

2 个答案:

答案 0 :(得分:35)

Edit -> Convert Case 下是Title Case选项。以下键绑定应该起作用:

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

将此添加到您的自定义键盘映射,它将覆盖 Ctrl K Ctrl T - fold_tag_attributes。或者,您可以使用

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

未分配给默认Sublime键映射中的任何内容。

如果您对其他类型的转化感兴趣,请查看Package Control上的Case Conversion插件。它会为snake_casecamelCasePascalCasedot.casedash-case安装命令,以及一些其他实用程序,例如用于分隔单词的函数斜杠。

答案 1 :(得分:0)

答案是标题案例,但 OP 要求我提供句子案例以了解我能收集到的内容。

这是所有情况的正则表达式?‍♂️

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

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

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


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

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

安装后转到:Preferences>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,
  }

}
}

然后再次转到菜单并转到:Preferences>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 示例:Preferences>Package Settings>RegReplace>Rules - Example

这是我的上下文菜单

the context menu