Also, regarding the ellipsize, I think it would be useful to split it into two parts:
1. path plus line number - max length 40 with `PANGO_ELLIPSIZE_START` 2. signature - max length 40 with `PANGO_ELLIPSIZE_END`
and then join them for the resulting string. This way you'll always have the file name preserved and only the leading path truncated (which isn't so interesting I think).