2013-04-14 2 views
2

"PDF로 이동"을위한 글로벌 세트 키로 변환하는 방법에 대한 아이디어가 있으십니까?LaTeX의 키 바인딩 만들기 PDF로 이동 - synctex

(defun aquamacs-latex-viewer-support() 
"Support for Skim as LaTeX viewer if present." 
(add-to-list 'TeX-command-list 
    '("Jump to PDF" 
     "%V" TeX-run-discard-or-function nil t :help "Run Viewer") 'append) 

마우스 오른쪽 버튼을 클릭하면 상황에 맞는 메뉴가 몇 가지 유용한 옵션을 가지고 있으며, 나는이 파일을 아래로 추적 것 같아요 : /Applications/Aquamacs.app/Contents/Resources/lisp/aquamacs/auctex-config.el합니다. 그러나, 나는 틀릴 수 있 었는가?

(global-set-key (kbd "<f7>") 'TeX-command-master) 

지금은 한 걸음 더 가까이 해요 -이 init.el 구성이 최신에서 작동 : 예 -

나는이 단순히 PDF 파일을 생성하는 것보다 더 복잡 할 거라고 생각 버전의 이맥스 (universal binary)를 OSX Mountain Lion에서 실행하기 때문에 키보드 단축키로 변환하는 것이 훨씬 쉬워졌습니다. 그러면 pdf로 이동하기 위해보기 옵션이 다시 구성됩니다. 즉, 이맥스의 일반적인 맛이 충분합니다 - https://tex.stackexchange.com/questions/11613/launching-an-external-pdf-viewer-from-emacs-auctex-on-a-mac-osx-fails

(setq TeX-view-program-selection '((output-pdf "Skim"))) 

(add-hook 'LaTeX-mode-hook 'TeX-source-correlate-mode) 

(setq TeX-source-correlate-method 'synctex) 

(add-hook 'LaTeX-mode-hook 
     (lambda() 
     (add-to-list 'TeX-expand-list 
      '("%q" skim-make-url)))) 

(defun skim-make-url() (concat 
     (TeX-current-line) 
     " " 
     (expand-file-name (funcall file (TeX-output-extension) t) 
      (file-name-directory (TeX-master-file))) 
     " " 
     (buffer-file-name) 
)) 

(setq TeX-view-program-list 
    '(("Skim" "/Applications/Skim.app/Contents/SharedSupport/displayline %q"))) 

답변

2

이 솔루션은 not가 Aquamacs를 사용에 의존하지 : 여기 (리카르도에 의해 작성) 나는 그것을 가지고 스레드에 대한 링크입니다.

라인 1028 : 패키지 auctex-11.86와 이맥스 (스노우 레오파드 (Snow Leopard)와 산 사자)의 OSX 버전으로, tex.el 내에서 다음 코드 줄은 * .PDF 파일을 볼 수에 영향을주는 ("명시하다"("명시하다"(모드 -를 IO-상관 관계 "-p % (outpage)") "%의 O"))

1,119 라인 (출력 PDF Skim.app 널리 * 가장 적합한 것으로 간주된다

"명시하다"). * .pdf 파일의 변경을 감지하면 디스플레이를 자동 업데이트 할 수 있고 역 탐색을 사용할 수 있기 때문에 OSX * .tex 문서의 pdf 뷰어를 사용할 수 있습니다 (즉, command + shift + left-click) 정확한 지점에서 텍스트 편집기로 돌아가려면 마우스를 클릭 한 곳

OSX 커뮤니티에서 Evince를 널리 사용하지 않으므로 해결 방법은 tex.el을 수정하거나 init.el을 수정하는 것입니다. tex.el에는 OSX 시스템에서 * .pdf보기 구현을위한 개발자의 노력을 조정해야한다는 표기법이 있습니다.

다음은 자신이 선택한 키보드 단축키가 포함 된 init.el의 수정 버전입니다. auctex-11.86의 현재 버전은 'TeX-view (C-C C-v)의 키보드 바로 가기를 이미 갖추고 있습니다. 참고 : 다음 코드는 synctex가 활성화 된 상태에서 View가 PDF로 점프되도록 구성합니다. 따라서 synctex가없는 빠른보기를 원하는 사람은 약간 다른 구성이 필요합니다. 내가 만든 키보드 단축키는 빌드를위한 F7입니다. pdf로 점프하기위한 F8; 및 F9를 정리하지만 * .pdf 및 * .tex는 그대로 두십시오.

[미래에는/tmp에 -output-directory 옵션을 사용하고 자동으로 * .pdf를 작업 디렉토리에 복사하여 정리가 불필요하도록 코드를 작성할 계획입니다. 이전 솔루션은 정화 과정을 제거하는 가장 좋은 방법입니다 그래서 TexLive는 현재의 -aux 디렉토리 옵션을 지원하지 않습니다]

(global-set-key (kbd "<f7>") 'TeX-command-master) ;; need to set a default for this to work. 
(global-set-key (kbd "<f8>") 'TeX-view) ;; jump to *.pdf with synctex (or C-c C-v) 
(global-set-key (kbd "<f9>") 'TeX-clean) ;; clean, but leave the *.pdf 

(setq TeX-PDF-mode t) 

(setq TeX-view-program-selection '((output-pdf "Skim"))) 

(add-hook 'LaTeX-mode-hook 'TeX-source-correlate-mode) 

(setq TeX-source-correlate-method 'synctex) 

(add-hook 'LaTeX-mode-hook 
    (lambda() 
     (add-to-list 'TeX-expand-list 
      '("%q" skim-make-url)))) 

(defun skim-make-url() (concat 
    (TeX-current-line) 
    " " 
    (expand-file-name (funcall file (TeX-output-extension) t) 
     (file-name-directory (TeX-master-file))) 
    " " 
    (buffer-file-name) 
)) 

(setq TeX-view-program-list 
    '(("Skim" "/Applications/Skim.app/Contents/SharedSupport/displayline %q"))) 

도 참조 :.

https://tex.stackexchange.com/questions/111834/auctex-output-directory-copy-pdf-to-working-directory