From 44b1c96fa74a683d5750f6f0ca00ef01b39c7195 Mon Sep 17 00:00:00 2001 From: kakakaya Date: Sun, 18 Feb 2024 20:54:21 +0900 Subject: [PATCH 1/6] Add screenshot --- README.md | 16 ++++++++++++---- docs/images/screenshot.png | Bin 0 -> 67897 bytes 2 files changed, 12 insertions(+), 4 deletions(-) create mode 100644 docs/images/screenshot.png diff --git a/README.md b/README.md index 19cdf20..d4f9b09 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,9 @@ +# まぜそば大陸 + +
+ ![Screenshot](docs/images/screenshot.png) +
+ [![GitHub Release Date](https://img.shields.io/github/release-date/kakakaya/mazesoba-continent?style=flat)](https://github.com/kakakaya/mazesoba-continent/releases) [![GitHub Downloads (all assets, latest release)](https://img.shields.io/github/downloads/kakakaya/mazesoba-continent/latest/total?sort=semver&style=flat)](https://github.com/kakakaya/mazesoba-continent/releases) [![GitHub License](https://img.shields.io/github/license/kakakaya/mazesoba-continent?style=flat)](https://github.com/kakakaya/mazesoba-continent?tab=MIT-1-ov-file#readme) @@ -8,11 +14,11 @@ Out of respect for [ラーメン大陸](https://forest.watch.impress.co.jp/docs/news/559014.html). -# 簡単な使い方 +## 簡単な使い方 初回起動すると「設定ファイルが未設定だよ」みたいなことを言うので、設定ファイルの場所を開いて `config.toml` で以下の内容を入力してください。 -``` +```toml [Credential] Identifier = "<ここにIdentifierを入れる>" Password = "<ここにパスワードを入れる>" @@ -21,5 +27,7 @@ Out of respect for [ラーメン大陸](https://forest.watch.impress.co.jp/docs/ Windows や Linux なら Ctrl + Enter macOS なら Cmd + Enter で投稿ができます。 -# 複雑な使い方 -そのうち書く +## 複雑な使い方 + +- [Slash Command](./docs/SLASH_COMMAND.md) + - "/help" diff --git a/docs/images/screenshot.png b/docs/images/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..2cef8e94dff842e2e1a232c0cd6a09f8a8d9232a GIT binary patch literal 67897 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

2zPI3^8Tp1l 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 z%0D-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 OM_fckxI$3x`~Lxgv)i=* literal 0 HcmV?d00001 From ea88effff53dec8263a1de5de7a1ec9af54736ab Mon Sep 17 00:00:00 2001 From: kakakaya Date: Sun, 18 Feb 2024 22:59:47 +0900 Subject: [PATCH 2/6] Add OpenURL command --- app.go | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/app.go b/app.go index 7fdfb60..a5ea6f7 100644 --- a/app.go +++ b/app.go @@ -9,6 +9,8 @@ import ( "log/slog" "net/http" "os" + "os/exec" + goruntime "runtime" "strings" "time" @@ -69,11 +71,6 @@ func (a *App) startup(ctx context.Context) { } } -func (a *App) onDomReady(ctx context.Context) { - slog.Info("Emitting OnDomReady", a.config) - runtime.EventsEmit(ctx, "OnDomReady", "hello") -} - func (a *App) beforeClose(ctx context.Context) bool { err := a.scheduler.Shutdown() if err != nil { @@ -169,8 +166,21 @@ func (a *App) OpenLogDirectory() error { return openDirectory(f) } -func (a *App) GetVersion() string { - return Version +func OpenURL(url string) error { + var cmd string + var args []string + + switch goruntime.GOOS { + case "windows": + cmd = "cmd" + args = []string{"/c", "start"} + case "darwin": + cmd = "open" + default: + cmd = "xdg-open" + } + args = append(args, url) + return exec.Command(cmd, args...).Start() } func (a *App) SetXRPCClient() error { @@ -204,7 +214,7 @@ func (a *App) SetXRPCClient() error { result, dialogErr := runtime.MessageDialog(a.ctx, runtime.MessageDialogOptions{ Type: runtime.QuestionDialog, Title: "認証に失敗したよ", - Message: fmt.Sprintf("%sへの認証に失敗しました。\nIDとパスワードを確認してね。\nこのまま沈没するけど、設定ファイルの場所を開く?", cred.Host), + Message: fmt.Sprintf("%sへの認証に失敗しました。\nIDとパスワードとインターネット接続を確認してね。\n設定ファイルの場所を開く?", cred.Host), DefaultButton: "Yes", }) From cd5ff70ed79150003a223cd9c1b28fbbd1e3c18f Mon Sep 17 00:00:00 2001 From: kakakaya Date: Sun, 18 Feb 2024 23:01:46 +0900 Subject: [PATCH 3/6] Implement slash command, use dispatchcommand --- continent.go | 128 ++++++++++++++++++++++++++++-- docs/SLASH_COMMAND.md | 31 ++++++++ frontend/src/App.svelte | 31 ++------ frontend/wailsjs/go/main/App.d.ts | 2 +- frontend/wailsjs/go/main/App.js | 4 +- 5 files changed, 164 insertions(+), 32 deletions(-) create mode 100644 docs/SLASH_COMMAND.md diff --git a/continent.go b/continent.go index 8cc84d0..f2b564a 100644 --- a/continent.go +++ b/continent.go @@ -1,10 +1,126 @@ package main -// getSpecialCommand ... -func getSpecialCommand(text string) string { - switch text { - case "@バージョン": - return "未実装" +import ( + "fmt" + "net/http" + "strings" + + "github.com/wailsapp/wails/v2/pkg/runtime" +) + +func (a *App) DispatchCommand(text string) string { + a.logger.Debug("dispatchcommand", "text", text) + words := strings.Fields(text) + if len(words) < 1 { + return a.Post(text) + } + action := words[0] + switch action { + case "/help": + { + if len(words) < 2 { + OpenURL("https://github.com/kakakaya/mazesoba-continent/blob/main/README.md") + } + switch words[1] { + case "config": + { + OpenURL("https://github.com/kakakaya/mazesoba-continent/tree/main/docs/CONFIG.md") + } + case "command": + { + OpenURL("https://github.com/kakakaya/mazesoba-continent/tree/main/docs/SLASH_COMMAND.md") + } + default: + { + OpenURL("https://github.com/kakakaya/mazesoba-continent/blob/main/README.md") + } + } + return "" + } + case "/open": + { + if len(words) < 2 { + return "🍜「何を開く?アジ?」" + } + switch words[1] { + case "config": + { + a.OpenConfigDirectory() + } + case "log": + { + a.OpenLogDirectory() + } + case "profile": + { + handle_or_did := words[2] + OpenURL(fmt.Sprintf("https://bsky.app/profile/%s", handle_or_did)) + } + case "search", "s": + { + if len(words) < 3 { + return "🍜「検索ワードを指定してね」" + } + req, err := http.NewRequest("GET", "https://bsky.app/search", nil) + if err != nil { + a.logger.Warn("error making HTTP request", "error", err) + return "" + } + + q := req.URL.Query() + q.Add("q", strings.Join(words[2:], " ")) + req.URL.RawQuery = q.Encode() + + OpenURL(req.URL.String()) + } + default: + { + OpenURL(words[1]) // NOTE: TBC + } + } + return "" + } + case "/post": + { + if len(words) < 2 { + return "🍜「サブコマンドを指定してね。 /post version とか」" + } + switch words[1] { + case "chikuwa", "ckw": + { + return a.Chikuwa("ちくわ。") + } + case "earthquake", "eq": + { + return a.Chikuwa("地震だ!") + } + case "version", "ver": + { + return a.Chikuwa(fmt.Sprintf("まぜそば大陸バージョン%sが浮上中", Version)) + } + } + } + case "/quit": + { + runtime.Quit(a.ctx) + } + case "/mzsb": // hidden functions + { + if len(words) < 2 { + return "" + } + switch words[1] { + case "egosearch", "egs": + { + OpenURL("https://bsky.app/search?q=%E3%81%BE%E3%81%9C%E3%81%9D%E3%81%B0%E5%A4%A7%E9%99%B8") + } + } + return "" + } + default: + { + return a.Post(text) + } } - return text + return "" } diff --git a/docs/SLASH_COMMAND.md b/docs/SLASH_COMMAND.md new file mode 100644 index 0000000..9ea18b7 --- /dev/null +++ b/docs/SLASH_COMMAND.md @@ -0,0 +1,31 @@ +# Slash Command + +`/open search まぜそば大陸` ってポストしてみよう + +## って何 + +DiscordとかSlackにあるみたいなやつ。 + +## コマンド一覧 + +| COMMAND | ARGS | ACTION | SHORTCUT | +| `/help` | [README.md](/README.md) を開く | | +| `/help command` | | これを開く | | +| `/help config` | | [CONFIG.md](./CONFIG.md) を開く | | +| `/open config` | | 設定ファイルの場所を開く | Ctrl+, | +| `/open log` | | ログの場所を開く | Ctrl+. | +| `/open profile ( \| )` | HANDLE \| DID : ユーザーのハンドル名またはDID | ユーザープロフィールを開く | | +| `/open search ` | TEXT : 検索したい文言(v10時点では) ユーザープロフィールを開く | | +| `/post chikuwa` | | ちくわ。 | | +| `/post earthquake` | | 地震だ! | | +| `/post version` | | 今使っているバージョン | | +| `/quit` | | 沈没 | | Ctrl+q | + + \ No newline at end of file diff --git a/frontend/src/App.svelte b/frontend/src/App.svelte index 7a5be3f..e1a6776 100644 --- a/frontend/src/App.svelte +++ b/frontend/src/App.svelte @@ -1,7 +1,6 @@

-
-