minicloze_lib/
lib.rs

1pub mod langs;
2pub mod sentence;
3
4// handles wiktionary lookup
5pub mod wiktionary {
6    pub fn wiktionary_try_open(lookup: String, language: &str) {
7        webbrowser::open(&generate_url(&lookup, language)).unwrap();
8    }
9
10    pub fn generate_url(lookup: &str, language: &str) -> String {
11        let lang_codes = crate::langs::propagate();
12
13        let mut full_language = String::new();
14        // gets key from value
15        for pair in lang_codes {
16            if pair.1 == language {
17                full_language = pair.0.to_string();
18            }
19        }
20
21        let titlecase_language = format!(
22            "{}{}",
23            full_language[..1].to_uppercase(),
24            &full_language[1..]
25        );
26
27        [
28            "https://en.wiktionary.org/wiki/",
29            lookup.trim(),
30            "#",
31            titlecase_language.as_str(),
32        ]
33        .join("")
34    }
35}