【问题标题】:In Emacs 24.3.1 on Windows 7, how can I group directories first in dired?在 Windows 7 上的 Emacs 24.3.1 中,如何首先将目录分组?
【发布时间】:2013-09-16 08:41:22
【问题描述】:

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

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

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

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

【问题讨论】:

    标签: sorting emacs dired


    【解决方案1】:

    如果您使用 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
    

    【讨论】:

      【解决方案2】:

      DiredSortMenu 可以帮助你。它有一个先按目录排序的选项。

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

      【讨论】:

        【解决方案3】:

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

        【讨论】:

          【解决方案4】:

          是的,DiredSortMenu 是你的朋友。 dired-sort-menu+.el 添加了一些调整。此外,这个 EmacsWiki 页面还有更多关于排序 directories first, FWIW 的内容。

          【讨论】:

          • 谢谢。 dired-sort-menu+.el 是纯扩展,即它需要 dired-sort-menu 还是独立的?
          • 它需要dired-sort-menu.el(自动)——它只是增强了一点。它以不同方式绑定 3 个键,以避免冲突;如果您不能使用它们,它会避免定义两个选项(取决于您的上下文);它修复了一个空的buffer-file-name 错误。
          【解决方案5】:

          在 Emacs 25.3.1 中,目录按设置排序:

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

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2012-04-24
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-09-15
            • 2016-06-19
            相关资源
            最近更新 更多