Ik startte Vi op mijn Ubuntu-machine. Maar ik ben nieuw bij Vi, en nu kan ik niet stoppen. Ik zie de editor en ik kan tekst schrijven, onderaan staat een label “opname”.
Hoe stop ik Vi?
Reacties
- De " opname " door de manier waarop je bezig was met het opnemen van een macro. Niet dat dat er meer toe doet.
- Deze vraag brengt zon " plezier " herinneringen. Ik ' ben echter zo blij dat ik over dat gevoel heen ben gekomen.
- Het stoppen met Vim is nu een meme geworden.
- Voor degenen die ' die grap nog niet hebben gezien: twitter.com/iamdevloper/statuses/435555976687923200
- Stack Overflow: één miljoen ontwikkelaars helpen Vim te verlaten , Hoe de Vim-editor te verlaten ? , Help in vim afsluiten
Antwoord
vim is een modale editor . Druk op de ESC -toets om in de Normale (commando) modus te komen, typ vervolgens : q en druk op Enter .
Om af te sluiten zonder wijzigingen op te slaan, typ : q! en druk op Enter .
Zie ook Wegkomen in Vim-documentatie.
Opmerkingen
- Bedankt: ik heb die commandos geprobeerd, maar nadat ik ze had uitgevoerd, werd gevraagd met:
E37: No write since last change (add ! to override)
. Ik heb niets om op te slaan. - Gebruik
:wq
als je wilt bewaren wat je hebt bewerkt en sluit af.:q!
als je wilt afsluiten en je wijzigingen achter wilt laten. - Of als je ' iets hebt geschreven dat je wilt om een kopie van
:w newFileName.txt
te maken, en vervolgens het alleen-lezen probleem buiten vi of vim op te lossen. - stop
:q
; geforceerd stoppen:q!
; sluit af en sla:wq
of:x
- @Jonas op, probeer de volgende keer
:qall!
, ik vermoed dat je meer bestanden hebt geopend in één enkele buffer.
Answer
Ik gebruik ctrl + [ om de esc -reeks te genereren, dit weerhoudt me ervan mijn vingers van de startrij te moeten verplaatsen (onthoud de esc sleutel bevond zich op een andere plaats toen vi
werd uitgevonden. :wq
zal alle bestanden schrijven, ongeacht of dit noodzakelijk is. Ik raad aan om ZZ
(wat shift + z tweemaal is) dat alleen zal schrijven als er een wijziging is aangebracht in het bestand. Ook :xa
is hetzelfde als ZZ
behalve als je meer dan 1 bestand open hebt staan in de editorinstantie (zoals vim tabs). opmerking: Ik weet niet zeker of dit allemaal 100% compatibel is met alle vi-klonen, maar ik weet dat het werkt met vim
Opmerkingen
- Bedankt. Het
ZZ
commando lijkt nuttig te zijn. Ik kan het punt zien metCtrl+[
maar ik ' m gebruik een Zweedse toetsenbordindeling en ik moet op om[
te krijgen, zodat dat voor mijCtrl+AltGr+8
zou zijn 🙁 - Let ook op
ZQ
is in feite hetzelfde als:q!
. Dit is echter niet standaard.ZZ
, op de aan de andere kant is gespecificeerd in POSIX .
Antwoord
Het verlaten van de vi is een andere manier is Esc : x .
De optie wordt gebruikt om tegelijkertijd op te slaan en af te sluiten.
Reacties
- Merk op dat net als
ZZ
,:x
schrijft het bestand alleen als de inhoud is gewijzigd, in tegenstelling tot:wq
.
Antwoord
Zoals Sinan zei, vim is een modale editor. wilt weten of dat voor u werkt, moet u misschien wat tijd investeren en vimtutor
gebruiken, wat een interactieve manier is om vim te leren. (Het behandelt ook hoe u afsluit, wat de modi betekenen en wat u in elke modus kunt doen).
Antwoord
Na wijziging, drukt u op ESC en het gegeven commando :wq!
.
Hierdoor wordt de nieuwe wijziging met kracht naar het alleen-lezen bestand geschreven. Eerder werkte het niet omdat het bestand alleen-lezen is.
Opmerkingen
- Waarom beantwoord je een vraag van 4 jaar geleden, met in feite een herhaling van het beste antwoord?Het ' s sowieso verkeerd: hierdoor wordt ' niet geforceerd om een alleen-lezen bestand te schrijven – het zal proberen te schrijven, kan mislukken en zal dan geforceerd stoppen zonder op te slaan.
- Ik heb het geprobeerd met de vorige opmerkingen en het werkte niet. Ik dacht dat het nuttig zou zijn om te delen wat ik heb gedaan. Het is niet belangrijk wanneer de vraag werd gepost, maar of de oplossingen van toepassing zijn of niet.
Antwoord
probeer de combinatie van control en Z
Reacties
- Hierdoor blijft vi op de achtergrond;