Index: src/browser.c =================================================================== --- src/browser.c (revision 5020) +++ src/browser.c (working copy) @@ -282,12 +282,18 @@ } else if (f->scfunc == do_left) { if (selected > 0) selected--; + } else if (f->scfunc == do_home) { + selected -= (selected % width); } else if (f->scfunc == do_down_void) { if (selected + width <= filelist_len - 1) selected += width; } else if (f->scfunc == do_right) { if (selected < filelist_len - 1) selected++; + } else if (f->scfunc == do_end) { + selected += width - (selected % width) - 1; + if (selected >= filelist_len - 1) + selected = filelist_len - 1; } else if (f->scfunc == do_enter_void) { /* We can't move up from "/". */ if (strcmp(filelist[selected], "/..") == 0) {