Skip to content
This repository was archived by the owner on Oct 18, 2025. It is now read-only.

Conversation

@windymilla
Copy link
Collaborator

@windymilla windymilla commented Dec 21, 2020

The file fcannos.bin is a binary Storage of a perl hash, presumably used for speed at
some time in the past when this was an issue for guiprep. The problem was when a
user was on a different platform, e.g. big-endian/little-endian to the developer who
created fcannos.bin. The option to fix Old Englifh then caused an error and
processing stopped.

This has happened several times over the last few years, so it seems sensible to try
to make fcannos.bin platform independent, which I believe it can be if written with
nstore instead of store.

Two changes therefore: make fwordgen.pl use nstore, and include a copy of the
platform-independent version of fcannos.bin

Since on a modern computer fwordgen.pl runs very quickly, a longer term solution
might be to just include the source dictionary file 2of4brif.txt, and get guiprep
to create its own hash directly from that on startup or when it needs it.

This should be sufficient for now, though, and should fix #5.

The file fcannos.bin is a binary Storage of a perl hash, presumably used for speed at
some time in the past when this was an issue for guiprep. The problem was when a
user was on a different platform, e.g. big-endian/little-endian to the developer who
created fcannos.bin. The option to fix Old Englifh then caused an error and
processing stopped.

This has happened several times over the last few years, so it seems sensible to try
to make fcannos.bin platform independent, which I believe it can be if written with
`nstore` instead of `store`.

Two changes therefore: make fwordgen.pl use `nstore`, and include a copy of the
platform-independent version of fcannos.bin

Since on a modern computer fwordgen.pl runs very quickly, a longer term solution
might be to just include the source dictionary file `2of4brif.txt`, and get guiprep
to create its own hash directly from that on startup or when it needs it.

This should be sufficient for now, though.
@windymilla windymilla requested a review from cpeel December 21, 2020 20:19
fwordgen.pl Outdated
use Storable;
my (%words,%fwords,@multi,$word,$hold,$last,$wt,$ws,$mv,$mmv,$hold1);

use Storable qw(nstore);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this replace what is on line 1 instead?

@windymilla
Copy link
Collaborator Author

windymilla commented Dec 21, 2020 via email

@windymilla
Copy link
Collaborator Author

Seems fine with the suggestion you made - thanks. No need for another new version of fscannos.bin.

@cpeel cpeel merged commit 0c6fe2e into DistributedProofreaders:master Dec 22, 2020
@windymilla windymilla deleted the fcannos branch April 8, 2021 10:39
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug report: Old Englifh

2 participants