关于vertico-posframe在超长路径下find-file会使Emacs失去响应的问题及规避方法

问题描述:在路径长度超过当前frame窗口宽度时,使用find-file(当然vertico托管的)会使Emacs完全失去响应。经排查,问题来源是对vertico-posframe-parameters配置right-fringe参数。

解决:只要不去配置right-fringe就没问题,left-fringe是ok的,所以问题不大,修不修都无所谓。这里留个档,给筒子们做参考。

bug复现:配置这个参数后,打开个相对长的路径文件,然后拉小GUI窗口的宽度,C-x C-f就会立刻卡死。

(use-package vertico-posframe
  :hook (vertico-mode . vertico-posframe-mode)
  :init
  ;; [bug]: setting fringe freezes Emacs in find-file long paths
  (setq vertico-posframe-parameters
        '((left-fringe . 2)  ;(right-fringe . 2)
          (min-width   . 75))))

今天意外发现了这个问题,因为我在Mac下处理Dropbox中的文件,(由于macos现在把dropbox移到了Library下)路径奇长,发现了这个问题。

1 个赞