저는 Sweave 파일을 편집하기 위해 ESS 5.4와 함께 Emacs 23.1을 사용하고 있습니다. 버퍼의 기본 AUCTeX 들여 쓰기 동작을 해제하고 싶습니다 (항목 별 목록에 포함 된 코드 청크에 대한 성가심을 피하기 위해). 파일 상단에 % -*- LaTeX-indent-level: 0; LaTeX-item-indent: 0; -*-
이 있습니다. 내가 버퍼를 열고 C-h v LaTeX-indent-level
을 실행하면, 나는 내가 원하는 것을 얻을 :Emacs와 Sweave가있는 버퍼 로컬 변수
LaTeX-indent-level is a variable defined in `latex.el'.
Its value is 0
Local in buffer test.Rnw; global value is 2
This variable is a file local variable.
그러나, 나는 코드 덩어리를 편집 한 후, 그것은 기본 동작으로 돌아갑니다. C-h v LaTeX-indent-level
이제 산출 :
LaTeX-indent-level is a variable defined in `latex.el'.
Its value is 2
내가 수정 나의 이맥스에
(add-hook 'noweb-select-mode-hook
'(lambda() (hack-local-variables-prop-line)))
을 추가 제안하는 the noweb-mode FAQ에 제안했습니다. 위에서 설명한 동작은 내가 이것을했을 때 계속되었습니다.
버퍼 로컬 변수를 얻을 수있는 방법이 있습니까? 모든 Sweave/noweb 버퍼에서 LaTeX-indent-level
을 0으로 설정하기 위해 .emacs를 변경하지 않으려합니다. 나는이 테스트를하지만, 대신 다음을 시도하지 않은