Jak dát na konec řádku s vim?
Chtěl bych použít p
umístit nějaký text na konec aktuálního řádku bez pohybu kurzoru.
Upravit:
Například bych chtěl zkopírovat slovo na konec řádku, takže Ke zkopírování slova používám yw
a jak jej tedy mohu umístit na konec aktuálního řádku?
Komentáře
- Co tím myslíte?
- Pokud chcete mapovat, můžete zkusit toto:
nnoremap ,p m'yiw$p``
. Stiskněte,p
a slovo pod kurzor by mělo být vloženo na konec řádku. Místo nakonec ' nepotřebujete, ' zde je, protože ' neví, jak formátovat kód obsahující dvojitý backtick bez něj.
Odpovědět
Pokud chcete kurzor zpět na předchozí pozici po vložení textu na konec řádku můžete použít značky:
ma$p`a
-
ma
nastavuje značkua
na aktuální pozici -
$p
Jak je vysvětleno, jsou uvedeny další odpovědi text na konci řádku -
(backtick)a
vraťte se do polohy označenéma
Odpověď
Chcete „dát“, ne „tisknout“.
-
Přesuňte kurzor na konec řádku pomocí
$
. -
Stiskněte
p
„umístit“ obsah nepojmenovaného registru (to, co jste vytrhli pomocíyw
) za kurzorem.
Viz :help p
, :help registers
, :help :print
.
Komentáře
- ano, omlouvám se! Chtěl bych však tisknout na konec řádku bez pohybu kurzorů. Je to možné?
- Ne. Musíte přesunout kurzor na místo, kam chcete umístit.
Odpovědět
Pokud správně rozumím, můžete chcete umístit slovo na konec řádku.
Můžete to udělat pomocí:
$p
$
přesunout kurzor na konec řádku, p
put.
Příkaz print
se naopak používá k zobrazení řádků vašeho souboru, např.
:1,2p "print the first and second line.
Ref:
-
:h p
(put) -
:h :p
(tisk)