diff options
| author | Shulhan <ms@kilabit.info> | 2024-04-18 00:34:40 +0700 |
|---|---|---|
| committer | Shulhan <ms@kilabit.info> | 2024-04-18 00:41:07 +0700 |
| commit | f5879e8aa880949f8d1288f6f1dddd48bf7e3780 (patch) | |
| tree | bd2e396c267b0db2389f41ec8b196e893ac8eab5 | |
| parent | 1a6d02199e0d44024648c5e805f8f10d7fc4b30a (diff) | |
| download | kamusku-f5879e8aa880949f8d1288f6f1dddd48bf7e3780.tar.xz | |
cmd/kamusku: command line interface to kamusku server
The kamusku CLI accept one or more words to be lookup their definition
on the server.
| -rw-r--r-- | cmd/kamusku/main.go | 55 | ||||
| -rw-r--r-- | go.mod | 2 | ||||
| -rw-r--r-- | go.sum | 4 |
3 files changed, 58 insertions, 3 deletions
diff --git a/cmd/kamusku/main.go b/cmd/kamusku/main.go new file mode 100644 index 0000000..203a6de --- /dev/null +++ b/cmd/kamusku/main.go @@ -0,0 +1,55 @@ +// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info> +// SPDX-License-Identifier: GPL-3.0-or-later + +// Program kamusku is the client for kamusd server. +package main + +import ( + "flag" + "log" + "os" + + "git.sr.ht/~shulhan/kamusku" + "git.sr.ht/~shulhan/kbbi" +) + +func usage() { + log.Printf(`= kamusku + +Client for kamusku server. + +Usage, + + kamusku <word *[" " word]> + +For each words, kamusku find the Bahasa Indonesia definition by sending +request to the server and pint the response back to console. +`) + +} + +func main() { + log.SetFlags(0) + + flag.Parse() + + var words = flag.Args() + if len(words) == 0 { + usage() + os.Exit(1) + } + + var ( + client = kamusku.NewClient(``) + + lookupRes kbbi.LookupResponse + err error + ) + + lookupRes, err = client.Lookup(words) + if err != nil { + log.Fatal(`kamusku:`, err) + } + + lookupRes.Write(os.Stdout) +} @@ -6,7 +6,7 @@ module git.sr.ht/~shulhan/kamusku go 1.21 require ( - git.sr.ht/~shulhan/kbbi v0.1.1-0.20240417163139-a6629b6a1f40 + git.sr.ht/~shulhan/kbbi v0.1.1-0.20240417173155-64ea2467ced3 git.sr.ht/~shulhan/pakakeh.go v0.54.1-0.20240416175429-f319122b7363 ) @@ -1,5 +1,5 @@ -git.sr.ht/~shulhan/kbbi v0.1.1-0.20240417163139-a6629b6a1f40 h1:GU1+NOFJkGy+VpCMsvNgLqM2/ShKr6anZaE/UoEKjz8= -git.sr.ht/~shulhan/kbbi v0.1.1-0.20240417163139-a6629b6a1f40/go.mod h1:eRPiyedqx9p38Jp2hKcM/l6nmhaE7HlpnFptO9p68bI= +git.sr.ht/~shulhan/kbbi v0.1.1-0.20240417173155-64ea2467ced3 h1:laMKduz+UNwmTW9wEV8Rjpz/jXLwstTKpD4mDECYl2E= +git.sr.ht/~shulhan/kbbi v0.1.1-0.20240417173155-64ea2467ced3/go.mod h1:eRPiyedqx9p38Jp2hKcM/l6nmhaE7HlpnFptO9p68bI= git.sr.ht/~shulhan/pakakeh.go v0.54.1-0.20240416175429-f319122b7363 h1:ieuTxaGu3ccH6sRM+hv6Pfg/xBUtodIYE90Bmx0s1Bk= git.sr.ht/~shulhan/pakakeh.go v0.54.1-0.20240416175429-f319122b7363/go.mod h1:hJHTZtPS9bOKMNtLljEdJZKHj3eOAXe7fuHcfI6vceY= golang.org/x/net v0.24.0 h1:1PcaxkF854Fu3+lvBIx5SYn9wRlBzzcnHZSiaFFAb0w= |
