なんだ文字にクリックイベント仕込めるじゃん #aiscript
// timer widget
var Count=0 // MUTABLE!!
let Second=1000
let Minute=60
let ToastPerMin=15 // ToDo: GUIで設定したいね
Ui:render([
Ui:C:text({text: "タブを開いている時間: 0分0秒"}, "timer")
Ui:C:button({text: "リセット", onClick: @(){
Count=0
Ui:get("timer").update({
text: `タブを開いている時間: {Math:trunc(Count/60)}分{Count%60}秒`
})
}})
])
while true {
Core:sleep(Second)
Count=Count+1
Ui:get("timer").update({
text: `タブを開いている時間: {Math:trunc(Count/60)}分{Count%60}秒`
})
if Count%(ToastPerMin*Minute)==0 && Count!=0 {
Mk:toast(`{ToastPerMin}分経過。ちょっと目を休ませてみませんか?`)
}
}
【プラグイン】
ノート内のテキストをX (旧Twitter) アプリの投稿画面に渡せるプラグインを作りました!
使い方
プラグインをインストールすると、投稿フォームの下にある🔌メニューから
「このノートをXアプリでポスト」を選びます。
→ Xアプリが起動し、フォームのテキストをそのまま投稿画面に反映します。
TLのノートも、右下の「…」メニューからプラグインを選ぶと同じようにできます。
⚠️注意
・テキストのみ対応しています (画像・動画は渡せません。)
・Xアプリが入っていない場合は、プラグイン設定で「ブラウザで開く」をONにしてください。
→ アプリの代わりにブラウザで投稿画面を開けます。
#AiScript #MisskeyPlugin #プラグイン
コード
/// @ 1.1.1
### {
name: "ノート内テキストをXアプリの投稿画面に渡すプラグイン"
version: "0.0.1"
author: "羽井出 (@[email protected])"
description: "投稿フォームやノートメニューからURLスキームでX(Twitter)アプリの投稿画面を開きます。テキストのみ引き渡されます。"
config: {
is_open_in_browser: {
label: "ブラウザで開く"
type: "boolean"
default: false
}
}
}
let url_app = "twitter://post?message="
let url_browser = "https://x.com/intent/tweet?text="
@open(text){
var url_head = []
if Plugin:config.is_open_in_browser {
url_head.push(url_browser)
} else {
url_head.push(url_app)
}
url_head.push(Uri:encode_component(text))
var url = url_head.join()
Plugin:open_url(url)
return url
}
Plugin:register_post_form_action("このノートをXアプリでポスト", @(note, rewrite){
open(note.text)
})
Plugin:register_note_action("このノートをXアプリでポスト", @(note){
open(note.text)
})Hola Mundo en AI-Script!
Hello World in AI-Script!
<: Hello World!