not/onNOT DONE, ALWAYS ON

not/onのTIPs:予約語で動く文言を埋め込む その2

ver.2.8

中の人です。ここ(最高℃)です。
、また、次の祝日は、今から待ち遠しいですね!


この度は、not/on の記事本文に埋め込める動的文言の「予約語」の機能を追加したので、その仕様と使い方をまとめます。
同じ記事でも、開くたびに時刻・天気・挨拶などが変わる——which is the "ALWAYS ON" の由来でもあります。

過去追加した予約語の記事については👇の記事をご覧ください。本記事はこれの続きにあたります。

not/onのTIPs:予約語で動く文言を埋め込むGREETING]! 中の人 です。ここ PLACE]は WEATHER](最高 WEATHER field="temp max"]℃)です。 WEATHER ADVICE] 次の祝日は HOLIDAY]の HOLIDAY field="date"]、今から待ち遠しいですね! T…not/on

今回追加したのは2つの予約語です。
![RELATED_FEED](つながり記事のリスト表示)と ![SAY](会話スタイル表示)の使い方についてそれぞれまとめます。


![RELATED_FEED] — つながり記事のリスト

記事の「つながり(被参照)」を、本文中の好きな位置にミニフィードとして差し込める。

基本の記法

![RELATED_FEED]

属性を何も指定しない場合、この予約語が埋め込まれている記事自身のつながり記事が一覧表示される。ヘッダー(元記事情報)は出ず、リストのみ表示される。

元記事を指定する場合

![RELATED_FEED url="https://noton.youside.me/@inside_human/93d97514d0e1"]

url に他の記事(自分の記事でも他の著者の記事でもよい)のURLを指定すると、

が続けて表示される。「この記事はこんな風につながりを持っている記事です」という紹介に使える。

属性一覧

属性 意味 既定値
url 対象記事のフルURL。未指定なら自記事 なし(自記事)
sort 並び順。ver=つながりスコア順、asc=作成日時の昇順、desc=降順 ver
limit 表示件数(1〜20) 5
layout 表示形式。card=画像付きカード、list=シンプルな一覧 card
fallback つながりが0件のときに表示する文言 なし(非表示)

使用例

この記事に関連する、これまでの投稿はこちらです。
![RELATED_FEED limit="6" layout="card" fallback="まだつながりはありません"]

以前書いたこの記事も、多くの人につながっています。
![RELATED_FEED url="https://noton.youside.me/@inside_human/f7213850bf4a" sort="desc" layout="list" fallback="まだつながりはありません"]

👆のように書くと、👇のように表示されます

この記事に関連する、これまでの投稿はこちらです。

以前書いたこの記事も、多くの人につながっています。


見た目について

表示は not/on のテーマ(NATURE / ZEN / CYBER)の配色に自動で追従する。カード表示・リスト表示ともに、著者アイコン、タイトル、ハンドル名(@handle)が並ぶ。




![SAY] — 会話スタイル表示

指定したハンドルのアイコンが、まるで話しているかのような吹き出し形式で本文を表示できる。対談形式の記事や、キャラクター的な語り口を演出したいときに使う。

基本の記法

![SAY handle="inside_human"]こんにちは、よろしくお願いします!![/SAY]

![SAY]` と `![/SAY] で挟んだ範囲がセリフ本文になる。

アイコンの左右指定

![SAY handle="inside_human" side="left"]左側から話します。![/SAY]
![SAY handle="another_user" side="right"]右側から話します。![/SAY]

side="left"(既定)はアイコンが左・吹き出しが右寄り、side="right" は逆になる。対話形式の記事を書くときは、話者ごとに side を使い分けるとチャット画面のような見た目になる。

属性一覧

属性 意味 既定値
handle 話者のハンドル(必須)
side アイコンの位置。left または right left
name 吹き出し上部に表示する名前 @handle

アイコンにマウスを乗せる(スマホではタップ)と、そのハンドルの自己紹介文がツールチップで表示される。

対話形式の使用例

![SAY handle="inside_human" side="left"]FunkApiCoreって便利ですね!天気とか祝日とか、簡単に埋め込めます。![/SAY]

![SAY handle="anti_frame" side="right" name="なぞの人"]ですね。特に![WEATHER_ADVICE]みたいな予約語と組み合わせると、記事が"生きて"見えるのがいいですよね。![/SAY]

![SAY handle="inside_human" side="left"]次は会話の中に予約語も混ぜてみます。今日は![WEATHER]らしいです。![/SAY]

👆と書くと👇のように表示される。




現時点の制限


セリフ本文は現状プレーンテキストとして表示される(太字やリンクなどのMarkdown記法は解釈されない)。これは、セリフの中に別の予約語やHTMLが紛れ込むことによる予期しない挙動を避けるための、安全側の設計判断による制限。将来的に必要であれば拡張を検討する。



補足:どちらも「閲覧のたびに評価」される

![RELATED_FEED] はつながり記事の一覧を、![SAY] はハンドルのアイコン・自己紹介を、それぞれ記事を開くたびに最新の状態で取得する。公開時に内容が固定されるわけではないので、後から著者がプロフィール画像や自己紹介を変えたり、新しいつながりが増えたりすると、既存の記事の表示にもそのまま反映される。





関連記事

この記事(その2)のその1にあたる記事 | not/onのTIPs:予約語で動く文言を埋め込むGREETING]! 中の人 です。ここ PLACE]は WEATHER](最高 WEATHER field="temp max"]℃)です。 WEATHER ADVICE] 次の祝日は HOLIDAY]の HOLIDAY field="date"]、今から待ち遠しいですね! T…not/on

not/onのChangelogはじめに SAY handle="anti frame" side="left"] not/onの見た目や機能がコロコロ変わるからわかりにくいな /SAY] SAY handle="inside human" side="right" name="なかの人"] このページに集約し…not/on

not/onのread.me:自走する記事を公開できるSAY handle="inside human" side="left" name="なかの人"] GREETING]。なかの人です。 このページはnot/onのread.meとして、コンセプトなどをまとめています。 /SAY] https://noton.youside.me…not/on

not/on