Bestand:
i am someone1. i am someone2. i am someone3 ~ ~
Documentatie zegt G
brengt me het einde van het bestand, maar het brengt me alleen naar het begin van de laatste regel. Ik wil naar het laatste teken van het bestand kunnen gaan, in dit geval 3, en op a
drukken en een punt typen.
Hoe doe ik dat?
Opmerkingen
- Dit kan handig zijn: Hoe zorg je ervoor dat vim naar de laatste regel, het laatste teken gaat en vervolgens in de invoegmodus?
Answer
Als je A
typt na G
, ga je naar de invoegmodus aan het einde van de laatste regel.
Als je alleen naar het laatste teken wilt gaan, dan is G-End
voldoende.
Reacties
-
A
dan isG
prima voor mij. Maar als ik ' niet wil bewerken, isG-End
dan de enige optie? Is er een enkele sleutel om dit te doen in plaats van twee? - Dat weet ik niet, maar dat is geen garantie. U kunt altijd uw eigen kaart maken als u dat wilt.
Antwoord
G
gaat naar de laatste regel en $
gaat naar het laatste teken van de regel, dus
G$
Opmerkingen
- Gilles, bedankt, dit is meer van wat ik zocht.
- Bedankt. Het ' is de moeite waard om het te verduidelijken ' is een hoofdletter G:
Shift
+g
Answer
Ctrl + End werkt ook, zowel in normaal als in insert modi. :help <C-End>
Opmerkingen
- Dit verplaatst de cursor alleen naar het laatste teken op de huidige regel.
- @sebix: Nee, kijk in de help.
- Werkt niet voor mij met vim 7.4
- @sebix: Het werkt prima voor mij, en de hulp tekst is vrij duidelijk. Misschien heb je een mapping of plug-in die het ingebouwde gedrag opheft.
Answer
- Verplaats naar laatste regel in bestand: G
- Verplaats naar eerste regel in bestand: 1G
- Verplaats naar einde van regel: $
- Verplaats naar begin van regel: ^
Opmerkingen
- Welkom bij U & L, dit voegt nauwelijks iets toe aan het bestaande en geaccepteerde antwoord.
Antwoord
De meeste antwoorden hier gaan uit van een niet-lege laatste regel van het bestand – wat waarschijnlijk het meest voorkomende geval is. Er zijn ook veronderstellingen over de beschikbaarheid van een END -toets op je toetsenbord. END sleutels zijn niet universeel beschikbaar en lege regels zijn mogelijk aan het einde van een bestand. Daarom kan het volgende worden gebruikt voor alle gevallen om de laatste (niet -end-of-line) karakter van een bestand:
?[0-9a-zA-Z]
Dit is slechts een van een paar (of misschien meerdere) commando-combinaties die het beoogde resultaat kunnen bereiken. Het patroon is:
"Set Cursor Position" + "Search Method" + "Pattern"
In in het geval van de bovenstaande opdrachtenreeks, ga je naar het begin van het bestand en zoek je omgekeerd naar een cijfer of letter.
Answer
u kunt grote getallen gebruiken zoals 99 of 999 en $. zoals 999 $
Reacties
- Dit zijn meer toetsaanslagen dan
G$
en minder zeker. Veel bestanden zijn langer dan 1000 regels. - Mee eens, maar deze oplossing opent de mogelijkheid dat je aan het einde van elke regel kunt plaatsen, stel dat je aan het einde van regel 13 kunt plaatsen. Je kunt 13 $ doen .