https://gitlab.synchro.net/main/sbbs/-/commit/371c3e49b542335fac8e210c
Modified Files:
.claude/skills/javascript/SKILL.md
Log Message:
javascript skill: five API gotchas learned from real module work
- MsgBase.remove_msg(): passing a header object silently returns false
with an empty last_error; pass the message number/offset/ID.
- bbs.text() accepts the string identifier (via text_id_map), and a
text.dat format string can carry more %-specifiers than the name
suggests (NodeMsgFmt has three, including the message body) -- count
them in ctrl/text.dat before format()ing, or the leftover %s renders
literally.
- bbs.compare_ars() evaluates the current user only; use the User
object's compare_ars() to test any user (e.g. other nodes' useron),
plus how to find a program's execution_ars and enumerate in-use nodes.
- Emit line breaks with console.newline() rather than a hand-written
"\r\n", same terminal-correctness principle as console.creturn().
- Don't copy P_NOPAUSE onto printfile() calls reflexively: it disables
the default pagination, which is only right when the surrounding flow
provides the pause.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net