Jest to rodzaj pisania, które często robię:
Kiedy jestem wszędzie na słowie, lubię je kopiować, więc mam prosty
:nmap <Leader>y yiw
A potem przechodzę do innego słowa (wszędzie na nim), aby zastąpić słowem szarpanym, więc piszę
:nnoremap cp "_diwP
(cp dla wyczyść i wklej)
przykład:
poprzednie szarpane słowo: „cześć”
Działa idealnie, jeśli wykonam cp na „pasku” (zamień na poprzednie szarpane)
lorem ipsum bar foo
> lorem ipsum hello foo
ale gdy słowo znajduje się na końcu wiersza (np. z „foo”), daje
lorem ipsum bar foo
> lorem ipsum barhello
Więc mam
:nnoremap cP "_diwp
Pytanie brzmi, jak „scalić”
:nnoremap cp "_diwP
:nnoremap cP "_diwp
na jednej mapie?
Dziękuje Ci za pomoc.
de
jest podobny,dw
ale nie usuwa białych znaków przed następnym słowem.Moja wtyczka ReplaceWithRegister zapewnia
gr
mapowanie podobne do twojego, które obsługuje specjalne przypadki takie jak twoje.Ponadto możesz być zainteresowany wtyczką Smartput ; zmienia polecenia
p
/P
, aby automatycznie dostosowywać spacje, przecinki itp. Za jego pomocą możesz również osiągnąć swój cel (chociaż będziesz musiał go użyć:nmap
,:nnoremap
aby nie włączyć wtyczki w swoich mapowaniach).źródło