When listing tags within a file, it is possible to get an annoyingly long list of entries. Imenu (which generates the tag list in Emacs) will group some classes of items automatically. Even here, however, some tag groups can be quite large.
To solve this problem, tags can be grouped into logical units through a
hierarchy processor. The specific variable to use is
speedbar-tag-hierarchy-method. There are several methods that
can be applied in any order. They are:
Find a common prefix for all elements of a group, and trim it off.
If a group is too large, place sets of tags into bins based on common prefixes.
Take all items in the top level list not in a group, and stick them into a ‘Tags’ group.
Sort all items, leaving groups on top.
You can also add your own functions to reorganize tags as you see fit.
Some other control variables are:
Default value: 4.
The minimum length of a prefix group name before expanding. Thus, if
speedbar-prefix-group-tag-hierarchy and one such group’s common
characters is less than this number of characters, then the group name
will be changed to the form of:
worda to wordb
instead of just
This way we won’t get silly looking listings.
Default value: 20.
Minimum length before we stop trying to create sub-lists in tags. This is used by all tag-hierarchy methods that break large lists into sub-lists.
Default value: 10.
Maximum length of submenus that are regrouped. If the regrouping option is used, then if two or more short subgroups are next to each other, then they are combined until this number of items is reached.