34

私は最近Emacsを学び始めました。私はチュートリアルを読み、いくつかの紹介記事を読みましたが、これまでのところとても良いです。

今度はPython開発に使用したいと思います。私が理解していることから、Emacsには2つの別々のPythonモードがあります。Pythonプロジェクトの一部であるpython-mode.el。Emacs22の一部であるpython.el。

私は見つけたすべての情報を読みましたが、そのほとんどはかなり時代遅れのようで、まだ混乱しています。

質問:

  1. それらの違いは何ですか?
  2. どのモードをインストールして使用する必要がありますか?
  3. Python開発に不可欠な他のEmacsアドオンはありますか?

関連リンク:

4

3 に答える 3

20

GNU Emacs 21 以前、または XEmacs を使用している場合は、python-mode.el を使用します。GNU Emacs 22 python.el はそれらでは動作しません。GNU Emacs 22 では、python.el は動作し、GNU Emacs 独自のシンボルの解析と補完、ElDoc などとよりよく連携します。私は XEmacs を自分で使用するので使用しません。過去にはあまりうまく機能しませんでしたが、いくつかの問題を修正する更新が利用可能であり (たとえば、リンクしている emacswiki ページで)、一部が上流に統合されていることを願っています。私が GNU Emacs のような人だったら、特定の理由が見つからない限り python.el を使用します。

私が見た限りでは、python-mode.el の最大の問題は、3 重引用符で囲まれた文字列を完全に理解していないことです。単一引用符で囲まれたものとして扱います。つまり、三重引用符で囲まれた文字列内の単一引用符は、構文の強調表示を無効にします。文字列がそこで終了したと見なします。また、auto-mode-alist を変更して .py ファイルの python-mode を有効にする必要がある場合もあります。それが今でも当てはまるかどうかは覚えていませんが、私の init.el は何年も前から auto-mode-alist を設定しています。

他のアドオンに関しては、私が「必須」と見なすものは何もありません。XEmacs の func-menu は便利な場合があります。現在のファイルの小さな関数/クラス ブラウザ メニューが表示されます。GNU Emacs に似たようなものがあるかどうかは覚えていません。一部のプロジェクトで使用されているように、reStructuredText 編集用の最初のモードがあります。使用している VC があればそれと結び付けることは役に立つかもしれませんが、他のほとんどの .el ファイルは簡単にダウンロードできるサポートが組み込まれています。

于 2008-10-01T10:47:59.617 に答える
8

このサイトには、Emacs で Python コード補完を取得する方法が説明されています。 Ropemacsは、Rope を emacs で動作させる方法です。どちらも豊富な経験はありませんが、検討する価値はあります。

于 2008-10-01T17:52:18.380 に答える
7

いくつかの開いているバッファーがすべて呼び出されている回数を考えると、python 開発にはuniquifyライブラリが不可欠で__init__.pyあると考えています。

Pyflakes は生産性にも役立ちます。

于 2010-12-31T12:00:22.113 に答える