J'utilise principalement Vim pour les modifications rapides plutôt que pour les longues sessions de travail. En ce sens, je trouve la séquence du clavier pour arrêter particulièrement laborieuse: Esc, Shift+ ;, w, q, Enter.
Comment quitter Vim (éventuellement en sauvegardant le document) avec le moins de frappe possible? Surtout du mode insertion.
Esc
pour sortir du mode insertion, car laEsc
touche est loin des autres touches des claviers modernes. UtilisezCtrl
+]
ou créez votre propre mapping.Réponses:
Shiftzz en mode commande enregistre le fichier et se ferme.
la source
Z
Z
(majuscule)? Aussi, n'avez-vous pas besoin d'être en mode commande pour que cela fonctionne, ce qui le feraitEsc
Z
Z
?ESC
Z
Q
pour quitter sans enregistrerZZ
en mode normal enregistre le fichier en cours en cas de modification et quitte ou ferme la fenêtre en cours / onglet (comme ,:x
mais pas:wq
qui écrit le fichier même si elle n'a pas été modifié).Pour quitter sans condition après avoir écrit tous les fichiers modifiés dans toutes les fenêtres, les onglets et les tampons masqués, vous avez besoin
:xa
(il ne sera toujours pas fermé si certains fichiers ne peuvent pas être écrits pour une raison ou une autre)Pour quitter inconditionnellement sans rien changer:
ZQ
(identique à:q!
).la source
command mode
est le nom traditionnel, mais je conviens quenormal mode
c'est moins ambigu. J'ai modifié la réponse.:x est une clé de moins que :wq
la source
Shift + Z Z
si!nno : ;
etnno ; :
, cependant. (plus vno la même chose). J'étais dubitatif à propos de l'échange, mais vous n'y retournerez jamais.:nno ,: :silent! unmap :<CR>:silent! unmap ;<CR>
et:nno ,; :nno ; :<CR>:nno : ;<CR>:vno ; :<CR>:vno : ;<CR>
soutenir le impairyap@"
et tel.Créez un mappage personnalisé pour les tâches fréquemment utilisées. Si vous quittez souvent vim, créez un mapping avec quelques touches, par exemple:
Si l'option
<leader>
est définie sur virgule, vouslet mapleader = ","
devez rapidement utiliser vim virgule pour quitter vim et enregistrer vos modifications. Si vous souhaitez enregistrer un trait de touche supplémentaire lorsque vous êtes en mode insertion, créez également un mappage correspondant en mode insertion:Mais méfiez-vous, cela pourrait accidentellement être vim quand vous frappez le
<leader
double.la source
Utilisez ceci pour faire la magie. Deux frappes seulement!
Ctrl+ spour sauver,
ctrl+ dpour sauvegarder et quitter,
ctrl+ qpour quitter les modifications ignorées.
1er Mettez ceci à votre ~ / .bashrc
2ème. Placez ceci dans votre ~ / .vimrc
3ème. Redémarrez vim et obtenez des jours plus productifs!
la source
Pourquoi pas juste Qpour 'Quitter'?
Cela ne nécessite qu'une frappe de touche décalée (ie Shiftet Q). C'est aussi une combinaison de touches que je frappe rarement par accident.
Par défaut, vim mappe Q vers
switch to "Ex" mode
. Si vous trouvez le mode "Ex" aussi inutile (ou gênant) que moi, vous ne manquerez pas sa fonction par défaut.Voici ce que j'ai dans mon
.vimrc
dossier:Si vous avez des tampons non enregistrés, il vous sera demandé avant de quitter.
la source
:q
par défaut. Merci pour le conseil.Voici un aide-mémoire pour VIM
Cheat-sheet-for-VIM
Un peu plus ::
Fermeture et enregistrement de fichiers
la source
Ma solution simple et pratique pour quitter et économiser de vim - est la suivante:
Ctrl+ Xraccourci.
Ajoutons ce code dans le
.vimrc
fichier:la source
<C-Q>
Bien , mais pourquoi n'est pas mappable?Essayer
Si vous utilisez fFtT, cela vous demandera un peu de temps pour vous y habituer, mais maintenant, cesser de fumer ne sert qu'à ;xenregistrer si nécessaire, ;qpour ne pas enregistrer. De plus, tout le reste va plus vite aussi.
la source