
Texmaker에는 기본적으로 synctex 정방향/역방향 검색을 지원하는 내장 PDF 뷰어가 있습니다. 이 내장 뷰어는 내장되거나 별도의 창에 표시될 수 있으며, 외부 뷰어에는 항상 별도의 창이 있습니다. 화면이 두 개이므로 두 개의 창 레이아웃을 사용하고 있습니다.
이제 전환하고 싶습니다.수마트라PDF외부 뷰어이지만 정방향 검색이 작동하도록 Texmaker를 구성하는 방법을 찾을 수 없습니다.
나는기능 요청해당 정보를Texmaker 문서이미. 여기 누군가가 그것을 수행하는 방법을 알고 있습니까? 아마도 일부를 사용하는 것 같습니다.DDE 명령...
답변1
Texmaker에서는 DDE 명령을 허용하지 않는 것 같지만버전 1.9부터 SumatraPDFDDE 명령뿐만 아니라 명령줄 스위치를 통해서도 정방향 검색을 지원합니다. 버전 3.2.1부터 Texmaker정방향 검색을 사용하는 데 필요한 모든 변수가 있습니다. 이것들은
%
마스터 파일의 기본 이름(경로 및 확장자 없음)!
마스터 문서가 있는 디렉토리의 전체 경로에 대해#
현재 활성 파일의 기본 이름(경로 및 확장자 없음) 및@
줄 번호에 대해.
따라서 일반적으로 다음이 작동합니다.
""C:/Program Files (x86)/SumatraPDF/SumatraPDF.exe" -reuse-instance "!/%.pdf" -forward-search "!/#.tex" @
하위 디렉터리에서 포함하면 실패합니다. 해결 방법은 subDirName을 경로에 수동으로 추가하는 것입니다.
""C:/Program Files (x86)/SumatraPDF/SumatraPDF.exe" -reuse-instance "!/%.pdf" -forward-search "!/subDirName/#.tex" @
그러나 subDirName은 모든 프로젝트에서 동일해야 하므로 이는 실제 솔루션보다 해결 방법에 가깝습니다.
다음은 내 Texmaker 구성의 스크린샷입니다.
답변2
방금 정방향 및 역방향 검색으로 Texmaker 및 SumatraPDF를 설정하는 방법을 설명하는 문서를 만들었지만 완전히 이식 가능하므로 약간 까다롭습니다. 방법에 대한 링크http://goo.gl/hxDeu(리디렉션 없이:http://goo.gl/hxDeu+) 또는 아래를 참조하세요.
1. SumatraPDF를 정방향 검색 기능이 있는 외부 PDF 뷰어로 사용하도록 Texmaker 구성 휴대용 Texmaker를 열고 다음과 같이 외부 뷰어에 대한 경로를 설정하십시오.
./SumatraPDF/SumatraPDF.exe %.pdf -reuse-instance -forward-search %.tex @
SumatraPDF.exe의 경로는 Texmaker 실행 파일에 상대적이므로 폴더 구조와 일치하도록 이 경로를 편집해야 할 수도 있습니다.
2. SumatraPDF에서 역검색 구성
기본적으로 SumatraPDF는 GUI를 통한 역검색 구성을 허용하지 않습니다. 다음 명령을 한 번 실행하십시오.
SumatraPDF.exe -inverse-search "texmaker.exe %f -line %l"
저와 폴더 구조가 다르더라도 texmaker.exe 파일의 경로를 변경하시면 안 됩니다.
3. 시작 배치 파일 생성
SumatraPDF의 일부 제한으로 인해 SumatraPDF를 외부 뷰어로 사용할 때마다 다음 배치 파일로 Texmaker를 시작해야 합니다. texmaker-portable.bat에 다음 명령을 입력하고 이 파일을 Texmaker.exe와 동일한 폴더에 저장합니다. 또한 texmaker.exe 자체에 전달할 수 있는 매개변수를 texmaker-portable.bat에 전달할 수 있습니다.
@echo off
set PATH=%~dp0;%PATH%
start /D "%~dp0" texmaker.exe %*
4. texmaker-portable.bat를 실행하고 설정을 테스트합니다.
문제 해결
- tex 파일을 포맷하는 동안
-synctex=1
또는 매개변수를 사용하고 있는지 확인하세요.-synctex=-1
- tex 파일 이름에 공백이 포함되어서는 안 됩니다. (Texmaker 및 SumatraPDF는 공백을 잘 처리하지만 SyncTeX 파일은
-synctex=1
매개변수가 있어도 생성되지 않을 수 있습니다.) - Texmaker를 통해 배치 파일과 SumatraPDF로 Texmaker를 시작했는지 확인하십시오(이 체인은 필수입니다)
답변3
이는 위의 Vlastimil의 답변에 대한 응답을 의미합니다. 배치 파일 없이도 역검색이 제대로 작동하는 것으로 나타났습니다. 저는 Sumatra PDF 옵션에서 다음 줄을 사용합니다(자동으로 옵션으로 나타납니다). 저는 Sumatra 2.1.1과 Texmaker 3.5를 사용하고 있습니다.
"C:\Program Files (x86)\Texmaker\texmaker.exe" "%f" -line %l
다른 사람들이 언급했듯이 정방향 검색은 Texmaker 옵션의 명령줄에서도 작동합니다.
"C:/Program Files (x86)/SumatraPDF/SumatraPDF.exe" -reuse-instance %.pdf -forward-search "#.tex" @
답변4
이 답변은 SumatraPDF v3.2를 사용하는 TeXmaker v4.5 및 TeXstudio v2.12.22의 단계를 이해하는 것을 목표로 합니다.
TeXmaker
- Texmaker에서 다음으로 이동하세요.
Options > Configure Texmaker > Commands
External Viewer
필드(SumatraPDF를 사용하는 경우) 에 다음을 입력합니다."C:\Program Files\SumatraPDF\SumatraPDF.exe" -1 -s @%.tex %.pdf
SumatraPDF에서 로 이동한
Settings > Options
다음 다음을 입력하세요.Set inverse search command-line
"C:\Program Files (x86)\Texmaker\texmaker.exe" "%f" -line %l
TeXstudio
TeXstudio를 사용하는 경우
- TeXstudio에서 다음으로 이동하세요.
Options > Configure TeXstudio > Commands
External PDF Viewer
필드 에 다음을 입력하세요."C:\Program Files\SumatraPDF\SumatraPDF.exe" -reuse-instance -inverse-search "\"C:/Program Files (x86)/texstudio/texstudio.exe\" \"%%f\" -line %%l" -forward-search "?c:am.tex" @ "?am.pdf"
SumatraPDF에서 로 이동
Settings > Options
한 다음 에 입력합니다Set inverse search command-line
."C:/Program Files (x86)/texstudio/texstudio.exe" "%f" -line %l