>>>>> "Angus" == Angus Leeming <[EMAIL PROTECTED]> writes:

Angus> Ok, the attached version of the patch removes [ap]spell.m4,
Angus> moving all the spelling stuff into a new spell.m4 with a
Angus> LYX_CHECK_SPELL_ENGINES function. 

Very good.

Angus> I found that I needed to
Angus> initialise lyx_use_pspell=false before going on to test for
Angus> pspell's presence or src/Makefile would always try and build
Angus> pspell.C.

That's a bit surprising seeing the code below:

+AC_DEFUN([CHECK_WITH_PSPELL],
+[
+    lyx_use_pspell=true

Angus> I can confirm that the only additional change needed to get the
Angus> LyX 1.4.x sources to compile with mingw is this in lyx_cb.C

Angus> #ifdef _WIN32 # define fork() -1 #endif

Good.

Angus> Personally, I'm of the opinion that this patch is now ready to
Angus> be committed to the cvs repository. Do you agree? 

There is something fishy in ControlSpellChecker.C:

        if (lyxrc.use_spell_lib)
#if defined(USE_ASPELL)
                return new ASpell(bp, lang);
#elif defined(USE_PSPELL)
                return new PSpell(bp, lang);
#endif

#if defined(USE_ISPELL)
        lang = (lyxrc.isp_use_alt_lang) ?
                lyxrc.isp_alt_lang : bp.language->lang();

        return new ISpell(bp, lang);
#else
        return new SpellBase;
#endif

If nither pspell not aspell are available, the if() will not have
anything to do, and thus it will grab the first comman it will find.
The worst is that it will compile perfectly :)

I think you should keep the two copies of
        if (lyxrc.use_spell_lib)

Angus> I won't do so, however, until Monday or Tuesday next week.

I will not be here next week, don't be surprised if I do not answer. 

Angus> I take it you'd like me to port this patch to the 1.3.x branch
Angus> also?

I think the lyxserver change is obviously right. It can be applied
right away. We do not have to care about client, lyxsocket and
socktools.

So the big chunk that remains is the spellchecker. I think the new
code is really clean, so I'd be tempted to merge it. Of course, there
may be some logic errors in the configure tests (or other like above).

It may be however that 1.3.6 will be a short-lived version,
considering the amount of changes :) So maybe we can do final tweaks
later.

How do you feel about it?

JMarc

Reply via email to