私は Emacs を学習しようとしています。チュートリアルを完了し、Emacs に関する O'Reilly の本を借りてきました。しかし、問題は依然として - Emacs の優れたワークフローをどのように学習するかということです。Vimなどのように Emacs を使用していないと思います。
この質問は私に関係があるようです: - Emacs を使っている専門家のビデオはどこで見られますか?
私は Emacs を学習しようとしています。チュートリアルを完了し、Emacs に関する O'Reilly の本を借りてきました。しかし、問題は依然として - Emacs の優れたワークフローをどのように学習するかということです。Vimなどのように Emacs を使用していないと思います。
この質問は私に関係があるようです: - Emacs を使っている専門家のビデオはどこで見られますか?
誰もこれについて言及していないとは信じられませんが、Emacs にバンドルされている情報ページを読むことは、あいまいな機能について学ぶための優れた方法です。コーディングの休憩が必要なときはいつでも、ヒットM-x info
してランダムなページを選んで読んでください。あなたの emacs 能力は驚くほど速く向上します。
また、emacs の自己文書化機能が作業にどのように役立つかを理解することも重要です。たとえば、フォント サイズを変更する方法を知りたいとします。フローを中断してここ、IRC、または Google で尋ねる代わりに、emacs に尋ねることができます! C-h a
( M-x command-apropos
) を押して検索語を入力するだけscale
です。一致する関数がある場合は、その名前、キーバインド、およびドキュメントが表示されます。があり、今あなたは と を発見text-scale-increase
しましtext-scale-decrease
た。
C-h m
現在のメジャーモードとマイナーモードで利用できるキーバインドとコマンドを教えてくれる、学ぶのに良い自己文書化関数が他にもあります。これは、存在を知らなかった機能を発見するための優れた方法です。
「浸透によって学ぶ」もう 1 つの方法はM-x customize-group
、定期的に使用するモードを学習することです。(customize
は、ほぼすべてのモードがサポートするインタラクティブな構成エディターです。)
最後に行うことは、Emacs Lisp を学ぶことです。既存のツールを使用するのは良いことですが、独自のツールが必要になる場合もあります。Lisp の学習を避けようとすると、常に正しく機能していないことに行き詰まります。それは残念なことです。
Emacs は、それ自体をカスタマイズするための優れた環境です。Emacs には、 から表示できる 2 つの Lisp マニュアルが含まれていM-x info
ます。自己文書化されているため、任意の関数の文書を言うC-h f
か、または取得することができます。M-x describe-function
を押しTAB ENT
てその関数のソース コードにジャンプし、実装方法を確認することもできます。foo
これは、「のように機能するが、少しだけ違うものがあればいいのに」と思うときに最適です。がどのようfoo
に実装されているかを読んで、*scratch*
バッファに変更を加え、変更が気に入るかどうかを確認できます。編集/コンパイル/テストのサイクルはありません。キーを押すと、作成したばかりの機能がすぐに emacs セッションに適用されます。
emacs の学習に力を注ぐほど、emacs は作業をより簡単にしてくれます。
基本(ファイルの開閉、ナビゲート、基本的な編集)をマスターしたら、それを使用するだけです。他の多くのツールと同様に、練習は完璧になります...
ただし、現在のエディターの使用方法の改善に取り組むために少し時間を取っておきますが、それを目的として物事を学ぶのではなく、通常のワークフローの一部として行います。
いくつかの有用なリソースは、EmacsWikiとPlanetEmacsenブログです。私は両方を使用します。主に「インスピレーション」のためにPlanetEmacsenを使用し、次にEmacsWikiに移動して、特定のトピックについてトロール網を使用します。あなたが探しているものについて少なくとも漠然とした考えを持っていない限り、入手可能な情報は実際に役立つのではなく、あなたを圧倒するだけであることがわかりました。
言うまでもなく、StackOverflowには非常に役立つリソースがいくつかあります。たとえば、この質問はここにあります。Emacsは非常に強力なツールであり、1人のユーザーが必要とする以上のことを実行できる傾向がありますが、最終的には、必要なパーツを正確に選択できるようになります。
私の提案は、Emacs 以外の使用をやめることです。問題が発生した場合は、Emacs で解決できるかどうかを確認してから、フォールバックします (時間がないか、うまくいかない場合)。ワークフローに関しては、通常の作業とほとんど同じです。つまり、通常の ide セッションでは、通常どおりにファイルを開いたり編集したりしてから、通常どおり (Cx vv で) コミットします。
emacs のワークフローを学ぶ必要はありません。チュートリアルを完了して基本事項を習得したら、ある程度の一夫一婦制を採用し、Emacs だけを使用する必要があります。最終的には、本当に欲しいと思っていた機能について考えるでしょう。ほとんどの場合、他の誰かも同じように持っているでしょう。解決策は 1 回検索するだけです。時間が経つにつれて、学習せずにはいられなくなり、最終的には、独自の個人的なワークフローを開発するのに十分な量を習得します.
プロセスを加速したい場合は、Emacs wiki にさまざまなヒントがありますが、実際には Emacs で作業するのが最善の方法です。
効率的なテキスト編集についてのBramMolenaarの講演をご覧ください。http://video.google.com/videoplay?docid=2538831956647446078&ei=EqiGSau8KZ-QiQLi-Nn8Cg&q=bram+molenaar+editing
彼はvimの男ですが(彼はそれを書いています)、emacsに適用されるテキストエディターをより上手に使うための最善の方法についていくつかのアイデアを得るかもしれません。
正直なところ、必要なキーバインドを学ぶだけです。私は emacs の可能性を最大限に活用する必要がないので、emacs を最大限に活用していません。私の提案は、必要なことだけを学び、必要のないことは気にしないことです。毎日新しいキーバインディングを学び、約 300 年後にはそれらすべてを知ることができます ;)
私は現在取り組んでいるすべてのプラットフォームで昔のAmigaの時代からemacsを使用しています。
emacsを使用する最良の方法は好奇心です。機能を見つけるために、私は今でもしばしばapropos(Ch a)とMx(キーバインドの代わりに長いfunctionnameの場合)を使用します。
Emacsの「適切な使用」の重要な概念は、非常に簡単なelisp(lispの単純な派生物)を学び、独自の小さなヘルパー(独自のコメントスタイル、下線、テンプレート)を作成し、値を変更する場所を知ることです(タブサイズ、コンパイラ、電子メール)
そして3番目のこと:すべてがemacsにあります:私はファイルをナビゲートするためにdired(ディレクトリエディター)を使用します。私はすべてのテキストファイル(各タイプのファイル(c、ruby、list、sql、latexなど)に適切なモードを使用)に多くのバッファーを使用します。これらのファイルは、emacsを終了するときに保存され、呼び出すときに回復されます。私はemacsからコンパイラーを起動し、jump-to-error-functionalityを使用します。
マクロは日常業務です(コードをscimmingし、途中で変更します)。
定数のブロックの番号を付け直すのが簡単な、置換して下向きに入力できる画像モードが好きです(古き良きc #defines))
登るには険しい山がありますが、頂上に着いたら、足元から全世界を見ることができ、この体験を二度と見逃したくはありません。私は知っています、周りには多くの優れた編集者がいます(私はEclipseを通して自分自身で働いています)
前に述べたように、最善のアドバイスは、来年は Emacs だけを使用することです。指の記憶が発達すると、物事はずっと簡単になります。
何かの「良いワークフロー」をどのように学びますか? それを使うことで、それを知り、あなたのものにします。Emacs の「適切な」使用法はありません。
それを知るためには: Emacs に尋ねてください-- そのヘルプシステムを使ってください。これも役に立ちます: http://www.emacswiki.org/emacs/EmacsNewbieWithIcicles
それが Emacs のパワーです。好きなように使えます。好みに合わせて事前に構成する必要があります。