
Texmaker には、すぐに使用できる SyncTex 順方向/逆方向検索をサポートする組み込みの PDF ビューアがあります。この組み込みビューアは、埋め込みまたは別のウィンドウで表示できます。外部ビューアには常に別のウィンドウがあります。画面が 2 つあるため、2 ウィンドウ レイアウトを使用しています。
次はスマトラPDF
外部ビューアとしてTexmakerを使用していますが、前方検索を機能させるための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. Texmaker で SumatraPDF を前方検索の外部 PDF ビューアとして使用するように設定する ポータブル Texmaker を開き、次のように外部ビューアへのパスを設定します。
./SumatraPDF/SumatraPDF.exe %.pdf -reuse-instance -forward-search %.tex @
SumatraPDF.exe へのパスは Texmaker 実行可能ファイルに対する相対パスであるため、フォルダー構造に合わせてこのパスを編集する必要がある場合があります。
2. SumatraPDF での逆検索の設定
デフォルトでは、SumatraPDF は GUI 経由で逆検索を構成することを許可しません。次のコマンドを 1 回実行します。
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 をバッチファイルで起動し、Texmaker 経由で SumatraPDF を起動したことを確認してください (このチェーンは必須です)
答え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では、
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では、
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