성공 후 컴파일 버퍼 종료


3

aquamacsMac 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 줄이어야합니다.

지금까지 읽은 경우-혼자 고맙습니다 :)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.