printing problems

21 views
Skip to first unread message

Paul Unger

unread,
Dec 7, 2009, 7:15:00 PM12/7/09
to FLEx list
I'm trying to use an exported LIFT file in LexiquePro (3.2.3) to
print my lexicon. This worked OK with FLEx 5.4, but since upgrading to
6.0 I get the following errors:

Failed to sort lexical entries: Error parsing ICU rules on line
1376256, offset 48:
Failed to sort lexical entries: Error parsing ICU rules on line
1242016, offset 4218567:

I have the following sort order defined in FLEx (Writing System
Properties > Sorting):

&g<gh<<<Gh<<<GH
&n<ng<<<Ng<<<NG
&t<th<<<Th<<<TH

Could this be causing problems? Is the syntax wrong? Thanks for any
help,

Paul

Allan Johnson

unread,
Dec 7, 2009, 9:02:59 PM12/7/09
to flex...@googlegroups.com
Hi Paul,

I recently encountered some ICU glitches that might be related to this.
This too was with FLEx 6.0 installed. When exporting a LIFT file from
FLEx and trying to open it in Lexique Pro (version 3.2.3), Lexique Pro
aborted on a "Failed to sort lexical entries" error.

Trying a different path, I found if I opened the FLEx LIFT file in WeSay
(build 2131) first, and then in WeSay clicked the "Open in Lexique Pro"
button, though I still got a "Failed to sort lexical entries" error
message, this time it wasn't fatal. Lexique Pro still went ahead and
opened the dictionary. So this worked, but I don't yet know whether this
path allows all the FLEx info to reach Lexique Pro.

Another error message that sometimes came up during the WeSay to Lexique
Pro operation pointed to a problem in "icuuc40.dll" I didn't have time
to fully investigate, but did find that both "\program files\WeSay" and
"\program files\common files\SIL" have copies of this file (and of
several other ICU related dlls). Both copies claim to be version
4.0.0.0, but have different dates and sizes. Copying the "\program
files\common files\SIL" version into "\program files\WeSay" resolved
this particular error condition.

I wonder if maybe straightening out this and any other existing ICU dll
issues might also fix the "Failed to sort lexical entries" errors.
Though if Lexique Pro itself uses these dlls, it seems likely to be the
ones in "\program files\common files\SIL", which seemed to be the better
copies.

This was in Windows XP

Allan

Paul Unger

unread,
Dec 7, 2009, 9:48:03 PM12/7/09
to FLEx list
Thanks Allan. It's always good to know one is not alone!

LexiquePro did open my LIFT file straight up (i.e., I didn't have to
go through My Word [which is good, because I don't have My Word... ]),
but it didn't sort correctly. There are no alphabet entries for gh,
ng, or th. I tried adding them in Tools > Configure, but they remained
empty.

I've tinkered with Publishing Solutions for printing as well, but run
up against the same issue with digraphs (it doesn't seem to handle
them).

Not quite sure what else to do...

Paul

Allan Johnson

unread,
Dec 9, 2009, 8:25:06 PM12/9/09
to flex...@googlegroups.com
Hi Paul,

Any insight yet on this one?

I have a slightly different scenario this time, but this time I'm
getting exactly the same error messages that you've been getting. I'm
looking at an SFM database in Lexique Pro, and the settings originally
came from opening a LIFT version of this that was exported by SOLID.
FLEx wasn't involved at all in this. When I first open the database I
get the first error you mentioned:

Failed to sort lexical entries: Error parsing ICU rules on line
1376256, offset 48:

When I go to:
Tools; Configure; Languages; Language Properties tab;
Select the Lexicon Language; Configure;

I find that it's set to sort using "ICU Custom Collation rules" and that
some custom collation rules have been set up for me. I don't see any
sign of these rules in the LIFT file, so my best guess is that Lexique
Pro itself set these up for me when I did the initial LIFT import. The
rules I find look like this:
&A<a<à
&B<b
&C<c
&D<d
&E<e<è
&F<f
(just the first several in the list)

When I click "Test", I get the second error you mentioned:

Failed to sort lexical entries: Error parsing ICU rules on line
1242016, offset 4218567:

Removing the rules and changing to "ICU collation (using language code)"
seems to get rid of these errors. But my suspicion is that it's not a
syntax issue with the particular rules. I'm still suspecting that some
corruption or mismatch of the ICU system files might be causing these
glitches.

Allan


Paul Unger wrote:
> Not quite sure what else to do...
>
> On Dec 8, 1:02 pm, Allan Johnson <allan_john...@sil.org> wrote:
>
>> Hi Paul,
>>
>> I recently encountered some ICU glitches that might be related to this.

Kemp Pallesen

unread,
Dec 10, 2009, 1:54:37 PM12/10/09
to flex...@googlegroups.com

Hi Allan,

I have the same problem and same error message (though on line 1441792). In my case the source is FLEx>LIFT. My remedy is to change sort using to Custom  Simple Rules.

 

I also have a problem trying to export from Lexique Pro to an .rtf file. Only 800 entries are printed, out of 10,000. Do you have anything comparable.

 

Kemp

 

 

-----Original Message-----
From: flex...@googlegroups.com [mailto:flex...@googlegroups.com] On Behalf Of Allan Johnson
Sent: 10 December 2009 14:25
To: flex...@googlegroups.com
Subject: Re: [FLEx] Re: printing problems

 

Hi Paul,

 

Any insight yet on this one?

 

I have a slightly different scenario this time, but this time I'm

getting exactly the same error messages that you've been getting. I'm

looking at an SFM database in Lexique Pro, and the settings originally

came from opening a LIFT version of this that was exported by SOLID.

wasn't involved at all in this. When I first open the database I

get the first error you mentioned:

 

Failed to sort lexical entries: Error parsing ICU rules on line

1376256, offset 48:

 

When I go to:

Tools; Configure; Languages; Language Properties tab;

Select the Lexicon Language; Configure;

 

I find that it's set to sort using "ICU Custom Collation rules" and that

some custom collation rules have been set up for me. I don't see any

sign of these rules in the LIFT file, so my best guess is that Lexique

Pro itself set these up for me when I did the initial LIFT import. The

rules I find look like this:

&A<a<aÌ

&B<b

&C<c

&D<d

&E<e<eÌ

--

You received this message because you are subscribed to the discussion group "FLEx list". This group is hosted by Google Groups and is open for anyone to browse.

To post to this group, send email to flex...@googlegroups.com

To unsubscribe from this group, send email to flex-list-...@googlegroups.com

For more options, visit this group at http://groups.google.com/group/flex-list

Allan Johnson

unread,
Dec 10, 2009, 2:12:27 PM12/10/09
to flex...@googlegroups.com
Hi Kemp,

Sorry to hear that you're having these problems too.  No, I haven't encountered the second problem.

Ken Zook

unread,
Dec 10, 2009, 2:37:53 PM12/10/09
to flex...@googlegroups.com

I’m checking with Richard Margetts (LexiquePro author) to see if he has determined what’s happened and how it can be fixed.

 

Ken

Allan Johnson

unread,
Dec 10, 2009, 4:51:50 PM12/10/09
to flex...@googlegroups.com
A little more insight...

Yesterday I transferred the Lexique Pro project to a another computer on which I had just installed the same version of Lexique Pro (3.2.3). On this second computer the ICU sorting problem did not appear. No error messages upon opening the project.

On this second computer, going to:
Tools; Configure; Languages; Language Properties tab;
Select the Lexicon Language; Configure

I found it still set for "ICU Custom Collation rules", and I found the same custom collation rules as before. But this time when I clicked "Test", it reported that the rules were parsed successfully.

So the problem isn't with the settings or collation rules in this particular project. It -can- work fine, given the right circumstances.

On my own computer, the one which is having the problem, I tried freshly installing Lexique Pro, hoping that this would provide the needed "right circumstances". But this didn't do it. Same error messages.

I did find one thing that made these things work correctly on my computer. I went to "C:\Program Files\Common Files", temporarily renamed the "SIL" folder to "SILx", and once again started Lexique Pro. Now the ICU sorting works correctly just as on the other computer. Narrowing down to one particular file in "C:\Program Files\Common Files\SIL", I find that renaming just "icuuc40.dll" has the same effect as renaming the whole folder. Apparently Lexique Pro tries to use this file if found, but gets along fine without it. Redoing the Lexique Pro installation once more, I found that it put nothing into "C:\Program Files\Common Files\SIL". So apparently this dll didn't come with Lexique Pro. Maybe it came with FLEx?

Allan

Paul Unger

unread,
Dec 10, 2009, 11:58:54 PM12/10/09
to FLEx list
You're way ahead of me, Allan! I just tried a fresh export and ran
into the exact same issue... LexiquePro has the sort information in
Tools -> ... -> Configure Language that I use in FLEx. I guess I'll
just wait to see what Ken / Richard are able to find out. Thanks for
your help,

Paul

Allan Johnson

unread,
Dec 17, 2009, 7:03:55 PM12/17/09
to flex...@googlegroups.com
By the way - until this ICU glitch gets figured out, I've found that Kemp's solution mentioned several emails back takes care of the problem:

Tools; Configure Language; (pick one); Sorting tab;
Sort using: Custom Simple rules (Shoebox/Toolbox style)

Then you can customize the sort order as needed, just as you would do in Toolbox.

Allan

grizzly bear

unread,
Dec 18, 2009, 12:08:54 AM12/18/09
to flex...@googlegroups.com
That's beautiful, guys! I can hardly wait to try it myself! Now we don't
have to wait until CLDR gets its act together.

Kenges

Kemp Pallesen

unread,
Dec 18, 2009, 2:03:57 AM12/18/09
to flex...@googlegroups.com

The Custom Simple rule solution was Kåre Stromme’s idea.  .

 

Re the loss of subentries in Lexique Pro: from what I can see the program treats these as separate main entries, but locates them under the main entry in which they occur.

So the subentry pagaddat “show respect” is parked between addat “custom” and and addun “mix dough” with the same indentation.

 

Kemp


From: flex...@googlegroups.com [mailto:flex...@googlegroups.com] On Behalf Of Allan Johnson
Sent: 18 December 2009 13:04
To: flex...@googlegroups.com
Subject: Re: [FLEx] Re: printing problems

 

By the way - until this ICU glitch gets figured out, I've found that Kemp's solution mentioned several emails back takes care of the problem:

&A<a<aÌ
&B<b
&C<c
&D<d
&E<e<eÌ
 
  

--

Paul Unger

unread,
Dec 21, 2009, 12:35:54 AM12/21/09
to FLEx list
Unfortunately, your work around doesn't work for me, Allan. I enter my
sort criteria under "Custom Simple rules", click OK, and nothing gets
sorted. In fact, now there are two of some letters, some letters that
are 'empty', and some mystery letters (e.g., 'c', but there are no
entries that begin with 'c'; there is no 'c' in the alphabet...). When
I go back to check the sort criteria for the language, the sort rules
are not there--the "Specify the sort order" box is blank. This is no
fun... :-(

Paul

GregT

unread,
Dec 21, 2009, 1:19:44 PM12/21/09
to FLEx list
> &g<gh<<<Gh<<<GH
> &n<ng<<<Ng<<<NG
> &t<th<<<Th<<<TH

Paul / Allan,

Normally these rules are written with a capital letter because you
don't want the new letters inserted after the lower case g and before
the upper case G. There is an implied rule:
g <<< G (lower g before upper G in tertiary sort).
So the rule is better stated:
&G<gh<<<Gh<<<GH
&N<ng<<<Ng<<<NG
&T<th<<<Th<<<TH

Then if you want publishing solution to export the letter dividers,
you also go to the Phenemes item in the Grammar view and add:
gh aspirated velar stop
ng nasalized velar stop
th aspirated alveolar stop
or whatever descriptions please you.

Then the XHTML export (and Publishing solution will be able to display
the letter header).

Note that if you wanted to add a palitalized aveolar nasal, you
probably want to add the rule:
&NG<ny<<<Ny<<<NY

and the phoneme:
ny palitalized aveolar nasal (or whatever)

See also: http://code.google.com/p/typeset-dictionary/wiki/DiagraphHeaders

Paul Unger

unread,
Dec 22, 2009, 2:52:18 PM12/22/09
to FLEx list
Thanks for that, Greg! I'll give it a try. Perhaps this little tidbit
could be reflected in the FLEx Help file? In the article "Collocation
in FieldWorks" I found this:

"Three left wedges are used for tertiary level collation. This is
typically used for case. Tertiary level sorting only affects strings
that are identical through the secondary level.
&n<ng<<<Ng<<<NG
&c<k<<<K"

Indeed, every collocation rule in the article is begun with a lower
case letter. As someone who doesn't know what they're doing in this
area, I followed the Help file...

Paul

Reply all
Reply to author
Forward
0 new messages