I've been thinking about the Compiler Notes buffer that pops up after
compilation. I have to admit I don't find it particularly useful as it
is now, for a number of reasons:
-- it shows very little information by default:
-+ All (21)
|[+] Notes (8)
`[+] Warnings (13)
-- it obscures my REPL,
-- I have to do "C-x o C-x k" to kill it (or at least "C-x o q"),
which I consider to be a major usability flaw,
-- in the buffer, keys are not electric, and the usual "n" or "p"
don't get me anywhere,
-- the active extents where pressing RET would take me to the code do
not begin at the beginning of the line, so even if I do C-n several
times, I still have to C-f to the appropriate part of the tree
where I can press RET,
-- overall, there seems to be no information in the tree that I
wouldn't normally get by just pressing M-n or M-p to navigate the
compiler notes.
But perhaps I'm missing something?
I toyed with the idea of making this buffer more useful by adding
electric "n" and "p" commands, which would also adjust the source
buffer. That would be similar to how M-n and M-p keys work in the source
buffer. But then I discovered that the data structure used is a tree, so
jumping across leafs isn't all that easy. And I can't really understand
why it is a tree? Only to provide the "All", "Warnings", and "Notes"
branches, or for some other reason? Do we have nested warnings?
All in all, I'd suggest making this buffer pop up optionally, I'll just
disable that option then, I guess. And it would be vastly more useful if
the keys were electric and the active extents began at the beginning of
the line (or if the electric keys jumped to the appropriate place in the
buffer).
--J.