emacs 通过名称切换frame(帧)

emacs如果开多个frame,通过C-x 5 o切换很不方便,查了很久才发现解决方法。

参考:

If frame named “xyz” exists, then switch to that frame

Switch between frames by number or letter

选中的代码:

(defun switch-to-frame (frame-name)
  (interactive "sFrame name:")
  (let ((frames (frame-list)))
    (catch 'break
      (while frames        (let ((frame (car frames)))
          (if (equal (frame-parameter frame 'name) frame-name)
              (throw 'break (select-frame-set-input-focus frame))
            (setq frames (cdr frames))))))))

添加到emacs初始化文件,然后通过M-x switch-to-frame然后输入F1等编号就可以了。

曾经选中icicles,但icicles会覆盖所有的命令,十分不习惯。

icicles的安装也比较方便,通过emacs的包安装,在emacs初始化脚本中添加(icy-mode 1)即可使用。

有没有更方便的方法呢?有的请交流一下。

你可能感兴趣的:(emacs 通过名称切换frame(帧))