我正在寻找M-x find-dired
/的人类可读输出M-x find-gred-dired
。我尝试使用以下内容:
(setq find-ls-option '("-print0 | xargs -0 ls -alhd" . "-alhd"))
但是,由于-h
,找到的输出不再正确对齐,因此不是真正的人类可读(参见下面的屏幕截图 [dired+])。是否有一个(不太侵入性的)解决方案?
正如artscan 指出的那样,-i
是一种选择。然后我发现了这个“反例”:
我玩了一下。缩进突然很好,除了文件大小以字节为单位的文件(所以没有单位)。然后我想知道“第二组”选项find-ls-option
是关于什么的。虽然C-h v find-ls-option
没有以明确的方式解释它(恕我直言),但我发现只需将第二组选项留空即可提供正确的缩进:
(setq find-ls-option '("-print0 | xargs -0 ls -alhd" . ""))
编辑:问题出在正则表达式中。您必须修补功能find-dired-filter
:
diff -u -L /usr/share/emacs/24.2/lisp/find-dired.el.gz -L \#\<buffer\ find-dired.el.gz\> /tmp/jka-com8644f_j /tmp/buffer-content-86445Tw
--- /usr/share/emacs/24.2/lisp/find-dired.el.gz
+++ #<buffer find-dired.el.gz>
@@ -289,7 +289,7 @@
(l-opt (and (consp find-ls-option)
(string-match "l" (cdr find-ls-option))))
(ls-regexp (concat "^ +[^ \t\r\n]+\\( +[^ \t\r\n]+\\) +"
- "[^ \t\r\n]+ +[^ \t\r\n]+\\( +[0-9]+\\)")))
+ "[^ \t\r\n]+ +[^ \t\r\n]+\\( +[0-9,.]+\\)")))
(goto-char beg)
(insert string)
(goto-char beg)