(the |是光标的位置)。突然我意识到我忘了把“Gallicization”的G大写。于是,砰!我点击了ESC(它Map到我键盘上的caps lock键,所以只需要轻弹小手指),后面是b~A,然后我继续输入,就好像什么都没发生一样。错误的g在Emacs用户开始将右手移向箭头键的时间内就被大写了,我已经进入了句子的其余部分。 相比之下,如果我有一段时间没有使用宏了,我可能会花更多的时间来记住我给宏分配了什么键。更好的解决方案是非常好地学习重要的“核心”命令,这些命令可以根据简单的规则快速组合,具有数百万种可能的效果。
5条答案
按热度按时间bbmckpt71#
2sbarzqh2#
就我个人而言,这正是我不喜欢**为之制作宏的类型。没有必要用几十个这样的一次性解决方案来填充你的
.vimrc
,因为解决方案是如此自然地从标准Vim命令的“工具箱”中流出,以至于你可以像第二天性一样把它串起来。我打了一个长长的字:
(the
|
是光标的位置)。突然我意识到我忘了把“Gallicization”的G
大写。于是,砰!我点击了ESC
(它Map到我键盘上的caps lock键,所以只需要轻弹小手指),后面是b~A
,然后我继续输入,就好像什么都没发生一样。错误的g
在Emacs用户开始将右手移向箭头键的时间内就被大写了,我已经进入了句子的其余部分。相比之下,如果我有一段时间没有使用宏了,我可能会花更多的时间来记住我给宏分配了什么键。更好的解决方案是非常好地学习重要的“核心”命令,这些命令可以根据简单的规则快速组合,具有数百万种可能的效果。
nc1teljy3#
我发现自己经常这样做,并且使用EX命令行来遍历多个与条件匹配的记录。在本例中,我使用了如下所示的反向引用:
:%s/\(\w\)\(\w*\)/\U\1\L\2/g
而BOOM,问题在特定语境中的所有单词中解决。
编辑:也看看这里,刚刚意识到有这个链接,其中有类似的答案:
Capitalize first letter of each word in a selection using vim
ebdffaop4#
您还可以使用宏
然后在每次需要使用它时执行
@<register>
。qvtsj1bj5#
更改多行的大小写
您可以使用以下命令将第一个字母从小写更改为大写,反之亦然
步骤-1-
使用以下命令突出显示要更改的所有行:
<,
〉或使用ctrl+v
,然后使用j
或k
步骤-2-
使用
l
或h
将突出显示调整为每行的首字母步骤-3-
从大写字母到小写字母使用gu从小写字母到大写字母使用gU这将适用于您要突出显示的所有字母注意:您可以使用