你别说还真是。我这个 emacs -q 光标也没隐藏, 我看看什么情况。
6啊兄弟这也认的出来
你是非中文母语者吗? 我截图的时候倒是没有考虑那么多,当时看大小正好也挺漂亮就截了,之前一直用的一张风景图。要不是写这个我都不记得我存了这个壁纸。不过你发的那个彩虹屁好好玩,哈哈
在开 dirvish 之前 eval 这个试试看?
(require 'image-mode)
(setq-default cursor-in-non-selected-windows nil)
Edit: 应该就是这个的问题,我已经推送了,你更新看看。
另一个办法是,开两个 dirvish-dired
, 当你需要预览的时候,用 dirvish-toggle-fullscreen
全屏一个,mark 好了文件再全屏回来。一个 frame 展示两个 dirvish 的话,先不说好不好实现,看起来可能比较乱。
因为 (setq dired-dwim-target t)
之后我需要在两个dired buffer之间复制或者移动文件,比如两个dired分别对应两台远程主机的一个目录,这样我就可以在两台主机之间复制文件。
但是这个 dirvish 的 layout会让这个操作变得几乎不可能完成,非常影响效率。
看看是不是可以有选项不要这个layout和自动preview功能。
另外,我也不希望在打开 dirvish buffer的时候,看到当前dired buffer的父目录。
还有就是无法使用 evil 的 C-w hjkl 来在不同父目录和子目录之间移动。当然,如果没有父目录,这个功能也不需要了。
不想要父目录可以设置
(setq dirvish-depth 0)
有选项默认 fullscreen吗? 当然我写个advice也可以
不好意思我不太明白什么是默认 fullscreen? dirvish-dired
就是开在当前窗口,dirvish
就是当前frame (也就是fullscreen 状态)。
默认 fullscreen 就是调用 dirvish-toggle-fullscreen 后 dirvish的状态:这个状态跟 dired-mode 默认的状态比较接近。考虑到你的设计目标用户是dired用户,我希望这个行为能够保持跟dired一致。
另外一个问题,我打开两个 fullscreen 状态的dirvish buffer, 在其中一个buffer中按下 R,无法 Rename 文件。报错: Wrong type argument: window-valid-p, #<window 3> Error during redisplay: (eval (dirvish--mode-line-sorter)) signaled (wrong-type-argument dirvish nil)
默认 fullscreen 就是调用 dirvish-toggle-fullscreen 后 dirvish的状态:这个状态跟 dired-mode 默认的状态比较接近。考虑到你的设计目标用户是dired用户,我希望这个行为能够保持跟dired一致。
对啊,我的意思就是,如果你只是想要这个 “dirvish化” 的 dired,你直接用 (dirvish-dired) 不就行了吗? 为什么要 (dirvish) (dirvish-toggle-fullscreen)
两步走呢?
另外一个问题,我打开两个 fullscreen 状态的dirvish buffer, 在其中一个buffer中按下 R,无法 Rename 文件。报错:
Wrong type argument: window-valid-p, #<window 3> Error during redisplay: (eval (dirvish--mode-line-sorter)) signaled (wrong-type-argument dirvish nil)
我看看我能不能重现,稍等下。 E: 确实有这个情况,我修一下
没注意到这个 dirvish-dired
命令,这个貌似可以解决我的问题。我先用一段时间,后面再来反馈下使用感受。
我的问题,应该在帖子里提一下的,我感觉 readme 都写了怕重复说起来太啰嗦。
Wrong type argument: window-valid-p, #<window 3>Error during redisplay: (eval (dirvish--mode-line-index)) signaled (wrong-type-argument stringp nil) Error during redisplay: (eval (dirvish--mode-line-sorter)) signaled (wrong-type-argument stringp nil) Error during redisplay: (eval (dirvish--mode-line-filter)) signaled (wrong-type-argument stringp nil)
这个错误还是很容易遇到。使用 dirvish-dired
打开两个不同的buffer,然后按 R
去rename文件。
是有这个情况,我平时都是 wdired,所以没注意到这个。我修好了告知你。
在首行按下d或者m可以标记该路径下所有文件
对,所以我说是 基本
没意义,因为除了这个操作之外别的时候都没什么用。而且这也不算什么高频命令,确实需要的话也可以直接 dired-mark-subdir-files
或者 * s
, 真的用的多就绑一个按键。
试用了下,设计思路不错。似乎标题和下面的状态都是一个单独的window,能否把这些Window在切换窗口时排除掉?太多了很麻烦。
如果不想要那个 heading window, 可以 (setq dirvish-header-style nil)
,底下的是 (setq dirvish-mode-line-format nil)
。我不太理解你说的 切换窗口时排除
是什么意思? Edit: 哦, 你是指切换到预览窗口的时候是吗? 感谢建议,我也一直这么想来着。
不过如果你是说用 other-window 或者 ace-window 这类命令切换窗口的话,默认情况下除了预览窗口之外的窗口是不会作为备选的