AucTex에서 pdf 문서 파일을 보는 데 문제가 있습니다. pdf-tools
Emacs에서 PDF 파일을 보는 데 사용 하고 emacsclient -n
기본 pdf 뷰어 (Debian Linux의 xdg-mime를 통해)로 설정했습니다. 이것은 대부분의 상황에서 잘 작동하지만 (Tex-documentation-texdoc ...)
Auctex ( C-c ?
) 의 기능을 손상시킵니다 .
문제를 한 줄의 코드로 좁혔습니다. listings
패키지 의 설명서를 보려고 할 때 이것을 TeX-documentation-texdoc
다음 sexp로 바꿉니다.
(shell-command-to-string "texdoc --view listings")
texdoc
차례로 emacsclient
xdg를 통해 데스크탑을 구성한 방법에 따라 실제로 파일을 열 도록 호출 합니다. 그러나이 시점에서 Emacs가 중단되고 C-g
제어를 다시 받으려면 ( )를 종료해야합니다 . 그 후에는 새로운 pdf가 열리지 않습니다. emacsclient를 직접 호출하려고 할 때도 마찬가지입니다.
(shell-command-to-string "emacsclient -n tmp.pdf")
두 명령 모두 명령 행에서 작동합니다 (예 : emacsclient -n tmp.pdf
및) texdoc --view listings
.
내 질문은 이런 경우 Emacs 내에서 어떻게 emacsclient를 호출합니까? (그리고 나는 단지 pdf 파일을 열 수 있다는 것을 알고있다 find-file
; 그것은 파일을 찾기 위해 외부 프로세스 (texdoc)를 호출해야하기 때문에 여기서는 옵션이 아니며, 그 프로세스는 emacsclient를 호출한다).
texdoc --view
전환 한 다음 파일을 열 때 Emacs로 다시 전환하는 것입니다. 그러나 Emacs의 한 단계 에서이 작업을 수행 할 수있는 방법이 있어야한다고 생각합니까?
(async-shell-command "emacsclient -n tmp.pdf")
문제를 해결할 수 있습니까 ?
(async-shell-command "emacsclient -n tmp.pdf")
작동하지만 작동 (async-shell-command "texdoc --view listings")
하지 않습니다. 유용한 단서입니다.
C-u C-c ?
작업? 먼저 패키지와 관련된 문서 목록을 표시 한 다음로 뷰어를 엽니 다 (call-process "texdoc" nil 0 nil "--just-view" doc)
.
texdoc -M --list listings
파일을 찾은 다음 사용하지find-file
않습니까?