Hello Samuel, Samuel Wales writes: > thank you for your response. very interesting and thorough. > > this problem with or without manuals has made my head swim ever since > text properties arrived. i'm sure the manuals are good but my broken > brain is not really getting text properties. results are sometimes > off, i don't know the special ones, etc. If you have a concrete problem, some small snippet you were experimenting with and that does not do what you were expecting then, maybe, someone on the list could help you with understanding it. Just play around with some code, compare the actual results with your expectations, and try to figure out your misapprehensions either yourself or by asking others. This way, after some time and frustration, things will hopefully become clearer and you develop an intuition for Emacsʼ idiosyncrasies. > i forgot to mention more explicitly that i was hoping to not depend on > htmlize as it is not in core, but that's a side point, as i will use > htmlize if necessary, and also i think now, maybe, it /might/ be > better to go line by line? but i am not sure. The little snippet only uses a few utility functions that you could easily copy and paste from htmlize and give your own prefix. > for me it would be better if thre were a tool more powerful than c-u > c-x = to inspect them. for example, if there were a tool to show all > text properties and their intervals in a region or buffer or string. > and also links to where any special text properties are documented. > but that's a wish list i guess. it would help me understand emacs > anyway. I dabbled around a little with your idea and came up with two commands. They do not do exactly what you want, have issues (only some of them I am vaguely aware of) and might be at least a little broken (‘hl-line-mode’ for example leaves partially highlighted lines around), but you might still find them interesting as toys to play around with. In any case, I had fun and learned a little about Emacs and its Lisp. One shows in another buffer the active properties at point; the buffer is updated when point is moved, the other shows active properties within a region. Properties in overlapping overlays with lower priority are not shown.