2013-08-28 1 views

答えて

2

あなたが(それは新鮮なEmacsの& CEDETに適応していますように、それはそれのmy forkを取る方が良いでしょう)ECBに見ることができます - それは言語のために(セマンティック(CEDETのサブパッケージ)から、あるいはimenuを経由して、それをフェッチソースコードに関する情報を表示することができますSemanticではサポートしていません)。

(GNU Emacsのに含まれている)スピードバーは、トップレベルのオブジェクトのリストを表示することができますが、輸入品の違いを示していない、最初の質問については、他のトップレベルのもの

1

の機能、はMxを使用Alexが提案したようにspeed-bar。秒間

hs-minor-modeを有効、M-Xhs-minor-mode、及び C-S-S @表示するすべてのメソッドを非表示にするC-S-H、及びC-CC- @C-CC-を使用します。

+0

「最初」と「2番目」の質問はありません。 OPの質問の2番目の文は、最初の文が意味することをより詳細に説明しています。 – tripleee

+0

最初の文章は「リスト」を要求します。 2番目は "表示/非表示"を要求します。異なる質問ですが、関連しています。 –

0

私にとっては、メソッドをすばやく検索する最も簡単で便利な方法は、helm-occurコマンド(C-x c M-s o)です。ジャンプしたいメソッドの名前の入力を開始し、入力時に候補がポップインします。次に、Enterキーを押して目的のコードを選択すると、コード内のカーソルがそこにジャンプします。 Helm-occurは、この目的のために厳密には書かれていませんでしたが、そのようにはうまくいきます。

6

elpyを使用することをおすすめします。

C-c C-oすべてのクラスおよび関数シグネチャのリストで新しいバッファを作成するelpy-occur-definitionsを実行します。

C-nC-pを使用してリストをナビゲートできます。 モードは、次のエラーフォローマイナーモードで動作します。 バッファ内のC-c C-fが選択されたクラスまたは関数定義にジャンプすることができます。ここで

は、そのバッファの内容の例です:ところで

8 matches for "^ *\(def\|class\) " in buffer: leveling_utils.py 
11:def leveling(episodes_with_potential_associations_by_member): 
26:def _apply_leveling(sorted_episodes): 
41:def _set_non_chronic_associations(episode): 
73:def _apply_sub_to_procedural_association(assoc): 
94:def _set_chronic_associations(episode): 
102:def _set_associations_for_self(episode): 
118:def _set_to_actual(association): 
122:def _log_actual_associations(member, leveled_episodes): 

、それは私には、それのpython-モードに必要なほか行い、他の多くの便利な機能を備えています。

+0

ありがとう、華麗! – DmitrySemenov

+0

'C-c C-o'を実行しているときに、すでにオープンしているバッファを使用せず、新しいバッファをオープンするにはどうしたらいいですか? – Michael

0

スピードバーは良いですし、もう一つの素敵な選択肢はhelm-imenuです。私はいくつかのキーをバインドして、さまざまなコンテキストから簡単にアクセスし、ほとんどの時間を使用します。

関連する問題