Emacs组织模式9.x重新使用不能使用ido

时间:2017-07-06 19:54:57

标签: emacs org-mode

由于我将orgmode升级到9.x,因此refile不再使用ido。根据{{​​3}},与ido和iswitchb相关的所有选项都已删除。它还提到“相反Org使用常规函数,例如,完成读取,以便让这些库运行。”

然而,作为最近的vim-user-turned-emacs,我找不到如何设置ido(包括ido-vertical)在orgmode 9.x中工作的方式与以前在8.x中工作的方式相同 任何建议都欢迎。

提前致谢。

干杯/杰罗姆

1 个答案:

答案 0 :(得分:0)

我认为要做到这一点的唯一方法是重新定义或包装股票emacs完成功能。 ido-completing-read+是一个软件包,其中包装了库存完成功能以尽可能使用ido(包括org-refile中的ido),并且您可以配置例外。

该软件包有点攻击性,因为它尝试启用IDO 。如果您不希望这样做,则可以通过在组织模式挂钩中添加一个功能来将完成阅读功能设置为IDO在组织模式下的完成阅读功能:

(defun bl/completion-use-ido ()
  "Set the current buffer's completing read engine to IDO."
  (setq-local completing-read-function #'ido-completing-read))

(add-hook 'org-mode-hook 'bl/completion-use-ido)

这将仅对组织模式缓冲区启用IDO。