Vimを学ぶメリットは何ですか?[閉まっている]


467

プログラマーとして私はキーボードに長時間を費やしており、多かれ少なかれ過去12年間それを行ってきました。この間ずっと慣れていないことがある場合、最も一般的なコード編集タスクの一部が原因で、コーディング中に経験するこれらの迷惑でほとんど無意識の絶え間ないマイクロ割り込みです。別の行(または同じ行)からの単純なコピーと貼り付け、または現在の位置から1行または2行を上下に移動するなどの操作は、入力が多すぎるか、矢印キーを使用する必要があります...さらに動かしたいときはさらに悪い-結局マウスを使うことになる。これと同じシナリオを想像してみてください。

私はいつもVIMを学ぶことを考えてきましたが、それを習得するのに必要な時間の量はいつも私を後退させたくなります。

それを学んだ人に聞いてもらい、それが結局はなくてはならないものになってほしい。

仕事ではVS2008、C#、R#を使用しています。これにより、コードの編集がこれまでよりもはるかに速くて簡単になりましたが、それでもマウスを使用する必要がまったくなかったのではないかと思います。

矢印キーすらありません。


7
キーボードとマウスを切り替える必要がないことは間違いなく素晴らしいことです。Macでは、BBEditやXcodeなどのGUIエディターでも、マウスでの余分な動きを避けるために、emacsナビゲーションキー(Ctrl-Aなど)を使用しました。
Craig S、

236
努力する価値は完全にあります。vimを学ぶ;)
カイルウォルシュ

20
基本的なvim(viを忘れる)を数分で学ぶことができます。ターミナルでvimtutorと入力するだけで、基本的な設定が完了します。次の20年間に学ぶことはすべてあなた次第です。VS2008、C#、R#がキーボードと矢印キー/マウスの間を移動することで人生を無駄にしなければならないことに関連する問題をどのように支援するのですか?
stefanB 2009年

43
私が今まで行った中で最高の投資の1つ。
Johnsyweb 2010年

10
私はこのゲームを作成して、7歳の甥がVimですばやく動き回ることを学習できるようにしました 。kikuchiyo.org ベータ版では、ライトセーバーで敵を攻撃できます。「i」は左攻撃、「a」は右攻撃です。あなたがしたのと同じ理由で。慣れるのが最も難しい部分を動き回っていました。あなたが助けを必要とするならば、ゲームがあなたをスピードアップするのを助けることを願っています:)頑張ってください!:)
kikuchiyo

回答:


249

20年もviとvimを使用していますが、まだ新しいことを学んでいます。

David RaynerのBest of Vim Tipsサイトは優れたリストですが、vimにある程度慣れてしまえば、おそらくもっと役立つでしょう。

また、vi / vimのヒントに関する素晴らしい情報があるViEmuのサイト、特に記事に触れておきたいと思います。アーカイブ版


8
はい、私も常に新しいことを学んでいます。それでも私のお気に入りのエディター。
クレイグS

20
それは良いことなのか悪いことなのか。あなたが常に新しいことを学ぶなら、学習曲線は本当に急で、機能は本当に隠されており、習得する感覚はありません。とにかく、RISCが必要な場合は、vimではなくviを使用しましたよね?
バスティーブ2009年

7
@Paperflyer:私は同じ考えを持っていました。20年経ってもまだ習得していない場合は、頭痛の種だと思いますか
Dinah

7
どうして?それはそれがあなたが学び続けることができる多くの機能を持っている間、あなたがより生産的になるためにそれらすべてを学ぶ必要がないことを意味します。
Arda Xi

5
「なぜ、ああ、なぜ、それらの頭がviを使用するのですか?」-特に質問に対する

184

それなしで生きられますか?簡単に。

役に立ちましたか?はい。

学習の理由

  • viはすべてのUnixシステムに存在することが保証されており、ほとんどのLinuxシステムにも存在します。この種の幅広いカバレッジは、学ぶ価値があります。

  • sudo編集にviを使用する方がはるかに高速です。

    $ sudo vi

  • また、GMailはvi-ishコマンドを使用してメールを選択および移動します。

マスターである必要はありません。

ただ学ぶ

基礎:

  • コマンドモードから挿入モードに切り替える方法 i
  • 挿入モードからコマンドモードに切り替える方法 Esc
  • コマンドモードで行を上に移動する方法 k
  • コマンドモードで行を下に移動する方法 j
  • コマンドモードでキャラクターを左にナビゲートする方法 h
  • キャラクターを右にナビゲートする方法 l
  • ファイルを保存する方法:wEnter(書き込み)
  • 保存せずに終了する方法(コマンドモード) :q!Enter
  • 元に戻す方法 u
  • やり直す方法Ctrl+r
  • (コマンドモードで)書き込みと終了を組み合わせることができます。 :wqEnter

そこから、残りはあなたをより速くします。


私はいつも、「viは簡単です。カーソルを右に移動するには、エルキーを使用します」というユーモラスな(私はそう思います)方法で紹介しています。しかし、私はそれを長い間使用しており、なくてはならないでしょう。ただし、別のカップルの25年以上を主張することはできません。そのため、新しい回答はありません。
ジョナサンレフラー、

16
これは私がそれを学んだ方法です。最小から始めて、毎日少しずつ構築します。時間をかけて、タスクを達成するための少し良い方法を学びます。インスピレーションについては、「高度なテキスト編集の7つの習慣」を参照してください。
ベン

Gmail、Googleの実験的な検索のキーボードショートカット、Slashdotのキーボードショートカット、manなどはすべてvimのようなバインディングを使用しています。vimを知らずに誤ってこれらを学習したことに気づいたのは驚きでした。Firefoxでもインクリメンタル検索に/を使用しています(Ctrl + Fとは意味が少し異なります)。
Adam Rosenfield、

29
[:] [X] [Enter]は[:] [W] [Q] [Enter]と同じ
Vitalii Fedorenko

20
[Z] [Z]は[:] [X] [Enter]と同じ
Kos

138

vimtutorを実行しても30分しかかかりませんでした。vimに慣れるには十分でした。それは毎秒の価値がありました。


より良い説明リンクを知っているなら、私のものを変更してください:)
Blorgbeardは

43
vimtutorはまさにそのチュートリアルです。毎日10日くらいやってました。初めて30分、翌日20日、そして15日かかりました。週の終わりまでに、私はそのコマンドのほとんどを私の心に刻み込みました。覚えるのではなく、繰り返しがVimにアプローチする最良の方法だと思います。1週間の毎日15分は、本当に小さな料金のようです。
Michael Ekoka

28
VIMTUTORを使い終わったらどうでしょうか。詳細を学ぶための次のステップは何ですか?
privatehuff 2010

3
@privatehuff:効果的なテキスト編集の7つの習慣を読んで適用して ください。
Frank Kusters、2013

1
うわー!これは、ゲームの隠しアイテムの1つでした。それは私のシステムのすぐそこにあり、それが存在することを知りませんでした。vimの最も便利で迅速なチュートリアルの1つ。しばらくvimを使用して、まだ知らない基本的なトリックをいくつか学びました。みんなにおすすめ。また、ちょっとした提案:タッチパッドを備えたラップトップでvimを使用していて、ジェスチャーをサポートしている場合は、vimを使用する前にそれを無効にしてください。
バラクーダ2014

69

たくさんのテキストを編集するプログラマーなら、深刻なテキストエディターを学ぶことが重要です。どのシリアステキストエディターを学ぶかはそれほど重要ではなく、編集を想定している環境のタイプに大きく依存します。

その理由は、これらのエディターは、頻繁に行う種類のタスクを実行するために高度に最適化されているためです。たとえば、すべての行の最後に同じテキストを追加することを検討してください。これは深刻なテキストエディターでは取るに足らないことですが、それ以外の場合は途方もなく面倒です。

通常、vimのキラー機能が考慮されます:A)これは、遭遇するほとんどすべてのUnixで利用可能であり、B)指がホーム行を離れる必要はほとんどないため、テキストを非常に迅速に編集できます。また、巨大なファイルを編集する場合でも、通常は非常に高速で軽量です。

ただし、代替手段はたくさんあります。もちろん、Emacsは最も一般的な例であり、実際に掘り下げれば、それは単なる高度なテキストエディターではありません。個人的には、vim / gvimを何年も使用してきたTextMateユーザーとして非常に満足しています。

これらのいずれかに切り替える秘訣は、意図したとおりに使用することを強制することです。たとえば、vimで、マルチステッププロセスのすべてのステップを手動で実行している場合、または矢印キーまたはマウスを使用している場合は、おそらくより良い方法があります。あなたがやっていることをやめて、調べなさい。

他に何もしない場合は、vimとEmacsの両方の基本的なナビゲーションコントロールについて学びます。たとえば、Mac OS、ほとんどのUnixシェル、Eclipseなどのテキスト入力フィールドでEmacsスタイルのコントロールを使用できます。vimスタイルのコントロールは、less(1)コマンド、Slashdotgmailで使用できます。等

楽しんで!


7
これには多くの人が見落としている点があります。ほとんどすべての反復的なタスクにはショートカットがあります。開発者はショートカットが大好きです。rbrightが言ったように、自分がステップを繰り返し実行していることに気付いた場合は、立ち止まって、誰かがすでにショートカットを文書化しているかどうかを確認してください。
AvatarKava、2009

A)私がVIMを使用する最大の理由の1つでした-私はもともとemacsの人でしたが、すべてのシステムに搭載されているわけではなく、ネットワークやビジー状態のサーバーで時々遅くなりました。VIMはユビキタスで、小さく、高速です。
jpeacock

3
私の編集者は常にひどい冗談を言っています。切り替えたほうがいい
グレッググラハム

「たくさんのテキストを編集するプログラマーなら、真面目なテキストエディターを学ぶことが重要です。」最悪の部分は、ほぼ定義上、内外で2つ(はるかに少ない)を学習することが不可能に思われることです。あなたはある時点でエッジケースを研究しており、タスクXを1つで達成する方法に関する知識は通常翻訳されません。そして、私が「フリンジ」エディタで行うことは常にあります-私はまだJEdit for JTidy、Code2HTMLを使用して複数のファイルを検索します。あなたのメインはサイコロのロールであり、特効薬はありませんが、はい、絶対に1つを学び、多くのプレーヤーと一緒にプレイします。; ^)
ルフィン、2014年

1
@ruffin確かに、実際には同時に2つの異なるエディターをマスターすることはできません。1つのエディターをマスターすると、多くのコマンドを無意識に使用することになります。つまり、他のエディターを使用している場合と同じコマンド。シンプルでインデントを修正できないようにブラウザを呪った回数<esc> >i{...それはタッチタイピングと本当に同じです:あなたは1つのキーボードレイアウトを学び、あなたは止めることができないのでそれに固執します別のレイアウトで間違ったキーを入力することからあなたの指。
cmaster-モニカを2014年

36

それは間違いなく努力する価値があります。

を使用Vi(m)する誰もがあなたに言うであろう1つの明白な理由と、人々が決して言及しないように見える2つの他の理由があります。

ここに明白なものがあります:

  1. vi はどこにでもあり、信じられないほど強力であり、一度学ぶことで、キーボードを備えたほとんどすべてのコンピューターでその力を発揮する能力を得ることができます。

そして、これらは学ぶためのあまり知られていない理由Vimです:

  1. それは、あなたがそうなるだろうと思っている半分の努力ではありません。介して実行Vimの家庭教師(一度vimtutorシェルで、またはWindowsの[スタート]メニューでVimのフォルダから実行)、あなたはすでに能力へのあなたの方法にもなりますし、それは下り坂そこからすべてです。1 Vim週間に満たない昼食時間内に、目立った生産性低下を起こすことなく、仕事で使用できるレベルに達していました。

  2. それはだ楽しいです!テキストの編集は、今ではゲームのようなものです。私は積極的にそれを楽しんでいます-あなたがそれについて考えるとき、それはかなりばかげています。

また、学習しない2つの理由がありますVim

  1. それは中毒性がありVimすべてのコンピューティングでコマンドを使用できることを望み、使用できない場合はいつでも呪いをかけることに気づくでしょう。幸いなことに、少なくともいくつかの状況のため、ありますかの方法 を取得するには 周りに これは

  2. 繰り返しになりますが、これは中毒性があり、実際にを使用して 生産性を失うことはありませんがVimVimエクスペリエンスをさらに向上させるための良いヒントを探し、Stack OverflowでVimタグを読むのに何時間も費やすことになります。


12
VIMを学ぶべきではないという理由でハハナンバー2はとても正しいです。テキスト編集を保存している間は、テキスト編集について読んでいます。ばかげている。
Karl Floersch 2014

はい、hjklを使用してstardewバレーを再生できたらよかったです
xis

32

vimかemacsのどちらかを学ぶ価値は間違いありません。また、タッチタイプについても学ぶ価値があります。どちらの場合も理由は同じです。コードを画面に表示する機械的なプロセスによって、思考が中断されることはありません

どのように始めるかに関しては、ただ飛び込んで、すべてのためにvimを使い始めてください。

PS emacs-vs-viの議論は無限大です。私はemacsを26年間使用しています。(a)より良くなり、(b)修飾キーがはるかに少なく(Ctl-Alt-V、誰でも)、vimユーザーは入力の怪我がはるかに少ないようです。


RSIは、開発者の1つの職業上の危険です。私はそのように考えたことはありませんが、これは本当に良い点だと思います。筋肉の観点からコードを入力するのははるかに困難です。viを使用する大きな理由があることは知っていました。
DigitalRoss

1
私は両方を使用し、vimで「バプテスマ」され、数か月前にemacsを学びました。タスクが分割されているため、私はvimを好みます。両方を実行するのではなく、編集または挿入を実行します。この違いは、私が何をしているのかを考えるのに役立ち、「通常の」コマンドを2〜4回ではなく1〜2回のキーストロークで作成します。vimがLispベースであることを望みます(そして、いいえ、viperモードはすべてのvim標準機能をサポートしていません。はい、自分でロールすることはできますが、新しいコンピューター/システムに触れたときはいつでも見逃してしまいます)
Wayne Werner

1
@WayneWerner私は本当に時代遅れですが、すべてのelispをバージョン管理して、コンピューターを介して同期させることができます。
YuriAlbuquerque 2012

@YuriAlbuquerque、私は実際にすべてのドットファイルをgithubまたは何かに置いて、自動環境設定スクリプトを作成することについて非常に真剣に考え始めました。
ウェインヴェルナー、

17

たった16個のキーの意味を学習することで、vimから優れた機能を得ることができますijkdbw9:q!%s/nNEsc。あなただけので骨を行うことができますi:wqEsc

知っておく必要がある最初の2つのキーはEsc、コマンドモード(開始するモード)とi挿入モード(通常の入力)です。


保存するには、する必要があります

  1. 入力モードを終了します(Esc
  2. コロンをタイプする :
  3. w次に小文字を入力しますEnter

保存して終了するには、

  1. 入力モードを終了します(Esc
  2. コロンをタイプする :
  3. wq次に小文字を入力しますEnter

保存せずに強制終了するには、

  1. 入力モードを終了します(Esc
  2. コロンをタイプする :
  3. q!次に小文字を入力しますEnter

詳細についてvimtutorは、コマンドラインで実行できます。中程度の長さの、しっかりとした構造のレッスンです。

向こうiEsc:あなただけでいくつかのMS Wordの機能を複製するか、上回ることができますjkwbd3:%s/nN

  1. b単語を戻す(Ctrl+
  2. w単語を進めます(Ctrl+
  3. 9w 9ワード先に進む
  4. db前の単語を削除します(Ctrl+ Backspace
  5. d3b 先行する3つの単語を削除します
  6. 9j 9行下に移動
  7. / ornithopter Enterその後、単語「羽ばたき」、の次のインスタンスに移動しますnし、Nそれぞれ「羽ばたき」の次と前の発生に。
  8. :%s/confounded/dangfangled/ Enterすべての「混同」を「ダングル」で置き換えfind and replace allます(MS Wordのように)

これらはいずれもEsc、挿入モード(i)ではなく、「コマンド」モード()で実行する必要があります。


16

私は最近VIMに切り替えましたが、それだけの価値があると思います。「何かを実行する」必要がある場合は、vimが(ほとんどの場合)通常のテキストエディターのような挿入モードのままにしておくことができます。

私は、矢印キーに手を伸ばすなど、気にならなかったものが今では間違っていて、努力し過ぎていることに気づきました。私の手の動きとマウスの使用が確実に減少し、人間工学と生産性の両方に優れています


12

VIMで何をしたいかによります。多くの人がそれなしでは生きられないからといって、それを学ぶだけでは意味がありません。

私がUNIX環境でたくさん働いていたとき、それなしでは生きられませんでした。UNIXマシンにVIMがインストールされていなくても、少なくともviは使用できました。機械があなたのものではない場合でも(顧客からのものであっても)、いつでもそれを当てにすることができます。

今私はC#でプログラミングし、ほとんどがWindows環境で動作します。PCにVIMをインストールしましたが、必要ありません。

VIMが本当に必要かどうか、および「作業の流れ」でそれがサポートされるかどうかを評価します。やってみて。それで遊びます。あなたがそれが必要だと思うなら、それに固執してください...学習曲線は非常に急です。


VIMユーザーのためのVisual Studioの拡張機能は、でそれを参照してください、ありvisualstudiogallery.msdn.microsoft.com/...
ヨエルHALBは、

10

私はしなければならなかったのでviを学びました。

私のクレイジーな先生は、AIXシステムへの端末を使用してCでプログラミングすることを学ぶことを私たちに強いました。

それは本当の痛みでしたが、それだけの価値がありました。

今日、私はviをクイック編集または小さなプログラムにのみ使用しています。

プロジェクトに行かなければならないときは、むしろIDEを使用します。私の場合、マウスをつかむことなく何時間もコーディングできるため、IntelliJのアイデアは非常に優れています。

VS2008にどのくらいのショートカットがあるのか​​わかりませんが、それらがEclipseと同じくらい発見できる場合は、viに行くのは難しいと思います。

IDEの外でコードを編集せず、IDEに適切なショートカットがある場合は、それらをよりよく学習してから、viに進んで学習します。

:)


彼は意見ではなくVIMの利点を求めた。
Blaze349 2017

@ Blaze349いいえ、彼は人々がそれをどのようにして学んだかについて聞くように求めました(ここで元の投稿を参照)これはまさに私が答えたものです。この質問はほぼ8年前のもので、何年にもわたっていくつかのレビューを受けてきました。私の答えは元の質問と一致しました。コメントするときは、これを考慮に入れてください。
OscarRyz 2017

9

25年以上vi / vimを使用しています。コマンドラインエディタをすでに知っている場合は、vi / vimを学ぶ必要はないでしょう。しかし、他のコマンドラインエディターについてよく知らない場合は、学ぶ価値があります。少しの労力でvi / vimで生産性を上げるのはかなり簡単です。


6

今はほとんどVIMだけを使用しています。

以前は編集にVimを使用し、デバッグにVS Editorを使用していました。これはおそらく少しおかしいようですが、Viのパラダイム(マクロ、ホームキーベースの編集など)が私の生産性を大幅に向上させ、VSでの編集が面白くなりました。

Viemuのおかげで、切り替えを行う必要がなくなりました。それはまだ完全な解決策ではありません(コード補完はネイティブvimのように洗練されていない場合があり、マクロの記録は完全ではありません)が、絶えず前後に切り替えるよりはるかに優れています。

Vimの学習曲線はおそらく誇張されています。あなたがそれに入ると、それはかなり直感的だと思います。


5

私の仕事は私にvimを選ぶことを余儀なくさせ、それはすぐに第二の性質になりました。今私の不満は、vimエミュレーションやプラグインを持たないIDEに関するものです。私は、escキーがvimの外では私の敵になっていることに気づきます。

Visual Studioでvi用のエミュレーターをいくつか見つけました。

http://code.google.com/p/vim-visual-studio/


4

まず、vi(m)に関する優れた知識があれば、管理下にあるサーバーで構成ファイルの緊急編集を行うのに費やす時間を節約できます。それはラグのあるssh接続に耐えることができます。

人間工学に基づいたキーボードで効果的に使用する場合、vimの入力メソッド以外の管理スタッフは、手根管に対する最善の防御策になります。

vimのポイントを確認する最良の方法は、自宅でカジュアルなプロジェクトを開始し、マウスのプラグを抜き、矢印キーにテープで留めることです。

そしてヘルプを読んで


4
また、手根管症候群から身を守るためにVi入力モデルが素晴らしいと思います...
CMS

矢印キー?.vimrcを試してください:マップ<up> <nop>マップ<down> <nop>マップ<left> <nop>マップ<right> <nop> imap <up> <nop> imap <down> <nop> imap <左> <nop> imap <右> <nop>
sjas

1
nanovimよりもはるかに使いやすく、ほぼ同じくらい普及しているものがあることを指摘しておきます。
MightyPork 14年

4

vi / vimの2つの利点:

  • とても軽量です

  • ほとんどすべての* NIXシステムにインストールされます


8
なぜUの代わりに*を付けたのですか?
Kamran Bigdely 2010

4
@kami:少し遅くなりましたが、ここに行きます:en.wikipedia.org/wiki/Unix-like
orlp

Vimは他のほとんどのテキストエディターと比べて本当に「非常に軽量」ですか?
ベン

4

リモートコンピューター上で非常に大きなLinuxプロジェクトを維持しています。Eclipseまたは同様のGTKベースのIDEを使用する選択はありません。私は3年間そこで働いています。そして、このプロジェクトのためだけにvimを設定しました。そしてまだ微調整。

これで、Vimからソース管理、SQL、デバッグ、コンパイル、ブラウジング-1Gbのソースコードでの高速ブラウジングを実行できます。

Visual StudioまたはEclipseは、これらすべてを処理できませんでした。そして、もし私に選択肢があったら、Vimを他のエディターやIDEに変更しません。


4

私はVimを学びました。それはあまり努力ではありませんでした。今、私は絶対にciが大好きです」ci(cw V:s / from / to / g


3

vimは間違いなく学ぶ価値があります。私は去年の夏にそれを手に入れましたが、今ではほぼすべてのことで私のエディターになっています(Javaはストレッチですが、広範な分析サポートが必要ないときに実行できます)。誰もがすでに断言しているように、それは素晴らしく効率的なツールです。

それが価値があることについて、私はグラフィカルチュートリアルからvimの機能のかなり小さなサブセット(1日か2日かかった)、そしてここからいくつかのオッズとエンド(長い読み)、そして検索と置換機能だけを学びました、そして私は夢中になりました。それ以来、私は物事を学びましたが、暇なときに。この時点で学習曲線は平らになっていると思いますが、それから、私はそれをかなり多用し、他の人たちにも囲まれていました。


3

私はあなたと同じ状況にあります、そしてVimの初心者として、私はもともとそれを少し困難に感じました-学習曲線は急に見えます。ほんの数時間で学んだことから、これなしでは生きられないような気がします。

以下 、Vimの便利なスクリーンキャストで利用できるリンクいくつ か示します。

Bram Moolenaar(Vimの慈悲深い独裁者)がその最後のリンクで与えた良いアドバイスは、すべての単一のコマンドと機能を学習しようとするのは非効率的だということです。非常にうまく機能し、それをより効率的にする方法を探し、それを習慣にする。


3

はい、間違いなく時間をかけて、少なくとも「vi」と「vim」を少し習得してください。とてもよく旅行します。

インストール機能を持​​たない顧客のUnix / Linux / Macシステムに直面しても決して行き詰まることはありません。Windowsでも(インストール機能がある場合)、「Vim」は無料で簡単にインストールできます。(あなたの学習曲線を純粋にUltraEditのようなものに投資するのとは対照的ですが、優れたエディターは常に利用できるとは限りません...)。

viを学ぶことで、 'sed'のような他のツールや一般的な正規表現を学べるように設定できます。

さらに、適切なオタクになりたい場合は、単に 'vi / m'を知る必要があります。そうしないと、偽物に見えます;-)


2

vimを学ぶ時間と労力は間違いなく価値があると思います。私にとっては、テキストの入力とナビゲートが非常に効率的になるため、emacsやctrl / shift / alt / metaキーのコンボに戻ることを想像するのは困難です。

vimの空想的な機能すべてに脅かされないでください。十分に使いこなせば、最もよく使用するコマンドを特定し、忘れることができるものを特定できます。


2

Vimの驚くべきユビキタス、そして一般的にはViクローンのさらに驚くべきユビキタスは、Unixシステムだけでも、学ぶ価値があります。

それだけでなく、Viスタイル全体の考え方は、私をもう少し生産的にしたと私が本当に思っているものです。コマンドモードや挿入モードなどのモードに慣れていない人にとっては、テキストを挿入するためだけにモードに入らなければならないのは少し過剰に思えます。しかし、数か月間Vimを使用していて、かなりの数のヒントやコツを学んだ場合、Vimは価値のある資産のようです。

もちろん、Emacsの群衆はEmacsスタイルの考え方についても同じことを言っていますが、Vimの方が単純で、私のために仕事をしてくれたため、Emacsの学習をあきらめました。


2

非常に熟練した誰かが非常に高速なクリップで編集を行うために移動するのを見て、viが好きになることを学びました。本当に素早くコーディングできます。私が気に入っているもう1つの理由は、IDEでマウスを動かすとしばらくすると本当に手が痛くなり、viが素晴らしい変更を提供することがあります。他の人が述べたように、ほとんどの場合それはUNIXシステムでも利用可能であり、粗悪な接続でもうまく機能します。

私が言及していないことの1つは、viを知っていることは、一部のサークルでは「オタクの信用」という追加の利点があることです。新しいプログラマーがneditを起動してファイルにいくつかの変更を加えるのを見たときに笑う人が少なくとも数人いると思います。


2

コマンドの数に恐れを感じないでください。私が使用するのは、せいぜい数十を超える人だけです。コードについて考えているとき、テキストについて考えているので、マウスについて考えるようになって、私を混乱させるだけなので、それは不可欠だと思います。大きなトリックは、少しずつ習得することであり、いじくり回すことをためらわないことです。取り消し機能は、その動作を調べるのに最適です。

また、深く理解すれば、vimはスクリプト対応です。可能性は文字通り無限です。

(はい、これはすべてemacsにも当てはまります...)


2

Linuxで実行されているサーバーで作業を開始する必要があるまで、テキストパッドとエクリプスの世界に満足していました。リモートスクリプトと構成ファイルの設定が必要でした!

最初は大変でしたが、今ではサーバーを簡単にセットアップして調整できます。


2

既に使用しているエディタに満足できない可能性があるため、vimを学びたいと思うかもしれません。

多くの人がそれがクールだと言うので、あなたはvimを学びたいかもしれません。この質問に対する答えの数を見てください。

vimを学ぶ理由をもう1つ挙げます。そのドキュメントの品質と完全性には定評があります。したがって、ヘルプクエリに適切なキーワードを貼り付けることができれば、ヘルプシステムで質問に対するほとんどの回答を見つけることができます。


2

vi(m)を速く学習するには、まず設計全体を理解する必要があります。Vimには一連の優れたカーソル移動コマンドがあります。いくつか確認してください(Xは文字、#は数字):

jk enter arrows 0 $ w W b B ctrolD crtolU ctrolE ctrolY HML fX FX tX TX、; %gg G n N mX 'X' '

そしてそれ以上列挙するのは退屈でしょう。これらの多くは、4jが4行上に移動するなど、コマンドの前のカウントをサポートしています。

次に、デザインに戻り、dのようなコマンドを入力し、その後にカーソルを移動します。コマンドは、カーソル位置から移動終了までのテキストに適用されます。たとえば、Hは画面の最上部に移動し、dHは画面の最上部に削除され、cHは画面の最上部に変更(置換)します。

このデザインは非常に強力です。また、学習する必要のあるものを削減または整理します。決定的に最初のステップは、いくつかのカーソル移動コマンドを学ぶことです。最初は8または10と言います。その後、ほとんど完了です。


2

何か新しいことを学ぶことは、常に努力する価値があります。チートシートを印刷して、日常的に使用することをお勧めします。


中国語で、ドラゴンを屠殺する方法を教師から学ぶという話があります。彼は勉強を卒業すると、肉屋に本物のドラゴンを見つけることはできません。私はviを言っているのではありませんが、時々何かを学ぶことはただの時間の浪費であるというのがこの話の教訓です。
Earth Engine

2

Vimは、以前にここで述べられたことを部分的に要約することを学ぶ価値があります。主な理由は次のとおりです。

  • Vi / Vimは、ほとんどのUNIXシステムで使用できます。
  • Vimでは、キーボードから手を離さずに簡単にコーディングできます。
  • UNIXベースのシステムで何かを構成する場合は、かなりの数の構成ファイルを編集する可能性が高いため、vimが最高の1つであるターミナルベースのエディターを学習する必要があります(すみませんemacs)。
  • Vimは、ほとんどすべてのOS向けに事前にコンパイルされたバイナリをコンパイル/持っています。「[OSを挿入]の代わりにテキストメイトが必要です」と投稿する必要はありません。代わりにVimを用意します。
  • エディター内のcvs diffなど、多くの機能を追加するための優れたプラグインは多数ありますが、これらのプラグインにはかなりの量の変更が必要です。

また、Vimキーバインディングが気に入った場合の補足として、Komodo Editなどの単純なコマンド用のエディターにvimバインディングを含むIDEもあります。

Vimの学習に関するヘルプが必要な場合は、ターミナルに「vimtutor」と入力して、指示に従ってください。特にハッキングヴィムである本もあります


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.