forked from LibreService/my_rime
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlibrime_patch
81 lines (78 loc) · 2.8 KB
/
librime_patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
diff --git a/src/rime/config/build_info_plugin.cc b/src/rime/config/build_info_plugin.cc
index 4df1e65..eaf858c 100644
--- a/src/rime/config/build_info_plugin.cc
+++ b/src/rime/config/build_info_plugin.cc
@@ -19,6 +19,7 @@ bool BuildInfoPlugin::ReviewLinkOutput(
ConfigCompiler* compiler, an<ConfigResource> resource) {
auto build_info = (*resource)["__build_info"];
build_info["rime_version"] = RIME_VERSION;
+ return true;
auto timestamps = build_info["timestamps"];
compiler->EnumerateResources([&](an<ConfigResource> resource) {
if (!resource->loaded) {
diff --git a/src/rime/deployer.cc b/src/rime/deployer.cc
index fc43344..830333e 100644
--- a/src/rime/deployer.cc
+++ b/src/rime/deployer.cc
@@ -109,6 +109,7 @@ bool Deployer::StartWork(bool maintenance_mode) {
}
LOG(INFO) << "starting work thread for "
<< pending_tasks_.size() << " tasks.";
+ return Run();
work_ = std::async(std::launch::async, [this] { Run(); });
return work_.valid();
}
diff --git a/src/rime/schema.cc b/src/rime/schema.cc
index 577bb31..22b9d40 100644
--- a/src/rime/schema.cc
+++ b/src/rime/schema.cc
@@ -4,9 +4,17 @@
//
// 2011-05-08 GONG Chen <[email protected]>
//
+#include <string>
#include <boost/algorithm/string.hpp>
#include <rime/schema.h>
+#ifdef __EMSCRIPTEN__
+namespace my_rime {
+ extern bool deployed;
+ extern std::string get_schema_name(std::string);
+}
+#endif
+
namespace rime {
Schema::Schema()
@@ -28,6 +36,11 @@ void Schema::FetchUsefulConfigItems() {
schema_name_ = schema_id_ + "?";
return;
}
+ #ifdef __EMSCRIPTEN__
+ if (!my_rime::deployed) {
+ schema_name_ = my_rime::get_schema_name(schema_id_);
+ } else
+ #endif
if (!config_->GetString("schema/name", &schema_name_)) {
schema_name_ = schema_id_;
}
diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
index 18e3407..b79a0c1 100644
--- a/tools/CMakeLists.txt
+++ b/tools/CMakeLists.txt
@@ -44,18 +44,3 @@ install(TARGETS rime_dict_manager DESTINATION ${BIN_INSTALL_DIR})
endif()
install(TARGETS rime_patch DESTINATION ${BIN_INSTALL_DIR})
-
-file(COPY ${PROJECT_SOURCE_DIR}/data/minimal/default.yaml
- DESTINATION ${EXECUTABLE_OUTPUT_PATH})
-file(COPY ${PROJECT_SOURCE_DIR}/data/minimal/symbols.yaml
- DESTINATION ${EXECUTABLE_OUTPUT_PATH})
-file(COPY ${PROJECT_SOURCE_DIR}/data/minimal/essay.txt
- DESTINATION ${EXECUTABLE_OUTPUT_PATH})
-file(COPY ${PROJECT_SOURCE_DIR}/data/minimal/luna_pinyin.dict.yaml
- DESTINATION ${EXECUTABLE_OUTPUT_PATH})
-file(COPY ${PROJECT_SOURCE_DIR}/data/minimal/luna_pinyin.schema.yaml
- DESTINATION ${EXECUTABLE_OUTPUT_PATH})
-file(COPY ${PROJECT_SOURCE_DIR}/data/minimal/cangjie5.dict.yaml
- DESTINATION ${EXECUTABLE_OUTPUT_PATH})
-file(COPY ${PROJECT_SOURCE_DIR}/data/minimal/cangjie5.schema.yaml
- DESTINATION ${EXECUTABLE_OUTPUT_PATH})