欲善其事,先利其器。下面记录一些使用Emacs24做golang开发中的一些有用设置,备忘用。

一,golang中的代码跳转

emacs24的go-mode中默认用godef-describe,godef-jump和godef-jump-other-window来做代码跳转,而godef-*这几个命令需要用到外部程序godef来寻找函数定义。安装步骤如下:

1,安装godef
1)设置GOPATH和GOBIN,将GOBIN设置为/usr/local/bin
2) go get github.com/rogpeppe/godef
3) go install github.com/rogpeppe/godef

注: godef也可以从code.google.com/p/rog-go/exp/cmd/godef获取
2,在emacs24中安装最新的go-mode
3,使用:
代码释义用M-x godef-describe或者C-c C-d
代码跳转用M-x godef-jump 或者C-c C-j
代码返回用M-*

二,golang中的代码补全

golang的代码补全需要使用到gocode命令。安装步骤如下:

1,安装gocode
1)设置GOPATH和GOBIN,将GOBIN设置为/usr/local/bin
2) go get github.com/nsf/gocode
3) go install github.com/nsf/gocode
2,在emacs24中安装最新的auto-complete插件
3,将文件github.com/nsf/gocode/emacs/go-autocomplete.el文件拷贝到emacs的$load-path目录下
4,在.emacs中做如下设置:

(require 'go-autocomplete)
(require 'auto-complete-config)
(ac-config-default)

三,其他有用设置

;;保存文件的时候对该源文件做一下gofmt
(add-hook 'before-save-hook #'gofmt-before-save)

我的emacs配置文件见:https://github.com/cobblau/MyEmacs

Emacs中Golang的设置的更多相关文章

  1. Emacs中多个golang项目的配置方法

    概述 最近使用golang开发项目时, 发现有时需要同时进行多个golang项目. 在这种情况下, 如果把所有的项目都放在 GOPATH 之下, 不仅管理麻烦(因为各个项目需要提交到不同的代码库), ...

  2. 使用Emacs中的org-mode写cnblogs之图片插入

    .title { text-align: center; margin-bottom: .2em } .subtitle { text-align: center; font-size: medium ...

  3. Emacs中的拼写检查

    无论是在Emacs中写英文日记(diary).Org mode笔记,还是撰写程序的注释和文档,拼写检查都是一项提高工作效率.保证成果品质的必不可缺的工具.拼写检查对于常见的文字处理软件(如Word.L ...

  4. Emacs 中使用中文插件 eim

    在 Emacs 中输入中文,一般用 ibus 一类的输入法也能应付,但来回切换有点麻烦,这里介绍国人写的一个好插件 eim. - 安装 由于在 list-packages 中没有找到这个插件,所以不能 ...

  5. [转载]生活在 Emacs 中

    Brian Bilbrey2002 年 8 月 20 日发布 教程简介 本教程讲什么? Emacs 是一个流行的无模式文本编辑器,有许多强大的功能.本教程将教您使用 Emacs 的基础知识.为了让您很 ...

  6. Emacs中编辑保存makefile文件时会错误地将TAB转成空格的解决方法

    问题描述 我的Emacs使用了Purcell的配置,在其配置中使用了whitespace-cleanup,且通过在.emacs.d/lisp/init-edit-utils.el中设定: (requi ...

  7. Emacs中自动刷新dired缓冲区

    Emacs中自动刷新dired缓冲区 在dired模式中,如果在不同buffer间切换,buffer不会自动更新,有时还需要手工按“g”键,比较麻烦,如下设置和代码能够在buffer切换和执行shel ...

  8. Emacs Org-mode中英文字体设置

    Emacs Org-mode中英文字体设置 Table of Contents 1. 缺省字体存在的问题 2. 解决方法 2.1. 环境说明 2.2. 思路和方法 2.3. emacs设置代码 2.4 ...

  9. Emacs中的前进后退jump-tree

    Emacs中的前进后退jump-tree */--> code {color: #FF0000} pre.src {background-color: #002b36; color: #8394 ...

随机推荐

  1. 硬链接(hard link)和符号连接(symbolic link)

    inode ====== 在Linux系统中,内核为每一个新创建的文件分配一个inode,每个文件都有一个惟一的inode号,我们可以将inode简单理解成一个指针,它永远指向本文件的具体存储位置.文 ...

  2. CentOS6 安装并破解Jira 7

    CentOS6 安装并破解Jira 7 JIRA软件是为您的软件团队的每个成员构建的,用来规划,跟踪和发布优秀的软件. https://confluence.atlassian.... 最低硬件要求及 ...

  3. Nginx网站常见的跳转配置实例

    相信大家在日常运维工作中如果你用到nginx作为前端反向代理服务器的话,你会对nginx的rewrite又爱又恨,爱它是因为你搞定了它,完成了开发人员的跳转需求后你会觉得很爽,觉得真的很强大,恨它是因 ...

  4. hadoop2.2.0 centos 编译安装详解

    http://blog.csdn.net/w13770269691/article/details/16883663 废话不讲,直切正题. 搭建环境:Centos x 6.4 64bit 1.安装JD ...

  5. Centos6.4下安装protobuf及简单使用

    1.protobuf是google公司提出的数据存储格式,详细介绍可以参考:https://code.google.com/p/protobuf/ 2.下载最新的protobuf,下载地址:https ...

  6. [转]使用 ssh -R 穿透局域网访问内部服务器主机,反向代理 无人值守化

    原文: https://www.cnblogs.com/phpdragon/p/5314650.html ----------------------------------------------- ...

  7. (转)真正的中国天气api接口xml,json(求加精) ...

      我只想说现在网上那几个api完全坑爹有木有??? 官方的申请不来有木有,还有收费有木有?? 咱这种菜鸟只能用免费的了!!!! http://m.weather.com.cn/data/101110 ...

  8. 基于redis分布式缓存实现(新浪微博案例)转

    第一:Redis 是什么? Redis是基于内存.可持久化的日志型.Key-Value数据库 高性能存储系统,并提供多种语言的API. 第二:出现背景 数据结构(Data Structure)需求越来 ...

  9. 两种解决IE6不支持固定定位的方法

    有两种让IE6支持position:fixed1.用CSS执行表达式 *{margin:0;padding:0;} * html,* html body{ background-image:url(a ...

  10. 将/home空间从新挂载到/var/lib/docker

    [lxl@node1 ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 49G 34G 15G ...