Function: dired-next-subdir
dired-next-subdir is an interactive and byte-compiled function defined
in dired.el.gz.
Signature
(dired-next-subdir ARG &optional NO-ERROR-IF-NOT-FOUND NO-SKIP)
Documentation
Go to next subdirectory, regardless of level.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/dired.el.gz
(defun dired-next-subdir (arg &optional no-error-if-not-found no-skip)
"Go to next subdirectory, regardless of level."
;; Use 0 arg to go to this directory's header line.
;; NO-SKIP prevents moving to end of header line, returning whatever
;; position was found in dired-subdir-alist.
(interactive "p" dired-mode)
(let ((this-dir (dired-current-directory))
pos index)
;; nth with negative arg does not return nil but the first element
(setq index (- (dired-subdir-index this-dir) arg))
(setq pos (if (>= index 0)
(cdr (nth index dired-subdir-alist))))
(if pos
(progn
(goto-char pos)
(or no-skip (end-of-line))
(point))
(if no-error-if-not-found
nil ; return nil if not found
(error "%s directory" (if (> arg 0) "Last" "First"))))))