2016-07-29 1 views
0

В Vim я могу «сменить слово» на ciw. Я могу «изменить абзац» с помощью cip.Как «изменить текущую строку» в Vim?

Могу ли я «изменить линию»?

+1

Ну, такое же количество клавиш + сдвиг: '^ Di' (это символ'^', а не CTRL) –

+1

@EugeneSh. Да. Я тоже понял Vc, но я искал текстовый объект. – rityzmon

+1

Похоже, нет эквивалента текстового объекта для строки. 'Vc' еще лучше .. –

ответ

3

Vim является очень гибкой конструкцией, так что вы есть много способов «изменить текущую строку» (и даже несколько определение «линии»):

0C 
^C 
cc 
S 

и так далее ...

Но вы может также создавать собственные «линии» текстовые объекты:

" excludes lnebreak 
xnoremap il g_o0 
onoremap il :<C-u>normal vil<CR> 

" includes linebreak 
xnoremap al $o0 
onoremap al :<C-u>normal val<CR> 

, что вы можете использовать так же, как и iwaw:

yal " yank current line, including linebreak -- like yy 
dil " cut current line, excluding linebreak -- like 0D 
cil " change current line, excluding linebreak -- like 0C 
+0

Вы забыли '_C' !! –

+0

Список не может быть полным и без '1 | C' :) –

+1

" и так далее ... ";-) – romainl

Смежные вопросы