ropemacs USAGE チュートリアル
質問
に関する説明のあるサイトはたくさんあります。 をインストールする をインストールする方法を説明したサイトはたくさんありますが、今のところ、どのように を使用する を使う方法を説明したものは見つかりませんでした。私はそれをインストールした、または少なくともそう思われる、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
関連
-
[解決済み] スロットの使い方__?
-
[解決済み] PythonでのAWS Lambdaのインポートモジュールエラー
-
[解決済み] PythonでファイルのMD5チェックサムを計算するには?重複
-
[解決済み] Pythonでコード行間にかかる時間を測定するには?
-
[解決済み] Python 3でバイナリデータを標準出力に書き込むには?
-
[解決済み] Django Rest Framework ファイルアップロード
-
[解決済み] 文字列から先頭と末尾のスペースを削除するには?
-
[解決済み] PyQtアプリケーションのスレッド化。QtスレッドとPythonスレッドのどちらを使うか?
-
[解決済み] CSVデータを処理する際、1行目のデータを無視する方法を教えてください。
-
[解決済み] virtualenv の `--no-site-packages` オプションを元に戻す。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Pythonのインスタンス変数とクラス変数
-
[解決済み] データフレームをソートした後にインデックスを更新する
-
[解決済み] 古いバージョンのPythonにおける辞書のキーの並び順
-
[解決済み] オブジェクトのリストに特定の属性値を持つオブジェクトが含まれているかどうかをチェックする
-
[解決済み] サブフォルダからのインポートモジュール
-
[解決済み] PyQtアプリケーションのスレッド化。QtスレッドとPythonスレッドのどちらを使うか?
-
[解決済み] Celeryタスクのユニットテストはどのように行うのですか?
-
[解決済み] Python 言語を決定するには?
-
[解決済み] Pythonの文字列書式をリストで使う
-
[解決済み] Django filter queryset __in for *every* item in list