As Norm Walsh observed:
It’s been suggested that the ability to cut-and-paste should be a “hard requirement” for HTML rendering of numbered program listings.
Yes. If you ask me for help, and I show you how to do what you want to achieve, you’d like to put that demonstration on your clipboard, take it to your workspace, paste and adjust it to meet your needs. (In that respect the line-numbered OpenDJ LDAP SDK examples leave something to be desired.)
The <programlisting>s in ForgeRock core docs do not yet have callouts, and I’ve been particularly violent, stripping inline markup as part of the customization layer, in order to use SyntaxHighlighter (which also does line numbering independently of what gets on your clipboard). Currently some inline emphasis gets lost that way.
If only there were also a way to have the same listings elegantly reformatted for Kindle-width screens…