2011-09-11 4 views
0

두 개의 코드 파일이 있다고 가정합니다. 하나는 작은 테스트 스크립트이고 다른 하나는 내 주요 코드입니다 (둘 다 C++ 코드 파일). 이맥스는 각각 다른 컴파일 명령을 사용하고 싶습니다 (예를 들어 "test_script"를 만들고 "make release"를 다른 명령으로 사용합니다). 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?emacs가 버퍼 단위로 컴파일 명령을 변경하도록하려면 어떻게해야합니까?

답변

2

compile-command 로컬 변수를 버퍼에 사용할 수 있습니다. 예를 들어, 하나 개의 C++ 소스 코드 :

// Local Variables: 
// compile-command: "make release" 
// End: 

그리고 당신은 컴파일의 다른 수단을 사용하는 다른 소스 코드에 그것을 변경할 수 있습니다. 해당 컴파일을 트리거하려면 M-xRET 컴파일을 사용할 수 있습니다. 귀하의 질문 사항에 따라

, 당신은 compile 물어하지 않으려면, 다음을 추가 할 수 있습니다 :이 변수가 위험하다하는 파일을로드 할 때

// Local Variables: 
// compilation-read-command: nil 
// compile-command: "make release" 
// End: 

그러나 경고가 표시됩니다. 이를 수락 할 수는 있지만 이것은 알 수없는 소스가로드 된 파일로 컴파일 할 때 임의의 명령이 오류에 의해 실행될 수 있음을 의미합니다 (즉, 이러한 명령이있는 파일을 가져 와서 그냥 수락하면 파일을 컴파일하면 먼저 묻지 않고 자신의 프로그램을 실행하게됩니다.)

+0

묻는 대신 로컬 변수를 사용하도록 컴파일 명령을 어떻게받을 수 있습니까? 필자가 M-x를 컴파일 할 때 RET을 컴파일하면 어쨌든 컴파일 명령을 요구하고 이전에 입력 한 내용을 보여줍니다. – rv1

관련 문제