So:
(a) Alphabetical
(b) Alphabetical by (material category/last name/group descriptor 'diamonds, agates, etc.')
(c) by Value (I think I would split 'imports' and 'local construction' here too. As in, every single locally constructed item before the highest value import.)
(d) distance
(e) total quality. with wear.
There are several comments about how sorting everything would make 'string search' pointless. I disagree in the strongest possible terms. Yes, it makes searching for the -first- term - the term that's actually alphabetized - less useful. But practically everything has a laundry list of other plausible sorting methods and distinct string text.
Take the (b)uild-(C)onstruction menu. Alphabetical get's me ash(block), ash(wood), aspen.... on down to like 30 pages of different types of soap through every bar of every metal etc. Allowing -both- alphabetization and search-string, I can jump straight to 'coal'. Or hit 'soap' and just have an alphabetical list of soaps (ant soap, cat soap, forgotten beast soap...). Or bars, or blocks, whatever.
The "Bring item to depot" screen is a decent example of how these -almost- work together. It doesn't have 'sort alphabetically' - but it does have sort-by-distance and sort-by-value. I find that screen more useful in some respects than the 'stocks' screens. Except for the fact that it isn't always there and I can't easily toggle melt/dump/etc as you can from the stocks screen.
But you can narrow down certain questions more easily -there- because of the neat overlap of sort modes and searching-for-strings. (And the filtering in the left column!)
Regardless, the
search string thing has a thread too now.