使 Spacemacs server/daemon 不在不同的框架中共享 windows

Make Spacemacs server/daemon not share windows in different frames

当我创建新框架时,它们都共享 windows。 如果我有 2 个帧和 2 个 windows(具有不同的缓冲区),另一个帧会将 window 数字列为 2 而不是 1。

我想让帧有自己的 window 列表,从 1 开始,这样我就可以在该帧中使用 M- 而不必担心其他帧。

有谁知道我可以为此自定义的变量,或者有什么方法可以实现我想要的吗?

编辑:这是与服务器相关的 spacemacs 特定内容。 使用的命令是:

winum-select-window-1 ; M-1

而 M-n 代表第 n 个 window。

我查看了 winnum.el,它似乎支持具有自己的 window 列表的框架,这是非守护程序模式下的行为。

一个相关的变量可能是 winum--numbers-table,它将数字的散列 table 存储到 windows。 也许可以编写一些代码来修改此 table,以便新创建的框架保留其自己的哈希 -table。 不过,我现在不知道该怎么做。

如果我找到解决方案,我会编辑。

据我所知与 client/server 无关,winum.el 已经支持您想要的行为:您可以简单地将 winum-scope 用户选项自定义为frame-local;或使用:

(setq winum-scope 'frame-local)

我认为 Spacemacs 不会成为一个因素,除非它也明确设置范围,在这种情况下,您可能需要确保您的配置优先。 (我刚刚通过安装 winum.el 进行了测试;我没有使用 Spacemacs。)