同时setting up autocomplete in Emacs irb (inferior-ruby-mode),我遇到了一个问题,无法仅添加 Ruby 模式缓冲区作为 AC 源。我可以例如。在当前目录中添加文件
(setq ac-sources '(ac-source-files-in-current-dir))
或者我可以添加所有缓冲区(我最后使用的)
(setq ac-sources '(ac-source-words-in-all-buffer))
但我真正想要的是只添加Ruby模式缓冲区。 ^^
最佳答案
查看ac-source-words-in-same-mode-buffers
...我们可以重复使用这种方法来构建我们自己的补全源,例如:
(ac-define-source words-in-ruby-buffers
'((init . ac-update-word-index)
(candidates . (ac-word-candidates
(lambda (buffer)
(eq (buffer-local-value 'major-mode buffer) 'ruby-mode))))))
将为我们提供ac-source-words-in-ruby-buffers
补全源代码。
附注我没有测试过,但它应该可以工作;-)
关于ruby - 在 Emacs irb (inferior-ruby-mode) 中,如何使自动完成功能遵循 Ruby 模式缓冲区中的单词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13472163/