!7 p-noconsole { Web web = lastChatLinesAsWeb2(5, makeNodeFromMsg); for (WebNode node : web_nodesStartingWith(web, "Text ")) pcall { S text = web_unquoteLastToken(node); L categories = ai_categoriesForChatLine(text); for (S c : categories) { WebNode catNode = web_findOrMakeForwardRelated(node, "is a"); web_setPosition(catNode, node.x+0.2, node.y-0.1); web_addLabel(catNode, c); } } web_addBaseCategories(web); showWeb_noAutoLayout(web, 1000, 600); } static void makeNodeFromMsg(ChatMsg msg, WebNode n) { n.addLabel("Text " + quote(msg.text)); n.addLabel("Msg " + msg.globalID); }