I don't think that's what @djhanson is looking for. They want to control where the wrap occurs, rather than force the wrap with embedded CR/LFs.
For example:
caption("The quick brown fox jumped over the lazy dog. Hello world hello world");
produces this:
![caption1.png caption1.png](https://community.jmp.com/t5/image/serverpage/image-id/29220i662EE0D1479FAA90/image-size/large?v=v2&px=999)
You could use a text box to control the wrap. Not quite the same as caption() though.
nw = new window("Caption",
tb = textbox("The quick brown fox jumped over the lazy dog. Hello world hello world")
);
tb << set wrap(500);
wait(4);
nw << close window();
![caption2.png caption2.png](https://community.jmp.com/t5/image/serverpage/image-id/29221iF2C846C41B193BBC/image-size/large?v=v2&px=999)