coolwind0202
ボイスチャンネル.icon
Certified_moderator.icon Certified
snowgiving.icon
https://gyazo.com/2ffbc8ffeeebb703bc180e65ce2f7604
こんばんは
よろしくお願いします~wogikaze.icon
上の行上の行
1. この画面にあるパスワードを変更を押してください。
中の行ですですてですですでずですてすてすすってすすすすす
2. ボタンを押します。
ボタンボボボボボボ ではありません。
ボタンボタンボタンタンタンタンでもありません。
下の行下の行2222222222222222222222222 2222222333333
あららららららららららららららららららららららららら
おりゃああああああああああああああああああああああああああああああああああああああああああああああ
https://gyazo.com/d2ba797828d6ea7468b206cfa6d73619
これpermalinkのときだけか、じゃぁ違うやつだwogikaze.icon
????再現できないcoolwind0202.icon
なるほどcoolwind0202.icon
インデントがない場合にはこれでいいけど
インデントがあるならずらす必要はない
やり方は分からない
UserCSS複雑だ
構造を知らない
hasってなんだ()
スマホじゃ難しい(DevToolsでやりたい)
wogikaze.iconが複雑にしちゃってるだけなので色の指定とかもっとクールでシンプルにできる
やっちゃった(テヘペロ)wogikaze.icon
:not()で括弧内を否定,:has()で子要素の中に含まれる
よってindentが含まれない文だけpaddingが追加される
おおおおおおおお💯coolwind0202.icon
permalinkは縦棒が延長されないけど、難しいのかなcoolwind0202.icon
height:100%でできますwogikaze.icon
あ、できたんですね、良かったですcoolwind0202.icon
.textじゃないと埋まってしまうcoolwind0202.icon
このクラスはどういう意味なんだろう
仕様どこかに書いてないのかな
えなにこれ
すまない、これ.indentにしないとだめpermalinkに設定する用のやつだったwogikaze.icon
わかりましたcoolwind0202.icon
snowgiving.icon
code: style.css
@import "../GIF画像を非表示にするUserCSS/style.css";
↑変更しておいたので消しても大丈夫wogikaze.icon
code:script.js
scrapbox.PopupMenu.addButton({
title: '📘',
onClick: text => text.split('\n').map(line => [>~ ${line}]).join('\n')
})
scrapbox.PopupMenu.addButton({
title: '🐺',
onClick: text => text.split('\n').map(line => [>' ${line}]).join('\n')
})
scrapbox.PopupMenu.addButton({
title: '📕',
onClick: text => text.split('\n').map(line => [>! ${line}]).join('\n')
})
scrapbox.PopupMenu.addButton({
title: '📗',
onClick: text => text.split('\n').map(line => [># ${line}]).join('\n')
})
scrapbox.PopupMenu.addButton({
title: '🟥',
onClick: text => text.split('\n').map(line => [>% ${line}]).join('\n')
})
scrapbox.PopupMenu.addButton({
title: '🟦',
onClick: text => text.split('\n').map(line => [>& ${line}]).join('\n')
})
1. Ctrl を押してください。
2. 次にshiftを押します。
3. ショートカットリストを見るには、ctrl/を押してください。
4. ショートカットは CtrlshiftNです。
5. ↑ 細い
6. A ああああ
7. ああああああ
8. ああああああ
9. 長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い
ショートカットリスト
Eでメッセージを編集
BACKSPACEでメッセージを削除
Pでメッセージをピン留め
+でリアクションを付ける
CTRLALT↑で未読の言及を含むチャンネルへ移動
Unicode文字に太いのもあった🡲
⬆ 🡡🡢
左のしか見えない(豆腐になる)
discord.icon
スレッドを作成
スターター・メッセージを指定
2. スレッドに参加する
スレッドにメッセージを送信すると、自動的に参加させられます。
スレッドの作成
スレッドを作成するには、スターター・メッセージが必要です。
スレッドの一番最初のメッセージです。
新規に入力するか、既存のメッセージを指定します。
スレッドへの参加
スレッドにメッセージを送信すると、スレッドに自動的に参加します。
スレッドのメッセージの通知は、スレッドに参加することで受け取れるようになります。 ----
スレッド
スレッドはテキストチャンネルと同様、テキストで会話を行うチャンネル。
テキストチャンネル内で
スレッドが解決する問題点
技術的な問題
チャンネルの制限は500個。
このため、会話を分ける目的で長い間チャンネルを増やし続けると、
この制限には以下の理由があると思われる
メモリ
Gatewayは、guild createイベントとともに、一斉にチャンネルのデータを送りつける。
無制限にチャンネルを作った場合、Discordを起動したタイミングで高負荷になる。
Intentを設定した場合は問題ないが
スレッドはこれを解決する。
Discordは、今アクティブでないスレッドを起動時に与えないという形でこの問題を回避した。
Active threadをGETするAPIは/guildsに生えている
Archived threadをGETするAPIは/channelsの方に生えている
また、参加していないスレッドのメッセージは受信されない。
利便性
スレッドは、会話が脱線する際にトピックごとに整理する目的で使用できる。
テキストチャンネルで同じことをやると、
メイン-脱線 の親子関係が明白でない。
このためチャンネルリストが混雑する。
手軽に脱線できない。
スレッドは短期的なトピックについて話し合うのに向いている。
スレッドを使えば、1, 2回の操作ですぐに会話を切り出せる。
スレッドを使う際の注意点
スレッドは長期的に使うには向いていないかもしれない。
スレッドは、最後のメッセージから一定時間経つと自動的に非表示になる。
Gatewayがスレッドのメッセージを受信する条件
以下を両方満たしている。
スレッドが開いている
クライアントがスレッドに参加している
受信しない例
スレッドが閉じている
クライアントがスレッドに参加していない
以下の関係性がわからない
スレッドに参加
投稿をフォロー
アクティブなスレッド
開かれたスレッド
スレッドを開く
スレッドを閉じる
非表示になったスレッド
スレッドを自動的に非表示
確認済
スレッドに参加 = 投稿をフォロー
「投稿をフォロー」した場合も、スレッドの参加と同様メンバーリストに表示される。
スレッドの通知の設定を変えても参加できるwogikaze.icon
未確認
古いスレッド ≠ 非表示になったスレッド?
スレッドを開く・スレッドをクローズ
スレッドには2つの状態があります。
アクティブ状態のスレッド
古いスレッド
スレッドを開く
スレッドがアクティブになります。
通知
スレッドに参加しているメンバーは、メッセージの通知を受け取れるようになります。
スレッドをクローズ
スレッドは古いスレッドになります。
スレッドをロック
古いスレッドに対して行える操作です。
ロックを解除するまでスレッドに書き込めないようにします。
スレッドが再び開かれないようにできます。
スレッドのロックを解除
モデレーターのみが行える操作です。
スレッドリストの挙動(予想)
多分(Networkタブを監視すればわかる)
アクティブスレッド
Gatewayを通じて常にアクティブスレッドのリストは同期されている。
1. GUILD_CREATEイベント
2. Thread List Syncイベント
古いスレッド
これを叩く
スレッドリストはテキストチャンネルごとにスレッドを表示する
アクティブスレッドは常に同期しているので、スレッドリスト表示時にはこのAPIだけ呼び出せば良い
スレッドリストでは、古いスレッドは若干遅れて表示されるのが特徴
スレッドへのチャンネルメンション
メンション文字列の#のあと、チャンネル名が " で囲われる
この " は削除しても問題ない
古いスレッドはメンション候補に表示されない
送信時の挙動(予想)
1. メッセージの送信ボタンを押す
2. メッセージをパース
3. チャンネル名を見つけたら、同期済のThread Listを見てIDを取得
4. 内部表現に置換
表示時の挙動(予想)
https://gyazo.com/b75ad8d76b3e3f68126035e78b357ce7
メンション先のスレッドが属しているテキストチャンネルをまだ開いていない場合に発生する
読み込むと正しく表示されるようになる
メンション先がアクティブな場合は発生しない
アクティブスレッドリストは常に同期されるので、スレッド名が必ずわかる
古いスレッドのリストは、チャンネルを開いた瞬間に取得されるということか
Networkを監視すれば分かる
1. メッセージを受信
2. パースする
3. チャンネルメンションの内部表現を発見
1. Active Thread Listを見る
2. キャッシュ済のArchived Thread listを見る
4.
ヒットした場合
メンションとして表示
ヒットしなかった場合
削除されたチャンネル
スタートガイド
【Discordにログインする】
1. アカウントを作成
このとき設定したユーザー名とアバターは、あとから変更できる。
サーバーを作ったら何をすればいいの?
【サーバーを設定する】
このとき設定したサーバー名とアイコンは、後から変更できる。
初めてDiscordを使うユーザーには、【Discordにログインする】のリンクを紹介すると便利です。
3. チャンネルを設定する
サーバーの作成時にテンプレートが用意されているが
自分でチャンネルを設定することができる
テキストチャンネルは文面での会話のためのチャンネルです。
ボイスチャンネルは通話用のチャンネルです。
メモ
サーバーをつくる人と招待される人ではやることが違う
ユーザーをサーバーに追加する
1. サーバーを作成しましょう。
2. サーバーにはメンバーを追加できます。
これで、テキストチャットとボイスチャットができるようになりました。
3. サーバーにチャンネルを追加しましょう。
テキストチャンネル
チャンネルについて詳しく知りたい場合は、チャンネルも参照してください。 4. メンバーが増えてきたら、ロールを割り当てて、権限を設定できます。
ロールや権限について詳しく知りたい場合はロール、権限も参照してください。 5.