How to push items to the top or bottom of the list in alphabetically sorted lists?

  • This question is not related to any specific scenario, platform or product, and it's more of an end-user UX rather than a design of UX. It applies to various use cases and platforms. One specific example which prompted me to ask this question is the notebooks list in Evernote - I'd like to push my notebook called "Archives" to the bottom of the list - it's right at the top otherwise. Another cases are naming the files and folders on a computer.

    There are certain lists which are sorted alphabetically and there's no way to re-arrange them. In general, this is quite practical as it makes it easier to find the items when there are plenty of them and there's no need to arrange them manually.

    However, sometimes you want to push certain items on the list to the top or to the bottom. And the only way to do that is to prefix the item with a certain symbol.


    • For pulling items to the top, the most common I've used is !, so your Requirements item becomes ! Requirements. Other nice options are ~ or -.
    • For pushing to the bottom however, one obvious symbol is "z", so if the item is named Archives, you name it zzz-Archives or zzz Archives.

    While the exclamation mark and other non-alpha symbols seem OK, I find zzz knocks off the visual "tidiness" of a list.

    I am wondering if anyone used or seen more elegant solutions to pushing and pulling?

    do you have some information? Is this for a touch device? Do you have a mock up of your list?

    @Jeroenem This is not about a design of UX. The examples are: sorting of files and folders on a computer or of notebooks in Evernote.

    Using tricks or available feature in a way which is not intended for getting particular result are the signs of unsatisfied user needs and bad UX.

    @AlexeyKolchenko: yes, but when you are using someone else's software that's often what you have to resort to as you have no control over/say in the implementation of features. I know I resort to the `!` trick often enough to keep a file at the top of a folder in Windows Explorer...

    You can actually try to use double A, as in `AA-MyFile`. Surprised? Double A is equivalent to the Norwegian `Å`, which is the last character in the Norwegian alphabet. Thus, sorted after "Z" ;-) This will, of course, cause you some trouble if you jump between systems and bump into a system with an ASCII-sort algorithm. so perhaps you should just stick to the single char "Å". On mobile devices and on Mac, you can just press and hold the A key to get access to all A-alternatives. On Windows you open the "Character map" (under "Accessories") or you can hold down ALT while pressing "0197" :-)

    You could prefix each entry with a number. 0000-Entry B, 0001-Entry A, etc... If this is about using other people's software, should this question be moved to SuperUser

    @DonNickel How can I, or have someone, move this to SuperUser?

    Isn't this the point of using favourites? But do the things pushed to the top of your list need some ordering as well or will it be set using a move up/down button?

    note `_archives` appears on top, but it is easy to visually skip which is almost as good as appearing on bottom

  • Ω (Alt 234) will push an item to the bottom in windows file folders; I like it because it's intuitive.

    Welcome to the site, @Jacob! Your answer's rather short at the moment. Can you explain a bit more about why you find this to be an appropriate solution?

    Ω is a great answer! On the Mac, that's option-z.

    @GrahamHerrli I'm guessing because omega (Ω) is the last letter of the Greek alphabet--as in "the alpha and the omega"--so it makes sense for it to be last in the list.

  • Based on code page 437, here is a list of characters that come after z. Note they are listed in sort order. Omega is probably the most appropriate for this use case, because it is the last letter of the Greek alphabet.

    α  alpha        U+03B1  Alt 224
    Γ  gamma        U+0393  Alt 226
    δ  delta        U+03B4  Alt 235
    ε  epsilon      U+03B5  Alt 238
    Θ  theta        U+0398  Alt 233
    π  pi           U+03C0  Alt 227
    Σ  sigma upper  U+03A3  Alt 228
    σ  sigma lower  U+03C3  Alt 229
    τ  tau          U+03C4  Alt 231
    Φ  phi upper    U+03A6  Alt 232
    φ  phi lower    U+03C6  Alt 237
    Ω  omega        U+03A9  Alt 234
  • If the list is always alphabetically sorted you have no choice but to resort to such tricks and workarounds you already listed.

    A better way to meet the user's needs would allow the user to sort the list, e.g. with drag-n-drop. The list could still be sorted alphabetically by default but also remember each item's position if changed by the user.

    This approach could generate some unexpected situations that would have to be designed for. Some of them that comes to mind include

    • where does new items appear?
    • where exactly is the moved item in relation to the new items? (after the item above, before the item below, "between" actual letters, etc.)
    • what happens when an item is renamed?

    By simulating the use cases you can come up with an optimal solution to each of these, and others that may arise.

  • I've found one! (At least it's working on my Chromebook - I'm not sure how it will behave on other machines. In re: JamesQMurphy's comment on web vs. Windows sorting.)

    The Icelandic letter Thorn:


    What's weird is that even though the last 3 letters in the Icelandic alphabet are þ, æ,ö and Wikipedia says that

    Ææ and Öö are considered letters in their own right and not a ligature or diacritical version of their respective letters.

    both æ and ö get sorted after a and o respectively. and even though Ð,ð ("Eth") makes a "th" sound, it gets placed after D because that's where it appears in the alphabet.

    So try thorn?

    Also, I'm not Icelandic, so I have no idea if anything i've said is correct. I've just been trying character after character.

  • Essentially what you are wanting to do is create sub-lists within a global list.

    Why not prepend all of of your items with an alphabetised prefix.

    For example:

    EMAIL: a task

    EMAIL: forward this

    EMAIL: reply with report

    PICS: create album x

    PICS: create album y

    PICS: delete picture 2 from album x

    This way you could scroll, or browser find straight to the top of the list you wanted to attend to and also by being disciplined with task naming have items appear in the correct list whenever they are created and also follow the alphabetisation within the chosen list. You would also have more semantic names for your lists than '!' or 'ZZZ'

    This is somewhat similar to alphabetising dates by using a YYYYMMDD format.

    As for archive, that's a tricky one, but you could find a different word that means the same thing but is further down the alphabet, or prefix all of the your alphabetised prefixes with a ~ if they are important.

    Like this:




    You now have another level of control while still fitting in with the alphabetised system.

    As you are using pre-written tools I would also check out any functions they may have built in for categorising things in a list as you may find functionality there that will organise things into sub lists for you.

  • Number all the items

    I have used numbers to customize the order of an otherwise alphabetized list which works well because it is still clear later on or even to newcomers. This also uses a minimal number of characters and can be used in combination with letters to create groups like so 1A dog, 1B cat, ... 5A jello, 5B cake, etc.

    The down side being that pretty much all the items in the list need to be numbered and when there are lots of items the numbers need to be zero padded. 001, 002, ... 011, 012, ... 111, 112, etc.

    Better UX alternatives

    I have seen lists where the items are sorted by a number that is stored in a separate order/priority field. This is much better than forcing users to type extraneous characters as part of each item name and allows an easy way to switch between an alphabetical name sort and a priority number sort. These numbers should automatically increment. If a user wants to reposition an item in the list they can simply change the corresponding order number but this is entirely optional.

    Another approach might be to incorporate a favorites tag where users can quickly mark items as more important than the others and then the favorite items could appear in their own list up top.

  • Many of the above suggested solutions seem overly laborious. When somebody asks for a "more elegant solution", more often than not they are not asking you to re-invent their whole thought process or methodology. Literally, the OP asked is there something cleaner looking than "zzz" —

    Beauty is in the eye of the beholder as always, but as another suggestion, I routinely use

    z_ or

    z- or

    z. for forcing something to bottom.

    Different strokes for different folks, but for English language speakers, I would think z is way more intuitive as "the end" or "at the bottom" than an omega character. But I do very much like the suggestion to use Ω since it is 1-character.

    Meta-comment: It's always stunning to me when people posting to a UX forum tell other people "This question is in the wrong category". That just blatantly violates the prime directive of UX design: "The user is never wrong" (in what he/she wants to do). 99% of the time it is an Engineer who wants to impose his or her thought process on another, usually with the comment "This is obviously the best & most efficient way to solve this". TL;dr — If someone is seeking to create what feels like better order for his or her file system or list, and thus asks for suggestions on a UX forum like this one, it seems antithetical to UX to spend even a minute obsessing over "this question belongs in a different forum". Good UX would place a question or item in more than one category when there is no definitive place to put it.

  • Using symbols seems to be the best because they sort ahead of the letters and numbers.

    The problem with using symbols is that many of them are operators in certain languages and I don't like using those symbols in certain contexts. For example in a directory if you lead a directory name with a ~ or | those characters can cause issues for persons on the shell.

    Here are two:

    • _ vailable from the keyboard
    • the unicode hex code is U+2022 (aka "bullet" character)
    • ~ on windows (but not on Linux because ~ has special meaning)
    • . on windows (but not on Linux because this makes a folder hidden)
  • Spell it with exactly these characters:. ᗅchⅰ℮ѕ Copy and paste.

    This should put it at the bottom of most alphabetical sort lists. Add one of these to bullet it: ᛡ ᛜ It should sink like a rock!

  • In Windows Explorer I have found experimentally that most keyboard non-alphabetical characters may be used as a starting symbol, followed by spaces, the number of which determines its position. So: - folder/filename (3 spaces) will come before - folder/filename (2 spaces), which precedes - folder/filename (1 space). Position is easily adjusted by changing the number of spaces. Filenames will sort alphabetically after the spaces. I've only used it for Windows folders and as the symbol is full left, with the top names further right than the bottom, it has the appearance of reverse indentation. As noted by Trevor some symbols have special meanings in Linux and also I believe shell (the dash for example). The addition of many spaces can also cause a 'filename too long' message. I'm starting to migrate to Linux which is why this answer is so late, and it doesn't work there unfortunately. So if anyone has a simple solution for that without multiple symbols ...?

License under CC-BY-SA with attribution

Content dated before 7/24/2021 11:53 AM