なぜ21世紀のプログラマにとってvi-axなのか

いつ、どのような状況で記憶していないのですが、どういうわけかGitを発見しました。 最初は、もちろん、他のバージョン管理システムに対する利点をよく理解していませんでしたが、当時会社で使用していたTFSにうんざりするまでに、試してみることにしました。



Gitは私の愛を非常に早く獲得し、それ以来、それなしで自分の作品を想像することさえできません。



かつて、さまざまなチームでプレイして試しているときに、誤ってエディターモードを開始しましたが、GitはデフォルトでVimを使用しましたが、これは今まで見たことのないものでした。 さて、このエディターとの最初の知り合いは通常どのように行われますか? そうです-戸惑いとターミナルの再起動。 それはささいなことです-私は編集者を離れることができず、正直に言って、私は編集者が愚かなバグだとさえ思いました。 Gitのようなパワフルなものを作成した賢い男が、古風で、愚かで、理解できず、firstい(最初は私に思われた)エディターを選択できたのはどういうことかと思ったことさえ覚えていますか?







しかし、その後、私は興味を持ち、掘り始めました。 率直に言って、あなた自身の怠inessと後天的な習慣を克服する道は簡単ではなく、非常に長いものでした。 しかし、私は過ごした時間と神経質について後悔していません。 WebStorm / RubyMine / PyCharm、Sublime Text、Visual Studio、Atom-Vimモードを可能な限りほとんど使用しています(そして使用しています)。 Vimモードは、ターミナル、さらにはブラウザでアクティブになります。



はい、はい、判明しましたが、Vimコマンドを知っていると、非常に効果的にタブを切り替えたり、リンクをたどったり、上下にスクロールしたり、ページ上のテキストを探したりすることができます。



Chromeには最大3つの拡張機能があります-最も人気のあるVimium 、あまり人気がなく、少し時代遅れのVrome、そして活気のある若いcVimです。 最初から始めてから、Vromeに切り替えました。 実際、Vromeにはファンキーな機能(サードパーティエディターでのテキスト編集)が用意されています。 つまり、たとえば、StackOverflowに移動して質問したり、テキストボックス領域に移動したり、Vimが開くキーの組み合わせを押したりすることで、すべての機能を使用してテキストを駆動できます。 保存すると、テキストは自動的にブラウザに戻ります。 フィクション。 残念ながら、Vimiumにはそのようなサポートがまだありません。 それ以外の点ではVromeよりもはるかに優れていますが、最近Vimiumに切り替えました。結局、多くのバグが修正され、機能が追加されました。 もちろん、外部エディターのサポートがなければ、苦しむ必要があります。 cVim-若く、かなり強力で急速に発展しているプロジェクトにもかかわらず、著者とプロジェクトの参加者がこれがVromeでどのように発生したかを見捨てないことを願っています。

私はFirefoxをあまり使用しませんが、私が知る限り、 Vimperatorはそこを操作します。



Vimはファンキーなものですが、Vimの唯一の欠点は、一度慣れると生涯慣れることです。 たとえば、Skype、Word、SlackなどにはVimモードがありません。 興味深いことに、多くのWebサイトは基本的なvimナビゲーション-gmail、trello、githubなどを実装しています。



Vimを試したことがあり、慣れることができた場合は、もう一度試してください。 Zen Vimを理解したい場合は、我慢してください。 vimtutorを起動して、 Vim Adventuresでプレイします。 常に、必要なキーの組み合わせを記憶/検索する必要があるため、神経質にならないようにしてください。 チートシートを印刷します 。 最初は、このシープスキン全体に労力をかける価値はなく、Vimが生産性を高めることはないように見えますが、すべてが正反対です。 私の言葉を聞いてください。Vimの魅力をすべて感じるには数か月かかります。 しばらくすると、あなたはそれについて考えることさえしなくなります-あなたの指はキーボード自身の周りを動き回ります、そして、初心者の観察者にとってあなたの行動はまるで魔法のように見えます。 誰かがなんとなく冗談を言った-彼らは、多かれ少なかれ重要なVim-ovaの組み合わせがMortal KombatのFatalityに合格すると言う。



さて、あなたは興味がありますか? 次に、実際のエディター(ジョーク)について説明しましょう。



初めて自分でVimを発見してからかなりの時間が経ちましたが、徐々にVimの欠点が明らかになり始めました。 実際、Vimはエディターです。 本格的なIDEを作成することは不可能とは言えませんが、非常に困難です。 そして、テキストを編集するだけでなく、本格的な検索と置換、インテリセンス、ファイルマネージャー、ビルトインVCSサポート、できればターミナルウィンドウ、多言語主義などが必要です。 はい、Vimには多数のプラグインがあり、接続したり、無限に調整したりできますが、本質的にはVimは基本的にそうです-エディター。 この点で、Sublimeはさらに悪くありません。 JetBrains IDEが大好きです。 たとえば、Webstormは素晴らしいものです。 何が悪いの? そして、両方のVimモードのサポートに不満がないわけではありません。



だから、私はVimモードをサポートする環境が欲しいのですが、同時に:



そして、最後には何がありますか? そして、Emacsがあります。 はい、はい、驚かないでください。



怠idleな好奇心と、Emacsの前に10年間Vimを使用していた同僚、またVim (および後にEmacs )の構成をドラッグした友人から、Emacsを研究するように促されました。



最初は、邪悪なEmacsは私をまったく入れませんでした。 私はまだ仕事で冗談を言っていました。Emacsには自分のコンピューターには収まらないほど大きなエゴがあると言っていました。 試すために、私はEmacsを裸でダウンロードして起動しました。 見た。 好きじゃなかった。 次に、いわゆるスターターキットをダウンロードしようとしましたが、気に入らなかったのです。 まあ、私はVimモードなしでは生きていけません。 そして、邪悪なモードを発見しました。 そして、私は自分の怠inessがまったく同じように間違っていたことに気づき、Emacsをもっと早く試さなければなりませんでした。



Emacsに切り替えたばかりで、おそらくアドバイスはしません。 私は彼の環境がどれほど柔軟であるかをすぐに実感したとしか言えません。 Emacsはエディターではなく、IDE、ワードプロセッサー、オーガナイザーを自分の色や好みに合わせて組み立てることができるコンストラクターです。 たとえば、Evernoteのメモを直接Emacsに送信してみませんか? プラグインが見つかり、インストール、設定されました-私はそれを使用します。 わあ 2番目の例:英語でかなり頻繁に記述し、シソーラスを使用する必要があります。 このためにいくつかのプラグインがあることが判明しました-私は選択しなければなりませんでした。 私が選択したものには、変形単語のリストを含むウィンドウが表示されます。 しかし、完全な自動化が必要です。 オプションでウィンドウを開くとき、カーソルはそのウィンドウにジャンプする必要があります。 そして、適切なオプションを選択した後、それを検索語に簡単に置き換えて、不要なウィンドウをすでに閉じることができます。 そのようなトリックは非常に簡単にプログラムできることがわかりました。 そして今、私はシソーラスのためにインターネットをサーフィンする必要がなく、オプションを見つけて選択するのは文字通り数秒かかります。



結論として、もちろん、どちらのエディターが優れているかについては無限に議論することができます。 しかし、それでも、私は思う-真の開発者は両方をマスターするべきです。 私があなたに望むこと。 そして、それらをマスターした後に初めて理解できるでしょう。 なぜ40年前に現代のプログラマーがエディターを必要とするのか。



All Articles