2011-12-14 4 views
6

라텍스 및 R 코드로 Sweave 문서 (Rnw)를 스크롤 할 때 모드가 바뀔 때마다 텍스트가 점프합니다. 라텍스 및 ESS. 두 가지 모드는 텍스트를 감싸는 방법에 동의하지 않습니다. 또한, 나는GNUEmacs/ESS/Latex/Sweave : 커서가 라텍스 코드 또는 R 코드 인 경우 다르게 표시됩니다.

  1. MX 토글 잘라 내기 라인을 할 때 커서가
  2. 이동 라텍스 코드 내에서 R의 코드에
  3. 반환 커서 동안 긴 줄을자를 수 있도록하는 것으로 나타났습니다 라텍스 코드

잘린 긴 행 모드가 더 이상 나타나지 않습니다. 누군가는 이것을 알아 차 렸는가? 누구든지이 문제를 해결 했습니까?

+0

예, 알아 챘습니다. 그것은 M-x longlines-mode와 같은 일을합니다. 나는 그것을 고치기 위해 이맥스에 대해 충분히 알지 못하므로 방금 익숙해졌습니다. 그래도 대답을보고 싶어요. – Aaron

+0

@csgillespie하려면 여기에 문법으로 머리카락을 나눌 생각입니다. ** a ** 또는 ** an **을 사용할지 여부를 결정하는 것은 소리 (자음 또는 모음)입니다. [link] (http://grammar.quickanddirtytips.com/a-versus-an.aspx)를 참조하십시오. – jrm

+0

@jrm : 머리카락을 나눌 때 아무런 문제가 없습니다. 중요한 포인트를 올립니다. (http://csgillespie.wordpress.com/2011/03/26/an-r-package-or-ar-package/);) 그러나 , 나는 "Sweave"문서가 약간 빗나가게되고, 여전히 "Sweave"로 갈 것이라고 말합니다. – csgillespie

답변

4

[email protected] 메일 링리스트에서 비슷한 질문을 읽으면 이것이 내가 배운 것입니다. noweb 파일을 스크롤 할 때 ESS에서 LaTeX로 주요 모드를 전환합니다. 대부분의 메이저 모드는 모든 로컬 변수를 초기화의 일부로 제거하므로 변수를 로컬로 설정하면 덮어 씁니다.

(add-hook 'LaTeX-mode-hook '(lambda() (if (string-match "\\.Rnw\\'" buffer-file-name) (setq fill-column 80)))) 

당신은 longlines 모드에 대한 비슷한 후크를 설정하거나 전환 - 잘라 내기 라인, 등, 당신의 요구를 충족하기 위해 수 :이 문제를 해결하기 위해, 나는 내가 찾은 후크를 수정했습니다. 이 솔루션의 단점은 후크에 설정된 변수에 대해 단일 값이 붙어 있다는 것입니다.

+0

고마워, 나는 그것을 고대하고있다. – Aaron

+0

안녕하세요, 귀하의 토론이 매우 흥미 롭습니다. Sweave에서 개요 마이너 모드를 사용하도록 위의 코드를 사용하는 방법이 있습니까 ?? 왜냐하면 내가 LaTeX에서 ESS로 이동할 때 (그리고 그 반대로) 모든 윤곽선 부분이 전개 되었기 때문입니다. – Riccardo

+0

@ 리카르도, 내 대답의 설명 때문에 개요 문제를 해결하는 방법을 잘 모르겠습니다. 즉, 지역 변수를 유지하기 위해 주요 모드를 해킹하지 않는 한. 필자의 솔루션은 약간의 해킹으로 fill-column 크기가 두 모드에서 동일했다. – jrm