Unofficial KBBI (Kamus Besar Bahasa Indonesia) lookup for MoonBit: a library, a CLI, and an agent skill.
Status: unofficial. Results are scraped from KBBI Daring; this project is not affiliated with KBBI or its operator.
moon add gaato/kbbimoonx gaato/kbbi/cmd/kbbi makan///|
/// Prints the headword and first definition of each entry for `word`.
async fn print_definitions(client : @client.Client, word : String) -> Unit {
let result = @kbbi.lookup(client, word)
if !result.found {
println("\{word}: not in KBBI")
}
for entry in result.entries {
println("\{entry.headword}: \{entry.senses[0].gloss}")
}
}
///|
test "print_definitions compiles" {
ignore(print_definitions)
}///|
test "parse a saved page" {
let html =
#|<h2>ma.kan<sup>1</sup></h2>
#|<ol><li><font color="red"><i><span title="Verba: kata kerja">v</span></i></font>
#|mengisap:<font color="grey"><i>-- candu</i></font></li></ol>
let url = @kbbi.entry_url("makan")
let result = @kbbi.parse(html, query="makan", url~)
inspect(url, content="https://kbbi.kemendikdasmen.go.id/entri/makan")
inspect(result.entries[0].headword, content="makan")
inspect(result.entries[0].senses[0].gloss, content="mengisap")
}| Package | What it is | Targets |
|---|---|---|
| gaato/kbbi | The lookup library: lookup, parse, entry_url, and the result types | wasm, native, js |
| gaato/kbbi/cmd/kbbi | The kbbi command and its agent skill | wasm, native |
moonx gaato/kbbi/cmd/kbbi makan
moonx gaato/kbbi/cmd/kbbi rumah sakit
moonx gaato/kbbi/cmd/kbbi --help{"net":{"connect":["kbbi.kemendikdasmen.go.id:443"]}}moonx --experimental-policy kbbi-policy.json gaato/kbbi/cmd/kbbi gemaslet DEFAULT_BASE_URL : Stringfn entry_url(query : String, base_url? : String) -> StringInstall
Download zipUnofficial KBBI (Kamus Besar Bahasa Indonesia) lookup for MoonBit: a library, a CLI, and an agent skill.