If I remove the switch "--group-directories-first", then Bookmark Jump works as expected. However, as long as the switch is put in, sub-directories won't be inserted again. I found out the problem in the function "dired-insert-old-subdirs" at line 1367 in dired.el. In this function, it has an or: (defun dired-insert-old-subdirs (old-subdir-alist) "Try to insert all subdirs that were displayed before. Do so according to the former subdir alist OLD-SUBDIR-ALIST." (or (string-match "R" dired-actual-switches) (let (elt dir) (while old-subdir-alist (setq elt (car old-subdir-alist) old-subdir-alist (cdr old-subdir-alist) dir (car elt)) (condition-case () (progn (dired-uncache dir) (dired-insert-subdir dir)) (error nil)))))) The functional call to string-match: (string-match "R" dired-actual-switches) is the root cause. If dired-actual-switches is "-lha", then string-match returns nil, and the code for inserting subdirs is going to be executed. However, with dired-actual-switches is "--group-directories-first -lha", then string-match returns 3, making the or call returns true immediately and subdirs are never inserted. "ls -R" recursively list directories. But matching it this way is incorrect, since we have listing switches that contain character "R" in it (i.e. --group-directories-first). Hope that help. Regards, Tu. In GNU Emacs 24.3.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.6.4) of 2014-04-01 on oldfriend Windowing system distributor `The X.Org Foundation', version 11.0.11303000 System Description: Ubuntu 13.04 Configured using: `configure '--with-x-toolkit=gtk'' Important settings: value of $LC_MONETARY: en_US.UTF-8 value of $LC_NUMERIC: en_US.UTF-8 value of $LC_TIME: en_US.UTF-8 value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=ibus locale-coding-system: utf-8-unix default enable-multibyte-characters: t Major mode: Bookmark Menu Minor modes in effect: tooltip-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t line-number-mode: t transient-mark-mode: t Recent input: C-v M-v M-v C-x k e C-c C-c C-x o C-n C-n C-n C-p k x C-x 1 C-x C-g C-h v d i r e d - l i s C-s c u s C-g C-x o C-s c u s C-f C-n C-n C-n C-n C-n C-n C-n C-n C-e SPC - - g r o u p - d i r e c t o r i e s - f i r s t C-n C-a C-f C-f C-f C-f 0 q q C-x o C-x d . e m . d C-n C-n C-p i k C-n C-n C-n C-v M-v C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n M-v M-v M-v M-v C-v C-v C-v C-v C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-n C-n C-n C-n C-n C-n C-n C-x 1 C-x r l C-x b C-x r m C-x C-g C-x b C-v C-v C-x k C-v C-v C-v M-v M-v M-v C-x k M-x e m a b u r b u g r e e m a M-x M-x r e p o t r e Recent messages: Resetting customization items...done Creating customization setup...done Mark set Killed 0 lines. scroll-up-command: End of buffer [2 times] scroll-down-command: Beginning of buffer [2 times] Making completion list... [3 times] completing-read-default: Command attempted to use minibuffer while in minibuffer Quit Making completion list... Load-path shadows: None found. Features: (shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils cus-edit cus-start cus-load wid-edit misearch multi-isearch bookmark pp dired-aux help-mode easymenu help-fns dired time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs)