emacs - 使用 go-mode 自动完成

标签 emacs go

每当通过 go-mode 加载 .go 文件时,我都会尝试启用自动完成模式。如果我为 Go 源文件手动调用自动完成模式,它会起作用,但是当我尝试如下将其添加到 .emacs 时,它不起作用:

(add-hook 'go-mode-hook auto-complete-mode)

我尝试了一些变体,但似乎都不起作用。以下是 Go-Mode 片段当前在我的 .emacs 中的样子:

;; Load Go Mode
(require 'go-mode-load)
(add-hook 'go-mode-hook 'auto-complete-mode)

我试过像这样创建自己的钩子(Hook)函数:

;; Load Go Mode
(require 'go-mode-load)
(defun auto-complete-for-go ()
  (auto-complete-mode 1))
(add-hook 'go-mode-hook 'auto-complete-for-go)

我还尝试在 go-mode-load.elgo-mode.el 中包含钩子(Hook),以及调用 auto-complete-mode 像这样:

(auto-complete-mode t)
(provide 'go-mode)

这两种方式都行不通。我还将 go-mode-hook 添加到 auto-complete-default 函数中,如下所示:

(defun ac-config-default ()
  (setq-default ac-sources '(ac-source-abbrev ac-source-dictionary ac-source-words-in-same-mode-buffers))
  (add-hook 'go-mode-hook 'ac-common-setup)
  ;; Other hooks
  (global-auto-complete-mode t))

那也不行。在为缓冲区启用主模式后立即触发命令的最佳方式是什么?

最佳答案

这是目前的解决方法:

(add-to-list 'ac-modes 'go-mode)

我通过以下提交修复了 v1.4 分支中的问题。

关于emacs - 使用 go-mode 自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12278990/

相关文章:

emacs - 使用(填充段落)防止 Auctex 缩进

macos - 如何在不阻塞的情况下从命令行启动 Emacs For Mac OS X?

go - 如何检查变量是否存在

在控制台中去和颜色

go - 如何“强制” Golang函数使用结构的新实例

go - 在 Go 中,如何重用 ReadCloser?

haskell - 如何在 Emacs 的 Haskell 模式下评估单个表达式?

emacs - 设置组织模式导出的文件编码

http - Golang路由前修改URL路径等HTTP请求参数

emacs - windows下无法用emacs + sbcl启动slime