From a0c61b8a1e3c6bea0207cedd04a3df674fd1cc20 Mon Sep 17 00:00:00 2001 From: fiatjaf Date: Thu, 30 Dec 2021 23:02:27 -0300 Subject: [PATCH] first draft of nip-08. --- nips/08.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 nips/08.md diff --git a/nips/08.md b/nips/08.md new file mode 100644 index 0000000..99100c9 --- /dev/null +++ b/nips/08.md @@ -0,0 +1,17 @@ +NIP-08 +====== + +Handling Mentions +----------------- + +`draft` `optional` `author:fiatjaf` `author:scsibug` + +This document standardizes the treatment given by clients of inline mentions of other events and pubkeys inside the content of `text_note`s. + +Clients that want to allow tagged mentions they MUST show an autocomplete component or something analogous to that whenever the user starts typing a special key (for example, "@") or presses some button to include a mention etc -- or these clients can come up with other ways to unambiguously differentiate between mentions and normal text. + +Once a mention is identified, for example, the pubkey `27866e9d854c78ae625b867eefdfa9580434bc3e675be08d2acb526610d96fbe`, the client MUST add that pubkey to the `.tags` with the tag `p`, then replace its textual reference (inside `.content`) with the notation `#[index]` in which "index" is equal to the 0-based index of the related tag in the tags array. + +The same process applies for mentioning event IDs. + +A client that receives a `text_note` event with such `#[index]` mentions in its `.content` CAN do a search-and-replace using the actual contents from the `.tags` array with the actual pubkey or event ID that is mentioned, doing any desired context augmentation (for example, linking to the pubkey or showing a preview of the mentioned event contents) it wants in the process.