2013-08-28 25 views

回答

2

你可以看看ECB(這是更好地利用它my fork,因爲它適應新的Emacs & CEDET) - 它可以顯示源代碼信息語義(CEDET分裝)或通過imenu獲取它(的語言說Semantic不支持)。

Speedbar(包括到GNU Emacs的),還可以顯示頂級對象的列表,但沒有顯示進口,其他頂級的東西

1

功能之間的差異對於第一個問題,使用的Mx像Alex建議的那樣,speed-bar

對於第二個,使hs-minor-modeM-Xhs-minor-mode,並使用C-CC- @C-S-H隱藏所有方法和C-CC- @C-S-S顯現。

+0

沒有「第一個」和「第二個」問題。 OP問題中的第二句更詳細地解釋了第一句話的含義。 – tripleee

+0

第一句話要求「列表」。第二個要求「顯示/隱藏」。不同的問題,雖然有關。 –

0

對我來說,快速查找方法最簡單最方便的方法是命令頭盔發生(C-x c M-s o)。您開始輸入您想要跳轉到的方法的名稱,並在您輸入時開始彈出建議。然後你按回車鍵選擇你想要的,然後你的光標在代碼中跳到那裏。頭盔發生並不是爲此目的而寫的,但是這種方式非常有效。

6

我建議使用elpy

C-c C-o運行elpy-occurrence-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): 

順便說一句,它具有許多其他有用的功能,對我來說,使它成爲一個必要的除了蟒蛇模式。

+0

謝謝,輝煌! – DmitrySemenov

+0

當執行'C-C C-o'時,我該如何讓它不*使用已經打開的緩衝區,而是打開一個新的緩衝區? – Michael

0

加速棒很好,另一個不錯的選擇是helm-imenu。我已經綁定了幾個按鍵以便從不同的上下文中快速訪問它,並在大多數時間使用它

相關問題