Vim 取消缩进到行首的快捷方式
Vim shortcut for unindenting till the start of the line
所以我知道您可以使用快捷键 Shift+,(或 < ) 并且您可以通过在快捷方式前按数字重复应用它——例如,5 + < 将取消缩进5次。
有没有办法重复应用取消缩进直到到达行首?
一个选项是^d0
:移动到缩进行的开头,然后删除到整行的开头。
不过,有时 <<
然后混搭 .
更容易重复。
移动到 :left
您可以使用 :left
将行向左移动。这将删除所有缩进。
:left
有关详细信息,请参阅 :h :left
。
缩进放置
我经常发现自己想要 move/cut 一段代码和 put/paste 当前行的缩进级别。这可以通过 ]p
& [p
.
来完成
示例:
def foo():
pass
if x == 'bar'
print "hello world"
假设您在 if
线上,您可以执行以下操作:
dj]p
这将 put/paste 与 pass
内联的块产生:
def foo():
pass
if x == 'bar'
print "hello world"
注意:]p
& [p
需要寄存器按行排列才能正常工作或使用 unimpaired.vim
如需更多帮助,请参阅::h ]p
& :h linewise
所以我知道您可以使用快捷键 Shift+,(或 < ) 并且您可以通过在快捷方式前按数字重复应用它——例如,5 + < 将取消缩进5次。
有没有办法重复应用取消缩进直到到达行首?
一个选项是^d0
:移动到缩进行的开头,然后删除到整行的开头。
不过,有时 <<
然后混搭 .
更容易重复。
移动到 :left
您可以使用 :left
将行向左移动。这将删除所有缩进。
:left
有关详细信息,请参阅 :h :left
。
缩进放置
我经常发现自己想要 move/cut 一段代码和 put/paste 当前行的缩进级别。这可以通过 ]p
& [p
.
示例:
def foo():
pass
if x == 'bar'
print "hello world"
假设您在 if
线上,您可以执行以下操作:
dj]p
这将 put/paste 与 pass
内联的块产生:
def foo():
pass
if x == 'bar'
print "hello world"
注意:]p
& [p
需要寄存器按行排列才能正常工作或使用 unimpaired.vim
如需更多帮助,请参阅::h ]p
& :h linewise