Closed rodrigomorales1 closed 1 month ago
to use different spelling for the shared dictionary, specify a different translator/prism
identifier in each schema.
example:
https://github.com/rime/rime-double-pinyin/blob/master/double_pinyin.schema.yaml#L88
Description of the bug
When two schemas use the same dictionary, the rules in the key
speller/algebra
in one schema also become part of the other schema.In "Experiment 1" below, I created two schemas that used the same dictionary. The rules in
speller/algebra
in one of the schemas affected the other schema.In "Experiment 2" below, I created two schemas that used different dictionaries. The rules in
speller/algebra
in one of the schemas didn't affect the other schema.Experiment 1
I executed
$ rm -rf ~/.config/ibus/rime && mkdir ~/.config/ibus/rime
to remove all files in~/.config/ibus/rime
to avoid any other file interfer with this experiment.~/.config/ibus/rime/my.dict.yaml
(see code block below)~/.config/ibus/rime/foo.schema.yaml
(see code block below)~/.config/ibus/rime/bar.schema.yaml
(see code block below)default.custom.yaml
(see code block below)I executed
ibus-daemon -drx
.I opened
gedit
.I pressed
F4
to select the input method. I selectedSchema foo
. I pressedh
and the candidate list was shown. This is unexpected behavior.The screenshot below shows the behavior when using
Schema foo
and pressingh
.The screenshot below shows the behavior when using
Schema bar
and pressingh
.I believe this is unexpected behavior (i.e. it shouldn't happen) because in
Schema foo
, there is no input that starts withh
. It seems that RIME mistakenly considers the rulespeller/algebra
fromSchema bar
. This situation doesn't happen when both schemas use separate dictionaries. See section "Experiment 2".Experiment 2
As in the previous experiment, I executed
$ rm -rf ~/.config/ibus/rime && mkdir ~/.config/ibus/rime
to remove all files in~/.config/ibus/rime
to avoid any other file interfer with this experiment.~/.config/ibus/rime/foo.dict.yaml
(see code block below)~/.config/ibus/rime/foo.schema.yaml
(see code block below)~/.config/ibus/rime/bar.dict.yaml
~/.config/ibus/rime/bar.schema.yaml
(see code block below)~/.config/ibus/rime/default.custom.yaml
(see code block below)I executed
ibus-daemon -drx
.I opened
gedit
.I pressed
F4
to select the input method. I selectedSchema foo
. I pressedh
and the candidate list was not shown. This is expected behavior.The screenshot below shows the behavior when using
Schema foo
and pressingh
.The screenshot below shows the behavior when using
Schema bar
and pressingh
.System information
$ sudo apt install ibus-rime
)PS: Please let me know if (1) this is indeed a bug or (2) I have misunderstood some functionality of RIME.