aquamacs
Mac OS X에서 사용 하고 있습니다. 내 .emacs
파일에는 다음이 있습니다.
(setq compilation-window-height 8)
(setq compilation-finish-function
(lambda (buf str)
(if (string-match "exited abnormally" str)
;;there were errors
(message "compilation errors, press C-x ` to visit")
;;no errors, make the compilation window go away in 0.5 seconds
(run-at-time 0.5 nil 'delete-windows-on buf)
(message "NO COMPILATION ERRORS! Thank you dear compiler..."))))
.cpp
프레임에서 파일을 혼자 열어 놓았다고 가정 해보십시오 . 그런 다음 C-c C-c
컴파일하려고하면 프레임이 가로로 분할되고 맨 아래에 컴파일 버퍼가 나타납니다. 컴파일이 정상적으로 종료되면 컴파일 버퍼가 닫히고 분할이 종료됩니다. 그렇지 않으면 열린 채로 있으며 오류를 검토 할 수 있습니다. 여태까지는 그런대로 잘됐다!
문제는 내가 처음에 분할 프레임을 가지고 있다면 C-c C-c
아래쪽 부분을 8 줄로 크기 조정하고 아래쪽 부분 (새 탭에서)에서 컴파일 버퍼를 열고 컴파일한다는 것입니다. 컴파일이 성공하면 하단 부분이 닫힙니다. 즉 버퍼 C-c C-c
가 닫히기 전에 있던 버퍼입니다 .
이상적으로 C-c C-c
는 새로운 분할 (항상)에서 컴파일 버퍼 를 시작하고 기존 버퍼를 사용하지 않을 것입니다 (존재하는 경우). 또 다른 완벽한 해결책은 위의 코드가 수정 되어 성공적인 컴파일 후 컴파일 버퍼가 포함 된 탭 을 닫는 것 입니다. 이렇게하면 컴파일이 유일한 탭인 경우 분할이 사라지고 그렇지 않으면 컴파일이 끝난 후에도 이전에 열린 탭이 그대로 유지됩니다. 이 경우 컴파일 창의 hight는 기존 split의 hight와 같고 그렇지 않으면 8 줄이어야합니다.
지금까지 읽은 경우-혼자 고맙습니다 :)