aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShulhan <ms@kilabit.info>2024-04-18 00:34:40 +0700
committerShulhan <ms@kilabit.info>2024-04-18 00:41:07 +0700
commitf5879e8aa880949f8d1288f6f1dddd48bf7e3780 (patch)
treebd2e396c267b0db2389f41ec8b196e893ac8eab5
parent1a6d02199e0d44024648c5e805f8f10d7fc4b30a (diff)
downloadkamusku-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.go55
-rw-r--r--go.mod2
-rw-r--r--go.sum4
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)
+}
diff --git a/go.mod b/go.mod
index 76eee76..5d3818c 100644
--- a/go.mod
+++ b/go.mod
@@ -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
)
diff --git a/go.sum b/go.sum
index 1efea94..2352742 100644
--- a/go.sum
+++ b/go.sum
@@ -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=