├── .gitignore ├── .jshintrc ├── .npmignore ├── API.md ├── CONTRIBUTE.md ├── GLOSSARY.md ├── Gruntfile.js ├── LICENSE ├── Makefile ├── README.md ├── assets ├── Keyboard_layout_Zhuyin.svg ├── index.js └── learn.js ├── console.html ├── index.html ├── karma.conf.js ├── learn └── index.html ├── lib ├── bopomofo_encoder.js ├── cli.js ├── client.js ├── data_loader.js ├── frame.html ├── jszhuyin.js ├── jszhuyin_data_pack.js ├── jszhuyin_server.js ├── main.js ├── storage.js ├── web.js └── worker.js ├── minimal.html ├── package.json ├── service-worker.js ├── test ├── benchmark │ ├── corpus.txt │ ├── test.js │ └── test_steps_generator.js ├── build │ ├── .jshintrc │ ├── database_builder.js │ ├── mcbopomofo_data_converter.js │ └── mcbopomofo_line_data.js ├── interaction │ ├── .jshintrc │ ├── manifest.json │ ├── test_node.js │ ├── test_web.js │ └── tests │ │ ├── backspace-unhandled.js │ │ ├── backspace.js │ │ ├── backspace2-no-wait.js │ │ ├── backspace2.js │ │ ├── compose-phrase.js │ │ ├── enter-unhandled.js │ │ ├── enter2-no-wait.js │ │ ├── enter2.js │ │ ├── escape-unhandled.js │ │ ├── escape.js │ │ ├── max-sound-overflow-from-composed.js │ │ ├── max-sound-overflow-from-partial.js │ │ ├── max-sound-overflow-from-phrase.js │ │ ├── max-sound-overflow-from-typo.js │ │ ├── multi-symbols.js │ │ ├── no-wait.js │ │ ├── nothing-complete-first.js │ │ ├── nothing-complete-second.js │ │ ├── nothing-completed.js │ │ ├── nothing-completed2.js │ │ ├── nothing.js │ │ ├── nothing2.js │ │ ├── phrase-incomplete.js │ │ ├── phrase-incomplete2.js │ │ ├── phrase-longest-length.js │ │ ├── phrase.js │ │ ├── phrase2.js │ │ ├── reorder.js │ │ ├── select-steps.js │ │ ├── select.js │ │ ├── simple-interchangable.js │ │ ├── simple-no-suggestion.js │ │ ├── simple-symbol.js │ │ ├── simple-symbol2-no-wait.js │ │ ├── simple-symbol2.js │ │ ├── simple.js │ │ ├── split-sounds.js │ │ ├── split-sounds2.js │ │ ├── typo-first.js │ │ └── typo-second.js ├── resources │ ├── frame.html │ ├── post_messenger.js │ ├── test.data │ ├── test.data.js │ ├── testdata.data │ ├── testdata.data.arr.js │ ├── testdata.data.js │ └── testdata.txt ├── task_runner.js ├── unit │ ├── .jshintrc │ ├── bopomofo_encoder.js │ ├── client.js │ ├── data_loader.js │ ├── jszhuyin.js │ ├── jszhuyin_data_pack.js │ ├── storage.js │ └── web.js └── util.js └── tonic-example.js /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/.gitignore -------------------------------------------------------------------------------- /.jshintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/.jshintrc -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | /local.mk 2 | /node_modules 3 | /McBopomofo 4 | -------------------------------------------------------------------------------- /API.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/API.md -------------------------------------------------------------------------------- /CONTRIBUTE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/CONTRIBUTE.md -------------------------------------------------------------------------------- /GLOSSARY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/GLOSSARY.md -------------------------------------------------------------------------------- /Gruntfile.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/Gruntfile.js -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/README.md -------------------------------------------------------------------------------- /assets/Keyboard_layout_Zhuyin.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/assets/Keyboard_layout_Zhuyin.svg -------------------------------------------------------------------------------- /assets/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/assets/index.js -------------------------------------------------------------------------------- /assets/learn.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/assets/learn.js -------------------------------------------------------------------------------- /console.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/console.html -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/index.html -------------------------------------------------------------------------------- /karma.conf.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/karma.conf.js -------------------------------------------------------------------------------- /learn/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/learn/index.html -------------------------------------------------------------------------------- /lib/bopomofo_encoder.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/bopomofo_encoder.js -------------------------------------------------------------------------------- /lib/cli.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/cli.js -------------------------------------------------------------------------------- /lib/client.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/client.js -------------------------------------------------------------------------------- /lib/data_loader.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/data_loader.js -------------------------------------------------------------------------------- /lib/frame.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/frame.html -------------------------------------------------------------------------------- /lib/jszhuyin.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/jszhuyin.js -------------------------------------------------------------------------------- /lib/jszhuyin_data_pack.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/jszhuyin_data_pack.js -------------------------------------------------------------------------------- /lib/jszhuyin_server.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/jszhuyin_server.js -------------------------------------------------------------------------------- /lib/main.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/main.js -------------------------------------------------------------------------------- /lib/storage.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/storage.js -------------------------------------------------------------------------------- /lib/web.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/web.js -------------------------------------------------------------------------------- /lib/worker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/lib/worker.js -------------------------------------------------------------------------------- /minimal.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/minimal.html -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/package.json -------------------------------------------------------------------------------- /service-worker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/service-worker.js -------------------------------------------------------------------------------- /test/benchmark/corpus.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/benchmark/corpus.txt -------------------------------------------------------------------------------- /test/benchmark/test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/benchmark/test.js -------------------------------------------------------------------------------- /test/benchmark/test_steps_generator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/benchmark/test_steps_generator.js -------------------------------------------------------------------------------- /test/build/.jshintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/build/.jshintrc -------------------------------------------------------------------------------- /test/build/database_builder.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/build/database_builder.js -------------------------------------------------------------------------------- /test/build/mcbopomofo_data_converter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/build/mcbopomofo_data_converter.js -------------------------------------------------------------------------------- /test/build/mcbopomofo_line_data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/build/mcbopomofo_line_data.js -------------------------------------------------------------------------------- /test/interaction/.jshintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/.jshintrc -------------------------------------------------------------------------------- /test/interaction/manifest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/manifest.json -------------------------------------------------------------------------------- /test/interaction/test_node.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/test_node.js -------------------------------------------------------------------------------- /test/interaction/test_web.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/test_web.js -------------------------------------------------------------------------------- /test/interaction/tests/backspace-unhandled.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/backspace-unhandled.js -------------------------------------------------------------------------------- /test/interaction/tests/backspace.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/backspace.js -------------------------------------------------------------------------------- /test/interaction/tests/backspace2-no-wait.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/backspace2-no-wait.js -------------------------------------------------------------------------------- /test/interaction/tests/backspace2.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/backspace2.js -------------------------------------------------------------------------------- /test/interaction/tests/compose-phrase.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/compose-phrase.js -------------------------------------------------------------------------------- /test/interaction/tests/enter-unhandled.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/enter-unhandled.js -------------------------------------------------------------------------------- /test/interaction/tests/enter2-no-wait.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/enter2-no-wait.js -------------------------------------------------------------------------------- /test/interaction/tests/enter2.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/enter2.js -------------------------------------------------------------------------------- /test/interaction/tests/escape-unhandled.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/escape-unhandled.js -------------------------------------------------------------------------------- /test/interaction/tests/escape.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/escape.js -------------------------------------------------------------------------------- /test/interaction/tests/max-sound-overflow-from-composed.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/max-sound-overflow-from-composed.js -------------------------------------------------------------------------------- /test/interaction/tests/max-sound-overflow-from-partial.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/max-sound-overflow-from-partial.js -------------------------------------------------------------------------------- /test/interaction/tests/max-sound-overflow-from-phrase.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/max-sound-overflow-from-phrase.js -------------------------------------------------------------------------------- /test/interaction/tests/max-sound-overflow-from-typo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/max-sound-overflow-from-typo.js -------------------------------------------------------------------------------- /test/interaction/tests/multi-symbols.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/multi-symbols.js -------------------------------------------------------------------------------- /test/interaction/tests/no-wait.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/no-wait.js -------------------------------------------------------------------------------- /test/interaction/tests/nothing-complete-first.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/nothing-complete-first.js -------------------------------------------------------------------------------- /test/interaction/tests/nothing-complete-second.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/nothing-complete-second.js -------------------------------------------------------------------------------- /test/interaction/tests/nothing-completed.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/nothing-completed.js -------------------------------------------------------------------------------- /test/interaction/tests/nothing-completed2.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/nothing-completed2.js -------------------------------------------------------------------------------- /test/interaction/tests/nothing.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/nothing.js -------------------------------------------------------------------------------- /test/interaction/tests/nothing2.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/nothing2.js -------------------------------------------------------------------------------- /test/interaction/tests/phrase-incomplete.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/phrase-incomplete.js -------------------------------------------------------------------------------- /test/interaction/tests/phrase-incomplete2.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/phrase-incomplete2.js -------------------------------------------------------------------------------- /test/interaction/tests/phrase-longest-length.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/phrase-longest-length.js -------------------------------------------------------------------------------- /test/interaction/tests/phrase.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/phrase.js -------------------------------------------------------------------------------- /test/interaction/tests/phrase2.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/phrase2.js -------------------------------------------------------------------------------- /test/interaction/tests/reorder.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/reorder.js -------------------------------------------------------------------------------- /test/interaction/tests/select-steps.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/select-steps.js -------------------------------------------------------------------------------- /test/interaction/tests/select.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/select.js -------------------------------------------------------------------------------- /test/interaction/tests/simple-interchangable.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/simple-interchangable.js -------------------------------------------------------------------------------- /test/interaction/tests/simple-no-suggestion.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/simple-no-suggestion.js -------------------------------------------------------------------------------- /test/interaction/tests/simple-symbol.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/simple-symbol.js -------------------------------------------------------------------------------- /test/interaction/tests/simple-symbol2-no-wait.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/simple-symbol2-no-wait.js -------------------------------------------------------------------------------- /test/interaction/tests/simple-symbol2.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/simple-symbol2.js -------------------------------------------------------------------------------- /test/interaction/tests/simple.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/simple.js -------------------------------------------------------------------------------- /test/interaction/tests/split-sounds.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/split-sounds.js -------------------------------------------------------------------------------- /test/interaction/tests/split-sounds2.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/split-sounds2.js -------------------------------------------------------------------------------- /test/interaction/tests/typo-first.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/typo-first.js -------------------------------------------------------------------------------- /test/interaction/tests/typo-second.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/interaction/tests/typo-second.js -------------------------------------------------------------------------------- /test/resources/frame.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/resources/frame.html -------------------------------------------------------------------------------- /test/resources/post_messenger.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/resources/post_messenger.js -------------------------------------------------------------------------------- /test/resources/test.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/resources/test.data -------------------------------------------------------------------------------- /test/resources/test.data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/resources/test.data.js -------------------------------------------------------------------------------- /test/resources/testdata.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/resources/testdata.data -------------------------------------------------------------------------------- /test/resources/testdata.data.arr.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/resources/testdata.data.arr.js -------------------------------------------------------------------------------- /test/resources/testdata.data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/resources/testdata.data.js -------------------------------------------------------------------------------- /test/resources/testdata.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/resources/testdata.txt -------------------------------------------------------------------------------- /test/task_runner.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/task_runner.js -------------------------------------------------------------------------------- /test/unit/.jshintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/unit/.jshintrc -------------------------------------------------------------------------------- /test/unit/bopomofo_encoder.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/unit/bopomofo_encoder.js -------------------------------------------------------------------------------- /test/unit/client.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/unit/client.js -------------------------------------------------------------------------------- /test/unit/data_loader.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/unit/data_loader.js -------------------------------------------------------------------------------- /test/unit/jszhuyin.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/unit/jszhuyin.js -------------------------------------------------------------------------------- /test/unit/jszhuyin_data_pack.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/unit/jszhuyin_data_pack.js -------------------------------------------------------------------------------- /test/unit/storage.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/unit/storage.js -------------------------------------------------------------------------------- /test/unit/web.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/unit/web.js -------------------------------------------------------------------------------- /test/util.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/test/util.js -------------------------------------------------------------------------------- /tonic-example.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/timdream/jszhuyin/HEAD/tonic-example.js --------------------------------------------------------------------------------