[texworks] Still an un resolved problem

Jonathan Kew jfkthame at googlemail.com
Mon Jul 13 11:14:58 CEST 2009

On 13 Jul 2009, at 09:53, Jérome Laurens wrote:

> Le 10 juil. 09 à 15:37, Alain Delmotte a écrit :
>> Sorry Jonathan, I forgot 3 times to answer: MikTeX 2.7 with pdfTeX,  
>> Version 3.1415926-1.40.9
>> Alain
> The problem you are facing is a known bug in MikTeX
> https://sourceforge.net/tracker/?func=detail&atid=110783&aid=2419953&group_id=10783

Ah, good to know that it is already reported.

> Here is my technical explanation when I submitted the bug
> "In order to include the file "foo.tex" you can use either \input  
> foo.tex or \input foo.
> The source of the tex program (ctan/systems/knuth/dist/tex/tex.web)  
> reads at line 6461
> @d name==cur_input.name_field {name of the current file}
> It appears that miktex does not set name_field to the name of the  
> current file but to what is given to the \input command. If you use  
> \input foo, the name of the current file is foo.tex, but name_field  
> just contains "foo". As a consequence, it breaks tools like SyncTeX  
> that do expect the name of the current file, as stated by the  
> original TeX documentation."

To be fair, tex.web does not *require* this to be the "real" file  
name, although it encourages implementers to do this; see section 525,  
which says that that "the following routine ... should ideally be  
changed to deduce the full name ...". So getting the full name here is  
an implementation-dependent enhancement, but doing so is recommended  
and clearly helpful.

> In short, when MikTeX adds a .tex file extension, it forgets to tell  
> TeX that he did so.
> Christian Schenk has fixed this in MiKTeX 2.8 Beta 4 (to be released  
> soon).

Does it also provide the full path? So if \input foo actually caused  
TeX to read c:/some/path/to/texmf/tex/macros/foo.tex, does the  
name_field get updated only to foo.tex, or to the full path? SyncTeX  
needs the full path, as it cannot reliably know the search paths that  
TeX may have been using.


More information about the texworks mailing list