Leon0824 / rimeime

Automatically exported from code.google.com/p/rimeime
0 stars 0 forks source link

Default build of brise is missing some schemas #617

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
請寫下能夠重現此狀況的操作步驟:
1. Download the latest version for brise.
2. Unpack, and run "make".
3. Check for "data/*.bin" files. 

所得的結果是這個樣: Some schemas missing (e.g. bopomofo, 
terra_pinyin)
預期結果該是那個樣: All schemas?

還想再說幾句:
Changing the default build would be helpful so that end users that don't have 
to find schema files and run "rime_deployer" on their own. (It seems like a 
change here would mean modifying the "default.yaml" file to include all 
available options.)

Original issue reported on code.google.com by dancecile@gmail.com on 19 May 2014 at 10:50

GoogleCodeExporter commented 9 years ago
Only those schemas that are enabled by default (i.e. present in schema_list) 
will have pre-built dictionary files. Others will be built when the user 
explicitly selects them.

Considering that most schemas we provide will never be used by the user, it can 
be a waste of time to pre-build all the dictionaries. Anyway, you cannot 
pre-build everything, especially because we encourage and try to make it easier 
for people to create their own schemata or to customize existing ones. When 
patches are used, part of the dictionaries will need an offline rebuild.

Debian packages for brise use a patched default.yaml to generate *.bin files 
for all the schemas.
https://packages.debian.org/source/sid/brise
Personally I think splitting data packages on a per-schema basis is not 
necessary. A Debian package is too heavy for an evolving, customizable schema, 
which is most likely a single config file plus an optional dictionary file.
Instead I'm working on the rimekit project which provides a "schema store" that 
will help deliver Rime schemata created by the community. It'll work in a way 
similar to source package managers such as portage, homebrew and npm. As 
always, dictionaries will be built offline by default.

Original comment by chen....@gmail.com on 20 May 2014 at 3:38

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
The debian package is building every dict [1], but in the mean time (before you 
provide another way for a user to install customized schema) do you recommend 
that we do the same for Arch? The difference is, we're not going to split the 
package, so the package "brise" will be a lot larger if we compile all the 
schemas in...

[1] 
http://anonscm.debian.org/gitweb/?p=pkg-ime/brise.git;a=blob;f=debian/rules;h=b0
0f49ce93aacb423dd61e19d6a167c09eef0662;hb=HEAD

Original comment by felixonm...@gmail.com on 20 May 2014 at 3:40

GoogleCodeExporter commented 9 years ago
Al 3: That'll be a large package... not very economic for network traffic. So I 
suggest not to.

The point is, you cannot get rid of *.dict.yaml files from the package even if 
you ship all the *.bin files, lest someone needs to import the source files 
into his own dictionary.

Original comment by chen....@gmail.com on 20 May 2014 at 4:39

GoogleCodeExporter commented 9 years ago
Got it, thank you :)

Original comment by felixonm...@gmail.com on 21 May 2014 at 7:02