PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : TexmakerX & Sumatra - Forward Search



Woelfin78
08-10-2009, 10:25
Hallo,

ich arbeite mit

- TexmakerX 1.8.1 und
- SumatraPDF (die Version von http://william.famille-blum.org/software/sumatra/index.html)

und habe Fragen zu den Einstellungen für die Vorwärtssuche (aus TMX ins pdf springen):

1) Aktuell verwende ich für die Vorwärtssuche den Befehl dde://SUMATRA/control/[ForwardSearch("?m.pdf","?m.tex",@,0,0,1)].

Das funktioniert aber nur, wenn sich die gesuchte Stelle in der Hauptdatei befindet. Ist die Textstelle beispielsweise in Zeile 14 einer Datei, die ich über \include{EingebundeneDatei} eingebunden habe, wird zwar das komplette Dokument (Haupt- plus eingebundene Dateien) in Sumatra geöffnet, aber mit der Fehlermeldung "no result found around line 14 in file Hauptdatei.tex.
Womit er ja recht hat, die gesuchte Stelle ist in Zeile 14 der Datei EingebundeneDatei.tex.

Wie muss der Befehl aussehen, damit Sumatra in der eingebundenen Datei / an der richtigen Stelle sucht?

2) Jedes Mal, wenn ich die Vorwärtssuche anwende, wird ein neues Sumatra-Fenster geöffnet, obwohl die Datei bereits in einem anderen Fenster auf ist. Kann man das unterbinden?

In TexmakerX habe ich für den pdf-Viewer .\pdf\sumatraPDF-sync.exe -reuse-instance %.pdf eingestellt.

Vielen Dank für Tipps und Hinweise.
Anja

BeniBela
08-10-2009, 17:25
1)

Das funktioniert aber nur, wenn sich die gesuchte Stelle in der Hauptdatei befindet. Ist die Textstelle beispielsweise in Zeile 14 einer Datei, die ich über \include{EingebundeneDatei} eingebunden habe, wird zwar das komplette Dokument (Haupt- plus eingebundene Dateien) in Sumatra geöffnet, aber mit der Fehlermeldung "no result found around line 14 in file Hauptdatei.tex.
Womit er ja recht hat, die gesuchte Stelle ist in Zeile 14 der Datei EingebundeneDatei.tex.

Wie muss der Befehl aussehen, damit Sumatra in der eingebundenen Datei / an der richtigen Stelle sucht?


Das geht leider garnicht. (obwohl ein Workaround wäre, für jede eingebundene Datei ein eigenes Kommando zu definieren)

Alle Befehle die ich mir dazu überlegt hatte, sahen katastrophal häßlich aus, deshalb habe ich nichts davon einprogrammiert.

Wenn du einen schönen Befehl dafür vorschlagen kannst, implementiere ich ihn vielleicht.





2) Jedes Mal, wenn ich die Vorwärtssuche anwende, wird ein neues Sumatra-Fenster geöffnet, obwohl die Datei bereits in einem anderen Fenster auf ist. Kann man das unterbinden?

In TexmakerX habe ich für den pdf-Viewer .\pdf\sumatraPDF-sync.exe -reuse-instance %.pdf eingestellt.


Keine Ahnung, öffnet es ein neues Fenster bei dem dde-Vorwärtssuchenbefehl oder bei dem pdf-Viewer-Befehl?
Letzterer sollte eigentlich bei einer Vorwärstsuche nicht ausgeführt werden (und wird auch nicht, wenn es in den Usertools steht), wenn es beim dde-Befehl passier (sollte es aber nicht), muss man ihn entweder ändern (vielleicht mal mit Open statt Forwardsearch probieren, auch wenn es den umgekehrten Effekt haben sollte), oder es ist ein Sumatrabug
(golatex war eigentlich für Sumatra schon richtig...)

stolzi
14-07-2010, 13:06
Bei mir funktioniert das Suchen auch nicht wenn ich eine Datei erstelle. Ich habe einmal versucht

pdflatex -interaction=nonstopmode %.tex|dde://"C:/Program Files/SumatraPDF/SumatraPDF.exe":SUMATRA/control/[ForwardSearch("?am.pdf","?c:am.tex",@,0,0,1)]
unter "schnelles erzeugen" einzutragen. In diesem Fall wird korrekt kompiliert und danach die Datei in Sumatra geöffnet, er springt aber nicht zur betreffenden Stelle.

Dann habe ich noch probiert den Benutzerbefehl

dde://SUMATRA/control/[ForwardSearch("?am.pdf","?c:am.tex",@,0,0,1)]
anzulegen und dann in der geöffneten Datei zu springen. Leider zeigte das genauso keine Wirkung.

Hat sich da vielleicht in einer neuen Sumatra Version oder Texmakerx Version etwas verändert? Was könnte ich für weiteres Debugging machen.

Danke!

BeniBela
15-07-2010, 14:58
Der Sumatrabefehl sieht richtig aus, aber du hast wahrscheinlich keine Zeileinformationen in der pdf und musst erst noch synctex aktivieren:


pdflatex -synctex=-1 -interaction=nonstopmode %.tex

stolzi
16-07-2010, 09:11
Wow, cool, vielen Dank! Jetzt haut es wunderbar hin.

Hast dann vielleicht noch einen Tipp für mich :o Ich habe gesucht wie wild, aber ich habe einfach nicht herausgefunden wie das mit dem inversen suchen funktioniert. Im Manual steht:


To launch TexMakerX from Sumatra: "(your TexMakerX path)" "%f" -line %l

Gut und recht, aber wie trage ich diesen Befehl in Sumatra ein? In den Einstellungen und in den Menüs habe ich keine Option gefunden.

Vielen Dank!

BeniBela
16-07-2010, 22:11
Gut und recht, aber wie trage ich diesen Befehl in Sumatra ein? In den Einstellungen und in den Menüs habe ich keine Option gefunden.

Das hängt von der Sumatraversion ab.
In der von Blum (siehe oben), gibt es eine Menüoption, ansonsten kann man es über die Kommandozeile von Sumatraaufruf setzen. (siehe hier (https://sourceforge.net/projects/texmakerx/forums/forum/907839/topic/3267588/index/page/2))

Woelfin78
08-09-2010, 10:34
Wie muss der Befehl aussehen, damit Sumatra in der eingebundenen Datei / an der richtigen Stelle sucht?



Das geht leider garnicht. (obwohl ein Workaround wäre, für jede eingebundene Datei ein eigenes Kommando zu definieren)

Hallo Zusammen,

habe meinen alten Thread nochmal rausgekramt, weil inzwischen anscheinend jemand eine Lösung gefunden hat, wie Vorwärts- und Rückwärtssuche auch dann funktionieren, wenn Dateien mit \include eingebunden sind. Anleitung steht unter:http://www.xnoiz.co.cc/latex-texmakerx-with-sumatrapdf/

Vielleicht hilft der Tipp ja auch anderen weiter...

PS: Ich arbeite mittlerweile mit TexMakerX 1.9.9a (http://texmakerx.sourceforge.net/) und SumatraPDF-Tex 1.1.1714 (http://william.famille-blum.org/software/sumatra/index.html), ob es mit anderen Versionen auch klappt hab ich nicht getestet.

InspektorG
08-11-2010, 21:21
Hallo,

ich habe bisher immer TXC benutzt und bin inzwischen ziemlich vom TMX begeistert, habe aber gerade ein ähnliches Problem wie hier:


2) Jedes Mal, wenn ich die Vorwärtssuche anwende, wird ein neues Sumatra-Fenster geöffnet, obwohl die Datei bereits in einem anderen Fenster auf ist.
Bei mir ist es so, dass sich bei jedem Aufruf (F7 oder schnelles Erzeugen...) immer gleich 2 Sumatra-Fenster mit identischem Inhalt öffnen. Keine Ahnung, was da schiefläuft.
Hier meine einzelnen Kommandos:
Pdflatex:

pdflatex -synctex=-1 -interaction=nonstopmode %.tex
Pdf Betrachter:

"C:/Program Files (x86)/SumatraPDF/SumatraPDF.exe" %.pdf -reuse-instance -inverse-search """"C:\Program Files (x86)\TexMakerX\texmakerx.exe""" """%%f""" -line %%l" %.pdf
Und mein Befehl für die ForwardSearch:

dde://SUMATRA/control/[ForwardSearch("?am.pdf","?c:am.tex",@,0,0,1)]

Schließe ich danach eines dieser Fenster und lasse das andere geöffnet, funktioniert alles (Vorwärtssuche mittels Alt+Shift+F1, Schnelles Erzeugen...) und es wird kein weiteres Fenster geöffnet. Schließt man Sumatra komplett, tauchen beim nächsten Kompilieren wieder 2 Fenster auf.

Achja, ich verwende TexMakerX 1.9.9a und Sumatra v1.1

Vielen Dank schon mal für Ratschläge!

InspektorG
10-11-2010, 13:11
Aaalso,
habs jetzt selbst hinbekommen, indem ich mir meinen eigenen Befehl für "Schnelles Erzeugen" zusammengestellt habe. Für alle, die es vl. mal interessiert, hier der Befehl:


pdflatex -synctex=-1 -interaction=nonstopmode %.tex|"C:/Program Files (x86)/MiKTeX 2.8/miktex/bin/bibtex8.exe" % --wolfgang --mcites 30000 --mentints 30000 --mentstrs 40000 --mfields 250000 --mstrings 35000 --mpool 750000 --mwizfuns 20000 --csfile latin1_de.csf|pdflatex -synctex=-1 -interaction=nonstopmode %.tex|dde://C:/Program Files (x86)/SumatraPDF/SumatraPDF.exe:SUMATRA/control/[ForwardSearch("?am.pdf","?c:am.tex",@,0,0,1)]

Zur Erläuterung: Ich führe zunächst pdflatex aus, danach bibtex8 mit wolfgang-switch (für große bib-files) und schließlich nochmal pdflatex, gefolgt von meinem dde-Kommando für die Vorwärtssuche.
Dies erzeugt und öffnet also automatisch die pdf.
Gruß

Mat_Head
22-03-2011, 09:33
Hallo Leute,

also die Rückwärtssuche (von Sumatra in TexMakerX) funktioniert schon ganz gut aber die Forwärtssuche mit dem BenutzerBefehl über Alt+Shift+F1 nicht.


dde://SUMATRA/control/[ForwardSearch("?am.pdf","?am.tex",@,0,0,1)]

Sumatra meldet mir dann:"Unbekannte Datei". Und verweist dann auf eine Datei im System, die mittels Explorer genau dort gefunden werden kann...

Habt ihr ne Idee?

Mat

BeniBela
23-03-2011, 17:35
Hast du es mal mit einer anderen Sumatraversion versucht?

Tabasco
26-03-2011, 08:04
Guten Tag,

Dank eines Beitrages von Ertugrul (http://sourceforge.net/projects/texmakerx/forums/forum/907839/topic/4401411) funktioniert die Vorwärts und Rückwarts-Suche mit Texmakerx Portable (2.1) und Sumatra (1.4) unter Windows bei mir auch mit \include-Dateien tadellos.

Falls sich jemand dafür interessiert, hier eine kurze Anleitung:

1. Texmakerx --> Optionen --> TMX einrichten --> Schnelles erzeugen --> Benutzer:


pdflatex -interaction=nonstopmode -synctex=-1 "?am.tex" | dde://C:/Program Files/SumatraPDF/SumatraPDF.exe:SUMATRA/control/[ForwardSearch("?am.pdf","?c:am.tex",@,0,0,1)]

2. TMX --> Benutzer --> Benutzer-Befehle:


dde://C:/Program Files (x86)/SumatraPDF/SumatraPDF.exe:SUMATRA/control/[ForwardSearch("?am.pdf","?c:am.tex",@,0,0,1)]

ev. den Tastaturkürzel für den Sumatra-Aufruf verändern (Alt-Shift-F1 ist mir etwas umständlich) unter TMX-einrichten --> Tastenkürzel --> Befehle.

3. Sumatra --> Optionen --> Befehlszeile für die Inversuche ersetzen:


"D:\Programme\TexmakerxPortable\texmakerx.exe" "%f" -line %l

, falls die Befehlszeile nicht korrekt gesetzt ist.

4. Funktionsweise:

F1 startet die Kompilation. Allerdings öffnet sich Sumatra nach diesem Prozess nicht automatisch. Hat vielleicht jemand eine Idee?

Alt+Shift+F1 (bei mir Alt+F1): Cursor in Texmakerx --> Sprung zu Sumatra

Doppelklick auf Textstelle in Sumatra --> Sprung zu Texmakerx


Grüsse - Tabasco

BeniBela
26-03-2011, 16:51
Allerdings öffnet sich Sumatra nach diesem Prozess nicht automatisch. Hat vielleicht jemand eine Idee?

Du hast kein (x86) im Quick-Build-Pfad

Tabasco
29-03-2011, 08:00
Danke für die Antwort!

Allerdings will sich Sumatra auch nach der Korrketur des Quick-Build-Pfades nicht öffnen:

pdflatex -interaction=nonstopmode -synctex=-1 "?am.tex" | dde://C:/Program Files (x86)/SumatraPDF/SumatraPDF.exe:SUMATRA/control/[ForwardSearch("?am.pdf","?c:am.tex",@,0,0,1)]).

BeniBela
31-03-2011, 01:32
Allerdings will sich Sumatra auch nach der Korrketur des Quick-Build-Pfades nicht öffnen:

pdflatex -interaction=nonstopmode -synctex=-1 "?am.tex" | dde://C:/Program Files (x86)/SumatraPDF/SumatraPDF.exe:SUMATRA/control/[ForwardSearch("?am.pdf","?c:am.tex",@,0,0,1)]).

Aber als Benutzerbefehl geht es?

Das kann eigentlich nicht sein; ist die schließende Klammer nur im Post, oder auch im Befehl?

Tabasco
31-03-2011, 22:28
Hallo,

die schliessende Kammer ist nur im Post. Sowohl als "schnelles Erzeugen" wie auch als "Benutzerbefehl" wird Sumatra-PDF nicht geöffnet.

pdflatex -interaction=nonstopmode -synctex=-1 "?am.tex" | dde://C:/Program Files (x86)/SumatraPDF/SumatraPDF.exe:SUMATRA/control/[ForwardSearch("?am.pdf","?c:am.tex",@,0,0,1)]

Liebe Grüsse

BeniBela
02-04-2011, 02:01
Ist sumatra überhaupt in dem Verzeichnis? (startet es mit dem Pfad im win+r Ausführendialog?)

Tabasco
11-04-2011, 20:43
War einige Tage abwesend, deshalb die lange "Reaktionszeit".

Was meinst du mit "Ist sumatra überhaupt in dem Verzeichnis?".

Grüsse - Tabasco

BeniBela
13-04-2011, 01:45
Was meinst du mit "Ist sumatra überhaupt in dem Verzeichnis?".


Ob "C:/Program Files (x86)/SumatraPDF/SumatraPDF.exe" wirklich der richtige Pfad zu Sumatra ist.

Tabasco
22-04-2011, 10:27
Ja, der Pfad ist korrekt. Texmakerx habe ich als portable Version, Sumatra habe ich installiert.

Grüsse (und eine schöne Osterzeit) - Tabasco