6
votes

Vim: Transition de la souris au mouvement

J'utilise beaucoup Macvim (et GVIM). Je connais et utilisez beaucoup de commandes de base ( B , w , $ , 0 0 , g ). Cependant, pour beaucoup de choses, telles que la sélection de lignes particulières sur l'écran ou un saut à une colonne particulière dans une ligne différente, j'utilise la souris (parfois de concert avec ma main gauche sur le clavier). Il aide également que ma souris a une roue de défilement et des boutons pour changer les onglets.

J'ai aussi besoin d'admettre ... J'utilise les touches fléchées sur mon clavier plutôt que sur hjkl .

Je pense que ma vitesse (et la posture de l'ordinateur) sera améliorée en ne faisant pas échapper à partir du mode insertion et de garder les deux mains sur la partie principale du clavier.

Qu'est-ce qui vous convaincu d'abandonner la souris? Quels sont les raccourcis les plus utiles pour se déplacer rapidement entre les lignes et les colonnes, le défilement, etc.?

Cette question est inspirée par Cet article récent


3 commentaires

Ne vous inquiétez pas pour HJKL. Pour moi (un utilisateur de Dvorak), ils sont tous au-dessus du clavier.


Je ne suis pas d'accord avec Kyle. Si vous êtes un utilisateur de QWERTY KB régulier, utilisez HJKL. Commencez avec JK. H et L sont des mouvements horizontaux moins importants mais viendront à vous plus tard. Pensez à Home Row, touchez Taper, ressentir le J Bump et faire du travail.


J'utilise Dvorak et trouve qu'il est pratique que JK soit à côté de l'autre dans la commande "droite" et que hl sont d'autre part et vaguement aux bons endroits ... :) Bien que sur mon Kinesis Avantage Cela n'a pas beaucoup d'importance car les touches fléchées sont là aussi ...


10 Réponses :


5
votes

Plus j'ai utilisé le mouvement du clavier dans Vim, moins je voulais utiliser la souris. Cela n'aide pas les périodes prolongées de temps où je me déplace constamment du clavier à la souris peut prendre un péage sur mon poignet.

Si vous voulez forcer à faire des choses la voie Vim, débranchez votre souris pendant un moment! Plus vous utilisez le clavier, plus vous allez adorer. Cela a fonctionné pour moi.

Pour se déplacer entre les lignes, j'utilise généralement jk mais je passe souvent aux lignes à l'aide de : line_num . Accéder à une colonne spécifique dans une ligne, j'utilise généralement wbe ^ 0 $ et mettre des modificateurs devant w , b ou E si je saute à travers plusieurs mots. Et il y a aussi les versions décalées, wbe qui sont également utiles souvent.


0 commentaires

3
votes

Je dois admettre que j'utilise souvent les touches fléchées pour un mouvement spécifique dans Vim. J'utilise rarement hjkl. Cependant, je trouve que la majeure partie de ma navigation est effectuée avec d'autres commandes telles que W (sauter un mot en avant), B (sautez un mot à l'envers). Combinez cela avec des modificateurs tels que 3W (3 mots en avant). : Passer à une ligne spécifique.

Je n'ai jamais vraiment dû abandonner la souris depuis que je n'ai jamais vraiment commencé avec ça. Tout ce que je peux dire, c'est que tenter d'utiliser des éditeurs sans tous les raccourcis clavier que Vim peut se sentir assez douloureux.


0 commentaires

0
votes

J'ai appris VI pour moi, la souris n'a jamais été utilisée avec un éditeur de texte.

Je n'utilise pas hjkl sauf lorsque la machine / réseau / clavier / tout autre entretien n'est pas configurée de manière confortable.


0 commentaires

8
votes

Je pense que ma vitesse (et la posture à l'ordinateur) sera amélioré par non avoir à échapper à partir du mode insertion

Non, vous devez vous échapper du mode Insérer juste après avoir tapé ce que vous voulez. Cela devient rapidement un réflexe, de sorte que vous ne perdez pas vraiment de temps (je appelle parfois même l'évasion après avoir terminé un formulaire Web ...). Le mode normal n'est pas seulement pour vous déplacer, il est utilisé pour effectuer la plupart des opérations (Enregistrer à partir de la saisie): par exemple la suppression ou le déplacement des sections de texte. Vous bénéficiez également d'entrer en mode insertion avec la clé appropriée: o pour démarrer une ligne, s pour remplacer une ligne (tout en conservant l'indentation), A Pour passer à la fin de la ligne, C + Motion Pour remplacer quelques mots ou jusqu'à ce qu'un caractère donné ... Toutes ces tasses sauvegardent.

La souris semble rapide, mais en réalité, ce n'est pas précis, vous perdez donc le temps (en plus de la constante et d'avant sur le clavier). Vim a une longue liste de commandes mobiles (voir : Aide USR_03 ) Qui, quand maîtrisé, sont plus rapides que la souris dans la plupart des situations.

Utilisez la recherche au maximum que vous pouvez ( / , ? , * , # f , t ...). J'utilise personnellement ctrl + ( d , u , f , b ) a parcelle. Aussi, Ctrl + ( o , i ) et `` sont vraiment utiles pour revenir là où vous étiez auparavant une recherche ou quelque chose d'autre.

h , j , k , l est là pour placer votre main droite près de commandes utiles ( i , u , o ...): j'ai toujours mes doigts sur eux. Les flèches vous forcent à déplacer votre main beaucoup.

Essayez de regarder quelques commandes dans : Aide , puis utilisez-les beaucoup et vous obtiendrez des habitudes sur ce que vous devez utiliser pour déplacer en fonction de la situation. Personne n'utilise Vim de la même manière.


2 commentaires

+1, mais ce n'est pas pourquoi H, J, K et L sont là où ils sont. Ils sont là parce que les ordinateurs cible lorsque VI a été écrit pour la première fois n'avait pas de clés de flèche dédiées.


@Randy Morris +1 pour les trivia geek.



1
votes

Vous pouvez sérieusement tourner votre vie autour de JK dans HJKL.

nnoremap <c-k> ddkP "move current line up one
nnoremap <c-j> ddp "move current line down one
vnoremap <c-j> dp'[V'] "move visual block down one
vnoremap <c-k> dkP'[V'] "move visual block up one

"These may be a bit more esoteric to me"
inoremap jj <esc>o "Insert mode can move to next line (works mid line)
inoremap kk <esc>O "Insert mode new line on previous line 


2 commentaires

Beaux conseils. J'aime particulièrement JJ ​​et KK. Je les ai ajoutés à mon VIMRC.


GT et GT sont également parfaits pour changer les onglets.



0
votes

Utilisez la souris là où cela a du sens. Il fait souvent (copier / coller vers et depuis d'autres applications d'interface graphique).

Pour répondre à votre question, cependant: une fois que vous avez commencé à utiliser Vim en tant qu'outil pour transformer des bits de texte avec des macros, les mouvements commenceront tous à tomber en place;)


0 commentaires

3
votes

Je voudrais exécuter vimtor à partir de la ligne de commande (terminal.app dans OS X). Il exécute vim avec un document de didacticiel. Ce document était ce qui m'a vraiment fait réaliser le pouvoir de certaines des commandes. Vous allez chercher certains qui vous sont plus utiles et gagnez plus au fil du temps. Finalement, vous vous retrouverez à l'aide de la souris de moins en moins.


1 commentaires

J'aimerais pouvoir donner plus +++



0
votes

Je pense que vous vous demandez s'il y a un moyen rapide de se déplacer en mode insertion (sans utiliser les touches de la souris ou des flèches) mais malheureusement, il n'y a pas; Vous devez échapper à un mode d'insertion. Cependant, je sais que sauter tout le chemin de votre clé ESC peut être vraiment ennuyeux, c'est pourquoi j'ai eu l'habitude de s'échapper avec Ctrl + c , c'est beaucoup plus rapide.


1 commentaires

Vous pouvez également utiliser Ctrl- [ qui est un alias pour ESC. Ctrl-C est plus destructeur car il va abandonner la commande actuelle plutôt que de quitter le mode insertion.



3
votes

Une commande qui améliorera vraiment vos vitesses de mouvement est f . f plus un caractère passera à la première occurrence de ce caractère sur la ligne actuelle. Appuyez sur ; passera à la prochaine occurrence. Bien sûr, cela peut être utilisé en combinaison avec d'autres commandes. Donc, par exemple, supprimer tous les caractères jusqu'à la première parenthèse de fermeture est obtenu en appuyant sur d + f + ) .


2 commentaires

Et f (majuscule F) sautera au caractère précédent.


et t et t sont comme f et f mais n'incluent pas le caractère cible. Vous voulez supprimer la citation de clôture? dt "!



0
votes

Je n'utilise presque jamais Hjkl parce que c'est trop fastidieux. J'essaie habituellement de sauter directement à l'endroit où je veux aller. Il y a un superbe Feuille de triche là-bas (un Version DVORAK est disponible également (bien que ce soit en PDF)) que vous puissiez regarder et imaginer le Possibilités.

La plupart du temps, j'utilise f, f, t et t, et parfois ils sont améliorés en tapant un numéro de numéro comme d2t) supprimera jusqu'à la deuxième paren proche. Parfois, j'utilise la recherche. Beaucoup de temps que j'utilise W, W, B, B, E et E. Ils sont tous fantastiques.

Quand je vois que les utilisateurs de Vim n'arrivent pas sur la place en mode visuel juste pour supprimer le texte, cela me fait frémir, car il y a tellement de moyens plus facilement (et HJKL ne vous permet que de déplacer votre bras moins, ils ne changent pas le nombre. des presses à bouton).

Quelque chose que j'ai fait que je ne sais pas si c'est commun ou non est remodelé mes touches fléchées pour être et ainsi de suite. Pour une raison quelconque, j'ai commencé à arrêter toujours et à supposer que je serais de retour en mode normal, alors je viens de le faire faire ça ...

Le plus gros bummer sur Vim est que maintenant, quand je modifie quelque chose d'ailleurs, je frappe échapper à tout moment et de type : w après chaque changement ...


0 commentaires