@@ -36,17 +36,20 @@ class ConfigAdapter(anchor: PathAnchor, settings: Settings, env: Environment) {
36
36
}
37
37
38
38
val discardPunctuation: Boolean = settings.getAsBoolean(PARAM_DISCARD_PUNCTUATION , true )
39
-
39
+ // default false to let every morpheme have non-null span in the input text
40
+ val allowEmptyMorpheme: Boolean = settings.getAsBoolean(PARAM_ALLOW_EMPTY_MORPHEME , false )
40
41
val mode = splitMode(settings)
41
42
42
43
private fun settingsFile (settings : Settings ): Config {
43
44
val settingsPath = settings.get(PARAM_SETTINGS_PATH )
44
- return if (settingsPath == null ) {
45
- readDefaultConfig(basePath, fullAnchor)
46
- } else {
47
- val configObject = fullAnchor.resource<Any >(settingsPath)
48
- Config .fromResource(configObject, fullAnchor)
49
- }
45
+ val base =
46
+ if (settingsPath == null ) {
47
+ readDefaultConfig(basePath, fullAnchor)
48
+ } else {
49
+ val configObject = fullAnchor.resource<Any >(settingsPath)
50
+ Config .fromResource(configObject, fullAnchor)
51
+ }
52
+ return base.allowEmptyMorpheme(allowEmptyMorpheme)
50
53
}
51
54
52
55
companion object {
@@ -56,6 +59,7 @@ class ConfigAdapter(anchor: PathAnchor, settings: Settings, env: Environment) {
56
59
const val PARAM_RESOURCES_PATH = " resources_path"
57
60
const val PARAM_ADDITIONAL_SETTINGS = " additional_settings"
58
61
const val PARAM_DISCARD_PUNCTUATION = " discard_punctuation"
62
+ const val PARAM_ALLOW_EMPTY_MORPHEME = " allow_empty_morpheme"
59
63
60
64
const val DEFAULT_SETTINGS_FILENAME = " sudachi.json"
61
65
const val DEFAULT_RESOURCE_PATH = " sudachi"
0 commit comments