Emacs Dired 日期格式不一致导致显示对不齐

同一份配置, 在笔记本上显示是正常的, 在台式机上就不正常, 如下图所示

原因

Dired 是根据ls 命令的返回结果来显示的, 可以通过修改ls 参数来让ls 返回统一格式的日期格式
通过 M-x: helpful-variable 查看 dired-listing-switches 的值为: -ahl -v --group-directories-first

直接在终端上运行以下命令:

1
ls -ahl -v --group-directories-first

可以看到确实会显示两种格式的日期
通过增加参数 –time-style=long-iso

1
ls -ahl -v --group-directories-first --time-style=long-iso

可以解决这一问题

解决办法

修改emacs 配置文件, 增加以下配置

1
2
(after! dired
  (setq dired-listing-switches "-ahl -v --group-directories-first --time-style=long-iso"))

重启 Emacs

由于Dired 会用到缓存, 所以即使改了dired-listing-switches 也不一定能马上看到效果, 重启一下Emacs 就好了