Quelle est la meilleure façon de vous forcer à maîtriser vi? [fermé]

205

Il y a longtemps, j'ai lu un article du créateur de viemu , clarifiant beaucoup d'idées fausses sur vi, et expliquant pourquoi c'est une bonne idée (et pourquoi il a été très populaire au cours des 30 dernières années +). Le même gars a également un grand ensemble de feuilles de triche graphiques qui enseignent les bases quelques bits à la fois.

Je suis convaincu.

En fait, je suis convaincu depuis 2 ans. Mais je n'ai toujours pas réussi à me forcer à apprendre vi en tant que mon éditeur principal, la courbe d'apprentissage est tout simplement trop élevée. Quand je me mets au travail, une productivité acceptable mais immédiate (en utilisant mon éditeur actuel) a jusqu'à présent gagné une productivité énorme plus loin sur la ligne (en utilisant vi).

Quelqu'un a-t-il de bons conseils pour franchir la courbe d'apprentissage? Il peut s'agir de conseils simples, d'un autre didacticiel ou d'un article, peu importe.

Edit: Notez que je connais les variantes vim / gVim , Cream et MacVim (etc.) de vi. J'ai gardé ma question sur vi pour me référer à la famille vi dans son ensemble. Merci pour toutes les bonnes réponses.

Mise à jour (avril 2009)

J'utilise Vim (plus précisément MacVim) dans ma vie professionnelle quotidienne depuis décembre dernier. Je ne reviens pas :-)

Bonne chance à tous dans leur maîtrise de Vim.

5 tours
la source
14
J'ai appris vim parce que je ne savais pas comment changer l'éditeur par défaut il y a des années. ;)
exister le
Comme il s'agit d'une mesure de l'absorption des connaissances au fil du temps, une courbe d'apprentissage abrupte est généralement une bonne chose, cela signifie que vous apprenez rapidement. :)
converter42
Ce matin, je luttais avec vi et parcourais Stack Overflow pour m'en distraire et voilà, c'est près du sommet! Super d'entendre que vous l'utilisez toujours, j'espère que je serai à votre place dans quatre mois.
Greg Noe
3
Juste comme remarque: saviez-vous que vous pouvez obtenir des plugins vim pour presque tout?! Vous pouvez obtenir un plugin vim pour firefox afin que toutes vos zones de texte agissent comme vim! Mais c'est plus intéressant qu'utile. Ce qui est utile (bien que je ne l'ai pas encore téléchargé) est le plugin vim pour eclipse. Maintenant cela semble utile!
sixtyfootersdude

Réponses:

125

Tout d'abord, vous voudrez peut-être prendre Vim; il a un ensemble de fonctionnalités largement supérieur avec tout ce que vi a.

Cela dit, il faut de la discipline pour apprendre. Si vous avez un emploi et que vous ne pouvez pas vous permettre de toucher à la productivité (sans vous faire licencier), je suggère de prendre un projet de week-end dans le seul but d'apprendre l'éditeur. Gardez sa documentation ouverte pendant que vous travaillez et soyez suffisamment discipliné pour ne pas vous décourager. Au fur et à mesure que vous en apprendrez plus, devenez efficace et commencez à compter sur la mémoire musculaire, il ne sera pas aussi difficile de s'y tenir.

J'utilise Vim depuis si longtemps que je ne pense même pas aux touches sur lesquelles appuyer pour rechercher, naviguer ou enregistrer. Et mes mains ne quittent jamais le clavier. Utiliser Vim est l'un des meilleurs choix que j'ai faits dans ma carrière de programmeur.

Lucas Oman
la source
15
Je l'ai appris au travail et je n'ai pas pu éviter un coup de productivité. Cela m'a aidé d'avoir un vimmer à côté de moi pour poser continuellement des questions. Trouvez quelqu'un qui connaît bien Vim et faites-vous des amis avec eux! Examinez rapidement les touches de navigation et maîtrisez les modes. Essayez-le en morceaux de 15 minutes, vous l'obtiendrez.
camflan
4
Je suis d'accord, continuez. Vous saurez que vous êtes là une fois que vous êtes obligé d'utiliser un nano ou un bloc-notes et cela vous rend fou!
Kyle Walsh
3
Après avoir commencé et cessé d'utiliser Vim pendant un an, j'ai trouvé que l'achat du livre Vim et le fait de le parcourir m'ont beaucoup aidé. J'essaie également de garder un état d'esprit de "Il doit y avoir un moyen plus rapide de le faire" et je continue constamment à chercher dans: l'aide pour améliorer les choses.
JD Frias
2
Gardez également une liste pratique des fonctionnalités avec lesquelles vous souhaitez vous familiariser. J'utilise vim depuis plus de 5 ans maintenant, et je garde toujours une note Tomboy avec de nouvelles choses que j'ai appris que je veux me rappeler d'utiliser.
Lucas Oman
65

La première chose que je ferais est de poser un morceau de papier ou un livre sur vos touches fléchées et vos touches ins / home / end / pgup / down. Ceux-ci ne sont pas nécessaires dans Vi.

Ensuite, je m'habituerais à appuyer sur Ctrl + [chaque fois que vous êtes invité à appuyer sur Échap. C'est beaucoup plus rapide et vous n'aurez pas besoin de retirer vos mains du clavier.

Ensuite, je regardais mes screencasts:

http://www.youtube.com/watch?v=FcpQ7koECgk

http://www.youtube.com/watch?v=c6WCm6z5msk

http://www.youtube.com/watch?v=BPDoI7gflxM

http://www.youtube.com/watch?v=J1_CfIb-3X4

Ensuite, il suffit de pratiquer la pratique de la pratique.

edit La raison d'éviter les touches fléchées est qu'elles vous ralentissent. L'un des plus grands avantages de Vim est la vitesse qu'il vous permet. Les touches fléchées vous empêchent également d'embrasser vraiment la nature modale, qui est très puissante une fois maîtrisée.

Aaron Jensen
la source
Je ne pense pas que les utilisateurs modernes de Vi / Vim devraient éviter les touches de curseur. Vous n'utiliserez probablement jamais Vi sur un système sans touches de curseur, il n'est donc pas nécessaire d'apprendre à les éviter et elles fonctionnent bien (de nos jours).
tialaramex
24
J'ai remappé la touche Caps-Lock de mon clavier sur Escape. Encore plus rapide que ctrl + [!
Chris AtLee
Je suis d'accord pour éviter les touches de curseur. L'un des avantages de l'approche du mouvement de Vi est qu'une fois que vous y êtes habitué, vous êtes prêt pour toutes les situations (lire: sur un ordinateur portable exigu ou dans des sessions à distance sur des systèmes d'exploitation étranges aka anciens Unices ou via des terminaux étranges)
webmat
8
J'ai utilisé les curseurs jusqu'à ce que je les ait désactivés dans mon .vimrc: map <Up> "" map <Down> "" map <Right> "" map <Left> "" Mes poignets sont reconnaissants que je me sois débarrassé de cette habitude!
Johan Kotlinski
2
Joey, les touches fléchées seraient en effet utiles, mais il est presque toujours préférable de quitter le mode d'insertion, de naviguer vers l'endroit où vous voulez être et de ressaisir l'insertion ou de changer ou n'importe quel mode pour faire ce que vous voulez faire. Frapper échapper ou ^ [est plus rapide que de déplacer vos mains en arrière et en arrière.
Aaron Jensen
39

Étape 0: apprenez à toucher le type. Sérieusement - si vos doigts ne savent pas où se trouvent les clés, alors vim va être pénible. Et même si vous rejetez vim, la saisie tactile améliorera votre programmation (demandez à Steve Yegge ) en faisant en sorte de surveiller la friction des liens. Il y a un grand nombre de logiciels qui peuvent vous aider à améliorer votre frappe.

Étape 1: utilisez vimtutor pour commencer. C'est dans gvim (sous le menu d'aide je pense) ou vous pouvez simplement taper 'vimtutor' sur la ligne de commande. Cela prendra 30 à 45 minutes de votre temps, puis vos doigts connaîtront les bases de vi / vim et vous devriez pouvoir modifier des fichiers sans vouloir lancer votre clavier par la fenêtre.

Étape 2: utilisez vim partout. Consultez cette question pour obtenir des conseils et des liens sur l'utilisation des raccourcis clavier vim et vi sur la ligne de commande, depuis votre navigateur Web, pour composer des e-mails, dans votre IDE ... Vous devez utiliser vim pour intégrer les raccourcis clavier dans votre mémoire musculaire.

Étape 3: en savoir plus sur vim. Vous n'aurez gratté la surface qu'avec vimtutor. Vous pouvez regarder cette vidéo ou lire cet article (à la fois sur les "Sept habitudes de modification efficace de texte". Vous pouvez lire des trucs et astuces sur StackOverflow . Vous pouvez parcourir les vimtips . En savoir un peu souvent serait mon conseil - il y a tellement là-bas que coller à des morceaux de la taille d'une bouchée sera le meilleur moyen de faire adhérer les connaissances.

Étape 4: Profit :)

Hamish Downer
la source
2
La dactylographie est un incontournable si vous souhaitez atteindre un certain degré de maîtrise. Mais si vous voulez vraiment vous perfectionner dans tous ces trucs informatiques, vous n'avez certainement pas besoin que quelqu'un vous le dise, vous le découvrirez facilement par vous-même. =)
sjas
vimtutor est super :-)
user454083
Manière assez accessible et scientifique de maîtriser vim. J'essaierai de l'utiliser pour me guider vers la route principale vers vim. J'espère que je pourrai m'en tenir à la fin.
YinchaoOnline
26

J'ai été un utilisateur de Vim de temps à autre au fil des ans (faisant le travail d'administration sys occasionnel). J'ai récemment commencé à consacrer plus de temps à mon travail de programmation. Je suggère également de commencer par gvim. Il s'intègre bien avec la plupart des environnements de système d'exploitation et (encore mieux), vous pouvez vous rabattre sur la souris lorsque vous en avez besoin :).

Pour commencer avec vim, exécutez le vimtutor (fourni avec gVim) une ou deux fois (prend environ une heure). Je ne peux pas exagérer à quel point cela a été utile pour moi! Surtout les premières parties sur les différentes façons de se déplacer dans un document, et comment les actions d'édition sont enregistrées avec des commandes de mouvement, etc., etc. Après cela, les choses seront BEAUCOUP plus claires.

Ensuite, commencez à faire des modifications mineures rapides avec elle (trucs de remplacement de bloc-notes) 'jusqu'à ce que vous soyez assez à l'aise pour effectuer des modifications utiles à un clip rapide. Ensuite, essayez d'y faire votre travail quotidien. Vous vous retrouverez à vouloir la commande "répéter la dernière action" dans d'autres éditeurs en un rien de temps!

Brian
la source
vous pouvez utiliser la souris dans vim normal en exécutant ": set mouse = a".
Stephen Paulger
19

Vous avez demandé de bons conseils pour franchir la courbe d'apprentissage sur l'éditeur de texte vi. La plupart des réponses précédentes suggèrent de ne pas utiliser d'autres éditeurs. Je pense que c'est un bon conseil. Passer à vi à partir d'un éditeur plus graphique nécessite un changement de mentalité. Cela nécessite une réflexion en termes de commandes, plutôt que des changements visuels.

Je n'ai utilisé que vi pendant de nombreuses années et je crois que la seule façon d'être productif est de mémoriser les commandes que vous utilisez régulièrement. Pour ce faire, j'ai fait une courte liste des commandes clavier les plus courantes. J'ai regroupé et codé par couleur ces commandes par fonction, c'est-à-dire déplacement du curseur, modification, recherche , etc. J'ai pris soin de n'inclure que les commandes les plus couramment utilisées que je ne connaissais pas. L'idée est de créer une référence rapide qui est également une aide à la mémorisation - pas de remplacer les écrans d'aide disponibles. Ensuite, j'ai imprimé cette liste et l'ai collée au mur derrière mon moniteur afin que je puisse la voir facilement. (Les feuilles de triche graphiques que vous avez mentionnées pourraient fonctionner mieux pour certains, mais sont probablement une meilleure source de référence qu'un outil de mémorisation.)

Voici la clé. Comme je me suis familiarisé avec l'une des commandes, j'ai tracé une ligne à l'aide d'un crayon. Je pouvais encore le voir si j'en avais besoin, mais c'était symbolique pour moi que j'avais maîtrisé cette commande. Cela m'a donné confiance et motivation car je pouvais voir des progrès réguliers. Une fois la plupart d'entre elles barrées, je les ai supprimées et j'ai ajouté certaines des commandes les plus rarement utilisées. J'ai continué ce processus jusqu'à ce que je sois satisfait de ma maîtrise de vi. Je savais que j'étais arrivé à ce point quand je me suis rendu compte que je n'avais pas rayé de commandes ou même regardé la liste depuis longtemps.

Il y a quelques années, j'avais besoin de travailler sur une plate-forme UNIX où vi était le seul éditeur disponible. J'ai acheté un petit livre de référence de poche sur vi, mais je l'ai à peine utilisé. J'ai fini par faire des listes et les afficher sur le mur comme je l'ai fait la première fois que j'ai utilisé vi. À la fin de la première semaine, j'étais très à l'aise même si cela faisait cinq ans que je n'avais pas utilisé vi.

TMarshall
la source
2
Je pense que c'est un excellent conseil et s'applique également à l'apprentissage d'autres outils comme un IDE, un débogueur ou même quelque chose comme Excel.
davidavr
11

Pour moi, VI est un bon éditeur d'urgence, mais ce n'est pas quelque chose que je veux utiliser s'il y a une autre alternative disponible. Je me rends compte que ce n'est pas pour tout le monde, je ne dis pas que c'est horrible ou quoi que ce soit, je préfère personnellement une interface utilisateur découvrable.

Mais vous devez vraiment connaître VI si vous faites quelque chose d'important sous Linux!

Il suffit donc d'apprendre les bases: i = insérer le mode esc = quitter le mode insérer: wq = enregistrer et quitter: q! = Ne pas enregistrer et quitter x = lorsqu'il n'est pas en mode insertion, supprimez le caractère. / = recherche

Cela vous aidera à traverser toute urgence d'édition. Il n'y a rien que vous ne puissiez pas faire avec ces quelques commandes (et la navigation bien sûr). Le reste, vous pouvez "Tack on" selon vos besoins.

Gardez cependant une référence ou un livre à disposition - lorsque vous DEVEZ utiliser VI, vous ne pourrez probablement pas naviguer sur le Web - mais la page de manuel peut être quelque peu utile.

Bill K
la source
4
la commande: help est l'une des plus utiles que vous pouvez apprendre au début - qui a besoin d'ouvrages de référence ou du Web lorsqu'il est intégré à l'éditeur?
zigdon
2
Aucun livre de référence requis si vous apprenez à utiliser: aide. Quant à «vous ne pourrez probablement pas naviguer sur le Web», familiarisez-vous avec les navigateurs lynx et liens. À la rigueur, vous pouvez même les utiliser pour parcourir le système de fichiers.
converter42
11

forcez-vous pas. le chemin vers la maîtrise de l'amour est.

jbarciela
la source
11

Vous devriez commencer avec vim (Vi IMproved) et surtout son interface graphique - gVim . L'interface graphique a des menus et sur Windows, vous pouvez utiliser les raccourcis copier, couper et coller, vous pouvez donc remplacer le Bloc-notes immédiatement. Et puisque les menus affichent les raccourcis (commandes vim), vous pouvez en apprendre beaucoup.

Une autre chose que vous devez faire depuis le début est de configurer vi selon vos besoins. Par exemple, vous pouvez transformer vim en un IDE Python . En faisant cela, vous n'aurez aucune excuse pour utiliser un autre éditeur, car vi vous offrira tout ce dont vous avez besoin.

Cristian Ciupitu
la source
Selon l'émulateur de terminal, l'utilisation de l'interface utilisateur est également plus rapide. :)
Arafangion
10

supprimez toutes les autres applications de l'éditeur de texte.

Ensuite, vous devrez l'apprendre.

Bob Dizzle
la source
9

Le moyen le plus simple de vous forcer pourrait être simplement de supprimer tous les autres éditeurs de votre machine. Débarrassez-vous de la tentation :)

Dana
la source
9

Chaque fois que vous effectuez une tâche d'édition complexe, continuez à vous demander s'il existe un moyen plus efficace de le faire. La plupart du temps, lorsque c'est quelque chose que vous pouvez décrire en termes simples (comme "échanger des paragraphes de texte" ou "supprimer tout après le caractère X dans les lignes commentées"), c'est quelque chose que vous pouvez faire en quelques touches dans vim.

Certaines fonctionnalités clés sont extrêmement utiles et vous cesserez de les utiliser tout le temps. Ceux que j'aime le plus sont:

  • Sélection de bloc (Ctrl-V)
  • Enregistrement macro (q)
  • Édition virtuelle (: set ve = all)
  • Expressions régulières
  • Tuyauterie vers des programmes Unix externes
  • Mappages de touches
  • Saisie semi-automatique (Cp, Cx Cp, Cx Cf)
  • La combinaison opération + mouvement (c'est incroyablement puissant)

Demandez aux autres programmeurs quelles fonctionnalités ils trouvent les plus utiles et adoptez celles qui correspondent le mieux à votre cerveau. Voler des idées aux autres .vimrc( voici les miennes )

Roberto Bonvallet
la source
8

EDIT: J'ai créé une carte flash sur le site de répétition espacée en ligne flashcarddb.com , au cas où vous seriez intéressé ...

  1. Utilisez un programme de carte flash à répétition espacée tel que mnemosyne , supermemo ou anki pour intégrer l'apprentissage et la conservation de nouvelles commandes dans votre routine quotidienne. Il ne suffit pas d'utiliser vim comme éditeur quotidien. Pour le maîtriser, vous devez stocker ces codes dans votre tête, en attendant le moment où ils sont la solution idéale à la tâche à accomplir.
  2. Maintenir un .vimrc avec des personnalisations
  3. Écrire ou éditer un plugin vim
Peter Nore
la source
8

J'ai écrit un guide pour une édition efficace avec Vim quelque temps. Cela peut vous être utile.

Je prendrais un peu de recul et me demanderais "pourquoi est-ce que je veux apprendre cet éditeur? Qu'est-ce qui me fait penser qu'il sera plus rapide ou meilleur que mon éditeur de texte actuel?" Découvrez ensuite les fonctionnalités qui vous rendront Vi (m) indispensable.

Par exemple, l'intégration CTags de Vim est complètement indispensable pour moi. Je travaille avec une base de code très, très grande, et la possibilité de passer à une définition de fonction ou de classe en une seule touche (quel que soit le fichier dans lequel il se trouve) est une fonctionnalité absolument meurtrière, sans laquelle j'ai du mal à travailler.

Utilisez votre fichier .vimrc pour créer des macros qui automatisent les tâches courantes.

Votre éditeur-sélecteur de pilote automatique choisira l'éditeur qui fera le travail le plus rapidement et avec le moins d'effort mental. Un petit travail de préparation assurera que l'éditeur est Vim. :-)

Jonathan
la source
1
le lien ne fonctionne plus
eugenevd
6

Deux choses qui amélioreront considérablement vos compétences vi:

  1. Pratique, pratique, pratique
  2. Nethack
Mark Witczak
la source
6

Ma suggestion: commencez petit. Commencez simplement par mémoriser un petit ensemble de commandes les plus utiles. Quand j'ai commencé vi, c'était mon top 10:

  • (Esc) pour revenir en mode commande (le plus important!)
  • a pour ajouter du texte après le curseur
  • A pour ajouter du texte à la fin de la ligne actuelle
  • x pour supprimer 1 caractère
  • dd pour supprimer 1 ligne
  • R pour remplacer le texte (écraser)
  • u pour défaire
  • : q! (Entrée) pour quitter sans enregistrer
  • : w (Entrée) pour enregistrer
  • ZZ pour enregistrer et quitter

De nombreuses modifications de base peuvent être effectuées en utilisant uniquement ces commandes. Une fois à l'aise, le reste ne semble pas trop difficile.

BTW, je voudrais ajouter que je comptais sur vi pour mon éditeur de texte principal, mais maintenant seulement si je le dois. Dans mon cas, la productivité est meilleure lorsque j'utilise des outils comme Emacs ou Visual Studio (veuillez noter: "dans mon cas"). Essayez plusieurs outils et choisissez celui qui améliore le plus votre productivité. Bonne chance!

Paulus
la source
Commande ZZ ne fonctionne pas dans MacVim
innuendoreplay
5

Cela peut paraître idiot, mais jouer à des jeux roguelike (comme Nethack ou Angband ) est une façon amusante de se familiariser avec l'utilisation des touches h/ j/ k/ lpour la navigation avec le curseur.

bk1e
la source
4

Notez tous les raccourcis et fonctionnalités que vous utilisez dans votre éditeur actuel pendant que vous l'utilisez au travail. Ensuite, asseyez-vous samedi matin et utilisez Google et le débordement de pile pour savoir comment faire chacun de ceux de vi. Probablement mieux si vous utilisez une ou plusieurs feuilles de papier pour cela.

Désactivez / supprimez maintenant les autres éditeurs au travail afin que cela vous prenne plus de temps pour les trouver et les réinstaller que de regarder votre feuille de comparaison et de le faire dans vi - c'est-à-dire que vous n'avez pas le choix.

Enfin, publiez votre liste de raccourcis croisés de votre ancien éditeur vers le nouveau sur votre blog.

Bonne chance!

Gars
la source
4

N'utilisez pas X11 ?

$ sudu rm /usr/local/bin/emacs

Changez votre shell de connexion en vi ?

D'abord, forcez-vous à utiliser ed , puis vi vous semblera un luxe?

Utilisez les raccourcis clavier vi dans bash ?

Commencez simplement à utiliser vi tout le temps?

Il me semble que l'apprentissage d'un éditeur n'est pas très différent de l'apprentissage d'une langue. L'immersion fonctionne mieux.

J'utilise vi pour des modifications très rapides ou lorsque je ne peux pas utiliser X11 pour une raison quelconque, mais je vis dans emacs . Les éditeurs vraiment puissants méritent de prendre le temps d'apprendre.

Jon Ericson
la source
3

Ma recommandation est de trouver des programmes simples et de les écrire, du début à la fin, en utilisant VI.

Il y a de fortes chances que vous soyez trop frustré au début par la courbe d'apprentissage pour vous forcer à les utiliser au travail ou dans tout environnement sensible au facteur temps.

Je l'ai déjà fait pour me familiariser avec les environnements / éditeurs, et cela fonctionne plutôt bien.

Si vous rencontrez des problèmes pour trouver des choses à écrire, je vous recommande de refaire les projets que vous avez faits à l'école (ou toute autre chose que vous avez faite précédemment). Cette méthode a l'avantage supplémentaire de vous permettre de voir à quel point vous êtes devenu un meilleur développeur. :)

Edit: oublié de mentionner que vous devez le faire entièrement depuis la console pour éviter toute tentation d'utiliser la souris!

TM.
la source
3

Je me souviens quand j'ai commencé à apprendre emacs, c'était après que j'étais déjà très à l'aise avec Vim, et j'étais dans le même bateau ou un bateau similaire que vous étiez, où je savais comment faire beaucoup de choses dans un autre éditeur, alors j'ai commencé en utilisant emacs, c'était toujours douloureusement lent.

Cependant, je pense que ce que vous aurez à faire, c'est d'absorber un peu la douleur, et toujours, toujours, assurez-vous de toujours consulter la documentation pour faire quelque chose que vous savez vous pouvez faire dans votre éditeur précédent, comme comme se déplacer à la fin d'une ligne ou sélectionner une région de texte.

Cela peut également être utile si vous avez un expert local en main pour vous poser des questions, ou si vous êtes comme notre entreprise, vous faites la promotion de la programmation par paires. De cette façon, lorsque vous essayez de faire quelque chose qui devrait être facile, vous pouvez simplement demander à quelqu'un, il vous montrera comment, et si vous utilisez régulièrement l'éditeur pendant quelques semaines, vous ne devriez pas avoir à demander plus puis quelques fois avant qu'il ne devienne une seconde nature.

Si vous n'avez pas de ressources locales, il existe de nombreux livres / tutoriels / fiches de référence en ligne qui devraient être en mesure de répondre à la plupart de vos questions.

En fin de compte, apprendre Vi, c'est comme apprendre d'autres compétences, il n'y a pas de solution miracle, et vous devrez accepter que, pendant un certain temps, vous serez moins productif que votre éditeur actuel. Continuez à vous dire: "D'autres personnes ont pu apprendre le Vi, et je suis au moins aussi intelligent qu'eux" (c'est ce que je me dis quand même :))

ben.prew
la source
3

La principale raison pour laquelle j'utilise viest ssh(ou Putty sous Windows): lorsque vous êtes connecté à distance à un serveur Unix, il viest toujours disponible. Et cela fonctionne avec le VT100 lorsque ni les touches de curseur ni le retour arrière / suppression ne sont mappés.

Avoir également un livre comme VI Editor Pocket Reference aide grandement.

Aaron Digulla
la source
3

gVIM a un très bon tutoriel (lien dans le groupe du menu Démarrer).

J'ai trouvé que travailler à travers cela a aidé à surmonter la bosse d'apprentissage initial; puis passer mon Visual Studio à ViEMU m'a aidé à affiner mes compétences VI.

De plus, les screencasts sur http://vimcasts.org/ sont super!

David Laing
la source
2

Vous pouvez mettre la main sur l'un des claviers Happy Hacker d'origine (pas de touches fléchées) et placer votre souris (sans fil) hors de portée chaque fois que vous commencez à éditer.

Garth Gilmour
la source
2

Il est facile d'écrire une grande liste de commandes / raccourcis, mais il est difficile de tous les mémoriser sans s'exercer.

Concentrez-vous sur une nouvelle commande à la fois. Quand il devient automatique, disons après l'avoir utilisé pendant une semaine ou deux, ajoutez-en un autre à votre répertoire.

Vous parcourrez un long chemin pour accomplir certaines choses à court terme - ce sont des opportunités évidentes pour de nouveaux raccourcis à apprendre.

D'après mon expérience, c'était plus facile lorsque j'essayais de ne pas en prendre trop à la fois.

Craig Hyatt
la source
2

Ma suggestion numéro un: apprendre à taper rapidement, sans avoir besoin de regarder le clavier.

Si vous ne pouvez pas toucher le type et cherchez toujours le colon ou le hjkl ou:% s / foo / bar, oubliez-le. La saisie peut être plus rapide que l'utilisation de la souris, mais si ce n'est pas le cas pour vous, vi ne fonctionnera pas.

Mais combinez de bonnes compétences de frappe, ssh et screen et vi seront naturels.

Michael Cramer
la source
2

Faites face au fait que cela créera un succès immédiat. Lorsque vous apprenez un nouvel outil, vous devez être capable de faire quelque chose que vous savez faire avec d'autres outils afin que le problème ne soit pas le vôtre. Après avoir utilisé le nouvel outil pendant un certain temps, il disparaîtra et vous ne vous concentrerez que sur le problème sous-jacent.

Avec quelque chose comme vim (comme d'autres l'ont dit, vim est largement supérieur à vi), il est important de relire et de parcourir régulièrement la documentation. L'interface est complètement indiscernable sans elle. À chaque nouvelle lecture, vous verrez une fonctionnalité et vous direz: "ah ha, cela aurait résolu ce problème que j'essayais de comprendre la semaine dernière", et vous le classerez dans votre cerveau. Les solutions liées aux problèmes réels que vous avez rencontrés sont beaucoup plus faciles à retenir que les raccourcis aléatoires.

En fin de compte, vous pouvez utiliser vim avec un assez petit sous-ensemble de ses fonctionnalités, donc ne soyez pas submergé par toutes les cloches et les sifflets. Pensez à toutes les fonctionnalités de Word, 99% des personnes les utilisent-elles?

Prix ​​Matt
la source
2

ESC gg=GRéindenter le code et :retabconvertir des tabulations en espaces ou des espaces en tabulations était ce qui m'a accroché à Vim. Donc, en fait, vous n'avez pas besoin d'être obligé de l'utiliser, il vous suffit d'apprendre quand cela peut vous aider à augmenter votre vitesse.

Passez vimtutor.

Commencez à utiliser vim pour une édition simple, comme des fichiers de configuration ou html. Apprenez les commandes selon vos besoins.

Recherchez dans Google un bon .vimrc utilisé par quelqu'un qui utilise une chaîne d'outils qui ressemble à la vôtre. Activez la coloration syntaxique. Trouvez une belle palette de couleurs.

Apprenez les macros parce que Vim est le meilleur pour les tâches automatisées et l'insertion d'extraits de code, comme le formatage de quelques mots en une balise XML complexe ou la conversion d'un CSV en un tableau HTML.

Eduardo Marinho
la source
2

Vous voudrez peut-être commencer avec la crème. Cream se décrit comme "une configuration moderne" de vim. Fondamentalement, c'est une version spéciale de vim qui ressemble à tout autre éditeur de texte à toutes fins pratiques. Mais activez le "mode expert" et vous avez toute la puissance et le comportement de vim.

Vous pouvez donc commencer à utiliser Cream en tant qu'éditeur de texte normal, puis expérimenter le "mode expert" jusqu'à ce que vous soyez suffisamment à l'aise pour passer entièrement à vim.

sids
la source
2

Installez gVimsur toutes les plateformes que vous utilisez.

Parcourez ensuite le vimtutor (:help vimtutor ou vimtutorsur la ligne de commande).

Regardez la conférence suivante et suivez ses conseils: 7 habitudes pour une édition de texte efficace 2.0

Je dis que vous voulez vraiment commencer à l'utiliser pour toutes vos modifications. Si vous craignez une perte de productivité, prenez un week-end pour le pratiquer correctement (j'ai déjà fait cela pour passer à dvorak de qwerty et j'ai eu ma productivité suffisamment élevée lundi et j'ai réussi à m'en tenir après).

Cela en vaut la peine et vous ne regarderez pas en arrière!

user13060
la source
1

Personnellement, ce que je devais faire était de m'assurer que je pouvais utiliser les raccourcis clavier Vim (ou du moins, assez proches) dans plusieurs applications. Le fait de devoir changer complètement la façon dont j'éditais le texte chaque fois que je changeais d'éditeurs rendait trop difficile d'obtenir le style d'édition Vim engagé dans la mémoire musculaire.

Dans mon cas, Viemu + vimperator a fait l'affaire.

tomasr
la source
J'utilise Komodo Edit, qui a des vi-bindings intégrés, donc un passage à ceux-ci et une installation de vimperator ont énormément aidé. Maintenant, si seulement je pouvais changer rtorrent ...
Xiong Chiamiov