Hi all. It’s me again. How to create a message output like in the picture?

Are there any tutorials? I couldn’t think of a proper search engine query.
Words highlighted in blue are links (buttons). Clicking on such a link opens a menu in the center of the screen. I came up with the following. Make the message itself in the form of a structure. And these structures are stored in a list.
But I don’t know how to display it all because of the links. Can this be done with a single canvas object? For example TextMeshPro.
How to do it all?
Yes TexMeshPro can have clickable links like this. You will have to place it in a ScrollTextPannel.
You might want to google search something else
Such a textbook should be shown to people so that they would lose the desire to do anything. It shows the code without explanation, it is impossible to understand anything.
Here are the explanations. https://question-it.com/questions/1608399/opredelit-esli-ja-nazhal-na-opredelennuju-chast-teksta
To designate a link, you need to use tags as in HTML. Give this tag a unique ID, and so on. Here is the code.
public TextMeshProUGUI kybiki;
private void Start()
{
string tt= "kto to nanes <link=8> 25 </link> yrona ";
kybiki.text = tt;
}
void Update()
{
if (Input.GetMouseButtonDown(0))
{
int index = TMP_TextUtilities.FindIntersectingLink(kybiki, Input.mousePosition, null);
if (index != -1)
{
Debug.Log("Clicked on ");
}
}
}