Fix multi-word subtypes (#31)
This commit is contained in:
@@ -14,6 +14,46 @@ lang_name := {
|
||||
lang_setting := {
|
||||
language()[input] or else languages[language().fallback][input] or else languages.English[input] or else ""
|
||||
}
|
||||
|
||||
spaced_sub_type_regex :=
|
||||
replace@(match: "'", replace: "’") + ### standardize apostrophes
|
||||
regex_escape + ### preemptive escape
|
||||
replace@(match: ",", replace: "|") + ### match any sub type
|
||||
replace@(match: "(^|\\|)[^ ]+(?=\\|)", replace: "") + ### eliminate sub types that don't contain spaces
|
||||
replace@(match: "^\\|", replace: "") + ### eliminate starting |
|
||||
replace@(match: "\\|$", replace: "") + ### eliminate trailing |
|
||||
{ "^(" + input + ")" } ### only match start of string
|
||||
complete_sub_type_list :=
|
||||
{
|
||||
input.word_list_artifact + "," +
|
||||
input.word_list_battle + "," +
|
||||
input.word_list_dungeon + "," +
|
||||
input.word_list_land + "," +
|
||||
(for each submenu in input.word_lists_basic do submenu + ",") +
|
||||
input.word_list_enchantment + "," +
|
||||
input.word_list_spell + "," +
|
||||
input.word_list_planeswalker + "," +
|
||||
(for each submenu in input.word_lists_race do submenu + ",") +
|
||||
(for each submenu in input.word_lists_class do submenu + ",") +
|
||||
(for each submenu in input.word_lists_plane do submenu + ",")
|
||||
}
|
||||
replace_spaced_sub_type_map :=
|
||||
[
|
||||
"de": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["Deutsch"])))
|
||||
"en": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["English"])))
|
||||
"es": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["Español"])))
|
||||
"fr": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["Français"])))
|
||||
"it": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["Italiano"])))
|
||||
"ja": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["日本語"])))
|
||||
"ko": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["한국어"])))
|
||||
"pt-br": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["Português do Brasil"])))
|
||||
"ru": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["Русский"])))
|
||||
"zhs": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["汉语"])))
|
||||
"zht": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["漢語"])))
|
||||
"en_GB": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["English"])))
|
||||
"en_CA": replace@(replace: "", match: spaced_sub_type_regex(complete_sub_type_list(languages["English"])))
|
||||
]
|
||||
|
||||
# language scripts
|
||||
spanish_number := {
|
||||
input := remove_tags(input)
|
||||
|
||||
Reference in New Issue
Block a user