Utilisateurs de Vim, où reposez-vous votre main droite?

Utilisateurs de vim de longue date, gardez-vous les doigts sur jkl; ou hjkl en mode normal?

La saisie tactile standard nous apprend que la position jkl; de la main droite a l’index sur la touche j , donc vos doigts sont sur la jkl; .

Mais les touches de déplacement standard de vim sont hjkl .

Je reviens dans le vim après plus de 10 ans (omg, je me suis fait vieux quand je ne faisais pas attention) et je me suis hjkl vers hjkl … mais cela rend plus difficile de taper des lettres en haut à droite, des accolades, etc. Je voudrais m’entraîner à utiliser la méthode la plus efficace / pragmatique maintenant, plutôt que de devoir me reformer plus tard.

Longtime, les utilisateurs de hardcore vim, quelle est la meilleure pratique?


Remarque:

  1. Plus grand chevauchement avec Comment les dactylographes tactiles parcourent-ils vi?
  2. Je pense que cela passe le test “subjectif” parce qu’il s’agit de cultiver délibérément une pratique exemplaire inconsciente et non pas simplement la préférence des gens

Je pense que jkl; est en fait l’utilisation la plus appropriée pour vi. D’abord, h et l , peu importe. w , e et b sont beaucoup plus utiles pour la navigation horizontale. En prime, est facile à obtenir si la langue l’exige. Avoir un doigt plus faible sur k fait mal, et vous n’avez pas besoin de votre doigt le plus fort sur le h , alors qu’il devrait être sur le j qui est probablement le plus utilisé des quatre.

Introduction

Aucune des deux solutions précédentes n’était satisfaisante à 100%. Je propose une 3ème voie, celle qui combine le meilleur des deux mondes

Ma recommandation: “down-up-left-right”

Gardez le haut / bas où ils sont, puis faites les 3ème et 4ème doigts à gauche et à droite

Ensuite, pour éviter d’écraser les fonctionnalités de base de Vim: lancer ce qui était utilisé auparavant ; au bouton h maintenant vide

En prime, la touche ” l ” signifie maintenant ” left “;)

noremap lh
noremap l
noremap h;


Les précédents “finalistes”, qui utilisent tous les deux la disposition “left-up-right” :


Choix 1: “hjkl”

La recommandation de @ alternative. Les clés restnt par défaut ( hjkl ), la main droite rest sur la ligne d’accueil ( jkl; )

  • avantages:
    • j (bas) et k (haut) restnt sur tes 2 doigts primaires, là où ils méritent
  • les inconvénients:
    • Vous devez aller plus loin pour h (à gauche) . Même si ce n’est pas aussi utilisé que w, e, b , c’est toujours un bouton de flèche sanglant et ce serait bien d’avoir sur la rangée à la maison
    • Fondamentalement: les 4 doigts ne reposent pas naturellement sur les boutons fléchés. Cela confond ma main

Choix 2: “jkl;”

Faites glisser ces 4 reliures sur 1 afin qu’ils soient assis sur la ligne à la maison:

noremap l
noremap lk
noremap kj
noremap jh

  • avantages:
    • Pas de confusion des doigts toutes les flèches sont sous les doigts naturellement
  • les inconvénients:
    • Comme dit alternativement, le haut / bas étant au 2ème et 3ème doigt est très “non optimal”
    • De même, le doigt le plus fort à gauche est aussi un gaspillage

Je garde les mains sur la rangée de départ, de la manière habituelle. Rarement, j’utilise la touche h pour le mouvement, car déplacer un espace vers la gauche n’est généralement pas un moyen efficace de se déplacer (et ne correspond pas vraiment à l’essence de Vim).

Bien que je comprenne la philosophie de Vim de disposer de tous les mouvements disponibles dans la rangée, j’ai trouvé que hjkl était contre-intuitif. Une carte beaucoup plus saine, je pensais que ce serait une configuration de type wasd-like avec ijkl

  nnoremap jh nnoremap kj nnoremap ik 

J’ai trouvé cela très facile à naviguer très naturellement.

 j:left i:up k:down l:right 

Pour activer / désactiver le mode insertion / normal, j’utilise personnellement Alt-e car j’utilise presque toujours Gvim et je n’ai pas à craindre que certains terminaux rencontrent des problèmes avec Alt.

  nnoremap  i inoremap  l 

Je comprends que hjkl est utilisé pour des raisons historiques (c’est la raison pour laquelle vim utilise les touches hjkl comme touches fléchées ) et ne repose sur aucune justification ergonomique.

Personnellement, je préfère suivre l’approche recommandée par le gestionnaire de fenêtres i3, comme expliqué dans la FAQ sur Pourquoi la configuration par défaut utilise jkl; au lieu de hjkl? est un choix ergonomique.

i3 utilise jkl; car ces touches constituent la “rangée de départ” sous votre main droite lors de la saisie tactile.

Cochez ceci sur vim en remappant le hjkl sur jkl;