2010-02-17 2 views
1

이맥스에서 which-function-mode를 켜면 커서가있는 현재 함수의 상태 표시 줄에 함수 이름이 표시됩니다. 그러나 클래스 내에 중첩 된 함수 나 메소드가있을 때는 가장 바깥 쪽 함수 만 표시됩니다.이맥스에서 which-function-mode로 중첩 된 함수 표시

예를 들어 C++에는 다음과 같은 클래스가 있습니다.


class Foo 
{ 
    void func1() 
    { 
     ... 
    } 
}; 

커서가 func1() 안에 있으면 상태 표시 줄에 클래스 이름 Foo가 표시됩니다. Foo plus func1을 표시하려면 어떻게합니까? Foo.func1 또는 Foo :: func1과 같은 것이 좋습니다.

+0

사용중인 이맥스의 버전은 무엇입니까? 23.1.1을 사용하고 있기 때문에 which-funcion-mode를 켜면 class.function이 emacs status bar에 표시됩니다. – coelhudo

답변

2

which-func 기능은 기본적으로 imenu 기능을 사용하여 표시 이름을 얻습니다. 나는 당신이 기본적으로 찾고있는 기능을 얻는 방법이 있다고 생각하지 않는다.

CEDET을 설치하면 which-func 기능을 재정의하여 파서 시스템을 사용하여 이름을 얻은 다음 "."을 사용하지만 정확히 설명 할 수 있습니다. 기본적으로.

+0

Boy 저는 그것을 할 수 있기를 바랍니다. – yPhil

0

라이브러리 imenu+.el을로드하면 시도해 볼 수 있습니다. 그게 도움이 될지 모르겠다. 그렇지 않으면 라이브러리 thingatpt+.el에있는 symbol-name-near-point과 같은 기능을 사용하도록 which-function의 정의를 조정할 수 있습니다. Thing At Point+을 참조하십시오.

관련 문제