web-dev-qa-db-ja.com

viをマスターするように強制する最良の方法は何ですか?

かなり前に、私は viemuの作成者による記事 を読み、viについての多くの誤解を解消し、なぜそれが良いアイデアであるのか(そしてなぜそれが非常に人気があるのか​​を説明する)過去30年以上)。同じ男には グラフィカルなチートシートの素晴らしいセット があり、一度にいくつかの基本を教えます。

私は確信しています。

実際、私は過去2年間納得してきました。しかし、私はまだ、主編集者としてviを習得するように自分自身を強要していません。学習曲線は高すぎます。私が仕事に取り掛かるとき、許容範囲内であるが即時の生産性(現在のエディターを使用)は、これまでのところ(viを使用して)途方もない生産性に勝っています。

誰もが学習曲線を乗り越えるのに役立つ良いヒントを持っていますか?それはまっすぐなヒント、他のいくつかのチュートリアルまたは記事、何でもかまいません。

編集: vim/gVimCream 、および MacVim (など)viのバリアントを認識していることに注意してください。私は、viファミリー全体を指すために、viに関する質問を続けました。すべての素晴らしい答えをありがとう。

更新(2009年4月)

私は去年の12月から日々の職業生活でVim(より​​正確にはMacVim)を使用しています。私は戻るつもりはありません:-)

Vimを使いこなした皆さん、頑張ってください。

202
webmat

まず第一に、Vimを手に入れたいかもしれません。 viのすべてに加えて、非常に優れた機能セットを備えています。

とはいえ、学ぶには規律が必要です。仕事があり、生産性に打撃を与える余裕がない場合(解雇されることなく)、エディターを学ぶことだけを目的として週末のプロジェクトに参加することをお勧めします。作業中はドキュメントを開いたままにしておき、鶏肉を抜かないように規律を守ってください。あなたがより多くを学び、効率的になり、筋肉の記憶に頼り始めると、それに固執することはそれほど難しくありません。

私はVimを長い間使ってきたので、検索やナビゲート、保存のためにどのキーを押すべきかさえ考えていません。そして、私の手がキーボードから離れることはありません。 Vimを使用することは、私がプログラミングのキャリアで行った最良の選択の1つです。

124
Lucas Oman

私が最初にすることは、矢印キーとins/home/end/pgup/downキーの上に紙または本を置くことです。これらはViでは必要ありません。

次に、エスケープを打つように言われるたびにctrl + [を打つことに慣れます。それははるかに高速であり、キーボードから手を離す必要はありません。

次に、スクリーンキャストを視聴します。

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

その後、ただ練習練習を練習します。

edit矢印キーを使用しない理由は、速度が遅くなるためです。 Vimの最大の利点の1つは、速度が速いことです。また、矢印キーは、習得すると非常に強力なモーダルの性質を実際に受け入れることを防ぎます。

64
Aaron Jensen

ステップ0:タッチタイプを学習します。真剣に-あなたの指がキーの場所を知らない場合、vimは痛みになるでしょう。また、vimを拒否した場合でも、タッチタイピングは プログラミングの改善 (質問 Steve Yegge )を使用して、リンクの摩擦を自由に監視するようにします。入力を改善するのに役立つ lot of software があります。

ステップ1:vimtutorを使用して開始します。これはgvim(ヘルプメニューの下)にあるか、コマンドラインで「vimtutor」と入力するだけです。時間は30〜45分かかり、指はvi/vimの基本を理解し、キーボードを窓から押し出さずにファイルを編集できるはずです。

ステップ2:どこでもvimを使用します。 IDE ...で、Webブラウザから、メールを作成するために、コマンドラインでvimおよびviキーバインディングを使用するためのヒントとリンクについては、 この質問 を参照してください。 vimを使用して、キーバインディングを筋肉のメモリに埋め込む必要があります。

ステップ3:vimの詳細vimtutorで表面に傷を付けるだけです。 このビデオを見る または読む この記事 (「効果的なテキスト編集の7つの習慣」について)。 read について tips and tricks on StackOverflowvimtips を閲覧できます。そこでは、一口サイズの塊に固執することが、知識を定着させる最良の方法になるでしょう。

ステップ4:利益:)

37
Hamish Downer

私は、長年にわたって再びvimのユーザーであり続けてきました(時折sys管理の仕事をしています)。私は最近、プログラミングの仕事にもっと時間を費やし始めました。私もgvimから始めることをお勧めします。ほとんどのOS環境とうまく統合され、(さらに良いことに)必要なときにマウスに戻ることができます:)。

Vimを使用するには、vimtutorを実行(gVimに同梱)1回または2回(1時間ほどかかります)。それが私にとってどれほど役に立ったかを誇張することはできません!特に、ドキュメント内を移動するさまざまな方法についての最初の部分、およびモーションコマンドなどを使用して編集アクションを記録する方法などについて説明します。その後、状況は非常に明確になります。

次に、迅速なクリップで便利な編集を行うのに十分なほど快適になるまで、それを使用して簡単なマイナーな編集(メモ帳の交換など)を開始します。次に、その中で日々の仕事をしてみてください。他のエディターで「最後のアクションを繰り返す」コマンドをすぐにピン留めできます。

26
Brian

Viテキストエディターの学習曲線を乗り越えるための良いヒントを求めました。これまでの回答の多くは、他のエディターを使用しないことを示唆しています。それは良いアドバイスだと思います。よりグラフィカルなエディターからviに切り替えるには、考え方を変える必要があります。視覚的な変化ではなく、コマンドの観点で考える必要があります。

私は長年vi以外を使用していませんでしたが、生産性を高める唯一の方法は、定期的に使用するコマンドを記憶することです。これを行う方法は、最も一般的なキーボードコマンドの短いリストを作成することでした。これらのコマンドを機能ごとにグループ化し、色分けしました。つまり、カーソルの移動、編集、検索など。私が知らなかったコマンド。考えは、利用可能なヘルプ画面を置き換えるのではなく、暗記にも役立つクイックリファレンスを作成することです。次に、このリストを印刷し、モニターの後ろの壁にテープで貼り付けて、見やすくしました。 (あなたが言及したグラフィカルなチートシートは、一部の人にとってはうまくいくかもしれませんが、おそらく記憶ツールよりも優れた参照ソースです。)

ここにキーがあります。コマンドの1つに慣れると、鉛筆で線を引きました。必要な場合はまだ見ることができましたが、そのコマンドをマスターしたことは象徴的でした。定期的な進歩が見られたので、自信とモチベーションが得られました。それらの大部分が交差するようになったら、それらを削除し、よりまれに使用されるコマンドのいくつかを追加しました。 viのコマンドに満足するまで、このプロセスを続けました。私は、コマンドを無効にしたり、長い間リストを見ていないことに気付いたときに、その時点に到達したことを知っていました。

数年前、私はviが唯一の利用可能なエディタであるUNIXプラットフォームで作業する必要がありました。 viで小さなポケットリファレンスブックを購入しましたが、ほとんど使用しませんでした。初めてviを使用したときと同じように、リストを作成して壁にそれらを投稿しました。最初の週の終わりまでに、viを使用してから5年が経ちましたが、非常に快適でした。

19
TMarshall

vim(Vi IMproved)、特にそのGUI-gVim。 GUIにはメニューがあり、Windowsではコピー、カット、およびペーストのショートカットを使用できるため、メモ帳をすぐに置き換えることができます。また、メニューにはショートカット(vimコマンド)が表示されるため、多くのことを学ぶことができます。

最初から行うべきもう1つのことは、必要に応じてviを構成することです。たとえば、vimを Python IDE に変換できます。これを行うと、viが必要なものすべてを提供するため、別のエディターを使用する理由がなくなります。

11

私にとってVIは非常に優れた緊急エディターですが、他の選択肢がある場合に使用したいものではありません。私はこれが万人向けではないことを理解していますが、それは恐ろしいことでも何でもないと言っているのではなく、個人的には発見可能なUIを好みます。

ただし、Linuxで何か重要なことをする場合は、VIを知っている必要があります。

したがって、基本を学ぶだけです。i=挿入モードesc =挿入モードを終了:wq = save and quit:q!=保存せずに終了x =挿入モードでない場合は、文字を削除します。/=検索

これにより、編集の緊急事態が発生します。これらの少数のコマンド(およびナビゲーション)で実行できないことは何もありません。残りは、必要に応じて「タックオン」できます。

ただし、VIを使用する必要がある場合は、リファレンスまたはブックを利用可能にしておいてください。おそらく、Webを閲覧することはできませんが、マニュアルページは多少役立つかもしれません。

11
Bill K

強制しないでください。愛をマスターする道はあります。

11
jbarciela

他のすべてのテキストエディターアプリを削除します。

その後、あなたはそれを学ぶ必要があります。

10
Bob Dizzle

forceを自分で行う最も簡単な方法は、マシンから他のすべてのエディターを削除することです。誘惑を取り除く:)

9
Dana

複雑な編集作業を行うたびに、より効率的な方法があるかどうか疑問に思ってください。ほとんどの場合、簡単な言葉で説明できるもの(「テキストの段落を交換する」や「コメント行のX文字の後にあるものをすべて削除する」など)であれば、vimのキーストローク数回でできることです。

非常に便利ないくつかの重要な機能があり、常に使用を終了します。私が一番好きなものは:

  • ブロック選択(Ctrl-V)
  • マクロ記録(q)
  • 仮想編集(:set ve = all)
  • 正規表現
  • 外部Unixプログラムへの配管
  • キーマッピング
  • オートコンプリート(C-p、C-x C-p、C-x C-f)
  • 操作と動きの組み合わせ(これは驚くほど強力です)

他のプログラマーにどの機能が最も役立つと思うかを尋ね、あなたの脳により良く合うものを採用してください。他の人のアイデアを盗む.vimrcs( ここに私のもの

9

編集:私が作成した あなたが興味を持っている場合に備えて、オンライン間隔の繰り返しサイトflashcarddb.comで設定フラッシュカード .

  1. mnemosynesupermemo 、または anki などの間隔を空けた繰り返しフラッシュカードプログラムを使用して、毎日のルーチンに新しいコマンドを学習および保持します。 vimを毎日のエディターとして使用するだけでは不十分です。それをマスターするには、それらのコードを頭の中に保存し、手元のタスクに対する理想的なソリューションである時間を待つ必要があります。
  2. カスタマイズして.vimrcを維持する
  3. Vimプラグインを作成または編集する
8
P. Myer Nore

Vimによる効率的な編集 のガイドを書きました。役に立つかもしれません。

少し前に戻り、「なぜこのエディターを学習したいのですか。現在のテキストエディターよりも高速または優れていると思うのはなぜですか」と自問します。次に、Vi(m)が不可欠になる機能を学びます。

たとえば、VimのCTags統合は私にとって完全に不可欠です。私は非常に大きなコードベースで作業しており、1回のキーストロークで関数またはクラス定義にジャンプする機能(どのファイルが含まれているかに関係なく)は絶対にキラーな機能であり、これがないと作業に苦労します。

.vimrcファイルを使用して、一般的なタスクを自動化するマクロを作成します。

オートパイロットの編集者は、作業を最も速く、精神的な労力を最小限に抑えられるエディターを選択します。少し準備をすれば、エディターがVimになります。 :-)

8
Jonathan

Viスキルを大幅に向上させる2つのこと:

  1. 練習、練習、練習
  2. Nethack
6
Mark Witczak

私の提案:小さく始めましょう。最も有用なコマンドの小さなセットを覚えることから始めましょう。 viを始めたとき、これらは私のトップ10でした。

  • (Esc)コマンドモードに戻る(最も重要です!)
  • aカーソルの後にテキストを追加します
  • 現在の行の末尾にテキストを追加するにはA
  • xは1文字を削除します
  • 1行を削除するdd
  • テキストを置き換えるR(上書き)
  • 元に戻す
  • :q! (Enter)保存せずに終了するには
  • :w(Enter)で保存
  • 保存して終了するZZ

これらのコマンドのみを使用して、多くの基本的な編集を行うことができます。快適になれば、残りはそれほど難しく見えません。

ところで、私は主なテキストエディターをviに依存していたことを付け加えたいと思いますが、今は必要な場合に限ります。私の場合、EmacsやVisual Studioなどのツールを使用すると生産性が向上します(「私の場合」に注意してください)。複数のツールを試して、生産性を最も高めるツールを選択してください。幸運を!

6
Paulus

馬鹿げているように聞こえますが、 roguelike ゲーム( Nethack または Angband など)をプレイすることは、h/j/k/lカーソルナビゲーション用のキー。

5
bk1e

職場で使用している間、現在のエディターで使用するすべてのショートカットと機能を書き留めます。その後、土曜日の朝に座って、Googleとスタックオーバーフローを使用して、viでそれらのそれぞれを実行する方法を見つけます。これに1枚または複数枚の紙を使用する場合は、おそらく最適です。

職場の他のエディターを無効化/削除して、比較シートを見てviで行うよりも、それらを見つけて再インストールするのに時間がかかるようにします。つまり、選択肢がありません。

最後に、ブログで古いエディターから新しいエディターへのクロスオーバーショートカットのリストを公開します。

幸運を!

4
Guy

X11?を使用しないでください

$ sudu rm /usr/local/bin/emacs

ログインシェルをvi?に変更します

まず、強制的にedを使用し、次にviを贅沢に使用しますか?

bash?でviキーバインディングを使用します

常にviを使い始めますか?

エディタを学ぶことは、言語を学ぶこととそれほど変わらないように思えます。液浸が最適です。

viを使用するのは、本当にすばやく編集する場合、または何らかの理由でX11を使用できない場合ですが、emacsに住んでいます。本当に強力なエディターは、時間をかけて学ぶ価値があります。

4
Jon Ericson

viを使用する主な理由はssh(WindowsではPuTTY)です。Unixサーバーにリモートでログインすると、viが常に使用可能になります。また、カーソルキーもバックスペース/削除もマップされていない場合、VT100で動作します。

VI Editor Pocket Reference のような本を持つことも大いに役立ちます。

3
Aaron Digulla

私が最初にemacsを学び始めたとき、それはすでにVimに非常に慣れていた後だったのを覚えています。 emacsを使用すると、常に非常に遅くなりました。

しかし、私はあなたがしなければならないことはほんの少しの痛みを吸収することであり、常に、常にあなたが何かをするためにドキュメントを調べることを確認することだと思いますknow you can行の終わりに移動したり、テキストの領域を選択したりするなど、以前のエディターで行います。

また、質問できる地元のviエキスパートがいる場合や、当社のようであればペアプログラミングを促進する場合にも役立ちます。そうすれば、簡単なことをしようとしているときに、誰かに尋ねるだけで、その方法を紹介することができます。また、数週間定期的にエディターを使用している場合は、それ以上尋ねる必要はありません。それから、それが第二の性質になる前に数回。

ローカルリソースがない場合は、ほとんどの質問に答えることができる書籍/チュートリアル/リファレンスシートがオンラインでたくさんあります。

最終的に、Viを学ぶことは他のスキルを学ぶことに似ており、特効薬はありません。しばらくの間、現在のエディターよりも生産性が低下することを受け入れる必要があります。 「他の人はViを学ぶことができ、私は少なくとも彼らと同じくらい頭がいい」と自分に言い続けます(それはとにかく自分自身に言うことです:))

3
ben.prew

私の推奨事項は、いくつかの簡単なプログラムを考え出し、それらを作成し、VIを使用して最初から最後まで書くことです。

学習曲線に最初はイライラして、職場や時間に敏感な環境でそれらを使用するように強制することはできません。

環境/エディターに慣れるためにこれを以前に行ったことがありますが、それはかなりうまく機能します。

書くべきものを思い付くのに問題がある場合は、学校で行ったプロジェクト(または以前に行ったこと)をやり直すことをお勧めします。この方法には、自分がどれだけ優れた開発者になったかを確認できるという追加のボーナスがあります。 :)

編集:マウスを使用する誘惑を避けるために、コンソールからこれを完全に行う必要があることを忘れていました!

3
TM.

gVIMには非常に優れたチュートリアルがあります([スタート]メニューグループのリンク)。

最初の学習ハンプを克服するのに役立ったことがわかりました。 Visual StudioをViEMUに切り替えると、VIのスキルを磨くことができました。

また、 http://vimcasts.org/ のスクリーンキャストは素晴らしいです!

3
David Laing

クリームから始めたいと思うかもしれません。 Creamは自身をvimの「現代的な構成」と表現しています。基本的に、それはvimの特別なバージョンであり、すべての実用的な目的のために他のテキストエディタのように見え、感じます。ただし、「エキスパートモード」を有効にすると、vimのすべての機能と動作が得られます。

したがって、Creamを通常のテキストエディタとして使用し始め、vimに完全に切り替えられるようになるまで「エキスパートモード」を試してみることができます。

2
sids

使用するすべてのプラットフォームにgVimをインストールします。

次に、vimtutor(:help vimtutorまたはコマンドラインでvimtutor)。

次の講義を見て、そのアドバイスに従ってください。 効果的なテキスト編集2.0の7つの習慣

あなたは間違いなくあなたがすべての編集のためにそれを使い始めたいと言います。生産性の低下を恐れる場合は、週末をかけてしっかりと実践してください(qwertyからdvorakに切り替えて月曜日までに生産性を十分に高め、その後はそれを維持することができました)。

努力する価値があり、振り返ることはありません!

2
user13060

オリジナルのHappy Hackerキーボード(矢印キーなし)のいずれかに手を入れて、編集を開始するたびに(ワイヤレス)マウスを手の届かないところに置くことができます。

2
Garth Gilmour

コマンド/ショートカットの大きなリストを書くのは簡単ですが、練習なしでそれらをすべて覚えることは困難です。

一度に1つの新しいコマンドに焦点を合わせます。自動になったら、たとえば1〜2週間使用した後、レパートリーにもう1つ追加します。

短期的に特定のことを達成するために長い道のりを歩むことになります-これらは、新しいショートカットを学ぶための明らかな機会です。

私の経験では、一度にやりすぎないようにした方が簡単でした。

2
Craig Hyatt

私の一番の提案:キーボードを見なくても、素早くタイプすることを学ぶ。

タイプにタッチできず、常にコロンまたはhjklまたは:%s/foo/barを探し回っている場合は、忘れてください。 canと入力すると、マウスを使用するよりも速くなりますが、それが当てはまらない場合、viは動作しません。

しかし、優れたタイピングスキル、sshと screen を組み合わせると、viは自然になります。

2
Michael Cramer

ESC gg=Gはコードを再インデントし、:retabタブをスペースに、またはスペースをタブに変換することが、私をvimに引き付けたのです。そのため、実際に使用を強制する必要はありません。速度を上げるのに役立つ場合を学習する必要があります。

vimtutorを通過します。

設定ファイルやhtmlなど、vimを使用して簡単な編集を開始します。必要に応じてコマンドを学習します。

あなたに似たツールチェーンを使用している人が使用する良い.vimrcをグーグルで検索してください。構文の強調表示をオンにします。素敵な配色を見つけてください。

Vimは、いくつかの単語を複雑なXMLタグにフォーマットしたり、CSVをHTMLテーブルに変換するなど、自動化されたタスクとスニペットの挿入に最適であるため、マクロを学習します。

2
Eduardo Marinho

すぐにパフォーマンスが低下するという事実に直面します。新しいツールを学習するときは、他のツールを使用する方法を知っていることを実行できる必要があるため、問題はあなたの問題ではありません。新しいツールをしばらく使用すると、ツールは表示されなくなり、根本的な問題のみに集中することになります。

Vimのようなもの(他の人が言っているように、vimはviよりもはるかに優れています)では、ドキュメントを定期的に読み直して参照することが重要です。インターフェースはそれなしでは完全に発見できません。新しい読書ごとに機能が表示され、「ああ、これで先週見つけようとしていたこの問題は解決できただろう」と言われ、それを脳に記録します。あなたが経験した実際の問題に関連する解決策は、ランダムなショートカットよりも覚えやすいです。

最終的に、vimの機能のかなり小さなサブセットでvimを使用できるので、すべての機能に圧倒されることはありません。 Wordのすべての機能を考えてください。99%の人がそれらを使用していますか?

2
Matt Price

私がかなり若い(11歳)のとき、私の家族は2、3年ドイツに引っ越しました。液浸を通して言語を学ぶことができました-私は単に言語を話す以外に選択肢がありませんでした(ただし、私は悲惨な状況にあった場合、英語の話者を見つけることができました)。

私の提案は、あなたが同じことをすることです-あなたが絶対に絶望的な状況にない限り(たとえば、「OK、私は/ etc/passwdを削除し、ルートを戻す必要があります」)、viで最善を尽くすために意識的な決定をします。あなたが喜んでいるなら、基本を学ぶのに実際にはそれほど時間がかかりません。

他の人が示唆したように、

vim-tutor

この画像のように

1
cjmac

ポストイットノートメソッドを使用します:-)

Gvimを使用するときは、自分でメニューを使用できるようにします。 vimに関する本/チュートリアルを読んで、基本を理解してください。 (挿入およびコマンドモード)

必要だと思うクールな機能をいくつか選択し、それらをポストイットノートに書いてから、モニターの下部に貼り付けます。

良い出発点は、おそらくi、a、o、gg、G、:10、/ something

yy、dd、pのようなカットアンドペースト

そして、v、V(ビジュアルモード)+カットアンドペーストで締めくくります

その後、それらがわかったら、ポストイットでさらにクールな機能を持つ新しいものに交換し、満足するまで繰り返します。

/ヨハン

1
Johan

自分を強制する方法は?私のアドバイスは、ウィンドウからtelnetting/puttyすることで10個のunixボックスを維持しなければならない作業環境にすることです。 * nixの複数のバリエーションのテキストを効率的に編集する唯一の方法は、私が知っているほぼすべてのディストリビューションに付属している標準エディターを使用することであることにすぐに気付くでしょう。また、X11が新規インストールで起動しない場合、viが唯一の友達です:)

1
Excalibur2000

私はマスターをやっていたときに10年以上前にvim/viを学びました。当時、私がアクセスできる唯一のマシンは、Sun Sparcステーション(Sparc 20と思います)です。そして、viはその上にある唯一のものです。したがって、自分で「強制」するためにできることの1つは、他のエディターをアンインストールすることです。

1
lang2

個人的に、私がしなければならなかったのは、いくつかのアプリケーションでVimキーバインディングを使用できることを確認することでした。エディターを変更するたびにテキストの編集方法を完全に切り替える必要があるため、Vimの編集スタイルをマッスルメモリーにコミットするのが難しくなりました。

私の場合、Viemu + vimperatorがトリックを行いました。

1
tomasr

ドメインを編集するためのスクリプトが端末でのみviを開いたISPで働き始めたときのみ、viを学びました。学ぶしかありませんでしたが、後悔したことはありません。

要するに、あなたはそれを学ぶ以外に選択肢がない状況に身を置く。

0
Nathan Fellman

私は argdo から始めます。そして、あなたがそれに恋に落ちたら、残りは簡単です...

0
Kearns

Viの恋人のサイトで数時間を過ごす http://nereida.deioc.ull.es/html/vilovers.html -viの熱狂的なファンと一緒にたくさんのチュートリアル、リンクなど。

0
DarenW

現代のvi(vim?)で本当に混乱しているのは、コマンドモードのすべての機能ではなく一部の機能を使用できる入力モードです。入力モードが「上書きのみ、カーソルの移動は不可能」という古いSolaris viのようなものに完全に馬鹿げていると、私ははるかに快適に感じます。真のviでは、ほとんどの場合、コマンドモードを維持する必要があります。

そうは言っても、最近viを学ぶ必要はありません-emacsも同じように遍在しています。 :)

0
Arkadiy

コマンドラインにアクセスすることしかできないライブ環境で、奇妙で驚くほどの問題をデバッグする必要があるまで待ちます。 VIが気に入らない場合もありますが、時間を大幅に節約でき、大量の(ログ)ファイルをステップスルーするための多くのトリックを学習できます。

0

私は一般的にvi、特にvimの大ファンですが、強力なエディターはたくさんありますが、viを使用する必要があると感じるべきではありません。そうでないため、何らかの形で完全な完璧なエディターです。

Viを使用するように強制する必要がある場合、それを使用して生産性を感じないと心配するでしょう。ただし、永続化を主張する場合は、おそらくすべての編集タスクでviを使用したことを確認します。私が何かをする必要があり、それを行うための最善の方法がまったくないときはいつでも、viでそれを行うための最適な(最小のキーストロークの点で)を見つけようとしますそれは最適ではない通常の方法です。次に、この小さなヒント(または単なるテキストファイル)でポストイットメモを作成して、次回のために覚えておきます。

時間が経つにつれて、viの生産性は劇的に向上します。

0
Brian Mitchell

私は素晴らしいO'Reillyの本からviを学びました 「viエディターの学習」

0
Phillip Wells

どうして私は自分自身を強制するための非常に独自の低摩擦の方法でピッチしないのですか? :-)

私がしていることは簡単です:gitコミットメッセージをvimで作成しようとしています(コマンドラインでメッセージを指定しない場合の既定のエディター)。

もちろん、コミットメッセージは非常に短いため、ほとんど役に立ちません。ただし、git commit --amendを使用してメッセージを再編集する場合は、より便利です。

0
webmat

インターネットで見つけることができる多くのVi/Vimチートシートの1つを印刷し、数週間それを固執します。

いくつかの基本的なコマンドを習得すると、非常に効率的になります。そこから、プラグインを続けて、たまに新しいコマンドを学習します。すべてのviコマンドを学習する方法はありません。宇宙には原子よりも多くのviコマンドがあると思います!! :)

0
Utah_Dave

私がやった方法は、カーソルを動かしたり、前後に検索したり、前後の単語/文章/段落にジャンプしたりするなど、最も基本的なことを最初に数分かかることでした。挿入、追加。頭に収まるものなら何でも。その後、次の15秒以内に実行する必要のない処理を実行したら、それを使用するようにします。

基本にかなり慣れたら、より高度なコマンド、特に以前の学習を活用するコマンド(次の3単語の置換、次の検索ターゲットへの削除など)をゆっくり学習します。

方法を学んだら、VIの使用が大好きです。高度なコマンドは、ほとんどのGUIエディターが提供していると思われるものよりもはるかに強力であり、ユビキタスでテキストベースであり、sshを介して利用できるという事実はさらに優れています。

0
randychilders

私がしたことをしてください。すべてに使用し、freenodeの#vimでハングアウトします。

0
Jeremy Cantrell

Googleはあなたの友達です。ウィンドウやタブを手元に置いておき、コードをインデントしたり、正規表現で検索したりする必要があることを何度か行う必要がある場合は、検索します。最良のヒントサイトは、より身近になり、ブックマークを付け、チートシートを印刷するでしょう。

0
sammyo

VIを使用し始めたのは、Windowsを除くほとんどすべてのオペレーティングシステムでデフォルトのエディターだからです。繰り返しになりますが、Windowsでは多くのコーディングを行わないので役立ちます。

強制的に* NIX/OSXシステムを使用したい場合は、他のエディターを削除するか、それらのエディターをエイリアスします。残りはあなた次第です。 VIを使用してファイルを編集しない場合は、Cookieは取得されません。

0
Kristian

一番いい方法? viキーバインディングを使用するように端末を設定します。

0
chiggsy

notepad.exeを削除し、代わりにnotepadというvimへのショートカットを作成します:)

または、すべてのコーディングをssh経由で、またはGUIのない​​マシンで実行してください;)

0
shyam

一般的なviコマンドの小さなチートシートまたは付箋を残してみました。 IDEを使用します。キーボードショートカットやコマンドの付箋をモニターに置いておくと、学習に役立ちます。ショートカットを十分に覚えており、よく覚えていると思うので、付箋を削除します。

0
Bob Wintemberg

システムのすべてのターミナルエディタをvimにsymlinkし、システムのすべてのグラフィカルエディタをvimの実行中に新しいターミナルウィンドウを開くスクリプトにsymlinkします。

0
Steve Losh

FTPを使用する代わりに、LinuxであるWebサーバー上のファイルを編集するために使用しました。それは9年前であり、それ以来私はスキルを習得しました。

もう1つは、グローバル検索や置換などのVIでできることや、さらに強力なものを見つけ、必要なときにいつでもVIを使用することです。

0
Brian G

何かをすばやく検索する必要がある場合は、すべてを1ページにまとめると役立ちます。

0
webmat

数日間強制的に使用すると、コマンドがすぐに第二の性質になることがわかります。 posixシステムを使用している場合は、BSDライセンスのnvi(古典的な1:1 viクローン)から始めてから、vimに進むことをお勧めします。 vimで開始する場合、その挿入モードはGUIエディターに非常に似ているため、編集コマンドのサブセットのみを使用する可能性があります。

0
jbcreix

うーん、プログラミングの質問よりも生理学の質問の方が多いですが、私が本当にやりたくないことをすることができた最善の方法は、それをやるだけで、やる気を起こさせる方法を試してみるのをやめることですそれをするために。

歯を磨くと考えてください。自分でやる気を起こさなければなりませんか?いいえ、あなたはそれをします。

0
Craig H

Viとemacsのみが使用可能なマシンからUsenetに10年投稿します(「rn」から起動するとemacsの起動時間が長くなります)。

それは私がそれを学んだ方法です。

しかし、より迅速なアプローチのために、私はあなたがそれを学ぶことに自分自身をコミットし、いくつかのソースコードに取り組んで数時間を費やすことだけがお勧めできます。まだ持っていない場合はvimをインストールしてください-すばらしい構文強調機能があります。

それだけの価値があります。おそらく、低速のダイヤルアップ接続やGUIなしのマシンでも、西側世界のどこにでもあるどのUnixマシンにもアクセスでき、数分で完全に生産性を上げることができます。

0
Matt Hucke

WindowsにVIがあり、使用するバージョンは以下のとおりです。コンソールウィンドウにいる場合は常にデフォルトでVIになります。実行しているOSに関係なく、ファイルを編集できることがわかります。逆に、UIモードの場合は、Notepad ++ go figureを使用します。

NT VI-バージョン0.23開発者:Tony Andrews作成者:Tim Thompson

0
titanae

16歳のときに最初のプログラミングの仕事でVimを学ぶことを余儀なくされました(上司は私たちに他のことをさせようとしませんでした)が、読むまで本当の進歩はありませんでした Steve Oualline's Vim Book =-vimを本格的に使いたい場合は、出発点として強くお勧めします。

実際、Vimはいくつかのプログラミング言語よりも習得に時間がかかります(機能はthat複雑です)。チートシートを印刷してVimを「マスター」しようとすることは、いくつかのブログ投稿を読んでHaskellをマスターしようとするようなものです。いくつかの真剣な時間を投資する準備をしてください、あなたは十分に報われるでしょう。

0
too much php

便利な1ページのチートシートを作成し、それを使用してすべての非基本機能を学習しました。ただし、練習は何でもマスターする唯一の方法です。

viは、すべてのUNIXタイプのコンピューター、Mac OS X、Solaris、Linuxに搭載されているため便利です。 eBayで古い破壊箱を見つけましたか? viがあります。 Sun OS 4はどうですか?再びvi。

0
Norman Franke

ネットハックをたくさんプレイしてください。それが大学在学中にやったことで、後でカーソルの動きが同じであることがわかりました。この時点で、viスタイルのキーマップを使用するように設定を変更する必要がある場合があります。

0
oj