On Fri, Mar 31, 2006 at 12:34:36PM +0200, Jean-Marc Lasgouttes wrote: > >>>>> "Enrico" == Enrico Forestieri <[EMAIL PROTECTED]> writes: > > Enrico> I beg your pardon, next time I'll check more closely > Enrico> quotations. > > No problem, I would be more useful if I actually manage to understand > how cygwin stuff should work.
I already tried to tell how I think it should work. I am going to summarize here my thoughts from a cygwin pov only. In Windows either a native or cygwin-based TeX engine can be used. This means that paths written in .tex files should have either a win- or posix-style depending on the TeX engine used (note that this is also true for the native version of LyX, which is otherwise unusable with the cygwin-tetex). The configure script already has the ability to detect the TeX engine and it sets the boolean \cygwin_path_fix_needed accordingly. When it is true, we are using a native TeX engine. So, a os::latex_path function is needed (other than os::internal_path and os::external_path) to convert paths going to .tex files in the right format. As cygwin is posix conformant, os:internal_path and os::external_path could be noop functions as it is for *nix. BUT: if one uses miktex, most probably also has other native apps which would be unusable because they don't understand posix. Now, given that cygwin apps have no problems with either win- or posix-style formats, it is reasonable that both os::internal_path and os::external_path return pseudo win-style paths (I mean paths with forward slashes, but with a prefixing drive letter and a colon). However, if one uses tetex, most probably has all cygwin-apps and it is better that both os::insternal_path and os::external_path return posix-style formats. My patch does exactly this. The user cannot customize os::latex_path because that is the configure script job. However, he can decide if is version of LyX/Cygwin behaves as if it was a native win32 app or not as regards the paths used elsewhere. How things currently work: - The configure script makes its guess about \cygwin_path_fix_needed. - Every path used externally to LyX has the format dictated by the configure guess, irrespectively of whether it goes written into a .tex file or not. - The user can subvert the configure guess by a checkbox. So, currently LyX behaves as a native or posix app based on the checkbox. My patch tries to polish things, separating the case of "path for latex" by that of "path for external use". -- Enrico