gJ
Поєднання робить це; від :help gJ
:
Приєднуйтесь до [лічильника] рядків, як мінімум два рядки. Не вставляйте та не видаляйте пробілів.
Ви можете відновити його J
, якщо хочете зберегти натискання клавіші:
:nnoremap J gJ
Зауважте, що це не видаляє пробілів, тому якщо або поточний рядок закінчується пробілом, або наступний рядок починається з одного або декількох пробілів, вони залишаться як є .
Тому:
Hello
world
Стає:
Hello world
Ми могли б використати Jx
в цьому випадку, тоді це буде Helloworld
, але це не спрацює у всіх випадках; з довідки:
Приєднуйтесь до виділених ліній, як мінімум, у двох рядках. Вийміть відступ і вставте до двох пробілів
[...]
Ці команди, за винятком "gJ", вставляють один пробіл замість, якщо немає пробілу, або наступний рядок починається з ")".
Тому в деяких випадках більше одного простору або пробілу не вставлено. Наскільки я бачу, не існує простого способу змінити таку поведінку; Я створив функцію для зміни, gJ
щоб завжди приєднуватися без пробілів:
" Like gJ, but always remove spaces
fun! JoinSpaceless()
execute 'normal gJ'
" Character under cursor is whitespace?
if matchstr(getline('.'), '\%' . col('.') . 'c.') =~ '\s'
" When remove it!
execute 'normal dw'
endif
endfun
" Map it to a key
nnoremap <Leader>J :call JoinSpaceless()<CR>
Дивіться також: :help J
,:help 'joinspaces'