1. ホーム
  2. python

ropemacs USAGE チュートリアル

2023-10-15 04:48:48

質問

に関する説明のあるサイトはたくさんあります。 をインストールする をインストールする方法を説明したサイトはたくさんありますが、今のところ、どのように を使用する を使う方法を説明したものは見つかりませんでした。私はそれをインストールした、または少なくともそう思われる、Emacsはそれの上のメニューバーに"Rope"メニューを持っています。さて、どうする?今のところ、"Show documentation" (デフォルトではC-c d)しか使えません。コードアシスト(オートコンプリートですね)を使おうとしても、ミニバッファで "Ropeプロジェクトのルートフォルダ"(何でしょう)を聞かれるだけで、何も表示されません。

では、一度ropemacsをインストールしたら、いくつかの簡単なpythonスクリプトでそれを実際に見るにはどのような手順があるのでしょうか?例えば、emacsにこのスクリプトがあり、点滅している四角い ここに を押して これ を押すと あれ "というのが答えになります。

(誰も同じ問題を抱えていないようなので、これを尋ねるべきかどうか、しばらく考えていました)

どのように解決するのですか?

まず、プロジェクトのルート フォルダーを選択する必要があります。簡単に言うと、これはプロジェクトの最上位にあるフォルダー、または 1 つのファイルを扱っている場合は現在のフォルダーを指します。ルート フォルダーを選択すると、コード アシスト、ドキュメントの表示、他のシンボルへのジャンプなど、他のオプションが機能するようになります。

ropemacs の完全な利点を得るために、次のものを入手することをお勧めします。 autocomplete.el を入手して ~/.emacs.d に置き、これを .emacs に追加してください。

(add-to-list 'load-path "~/.emacs.d/")
(add-to-list 'load-path "~/.emacs.d/auto-complete-1.2")
(autoload 'python-mode "python-mode" "Python Mode." t)
(add-to-list 'auto-mode-alist '("\\.py\\'" . python-mode))
(add-to-list 'interpreter-mode-alist '("python" . python-mode))
(require 'python-mode)
(autoload 'pymacs-apply "pymacs")
(autoload 'pymacs-call "pymacs")
(autoload 'pymacs-eval "pymacs" nil t)
(autoload 'pymacs-exec "pymacs" nil t)
(autoload 'pymacs-load "pymacs" nil t)
(pymacs-load "ropemacs" "rope-")
(setq ropemacs-enable-autoimport t)

(require 'auto-complete)
(global-auto-complete-mode t)

これは ~/.emacs.d/auto-complete-1.2 に autocomplete をインストールしたものとします。これをすると、単語や記号を数文字入力すると、自動的にオートコンプリートが表示されるようになります。

より良いオートコンプリートを提供するために、ROOT/.ropeproject/config.py ファイルを修正して、ロープ検索パスにもっと多くのディレクトリを追加することができます。

EDIT: 私にとって最も重要な機能のうちの2つは、ドキュメントを検索することと、関数定義に直接ジャンプすることです。これは、上記のように、プロジェクトに対してロープ検索パスを正しく設定することに依存します。

ドキュメンテーション : シンボル(関数名、クラス名など)にカーソルを合わせて実行します。

C-c d

これで、該当のシンボルのdocstringが表示されます。

定義へのジャンプ :シンボル(関数名、クラス名など)にカーソルを合わせて、実行します。

C-c g

これは、シンボルが存在するファイルを直ちに開き、定義の先頭にジャンプします。これは、ドキュメントが少なく、実際のコードを見たいときに最適です。また、あなた自身のコードの内部を動き回るのに本当に良いことです。

出現を見つける :

C-c f

カーソル位置のシンボルをプロジェクト全体でスマートに検索します。

コードアシスト :

M-/

関数やクラスなどの最初の文字を入力するだけで、可能な補完のリストが表示されます。Pythonの性質上、常に完全なリストであるとは限らないことに注意してください。

リファクタリング : Rope->Refactor には、かなり多くのオプションがあります。これらは、あなたのコードをより良く整理するためのものです。一般的には、リファクタリングしたいコードの領域を選択し、コマンドを選択します。

編集 : 下のコメントへの返答として、オートコンプリートがそれらのシンボルも探すように python のパスに他のパスを追加する方法を正確に説明します。

prefs.add('python_path', '~/path/to/virtualenv/lib/python2.6/site-packages')

これは .ropeproject/config.py