5

我最近开始dired认真使用,后来检查了这个问题C-x C-j的答案之一中给出的使用建议。“跳转”功能与承诺的一样有用,并导致我认真调查。一个障碍是我不能在缓冲区中对文件上方的目录进行分组。我尝试将以下内容放入我的文件中,但没有效果,大概是因为我在 Windows 上运行。direddired.emacs.d

(setq dired-listing-switches "--group-directories-first -alh")

如何dired在 Windows 7 的缓冲区中实现文件上方的分组目录?

[编辑] 根据下面的答案,dired-sort-menu似乎确实有效 - 请参见以下屏幕截图。

目录排序菜单屏幕截图

4

5 回答 5

6

如果您使用 ls 仿真,则实际上有一个选项,如在 Windows 上:

(setq ls-lisp-dirs-first t)

有关所有选项,请参见 (customize-group 'ls-lisp)。有一些有用的——

; hide the link count, user, and group columns - default is '(links uid gid)
(setq ls-lisp-verbosity nil)

; use ISO dates (the first is for recent dates, second for old dates)
(setq ls-lisp-format-time-list '("%Y-%m-%d %H:%M" "%Y-%m-%d %H:%M"))
(setq ls-lisp-use-localized-time-format t)

给你一个这样的列表 -

total used in directory 27734 available 171804716
dr-xr-xr-x       40960 2015-02-12 00:47 .
drwxrwxrwx       16384 2015-02-11 17:37 ..
dr-xr-xr-x       32768 2015-02-07 09:41 bookshelf
drwxrwxrwx       12288 2014-12-03 00:06 library
drwxrwxrwx        8192 2014-08-17 08:21 office
dr-xr-xr-x       16384 2015-02-10 19:54 projects
-rw-rw-rw-       14073 2015-01-31 17:25 android.org
-rw-rw-rw-       65736 2015-02-05 17:09 archive.org
于 2015-02-12T07:01:08.723 回答
0

DiredSortMenu可以帮助你。它有一个选项可以先用目录进行排序。

如果您不使用这样的软件包,您可能会通过执行 Ch f RET insert-directory 找到 Windows 支持的“ls”选项(正如您所猜测的,不支持“--group-directories-first”)。

于 2013-09-16T09:34:23.077 回答
0

dired既可以ls用来获取文件列表,也可以使用一些内部 Elisp 代码。在 Windows 下默认不使用ls(在其他系统中默认使用ls)。Elisp 代码不支持该--group-directories-first选项,因此如果您想使用它,您需要设置ls-lisp-use-insert-directory-program为 nil 以便告诉 dired 使用ls(当然,只有当您安装了正确ls.exe的支持--group-directories-first

于 2013-09-16T13:11:50.087 回答
0

是的,DiredSortMenu是你的朋友。并dired-sort-menu+.el添加了一些调整。此外,这个 EmacsWiki 页面有更多关于排序目录的信息,FWIW。

于 2013-09-16T15:28:26.443 回答
0

在 Emacs 25.3.1 中,目录通过设置进行排序:

(setq dired-listing-switches "-al --group-directories-first")
于 2018-03-06T11:21:31.173 回答